Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in / Register
Toggle navigation
D
douban-api-proxy
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
captainwong
douban-api-proxy
Commits
4cf71dd3
Commit
4cf71dd3
authored
Sep 20, 2020
by
Ozzieisaacs
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Fix "is not a valid language" on upload
parent
e2924777
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
31 additions
and
19 deletions
+31
-19
comic.py
cps/comic.py
+1
-7
editbooks.py
cps/editbooks.py
+4
-1
epub.py
cps/epub.py
+3
-10
gdrive.py
cps/gdrive.py
+1
-1
isoLanguages.py
cps/isoLanguages.py
+22
-0
No files found.
cps/comic.py
View file @
4cf71dd3
...
...
@@ -135,13 +135,7 @@ def get_comic_info(tmp_file_path, original_file_name, original_file_extension, r
loadedMetadata
=
archive
.
readMetadata
(
style
)
lang
=
loadedMetadata
.
language
if
lang
:
if
len
(
lang
)
==
2
:
loadedMetadata
.
language
=
isoLanguages
.
get
(
part1
=
lang
)
.
name
elif
len
(
lang
)
==
3
:
loadedMetadata
.
language
=
isoLanguages
.
get
(
part3
=
lang
)
.
name
else
:
loadedMetadata
.
language
=
""
loadedMetadata
.
language
=
isoLanguages
.
get_lang3
(
lang
)
return
BookMeta
(
file_path
=
tmp_file_path
,
...
...
cps/editbooks.py
View file @
4cf71dd3
...
...
@@ -393,7 +393,10 @@ def edit_book_comments(comments, book):
def
edit_book_languages
(
languages
,
book
,
upload
=
False
):
input_languages
=
languages
.
split
(
','
)
unknown_languages
=
[]
input_l
=
isoLanguages
.
get_language_codes
(
get_locale
(),
input_languages
,
unknown_languages
)
if
not
upload
:
input_l
=
isoLanguages
.
get_language_codes
(
get_locale
(),
input_languages
,
unknown_languages
)
else
:
input_l
=
isoLanguages
.
get_valid_language_codes
(
get_locale
(),
input_languages
,
unknown_languages
)
for
l
in
unknown_languages
:
log
.
error
(
'
%
s is not a valid language'
,
l
)
flash
(
_
(
u"
%(langname)
s is not a valid language"
,
langname
=
l
),
category
=
"warning"
)
...
...
cps/epub.py
View file @
4cf71dd3
...
...
@@ -26,6 +26,7 @@ from .helper import split_authors
from
.constants
import
BookMeta
def
extractCover
(
zipFile
,
coverFile
,
coverpath
,
tmp_file_name
):
if
coverFile
is
None
:
return
None
...
...
@@ -83,16 +84,8 @@ def get_epub_info(tmp_file_path, original_file_name, original_file_extension):
else
:
epub_metadata
[
'description'
]
=
""
if
epub_metadata
[
'language'
]
==
u'Unknown'
:
epub_metadata
[
'language'
]
=
""
else
:
lang
=
epub_metadata
[
'language'
]
.
split
(
'-'
,
1
)[
0
]
.
lower
()
if
len
(
lang
)
==
2
:
epub_metadata
[
'language'
]
=
isoLanguages
.
get
(
part1
=
lang
)
.
name
elif
len
(
lang
)
==
3
:
epub_metadata
[
'language'
]
=
isoLanguages
.
get
(
part3
=
lang
)
.
name
else
:
epub_metadata
[
'language'
]
=
""
lang
=
epub_metadata
[
'language'
]
.
split
(
'-'
,
1
)[
0
]
.
lower
()
epub_metadata
[
'language'
]
=
isoLanguages
.
get_lang3
(
lang
)
series
=
tree
.
xpath
(
"/pkg:package/pkg:metadata/pkg:meta[@name='calibre:series']/@content"
,
namespaces
=
ns
)
if
len
(
series
)
>
0
:
...
...
cps/gdrive.py
View file @
4cf71dd3
...
...
@@ -43,7 +43,7 @@ log = logger.create()
try
:
from
googleapiclient.errors
import
HttpError
except
ImportError
as
err
:
log
.
debug
(
(
"Cannot import googleapiclient, using gdrive will not work:
%
s"
,
err
)
)
log
.
debug
(
"Cannot import googleapiclient, using GDrive will not work:
%
s"
,
err
)
current_milli_time
=
lambda
:
int
(
round
(
time
()
*
1000
))
...
...
cps/isoLanguages.py
View file @
4cf71dd3
...
...
@@ -66,3 +66,25 @@ def get_language_codes(locale, language_names, remainder=None):
if
remainder
is
not
None
:
remainder
.
extend
(
language_names
)
return
languages
def
get_valid_language_codes
(
locale
,
language_names
,
remainder
=
None
):
languages
=
list
()
for
k
,
v
in
get_language_names
(
locale
)
.
items
():
if
k
in
language_names
:
languages
.
append
(
k
)
language_names
.
remove
(
k
)
if
remainder
is
not
None
and
len
(
language_names
):
remainder
.
extend
(
language_names
)
return
languages
def
get_lang3
(
lang
):
try
:
if
len
(
lang
)
==
2
:
ret_value
=
get
(
part1
=
lang
)
.
part3
elif
len
(
lang
)
==
3
:
ret_value
=
lang
else
:
ret_value
=
""
except
KeyError
:
ret_value
=
lang
return
ret_value
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment