Merge branch 'master' into Develop

pull/1008/head
Ozzieisaacs 5 years ago
commit 2caee35884

@ -41,11 +41,13 @@ def extractCover(tmp_file_name, original_file_extension):
if use_comic_meta: if use_comic_meta:
archive = ComicArchive(tmp_file_name) archive = ComicArchive(tmp_file_name)
cover_data = None cover_data = None
ext = os.path.splitext(archive.getPageName(0)) for index, name in enumerate(archive.getPageNameList()):
ext = os.path.splitext(name)
if len(ext) > 1: if len(ext) > 1:
extension = ext[1].lower() extension = ext[1].lower()
if extension == '.jpg' or extension == '.jpeg': if extension == '.jpg' or extension == '.jpeg':
cover_data = archive.getPage(0) cover_data = archive.getPage(index)
break
else: else:
if original_file_extension.upper() == '.CBZ': if original_file_extension.upper() == '.CBZ':
cf = zipfile.ZipFile(tmp_file_name) cf = zipfile.ZipFile(tmp_file_name)
@ -53,7 +55,7 @@ def extractCover(tmp_file_name, original_file_extension):
ext = os.path.splitext(name) ext = os.path.splitext(name)
if len(ext) > 1: if len(ext) > 1:
extension = ext[1].lower() extension = ext[1].lower()
if extension == '.jpg': if extension == '.jpg' or extension == '.jpeg':
cover_data = cf.read(name) cover_data = cf.read(name)
break break
elif original_file_extension.upper() == '.CBT': elif original_file_extension.upper() == '.CBT':
@ -62,7 +64,7 @@ def extractCover(tmp_file_name, original_file_extension):
ext = os.path.splitext(name) ext = os.path.splitext(name)
if len(ext) > 1: if len(ext) > 1:
extension = ext[1].lower() extension = ext[1].lower()
if extension == '.jpg': if extension == '.jpg' or extension == '.jpeg':
cover_data = cf.extractfile(name).read() cover_data = cf.extractfile(name).read()
break break
prefix = os.path.dirname(tmp_file_name) prefix = os.path.dirname(tmp_file_name)
@ -87,10 +89,11 @@ def get_comic_info(tmp_file_path, original_file_name, original_file_extension):
else: else:
style = None style = None
if style is not None: # if style is not None:
loadedMetadata = archive.readMetadata(style) loadedMetadata = archive.readMetadata(style)
lang = loadedMetadata.language lang = loadedMetadata.language
if lang:
if len(lang) == 2: if len(lang) == 2:
loadedMetadata.language = isoLanguages.get(part1=lang).name loadedMetadata.language = isoLanguages.get(part1=lang).name
elif len(lang) == 3: elif len(lang) == 3:

@ -95,13 +95,6 @@ def setup(log_file, log_level=None):
Configure the logging output. Configure the logging output.
May be called multiple times. May be called multiple times.
''' '''
# if debugging, start logging to stderr immediately
if os.environ.get('FLASK_DEBUG', None):
log_file = LOG_TO_STDERR
log_level = logging.DEBUG
log_file = _absolute_log_file(log_file, DEFAULT_LOG_FILE)
log_level = log_level or DEFAULT_LOG_LEVEL log_level = log_level or DEFAULT_LOG_LEVEL
logging.getLogger(__package__).setLevel(log_level) logging.getLogger(__package__).setLevel(log_level)
@ -110,6 +103,8 @@ def setup(log_file, log_level=None):
# avoid spamming the log with debug messages from libraries # avoid spamming the log with debug messages from libraries
r.setLevel(log_level) r.setLevel(log_level)
log_file = _absolute_log_file(log_file, DEFAULT_LOG_FILE)
previous_handler = r.handlers[0] if r.handlers else None previous_handler = r.handlers[0] if r.handlers else None
if previous_handler: if previous_handler:
# if the log_file has not changed, don't create a new handler # if the log_file has not changed, don't create a new handler
@ -167,3 +162,7 @@ class StderrLogger(object):
self.buffer += message self.buffer += message
except Exception: except Exception:
self.log.debug("Logging Error") self.log.debug("Logging Error")
# default configuration, before application settngs are applied
setup(LOG_TO_STDERR, logging.DEBUG if os.environ.get('FLASK_DEBUG') else DEFAULT_LOG_LEVEL)

@ -56,6 +56,7 @@ def requires_basic_auth_if_no_ano(f):
@opds.route("/opds/") @opds.route("/opds/")
@opds.route("/opds")
@requires_basic_auth_if_no_ano @requires_basic_auth_if_no_ano
def feed_index(): def feed_index():
return render_xml_template('index.xml') return render_xml_template('index.xml')
@ -288,7 +289,7 @@ def check_auth(username, password):
username=username.encode('windows-1252') username=username.encode('windows-1252')
user = ub.session.query(ub.User).filter(func.lower(ub.User.nickname) == user = ub.session.query(ub.User).filter(func.lower(ub.User.nickname) ==
username.decode('utf-8').lower()).first() username.decode('utf-8').lower()).first()
return bool(user and check_password_hash(user.password, password)) return bool(user and check_password_hash(str(user.password), password))
def authenticate(): def authenticate():

@ -26,11 +26,13 @@ log = logger.create()
try: from . import goodreads try: from . import goodreads
except ImportError as err: except ImportError as err:
log.warning("goodreads: %s", err) log.debug("cannot import goodreads, showing authors-metadata will not work: %s", err)
goodreads = None goodreads = None
try: from . import simpleldap as ldap try: from . import simpleldap as ldap
except ImportError as err: except ImportError as err:
log.warning("simpleldap: %s", err) log.debug("cannot import simpleldap, logging in with ldap will not work: %s", err)
ldap = None ldap = None

@ -8,9 +8,9 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Calibre-Web (GPLV3)\n" "Project-Id-Version: Calibre-Web (GPLV3)\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2019-07-26 16:41+0200\n" "POT-Creation-Date: 2019-07-31 17:36+0200\n"
"PO-Revision-Date: 2019-06-17 22:37+0200\n" "PO-Revision-Date: 2019-06-17 22:37+0200\n"
"Last-Translator: Heimen Stoffels <vistausss@outlook.com>\n" "Last-Translator: Marcel Maas <marcel.maas@outlook.com>\n"
"Language: nl\n" "Language: nl\n"
"Language-Team: ed.driesen@telenet.be\n" "Language-Team: ed.driesen@telenet.be\n"
"Plural-Forms: nplurals=2; plural=(n != 1)\n" "Plural-Forms: nplurals=2; plural=(n != 1)\n"
@ -37,11 +37,11 @@ msgstr "Onbekend"
#: cps/admin.py:130 #: cps/admin.py:130
msgid "Admin page" msgid "Admin page"
msgstr "Administratiepagina" msgstr "Systeembeheer"
#: cps/admin.py:149 cps/templates/admin.html:102 #: cps/admin.py:149 cps/templates/admin.html:102
msgid "UI Configuration" msgid "UI Configuration"
msgstr "Uiterlijke instellingen" msgstr "Uiterlijk aanpassen"
#: cps/admin.py:181 cps/admin.py:399 #: cps/admin.py:181 cps/admin.py:399
msgid "Calibre-Web configuration updated" msgid "Calibre-Web configuration updated"
@ -71,7 +71,7 @@ msgstr "Er is een bestaand account met dit e-mailadres of deze gebruikersnaam aa
#: cps/admin.py:474 #: cps/admin.py:474
#, python-format #, python-format
msgid "User '%(user)s' created" msgid "User '%(user)s' created"
msgstr "Gebruiker '%(user)s' is gecreëerd" msgstr "Gebruiker '%(user)s' aangemaakt"
#: cps/admin.py:494 #: cps/admin.py:494
msgid "Edit e-mail server settings" msgid "Edit e-mail server settings"
@ -80,16 +80,16 @@ msgstr "E-mailserverinstellingen bewerken"
#: cps/admin.py:520 #: cps/admin.py:520
#, python-format #, python-format
msgid "Test e-mail successfully send to %(kindlemail)s" msgid "Test e-mail successfully send to %(kindlemail)s"
msgstr "De test-e-mail is verstuurd naar %(kindlemail)s" msgstr "Test-e-mail verstuurd naar %(kindlemail)s"
#: cps/admin.py:523 #: cps/admin.py:523
#, python-format #, python-format
msgid "There was an error sending the Test e-mail: %(res)s" msgid "There was an error sending the Test e-mail: %(res)s"
msgstr "Er is een fout opgetreden bij het versturen van de test-e-mail: %(res)s" msgstr "Fout opgetreden bij het versturen van de test-e-mail: %(res)s"
#: cps/admin.py:525 cps/web.py:1033 #: cps/admin.py:525 cps/web.py:1033
msgid "Please configure your kindle e-mail address first..." msgid "Please configure your kindle e-mail address first..."
msgstr "Stel eerst je kindle-mailadres in..." msgstr "Stel je kindle-e-mailadres in..."
#: cps/admin.py:527 #: cps/admin.py:527
msgid "E-mail server settings updated" msgid "E-mail server settings updated"
@ -102,11 +102,11 @@ msgstr "Gebruiker '%(nick)s' is verwijderd"
#: cps/admin.py:559 #: cps/admin.py:559
msgid "No admin user remaining, can't delete user" msgid "No admin user remaining, can't delete user"
msgstr "" msgstr "Kan laatste systeembeheerder niet verwijderen"
#: cps/admin.py:598 cps/web.py:1279 #: cps/admin.py:598 cps/web.py:1279
msgid "Found an existing account for this e-mail address." msgid "Found an existing account for this e-mail address."
msgstr "Er is een bestaand account met dit e-mailadres aangetroffen." msgstr "Bestaand account met dit e-mailadres aangetroffen."
#: cps/admin.py:601 cps/admin.py:613 #: cps/admin.py:601 cps/admin.py:613
#, python-format #, python-format
@ -116,7 +116,7 @@ msgstr "Gebruiker '%(nick)s' bewerken"
#: cps/admin.py:607 #: cps/admin.py:607
#, python-format #, python-format
msgid "User '%(nick)s' updated" msgid "User '%(nick)s' updated"
msgstr "Gebruiker '%(nick)s' is bijgewerkt" msgstr "Gebruiker '%(nick)s' bijgewerkt"
#: cps/admin.py:610 #: cps/admin.py:610
msgid "An unknown error occured." msgid "An unknown error occured."
@ -129,7 +129,7 @@ msgstr "Wachtwoord voor gebruiker %(user)s is hersteld"
#: cps/admin.py:632 cps/web.py:1075 #: cps/admin.py:632 cps/web.py:1075
msgid "An unknown error occurred. Please try again later." msgid "An unknown error occurred. Please try again later."
msgstr "Er is een onbekende fout opgetreden. Probeer het later nog eens." msgstr "Onbekende fout opgetreden. Probeer het later nog eens."
#: cps/admin.py:643 #: cps/admin.py:643
msgid "Logfile viewer" msgid "Logfile viewer"
@ -225,7 +225,7 @@ msgstr "onbekend"
#: cps/editbooks.py:447 #: cps/editbooks.py:447
msgid "Cover is not a jpg file, can't save" msgid "Cover is not a jpg file, can't save"
msgstr "" msgstr "Cover is geen jpg bestand, opslaan niet mogelijk"
#: cps/editbooks.py:490 #: cps/editbooks.py:490
#, python-format #, python-format
@ -253,7 +253,7 @@ msgstr "Kan %(file)s niet verwijderen (niet gemachtigd)."
#: cps/editbooks.py:668 #: cps/editbooks.py:668
#, python-format #, python-format
msgid "File %(file)s uploaded" msgid "File %(file)s uploaded"
msgstr "" msgstr "Bestand %(file)s geüpload"
#: cps/editbooks.py:697 #: cps/editbooks.py:697
msgid "Source or destination format for conversion missing" msgid "Source or destination format for conversion missing"
@ -402,23 +402,23 @@ msgstr "Onbekende taak: "
#: cps/oauth_bb.py:75 #: cps/oauth_bb.py:75
#, python-format #, python-format
msgid "Register with %(provider)s" msgid "Register with %(provider)s"
msgstr "" msgstr "Aanmelden bij %(provider)s"
#: cps/oauth_bb.py:155 #: cps/oauth_bb.py:155
msgid "Failed to log in with GitHub." msgid "Failed to log in with GitHub."
msgstr "" msgstr "Aanmelden bij GitHub mislukt."
#: cps/oauth_bb.py:160 #: cps/oauth_bb.py:160
msgid "Failed to fetch user info from GitHub." msgid "Failed to fetch user info from GitHub."
msgstr "" msgstr "Opvragen gebruikersinfo bij GitHub mislukt"
#: cps/oauth_bb.py:171 #: cps/oauth_bb.py:171
msgid "Failed to log in with Google." msgid "Failed to log in with Google."
msgstr "" msgstr "Aanmelden bij Google mislukt."
#: cps/oauth_bb.py:176 #: cps/oauth_bb.py:176
msgid "Failed to fetch user info from Google." msgid "Failed to fetch user info from Google."
msgstr "" msgstr "Opvragen gebruikersinfo bij Google mislukt."
#: cps/oauth_bb.py:274 #: cps/oauth_bb.py:274
#, python-format #, python-format
@ -454,7 +454,7 @@ msgstr "Sorry, je mag geen boeken toevoegen aan de boekenplank '%(shelfname)s'"
#: cps/shelf.py:61 #: cps/shelf.py:61
msgid "You are not allowed to edit public shelves" msgid "You are not allowed to edit public shelves"
msgstr "Je mag openbare boekenplanken niet aanpassen" msgstr "Je mag openbare boekenplanken niet bewerken"
#: cps/shelf.py:70 #: cps/shelf.py:70
#, python-format #, python-format
@ -508,7 +508,7 @@ msgstr "Er bestaat al een boekenplank met de naam '%(title)s'."
#: cps/shelf.py:211 #: cps/shelf.py:211
#, python-format #, python-format
msgid "Shelf %(title)s created" msgid "Shelf %(title)s created"
msgstr "Boekenplank '%(title)s' is gecreëerd" msgstr "Boekenplank '%(title)s' is aangemaakt"
#: cps/shelf.py:213 cps/shelf.py:241 #: cps/shelf.py:213 cps/shelf.py:241
msgid "There was an error" msgid "There was an error"
@ -539,7 +539,7 @@ msgstr "Kan boekenplank niet openen: de boekenplank bestaat niet of is ontoegank
#: cps/shelf.py:330 #: cps/shelf.py:330
#, python-format #, python-format
msgid "Change order of Shelf: '%(name)s'" msgid "Change order of Shelf: '%(name)s'"
msgstr "Volgorde aanpassen van boekenplank '%(name)s'" msgstr "Volgorde bewerken van boekenplank '%(name)s'"
#: cps/ub.py:57 #: cps/ub.py:57
msgid "Recently Added" msgid "Recently Added"
@ -547,7 +547,7 @@ msgstr "Recent toegevoegd"
#: cps/ub.py:59 #: cps/ub.py:59
msgid "Show recent books" msgid "Show recent books"
msgstr "Recente boeken tonen" msgstr "Recent toegevoegde boeken tonen"
#: cps/templates/index.xml:17 cps/ub.py:60 #: cps/templates/index.xml:17 cps/ub.py:60
msgid "Hot Books" msgid "Hot Books"
@ -572,7 +572,7 @@ msgstr "Gelezen boeken"
#: cps/ub.py:69 #: cps/ub.py:69
msgid "Show read and unread" msgid "Show read and unread"
msgstr "Gelezen/Ongelezen tonen" msgstr "Gelezen/Ongelezen boeken tonen"
#: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:71 #: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:71
#: cps/web.py:975 #: cps/web.py:975
@ -581,11 +581,11 @@ msgstr "Ongelezen boeken"
#: cps/ub.py:73 #: cps/ub.py:73
msgid "Show unread" msgid "Show unread"
msgstr "" msgstr "Ongelezen boeken tonen"
#: cps/ub.py:74 #: cps/ub.py:74
msgid "Discover" msgid "Discover"
msgstr "Verkennen" msgstr "Willekeurige boeken"
#: cps/ub.py:76 #: cps/ub.py:76
msgid "Show random books" msgid "Show random books"
@ -602,11 +602,11 @@ msgstr "Categoriekeuze tonen"
#: cps/templates/book_edit.html:71 cps/templates/search_form.html:53 #: cps/templates/book_edit.html:71 cps/templates/search_form.html:53
#: cps/ub.py:80 #: cps/ub.py:80
msgid "Series" msgid "Series"
msgstr "Serie" msgstr "Boekenreeksen"
#: cps/ub.py:82 #: cps/ub.py:82
msgid "Show series selection" msgid "Show series selection"
msgstr "Seriekeuze tonen" msgstr "Boekenreeksen keuze tonen"
#: cps/templates/index.xml:61 cps/ub.py:83 #: cps/templates/index.xml:61 cps/ub.py:83
msgid "Authors" msgid "Authors"
@ -634,19 +634,19 @@ msgstr "Taalkeuze tonen"
#: cps/ub.py:94 #: cps/ub.py:94
msgid "Ratings" msgid "Ratings"
msgstr "" msgstr "Beoordelingen"
#: cps/ub.py:96 #: cps/ub.py:96
msgid "Show ratings selection" msgid "Show ratings selection"
msgstr "" msgstr "Beoordelingen tonen"
#: cps/ub.py:97 #: cps/ub.py:97
msgid "File formats" msgid "File formats"
msgstr "" msgstr "Bestandsformaten"
#: cps/ub.py:99 #: cps/ub.py:99
msgid "Show file formats selection" msgid "Show file formats selection"
msgstr "" msgstr "Bestandsformaten tonen"
#: cps/updater.py:251 cps/updater.py:358 cps/updater.py:371 #: cps/updater.py:251 cps/updater.py:358 cps/updater.py:371
msgid "Unexpected data while reading update information" msgid "Unexpected data while reading update information"
@ -654,7 +654,7 @@ msgstr "Onverwachte gegevens tijdens het uitlezen van de update-informatie"
#: cps/updater.py:258 cps/updater.py:364 #: cps/updater.py:258 cps/updater.py:364
msgid "No update available. You already have the latest version installed" msgid "No update available. You already have the latest version installed"
msgstr "Geen update beschikbaar; je beschikt al over de nieuwste versie" msgstr "Geen update beschikbaar. Je beschikt al over de nieuwste versie"
#: cps/updater.py:284 #: cps/updater.py:284
msgid "A new update is available. Click on the button below to update to the latest version." msgid "A new update is available. Click on the button below to update to the latest version."
@ -671,11 +671,11 @@ msgstr "Geen wijzigingslog beschikbaar"
#: cps/updater.py:404 cps/updater.py:413 #: cps/updater.py:404 cps/updater.py:413
#, python-format #, python-format
msgid "A new update is available. Click on the button below to update to version: %(version)s" msgid "A new update is available. Click on the button below to update to version: %(version)s"
msgstr "Er is een update beschikbaar. Klik op de knop hieronder om te updaten naar de nieuwste versie: %(version)s" msgstr "Er is een update beschikbaar. Klik op de knop hieronder om te updaten naar versie: %(version)s"
#: cps/updater.py:423 #: cps/updater.py:423
msgid "Click on the button below to update to the latest stable version." msgid "Click on the button below to update to the latest stable version."
msgstr "" msgstr "Druk op onderstaande knop om de laatste stabiele versie te installeren."
#: cps/uploader.py:213 cps/uploader.py:214 cps/uploader.py:218 #: cps/uploader.py:213 cps/uploader.py:214 cps/uploader.py:218
#: cps/uploader.py:222 cps/uploader.py:226 #: cps/uploader.py:222 cps/uploader.py:226
@ -696,11 +696,11 @@ msgstr "Willekeurige boeken"
#: cps/web.py:522 #: cps/web.py:522
msgid "Books" msgid "Books"
msgstr "" msgstr "Boeken"
#: cps/web.py:549 #: cps/web.py:549
msgid "Hot Books (most downloaded)" msgid "Hot Books (most downloaded)"
msgstr "Populaire boeken (vaakst gedownload)" msgstr "Populaire boeken (meest gedownload)"
#: cps/web.py:560 cps/web.py:1300 cps/web.py:1388 #: cps/web.py:560 cps/web.py:1300 cps/web.py:1388
msgid "Error opening eBook. File does not exist or file is not accessible:" msgid "Error opening eBook. File does not exist or file is not accessible:"
@ -709,7 +709,7 @@ msgstr "Kan e-boek niet openen. Het bestand bestaat niet of is niet toegankelijk
#: cps/web.py:573 #: cps/web.py:573
#, python-format #, python-format
msgid "Author: %(name)s" msgid "Author: %(name)s"
msgstr "" msgstr "Auteur: %(name)s"
#: cps/web.py:585 #: cps/web.py:585
#, python-format #, python-format
@ -719,17 +719,17 @@ msgstr "Uitgever: %(name)s"
#: cps/web.py:596 #: cps/web.py:596
#, python-format #, python-format
msgid "Series: %(serie)s" msgid "Series: %(serie)s"
msgstr "Serie: %(serie)s" msgstr "Reeks: %(serie)s"
#: cps/web.py:607 #: cps/web.py:607
#, python-format #, python-format
msgid "Rating: %(rating)s stars" msgid "Rating: %(rating)s stars"
msgstr "" msgstr "Beoordeling: %(rating)s sterren"
#: cps/web.py:618 #: cps/web.py:618
#, python-format #, python-format
msgid "File format: %(format)s" msgid "File format: %(format)s"
msgstr "" msgstr "Bestandsformaat: %(format)s"
#: cps/web.py:630 #: cps/web.py:630
#, python-format #, python-format
@ -747,15 +747,15 @@ msgstr "Uitgeverslijst"
#: cps/templates/index.xml:82 cps/web.py:695 #: cps/templates/index.xml:82 cps/web.py:695
msgid "Series list" msgid "Series list"
msgstr "Serielijst" msgstr "Boekenreeksen"
#: cps/web.py:709 #: cps/web.py:709
msgid "Ratings list" msgid "Ratings list"
msgstr "" msgstr "Beoordelingen"
#: cps/web.py:722 #: cps/web.py:722
msgid "File formats list" msgid "File formats list"
msgstr "" msgstr "Alle bestandsformaten"
#: cps/web.py:750 #: cps/web.py:750
msgid "Available languages" msgid "Available languages"
@ -803,7 +803,7 @@ msgstr "Het boek is in de wachtrij geplaatst om te worden verstuurd aan %(kindle
#: cps/web.py:1031 #: cps/web.py:1031
#, python-format #, python-format
msgid "There was an error sending this book: %(res)s" msgid "There was an error sending this book: %(res)s"
msgstr "Er is een fout opgetreden bij het versturen van dit boek: %(res)s" msgstr "Fout opgetreden bij het versturen van dit boek: %(res)s"
#: cps/web.py:1051 cps/web.py:1076 cps/web.py:1080 cps/web.py:1085 #: cps/web.py:1051 cps/web.py:1076 cps/web.py:1080 cps/web.py:1085
#: cps/web.py:1089 #: cps/web.py:1089
@ -829,11 +829,11 @@ msgstr ""
#: cps/web.py:1108 cps/web.py:1214 #: cps/web.py:1108 cps/web.py:1214
#, python-format #, python-format
msgid "you are now logged in as: '%(nickname)s'" msgid "you are now logged in as: '%(nickname)s'"
msgstr "je bent nu ingelogd als: '%(nickname)s'" msgstr "je bent ingelogd als: '%(nickname)s'"
#: cps/web.py:1112 #: cps/web.py:1112
msgid "Could not login. LDAP server down, please contact your administrator" msgid "Could not login. LDAP server down, please contact your administrator"
msgstr "" msgstr "Kan niet inloggen, LDAP server niet bereikbaar, contacteer de beheerder"
#: cps/web.py:1116 cps/web.py:1124 #: cps/web.py:1116 cps/web.py:1124
msgid "Wrong Username or Password" msgid "Wrong Username or Password"
@ -842,7 +842,7 @@ msgstr "Verkeerde gebruikersnaam of wachtwoord"
#: cps/web.py:1120 #: cps/web.py:1120
#, python-format #, python-format
msgid "You are now logged in as: '%(nickname)s'" msgid "You are now logged in as: '%(nickname)s'"
msgstr "" msgstr "Je bent ingelogd als: '%(nickname)s'"
#: cps/web.py:1128 cps/web.py:1150 #: cps/web.py:1128 cps/web.py:1150
msgid "login" msgid "login"
@ -886,7 +886,7 @@ msgstr "E-boek-conversie mislukt: %(error)s"
#: cps/worker.py:339 #: cps/worker.py:339
#, python-format #, python-format
msgid "Kindlegen failed with Error %(error)s. Message: %(message)s" msgid "Kindlegen failed with Error %(error)s. Message: %(message)s"
msgstr "Kindlegen mislukt; fout: %(error)s. Bericht: %(message)s" msgstr "KindleGen mislukt; fout: %(error)s. Bericht: %(message)s"
#: cps/templates/admin.html:6 #: cps/templates/admin.html:6
msgid "User list" msgid "User list"
@ -898,19 +898,19 @@ msgstr "Gebruikersnaam"
#: cps/templates/admin.html:10 #: cps/templates/admin.html:10
msgid "E-mail" msgid "E-mail"
msgstr "E-mailadres" msgstr "e-mailadres"
#: cps/templates/admin.html:11 #: cps/templates/admin.html:11
msgid "Kindle" msgid "Kindle"
msgstr "Kindlle" msgstr "Kindle-e-mailadres"
#: cps/templates/admin.html:12 #: cps/templates/admin.html:12
msgid "DLS" msgid "DLS"
msgstr "DLS" msgstr "Downloads"
#: cps/templates/admin.html:13 cps/templates/layout.html:76 #: cps/templates/admin.html:13 cps/templates/layout.html:76
msgid "Admin" msgid "Admin"
msgstr "Administratie" msgstr "Beheer"
#: cps/templates/admin.html:14 cps/templates/detail.html:18 #: cps/templates/admin.html:14 cps/templates/detail.html:18
#: cps/templates/detail.html:27 cps/templates/shelf.html:6 #: cps/templates/detail.html:27 cps/templates/shelf.html:6
@ -920,7 +920,7 @@ msgstr "Downloaden"
#: cps/templates/admin.html:15 #: cps/templates/admin.html:15
msgid "View Ebooks" msgid "View Ebooks"
msgstr "" msgstr "Boeken lezen"
#: cps/templates/admin.html:16 cps/templates/layout.html:65 #: cps/templates/admin.html:16 cps/templates/layout.html:65
msgid "Upload" msgid "Upload"
@ -980,7 +980,7 @@ msgstr "Aantal boeken per pagina"
#: cps/templates/admin.html:85 #: cps/templates/admin.html:85
msgid "Uploading" msgid "Uploading"
msgstr "Bezig met uploaden" msgstr "Uploaden toestaan"
#: cps/templates/admin.html:89 #: cps/templates/admin.html:89
msgid "Anonymous browsing" msgid "Anonymous browsing"
@ -996,11 +996,11 @@ msgstr "Inloggen op afstand"
#: cps/templates/admin.html:108 #: cps/templates/admin.html:108
msgid "Administration" msgid "Administration"
msgstr "Administratie" msgstr "Systeembeheer"
#: cps/templates/admin.html:109 #: cps/templates/admin.html:109
msgid "View Logfiles" msgid "View Logfiles"
msgstr "" msgstr "Logboeken bekijken"
#: cps/templates/admin.html:110 #: cps/templates/admin.html:110
msgid "Reconnect to Calibre DB" msgid "Reconnect to Calibre DB"
@ -1055,7 +1055,7 @@ msgstr "Oké"
#: cps/templates/shelf_edit.html:19 cps/templates/shelf_order.html:12 #: cps/templates/shelf_edit.html:19 cps/templates/shelf_order.html:12
#: cps/templates/user_edit.html:132 #: cps/templates/user_edit.html:132
msgid "Back" msgid "Back"
msgstr "Terug" msgstr "Annuleren"
#: cps/templates/admin.html:166 #: cps/templates/admin.html:166
msgid "Do you really want to stop Calibre-Web?" msgid "Do you really want to stop Calibre-Web?"
@ -1203,7 +1203,7 @@ msgstr "Weet je het zeker?"
#: cps/templates/book_edit.html:190 #: cps/templates/book_edit.html:190
msgid "Book will be deleted from Calibre database" msgid "Book will be deleted from Calibre database"
msgstr "Het boek wordt verwijderd uit de Calibre-databank" msgstr "Het boek wordt verwijderd uit de Calibre-database"
#: cps/templates/book_edit.html:191 #: cps/templates/book_edit.html:191
msgid "and from hard disk" msgid "and from hard disk"
@ -1252,7 +1252,7 @@ msgstr "Bibliotheekinstellingen"
#: cps/templates/config_edit.html:19 #: cps/templates/config_edit.html:19
msgid "Location of Calibre database" msgid "Location of Calibre database"
msgstr "Locatie van de Calibre-databank" msgstr "Locatie van de Calibre-database"
#: cps/templates/config_edit.html:25 #: cps/templates/config_edit.html:25
msgid "Use Google Drive?" msgid "Use Google Drive?"
@ -1324,7 +1324,7 @@ msgstr "Bèta (automatisch)"
#: cps/templates/config_edit.html:115 #: cps/templates/config_edit.html:115
msgid "Logfile Configuration" msgid "Logfile Configuration"
msgstr "Logbestand-instellingen" msgstr "Logbestanden"
#: cps/templates/config_edit.html:122 #: cps/templates/config_edit.html:122
msgid "Log Level" msgid "Log Level"
@ -1344,7 +1344,7 @@ msgstr ""
#: cps/templates/config_edit.html:150 #: cps/templates/config_edit.html:150
msgid "Feature Configuration" msgid "Feature Configuration"
msgstr "Mogelijkheden" msgstr "Geavanceerde opties"
#: cps/templates/config_edit.html:158 #: cps/templates/config_edit.html:158
msgid "Enable uploading" msgid "Enable uploading"
@ -1364,7 +1364,7 @@ msgstr "Inloggen op afstand inschakelen ('magic link')"
#: cps/templates/config_edit.html:175 #: cps/templates/config_edit.html:175
msgid "Use" msgid "Use"
msgstr "Gebruiken" msgstr "Gebruik"
#: cps/templates/config_edit.html:176 #: cps/templates/config_edit.html:176
msgid "Obtain an API Key" msgid "Obtain an API Key"
@ -1384,27 +1384,27 @@ msgstr ""
#: cps/templates/config_edit.html:193 #: cps/templates/config_edit.html:193
msgid "Use standard Authentication" msgid "Use standard Authentication"
msgstr "" msgstr "Gebruik standaard authenticatie"
#: cps/templates/config_edit.html:195 #: cps/templates/config_edit.html:195
msgid "Use LDAP Authentication" msgid "Use LDAP Authentication"
msgstr "" msgstr "Gebruik LDAP authenticatie"
#: cps/templates/config_edit.html:198 #: cps/templates/config_edit.html:198
msgid "Use OAuth" msgid "Use OAuth"
msgstr "" msgstr "Gebruik OAuth"
#: cps/templates/config_edit.html:205 #: cps/templates/config_edit.html:205
msgid "LDAP Server Host Name or IP Address" msgid "LDAP Server Host Name or IP Address"
msgstr "" msgstr "LDAP Server hostnaam of IP-adres"
#: cps/templates/config_edit.html:209 #: cps/templates/config_edit.html:209
msgid "LDAP Server Port" msgid "LDAP Server Port"
msgstr "" msgstr "LDAP Server Poort"
#: cps/templates/config_edit.html:213 #: cps/templates/config_edit.html:213
msgid "LDAP schema (ldap or ldaps)" msgid "LDAP schema (ldap or ldaps)"
msgstr "" msgstr "LDAP schema (ldap of ldaps)"
#: cps/templates/config_edit.html:217 #: cps/templates/config_edit.html:217
msgid "LDAP Admin username" msgid "LDAP Admin username"
@ -1459,7 +1459,7 @@ msgstr ""
#: cps/templates/config_edit.html:282 #: cps/templates/config_edit.html:282
msgid "External binaries" msgid "External binaries"
msgstr "Externe bibliotheken" msgstr "Externe programma's"
#: cps/templates/config_edit.html:290 #: cps/templates/config_edit.html:290
msgid "No converter" msgid "No converter"
@ -1467,7 +1467,7 @@ msgstr "Geen conversieprogramma"
#: cps/templates/config_edit.html:292 #: cps/templates/config_edit.html:292
msgid "Use Kindlegen" msgid "Use Kindlegen"
msgstr "Kindlegen gebruiken" msgstr "KindleGen"
#: cps/templates/config_edit.html:294 #: cps/templates/config_edit.html:294
msgid "Use calibre's ebook converter" msgid "Use calibre's ebook converter"
@ -1479,7 +1479,7 @@ msgstr "Conversie-instellingen"
#: cps/templates/config_edit.html:302 #: cps/templates/config_edit.html:302
msgid "Path to convertertool" msgid "Path to convertertool"
msgstr "Pad naar conversieprogramma" msgstr "Locatie van conversieprogramma"
#: cps/templates/config_edit.html:308 #: cps/templates/config_edit.html:308
msgid "Location of Unrar binary" msgid "Location of Unrar binary"
@ -1540,7 +1540,7 @@ msgstr "Standaardinstellingen voor nieuwe gebruikers"
#: cps/templates/config_view_edit.html:81 cps/templates/user_edit.html:83 #: cps/templates/config_view_edit.html:81 cps/templates/user_edit.html:83
msgid "Admin user" msgid "Admin user"
msgstr "Admin-gebruiker" msgstr "Systeembeheerder"
#: cps/templates/config_view_edit.html:85 cps/templates/user_edit.html:92 #: cps/templates/config_view_edit.html:85 cps/templates/user_edit.html:92
msgid "Allow Downloads" msgid "Allow Downloads"
@ -1548,7 +1548,7 @@ msgstr "Downloads toestaan"
#: cps/templates/config_view_edit.html:89 cps/templates/user_edit.html:96 #: cps/templates/config_view_edit.html:89 cps/templates/user_edit.html:96
msgid "Allow book viewer" msgid "Allow book viewer"
msgstr "" msgstr "Boeken lezen toestaan"
#: cps/templates/config_view_edit.html:93 cps/templates/user_edit.html:100 #: cps/templates/config_view_edit.html:93 cps/templates/user_edit.html:100
msgid "Allow Uploads" msgid "Allow Uploads"
@ -1588,7 +1588,7 @@ msgstr "Lezen in webbrowser"
#: cps/templates/detail.html:72 #: cps/templates/detail.html:72
msgid "Listen in browser" msgid "Listen in browser"
msgstr "" msgstr "Luisteren in webbrowser"
#: cps/templates/detail.html:117 #: cps/templates/detail.html:117
msgid "Book" msgid "Book"
@ -1612,11 +1612,11 @@ msgstr "Markeren als gelezen"
#: cps/templates/detail.html:201 #: cps/templates/detail.html:201
msgid "Read" msgid "Read"
msgstr "Lezen" msgstr "Gelezen"
#: cps/templates/detail.html:211 cps/templates/listenmp3.html:54 #: cps/templates/detail.html:211 cps/templates/listenmp3.html:54
msgid "Description:" msgid "Description:"
msgstr "Omschrijving:" msgstr "Beschrijving:"
#: cps/templates/detail.html:224 cps/templates/search.html:14 #: cps/templates/detail.html:224 cps/templates/search.html:14
msgid "Add to shelf" msgid "Add to shelf"
@ -1632,7 +1632,7 @@ msgstr "SMTP-poort (meestal 25 voor normale SMTP, 465 voor SSL en 587 voor START
#: cps/templates/email_edit.html:19 #: cps/templates/email_edit.html:19
msgid "Encryption" msgid "Encryption"
msgstr "Versleuteling" msgstr "Beveiliging"
#: cps/templates/email_edit.html:21 #: cps/templates/email_edit.html:21
msgid "None" msgid "None"
@ -1693,7 +1693,7 @@ msgstr "Zoeken"
#: cps/templates/http_error.html:37 #: cps/templates/http_error.html:37
msgid "Create issue" msgid "Create issue"
msgstr "" msgstr "Probleem melden"
#: cps/templates/http_error.html:44 #: cps/templates/http_error.html:44
msgid "Back to home" msgid "Back to home"
@ -1705,7 +1705,7 @@ msgstr "Verkennen (willekeurige boeken)"
#: cps/templates/index.html:64 #: cps/templates/index.html:64
msgid "Group by series" msgid "Group by series"
msgstr "" msgstr "Sorteren op reeks"
#: cps/templates/index.xml:6 #: cps/templates/index.xml:6
msgid "Start" msgid "Start"
@ -1745,7 +1745,7 @@ msgstr "Boeken gesorteerd op categorie"
#: cps/templates/index.xml:86 #: cps/templates/index.xml:86
msgid "Books ordered by series" msgid "Books ordered by series"
msgstr "Boeken gesorteerd op serie" msgstr "Boeken gesorteerd op reeks"
#: cps/templates/index.xml:89 cps/templates/layout.html:132 #: cps/templates/index.xml:89 cps/templates/layout.html:132
msgid "Public Shelves" msgid "Public Shelves"
@ -1761,7 +1761,7 @@ msgstr "Jouw boekenplanken"
#: cps/templates/index.xml:101 #: cps/templates/index.xml:101
msgid "User's own shelfs, only visible to the current user himself" msgid "User's own shelfs, only visible to the current user himself"
msgstr "Eigen boekenplanken, enkel zichtbaar voor de huidige gebruiker" msgstr "Eigen boekenplanken, enkel zichtbaar voor huidige gebruiker"
#: cps/templates/layout.html:28 #: cps/templates/layout.html:28
msgid "Home" msgid "Home"
@ -1806,11 +1806,11 @@ msgstr "Verkennen"
#: cps/templates/layout.html:141 #: cps/templates/layout.html:141
msgid "Create a Shelf" msgid "Create a Shelf"
msgstr "Creëer een boekenplank" msgstr "Boekenplank aanmaken"
#: cps/templates/layout.html:142 cps/templates/stats.html:3 #: cps/templates/layout.html:142 cps/templates/stats.html:3
msgid "About" msgid "About"
msgstr "Over" msgstr "Informatie"
#: cps/templates/layout.html:156 #: cps/templates/layout.html:156
msgid "Previous" msgid "Previous"
@ -1822,7 +1822,7 @@ msgstr "Boekgegevens"
#: cps/templates/layout.html:217 #: cps/templates/layout.html:217
msgid "Upload done, processing, please wait..." msgid "Upload done, processing, please wait..."
msgstr "Uploaden voltooid; bezig met verwerken..." msgstr "Uploaden voltooid, bezig met verwerken..."
#: cps/templates/layout.html:220 #: cps/templates/layout.html:220
msgid "Error" msgid "Error"
@ -1830,11 +1830,11 @@ msgstr "Fout"
#: cps/templates/listenmp3.html:66 #: cps/templates/listenmp3.html:66
msgid "Play / pause" msgid "Play / pause"
msgstr "" msgstr "Afspelen / pauze"
#: cps/templates/listenmp3.html:98 #: cps/templates/listenmp3.html:98
msgid "volume" msgid "volume"
msgstr "" msgstr "volume"
#: cps/templates/login.html:8 cps/templates/login.html:9 #: cps/templates/login.html:8 cps/templates/login.html:9
#: cps/templates/register.html:7 cps/templates/user_edit.html:8 #: cps/templates/register.html:7 cps/templates/user_edit.html:8
@ -1848,7 +1848,7 @@ msgstr "Wachtwoord"
#: cps/templates/login.html:17 #: cps/templates/login.html:17
msgid "Remember me" msgid "Remember me"
msgstr "Onthouden" msgstr "Mij onthouden"
#: cps/templates/login.html:22 #: cps/templates/login.html:22
msgid "Log in with magic link" msgid "Log in with magic link"
@ -1856,11 +1856,11 @@ msgstr "Inloggen met magische koppeling"
#: cps/templates/logviewer.html:5 #: cps/templates/logviewer.html:5
msgid "Show Calibre-Web log" msgid "Show Calibre-Web log"
msgstr "" msgstr "Calibre-Web log inzien"
#: cps/templates/logviewer.html:8 #: cps/templates/logviewer.html:8
msgid "Show access log" msgid "Show access log"
msgstr "" msgstr "Toegangslogboek"
#: cps/templates/osd.xml:5 #: cps/templates/osd.xml:5
msgid "Calibre-Web ebook catalog" msgid "Calibre-Web ebook catalog"
@ -1984,7 +1984,7 @@ msgstr "Kies een gebruikersnaam"
#: cps/templates/register.html:11 cps/templates/user_edit.html:13 #: cps/templates/register.html:11 cps/templates/user_edit.html:13
msgid "E-mail address" msgid "E-mail address"
msgstr "E-mailadres" msgstr "e-mailadres"
#: cps/templates/register.html:12 #: cps/templates/register.html:12
msgid "Your email address" msgid "Your email address"
@ -2028,7 +2028,7 @@ msgstr "Labels uitsluiten"
#: cps/templates/search_form.html:63 #: cps/templates/search_form.html:63
msgid "Exclude Series" msgid "Exclude Series"
msgstr "Series uitsluiten" msgstr "Boekenreeksen uitsluiten"
#: cps/templates/search_form.html:84 #: cps/templates/search_form.html:84
msgid "Exclude Languages" msgid "Exclude Languages"
@ -2048,7 +2048,7 @@ msgstr "Deze boekenplank verwijderen"
#: cps/templates/shelf.html:11 #: cps/templates/shelf.html:11
msgid "Edit Shelf" msgid "Edit Shelf"
msgstr "Boekenplank aanpassen" msgstr "Boekenplank bewerken"
#: cps/templates/shelf.html:12 cps/templates/shelf_order.html:11 #: cps/templates/shelf.html:12 cps/templates/shelf_order.html:11
msgid "Change order" msgid "Change order"
@ -2072,7 +2072,7 @@ msgstr "Verander de volgorde middels slepen-en-neerzetten"
#: cps/templates/stats.html:7 #: cps/templates/stats.html:7
msgid "Calibre library statistics" msgid "Calibre library statistics"
msgstr "Calibre-bibliotheekstatistieken" msgstr "Calibre bibliotheekstatistieken"
#: cps/templates/stats.html:12 #: cps/templates/stats.html:12
msgid "Books in this Library" msgid "Books in this Library"
@ -2088,7 +2088,7 @@ msgstr "Categorieën in deze bibliotheek"
#: cps/templates/stats.html:24 #: cps/templates/stats.html:24
msgid "Series in this Library" msgid "Series in this Library"
msgstr "Series in deze bibliotheek" msgstr "Boekenreeksen in deze bibliotheek"
#: cps/templates/stats.html:28 #: cps/templates/stats.html:28
msgid "Linked libraries" msgid "Linked libraries"
@ -2100,7 +2100,7 @@ msgstr "Programmabibliotheek"
#: cps/templates/stats.html:33 #: cps/templates/stats.html:33
msgid "Installed Version" msgid "Installed Version"
msgstr "Geïnstalleerde versie" msgstr "Versie"
#: cps/templates/tasks.html:7 #: cps/templates/tasks.html:7
msgid "Tasks list" msgid "Tasks list"
@ -2148,23 +2148,23 @@ msgstr "Kindle-e-mailadres"
#: cps/templates/user_edit.html:40 #: cps/templates/user_edit.html:40
msgid "Show books with language" msgid "Show books with language"
msgstr "Boeken tonen met taal" msgstr "Taal van boeken"
#: cps/templates/user_edit.html:42 #: cps/templates/user_edit.html:42
msgid "Show all" msgid "Show all"
msgstr "Alle tonen" msgstr "Alle talen"
#: cps/templates/user_edit.html:52 #: cps/templates/user_edit.html:52
msgid "OAuth Settings" msgid "OAuth Settings"
msgstr "" msgstr "OAuth Instellingen"
#: cps/templates/user_edit.html:54 #: cps/templates/user_edit.html:54
msgid "Link" msgid "Link"
msgstr "" msgstr "Koppelen"
#: cps/templates/user_edit.html:56 #: cps/templates/user_edit.html:56
msgid "Unlink" msgid "Unlink"
msgstr "" msgstr "Ontkoppelen"
#: cps/templates/user_edit.html:124 #: cps/templates/user_edit.html:124
msgid "Delete this user" msgid "Delete this user"

@ -133,7 +133,7 @@ def load_user_from_header(header_val):
except TypeError: except TypeError:
pass pass
user = ub.session.query(ub.User).filter(func.lower(ub.User.nickname) == basic_username.lower()).first() user = ub.session.query(ub.User).filter(func.lower(ub.User.nickname) == basic_username.lower()).first()
if user and check_password_hash(user.password, basic_password): if user and check_password_hash(str(user.password), basic_password):
return user return user
return return
@ -1115,7 +1115,7 @@ def login():
log.info('LDAP Login failed for user "%s" IP-adress: %s', form['username'], ipAdress) log.info('LDAP Login failed for user "%s" IP-adress: %s', form['username'], ipAdress)
flash(_(u"Wrong Username or Password"), category="error") flash(_(u"Wrong Username or Password"), category="error")
else: else:
if user and check_password_hash(user.password, form['password']) and user.nickname != "Guest": if user and check_password_hash(str(user.password), form['password']) and user.nickname != "Guest":
login_user(user, remember=True) login_user(user, remember=True)
flash(_(u"You are now logged in as: '%(nickname)s'", nickname=user.nickname), category="success") flash(_(u"You are now logged in as: '%(nickname)s'", nickname=user.nickname), category="success")
return redirect_back(url_for("web.index")) return redirect_back(url_for("web.index"))

Loading…
Cancel
Save