diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md index f59e5943..34d2c453 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.md +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -27,12 +27,12 @@ A clear and concise description of what you expected to happen. If applicable, add screenshots to help explain your problem. **Environment (please complete the following information):** - - OS: [e.g. Windows 10/raspian] - - Python version [e.g. python2.7] - - Calibre-Web version [e.g. 0.6.5 or master@16.02.20, 19:55 ]: - - Docker container [ None/Technosoft2000/Linuxuser]: - - Special Hardware [e.g. Rasperry Pi Zero] - - Browser [e.g. chrome, safari] + - OS: [e.g. Windows 10/Raspberry Pi OS] + - Python version: [e.g. python2.7] + - Calibre-Web version: [e.g. 0.6.8 or 087c4c59 (git rev-parse --short HEAD)]: + - Docker container: [None/Technosoft2000/Linuxuser]: + - Special Hardware: [e.g. Rasperry Pi Zero] + - Browser: [e.g. Chrome 83.0.4103.97, Safari 13.3.7, Firefox 68.0.1 ESR] **Additional context** -Add any other context about the problem here. [e.g. access via reverse proxy] +Add any other context about the problem here. [e.g. access via reverse proxy, database background sync, special database location] diff --git a/cps/admin.py b/cps/admin.py index 84a94cba..4fe027a2 100644 --- a/cps/admin.py +++ b/cps/admin.py @@ -34,7 +34,7 @@ from flask import Blueprint, flash, redirect, url_for, abort, request, make_resp from flask_login import login_required, current_user, logout_user from flask_babel import gettext as _ from sqlalchemy import and_ -from sqlalchemy.exc import IntegrityError +from sqlalchemy.exc import IntegrityError, OperationalError, InvalidRequestError from sqlalchemy.sql.expression import func from . import constants, logger, helper, services @@ -613,80 +613,86 @@ def _configuration_update_helper(): reboot_required = False db_change = False to_save = request.form.to_dict() + gdriveError = None to_save['config_calibre_dir'] = re.sub('[\\/]metadata\.db$', '', to_save['config_calibre_dir'], flags=re.IGNORECASE) - db_change |= _config_string(to_save, "config_calibre_dir") + try: + db_change |= _config_string(to_save, "config_calibre_dir") + + # Google drive setup + gdriveError = _configuration_gdrive_helper(to_save) + + reboot_required |= _config_int(to_save, "config_port") + + reboot_required |= _config_string(to_save, "config_keyfile") + if config.config_keyfile and not os.path.isfile(config.config_keyfile): + return _configuration_result(_('Keyfile Location is not Valid, Please Enter Correct Path'), gdriveError) + + reboot_required |= _config_string(to_save, "config_certfile") + if config.config_certfile and not os.path.isfile(config.config_certfile): + return _configuration_result(_('Certfile Location is not Valid, Please Enter Correct Path'), gdriveError) + + _config_checkbox_int(to_save, "config_uploading") + _config_checkbox_int(to_save, "config_anonbrowse") + _config_checkbox_int(to_save, "config_public_reg") + _config_checkbox_int(to_save, "config_register_email") + reboot_required |= _config_checkbox_int(to_save, "config_kobo_sync") + _config_checkbox_int(to_save, "config_kobo_proxy") + + _config_string(to_save, "config_upload_formats") + constants.EXTENSIONS_UPLOAD = [x.lstrip().rstrip() for x in config.config_upload_formats.split(',')] + + _config_string(to_save, "config_calibre") + _config_string(to_save, "config_converterpath") + _config_string(to_save, "config_kepubifypath") - # Google drive setup - gdriveError = _configuration_gdrive_helper(to_save) + reboot_required |= _config_int(to_save, "config_login_type") - reboot_required |= _config_int(to_save, "config_port") + #LDAP configurator, + if config.config_login_type == constants.LOGIN_LDAP: + reboot, message = _configuration_ldap_helper(to_save, gdriveError) + if message: + return message + reboot_required |= reboot - reboot_required |= _config_string(to_save, "config_keyfile") - if config.config_keyfile and not os.path.isfile(config.config_keyfile): - return _configuration_result(_('Keyfile Location is not Valid, Please Enter Correct Path'), gdriveError) + # Remote login configuration - reboot_required |= _config_string(to_save, "config_certfile") - if config.config_certfile and not os.path.isfile(config.config_certfile): - return _configuration_result(_('Certfile Location is not Valid, Please Enter Correct Path'), gdriveError) + _config_checkbox(to_save, "config_remote_login") + if not config.config_remote_login: + ub.session.query(ub.RemoteAuthToken).filter(ub.RemoteAuthToken.token_type==0).delete() - _config_checkbox_int(to_save, "config_uploading") - _config_checkbox_int(to_save, "config_anonbrowse") - _config_checkbox_int(to_save, "config_public_reg") - _config_checkbox_int(to_save, "config_register_email") - reboot_required |= _config_checkbox_int(to_save, "config_kobo_sync") - _config_checkbox_int(to_save, "config_kobo_proxy") + # Goodreads configuration + _config_checkbox(to_save, "config_use_goodreads") + _config_string(to_save, "config_goodreads_api_key") + _config_string(to_save, "config_goodreads_api_secret") + if services.goodreads_support: + services.goodreads_support.connect(config.config_goodreads_api_key, + config.config_goodreads_api_secret, + config.config_use_goodreads) - _config_string(to_save, "config_upload_formats") - constants.EXTENSIONS_UPLOAD = [x.lstrip().rstrip() for x in config.config_upload_formats.split(',')] + _config_int(to_save, "config_updatechannel") - _config_string(to_save, "config_calibre") - _config_string(to_save, "config_converterpath") - _config_string(to_save, "config_kepubifypath") + # Reverse proxy login configuration + _config_checkbox(to_save, "config_allow_reverse_proxy_header_login") + _config_string(to_save, "config_reverse_proxy_login_header_name") - reboot_required |= _config_int(to_save, "config_login_type") + # OAuth configuration + if config.config_login_type == constants.LOGIN_OAUTH: + reboot_required |= _configuration_oauth_helper(to_save) - #LDAP configurator, - if config.config_login_type == constants.LOGIN_LDAP: - reboot, message = _configuration_ldap_helper(to_save, gdriveError) + reboot, message = _configuration_logfile_helper(to_save, gdriveError) if message: return message reboot_required |= reboot - - # Remote login configuration - _config_checkbox(to_save, "config_remote_login") - if not config.config_remote_login: - ub.session.query(ub.RemoteAuthToken).filter(ub.RemoteAuthToken.token_type==0).delete() - - # Goodreads configuration - _config_checkbox(to_save, "config_use_goodreads") - _config_string(to_save, "config_goodreads_api_key") - _config_string(to_save, "config_goodreads_api_secret") - if services.goodreads_support: - services.goodreads_support.connect(config.config_goodreads_api_key, - config.config_goodreads_api_secret, - config.config_use_goodreads) - - _config_int(to_save, "config_updatechannel") - - # Reverse proxy login configuration - _config_checkbox(to_save, "config_allow_reverse_proxy_header_login") - _config_string(to_save, "config_reverse_proxy_login_header_name") - - # OAuth configuration - if config.config_login_type == constants.LOGIN_OAUTH: - reboot_required |= _configuration_oauth_helper(to_save) - - reboot, message = _configuration_logfile_helper(to_save, gdriveError) - if message: - return message - reboot_required |= reboot - # Rarfile Content configuration - _config_string(to_save, "config_rarfile_location") - if "config_rarfile_location" in to_save: - unrar_status = helper.check_unrar(config.config_rarfile_location) - if unrar_status: - return _configuration_result(unrar_status, gdriveError) + # Rarfile Content configuration + _config_string(to_save, "config_rarfile_location") + if "config_rarfile_location" in to_save: + unrar_status = helper.check_unrar(config.config_rarfile_location) + if unrar_status: + return _configuration_result(unrar_status, gdriveError) + except (OperationalError, InvalidRequestError): + ub.session.rollback() + _configuration_result(_(u"Settings DB is not Writeable"), gdriveError) try: metadata_db = os.path.join(config.config_calibre_dir, "metadata.db") @@ -719,7 +725,7 @@ def _configuration_result(error_flash=None, gdriveError=None): gdriveError = _(gdriveError) else: # if config.config_use_google_drive and\ - if not gdrive_authenticate: + if not gdrive_authenticate and gdrive_support: gdrivefolders = gdriveutils.listRootFolders() show_back_button = current_user.is_authenticated @@ -783,6 +789,9 @@ def _handle_new_user(to_save, content,languages, translations, kobo_support): except IntegrityError: ub.session.rollback() flash(_(u"Found an existing account for this e-mail address or nickname."), category="error") + except OperationalError: + ub.session.rollback() + flash(_(u"Settings DB is not Writeable"), category="error") def _handle_edit_user(to_save, content,languages, translations, kobo_support, downloads): @@ -872,6 +881,9 @@ def _handle_edit_user(to_save, content,languages, translations, kobo_support, do except IntegrityError: ub.session.rollback() flash(_(u"An unknown error occured."), category="error") + except OperationalError: + ub.session.rollback() + flash(_(u"Settings DB is not Writeable"), category="error") @admi.route("/admin/user/new", methods=["GET", "POST"]) @@ -916,7 +928,12 @@ def update_mailsettings(): _config_string(to_save, "mail_password") _config_string(to_save, "mail_from") _config_int(to_save, "mail_size", lambda y: int(y)*1024*1024) - config.save() + try: + config.save() + except (OperationalError, InvalidRequestError): + ub.session.rollback() + flash(_(u"Settings DB is not Writeable"), category="error") + return edit_mailsettings() if to_save.get("test"): if current_user.email: diff --git a/cps/editbooks.py b/cps/editbooks.py index 30cc918b..91c795ea 100644 --- a/cps/editbooks.py +++ b/cps/editbooks.py @@ -354,7 +354,8 @@ def edit_book_ratings(to_save, book): def edit_book_tags(tags, book): input_tags = tags.split(',') input_tags = list(map(lambda it: it.strip(), input_tags)) - # if input_tags[0] !="": ?? + # Remove duplicates + input_tags = helper.uniq(input_tags) return modify_database_object(input_tags, book.tags, db.Tags, calibre_db.session, 'tags') @@ -368,8 +369,6 @@ def edit_book_series_index(series_index, book): # Add default series_index to book modif_date = False series_index = series_index or '1' - #if series_index == '': - # series_index = '1' if book.series_index != series_index: book.series_index = series_index modif_date = True @@ -403,6 +402,8 @@ def edit_book_languages(languages, book, upload=False): if input_l[0] != current_user.filter_language() and current_user.filter_language() != "all": input_l[0] = calibre_db.session.query(db.Languages). \ filter(db.Languages.lang_code == current_user.filter_language()).first() + # Remove duplicates + input_l = helper.uniq(input_l) return modify_database_object(input_l, book.languages, db.Languages, calibre_db.session, 'languages') @@ -605,6 +606,8 @@ def edit_book(book_id): # handle author(s) input_authors = to_save["author_name"].split('&') input_authors = list(map(lambda it: it.strip().replace(',', '|'), input_authors)) + # Remove duplicates in authors list + input_authors = helper.uniq(input_authors) # we have all author names now if input_authors == ['']: input_authors = [_(u'Unknown')] # prevent empty Author @@ -775,6 +778,9 @@ def upload(): input_authors = authr.split('&') # handle_authors(input_authors) input_authors = list(map(lambda it: it.strip().replace(',', '|'), input_authors)) + # Remove duplicates in authors list + input_authors = helper.uniq(input_authors) + # we have all author names now if input_authors == ['']: input_authors = [_(u'Unknown')] # prevent empty Author diff --git a/cps/epub.py b/cps/epub.py index 8b988084..f863db61 100644 --- a/cps/epub.py +++ b/cps/epub.py @@ -122,9 +122,14 @@ def get_epub_info(tmp_file_path, original_file_name, original_file_extension): markupTree = etree.fromstring(markup) # no matter xhtml or html with no namespace imgsrc = markupTree.xpath("//*[local-name() = 'img']/@src") - # imgsrc maybe startwith "../"" so fullpath join then relpath to cwd - filename = os.path.relpath(os.path.join(os.path.dirname(os.path.join(coverpath, coversection[0])), imgsrc[0])) - coverfile = extractCover(epubZip, filename, "", tmp_file_path) + # Alternative image source + if not len(imgsrc): + imgsrc = markupTree.xpath("//attribute::*[contains(local-name(), 'href')]") + if len(imgsrc): + # imgsrc maybe startwith "../"" so fullpath join then relpath to cwd + filename = os.path.relpath(os.path.join(os.path.dirname(os.path.join(coverpath, coversection[0])), + imgsrc[0])) + coverfile = extractCover(epubZip, filename, "", tmp_file_path) else: coverfile = extractCover(epubZip, coversection[0], coverpath, tmp_file_path) diff --git a/cps/gdriveutils.py b/cps/gdriveutils.py index d53044bd..9ea0479d 100644 --- a/cps/gdriveutils.py +++ b/cps/gdriveutils.py @@ -27,12 +27,14 @@ from sqlalchemy import Column, UniqueConstraint from sqlalchemy import String, Integer from sqlalchemy.orm import sessionmaker, scoped_session from sqlalchemy.ext.declarative import declarative_base +from sqlalchemy.exc import OperationalError, InvalidRequestError try: from pydrive.auth import GoogleAuth from pydrive.drive import GoogleDrive from pydrive.auth import RefreshError from apiclient import errors + from httplib2 import ServerNotFoundError gdrive_support = True except ImportError: gdrive_support = False @@ -192,9 +194,13 @@ def getDrive(drive=None, gauth=None): return drive def listRootFolders(): - drive = getDrive(Gdrive.Instance().drive) - folder = "'root' in parents and mimeType = 'application/vnd.google-apps.folder' and trashed = false" - fileList = drive.ListFile({'q': folder}).GetList() + try: + drive = getDrive(Gdrive.Instance().drive) + folder = "'root' in parents and mimeType = 'application/vnd.google-apps.folder' and trashed = false" + fileList = drive.ListFile({'q': folder}).GetList() + except ServerNotFoundError as e: + log.info("GDrive Error %s" % e) + fileList = [] return fileList @@ -474,8 +480,13 @@ def getChangeById (drive, change_id): # Deletes the local hashes database to force search for new folder names def deleteDatabaseOnChange(): - session.query(GdriveId).delete() - session.commit() + try: + session.query(GdriveId).delete() + session.commit() + except (OperationalError, InvalidRequestError): + session.rollback() + log.info(u"GDrive DB is not Writeable") + def updateGdriveCalibreFromLocal(): copyToDrive(Gdrive.Instance().drive, config.config_calibre_dir, False, True) diff --git a/cps/helper.py b/cps/helper.py index b9463416..506613eb 100644 --- a/cps/helper.py +++ b/cps/helper.py @@ -468,6 +468,14 @@ def generate_random_password(): passlen = 8 return "".join(s[c % len(s)] for c in os.urandom(passlen)) + +def uniq(input): + output = [] + for x in input: + if x not in output: + output.append(x) + return output + ################################## External interface diff --git a/cps/services/simpleldap.py b/cps/services/simpleldap.py index b6fd0ac2..0933a933 100644 --- a/cps/services/simpleldap.py +++ b/cps/services/simpleldap.py @@ -64,7 +64,6 @@ def init_app(app, config): app.config['LDAP_OPENLDAP'] = bool(config.config_ldap_openldap) app.config['LDAP_GROUP_OBJECT_FILTER'] = config.config_ldap_group_object_filter app.config['LDAP_GROUP_MEMBERS_FIELD'] = config.config_ldap_group_members_field - # app.config['LDAP_CUSTOM_OPTIONS'] = {'OPT_NETWORK_TIMEOUT': 10} _ldap.init_app(app) diff --git a/cps/shelf.py b/cps/shelf.py index 30768930..37cfc02a 100644 --- a/cps/shelf.py +++ b/cps/shelf.py @@ -27,8 +27,9 @@ from flask import Blueprint, request, flash, redirect, url_for from flask_babel import gettext as _ from flask_login import login_required, current_user from sqlalchemy.sql.expression import func +from sqlalchemy.exc import OperationalError, InvalidRequestError -from . import logger, ub, searched_ids, db, calibre_db +from . import logger, ub, searched_ids, calibre_db from .web import render_title_template @@ -91,8 +92,16 @@ def add_to_shelf(shelf_id, book_id): shelf.books.append(ub.BookShelf(shelf=shelf.id, book_id=book_id, order=maxOrder + 1)) shelf.last_modified = datetime.utcnow() - ub.session.merge(shelf) - ub.session.commit() + try: + ub.session.merge(shelf) + ub.session.commit() + except (OperationalError, InvalidRequestError): + ub.session.rollback() + flash(_(u"Settings DB is not Writeable"), category="error") + if "HTTP_REFERER" in request.environ: + return redirect(request.environ["HTTP_REFERER"]) + else: + return redirect(url_for('web.index')) if not xhr: flash(_(u"Book has been added to shelf: %(sname)s", sname=shelf.name), category="success") if "HTTP_REFERER" in request.environ: @@ -143,9 +152,13 @@ def search_to_shelf(shelf_id): maxOrder = maxOrder + 1 shelf.books.append(ub.BookShelf(shelf=shelf.id, book_id=book, order=maxOrder)) shelf.last_modified = datetime.utcnow() - ub.session.merge(shelf) - ub.session.commit() - flash(_(u"Books have been added to shelf: %(sname)s", sname=shelf.name), category="success") + try: + ub.session.merge(shelf) + ub.session.commit() + flash(_(u"Books have been added to shelf: %(sname)s", sname=shelf.name), category="success") + except (OperationalError, InvalidRequestError): + ub.session.rollback() + flash(_(u"Settings DB is not Writeable"), category="error") else: flash(_(u"Could not add books to shelf: %(sname)s", sname=shelf.name), category="error") return redirect(url_for('web.index')) @@ -180,10 +193,17 @@ def remove_from_shelf(shelf_id, book_id): return redirect(url_for('web.index')) return "Book already removed from shelf", 410 - ub.session.delete(book_shelf) - shelf.last_modified = datetime.utcnow() - ub.session.commit() - + try: + ub.session.delete(book_shelf) + shelf.last_modified = datetime.utcnow() + ub.session.commit() + except (OperationalError, InvalidRequestError): + ub.session.rollback() + flash(_(u"Settings DB is not Writeable"), category="error") + if "HTTP_REFERER" in request.environ: + return redirect(request.environ["HTTP_REFERER"]) + else: + return redirect(url_for('web.index')) if not xhr: flash(_(u"Book has been removed from shelf: %(sname)s", sname=shelf.name), category="success") if "HTTP_REFERER" in request.environ: @@ -235,7 +255,11 @@ def create_shelf(): ub.session.commit() flash(_(u"Shelf %(title)s created", title=to_save["title"]), category="success") return redirect(url_for('shelf.show_shelf', shelf_id=shelf.id)) + except (OperationalError, InvalidRequestError): + ub.session.rollback() + flash(_(u"Settings DB is not Writeable"), category="error") except Exception: + ub.session.rollback() flash(_(u"There was an error"), category="error") return render_title_template('shelf_edit.html', shelf=shelf, title=_(u"Create a Shelf"), page="shelfcreate") else: @@ -280,7 +304,11 @@ def edit_shelf(shelf_id): try: ub.session.commit() flash(_(u"Shelf %(title)s changed", title=to_save["title"]), category="success") + except (OperationalError, InvalidRequestError): + ub.session.rollback() + flash(_(u"Settings DB is not Writeable"), category="error") except Exception: + ub.session.rollback() flash(_(u"There was an error"), category="error") return render_title_template('shelf_edit.html', shelf=shelf, title=_(u"Edit a shelf"), page="shelfedit") else: @@ -298,11 +326,16 @@ def delete_shelf_helper(cur_shelf): log.info("successfully deleted %s", cur_shelf) + @shelf.route("/shelf/delete/") @login_required def delete_shelf(shelf_id): cur_shelf = ub.session.query(ub.Shelf).filter(ub.Shelf.id == shelf_id).first() - delete_shelf_helper(cur_shelf) + try: + delete_shelf_helper(cur_shelf) + except (OperationalError, InvalidRequestError): + ub.session.rollback() + flash(_(u"Settings DB is not Writeable"), category="error") return redirect(url_for('web.index')) @@ -327,8 +360,12 @@ def show_shelf(shelf_type, shelf_id): cur_book = calibre_db.get_book(book.book_id) if not cur_book: log.info('Not existing book %s in %s deleted', book.book_id, shelf) - ub.session.query(ub.BookShelf).filter(ub.BookShelf.book_id == book.book_id).delete() - ub.session.commit() + try: + ub.session.query(ub.BookShelf).filter(ub.BookShelf.book_id == book.book_id).delete() + ub.session.commit() + except (OperationalError, InvalidRequestError): + ub.session.rollback() + flash(_(u"Settings DB is not Writeable"), category="error") return render_title_template(page, entries=result, title=_(u"Shelf: '%(name)s'", name=shelf.name), shelf=shelf, page="shelf") else: @@ -348,7 +385,11 @@ def order_shelf(shelf_id): setattr(book, 'order', to_save[str(book.book_id)]) counter += 1 # if order diffrent from before -> shelf.last_modified = datetime.utcnow() - ub.session.commit() + try: + ub.session.commit() + except (OperationalError, InvalidRequestError): + ub.session.rollback() + flash(_(u"Settings DB is not Writeable"), category="error") shelf = ub.session.query(ub.Shelf).filter(ub.Shelf.id == shelf_id).first() result = list() diff --git a/cps/templates/generate_kobo_auth_url.html b/cps/templates/generate_kobo_auth_url.html index 4711dd51..fb62424c 100644 --- a/cps/templates/generate_kobo_auth_url.html +++ b/cps/templates/generate_kobo_auth_url.html @@ -5,7 +5,7 @@ {{_('Open the .kobo/Kobo eReader.conf file in a text editor and add (or edit):')}}

- {% if not warning %}'api_endpoint='{{kobo_auth_url}}{% else %}{{warning}}{% endif %} + {% if not warning %}api_endpoint={{kobo_auth_url}}{% else %}{{warning}}{% endif %}

diff --git a/cps/translations/cs/LC_MESSAGES/messages.mo b/cps/translations/cs/LC_MESSAGES/messages.mo index eed0c719..74bc33ef 100644 Binary files a/cps/translations/cs/LC_MESSAGES/messages.mo and b/cps/translations/cs/LC_MESSAGES/messages.mo differ diff --git a/cps/translations/cs/LC_MESSAGES/messages.po b/cps/translations/cs/LC_MESSAGES/messages.po index 9928ff2b..6ef881ed 100644 --- a/cps/translations/cs/LC_MESSAGES/messages.po +++ b/cps/translations/cs/LC_MESSAGES/messages.po @@ -6,8 +6,8 @@ msgid "" msgstr "" "Project-Id-Version: Calibre-Web\n" "Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n" -"POT-Creation-Date: 2020-06-07 06:47+0200\n" -"PO-Revision-Date: 2020-01-08 11:37+0000\n" +"POT-Creation-Date: 2020-06-28 09:31+0200\n" +"PO-Revision-Date: 2020-06-09 21:11+0100\n" "Last-Translator: Lukas Heroudek \n" "Language: cs_CZ\n" "Language-Team: \n" @@ -45,9 +45,9 @@ msgstr "Úspěšně obnovené připojení" msgid "Unknown command" msgstr "Neznámý příkaz" -#: cps/admin.py:116 cps/editbooks.py:563 cps/editbooks.py:573 -#: cps/editbooks.py:667 cps/editbooks.py:669 cps/editbooks.py:730 -#: cps/editbooks.py:743 cps/updater.py:509 cps/uploader.py:97 +#: cps/admin.py:116 cps/editbooks.py:564 cps/editbooks.py:576 +#: cps/editbooks.py:670 cps/editbooks.py:672 cps/editbooks.py:733 +#: cps/editbooks.py:749 cps/updater.py:509 cps/uploader.py:97 #: cps/uploader.py:107 msgid "Unknown" msgstr "Neznámý" @@ -60,7 +60,7 @@ msgstr "Stránka správce" msgid "UI Configuration" msgstr "Konfigurace uživatelského rozhraní" -#: cps/admin.py:189 cps/admin.py:706 +#: cps/admin.py:189 cps/admin.py:711 msgid "Calibre-Web configuration updated" msgstr "Konfigurace Calibre-Web aktualizována" @@ -76,213 +76,219 @@ msgstr "Povolit" #: cps/admin.py:510 msgid "client_secrets.json Is Not Configured For Web Application" -msgstr "" +msgstr "client_secrets.json není nakonfigurováno pro webové aplikace" #: cps/admin.py:549 msgid "Logfile Location is not Valid, Please Enter Correct Path" -msgstr "Umístění zápisového souboru není platné. Určete prosím platnou polohu." +msgstr "Umístění zápisového souboru není platné. Určete prosím platnou polohu" #: cps/admin.py:554 msgid "Access Logfile Location is not Valid, Please Enter Correct Path" -msgstr "Umístění zápisového souboru pro přístup není platné. Určete prosím platnou polohu." +msgstr "Umístění zápisového souboru pro přístup není platné. Určete prosím platnou polohu" #: cps/admin.py:580 msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" -msgstr "" +msgstr "Prosím zadejte LDAP poskytovatele, port, DN a Identifikátor objektu uživatele" #: cps/admin.py:593 #, python-format msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" -msgstr "" +msgstr "Filtr objektů skupiny LDAP musí mít jeden “%s” formátový identifikátor" #: cps/admin.py:596 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" -msgstr "" +msgstr "Filtr objektů skupiny LDAP má nesrovnatelnou závorku" #: cps/admin.py:600 #, python-format msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" -msgstr "" +msgstr "Filtr uživatelských objektů LDAP musí mít jeden “%s” formátový identifikátor" #: cps/admin.py:603 msgid "LDAP User Object Filter Has Unmatched Parenthesis" -msgstr "" +msgstr "Filtr uživatelských objektů LDAP má nesrovnatelnou závorku" #: cps/admin.py:607 msgid "LDAP Certificate Location is not Valid, Please Enter Correct Path" -msgstr "" +msgstr "Umístění certifikátu LDAP není platné, zadejte prosím správnou cestu" -#: cps/admin.py:627 +#: cps/admin.py:628 msgid "Keyfile Location is not Valid, Please Enter Correct Path" -msgstr "" +msgstr "Umístění souboru klíčů není platné, zadejte prosím správnou cestu" -#: cps/admin.py:631 +#: cps/admin.py:632 msgid "Certfile Location is not Valid, Please Enter Correct Path" +msgstr "Umístění certifikátu není platné, zadejte prosím správnou cestu" + +#: cps/admin.py:694 cps/admin.py:793 cps/admin.py:885 cps/admin.py:934 +#: cps/shelf.py:100 cps/shelf.py:161 cps/shelf.py:202 cps/shelf.py:260 +#: cps/shelf.py:309 cps/shelf.py:338 cps/shelf.py:368 cps/shelf.py:392 +msgid "Settings DB is not Writeable" msgstr "" -#: cps/admin.py:701 +#: cps/admin.py:706 msgid "DB Location is not Valid, Please Enter Correct Path" -msgstr "Poloha databáze není platná, opravte prosím polohu" +msgstr "Umístění databáze není platné, opravte prosím cestu" -#: cps/admin.py:703 +#: cps/admin.py:708 msgid "DB is not Writeable" -msgstr "Databáze není psatelná" +msgstr "Databáze není zapisovatelná" -#: cps/admin.py:736 +#: cps/admin.py:741 msgid "Basic Configuration" msgstr "Základní konfigurace" -#: cps/admin.py:751 cps/web.py:1337 +#: cps/admin.py:756 cps/web.py:1334 msgid "Please fill out all fields!" msgstr "Vyplňte všechna pole!" -#: cps/admin.py:754 cps/admin.py:766 cps/admin.py:772 cps/admin.py:892 +#: cps/admin.py:759 cps/admin.py:771 cps/admin.py:777 cps/admin.py:903 msgid "Add new user" msgstr "Přidat nového uživatele" -#: cps/admin.py:763 cps/web.py:1578 +#: cps/admin.py:768 cps/web.py:1575 msgid "E-mail is not from valid domain" msgstr "E-mail není z platné domény" -#: cps/admin.py:770 cps/admin.py:785 +#: cps/admin.py:775 cps/admin.py:790 msgid "Found an existing account for this e-mail address or nickname." msgstr "Byl nalezen existující účet pro tuto e-mailovou adresu nebo přezdívku." -#: cps/admin.py:781 +#: cps/admin.py:786 #, python-format msgid "User '%(user)s' created" msgstr "Uživatel '%(user)s' vytvořen" -#: cps/admin.py:794 +#: cps/admin.py:802 #, python-format msgid "User '%(nick)s' deleted" msgstr "Uživatel '%(nick)s' smazán" -#: cps/admin.py:797 +#: cps/admin.py:805 msgid "No admin user remaining, can't delete user" msgstr "Nezbývá žádný správce, nemůžete jej odstranit" -#: cps/admin.py:803 +#: cps/admin.py:811 msgid "No admin user remaining, can't remove admin role" -msgstr "" +msgstr "Nezbývá žádný správce, nelze odebrat roli správce" -#: cps/admin.py:839 cps/web.py:1621 +#: cps/admin.py:847 cps/web.py:1618 msgid "Found an existing account for this e-mail address." msgstr "Byl nalezen existující účet pro tuto e-mailovou adresu." -#: cps/admin.py:849 cps/admin.py:864 cps/admin.py:967 cps/web.py:1596 +#: cps/admin.py:857 cps/admin.py:872 cps/admin.py:983 cps/web.py:1593 #, python-format msgid "Edit User %(nick)s" msgstr "Upravit uživatele %(nick)s" -#: cps/admin.py:855 cps/web.py:1588 +#: cps/admin.py:863 cps/web.py:1585 msgid "This username is already taken" -msgstr "Toto uživatelské jméno je již použito" +msgstr "Zadané uživatelské jméno je již použito" -#: cps/admin.py:871 +#: cps/admin.py:879 #, python-format msgid "User '%(nick)s' updated" msgstr "Uživatel '%(nick)s' aktualizován" -#: cps/admin.py:874 +#: cps/admin.py:882 msgid "An unknown error occured." msgstr "Došlo k neznámé chybě." -#: cps/admin.py:901 cps/templates/admin.html:71 +#: cps/admin.py:912 cps/templates/admin.html:71 msgid "Edit E-mail Server Settings" msgstr "Změnit SMTP nastavení" -#: cps/admin.py:925 +#: cps/admin.py:941 #, python-format msgid "Test e-mail successfully send to %(kindlemail)s" msgstr "Zkušební e-mail úspěšně odeslán na %(kindlemail)s" -#: cps/admin.py:928 +#: cps/admin.py:944 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "Při odesílání zkušebního e-mailu došlo k chybě: %(res)s" -#: cps/admin.py:930 +#: cps/admin.py:946 msgid "Please configure your e-mail address first..." msgstr "Prvně nastavte svou e-mailovou adresu..." -#: cps/admin.py:932 +#: cps/admin.py:948 msgid "E-mail server settings updated" msgstr "Nastavení e-mailového serveru aktualizováno" -#: cps/admin.py:943 +#: cps/admin.py:959 msgid "User not found" msgstr "Uživatel nenalezen" -#: cps/admin.py:978 +#: cps/admin.py:994 #, python-format msgid "Password for user %(user)s reset" msgstr "Heslo pro uživatele %(user)s resetováno" -#: cps/admin.py:981 cps/web.py:1361 cps/web.py:1425 +#: cps/admin.py:997 cps/web.py:1358 cps/web.py:1422 msgid "An unknown error occurred. Please try again later." msgstr "Neznámá chyba. Opakujte prosím později." -#: cps/admin.py:984 cps/web.py:1299 +#: cps/admin.py:1000 cps/web.py:1296 msgid "Please configure the SMTP mail settings first..." msgstr "Nejprve nakonfigurujte nastavení pošty SMTP..." -#: cps/admin.py:996 +#: cps/admin.py:1012 msgid "Logfile viewer" msgstr "Prohlížeč log souborů" -#: cps/admin.py:1035 +#: cps/admin.py:1051 msgid "Requesting update package" msgstr "Požadování balíčku aktualizace" -#: cps/admin.py:1036 +#: cps/admin.py:1052 msgid "Downloading update package" msgstr "Stahování balíčku aktualizace" -#: cps/admin.py:1037 +#: cps/admin.py:1053 msgid "Unzipping update package" msgstr "Rozbalování balíčku aktualizace" -#: cps/admin.py:1038 +#: cps/admin.py:1054 msgid "Replacing files" msgstr "Nahrazování souborů" -#: cps/admin.py:1039 +#: cps/admin.py:1055 msgid "Database connections are closed" msgstr "Databázová připojení jsou uzavřena" -#: cps/admin.py:1040 +#: cps/admin.py:1056 msgid "Stopping server" msgstr "Zastavuji server" -#: cps/admin.py:1041 +#: cps/admin.py:1057 msgid "Update finished, please press okay and reload page" msgstr "Aktualizace dokončena, klepněte na tlačítko OK a znovu načtěte stránku" -#: cps/admin.py:1042 cps/admin.py:1043 cps/admin.py:1044 cps/admin.py:1045 -#: cps/admin.py:1046 +#: cps/admin.py:1058 cps/admin.py:1059 cps/admin.py:1060 cps/admin.py:1061 +#: cps/admin.py:1062 msgid "Update failed:" msgstr "Aktualizace selhala:" -#: cps/admin.py:1042 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522 +#: cps/admin.py:1058 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522 msgid "HTTP Error" msgstr "HTTP chyba" -#: cps/admin.py:1043 cps/updater.py:321 cps/updater.py:524 +#: cps/admin.py:1059 cps/updater.py:321 cps/updater.py:524 msgid "Connection error" msgstr "Chyba připojení" -#: cps/admin.py:1044 cps/updater.py:323 cps/updater.py:526 +#: cps/admin.py:1060 cps/updater.py:323 cps/updater.py:526 msgid "Timeout while establishing connection" msgstr "Vypršel časový limit při navazování spojení" -#: cps/admin.py:1045 cps/updater.py:325 cps/updater.py:528 +#: cps/admin.py:1061 cps/updater.py:325 cps/updater.py:528 msgid "General error" msgstr "Všeobecná chyba" -#: cps/admin.py:1046 +#: cps/admin.py:1062 msgid "Update File Could Not be Saved in Temp Dir" -msgstr "" +msgstr "Aktualizační soubor nemohl být uložen do Temp Dir" #: cps/converter.py:32 msgid "not configured" @@ -294,14 +300,14 @@ msgstr "Chybí povolení k exekuci" #: cps/editbooks.py:242 msgid "Book Format Successfully Deleted" -msgstr "Formát knihy úspěšně vymazán" +msgstr "Formát knihy úspěšně smazán" #: cps/editbooks.py:245 msgid "Book Successfully Deleted" -msgstr "Kniha úspěšně vymazána" +msgstr "Kniha úspěšně smazána" -#: cps/editbooks.py:254 cps/editbooks.py:548 cps/web.py:1644 cps/web.py:1685 -#: cps/web.py:1747 +#: cps/editbooks.py:254 cps/editbooks.py:549 cps/web.py:1641 cps/web.py:1682 +#: cps/web.py:1744 msgid "Error opening eBook. File does not exist or file is not accessible" msgstr "Chyba otevírání eknihy. Soubor neexistuje nebo není přístupný" @@ -309,82 +315,82 @@ msgstr "Chyba otevírání eknihy. Soubor neexistuje nebo není přístupný" msgid "edit metadata" msgstr "upravit metadata" -#: cps/editbooks.py:361 +#: cps/editbooks.py:360 #, python-format msgid "%(langname)s is not a valid language" msgstr "%(langname)s není platným jazykem" -#: cps/editbooks.py:467 cps/editbooks.py:712 +#: cps/editbooks.py:468 cps/editbooks.py:715 #, python-format msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgstr "Soubor s příponou '%(ext)s' nelze odeslat na tento server" -#: cps/editbooks.py:471 cps/editbooks.py:716 +#: cps/editbooks.py:472 cps/editbooks.py:719 msgid "File to be uploaded must have an extension" msgstr "Soubor, který má být odeslán musí mít příponu" -#: cps/editbooks.py:483 cps/editbooks.py:773 +#: cps/editbooks.py:484 cps/editbooks.py:779 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "Nepodařilo se vytvořit cestu %(path)s (oprávnění odepřeno)." -#: cps/editbooks.py:488 +#: cps/editbooks.py:489 #, python-format msgid "Failed to store file %(file)s." msgstr "Uložení souboru %(file)s se nezdařilo." -#: cps/editbooks.py:506 cps/editbooks.py:864 +#: cps/editbooks.py:507 cps/editbooks.py:870 #, python-format msgid "Database error: %(error)s." -msgstr "Error databáze: %(error)s. " +msgstr "Chyba databáze: %(error)s." -#: cps/editbooks.py:510 +#: cps/editbooks.py:511 #, python-format msgid "File format %(ext)s added to %(book)s" msgstr "Formát souboru %(ext)s přidán do %(book)s" -#: cps/editbooks.py:653 +#: cps/editbooks.py:656 msgid "Metadata successfully updated" msgstr "Metadata úspěšně aktualizována" -#: cps/editbooks.py:662 +#: cps/editbooks.py:665 msgid "Error editing book, please check logfile for details" msgstr "Chyba při úpravách knihy, zkontrolujte prosím log pro podrobnosti" -#: cps/editbooks.py:724 +#: cps/editbooks.py:727 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "Soubor %(filename)s nemohl být uložen do dočasného adresáře" -#: cps/editbooks.py:734 +#: cps/editbooks.py:737 msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgstr "Nahraná kniha pravděpodobně existuje v knihovně, zvažte prosím změnu před nahráním nové: " -#: cps/editbooks.py:780 +#: cps/editbooks.py:786 #, python-format msgid "Failed to Move File %(file)s: %(error)s" -msgstr "" +msgstr "Nepodařilo se přesunout soubor %(file)s: %(error)s" -#: cps/editbooks.py:836 +#: cps/editbooks.py:842 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" -msgstr "" +msgstr "Nepodařilo se přesunout soubor obalu %(file)s: %(error)s" -#: cps/editbooks.py:850 +#: cps/editbooks.py:856 #, python-format msgid "File %(file)s uploaded" msgstr "Soubor %(file)s nahrán" -#: cps/editbooks.py:876 +#: cps/editbooks.py:882 msgid "Source or destination format for conversion missing" msgstr "Chybí zdrojový nebo cílový formát pro převod" -#: cps/editbooks.py:884 +#: cps/editbooks.py:890 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "Kniha byla úspěšně zařazena do fronty pro převod do %(book_format)s" -#: cps/editbooks.py:888 +#: cps/editbooks.py:894 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "Při převodu této knihy došlo k chybě: %(res)s" @@ -461,17 +467,17 @@ msgstr "Požadovaný soubor nelze přečíst. Možná nesprávná oprávnění?" #: cps/helper.py:300 #, python-format msgid "Deleting book %(id)s failed, path has subfolders: %(path)s" -msgstr "" +msgstr "Mazání knihy %(id)s selhalo, cesta má podsložky” %(path)s" #: cps/helper.py:310 #, python-format msgid "Deleting book %(id)s failed: %(message)s" -msgstr "" +msgstr "Mazání knihy selhalo %(id)s failed: %(message)s" #: cps/helper.py:320 #, python-format msgid "Deleting book %(id)s, book path not valid: %(path)s" -msgstr "" +msgstr "Mazání knihy %(id)s, cesta ke knize není platná %(path)s" #: cps/helper.py:355 #, python-format @@ -498,81 +504,81 @@ msgstr "Soubor %(file)s nenalezen na Google Drive" msgid "Book path %(path)s not found on Google Drive" msgstr "Cesta ke knize %(path)s nebyla nalezena na Google Drive" -#: cps/helper.py:542 +#: cps/helper.py:550 msgid "Error Downloading Cover" -msgstr "" +msgstr "Chyba stahování obalu" -#: cps/helper.py:545 +#: cps/helper.py:553 msgid "Cover Format Error" -msgstr "" +msgstr "Chyba formátu obalu" -#: cps/helper.py:561 +#: cps/helper.py:569 msgid "Failed to create path for cover" -msgstr "" +msgstr "Vytvoření cesty obalu selhalo" -#: cps/helper.py:566 +#: cps/helper.py:574 msgid "Cover-file is not a valid image file, or could not be stored" -msgstr "" +msgstr "Soubor obalu není platný, nebo nelze uložit" -#: cps/helper.py:577 +#: cps/helper.py:585 msgid "Only jpg/jpeg/png/webp files are supported as coverfile" -msgstr "" +msgstr "Pouze jpg/jpeg/png/webp jsou podporované soubory pro obal" -#: cps/helper.py:591 +#: cps/helper.py:599 msgid "Only jpg/jpeg files are supported as coverfile" -msgstr "" +msgstr "Pouze jpg/jpeg jsou podporované soubory pro obal" -#: cps/helper.py:640 +#: cps/helper.py:648 msgid "Unrar binary file not found" -msgstr "" +msgstr "Unrar binární soubor nenalezen" -#: cps/helper.py:654 +#: cps/helper.py:662 msgid "Error excecuting UnRar" -msgstr "" +msgstr "Chyba provádění UnRar" -#: cps/helper.py:710 +#: cps/helper.py:718 msgid "Waiting" msgstr "Čekám" -#: cps/helper.py:712 +#: cps/helper.py:720 msgid "Failed" msgstr "Selhalo" -#: cps/helper.py:714 +#: cps/helper.py:722 msgid "Started" msgstr "Spuštěno" -#: cps/helper.py:716 +#: cps/helper.py:724 msgid "Finished" msgstr "Dokončeno" -#: cps/helper.py:718 +#: cps/helper.py:726 msgid "Unknown Status" msgstr "Neznámý stav" -#: cps/helper.py:723 +#: cps/helper.py:731 msgid "E-mail: " msgstr "E-mail: " -#: cps/helper.py:725 cps/helper.py:729 +#: cps/helper.py:733 cps/helper.py:737 msgid "Convert: " msgstr "Převést:" -#: cps/helper.py:727 +#: cps/helper.py:735 msgid "Upload: " msgstr "Nahrát:" -#: cps/helper.py:731 +#: cps/helper.py:739 msgid "Unknown Task: " msgstr "Neznámá úloha:" #: cps/kobo_auth.py:130 msgid "PLease access calibre-web from non localhost to get valid api_endpoint for kobo device" -msgstr "" +msgstr "Pro získání platného api_endpoint pro zařízení Kobo, přístupte na calibre-web bez localhost" #: cps/kobo_auth.py:133 cps/kobo_auth.py:153 msgid "Kobo Setup" -msgstr "" +msgstr "Kobo nastavení" #: cps/oauth_bb.py:73 #, python-format @@ -581,271 +587,271 @@ msgstr "Registrovat s %(provider)s" #: cps/oauth_bb.py:154 msgid "Failed to log in with GitHub." -msgstr "Přihlášení pomocí GitHub selhalo" +msgstr "Přihlášení pomocí GitHub selhalo." #: cps/oauth_bb.py:159 msgid "Failed to fetch user info from GitHub." -msgstr "Nepodařilo se načíst informace o uživateli z GitHub" +msgstr "Nepodařilo se načíst informace o uživateli z GitHub." #: cps/oauth_bb.py:170 msgid "Failed to log in with Google." -msgstr "Přihlášení pomocí Google selhalo" +msgstr "Přihlášení pomocí Google selhalo." #: cps/oauth_bb.py:175 msgid "Failed to fetch user info from Google." -msgstr "Nepodařilo se načíst informace o uživateli z Google" +msgstr "Nepodařilo se načíst informace o uživateli z Google." -#: cps/oauth_bb.py:225 cps/web.py:1397 cps/web.py:1537 +#: cps/oauth_bb.py:225 cps/web.py:1394 cps/web.py:1534 #, python-format msgid "you are now logged in as: '%(nickname)s'" -msgstr "nyní jste přihlášeni jako: '%(nickname)s'" +msgstr "nyní jste přihlášen jako: '%(nickname)s'" #: cps/oauth_bb.py:235 #, python-format msgid "Link to %(oauth)s Succeeded" -msgstr "" +msgstr "Připojení k %(oauth)s úspěšné" #: cps/oauth_bb.py:241 msgid "Login failed, No User Linked With OAuth Account" -msgstr "" +msgstr "Přihlášení selhalo, žádný uživatel s OAuth účtem" #: cps/oauth_bb.py:283 #, python-format msgid "Unlink to %(oauth)s Succeeded" -msgstr "" +msgstr "Odpojení od %(oauth)s úspěšné" #: cps/oauth_bb.py:287 #, python-format msgid "Unlink to %(oauth)s Failed" -msgstr "" +msgstr "Odpojení od %(oauth)s selhalo" #: cps/oauth_bb.py:290 #, python-format msgid "Not Linked to %(oauth)s." -msgstr "" +msgstr "Nepřipojeno k %(oauth)s." #: cps/oauth_bb.py:318 msgid "GitHub Oauth error, please retry later." -msgstr "GitHub Oauth chyba, prosím opakujte později" +msgstr "GitHub Oauth chyba, prosím opakujte později." #: cps/oauth_bb.py:337 msgid "Google Oauth error, please retry later." -msgstr "Google Oauth chyba, prosím opakujte později" +msgstr "Google Oauth chyba, prosím opakujte později." -#: cps/shelf.py:66 cps/shelf.py:111 +#: cps/shelf.py:67 cps/shelf.py:120 msgid "Invalid shelf specified" msgstr "Zadána neplatná police" -#: cps/shelf.py:72 +#: cps/shelf.py:73 #, python-format msgid "Sorry you are not allowed to add a book to the the shelf: %(shelfname)s" msgstr "Lituji, nejste oprávněni přidat knihu do police: %(shelfname)s" -#: cps/shelf.py:82 +#: cps/shelf.py:83 #, python-format msgid "Book is already part of the shelf: %(shelfname)s" msgstr "Kniha je již součástí police: %(shelfname)s" -#: cps/shelf.py:97 +#: cps/shelf.py:106 #, python-format msgid "Book has been added to shelf: %(sname)s" msgstr "Kniha byla přidána do police: %(sname)s" -#: cps/shelf.py:115 +#: cps/shelf.py:124 #, python-format msgid "You are not allowed to add a book to the the shelf: %(name)s" msgstr "Nejste oprávněni přidat knihu do police: %(name)s" -#: cps/shelf.py:133 +#: cps/shelf.py:142 #, python-format msgid "Books are already part of the shelf: %(name)s" msgstr "Knihy jsou již součástí police: %(name)s" -#: cps/shelf.py:148 +#: cps/shelf.py:158 #, python-format msgid "Books have been added to shelf: %(sname)s" msgstr "Knihy byly přidány do police: %(sname)s" -#: cps/shelf.py:150 +#: cps/shelf.py:163 #, python-format msgid "Could not add books to shelf: %(sname)s" msgstr "Nelze přidat knihy do police: %(sname)s" -#: cps/shelf.py:188 +#: cps/shelf.py:208 #, python-format msgid "Book has been removed from shelf: %(sname)s" msgstr "Kniha byla odebrána z police: %(sname)s" -#: cps/shelf.py:196 +#: cps/shelf.py:216 #, python-format msgid "Sorry you are not allowed to remove a book from this shelf: %(sname)s" msgstr "Lituji, nejste oprávněni odebrat knihu z této police: %(sname)s" -#: cps/shelf.py:220 cps/shelf.py:260 +#: cps/shelf.py:240 cps/shelf.py:284 #, python-format msgid "A public shelf with the name '%(title)s' already exists." -msgstr "" +msgstr "Veřejná police s názvem '%(title)s' již existuje." -#: cps/shelf.py:229 cps/shelf.py:270 +#: cps/shelf.py:249 cps/shelf.py:294 #, python-format msgid "A private shelf with the name '%(title)s' already exists." -msgstr "" +msgstr "Osobní police s názvem ‘%(title)s’ již existuje." -#: cps/shelf.py:236 +#: cps/shelf.py:256 #, python-format msgid "Shelf %(title)s created" msgstr "Police %(title)s vytvořena" -#: cps/shelf.py:239 cps/shelf.py:284 +#: cps/shelf.py:263 cps/shelf.py:312 msgid "There was an error" msgstr "Došlo k chybě" -#: cps/shelf.py:240 cps/shelf.py:242 cps/templates/layout.html:144 +#: cps/shelf.py:264 cps/shelf.py:266 cps/templates/layout.html:144 msgid "Create a Shelf" -msgstr "vytvořit polici" +msgstr "Vytvořit polici" -#: cps/shelf.py:282 +#: cps/shelf.py:306 #, python-format msgid "Shelf %(title)s changed" msgstr "Police %(title)s změněna" -#: cps/shelf.py:285 cps/shelf.py:287 +#: cps/shelf.py:313 cps/shelf.py:315 msgid "Edit a shelf" msgstr "Upravit polici" -#: cps/shelf.py:332 +#: cps/shelf.py:369 #, python-format msgid "Shelf: '%(name)s'" msgstr "Police: '%(name)s'" -#: cps/shelf.py:335 +#: cps/shelf.py:372 msgid "Error opening shelf. Shelf does not exist or is not accessible" msgstr "Chyba otevírání police. Police neexistuje nebo není přístupná" -#: cps/shelf.py:368 +#: cps/shelf.py:409 msgid "Hidden Book" -msgstr "" +msgstr "Skrytá kniha" -#: cps/shelf.py:373 +#: cps/shelf.py:414 #, python-format msgid "Change order of Shelf: '%(name)s'" msgstr "Změnit pořadí Police: '%(name)s'" -#: cps/ub.py:64 +#: cps/ub.py:65 msgid "Recently Added" msgstr "Nedávno přidáné" -#: cps/ub.py:66 +#: cps/ub.py:67 msgid "Show recent books" msgstr "Zobrazit nedávné knihy" -#: cps/templates/index.xml:17 cps/ub.py:67 +#: cps/templates/index.xml:17 cps/ub.py:68 msgid "Hot Books" msgstr "Žhavé knihy" -#: cps/ub.py:69 +#: cps/ub.py:70 msgid "Show Hot Books" -msgstr "" +msgstr "Zobrazit žhavé knihy" -#: cps/templates/index.xml:24 cps/ub.py:71 cps/web.py:655 +#: cps/templates/index.xml:24 cps/ub.py:72 cps/web.py:652 msgid "Top Rated Books" -msgstr "" +msgstr "Nejlépe hodnocené knihy" -#: cps/ub.py:73 +#: cps/ub.py:74 msgid "Show Top Rated Books" -msgstr "" +msgstr "Zobrazit nejlépe hodnocené knihy" -#: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:74 -#: cps/web.py:1222 +#: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:75 +#: cps/web.py:1219 msgid "Read Books" msgstr "Přečtené knihy" -#: cps/ub.py:76 +#: cps/ub.py:77 msgid "Show read and unread" msgstr "Zobrazit prečtené a nepřečtené" -#: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:78 -#: cps/web.py:1225 +#: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:79 +#: cps/web.py:1222 msgid "Unread Books" msgstr "Nepřečtené knihy" -#: cps/ub.py:80 +#: cps/ub.py:81 msgid "Show unread" msgstr "Zobrazit nepřečtené" -#: cps/ub.py:81 +#: cps/ub.py:82 msgid "Discover" msgstr "Objevte" -#: cps/ub.py:83 +#: cps/ub.py:84 msgid "Show random books" msgstr "Zobrazit náhodné knihy" -#: cps/templates/index.xml:75 cps/ub.py:84 cps/web.py:970 +#: cps/templates/index.xml:75 cps/ub.py:85 cps/web.py:967 msgid "Categories" msgstr "Kategorie" -#: cps/ub.py:86 +#: cps/ub.py:87 msgid "Show category selection" msgstr "Zobrazit výběr kategorie" #: cps/templates/book_edit.html:84 cps/templates/index.xml:82 -#: cps/templates/search_form.html:53 cps/ub.py:87 cps/web.py:886 cps/web.py:896 +#: cps/templates/search_form.html:53 cps/ub.py:88 cps/web.py:883 cps/web.py:893 msgid "Series" msgstr "Série" -#: cps/ub.py:89 +#: cps/ub.py:90 msgid "Show series selection" -msgstr "Zobrazit výběr sérií" +msgstr "Zobrazit výběr sérií" -#: cps/templates/index.xml:61 cps/ub.py:90 +#: cps/templates/index.xml:61 cps/ub.py:91 msgid "Authors" msgstr "Autoři" -#: cps/ub.py:92 +#: cps/ub.py:93 msgid "Show author selection" msgstr "Zobrazit výběr autora" -#: cps/templates/index.xml:68 cps/ub.py:94 cps/web.py:869 +#: cps/templates/index.xml:68 cps/ub.py:95 cps/web.py:866 msgid "Publishers" msgstr "Vydavatelé" -#: cps/ub.py:96 +#: cps/ub.py:97 msgid "Show publisher selection" msgstr "Zobrazit výběr vydavatele" -#: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:97 -#: cps/web.py:953 +#: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:98 +#: cps/web.py:950 msgid "Languages" msgstr "Jazyky" -#: cps/ub.py:100 +#: cps/ub.py:101 msgid "Show language selection" msgstr "Zobrazit výběr jazyka" -#: cps/templates/index.xml:96 cps/ub.py:101 +#: cps/templates/index.xml:96 cps/ub.py:102 msgid "Ratings" msgstr "Hodnocení" -#: cps/ub.py:103 +#: cps/ub.py:104 msgid "Show ratings selection" msgstr "Zobrazit výběr hodnocení" -#: cps/templates/index.xml:104 cps/ub.py:104 +#: cps/templates/index.xml:104 cps/ub.py:105 msgid "File formats" msgstr "Formáty souborů" -#: cps/ub.py:106 +#: cps/ub.py:107 msgid "Show file formats selection" msgstr "Zobrazit výběr formátů" -#: cps/ub.py:108 cps/web.py:1249 +#: cps/ub.py:109 cps/web.py:1246 msgid "Archived Books" -msgstr "" +msgstr "Archivované knihy" -#: cps/ub.py:110 +#: cps/ub.py:111 msgid "Show archived books" -msgstr "" +msgstr "Zobrazit archivované knihy" #: cps/updater.py:294 cps/updater.py:305 cps/updater.py:406 cps/updater.py:420 msgid "Unexpected data while reading update information" @@ -876,227 +882,227 @@ msgstr "Nová aktualizace k dispozici. Klepnutím na tlačítko níže aktualizu msgid "Click on the button below to update to the latest stable version." msgstr "Klepnutím na tlačítko níže aktualizujte na nejnovější stabilní verzi." -#: cps/web.py:322 +#: cps/web.py:319 #, python-format msgid "Error: %(ldaperror)s" -msgstr "" +msgstr "Chyba: %(ldaperror)s" -#: cps/web.py:326 +#: cps/web.py:323 msgid "Error: No user returned in response of LDAP server" -msgstr "" +msgstr "Chyba: Žádná reakce od uživatele LDAP serveru" -#: cps/web.py:374 +#: cps/web.py:371 msgid "Failed to Create at Least One LDAP User" -msgstr "" +msgstr "Nepodařilo se vytvořit nejméně jednoho uživatele LDAP" -#: cps/web.py:377 +#: cps/web.py:374 msgid "At Least One LDAP User Not Found in Database" -msgstr "" +msgstr "Nejméně jeden uživatel LDAP nenalezen v databázi" -#: cps/web.py:379 +#: cps/web.py:376 msgid "User Successfully Imported" -msgstr "" +msgstr "Uživatel úspěšně importován" -#: cps/web.py:625 +#: cps/web.py:622 msgid "Recently Added Books" msgstr "Nedávno přidané knihy" -#: cps/templates/index.html:5 cps/web.py:663 +#: cps/templates/index.html:5 cps/web.py:660 msgid "Discover (Random Books)" msgstr "Objevte (Náhodné knihy)" -#: cps/web.py:691 +#: cps/web.py:688 msgid "Books" msgstr "Knihy" -#: cps/web.py:718 +#: cps/web.py:715 msgid "Hot Books (Most Downloaded)" -msgstr "" +msgstr "Žhavé knihy (Nejstahovanější)" -#: cps/web.py:731 +#: cps/web.py:728 msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible" -msgstr "" +msgstr "Jejda! Vybraná kniha není k dispozici. Soubor neexistuje nebo není přístupný" -#: cps/web.py:745 +#: cps/web.py:742 #, python-format msgid "Author: %(name)s" msgstr "Autoři: %(name)s" -#: cps/web.py:759 +#: cps/web.py:756 #, python-format msgid "Publisher: %(name)s" msgstr "Vydavatel: %(name)s" -#: cps/web.py:772 +#: cps/web.py:769 #, python-format msgid "Series: %(serie)s" msgstr "Série: %(serie)s" -#: cps/web.py:785 +#: cps/web.py:782 #, python-format msgid "Rating: %(rating)s stars" msgstr "Hodnocení: %(rating)s stars" -#: cps/web.py:798 +#: cps/web.py:795 #, python-format msgid "File format: %(format)s" msgstr "Soubor formátů: %(format)s" -#: cps/web.py:812 +#: cps/web.py:809 #, python-format msgid "Category: %(name)s" msgstr "Kategorie: %(name)s" -#: cps/web.py:831 +#: cps/web.py:828 #, python-format msgid "Language: %(name)s" msgstr "Jazyky: %(name)s" -#: cps/web.py:910 +#: cps/web.py:907 msgid "Ratings list" msgstr "Seznam hodnocení" -#: cps/web.py:925 +#: cps/web.py:922 msgid "File formats list" msgstr "Seznam formátů" -#: cps/templates/layout.html:74 cps/templates/tasks.html:7 cps/web.py:984 +#: cps/templates/layout.html:74 cps/templates/tasks.html:7 cps/web.py:981 msgid "Tasks" msgstr "Úlohy" #: cps/templates/book_edit.html:235 cps/templates/feed.xml:33 #: cps/templates/layout.html:45 cps/templates/layout.html:48 -#: cps/templates/search_form.html:174 cps/web.py:1010 cps/web.py:1015 +#: cps/templates/search_form.html:174 cps/web.py:1007 cps/web.py:1012 msgid "Search" msgstr "Hledat" -#: cps/web.py:1066 +#: cps/web.py:1063 msgid "Published after " msgstr "Vydáno po " -#: cps/web.py:1073 +#: cps/web.py:1070 msgid "Published before " msgstr "Vydáno před " -#: cps/web.py:1087 +#: cps/web.py:1084 #, python-format msgid "Rating <= %(rating)s" msgstr "Hodnocení <= %(rating)s" -#: cps/web.py:1089 +#: cps/web.py:1086 #, python-format msgid "Rating >= %(rating)s" msgstr "Hodnocení >= %(rating)s" -#: cps/web.py:1158 cps/web.py:1183 +#: cps/web.py:1155 cps/web.py:1180 msgid "search" msgstr "hledat" -#: cps/web.py:1213 +#: cps/web.py:1210 #, python-format msgid "Custom Column No.%(column)d is not existing in calibre database" -msgstr "" +msgstr "Vlastní sloupec %(column)d neexistuje v databázi" -#: cps/web.py:1304 +#: cps/web.py:1301 #, python-format msgid "Book successfully queued for sending to %(kindlemail)s" msgstr "Kniha byla úspěšně zařazena do fronty pro odeslání na %(kindlemail)s" -#: cps/web.py:1308 +#: cps/web.py:1305 #, python-format msgid "Oops! There was an error sending this book: %(res)s" msgstr "Při odesílání této knihy došlo k chybě: %(res)s" -#: cps/web.py:1310 +#: cps/web.py:1307 msgid "Please update your profile with a valid Send to Kindle E-mail Address." msgstr "Nejprve nakonfigurujte vaši kindle e-mailovou adresu.." -#: cps/web.py:1327 +#: cps/web.py:1324 msgid "E-Mail server is not configured, please contact your administrator!" msgstr "E-mailový server není nakonfigurován, kontaktujte svého správce!" -#: cps/web.py:1328 cps/web.py:1338 cps/web.py:1362 cps/web.py:1366 -#: cps/web.py:1371 cps/web.py:1375 +#: cps/web.py:1325 cps/web.py:1335 cps/web.py:1359 cps/web.py:1363 +#: cps/web.py:1368 cps/web.py:1372 msgid "register" msgstr "registrovat" -#: cps/web.py:1364 +#: cps/web.py:1361 msgid "Your e-mail is not allowed to register" msgstr "Váš e-mail nemá povolení k registraci" -#: cps/web.py:1367 +#: cps/web.py:1364 msgid "Confirmation e-mail was send to your e-mail account." msgstr "Potvrzovací e-mail byl odeslán na váš účet." -#: cps/web.py:1370 +#: cps/web.py:1367 msgid "This username or e-mail address is already in use." msgstr "Toto uživatelské jméno nebo e-mailová adresa jsou již používány." -#: cps/web.py:1387 +#: cps/web.py:1384 msgid "Cannot activate LDAP authentication" msgstr "Nelze aktivovat ověření LDAP" -#: cps/web.py:1404 +#: cps/web.py:1401 #, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" -msgstr "" +msgstr "Záložní přihlášení jako: ‘%(nickname)s’, server LDAP není dosažitelný nebo neznámý uživatel" -#: cps/web.py:1410 +#: cps/web.py:1407 #, python-format msgid "Could not login: %(message)s" -msgstr "" +msgstr "Nelze se přihlásit: %(message)s" -#: cps/web.py:1414 cps/web.py:1438 +#: cps/web.py:1411 cps/web.py:1435 msgid "Wrong Username or Password" msgstr "Špatné uživatelské jméno nebo heslo" -#: cps/web.py:1421 +#: cps/web.py:1418 msgid "New Password was send to your email address" -msgstr "Nové heslo bylo zasláno na váši emailovou adresu" +msgstr "Nové heslo bylo zasláno na vaši emailovou adresu" -#: cps/web.py:1427 +#: cps/web.py:1424 msgid "Please enter valid username to reset password" msgstr "Zadejte platné uživatelské jméno pro obnovení hesla" -#: cps/web.py:1433 +#: cps/web.py:1430 #, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "Nyní jste přihlášeni jako: '%(nickname)s'" -#: cps/web.py:1442 cps/web.py:1469 +#: cps/web.py:1439 cps/web.py:1466 msgid "login" msgstr "přihlásit se" -#: cps/web.py:1481 cps/web.py:1515 +#: cps/web.py:1478 cps/web.py:1512 msgid "Token not found" msgstr "Token nenalezen" -#: cps/web.py:1490 cps/web.py:1523 +#: cps/web.py:1487 cps/web.py:1520 msgid "Token has expired" msgstr "Token vypršel" -#: cps/web.py:1499 +#: cps/web.py:1496 msgid "Success! Please return to your device" msgstr "Úspěch! Vraťte se prosím do zařízení" -#: cps/web.py:1580 cps/web.py:1625 cps/web.py:1631 +#: cps/web.py:1577 cps/web.py:1622 cps/web.py:1628 #, python-format msgid "%(name)s's profile" msgstr "%(name)s profil" -#: cps/web.py:1627 +#: cps/web.py:1624 msgid "Profile updated" msgstr "Profil aktualizován" -#: cps/web.py:1656 cps/web.py:1659 cps/web.py:1662 cps/web.py:1669 -#: cps/web.py:1674 +#: cps/web.py:1653 cps/web.py:1656 cps/web.py:1659 cps/web.py:1666 +#: cps/web.py:1671 msgid "Read a Book" msgstr "Číst knihu" #: cps/worker.py:313 #, python-format msgid "Calibre ebook-convert %(tool)s not found" -msgstr "" +msgstr "Calibre převaděč %(tool)s nenalezen" #: cps/worker.py:373 #, python-format @@ -1106,16 +1112,16 @@ msgstr "Převaděč eknih selhal: %(error)s" #: cps/worker.py:406 #, python-format msgid "Kepubify-converter failed: %(error)s" -msgstr "" +msgstr "Kepubify-převaděč selhal: %(error)s" #: cps/worker.py:430 #, python-format msgid "Converted file not found or more than one file in folder %(folder)s" -msgstr "" +msgstr "Převedený soubor nebyl nalezen nebo více než jeden soubor ve složce %(folder)s" #: cps/templates/admin.html:9 msgid "Users" -msgstr "Seznam uživatelů" +msgstr "Uživatelé" #: cps/templates/admin.html:12 cps/templates/login.html:8 #: cps/templates/login.html:9 cps/templates/register.html:8 @@ -1130,11 +1136,11 @@ msgstr "E-mail" #: cps/templates/admin.html:14 cps/templates/user_edit.html:27 msgid "Send to Kindle E-mail Address" -msgstr "Kindle" +msgstr "Poslat do Kindle e-mailová adresa" #: cps/templates/admin.html:15 msgid "Downloads" -msgstr "Staženo" +msgstr "Stáhnutí" #: cps/templates/admin.html:16 cps/templates/layout.html:77 msgid "Admin" @@ -1157,7 +1163,7 @@ msgstr "Stahovat" #: cps/templates/admin.html:20 msgid "View Books" -msgstr "" +msgstr "Prohlížení knih" #: cps/templates/admin.html:21 msgid "Edit" @@ -1171,15 +1177,15 @@ msgstr "Smazat" #: cps/templates/admin.html:23 msgid "Public Shelf" -msgstr "" +msgstr "Veřejná police" #: cps/templates/admin.html:44 msgid "Add New User" -msgstr "" +msgstr "Přidat nového uživatele" #: cps/templates/admin.html:46 cps/templates/admin.html:47 msgid "Import LDAP Users" -msgstr "" +msgstr "Importovat LDAP uživatele" #: cps/templates/admin.html:54 msgid "E-mail Server Settings" @@ -1195,7 +1201,7 @@ msgstr "SMTP port" #: cps/templates/admin.html:59 cps/templates/email_edit.html:19 msgid "Encryption" -msgstr "SSL" +msgstr "Šifrování" #: cps/templates/admin.html:60 cps/templates/email_edit.html:27 msgid "SMTP Login" @@ -1239,7 +1245,7 @@ msgstr "Veřejná registrace" #: cps/templates/admin.html:110 msgid "Magic Link Remote Login" -msgstr "Vzdálené přihlášení" +msgstr "Magic Link vzdálené přihlášení" #: cps/templates/admin.html:114 msgid "Reverse Proxy Login" @@ -1251,11 +1257,11 @@ msgstr "Název záhlaví reverzního prixy" #: cps/templates/admin.html:124 msgid "Edit Basic Configuration" -msgstr "" +msgstr "Upravit základní konfiguraci" #: cps/templates/admin.html:125 msgid "Edit UI Configuration" -msgstr "" +msgstr "Upravit konfiguraci uživatelského rozhraní" #: cps/templates/admin.html:131 msgid "Administration" @@ -1267,15 +1273,15 @@ msgstr "Zobrazit log" #: cps/templates/admin.html:133 msgid "Reconnect Calibre Database" -msgstr "Znovupřipojení ke Calibre DB" +msgstr "Znovupřipojení ke Calibre databázi" #: cps/templates/admin.html:134 msgid "Restart" -msgstr "Restartovat Calibre-Web" +msgstr "Restartovat" #: cps/templates/admin.html:135 msgid "Shutdown" -msgstr "Zastavit Calibre-Web" +msgstr "Vypnout" #: cps/templates/admin.html:141 msgid "Update" @@ -1303,7 +1309,7 @@ msgstr "Provést aktualizaci" #: cps/templates/admin.html:171 msgid "Are you sure you want to restart?" -msgstr "Opravdu chcete restartovat Calibre-Web?" +msgstr "Opravdu chcete restartovat?" #: cps/templates/admin.html:176 cps/templates/admin.html:190 #: cps/templates/admin.html:210 cps/templates/shelf.html:72 @@ -1317,11 +1323,11 @@ msgstr "OK" #: cps/templates/shelf.html:73 cps/templates/shelf_edit.html:19 #: cps/templates/user_edit.html:139 msgid "Cancel" -msgstr "" +msgstr "Zrušit" #: cps/templates/admin.html:189 msgid "Are you sure you want to shutdown?" -msgstr "Opravdu chcete zastavit Calibre-Web?" +msgstr "Opravdu chcete vypnout?" #: cps/templates/admin.html:201 msgid "Updating, please do not reload this page" @@ -1396,23 +1402,23 @@ msgstr "Popis" #: cps/templates/book_edit.html:66 msgid "Identifiers" -msgstr "" +msgstr "Identifikátory" #: cps/templates/book_edit.html:70 cps/templates/book_edit.html:308 msgid "Identifier Type" -msgstr "" +msgstr "Typy identifikátorů" #: cps/templates/book_edit.html:71 cps/templates/book_edit.html:309 msgid "Identifier Value" -msgstr "" +msgstr "Hodnota identifikátorů" #: cps/templates/book_edit.html:72 cps/templates/book_edit.html:310 msgid "Remove" -msgstr "" +msgstr "Odstranit" #: cps/templates/book_edit.html:76 msgid "Add Identifier" -msgstr "" +msgstr "Přidat identifikátor" #: cps/templates/book_edit.html:80 cps/templates/search_form.html:33 msgid "Tags" @@ -1420,7 +1426,7 @@ msgstr "Štítky" #: cps/templates/book_edit.html:88 msgid "Series ID" -msgstr "" +msgstr "ID série" #: cps/templates/book_edit.html:92 msgid "Rating" @@ -1463,7 +1469,7 @@ msgstr "Nahrát formát" #: cps/templates/book_edit.html:182 msgid "View Book on Save" -msgstr "zobrazit knihu po úpravě" +msgstr "Zobrazit knihu po uložení" #: cps/templates/book_edit.html:185 cps/templates/book_edit.html:229 msgid "Fetch Metadata" @@ -1473,7 +1479,7 @@ msgstr "Získat metadata" #: cps/templates/config_view_edit.html:150 cps/templates/email_edit.html:45 #: cps/templates/shelf_edit.html:17 cps/templates/user_edit.html:137 msgid "Save" -msgstr "" +msgstr "Uložit" #: cps/templates/book_edit.html:200 msgid "Are you really sure?" @@ -1481,7 +1487,7 @@ msgstr "Jste si opravdu jisti?" #: cps/templates/book_edit.html:204 msgid "This book will be permanently erased from database" -msgstr "Kniha bude smazána z Calibre databáze" +msgstr "Tato kniha bude trvale odstraněna z databáze" #: cps/templates/book_edit.html:205 msgid "and hard disk" @@ -1489,11 +1495,11 @@ msgstr "a z hard disku" #: cps/templates/book_edit.html:209 msgid "Important Kobo Note: deleted books will remain on any paired Kobo device." -msgstr "" +msgstr "Důležitá Kobo poznámka: smazané knihy zůstanou na jakémkoli spárovaném zařízení Kobo." #: cps/templates/book_edit.html:210 msgid "Books must first be archived and the device synced before a book can safely be deleted." -msgstr "" +msgstr "Knihy musí být nejprve archivovány a zařízení musí být synchronizováno, než bude kniha bezpečně smazána." #: cps/templates/book_edit.html:232 msgid "Keyword" @@ -1505,7 +1511,7 @@ msgstr "Hledat klíčové slovo" #: cps/templates/book_edit.html:239 msgid "Click the cover to load metadata to the form" -msgstr "Klepnutím na obal načtěte metadata do formuláře" +msgstr "Kliknutím na obal načtěte metadata do formuláře" #: cps/templates/book_edit.html:254 cps/templates/book_edit.html:294 msgid "Loading..." @@ -1535,7 +1541,7 @@ msgstr "Konfigurace knihovny" #: cps/templates/config_edit.html:19 msgid "Location of Calibre Database" -msgstr "" +msgstr "Umístění Calibre databáze" #: cps/templates/config_edit.html:28 msgid "Use Google Drive?" @@ -1587,7 +1593,7 @@ msgstr "Umístění souboru s klíčem SSL (ponechte prázdné pro servery jiné #: cps/templates/config_edit.html:108 msgid "Update Channel" -msgstr "Aktualizovat kanál" +msgstr "Aktualizační kanál" #: cps/templates/config_edit.html:110 msgid "Stable" @@ -1623,7 +1629,7 @@ msgstr "Povolit nahrávání" #: cps/templates/config_edit.html:169 msgid "Allowed Upload Fileformats" -msgstr "" +msgstr "Povolené nahrávání formátů souborů" #: cps/templates/config_edit.html:175 msgid "Enable Anonymous Browsing" @@ -1635,19 +1641,19 @@ msgstr "Povolit veřejnou registraci" #: cps/templates/config_edit.html:184 msgid "Use E-Mail as Username" -msgstr "" +msgstr "Použít e-mail jako přezdívku" #: cps/templates/config_edit.html:189 msgid "Enable Magic Link Remote Login" -msgstr "Povolit vzdálené přihlášení (\\\"magic link\\\")" +msgstr "Povolit Magic Link vzdálené přihlášení" #: cps/templates/config_edit.html:194 msgid "Enable Kobo sync" -msgstr "" +msgstr "Povolit Kobo synchronizaci" #: cps/templates/config_edit.html:199 msgid "Proxy unknown requests to Kobo Store" -msgstr "" +msgstr "Proxy neznámé požadavky na obchod Kobo" #: cps/templates/config_edit.html:206 msgid "Use Goodreads" @@ -1663,7 +1669,7 @@ msgstr "Goodreads API Klíč" #: cps/templates/config_edit.html:215 msgid "Goodreads API Secret" -msgstr "Goodreads API Secret" +msgstr "Goodreads API tajemství" #: cps/templates/config_edit.html:222 msgid "Allow Reverse Proxy Authentication" @@ -1699,7 +1705,7 @@ msgstr "LDAP Server Port" #: cps/templates/config_edit.html:255 msgid "LDAP Encryption" -msgstr "" +msgstr "LDAP Šifrování" #: cps/templates/config_edit.html:257 cps/templates/config_view_edit.html:61 #: cps/templates/email_edit.html:21 @@ -1708,31 +1714,31 @@ msgstr "Žádné" #: cps/templates/config_edit.html:258 msgid "TLS" -msgstr "" +msgstr "TLS" #: cps/templates/config_edit.html:259 msgid "SSL" -msgstr "" +msgstr "SSL" #: cps/templates/config_edit.html:264 msgid "LDAP Certificate Path" -msgstr "" +msgstr "Cesta certifikátu LDAP" #: cps/templates/config_edit.html:269 msgid "LDAP Authentication" -msgstr "" +msgstr "LDAP Ověření" #: cps/templates/config_edit.html:271 msgid "Anonymous" -msgstr "" +msgstr "Anonymní" #: cps/templates/config_edit.html:272 msgid "Unauthenticated" -msgstr "" +msgstr "Neověřeno" #: cps/templates/config_edit.html:273 msgid "Simple" -msgstr "" +msgstr "Jednoduché" #: cps/templates/config_edit.html:278 msgid "LDAP Administrator Username" @@ -1756,24 +1762,24 @@ msgstr "Server LDAP je OpenLDAP?" #: cps/templates/config_edit.html:300 msgid "Following Settings are Needed For User Import" -msgstr "" +msgstr "Následující nastavení jsou potřeba pro import uživatele" #: cps/templates/config_edit.html:302 msgid "LDAP Group Object Filter" -msgstr "" +msgstr "Filtr objektů skupiny LDAP" #: cps/templates/config_edit.html:306 msgid "LDAP Group Name" -msgstr "" +msgstr "Jméno skupiny LDAP" #: cps/templates/config_edit.html:310 msgid "LDAP Group Members Field" -msgstr "" +msgstr "Pole členů skupiny LDAP" #: cps/templates/config_edit.html:319 #, python-format msgid "Obtain %(provider)s OAuth Credential" -msgstr "Obtain %(provider)s OAuth Credential" +msgstr "Získat %(provider)s OAuth pověření" #: cps/templates/config_edit.html:322 #, python-format @@ -1791,15 +1797,15 @@ msgstr "Externí binární soubory" #: cps/templates/config_edit.html:348 msgid "Path to Calibre E-Book Converter" -msgstr "Poloha Calibre E-Book Converteru" +msgstr "Cesta k převaděči e-knih Calibre" #: cps/templates/config_edit.html:356 msgid "Calibre E-Book Converter Settings" -msgstr "Nastevní Calibre E-Book Converter" +msgstr "Nastavení převaděče e-knih Calibre" #: cps/templates/config_edit.html:359 msgid "Path to Kepubify E-Book Converter" -msgstr "Poloha Kepubify E-Book Converter" +msgstr "Cesta k převaděči e-knih Kepubify" #: cps/templates/config_edit.html:367 msgid "Location of Unrar binary" @@ -1824,7 +1830,7 @@ msgstr "Počet náhodných knih k zobrazení" #: cps/templates/config_view_edit.html:35 msgid "No. of Authors to Display Before Hiding (0=Disable Hiding)" -msgstr "Počet autorů k zobrazení před skrytím (0 = zakázat skrytí)" +msgstr "Počet autorů k zobrazení před skrytím (0 = Zakázat skrytí)" #: cps/templates/config_view_edit.html:39 cps/templates/readcbr.html:112 msgid "Theme" @@ -1848,7 +1854,7 @@ msgstr "Propojit stav čtení/nepřečtení do sloupce Calibre" #: cps/templates/config_view_edit.html:59 msgid "View Restrictions based on Calibre column" -msgstr "Zobrazit omezení podle sloupku Calibre" +msgstr "Zobrazit omezení podle Calibre sloupce" #: cps/templates/config_view_edit.html:68 msgid "Regular Expression for Title Sorting" @@ -1904,7 +1910,7 @@ msgstr "Přidat povolené/zakázané štítky" #: cps/templates/config_view_edit.html:145 msgid "Add Allowed/Denied custom column values" -msgstr "" +msgstr "Přidat povolené/zakázané hodnoty vlastních sloupců" #: cps/templates/detail.html:59 msgid "Read in Browser" @@ -1982,7 +1988,7 @@ msgstr "SMTP heslo" #: cps/templates/email_edit.html:38 msgid "Attachment Size Limit" -msgstr "Limit velikosti souboru:" +msgstr "Limit velikosti souboru" #: cps/templates/email_edit.html:46 msgid "Save and Send Test E-mail" @@ -2086,7 +2092,7 @@ msgstr "Knihy řazené podle hodnocení" #: cps/templates/index.xml:108 msgid "Books ordered by file formats" -msgstr "Knihy seřazené podle soboru formátů" +msgstr "Knihy seřazené podle souboru formátů" #: cps/templates/index.xml:111 cps/templates/layout.html:135 msgid "Shelves" @@ -2111,7 +2117,7 @@ msgstr "Přepnout navigaci" #: cps/templates/layout.html:46 msgid "Search Library" -msgstr "Hledat ve knihovně" +msgstr "Hledat v knihovně" #: cps/templates/layout.html:56 msgid "Advanced Search" @@ -2140,7 +2146,7 @@ msgstr "Nahrávání..." #: cps/templates/layout.html:118 msgid "Please do not refresh the page" -msgstr "prosím neobnovujte stránku" +msgstr "Prosím neobnovujte stránku" #: cps/templates/layout.html:128 msgid "Browse" @@ -2152,7 +2158,7 @@ msgstr "Vaše police" #: cps/templates/layout.html:145 cps/templates/stats.html:3 msgid "About" -msgstr "O Calibre-Web" +msgstr "O knihovně" #: cps/templates/layout.html:159 msgid "Previous" @@ -2176,11 +2182,11 @@ msgstr "Zapamatovat si" #: cps/templates/login.html:22 msgid "Forgot Password?" -msgstr "Zapomenuté heslo" +msgstr "Zapomenuté heslo?" #: cps/templates/login.html:25 msgid "Log in with Magic Link" -msgstr "Přihlásit se pomocí magického odkazu" +msgstr "Přihlásit se pomocí Magic Link" #: cps/templates/logviewer.html:6 msgid "Show Calibre-Web Log: " @@ -2192,7 +2198,7 @@ msgstr "Calibre-Web log: " #: cps/templates/logviewer.html:8 msgid "Stream output, can't be displayed" -msgstr "" +msgstr "Streamový výstup, nelze zobrazit" #: cps/templates/logviewer.html:12 msgid "Show Access Log: " @@ -2200,19 +2206,19 @@ msgstr "Zobrazit log přístupu: " #: cps/templates/modal_restriction.html:6 msgid "Select Allowed/Denied Tags" -msgstr "" +msgstr "Vybrat povolené/zakázané štítky" #: cps/templates/modal_restriction.html:7 msgid "Select Allowed/Denied Custom Column Values" -msgstr "" +msgstr "Vybrat povolené/zakázané hodnoty vlastních sloupců" #: cps/templates/modal_restriction.html:8 msgid "Select Allowed/Denied Tags of User" -msgstr "" +msgstr "Vybrat povolené/zakázané uživatelské štítky" #: cps/templates/modal_restriction.html:9 msgid "Select Allowed/Denied Custom Column Values of User" -msgstr "" +msgstr "Vybrat povolené/zakázané hodnoty vlastních sloupců uživatele" #: cps/templates/modal_restriction.html:15 msgid "Enter Tag" @@ -2348,11 +2354,11 @@ msgstr "Vaše e-mailová adresa" #: cps/templates/remote_login.html:4 msgid "Magic Link - Authorise New Device" -msgstr "Kouzelný odkaz - Schválit nové zařízení" +msgstr "Magic Link - Schválit nové zařízení" #: cps/templates/remote_login.html:6 msgid "On another device, login and visit:" -msgstr "Použijte své druhé zařízení, přihlaste se a navštivte" +msgstr "Použijte své druhé zařízení, přihlaste se a navštivte:" #: cps/templates/remote_login.html:10 msgid "Once verified, you will automatically be logged in on this device." @@ -2360,11 +2366,11 @@ msgstr "Jakmile tak učiníte, budete automaticky přihlášeni na tomto zaříz #: cps/templates/remote_login.html:13 msgid "This verification link will expire in 10 minutes." -msgstr "Odkaz vyprší za 10 minut" +msgstr "Tento ověřovací odkaz vyprší za 10 minut." #: cps/templates/search.html:5 msgid "No Results Found" -msgstr "Žádné výsledky pro:" +msgstr "Nenalezeny žádné výsledky" #: cps/templates/search.html:6 msgid "Search Term:" @@ -2428,11 +2434,11 @@ msgstr "Jste si jisti, že chcete odstranit tuto polici?" #: cps/templates/shelf.html:70 msgid "Shelf will be deleted for all users" -msgstr "Police budou ztracena pro všechny a navždy!" +msgstr "Police bude smazána pro všechny uživatele" #: cps/templates/shelf_edit.html:13 msgid "Share with Everyone" -msgstr "měla by být police veřejná?" +msgstr "Sdílet se všemi" #: cps/templates/shelf_order.html:5 msgid "Drag to Rearrange Order" @@ -2440,7 +2446,7 @@ msgstr "Přetažením uspořádáte pořadí" #: cps/templates/stats.html:7 msgid "Library Statistics" -msgstr "Statistika knihovny Calibre" +msgstr "Statistika knihovny" #: cps/templates/stats.html:12 msgid "Books in this Library" @@ -2528,15 +2534,15 @@ msgstr "Odpojit" #: cps/templates/user_edit.html:63 msgid "Kobo Sync Token" -msgstr "Kobo Sync TOken" +msgstr "Kobo Sync token" #: cps/templates/user_edit.html:65 msgid "Create/View" -msgstr "Nové/Otevřít" +msgstr "Vytvořit/Prohlížet" #: cps/templates/user_edit.html:86 msgid "Add allowed/Denied Custom Column Values" -msgstr "" +msgstr "Přidat povolené/zakázané hodnoty vlastních sloupců" #: cps/templates/user_edit.html:131 msgid "Delete User" @@ -2552,5 +2558,5 @@ msgstr "Vygenerovat URL pro Kobo Auth" #: cps/templates/user_edit.html:178 msgid "Do you really want to delete the Kobo Token?" -msgstr "Chcete opravdu odstranit Kobo Token?" +msgstr "Opravdu chcete odstranit Kobo token?" diff --git a/cps/translations/de/LC_MESSAGES/messages.mo b/cps/translations/de/LC_MESSAGES/messages.mo index 7d06c8ba..8cda8251 100644 Binary files a/cps/translations/de/LC_MESSAGES/messages.mo and b/cps/translations/de/LC_MESSAGES/messages.mo differ diff --git a/cps/translations/de/LC_MESSAGES/messages.po b/cps/translations/de/LC_MESSAGES/messages.po index 536938e3..a1372adb 100644 --- a/cps/translations/de/LC_MESSAGES/messages.po +++ b/cps/translations/de/LC_MESSAGES/messages.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Calibre-Web\n" "Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n" -"POT-Creation-Date: 2020-06-07 06:47+0200\n" +"POT-Creation-Date: 2020-06-28 09:31+0200\n" "PO-Revision-Date: 2020-06-02 20:57+0200\n" "Last-Translator: Ozzie Isaacs\n" "Language: de\n" @@ -46,9 +46,9 @@ msgstr "Erfolgreich neu verbunden" msgid "Unknown command" msgstr "Unbekannter Befehl" -#: cps/admin.py:116 cps/editbooks.py:563 cps/editbooks.py:573 -#: cps/editbooks.py:667 cps/editbooks.py:669 cps/editbooks.py:730 -#: cps/editbooks.py:743 cps/updater.py:509 cps/uploader.py:97 +#: cps/admin.py:116 cps/editbooks.py:564 cps/editbooks.py:576 +#: cps/editbooks.py:670 cps/editbooks.py:672 cps/editbooks.py:733 +#: cps/editbooks.py:749 cps/updater.py:509 cps/uploader.py:97 #: cps/uploader.py:107 msgid "Unknown" msgstr "Unbekannt" @@ -61,7 +61,7 @@ msgstr "Admin Seite" msgid "UI Configuration" msgstr "Benutzeroberflächenkonfiguration" -#: cps/admin.py:189 cps/admin.py:706 +#: cps/admin.py:189 cps/admin.py:711 msgid "Calibre-Web configuration updated" msgstr "Konfiguration von Calibre-Web wurde aktualisiert" @@ -113,175 +113,181 @@ msgstr "LDAP Benutzer Objekt Filter hat ungleiche Anzahl von Klammern" msgid "LDAP Certificate Location is not Valid, Please Enter Correct Path" msgstr "LDAP Zertifikat Pfad ist ungültig, bitte einen gültigen Pfad angeben" -#: cps/admin.py:627 +#: cps/admin.py:628 msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgstr "Schlüsseldatei ist ungültig, bitte einen gültigen Pfad angeben" -#: cps/admin.py:631 +#: cps/admin.py:632 msgid "Certfile Location is not Valid, Please Enter Correct Path" msgstr "Zertifikatsdatei ist ungültig, bitte einen gültigen Pfad angeben" -#: cps/admin.py:701 +#: cps/admin.py:694 cps/admin.py:793 cps/admin.py:885 cps/admin.py:934 +#: cps/shelf.py:100 cps/shelf.py:161 cps/shelf.py:202 cps/shelf.py:260 +#: cps/shelf.py:309 cps/shelf.py:338 cps/shelf.py:368 cps/shelf.py:392 +msgid "Settings DB is not Writeable" +msgstr "" + +#: cps/admin.py:706 msgid "DB Location is not Valid, Please Enter Correct Path" msgstr "DB Pfad ist nicht gültig, bitte einen gültigen Pfad angeben" -#: cps/admin.py:703 +#: cps/admin.py:708 msgid "DB is not Writeable" msgstr "Datenbank ist nicht schreibbar" -#: cps/admin.py:736 +#: cps/admin.py:741 msgid "Basic Configuration" msgstr "Basiskonfiguration" -#: cps/admin.py:751 cps/web.py:1337 +#: cps/admin.py:756 cps/web.py:1334 msgid "Please fill out all fields!" msgstr "Bitte alle Felder ausfüllen!" -#: cps/admin.py:754 cps/admin.py:766 cps/admin.py:772 cps/admin.py:892 +#: cps/admin.py:759 cps/admin.py:771 cps/admin.py:777 cps/admin.py:903 msgid "Add new user" msgstr "Neuen Benutzer hinzufügen" -#: cps/admin.py:763 cps/web.py:1578 +#: cps/admin.py:768 cps/web.py:1575 msgid "E-mail is not from valid domain" msgstr "E-Mail bezieht sich nicht auf eine gültige Domain" -#: cps/admin.py:770 cps/admin.py:785 +#: cps/admin.py:775 cps/admin.py:790 msgid "Found an existing account for this e-mail address or nickname." msgstr "Es existiert bereits ein Account für diese E-Mailadresse oder diesen Benutzernamen." -#: cps/admin.py:781 +#: cps/admin.py:786 #, python-format msgid "User '%(user)s' created" msgstr "Benutzer '%(user)s' angelegt" -#: cps/admin.py:794 +#: cps/admin.py:802 #, python-format msgid "User '%(nick)s' deleted" msgstr "Benutzer '%(nick)s' gelöscht" -#: cps/admin.py:797 +#: cps/admin.py:805 msgid "No admin user remaining, can't delete user" msgstr "Benutzer kann nicht gelöscht werden, es wäre kein Admin Benutzer übrig" -#: cps/admin.py:803 +#: cps/admin.py:811 msgid "No admin user remaining, can't remove admin role" msgstr "Kein Admin Benutzer verblieben Admin Berechtigung kann nicht entfernt werden" -#: cps/admin.py:839 cps/web.py:1621 +#: cps/admin.py:847 cps/web.py:1618 msgid "Found an existing account for this e-mail address." msgstr "Es existiert bereits ein Benutzer für diese E-Mailadresse." -#: cps/admin.py:849 cps/admin.py:864 cps/admin.py:967 cps/web.py:1596 +#: cps/admin.py:857 cps/admin.py:872 cps/admin.py:983 cps/web.py:1593 #, python-format msgid "Edit User %(nick)s" msgstr "Benutzer %(nick)s bearbeiten" -#: cps/admin.py:855 cps/web.py:1588 +#: cps/admin.py:863 cps/web.py:1585 msgid "This username is already taken" msgstr "Benutzername ist schon vorhanden" -#: cps/admin.py:871 +#: cps/admin.py:879 #, python-format msgid "User '%(nick)s' updated" msgstr "Benutzer '%(nick)s' aktualisiert" -#: cps/admin.py:874 +#: cps/admin.py:882 msgid "An unknown error occured." msgstr "Es ist ein unbekannter Fehler aufgetreten." -#: cps/admin.py:901 cps/templates/admin.html:71 +#: cps/admin.py:912 cps/templates/admin.html:71 msgid "Edit E-mail Server Settings" msgstr "SMTP-Einstellungen ändern" -#: cps/admin.py:925 +#: cps/admin.py:941 #, python-format msgid "Test e-mail successfully send to %(kindlemail)s" msgstr "Test-E-Mail wurde erfolgreich an %(kindlemail)s versendet" -#: cps/admin.py:928 +#: cps/admin.py:944 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "Es trat ein Fehler beim Versenden der Test-E-Mail auf: %(res)s" -#: cps/admin.py:930 +#: cps/admin.py:946 msgid "Please configure your e-mail address first..." msgstr "Bitte zuerst E-Mail Adresse konfigurieren..." -#: cps/admin.py:932 +#: cps/admin.py:948 msgid "E-mail server settings updated" msgstr "Einstellungen des E-Mail-Servers aktualisiert" -#: cps/admin.py:943 +#: cps/admin.py:959 msgid "User not found" msgstr "Benutzer nicht gefunden" -#: cps/admin.py:978 +#: cps/admin.py:994 #, python-format msgid "Password for user %(user)s reset" msgstr "Passwort für Benutzer %(user)s wurde zurückgesetzt" -#: cps/admin.py:981 cps/web.py:1361 cps/web.py:1425 +#: cps/admin.py:997 cps/web.py:1358 cps/web.py:1422 msgid "An unknown error occurred. Please try again later." msgstr "Es ist ein unbekannter Fehler aufgetreten. Bitte später erneut versuchen." -#: cps/admin.py:984 cps/web.py:1299 +#: cps/admin.py:1000 cps/web.py:1296 msgid "Please configure the SMTP mail settings first..." msgstr "Bitte zuerst die SMTP-Einstellung konfigurieren ..." -#: cps/admin.py:996 +#: cps/admin.py:1012 msgid "Logfile viewer" msgstr "Logdatei Anzeige" -#: cps/admin.py:1035 +#: cps/admin.py:1051 msgid "Requesting update package" msgstr "Frage Update an" -#: cps/admin.py:1036 +#: cps/admin.py:1052 msgid "Downloading update package" msgstr "Lade Update herunter" -#: cps/admin.py:1037 +#: cps/admin.py:1053 msgid "Unzipping update package" msgstr "Entpacke Update" -#: cps/admin.py:1038 +#: cps/admin.py:1054 msgid "Replacing files" msgstr "Ersetze Dateien" -#: cps/admin.py:1039 +#: cps/admin.py:1055 msgid "Database connections are closed" msgstr "Schließe Datenbankverbindungen" -#: cps/admin.py:1040 +#: cps/admin.py:1056 msgid "Stopping server" msgstr "Stoppe Server" -#: cps/admin.py:1041 +#: cps/admin.py:1057 msgid "Update finished, please press okay and reload page" msgstr "Update abgeschlossen, bitte okay drücken und Seite neu laden" -#: cps/admin.py:1042 cps/admin.py:1043 cps/admin.py:1044 cps/admin.py:1045 -#: cps/admin.py:1046 +#: cps/admin.py:1058 cps/admin.py:1059 cps/admin.py:1060 cps/admin.py:1061 +#: cps/admin.py:1062 msgid "Update failed:" msgstr "Update fehlgeschlagen:" -#: cps/admin.py:1042 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522 +#: cps/admin.py:1058 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522 msgid "HTTP Error" msgstr "HTTP Fehler" -#: cps/admin.py:1043 cps/updater.py:321 cps/updater.py:524 +#: cps/admin.py:1059 cps/updater.py:321 cps/updater.py:524 msgid "Connection error" msgstr "Verbindungsfehler" -#: cps/admin.py:1044 cps/updater.py:323 cps/updater.py:526 +#: cps/admin.py:1060 cps/updater.py:323 cps/updater.py:526 msgid "Timeout while establishing connection" msgstr "Timeout beim Verbindungsaufbau" -#: cps/admin.py:1045 cps/updater.py:325 cps/updater.py:528 +#: cps/admin.py:1061 cps/updater.py:325 cps/updater.py:528 msgid "General error" msgstr "Allgemeiner Fehler" -#: cps/admin.py:1046 +#: cps/admin.py:1062 msgid "Update File Could Not be Saved in Temp Dir" msgstr "Updatedatei konnte nicht in Temporärem Ordner gespeichert werden" @@ -301,8 +307,8 @@ msgstr "Buch Format erfolgreich gelöscht" msgid "Book Successfully Deleted" msgstr "Buch erfolgreich geschlöscht" -#: cps/editbooks.py:254 cps/editbooks.py:548 cps/web.py:1644 cps/web.py:1685 -#: cps/web.py:1747 +#: cps/editbooks.py:254 cps/editbooks.py:549 cps/web.py:1641 cps/web.py:1682 +#: cps/web.py:1744 msgid "Error opening eBook. File does not exist or file is not accessible" msgstr "Öffnen des Buchs fehlgeschlagen. Datei existiert nicht oder ist nicht zugänglich" @@ -310,82 +316,82 @@ msgstr "Öffnen des Buchs fehlgeschlagen. Datei existiert nicht oder ist nicht z msgid "edit metadata" msgstr "Metadaten editieren" -#: cps/editbooks.py:361 +#: cps/editbooks.py:360 #, python-format msgid "%(langname)s is not a valid language" msgstr "%(langname)s ist keine gültige Sprache" -#: cps/editbooks.py:467 cps/editbooks.py:712 +#: cps/editbooks.py:468 cps/editbooks.py:715 #, python-format msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgstr "Dateiendung '%(ext)s' kann nicht auf diesen Server hochgeladen werden" -#: cps/editbooks.py:471 cps/editbooks.py:716 +#: cps/editbooks.py:472 cps/editbooks.py:719 msgid "File to be uploaded must have an extension" msgstr "Dateien müssen eine Erweiterung haben, um hochgeladen zu werden" -#: cps/editbooks.py:483 cps/editbooks.py:773 +#: cps/editbooks.py:484 cps/editbooks.py:779 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "Fehler beim Erzeugen des Pfads %(path)s (Zugriff verweigert)" -#: cps/editbooks.py:488 +#: cps/editbooks.py:489 #, python-format msgid "Failed to store file %(file)s." msgstr "Fehler beim Speichern der Datei %(file)s." -#: cps/editbooks.py:506 cps/editbooks.py:864 +#: cps/editbooks.py:507 cps/editbooks.py:870 #, python-format msgid "Database error: %(error)s." msgstr "Datenbankfehler: %(error)s." -#: cps/editbooks.py:510 +#: cps/editbooks.py:511 #, python-format msgid "File format %(ext)s added to %(book)s" msgstr "Dateiformat %(ext)s zu %(book)s hinzugefügt" -#: cps/editbooks.py:653 +#: cps/editbooks.py:656 msgid "Metadata successfully updated" msgstr "Metadaten wurden erfolgreich aktualisiert" -#: cps/editbooks.py:662 +#: cps/editbooks.py:665 msgid "Error editing book, please check logfile for details" msgstr "Fehler beim Editieren des Buchs, Details im Logfile" -#: cps/editbooks.py:724 +#: cps/editbooks.py:727 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "Die Datei %(filename)s konnte nicht im temporären Ordner gespeichert werden" -#: cps/editbooks.py:734 +#: cps/editbooks.py:737 msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgstr "Das hochgeladene Buch existiert evtl. schon in der Bibliothek: " -#: cps/editbooks.py:780 +#: cps/editbooks.py:786 #, python-format msgid "Failed to Move File %(file)s: %(error)s" msgstr "Fehler beim Verschieben der Datei %(file)s: %(error)s" -#: cps/editbooks.py:836 +#: cps/editbooks.py:842 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "Fehler beim Verschieben der Cover Datei %(file)s: %(error)s" -#: cps/editbooks.py:850 +#: cps/editbooks.py:856 #, python-format msgid "File %(file)s uploaded" msgstr "Datei %(file)s hochgeladen" -#: cps/editbooks.py:876 +#: cps/editbooks.py:882 msgid "Source or destination format for conversion missing" msgstr "Quell- oder Zielformat für Konvertierung fehlt" -#: cps/editbooks.py:884 +#: cps/editbooks.py:890 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "Buch wurde erfolgreich für die Konvertierung nach %(book_format)s eingereiht" -#: cps/editbooks.py:888 +#: cps/editbooks.py:894 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "Es trat ein Fehler beim Konvertieren des Buches auf: %(res)s" @@ -499,71 +505,71 @@ msgstr "Datei %(file)s wurde nicht auf Google Drive gefunden" msgid "Book path %(path)s not found on Google Drive" msgstr "Buchpfad %(path)s wurde nicht auf Google Drive gefunden" -#: cps/helper.py:542 +#: cps/helper.py:550 msgid "Error Downloading Cover" msgstr "Fehler beim Herunterladen des Covers" -#: cps/helper.py:545 +#: cps/helper.py:553 msgid "Cover Format Error" msgstr "Coverdatei fehlerhaft" -#: cps/helper.py:561 +#: cps/helper.py:569 msgid "Failed to create path for cover" msgstr "Fehler beim Erzeugen des Ordners für die Coverdatei" -#: cps/helper.py:566 +#: cps/helper.py:574 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "Cover Datei ist keine gültige Bilddatei, kann nicht gespeichert werden" -#: cps/helper.py:577 +#: cps/helper.py:585 msgid "Only jpg/jpeg/png/webp files are supported as coverfile" msgstr "Es werden nur jpg/jpeg/png/webp Dateien als Cover untertützt" -#: cps/helper.py:591 +#: cps/helper.py:599 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "Es werden nur jpg/jpeg Dateien als Cover untertützt" -#: cps/helper.py:640 +#: cps/helper.py:648 msgid "Unrar binary file not found" msgstr "UnRar Programm nicht gefunden" -#: cps/helper.py:654 +#: cps/helper.py:662 msgid "Error excecuting UnRar" msgstr "Fehler beim ausführen von UnRar" -#: cps/helper.py:710 +#: cps/helper.py:718 msgid "Waiting" msgstr "Wartend" -#: cps/helper.py:712 +#: cps/helper.py:720 msgid "Failed" msgstr "Fehlgeschlagen" -#: cps/helper.py:714 +#: cps/helper.py:722 msgid "Started" msgstr "Gestartet" -#: cps/helper.py:716 +#: cps/helper.py:724 msgid "Finished" msgstr "Beendet" -#: cps/helper.py:718 +#: cps/helper.py:726 msgid "Unknown Status" msgstr "Unbekannter Status" -#: cps/helper.py:723 +#: cps/helper.py:731 msgid "E-mail: " msgstr "E-Mail: " -#: cps/helper.py:725 cps/helper.py:729 +#: cps/helper.py:733 cps/helper.py:737 msgid "Convert: " msgstr "Konvertiere: " -#: cps/helper.py:727 +#: cps/helper.py:735 msgid "Upload: " msgstr "Upload: " -#: cps/helper.py:731 +#: cps/helper.py:739 msgid "Unknown Task: " msgstr "Unbekannte Aufgabe: " @@ -596,7 +602,7 @@ msgstr "Login mit Google fehlgeschlagen." msgid "Failed to fetch user info from Google." msgstr "Laden der Benutzerinformationen von Google fehlgeschlagen." -#: cps/oauth_bb.py:225 cps/web.py:1397 cps/web.py:1537 +#: cps/oauth_bb.py:225 cps/web.py:1394 cps/web.py:1534 #, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "Du bist nun eingeloggt als '%(nickname)s'" @@ -633,218 +639,218 @@ msgstr "GitHub Oauth Fehler, bitte später erneut versuchen." msgid "Google Oauth error, please retry later." msgstr "Google Oauth Fehler, bitte später erneut versuchen." -#: cps/shelf.py:66 cps/shelf.py:111 +#: cps/shelf.py:67 cps/shelf.py:120 msgid "Invalid shelf specified" msgstr "Ungültiges Bücherregal angegeben" -#: cps/shelf.py:72 +#: cps/shelf.py:73 #, python-format msgid "Sorry you are not allowed to add a book to the the shelf: %(shelfname)s" msgstr "Du hast keine Berechtigung, ein Buch zu diesem Bücherregal hinzuzufügen: %(shelfname)s" -#: cps/shelf.py:82 +#: cps/shelf.py:83 #, python-format msgid "Book is already part of the shelf: %(shelfname)s" msgstr "Buch ist bereits Teil des Bücherregals %(shelfname)s" -#: cps/shelf.py:97 +#: cps/shelf.py:106 #, python-format msgid "Book has been added to shelf: %(sname)s" msgstr "Das Buch wurde dem Bücherregal %(sname)s hinzugefügt" -#: cps/shelf.py:115 +#: cps/shelf.py:124 #, python-format msgid "You are not allowed to add a book to the the shelf: %(name)s" msgstr "Dir ist es nicht erlaubt, ein Buch zum Bücherregal %(name)s hinzuzufügen" -#: cps/shelf.py:133 +#: cps/shelf.py:142 #, python-format msgid "Books are already part of the shelf: %(name)s" msgstr "Bücher sind bereits Teil des Bücherregals %(name)s" -#: cps/shelf.py:148 +#: cps/shelf.py:158 #, python-format msgid "Books have been added to shelf: %(sname)s" msgstr "Bücher wurden zum Bücherregal %(sname)s hinzugefügt" -#: cps/shelf.py:150 +#: cps/shelf.py:163 #, python-format msgid "Could not add books to shelf: %(sname)s" msgstr "Bücher konnten nicht zum Bücherregal %(sname)s hinzugefügt werden" -#: cps/shelf.py:188 +#: cps/shelf.py:208 #, python-format msgid "Book has been removed from shelf: %(sname)s" msgstr "Das Buch wurde aus dem Bücherregal: %(sname)s entfernt" -#: cps/shelf.py:196 +#: cps/shelf.py:216 #, python-format msgid "Sorry you are not allowed to remove a book from this shelf: %(sname)s" msgstr "Dir ist es nicht erlaubt, Bücher aus dem Bücherregal %(sname)s zu entfernen" -#: cps/shelf.py:220 cps/shelf.py:260 +#: cps/shelf.py:240 cps/shelf.py:284 #, python-format msgid "A public shelf with the name '%(title)s' already exists." msgstr "Es existiert bereit ein öffentliches Bücherregal mit dem Name '%(title)s'." -#: cps/shelf.py:229 cps/shelf.py:270 +#: cps/shelf.py:249 cps/shelf.py:294 #, python-format msgid "A private shelf with the name '%(title)s' already exists." msgstr "Es existiert bereit ein privates Bücherregal mit dem Name '%(title)s'." -#: cps/shelf.py:236 +#: cps/shelf.py:256 #, python-format msgid "Shelf %(title)s created" msgstr "Bücherregal %(title)s erzeugt" -#: cps/shelf.py:239 cps/shelf.py:284 +#: cps/shelf.py:263 cps/shelf.py:312 msgid "There was an error" msgstr "Es trat ein Fehler auf" -#: cps/shelf.py:240 cps/shelf.py:242 cps/templates/layout.html:144 +#: cps/shelf.py:264 cps/shelf.py:266 cps/templates/layout.html:144 msgid "Create a Shelf" msgstr "Bücherregal erzeugen" -#: cps/shelf.py:282 +#: cps/shelf.py:306 #, python-format msgid "Shelf %(title)s changed" msgstr "Bücherregal %(title)s verändert" -#: cps/shelf.py:285 cps/shelf.py:287 +#: cps/shelf.py:313 cps/shelf.py:315 msgid "Edit a shelf" msgstr "Bücherregal editieren" -#: cps/shelf.py:332 +#: cps/shelf.py:369 #, python-format msgid "Shelf: '%(name)s'" msgstr "Bücherregal: '%(name)s'" -#: cps/shelf.py:335 +#: cps/shelf.py:372 msgid "Error opening shelf. Shelf does not exist or is not accessible" msgstr "Fehler beim Öffnen des Bücherregals. Bücherregal exisitert nicht oder ist nicht zugänglich" -#: cps/shelf.py:368 +#: cps/shelf.py:409 msgid "Hidden Book" msgstr "Verstecktes Buch" -#: cps/shelf.py:373 +#: cps/shelf.py:414 #, python-format msgid "Change order of Shelf: '%(name)s'" msgstr "Reihenfolge in Bücherregal '%(name)s' verändern" -#: cps/ub.py:64 +#: cps/ub.py:65 msgid "Recently Added" msgstr "Kürzlich hinzugefügt" -#: cps/ub.py:66 +#: cps/ub.py:67 msgid "Show recent books" msgstr "Zeige kürzlich hinzugefügte Bücher" -#: cps/templates/index.xml:17 cps/ub.py:67 +#: cps/templates/index.xml:17 cps/ub.py:68 msgid "Hot Books" msgstr "Beliebte Bücher" -#: cps/ub.py:69 +#: cps/ub.py:70 msgid "Show Hot Books" msgstr "Zeige beliebte Bücher" -#: cps/templates/index.xml:24 cps/ub.py:71 cps/web.py:655 +#: cps/templates/index.xml:24 cps/ub.py:72 cps/web.py:652 msgid "Top Rated Books" msgstr "Best bewertete Bücher" -#: cps/ub.py:73 +#: cps/ub.py:74 msgid "Show Top Rated Books" msgstr "Bestbewertete Bücher anzeigen" -#: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:74 -#: cps/web.py:1222 +#: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:75 +#: cps/web.py:1219 msgid "Read Books" msgstr "Gelesene Bücher" -#: cps/ub.py:76 +#: cps/ub.py:77 msgid "Show read and unread" msgstr "Zeige gelesene/ungelesene Bücher" -#: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:78 -#: cps/web.py:1225 +#: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:79 +#: cps/web.py:1222 msgid "Unread Books" msgstr "Ungelesene Bücher" -#: cps/ub.py:80 +#: cps/ub.py:81 msgid "Show unread" msgstr "Zeige Ungelesene" -#: cps/ub.py:81 +#: cps/ub.py:82 msgid "Discover" msgstr "Entdecke" -#: cps/ub.py:83 +#: cps/ub.py:84 msgid "Show random books" msgstr "Zeige zufällige Bücher" -#: cps/templates/index.xml:75 cps/ub.py:84 cps/web.py:970 +#: cps/templates/index.xml:75 cps/ub.py:85 cps/web.py:967 msgid "Categories" msgstr "Kategorien" -#: cps/ub.py:86 +#: cps/ub.py:87 msgid "Show category selection" msgstr "Zeige Kategorienauswahl" #: cps/templates/book_edit.html:84 cps/templates/index.xml:82 -#: cps/templates/search_form.html:53 cps/ub.py:87 cps/web.py:886 cps/web.py:896 +#: cps/templates/search_form.html:53 cps/ub.py:88 cps/web.py:883 cps/web.py:893 msgid "Series" msgstr "Serien" -#: cps/ub.py:89 +#: cps/ub.py:90 msgid "Show series selection" msgstr "Zeige Serienauswahl" -#: cps/templates/index.xml:61 cps/ub.py:90 +#: cps/templates/index.xml:61 cps/ub.py:91 msgid "Authors" msgstr "Autoren" -#: cps/ub.py:92 +#: cps/ub.py:93 msgid "Show author selection" msgstr "Zeige Autorenauswahl" -#: cps/templates/index.xml:68 cps/ub.py:94 cps/web.py:869 +#: cps/templates/index.xml:68 cps/ub.py:95 cps/web.py:866 msgid "Publishers" msgstr "Verleger" -#: cps/ub.py:96 +#: cps/ub.py:97 msgid "Show publisher selection" msgstr "Zeige Verlegerauswahl" -#: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:97 -#: cps/web.py:953 +#: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:98 +#: cps/web.py:950 msgid "Languages" msgstr "Sprachen" -#: cps/ub.py:100 +#: cps/ub.py:101 msgid "Show language selection" msgstr "Zeige Sprachauswahl" -#: cps/templates/index.xml:96 cps/ub.py:101 +#: cps/templates/index.xml:96 cps/ub.py:102 msgid "Ratings" msgstr "Bewertungen" -#: cps/ub.py:103 +#: cps/ub.py:104 msgid "Show ratings selection" msgstr "Zeige Bewertungsauswahl" -#: cps/templates/index.xml:104 cps/ub.py:104 +#: cps/templates/index.xml:104 cps/ub.py:105 msgid "File formats" msgstr "Dateiformate" -#: cps/ub.py:106 +#: cps/ub.py:107 msgid "Show file formats selection" msgstr "Zeige Dateiformatauswahl" -#: cps/ub.py:108 cps/web.py:1249 +#: cps/ub.py:109 cps/web.py:1246 msgid "Archived Books" msgstr "Archivierte Bücher" -#: cps/ub.py:110 +#: cps/ub.py:111 msgid "Show archived books" msgstr "Zeige archivierte Bücher" @@ -877,220 +883,220 @@ msgstr "Ein neues Update ist verfügbar. Klicke auf den Button unten, um auf Ver msgid "Click on the button below to update to the latest stable version." msgstr "Klicke auf den Button unten, um auf die letzte stabile Version zu aktualisieren." -#: cps/web.py:322 +#: cps/web.py:319 #, python-format msgid "Error: %(ldaperror)s" msgstr "Fehler: %(ldaperror)s" -#: cps/web.py:326 +#: cps/web.py:323 msgid "Error: No user returned in response of LDAP server" msgstr "Fehler: Keine Benutzerinformationen von LDAP Server empfangen" -#: cps/web.py:374 +#: cps/web.py:371 msgid "Failed to Create at Least One LDAP User" msgstr "Mindestens ein LDAP Benutzer konnte nicht erzeugt werden" -#: cps/web.py:377 +#: cps/web.py:374 msgid "At Least One LDAP User Not Found in Database" msgstr "Mindestens ein LDAP Benutzer wurde nicht in der Datenbank gefudnen" -#: cps/web.py:379 +#: cps/web.py:376 msgid "User Successfully Imported" msgstr "Benutzer erfolgreich hinzugefügt" -#: cps/web.py:625 +#: cps/web.py:622 msgid "Recently Added Books" msgstr "Kürzlich hinzugefügte Bücher" -#: cps/templates/index.html:5 cps/web.py:663 +#: cps/templates/index.html:5 cps/web.py:660 msgid "Discover (Random Books)" msgstr "Zufällige Bücher" -#: cps/web.py:691 +#: cps/web.py:688 msgid "Books" msgstr "Bücher" -#: cps/web.py:718 +#: cps/web.py:715 msgid "Hot Books (Most Downloaded)" msgstr "Beliebte Bücher (am meisten Downloads)" -#: cps/web.py:731 +#: cps/web.py:728 msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible" msgstr "Öffnen des Buchs fehlgeschlagen. Datei existiert nicht oder ist nicht zugänglich" -#: cps/web.py:745 +#: cps/web.py:742 #, python-format msgid "Author: %(name)s" msgstr "Author: %(name)s" -#: cps/web.py:759 +#: cps/web.py:756 #, python-format msgid "Publisher: %(name)s" msgstr "Verleger: %(name)s" -#: cps/web.py:772 +#: cps/web.py:769 #, python-format msgid "Series: %(serie)s" msgstr "Serie: %(serie)s" -#: cps/web.py:785 +#: cps/web.py:782 #, python-format msgid "Rating: %(rating)s stars" msgstr "Bewertung: %(rating)s Sterne" -#: cps/web.py:798 +#: cps/web.py:795 #, python-format msgid "File format: %(format)s" msgstr "Dateiformat: %(format)s" -#: cps/web.py:812 +#: cps/web.py:809 #, python-format msgid "Category: %(name)s" msgstr "Kategorie: %(name)s" -#: cps/web.py:831 +#: cps/web.py:828 #, python-format msgid "Language: %(name)s" msgstr "Sprache: %(name)s" -#: cps/web.py:910 +#: cps/web.py:907 msgid "Ratings list" msgstr "Bewertungsliste" -#: cps/web.py:925 +#: cps/web.py:922 msgid "File formats list" msgstr "Liste der Dateiformate" -#: cps/templates/layout.html:74 cps/templates/tasks.html:7 cps/web.py:984 +#: cps/templates/layout.html:74 cps/templates/tasks.html:7 cps/web.py:981 msgid "Tasks" msgstr "Aufgaben" #: cps/templates/book_edit.html:235 cps/templates/feed.xml:33 #: cps/templates/layout.html:45 cps/templates/layout.html:48 -#: cps/templates/search_form.html:174 cps/web.py:1010 cps/web.py:1015 +#: cps/templates/search_form.html:174 cps/web.py:1007 cps/web.py:1012 msgid "Search" msgstr "Suche" -#: cps/web.py:1066 +#: cps/web.py:1063 msgid "Published after " msgstr "Herausgegeben nach dem " -#: cps/web.py:1073 +#: cps/web.py:1070 msgid "Published before " msgstr "Herausgegeben vor dem " -#: cps/web.py:1087 +#: cps/web.py:1084 #, python-format msgid "Rating <= %(rating)s" msgstr "Bewertung <= %(rating)s" -#: cps/web.py:1089 +#: cps/web.py:1086 #, python-format msgid "Rating >= %(rating)s" msgstr "Bewertung >= %(rating)s" -#: cps/web.py:1158 cps/web.py:1183 +#: cps/web.py:1155 cps/web.py:1180 msgid "search" msgstr "Suche" -#: cps/web.py:1213 +#: cps/web.py:1210 #, python-format msgid "Custom Column No.%(column)d is not existing in calibre database" msgstr "Benutzerdefinierte Spalte Nr. %(column)d ist nicht in Calibre Datenbank vorhanden" -#: cps/web.py:1304 +#: cps/web.py:1301 #, python-format msgid "Book successfully queued for sending to %(kindlemail)s" msgstr "Buch erfolgreich zum Senden an %(kindlemail)s eingereiht" -#: cps/web.py:1308 +#: cps/web.py:1305 #, python-format msgid "Oops! There was an error sending this book: %(res)s" msgstr "Beim Senden des Buchs trat ein Fehler auf: %(res)s" -#: cps/web.py:1310 +#: cps/web.py:1307 msgid "Please update your profile with a valid Send to Kindle E-mail Address." msgstr "Bitte zuerst die Kindle E-Mailadresse konfigurieren..." -#: cps/web.py:1327 +#: cps/web.py:1324 msgid "E-Mail server is not configured, please contact your administrator!" msgstr "Der E-Mail Server ist nicht konfigurierte, bitte den Administrator kontaktieren!" -#: cps/web.py:1328 cps/web.py:1338 cps/web.py:1362 cps/web.py:1366 -#: cps/web.py:1371 cps/web.py:1375 +#: cps/web.py:1325 cps/web.py:1335 cps/web.py:1359 cps/web.py:1363 +#: cps/web.py:1368 cps/web.py:1372 msgid "register" msgstr "Registieren" -#: cps/web.py:1364 +#: cps/web.py:1361 msgid "Your e-mail is not allowed to register" msgstr "Diese E-Mail ist nicht für die Registrierung zugelassen" -#: cps/web.py:1367 +#: cps/web.py:1364 msgid "Confirmation e-mail was send to your e-mail account." msgstr "Eine Bestätigungs-E-Mail wurde an deinen E-Mail Account versendet." -#: cps/web.py:1370 +#: cps/web.py:1367 msgid "This username or e-mail address is already in use." msgstr "Benutzername oder E-Mailadresse ist bereits in Verwendung." -#: cps/web.py:1387 +#: cps/web.py:1384 msgid "Cannot activate LDAP authentication" msgstr "LDAP-Authentifizierung kann nicht aktiviert werden" -#: cps/web.py:1404 +#: cps/web.py:1401 #, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgstr "Rückfall Login als: '%(nickname)s', LDAP Server ist nicht erreichbar, oder der Nutzer ist unbekannt" -#: cps/web.py:1410 +#: cps/web.py:1407 #, python-format msgid "Could not login: %(message)s" msgstr "Login nicht erfolgreich: %(message)s" -#: cps/web.py:1414 cps/web.py:1438 +#: cps/web.py:1411 cps/web.py:1435 msgid "Wrong Username or Password" msgstr "Falscher Benutzername oder Passwort" -#: cps/web.py:1421 +#: cps/web.py:1418 msgid "New Password was send to your email address" msgstr "Das neue Passwort wurde an die E-Mail Adresse verschickt" -#: cps/web.py:1427 +#: cps/web.py:1424 msgid "Please enter valid username to reset password" msgstr "Bitte einen gültigen Benutzernamen zum Zurücksetzen des Passworts angeben" -#: cps/web.py:1433 +#: cps/web.py:1430 #, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "Eingeloggt als: '%(nickname)s'" -#: cps/web.py:1442 cps/web.py:1469 +#: cps/web.py:1439 cps/web.py:1466 msgid "login" msgstr "Login" -#: cps/web.py:1481 cps/web.py:1515 +#: cps/web.py:1478 cps/web.py:1512 msgid "Token not found" msgstr "Token wurde nicht gefunden" -#: cps/web.py:1490 cps/web.py:1523 +#: cps/web.py:1487 cps/web.py:1520 msgid "Token has expired" msgstr "Token ist abgelaufen" -#: cps/web.py:1499 +#: cps/web.py:1496 msgid "Success! Please return to your device" msgstr "Erfolg! Bitte zum Gerät zurückkehren" -#: cps/web.py:1580 cps/web.py:1625 cps/web.py:1631 +#: cps/web.py:1577 cps/web.py:1622 cps/web.py:1628 #, python-format msgid "%(name)s's profile" msgstr "%(name)s's Profil" -#: cps/web.py:1627 +#: cps/web.py:1624 msgid "Profile updated" msgstr "Profil aktualisiert" -#: cps/web.py:1656 cps/web.py:1659 cps/web.py:1662 cps/web.py:1669 -#: cps/web.py:1674 +#: cps/web.py:1653 cps/web.py:1656 cps/web.py:1659 cps/web.py:1666 +#: cps/web.py:1671 msgid "Read a Book" msgstr "Lese ein Buch" diff --git a/cps/translations/es/LC_MESSAGES/messages.mo b/cps/translations/es/LC_MESSAGES/messages.mo index 5fbec266..0d5a9153 100644 Binary files a/cps/translations/es/LC_MESSAGES/messages.mo and b/cps/translations/es/LC_MESSAGES/messages.mo differ diff --git a/cps/translations/es/LC_MESSAGES/messages.po b/cps/translations/es/LC_MESSAGES/messages.po index 4c745a11..99bac86e 100644 --- a/cps/translations/es/LC_MESSAGES/messages.po +++ b/cps/translations/es/LC_MESSAGES/messages.po @@ -9,7 +9,7 @@ msgid "" msgstr "" "Project-Id-Version: Calibre-Web\n" "Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n" -"POT-Creation-Date: 2020-06-07 06:47+0200\n" +"POT-Creation-Date: 2020-06-28 09:31+0200\n" "PO-Revision-Date: 2020-05-25 17:22+0200\n" "Last-Translator: minakmostoles \n" "Language: es\n" @@ -49,9 +49,9 @@ msgstr "Reconexión correcta" msgid "Unknown command" msgstr "Comando desconocido" -#: cps/admin.py:116 cps/editbooks.py:563 cps/editbooks.py:573 -#: cps/editbooks.py:667 cps/editbooks.py:669 cps/editbooks.py:730 -#: cps/editbooks.py:743 cps/updater.py:509 cps/uploader.py:97 +#: cps/admin.py:116 cps/editbooks.py:564 cps/editbooks.py:576 +#: cps/editbooks.py:670 cps/editbooks.py:672 cps/editbooks.py:733 +#: cps/editbooks.py:749 cps/updater.py:509 cps/uploader.py:97 #: cps/uploader.py:107 msgid "Unknown" msgstr "Desconocido" @@ -64,7 +64,7 @@ msgstr "Página de administración" msgid "UI Configuration" msgstr "Configuración de la interfaz de usuario" -#: cps/admin.py:189 cps/admin.py:706 +#: cps/admin.py:189 cps/admin.py:711 msgid "Calibre-Web configuration updated" msgstr "Configuración de Calibre-Web actualizada" @@ -116,175 +116,181 @@ msgstr "El LDAP Group Object Filter tiene un paréntesis diferente" msgid "LDAP Certificate Location is not Valid, Please Enter Correct Path" msgstr "La ruta del certificado LDAP no es válida. Por favor, introduzca la ruta correcta" -#: cps/admin.py:627 +#: cps/admin.py:628 msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgstr "La ruta del Keyfile no es válida, por favor, introduzca la ruta correcta" -#: cps/admin.py:631 +#: cps/admin.py:632 msgid "Certfile Location is not Valid, Please Enter Correct Path" msgstr "La ruta de Certfile no es válida, por favor, introduzca la ruta correcta" -#: cps/admin.py:701 +#: cps/admin.py:694 cps/admin.py:793 cps/admin.py:885 cps/admin.py:934 +#: cps/shelf.py:100 cps/shelf.py:161 cps/shelf.py:202 cps/shelf.py:260 +#: cps/shelf.py:309 cps/shelf.py:338 cps/shelf.py:368 cps/shelf.py:392 +msgid "Settings DB is not Writeable" +msgstr "" + +#: cps/admin.py:706 msgid "DB Location is not Valid, Please Enter Correct Path" msgstr "La ruta de la base de datos no es válida. Por favor, introduzca la ruta correcta" -#: cps/admin.py:703 +#: cps/admin.py:708 msgid "DB is not Writeable" msgstr "" -#: cps/admin.py:736 +#: cps/admin.py:741 msgid "Basic Configuration" msgstr "Configuración básica" -#: cps/admin.py:751 cps/web.py:1337 +#: cps/admin.py:756 cps/web.py:1334 msgid "Please fill out all fields!" msgstr "¡Por favor, completa todos los campos!" -#: cps/admin.py:754 cps/admin.py:766 cps/admin.py:772 cps/admin.py:892 +#: cps/admin.py:759 cps/admin.py:771 cps/admin.py:777 cps/admin.py:903 msgid "Add new user" msgstr "Añadir un nuevo usuario" -#: cps/admin.py:763 cps/web.py:1578 +#: cps/admin.py:768 cps/web.py:1575 msgid "E-mail is not from valid domain" msgstr "El correo electrónico no tiene un dominio válido" -#: cps/admin.py:770 cps/admin.py:785 +#: cps/admin.py:775 cps/admin.py:790 msgid "Found an existing account for this e-mail address or nickname." msgstr "Encontrada una cuenta existente para este correo electrónico o nombre de usuario." -#: cps/admin.py:781 +#: cps/admin.py:786 #, python-format msgid "User '%(user)s' created" msgstr "Usuario '%(user)s' creado" -#: cps/admin.py:794 +#: cps/admin.py:802 #, python-format msgid "User '%(nick)s' deleted" msgstr "Usuario '%(nick)s' borrado" -#: cps/admin.py:797 +#: cps/admin.py:805 msgid "No admin user remaining, can't delete user" msgstr "No queda ningún usuario administrador, no se puede eliminar al usuario" -#: cps/admin.py:803 +#: cps/admin.py:811 msgid "No admin user remaining, can't remove admin role" msgstr "No queda ningún usuario administrador, no se puede eliminar al usuario" -#: cps/admin.py:839 cps/web.py:1621 +#: cps/admin.py:847 cps/web.py:1618 msgid "Found an existing account for this e-mail address." msgstr "Encontrada una cuenta existente para esa dirección de correo electrónico." -#: cps/admin.py:849 cps/admin.py:864 cps/admin.py:967 cps/web.py:1596 +#: cps/admin.py:857 cps/admin.py:872 cps/admin.py:983 cps/web.py:1593 #, python-format msgid "Edit User %(nick)s" msgstr "Editar Usuario %(nick)s" -#: cps/admin.py:855 cps/web.py:1588 +#: cps/admin.py:863 cps/web.py:1585 msgid "This username is already taken" msgstr "Este nombre de usuario ya está en uso" -#: cps/admin.py:871 +#: cps/admin.py:879 #, python-format msgid "User '%(nick)s' updated" msgstr "Usuario '%(nick)s' actualizado" -#: cps/admin.py:874 +#: cps/admin.py:882 msgid "An unknown error occured." msgstr "Ocurrió un error desconocido." -#: cps/admin.py:901 cps/templates/admin.html:71 +#: cps/admin.py:912 cps/templates/admin.html:71 msgid "Edit E-mail Server Settings" msgstr "Cambiar parámetros de correo" -#: cps/admin.py:925 +#: cps/admin.py:941 #, python-format msgid "Test e-mail successfully send to %(kindlemail)s" msgstr "Correo electrónico de prueba enviado con éxito a %(kindlemail)s" -#: cps/admin.py:928 +#: cps/admin.py:944 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "Ocurrió un error enviando el correo electrónico de prueba: %(res)s" -#: cps/admin.py:930 +#: cps/admin.py:946 msgid "Please configure your e-mail address first..." msgstr "Por favor, configure su correo electrónico primero..." -#: cps/admin.py:932 +#: cps/admin.py:948 msgid "E-mail server settings updated" msgstr "Actualizados los ajustes del servidor de correo electrónico" -#: cps/admin.py:943 +#: cps/admin.py:959 msgid "User not found" msgstr "Usuario no encontrado" -#: cps/admin.py:978 +#: cps/admin.py:994 #, python-format msgid "Password for user %(user)s reset" msgstr "Contraseña para el usuario %(user)s reinicializada" -#: cps/admin.py:981 cps/web.py:1361 cps/web.py:1425 +#: cps/admin.py:997 cps/web.py:1358 cps/web.py:1422 msgid "An unknown error occurred. Please try again later." msgstr "Ha ocurrido un error desconocido. Por favor vuelva a intentarlo más tarde." -#: cps/admin.py:984 cps/web.py:1299 +#: cps/admin.py:1000 cps/web.py:1296 msgid "Please configure the SMTP mail settings first..." msgstr "Configura primero los parámetros del servidor SMTP..." -#: cps/admin.py:996 +#: cps/admin.py:1012 msgid "Logfile viewer" msgstr "Visor del fichero de log" -#: cps/admin.py:1035 +#: cps/admin.py:1051 msgid "Requesting update package" msgstr "Solicitando paquete de actualización" -#: cps/admin.py:1036 +#: cps/admin.py:1052 msgid "Downloading update package" msgstr "Descargando paquete de actualización" -#: cps/admin.py:1037 +#: cps/admin.py:1053 msgid "Unzipping update package" msgstr "Descomprimiendo paquete de actualización" -#: cps/admin.py:1038 +#: cps/admin.py:1054 msgid "Replacing files" msgstr "Remplazando archivos" -#: cps/admin.py:1039 +#: cps/admin.py:1055 msgid "Database connections are closed" msgstr "Los conexiones con la base datos están cerradas" -#: cps/admin.py:1040 +#: cps/admin.py:1056 msgid "Stopping server" msgstr "Parando el servidor" -#: cps/admin.py:1041 +#: cps/admin.py:1057 msgid "Update finished, please press okay and reload page" msgstr "Actualización finalizada. Por favor, pulse OK y recargue la página" -#: cps/admin.py:1042 cps/admin.py:1043 cps/admin.py:1044 cps/admin.py:1045 -#: cps/admin.py:1046 +#: cps/admin.py:1058 cps/admin.py:1059 cps/admin.py:1060 cps/admin.py:1061 +#: cps/admin.py:1062 msgid "Update failed:" msgstr "Falló la actualización:" -#: cps/admin.py:1042 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522 +#: cps/admin.py:1058 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522 msgid "HTTP Error" msgstr "Error HTTP" -#: cps/admin.py:1043 cps/updater.py:321 cps/updater.py:524 +#: cps/admin.py:1059 cps/updater.py:321 cps/updater.py:524 msgid "Connection error" msgstr "Error de conexión" -#: cps/admin.py:1044 cps/updater.py:323 cps/updater.py:526 +#: cps/admin.py:1060 cps/updater.py:323 cps/updater.py:526 msgid "Timeout while establishing connection" msgstr "Tiempo agotado mientras se trataba de establecer la conexión" -#: cps/admin.py:1045 cps/updater.py:325 cps/updater.py:528 +#: cps/admin.py:1061 cps/updater.py:325 cps/updater.py:528 msgid "General error" msgstr "Error general" -#: cps/admin.py:1046 +#: cps/admin.py:1062 msgid "Update File Could Not be Saved in Temp Dir" msgstr "La actualización del archivo no pudo guardarse en el directorio temporal (Temp Dir)" @@ -304,8 +310,8 @@ msgstr "Formato de libro borrado correctamente" msgid "Book Successfully Deleted" msgstr "Libro borrado correctamente" -#: cps/editbooks.py:254 cps/editbooks.py:548 cps/web.py:1644 cps/web.py:1685 -#: cps/web.py:1747 +#: cps/editbooks.py:254 cps/editbooks.py:549 cps/web.py:1641 cps/web.py:1682 +#: cps/web.py:1744 msgid "Error opening eBook. File does not exist or file is not accessible" msgstr "Error abriendo un eBook. El archivo no existe o no es accesible" @@ -313,82 +319,82 @@ msgstr "Error abriendo un eBook. El archivo no existe o no es accesible" msgid "edit metadata" msgstr "editar metadatos" -#: cps/editbooks.py:361 +#: cps/editbooks.py:360 #, python-format msgid "%(langname)s is not a valid language" msgstr "%(langname)s no es un idioma válido" -#: cps/editbooks.py:467 cps/editbooks.py:712 +#: cps/editbooks.py:468 cps/editbooks.py:715 #, python-format msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgstr "No se permite subir archivos con la extensión '%(ext)s' a este servidor" -#: cps/editbooks.py:471 cps/editbooks.py:716 +#: cps/editbooks.py:472 cps/editbooks.py:719 msgid "File to be uploaded must have an extension" msgstr "El archivo a subir debe tener una extensión" -#: cps/editbooks.py:483 cps/editbooks.py:773 +#: cps/editbooks.py:484 cps/editbooks.py:779 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "Fallo al crear la ruta %(path)s (permiso denegado)" -#: cps/editbooks.py:488 +#: cps/editbooks.py:489 #, python-format msgid "Failed to store file %(file)s." msgstr "Fallo al guardar el archivo %(file)s." -#: cps/editbooks.py:506 cps/editbooks.py:864 +#: cps/editbooks.py:507 cps/editbooks.py:870 #, python-format msgid "Database error: %(error)s." msgstr "" -#: cps/editbooks.py:510 +#: cps/editbooks.py:511 #, python-format msgid "File format %(ext)s added to %(book)s" msgstr "Archivo con formato %(ext)s añadido a %(book)s" -#: cps/editbooks.py:653 +#: cps/editbooks.py:656 msgid "Metadata successfully updated" msgstr "Metadatos actualizados correctamente" -#: cps/editbooks.py:662 +#: cps/editbooks.py:665 msgid "Error editing book, please check logfile for details" msgstr "Error al editar el libro, por favor, compruebe el archivo de registro (logfile) para tener más detalles" -#: cps/editbooks.py:724 +#: cps/editbooks.py:727 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "El archivo %(filename)s no pudo salvarse en el directorio temporal (Temp Dir)" -#: cps/editbooks.py:734 +#: cps/editbooks.py:737 msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgstr "El libro cargado probablemente existe en la biblioteca, considera cambiarlo antes de subirlo de nuevo: " -#: cps/editbooks.py:780 +#: cps/editbooks.py:786 #, python-format msgid "Failed to Move File %(file)s: %(error)s" msgstr "Fallo al mover el archivo %(file)s: %(error)s" -#: cps/editbooks.py:836 +#: cps/editbooks.py:842 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "Fallo al mover el archivo de cubierta %(file)s: %(error)s" -#: cps/editbooks.py:850 +#: cps/editbooks.py:856 #, python-format msgid "File %(file)s uploaded" msgstr "El fichero %(file)s a sido subido" -#: cps/editbooks.py:876 +#: cps/editbooks.py:882 msgid "Source or destination format for conversion missing" msgstr "Falta la fuente o el formato de destino para la conversión" -#: cps/editbooks.py:884 +#: cps/editbooks.py:890 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "Libro puesto a la cola para su conversión a %(book_format)s" -#: cps/editbooks.py:888 +#: cps/editbooks.py:894 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "Ocurrió un error al convertir este libro: %(res)s" @@ -502,71 +508,71 @@ msgstr "Fichero %(file)s no encontrado en Google Drive" msgid "Book path %(path)s not found on Google Drive" msgstr "La ruta %(path)s del libro no fue encontrada en Google Drive" -#: cps/helper.py:542 +#: cps/helper.py:550 msgid "Error Downloading Cover" msgstr "" -#: cps/helper.py:545 +#: cps/helper.py:553 msgid "Cover Format Error" msgstr "" -#: cps/helper.py:561 +#: cps/helper.py:569 msgid "Failed to create path for cover" msgstr "Error al crear una ruta para la cubierta" -#: cps/helper.py:566 +#: cps/helper.py:574 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "El archivo de cubierta no es una imágen válida" -#: cps/helper.py:577 +#: cps/helper.py:585 msgid "Only jpg/jpeg/png/webp files are supported as coverfile" msgstr "Las cubiertas deben estar en formato jpg/jpeg/png/webp" -#: cps/helper.py:591 +#: cps/helper.py:599 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "Siki kis archivos jpg/jpeg están soportados como cubierta" -#: cps/helper.py:640 +#: cps/helper.py:648 msgid "Unrar binary file not found" msgstr "No se ha encontrado el binario del comando UnRar" -#: cps/helper.py:654 +#: cps/helper.py:662 msgid "Error excecuting UnRar" msgstr "Error ejecutando UnRar" -#: cps/helper.py:710 +#: cps/helper.py:718 msgid "Waiting" msgstr "Esperando" -#: cps/helper.py:712 +#: cps/helper.py:720 msgid "Failed" msgstr "Fallido" -#: cps/helper.py:714 +#: cps/helper.py:722 msgid "Started" msgstr "Comenzado" -#: cps/helper.py:716 +#: cps/helper.py:724 msgid "Finished" msgstr "Finalizado" -#: cps/helper.py:718 +#: cps/helper.py:726 msgid "Unknown Status" msgstr "Estado desconocido" -#: cps/helper.py:723 +#: cps/helper.py:731 msgid "E-mail: " msgstr "E-mail: " -#: cps/helper.py:725 cps/helper.py:729 +#: cps/helper.py:733 cps/helper.py:737 msgid "Convert: " msgstr "Convertir: " -#: cps/helper.py:727 +#: cps/helper.py:735 msgid "Upload: " msgstr "Subir: " -#: cps/helper.py:731 +#: cps/helper.py:739 msgid "Unknown Task: " msgstr "Tarea desconocida:" @@ -599,7 +605,7 @@ msgstr "Error al iniciar sesión con Google." msgid "Failed to fetch user info from Google." msgstr "Error al obtener información del usuario de Google." -#: cps/oauth_bb.py:225 cps/web.py:1397 cps/web.py:1537 +#: cps/oauth_bb.py:225 cps/web.py:1394 cps/web.py:1534 #, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "has iniciado sesión como : '%(nickname)s'" @@ -636,218 +642,218 @@ msgstr "Error en GitHub Oauth, por favor, vuelva a intentarlo más tarde." msgid "Google Oauth error, please retry later." msgstr "Error en Google Oauth, por favor vuelva a intentarlo más tarde." -#: cps/shelf.py:66 cps/shelf.py:111 +#: cps/shelf.py:67 cps/shelf.py:120 msgid "Invalid shelf specified" msgstr "Estante especificado inválido" -#: cps/shelf.py:72 +#: cps/shelf.py:73 #, python-format msgid "Sorry you are not allowed to add a book to the the shelf: %(shelfname)s" msgstr "Lo sentimos, no tiene permisos para agregar un libro al estante: %(shelfname)s" -#: cps/shelf.py:82 +#: cps/shelf.py:83 #, python-format msgid "Book is already part of the shelf: %(shelfname)s" msgstr "El libro ya forma parte del estante: %(shelfname)s" -#: cps/shelf.py:97 +#: cps/shelf.py:106 #, python-format msgid "Book has been added to shelf: %(sname)s" msgstr "El libro fue agregado a el estante: %(sname)s" -#: cps/shelf.py:115 +#: cps/shelf.py:124 #, python-format msgid "You are not allowed to add a book to the the shelf: %(name)s" msgstr "No tiene permiso para añadir un libro a el estante: %(name)s" -#: cps/shelf.py:133 +#: cps/shelf.py:142 #, python-format msgid "Books are already part of the shelf: %(name)s" msgstr "Los libros ya forman parte del estante: %(name)s" -#: cps/shelf.py:148 +#: cps/shelf.py:158 #, python-format msgid "Books have been added to shelf: %(sname)s" msgstr "Los libros han sido añadidos al estante: %(sname)s" -#: cps/shelf.py:150 +#: cps/shelf.py:163 #, python-format msgid "Could not add books to shelf: %(sname)s" msgstr "No se pudieron agregar libros al estante: %(sname)s" -#: cps/shelf.py:188 +#: cps/shelf.py:208 #, python-format msgid "Book has been removed from shelf: %(sname)s" msgstr "El libro fue eliminado del estante: %(sname)s" -#: cps/shelf.py:196 +#: cps/shelf.py:216 #, python-format msgid "Sorry you are not allowed to remove a book from this shelf: %(sname)s" msgstr "Lo siento, no tiene permiso para eliminar un libro del estante: %(sname)s" -#: cps/shelf.py:220 cps/shelf.py:260 +#: cps/shelf.py:240 cps/shelf.py:284 #, python-format msgid "A public shelf with the name '%(title)s' already exists." msgstr "Ya existe un estante público con el nombre '%(title)s'." -#: cps/shelf.py:229 cps/shelf.py:270 +#: cps/shelf.py:249 cps/shelf.py:294 #, python-format msgid "A private shelf with the name '%(title)s' already exists." msgstr "Ya existe un estante privado con el nombre '%(title)s'." -#: cps/shelf.py:236 +#: cps/shelf.py:256 #, python-format msgid "Shelf %(title)s created" msgstr "Estante %(title)s creado" -#: cps/shelf.py:239 cps/shelf.py:284 +#: cps/shelf.py:263 cps/shelf.py:312 msgid "There was an error" msgstr "Ha sucedido un error" -#: cps/shelf.py:240 cps/shelf.py:242 cps/templates/layout.html:144 +#: cps/shelf.py:264 cps/shelf.py:266 cps/templates/layout.html:144 msgid "Create a Shelf" msgstr "Crear un estante" -#: cps/shelf.py:282 +#: cps/shelf.py:306 #, python-format msgid "Shelf %(title)s changed" msgstr "Estante %(title)s cambiado" -#: cps/shelf.py:285 cps/shelf.py:287 +#: cps/shelf.py:313 cps/shelf.py:315 msgid "Edit a shelf" msgstr "Editar un estante" -#: cps/shelf.py:332 +#: cps/shelf.py:369 #, python-format msgid "Shelf: '%(name)s'" msgstr "Estante: '%(name)s'" -#: cps/shelf.py:335 +#: cps/shelf.py:372 msgid "Error opening shelf. Shelf does not exist or is not accessible" msgstr "Error al abrir un estante. El estante no existe o no es accesible" -#: cps/shelf.py:368 +#: cps/shelf.py:409 msgid "Hidden Book" msgstr "Libro oculto" -#: cps/shelf.py:373 +#: cps/shelf.py:414 #, python-format msgid "Change order of Shelf: '%(name)s'" msgstr "Cambiar orden del estante: '%(name)s'" -#: cps/ub.py:64 +#: cps/ub.py:65 msgid "Recently Added" msgstr "Añadido recientemente" -#: cps/ub.py:66 +#: cps/ub.py:67 msgid "Show recent books" msgstr "Mostrar libros recientes" -#: cps/templates/index.xml:17 cps/ub.py:67 +#: cps/templates/index.xml:17 cps/ub.py:68 msgid "Hot Books" msgstr "Libros populares" -#: cps/ub.py:69 +#: cps/ub.py:70 msgid "Show Hot Books" msgstr "Mostrar libros populares" -#: cps/templates/index.xml:24 cps/ub.py:71 cps/web.py:655 +#: cps/templates/index.xml:24 cps/ub.py:72 cps/web.py:652 msgid "Top Rated Books" msgstr "Libros mejor valorados" -#: cps/ub.py:73 +#: cps/ub.py:74 msgid "Show Top Rated Books" msgstr "Mostrar libros mejor valorados" -#: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:74 -#: cps/web.py:1222 +#: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:75 +#: cps/web.py:1219 msgid "Read Books" msgstr "Libros leídos" -#: cps/ub.py:76 +#: cps/ub.py:77 msgid "Show read and unread" msgstr "Mostrar leídos y no leídos" -#: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:78 -#: cps/web.py:1225 +#: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:79 +#: cps/web.py:1222 msgid "Unread Books" msgstr "Libros no leídos" -#: cps/ub.py:80 +#: cps/ub.py:81 msgid "Show unread" msgstr "Mostrar no leído" -#: cps/ub.py:81 +#: cps/ub.py:82 msgid "Discover" msgstr "Descubrir" -#: cps/ub.py:83 +#: cps/ub.py:84 msgid "Show random books" msgstr "Mostrar libros al azar" -#: cps/templates/index.xml:75 cps/ub.py:84 cps/web.py:970 +#: cps/templates/index.xml:75 cps/ub.py:85 cps/web.py:967 msgid "Categories" msgstr "Categorías" -#: cps/ub.py:86 +#: cps/ub.py:87 msgid "Show category selection" msgstr "Mostrar selección de categorías" #: cps/templates/book_edit.html:84 cps/templates/index.xml:82 -#: cps/templates/search_form.html:53 cps/ub.py:87 cps/web.py:886 cps/web.py:896 +#: cps/templates/search_form.html:53 cps/ub.py:88 cps/web.py:883 cps/web.py:893 msgid "Series" msgstr "Series" -#: cps/ub.py:89 +#: cps/ub.py:90 msgid "Show series selection" msgstr "Mostrar selección de series" -#: cps/templates/index.xml:61 cps/ub.py:90 +#: cps/templates/index.xml:61 cps/ub.py:91 msgid "Authors" msgstr "Autores" -#: cps/ub.py:92 +#: cps/ub.py:93 msgid "Show author selection" msgstr "Mostrar selección de autores" -#: cps/templates/index.xml:68 cps/ub.py:94 cps/web.py:869 +#: cps/templates/index.xml:68 cps/ub.py:95 cps/web.py:866 msgid "Publishers" msgstr "Editores" -#: cps/ub.py:96 +#: cps/ub.py:97 msgid "Show publisher selection" msgstr "Mostrar selección de editores" -#: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:97 -#: cps/web.py:953 +#: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:98 +#: cps/web.py:950 msgid "Languages" msgstr "Idiomas" -#: cps/ub.py:100 +#: cps/ub.py:101 msgid "Show language selection" msgstr "Mostrar selección de idiomas" -#: cps/templates/index.xml:96 cps/ub.py:101 +#: cps/templates/index.xml:96 cps/ub.py:102 msgid "Ratings" msgstr "Calificaciones" -#: cps/ub.py:103 +#: cps/ub.py:104 msgid "Show ratings selection" msgstr "Mostrar selección de calificaciones" -#: cps/templates/index.xml:104 cps/ub.py:104 +#: cps/templates/index.xml:104 cps/ub.py:105 msgid "File formats" msgstr "Formatos de archivo" -#: cps/ub.py:106 +#: cps/ub.py:107 msgid "Show file formats selection" msgstr "Mostrar selección de formatos de archivo" -#: cps/ub.py:108 cps/web.py:1249 +#: cps/ub.py:109 cps/web.py:1246 msgid "Archived Books" msgstr "Libros archivados" -#: cps/ub.py:110 +#: cps/ub.py:111 msgid "Show archived books" msgstr "Mostrar libros archivados" @@ -880,220 +886,220 @@ msgstr "Hay una nueva actualización disponible. Haz clic en el botón de abajo msgid "Click on the button below to update to the latest stable version." msgstr "Haz clic en el botón de abajo para actualizar a la última versión estable." -#: cps/web.py:322 +#: cps/web.py:319 #, python-format msgid "Error: %(ldaperror)s" msgstr "Error: %(ldaperror)s" -#: cps/web.py:326 +#: cps/web.py:323 msgid "Error: No user returned in response of LDAP server" msgstr "Error: el servidor LDAP no ha devuelto ningún usuario" -#: cps/web.py:374 +#: cps/web.py:371 msgid "Failed to Create at Least One LDAP User" msgstr "Error al crear al menos un usuario LDAP" -#: cps/web.py:377 +#: cps/web.py:374 msgid "At Least One LDAP User Not Found in Database" msgstr "Al menos, un usuario LDAP no se ha encontrado en la base de datos" -#: cps/web.py:379 +#: cps/web.py:376 msgid "User Successfully Imported" msgstr "Usuario importado correctamente" -#: cps/web.py:625 +#: cps/web.py:622 msgid "Recently Added Books" msgstr "Libros añadidos recientemente" -#: cps/templates/index.html:5 cps/web.py:663 +#: cps/templates/index.html:5 cps/web.py:660 msgid "Discover (Random Books)" msgstr "Descubrir (Libros al azar)" -#: cps/web.py:691 +#: cps/web.py:688 msgid "Books" msgstr "Libros" -#: cps/web.py:718 +#: cps/web.py:715 msgid "Hot Books (Most Downloaded)" msgstr "Libros populares (los más descargados)" -#: cps/web.py:731 +#: cps/web.py:728 msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible" msgstr "oh, oh, el libro seleccionado no está disponible. El archivo no existe o no es accesible" -#: cps/web.py:745 +#: cps/web.py:742 #, python-format msgid "Author: %(name)s" msgstr "Autor/es: %(name)s" -#: cps/web.py:759 +#: cps/web.py:756 #, python-format msgid "Publisher: %(name)s" msgstr "Editor/es: %(name)s" -#: cps/web.py:772 +#: cps/web.py:769 #, python-format msgid "Series: %(serie)s" msgstr "Series: %(serie)s" -#: cps/web.py:785 +#: cps/web.py:782 #, python-format msgid "Rating: %(rating)s stars" msgstr "Calificación: %(rating)s estrellas" -#: cps/web.py:798 +#: cps/web.py:795 #, python-format msgid "File format: %(format)s" msgstr "Formato del archivo: %(format)s" -#: cps/web.py:812 +#: cps/web.py:809 #, python-format msgid "Category: %(name)s" msgstr "Categoría : %(name)s" -#: cps/web.py:831 +#: cps/web.py:828 #, python-format msgid "Language: %(name)s" msgstr "Idioma: %(name)s" -#: cps/web.py:910 +#: cps/web.py:907 msgid "Ratings list" msgstr "Lista de calificaciones" -#: cps/web.py:925 +#: cps/web.py:922 msgid "File formats list" msgstr "Lista de formatos" -#: cps/templates/layout.html:74 cps/templates/tasks.html:7 cps/web.py:984 +#: cps/templates/layout.html:74 cps/templates/tasks.html:7 cps/web.py:981 msgid "Tasks" msgstr "Tareas" #: cps/templates/book_edit.html:235 cps/templates/feed.xml:33 #: cps/templates/layout.html:45 cps/templates/layout.html:48 -#: cps/templates/search_form.html:174 cps/web.py:1010 cps/web.py:1015 +#: cps/templates/search_form.html:174 cps/web.py:1007 cps/web.py:1012 msgid "Search" msgstr "Buscar" -#: cps/web.py:1066 +#: cps/web.py:1063 msgid "Published after " msgstr "Publicado después de " -#: cps/web.py:1073 +#: cps/web.py:1070 msgid "Published before " msgstr "Publicado antes de " -#: cps/web.py:1087 +#: cps/web.py:1084 #, python-format msgid "Rating <= %(rating)s" msgstr "Calificación <= %(rating)s" -#: cps/web.py:1089 +#: cps/web.py:1086 #, python-format msgid "Rating >= %(rating)s" msgstr "Calificación >= %(rating)s" -#: cps/web.py:1158 cps/web.py:1183 +#: cps/web.py:1155 cps/web.py:1180 msgid "search" msgstr "búsqueda" -#: cps/web.py:1213 +#: cps/web.py:1210 #, python-format msgid "Custom Column No.%(column)d is not existing in calibre database" msgstr "" -#: cps/web.py:1304 +#: cps/web.py:1301 #, python-format msgid "Book successfully queued for sending to %(kindlemail)s" msgstr "Libro puesto en la cola de envío a %(kindlemail)s" -#: cps/web.py:1308 +#: cps/web.py:1305 #, python-format msgid "Oops! There was an error sending this book: %(res)s" msgstr "Ha sucedido un error en el envío del libro: %(res)s" -#: cps/web.py:1310 +#: cps/web.py:1307 msgid "Please update your profile with a valid Send to Kindle E-mail Address." msgstr "Por favor actualiza tu perfil con la dirección de correo de su kindle..." -#: cps/web.py:1327 +#: cps/web.py:1324 msgid "E-Mail server is not configured, please contact your administrator!" msgstr "El servidor de E-Mail no está configurado, por favor, ¡avisa a tu administrador!" -#: cps/web.py:1328 cps/web.py:1338 cps/web.py:1362 cps/web.py:1366 -#: cps/web.py:1371 cps/web.py:1375 +#: cps/web.py:1325 cps/web.py:1335 cps/web.py:1359 cps/web.py:1363 +#: cps/web.py:1368 cps/web.py:1372 msgid "register" msgstr "registrarse" -#: cps/web.py:1364 +#: cps/web.py:1361 msgid "Your e-mail is not allowed to register" msgstr "Su correo electrónico no está permitido para registrarse" -#: cps/web.py:1367 +#: cps/web.py:1364 msgid "Confirmation e-mail was send to your e-mail account." msgstr "Se ha enviado un correo electrónico de verificación a su cuenta de correo." -#: cps/web.py:1370 +#: cps/web.py:1367 msgid "This username or e-mail address is already in use." msgstr "Este nombre de usuario o correo electrónico ya están en uso." -#: cps/web.py:1387 +#: cps/web.py:1384 msgid "Cannot activate LDAP authentication" msgstr "No se puede activar la autenticación LDAP" -#: cps/web.py:1404 +#: cps/web.py:1401 #, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgstr "Fallback login como: '%(nickname)s', no se puede acceder al servidor LDAP o usuario desconocido" -#: cps/web.py:1410 +#: cps/web.py:1407 #, python-format msgid "Could not login: %(message)s" msgstr "No se pudo entrar: %(message)s" -#: cps/web.py:1414 cps/web.py:1438 +#: cps/web.py:1411 cps/web.py:1435 msgid "Wrong Username or Password" msgstr "Usuario o contraseña inválido" -#: cps/web.py:1421 +#: cps/web.py:1418 msgid "New Password was send to your email address" msgstr "Una nueva contraseña se ha enviado a su cuenta de correo electrónico" -#: cps/web.py:1427 +#: cps/web.py:1424 msgid "Please enter valid username to reset password" msgstr "Por favor, introduce un usuario válido para restablecer la contraseña" -#: cps/web.py:1433 +#: cps/web.py:1430 #, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "Ahora estás conectado como: '%(nickname)s'" -#: cps/web.py:1442 cps/web.py:1469 +#: cps/web.py:1439 cps/web.py:1466 msgid "login" msgstr "iniciar sesión" -#: cps/web.py:1481 cps/web.py:1515 +#: cps/web.py:1478 cps/web.py:1512 msgid "Token not found" msgstr "Token no encontrado" -#: cps/web.py:1490 cps/web.py:1523 +#: cps/web.py:1487 cps/web.py:1520 msgid "Token has expired" msgstr "El token ha expirado" -#: cps/web.py:1499 +#: cps/web.py:1496 msgid "Success! Please return to your device" msgstr "¡Correcto! Por favor regrese a su dispositivo" -#: cps/web.py:1580 cps/web.py:1625 cps/web.py:1631 +#: cps/web.py:1577 cps/web.py:1622 cps/web.py:1628 #, python-format msgid "%(name)s's profile" msgstr "Perfil de %(name)s" -#: cps/web.py:1627 +#: cps/web.py:1624 msgid "Profile updated" msgstr "Perfil actualizado" -#: cps/web.py:1656 cps/web.py:1659 cps/web.py:1662 cps/web.py:1669 -#: cps/web.py:1674 +#: cps/web.py:1653 cps/web.py:1656 cps/web.py:1659 cps/web.py:1666 +#: cps/web.py:1671 msgid "Read a Book" msgstr "Leer un libro" diff --git a/cps/translations/fi/LC_MESSAGES/messages.mo b/cps/translations/fi/LC_MESSAGES/messages.mo index 5a61b9d6..7df8c7c8 100644 Binary files a/cps/translations/fi/LC_MESSAGES/messages.mo and b/cps/translations/fi/LC_MESSAGES/messages.mo differ diff --git a/cps/translations/fi/LC_MESSAGES/messages.po b/cps/translations/fi/LC_MESSAGES/messages.po index 2fe9cc58..09b133f1 100644 --- a/cps/translations/fi/LC_MESSAGES/messages.po +++ b/cps/translations/fi/LC_MESSAGES/messages.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Calibre-Web\n" "Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n" -"POT-Creation-Date: 2020-06-07 06:47+0200\n" +"POT-Creation-Date: 2020-06-28 09:31+0200\n" "PO-Revision-Date: 2020-01-12 13:56+0100\n" "Last-Translator: Samuli Valavuo \n" "Language: fi\n" @@ -46,9 +46,9 @@ msgstr "" msgid "Unknown command" msgstr "" -#: cps/admin.py:116 cps/editbooks.py:563 cps/editbooks.py:573 -#: cps/editbooks.py:667 cps/editbooks.py:669 cps/editbooks.py:730 -#: cps/editbooks.py:743 cps/updater.py:509 cps/uploader.py:97 +#: cps/admin.py:116 cps/editbooks.py:564 cps/editbooks.py:576 +#: cps/editbooks.py:670 cps/editbooks.py:672 cps/editbooks.py:733 +#: cps/editbooks.py:749 cps/updater.py:509 cps/uploader.py:97 #: cps/uploader.py:107 msgid "Unknown" msgstr "Tuntematon" @@ -61,7 +61,7 @@ msgstr "Ylläpitosivu" msgid "UI Configuration" msgstr "Käyttöliittymän asetukset" -#: cps/admin.py:189 cps/admin.py:706 +#: cps/admin.py:189 cps/admin.py:711 msgid "Calibre-Web configuration updated" msgstr "Calibre-Web asetukset päivitetty" @@ -113,175 +113,181 @@ msgstr "" msgid "LDAP Certificate Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:627 +#: cps/admin.py:628 msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:631 +#: cps/admin.py:632 msgid "Certfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:701 +#: cps/admin.py:694 cps/admin.py:793 cps/admin.py:885 cps/admin.py:934 +#: cps/shelf.py:100 cps/shelf.py:161 cps/shelf.py:202 cps/shelf.py:260 +#: cps/shelf.py:309 cps/shelf.py:338 cps/shelf.py:368 cps/shelf.py:392 +msgid "Settings DB is not Writeable" +msgstr "" + +#: cps/admin.py:706 msgid "DB Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:703 +#: cps/admin.py:708 msgid "DB is not Writeable" msgstr "" -#: cps/admin.py:736 +#: cps/admin.py:741 msgid "Basic Configuration" msgstr "Perusasetukset" -#: cps/admin.py:751 cps/web.py:1337 +#: cps/admin.py:756 cps/web.py:1334 msgid "Please fill out all fields!" msgstr "Ole hyvä ja täytä kaikki kentät!" -#: cps/admin.py:754 cps/admin.py:766 cps/admin.py:772 cps/admin.py:892 +#: cps/admin.py:759 cps/admin.py:771 cps/admin.py:777 cps/admin.py:903 msgid "Add new user" msgstr "Lisää uusi käyttäjä" -#: cps/admin.py:763 cps/web.py:1578 +#: cps/admin.py:768 cps/web.py:1575 msgid "E-mail is not from valid domain" msgstr "Sähköpostiosoite ei ole toimivasta domainista" -#: cps/admin.py:770 cps/admin.py:785 +#: cps/admin.py:775 cps/admin.py:790 msgid "Found an existing account for this e-mail address or nickname." msgstr "Tälle sähköpostiosoitteelle tai tunnukselle löytyi jo tili." -#: cps/admin.py:781 +#: cps/admin.py:786 #, python-format msgid "User '%(user)s' created" msgstr "Käyttäjä '%(user)s' lisätty" -#: cps/admin.py:794 +#: cps/admin.py:802 #, python-format msgid "User '%(nick)s' deleted" msgstr "Käyttäjä '%(nick)s' poistettu" -#: cps/admin.py:797 +#: cps/admin.py:805 msgid "No admin user remaining, can't delete user" msgstr "Pääkäyttäjiä ei jää jäljelle, käyttäjää ei voi poistaa" -#: cps/admin.py:803 +#: cps/admin.py:811 msgid "No admin user remaining, can't remove admin role" msgstr "" -#: cps/admin.py:839 cps/web.py:1621 +#: cps/admin.py:847 cps/web.py:1618 msgid "Found an existing account for this e-mail address." msgstr "Tälle sähköpostiosoitteelle läytyi jo käyttäjätunnus." -#: cps/admin.py:849 cps/admin.py:864 cps/admin.py:967 cps/web.py:1596 +#: cps/admin.py:857 cps/admin.py:872 cps/admin.py:983 cps/web.py:1593 #, python-format msgid "Edit User %(nick)s" msgstr "Muokkaa käyttäjää %(nick)s" -#: cps/admin.py:855 cps/web.py:1588 +#: cps/admin.py:863 cps/web.py:1585 msgid "This username is already taken" msgstr "" -#: cps/admin.py:871 +#: cps/admin.py:879 #, python-format msgid "User '%(nick)s' updated" msgstr "Käyttäjä '%(nick)s' päivitetty" -#: cps/admin.py:874 +#: cps/admin.py:882 msgid "An unknown error occured." msgstr "Tapahtui tuntematon virhe." -#: cps/admin.py:901 cps/templates/admin.html:71 +#: cps/admin.py:912 cps/templates/admin.html:71 msgid "Edit E-mail Server Settings" msgstr "Muuta SMTP asetuksia" -#: cps/admin.py:925 +#: cps/admin.py:941 #, python-format msgid "Test e-mail successfully send to %(kindlemail)s" msgstr "Testisähköposti lähetetty onnistuneesti osoitteeseen %(kindlemail)s" -#: cps/admin.py:928 +#: cps/admin.py:944 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "Testisähköpostin lähetyksessä tapahtui virhe: %(res)s" -#: cps/admin.py:930 +#: cps/admin.py:946 msgid "Please configure your e-mail address first..." msgstr "" -#: cps/admin.py:932 +#: cps/admin.py:948 msgid "E-mail server settings updated" msgstr "Sähköpostipalvelimen tiedot päivitetty" -#: cps/admin.py:943 +#: cps/admin.py:959 msgid "User not found" msgstr "" -#: cps/admin.py:978 +#: cps/admin.py:994 #, python-format msgid "Password for user %(user)s reset" msgstr "Käyttäjän %(user)s salasana palautettu" -#: cps/admin.py:981 cps/web.py:1361 cps/web.py:1425 +#: cps/admin.py:997 cps/web.py:1358 cps/web.py:1422 msgid "An unknown error occurred. Please try again later." msgstr "Tapahtui tuntematon virhe. Yritä myöhemmin uudelleen." -#: cps/admin.py:984 cps/web.py:1299 +#: cps/admin.py:1000 cps/web.py:1296 msgid "Please configure the SMTP mail settings first..." msgstr "Ole hyvä ja aseta SMTP postiasetukset ensin..." -#: cps/admin.py:996 +#: cps/admin.py:1012 msgid "Logfile viewer" msgstr "Lokitiedoston katselin" -#: cps/admin.py:1035 +#: cps/admin.py:1051 msgid "Requesting update package" msgstr "Haetaan päivitystiedostoa" -#: cps/admin.py:1036 +#: cps/admin.py:1052 msgid "Downloading update package" msgstr "Ladataan päivitystiedostoa" -#: cps/admin.py:1037 +#: cps/admin.py:1053 msgid "Unzipping update package" msgstr "Puretaan päivitystiedostoa" -#: cps/admin.py:1038 +#: cps/admin.py:1054 msgid "Replacing files" msgstr "Korvataan tiedostoja" -#: cps/admin.py:1039 +#: cps/admin.py:1055 msgid "Database connections are closed" msgstr "Tietokantayhteydet on katkaistu" -#: cps/admin.py:1040 +#: cps/admin.py:1056 msgid "Stopping server" msgstr "Sammutetaan palvelin" -#: cps/admin.py:1041 +#: cps/admin.py:1057 msgid "Update finished, please press okay and reload page" msgstr "Päivitys valmistui, ole hyvä ja paina OK ja lataa sivu uudelleen" -#: cps/admin.py:1042 cps/admin.py:1043 cps/admin.py:1044 cps/admin.py:1045 -#: cps/admin.py:1046 +#: cps/admin.py:1058 cps/admin.py:1059 cps/admin.py:1060 cps/admin.py:1061 +#: cps/admin.py:1062 msgid "Update failed:" msgstr "Päivitys epäonnistui:" -#: cps/admin.py:1042 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522 +#: cps/admin.py:1058 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522 msgid "HTTP Error" msgstr "HTTP virhe" -#: cps/admin.py:1043 cps/updater.py:321 cps/updater.py:524 +#: cps/admin.py:1059 cps/updater.py:321 cps/updater.py:524 msgid "Connection error" msgstr "Yhteysvirhe" -#: cps/admin.py:1044 cps/updater.py:323 cps/updater.py:526 +#: cps/admin.py:1060 cps/updater.py:323 cps/updater.py:526 msgid "Timeout while establishing connection" msgstr "Aikakatkaisu yhteyttä luotaessa" -#: cps/admin.py:1045 cps/updater.py:325 cps/updater.py:528 +#: cps/admin.py:1061 cps/updater.py:325 cps/updater.py:528 msgid "General error" msgstr "Yleinen virhe" -#: cps/admin.py:1046 +#: cps/admin.py:1062 msgid "Update File Could Not be Saved in Temp Dir" msgstr "" @@ -301,8 +307,8 @@ msgstr "" msgid "Book Successfully Deleted" msgstr "" -#: cps/editbooks.py:254 cps/editbooks.py:548 cps/web.py:1644 cps/web.py:1685 -#: cps/web.py:1747 +#: cps/editbooks.py:254 cps/editbooks.py:549 cps/web.py:1641 cps/web.py:1682 +#: cps/web.py:1744 msgid "Error opening eBook. File does not exist or file is not accessible" msgstr "Virhe e-kirjaa avatessa. Tiedostoa ei löydy tai se ei ole saatavilla" @@ -310,82 +316,82 @@ msgstr "Virhe e-kirjaa avatessa. Tiedostoa ei löydy tai se ei ole saatavilla" msgid "edit metadata" msgstr "muokkaa metadataa" -#: cps/editbooks.py:361 +#: cps/editbooks.py:360 #, python-format msgid "%(langname)s is not a valid language" msgstr "%(langname)s ei ole kelvollinen kieli" -#: cps/editbooks.py:467 cps/editbooks.py:712 +#: cps/editbooks.py:468 cps/editbooks.py:715 #, python-format msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgstr "Tiedostopääte '%(ext)s' ei ole sallittujen palvelimelle ladattavien listalla" -#: cps/editbooks.py:471 cps/editbooks.py:716 +#: cps/editbooks.py:472 cps/editbooks.py:719 msgid "File to be uploaded must have an extension" msgstr "Ladattavalla tiedostolla on oltava tiedostopääte" -#: cps/editbooks.py:483 cps/editbooks.py:773 +#: cps/editbooks.py:484 cps/editbooks.py:779 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "Polun %(path)s luonti epäonnistui (Ei oikeutta)." -#: cps/editbooks.py:488 +#: cps/editbooks.py:489 #, python-format msgid "Failed to store file %(file)s." msgstr "Tiedoston %(file)s tallennus epäonnistui." -#: cps/editbooks.py:506 cps/editbooks.py:864 +#: cps/editbooks.py:507 cps/editbooks.py:870 #, python-format msgid "Database error: %(error)s." msgstr "" -#: cps/editbooks.py:510 +#: cps/editbooks.py:511 #, python-format msgid "File format %(ext)s added to %(book)s" msgstr "Tiedostoformaatti %(ext)s lisätty %(book)s" -#: cps/editbooks.py:653 +#: cps/editbooks.py:656 msgid "Metadata successfully updated" msgstr "Metadata päivitetty onnistuneesti" -#: cps/editbooks.py:662 +#: cps/editbooks.py:665 msgid "Error editing book, please check logfile for details" msgstr "Kirjan editoinnissa tapahtui virhe, tarkista virheilmoitus lokista" -#: cps/editbooks.py:724 +#: cps/editbooks.py:727 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "" -#: cps/editbooks.py:734 +#: cps/editbooks.py:737 msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgstr "" -#: cps/editbooks.py:780 +#: cps/editbooks.py:786 #, python-format msgid "Failed to Move File %(file)s: %(error)s" msgstr "" -#: cps/editbooks.py:836 +#: cps/editbooks.py:842 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "" -#: cps/editbooks.py:850 +#: cps/editbooks.py:856 #, python-format msgid "File %(file)s uploaded" msgstr "Tiedosto %(file)s tallennettu" -#: cps/editbooks.py:876 +#: cps/editbooks.py:882 msgid "Source or destination format for conversion missing" msgstr "Lähteen tai kohteen tiedostomuoto puuttuu" -#: cps/editbooks.py:884 +#: cps/editbooks.py:890 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "Kirja lisätty muutosjonoon muotoon %(book_format)s" -#: cps/editbooks.py:888 +#: cps/editbooks.py:894 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "Kirjan muunnoksessa tapahtui virhe: %(res)s" @@ -499,71 +505,71 @@ msgstr "Tiedostoa %(file)s ei löytynyt Google Drivesta" msgid "Book path %(path)s not found on Google Drive" msgstr "Kirjan polkua %(path)s ei löytynyt Google Drivesta" -#: cps/helper.py:542 +#: cps/helper.py:550 msgid "Error Downloading Cover" msgstr "" -#: cps/helper.py:545 +#: cps/helper.py:553 msgid "Cover Format Error" msgstr "" -#: cps/helper.py:561 +#: cps/helper.py:569 msgid "Failed to create path for cover" msgstr "" -#: cps/helper.py:566 +#: cps/helper.py:574 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "" -#: cps/helper.py:577 +#: cps/helper.py:585 msgid "Only jpg/jpeg/png/webp files are supported as coverfile" msgstr "" -#: cps/helper.py:591 +#: cps/helper.py:599 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "" -#: cps/helper.py:640 +#: cps/helper.py:648 msgid "Unrar binary file not found" msgstr "" -#: cps/helper.py:654 +#: cps/helper.py:662 msgid "Error excecuting UnRar" msgstr "" -#: cps/helper.py:710 +#: cps/helper.py:718 msgid "Waiting" msgstr "Odottaa" -#: cps/helper.py:712 +#: cps/helper.py:720 msgid "Failed" msgstr "Epäonnistui" -#: cps/helper.py:714 +#: cps/helper.py:722 msgid "Started" msgstr "Aloitettu" -#: cps/helper.py:716 +#: cps/helper.py:724 msgid "Finished" msgstr "Valmistui" -#: cps/helper.py:718 +#: cps/helper.py:726 msgid "Unknown Status" msgstr "Tuntematon tila" -#: cps/helper.py:723 +#: cps/helper.py:731 msgid "E-mail: " msgstr "Sähköposti: " -#: cps/helper.py:725 cps/helper.py:729 +#: cps/helper.py:733 cps/helper.py:737 msgid "Convert: " msgstr "Muunna: " -#: cps/helper.py:727 +#: cps/helper.py:735 msgid "Upload: " msgstr "Lähetä: " -#: cps/helper.py:731 +#: cps/helper.py:739 msgid "Unknown Task: " msgstr "Tuntematon tehtävä: " @@ -596,7 +602,7 @@ msgstr "Googleen kirjautuminen epäonnistui." msgid "Failed to fetch user info from Google." msgstr "Käyttäjätietojen haku Googlesta epäonnistui." -#: cps/oauth_bb.py:225 cps/web.py:1397 cps/web.py:1537 +#: cps/oauth_bb.py:225 cps/web.py:1394 cps/web.py:1534 #, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "olet nyt kirjautunut tunnuksella: \"%(nickname)s\"" @@ -633,218 +639,218 @@ msgstr "GitHub Oauth virhe, yritä myöhemmin uudelleen." msgid "Google Oauth error, please retry later." msgstr "Google Oauth virhe, yritä myöhemmin uudelleen." -#: cps/shelf.py:66 cps/shelf.py:111 +#: cps/shelf.py:67 cps/shelf.py:120 msgid "Invalid shelf specified" msgstr "Virheellinen hylly valittu" -#: cps/shelf.py:72 +#: cps/shelf.py:73 #, python-format msgid "Sorry you are not allowed to add a book to the the shelf: %(shelfname)s" msgstr "Valitettavasti sinulla ei ole oikeutta lisätä kirjaa hyllyyn: %(shelfname)s" -#: cps/shelf.py:82 +#: cps/shelf.py:83 #, python-format msgid "Book is already part of the shelf: %(shelfname)s" msgstr "Kirja on jo hyllyssä: %(shelfname)s" -#: cps/shelf.py:97 +#: cps/shelf.py:106 #, python-format msgid "Book has been added to shelf: %(sname)s" msgstr "Kirja on lisätty hyllyyn: %(sname)s" -#: cps/shelf.py:115 +#: cps/shelf.py:124 #, python-format msgid "You are not allowed to add a book to the the shelf: %(name)s" msgstr "Sinulla ei ole oikeutta lisätä kirjaa hyllyyn: %(name)s" -#: cps/shelf.py:133 +#: cps/shelf.py:142 #, python-format msgid "Books are already part of the shelf: %(name)s" msgstr "Kirjat on jo osa hyllyssä: %(name)s" -#: cps/shelf.py:148 +#: cps/shelf.py:158 #, python-format msgid "Books have been added to shelf: %(sname)s" msgstr "Kirjat on lisätty hyllyyn: %(sname)s" -#: cps/shelf.py:150 +#: cps/shelf.py:163 #, python-format msgid "Could not add books to shelf: %(sname)s" msgstr "Kirjojen lisäys hyllyyn: %(sname)s epäonnistui" -#: cps/shelf.py:188 +#: cps/shelf.py:208 #, python-format msgid "Book has been removed from shelf: %(sname)s" msgstr "Kirja on poistettu hyllystä: %(sname)s" -#: cps/shelf.py:196 +#: cps/shelf.py:216 #, python-format msgid "Sorry you are not allowed to remove a book from this shelf: %(sname)s" msgstr "Valitettavsti sinulla ei ole oikeutta poistaa kirjaa hyllystä: %(sname)s" -#: cps/shelf.py:220 cps/shelf.py:260 +#: cps/shelf.py:240 cps/shelf.py:284 #, python-format msgid "A public shelf with the name '%(title)s' already exists." msgstr "" -#: cps/shelf.py:229 cps/shelf.py:270 +#: cps/shelf.py:249 cps/shelf.py:294 #, python-format msgid "A private shelf with the name '%(title)s' already exists." msgstr "" -#: cps/shelf.py:236 +#: cps/shelf.py:256 #, python-format msgid "Shelf %(title)s created" msgstr "Hylly %(title)s luotu" -#: cps/shelf.py:239 cps/shelf.py:284 +#: cps/shelf.py:263 cps/shelf.py:312 msgid "There was an error" msgstr "Tapahtui virhe" -#: cps/shelf.py:240 cps/shelf.py:242 cps/templates/layout.html:144 +#: cps/shelf.py:264 cps/shelf.py:266 cps/templates/layout.html:144 msgid "Create a Shelf" msgstr "luo hylly" -#: cps/shelf.py:282 +#: cps/shelf.py:306 #, python-format msgid "Shelf %(title)s changed" msgstr "Hylly %(title)s muutettu" -#: cps/shelf.py:285 cps/shelf.py:287 +#: cps/shelf.py:313 cps/shelf.py:315 msgid "Edit a shelf" msgstr "Muokkaa hyllyä" -#: cps/shelf.py:332 +#: cps/shelf.py:369 #, python-format msgid "Shelf: '%(name)s'" msgstr "Hylly: '%(name)s'" -#: cps/shelf.py:335 +#: cps/shelf.py:372 msgid "Error opening shelf. Shelf does not exist or is not accessible" msgstr "Virhe hyllyn avauksessa. Hyllyä ei ole tai se ei ole saatavilla" -#: cps/shelf.py:368 +#: cps/shelf.py:409 msgid "Hidden Book" msgstr "" -#: cps/shelf.py:373 +#: cps/shelf.py:414 #, python-format msgid "Change order of Shelf: '%(name)s'" msgstr "Muuta hyllyn: '%(name)s' järjestystä" -#: cps/ub.py:64 +#: cps/ub.py:65 msgid "Recently Added" msgstr "Viimeksi lisätty" -#: cps/ub.py:66 +#: cps/ub.py:67 msgid "Show recent books" msgstr "Näytä viimeisimmät kirjat" -#: cps/templates/index.xml:17 cps/ub.py:67 +#: cps/templates/index.xml:17 cps/ub.py:68 msgid "Hot Books" msgstr "Kuumat kirjat" -#: cps/ub.py:69 +#: cps/ub.py:70 msgid "Show Hot Books" msgstr "Näytä kuumat kirjat" -#: cps/templates/index.xml:24 cps/ub.py:71 cps/web.py:655 +#: cps/templates/index.xml:24 cps/ub.py:72 cps/web.py:652 msgid "Top Rated Books" msgstr "Parhaiten arvioidut kirjat" -#: cps/ub.py:73 +#: cps/ub.py:74 msgid "Show Top Rated Books" msgstr "Näytä parhaiten arvioidut kirjat" -#: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:74 -#: cps/web.py:1222 +#: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:75 +#: cps/web.py:1219 msgid "Read Books" msgstr "Luetut kirjat" -#: cps/ub.py:76 +#: cps/ub.py:77 msgid "Show read and unread" msgstr "Näytä luetut ja lukemattomat" -#: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:78 -#: cps/web.py:1225 +#: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:79 +#: cps/web.py:1222 msgid "Unread Books" msgstr "Lukemattomat kirjat" -#: cps/ub.py:80 +#: cps/ub.py:81 msgid "Show unread" msgstr "Näyt lukemattomat" -#: cps/ub.py:81 +#: cps/ub.py:82 msgid "Discover" msgstr "Löydä" -#: cps/ub.py:83 +#: cps/ub.py:84 msgid "Show random books" msgstr "Näytä satunnaisia kirjoja" -#: cps/templates/index.xml:75 cps/ub.py:84 cps/web.py:970 +#: cps/templates/index.xml:75 cps/ub.py:85 cps/web.py:967 msgid "Categories" msgstr "Kategoriat" -#: cps/ub.py:86 +#: cps/ub.py:87 msgid "Show category selection" msgstr "Näytä kategoriavalinta" #: cps/templates/book_edit.html:84 cps/templates/index.xml:82 -#: cps/templates/search_form.html:53 cps/ub.py:87 cps/web.py:886 cps/web.py:896 +#: cps/templates/search_form.html:53 cps/ub.py:88 cps/web.py:883 cps/web.py:893 msgid "Series" msgstr "Sarjat" -#: cps/ub.py:89 +#: cps/ub.py:90 msgid "Show series selection" msgstr "Näytä sarjavalinta" -#: cps/templates/index.xml:61 cps/ub.py:90 +#: cps/templates/index.xml:61 cps/ub.py:91 msgid "Authors" msgstr "Kirjailijat" -#: cps/ub.py:92 +#: cps/ub.py:93 msgid "Show author selection" msgstr "Näytä kirjailijavalinta" -#: cps/templates/index.xml:68 cps/ub.py:94 cps/web.py:869 +#: cps/templates/index.xml:68 cps/ub.py:95 cps/web.py:866 msgid "Publishers" msgstr "Julkaisijat" -#: cps/ub.py:96 +#: cps/ub.py:97 msgid "Show publisher selection" msgstr "Näytä julkaisijavalinta" -#: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:97 -#: cps/web.py:953 +#: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:98 +#: cps/web.py:950 msgid "Languages" msgstr "Kielet" -#: cps/ub.py:100 +#: cps/ub.py:101 msgid "Show language selection" msgstr "Näytä keilivalinta" -#: cps/templates/index.xml:96 cps/ub.py:101 +#: cps/templates/index.xml:96 cps/ub.py:102 msgid "Ratings" msgstr "Arvostelut" -#: cps/ub.py:103 +#: cps/ub.py:104 msgid "Show ratings selection" msgstr "Näytä arvosteluvalinta" -#: cps/templates/index.xml:104 cps/ub.py:104 +#: cps/templates/index.xml:104 cps/ub.py:105 msgid "File formats" msgstr "Tiedotomuodot" -#: cps/ub.py:106 +#: cps/ub.py:107 msgid "Show file formats selection" msgstr "Näytä tiedostomuotovalinta" -#: cps/ub.py:108 cps/web.py:1249 +#: cps/ub.py:109 cps/web.py:1246 msgid "Archived Books" msgstr "" -#: cps/ub.py:110 +#: cps/ub.py:111 msgid "Show archived books" msgstr "" @@ -877,220 +883,220 @@ msgstr "Uusi päivitys saatavilla. Paina alla olevaa nappia päivittääksesi ve msgid "Click on the button below to update to the latest stable version." msgstr "Paina alla olevaa nappia päivittääksesi uusimpaan vakaaseen versioon." -#: cps/web.py:322 +#: cps/web.py:319 #, python-format msgid "Error: %(ldaperror)s" msgstr "" -#: cps/web.py:326 +#: cps/web.py:323 msgid "Error: No user returned in response of LDAP server" msgstr "" -#: cps/web.py:374 +#: cps/web.py:371 msgid "Failed to Create at Least One LDAP User" msgstr "" -#: cps/web.py:377 +#: cps/web.py:374 msgid "At Least One LDAP User Not Found in Database" msgstr "" -#: cps/web.py:379 +#: cps/web.py:376 msgid "User Successfully Imported" msgstr "" -#: cps/web.py:625 +#: cps/web.py:622 msgid "Recently Added Books" msgstr "Viimeksi lisätyt kirjat" -#: cps/templates/index.html:5 cps/web.py:663 +#: cps/templates/index.html:5 cps/web.py:660 msgid "Discover (Random Books)" msgstr "Löydä (satunnaiset kirjat)" -#: cps/web.py:691 +#: cps/web.py:688 msgid "Books" msgstr "Kirjat" -#: cps/web.py:718 +#: cps/web.py:715 msgid "Hot Books (Most Downloaded)" msgstr "Kuumat kirjat (ladatuimmat)" -#: cps/web.py:731 +#: cps/web.py:728 msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible" msgstr "Virhe eKirjan avaamisessa. Tiedostoa ei ole tai se ei ole saatavilla:" -#: cps/web.py:745 +#: cps/web.py:742 #, python-format msgid "Author: %(name)s" msgstr "Kirjailija: %(name)s" -#: cps/web.py:759 +#: cps/web.py:756 #, python-format msgid "Publisher: %(name)s" msgstr "Julkaisija: %(name)s" -#: cps/web.py:772 +#: cps/web.py:769 #, python-format msgid "Series: %(serie)s" msgstr "Sarja: %(serie)s" -#: cps/web.py:785 +#: cps/web.py:782 #, python-format msgid "Rating: %(rating)s stars" msgstr "Arvostelu: %(rating)s tähteä" -#: cps/web.py:798 +#: cps/web.py:795 #, python-format msgid "File format: %(format)s" msgstr "Tiedostomuoto: %(format)s" -#: cps/web.py:812 +#: cps/web.py:809 #, python-format msgid "Category: %(name)s" msgstr "Kategoria: %(name)s" -#: cps/web.py:831 +#: cps/web.py:828 #, python-format msgid "Language: %(name)s" msgstr "Kieli: %(name)s" -#: cps/web.py:910 +#: cps/web.py:907 msgid "Ratings list" msgstr "Arvostelulistaus" -#: cps/web.py:925 +#: cps/web.py:922 msgid "File formats list" msgstr "Tiedostomuotolistaus" -#: cps/templates/layout.html:74 cps/templates/tasks.html:7 cps/web.py:984 +#: cps/templates/layout.html:74 cps/templates/tasks.html:7 cps/web.py:981 msgid "Tasks" msgstr "Tehtävät" #: cps/templates/book_edit.html:235 cps/templates/feed.xml:33 #: cps/templates/layout.html:45 cps/templates/layout.html:48 -#: cps/templates/search_form.html:174 cps/web.py:1010 cps/web.py:1015 +#: cps/templates/search_form.html:174 cps/web.py:1007 cps/web.py:1012 msgid "Search" msgstr "Hae" -#: cps/web.py:1066 +#: cps/web.py:1063 msgid "Published after " msgstr "Julkaistu alkaen " -#: cps/web.py:1073 +#: cps/web.py:1070 msgid "Published before " msgstr "Julkaisut ennen " -#: cps/web.py:1087 +#: cps/web.py:1084 #, python-format msgid "Rating <= %(rating)s" msgstr "Arvostelu <= %(rating)s" -#: cps/web.py:1089 +#: cps/web.py:1086 #, python-format msgid "Rating >= %(rating)s" msgstr "Arvostelu >= %(rating)s" -#: cps/web.py:1158 cps/web.py:1183 +#: cps/web.py:1155 cps/web.py:1180 msgid "search" msgstr "hae" -#: cps/web.py:1213 +#: cps/web.py:1210 #, python-format msgid "Custom Column No.%(column)d is not existing in calibre database" msgstr "" -#: cps/web.py:1304 +#: cps/web.py:1301 #, python-format msgid "Book successfully queued for sending to %(kindlemail)s" msgstr "Kirja lisätty onnistuneeksi lähetettäväksi osoitteeseen %(kindlemail)s" -#: cps/web.py:1308 +#: cps/web.py:1305 #, python-format msgid "Oops! There was an error sending this book: %(res)s" msgstr "Kirjan: %(res)s lähettämisessa tapahtui virhe" -#: cps/web.py:1310 +#: cps/web.py:1307 msgid "Please update your profile with a valid Send to Kindle E-mail Address." msgstr "Ole hyvä ja aseta Kindle sähköpostiosoite ensin..." -#: cps/web.py:1327 +#: cps/web.py:1324 msgid "E-Mail server is not configured, please contact your administrator!" msgstr "" -#: cps/web.py:1328 cps/web.py:1338 cps/web.py:1362 cps/web.py:1366 -#: cps/web.py:1371 cps/web.py:1375 +#: cps/web.py:1325 cps/web.py:1335 cps/web.py:1359 cps/web.py:1363 +#: cps/web.py:1368 cps/web.py:1372 msgid "register" msgstr "rekisteröidy" -#: cps/web.py:1364 +#: cps/web.py:1361 msgid "Your e-mail is not allowed to register" msgstr "Sähköpostiosoitteellasi ei ole sallittua rekisteröityä" -#: cps/web.py:1367 +#: cps/web.py:1364 msgid "Confirmation e-mail was send to your e-mail account." msgstr "Vahvistusviesti on lähetetty sähköpostiosoitteeseesi." -#: cps/web.py:1370 +#: cps/web.py:1367 msgid "This username or e-mail address is already in use." msgstr "Käyttäjätunnus tai sähköpostiosoite on jo käytössä." -#: cps/web.py:1387 +#: cps/web.py:1384 msgid "Cannot activate LDAP authentication" msgstr "LDAP autnetikoinnin aktivointi ei onnistu" -#: cps/web.py:1404 +#: cps/web.py:1401 #, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgstr "" -#: cps/web.py:1410 +#: cps/web.py:1407 #, python-format msgid "Could not login: %(message)s" msgstr "" -#: cps/web.py:1414 cps/web.py:1438 +#: cps/web.py:1411 cps/web.py:1435 msgid "Wrong Username or Password" msgstr "Väärä käyttäjätunnus tai salasana" -#: cps/web.py:1421 +#: cps/web.py:1418 msgid "New Password was send to your email address" msgstr "" -#: cps/web.py:1427 +#: cps/web.py:1424 msgid "Please enter valid username to reset password" msgstr "" -#: cps/web.py:1433 +#: cps/web.py:1430 #, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "olet kirjautunut tunnuksella: '%(nickname)s'" -#: cps/web.py:1442 cps/web.py:1469 +#: cps/web.py:1439 cps/web.py:1466 msgid "login" msgstr "kirjaudu" -#: cps/web.py:1481 cps/web.py:1515 +#: cps/web.py:1478 cps/web.py:1512 msgid "Token not found" msgstr "Valtuutusta ei löytynyt" -#: cps/web.py:1490 cps/web.py:1523 +#: cps/web.py:1487 cps/web.py:1520 msgid "Token has expired" msgstr "Valtuutus vanhentunut" -#: cps/web.py:1499 +#: cps/web.py:1496 msgid "Success! Please return to your device" msgstr "Onnistui! Ole hyvä ja palaa laitteellesi" -#: cps/web.py:1580 cps/web.py:1625 cps/web.py:1631 +#: cps/web.py:1577 cps/web.py:1622 cps/web.py:1628 #, python-format msgid "%(name)s's profile" msgstr "%(name)sn profiili" -#: cps/web.py:1627 +#: cps/web.py:1624 msgid "Profile updated" msgstr "Profiili päivitetty" -#: cps/web.py:1656 cps/web.py:1659 cps/web.py:1662 cps/web.py:1669 -#: cps/web.py:1674 +#: cps/web.py:1653 cps/web.py:1656 cps/web.py:1659 cps/web.py:1666 +#: cps/web.py:1671 msgid "Read a Book" msgstr "Lue kirja" diff --git a/cps/translations/fr/LC_MESSAGES/messages.mo b/cps/translations/fr/LC_MESSAGES/messages.mo index a60b8ff1..64560b3e 100644 Binary files a/cps/translations/fr/LC_MESSAGES/messages.mo and b/cps/translations/fr/LC_MESSAGES/messages.mo differ diff --git a/cps/translations/fr/LC_MESSAGES/messages.po b/cps/translations/fr/LC_MESSAGES/messages.po index b5bd6e22..6860cc52 100644 --- a/cps/translations/fr/LC_MESSAGES/messages.po +++ b/cps/translations/fr/LC_MESSAGES/messages.po @@ -21,7 +21,7 @@ msgid "" msgstr "" "Project-Id-Version: Calibre-Web\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2020-06-07 06:47+0200\n" +"POT-Creation-Date: 2020-06-28 09:31+0200\n" "PO-Revision-Date: 2020-06-07 06:47+0200\n" "Last-Translator: Dekani \n" "Language: fr\n" @@ -60,9 +60,9 @@ msgstr "Reconnecté avec succès" msgid "Unknown command" msgstr "Commande inconnue" -#: cps/admin.py:116 cps/editbooks.py:563 cps/editbooks.py:573 -#: cps/editbooks.py:667 cps/editbooks.py:669 cps/editbooks.py:730 -#: cps/editbooks.py:743 cps/updater.py:509 cps/uploader.py:97 +#: cps/admin.py:116 cps/editbooks.py:564 cps/editbooks.py:576 +#: cps/editbooks.py:670 cps/editbooks.py:672 cps/editbooks.py:733 +#: cps/editbooks.py:749 cps/updater.py:509 cps/uploader.py:97 #: cps/uploader.py:107 msgid "Unknown" msgstr "Inconnu" @@ -75,7 +75,7 @@ msgstr "Page admin" msgid "UI Configuration" msgstr "Configuration de l’interface utilisateur" -#: cps/admin.py:189 cps/admin.py:706 +#: cps/admin.py:189 cps/admin.py:711 msgid "Calibre-Web configuration updated" msgstr "Configuration de Calibre-Web mise à jour" @@ -127,175 +127,181 @@ msgstr "Le filtre objet de l'utilisateur LDAP a une parenthèse non gérée" msgid "LDAP Certificate Location is not Valid, Please Enter Correct Path" msgstr "L'emplacement du certificat LDAP est incorrect, veuillez saisir un chemin valide" -#: cps/admin.py:627 +#: cps/admin.py:628 msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgstr "L'emplacement du fichier Keyfile est incorrect, veuillez saisir un chemin valide" -#: cps/admin.py:631 +#: cps/admin.py:632 msgid "Certfile Location is not Valid, Please Enter Correct Path" msgstr "L'emplacement du fichier Certfile est incorrect, veuillez saisir un chemin valide" -#: cps/admin.py:701 +#: cps/admin.py:694 cps/admin.py:793 cps/admin.py:885 cps/admin.py:934 +#: cps/shelf.py:100 cps/shelf.py:161 cps/shelf.py:202 cps/shelf.py:260 +#: cps/shelf.py:309 cps/shelf.py:338 cps/shelf.py:368 cps/shelf.py:392 +msgid "Settings DB is not Writeable" +msgstr "" + +#: cps/admin.py:706 msgid "DB Location is not Valid, Please Enter Correct Path" msgstr "L'emplacement DB est incorrect, veuillez saisir un chemin valide" -#: cps/admin.py:703 +#: cps/admin.py:708 msgid "DB is not Writeable" msgstr "La DB n'est pas accessible en écriture" -#: cps/admin.py:736 +#: cps/admin.py:741 msgid "Basic Configuration" msgstr "Configuration principale" -#: cps/admin.py:751 cps/web.py:1337 +#: cps/admin.py:756 cps/web.py:1334 msgid "Please fill out all fields!" msgstr "Veuillez compléter tous les champs !" -#: cps/admin.py:754 cps/admin.py:766 cps/admin.py:772 cps/admin.py:892 +#: cps/admin.py:759 cps/admin.py:771 cps/admin.py:777 cps/admin.py:903 msgid "Add new user" msgstr "Ajouter un nouvel utilisateur" -#: cps/admin.py:763 cps/web.py:1578 +#: cps/admin.py:768 cps/web.py:1575 msgid "E-mail is not from valid domain" msgstr "Cette adresse de courriel n’appartient pas à un domaine valide" -#: cps/admin.py:770 cps/admin.py:785 +#: cps/admin.py:775 cps/admin.py:790 msgid "Found an existing account for this e-mail address or nickname." msgstr "Un compte existant a été trouvé pour cette adresse de courriel ou pour ce surnom." -#: cps/admin.py:781 +#: cps/admin.py:786 #, python-format msgid "User '%(user)s' created" msgstr "Utilisateur '%(user)s' créé" -#: cps/admin.py:794 +#: cps/admin.py:802 #, python-format msgid "User '%(nick)s' deleted" msgstr "Utilisateur '%(nick)s' supprimé" -#: cps/admin.py:797 +#: cps/admin.py:805 msgid "No admin user remaining, can't delete user" msgstr "Aucun utilisateur admin restant, impossible de supprimer l’utilisateur" -#: cps/admin.py:803 +#: cps/admin.py:811 msgid "No admin user remaining, can't remove admin role" msgstr "Aucun utilisateur admin restant, impossible de supprimer le rôle admin" -#: cps/admin.py:839 cps/web.py:1621 +#: cps/admin.py:847 cps/web.py:1618 msgid "Found an existing account for this e-mail address." msgstr "Un compte existant a été trouvé pour cette adresse de courriel." -#: cps/admin.py:849 cps/admin.py:864 cps/admin.py:967 cps/web.py:1596 +#: cps/admin.py:857 cps/admin.py:872 cps/admin.py:983 cps/web.py:1593 #, python-format msgid "Edit User %(nick)s" msgstr "Éditer l'utilisateur %(nick)s" -#: cps/admin.py:855 cps/web.py:1588 +#: cps/admin.py:863 cps/web.py:1585 msgid "This username is already taken" msgstr "Cet utilisateur est déjà pris" -#: cps/admin.py:871 +#: cps/admin.py:879 #, python-format msgid "User '%(nick)s' updated" msgstr "Utilisateur '%(nick)s' mis à jour" -#: cps/admin.py:874 +#: cps/admin.py:882 msgid "An unknown error occured." msgstr "Oups ! Une erreur inconnue a eu lieu." -#: cps/admin.py:901 cps/templates/admin.html:71 +#: cps/admin.py:912 cps/templates/admin.html:71 msgid "Edit E-mail Server Settings" msgstr "Modifier les paramètres du serveur de courriels" -#: cps/admin.py:925 +#: cps/admin.py:941 #, python-format msgid "Test e-mail successfully send to %(kindlemail)s" msgstr "Courriel de test envoyé avec succès sur %(kindlemail)s" -#: cps/admin.py:928 +#: cps/admin.py:944 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "Il y a eu une erreur pendant l’envoi du courriel de test : %(res)s" -#: cps/admin.py:930 +#: cps/admin.py:946 msgid "Please configure your e-mail address first..." msgstr "Veuillez d'abord configurer votre adresse de courriel..." -#: cps/admin.py:932 +#: cps/admin.py:948 msgid "E-mail server settings updated" msgstr "Les paramètres du serveur de courriels ont été mis à jour" -#: cps/admin.py:943 +#: cps/admin.py:959 msgid "User not found" msgstr "L'utilisateur n'a pas été trouvé" -#: cps/admin.py:978 +#: cps/admin.py:994 #, python-format msgid "Password for user %(user)s reset" msgstr "Le mot de passe de l’utilisateur %(user)s a été réinitialisé" -#: cps/admin.py:981 cps/web.py:1361 cps/web.py:1425 +#: cps/admin.py:997 cps/web.py:1358 cps/web.py:1422 msgid "An unknown error occurred. Please try again later." msgstr "Une erreur inconnue est survenue. Veuillez réessayer plus tard." -#: cps/admin.py:984 cps/web.py:1299 +#: cps/admin.py:1000 cps/web.py:1296 msgid "Please configure the SMTP mail settings first..." msgstr "Veuillez configurer les paramètres SMTP au préalable..." -#: cps/admin.py:996 +#: cps/admin.py:1012 msgid "Logfile viewer" msgstr "Visualiseur de fichier journal" -#: cps/admin.py:1035 +#: cps/admin.py:1051 msgid "Requesting update package" msgstr "Demande de mise à jour" -#: cps/admin.py:1036 +#: cps/admin.py:1052 msgid "Downloading update package" msgstr "Téléchargement de la mise à jour" -#: cps/admin.py:1037 +#: cps/admin.py:1053 msgid "Unzipping update package" msgstr "Décompression de la mise à jour" -#: cps/admin.py:1038 +#: cps/admin.py:1054 msgid "Replacing files" msgstr "Remplacement des fichiers" -#: cps/admin.py:1039 +#: cps/admin.py:1055 msgid "Database connections are closed" msgstr "Les connexions à la base de données ont été fermées" -#: cps/admin.py:1040 +#: cps/admin.py:1056 msgid "Stopping server" msgstr "Arrêt du serveur" -#: cps/admin.py:1041 +#: cps/admin.py:1057 msgid "Update finished, please press okay and reload page" msgstr "Mise à jour terminée, merci d’appuyer sur okay et de rafraîchir la page" -#: cps/admin.py:1042 cps/admin.py:1043 cps/admin.py:1044 cps/admin.py:1045 -#: cps/admin.py:1046 +#: cps/admin.py:1058 cps/admin.py:1059 cps/admin.py:1060 cps/admin.py:1061 +#: cps/admin.py:1062 msgid "Update failed:" msgstr "La mise à jour a échoué :" -#: cps/admin.py:1042 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522 +#: cps/admin.py:1058 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522 msgid "HTTP Error" msgstr "Erreur HTTP" -#: cps/admin.py:1043 cps/updater.py:321 cps/updater.py:524 +#: cps/admin.py:1059 cps/updater.py:321 cps/updater.py:524 msgid "Connection error" msgstr "Erreur de connexion" -#: cps/admin.py:1044 cps/updater.py:323 cps/updater.py:526 +#: cps/admin.py:1060 cps/updater.py:323 cps/updater.py:526 msgid "Timeout while establishing connection" msgstr "Délai d'attente dépassé lors de l'établissement de connexion" -#: cps/admin.py:1045 cps/updater.py:325 cps/updater.py:528 +#: cps/admin.py:1061 cps/updater.py:325 cps/updater.py:528 msgid "General error" msgstr "Erreur générale" -#: cps/admin.py:1046 +#: cps/admin.py:1062 msgid "Update File Could Not be Saved in Temp Dir" msgstr "Le fichier de mise à jour ne peut pas être sauvegardé dans le répertoire temporaire" @@ -315,8 +321,8 @@ msgstr "Le format du livre a été supprimé avec succès" msgid "Book Successfully Deleted" msgstr "Le livre a été supprimé avec succès" -#: cps/editbooks.py:254 cps/editbooks.py:548 cps/web.py:1644 cps/web.py:1685 -#: cps/web.py:1747 +#: cps/editbooks.py:254 cps/editbooks.py:549 cps/web.py:1641 cps/web.py:1682 +#: cps/web.py:1744 msgid "Error opening eBook. File does not exist or file is not accessible" msgstr "Erreur à l’ouverture du livre. Le fichier n’existe pas ou n’est pas accessible" @@ -324,82 +330,82 @@ msgstr "Erreur à l’ouverture du livre. Le fichier n’existe pas ou n’est p msgid "edit metadata" msgstr "modifier les métadonnées" -#: cps/editbooks.py:361 +#: cps/editbooks.py:360 #, python-format msgid "%(langname)s is not a valid language" msgstr "%(langname)s n'est pas une langue valide" -#: cps/editbooks.py:467 cps/editbooks.py:712 +#: cps/editbooks.py:468 cps/editbooks.py:715 #, python-format msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgstr "L’extension de fichier '%(ext)s' n’est pas autorisée pour être déposée sur ce serveur" -#: cps/editbooks.py:471 cps/editbooks.py:716 +#: cps/editbooks.py:472 cps/editbooks.py:719 msgid "File to be uploaded must have an extension" msgstr "Pour être déposé le fichier doit avoir une extension" -#: cps/editbooks.py:483 cps/editbooks.py:773 +#: cps/editbooks.py:484 cps/editbooks.py:779 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "Impossible de créer le chemin %(path)s (Permission refusée)." -#: cps/editbooks.py:488 +#: cps/editbooks.py:489 #, python-format msgid "Failed to store file %(file)s." msgstr "Échec de la sauvegarde du fichier %(file)s." -#: cps/editbooks.py:506 cps/editbooks.py:864 +#: cps/editbooks.py:507 cps/editbooks.py:870 #, python-format msgid "Database error: %(error)s." msgstr "Erreur de la base de données: %(error)s." -#: cps/editbooks.py:510 +#: cps/editbooks.py:511 #, python-format msgid "File format %(ext)s added to %(book)s" msgstr "Le format de fichier %(ext)s a été ajouté à %(book)s" -#: cps/editbooks.py:653 +#: cps/editbooks.py:656 msgid "Metadata successfully updated" msgstr "Les métadonnées ont bien été mises à jour" -#: cps/editbooks.py:662 +#: cps/editbooks.py:665 msgid "Error editing book, please check logfile for details" msgstr "Erreur d’édition du livre, veuillez consulter le journal (log) pour plus de détails" -#: cps/editbooks.py:724 +#: cps/editbooks.py:727 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "Le fichier %(filename)s ne peut pas être sauvegardé dans le répertoire temporaire" -#: cps/editbooks.py:734 +#: cps/editbooks.py:737 msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgstr "Le fichier téléchargé existe probablement dans la librairie, veuillez le modifier avant de le télécharger de nouveau: " -#: cps/editbooks.py:780 +#: cps/editbooks.py:786 #, python-format msgid "Failed to Move File %(file)s: %(error)s" msgstr "Impossible de déplacer le fichier %(file)s: %(error)s" -#: cps/editbooks.py:836 +#: cps/editbooks.py:842 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "Impossible de déplacer le fichier de couverture %(file)s: %(error)s" -#: cps/editbooks.py:850 +#: cps/editbooks.py:856 #, python-format msgid "File %(file)s uploaded" msgstr "Le fichier %(file)s a été téléchargé" -#: cps/editbooks.py:876 +#: cps/editbooks.py:882 msgid "Source or destination format for conversion missing" msgstr "Le format de conversion de la source ou de la destination est manquant" -#: cps/editbooks.py:884 +#: cps/editbooks.py:890 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "Le livre a été mis avec succès en file de traitement pour conversion vers %(book_format)s" -#: cps/editbooks.py:888 +#: cps/editbooks.py:894 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "Une erreur est survenue au cours de la conversion du livre : %(res)s" @@ -513,71 +519,71 @@ msgstr "Le fichier %(file)s n'a pas été trouvé dans Google Drive" msgid "Book path %(path)s not found on Google Drive" msgstr "Le chemin du livre %(path)s n'a pas été trouvé dans Google Drive" -#: cps/helper.py:542 +#: cps/helper.py:550 msgid "Error Downloading Cover" msgstr "Erreur lors du téléchargement de la couverture" -#: cps/helper.py:545 +#: cps/helper.py:553 msgid "Cover Format Error" msgstr "Erreur de format de couverture" -#: cps/helper.py:561 +#: cps/helper.py:569 msgid "Failed to create path for cover" msgstr "Impossible de créer le chemin pour la couverture" -#: cps/helper.py:566 +#: cps/helper.py:574 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "Le fichier couverture n'est pas un fichier image valide, ou ne peut pas être stocké" -#: cps/helper.py:577 +#: cps/helper.py:585 msgid "Only jpg/jpeg/png/webp files are supported as coverfile" msgstr "Seuls les fichiers jpg/jpeg/png/webp sont supportés comme fichier de couverture" -#: cps/helper.py:591 +#: cps/helper.py:599 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "Seuls les fichiers jpg/jpeg sont supportés comme fichier de couverture" -#: cps/helper.py:640 +#: cps/helper.py:648 msgid "Unrar binary file not found" msgstr "Fichier binaire Unrar non trouvé" -#: cps/helper.py:654 +#: cps/helper.py:662 msgid "Error excecuting UnRar" msgstr "Une erreur est survenue lors de l'exécution d'UnRar" -#: cps/helper.py:710 +#: cps/helper.py:718 msgid "Waiting" msgstr "En attente" -#: cps/helper.py:712 +#: cps/helper.py:720 msgid "Failed" msgstr "Echoué" -#: cps/helper.py:714 +#: cps/helper.py:722 msgid "Started" msgstr "Débuté" -#: cps/helper.py:716 +#: cps/helper.py:724 msgid "Finished" msgstr "Terminé" -#: cps/helper.py:718 +#: cps/helper.py:726 msgid "Unknown Status" msgstr "Statut inconnu" -#: cps/helper.py:723 +#: cps/helper.py:731 msgid "E-mail: " msgstr "Courriel : " -#: cps/helper.py:725 cps/helper.py:729 +#: cps/helper.py:733 cps/helper.py:737 msgid "Convert: " msgstr "Convertir vers : " -#: cps/helper.py:727 +#: cps/helper.py:735 msgid "Upload: " msgstr "Téléverser : " -#: cps/helper.py:731 +#: cps/helper.py:739 msgid "Unknown Task: " msgstr "Tâche inconnue : " @@ -610,7 +616,7 @@ msgstr "Échec de la connexion avec Google." msgid "Failed to fetch user info from Google." msgstr "Impossible d’obtenir les informations d’utilisateur avec Google." -#: cps/oauth_bb.py:225 cps/web.py:1397 cps/web.py:1537 +#: cps/oauth_bb.py:225 cps/web.py:1394 cps/web.py:1534 #, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "vous êtes maintenant connecté comme : '%(nickname)s'" @@ -647,218 +653,218 @@ msgstr "Erreur Oauth GitHub, veuillez réessayer plus tard." msgid "Google Oauth error, please retry later." msgstr "Erreur Oauth Google, veuillez réessayer plus tard." -#: cps/shelf.py:66 cps/shelf.py:111 +#: cps/shelf.py:67 cps/shelf.py:120 msgid "Invalid shelf specified" msgstr "L’étagère indiquée est invalide" -#: cps/shelf.py:72 +#: cps/shelf.py:73 #, python-format msgid "Sorry you are not allowed to add a book to the the shelf: %(shelfname)s" msgstr "Désolé, vous n’êtes pas autorisé à ajouter un livre dans l’étagère: %(shelfname)s" -#: cps/shelf.py:82 +#: cps/shelf.py:83 #, python-format msgid "Book is already part of the shelf: %(shelfname)s" msgstr "Ce livre est déjà sur l’étagère : %(shelfname)s" -#: cps/shelf.py:97 +#: cps/shelf.py:106 #, python-format msgid "Book has been added to shelf: %(sname)s" msgstr "Le livre a bien été ajouté à l'étagère : %(sname)s" -#: cps/shelf.py:115 +#: cps/shelf.py:124 #, python-format msgid "You are not allowed to add a book to the the shelf: %(name)s" msgstr "Vous n’êtes pas autorisé à ajouter un livre dans l’étagère : %(name)s" -#: cps/shelf.py:133 +#: cps/shelf.py:142 #, python-format msgid "Books are already part of the shelf: %(name)s" msgstr "Ces livres sont déjà sur l’étagère : %(name)s" -#: cps/shelf.py:148 +#: cps/shelf.py:158 #, python-format msgid "Books have been added to shelf: %(sname)s" msgstr "Les livres ont été ajoutés à l’étagère : %(sname)s" -#: cps/shelf.py:150 +#: cps/shelf.py:163 #, python-format msgid "Could not add books to shelf: %(sname)s" msgstr "Impossible d’ajouter les livres à l’étagère : %(sname)s" -#: cps/shelf.py:188 +#: cps/shelf.py:208 #, python-format msgid "Book has been removed from shelf: %(sname)s" msgstr "Le livre a été supprimé de l'étagère %(sname)s" -#: cps/shelf.py:196 +#: cps/shelf.py:216 #, python-format msgid "Sorry you are not allowed to remove a book from this shelf: %(sname)s" msgstr "Désolé, vous n’êtes pas autorisé à enlever un livre de cette étagère : %(sname)s" -#: cps/shelf.py:220 cps/shelf.py:260 +#: cps/shelf.py:240 cps/shelf.py:284 #, python-format msgid "A public shelf with the name '%(title)s' already exists." msgstr "Une étagère publique avec le nom '%(title)s' existe déjà." -#: cps/shelf.py:229 cps/shelf.py:270 +#: cps/shelf.py:249 cps/shelf.py:294 #, python-format msgid "A private shelf with the name '%(title)s' already exists." msgstr "Une étagère privée avec le nom '%(title)s' existe déjà." -#: cps/shelf.py:236 +#: cps/shelf.py:256 #, python-format msgid "Shelf %(title)s created" msgstr "Étagère %(title)s créée" -#: cps/shelf.py:239 cps/shelf.py:284 +#: cps/shelf.py:263 cps/shelf.py:312 msgid "There was an error" msgstr "Il y a eu une erreur" -#: cps/shelf.py:240 cps/shelf.py:242 cps/templates/layout.html:144 +#: cps/shelf.py:264 cps/shelf.py:266 cps/templates/layout.html:144 msgid "Create a Shelf" msgstr "Créer une étagère" -#: cps/shelf.py:282 +#: cps/shelf.py:306 #, python-format msgid "Shelf %(title)s changed" msgstr "L’étagère %(title)s a été modifiée" -#: cps/shelf.py:285 cps/shelf.py:287 +#: cps/shelf.py:313 cps/shelf.py:315 msgid "Edit a shelf" msgstr "Modifier une étagère" -#: cps/shelf.py:332 +#: cps/shelf.py:369 #, python-format msgid "Shelf: '%(name)s'" msgstr "Étagère : '%(name)s'" -#: cps/shelf.py:335 +#: cps/shelf.py:372 msgid "Error opening shelf. Shelf does not exist or is not accessible" msgstr "Erreur à l’ouverture de l’étagère. Elle n’existe plus ou n’est plus accessible" -#: cps/shelf.py:368 +#: cps/shelf.py:409 msgid "Hidden Book" msgstr "Livre caché" -#: cps/shelf.py:373 +#: cps/shelf.py:414 #, python-format msgid "Change order of Shelf: '%(name)s'" msgstr "Modifier l’arrangement de l’étagère : ‘%(name)s’" -#: cps/ub.py:64 +#: cps/ub.py:65 msgid "Recently Added" msgstr "Ajouts récents" -#: cps/ub.py:66 +#: cps/ub.py:67 msgid "Show recent books" msgstr "Afficher les livres récents" -#: cps/templates/index.xml:17 cps/ub.py:67 +#: cps/templates/index.xml:17 cps/ub.py:68 msgid "Hot Books" msgstr "Livres populaires" -#: cps/ub.py:69 +#: cps/ub.py:70 msgid "Show Hot Books" msgstr "Montrer les livres populaires" -#: cps/templates/index.xml:24 cps/ub.py:71 cps/web.py:655 +#: cps/templates/index.xml:24 cps/ub.py:72 cps/web.py:652 msgid "Top Rated Books" msgstr "Livres les mieux notés" -#: cps/ub.py:73 +#: cps/ub.py:74 msgid "Show Top Rated Books" msgstr "Montrer les livres les mieux notés" -#: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:74 -#: cps/web.py:1222 +#: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:75 +#: cps/web.py:1219 msgid "Read Books" msgstr "Livres lus" -#: cps/ub.py:76 +#: cps/ub.py:77 msgid "Show read and unread" msgstr "Montrer lus et non-lus" -#: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:78 -#: cps/web.py:1225 +#: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:79 +#: cps/web.py:1222 msgid "Unread Books" msgstr "Livres non-lus" -#: cps/ub.py:80 +#: cps/ub.py:81 msgid "Show unread" msgstr "Afficher non-lus" -#: cps/ub.py:81 +#: cps/ub.py:82 msgid "Discover" msgstr "Découvrir" -#: cps/ub.py:83 +#: cps/ub.py:84 msgid "Show random books" msgstr "Montrer des livres au hasard" -#: cps/templates/index.xml:75 cps/ub.py:84 cps/web.py:970 +#: cps/templates/index.xml:75 cps/ub.py:85 cps/web.py:967 msgid "Categories" msgstr "Catégories" -#: cps/ub.py:86 +#: cps/ub.py:87 msgid "Show category selection" msgstr "Montrer la sélection par catégories" #: cps/templates/book_edit.html:84 cps/templates/index.xml:82 -#: cps/templates/search_form.html:53 cps/ub.py:87 cps/web.py:886 cps/web.py:896 +#: cps/templates/search_form.html:53 cps/ub.py:88 cps/web.py:883 cps/web.py:893 msgid "Series" msgstr "Séries" -#: cps/ub.py:89 +#: cps/ub.py:90 msgid "Show series selection" msgstr "Montrer la sélection par séries" -#: cps/templates/index.xml:61 cps/ub.py:90 +#: cps/templates/index.xml:61 cps/ub.py:91 msgid "Authors" msgstr "Auteurs" -#: cps/ub.py:92 +#: cps/ub.py:93 msgid "Show author selection" msgstr "Montrer la sélection par auteur" -#: cps/templates/index.xml:68 cps/ub.py:94 cps/web.py:869 +#: cps/templates/index.xml:68 cps/ub.py:95 cps/web.py:866 msgid "Publishers" msgstr "Éditeurs" -#: cps/ub.py:96 +#: cps/ub.py:97 msgid "Show publisher selection" msgstr "Montrer la sélection par éditeur" -#: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:97 -#: cps/web.py:953 +#: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:98 +#: cps/web.py:950 msgid "Languages" msgstr "Langues" -#: cps/ub.py:100 +#: cps/ub.py:101 msgid "Show language selection" msgstr "Montrer la sélection par langue" -#: cps/templates/index.xml:96 cps/ub.py:101 +#: cps/templates/index.xml:96 cps/ub.py:102 msgid "Ratings" msgstr "Notes" -#: cps/ub.py:103 +#: cps/ub.py:104 msgid "Show ratings selection" msgstr "Afficher la sélection des évaluations" -#: cps/templates/index.xml:104 cps/ub.py:104 +#: cps/templates/index.xml:104 cps/ub.py:105 msgid "File formats" msgstr "Formats de fichier" -#: cps/ub.py:106 +#: cps/ub.py:107 msgid "Show file formats selection" msgstr "Afficher la sélection des formats de fichiers" -#: cps/ub.py:108 cps/web.py:1249 +#: cps/ub.py:109 cps/web.py:1246 msgid "Archived Books" msgstr "Livres archivés" -#: cps/ub.py:110 +#: cps/ub.py:111 msgid "Show archived books" msgstr "Afficher les livres archivés" @@ -891,220 +897,220 @@ msgstr "Une nouvelle mise à jour est disponible. Cliquez sur le bouton ci-desso msgid "Click on the button below to update to the latest stable version." msgstr "Téléchargez la dernière version en cliquant sur le bouton ci-dessous." -#: cps/web.py:322 +#: cps/web.py:319 #, python-format msgid "Error: %(ldaperror)s" msgstr "Erreur : %(ldaperror)s" -#: cps/web.py:326 +#: cps/web.py:323 msgid "Error: No user returned in response of LDAP server" msgstr "Erreur : Aucun utilisateur renvoyé dans la réponse LDAP du serveur" -#: cps/web.py:374 +#: cps/web.py:371 msgid "Failed to Create at Least One LDAP User" msgstr "Impossible de créer au moins un utilisateur LDAP" -#: cps/web.py:377 +#: cps/web.py:374 msgid "At Least One LDAP User Not Found in Database" msgstr "Au moins un utilisateur LDAP n'a pas été trouvé dans la base de données" -#: cps/web.py:379 +#: cps/web.py:376 msgid "User Successfully Imported" msgstr "L'utilisateur a été importé avec succès" -#: cps/web.py:625 +#: cps/web.py:622 msgid "Recently Added Books" msgstr "Ajouts récents de livres" -#: cps/templates/index.html:5 cps/web.py:663 +#: cps/templates/index.html:5 cps/web.py:660 msgid "Discover (Random Books)" msgstr "Découvrir (Livres au hasard)" -#: cps/web.py:691 +#: cps/web.py:688 msgid "Books" msgstr "Livres" -#: cps/web.py:718 +#: cps/web.py:715 msgid "Hot Books (Most Downloaded)" msgstr "Livres populaires (les plus téléchargés)" -#: cps/web.py:731 +#: cps/web.py:728 msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible" msgstr "Erreur d'ouverture du livre numérique. Le fichier n'existe pas ou n'est pas accessible" -#: cps/web.py:745 +#: cps/web.py:742 #, python-format msgid "Author: %(name)s" msgstr "Auteur : %(name)s" -#: cps/web.py:759 +#: cps/web.py:756 #, python-format msgid "Publisher: %(name)s" msgstr "Éditeur : '%(name)s'" -#: cps/web.py:772 +#: cps/web.py:769 #, python-format msgid "Series: %(serie)s" msgstr "Séries : %(serie)s" -#: cps/web.py:785 +#: cps/web.py:782 #, python-format msgid "Rating: %(rating)s stars" msgstr "Évaluation : %(rating)s étoiles" -#: cps/web.py:798 +#: cps/web.py:795 #, python-format msgid "File format: %(format)s" msgstr "Format de fichier : %(format)s" -#: cps/web.py:812 +#: cps/web.py:809 #, python-format msgid "Category: %(name)s" msgstr "Catégorie : %(name)s" -#: cps/web.py:831 +#: cps/web.py:828 #, python-format msgid "Language: %(name)s" msgstr "Langue : %(name)s" -#: cps/web.py:910 +#: cps/web.py:907 msgid "Ratings list" msgstr "Liste des évaluations" -#: cps/web.py:925 +#: cps/web.py:922 msgid "File formats list" msgstr "Liste de formats de fichiers" -#: cps/templates/layout.html:74 cps/templates/tasks.html:7 cps/web.py:984 +#: cps/templates/layout.html:74 cps/templates/tasks.html:7 cps/web.py:981 msgid "Tasks" msgstr "Tâches" #: cps/templates/book_edit.html:235 cps/templates/feed.xml:33 #: cps/templates/layout.html:45 cps/templates/layout.html:48 -#: cps/templates/search_form.html:174 cps/web.py:1010 cps/web.py:1015 +#: cps/templates/search_form.html:174 cps/web.py:1007 cps/web.py:1012 msgid "Search" msgstr "Chercher" -#: cps/web.py:1066 +#: cps/web.py:1063 msgid "Published after " msgstr "Publié après le " -#: cps/web.py:1073 +#: cps/web.py:1070 msgid "Published before " msgstr "Publié avant le " -#: cps/web.py:1087 +#: cps/web.py:1084 #, python-format msgid "Rating <= %(rating)s" msgstr "Évaluation <= %(rating)s" -#: cps/web.py:1089 +#: cps/web.py:1086 #, python-format msgid "Rating >= %(rating)s" msgstr "Évaluation >= %(rating)s" -#: cps/web.py:1158 cps/web.py:1183 +#: cps/web.py:1155 cps/web.py:1180 msgid "search" msgstr "recherche" -#: cps/web.py:1213 +#: cps/web.py:1210 #, python-format msgid "Custom Column No.%(column)d is not existing in calibre database" msgstr "La colonne personnalisée No.%(column)d n'existe pas dans la base de données calibre" -#: cps/web.py:1304 +#: cps/web.py:1301 #, python-format msgid "Book successfully queued for sending to %(kindlemail)s" msgstr "Le livre a été mis en file de traitement avec succès pour un envoi vers %(kindlemail)s" -#: cps/web.py:1308 +#: cps/web.py:1305 #, python-format msgid "Oops! There was an error sending this book: %(res)s" msgstr "Il y a eu une erreur en envoyant ce livre : %(res)s" -#: cps/web.py:1310 +#: cps/web.py:1307 msgid "Please update your profile with a valid Send to Kindle E-mail Address." msgstr "Veuillez mettre à jour votre profil avec une adresse de courriel Kindle valide." -#: cps/web.py:1327 +#: cps/web.py:1324 msgid "E-Mail server is not configured, please contact your administrator!" msgstr "Le serveur de courriel n'est pas configuré, veuillez contacter votre administrateur!" -#: cps/web.py:1328 cps/web.py:1338 cps/web.py:1362 cps/web.py:1366 -#: cps/web.py:1371 cps/web.py:1375 +#: cps/web.py:1325 cps/web.py:1335 cps/web.py:1359 cps/web.py:1363 +#: cps/web.py:1368 cps/web.py:1372 msgid "register" msgstr "s’enregistrer" -#: cps/web.py:1364 +#: cps/web.py:1361 msgid "Your e-mail is not allowed to register" msgstr "Votre adresse de courriel n’est pas autorisé pour une inscription" -#: cps/web.py:1367 +#: cps/web.py:1364 msgid "Confirmation e-mail was send to your e-mail account." msgstr "Le courriel de confirmation a été envoyé à votre adresse." -#: cps/web.py:1370 +#: cps/web.py:1367 msgid "This username or e-mail address is already in use." msgstr "Ce nom d’utilisateur ou cette adresse de courriel sont déjà utilisés." -#: cps/web.py:1387 +#: cps/web.py:1384 msgid "Cannot activate LDAP authentication" msgstr "Impossible d’activer l’authentification LDAP" -#: cps/web.py:1404 +#: cps/web.py:1401 #, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgstr "Connexion de secours comme: '%(nickname)s', le serveur LDAP est indisponible, ou l'utilisateur est inconnu" -#: cps/web.py:1410 +#: cps/web.py:1407 #, python-format msgid "Could not login: %(message)s" msgstr "Impossible de se connecter: %(message)s" -#: cps/web.py:1414 cps/web.py:1438 +#: cps/web.py:1411 cps/web.py:1435 msgid "Wrong Username or Password" msgstr "Mauvais nom d'utilisateur ou mot de passe" -#: cps/web.py:1421 +#: cps/web.py:1418 msgid "New Password was send to your email address" msgstr "Le nouveau mot de passe a été envoyé vers votre adresse de courriel" -#: cps/web.py:1427 +#: cps/web.py:1424 msgid "Please enter valid username to reset password" msgstr "Veuillez entrer un nom d'utilisateur valide pour réinitialiser le mot de passe" -#: cps/web.py:1433 +#: cps/web.py:1430 #, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "Vous êtes maintenant connecté en tant que : ‘%(nickname)s’" -#: cps/web.py:1442 cps/web.py:1469 +#: cps/web.py:1439 cps/web.py:1466 msgid "login" msgstr "connexion" -#: cps/web.py:1481 cps/web.py:1515 +#: cps/web.py:1478 cps/web.py:1512 msgid "Token not found" msgstr "Jeton non trouvé" -#: cps/web.py:1490 cps/web.py:1523 +#: cps/web.py:1487 cps/web.py:1520 msgid "Token has expired" msgstr "Jeton expiré" -#: cps/web.py:1499 +#: cps/web.py:1496 msgid "Success! Please return to your device" msgstr "Réussite! Merci de vous tourner vers votre appareil" -#: cps/web.py:1580 cps/web.py:1625 cps/web.py:1631 +#: cps/web.py:1577 cps/web.py:1622 cps/web.py:1628 #, python-format msgid "%(name)s's profile" msgstr "Profil de %(name)s" -#: cps/web.py:1627 +#: cps/web.py:1624 msgid "Profile updated" msgstr "Profil mis à jour" -#: cps/web.py:1656 cps/web.py:1659 cps/web.py:1662 cps/web.py:1669 -#: cps/web.py:1674 +#: cps/web.py:1653 cps/web.py:1656 cps/web.py:1659 cps/web.py:1666 +#: cps/web.py:1671 msgid "Read a Book" msgstr "Lire un livre" diff --git a/cps/translations/hu/LC_MESSAGES/messages.mo b/cps/translations/hu/LC_MESSAGES/messages.mo index 88958bc3..99031abe 100644 Binary files a/cps/translations/hu/LC_MESSAGES/messages.mo and b/cps/translations/hu/LC_MESSAGES/messages.mo differ diff --git a/cps/translations/hu/LC_MESSAGES/messages.po b/cps/translations/hu/LC_MESSAGES/messages.po index a12df9d3..0b0f71b4 100644 --- a/cps/translations/hu/LC_MESSAGES/messages.po +++ b/cps/translations/hu/LC_MESSAGES/messages.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PROJECT VERSION\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2020-06-07 06:47+0200\n" +"POT-Creation-Date: 2020-06-28 09:31+0200\n" "PO-Revision-Date: 2019-04-06 23:36+0200\n" "Last-Translator: \n" "Language: hu\n" @@ -46,9 +46,9 @@ msgstr "" msgid "Unknown command" msgstr "" -#: cps/admin.py:116 cps/editbooks.py:563 cps/editbooks.py:573 -#: cps/editbooks.py:667 cps/editbooks.py:669 cps/editbooks.py:730 -#: cps/editbooks.py:743 cps/updater.py:509 cps/uploader.py:97 +#: cps/admin.py:116 cps/editbooks.py:564 cps/editbooks.py:576 +#: cps/editbooks.py:670 cps/editbooks.py:672 cps/editbooks.py:733 +#: cps/editbooks.py:749 cps/updater.py:509 cps/uploader.py:97 #: cps/uploader.py:107 msgid "Unknown" msgstr "Ismeretlen" @@ -61,7 +61,7 @@ msgstr "Rendszergazda oldala" msgid "UI Configuration" msgstr "Felhasználói felület beállításai" -#: cps/admin.py:189 cps/admin.py:706 +#: cps/admin.py:189 cps/admin.py:711 msgid "Calibre-Web configuration updated" msgstr "A Calibre-Web konfigurációja frissítve." @@ -113,175 +113,181 @@ msgstr "" msgid "LDAP Certificate Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:627 +#: cps/admin.py:628 msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:631 +#: cps/admin.py:632 msgid "Certfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:701 +#: cps/admin.py:694 cps/admin.py:793 cps/admin.py:885 cps/admin.py:934 +#: cps/shelf.py:100 cps/shelf.py:161 cps/shelf.py:202 cps/shelf.py:260 +#: cps/shelf.py:309 cps/shelf.py:338 cps/shelf.py:368 cps/shelf.py:392 +msgid "Settings DB is not Writeable" +msgstr "" + +#: cps/admin.py:706 msgid "DB Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:703 +#: cps/admin.py:708 msgid "DB is not Writeable" msgstr "" -#: cps/admin.py:736 +#: cps/admin.py:741 msgid "Basic Configuration" msgstr "Alapvető beállítások" -#: cps/admin.py:751 cps/web.py:1337 +#: cps/admin.py:756 cps/web.py:1334 msgid "Please fill out all fields!" msgstr "Az összes mezőt ki kell tölteni!" -#: cps/admin.py:754 cps/admin.py:766 cps/admin.py:772 cps/admin.py:892 +#: cps/admin.py:759 cps/admin.py:771 cps/admin.py:777 cps/admin.py:903 msgid "Add new user" msgstr "Új felhasználó hozzáadása" -#: cps/admin.py:763 cps/web.py:1578 +#: cps/admin.py:768 cps/web.py:1575 msgid "E-mail is not from valid domain" msgstr "Az e-mail tartománya nem érvényes." -#: cps/admin.py:770 cps/admin.py:785 +#: cps/admin.py:775 cps/admin.py:790 msgid "Found an existing account for this e-mail address or nickname." msgstr "Már létezik felhasználó ehhez az e-mail címhez vagy felhasználói névhez." -#: cps/admin.py:781 +#: cps/admin.py:786 #, python-format msgid "User '%(user)s' created" msgstr "A következő felhasználó létrehozva: %(user)s" -#: cps/admin.py:794 +#: cps/admin.py:802 #, python-format msgid "User '%(nick)s' deleted" msgstr "A felhasználó törölve: %(nick)s" -#: cps/admin.py:797 +#: cps/admin.py:805 msgid "No admin user remaining, can't delete user" msgstr "" -#: cps/admin.py:803 +#: cps/admin.py:811 msgid "No admin user remaining, can't remove admin role" msgstr "" -#: cps/admin.py:839 cps/web.py:1621 +#: cps/admin.py:847 cps/web.py:1618 msgid "Found an existing account for this e-mail address." msgstr "Már létezik felhasználó ehhez az e-mail címhez." -#: cps/admin.py:849 cps/admin.py:864 cps/admin.py:967 cps/web.py:1596 +#: cps/admin.py:857 cps/admin.py:872 cps/admin.py:983 cps/web.py:1593 #, python-format msgid "Edit User %(nick)s" msgstr " A felhasználó szerkesztése: %(nick)s" -#: cps/admin.py:855 cps/web.py:1588 +#: cps/admin.py:863 cps/web.py:1585 msgid "This username is already taken" msgstr "" -#: cps/admin.py:871 +#: cps/admin.py:879 #, python-format msgid "User '%(nick)s' updated" msgstr "A felhasználó frissítve: %(nick)s" -#: cps/admin.py:874 +#: cps/admin.py:882 msgid "An unknown error occured." msgstr "Ismeretlen hiba történt." -#: cps/admin.py:901 cps/templates/admin.html:71 +#: cps/admin.py:912 cps/templates/admin.html:71 msgid "Edit E-mail Server Settings" msgstr "SMTP beállítások változtatása" -#: cps/admin.py:925 +#: cps/admin.py:941 #, python-format msgid "Test e-mail successfully send to %(kindlemail)s" msgstr "A teszt levél sikeresen elküldve ide: %(kindlemail)s" -#: cps/admin.py:928 +#: cps/admin.py:944 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "Hiba történt a teszt levél küldése során: %(res)s" -#: cps/admin.py:930 +#: cps/admin.py:946 msgid "Please configure your e-mail address first..." msgstr "" -#: cps/admin.py:932 +#: cps/admin.py:948 msgid "E-mail server settings updated" msgstr "Az e-mail kiszolgáló beállításai frissítve." -#: cps/admin.py:943 +#: cps/admin.py:959 msgid "User not found" msgstr "" -#: cps/admin.py:978 +#: cps/admin.py:994 #, python-format msgid "Password for user %(user)s reset" msgstr "A(z) %(user)s felhasználó jelszavának alaphelyzetbe állítása" -#: cps/admin.py:981 cps/web.py:1361 cps/web.py:1425 +#: cps/admin.py:997 cps/web.py:1358 cps/web.py:1422 msgid "An unknown error occurred. Please try again later." msgstr "Ismeretlen hiba történt. Próbáld újra később!" -#: cps/admin.py:984 cps/web.py:1299 +#: cps/admin.py:1000 cps/web.py:1296 msgid "Please configure the SMTP mail settings first..." msgstr "Először be kell állítani az SMTP levelező beállításokat..." -#: cps/admin.py:996 +#: cps/admin.py:1012 msgid "Logfile viewer" msgstr "" -#: cps/admin.py:1035 +#: cps/admin.py:1051 msgid "Requesting update package" msgstr "Frissítési csomag kérése" -#: cps/admin.py:1036 +#: cps/admin.py:1052 msgid "Downloading update package" msgstr "Frissítési csomag letöltése" -#: cps/admin.py:1037 +#: cps/admin.py:1053 msgid "Unzipping update package" msgstr "Frissítési csomag kitömörítése" -#: cps/admin.py:1038 +#: cps/admin.py:1054 msgid "Replacing files" msgstr "Fájlok cserélése" -#: cps/admin.py:1039 +#: cps/admin.py:1055 msgid "Database connections are closed" msgstr "Adatbázis kapcsolatok lezárva" -#: cps/admin.py:1040 +#: cps/admin.py:1056 msgid "Stopping server" msgstr "Szerver leállítása" -#: cps/admin.py:1041 +#: cps/admin.py:1057 msgid "Update finished, please press okay and reload page" msgstr "A frissítés települt, kattints az OK-ra és újra tölt az oldal" -#: cps/admin.py:1042 cps/admin.py:1043 cps/admin.py:1044 cps/admin.py:1045 -#: cps/admin.py:1046 +#: cps/admin.py:1058 cps/admin.py:1059 cps/admin.py:1060 cps/admin.py:1061 +#: cps/admin.py:1062 msgid "Update failed:" msgstr "A frissítés nem sikerült:" -#: cps/admin.py:1042 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522 +#: cps/admin.py:1058 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522 msgid "HTTP Error" msgstr "HTTP hiba" -#: cps/admin.py:1043 cps/updater.py:321 cps/updater.py:524 +#: cps/admin.py:1059 cps/updater.py:321 cps/updater.py:524 msgid "Connection error" msgstr "Kapcsolódási hiba" -#: cps/admin.py:1044 cps/updater.py:323 cps/updater.py:526 +#: cps/admin.py:1060 cps/updater.py:323 cps/updater.py:526 msgid "Timeout while establishing connection" msgstr "Időtúllépés a kapcsolódás során" -#: cps/admin.py:1045 cps/updater.py:325 cps/updater.py:528 +#: cps/admin.py:1061 cps/updater.py:325 cps/updater.py:528 msgid "General error" msgstr "Általános hiba" -#: cps/admin.py:1046 +#: cps/admin.py:1062 msgid "Update File Could Not be Saved in Temp Dir" msgstr "" @@ -301,8 +307,8 @@ msgstr "" msgid "Book Successfully Deleted" msgstr "" -#: cps/editbooks.py:254 cps/editbooks.py:548 cps/web.py:1644 cps/web.py:1685 -#: cps/web.py:1747 +#: cps/editbooks.py:254 cps/editbooks.py:549 cps/web.py:1641 cps/web.py:1682 +#: cps/web.py:1744 msgid "Error opening eBook. File does not exist or file is not accessible" msgstr "Hiba az ekönyv megnyitásakor. A fájl nem létezik vagy nem elérhető." @@ -310,82 +316,82 @@ msgstr "Hiba az ekönyv megnyitásakor. A fájl nem létezik vagy nem elérhető msgid "edit metadata" msgstr "Metaadatok szerkesztése" -#: cps/editbooks.py:361 +#: cps/editbooks.py:360 #, python-format msgid "%(langname)s is not a valid language" msgstr "A(z) %(langname)s nem érvényes nyelv" -#: cps/editbooks.py:467 cps/editbooks.py:712 +#: cps/editbooks.py:468 cps/editbooks.py:715 #, python-format msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgstr "A(z) \"%(ext)s\" kiterjesztésű fájlok feltöltése nincs engedélyezve ezen a szerveren." -#: cps/editbooks.py:471 cps/editbooks.py:716 +#: cps/editbooks.py:472 cps/editbooks.py:719 msgid "File to be uploaded must have an extension" msgstr "A feltöltendő fájlnak kiterjesztéssel kell rendelkeznie!" -#: cps/editbooks.py:483 cps/editbooks.py:773 +#: cps/editbooks.py:484 cps/editbooks.py:779 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "Nem sikerült létrehozni az elérési utat (engedély megtagadva): %(path)s." -#: cps/editbooks.py:488 +#: cps/editbooks.py:489 #, python-format msgid "Failed to store file %(file)s." msgstr "Nem sikerült elmenteni a %(file)s fájlt." -#: cps/editbooks.py:506 cps/editbooks.py:864 +#: cps/editbooks.py:507 cps/editbooks.py:870 #, python-format msgid "Database error: %(error)s." msgstr "" -#: cps/editbooks.py:510 +#: cps/editbooks.py:511 #, python-format msgid "File format %(ext)s added to %(book)s" msgstr "A(z) %(ext)s fájlformátum hozzáadva a könyvhez: %(book)s." -#: cps/editbooks.py:653 +#: cps/editbooks.py:656 msgid "Metadata successfully updated" msgstr "A metaadatok sikeresen frissültek" -#: cps/editbooks.py:662 +#: cps/editbooks.py:665 msgid "Error editing book, please check logfile for details" msgstr "Hiba a könyv szerkesztése során, további részletek a naplófájlban." -#: cps/editbooks.py:724 +#: cps/editbooks.py:727 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "" -#: cps/editbooks.py:734 +#: cps/editbooks.py:737 msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgstr "" -#: cps/editbooks.py:780 +#: cps/editbooks.py:786 #, python-format msgid "Failed to Move File %(file)s: %(error)s" msgstr "" -#: cps/editbooks.py:836 +#: cps/editbooks.py:842 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "" -#: cps/editbooks.py:850 +#: cps/editbooks.py:856 #, python-format msgid "File %(file)s uploaded" msgstr "" -#: cps/editbooks.py:876 +#: cps/editbooks.py:882 msgid "Source or destination format for conversion missing" msgstr "Az átalakításhoz hiányzik a forrás- vagy a célformátum!" -#: cps/editbooks.py:884 +#: cps/editbooks.py:890 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "A könyv sikeresen átalakításra lett jelölve a következő formátumra: %(book_format)s" -#: cps/editbooks.py:888 +#: cps/editbooks.py:894 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "Hiba történt a könyv átalakításakor: %(res)s" @@ -499,71 +505,71 @@ msgstr "A \"%(file)s\" fájl nem található a Google Drive-on" msgid "Book path %(path)s not found on Google Drive" msgstr "A könyv elérési útja (\"%(path)s\") nem található a Google Drive-on" -#: cps/helper.py:542 +#: cps/helper.py:550 msgid "Error Downloading Cover" msgstr "" -#: cps/helper.py:545 +#: cps/helper.py:553 msgid "Cover Format Error" msgstr "" -#: cps/helper.py:561 +#: cps/helper.py:569 msgid "Failed to create path for cover" msgstr "" -#: cps/helper.py:566 +#: cps/helper.py:574 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "" -#: cps/helper.py:577 +#: cps/helper.py:585 msgid "Only jpg/jpeg/png/webp files are supported as coverfile" msgstr "" -#: cps/helper.py:591 +#: cps/helper.py:599 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "" -#: cps/helper.py:640 +#: cps/helper.py:648 msgid "Unrar binary file not found" msgstr "" -#: cps/helper.py:654 +#: cps/helper.py:662 msgid "Error excecuting UnRar" msgstr "" -#: cps/helper.py:710 +#: cps/helper.py:718 msgid "Waiting" msgstr "Várakozás" -#: cps/helper.py:712 +#: cps/helper.py:720 msgid "Failed" msgstr "Nem sikerült" -#: cps/helper.py:714 +#: cps/helper.py:722 msgid "Started" msgstr "Elindítva" -#: cps/helper.py:716 +#: cps/helper.py:724 msgid "Finished" msgstr "Végrehajtva" -#: cps/helper.py:718 +#: cps/helper.py:726 msgid "Unknown Status" msgstr "Ismeretlen állapot" -#: cps/helper.py:723 +#: cps/helper.py:731 msgid "E-mail: " msgstr "E-mail cím: " -#: cps/helper.py:725 cps/helper.py:729 +#: cps/helper.py:733 cps/helper.py:737 msgid "Convert: " msgstr "Konvertálás:" -#: cps/helper.py:727 +#: cps/helper.py:735 msgid "Upload: " msgstr "Feltöltés:" -#: cps/helper.py:731 +#: cps/helper.py:739 msgid "Unknown Task: " msgstr "Ismeretlen feladat:" @@ -596,7 +602,7 @@ msgstr "" msgid "Failed to fetch user info from Google." msgstr "" -#: cps/oauth_bb.py:225 cps/web.py:1397 cps/web.py:1537 +#: cps/oauth_bb.py:225 cps/web.py:1394 cps/web.py:1534 #, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "Be vagy jelentkezve mint: %(nickname)s" @@ -633,218 +639,218 @@ msgstr "" msgid "Google Oauth error, please retry later." msgstr "" -#: cps/shelf.py:66 cps/shelf.py:111 +#: cps/shelf.py:67 cps/shelf.py:120 msgid "Invalid shelf specified" msgstr "A megadott polc érvénytelen!" -#: cps/shelf.py:72 +#: cps/shelf.py:73 #, python-format msgid "Sorry you are not allowed to add a book to the the shelf: %(shelfname)s" msgstr "Elnézést, nem vagy jogosult hozzáadni a könyvet a következő polcra: %(shelfname)s" -#: cps/shelf.py:82 +#: cps/shelf.py:83 #, python-format msgid "Book is already part of the shelf: %(shelfname)s" msgstr "A könyv már a következő polcon van: %(shelfname)s" -#: cps/shelf.py:97 +#: cps/shelf.py:106 #, python-format msgid "Book has been added to shelf: %(sname)s" msgstr "A könyv hozzá lett adva a következő polchoz: %(sname)s" -#: cps/shelf.py:115 +#: cps/shelf.py:124 #, python-format msgid "You are not allowed to add a book to the the shelf: %(name)s" msgstr "Nincs jogosultságod könyvet tenni a következő polcra: %(name)s." -#: cps/shelf.py:133 +#: cps/shelf.py:142 #, python-format msgid "Books are already part of the shelf: %(name)s" msgstr "A könyvek már a következő polcon vannak: %(name)s" -#: cps/shelf.py:148 +#: cps/shelf.py:158 #, python-format msgid "Books have been added to shelf: %(sname)s" msgstr "A könyvek hozzá lettek adva a következő polchoz: %(sname)s" -#: cps/shelf.py:150 +#: cps/shelf.py:163 #, python-format msgid "Could not add books to shelf: %(sname)s" msgstr "Nem sikerült hozzáadni a könyveket a polchoz: %(sname)s" -#: cps/shelf.py:188 +#: cps/shelf.py:208 #, python-format msgid "Book has been removed from shelf: %(sname)s" msgstr "A könyv el lett távolítva a polcról: %(sname)s" -#: cps/shelf.py:196 +#: cps/shelf.py:216 #, python-format msgid "Sorry you are not allowed to remove a book from this shelf: %(sname)s" msgstr "Sajnálom, nincs jogosultságot eltávolítani könyvet erről a polcról: %(sname)s" -#: cps/shelf.py:220 cps/shelf.py:260 +#: cps/shelf.py:240 cps/shelf.py:284 #, python-format msgid "A public shelf with the name '%(title)s' already exists." msgstr "" -#: cps/shelf.py:229 cps/shelf.py:270 +#: cps/shelf.py:249 cps/shelf.py:294 #, python-format msgid "A private shelf with the name '%(title)s' already exists." msgstr "" -#: cps/shelf.py:236 +#: cps/shelf.py:256 #, python-format msgid "Shelf %(title)s created" msgstr "A következő polc létre lett hozva: %(title)s" -#: cps/shelf.py:239 cps/shelf.py:284 +#: cps/shelf.py:263 cps/shelf.py:312 msgid "There was an error" msgstr "Hiba történt" -#: cps/shelf.py:240 cps/shelf.py:242 cps/templates/layout.html:144 +#: cps/shelf.py:264 cps/shelf.py:266 cps/templates/layout.html:144 msgid "Create a Shelf" msgstr "Polc készítése" -#: cps/shelf.py:282 +#: cps/shelf.py:306 #, python-format msgid "Shelf %(title)s changed" msgstr "A következő polc megváltoztatva: %(title)s" -#: cps/shelf.py:285 cps/shelf.py:287 +#: cps/shelf.py:313 cps/shelf.py:315 msgid "Edit a shelf" msgstr "Polc szerkesztése" -#: cps/shelf.py:332 +#: cps/shelf.py:369 #, python-format msgid "Shelf: '%(name)s'" msgstr "Polc: '%(name)s'" -#: cps/shelf.py:335 +#: cps/shelf.py:372 msgid "Error opening shelf. Shelf does not exist or is not accessible" msgstr "Hiba a polc megnyitásakor. A polc nem létezik vagy nem elérhető." -#: cps/shelf.py:368 +#: cps/shelf.py:409 msgid "Hidden Book" msgstr "" -#: cps/shelf.py:373 +#: cps/shelf.py:414 #, python-format msgid "Change order of Shelf: '%(name)s'" msgstr "A következő polc átrendezése: %(name)s" -#: cps/ub.py:64 +#: cps/ub.py:65 msgid "Recently Added" msgstr "Legutóbb hozzáadott" -#: cps/ub.py:66 +#: cps/ub.py:67 msgid "Show recent books" msgstr "Legutóbbi könyvek mutatása" -#: cps/templates/index.xml:17 cps/ub.py:67 +#: cps/templates/index.xml:17 cps/ub.py:68 msgid "Hot Books" msgstr "Kelendő könyvek" -#: cps/ub.py:69 +#: cps/ub.py:70 msgid "Show Hot Books" msgstr "Kelendő könyvek mutatása" -#: cps/templates/index.xml:24 cps/ub.py:71 cps/web.py:655 +#: cps/templates/index.xml:24 cps/ub.py:72 cps/web.py:652 msgid "Top Rated Books" msgstr "Legjobb könyvek" -#: cps/ub.py:73 +#: cps/ub.py:74 msgid "Show Top Rated Books" msgstr "Legjobbra értékelt könyvek mutatása" -#: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:74 -#: cps/web.py:1222 +#: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:75 +#: cps/web.py:1219 msgid "Read Books" msgstr "Olvasott könyvek" -#: cps/ub.py:76 +#: cps/ub.py:77 msgid "Show read and unread" msgstr "Mutassa az olvasva/olvasatlan állapotot" -#: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:78 -#: cps/web.py:1225 +#: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:79 +#: cps/web.py:1222 msgid "Unread Books" msgstr "Olvasatlan könyvek" -#: cps/ub.py:80 +#: cps/ub.py:81 msgid "Show unread" msgstr "" -#: cps/ub.py:81 +#: cps/ub.py:82 msgid "Discover" msgstr "Felfedezés" -#: cps/ub.py:83 +#: cps/ub.py:84 msgid "Show random books" msgstr "Könyvek találomra mutatása" -#: cps/templates/index.xml:75 cps/ub.py:84 cps/web.py:970 +#: cps/templates/index.xml:75 cps/ub.py:85 cps/web.py:967 msgid "Categories" msgstr "Címkék" -#: cps/ub.py:86 +#: cps/ub.py:87 msgid "Show category selection" msgstr "Címke választó mutatása" #: cps/templates/book_edit.html:84 cps/templates/index.xml:82 -#: cps/templates/search_form.html:53 cps/ub.py:87 cps/web.py:886 cps/web.py:896 +#: cps/templates/search_form.html:53 cps/ub.py:88 cps/web.py:883 cps/web.py:893 msgid "Series" msgstr "Sorozatok" -#: cps/ub.py:89 +#: cps/ub.py:90 msgid "Show series selection" msgstr "Sorozat választó mutatása" -#: cps/templates/index.xml:61 cps/ub.py:90 +#: cps/templates/index.xml:61 cps/ub.py:91 msgid "Authors" msgstr "Szerzők" -#: cps/ub.py:92 +#: cps/ub.py:93 msgid "Show author selection" msgstr "Szerző választó mutatása" -#: cps/templates/index.xml:68 cps/ub.py:94 cps/web.py:869 +#: cps/templates/index.xml:68 cps/ub.py:95 cps/web.py:866 msgid "Publishers" msgstr "Kiadók" -#: cps/ub.py:96 +#: cps/ub.py:97 msgid "Show publisher selection" msgstr "Kiadó választó mutatása" -#: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:97 -#: cps/web.py:953 +#: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:98 +#: cps/web.py:950 msgid "Languages" msgstr "Nyelvek" -#: cps/ub.py:100 +#: cps/ub.py:101 msgid "Show language selection" msgstr "Nyelv választó mutatása" -#: cps/templates/index.xml:96 cps/ub.py:101 +#: cps/templates/index.xml:96 cps/ub.py:102 msgid "Ratings" msgstr "" -#: cps/ub.py:103 +#: cps/ub.py:104 msgid "Show ratings selection" msgstr "" -#: cps/templates/index.xml:104 cps/ub.py:104 +#: cps/templates/index.xml:104 cps/ub.py:105 msgid "File formats" msgstr "" -#: cps/ub.py:106 +#: cps/ub.py:107 msgid "Show file formats selection" msgstr "" -#: cps/ub.py:108 cps/web.py:1249 +#: cps/ub.py:109 cps/web.py:1246 msgid "Archived Books" msgstr "" -#: cps/ub.py:110 +#: cps/ub.py:111 msgid "Show archived books" msgstr "" @@ -877,220 +883,220 @@ msgstr "Új frissítés érhető el. Kattints az alábbi gombra a frissítéshez msgid "Click on the button below to update to the latest stable version." msgstr "" -#: cps/web.py:322 +#: cps/web.py:319 #, python-format msgid "Error: %(ldaperror)s" msgstr "" -#: cps/web.py:326 +#: cps/web.py:323 msgid "Error: No user returned in response of LDAP server" msgstr "" -#: cps/web.py:374 +#: cps/web.py:371 msgid "Failed to Create at Least One LDAP User" msgstr "" -#: cps/web.py:377 +#: cps/web.py:374 msgid "At Least One LDAP User Not Found in Database" msgstr "" -#: cps/web.py:379 +#: cps/web.py:376 msgid "User Successfully Imported" msgstr "" -#: cps/web.py:625 +#: cps/web.py:622 msgid "Recently Added Books" msgstr "Legutóbb hozzáadott könyvek" -#: cps/templates/index.html:5 cps/web.py:663 +#: cps/templates/index.html:5 cps/web.py:660 msgid "Discover (Random Books)" msgstr "Felfedezés (könyvek találomra)" -#: cps/web.py:691 +#: cps/web.py:688 msgid "Books" msgstr "" -#: cps/web.py:718 +#: cps/web.py:715 msgid "Hot Books (Most Downloaded)" msgstr "Kelendő könyvek (legtöbbet letöltöttek)" -#: cps/web.py:731 +#: cps/web.py:728 msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible" msgstr "Hiba történt az e-könyv megnyitásakor. A fájl nem létezik vagy nem érhető el:" -#: cps/web.py:745 +#: cps/web.py:742 #, python-format msgid "Author: %(name)s" msgstr "" -#: cps/web.py:759 +#: cps/web.py:756 #, python-format msgid "Publisher: %(name)s" msgstr "Kiadó: %(name)s" -#: cps/web.py:772 +#: cps/web.py:769 #, python-format msgid "Series: %(serie)s" msgstr "Sorozat: %(serie)s" -#: cps/web.py:785 +#: cps/web.py:782 #, python-format msgid "Rating: %(rating)s stars" msgstr "" -#: cps/web.py:798 +#: cps/web.py:795 #, python-format msgid "File format: %(format)s" msgstr "" -#: cps/web.py:812 +#: cps/web.py:809 #, python-format msgid "Category: %(name)s" msgstr "Címke: %(name)s" -#: cps/web.py:831 +#: cps/web.py:828 #, python-format msgid "Language: %(name)s" msgstr "Nyelv: %(name)s" -#: cps/web.py:910 +#: cps/web.py:907 msgid "Ratings list" msgstr "" -#: cps/web.py:925 +#: cps/web.py:922 msgid "File formats list" msgstr "" -#: cps/templates/layout.html:74 cps/templates/tasks.html:7 cps/web.py:984 +#: cps/templates/layout.html:74 cps/templates/tasks.html:7 cps/web.py:981 msgid "Tasks" msgstr "Feladatok" #: cps/templates/book_edit.html:235 cps/templates/feed.xml:33 #: cps/templates/layout.html:45 cps/templates/layout.html:48 -#: cps/templates/search_form.html:174 cps/web.py:1010 cps/web.py:1015 +#: cps/templates/search_form.html:174 cps/web.py:1007 cps/web.py:1012 msgid "Search" msgstr "Keresés" -#: cps/web.py:1066 +#: cps/web.py:1063 msgid "Published after " msgstr "Kiadva ezután: " -#: cps/web.py:1073 +#: cps/web.py:1070 msgid "Published before " msgstr "Kiadva ezelőtt: " -#: cps/web.py:1087 +#: cps/web.py:1084 #, python-format msgid "Rating <= %(rating)s" msgstr "Értékelés <= %(rating)s" -#: cps/web.py:1089 +#: cps/web.py:1086 #, python-format msgid "Rating >= %(rating)s" msgstr "Értékelés <= %(rating)s" -#: cps/web.py:1158 cps/web.py:1183 +#: cps/web.py:1155 cps/web.py:1180 msgid "search" msgstr "keresés" -#: cps/web.py:1213 +#: cps/web.py:1210 #, python-format msgid "Custom Column No.%(column)d is not existing in calibre database" msgstr "" -#: cps/web.py:1304 +#: cps/web.py:1301 #, python-format msgid "Book successfully queued for sending to %(kindlemail)s" msgstr "A könyv sikeresen küldésre lett jelölve a következő címre: %(kindlemail)s" -#: cps/web.py:1308 +#: cps/web.py:1305 #, python-format msgid "Oops! There was an error sending this book: %(res)s" msgstr "Hiba történt a könyv küldésekor: %(res)s" -#: cps/web.py:1310 +#: cps/web.py:1307 msgid "Please update your profile with a valid Send to Kindle E-mail Address." msgstr "Először be kell állítani a kindle e-mail címet..." -#: cps/web.py:1327 +#: cps/web.py:1324 msgid "E-Mail server is not configured, please contact your administrator!" msgstr "" -#: cps/web.py:1328 cps/web.py:1338 cps/web.py:1362 cps/web.py:1366 -#: cps/web.py:1371 cps/web.py:1375 +#: cps/web.py:1325 cps/web.py:1335 cps/web.py:1359 cps/web.py:1363 +#: cps/web.py:1368 cps/web.py:1372 msgid "register" msgstr "regisztrálás" -#: cps/web.py:1364 +#: cps/web.py:1361 msgid "Your e-mail is not allowed to register" msgstr "Nem engedélyezett a megadott e-mail cím bejegyzése" -#: cps/web.py:1367 +#: cps/web.py:1364 msgid "Confirmation e-mail was send to your e-mail account." msgstr "Jóváhagyó levél elküldve az email címedre." -#: cps/web.py:1370 +#: cps/web.py:1367 msgid "This username or e-mail address is already in use." msgstr "Ez a felhasználónév vagy e-mail cím már használatban van." -#: cps/web.py:1387 +#: cps/web.py:1384 msgid "Cannot activate LDAP authentication" msgstr "" -#: cps/web.py:1404 +#: cps/web.py:1401 #, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgstr "" -#: cps/web.py:1410 +#: cps/web.py:1407 #, python-format msgid "Could not login: %(message)s" msgstr "" -#: cps/web.py:1414 cps/web.py:1438 +#: cps/web.py:1411 cps/web.py:1435 msgid "Wrong Username or Password" msgstr "Rossz felhasználó név vagy jelszó!" -#: cps/web.py:1421 +#: cps/web.py:1418 msgid "New Password was send to your email address" msgstr "" -#: cps/web.py:1427 +#: cps/web.py:1424 msgid "Please enter valid username to reset password" msgstr "" -#: cps/web.py:1433 +#: cps/web.py:1430 #, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "" -#: cps/web.py:1442 cps/web.py:1469 +#: cps/web.py:1439 cps/web.py:1466 msgid "login" msgstr "belépés" -#: cps/web.py:1481 cps/web.py:1515 +#: cps/web.py:1478 cps/web.py:1512 msgid "Token not found" msgstr "A token nem található." -#: cps/web.py:1490 cps/web.py:1523 +#: cps/web.py:1487 cps/web.py:1520 msgid "Token has expired" msgstr "A token érvényessége lejárt." -#: cps/web.py:1499 +#: cps/web.py:1496 msgid "Success! Please return to your device" msgstr "Sikerült! Újra használható az eszköz." -#: cps/web.py:1580 cps/web.py:1625 cps/web.py:1631 +#: cps/web.py:1577 cps/web.py:1622 cps/web.py:1628 #, python-format msgid "%(name)s's profile" msgstr "%(name)s profilja" -#: cps/web.py:1627 +#: cps/web.py:1624 msgid "Profile updated" msgstr "A profil frissítve." -#: cps/web.py:1656 cps/web.py:1659 cps/web.py:1662 cps/web.py:1669 -#: cps/web.py:1674 +#: cps/web.py:1653 cps/web.py:1656 cps/web.py:1659 cps/web.py:1666 +#: cps/web.py:1671 msgid "Read a Book" msgstr "Egy olvasott könyv" diff --git a/cps/translations/it/LC_MESSAGES/messages.mo b/cps/translations/it/LC_MESSAGES/messages.mo index afb7afaf..d9b1d594 100644 Binary files a/cps/translations/it/LC_MESSAGES/messages.mo and b/cps/translations/it/LC_MESSAGES/messages.mo differ diff --git a/cps/translations/it/LC_MESSAGES/messages.po b/cps/translations/it/LC_MESSAGES/messages.po index 14493c37..8c544937 100644 --- a/cps/translations/it/LC_MESSAGES/messages.po +++ b/cps/translations/it/LC_MESSAGES/messages.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Calibre-Web\n" "Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n" -"POT-Creation-Date: 2020-06-07 06:47+0200\n" +"POT-Creation-Date: 2020-06-28 09:31+0200\n" "PO-Revision-Date: 2017-04-04 15:09+0200\n" "Last-Translator: ElQuimm \n" "Language: it\n" @@ -45,9 +45,9 @@ msgstr "Ricollegato con successo" msgid "Unknown command" msgstr "Comando sconosciuto" -#: cps/admin.py:116 cps/editbooks.py:563 cps/editbooks.py:573 -#: cps/editbooks.py:667 cps/editbooks.py:669 cps/editbooks.py:730 -#: cps/editbooks.py:743 cps/updater.py:509 cps/uploader.py:97 +#: cps/admin.py:116 cps/editbooks.py:564 cps/editbooks.py:576 +#: cps/editbooks.py:670 cps/editbooks.py:672 cps/editbooks.py:733 +#: cps/editbooks.py:749 cps/updater.py:509 cps/uploader.py:97 #: cps/uploader.py:107 msgid "Unknown" msgstr "Sconosciuto" @@ -60,7 +60,7 @@ msgstr "Pagina di amministrazione" msgid "UI Configuration" msgstr "Configurazione dell'interfaccia utente" -#: cps/admin.py:189 cps/admin.py:706 +#: cps/admin.py:189 cps/admin.py:711 msgid "Calibre-Web configuration updated" msgstr "La configurazione di Calibre-Web è stata aggiornata" @@ -112,175 +112,181 @@ msgstr "LDAP User Object Filter contiene una parentesi senza la corrispettiva" msgid "LDAP Certificate Location is not Valid, Please Enter Correct Path" msgstr "La posizione del certificato LDAP non è valida, per favore indica il percorso corretto" -#: cps/admin.py:627 +#: cps/admin.py:628 msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgstr "La posizione del Keyfile non è valida, per favore indica il percorso corretto" -#: cps/admin.py:631 +#: cps/admin.py:632 msgid "Certfile Location is not Valid, Please Enter Correct Path" msgstr "La posizione del Certfile non è valida, per favore indica il percorso corretto" -#: cps/admin.py:701 +#: cps/admin.py:694 cps/admin.py:793 cps/admin.py:885 cps/admin.py:934 +#: cps/shelf.py:100 cps/shelf.py:161 cps/shelf.py:202 cps/shelf.py:260 +#: cps/shelf.py:309 cps/shelf.py:338 cps/shelf.py:368 cps/shelf.py:392 +msgid "Settings DB is not Writeable" +msgstr "" + +#: cps/admin.py:706 msgid "DB Location is not Valid, Please Enter Correct Path" msgstr "La posizione del DB non è valida, per favore indica il percorso corretto" -#: cps/admin.py:703 +#: cps/admin.py:708 msgid "DB is not Writeable" msgstr "Il DB non è scrivibile" -#: cps/admin.py:736 +#: cps/admin.py:741 msgid "Basic Configuration" msgstr "Configurazione di base" -#: cps/admin.py:751 cps/web.py:1337 +#: cps/admin.py:756 cps/web.py:1334 msgid "Please fill out all fields!" msgstr "Per favore compila tutti i campi!" -#: cps/admin.py:754 cps/admin.py:766 cps/admin.py:772 cps/admin.py:892 +#: cps/admin.py:759 cps/admin.py:771 cps/admin.py:777 cps/admin.py:903 msgid "Add new user" msgstr "Aggiungi un nuovo utente" -#: cps/admin.py:763 cps/web.py:1578 +#: cps/admin.py:768 cps/web.py:1575 msgid "E-mail is not from valid domain" msgstr "L'e-mail non proviene da un dominio valido" -#: cps/admin.py:770 cps/admin.py:785 +#: cps/admin.py:775 cps/admin.py:790 msgid "Found an existing account for this e-mail address or nickname." msgstr "Trovato un account esistente con questo e-mail o nome di utente" -#: cps/admin.py:781 +#: cps/admin.py:786 #, python-format msgid "User '%(user)s' created" msgstr "Creato l'utente '%(user)s'" -#: cps/admin.py:794 +#: cps/admin.py:802 #, python-format msgid "User '%(nick)s' deleted" msgstr "Utente '%(nick)s' eliminato" -#: cps/admin.py:797 +#: cps/admin.py:805 msgid "No admin user remaining, can't delete user" msgstr "Non rimarrebbe nessun utente amministratore, non posso eliminare l'utente" -#: cps/admin.py:803 +#: cps/admin.py:811 msgid "No admin user remaining, can't remove admin role" msgstr "Non rimarrebbe nessun utente amministratore, non posso rimuovere il ruolo di amministratore" -#: cps/admin.py:839 cps/web.py:1621 +#: cps/admin.py:847 cps/web.py:1618 msgid "Found an existing account for this e-mail address." msgstr "Ho trovato un account creato in precedenza con questo e-mail." -#: cps/admin.py:849 cps/admin.py:864 cps/admin.py:967 cps/web.py:1596 +#: cps/admin.py:857 cps/admin.py:872 cps/admin.py:983 cps/web.py:1593 #, python-format msgid "Edit User %(nick)s" msgstr "Modifica l'utente %(nick)s" -#: cps/admin.py:855 cps/web.py:1588 +#: cps/admin.py:863 cps/web.py:1585 msgid "This username is already taken" msgstr "Questo nome di utente è già utilizzato" -#: cps/admin.py:871 +#: cps/admin.py:879 #, python-format msgid "User '%(nick)s' updated" msgstr "Utente '%(nick)s' aggiornato" -#: cps/admin.py:874 +#: cps/admin.py:882 msgid "An unknown error occured." msgstr "Si è verificato un errore imprevisto." -#: cps/admin.py:901 cps/templates/admin.html:71 +#: cps/admin.py:912 cps/templates/admin.html:71 msgid "Edit E-mail Server Settings" msgstr "Modifica le impostazioni SMTP" -#: cps/admin.py:925 +#: cps/admin.py:941 #, python-format msgid "Test e-mail successfully send to %(kindlemail)s" msgstr "E-mail di test inviato con successo a %(kindlemail)s" -#: cps/admin.py:928 +#: cps/admin.py:944 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "Si è verificato un errore nell'invio dell'e-mail di test: %(res)s" -#: cps/admin.py:930 +#: cps/admin.py:946 msgid "Please configure your e-mail address first..." msgstr "Per favore prima configura il tuo indirizzo e-mail..." -#: cps/admin.py:932 +#: cps/admin.py:948 msgid "E-mail server settings updated" msgstr "Configurazione del server e-mail aggiornata" -#: cps/admin.py:943 +#: cps/admin.py:959 msgid "User not found" msgstr "Utente non trovato" -#: cps/admin.py:978 +#: cps/admin.py:994 #, python-format msgid "Password for user %(user)s reset" msgstr "La password dell'utente %(user)s è stata resettata" -#: cps/admin.py:981 cps/web.py:1361 cps/web.py:1425 +#: cps/admin.py:997 cps/web.py:1358 cps/web.py:1422 msgid "An unknown error occurred. Please try again later." msgstr "Si è verificato un errore sconosciuto: per favore riprova." -#: cps/admin.py:984 cps/web.py:1299 +#: cps/admin.py:1000 cps/web.py:1296 msgid "Please configure the SMTP mail settings first..." msgstr "Configura dapprima le impostazioni del server SMTP..." -#: cps/admin.py:996 +#: cps/admin.py:1012 msgid "Logfile viewer" msgstr "Visualizzatore del Logfile" -#: cps/admin.py:1035 +#: cps/admin.py:1051 msgid "Requesting update package" msgstr "Richiedo il pacchetto di aggiornamento" -#: cps/admin.py:1036 +#: cps/admin.py:1052 msgid "Downloading update package" msgstr "Scarico il pacchetto di aggiornamento" -#: cps/admin.py:1037 +#: cps/admin.py:1053 msgid "Unzipping update package" msgstr "Decomprimo il pacchetto di aggiornamento" -#: cps/admin.py:1038 +#: cps/admin.py:1054 msgid "Replacing files" msgstr "Sostituisco i file" -#: cps/admin.py:1039 +#: cps/admin.py:1055 msgid "Database connections are closed" msgstr "Le connessioni al database sono chiuse" -#: cps/admin.py:1040 +#: cps/admin.py:1056 msgid "Stopping server" msgstr "Arresto il server" -#: cps/admin.py:1041 +#: cps/admin.py:1057 msgid "Update finished, please press okay and reload page" msgstr "Aggiornamento completato, per favore premi ok e ricarica la pagina" -#: cps/admin.py:1042 cps/admin.py:1043 cps/admin.py:1044 cps/admin.py:1045 -#: cps/admin.py:1046 +#: cps/admin.py:1058 cps/admin.py:1059 cps/admin.py:1060 cps/admin.py:1061 +#: cps/admin.py:1062 msgid "Update failed:" msgstr "Aggiornamento non riuscito:" -#: cps/admin.py:1042 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522 +#: cps/admin.py:1058 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522 msgid "HTTP Error" msgstr "Errore HTTP" -#: cps/admin.py:1043 cps/updater.py:321 cps/updater.py:524 +#: cps/admin.py:1059 cps/updater.py:321 cps/updater.py:524 msgid "Connection error" msgstr "Errore di connessione" -#: cps/admin.py:1044 cps/updater.py:323 cps/updater.py:526 +#: cps/admin.py:1060 cps/updater.py:323 cps/updater.py:526 msgid "Timeout while establishing connection" msgstr "Tempo scaduto nello stabilire la connessione" -#: cps/admin.py:1045 cps/updater.py:325 cps/updater.py:528 +#: cps/admin.py:1061 cps/updater.py:325 cps/updater.py:528 msgid "General error" msgstr "Errore generale" -#: cps/admin.py:1046 +#: cps/admin.py:1062 msgid "Update File Could Not be Saved in Temp Dir" msgstr "Il file di aggiornamento non può essere salvato nella cartella temporanea" @@ -300,8 +306,8 @@ msgstr "Il formato del libro è stato eliminato con successo" msgid "Book Successfully Deleted" msgstr "Il libro é stato eliminato con successo" -#: cps/editbooks.py:254 cps/editbooks.py:548 cps/web.py:1644 cps/web.py:1685 -#: cps/web.py:1747 +#: cps/editbooks.py:254 cps/editbooks.py:549 cps/web.py:1641 cps/web.py:1682 +#: cps/web.py:1744 msgid "Error opening eBook. File does not exist or file is not accessible" msgstr "Errore durante l'apertura del libro. Il file non esiste o il file non è accessibile" @@ -309,82 +315,82 @@ msgstr "Errore durante l'apertura del libro. Il file non esiste o il file non è msgid "edit metadata" msgstr "Modifica i metadati" -#: cps/editbooks.py:361 +#: cps/editbooks.py:360 #, python-format msgid "%(langname)s is not a valid language" msgstr "%(langname)s non è una lingua valida" -#: cps/editbooks.py:467 cps/editbooks.py:712 +#: cps/editbooks.py:468 cps/editbooks.py:715 #, python-format msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgstr "Non è consentito caricare file con l'estensione '%(ext)s' su questo server" -#: cps/editbooks.py:471 cps/editbooks.py:716 +#: cps/editbooks.py:472 cps/editbooks.py:719 msgid "File to be uploaded must have an extension" msgstr "Il file da caricare deve avere un'estensione" -#: cps/editbooks.py:483 cps/editbooks.py:773 +#: cps/editbooks.py:484 cps/editbooks.py:779 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "Impossibile creare la cartella %(path)s (autorizzazione negata)." -#: cps/editbooks.py:488 +#: cps/editbooks.py:489 #, python-format msgid "Failed to store file %(file)s." msgstr "Il salvataggio del file %(file)s non è riuscito." -#: cps/editbooks.py:506 cps/editbooks.py:864 +#: cps/editbooks.py:507 cps/editbooks.py:870 #, python-format msgid "Database error: %(error)s." msgstr "Errore nel database: %(error)s." -#: cps/editbooks.py:510 +#: cps/editbooks.py:511 #, python-format msgid "File format %(ext)s added to %(book)s" msgstr "Ho aggiunto il formato %(ext)s al libro %(book)s" -#: cps/editbooks.py:653 +#: cps/editbooks.py:656 msgid "Metadata successfully updated" msgstr "I metadati sono stati aggiornati con successo" -#: cps/editbooks.py:662 +#: cps/editbooks.py:665 msgid "Error editing book, please check logfile for details" msgstr "Errore nella modifica del libro. Per favore verifica i dettagli nel file di registro (logfile)" -#: cps/editbooks.py:724 +#: cps/editbooks.py:727 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "Il file %(filename)s non può essere salvato nella cartella temporanea" -#: cps/editbooks.py:734 +#: cps/editbooks.py:737 msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgstr "Probabilmnete il libro caricato esiste già nella libreria; considera di cambiare prima di sottoporlo nuovamente: " -#: cps/editbooks.py:780 +#: cps/editbooks.py:786 #, python-format msgid "Failed to Move File %(file)s: %(error)s" msgstr "Impossibile spostare il file %(file)s: %(error)s" -#: cps/editbooks.py:836 +#: cps/editbooks.py:842 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "Impossibile spostare il file della copertina %(file)s: %(error)s" -#: cps/editbooks.py:850 +#: cps/editbooks.py:856 #, python-format msgid "File %(file)s uploaded" msgstr "Il file %(file)s è stato caricato" -#: cps/editbooks.py:876 +#: cps/editbooks.py:882 msgid "Source or destination format for conversion missing" msgstr "Mancano o il formato sorgente o quello di destinazione, necessari alla conversione" -#: cps/editbooks.py:884 +#: cps/editbooks.py:890 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "Libro accodato con successo per essere convertito in %(book_format)s" -#: cps/editbooks.py:888 +#: cps/editbooks.py:894 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "Si è verificato un errore durante la conversione del libro: %(res)s" @@ -498,71 +504,71 @@ msgstr "File %(file)s non trovato su Google Drive" msgid "Book path %(path)s not found on Google Drive" msgstr "Non ho trovato la cartella %(path)s del libro su Google Drive" -#: cps/helper.py:542 +#: cps/helper.py:550 msgid "Error Downloading Cover" msgstr "Errore nello scaricare la copertina" -#: cps/helper.py:545 +#: cps/helper.py:553 msgid "Cover Format Error" msgstr "" -#: cps/helper.py:561 +#: cps/helper.py:569 msgid "Failed to create path for cover" msgstr "Errore nel creare la cartella per la copertina" -#: cps/helper.py:566 +#: cps/helper.py:574 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "Il file della copertina non è in un formato immagine valido o non può essere salvato" -#: cps/helper.py:577 +#: cps/helper.py:585 msgid "Only jpg/jpeg/png/webp files are supported as coverfile" msgstr "Solamente i file nei formati jpg/jpeg/png/webp sono supportati per le copertine" -#: cps/helper.py:591 +#: cps/helper.py:599 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "Solamente i file nei formati jpg/jpeg sono supportati per le copertine" -#: cps/helper.py:640 +#: cps/helper.py:648 msgid "Unrar binary file not found" msgstr "Non ho trovato il file binario di UnRar" -#: cps/helper.py:654 +#: cps/helper.py:662 msgid "Error excecuting UnRar" msgstr "Errore nell'eseguire UnRar" -#: cps/helper.py:710 +#: cps/helper.py:718 msgid "Waiting" msgstr "Attendi" -#: cps/helper.py:712 +#: cps/helper.py:720 msgid "Failed" msgstr "Non riuscito" -#: cps/helper.py:714 +#: cps/helper.py:722 msgid "Started" msgstr "Avviato" -#: cps/helper.py:716 +#: cps/helper.py:724 msgid "Finished" msgstr "Terminato" -#: cps/helper.py:718 +#: cps/helper.py:726 msgid "Unknown Status" msgstr "Stato sconosciuto" -#: cps/helper.py:723 +#: cps/helper.py:731 msgid "E-mail: " msgstr "E-mail: " -#: cps/helper.py:725 cps/helper.py:729 +#: cps/helper.py:733 cps/helper.py:737 msgid "Convert: " msgstr "Conversione: " -#: cps/helper.py:727 +#: cps/helper.py:735 msgid "Upload: " msgstr "Upload: " -#: cps/helper.py:731 +#: cps/helper.py:739 msgid "Unknown Task: " msgstr "Processo sconosciuto: " @@ -595,7 +601,7 @@ msgstr "L'accesso con Google non è riuscito." msgid "Failed to fetch user info from Google." msgstr "Il recupero delle informazioni dell'utente da Google non è riuscito." -#: cps/oauth_bb.py:225 cps/web.py:1397 cps/web.py:1537 +#: cps/oauth_bb.py:225 cps/web.py:1394 cps/web.py:1534 #, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "ora sei connesso come: '%(nickname)s'" @@ -632,218 +638,218 @@ msgstr "GitHub errore Oauth, per favore riprova più tardi." msgid "Google Oauth error, please retry later." msgstr "Google errore Oauth, per favore riprova più tardi." -#: cps/shelf.py:66 cps/shelf.py:111 +#: cps/shelf.py:67 cps/shelf.py:120 msgid "Invalid shelf specified" msgstr "Lo scaffale specificato non è valido" -#: cps/shelf.py:72 +#: cps/shelf.py:73 #, python-format msgid "Sorry you are not allowed to add a book to the the shelf: %(shelfname)s" msgstr "Mi spiace, ma non sei autorizzato ad aggiungere libri allo scaffale: %(shelfname)s" -#: cps/shelf.py:82 +#: cps/shelf.py:83 #, python-format msgid "Book is already part of the shelf: %(shelfname)s" msgstr "Il libro è gia presente nello scaffale: %(shelfname)s" -#: cps/shelf.py:97 +#: cps/shelf.py:106 #, python-format msgid "Book has been added to shelf: %(sname)s" msgstr "Il libro è stato aggiunto allo scaffale: %(sname)s" -#: cps/shelf.py:115 +#: cps/shelf.py:124 #, python-format msgid "You are not allowed to add a book to the the shelf: %(name)s" msgstr "Non sei autorizzato ad aggiungere libri allo scaffale: %(name)s" -#: cps/shelf.py:133 +#: cps/shelf.py:142 #, python-format msgid "Books are already part of the shelf: %(name)s" msgstr "I libri sono già presenti nello scaffale: %(name)s" -#: cps/shelf.py:148 +#: cps/shelf.py:158 #, python-format msgid "Books have been added to shelf: %(sname)s" msgstr "I libri sono stati aggiunti allo scaffale: %(sname)s" -#: cps/shelf.py:150 +#: cps/shelf.py:163 #, python-format msgid "Could not add books to shelf: %(sname)s" msgstr "Non posso aggiungere libri allo scaffale: %(sname)s" -#: cps/shelf.py:188 +#: cps/shelf.py:208 #, python-format msgid "Book has been removed from shelf: %(sname)s" msgstr "Il libro è stato rimosso dallo scaffale: %(sname)s" -#: cps/shelf.py:196 +#: cps/shelf.py:216 #, python-format msgid "Sorry you are not allowed to remove a book from this shelf: %(sname)s" msgstr "Spiacente, ma non sei autorizzato a togliere libri dallo scaffale: %(sname)s" -#: cps/shelf.py:220 cps/shelf.py:260 +#: cps/shelf.py:240 cps/shelf.py:284 #, python-format msgid "A public shelf with the name '%(title)s' already exists." msgstr "Uno scaffale pubblico denominato '%(title)s' esiste già." -#: cps/shelf.py:229 cps/shelf.py:270 +#: cps/shelf.py:249 cps/shelf.py:294 #, python-format msgid "A private shelf with the name '%(title)s' already exists." msgstr "Uno scaffale privato denominato '%(title)s' esiste già." -#: cps/shelf.py:236 +#: cps/shelf.py:256 #, python-format msgid "Shelf %(title)s created" msgstr "Lo scaffale %(title)s è stato creato" -#: cps/shelf.py:239 cps/shelf.py:284 +#: cps/shelf.py:263 cps/shelf.py:312 msgid "There was an error" msgstr "C'era un errore" -#: cps/shelf.py:240 cps/shelf.py:242 cps/templates/layout.html:144 +#: cps/shelf.py:264 cps/shelf.py:266 cps/templates/layout.html:144 msgid "Create a Shelf" msgstr "Crea uno scaffale" -#: cps/shelf.py:282 +#: cps/shelf.py:306 #, python-format msgid "Shelf %(title)s changed" msgstr "Lo scaffale %(title)s è stato modificato" -#: cps/shelf.py:285 cps/shelf.py:287 +#: cps/shelf.py:313 cps/shelf.py:315 msgid "Edit a shelf" msgstr "Modifica uno scaffale" -#: cps/shelf.py:332 +#: cps/shelf.py:369 #, python-format msgid "Shelf: '%(name)s'" msgstr "Scaffale: '%(name)s'" -#: cps/shelf.py:335 +#: cps/shelf.py:372 msgid "Error opening shelf. Shelf does not exist or is not accessible" msgstr "Errore durante l'apertura dello scaffale. Lo scaffale non esiste o non è accessibile" -#: cps/shelf.py:368 +#: cps/shelf.py:409 msgid "Hidden Book" msgstr "Libro nascosto" -#: cps/shelf.py:373 +#: cps/shelf.py:414 #, python-format msgid "Change order of Shelf: '%(name)s'" msgstr "Modifica l'ordine dello scaffale: '%(name)s'" -#: cps/ub.py:64 +#: cps/ub.py:65 msgid "Recently Added" msgstr "Aggiunti recentemente" -#: cps/ub.py:66 +#: cps/ub.py:67 msgid "Show recent books" msgstr "Mostra l'opzione per la selezione dei libri più recenti" -#: cps/templates/index.xml:17 cps/ub.py:67 +#: cps/templates/index.xml:17 cps/ub.py:68 msgid "Hot Books" msgstr "Libri popolari" -#: cps/ub.py:69 +#: cps/ub.py:70 msgid "Show Hot Books" msgstr "Mostra l'opzione per la selezione dei libri più popolari" -#: cps/templates/index.xml:24 cps/ub.py:71 cps/web.py:655 +#: cps/templates/index.xml:24 cps/ub.py:72 cps/web.py:652 msgid "Top Rated Books" msgstr "Libri meglio valutati" -#: cps/ub.py:73 +#: cps/ub.py:74 msgid "Show Top Rated Books" msgstr "Mostra l'opzione per la selezione dei libri meglio valutati" -#: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:74 -#: cps/web.py:1222 +#: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:75 +#: cps/web.py:1219 msgid "Read Books" msgstr "Libri da leggere" -#: cps/ub.py:76 +#: cps/ub.py:77 msgid "Show read and unread" msgstr "Mostra l'opzione per la selezione letto e non letto" -#: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:78 -#: cps/web.py:1225 +#: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:79 +#: cps/web.py:1222 msgid "Unread Books" msgstr "Libri non letti" -#: cps/ub.py:80 +#: cps/ub.py:81 msgid "Show unread" msgstr "Mostra l'opzione per la selezione dei libri non letti" -#: cps/ub.py:81 +#: cps/ub.py:82 msgid "Discover" msgstr "Per scoprire" -#: cps/ub.py:83 +#: cps/ub.py:84 msgid "Show random books" msgstr "Mostra l'opzione per presentare libri aleatoriamente" -#: cps/templates/index.xml:75 cps/ub.py:84 cps/web.py:970 +#: cps/templates/index.xml:75 cps/ub.py:85 cps/web.py:967 msgid "Categories" msgstr "Categorie" -#: cps/ub.py:86 +#: cps/ub.py:87 msgid "Show category selection" msgstr "Mostra l'opzione per la selezione delle categorie" #: cps/templates/book_edit.html:84 cps/templates/index.xml:82 -#: cps/templates/search_form.html:53 cps/ub.py:87 cps/web.py:886 cps/web.py:896 +#: cps/templates/search_form.html:53 cps/ub.py:88 cps/web.py:883 cps/web.py:893 msgid "Series" msgstr "Serie" -#: cps/ub.py:89 +#: cps/ub.py:90 msgid "Show series selection" msgstr "Mostra l'opzione per la selezione delle serie" -#: cps/templates/index.xml:61 cps/ub.py:90 +#: cps/templates/index.xml:61 cps/ub.py:91 msgid "Authors" msgstr "Autori" -#: cps/ub.py:92 +#: cps/ub.py:93 msgid "Show author selection" msgstr "Mostra l'opzione per la selezione degli autori" -#: cps/templates/index.xml:68 cps/ub.py:94 cps/web.py:869 +#: cps/templates/index.xml:68 cps/ub.py:95 cps/web.py:866 msgid "Publishers" msgstr "Editori" -#: cps/ub.py:96 +#: cps/ub.py:97 msgid "Show publisher selection" msgstr "Mostra l'opzione per la selezione degli editori" -#: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:97 -#: cps/web.py:953 +#: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:98 +#: cps/web.py:950 msgid "Languages" msgstr "Lingue" -#: cps/ub.py:100 +#: cps/ub.py:101 msgid "Show language selection" msgstr "Mostra l'opzione per la selezione delle lingue" -#: cps/templates/index.xml:96 cps/ub.py:101 +#: cps/templates/index.xml:96 cps/ub.py:102 msgid "Ratings" msgstr "Valutazioni" -#: cps/ub.py:103 +#: cps/ub.py:104 msgid "Show ratings selection" msgstr "Mostra l'opzione per la selezione della valutazione" -#: cps/templates/index.xml:104 cps/ub.py:104 +#: cps/templates/index.xml:104 cps/ub.py:105 msgid "File formats" msgstr "Formati file" -#: cps/ub.py:106 +#: cps/ub.py:107 msgid "Show file formats selection" msgstr "Mostra la selezione del formato dei file" -#: cps/ub.py:108 cps/web.py:1249 +#: cps/ub.py:109 cps/web.py:1246 msgid "Archived Books" msgstr "Libri archiviati" -#: cps/ub.py:110 +#: cps/ub.py:111 msgid "Show archived books" msgstr "Mostra l'opzione per la selezione dei libri archiviati" @@ -876,220 +882,220 @@ msgstr "Nuovo aggiornamento disponibile. Clicca sul pulsante sottostante per agg msgid "Click on the button below to update to the latest stable version." msgstr "Clicca sul pulsante per aggiornare all'ultima versione stabile." -#: cps/web.py:322 +#: cps/web.py:319 #, python-format msgid "Error: %(ldaperror)s" msgstr "Errore: %(ldaperror)s" -#: cps/web.py:326 +#: cps/web.py:323 msgid "Error: No user returned in response of LDAP server" msgstr "Errore: nessun utente restituito in risposta dal server LDAP" -#: cps/web.py:374 +#: cps/web.py:371 msgid "Failed to Create at Least One LDAP User" msgstr "Fallita la creazione di almeno un utente LDAP" -#: cps/web.py:377 +#: cps/web.py:374 msgid "At Least One LDAP User Not Found in Database" msgstr "Almeno un utente LDAP non è stato trovato nel database" -#: cps/web.py:379 +#: cps/web.py:376 msgid "User Successfully Imported" msgstr "Utente importato con successo" -#: cps/web.py:625 +#: cps/web.py:622 msgid "Recently Added Books" msgstr "Libri aggiunti di recente" -#: cps/templates/index.html:5 cps/web.py:663 +#: cps/templates/index.html:5 cps/web.py:660 msgid "Discover (Random Books)" msgstr "Scopri (libri casuali)" -#: cps/web.py:691 +#: cps/web.py:688 msgid "Books" msgstr "Libri" -#: cps/web.py:718 +#: cps/web.py:715 msgid "Hot Books (Most Downloaded)" msgstr "I libri più richiesti" -#: cps/web.py:731 +#: cps/web.py:728 msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible" msgstr "Errore durante l'apertura del libro selezionato. Il file non esiste o il file non è accessibile" -#: cps/web.py:745 +#: cps/web.py:742 #, python-format msgid "Author: %(name)s" msgstr "Autore: %(name)s" -#: cps/web.py:759 +#: cps/web.py:756 #, python-format msgid "Publisher: %(name)s" msgstr "Editore: %(name)s" -#: cps/web.py:772 +#: cps/web.py:769 #, python-format msgid "Series: %(serie)s" msgstr "Serie: %(serie)s" -#: cps/web.py:785 +#: cps/web.py:782 #, python-format msgid "Rating: %(rating)s stars" msgstr "Valutazione: %(rating)s stelle" -#: cps/web.py:798 +#: cps/web.py:795 #, python-format msgid "File format: %(format)s" msgstr "Formato del file: %(format)s" -#: cps/web.py:812 +#: cps/web.py:809 #, python-format msgid "Category: %(name)s" msgstr "Categoria: %(name)s" -#: cps/web.py:831 +#: cps/web.py:828 #, python-format msgid "Language: %(name)s" msgstr "Lingua: %(name)s" -#: cps/web.py:910 +#: cps/web.py:907 msgid "Ratings list" msgstr "Elenco delle valutazioni" -#: cps/web.py:925 +#: cps/web.py:922 msgid "File formats list" msgstr "Elenco dei formati" -#: cps/templates/layout.html:74 cps/templates/tasks.html:7 cps/web.py:984 +#: cps/templates/layout.html:74 cps/templates/tasks.html:7 cps/web.py:981 msgid "Tasks" msgstr "Compito" #: cps/templates/book_edit.html:235 cps/templates/feed.xml:33 #: cps/templates/layout.html:45 cps/templates/layout.html:48 -#: cps/templates/search_form.html:174 cps/web.py:1010 cps/web.py:1015 +#: cps/templates/search_form.html:174 cps/web.py:1007 cps/web.py:1012 msgid "Search" msgstr "Cerca" -#: cps/web.py:1066 +#: cps/web.py:1063 msgid "Published after " msgstr "Pubblicato dopo " -#: cps/web.py:1073 +#: cps/web.py:1070 msgid "Published before " msgstr "Pubblicato prima " -#: cps/web.py:1087 +#: cps/web.py:1084 #, python-format msgid "Rating <= %(rating)s" msgstr "Valutazione <= %(rating)s" -#: cps/web.py:1089 +#: cps/web.py:1086 #, python-format msgid "Rating >= %(rating)s" msgstr "Valutazione >= %(rating)s" -#: cps/web.py:1158 cps/web.py:1183 +#: cps/web.py:1155 cps/web.py:1180 msgid "search" msgstr "ricerca" -#: cps/web.py:1213 +#: cps/web.py:1210 #, python-format msgid "Custom Column No.%(column)d is not existing in calibre database" msgstr "La colonna personale no.%(column)d non esiste nel database di Calibre" -#: cps/web.py:1304 +#: cps/web.py:1301 #, python-format msgid "Book successfully queued for sending to %(kindlemail)s" msgstr "Libro accodato con successo per essere spedito a %(kindlemail)s" -#: cps/web.py:1308 +#: cps/web.py:1305 #, python-format msgid "Oops! There was an error sending this book: %(res)s" msgstr "Si è verificato un errore durante l'invio di questo libro: %(res)s" -#: cps/web.py:1310 +#: cps/web.py:1307 msgid "Please update your profile with a valid Send to Kindle E-mail Address." msgstr "Per favore aggiorna il tuo profilo con un indirizzo e-mail Kindle a cui inviare i libri." -#: cps/web.py:1327 +#: cps/web.py:1324 msgid "E-Mail server is not configured, please contact your administrator!" msgstr "Il server e-mail non è configurato, per favore contatta l'amministratore" -#: cps/web.py:1328 cps/web.py:1338 cps/web.py:1362 cps/web.py:1366 -#: cps/web.py:1371 cps/web.py:1375 +#: cps/web.py:1325 cps/web.py:1335 cps/web.py:1359 cps/web.py:1363 +#: cps/web.py:1368 cps/web.py:1372 msgid "register" msgstr "registra" -#: cps/web.py:1364 +#: cps/web.py:1361 msgid "Your e-mail is not allowed to register" msgstr "Il tuo e-mail non è autorizzato alla registrazione" -#: cps/web.py:1367 +#: cps/web.py:1364 msgid "Confirmation e-mail was send to your e-mail account." msgstr "Un e-mail di conferma è stato inviato al tuo indirizzo." -#: cps/web.py:1370 +#: cps/web.py:1367 msgid "This username or e-mail address is already in use." msgstr "Questo nome di utente o questo e-mail sono già utilizzati." -#: cps/web.py:1387 +#: cps/web.py:1384 msgid "Cannot activate LDAP authentication" msgstr "Non posso attivare l'autenticazione LDAP" -#: cps/web.py:1404 +#: cps/web.py:1401 #, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgstr "Login come: '%(nickname)s', il server LDAP non è raggiungibile o l'utente è sconosciuto" -#: cps/web.py:1410 +#: cps/web.py:1407 #, python-format msgid "Could not login: %(message)s" msgstr "Non posso accedere: %(message)s" -#: cps/web.py:1414 cps/web.py:1438 +#: cps/web.py:1411 cps/web.py:1435 msgid "Wrong Username or Password" msgstr "Nome utente o password errati" -#: cps/web.py:1421 +#: cps/web.py:1418 msgid "New Password was send to your email address" msgstr "Una nuova password è stata inviata al tuo recapito e-mail" -#: cps/web.py:1427 +#: cps/web.py:1424 msgid "Please enter valid username to reset password" msgstr "Per favore digita un nome di utente valido per resettare la password" -#: cps/web.py:1433 +#: cps/web.py:1430 #, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "Ora sei connesso come '%(nickname)s'" -#: cps/web.py:1442 cps/web.py:1469 +#: cps/web.py:1439 cps/web.py:1466 msgid "login" msgstr "accedi" -#: cps/web.py:1481 cps/web.py:1515 +#: cps/web.py:1478 cps/web.py:1512 msgid "Token not found" msgstr "Token non trovato" -#: cps/web.py:1490 cps/web.py:1523 +#: cps/web.py:1487 cps/web.py:1520 msgid "Token has expired" msgstr "Il token è scaduto" -#: cps/web.py:1499 +#: cps/web.py:1496 msgid "Success! Please return to your device" msgstr "Riuscito! Torna al tuo dispositivo" -#: cps/web.py:1580 cps/web.py:1625 cps/web.py:1631 +#: cps/web.py:1577 cps/web.py:1622 cps/web.py:1628 #, python-format msgid "%(name)s's profile" msgstr "Profilo di %(name)s" -#: cps/web.py:1627 +#: cps/web.py:1624 msgid "Profile updated" msgstr "Profilo aggiornato" -#: cps/web.py:1656 cps/web.py:1659 cps/web.py:1662 cps/web.py:1669 -#: cps/web.py:1674 +#: cps/web.py:1653 cps/web.py:1656 cps/web.py:1659 cps/web.py:1666 +#: cps/web.py:1671 msgid "Read a Book" msgstr "Leggi un libro" diff --git a/cps/translations/ja/LC_MESSAGES/messages.mo b/cps/translations/ja/LC_MESSAGES/messages.mo index 93735fd7..636d38e0 100644 Binary files a/cps/translations/ja/LC_MESSAGES/messages.mo and b/cps/translations/ja/LC_MESSAGES/messages.mo differ diff --git a/cps/translations/ja/LC_MESSAGES/messages.po b/cps/translations/ja/LC_MESSAGES/messages.po index a9c8bfd8..4ae537dc 100644 --- a/cps/translations/ja/LC_MESSAGES/messages.po +++ b/cps/translations/ja/LC_MESSAGES/messages.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Calibre-Web\n" "Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n" -"POT-Creation-Date: 2020-06-07 06:47+0200\n" +"POT-Creation-Date: 2020-06-28 09:31+0200\n" "PO-Revision-Date: 2018-02-07 02:20-0500\n" "Last-Translator: white \n" "Language: ja\n" @@ -46,9 +46,9 @@ msgstr "" msgid "Unknown command" msgstr "" -#: cps/admin.py:116 cps/editbooks.py:563 cps/editbooks.py:573 -#: cps/editbooks.py:667 cps/editbooks.py:669 cps/editbooks.py:730 -#: cps/editbooks.py:743 cps/updater.py:509 cps/uploader.py:97 +#: cps/admin.py:116 cps/editbooks.py:564 cps/editbooks.py:576 +#: cps/editbooks.py:670 cps/editbooks.py:672 cps/editbooks.py:733 +#: cps/editbooks.py:749 cps/updater.py:509 cps/uploader.py:97 #: cps/uploader.py:107 msgid "Unknown" msgstr "不明" @@ -61,7 +61,7 @@ msgstr "管理者ページ" msgid "UI Configuration" msgstr "UI設定" -#: cps/admin.py:189 cps/admin.py:706 +#: cps/admin.py:189 cps/admin.py:711 msgid "Calibre-Web configuration updated" msgstr "Calibre-Web の設定を更新しました" @@ -113,175 +113,181 @@ msgstr "" msgid "LDAP Certificate Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:627 +#: cps/admin.py:628 msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:631 +#: cps/admin.py:632 msgid "Certfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:701 +#: cps/admin.py:694 cps/admin.py:793 cps/admin.py:885 cps/admin.py:934 +#: cps/shelf.py:100 cps/shelf.py:161 cps/shelf.py:202 cps/shelf.py:260 +#: cps/shelf.py:309 cps/shelf.py:338 cps/shelf.py:368 cps/shelf.py:392 +msgid "Settings DB is not Writeable" +msgstr "" + +#: cps/admin.py:706 msgid "DB Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:703 +#: cps/admin.py:708 msgid "DB is not Writeable" msgstr "" -#: cps/admin.py:736 +#: cps/admin.py:741 msgid "Basic Configuration" msgstr "基本設定" -#: cps/admin.py:751 cps/web.py:1337 +#: cps/admin.py:756 cps/web.py:1334 msgid "Please fill out all fields!" msgstr "全ての項目を入力してください" -#: cps/admin.py:754 cps/admin.py:766 cps/admin.py:772 cps/admin.py:892 +#: cps/admin.py:759 cps/admin.py:771 cps/admin.py:777 cps/admin.py:903 msgid "Add new user" msgstr "新規ユーザ追加" -#: cps/admin.py:763 cps/web.py:1578 +#: cps/admin.py:768 cps/web.py:1575 msgid "E-mail is not from valid domain" msgstr "このメールは有効なドメインからのものではありません" -#: cps/admin.py:770 cps/admin.py:785 +#: cps/admin.py:775 cps/admin.py:790 msgid "Found an existing account for this e-mail address or nickname." msgstr "このメールアドレスかニックネームで登録されたアカウントが見つかりました" -#: cps/admin.py:781 +#: cps/admin.py:786 #, python-format msgid "User '%(user)s' created" msgstr "ユーザ '%(user)s' を作成しました" -#: cps/admin.py:794 +#: cps/admin.py:802 #, python-format msgid "User '%(nick)s' deleted" msgstr "ユーザ '%(nick)s' を削除しました" -#: cps/admin.py:797 +#: cps/admin.py:805 msgid "No admin user remaining, can't delete user" msgstr "" -#: cps/admin.py:803 +#: cps/admin.py:811 msgid "No admin user remaining, can't remove admin role" msgstr "" -#: cps/admin.py:839 cps/web.py:1621 +#: cps/admin.py:847 cps/web.py:1618 msgid "Found an existing account for this e-mail address." msgstr "このメールアドレスで登録されたアカウントがあります" -#: cps/admin.py:849 cps/admin.py:864 cps/admin.py:967 cps/web.py:1596 +#: cps/admin.py:857 cps/admin.py:872 cps/admin.py:983 cps/web.py:1593 #, python-format msgid "Edit User %(nick)s" msgstr "%(nick)s を編集" -#: cps/admin.py:855 cps/web.py:1588 +#: cps/admin.py:863 cps/web.py:1585 msgid "This username is already taken" msgstr "" -#: cps/admin.py:871 +#: cps/admin.py:879 #, python-format msgid "User '%(nick)s' updated" msgstr "ユーザ '%(nick)s' を更新しました" -#: cps/admin.py:874 +#: cps/admin.py:882 msgid "An unknown error occured." msgstr "不明なエラーが発生しました。" -#: cps/admin.py:901 cps/templates/admin.html:71 +#: cps/admin.py:912 cps/templates/admin.html:71 msgid "Edit E-mail Server Settings" msgstr "SMTP設定を変更" -#: cps/admin.py:925 +#: cps/admin.py:941 #, python-format msgid "Test e-mail successfully send to %(kindlemail)s" msgstr "テストメールが %(kindlemail)s に送信されました" -#: cps/admin.py:928 +#: cps/admin.py:944 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "テストメールを %(res)s に送信中にエラーが発生しました" -#: cps/admin.py:930 +#: cps/admin.py:946 msgid "Please configure your e-mail address first..." msgstr "" -#: cps/admin.py:932 +#: cps/admin.py:948 msgid "E-mail server settings updated" msgstr "メールサーバの設定を更新しました" -#: cps/admin.py:943 +#: cps/admin.py:959 msgid "User not found" msgstr "" -#: cps/admin.py:978 +#: cps/admin.py:994 #, python-format msgid "Password for user %(user)s reset" msgstr "%(user)s 用のパスワードをリセット" -#: cps/admin.py:981 cps/web.py:1361 cps/web.py:1425 +#: cps/admin.py:997 cps/web.py:1358 cps/web.py:1422 msgid "An unknown error occurred. Please try again later." msgstr "不明なエラーが発生しました。あとで再試行してください。" -#: cps/admin.py:984 cps/web.py:1299 +#: cps/admin.py:1000 cps/web.py:1296 msgid "Please configure the SMTP mail settings first..." msgstr "初めにSMTPメールの設定をしてください" -#: cps/admin.py:996 +#: cps/admin.py:1012 msgid "Logfile viewer" msgstr "" -#: cps/admin.py:1035 +#: cps/admin.py:1051 msgid "Requesting update package" msgstr "更新データを要求中" -#: cps/admin.py:1036 +#: cps/admin.py:1052 msgid "Downloading update package" msgstr "更新データをダウンロード中" -#: cps/admin.py:1037 +#: cps/admin.py:1053 msgid "Unzipping update package" msgstr "更新データを展開中" -#: cps/admin.py:1038 +#: cps/admin.py:1054 msgid "Replacing files" msgstr "ファイルを置換中" -#: cps/admin.py:1039 +#: cps/admin.py:1055 msgid "Database connections are closed" msgstr "データベースの接続を切断完了" -#: cps/admin.py:1040 +#: cps/admin.py:1056 msgid "Stopping server" msgstr "サーバ停止中" -#: cps/admin.py:1041 +#: cps/admin.py:1057 msgid "Update finished, please press okay and reload page" msgstr "アップデート完了、OKを押してページをリロードしてください" -#: cps/admin.py:1042 cps/admin.py:1043 cps/admin.py:1044 cps/admin.py:1045 -#: cps/admin.py:1046 +#: cps/admin.py:1058 cps/admin.py:1059 cps/admin.py:1060 cps/admin.py:1061 +#: cps/admin.py:1062 msgid "Update failed:" msgstr "アップデート失敗:" -#: cps/admin.py:1042 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522 +#: cps/admin.py:1058 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522 msgid "HTTP Error" msgstr "HTTPエラー" -#: cps/admin.py:1043 cps/updater.py:321 cps/updater.py:524 +#: cps/admin.py:1059 cps/updater.py:321 cps/updater.py:524 msgid "Connection error" msgstr "接続エラー" -#: cps/admin.py:1044 cps/updater.py:323 cps/updater.py:526 +#: cps/admin.py:1060 cps/updater.py:323 cps/updater.py:526 msgid "Timeout while establishing connection" msgstr "接続を確立中にタイムアウトしました" -#: cps/admin.py:1045 cps/updater.py:325 cps/updater.py:528 +#: cps/admin.py:1061 cps/updater.py:325 cps/updater.py:528 msgid "General error" msgstr "エラー発生" -#: cps/admin.py:1046 +#: cps/admin.py:1062 msgid "Update File Could Not be Saved in Temp Dir" msgstr "" @@ -301,8 +307,8 @@ msgstr "" msgid "Book Successfully Deleted" msgstr "" -#: cps/editbooks.py:254 cps/editbooks.py:548 cps/web.py:1644 cps/web.py:1685 -#: cps/web.py:1747 +#: cps/editbooks.py:254 cps/editbooks.py:549 cps/web.py:1641 cps/web.py:1682 +#: cps/web.py:1744 msgid "Error opening eBook. File does not exist or file is not accessible" msgstr "電子書籍を開けません。ファイルが存在しないかアクセスできません" @@ -310,82 +316,82 @@ msgstr "電子書籍を開けません。ファイルが存在しないかアク msgid "edit metadata" msgstr "メタデータを編集" -#: cps/editbooks.py:361 +#: cps/editbooks.py:360 #, python-format msgid "%(langname)s is not a valid language" msgstr "%(langname)s は有効な言語ではありません" -#: cps/editbooks.py:467 cps/editbooks.py:712 +#: cps/editbooks.py:468 cps/editbooks.py:715 #, python-format msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgstr "ファイル拡張子 '%(ext)s' をこのサーバにアップロードすることは許可されていません" -#: cps/editbooks.py:471 cps/editbooks.py:716 +#: cps/editbooks.py:472 cps/editbooks.py:719 msgid "File to be uploaded must have an extension" msgstr "アップロードするファイルには拡張子が必要です" -#: cps/editbooks.py:483 cps/editbooks.py:773 +#: cps/editbooks.py:484 cps/editbooks.py:779 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "%(path)s の作成に失敗しました (Permission denied)。" -#: cps/editbooks.py:488 +#: cps/editbooks.py:489 #, python-format msgid "Failed to store file %(file)s." msgstr "%(file)s を保存できません。" -#: cps/editbooks.py:506 cps/editbooks.py:864 +#: cps/editbooks.py:507 cps/editbooks.py:870 #, python-format msgid "Database error: %(error)s." msgstr "" -#: cps/editbooks.py:510 +#: cps/editbooks.py:511 #, python-format msgid "File format %(ext)s added to %(book)s" msgstr "ファイル形式 %(ext)s が %(book)s に追加されました" -#: cps/editbooks.py:653 +#: cps/editbooks.py:656 msgid "Metadata successfully updated" msgstr "メタデータを更新しました" -#: cps/editbooks.py:662 +#: cps/editbooks.py:665 msgid "Error editing book, please check logfile for details" msgstr "本の編集でエラーが発生しました。詳細はログファイルを確認してください" -#: cps/editbooks.py:724 +#: cps/editbooks.py:727 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "" -#: cps/editbooks.py:734 +#: cps/editbooks.py:737 msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgstr "" -#: cps/editbooks.py:780 +#: cps/editbooks.py:786 #, python-format msgid "Failed to Move File %(file)s: %(error)s" msgstr "" -#: cps/editbooks.py:836 +#: cps/editbooks.py:842 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "" -#: cps/editbooks.py:850 +#: cps/editbooks.py:856 #, python-format msgid "File %(file)s uploaded" msgstr "" -#: cps/editbooks.py:876 +#: cps/editbooks.py:882 msgid "Source or destination format for conversion missing" msgstr "変換元の形式または変換後の形式が指定されていません" -#: cps/editbooks.py:884 +#: cps/editbooks.py:890 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "本の %(book_format)s への変換がキューに追加されました" -#: cps/editbooks.py:888 +#: cps/editbooks.py:894 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "この本の変換中にエラーが発生しました: %(res)s" @@ -499,71 +505,71 @@ msgstr "ファイル %(file)s はGoogleドライブ上にありません" msgid "Book path %(path)s not found on Google Drive" msgstr "本のパス %(path)s はGoogleドライブ上にありません" -#: cps/helper.py:542 +#: cps/helper.py:550 msgid "Error Downloading Cover" msgstr "" -#: cps/helper.py:545 +#: cps/helper.py:553 msgid "Cover Format Error" msgstr "" -#: cps/helper.py:561 +#: cps/helper.py:569 msgid "Failed to create path for cover" msgstr "" -#: cps/helper.py:566 +#: cps/helper.py:574 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "" -#: cps/helper.py:577 +#: cps/helper.py:585 msgid "Only jpg/jpeg/png/webp files are supported as coverfile" msgstr "" -#: cps/helper.py:591 +#: cps/helper.py:599 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "" -#: cps/helper.py:640 +#: cps/helper.py:648 msgid "Unrar binary file not found" msgstr "" -#: cps/helper.py:654 +#: cps/helper.py:662 msgid "Error excecuting UnRar" msgstr "" -#: cps/helper.py:710 +#: cps/helper.py:718 msgid "Waiting" msgstr "待機中" -#: cps/helper.py:712 +#: cps/helper.py:720 msgid "Failed" msgstr "失敗" -#: cps/helper.py:714 +#: cps/helper.py:722 msgid "Started" msgstr "開始" -#: cps/helper.py:716 +#: cps/helper.py:724 msgid "Finished" msgstr "終了" -#: cps/helper.py:718 +#: cps/helper.py:726 msgid "Unknown Status" msgstr "不明" -#: cps/helper.py:723 +#: cps/helper.py:731 msgid "E-mail: " msgstr "メール: " -#: cps/helper.py:725 cps/helper.py:729 +#: cps/helper.py:733 cps/helper.py:737 msgid "Convert: " msgstr "変換: " -#: cps/helper.py:727 +#: cps/helper.py:735 msgid "Upload: " msgstr "アップロード: " -#: cps/helper.py:731 +#: cps/helper.py:739 msgid "Unknown Task: " msgstr "不明なタスク: " @@ -596,7 +602,7 @@ msgstr "" msgid "Failed to fetch user info from Google." msgstr "" -#: cps/oauth_bb.py:225 cps/web.py:1397 cps/web.py:1537 +#: cps/oauth_bb.py:225 cps/web.py:1394 cps/web.py:1534 #, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "%(nickname)s としてログイン中" @@ -633,218 +639,218 @@ msgstr "" msgid "Google Oauth error, please retry later." msgstr "" -#: cps/shelf.py:66 cps/shelf.py:111 +#: cps/shelf.py:67 cps/shelf.py:120 msgid "Invalid shelf specified" msgstr "指定された本棚は無効です" -#: cps/shelf.py:72 +#: cps/shelf.py:73 #, python-format msgid "Sorry you are not allowed to add a book to the the shelf: %(shelfname)s" msgstr "申し訳ありませんが、あなたは %(shelfname)s に本を追加することが許可されていません" -#: cps/shelf.py:82 +#: cps/shelf.py:83 #, python-format msgid "Book is already part of the shelf: %(shelfname)s" msgstr "この本は %(shelfname)s にすでに追加されています" -#: cps/shelf.py:97 +#: cps/shelf.py:106 #, python-format msgid "Book has been added to shelf: %(sname)s" msgstr "本を %(sname)s に追加しました" -#: cps/shelf.py:115 +#: cps/shelf.py:124 #, python-format msgid "You are not allowed to add a book to the the shelf: %(name)s" msgstr "%(name)s に本を追加することが許可されていません" -#: cps/shelf.py:133 +#: cps/shelf.py:142 #, python-format msgid "Books are already part of the shelf: %(name)s" msgstr "これらの本は %(name)s にすでに追加されています" -#: cps/shelf.py:148 +#: cps/shelf.py:158 #, python-format msgid "Books have been added to shelf: %(sname)s" msgstr "本が %(sname)s に追加されました" -#: cps/shelf.py:150 +#: cps/shelf.py:163 #, python-format msgid "Could not add books to shelf: %(sname)s" msgstr "%(sname)s に本を追加できません" -#: cps/shelf.py:188 +#: cps/shelf.py:208 #, python-format msgid "Book has been removed from shelf: %(sname)s" msgstr "本が %(sname)s から削除されました" -#: cps/shelf.py:196 +#: cps/shelf.py:216 #, python-format msgid "Sorry you are not allowed to remove a book from this shelf: %(sname)s" msgstr "申し訳ありませんが、%(sname)s から本を削除することが許可されていません" -#: cps/shelf.py:220 cps/shelf.py:260 +#: cps/shelf.py:240 cps/shelf.py:284 #, python-format msgid "A public shelf with the name '%(title)s' already exists." msgstr "" -#: cps/shelf.py:229 cps/shelf.py:270 +#: cps/shelf.py:249 cps/shelf.py:294 #, python-format msgid "A private shelf with the name '%(title)s' already exists." msgstr "" -#: cps/shelf.py:236 +#: cps/shelf.py:256 #, python-format msgid "Shelf %(title)s created" msgstr "%(title)s を作成しました" -#: cps/shelf.py:239 cps/shelf.py:284 +#: cps/shelf.py:263 cps/shelf.py:312 msgid "There was an error" msgstr "エラーが発生しました" -#: cps/shelf.py:240 cps/shelf.py:242 cps/templates/layout.html:144 +#: cps/shelf.py:264 cps/shelf.py:266 cps/templates/layout.html:144 msgid "Create a Shelf" msgstr "本棚を作成する" -#: cps/shelf.py:282 +#: cps/shelf.py:306 #, python-format msgid "Shelf %(title)s changed" msgstr "%(title)s を変更しました" -#: cps/shelf.py:285 cps/shelf.py:287 +#: cps/shelf.py:313 cps/shelf.py:315 msgid "Edit a shelf" msgstr "本棚を編集する" -#: cps/shelf.py:332 +#: cps/shelf.py:369 #, python-format msgid "Shelf: '%(name)s'" msgstr "本棚: '%(name)s'" -#: cps/shelf.py:335 +#: cps/shelf.py:372 msgid "Error opening shelf. Shelf does not exist or is not accessible" msgstr "本棚を開けません。この本棚は存在しないかアクセスできません" -#: cps/shelf.py:368 +#: cps/shelf.py:409 msgid "Hidden Book" msgstr "" -#: cps/shelf.py:373 +#: cps/shelf.py:414 #, python-format msgid "Change order of Shelf: '%(name)s'" msgstr "'%(name)s' 内の本の順番を変更する" -#: cps/ub.py:64 +#: cps/ub.py:65 msgid "Recently Added" msgstr "最近追加した本" -#: cps/ub.py:66 +#: cps/ub.py:67 msgid "Show recent books" msgstr "最近追加された本を表示" -#: cps/templates/index.xml:17 cps/ub.py:67 +#: cps/templates/index.xml:17 cps/ub.py:68 msgid "Hot Books" msgstr "人気の本" -#: cps/ub.py:69 +#: cps/ub.py:70 msgid "Show Hot Books" msgstr "" -#: cps/templates/index.xml:24 cps/ub.py:71 cps/web.py:655 +#: cps/templates/index.xml:24 cps/ub.py:72 cps/web.py:652 msgid "Top Rated Books" msgstr "" -#: cps/ub.py:73 +#: cps/ub.py:74 msgid "Show Top Rated Books" msgstr "" -#: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:74 -#: cps/web.py:1222 +#: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:75 +#: cps/web.py:1219 msgid "Read Books" msgstr "読んだ本" -#: cps/ub.py:76 +#: cps/ub.py:77 msgid "Show read and unread" msgstr "既読の本と未読の本を表示" -#: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:78 -#: cps/web.py:1225 +#: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:79 +#: cps/web.py:1222 msgid "Unread Books" msgstr "未読の本" -#: cps/ub.py:80 +#: cps/ub.py:81 msgid "Show unread" msgstr "" -#: cps/ub.py:81 +#: cps/ub.py:82 msgid "Discover" msgstr "見つける" -#: cps/ub.py:83 +#: cps/ub.py:84 msgid "Show random books" msgstr "ランダムで本を表示" -#: cps/templates/index.xml:75 cps/ub.py:84 cps/web.py:970 +#: cps/templates/index.xml:75 cps/ub.py:85 cps/web.py:967 msgid "Categories" msgstr "カテゴリ" -#: cps/ub.py:86 +#: cps/ub.py:87 msgid "Show category selection" msgstr "カテゴリ選択を表示" #: cps/templates/book_edit.html:84 cps/templates/index.xml:82 -#: cps/templates/search_form.html:53 cps/ub.py:87 cps/web.py:886 cps/web.py:896 +#: cps/templates/search_form.html:53 cps/ub.py:88 cps/web.py:883 cps/web.py:893 msgid "Series" msgstr "シリーズ" -#: cps/ub.py:89 +#: cps/ub.py:90 msgid "Show series selection" msgstr "シリーズ選択を表示" -#: cps/templates/index.xml:61 cps/ub.py:90 +#: cps/templates/index.xml:61 cps/ub.py:91 msgid "Authors" msgstr "著者" -#: cps/ub.py:92 +#: cps/ub.py:93 msgid "Show author selection" msgstr "著者選択を表示" -#: cps/templates/index.xml:68 cps/ub.py:94 cps/web.py:869 +#: cps/templates/index.xml:68 cps/ub.py:95 cps/web.py:866 msgid "Publishers" msgstr "出版社" -#: cps/ub.py:96 +#: cps/ub.py:97 msgid "Show publisher selection" msgstr "出版社選択を表示" -#: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:97 -#: cps/web.py:953 +#: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:98 +#: cps/web.py:950 msgid "Languages" msgstr "言語" -#: cps/ub.py:100 +#: cps/ub.py:101 msgid "Show language selection" msgstr "言語選択を表示" -#: cps/templates/index.xml:96 cps/ub.py:101 +#: cps/templates/index.xml:96 cps/ub.py:102 msgid "Ratings" msgstr "" -#: cps/ub.py:103 +#: cps/ub.py:104 msgid "Show ratings selection" msgstr "" -#: cps/templates/index.xml:104 cps/ub.py:104 +#: cps/templates/index.xml:104 cps/ub.py:105 msgid "File formats" msgstr "" -#: cps/ub.py:106 +#: cps/ub.py:107 msgid "Show file formats selection" msgstr "" -#: cps/ub.py:108 cps/web.py:1249 +#: cps/ub.py:109 cps/web.py:1246 msgid "Archived Books" msgstr "" -#: cps/ub.py:110 +#: cps/ub.py:111 msgid "Show archived books" msgstr "" @@ -877,220 +883,220 @@ msgstr "アップデートが利用可能です。下のボタンをクリック msgid "Click on the button below to update to the latest stable version." msgstr "" -#: cps/web.py:322 +#: cps/web.py:319 #, python-format msgid "Error: %(ldaperror)s" msgstr "" -#: cps/web.py:326 +#: cps/web.py:323 msgid "Error: No user returned in response of LDAP server" msgstr "" -#: cps/web.py:374 +#: cps/web.py:371 msgid "Failed to Create at Least One LDAP User" msgstr "" -#: cps/web.py:377 +#: cps/web.py:374 msgid "At Least One LDAP User Not Found in Database" msgstr "" -#: cps/web.py:379 +#: cps/web.py:376 msgid "User Successfully Imported" msgstr "" -#: cps/web.py:625 +#: cps/web.py:622 msgid "Recently Added Books" msgstr "最近追加された本" -#: cps/templates/index.html:5 cps/web.py:663 +#: cps/templates/index.html:5 cps/web.py:660 msgid "Discover (Random Books)" msgstr "本を見つける (ランダムで表示)" -#: cps/web.py:691 +#: cps/web.py:688 msgid "Books" msgstr "" -#: cps/web.py:718 +#: cps/web.py:715 msgid "Hot Books (Most Downloaded)" msgstr "" -#: cps/web.py:731 +#: cps/web.py:728 msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible" msgstr "" -#: cps/web.py:745 +#: cps/web.py:742 #, python-format msgid "Author: %(name)s" msgstr "" -#: cps/web.py:759 +#: cps/web.py:756 #, python-format msgid "Publisher: %(name)s" msgstr "出版社: %(name)s" -#: cps/web.py:772 +#: cps/web.py:769 #, python-format msgid "Series: %(serie)s" msgstr "シリーズ: %(serie)s" -#: cps/web.py:785 +#: cps/web.py:782 #, python-format msgid "Rating: %(rating)s stars" msgstr "" -#: cps/web.py:798 +#: cps/web.py:795 #, python-format msgid "File format: %(format)s" msgstr "" -#: cps/web.py:812 +#: cps/web.py:809 #, python-format msgid "Category: %(name)s" msgstr "カテゴリ: %(name)s" -#: cps/web.py:831 +#: cps/web.py:828 #, python-format msgid "Language: %(name)s" msgstr "言語: %(name)s" -#: cps/web.py:910 +#: cps/web.py:907 msgid "Ratings list" msgstr "" -#: cps/web.py:925 +#: cps/web.py:922 msgid "File formats list" msgstr "" -#: cps/templates/layout.html:74 cps/templates/tasks.html:7 cps/web.py:984 +#: cps/templates/layout.html:74 cps/templates/tasks.html:7 cps/web.py:981 msgid "Tasks" msgstr "タスク" #: cps/templates/book_edit.html:235 cps/templates/feed.xml:33 #: cps/templates/layout.html:45 cps/templates/layout.html:48 -#: cps/templates/search_form.html:174 cps/web.py:1010 cps/web.py:1015 +#: cps/templates/search_form.html:174 cps/web.py:1007 cps/web.py:1012 msgid "Search" msgstr "検索" -#: cps/web.py:1066 +#: cps/web.py:1063 msgid "Published after " msgstr "これ以降に出版 " -#: cps/web.py:1073 +#: cps/web.py:1070 msgid "Published before " msgstr "これ以前に出版 " -#: cps/web.py:1087 +#: cps/web.py:1084 #, python-format msgid "Rating <= %(rating)s" msgstr "評価 <= %(rating)s" -#: cps/web.py:1089 +#: cps/web.py:1086 #, python-format msgid "Rating >= %(rating)s" msgstr "評価 >= %(rating)s" -#: cps/web.py:1158 cps/web.py:1183 +#: cps/web.py:1155 cps/web.py:1180 msgid "search" msgstr "検索" -#: cps/web.py:1213 +#: cps/web.py:1210 #, python-format msgid "Custom Column No.%(column)d is not existing in calibre database" msgstr "" -#: cps/web.py:1304 +#: cps/web.py:1301 #, python-format msgid "Book successfully queued for sending to %(kindlemail)s" msgstr "本の %(kindlemail)s への送信がキューに追加されました" -#: cps/web.py:1308 +#: cps/web.py:1305 #, python-format msgid "Oops! There was an error sending this book: %(res)s" msgstr "%(res)s を送信中にエラーが発生しました" -#: cps/web.py:1310 +#: cps/web.py:1307 msgid "Please update your profile with a valid Send to Kindle E-mail Address." msgstr "初めにKindleのメールアドレスを設定してください" -#: cps/web.py:1327 +#: cps/web.py:1324 msgid "E-Mail server is not configured, please contact your administrator!" msgstr "" -#: cps/web.py:1328 cps/web.py:1338 cps/web.py:1362 cps/web.py:1366 -#: cps/web.py:1371 cps/web.py:1375 +#: cps/web.py:1325 cps/web.py:1335 cps/web.py:1359 cps/web.py:1363 +#: cps/web.py:1368 cps/web.py:1372 msgid "register" msgstr "登録" -#: cps/web.py:1364 +#: cps/web.py:1361 msgid "Your e-mail is not allowed to register" msgstr "このメールアドレスは登録が許可されていません" -#: cps/web.py:1367 +#: cps/web.py:1364 msgid "Confirmation e-mail was send to your e-mail account." msgstr "確認メールがこのメールアドレスに送信されました。" -#: cps/web.py:1370 +#: cps/web.py:1367 msgid "This username or e-mail address is already in use." msgstr "このユーザ名またはメールアドレスはすでに使われています。" -#: cps/web.py:1387 +#: cps/web.py:1384 msgid "Cannot activate LDAP authentication" msgstr "" -#: cps/web.py:1404 +#: cps/web.py:1401 #, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgstr "" -#: cps/web.py:1410 +#: cps/web.py:1407 #, python-format msgid "Could not login: %(message)s" msgstr "" -#: cps/web.py:1414 cps/web.py:1438 +#: cps/web.py:1411 cps/web.py:1435 msgid "Wrong Username or Password" msgstr "ユーザ名またはパスワードが違います" -#: cps/web.py:1421 +#: cps/web.py:1418 msgid "New Password was send to your email address" msgstr "" -#: cps/web.py:1427 +#: cps/web.py:1424 msgid "Please enter valid username to reset password" msgstr "" -#: cps/web.py:1433 +#: cps/web.py:1430 #, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "" -#: cps/web.py:1442 cps/web.py:1469 +#: cps/web.py:1439 cps/web.py:1466 msgid "login" msgstr "ログイン" -#: cps/web.py:1481 cps/web.py:1515 +#: cps/web.py:1478 cps/web.py:1512 msgid "Token not found" msgstr "トークンが見つかりません" -#: cps/web.py:1490 cps/web.py:1523 +#: cps/web.py:1487 cps/web.py:1520 msgid "Token has expired" msgstr "トークンが無効です" -#: cps/web.py:1499 +#: cps/web.py:1496 msgid "Success! Please return to your device" msgstr "成功です!端末に戻ってください" -#: cps/web.py:1580 cps/web.py:1625 cps/web.py:1631 +#: cps/web.py:1577 cps/web.py:1622 cps/web.py:1628 #, python-format msgid "%(name)s's profile" msgstr "%(name)s のプロフィール" -#: cps/web.py:1627 +#: cps/web.py:1624 msgid "Profile updated" msgstr "プロフィールを更新しました" -#: cps/web.py:1656 cps/web.py:1659 cps/web.py:1662 cps/web.py:1669 -#: cps/web.py:1674 +#: cps/web.py:1653 cps/web.py:1656 cps/web.py:1659 cps/web.py:1666 +#: cps/web.py:1671 msgid "Read a Book" msgstr "本を読む" diff --git a/cps/translations/km/LC_MESSAGES/messages.mo b/cps/translations/km/LC_MESSAGES/messages.mo index 9f789233..2db61a46 100644 Binary files a/cps/translations/km/LC_MESSAGES/messages.mo and b/cps/translations/km/LC_MESSAGES/messages.mo differ diff --git a/cps/translations/km/LC_MESSAGES/messages.po b/cps/translations/km/LC_MESSAGES/messages.po index c1a2b074..10d2d6af 100644 --- a/cps/translations/km/LC_MESSAGES/messages.po +++ b/cps/translations/km/LC_MESSAGES/messages.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: Calibre-Web\n" "Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n" -"POT-Creation-Date: 2020-06-07 06:47+0200\n" +"POT-Creation-Date: 2020-06-28 09:31+0200\n" "PO-Revision-Date: 2018-08-27 17:06+0700\n" "Last-Translator: \n" "Language: km_KH\n" @@ -47,9 +47,9 @@ msgstr "" msgid "Unknown command" msgstr "" -#: cps/admin.py:116 cps/editbooks.py:563 cps/editbooks.py:573 -#: cps/editbooks.py:667 cps/editbooks.py:669 cps/editbooks.py:730 -#: cps/editbooks.py:743 cps/updater.py:509 cps/uploader.py:97 +#: cps/admin.py:116 cps/editbooks.py:564 cps/editbooks.py:576 +#: cps/editbooks.py:670 cps/editbooks.py:672 cps/editbooks.py:733 +#: cps/editbooks.py:749 cps/updater.py:509 cps/uploader.py:97 #: cps/uploader.py:107 msgid "Unknown" msgstr "មិនដឹង" @@ -62,7 +62,7 @@ msgstr "ទំព័ររដ្ឋបាល" msgid "UI Configuration" msgstr "ការកំណត់ផ្ទាំងប្រើប្រាស់" -#: cps/admin.py:189 cps/admin.py:706 +#: cps/admin.py:189 cps/admin.py:711 msgid "Calibre-Web configuration updated" msgstr "" @@ -114,175 +114,181 @@ msgstr "" msgid "LDAP Certificate Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:627 +#: cps/admin.py:628 msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:631 +#: cps/admin.py:632 msgid "Certfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:701 +#: cps/admin.py:694 cps/admin.py:793 cps/admin.py:885 cps/admin.py:934 +#: cps/shelf.py:100 cps/shelf.py:161 cps/shelf.py:202 cps/shelf.py:260 +#: cps/shelf.py:309 cps/shelf.py:338 cps/shelf.py:368 cps/shelf.py:392 +msgid "Settings DB is not Writeable" +msgstr "" + +#: cps/admin.py:706 msgid "DB Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:703 +#: cps/admin.py:708 msgid "DB is not Writeable" msgstr "" -#: cps/admin.py:736 +#: cps/admin.py:741 msgid "Basic Configuration" msgstr "ការកំណត់សាមញ្ញ" -#: cps/admin.py:751 cps/web.py:1337 +#: cps/admin.py:756 cps/web.py:1334 msgid "Please fill out all fields!" msgstr "សូមបំពេញចន្លោះទាំងអស់!" -#: cps/admin.py:754 cps/admin.py:766 cps/admin.py:772 cps/admin.py:892 +#: cps/admin.py:759 cps/admin.py:771 cps/admin.py:777 cps/admin.py:903 msgid "Add new user" msgstr "បន្ថែមអ្នកប្រើប្រាស់ថ្មី" -#: cps/admin.py:763 cps/web.py:1578 +#: cps/admin.py:768 cps/web.py:1575 msgid "E-mail is not from valid domain" msgstr "" -#: cps/admin.py:770 cps/admin.py:785 +#: cps/admin.py:775 cps/admin.py:790 msgid "Found an existing account for this e-mail address or nickname." msgstr "" -#: cps/admin.py:781 +#: cps/admin.py:786 #, python-format msgid "User '%(user)s' created" msgstr "បានបង្កើតអ្នកប្រើប្រាស់ ‘%(user)s’" -#: cps/admin.py:794 +#: cps/admin.py:802 #, python-format msgid "User '%(nick)s' deleted" msgstr "អ្នកប្រើប្រាស់ ‘%(nick)s’ ត្រូវបានលុប" -#: cps/admin.py:797 +#: cps/admin.py:805 msgid "No admin user remaining, can't delete user" msgstr "" -#: cps/admin.py:803 +#: cps/admin.py:811 msgid "No admin user remaining, can't remove admin role" msgstr "" -#: cps/admin.py:839 cps/web.py:1621 +#: cps/admin.py:847 cps/web.py:1618 msgid "Found an existing account for this e-mail address." msgstr "" -#: cps/admin.py:849 cps/admin.py:864 cps/admin.py:967 cps/web.py:1596 +#: cps/admin.py:857 cps/admin.py:872 cps/admin.py:983 cps/web.py:1593 #, python-format msgid "Edit User %(nick)s" msgstr "កែប្រែអ្នកប្រើប្រាស់ %(nick)s" -#: cps/admin.py:855 cps/web.py:1588 +#: cps/admin.py:863 cps/web.py:1585 msgid "This username is already taken" msgstr "" -#: cps/admin.py:871 +#: cps/admin.py:879 #, python-format msgid "User '%(nick)s' updated" msgstr "អ្នកប្រើប្រាស់ ‘%(nick)s’ ត្រូវបានកែប្រែ" -#: cps/admin.py:874 +#: cps/admin.py:882 msgid "An unknown error occured." msgstr "បញ្ហាដែលមិនដឹងបានកើតឡើង។" -#: cps/admin.py:901 cps/templates/admin.html:71 +#: cps/admin.py:912 cps/templates/admin.html:71 msgid "Edit E-mail Server Settings" msgstr "ប្តូរការកំណត់ SMTP" -#: cps/admin.py:925 +#: cps/admin.py:941 #, python-format msgid "Test e-mail successfully send to %(kindlemail)s" msgstr "" -#: cps/admin.py:928 +#: cps/admin.py:944 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "" -#: cps/admin.py:930 +#: cps/admin.py:946 msgid "Please configure your e-mail address first..." msgstr "" -#: cps/admin.py:932 +#: cps/admin.py:948 msgid "E-mail server settings updated" msgstr "" -#: cps/admin.py:943 +#: cps/admin.py:959 msgid "User not found" msgstr "" -#: cps/admin.py:978 +#: cps/admin.py:994 #, python-format msgid "Password for user %(user)s reset" msgstr "" -#: cps/admin.py:981 cps/web.py:1361 cps/web.py:1425 +#: cps/admin.py:997 cps/web.py:1358 cps/web.py:1422 msgid "An unknown error occurred. Please try again later." msgstr "" -#: cps/admin.py:984 cps/web.py:1299 +#: cps/admin.py:1000 cps/web.py:1296 msgid "Please configure the SMTP mail settings first..." msgstr "សូមកំណត់អ៊ីមែល SMTP ជាមុនសិន" -#: cps/admin.py:996 +#: cps/admin.py:1012 msgid "Logfile viewer" msgstr "" -#: cps/admin.py:1035 +#: cps/admin.py:1051 msgid "Requesting update package" msgstr "កំពុងស្នើសុំឯកសារបច្ចុប្បន្នភាព" -#: cps/admin.py:1036 +#: cps/admin.py:1052 msgid "Downloading update package" msgstr "កំពុងទាញយកឯកសារបច្ចុប្បន្នភាព" -#: cps/admin.py:1037 +#: cps/admin.py:1053 msgid "Unzipping update package" msgstr "កំពុងពន្លាឯកសារបច្ចុប្បន្នភាព" -#: cps/admin.py:1038 +#: cps/admin.py:1054 msgid "Replacing files" msgstr "" -#: cps/admin.py:1039 +#: cps/admin.py:1055 msgid "Database connections are closed" msgstr "ទំនាក់ទំនងទៅមូលដ្ឋានទិន្នន័យត្រូវបានផ្តាច់" -#: cps/admin.py:1040 +#: cps/admin.py:1056 msgid "Stopping server" msgstr "" -#: cps/admin.py:1041 +#: cps/admin.py:1057 msgid "Update finished, please press okay and reload page" msgstr "ការធ្វើបច្ចុប្បន្នភាពបានបញ្ចប់ សូមចុច okay រួចបើកទំព័រជាថ្មី" -#: cps/admin.py:1042 cps/admin.py:1043 cps/admin.py:1044 cps/admin.py:1045 -#: cps/admin.py:1046 +#: cps/admin.py:1058 cps/admin.py:1059 cps/admin.py:1060 cps/admin.py:1061 +#: cps/admin.py:1062 msgid "Update failed:" msgstr "" -#: cps/admin.py:1042 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522 +#: cps/admin.py:1058 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522 msgid "HTTP Error" msgstr "" -#: cps/admin.py:1043 cps/updater.py:321 cps/updater.py:524 +#: cps/admin.py:1059 cps/updater.py:321 cps/updater.py:524 msgid "Connection error" msgstr "" -#: cps/admin.py:1044 cps/updater.py:323 cps/updater.py:526 +#: cps/admin.py:1060 cps/updater.py:323 cps/updater.py:526 msgid "Timeout while establishing connection" msgstr "" -#: cps/admin.py:1045 cps/updater.py:325 cps/updater.py:528 +#: cps/admin.py:1061 cps/updater.py:325 cps/updater.py:528 msgid "General error" msgstr "" -#: cps/admin.py:1046 +#: cps/admin.py:1062 msgid "Update File Could Not be Saved in Temp Dir" msgstr "" @@ -302,8 +308,8 @@ msgstr "" msgid "Book Successfully Deleted" msgstr "" -#: cps/editbooks.py:254 cps/editbooks.py:548 cps/web.py:1644 cps/web.py:1685 -#: cps/web.py:1747 +#: cps/editbooks.py:254 cps/editbooks.py:549 cps/web.py:1641 cps/web.py:1682 +#: cps/web.py:1744 msgid "Error opening eBook. File does not exist or file is not accessible" msgstr "មានបញ្ហាពេលបើកឯកសារ eBook ។ ពុំមានឯកសារ ឬឯកសារនេះមិនអាចបើកបាន" @@ -311,82 +317,82 @@ msgstr "មានបញ្ហាពេលបើកឯកសារ eBook ។ ព msgid "edit metadata" msgstr "កែប្រែទិន្នន័យមេតា" -#: cps/editbooks.py:361 +#: cps/editbooks.py:360 #, python-format msgid "%(langname)s is not a valid language" msgstr "" -#: cps/editbooks.py:467 cps/editbooks.py:712 +#: cps/editbooks.py:468 cps/editbooks.py:715 #, python-format msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgstr "ឯកសារប្រភេទ '%(ext)s' មិនត្រូវបានអនុញ្ញាតឲអាប់ឡូដទៅម៉ាស៊ីន server នេះទេ" -#: cps/editbooks.py:471 cps/editbooks.py:716 +#: cps/editbooks.py:472 cps/editbooks.py:719 msgid "File to be uploaded must have an extension" msgstr "ឯកសារដែលត្រូវអាប់ឡូដត្រូវមានកន្ទុយឯកសារ" -#: cps/editbooks.py:483 cps/editbooks.py:773 +#: cps/editbooks.py:484 cps/editbooks.py:779 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "មិនអាចបង្កើតទីតាំង %(path)s (ពុំមានសិទ្ធិ)។" -#: cps/editbooks.py:488 +#: cps/editbooks.py:489 #, python-format msgid "Failed to store file %(file)s." msgstr "មិនអាចរក្សាទុកឯកសារ %(file)s ។" -#: cps/editbooks.py:506 cps/editbooks.py:864 +#: cps/editbooks.py:507 cps/editbooks.py:870 #, python-format msgid "Database error: %(error)s." msgstr "" -#: cps/editbooks.py:510 +#: cps/editbooks.py:511 #, python-format msgid "File format %(ext)s added to %(book)s" msgstr "ឯកសារទម្រង់ %(ext)s ត្រូវបានបន្ថែមទៅ %(book)s" -#: cps/editbooks.py:653 +#: cps/editbooks.py:656 msgid "Metadata successfully updated" msgstr "" -#: cps/editbooks.py:662 +#: cps/editbooks.py:665 msgid "Error editing book, please check logfile for details" msgstr "មានបញ្ហាពេលកែប្រែសៀវភៅ សូមពិនិត្យមើល logfile សម្រាប់ព័ត៌មានបន្ថែម" -#: cps/editbooks.py:724 +#: cps/editbooks.py:727 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "" -#: cps/editbooks.py:734 +#: cps/editbooks.py:737 msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgstr "" -#: cps/editbooks.py:780 +#: cps/editbooks.py:786 #, python-format msgid "Failed to Move File %(file)s: %(error)s" msgstr "" -#: cps/editbooks.py:836 +#: cps/editbooks.py:842 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "" -#: cps/editbooks.py:850 +#: cps/editbooks.py:856 #, python-format msgid "File %(file)s uploaded" msgstr "" -#: cps/editbooks.py:876 +#: cps/editbooks.py:882 msgid "Source or destination format for conversion missing" msgstr "" -#: cps/editbooks.py:884 +#: cps/editbooks.py:890 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "" -#: cps/editbooks.py:888 +#: cps/editbooks.py:894 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "" @@ -500,71 +506,71 @@ msgstr "ឯកសារ %(file)s រកមិនឃើញក្នុង Google msgid "Book path %(path)s not found on Google Drive" msgstr "ទីតាំងសៀវភៅ %(path)s រកមិនឃើញក្នុង Google Drive" -#: cps/helper.py:542 +#: cps/helper.py:550 msgid "Error Downloading Cover" msgstr "" -#: cps/helper.py:545 +#: cps/helper.py:553 msgid "Cover Format Error" msgstr "" -#: cps/helper.py:561 +#: cps/helper.py:569 msgid "Failed to create path for cover" msgstr "" -#: cps/helper.py:566 +#: cps/helper.py:574 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "" -#: cps/helper.py:577 +#: cps/helper.py:585 msgid "Only jpg/jpeg/png/webp files are supported as coverfile" msgstr "" -#: cps/helper.py:591 +#: cps/helper.py:599 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "" -#: cps/helper.py:640 +#: cps/helper.py:648 msgid "Unrar binary file not found" msgstr "" -#: cps/helper.py:654 +#: cps/helper.py:662 msgid "Error excecuting UnRar" msgstr "" -#: cps/helper.py:710 +#: cps/helper.py:718 msgid "Waiting" msgstr "កំពុងរង់ចាំ" -#: cps/helper.py:712 +#: cps/helper.py:720 msgid "Failed" msgstr "បានបរាជ័យ" -#: cps/helper.py:714 +#: cps/helper.py:722 msgid "Started" msgstr "បានចាប់ផ្តើម" -#: cps/helper.py:716 +#: cps/helper.py:724 msgid "Finished" msgstr "បានបញ្ចប់" -#: cps/helper.py:718 +#: cps/helper.py:726 msgid "Unknown Status" msgstr "" -#: cps/helper.py:723 +#: cps/helper.py:731 msgid "E-mail: " msgstr "" -#: cps/helper.py:725 cps/helper.py:729 +#: cps/helper.py:733 cps/helper.py:737 msgid "Convert: " msgstr "" -#: cps/helper.py:727 +#: cps/helper.py:735 msgid "Upload: " msgstr "" -#: cps/helper.py:731 +#: cps/helper.py:739 msgid "Unknown Task: " msgstr "" @@ -597,7 +603,7 @@ msgstr "" msgid "Failed to fetch user info from Google." msgstr "" -#: cps/oauth_bb.py:225 cps/web.py:1397 cps/web.py:1537 +#: cps/oauth_bb.py:225 cps/web.py:1394 cps/web.py:1534 #, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "ឥឡូវអ្នកបានចូលដោយមានឈ្មោះថា៖ ‘%(nickname)s’" @@ -634,218 +640,218 @@ msgstr "" msgid "Google Oauth error, please retry later." msgstr "" -#: cps/shelf.py:66 cps/shelf.py:111 +#: cps/shelf.py:67 cps/shelf.py:120 msgid "Invalid shelf specified" msgstr "" -#: cps/shelf.py:72 +#: cps/shelf.py:73 #, python-format msgid "Sorry you are not allowed to add a book to the the shelf: %(shelfname)s" msgstr "" -#: cps/shelf.py:82 +#: cps/shelf.py:83 #, python-format msgid "Book is already part of the shelf: %(shelfname)s" msgstr "" -#: cps/shelf.py:97 +#: cps/shelf.py:106 #, python-format msgid "Book has been added to shelf: %(sname)s" msgstr "សៀវភៅត្រូវបានបន្ថែមទៅធ្នើ៖ %(sname)s" -#: cps/shelf.py:115 +#: cps/shelf.py:124 #, python-format msgid "You are not allowed to add a book to the the shelf: %(name)s" msgstr "" -#: cps/shelf.py:133 +#: cps/shelf.py:142 #, python-format msgid "Books are already part of the shelf: %(name)s" msgstr "" -#: cps/shelf.py:148 +#: cps/shelf.py:158 #, python-format msgid "Books have been added to shelf: %(sname)s" msgstr "" -#: cps/shelf.py:150 +#: cps/shelf.py:163 #, python-format msgid "Could not add books to shelf: %(sname)s" msgstr "" -#: cps/shelf.py:188 +#: cps/shelf.py:208 #, python-format msgid "Book has been removed from shelf: %(sname)s" msgstr "សៀវភៅត្រូវបានដកចេញពីធ្នើ៖ %(sname)s" -#: cps/shelf.py:196 +#: cps/shelf.py:216 #, python-format msgid "Sorry you are not allowed to remove a book from this shelf: %(sname)s" msgstr "សូមអភ័យទោស អ្នកមិនមានសិទ្ធិដកសៀវភៅចេញពីធ្នើនេះទេ៖ %(sname)s" -#: cps/shelf.py:220 cps/shelf.py:260 +#: cps/shelf.py:240 cps/shelf.py:284 #, python-format msgid "A public shelf with the name '%(title)s' already exists." msgstr "" -#: cps/shelf.py:229 cps/shelf.py:270 +#: cps/shelf.py:249 cps/shelf.py:294 #, python-format msgid "A private shelf with the name '%(title)s' already exists." msgstr "" -#: cps/shelf.py:236 +#: cps/shelf.py:256 #, python-format msgid "Shelf %(title)s created" msgstr "ធ្នើឈ្មោះ %(title)s ត្រូវបានបង្កើត" -#: cps/shelf.py:239 cps/shelf.py:284 +#: cps/shelf.py:263 cps/shelf.py:312 msgid "There was an error" msgstr "មានបញ្ហា" -#: cps/shelf.py:240 cps/shelf.py:242 cps/templates/layout.html:144 +#: cps/shelf.py:264 cps/shelf.py:266 cps/templates/layout.html:144 msgid "Create a Shelf" msgstr "បង្កើតធ្នើ" -#: cps/shelf.py:282 +#: cps/shelf.py:306 #, python-format msgid "Shelf %(title)s changed" msgstr "ធ្នើឈ្មោះ %(title)s ត្រូវបានប្តូរ" -#: cps/shelf.py:285 cps/shelf.py:287 +#: cps/shelf.py:313 cps/shelf.py:315 msgid "Edit a shelf" msgstr "កែប្រែធ្នើ" -#: cps/shelf.py:332 +#: cps/shelf.py:369 #, python-format msgid "Shelf: '%(name)s'" msgstr "ធ្នើ៖ ‘%(name)s’" -#: cps/shelf.py:335 +#: cps/shelf.py:372 msgid "Error opening shelf. Shelf does not exist or is not accessible" msgstr "មានបញ្ហាពេលបើកធ្នើ។ ពុំមានធ្នើ ឬមិនអាចបើកបាន" -#: cps/shelf.py:368 +#: cps/shelf.py:409 msgid "Hidden Book" msgstr "" -#: cps/shelf.py:373 +#: cps/shelf.py:414 #, python-format msgid "Change order of Shelf: '%(name)s'" msgstr "ប្តូរលំដាប់ធ្នើ៖ ‘%(name)s’" -#: cps/ub.py:64 +#: cps/ub.py:65 msgid "Recently Added" msgstr "ទើបបន្ថែមថ្មីៗ" -#: cps/ub.py:66 +#: cps/ub.py:67 msgid "Show recent books" msgstr "បង្ហាញសៀវភៅមកថ្មី" -#: cps/templates/index.xml:17 cps/ub.py:67 +#: cps/templates/index.xml:17 cps/ub.py:68 msgid "Hot Books" msgstr "សៀវភៅដែលមានប្រជាប្រិយភាព" -#: cps/ub.py:69 +#: cps/ub.py:70 msgid "Show Hot Books" msgstr "បង្ហាញសៀវភៅដែលមានប្រជាប្រិយភាព" -#: cps/templates/index.xml:24 cps/ub.py:71 cps/web.py:655 +#: cps/templates/index.xml:24 cps/ub.py:72 cps/web.py:652 msgid "Top Rated Books" msgstr "សៀវភៅដែលមានការវាយតម្លៃល្អជាងគេ" -#: cps/ub.py:73 +#: cps/ub.py:74 msgid "Show Top Rated Books" msgstr "បង្ហាញសៀវភៅដែលមានការវាយតម្លៃល្អជាងគេ" -#: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:74 -#: cps/web.py:1222 +#: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:75 +#: cps/web.py:1219 msgid "Read Books" msgstr "សៀវភៅដែលបានអានរួច" -#: cps/ub.py:76 +#: cps/ub.py:77 msgid "Show read and unread" msgstr "បង្ហាញអានរួច និងមិនទាន់អាន" -#: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:78 -#: cps/web.py:1225 +#: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:79 +#: cps/web.py:1222 msgid "Unread Books" msgstr "សៀវភៅដែលមិនទាន់បានអាន" -#: cps/ub.py:80 +#: cps/ub.py:81 msgid "Show unread" msgstr "" -#: cps/ub.py:81 +#: cps/ub.py:82 msgid "Discover" msgstr "ស្រាវជ្រាវ" -#: cps/ub.py:83 +#: cps/ub.py:84 msgid "Show random books" msgstr "បង្ហាញសៀវភៅចៃដន្យ" -#: cps/templates/index.xml:75 cps/ub.py:84 cps/web.py:970 +#: cps/templates/index.xml:75 cps/ub.py:85 cps/web.py:967 msgid "Categories" msgstr "ប្រភេទនានា" -#: cps/ub.py:86 +#: cps/ub.py:87 msgid "Show category selection" msgstr "បង្ហាញជម្រើសប្រភេទ" #: cps/templates/book_edit.html:84 cps/templates/index.xml:82 -#: cps/templates/search_form.html:53 cps/ub.py:87 cps/web.py:886 cps/web.py:896 +#: cps/templates/search_form.html:53 cps/ub.py:88 cps/web.py:883 cps/web.py:893 msgid "Series" msgstr "ស៊េរី" -#: cps/ub.py:89 +#: cps/ub.py:90 msgid "Show series selection" msgstr "បង្ហាញជម្រើសស៊េរី" -#: cps/templates/index.xml:61 cps/ub.py:90 +#: cps/templates/index.xml:61 cps/ub.py:91 msgid "Authors" msgstr "អ្នកនិពន្ធ" -#: cps/ub.py:92 +#: cps/ub.py:93 msgid "Show author selection" msgstr "បង្ហាញជម្រើសអ្នកនិពន្ធ" -#: cps/templates/index.xml:68 cps/ub.py:94 cps/web.py:869 +#: cps/templates/index.xml:68 cps/ub.py:95 cps/web.py:866 msgid "Publishers" msgstr "" -#: cps/ub.py:96 +#: cps/ub.py:97 msgid "Show publisher selection" msgstr "" -#: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:97 -#: cps/web.py:953 +#: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:98 +#: cps/web.py:950 msgid "Languages" msgstr "ភាសានានា" -#: cps/ub.py:100 +#: cps/ub.py:101 msgid "Show language selection" msgstr "បង្ហាញផ្នែកភាសា" -#: cps/templates/index.xml:96 cps/ub.py:101 +#: cps/templates/index.xml:96 cps/ub.py:102 msgid "Ratings" msgstr "" -#: cps/ub.py:103 +#: cps/ub.py:104 msgid "Show ratings selection" msgstr "" -#: cps/templates/index.xml:104 cps/ub.py:104 +#: cps/templates/index.xml:104 cps/ub.py:105 msgid "File formats" msgstr "" -#: cps/ub.py:106 +#: cps/ub.py:107 msgid "Show file formats selection" msgstr "" -#: cps/ub.py:108 cps/web.py:1249 +#: cps/ub.py:109 cps/web.py:1246 msgid "Archived Books" msgstr "" -#: cps/ub.py:110 +#: cps/ub.py:111 msgid "Show archived books" msgstr "" @@ -878,220 +884,220 @@ msgstr "" msgid "Click on the button below to update to the latest stable version." msgstr "" -#: cps/web.py:322 +#: cps/web.py:319 #, python-format msgid "Error: %(ldaperror)s" msgstr "" -#: cps/web.py:326 +#: cps/web.py:323 msgid "Error: No user returned in response of LDAP server" msgstr "" -#: cps/web.py:374 +#: cps/web.py:371 msgid "Failed to Create at Least One LDAP User" msgstr "" -#: cps/web.py:377 +#: cps/web.py:374 msgid "At Least One LDAP User Not Found in Database" msgstr "" -#: cps/web.py:379 +#: cps/web.py:376 msgid "User Successfully Imported" msgstr "" -#: cps/web.py:625 +#: cps/web.py:622 msgid "Recently Added Books" msgstr "សៀវភៅដែលទើបបានបន្ថែម" -#: cps/templates/index.html:5 cps/web.py:663 +#: cps/templates/index.html:5 cps/web.py:660 msgid "Discover (Random Books)" msgstr "ស្រាវជ្រាវ (សៀវភៅចៃដន្យ)" -#: cps/web.py:691 +#: cps/web.py:688 msgid "Books" msgstr "" -#: cps/web.py:718 +#: cps/web.py:715 msgid "Hot Books (Most Downloaded)" msgstr "សៀវភៅដែលត្រូវបានទាញយកច្រើនជាងគេ" -#: cps/web.py:731 +#: cps/web.py:728 msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible" msgstr "" -#: cps/web.py:745 +#: cps/web.py:742 #, python-format msgid "Author: %(name)s" msgstr "" -#: cps/web.py:759 +#: cps/web.py:756 #, python-format msgid "Publisher: %(name)s" msgstr "" -#: cps/web.py:772 +#: cps/web.py:769 #, python-format msgid "Series: %(serie)s" msgstr "ស៊េរី៖ %(serie)s" -#: cps/web.py:785 +#: cps/web.py:782 #, python-format msgid "Rating: %(rating)s stars" msgstr "" -#: cps/web.py:798 +#: cps/web.py:795 #, python-format msgid "File format: %(format)s" msgstr "" -#: cps/web.py:812 +#: cps/web.py:809 #, python-format msgid "Category: %(name)s" msgstr "ប្រភេទ៖ %(name)s" -#: cps/web.py:831 +#: cps/web.py:828 #, python-format msgid "Language: %(name)s" msgstr "ភាសា៖ %(name)s" -#: cps/web.py:910 +#: cps/web.py:907 msgid "Ratings list" msgstr "" -#: cps/web.py:925 +#: cps/web.py:922 msgid "File formats list" msgstr "" -#: cps/templates/layout.html:74 cps/templates/tasks.html:7 cps/web.py:984 +#: cps/templates/layout.html:74 cps/templates/tasks.html:7 cps/web.py:981 msgid "Tasks" msgstr "កិច្ចការនានា" #: cps/templates/book_edit.html:235 cps/templates/feed.xml:33 #: cps/templates/layout.html:45 cps/templates/layout.html:48 -#: cps/templates/search_form.html:174 cps/web.py:1010 cps/web.py:1015 +#: cps/templates/search_form.html:174 cps/web.py:1007 cps/web.py:1012 msgid "Search" msgstr "ស្វែងរក" -#: cps/web.py:1066 +#: cps/web.py:1063 msgid "Published after " msgstr "បានបោះពុម្ភក្រោយ " -#: cps/web.py:1073 +#: cps/web.py:1070 msgid "Published before " msgstr "បានបោះពុម្ភមុន " -#: cps/web.py:1087 +#: cps/web.py:1084 #, python-format msgid "Rating <= %(rating)s" msgstr "ការវាយតម្លៃ <= %(rating)s" -#: cps/web.py:1089 +#: cps/web.py:1086 #, python-format msgid "Rating >= %(rating)s" msgstr "ការវាយតម្លៃ >= %(rating)s" -#: cps/web.py:1158 cps/web.py:1183 +#: cps/web.py:1155 cps/web.py:1180 msgid "search" msgstr "ស្វែងរក" -#: cps/web.py:1213 +#: cps/web.py:1210 #, python-format msgid "Custom Column No.%(column)d is not existing in calibre database" msgstr "" -#: cps/web.py:1304 +#: cps/web.py:1301 #, python-format msgid "Book successfully queued for sending to %(kindlemail)s" msgstr "សៀវភៅបានចូលជួរសម្រាប់ផ្ញើទៅ %(kindlemail)s ដោយជោគជ័យ" -#: cps/web.py:1308 +#: cps/web.py:1305 #, python-format msgid "Oops! There was an error sending this book: %(res)s" msgstr "មានបញ្ហានៅពេលផ្ញើសៀវភៅនេះ៖ %(res)s" -#: cps/web.py:1310 +#: cps/web.py:1307 msgid "Please update your profile with a valid Send to Kindle E-mail Address." msgstr "" -#: cps/web.py:1327 +#: cps/web.py:1324 msgid "E-Mail server is not configured, please contact your administrator!" msgstr "" -#: cps/web.py:1328 cps/web.py:1338 cps/web.py:1362 cps/web.py:1366 -#: cps/web.py:1371 cps/web.py:1375 +#: cps/web.py:1325 cps/web.py:1335 cps/web.py:1359 cps/web.py:1363 +#: cps/web.py:1368 cps/web.py:1372 msgid "register" msgstr "ចុះឈ្មោះ" -#: cps/web.py:1364 +#: cps/web.py:1361 msgid "Your e-mail is not allowed to register" msgstr "" -#: cps/web.py:1367 +#: cps/web.py:1364 msgid "Confirmation e-mail was send to your e-mail account." msgstr "" -#: cps/web.py:1370 +#: cps/web.py:1367 msgid "This username or e-mail address is already in use." msgstr "" -#: cps/web.py:1387 +#: cps/web.py:1384 msgid "Cannot activate LDAP authentication" msgstr "" -#: cps/web.py:1404 +#: cps/web.py:1401 #, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgstr "" -#: cps/web.py:1410 +#: cps/web.py:1407 #, python-format msgid "Could not login: %(message)s" msgstr "" -#: cps/web.py:1414 cps/web.py:1438 +#: cps/web.py:1411 cps/web.py:1435 msgid "Wrong Username or Password" msgstr "ខុសឈ្មោះអ្នកប្រើប្រាស់ ឬលេខសម្ងាត់" -#: cps/web.py:1421 +#: cps/web.py:1418 msgid "New Password was send to your email address" msgstr "" -#: cps/web.py:1427 +#: cps/web.py:1424 msgid "Please enter valid username to reset password" msgstr "" -#: cps/web.py:1433 +#: cps/web.py:1430 #, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "" -#: cps/web.py:1442 cps/web.py:1469 +#: cps/web.py:1439 cps/web.py:1466 msgid "login" msgstr "ចូលប្រើ" -#: cps/web.py:1481 cps/web.py:1515 +#: cps/web.py:1478 cps/web.py:1512 msgid "Token not found" msgstr "រកមិនឃើញវត្ថុតាង" -#: cps/web.py:1490 cps/web.py:1523 +#: cps/web.py:1487 cps/web.py:1520 msgid "Token has expired" msgstr "វត្ថុតាងហួសពេលកំណត់" -#: cps/web.py:1499 +#: cps/web.py:1496 msgid "Success! Please return to your device" msgstr "ជោគជ័យ! សូមវិលមកឧបករណ៍អ្នកវិញ" -#: cps/web.py:1580 cps/web.py:1625 cps/web.py:1631 +#: cps/web.py:1577 cps/web.py:1622 cps/web.py:1628 #, python-format msgid "%(name)s's profile" msgstr "ព័ត៌មានសង្ខេបរបស់ %(name)s" -#: cps/web.py:1627 +#: cps/web.py:1624 msgid "Profile updated" msgstr "ព័ត៌មានសង្ខេបបានកែប្រែ" -#: cps/web.py:1656 cps/web.py:1659 cps/web.py:1662 cps/web.py:1669 -#: cps/web.py:1674 +#: cps/web.py:1653 cps/web.py:1656 cps/web.py:1659 cps/web.py:1666 +#: cps/web.py:1671 msgid "Read a Book" msgstr "អានសៀវភៅ" diff --git a/cps/translations/nl/LC_MESSAGES/messages.mo b/cps/translations/nl/LC_MESSAGES/messages.mo index 9c73f73d..b1c4a55b 100644 Binary files a/cps/translations/nl/LC_MESSAGES/messages.mo and b/cps/translations/nl/LC_MESSAGES/messages.mo differ diff --git a/cps/translations/nl/LC_MESSAGES/messages.po b/cps/translations/nl/LC_MESSAGES/messages.po index c5482537..4ce11eb2 100644 --- a/cps/translations/nl/LC_MESSAGES/messages.po +++ b/cps/translations/nl/LC_MESSAGES/messages.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: Calibre-Web (GPLV3)\n" "Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n" -"POT-Creation-Date: 2020-06-07 06:47+0200\n" +"POT-Creation-Date: 2020-06-28 09:31+0200\n" "PO-Revision-Date: 2020-05-10 21:00+0200\n" "Last-Translator: Marcel Maas \n" "Language: nl\n" @@ -47,9 +47,9 @@ msgstr "Opnieuw verbinden gelukt" msgid "Unknown command" msgstr "Onbekende opdracht" -#: cps/admin.py:116 cps/editbooks.py:563 cps/editbooks.py:573 -#: cps/editbooks.py:667 cps/editbooks.py:669 cps/editbooks.py:730 -#: cps/editbooks.py:743 cps/updater.py:509 cps/uploader.py:97 +#: cps/admin.py:116 cps/editbooks.py:564 cps/editbooks.py:576 +#: cps/editbooks.py:670 cps/editbooks.py:672 cps/editbooks.py:733 +#: cps/editbooks.py:749 cps/updater.py:509 cps/uploader.py:97 #: cps/uploader.py:107 msgid "Unknown" msgstr "Onbekend" @@ -62,7 +62,7 @@ msgstr "Systeembeheer" msgid "UI Configuration" msgstr "Uiterlijk aanpassen" -#: cps/admin.py:189 cps/admin.py:706 +#: cps/admin.py:189 cps/admin.py:711 msgid "Calibre-Web configuration updated" msgstr "Calibre-Web-configuratie bijgewerkt" @@ -114,175 +114,181 @@ msgstr "" msgid "LDAP Certificate Location is not Valid, Please Enter Correct Path" msgstr "LDAP certificaatlocatie is onjuist, voer een geldige locatie in" -#: cps/admin.py:627 +#: cps/admin.py:628 msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgstr "SSL-sleutellocatie is niet geldig, voer een geldige locatie in" -#: cps/admin.py:631 +#: cps/admin.py:632 msgid "Certfile Location is not Valid, Please Enter Correct Path" msgstr "SSL-certificaatlocatie is niet geldig, voer een geldige locatie in" -#: cps/admin.py:701 +#: cps/admin.py:694 cps/admin.py:793 cps/admin.py:885 cps/admin.py:934 +#: cps/shelf.py:100 cps/shelf.py:161 cps/shelf.py:202 cps/shelf.py:260 +#: cps/shelf.py:309 cps/shelf.py:338 cps/shelf.py:368 cps/shelf.py:392 +msgid "Settings DB is not Writeable" +msgstr "" + +#: cps/admin.py:706 msgid "DB Location is not Valid, Please Enter Correct Path" msgstr "Database niet gevonden, voer de juiste locatie in" -#: cps/admin.py:703 +#: cps/admin.py:708 msgid "DB is not Writeable" msgstr "" -#: cps/admin.py:736 +#: cps/admin.py:741 msgid "Basic Configuration" msgstr "Basis configuratie" -#: cps/admin.py:751 cps/web.py:1337 +#: cps/admin.py:756 cps/web.py:1334 msgid "Please fill out all fields!" msgstr "Vul alle velden in!" -#: cps/admin.py:754 cps/admin.py:766 cps/admin.py:772 cps/admin.py:892 +#: cps/admin.py:759 cps/admin.py:771 cps/admin.py:777 cps/admin.py:903 msgid "Add new user" msgstr "Gebruiker toevoegen" -#: cps/admin.py:763 cps/web.py:1578 +#: cps/admin.py:768 cps/web.py:1575 msgid "E-mail is not from valid domain" msgstr "Het e-mailadres bevat geen geldige domeinnaam" -#: cps/admin.py:770 cps/admin.py:785 +#: cps/admin.py:775 cps/admin.py:790 msgid "Found an existing account for this e-mail address or nickname." msgstr "Bestaand account met dit e-mailadres of deze gebruikersnaam aangetroffen." -#: cps/admin.py:781 +#: cps/admin.py:786 #, python-format msgid "User '%(user)s' created" msgstr "Gebruiker '%(user)s' aangemaakt" -#: cps/admin.py:794 +#: cps/admin.py:802 #, python-format msgid "User '%(nick)s' deleted" msgstr "Gebruiker '%(nick)s' verwijderd" -#: cps/admin.py:797 +#: cps/admin.py:805 msgid "No admin user remaining, can't delete user" msgstr "Kan laatste systeembeheerder niet verwijderen" -#: cps/admin.py:803 +#: cps/admin.py:811 msgid "No admin user remaining, can't remove admin role" msgstr "Kan systeembeheerder rol niet verwijderen van de laatste systeembeheerder" -#: cps/admin.py:839 cps/web.py:1621 +#: cps/admin.py:847 cps/web.py:1618 msgid "Found an existing account for this e-mail address." msgstr "Bestaand account met dit e-mailadres aangetroffen." -#: cps/admin.py:849 cps/admin.py:864 cps/admin.py:967 cps/web.py:1596 +#: cps/admin.py:857 cps/admin.py:872 cps/admin.py:983 cps/web.py:1593 #, python-format msgid "Edit User %(nick)s" msgstr "Gebruiker '%(nick)s' bewerken" -#: cps/admin.py:855 cps/web.py:1588 +#: cps/admin.py:863 cps/web.py:1585 msgid "This username is already taken" msgstr "Deze gebruikersnaam is al in gebruik" -#: cps/admin.py:871 +#: cps/admin.py:879 #, python-format msgid "User '%(nick)s' updated" msgstr "Gebruiker '%(nick)s' bijgewerkt" -#: cps/admin.py:874 +#: cps/admin.py:882 msgid "An unknown error occured." msgstr "Er is een onbekende fout opgetreden." -#: cps/admin.py:901 cps/templates/admin.html:71 +#: cps/admin.py:912 cps/templates/admin.html:71 msgid "Edit E-mail Server Settings" msgstr "SMTP-instellingen bewerken" -#: cps/admin.py:925 +#: cps/admin.py:941 #, python-format msgid "Test e-mail successfully send to %(kindlemail)s" msgstr "Test-e-mail verstuurd naar %(kindlemail)s" -#: cps/admin.py:928 +#: cps/admin.py:944 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "Fout opgetreden bij het versturen van de test-e-mail: %(res)s" -#: cps/admin.py:930 +#: cps/admin.py:946 msgid "Please configure your e-mail address first..." msgstr "Gelieve eerst je e-mail adres configureren..." -#: cps/admin.py:932 +#: cps/admin.py:948 msgid "E-mail server settings updated" msgstr "E-mailserver-instellingen bijgewerkt" -#: cps/admin.py:943 +#: cps/admin.py:959 msgid "User not found" msgstr "Gebruiker niet gevonden" -#: cps/admin.py:978 +#: cps/admin.py:994 #, python-format msgid "Password for user %(user)s reset" msgstr "Wachtwoord voor gebruiker %(user)s is hersteld" -#: cps/admin.py:981 cps/web.py:1361 cps/web.py:1425 +#: cps/admin.py:997 cps/web.py:1358 cps/web.py:1422 msgid "An unknown error occurred. Please try again later." msgstr "Onbekende fout opgetreden. Probeer het later nog eens." -#: cps/admin.py:984 cps/web.py:1299 +#: cps/admin.py:1000 cps/web.py:1296 msgid "Please configure the SMTP mail settings first..." msgstr "Stel eerst SMTP-mail in..." -#: cps/admin.py:996 +#: cps/admin.py:1012 msgid "Logfile viewer" msgstr "Logbestand lezer" -#: cps/admin.py:1035 +#: cps/admin.py:1051 msgid "Requesting update package" msgstr "Update opvragen" -#: cps/admin.py:1036 +#: cps/admin.py:1052 msgid "Downloading update package" msgstr "Update downloaden" -#: cps/admin.py:1037 +#: cps/admin.py:1053 msgid "Unzipping update package" msgstr "Update uitpakken" -#: cps/admin.py:1038 +#: cps/admin.py:1054 msgid "Replacing files" msgstr "Update toepassen" -#: cps/admin.py:1039 +#: cps/admin.py:1055 msgid "Database connections are closed" msgstr "Databaseverbindingen zijn gesloten" -#: cps/admin.py:1040 +#: cps/admin.py:1056 msgid "Stopping server" msgstr "Bezig met stoppen van Calibre-Web" -#: cps/admin.py:1041 +#: cps/admin.py:1057 msgid "Update finished, please press okay and reload page" msgstr "Update voltooid, klik op 'Oké' en vernieuw de pagina" -#: cps/admin.py:1042 cps/admin.py:1043 cps/admin.py:1044 cps/admin.py:1045 -#: cps/admin.py:1046 +#: cps/admin.py:1058 cps/admin.py:1059 cps/admin.py:1060 cps/admin.py:1061 +#: cps/admin.py:1062 msgid "Update failed:" msgstr "Update mislukt:" -#: cps/admin.py:1042 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522 +#: cps/admin.py:1058 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522 msgid "HTTP Error" msgstr "HTTP-fout" -#: cps/admin.py:1043 cps/updater.py:321 cps/updater.py:524 +#: cps/admin.py:1059 cps/updater.py:321 cps/updater.py:524 msgid "Connection error" msgstr "Verbindingsfout" -#: cps/admin.py:1044 cps/updater.py:323 cps/updater.py:526 +#: cps/admin.py:1060 cps/updater.py:323 cps/updater.py:526 msgid "Timeout while establishing connection" msgstr "Time-out tijdens maken van verbinding" -#: cps/admin.py:1045 cps/updater.py:325 cps/updater.py:528 +#: cps/admin.py:1061 cps/updater.py:325 cps/updater.py:528 msgid "General error" msgstr "Algemene fout" -#: cps/admin.py:1046 +#: cps/admin.py:1062 msgid "Update File Could Not be Saved in Temp Dir" msgstr "Geüpload bestand kon niet opgeslagen worden in de tijdelijke map" @@ -302,8 +308,8 @@ msgstr "Het boekformaat is verwijderd" msgid "Book Successfully Deleted" msgstr "Het boek is verwijderd" -#: cps/editbooks.py:254 cps/editbooks.py:548 cps/web.py:1644 cps/web.py:1685 -#: cps/web.py:1747 +#: cps/editbooks.py:254 cps/editbooks.py:549 cps/web.py:1641 cps/web.py:1682 +#: cps/web.py:1744 msgid "Error opening eBook. File does not exist or file is not accessible" msgstr "Kan e-boek niet openen: het bestand bestaat niet of is ontoegankelijk" @@ -311,82 +317,82 @@ msgstr "Kan e-boek niet openen: het bestand bestaat niet of is ontoegankelijk" msgid "edit metadata" msgstr "metagegevens bewerken" -#: cps/editbooks.py:361 +#: cps/editbooks.py:360 #, python-format msgid "%(langname)s is not a valid language" msgstr "%(langname)s is geen geldige taal" -#: cps/editbooks.py:467 cps/editbooks.py:712 +#: cps/editbooks.py:468 cps/editbooks.py:715 #, python-format msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgstr "De bestandsextensie '%(ext)s' is niet toegestaan op deze server" -#: cps/editbooks.py:471 cps/editbooks.py:716 +#: cps/editbooks.py:472 cps/editbooks.py:719 msgid "File to be uploaded must have an extension" msgstr "Het te uploaden bestand moet voorzien zijn van een extensie" -#: cps/editbooks.py:483 cps/editbooks.py:773 +#: cps/editbooks.py:484 cps/editbooks.py:779 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "Kan de locatie '%(path)s' niet aanmaken (niet gemachtigd)." -#: cps/editbooks.py:488 +#: cps/editbooks.py:489 #, python-format msgid "Failed to store file %(file)s." msgstr "Kan %(file)s niet opslaan." -#: cps/editbooks.py:506 cps/editbooks.py:864 +#: cps/editbooks.py:507 cps/editbooks.py:870 #, python-format msgid "Database error: %(error)s." msgstr "" -#: cps/editbooks.py:510 +#: cps/editbooks.py:511 #, python-format msgid "File format %(ext)s added to %(book)s" msgstr "Bestandsformaat %(ext)s toegevoegd aan %(book)s" -#: cps/editbooks.py:653 +#: cps/editbooks.py:656 msgid "Metadata successfully updated" msgstr "De metagegevens zijn bijgewerkt" -#: cps/editbooks.py:662 +#: cps/editbooks.py:665 msgid "Error editing book, please check logfile for details" msgstr "Kan het boek niet bewerken, controleer het logbestand" -#: cps/editbooks.py:724 +#: cps/editbooks.py:727 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "Bestand %(filename)s kon niet opgeslagen worden in de tijdelijke map" -#: cps/editbooks.py:734 +#: cps/editbooks.py:737 msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgstr "Geüpload boek staat mogelijk al in de bibliotheek, controleer alvorens door te gaan: " -#: cps/editbooks.py:780 +#: cps/editbooks.py:786 #, python-format msgid "Failed to Move File %(file)s: %(error)s" msgstr "Bestand %(file)s niet verplaatst: %(error)s" -#: cps/editbooks.py:836 +#: cps/editbooks.py:842 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "Omslag %(file)s niet verplaatst: %(error)s" -#: cps/editbooks.py:850 +#: cps/editbooks.py:856 #, python-format msgid "File %(file)s uploaded" msgstr "Bestand %(file)s geüpload" -#: cps/editbooks.py:876 +#: cps/editbooks.py:882 msgid "Source or destination format for conversion missing" msgstr "Bron- of doelformaat ontbreekt voor conversie" -#: cps/editbooks.py:884 +#: cps/editbooks.py:890 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "Het boek is in de wachtrij geplaatst voor conversie naar %(book_format)s" -#: cps/editbooks.py:888 +#: cps/editbooks.py:894 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "Er is een fout opgetreden bij het converteren van dit boek: %(res)s" @@ -500,71 +506,71 @@ msgstr "Bestand '%(file)s' niet aangetroffen op Google Drive" msgid "Book path %(path)s not found on Google Drive" msgstr "Boeken locatie '%(path)s' niet aangetroffen op Google Drive" -#: cps/helper.py:542 +#: cps/helper.py:550 msgid "Error Downloading Cover" msgstr "" -#: cps/helper.py:545 +#: cps/helper.py:553 msgid "Cover Format Error" msgstr "" -#: cps/helper.py:561 +#: cps/helper.py:569 msgid "Failed to create path for cover" msgstr "Locatie aanmaken voor omslag mislukt" -#: cps/helper.py:566 +#: cps/helper.py:574 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "Omslag-bestand is geen afbeelding of kon niet opgeslagen worden" -#: cps/helper.py:577 +#: cps/helper.py:585 msgid "Only jpg/jpeg/png/webp files are supported as coverfile" msgstr "Alleen jpg/jpeg/png/webp bestanden zijn toegestaan als omslag" -#: cps/helper.py:591 +#: cps/helper.py:599 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "Alleen jpg/jpeg bestanden zijn toegestaan als omslag" -#: cps/helper.py:640 +#: cps/helper.py:648 msgid "Unrar binary file not found" msgstr "Unrar executable niet gevonden" -#: cps/helper.py:654 +#: cps/helper.py:662 msgid "Error excecuting UnRar" msgstr "Fout bij het uitvoeren van Unrar" -#: cps/helper.py:710 +#: cps/helper.py:718 msgid "Waiting" msgstr "Wachten" -#: cps/helper.py:712 +#: cps/helper.py:720 msgid "Failed" msgstr "Mislukt" -#: cps/helper.py:714 +#: cps/helper.py:722 msgid "Started" msgstr "Gestart" -#: cps/helper.py:716 +#: cps/helper.py:724 msgid "Finished" msgstr "Voltooid" -#: cps/helper.py:718 +#: cps/helper.py:726 msgid "Unknown Status" msgstr "Onbekende status" -#: cps/helper.py:723 +#: cps/helper.py:731 msgid "E-mail: " msgstr "E-mailadres: " -#: cps/helper.py:725 cps/helper.py:729 +#: cps/helper.py:733 cps/helper.py:737 msgid "Convert: " msgstr "Converteren: " -#: cps/helper.py:727 +#: cps/helper.py:735 msgid "Upload: " msgstr "Uploaden: " -#: cps/helper.py:731 +#: cps/helper.py:739 msgid "Unknown Task: " msgstr "Onbekende taak: " @@ -597,7 +603,7 @@ msgstr "Inloggen bij Google mislukt." msgid "Failed to fetch user info from Google." msgstr "Opvragen gebruikersinfo bij Google mislukt." -#: cps/oauth_bb.py:225 cps/web.py:1397 cps/web.py:1537 +#: cps/oauth_bb.py:225 cps/web.py:1394 cps/web.py:1534 #, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "je bent ingelogd als: '%(nickname)s'" @@ -634,218 +640,218 @@ msgstr "GitHub OAuth fout, probeer het later nog eens." msgid "Google Oauth error, please retry later." msgstr "Google OAuth fout, probeer het later nog eens." -#: cps/shelf.py:66 cps/shelf.py:111 +#: cps/shelf.py:67 cps/shelf.py:120 msgid "Invalid shelf specified" msgstr "Ongeldige boekenplank opgegeven" -#: cps/shelf.py:72 +#: cps/shelf.py:73 #, python-format msgid "Sorry you are not allowed to add a book to the the shelf: %(shelfname)s" msgstr "Sorry, je mag geen boeken toevoegen aan boekenplank: %(shelfname)s" -#: cps/shelf.py:82 +#: cps/shelf.py:83 #, python-format msgid "Book is already part of the shelf: %(shelfname)s" msgstr "Dit boek maakt al deel uit van boekenplank: %(shelfname)s" -#: cps/shelf.py:97 +#: cps/shelf.py:106 #, python-format msgid "Book has been added to shelf: %(sname)s" msgstr "Het boek is toegevoegd aan boekenplank: %(sname)s" -#: cps/shelf.py:115 +#: cps/shelf.py:124 #, python-format msgid "You are not allowed to add a book to the the shelf: %(name)s" msgstr "Je bent niet gemachtigd om boeken toe te voegen aan boekenplank: %(name)s" -#: cps/shelf.py:133 +#: cps/shelf.py:142 #, python-format msgid "Books are already part of the shelf: %(name)s" msgstr "Deze boeken maken al deel uit van boekenplank: %(name)s" -#: cps/shelf.py:148 +#: cps/shelf.py:158 #, python-format msgid "Books have been added to shelf: %(sname)s" msgstr "De boeken zijn toegevoegd aan boekenplank: %(sname)s" -#: cps/shelf.py:150 +#: cps/shelf.py:163 #, python-format msgid "Could not add books to shelf: %(sname)s" msgstr "Kan boeken niet toevoegen aan boekenplank: %(sname)s" -#: cps/shelf.py:188 +#: cps/shelf.py:208 #, python-format msgid "Book has been removed from shelf: %(sname)s" msgstr "Het boek is verwijderd van boekenplank: %(sname)s" -#: cps/shelf.py:196 +#: cps/shelf.py:216 #, python-format msgid "Sorry you are not allowed to remove a book from this shelf: %(sname)s" msgstr "Je bent niet gemachtigd om boeken te verwijderen van boekenplank: %(sname)s" -#: cps/shelf.py:220 cps/shelf.py:260 +#: cps/shelf.py:240 cps/shelf.py:284 #, python-format msgid "A public shelf with the name '%(title)s' already exists." msgstr "Een openbare boekenplank met de naam '%(title)s' bestaat al." -#: cps/shelf.py:229 cps/shelf.py:270 +#: cps/shelf.py:249 cps/shelf.py:294 #, python-format msgid "A private shelf with the name '%(title)s' already exists." msgstr "Een persoonlijke boekenplank met de naam '%(title)s' bestaat al." -#: cps/shelf.py:236 +#: cps/shelf.py:256 #, python-format msgid "Shelf %(title)s created" msgstr "Boekenplank '%(title)s' aangemaakt" -#: cps/shelf.py:239 cps/shelf.py:284 +#: cps/shelf.py:263 cps/shelf.py:312 msgid "There was an error" msgstr "Er is een fout opgetreden" -#: cps/shelf.py:240 cps/shelf.py:242 cps/templates/layout.html:144 +#: cps/shelf.py:264 cps/shelf.py:266 cps/templates/layout.html:144 msgid "Create a Shelf" msgstr "Boekenplank maken" -#: cps/shelf.py:282 +#: cps/shelf.py:306 #, python-format msgid "Shelf %(title)s changed" msgstr "Boekenplank '%(title)s' is aangepast" -#: cps/shelf.py:285 cps/shelf.py:287 +#: cps/shelf.py:313 cps/shelf.py:315 msgid "Edit a shelf" msgstr "Pas een boekenplank aan" -#: cps/shelf.py:332 +#: cps/shelf.py:369 #, python-format msgid "Shelf: '%(name)s'" msgstr "Boekenplank: '%(name)s'" -#: cps/shelf.py:335 +#: cps/shelf.py:372 msgid "Error opening shelf. Shelf does not exist or is not accessible" msgstr "Kan boekenplank niet openen: de boekenplank bestaat niet of is ontoegankelijk" -#: cps/shelf.py:368 +#: cps/shelf.py:409 msgid "Hidden Book" msgstr "Verborgen boek" -#: cps/shelf.py:373 +#: cps/shelf.py:414 #, python-format msgid "Change order of Shelf: '%(name)s'" msgstr "Volgorde bewerken van boekenplank: '%(name)s'" -#: cps/ub.py:64 +#: cps/ub.py:65 msgid "Recently Added" msgstr "Recent toegevoegd" -#: cps/ub.py:66 +#: cps/ub.py:67 msgid "Show recent books" msgstr "Recent toegevoegde boeken tonen" -#: cps/templates/index.xml:17 cps/ub.py:67 +#: cps/templates/index.xml:17 cps/ub.py:68 msgid "Hot Books" msgstr "Populaire boeken" -#: cps/ub.py:69 +#: cps/ub.py:70 msgid "Show Hot Books" msgstr "Populaire boeken tonen" -#: cps/templates/index.xml:24 cps/ub.py:71 cps/web.py:655 +#: cps/templates/index.xml:24 cps/ub.py:72 cps/web.py:652 msgid "Top Rated Books" msgstr "Best beoordeelde boeken" -#: cps/ub.py:73 +#: cps/ub.py:74 msgid "Show Top Rated Books" msgstr "Best beoordeelde boeken tonen" -#: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:74 -#: cps/web.py:1222 +#: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:75 +#: cps/web.py:1219 msgid "Read Books" msgstr "Gelezen boeken" -#: cps/ub.py:76 +#: cps/ub.py:77 msgid "Show read and unread" msgstr "Gelezen/Ongelezen boeken tonen" -#: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:78 -#: cps/web.py:1225 +#: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:79 +#: cps/web.py:1222 msgid "Unread Books" msgstr "Ongelezen boeken" -#: cps/ub.py:80 +#: cps/ub.py:81 msgid "Show unread" msgstr "Ongelezen boeken tonen" -#: cps/ub.py:81 +#: cps/ub.py:82 msgid "Discover" msgstr "Willekeurige boeken" -#: cps/ub.py:83 +#: cps/ub.py:84 msgid "Show random books" msgstr "Willekeurige boeken tonen" -#: cps/templates/index.xml:75 cps/ub.py:84 cps/web.py:970 +#: cps/templates/index.xml:75 cps/ub.py:85 cps/web.py:967 msgid "Categories" msgstr "Categorieën" -#: cps/ub.py:86 +#: cps/ub.py:87 msgid "Show category selection" msgstr "Categoriekeuze tonen" #: cps/templates/book_edit.html:84 cps/templates/index.xml:82 -#: cps/templates/search_form.html:53 cps/ub.py:87 cps/web.py:886 cps/web.py:896 +#: cps/templates/search_form.html:53 cps/ub.py:88 cps/web.py:883 cps/web.py:893 msgid "Series" msgstr "Boekenreeksen" -#: cps/ub.py:89 +#: cps/ub.py:90 msgid "Show series selection" msgstr "Boekenreeksenkeuze tonen" -#: cps/templates/index.xml:61 cps/ub.py:90 +#: cps/templates/index.xml:61 cps/ub.py:91 msgid "Authors" msgstr "Auteurs" -#: cps/ub.py:92 +#: cps/ub.py:93 msgid "Show author selection" msgstr "Auteurkeuze tonen" -#: cps/templates/index.xml:68 cps/ub.py:94 cps/web.py:869 +#: cps/templates/index.xml:68 cps/ub.py:95 cps/web.py:866 msgid "Publishers" msgstr "Uitgevers" -#: cps/ub.py:96 +#: cps/ub.py:97 msgid "Show publisher selection" msgstr "Uitgeverskeuze tonen" -#: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:97 -#: cps/web.py:953 +#: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:98 +#: cps/web.py:950 msgid "Languages" msgstr "Talen" -#: cps/ub.py:100 +#: cps/ub.py:101 msgid "Show language selection" msgstr "Taalkeuze tonen" -#: cps/templates/index.xml:96 cps/ub.py:101 +#: cps/templates/index.xml:96 cps/ub.py:102 msgid "Ratings" msgstr "Beoordelingen" -#: cps/ub.py:103 +#: cps/ub.py:104 msgid "Show ratings selection" msgstr "Beoordelingen tonen" -#: cps/templates/index.xml:104 cps/ub.py:104 +#: cps/templates/index.xml:104 cps/ub.py:105 msgid "File formats" msgstr "Bestandsformaten" -#: cps/ub.py:106 +#: cps/ub.py:107 msgid "Show file formats selection" msgstr "Bestandsformaten tonen" -#: cps/ub.py:108 cps/web.py:1249 +#: cps/ub.py:109 cps/web.py:1246 msgid "Archived Books" msgstr "Gearchiveerde boeken" -#: cps/ub.py:110 +#: cps/ub.py:111 msgid "Show archived books" msgstr "Gearchiveerde boeken tonen" @@ -878,220 +884,220 @@ msgstr "Er is een update beschikbaar. Klik op de knop hieronder om te updaten na msgid "Click on the button below to update to the latest stable version." msgstr "Klik op onderstaande knop om de laatste stabiele versie te installeren." -#: cps/web.py:322 +#: cps/web.py:319 #, python-format msgid "Error: %(ldaperror)s" msgstr "Fout: %(ldaperror)s" -#: cps/web.py:326 +#: cps/web.py:323 msgid "Error: No user returned in response of LDAP server" msgstr "Fout: No user returned in response of LDAP server" -#: cps/web.py:374 +#: cps/web.py:371 msgid "Failed to Create at Least One LDAP User" msgstr "" -#: cps/web.py:377 +#: cps/web.py:374 msgid "At Least One LDAP User Not Found in Database" msgstr "" -#: cps/web.py:379 +#: cps/web.py:376 msgid "User Successfully Imported" msgstr "Gebruiker is geïmporteerd" -#: cps/web.py:625 +#: cps/web.py:622 msgid "Recently Added Books" msgstr "Recent toegevoegde boeken" -#: cps/templates/index.html:5 cps/web.py:663 +#: cps/templates/index.html:5 cps/web.py:660 msgid "Discover (Random Books)" msgstr "Verkennen (willekeurige boeken)" -#: cps/web.py:691 +#: cps/web.py:688 msgid "Books" msgstr "Boeken" -#: cps/web.py:718 +#: cps/web.py:715 msgid "Hot Books (Most Downloaded)" msgstr "Populaire boeken (meest gedownload)" -#: cps/web.py:731 +#: cps/web.py:728 msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible" msgstr "Oeps! Geselecteerd boek is niet beschikbaar. Bestand bestaat niet of is niet toegankelijk" -#: cps/web.py:745 +#: cps/web.py:742 #, python-format msgid "Author: %(name)s" msgstr "Auteur: %(name)s" -#: cps/web.py:759 +#: cps/web.py:756 #, python-format msgid "Publisher: %(name)s" msgstr "Uitgever: %(name)s" -#: cps/web.py:772 +#: cps/web.py:769 #, python-format msgid "Series: %(serie)s" msgstr "Reeks: %(serie)s" -#: cps/web.py:785 +#: cps/web.py:782 #, python-format msgid "Rating: %(rating)s stars" msgstr "Beoordeling: %(rating)s sterren" -#: cps/web.py:798 +#: cps/web.py:795 #, python-format msgid "File format: %(format)s" msgstr "Bestandsformaat: %(format)s" -#: cps/web.py:812 +#: cps/web.py:809 #, python-format msgid "Category: %(name)s" msgstr "Categorie: %(name)s" -#: cps/web.py:831 +#: cps/web.py:828 #, python-format msgid "Language: %(name)s" msgstr "Taal: %(name)s" -#: cps/web.py:910 +#: cps/web.py:907 msgid "Ratings list" msgstr "Beoordelingen" -#: cps/web.py:925 +#: cps/web.py:922 msgid "File formats list" msgstr "Alle bestandsformaten" -#: cps/templates/layout.html:74 cps/templates/tasks.html:7 cps/web.py:984 +#: cps/templates/layout.html:74 cps/templates/tasks.html:7 cps/web.py:981 msgid "Tasks" msgstr "Taken" #: cps/templates/book_edit.html:235 cps/templates/feed.xml:33 #: cps/templates/layout.html:45 cps/templates/layout.html:48 -#: cps/templates/search_form.html:174 cps/web.py:1010 cps/web.py:1015 +#: cps/templates/search_form.html:174 cps/web.py:1007 cps/web.py:1012 msgid "Search" msgstr "Zoeken" -#: cps/web.py:1066 +#: cps/web.py:1063 msgid "Published after " msgstr "Gepubliceerd na " -#: cps/web.py:1073 +#: cps/web.py:1070 msgid "Published before " msgstr "Gepubliceerd vóór " -#: cps/web.py:1087 +#: cps/web.py:1084 #, python-format msgid "Rating <= %(rating)s" msgstr "Beoordeling <= %(rating)s" -#: cps/web.py:1089 +#: cps/web.py:1086 #, python-format msgid "Rating >= %(rating)s" msgstr "Beoordeling >= %(rating)s" -#: cps/web.py:1158 cps/web.py:1183 +#: cps/web.py:1155 cps/web.py:1180 msgid "search" msgstr "zoeken" -#: cps/web.py:1213 +#: cps/web.py:1210 #, python-format msgid "Custom Column No.%(column)d is not existing in calibre database" msgstr "" -#: cps/web.py:1304 +#: cps/web.py:1301 #, python-format msgid "Book successfully queued for sending to %(kindlemail)s" msgstr "Het boek is in de wachtrij geplaatst om te worden verstuurd aan %(kindlemail)s" -#: cps/web.py:1308 +#: cps/web.py:1305 #, python-format msgid "Oops! There was an error sending this book: %(res)s" msgstr "Fout opgetreden bij het versturen van dit boek: %(res)s" -#: cps/web.py:1310 +#: cps/web.py:1307 msgid "Please update your profile with a valid Send to Kindle E-mail Address." msgstr "Stel je kindle-e-mailadres in..." -#: cps/web.py:1327 +#: cps/web.py:1324 msgid "E-Mail server is not configured, please contact your administrator!" msgstr "E-mailserver is niet geconfigureerd, neem contact op met de beheerder!" -#: cps/web.py:1328 cps/web.py:1338 cps/web.py:1362 cps/web.py:1366 -#: cps/web.py:1371 cps/web.py:1375 +#: cps/web.py:1325 cps/web.py:1335 cps/web.py:1359 cps/web.py:1363 +#: cps/web.py:1368 cps/web.py:1372 msgid "register" msgstr "registreren" -#: cps/web.py:1364 +#: cps/web.py:1361 msgid "Your e-mail is not allowed to register" msgstr "Dit e-mailadres mag niet worden gebruikt voor registratie" -#: cps/web.py:1367 +#: cps/web.py:1364 msgid "Confirmation e-mail was send to your e-mail account." msgstr "Er is een bevestigings-e-mail verstuurd naar je e-mailadres." -#: cps/web.py:1370 +#: cps/web.py:1367 msgid "This username or e-mail address is already in use." msgstr "Gebruikersnaam of e-mailadres is al in gebruik." -#: cps/web.py:1387 +#: cps/web.py:1384 msgid "Cannot activate LDAP authentication" msgstr "Kan de LDAP authenticatie niet activeren" -#: cps/web.py:1404 +#: cps/web.py:1401 #, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgstr "" -#: cps/web.py:1410 +#: cps/web.py:1407 #, python-format msgid "Could not login: %(message)s" msgstr "Inloggen mislukt: %(message)s" -#: cps/web.py:1414 cps/web.py:1438 +#: cps/web.py:1411 cps/web.py:1435 msgid "Wrong Username or Password" msgstr "Verkeerde gebruikersnaam of wachtwoord" -#: cps/web.py:1421 +#: cps/web.py:1418 msgid "New Password was send to your email address" msgstr "Een nieuw wachtwoord is verzonden naar je e-mailadres" -#: cps/web.py:1427 +#: cps/web.py:1424 msgid "Please enter valid username to reset password" msgstr "Geef een geldige gebruikersnaam op om je wachtwoord te herstellen" -#: cps/web.py:1433 +#: cps/web.py:1430 #, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "Je bent ingelogd als: '%(nickname)s'" -#: cps/web.py:1442 cps/web.py:1469 +#: cps/web.py:1439 cps/web.py:1466 msgid "login" msgstr "inloggen" -#: cps/web.py:1481 cps/web.py:1515 +#: cps/web.py:1478 cps/web.py:1512 msgid "Token not found" msgstr "Toegangssleutel niet gevonden" -#: cps/web.py:1490 cps/web.py:1523 +#: cps/web.py:1487 cps/web.py:1520 msgid "Token has expired" msgstr "Toegangssleutel is verlopen" -#: cps/web.py:1499 +#: cps/web.py:1496 msgid "Success! Please return to your device" msgstr "Gelukt! Ga terug naar je apparaat" -#: cps/web.py:1580 cps/web.py:1625 cps/web.py:1631 +#: cps/web.py:1577 cps/web.py:1622 cps/web.py:1628 #, python-format msgid "%(name)s's profile" msgstr "%(name)s's profiel" -#: cps/web.py:1627 +#: cps/web.py:1624 msgid "Profile updated" msgstr "Profiel bijgewerkt" -#: cps/web.py:1656 cps/web.py:1659 cps/web.py:1662 cps/web.py:1669 -#: cps/web.py:1674 +#: cps/web.py:1653 cps/web.py:1656 cps/web.py:1659 cps/web.py:1666 +#: cps/web.py:1671 msgid "Read a Book" msgstr "Lees een boek" diff --git a/cps/translations/pl/LC_MESSAGES/messages.mo b/cps/translations/pl/LC_MESSAGES/messages.mo index 3c05f2a7..6f3c5f96 100644 Binary files a/cps/translations/pl/LC_MESSAGES/messages.mo and b/cps/translations/pl/LC_MESSAGES/messages.mo differ diff --git a/cps/translations/pl/LC_MESSAGES/messages.po b/cps/translations/pl/LC_MESSAGES/messages.po index 2b917980..e6dc6b45 100644 --- a/cps/translations/pl/LC_MESSAGES/messages.po +++ b/cps/translations/pl/LC_MESSAGES/messages.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: Calibre Web - polski (POT: 2019-08-06 18:35)\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2020-06-07 06:47+0200\n" +"POT-Creation-Date: 2020-06-28 09:31+0200\n" "PO-Revision-Date: 2020-03-31 21:50+0200\n" "Last-Translator: Jerzy Piątek \n" "Language: pl\n" @@ -48,9 +48,9 @@ msgid "Unknown command" msgstr "" # ??? -#: cps/admin.py:116 cps/editbooks.py:563 cps/editbooks.py:573 -#: cps/editbooks.py:667 cps/editbooks.py:669 cps/editbooks.py:730 -#: cps/editbooks.py:743 cps/updater.py:509 cps/uploader.py:97 +#: cps/admin.py:116 cps/editbooks.py:564 cps/editbooks.py:576 +#: cps/editbooks.py:670 cps/editbooks.py:672 cps/editbooks.py:733 +#: cps/editbooks.py:749 cps/updater.py:509 cps/uploader.py:97 #: cps/uploader.py:107 msgid "Unknown" msgstr "Nieznany" @@ -63,7 +63,7 @@ msgstr "Panel administratora" msgid "UI Configuration" msgstr "Konfiguracja Interfejsu" -#: cps/admin.py:189 cps/admin.py:706 +#: cps/admin.py:189 cps/admin.py:711 msgid "Calibre-Web configuration updated" msgstr "Konfiguracja Calibre-Web została zaktualizowana" @@ -115,177 +115,183 @@ msgstr "" msgid "LDAP Certificate Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:627 +#: cps/admin.py:628 msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:631 +#: cps/admin.py:632 msgid "Certfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:701 +#: cps/admin.py:694 cps/admin.py:793 cps/admin.py:885 cps/admin.py:934 +#: cps/shelf.py:100 cps/shelf.py:161 cps/shelf.py:202 cps/shelf.py:260 +#: cps/shelf.py:309 cps/shelf.py:338 cps/shelf.py:368 cps/shelf.py:392 +msgid "Settings DB is not Writeable" +msgstr "" + +#: cps/admin.py:706 msgid "DB Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:703 +#: cps/admin.py:708 msgid "DB is not Writeable" msgstr "" -#: cps/admin.py:736 +#: cps/admin.py:741 msgid "Basic Configuration" msgstr "Konfiguracja podstawowa" -#: cps/admin.py:751 cps/web.py:1337 +#: cps/admin.py:756 cps/web.py:1334 msgid "Please fill out all fields!" msgstr "Proszę wypełnić wszystkie pola!" -#: cps/admin.py:754 cps/admin.py:766 cps/admin.py:772 cps/admin.py:892 +#: cps/admin.py:759 cps/admin.py:771 cps/admin.py:777 cps/admin.py:903 msgid "Add new user" msgstr "Dodaj nowego użytkownika" -#: cps/admin.py:763 cps/web.py:1578 +#: cps/admin.py:768 cps/web.py:1575 msgid "E-mail is not from valid domain" msgstr "E-mail nie pochodzi z prawidłowej domeny" -#: cps/admin.py:770 cps/admin.py:785 +#: cps/admin.py:775 cps/admin.py:790 msgid "Found an existing account for this e-mail address or nickname." msgstr "Znaleziono istniejące konto dla tego adresu e-mail lub pseudonimu." -#: cps/admin.py:781 +#: cps/admin.py:786 #, python-format msgid "User '%(user)s' created" msgstr "Użytkownik '%(user)s' został utworzony" -#: cps/admin.py:794 +#: cps/admin.py:802 #, python-format msgid "User '%(nick)s' deleted" msgstr "Użytkownik '%(nick)s' został usunięty" -#: cps/admin.py:797 +#: cps/admin.py:805 msgid "No admin user remaining, can't delete user" msgstr "Nie można usunąć użytkownika. Brak na serwerze innego konta z prawami administratora" -#: cps/admin.py:803 +#: cps/admin.py:811 msgid "No admin user remaining, can't remove admin role" msgstr "" -#: cps/admin.py:839 cps/web.py:1621 +#: cps/admin.py:847 cps/web.py:1618 msgid "Found an existing account for this e-mail address." msgstr "Znaleziono istniejące konto dla tego adresu e-mail." -#: cps/admin.py:849 cps/admin.py:864 cps/admin.py:967 cps/web.py:1596 +#: cps/admin.py:857 cps/admin.py:872 cps/admin.py:983 cps/web.py:1593 #, python-format msgid "Edit User %(nick)s" msgstr "Edytuj użytkownika %(nick)s" -#: cps/admin.py:855 cps/web.py:1588 +#: cps/admin.py:863 cps/web.py:1585 msgid "This username is already taken" msgstr "Nazwa użytkownika jest już zajęta" -#: cps/admin.py:871 +#: cps/admin.py:879 #, python-format msgid "User '%(nick)s' updated" msgstr "Użytkownik '%(nick)s' został zaktualizowany" -#: cps/admin.py:874 +#: cps/admin.py:882 msgid "An unknown error occured." msgstr "Wystąpił nieznany błąd." -#: cps/admin.py:901 cps/templates/admin.html:71 +#: cps/admin.py:912 cps/templates/admin.html:71 msgid "Edit E-mail Server Settings" msgstr "Zmień ustawienia SMTP" -#: cps/admin.py:925 +#: cps/admin.py:941 #, python-format msgid "Test e-mail successfully send to %(kindlemail)s" msgstr "Testowy e-mail pomyślnie przesłany do %(kindlemail)s" -#: cps/admin.py:928 +#: cps/admin.py:944 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "Wystąpił błąd podczas wysyłania e-maila testowego: %(res)s" -#: cps/admin.py:930 +#: cps/admin.py:946 msgid "Please configure your e-mail address first..." msgstr "Najpierw skonfiguruj swój adres e-mail..." -#: cps/admin.py:932 +#: cps/admin.py:948 msgid "E-mail server settings updated" msgstr "Zaktualizowano ustawienia serwera poczty e-mail" -#: cps/admin.py:943 +#: cps/admin.py:959 msgid "User not found" msgstr "" # ??? -#: cps/admin.py:978 +#: cps/admin.py:994 #, python-format msgid "Password for user %(user)s reset" msgstr "Zrestartowano hasło użytkownika %(user)s" -#: cps/admin.py:981 cps/web.py:1361 cps/web.py:1425 +#: cps/admin.py:997 cps/web.py:1358 cps/web.py:1422 msgid "An unknown error occurred. Please try again later." msgstr "Wystąpił nieznany błąd. Spróbuj ponownie później." -#: cps/admin.py:984 cps/web.py:1299 +#: cps/admin.py:1000 cps/web.py:1296 msgid "Please configure the SMTP mail settings first..." msgstr "Proszę najpierw skonfigurować ustawienia SMTP poczty e-mail..." -#: cps/admin.py:996 +#: cps/admin.py:1012 msgid "Logfile viewer" msgstr "Przeglądanie dziennika" -#: cps/admin.py:1035 +#: cps/admin.py:1051 msgid "Requesting update package" msgstr "Żądanie o pakiet aktualizacji" -#: cps/admin.py:1036 +#: cps/admin.py:1052 msgid "Downloading update package" msgstr "Pobieranie pakietu aktualizacji" -#: cps/admin.py:1037 +#: cps/admin.py:1053 msgid "Unzipping update package" msgstr "Rozpakowywanie pakietu aktualizacji" # ??? -#: cps/admin.py:1038 +#: cps/admin.py:1054 msgid "Replacing files" msgstr "Zastępowanie plików" -#: cps/admin.py:1039 +#: cps/admin.py:1055 msgid "Database connections are closed" msgstr "Połączenia z bazą danych zostały zakończone" -#: cps/admin.py:1040 +#: cps/admin.py:1056 msgid "Stopping server" msgstr "Zatrzymywanie serwera" -#: cps/admin.py:1041 +#: cps/admin.py:1057 msgid "Update finished, please press okay and reload page" msgstr "Aktualizacja zakończona, proszę nacisnąć OK i odświeżyć stronę" -#: cps/admin.py:1042 cps/admin.py:1043 cps/admin.py:1044 cps/admin.py:1045 -#: cps/admin.py:1046 +#: cps/admin.py:1058 cps/admin.py:1059 cps/admin.py:1060 cps/admin.py:1061 +#: cps/admin.py:1062 msgid "Update failed:" msgstr "Aktualizacja nieudana:" -#: cps/admin.py:1042 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522 +#: cps/admin.py:1058 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522 msgid "HTTP Error" msgstr "Błąd HTTP" -#: cps/admin.py:1043 cps/updater.py:321 cps/updater.py:524 +#: cps/admin.py:1059 cps/updater.py:321 cps/updater.py:524 msgid "Connection error" msgstr "Błąd połączenia" -#: cps/admin.py:1044 cps/updater.py:323 cps/updater.py:526 +#: cps/admin.py:1060 cps/updater.py:323 cps/updater.py:526 msgid "Timeout while establishing connection" msgstr "Przekroczono limit czasu podczas nawiązywania połączenia" -#: cps/admin.py:1045 cps/updater.py:325 cps/updater.py:528 +#: cps/admin.py:1061 cps/updater.py:325 cps/updater.py:528 msgid "General error" msgstr "Błąd ogólny" -#: cps/admin.py:1046 +#: cps/admin.py:1062 msgid "Update File Could Not be Saved in Temp Dir" msgstr "" @@ -305,8 +311,8 @@ msgstr "" msgid "Book Successfully Deleted" msgstr "" -#: cps/editbooks.py:254 cps/editbooks.py:548 cps/web.py:1644 cps/web.py:1685 -#: cps/web.py:1747 +#: cps/editbooks.py:254 cps/editbooks.py:549 cps/web.py:1641 cps/web.py:1682 +#: cps/web.py:1744 msgid "Error opening eBook. File does not exist or file is not accessible" msgstr "Błąd podczas otwierania e-booka. Plik nie istnieje lub jest niedostępny" @@ -314,82 +320,82 @@ msgstr "Błąd podczas otwierania e-booka. Plik nie istnieje lub jest niedostęp msgid "edit metadata" msgstr "edytuj metadane" -#: cps/editbooks.py:361 +#: cps/editbooks.py:360 #, python-format msgid "%(langname)s is not a valid language" msgstr "%(langname)s nie jest prawidłowym językiem" -#: cps/editbooks.py:467 cps/editbooks.py:712 +#: cps/editbooks.py:468 cps/editbooks.py:715 #, python-format msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgstr "Rozszerzenie pliku '%(ext)s' nie jest dozwolone do wysłania na ten serwer" -#: cps/editbooks.py:471 cps/editbooks.py:716 +#: cps/editbooks.py:472 cps/editbooks.py:719 msgid "File to be uploaded must have an extension" msgstr "Plik do wysłania musi mieć rozszerzenie" -#: cps/editbooks.py:483 cps/editbooks.py:773 +#: cps/editbooks.py:484 cps/editbooks.py:779 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "Nie udało się utworzyć łącza %(path)s (Odmowa dostępu)." -#: cps/editbooks.py:488 +#: cps/editbooks.py:489 #, python-format msgid "Failed to store file %(file)s." msgstr "Nie można zapisać pliku %(file)s." -#: cps/editbooks.py:506 cps/editbooks.py:864 +#: cps/editbooks.py:507 cps/editbooks.py:870 #, python-format msgid "Database error: %(error)s." msgstr "" -#: cps/editbooks.py:510 +#: cps/editbooks.py:511 #, python-format msgid "File format %(ext)s added to %(book)s" msgstr "Format pliku %(ext)s dodany do %(book)s" -#: cps/editbooks.py:653 +#: cps/editbooks.py:656 msgid "Metadata successfully updated" msgstr "Metadane zostały pomyślnie zaktualizowane" -#: cps/editbooks.py:662 +#: cps/editbooks.py:665 msgid "Error editing book, please check logfile for details" msgstr "Błąd podczas edycji książki, sprawdź plik dziennika, aby uzyskać szczegółowe informacje" -#: cps/editbooks.py:724 +#: cps/editbooks.py:727 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "Nie można zapisać pliku %(filename)s w katalogu tymczasowym" -#: cps/editbooks.py:734 +#: cps/editbooks.py:737 msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgstr "Wysłana książka prawdopodobnie istnieje w bibliotece, rozważ zmianę przed przesłaniem nowej: " -#: cps/editbooks.py:780 +#: cps/editbooks.py:786 #, python-format msgid "Failed to Move File %(file)s: %(error)s" msgstr "" -#: cps/editbooks.py:836 +#: cps/editbooks.py:842 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "" -#: cps/editbooks.py:850 +#: cps/editbooks.py:856 #, python-format msgid "File %(file)s uploaded" msgstr "Wysłano plik %(file)s" -#: cps/editbooks.py:876 +#: cps/editbooks.py:882 msgid "Source or destination format for conversion missing" msgstr "Brak formatu źródłowego lub docelowego do konwersji" -#: cps/editbooks.py:884 +#: cps/editbooks.py:890 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "Książka została pomyślnie umieszczona w zadaniach do konwersji %(book_format)s" -#: cps/editbooks.py:888 +#: cps/editbooks.py:894 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "Podczas konwersji książki wystąpił błąd: %(res)s" @@ -505,71 +511,71 @@ msgstr "Nie znaleziono pliku %(file)s na Google Drive" msgid "Book path %(path)s not found on Google Drive" msgstr "Nie znaleziono ścieżki do książki %(path)s na Google Drive" -#: cps/helper.py:542 +#: cps/helper.py:550 msgid "Error Downloading Cover" msgstr "" -#: cps/helper.py:545 +#: cps/helper.py:553 msgid "Cover Format Error" msgstr "" -#: cps/helper.py:561 +#: cps/helper.py:569 msgid "Failed to create path for cover" msgstr "Nie udało się utworzyć ścieżki dla okładki" -#: cps/helper.py:566 +#: cps/helper.py:574 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "" -#: cps/helper.py:577 +#: cps/helper.py:585 msgid "Only jpg/jpeg/png/webp files are supported as coverfile" msgstr "Jako plik okładki dopuszczalne są jedynie pliki jpg/jpeg/png/webp" -#: cps/helper.py:591 +#: cps/helper.py:599 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "Jako plik okładki dopuszczalne są jedynie pliki jpg/jpeg" -#: cps/helper.py:640 +#: cps/helper.py:648 msgid "Unrar binary file not found" msgstr "" -#: cps/helper.py:654 +#: cps/helper.py:662 msgid "Error excecuting UnRar" msgstr "" -#: cps/helper.py:710 +#: cps/helper.py:718 msgid "Waiting" msgstr "Oczekiwanie" -#: cps/helper.py:712 +#: cps/helper.py:720 msgid "Failed" msgstr "Nieudane" -#: cps/helper.py:714 +#: cps/helper.py:722 msgid "Started" msgstr "Rozpoczynanie" -#: cps/helper.py:716 +#: cps/helper.py:724 msgid "Finished" msgstr "Zakończone" -#: cps/helper.py:718 +#: cps/helper.py:726 msgid "Unknown Status" msgstr "Ststus nieznany" -#: cps/helper.py:723 +#: cps/helper.py:731 msgid "E-mail: " msgstr "E-mail: " -#: cps/helper.py:725 cps/helper.py:729 +#: cps/helper.py:733 cps/helper.py:737 msgid "Convert: " msgstr "Konwertowanie: " -#: cps/helper.py:727 +#: cps/helper.py:735 msgid "Upload: " msgstr "Wyślij: " -#: cps/helper.py:731 +#: cps/helper.py:739 msgid "Unknown Task: " msgstr "Nieznane zadanie: " @@ -603,7 +609,7 @@ msgstr "Nie udało się zalogować do Google." msgid "Failed to fetch user info from Google." msgstr "Nie udało się pobrać informacji o użytkowniku z Google." -#: cps/oauth_bb.py:225 cps/web.py:1397 cps/web.py:1537 +#: cps/oauth_bb.py:225 cps/web.py:1394 cps/web.py:1534 #, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "zalogowałeś się jako: '%(nickname)s'" @@ -640,218 +646,218 @@ msgstr "Błąd GitHub Oauth, proszę spróbować później." msgid "Google Oauth error, please retry later." msgstr "Błąd Google Oauth, proszę spróbować później." -#: cps/shelf.py:66 cps/shelf.py:111 +#: cps/shelf.py:67 cps/shelf.py:120 msgid "Invalid shelf specified" msgstr "Podano niewłaściwą półkę" -#: cps/shelf.py:72 +#: cps/shelf.py:73 #, python-format msgid "Sorry you are not allowed to add a book to the the shelf: %(shelfname)s" msgstr "Niestety, nie posiadasz uprawnień do dodania książki do półki: %(shelfname)s" -#: cps/shelf.py:82 +#: cps/shelf.py:83 #, python-format msgid "Book is already part of the shelf: %(shelfname)s" msgstr "Książka jest już dodana do półki: %(shelfname)s" -#: cps/shelf.py:97 +#: cps/shelf.py:106 #, python-format msgid "Book has been added to shelf: %(sname)s" msgstr "Książka została dodana do półki: %(sname)s" -#: cps/shelf.py:115 +#: cps/shelf.py:124 #, python-format msgid "You are not allowed to add a book to the the shelf: %(name)s" msgstr "Nie masz uprawnień do dodania ksiażki do półki: %(name)s" -#: cps/shelf.py:133 +#: cps/shelf.py:142 #, python-format msgid "Books are already part of the shelf: %(name)s" msgstr "Książki są już dodane do półki: %(name)s" -#: cps/shelf.py:148 +#: cps/shelf.py:158 #, python-format msgid "Books have been added to shelf: %(sname)s" msgstr "Książki zostały dodane do półki %(sname)s" -#: cps/shelf.py:150 +#: cps/shelf.py:163 #, python-format msgid "Could not add books to shelf: %(sname)s" msgstr "Nie można dodać książek do półki: %(sname)s" -#: cps/shelf.py:188 +#: cps/shelf.py:208 #, python-format msgid "Book has been removed from shelf: %(sname)s" msgstr "Książka została usunięta z półki: %(sname)s" -#: cps/shelf.py:196 +#: cps/shelf.py:216 #, python-format msgid "Sorry you are not allowed to remove a book from this shelf: %(sname)s" msgstr "Niestety nie możesz usunąć książki z tej półki %(sname)s" -#: cps/shelf.py:220 cps/shelf.py:260 +#: cps/shelf.py:240 cps/shelf.py:284 #, python-format msgid "A public shelf with the name '%(title)s' already exists." msgstr "" -#: cps/shelf.py:229 cps/shelf.py:270 +#: cps/shelf.py:249 cps/shelf.py:294 #, python-format msgid "A private shelf with the name '%(title)s' already exists." msgstr "" -#: cps/shelf.py:236 +#: cps/shelf.py:256 #, python-format msgid "Shelf %(title)s created" msgstr "Półka %(title)s została utworzona" -#: cps/shelf.py:239 cps/shelf.py:284 +#: cps/shelf.py:263 cps/shelf.py:312 msgid "There was an error" msgstr "Wystąpił błąd" -#: cps/shelf.py:240 cps/shelf.py:242 cps/templates/layout.html:144 +#: cps/shelf.py:264 cps/shelf.py:266 cps/templates/layout.html:144 msgid "Create a Shelf" msgstr "utwórz półkę" -#: cps/shelf.py:282 +#: cps/shelf.py:306 #, python-format msgid "Shelf %(title)s changed" msgstr "Półka %(title)s została zmieniona" -#: cps/shelf.py:285 cps/shelf.py:287 +#: cps/shelf.py:313 cps/shelf.py:315 msgid "Edit a shelf" msgstr "Edytuj półkę" -#: cps/shelf.py:332 +#: cps/shelf.py:369 #, python-format msgid "Shelf: '%(name)s'" msgstr "Półka: „%(name)s”" -#: cps/shelf.py:335 +#: cps/shelf.py:372 msgid "Error opening shelf. Shelf does not exist or is not accessible" msgstr "Błąd otwierania półki. Półka nie istnieje lub jest niedostępna" -#: cps/shelf.py:368 +#: cps/shelf.py:409 msgid "Hidden Book" msgstr "Ukryta książka" -#: cps/shelf.py:373 +#: cps/shelf.py:414 #, python-format msgid "Change order of Shelf: '%(name)s'" msgstr "Zmieniono kolejność półki: '%(name)s'" -#: cps/ub.py:64 +#: cps/ub.py:65 msgid "Recently Added" msgstr "Ostatnio dodane" -#: cps/ub.py:66 +#: cps/ub.py:67 msgid "Show recent books" msgstr "Pokaż menu ostatnio dodanych książek" -#: cps/templates/index.xml:17 cps/ub.py:67 +#: cps/templates/index.xml:17 cps/ub.py:68 msgid "Hot Books" msgstr "Najpopularniejsze" -#: cps/ub.py:69 +#: cps/ub.py:70 msgid "Show Hot Books" msgstr "Pokaż menu najpopularniejszych książek" -#: cps/templates/index.xml:24 cps/ub.py:71 cps/web.py:655 +#: cps/templates/index.xml:24 cps/ub.py:72 cps/web.py:652 msgid "Top Rated Books" msgstr "Najwyżej ocenione" -#: cps/ub.py:73 +#: cps/ub.py:74 msgid "Show Top Rated Books" msgstr "Pokaż menu najwyżej ocenionych książek" -#: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:74 -#: cps/web.py:1222 +#: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:75 +#: cps/web.py:1219 msgid "Read Books" msgstr "Przeczytane" -#: cps/ub.py:76 +#: cps/ub.py:77 msgid "Show read and unread" msgstr "Pokaż menu przeczytane i nieprzeczytane" -#: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:78 -#: cps/web.py:1225 +#: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:79 +#: cps/web.py:1222 msgid "Unread Books" msgstr "Nieprzeczytane" -#: cps/ub.py:80 +#: cps/ub.py:81 msgid "Show unread" msgstr "Pokaż nieprzeczytane" -#: cps/ub.py:81 +#: cps/ub.py:82 msgid "Discover" msgstr "Odkrywaj" -#: cps/ub.py:83 +#: cps/ub.py:84 msgid "Show random books" msgstr "Pokaż menu losowych książek" -#: cps/templates/index.xml:75 cps/ub.py:84 cps/web.py:970 +#: cps/templates/index.xml:75 cps/ub.py:85 cps/web.py:967 msgid "Categories" msgstr "Kategorie" -#: cps/ub.py:86 +#: cps/ub.py:87 msgid "Show category selection" msgstr "Pokaż menu wyboru kategorii" #: cps/templates/book_edit.html:84 cps/templates/index.xml:82 -#: cps/templates/search_form.html:53 cps/ub.py:87 cps/web.py:886 cps/web.py:896 +#: cps/templates/search_form.html:53 cps/ub.py:88 cps/web.py:883 cps/web.py:893 msgid "Series" msgstr "Cykle" -#: cps/ub.py:89 +#: cps/ub.py:90 msgid "Show series selection" msgstr "Pokaż menu wyboru cyklu" -#: cps/templates/index.xml:61 cps/ub.py:90 +#: cps/templates/index.xml:61 cps/ub.py:91 msgid "Authors" msgstr "Autorzy" -#: cps/ub.py:92 +#: cps/ub.py:93 msgid "Show author selection" msgstr "Pokaż menu wyboru autora" -#: cps/templates/index.xml:68 cps/ub.py:94 cps/web.py:869 +#: cps/templates/index.xml:68 cps/ub.py:95 cps/web.py:866 msgid "Publishers" msgstr "Wydawcy" -#: cps/ub.py:96 +#: cps/ub.py:97 msgid "Show publisher selection" msgstr "Pokaż menu wyboru wydawcy" -#: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:97 -#: cps/web.py:953 +#: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:98 +#: cps/web.py:950 msgid "Languages" msgstr "Języki" -#: cps/ub.py:100 +#: cps/ub.py:101 msgid "Show language selection" msgstr "Pokaż menu wyboru języka" -#: cps/templates/index.xml:96 cps/ub.py:101 +#: cps/templates/index.xml:96 cps/ub.py:102 msgid "Ratings" msgstr "Oceny" -#: cps/ub.py:103 +#: cps/ub.py:104 msgid "Show ratings selection" msgstr "Pokaż menu listy ocen" -#: cps/templates/index.xml:104 cps/ub.py:104 +#: cps/templates/index.xml:104 cps/ub.py:105 msgid "File formats" msgstr "Formaty plików" -#: cps/ub.py:106 +#: cps/ub.py:107 msgid "Show file formats selection" msgstr "Pokaż menu formatu plików" -#: cps/ub.py:108 cps/web.py:1249 +#: cps/ub.py:109 cps/web.py:1246 msgid "Archived Books" msgstr "" -#: cps/ub.py:110 +#: cps/ub.py:111 msgid "Show archived books" msgstr "" @@ -884,220 +890,220 @@ msgstr "Dostępna jest nowa aktualizacja. Kliknij przycisk poniżej, aby zaktual msgid "Click on the button below to update to the latest stable version." msgstr "Kliknij przycisk poniżej, aby zaktualizować do najnowszej stabilnej wersji." -#: cps/web.py:322 +#: cps/web.py:319 #, python-format msgid "Error: %(ldaperror)s" msgstr "" -#: cps/web.py:326 +#: cps/web.py:323 msgid "Error: No user returned in response of LDAP server" msgstr "" -#: cps/web.py:374 +#: cps/web.py:371 msgid "Failed to Create at Least One LDAP User" msgstr "" -#: cps/web.py:377 +#: cps/web.py:374 msgid "At Least One LDAP User Not Found in Database" msgstr "" -#: cps/web.py:379 +#: cps/web.py:376 msgid "User Successfully Imported" msgstr "" -#: cps/web.py:625 +#: cps/web.py:622 msgid "Recently Added Books" msgstr "Ostatnio dodane książki" -#: cps/templates/index.html:5 cps/web.py:663 +#: cps/templates/index.html:5 cps/web.py:660 msgid "Discover (Random Books)" msgstr "Odkrywaj (losowe książki)" -#: cps/web.py:691 +#: cps/web.py:688 msgid "Books" msgstr "Książki" -#: cps/web.py:718 +#: cps/web.py:715 msgid "Hot Books (Most Downloaded)" msgstr "Najpopularniejsze książki (najczęściej pobierane)" -#: cps/web.py:731 +#: cps/web.py:728 msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible" msgstr "Błąd otwierania e-booka. Plik nie istnieje lub jest niedostępny" -#: cps/web.py:745 +#: cps/web.py:742 #, python-format msgid "Author: %(name)s" msgstr "Autor: %(name)s" -#: cps/web.py:759 +#: cps/web.py:756 #, python-format msgid "Publisher: %(name)s" msgstr "Wydawca: %(name)s" -#: cps/web.py:772 +#: cps/web.py:769 #, python-format msgid "Series: %(serie)s" msgstr "Cykl: %(serie)s" -#: cps/web.py:785 +#: cps/web.py:782 #, python-format msgid "Rating: %(rating)s stars" msgstr "Ocena: %(rating)s gwiazdek" -#: cps/web.py:798 +#: cps/web.py:795 #, python-format msgid "File format: %(format)s" msgstr "Format pliku: %(format)s" -#: cps/web.py:812 +#: cps/web.py:809 #, python-format msgid "Category: %(name)s" msgstr "Kategoria: %(name)s" -#: cps/web.py:831 +#: cps/web.py:828 #, python-format msgid "Language: %(name)s" msgstr "Język: %(name)s" -#: cps/web.py:910 +#: cps/web.py:907 msgid "Ratings list" msgstr "Lista z ocenami" -#: cps/web.py:925 +#: cps/web.py:922 msgid "File formats list" msgstr "Lista formatów" -#: cps/templates/layout.html:74 cps/templates/tasks.html:7 cps/web.py:984 +#: cps/templates/layout.html:74 cps/templates/tasks.html:7 cps/web.py:981 msgid "Tasks" msgstr "Zadania" #: cps/templates/book_edit.html:235 cps/templates/feed.xml:33 #: cps/templates/layout.html:45 cps/templates/layout.html:48 -#: cps/templates/search_form.html:174 cps/web.py:1010 cps/web.py:1015 +#: cps/templates/search_form.html:174 cps/web.py:1007 cps/web.py:1012 msgid "Search" msgstr "Szukaj" -#: cps/web.py:1066 +#: cps/web.py:1063 msgid "Published after " msgstr "Opublikowane po " -#: cps/web.py:1073 +#: cps/web.py:1070 msgid "Published before " msgstr "Opublikowane przed " -#: cps/web.py:1087 +#: cps/web.py:1084 #, python-format msgid "Rating <= %(rating)s" msgstr "Ocena <= %(rating)s" -#: cps/web.py:1089 +#: cps/web.py:1086 #, python-format msgid "Rating >= %(rating)s" msgstr "Ocena >= %(rating)s" -#: cps/web.py:1158 cps/web.py:1183 +#: cps/web.py:1155 cps/web.py:1180 msgid "search" msgstr "szukaj" -#: cps/web.py:1213 +#: cps/web.py:1210 #, python-format msgid "Custom Column No.%(column)d is not existing in calibre database" msgstr "" -#: cps/web.py:1304 +#: cps/web.py:1301 #, python-format msgid "Book successfully queued for sending to %(kindlemail)s" msgstr "Książka została umieszczona w kolejce do wysłania do %(kindlemail)s" -#: cps/web.py:1308 +#: cps/web.py:1305 #, python-format msgid "Oops! There was an error sending this book: %(res)s" msgstr "Wystąpił błąd podczas wysyłania tej książki: %(res)s" -#: cps/web.py:1310 +#: cps/web.py:1307 msgid "Please update your profile with a valid Send to Kindle E-mail Address." msgstr "Najpierw skonfiguruj adres e-mail Kindle..." -#: cps/web.py:1327 +#: cps/web.py:1324 msgid "E-Mail server is not configured, please contact your administrator!" msgstr "Serwer e-mail nie jest skonfigurowany, skontaktuj się z administratorem!" -#: cps/web.py:1328 cps/web.py:1338 cps/web.py:1362 cps/web.py:1366 -#: cps/web.py:1371 cps/web.py:1375 +#: cps/web.py:1325 cps/web.py:1335 cps/web.py:1359 cps/web.py:1363 +#: cps/web.py:1368 cps/web.py:1372 msgid "register" msgstr "rejestracja" -#: cps/web.py:1364 +#: cps/web.py:1361 msgid "Your e-mail is not allowed to register" msgstr "Twój e-mail nie może się zarejestrować" -#: cps/web.py:1367 +#: cps/web.py:1364 msgid "Confirmation e-mail was send to your e-mail account." msgstr "Wiadomość e-mail z potwierdzeniem została wysłana na Twoje konto e-mail." -#: cps/web.py:1370 +#: cps/web.py:1367 msgid "This username or e-mail address is already in use." msgstr "Ta nazwa użytkownika lub adres e-mail jest już używany." -#: cps/web.py:1387 +#: cps/web.py:1384 msgid "Cannot activate LDAP authentication" msgstr "Nie można aktywować uwierzytelniania LDAP" -#: cps/web.py:1404 +#: cps/web.py:1401 #, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgstr "" -#: cps/web.py:1410 +#: cps/web.py:1407 #, python-format msgid "Could not login: %(message)s" msgstr "" -#: cps/web.py:1414 cps/web.py:1438 +#: cps/web.py:1411 cps/web.py:1435 msgid "Wrong Username or Password" msgstr "Błędna nazwa użytkownika lub hasło" -#: cps/web.py:1421 +#: cps/web.py:1418 msgid "New Password was send to your email address" msgstr "Nowe hasło zostało wysłane na Twój adres e-mail" -#: cps/web.py:1427 +#: cps/web.py:1424 msgid "Please enter valid username to reset password" msgstr "Wprowadź prawidłową nazwę użytkownika, aby zresetować hasło" -#: cps/web.py:1433 +#: cps/web.py:1430 #, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "Jesteś teraz zalogowany jako: '%(nickname)s'" -#: cps/web.py:1442 cps/web.py:1469 +#: cps/web.py:1439 cps/web.py:1466 msgid "login" msgstr "logowanie" -#: cps/web.py:1481 cps/web.py:1515 +#: cps/web.py:1478 cps/web.py:1512 msgid "Token not found" msgstr "Nie znaleziono tokenu" -#: cps/web.py:1490 cps/web.py:1523 +#: cps/web.py:1487 cps/web.py:1520 msgid "Token has expired" msgstr "Token wygasł" -#: cps/web.py:1499 +#: cps/web.py:1496 msgid "Success! Please return to your device" msgstr "Powodzenie! Wróć do swojego urządzenia" -#: cps/web.py:1580 cps/web.py:1625 cps/web.py:1631 +#: cps/web.py:1577 cps/web.py:1622 cps/web.py:1628 #, python-format msgid "%(name)s's profile" msgstr "Profil użytkownika %(name)s" -#: cps/web.py:1627 +#: cps/web.py:1624 msgid "Profile updated" msgstr "Zaktualizowano profil" -#: cps/web.py:1656 cps/web.py:1659 cps/web.py:1662 cps/web.py:1669 -#: cps/web.py:1674 +#: cps/web.py:1653 cps/web.py:1656 cps/web.py:1659 cps/web.py:1666 +#: cps/web.py:1671 msgid "Read a Book" msgstr "Czytaj książkę" diff --git a/cps/translations/ru/LC_MESSAGES/messages.mo b/cps/translations/ru/LC_MESSAGES/messages.mo index 8a7658f2..47a7b23c 100644 Binary files a/cps/translations/ru/LC_MESSAGES/messages.mo and b/cps/translations/ru/LC_MESSAGES/messages.mo differ diff --git a/cps/translations/ru/LC_MESSAGES/messages.po b/cps/translations/ru/LC_MESSAGES/messages.po index 60e636cc..8b265dab 100644 --- a/cps/translations/ru/LC_MESSAGES/messages.po +++ b/cps/translations/ru/LC_MESSAGES/messages.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: Calibre-Web\n" "Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n" -"POT-Creation-Date: 2020-06-07 06:47+0200\n" +"POT-Creation-Date: 2020-06-28 09:31+0200\n" "PO-Revision-Date: 2020-04-29 01:20+0400\n" "Last-Translator: ZIZA\n" "Language: ru\n" @@ -47,9 +47,9 @@ msgstr "Успешно переподключено" msgid "Unknown command" msgstr "Неизвестная команда" -#: cps/admin.py:116 cps/editbooks.py:563 cps/editbooks.py:573 -#: cps/editbooks.py:667 cps/editbooks.py:669 cps/editbooks.py:730 -#: cps/editbooks.py:743 cps/updater.py:509 cps/uploader.py:97 +#: cps/admin.py:116 cps/editbooks.py:564 cps/editbooks.py:576 +#: cps/editbooks.py:670 cps/editbooks.py:672 cps/editbooks.py:733 +#: cps/editbooks.py:749 cps/updater.py:509 cps/uploader.py:97 #: cps/uploader.py:107 msgid "Unknown" msgstr "Неизвестно" @@ -62,7 +62,7 @@ msgstr "Администрирование" msgid "UI Configuration" msgstr "Настройка интерфейса" -#: cps/admin.py:189 cps/admin.py:706 +#: cps/admin.py:189 cps/admin.py:711 msgid "Calibre-Web configuration updated" msgstr "Конфигурация Calibre-Web обновлена" @@ -114,175 +114,181 @@ msgstr "Фильтр объектов пользователя LDAP имеет msgid "LDAP Certificate Location is not Valid, Please Enter Correct Path" msgstr "Неверное расположение сертификата LDAP, пожалуйста, введите правильный путь" -#: cps/admin.py:627 +#: cps/admin.py:628 msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgstr "Расположение ключевого файла неверно, пожалуйста, введите правильный путь" -#: cps/admin.py:631 +#: cps/admin.py:632 msgid "Certfile Location is not Valid, Please Enter Correct Path" msgstr "Расположение Certfile не является действительным, пожалуйста, введите правильный путь" -#: cps/admin.py:701 +#: cps/admin.py:694 cps/admin.py:793 cps/admin.py:885 cps/admin.py:934 +#: cps/shelf.py:100 cps/shelf.py:161 cps/shelf.py:202 cps/shelf.py:260 +#: cps/shelf.py:309 cps/shelf.py:338 cps/shelf.py:368 cps/shelf.py:392 +msgid "Settings DB is not Writeable" +msgstr "" + +#: cps/admin.py:706 msgid "DB Location is not Valid, Please Enter Correct Path" msgstr "Расположение Базы Данных неверно, пожалуйста, введите правильный путь." -#: cps/admin.py:703 +#: cps/admin.py:708 msgid "DB is not Writeable" msgstr "" -#: cps/admin.py:736 +#: cps/admin.py:741 msgid "Basic Configuration" msgstr "Настройки сервера" -#: cps/admin.py:751 cps/web.py:1337 +#: cps/admin.py:756 cps/web.py:1334 msgid "Please fill out all fields!" msgstr "Пожалуйста, заполните все поля!" -#: cps/admin.py:754 cps/admin.py:766 cps/admin.py:772 cps/admin.py:892 +#: cps/admin.py:759 cps/admin.py:771 cps/admin.py:777 cps/admin.py:903 msgid "Add new user" msgstr "Добавить пользователя" -#: cps/admin.py:763 cps/web.py:1578 +#: cps/admin.py:768 cps/web.py:1575 msgid "E-mail is not from valid domain" msgstr "E-mail не из существующей доменной зоны" -#: cps/admin.py:770 cps/admin.py:785 +#: cps/admin.py:775 cps/admin.py:790 msgid "Found an existing account for this e-mail address or nickname." msgstr "Для этого адреса электронной почты или логина уже есть учётная запись." -#: cps/admin.py:781 +#: cps/admin.py:786 #, python-format msgid "User '%(user)s' created" msgstr "Пользователь '%(user)s' добавлен" -#: cps/admin.py:794 +#: cps/admin.py:802 #, python-format msgid "User '%(nick)s' deleted" msgstr "Пользователь '%(nick)s' удалён" -#: cps/admin.py:797 +#: cps/admin.py:805 msgid "No admin user remaining, can't delete user" msgstr "Это последний администратор, невозможно удалить пользователя" -#: cps/admin.py:803 +#: cps/admin.py:811 msgid "No admin user remaining, can't remove admin role" msgstr "" -#: cps/admin.py:839 cps/web.py:1621 +#: cps/admin.py:847 cps/web.py:1618 msgid "Found an existing account for this e-mail address." msgstr "Этот адрес электронной почты уже зарегистрирован." -#: cps/admin.py:849 cps/admin.py:864 cps/admin.py:967 cps/web.py:1596 +#: cps/admin.py:857 cps/admin.py:872 cps/admin.py:983 cps/web.py:1593 #, python-format msgid "Edit User %(nick)s" msgstr "Изменить пользователя %(nick)s" -#: cps/admin.py:855 cps/web.py:1588 +#: cps/admin.py:863 cps/web.py:1585 msgid "This username is already taken" msgstr "Это имя пользователя уже занято" -#: cps/admin.py:871 +#: cps/admin.py:879 #, python-format msgid "User '%(nick)s' updated" msgstr "Пользователь '%(nick)s' обновлён" -#: cps/admin.py:874 +#: cps/admin.py:882 msgid "An unknown error occured." msgstr "Произошла неизвестная ошибка." -#: cps/admin.py:901 cps/templates/admin.html:71 +#: cps/admin.py:912 cps/templates/admin.html:71 msgid "Edit E-mail Server Settings" msgstr "Изменить настройки SMTP" -#: cps/admin.py:925 +#: cps/admin.py:941 #, python-format msgid "Test e-mail successfully send to %(kindlemail)s" msgstr "Тестовое письмо успешно отправлено на %(kindlemail)s" -#: cps/admin.py:928 +#: cps/admin.py:944 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "Произошла ошибка при отправке тестового письма на: %(res)s" -#: cps/admin.py:930 +#: cps/admin.py:946 msgid "Please configure your e-mail address first..." msgstr "Пожалуйста, сначала настройте свой адрес электронной почты ..." -#: cps/admin.py:932 +#: cps/admin.py:948 msgid "E-mail server settings updated" msgstr "Настройки E-mail сервера обновлены" -#: cps/admin.py:943 +#: cps/admin.py:959 msgid "User not found" msgstr "" -#: cps/admin.py:978 +#: cps/admin.py:994 #, python-format msgid "Password for user %(user)s reset" msgstr "Пароль для пользователя %(user)s сброшен" -#: cps/admin.py:981 cps/web.py:1361 cps/web.py:1425 +#: cps/admin.py:997 cps/web.py:1358 cps/web.py:1422 msgid "An unknown error occurred. Please try again later." msgstr "Неизвестная ошибка. Попробуйте позже." -#: cps/admin.py:984 cps/web.py:1299 +#: cps/admin.py:1000 cps/web.py:1296 msgid "Please configure the SMTP mail settings first..." msgstr "Пожалуйста, сперва настройте параметры SMTP....." -#: cps/admin.py:996 +#: cps/admin.py:1012 msgid "Logfile viewer" msgstr "Просмотр лога" -#: cps/admin.py:1035 +#: cps/admin.py:1051 msgid "Requesting update package" msgstr "Проверка обновлений" -#: cps/admin.py:1036 +#: cps/admin.py:1052 msgid "Downloading update package" msgstr "Загрузка обновлений" -#: cps/admin.py:1037 +#: cps/admin.py:1053 msgid "Unzipping update package" msgstr "Распаковка обновлений" -#: cps/admin.py:1038 +#: cps/admin.py:1054 msgid "Replacing files" msgstr "Замена файлов" -#: cps/admin.py:1039 +#: cps/admin.py:1055 msgid "Database connections are closed" msgstr "Соединения с базой данных закрыты" -#: cps/admin.py:1040 +#: cps/admin.py:1056 msgid "Stopping server" msgstr "Остановка сервера" -#: cps/admin.py:1041 +#: cps/admin.py:1057 msgid "Update finished, please press okay and reload page" msgstr "Обновления установлены, нажмите ок и перезагрузите страницу" -#: cps/admin.py:1042 cps/admin.py:1043 cps/admin.py:1044 cps/admin.py:1045 -#: cps/admin.py:1046 +#: cps/admin.py:1058 cps/admin.py:1059 cps/admin.py:1060 cps/admin.py:1061 +#: cps/admin.py:1062 msgid "Update failed:" msgstr "Ошибка обновления:" -#: cps/admin.py:1042 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522 +#: cps/admin.py:1058 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522 msgid "HTTP Error" msgstr "Ошибка HTTP" -#: cps/admin.py:1043 cps/updater.py:321 cps/updater.py:524 +#: cps/admin.py:1059 cps/updater.py:321 cps/updater.py:524 msgid "Connection error" msgstr "Ошибка соединения" -#: cps/admin.py:1044 cps/updater.py:323 cps/updater.py:526 +#: cps/admin.py:1060 cps/updater.py:323 cps/updater.py:526 msgid "Timeout while establishing connection" msgstr "Тайм-аут при установлении соединения" -#: cps/admin.py:1045 cps/updater.py:325 cps/updater.py:528 +#: cps/admin.py:1061 cps/updater.py:325 cps/updater.py:528 msgid "General error" msgstr "Общая ошибка" -#: cps/admin.py:1046 +#: cps/admin.py:1062 msgid "Update File Could Not be Saved in Temp Dir" msgstr "Не удалось сохранить файл обновления во временной папке." @@ -302,8 +308,8 @@ msgstr "" msgid "Book Successfully Deleted" msgstr "" -#: cps/editbooks.py:254 cps/editbooks.py:548 cps/web.py:1644 cps/web.py:1685 -#: cps/web.py:1747 +#: cps/editbooks.py:254 cps/editbooks.py:549 cps/web.py:1641 cps/web.py:1682 +#: cps/web.py:1744 msgid "Error opening eBook. File does not exist or file is not accessible" msgstr "Ошибка при открытии eBook. Файл не существует или файл недоступен" @@ -311,82 +317,82 @@ msgstr "Ошибка при открытии eBook. Файл не существ msgid "edit metadata" msgstr "изменить метаданные" -#: cps/editbooks.py:361 +#: cps/editbooks.py:360 #, python-format msgid "%(langname)s is not a valid language" msgstr "%(langname)s не допустимый язык" -#: cps/editbooks.py:467 cps/editbooks.py:712 +#: cps/editbooks.py:468 cps/editbooks.py:715 #, python-format msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgstr "Запрещена загрузка файлов с расширением '%(ext)s'" -#: cps/editbooks.py:471 cps/editbooks.py:716 +#: cps/editbooks.py:472 cps/editbooks.py:719 msgid "File to be uploaded must have an extension" msgstr "Загружаемый файл должен иметь расширение" -#: cps/editbooks.py:483 cps/editbooks.py:773 +#: cps/editbooks.py:484 cps/editbooks.py:779 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "Ошибка при создании пути %(path)s (Доступ запрещён)." -#: cps/editbooks.py:488 +#: cps/editbooks.py:489 #, python-format msgid "Failed to store file %(file)s." msgstr "Не удалось сохранить файл %(file)s." -#: cps/editbooks.py:506 cps/editbooks.py:864 +#: cps/editbooks.py:507 cps/editbooks.py:870 #, python-format msgid "Database error: %(error)s." msgstr "" -#: cps/editbooks.py:510 +#: cps/editbooks.py:511 #, python-format msgid "File format %(ext)s added to %(book)s" msgstr "Формат файла %(ext)s добавлен в %(book)s" -#: cps/editbooks.py:653 +#: cps/editbooks.py:656 msgid "Metadata successfully updated" msgstr "Метаданные обновлены" -#: cps/editbooks.py:662 +#: cps/editbooks.py:665 msgid "Error editing book, please check logfile for details" msgstr "Ошибка редактирования книги. Пожалуйста, проверьте лог-файл для дополнительной информации" -#: cps/editbooks.py:724 +#: cps/editbooks.py:727 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "Файл %(filename)s не удалось сохранить во временную папку" -#: cps/editbooks.py:734 +#: cps/editbooks.py:737 msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgstr "Загруженная книга, вероятно, существует в библиотеке, перед тем как загрузить новую, рассмотрите возможность изменения: " -#: cps/editbooks.py:780 +#: cps/editbooks.py:786 #, python-format msgid "Failed to Move File %(file)s: %(error)s" msgstr "" -#: cps/editbooks.py:836 +#: cps/editbooks.py:842 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "" -#: cps/editbooks.py:850 +#: cps/editbooks.py:856 #, python-format msgid "File %(file)s uploaded" msgstr "Файл %(file)s загружен" -#: cps/editbooks.py:876 +#: cps/editbooks.py:882 msgid "Source or destination format for conversion missing" msgstr "Исходный или целевой формат для конвертирования отсутствует" -#: cps/editbooks.py:884 +#: cps/editbooks.py:890 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "Книга успешно поставлена в очередь для конвертирования в %(book_format)s" -#: cps/editbooks.py:888 +#: cps/editbooks.py:894 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "Произошла ошибка при конвертирования этой книги: %(res)s" @@ -500,71 +506,71 @@ msgstr "Файл %(file)s не найден на Google Drive" msgid "Book path %(path)s not found on Google Drive" msgstr "Путь книги %(path)s не найден на Google Drive" -#: cps/helper.py:542 +#: cps/helper.py:550 msgid "Error Downloading Cover" msgstr "" -#: cps/helper.py:545 +#: cps/helper.py:553 msgid "Cover Format Error" msgstr "" -#: cps/helper.py:561 +#: cps/helper.py:569 msgid "Failed to create path for cover" msgstr "Не удалось создать путь для обложки." -#: cps/helper.py:566 +#: cps/helper.py:574 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "" -#: cps/helper.py:577 +#: cps/helper.py:585 msgid "Only jpg/jpeg/png/webp files are supported as coverfile" msgstr "Только файлы jpg / jpeg / png / webp поддерживаются в качестве файла обложки" -#: cps/helper.py:591 +#: cps/helper.py:599 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "Только файлы в формате jpg / jpeg поддерживаются как файл обложки" -#: cps/helper.py:640 +#: cps/helper.py:648 msgid "Unrar binary file not found" msgstr "" -#: cps/helper.py:654 +#: cps/helper.py:662 msgid "Error excecuting UnRar" msgstr "" -#: cps/helper.py:710 +#: cps/helper.py:718 msgid "Waiting" msgstr "Ожидание" -#: cps/helper.py:712 +#: cps/helper.py:720 msgid "Failed" msgstr "Неудачно" -#: cps/helper.py:714 +#: cps/helper.py:722 msgid "Started" msgstr "Начало" -#: cps/helper.py:716 +#: cps/helper.py:724 msgid "Finished" msgstr "Завершено" -#: cps/helper.py:718 +#: cps/helper.py:726 msgid "Unknown Status" msgstr "Неизвестный статус" -#: cps/helper.py:723 +#: cps/helper.py:731 msgid "E-mail: " msgstr "E-mail: " -#: cps/helper.py:725 cps/helper.py:729 +#: cps/helper.py:733 cps/helper.py:737 msgid "Convert: " msgstr "Конвертировать: " -#: cps/helper.py:727 +#: cps/helper.py:735 msgid "Upload: " msgstr "Загрузить: " -#: cps/helper.py:731 +#: cps/helper.py:739 msgid "Unknown Task: " msgstr "Неизвестная задача: " @@ -597,7 +603,7 @@ msgstr "Не удалось войти в систему с помощью Googl msgid "Failed to fetch user info from Google." msgstr "Не удалось получить информацию о пользователе из Google." -#: cps/oauth_bb.py:225 cps/web.py:1397 cps/web.py:1537 +#: cps/oauth_bb.py:225 cps/web.py:1394 cps/web.py:1534 #, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "вы вошли как пользователь '%(nickname)s'" @@ -634,218 +640,218 @@ msgstr "Ошибка GitHub Oauth, пожалуйста попробуйте п msgid "Google Oauth error, please retry later." msgstr "Ошибка Google Oauth, пожалуйста попробуйте позже." -#: cps/shelf.py:66 cps/shelf.py:111 +#: cps/shelf.py:67 cps/shelf.py:120 msgid "Invalid shelf specified" msgstr "Указана неверная полка" -#: cps/shelf.py:72 +#: cps/shelf.py:73 #, python-format msgid "Sorry you are not allowed to add a book to the the shelf: %(shelfname)s" msgstr "Извините, но вам не разрешено добавлять книги на полку: %(shelfname)s" -#: cps/shelf.py:82 +#: cps/shelf.py:83 #, python-format msgid "Book is already part of the shelf: %(shelfname)s" msgstr "Книги уже размещены на полке: %(shelfname)s" -#: cps/shelf.py:97 +#: cps/shelf.py:106 #, python-format msgid "Book has been added to shelf: %(sname)s" msgstr "Книга добавлена на книжную полку: %(sname)s" -#: cps/shelf.py:115 +#: cps/shelf.py:124 #, python-format msgid "You are not allowed to add a book to the the shelf: %(name)s" msgstr "Вам не разрешено добавлять книгу на полку: %(name)s" -#: cps/shelf.py:133 +#: cps/shelf.py:142 #, python-format msgid "Books are already part of the shelf: %(name)s" msgstr "Книги уже размещены на полке: %(name)s" -#: cps/shelf.py:148 +#: cps/shelf.py:158 #, python-format msgid "Books have been added to shelf: %(sname)s" msgstr "Книги добавлены на полку: %(sname)s" -#: cps/shelf.py:150 +#: cps/shelf.py:163 #, python-format msgid "Could not add books to shelf: %(sname)s" msgstr "Не удалось добавить книги на полку: %(sname)s" -#: cps/shelf.py:188 +#: cps/shelf.py:208 #, python-format msgid "Book has been removed from shelf: %(sname)s" msgstr "Книга удалена с полки: %(sname)s" -#: cps/shelf.py:196 +#: cps/shelf.py:216 #, python-format msgid "Sorry you are not allowed to remove a book from this shelf: %(sname)s" msgstr "Извините, вы не можете удалить книгу с полки: %(sname)s" -#: cps/shelf.py:220 cps/shelf.py:260 +#: cps/shelf.py:240 cps/shelf.py:284 #, python-format msgid "A public shelf with the name '%(title)s' already exists." msgstr "Публичная полка с названием '%(title)s' уже существует." -#: cps/shelf.py:229 cps/shelf.py:270 +#: cps/shelf.py:249 cps/shelf.py:294 #, python-format msgid "A private shelf with the name '%(title)s' already exists." msgstr "Приватная полка с названием '%(title)s' уже существует." -#: cps/shelf.py:236 +#: cps/shelf.py:256 #, python-format msgid "Shelf %(title)s created" msgstr "Создана полка %(title)s" -#: cps/shelf.py:239 cps/shelf.py:284 +#: cps/shelf.py:263 cps/shelf.py:312 msgid "There was an error" msgstr "Произошла ошибка" -#: cps/shelf.py:240 cps/shelf.py:242 cps/templates/layout.html:144 +#: cps/shelf.py:264 cps/shelf.py:266 cps/templates/layout.html:144 msgid "Create a Shelf" msgstr "Создать полку" -#: cps/shelf.py:282 +#: cps/shelf.py:306 #, python-format msgid "Shelf %(title)s changed" msgstr "Колка %(title)s изменена" -#: cps/shelf.py:285 cps/shelf.py:287 +#: cps/shelf.py:313 cps/shelf.py:315 msgid "Edit a shelf" msgstr "Изменить полку" -#: cps/shelf.py:332 +#: cps/shelf.py:369 #, python-format msgid "Shelf: '%(name)s'" msgstr "Полка: '%(name)s'" -#: cps/shelf.py:335 +#: cps/shelf.py:372 msgid "Error opening shelf. Shelf does not exist or is not accessible" msgstr "Ошибка открытия Полки. Полка не существует или недоступна" -#: cps/shelf.py:368 +#: cps/shelf.py:409 msgid "Hidden Book" msgstr "Скрытая книга" -#: cps/shelf.py:373 +#: cps/shelf.py:414 #, python-format msgid "Change order of Shelf: '%(name)s'" msgstr "Изменить расположение полки '%(name)s'" -#: cps/ub.py:64 +#: cps/ub.py:65 msgid "Recently Added" msgstr "Недавно Добавленные" -#: cps/ub.py:66 +#: cps/ub.py:67 msgid "Show recent books" msgstr "Показывать недавние книги" -#: cps/templates/index.xml:17 cps/ub.py:67 +#: cps/templates/index.xml:17 cps/ub.py:68 msgid "Hot Books" msgstr "Популярные Книги" -#: cps/ub.py:69 +#: cps/ub.py:70 msgid "Show Hot Books" msgstr "Показывать популярные книги" -#: cps/templates/index.xml:24 cps/ub.py:71 cps/web.py:655 +#: cps/templates/index.xml:24 cps/ub.py:72 cps/web.py:652 msgid "Top Rated Books" msgstr "Книги с наилучшим рейтингом" -#: cps/ub.py:73 +#: cps/ub.py:74 msgid "Show Top Rated Books" msgstr "Показывать книги с наивысшим рейтингом" -#: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:74 -#: cps/web.py:1222 +#: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:75 +#: cps/web.py:1219 msgid "Read Books" msgstr "Прочитанные Книги" -#: cps/ub.py:76 +#: cps/ub.py:77 msgid "Show read and unread" msgstr "Показывать прочитанные и непрочитанные" -#: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:78 -#: cps/web.py:1225 +#: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:79 +#: cps/web.py:1222 msgid "Unread Books" msgstr "Непрочитанные Книги" -#: cps/ub.py:80 +#: cps/ub.py:81 msgid "Show unread" msgstr "Показать непрочитанное" -#: cps/ub.py:81 +#: cps/ub.py:82 msgid "Discover" msgstr "Обзор" -#: cps/ub.py:83 +#: cps/ub.py:84 msgid "Show random books" msgstr "Показывать случайные книги" -#: cps/templates/index.xml:75 cps/ub.py:84 cps/web.py:970 +#: cps/templates/index.xml:75 cps/ub.py:85 cps/web.py:967 msgid "Categories" msgstr "Категории" -#: cps/ub.py:86 +#: cps/ub.py:87 msgid "Show category selection" msgstr "Показывать выбор категории" #: cps/templates/book_edit.html:84 cps/templates/index.xml:82 -#: cps/templates/search_form.html:53 cps/ub.py:87 cps/web.py:886 cps/web.py:896 +#: cps/templates/search_form.html:53 cps/ub.py:88 cps/web.py:883 cps/web.py:893 msgid "Series" msgstr "Серии" -#: cps/ub.py:89 +#: cps/ub.py:90 msgid "Show series selection" msgstr "Показывать выбор серии" -#: cps/templates/index.xml:61 cps/ub.py:90 +#: cps/templates/index.xml:61 cps/ub.py:91 msgid "Authors" msgstr "Авторы" -#: cps/ub.py:92 +#: cps/ub.py:93 msgid "Show author selection" msgstr "Показывать выбор автора" -#: cps/templates/index.xml:68 cps/ub.py:94 cps/web.py:869 +#: cps/templates/index.xml:68 cps/ub.py:95 cps/web.py:866 msgid "Publishers" msgstr "Издатели" -#: cps/ub.py:96 +#: cps/ub.py:97 msgid "Show publisher selection" msgstr "Показать выбор издателя" -#: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:97 -#: cps/web.py:953 +#: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:98 +#: cps/web.py:950 msgid "Languages" msgstr "Языки" -#: cps/ub.py:100 +#: cps/ub.py:101 msgid "Show language selection" msgstr "Показывать выбор языка" -#: cps/templates/index.xml:96 cps/ub.py:101 +#: cps/templates/index.xml:96 cps/ub.py:102 msgid "Ratings" msgstr "Рейтинги" -#: cps/ub.py:103 +#: cps/ub.py:104 msgid "Show ratings selection" msgstr "Показать выбор рейтинга" -#: cps/templates/index.xml:104 cps/ub.py:104 +#: cps/templates/index.xml:104 cps/ub.py:105 msgid "File formats" msgstr "Форматы файлов" -#: cps/ub.py:106 +#: cps/ub.py:107 msgid "Show file formats selection" msgstr "Показать выбор форматов файлов" -#: cps/ub.py:108 cps/web.py:1249 +#: cps/ub.py:109 cps/web.py:1246 msgid "Archived Books" msgstr "" -#: cps/ub.py:110 +#: cps/ub.py:111 msgid "Show archived books" msgstr "" @@ -878,220 +884,220 @@ msgstr "Новое обновление доступно. Нажмите на к msgid "Click on the button below to update to the latest stable version." msgstr "Нажмите на кнопку ниже для обновления до последней стабильной версии." -#: cps/web.py:322 +#: cps/web.py:319 #, python-format msgid "Error: %(ldaperror)s" msgstr "Ошибка: %(ldaperror)s" -#: cps/web.py:326 +#: cps/web.py:323 msgid "Error: No user returned in response of LDAP server" msgstr "Ошибка: ни одного пользователя не найдено в ответ на запрос сервер LDAP" -#: cps/web.py:374 +#: cps/web.py:371 msgid "Failed to Create at Least One LDAP User" msgstr "Не удалось создать хотя бы одного пользователя LDAP" -#: cps/web.py:377 +#: cps/web.py:374 msgid "At Least One LDAP User Not Found in Database" msgstr "По крайней мере, один пользователь LDAP не найден в базе данных" -#: cps/web.py:379 +#: cps/web.py:376 msgid "User Successfully Imported" msgstr "Пользователь успешно импортирован" -#: cps/web.py:625 +#: cps/web.py:622 msgid "Recently Added Books" msgstr "Недавно Добавленные Книги" -#: cps/templates/index.html:5 cps/web.py:663 +#: cps/templates/index.html:5 cps/web.py:660 msgid "Discover (Random Books)" msgstr "Обзор (Случайные Книги)" -#: cps/web.py:691 +#: cps/web.py:688 msgid "Books" msgstr "Книги" -#: cps/web.py:718 +#: cps/web.py:715 msgid "Hot Books (Most Downloaded)" msgstr "Популярные книги (часто загружаемые)" -#: cps/web.py:731 +#: cps/web.py:728 msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible" msgstr "Невозможно открыть книгу. Файл не существует или недоступен" -#: cps/web.py:745 +#: cps/web.py:742 #, python-format msgid "Author: %(name)s" msgstr "Автор: %(name)s" -#: cps/web.py:759 +#: cps/web.py:756 #, python-format msgid "Publisher: %(name)s" msgstr "Издатель: %(name)s" -#: cps/web.py:772 +#: cps/web.py:769 #, python-format msgid "Series: %(serie)s" msgstr "Серии: %(serie)s" -#: cps/web.py:785 +#: cps/web.py:782 #, python-format msgid "Rating: %(rating)s stars" msgstr "Оценка: %(rating)s звезды(а)" -#: cps/web.py:798 +#: cps/web.py:795 #, python-format msgid "File format: %(format)s" msgstr "Формат файла: %(format)s" -#: cps/web.py:812 +#: cps/web.py:809 #, python-format msgid "Category: %(name)s" msgstr "Категория: %(name)s" -#: cps/web.py:831 +#: cps/web.py:828 #, python-format msgid "Language: %(name)s" msgstr "Язык: %(name)s" -#: cps/web.py:910 +#: cps/web.py:907 msgid "Ratings list" msgstr "Список рейтингов" -#: cps/web.py:925 +#: cps/web.py:922 msgid "File formats list" msgstr "Список форматов файлов" -#: cps/templates/layout.html:74 cps/templates/tasks.html:7 cps/web.py:984 +#: cps/templates/layout.html:74 cps/templates/tasks.html:7 cps/web.py:981 msgid "Tasks" msgstr "Задания" #: cps/templates/book_edit.html:235 cps/templates/feed.xml:33 #: cps/templates/layout.html:45 cps/templates/layout.html:48 -#: cps/templates/search_form.html:174 cps/web.py:1010 cps/web.py:1015 +#: cps/templates/search_form.html:174 cps/web.py:1007 cps/web.py:1012 msgid "Search" msgstr "Поиск" -#: cps/web.py:1066 +#: cps/web.py:1063 msgid "Published after " msgstr "Опубликовано после " -#: cps/web.py:1073 +#: cps/web.py:1070 msgid "Published before " msgstr "Опубликовано до " -#: cps/web.py:1087 +#: cps/web.py:1084 #, python-format msgid "Rating <= %(rating)s" msgstr "Рейтинг <= %(rating)s" -#: cps/web.py:1089 +#: cps/web.py:1086 #, python-format msgid "Rating >= %(rating)s" msgstr "Рейтинг >= %(rating)s" -#: cps/web.py:1158 cps/web.py:1183 +#: cps/web.py:1155 cps/web.py:1180 msgid "search" msgstr "поиск" -#: cps/web.py:1213 +#: cps/web.py:1210 #, python-format msgid "Custom Column No.%(column)d is not existing in calibre database" msgstr "" -#: cps/web.py:1304 +#: cps/web.py:1301 #, python-format msgid "Book successfully queued for sending to %(kindlemail)s" msgstr "Книга успешно поставлена в очередь для отправки на %(kindlemail)s" -#: cps/web.py:1308 +#: cps/web.py:1305 #, python-format msgid "Oops! There was an error sending this book: %(res)s" msgstr "При отправке этой книги произошла ошибка: %(res)s" -#: cps/web.py:1310 +#: cps/web.py:1307 msgid "Please update your profile with a valid Send to Kindle E-mail Address." msgstr "Пожалуйста, сначала настройте e-mail на вашем kindle..." -#: cps/web.py:1327 +#: cps/web.py:1324 msgid "E-Mail server is not configured, please contact your administrator!" msgstr "Сервер электронной почты не настроен, обратитесь к администратору !" -#: cps/web.py:1328 cps/web.py:1338 cps/web.py:1362 cps/web.py:1366 -#: cps/web.py:1371 cps/web.py:1375 +#: cps/web.py:1325 cps/web.py:1335 cps/web.py:1359 cps/web.py:1363 +#: cps/web.py:1368 cps/web.py:1372 msgid "register" msgstr "регистрация" -#: cps/web.py:1364 +#: cps/web.py:1361 msgid "Your e-mail is not allowed to register" msgstr "Ваш e-mail не подходит для регистрации" -#: cps/web.py:1367 +#: cps/web.py:1364 msgid "Confirmation e-mail was send to your e-mail account." msgstr "Письмо с подтверждением отправлено вам на e-mail." -#: cps/web.py:1370 +#: cps/web.py:1367 msgid "This username or e-mail address is already in use." msgstr "Этот никнейм или e-mail уже используются." -#: cps/web.py:1387 +#: cps/web.py:1384 msgid "Cannot activate LDAP authentication" msgstr "Не удается активировать LDAP аутентификацию" -#: cps/web.py:1404 +#: cps/web.py:1401 #, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgstr "Резервный вход в систему как: '%(nickname)s', LDAP-сервер недоступен или пользователь не известен" -#: cps/web.py:1410 +#: cps/web.py:1407 #, python-format msgid "Could not login: %(message)s" msgstr "Не удалось войти: %(message)s" -#: cps/web.py:1414 cps/web.py:1438 +#: cps/web.py:1411 cps/web.py:1435 msgid "Wrong Username or Password" msgstr "Ошибка в имени пользователя или пароле" -#: cps/web.py:1421 +#: cps/web.py:1418 msgid "New Password was send to your email address" msgstr "Новый пароль был отправлен на ваш адрес электронной почты" -#: cps/web.py:1427 +#: cps/web.py:1424 msgid "Please enter valid username to reset password" msgstr "Пожалуйста, введите действительное имя пользователя для сброса пароля" -#: cps/web.py:1433 +#: cps/web.py:1430 #, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "Вы вошли как: '%(nickname)s'" -#: cps/web.py:1442 cps/web.py:1469 +#: cps/web.py:1439 cps/web.py:1466 msgid "login" msgstr "войти" -#: cps/web.py:1481 cps/web.py:1515 +#: cps/web.py:1478 cps/web.py:1512 msgid "Token not found" msgstr "Ключ не найден" -#: cps/web.py:1490 cps/web.py:1523 +#: cps/web.py:1487 cps/web.py:1520 msgid "Token has expired" msgstr "Ключ просрочен" -#: cps/web.py:1499 +#: cps/web.py:1496 msgid "Success! Please return to your device" msgstr "Успешно! Пожалуйста, проверьте свое устройство" -#: cps/web.py:1580 cps/web.py:1625 cps/web.py:1631 +#: cps/web.py:1577 cps/web.py:1622 cps/web.py:1628 #, python-format msgid "%(name)s's profile" msgstr "Профиль %(name)s's" -#: cps/web.py:1627 +#: cps/web.py:1624 msgid "Profile updated" msgstr "Профиль обновлён" -#: cps/web.py:1656 cps/web.py:1659 cps/web.py:1662 cps/web.py:1669 -#: cps/web.py:1674 +#: cps/web.py:1653 cps/web.py:1656 cps/web.py:1659 cps/web.py:1666 +#: cps/web.py:1671 msgid "Read a Book" msgstr "Читать Книгу" diff --git a/cps/translations/sv/LC_MESSAGES/messages.mo b/cps/translations/sv/LC_MESSAGES/messages.mo index b1297f76..d65c43d7 100644 Binary files a/cps/translations/sv/LC_MESSAGES/messages.mo and b/cps/translations/sv/LC_MESSAGES/messages.mo differ diff --git a/cps/translations/sv/LC_MESSAGES/messages.po b/cps/translations/sv/LC_MESSAGES/messages.po index eb877b75..b41fd929 100644 --- a/cps/translations/sv/LC_MESSAGES/messages.po +++ b/cps/translations/sv/LC_MESSAGES/messages.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Calibre-Web\n" "Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n" -"POT-Creation-Date: 2020-06-07 06:47+0200\n" +"POT-Creation-Date: 2020-06-28 09:31+0200\n" "PO-Revision-Date: 2020-03-14 09:30+0100\n" "Last-Translator: Jonatan Nyberg \n" "Language: sv\n" @@ -46,9 +46,9 @@ msgstr "" msgid "Unknown command" msgstr "" -#: cps/admin.py:116 cps/editbooks.py:563 cps/editbooks.py:573 -#: cps/editbooks.py:667 cps/editbooks.py:669 cps/editbooks.py:730 -#: cps/editbooks.py:743 cps/updater.py:509 cps/uploader.py:97 +#: cps/admin.py:116 cps/editbooks.py:564 cps/editbooks.py:576 +#: cps/editbooks.py:670 cps/editbooks.py:672 cps/editbooks.py:733 +#: cps/editbooks.py:749 cps/updater.py:509 cps/uploader.py:97 #: cps/uploader.py:107 msgid "Unknown" msgstr "Okänd" @@ -61,7 +61,7 @@ msgstr "Administrationssida" msgid "UI Configuration" msgstr "Användargränssnitt konfiguration" -#: cps/admin.py:189 cps/admin.py:706 +#: cps/admin.py:189 cps/admin.py:711 msgid "Calibre-Web configuration updated" msgstr "Calibre-Web konfiguration uppdaterad" @@ -113,175 +113,181 @@ msgstr "" msgid "LDAP Certificate Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:627 +#: cps/admin.py:628 msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:631 +#: cps/admin.py:632 msgid "Certfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:701 +#: cps/admin.py:694 cps/admin.py:793 cps/admin.py:885 cps/admin.py:934 +#: cps/shelf.py:100 cps/shelf.py:161 cps/shelf.py:202 cps/shelf.py:260 +#: cps/shelf.py:309 cps/shelf.py:338 cps/shelf.py:368 cps/shelf.py:392 +msgid "Settings DB is not Writeable" +msgstr "" + +#: cps/admin.py:706 msgid "DB Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:703 +#: cps/admin.py:708 msgid "DB is not Writeable" msgstr "" -#: cps/admin.py:736 +#: cps/admin.py:741 msgid "Basic Configuration" msgstr "Grundläggande konfiguration" -#: cps/admin.py:751 cps/web.py:1337 +#: cps/admin.py:756 cps/web.py:1334 msgid "Please fill out all fields!" msgstr "Fyll i alla fält!" -#: cps/admin.py:754 cps/admin.py:766 cps/admin.py:772 cps/admin.py:892 +#: cps/admin.py:759 cps/admin.py:771 cps/admin.py:777 cps/admin.py:903 msgid "Add new user" msgstr "Lägg till ny användare" -#: cps/admin.py:763 cps/web.py:1578 +#: cps/admin.py:768 cps/web.py:1575 msgid "E-mail is not from valid domain" msgstr "E-posten är inte från giltig domän" -#: cps/admin.py:770 cps/admin.py:785 +#: cps/admin.py:775 cps/admin.py:790 msgid "Found an existing account for this e-mail address or nickname." msgstr "Hittade ett befintligt konto för den här e-postadressen eller smeknamnet." -#: cps/admin.py:781 +#: cps/admin.py:786 #, python-format msgid "User '%(user)s' created" msgstr "Användaren '%(user)s' skapad" -#: cps/admin.py:794 +#: cps/admin.py:802 #, python-format msgid "User '%(nick)s' deleted" msgstr "Användaren '%(nick)s' borttagen" -#: cps/admin.py:797 +#: cps/admin.py:805 msgid "No admin user remaining, can't delete user" msgstr "Ingen adminstratörsanvändare kvar, kan inte ta bort användaren" -#: cps/admin.py:803 +#: cps/admin.py:811 msgid "No admin user remaining, can't remove admin role" msgstr "" -#: cps/admin.py:839 cps/web.py:1621 +#: cps/admin.py:847 cps/web.py:1618 msgid "Found an existing account for this e-mail address." msgstr "Hittade ett befintligt konto för den här e-postadressen." -#: cps/admin.py:849 cps/admin.py:864 cps/admin.py:967 cps/web.py:1596 +#: cps/admin.py:857 cps/admin.py:872 cps/admin.py:983 cps/web.py:1593 #, python-format msgid "Edit User %(nick)s" msgstr "Redigera användaren %(nick)s" -#: cps/admin.py:855 cps/web.py:1588 +#: cps/admin.py:863 cps/web.py:1585 msgid "This username is already taken" msgstr "Detta användarnamn är redan taget" -#: cps/admin.py:871 +#: cps/admin.py:879 #, python-format msgid "User '%(nick)s' updated" msgstr "Användaren '%(nick)s' uppdaterad" -#: cps/admin.py:874 +#: cps/admin.py:882 msgid "An unknown error occured." msgstr "Ett okänt fel uppstod." -#: cps/admin.py:901 cps/templates/admin.html:71 +#: cps/admin.py:912 cps/templates/admin.html:71 msgid "Edit E-mail Server Settings" msgstr "Ändra SMTP-inställningar" -#: cps/admin.py:925 +#: cps/admin.py:941 #, python-format msgid "Test e-mail successfully send to %(kindlemail)s" msgstr "Test-e-post skicka till %(kindlemail)s" -#: cps/admin.py:928 +#: cps/admin.py:944 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "Det gick inte att skicka Testmeddelandet: %(res)s" -#: cps/admin.py:930 +#: cps/admin.py:946 msgid "Please configure your e-mail address first..." msgstr "Vänligen konfigurera din e-postadress först..." -#: cps/admin.py:932 +#: cps/admin.py:948 msgid "E-mail server settings updated" msgstr "E-postserverinställningar uppdaterade" -#: cps/admin.py:943 +#: cps/admin.py:959 msgid "User not found" msgstr "" -#: cps/admin.py:978 +#: cps/admin.py:994 #, python-format msgid "Password for user %(user)s reset" msgstr "Lösenord för användaren %(user)s återställd" -#: cps/admin.py:981 cps/web.py:1361 cps/web.py:1425 +#: cps/admin.py:997 cps/web.py:1358 cps/web.py:1422 msgid "An unknown error occurred. Please try again later." msgstr "Ett okänt fel uppstod. Försök igen senare." -#: cps/admin.py:984 cps/web.py:1299 +#: cps/admin.py:1000 cps/web.py:1296 msgid "Please configure the SMTP mail settings first..." msgstr "Konfigurera SMTP-postinställningarna först..." -#: cps/admin.py:996 +#: cps/admin.py:1012 msgid "Logfile viewer" msgstr "Visaren för loggfil" -#: cps/admin.py:1035 +#: cps/admin.py:1051 msgid "Requesting update package" msgstr "Begär uppdateringspaketet" -#: cps/admin.py:1036 +#: cps/admin.py:1052 msgid "Downloading update package" msgstr "Hämtar uppdateringspaketet" -#: cps/admin.py:1037 +#: cps/admin.py:1053 msgid "Unzipping update package" msgstr "Packar upp uppdateringspaketet" -#: cps/admin.py:1038 +#: cps/admin.py:1054 msgid "Replacing files" msgstr "Ersätta filer" -#: cps/admin.py:1039 +#: cps/admin.py:1055 msgid "Database connections are closed" msgstr "Databasanslutningarna är stängda" -#: cps/admin.py:1040 +#: cps/admin.py:1056 msgid "Stopping server" msgstr "Stoppar server" -#: cps/admin.py:1041 +#: cps/admin.py:1057 msgid "Update finished, please press okay and reload page" msgstr "Uppdatering klar, tryck på okej och uppdatera sidan" -#: cps/admin.py:1042 cps/admin.py:1043 cps/admin.py:1044 cps/admin.py:1045 -#: cps/admin.py:1046 +#: cps/admin.py:1058 cps/admin.py:1059 cps/admin.py:1060 cps/admin.py:1061 +#: cps/admin.py:1062 msgid "Update failed:" msgstr "Uppdateringen misslyckades:" -#: cps/admin.py:1042 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522 +#: cps/admin.py:1058 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522 msgid "HTTP Error" msgstr "HTTP-fel" -#: cps/admin.py:1043 cps/updater.py:321 cps/updater.py:524 +#: cps/admin.py:1059 cps/updater.py:321 cps/updater.py:524 msgid "Connection error" msgstr "Anslutningsfel" -#: cps/admin.py:1044 cps/updater.py:323 cps/updater.py:526 +#: cps/admin.py:1060 cps/updater.py:323 cps/updater.py:526 msgid "Timeout while establishing connection" msgstr "Tiden ute när du etablerade anslutning" -#: cps/admin.py:1045 cps/updater.py:325 cps/updater.py:528 +#: cps/admin.py:1061 cps/updater.py:325 cps/updater.py:528 msgid "General error" msgstr "Allmänt fel" -#: cps/admin.py:1046 +#: cps/admin.py:1062 msgid "Update File Could Not be Saved in Temp Dir" msgstr "" @@ -301,8 +307,8 @@ msgstr "" msgid "Book Successfully Deleted" msgstr "" -#: cps/editbooks.py:254 cps/editbooks.py:548 cps/web.py:1644 cps/web.py:1685 -#: cps/web.py:1747 +#: cps/editbooks.py:254 cps/editbooks.py:549 cps/web.py:1641 cps/web.py:1682 +#: cps/web.py:1744 msgid "Error opening eBook. File does not exist or file is not accessible" msgstr "Det gick inte att öppna e-boken. Filen finns inte eller filen är inte tillgänglig" @@ -310,82 +316,82 @@ msgstr "Det gick inte att öppna e-boken. Filen finns inte eller filen är inte msgid "edit metadata" msgstr "redigera metadata" -#: cps/editbooks.py:361 +#: cps/editbooks.py:360 #, python-format msgid "%(langname)s is not a valid language" msgstr "%(langname)s är inte ett giltigt språk" -#: cps/editbooks.py:467 cps/editbooks.py:712 +#: cps/editbooks.py:468 cps/editbooks.py:715 #, python-format msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgstr "Filändelsen '%(ext)s' får inte laddas upp till den här servern" -#: cps/editbooks.py:471 cps/editbooks.py:716 +#: cps/editbooks.py:472 cps/editbooks.py:719 msgid "File to be uploaded must have an extension" msgstr "Filen som ska laddas upp måste ha en ändelse" -#: cps/editbooks.py:483 cps/editbooks.py:773 +#: cps/editbooks.py:484 cps/editbooks.py:779 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "Det gick inte att skapa sökväg %(path)s (behörighet nekad)." -#: cps/editbooks.py:488 +#: cps/editbooks.py:489 #, python-format msgid "Failed to store file %(file)s." msgstr "Det gick inte att lagra filen %(file)s." -#: cps/editbooks.py:506 cps/editbooks.py:864 +#: cps/editbooks.py:507 cps/editbooks.py:870 #, python-format msgid "Database error: %(error)s." msgstr "" -#: cps/editbooks.py:510 +#: cps/editbooks.py:511 #, python-format msgid "File format %(ext)s added to %(book)s" msgstr "Filformatet %(ext)s lades till %(book)s" -#: cps/editbooks.py:653 +#: cps/editbooks.py:656 msgid "Metadata successfully updated" msgstr "Metadata uppdaterades" -#: cps/editbooks.py:662 +#: cps/editbooks.py:665 msgid "Error editing book, please check logfile for details" msgstr "Det gick inte att redigera boken, kontrollera loggfilen för mer information" -#: cps/editbooks.py:724 +#: cps/editbooks.py:727 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "Filen %(filename)s kunde inte sparas i temp dir" -#: cps/editbooks.py:734 +#: cps/editbooks.py:737 msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgstr "Uppladdad bok finns förmodligen i biblioteket, överväg att ändra innan du laddar upp nya: " -#: cps/editbooks.py:780 +#: cps/editbooks.py:786 #, python-format msgid "Failed to Move File %(file)s: %(error)s" msgstr "" -#: cps/editbooks.py:836 +#: cps/editbooks.py:842 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "" -#: cps/editbooks.py:850 +#: cps/editbooks.py:856 #, python-format msgid "File %(file)s uploaded" msgstr "Filen %(file)s uppladdad" -#: cps/editbooks.py:876 +#: cps/editbooks.py:882 msgid "Source or destination format for conversion missing" msgstr "Källa eller målformat för konvertering saknas" -#: cps/editbooks.py:884 +#: cps/editbooks.py:890 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "Boken är i kö för konvertering till %(book_format)s" -#: cps/editbooks.py:888 +#: cps/editbooks.py:894 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "Det gick inte att konvertera den här boken: %(res)s" @@ -499,71 +505,71 @@ msgstr "Filen %(file)s hittades inte på Google Drive" msgid "Book path %(path)s not found on Google Drive" msgstr "Boksökvägen %(path)s hittades inte på Google Drive" -#: cps/helper.py:542 +#: cps/helper.py:550 msgid "Error Downloading Cover" msgstr "" -#: cps/helper.py:545 +#: cps/helper.py:553 msgid "Cover Format Error" msgstr "" -#: cps/helper.py:561 +#: cps/helper.py:569 msgid "Failed to create path for cover" msgstr "Det gick inte att skapa sökväg för omslag" -#: cps/helper.py:566 +#: cps/helper.py:574 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "" -#: cps/helper.py:577 +#: cps/helper.py:585 msgid "Only jpg/jpeg/png/webp files are supported as coverfile" msgstr "Endast jpg/jpeg/png/webp-filer stöds som omslagsfil" -#: cps/helper.py:591 +#: cps/helper.py:599 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "Endast jpg/jpeg-filer stöds som omslagsfil" -#: cps/helper.py:640 +#: cps/helper.py:648 msgid "Unrar binary file not found" msgstr "" -#: cps/helper.py:654 +#: cps/helper.py:662 msgid "Error excecuting UnRar" msgstr "" -#: cps/helper.py:710 +#: cps/helper.py:718 msgid "Waiting" msgstr "Väntar" -#: cps/helper.py:712 +#: cps/helper.py:720 msgid "Failed" msgstr "Misslyckades" -#: cps/helper.py:714 +#: cps/helper.py:722 msgid "Started" msgstr "Startad" -#: cps/helper.py:716 +#: cps/helper.py:724 msgid "Finished" msgstr "Klar" -#: cps/helper.py:718 +#: cps/helper.py:726 msgid "Unknown Status" msgstr "Okänd status" -#: cps/helper.py:723 +#: cps/helper.py:731 msgid "E-mail: " msgstr "E-post: " -#: cps/helper.py:725 cps/helper.py:729 +#: cps/helper.py:733 cps/helper.py:737 msgid "Convert: " msgstr "Konvertera: " -#: cps/helper.py:727 +#: cps/helper.py:735 msgid "Upload: " msgstr "Överför: " -#: cps/helper.py:731 +#: cps/helper.py:739 msgid "Unknown Task: " msgstr "Okänd uppgift: " @@ -596,7 +602,7 @@ msgstr "Det gick inte att logga in med Google." msgid "Failed to fetch user info from Google." msgstr "Det gick inte att hämta användarinformation från Google." -#: cps/oauth_bb.py:225 cps/web.py:1397 cps/web.py:1537 +#: cps/oauth_bb.py:225 cps/web.py:1394 cps/web.py:1534 #, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "du är nu inloggad som: \"%(nickname)s\"" @@ -633,218 +639,218 @@ msgstr "GitHub Oauth-fel, försök igen senare." msgid "Google Oauth error, please retry later." msgstr "Google Oauth-fel, försök igen senare." -#: cps/shelf.py:66 cps/shelf.py:111 +#: cps/shelf.py:67 cps/shelf.py:120 msgid "Invalid shelf specified" msgstr "Ogiltig hylla specificerad" -#: cps/shelf.py:72 +#: cps/shelf.py:73 #, python-format msgid "Sorry you are not allowed to add a book to the the shelf: %(shelfname)s" msgstr "Tyvärr får du inte lägga till en bok på hyllan: %(shelfname)s" -#: cps/shelf.py:82 +#: cps/shelf.py:83 #, python-format msgid "Book is already part of the shelf: %(shelfname)s" msgstr "Boken är redan en del av hyllan: %(shelfname)s" -#: cps/shelf.py:97 +#: cps/shelf.py:106 #, python-format msgid "Book has been added to shelf: %(sname)s" msgstr "Boken har lagts till i hyllan: %(sname)s" -#: cps/shelf.py:115 +#: cps/shelf.py:124 #, python-format msgid "You are not allowed to add a book to the the shelf: %(name)s" msgstr "Du får inte lägga till en bok i hyllan: %(name)s" -#: cps/shelf.py:133 +#: cps/shelf.py:142 #, python-format msgid "Books are already part of the shelf: %(name)s" msgstr "Böcker är redan en del av hyllan: %(name)s" -#: cps/shelf.py:148 +#: cps/shelf.py:158 #, python-format msgid "Books have been added to shelf: %(sname)s" msgstr "Böcker har lagts till hyllan: %(sname)s" -#: cps/shelf.py:150 +#: cps/shelf.py:163 #, python-format msgid "Could not add books to shelf: %(sname)s" msgstr "Kunde inte lägga till böcker till hyllan: %(sname)s" -#: cps/shelf.py:188 +#: cps/shelf.py:208 #, python-format msgid "Book has been removed from shelf: %(sname)s" msgstr "Boken har tagits bort från hyllan: %(sname)s" -#: cps/shelf.py:196 +#: cps/shelf.py:216 #, python-format msgid "Sorry you are not allowed to remove a book from this shelf: %(sname)s" msgstr "Tyvärr har du inte rätt att ta bort en bok från den här hyllan: %(sname)s" -#: cps/shelf.py:220 cps/shelf.py:260 +#: cps/shelf.py:240 cps/shelf.py:284 #, python-format msgid "A public shelf with the name '%(title)s' already exists." msgstr "" -#: cps/shelf.py:229 cps/shelf.py:270 +#: cps/shelf.py:249 cps/shelf.py:294 #, python-format msgid "A private shelf with the name '%(title)s' already exists." msgstr "" -#: cps/shelf.py:236 +#: cps/shelf.py:256 #, python-format msgid "Shelf %(title)s created" msgstr "Hyllan %(title)s skapad" -#: cps/shelf.py:239 cps/shelf.py:284 +#: cps/shelf.py:263 cps/shelf.py:312 msgid "There was an error" msgstr "Det fanns ett fel" -#: cps/shelf.py:240 cps/shelf.py:242 cps/templates/layout.html:144 +#: cps/shelf.py:264 cps/shelf.py:266 cps/templates/layout.html:144 msgid "Create a Shelf" msgstr "skapa en hylla" -#: cps/shelf.py:282 +#: cps/shelf.py:306 #, python-format msgid "Shelf %(title)s changed" msgstr "Hyllan %(title)s ändrad" -#: cps/shelf.py:285 cps/shelf.py:287 +#: cps/shelf.py:313 cps/shelf.py:315 msgid "Edit a shelf" msgstr "Redigera en hylla" -#: cps/shelf.py:332 +#: cps/shelf.py:369 #, python-format msgid "Shelf: '%(name)s'" msgstr "Hylla: '%(name)s'" -#: cps/shelf.py:335 +#: cps/shelf.py:372 msgid "Error opening shelf. Shelf does not exist or is not accessible" msgstr "Fel vid öppning av hyllan. Hylla finns inte eller är inte tillgänglig" -#: cps/shelf.py:368 +#: cps/shelf.py:409 msgid "Hidden Book" msgstr "Dold bok" -#: cps/shelf.py:373 +#: cps/shelf.py:414 #, python-format msgid "Change order of Shelf: '%(name)s'" msgstr "Ändra ordning på hyllan: '%(name)s'" -#: cps/ub.py:64 +#: cps/ub.py:65 msgid "Recently Added" msgstr "Nyligen tillagda" -#: cps/ub.py:66 +#: cps/ub.py:67 msgid "Show recent books" msgstr "Visa senaste böcker" -#: cps/templates/index.xml:17 cps/ub.py:67 +#: cps/templates/index.xml:17 cps/ub.py:68 msgid "Hot Books" msgstr "Heta böcker" -#: cps/ub.py:69 +#: cps/ub.py:70 msgid "Show Hot Books" msgstr "Visa heta böcker" -#: cps/templates/index.xml:24 cps/ub.py:71 cps/web.py:655 +#: cps/templates/index.xml:24 cps/ub.py:72 cps/web.py:652 msgid "Top Rated Books" msgstr "Bäst rankade böcker" -#: cps/ub.py:73 +#: cps/ub.py:74 msgid "Show Top Rated Books" msgstr "Visa böcker med bästa betyg" -#: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:74 -#: cps/web.py:1222 +#: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:75 +#: cps/web.py:1219 msgid "Read Books" msgstr "Lästa böcker" -#: cps/ub.py:76 +#: cps/ub.py:77 msgid "Show read and unread" msgstr "Visa lästa och olästa" -#: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:78 -#: cps/web.py:1225 +#: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:79 +#: cps/web.py:1222 msgid "Unread Books" msgstr "Olästa böcker" -#: cps/ub.py:80 +#: cps/ub.py:81 msgid "Show unread" msgstr "Visa olästa" -#: cps/ub.py:81 +#: cps/ub.py:82 msgid "Discover" msgstr "Upptäck" -#: cps/ub.py:83 +#: cps/ub.py:84 msgid "Show random books" msgstr "Visa slumpmässiga böcker" -#: cps/templates/index.xml:75 cps/ub.py:84 cps/web.py:970 +#: cps/templates/index.xml:75 cps/ub.py:85 cps/web.py:967 msgid "Categories" msgstr "Kategorier" -#: cps/ub.py:86 +#: cps/ub.py:87 msgid "Show category selection" msgstr "Visa kategorival" #: cps/templates/book_edit.html:84 cps/templates/index.xml:82 -#: cps/templates/search_form.html:53 cps/ub.py:87 cps/web.py:886 cps/web.py:896 +#: cps/templates/search_form.html:53 cps/ub.py:88 cps/web.py:883 cps/web.py:893 msgid "Series" msgstr "Serier" -#: cps/ub.py:89 +#: cps/ub.py:90 msgid "Show series selection" msgstr "Visa serieval" -#: cps/templates/index.xml:61 cps/ub.py:90 +#: cps/templates/index.xml:61 cps/ub.py:91 msgid "Authors" msgstr "Författare" -#: cps/ub.py:92 +#: cps/ub.py:93 msgid "Show author selection" msgstr "Visa författarval" -#: cps/templates/index.xml:68 cps/ub.py:94 cps/web.py:869 +#: cps/templates/index.xml:68 cps/ub.py:95 cps/web.py:866 msgid "Publishers" msgstr "Förlag" -#: cps/ub.py:96 +#: cps/ub.py:97 msgid "Show publisher selection" msgstr "Visa urval av förlag" -#: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:97 -#: cps/web.py:953 +#: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:98 +#: cps/web.py:950 msgid "Languages" msgstr "Språk" -#: cps/ub.py:100 +#: cps/ub.py:101 msgid "Show language selection" msgstr "Visa språkval" -#: cps/templates/index.xml:96 cps/ub.py:101 +#: cps/templates/index.xml:96 cps/ub.py:102 msgid "Ratings" msgstr "Betyg" -#: cps/ub.py:103 +#: cps/ub.py:104 msgid "Show ratings selection" msgstr "Visa val av betyg" -#: cps/templates/index.xml:104 cps/ub.py:104 +#: cps/templates/index.xml:104 cps/ub.py:105 msgid "File formats" msgstr "Filformat" -#: cps/ub.py:106 +#: cps/ub.py:107 msgid "Show file formats selection" msgstr "Visa val av filformat" -#: cps/ub.py:108 cps/web.py:1249 +#: cps/ub.py:109 cps/web.py:1246 msgid "Archived Books" msgstr "" -#: cps/ub.py:110 +#: cps/ub.py:111 msgid "Show archived books" msgstr "" @@ -877,220 +883,220 @@ msgstr "En ny uppdatering är tillgänglig. Klicka på knappen nedan för att up msgid "Click on the button below to update to the latest stable version." msgstr "Klicka på knappen nedan för att uppdatera till den senaste stabila versionen." -#: cps/web.py:322 +#: cps/web.py:319 #, python-format msgid "Error: %(ldaperror)s" msgstr "" -#: cps/web.py:326 +#: cps/web.py:323 msgid "Error: No user returned in response of LDAP server" msgstr "" -#: cps/web.py:374 +#: cps/web.py:371 msgid "Failed to Create at Least One LDAP User" msgstr "" -#: cps/web.py:377 +#: cps/web.py:374 msgid "At Least One LDAP User Not Found in Database" msgstr "" -#: cps/web.py:379 +#: cps/web.py:376 msgid "User Successfully Imported" msgstr "" -#: cps/web.py:625 +#: cps/web.py:622 msgid "Recently Added Books" msgstr "Nyligen tillagda böcker" -#: cps/templates/index.html:5 cps/web.py:663 +#: cps/templates/index.html:5 cps/web.py:660 msgid "Discover (Random Books)" msgstr "Upptäck (slumpmässiga böcker)" -#: cps/web.py:691 +#: cps/web.py:688 msgid "Books" msgstr "Böcker" -#: cps/web.py:718 +#: cps/web.py:715 msgid "Hot Books (Most Downloaded)" msgstr "Heta böcker (mest hämtade)" -#: cps/web.py:731 +#: cps/web.py:728 msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible" msgstr "Hoppsan! Vald boktitel är inte tillgänglig. Filen finns inte eller är inte tillgänglig" -#: cps/web.py:745 +#: cps/web.py:742 #, python-format msgid "Author: %(name)s" msgstr "Författare: %(name)s" -#: cps/web.py:759 +#: cps/web.py:756 #, python-format msgid "Publisher: %(name)s" msgstr "Förlag: %(name)s" -#: cps/web.py:772 +#: cps/web.py:769 #, python-format msgid "Series: %(serie)s" msgstr "Serier: %(serie)s" -#: cps/web.py:785 +#: cps/web.py:782 #, python-format msgid "Rating: %(rating)s stars" msgstr "Betyg: %(rating)s stars" -#: cps/web.py:798 +#: cps/web.py:795 #, python-format msgid "File format: %(format)s" msgstr "Filformat: %(format)s" -#: cps/web.py:812 +#: cps/web.py:809 #, python-format msgid "Category: %(name)s" msgstr "Kategori: %(name)s" -#: cps/web.py:831 +#: cps/web.py:828 #, python-format msgid "Language: %(name)s" msgstr "Språk: %(name)s" -#: cps/web.py:910 +#: cps/web.py:907 msgid "Ratings list" msgstr "Betygslista" -#: cps/web.py:925 +#: cps/web.py:922 msgid "File formats list" msgstr "Lista över filformat" -#: cps/templates/layout.html:74 cps/templates/tasks.html:7 cps/web.py:984 +#: cps/templates/layout.html:74 cps/templates/tasks.html:7 cps/web.py:981 msgid "Tasks" msgstr "Uppgifter" #: cps/templates/book_edit.html:235 cps/templates/feed.xml:33 #: cps/templates/layout.html:45 cps/templates/layout.html:48 -#: cps/templates/search_form.html:174 cps/web.py:1010 cps/web.py:1015 +#: cps/templates/search_form.html:174 cps/web.py:1007 cps/web.py:1012 msgid "Search" msgstr "Sök" -#: cps/web.py:1066 +#: cps/web.py:1063 msgid "Published after " msgstr "Publicerad efter " -#: cps/web.py:1073 +#: cps/web.py:1070 msgid "Published before " msgstr "Publicerad före " -#: cps/web.py:1087 +#: cps/web.py:1084 #, python-format msgid "Rating <= %(rating)s" msgstr "Betyg <= %(rating)s" -#: cps/web.py:1089 +#: cps/web.py:1086 #, python-format msgid "Rating >= %(rating)s" msgstr "Betyg >= %(rating)s" -#: cps/web.py:1158 cps/web.py:1183 +#: cps/web.py:1155 cps/web.py:1180 msgid "search" msgstr "sök" -#: cps/web.py:1213 +#: cps/web.py:1210 #, python-format msgid "Custom Column No.%(column)d is not existing in calibre database" msgstr "" -#: cps/web.py:1304 +#: cps/web.py:1301 #, python-format msgid "Book successfully queued for sending to %(kindlemail)s" msgstr "Boken är i kö för att skicka till %(kindlemail)s" -#: cps/web.py:1308 +#: cps/web.py:1305 #, python-format msgid "Oops! There was an error sending this book: %(res)s" msgstr "Det gick inte att skicka den här boken: %(res)s" -#: cps/web.py:1310 +#: cps/web.py:1307 msgid "Please update your profile with a valid Send to Kindle E-mail Address." msgstr "Konfigurera din kindle-e-postadress först..." -#: cps/web.py:1327 +#: cps/web.py:1324 msgid "E-Mail server is not configured, please contact your administrator!" msgstr "E-postservern är inte konfigurerad, kontakta din administratör!" -#: cps/web.py:1328 cps/web.py:1338 cps/web.py:1362 cps/web.py:1366 -#: cps/web.py:1371 cps/web.py:1375 +#: cps/web.py:1325 cps/web.py:1335 cps/web.py:1359 cps/web.py:1363 +#: cps/web.py:1368 cps/web.py:1372 msgid "register" msgstr "registrera" -#: cps/web.py:1364 +#: cps/web.py:1361 msgid "Your e-mail is not allowed to register" msgstr "Din e-post är inte tillåten att registrera" -#: cps/web.py:1367 +#: cps/web.py:1364 msgid "Confirmation e-mail was send to your e-mail account." msgstr "Bekräftelsemail skickades till ditt e-postkonto." -#: cps/web.py:1370 +#: cps/web.py:1367 msgid "This username or e-mail address is already in use." msgstr "Det här användarnamnet eller e-postadressen är redan i bruk." -#: cps/web.py:1387 +#: cps/web.py:1384 msgid "Cannot activate LDAP authentication" msgstr "Det går inte att aktivera LDAP-autentisering" -#: cps/web.py:1404 +#: cps/web.py:1401 #, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgstr "" -#: cps/web.py:1410 +#: cps/web.py:1407 #, python-format msgid "Could not login: %(message)s" msgstr "" -#: cps/web.py:1414 cps/web.py:1438 +#: cps/web.py:1411 cps/web.py:1435 msgid "Wrong Username or Password" msgstr "Fel användarnamn eller lösenord" -#: cps/web.py:1421 +#: cps/web.py:1418 msgid "New Password was send to your email address" msgstr "Nytt lösenord skickades till din e-postadress" -#: cps/web.py:1427 +#: cps/web.py:1424 msgid "Please enter valid username to reset password" msgstr "Ange giltigt användarnamn för att återställa lösenordet" -#: cps/web.py:1433 +#: cps/web.py:1430 #, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "Du är nu inloggad som: \"%(nickname)s\"" -#: cps/web.py:1442 cps/web.py:1469 +#: cps/web.py:1439 cps/web.py:1466 msgid "login" msgstr "logga in" -#: cps/web.py:1481 cps/web.py:1515 +#: cps/web.py:1478 cps/web.py:1512 msgid "Token not found" msgstr "Token hittades inte" -#: cps/web.py:1490 cps/web.py:1523 +#: cps/web.py:1487 cps/web.py:1520 msgid "Token has expired" msgstr "Token har löpt ut" -#: cps/web.py:1499 +#: cps/web.py:1496 msgid "Success! Please return to your device" msgstr "Lyckades! Vänligen återvänd till din enhet" -#: cps/web.py:1580 cps/web.py:1625 cps/web.py:1631 +#: cps/web.py:1577 cps/web.py:1622 cps/web.py:1628 #, python-format msgid "%(name)s's profile" msgstr "%(name)ss profil" -#: cps/web.py:1627 +#: cps/web.py:1624 msgid "Profile updated" msgstr "Profilen uppdaterad" -#: cps/web.py:1656 cps/web.py:1659 cps/web.py:1662 cps/web.py:1669 -#: cps/web.py:1674 +#: cps/web.py:1653 cps/web.py:1656 cps/web.py:1659 cps/web.py:1666 +#: cps/web.py:1671 msgid "Read a Book" msgstr "Läs en bok" diff --git a/cps/translations/tr/LC_MESSAGES/messages.mo b/cps/translations/tr/LC_MESSAGES/messages.mo index b097b46b..433bf447 100644 Binary files a/cps/translations/tr/LC_MESSAGES/messages.mo and b/cps/translations/tr/LC_MESSAGES/messages.mo differ diff --git a/cps/translations/tr/LC_MESSAGES/messages.po b/cps/translations/tr/LC_MESSAGES/messages.po index a5c06811..b6ee8906 100644 --- a/cps/translations/tr/LC_MESSAGES/messages.po +++ b/cps/translations/tr/LC_MESSAGES/messages.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Calibre-Web\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2020-06-07 06:47+0200\n" +"POT-Creation-Date: 2020-06-28 09:31+0200\n" "PO-Revision-Date: 2020-04-23 22:47+0300\n" "Last-Translator: iz \n" "Language: tr\n" @@ -46,9 +46,9 @@ msgstr "" msgid "Unknown command" msgstr "" -#: cps/admin.py:116 cps/editbooks.py:563 cps/editbooks.py:573 -#: cps/editbooks.py:667 cps/editbooks.py:669 cps/editbooks.py:730 -#: cps/editbooks.py:743 cps/updater.py:509 cps/uploader.py:97 +#: cps/admin.py:116 cps/editbooks.py:564 cps/editbooks.py:576 +#: cps/editbooks.py:670 cps/editbooks.py:672 cps/editbooks.py:733 +#: cps/editbooks.py:749 cps/updater.py:509 cps/uploader.py:97 #: cps/uploader.py:107 msgid "Unknown" msgstr "Bilinmeyen" @@ -61,7 +61,7 @@ msgstr "Yönetim sayfası" msgid "UI Configuration" msgstr "Arayüz Ayarları" -#: cps/admin.py:189 cps/admin.py:706 +#: cps/admin.py:189 cps/admin.py:711 msgid "Calibre-Web configuration updated" msgstr "Calibre-Web yapılandırması güncellendi" @@ -113,175 +113,181 @@ msgstr "" msgid "LDAP Certificate Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:627 +#: cps/admin.py:628 msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:631 +#: cps/admin.py:632 msgid "Certfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:701 +#: cps/admin.py:694 cps/admin.py:793 cps/admin.py:885 cps/admin.py:934 +#: cps/shelf.py:100 cps/shelf.py:161 cps/shelf.py:202 cps/shelf.py:260 +#: cps/shelf.py:309 cps/shelf.py:338 cps/shelf.py:368 cps/shelf.py:392 +msgid "Settings DB is not Writeable" +msgstr "" + +#: cps/admin.py:706 msgid "DB Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:703 +#: cps/admin.py:708 msgid "DB is not Writeable" msgstr "" -#: cps/admin.py:736 +#: cps/admin.py:741 msgid "Basic Configuration" msgstr "Temel Ayarlar" -#: cps/admin.py:751 cps/web.py:1337 +#: cps/admin.py:756 cps/web.py:1334 msgid "Please fill out all fields!" msgstr "Lütfen tüm alanları doldurun!" -#: cps/admin.py:754 cps/admin.py:766 cps/admin.py:772 cps/admin.py:892 +#: cps/admin.py:759 cps/admin.py:771 cps/admin.py:777 cps/admin.py:903 msgid "Add new user" msgstr "Yeni kullanıcı ekle" -#: cps/admin.py:763 cps/web.py:1578 +#: cps/admin.py:768 cps/web.py:1575 msgid "E-mail is not from valid domain" msgstr "E-posta izin verilen bir servisten değil" -#: cps/admin.py:770 cps/admin.py:785 +#: cps/admin.py:775 cps/admin.py:790 msgid "Found an existing account for this e-mail address or nickname." msgstr "Bu e-posta adresi veya kullanıcı adı için zaten bir hesap var." -#: cps/admin.py:781 +#: cps/admin.py:786 #, python-format msgid "User '%(user)s' created" msgstr "'%(user)s' kullanıcısı oluşturuldu" -#: cps/admin.py:794 +#: cps/admin.py:802 #, python-format msgid "User '%(nick)s' deleted" msgstr "Kullanıcı '%(nick)s' silindi" -#: cps/admin.py:797 +#: cps/admin.py:805 msgid "No admin user remaining, can't delete user" msgstr "Başka yönetici kullanıcı olmadığından silinemedi" -#: cps/admin.py:803 +#: cps/admin.py:811 msgid "No admin user remaining, can't remove admin role" msgstr "" -#: cps/admin.py:839 cps/web.py:1621 +#: cps/admin.py:847 cps/web.py:1618 msgid "Found an existing account for this e-mail address." msgstr "Bu e-posta adresi için bir hesap mevcut." -#: cps/admin.py:849 cps/admin.py:864 cps/admin.py:967 cps/web.py:1596 +#: cps/admin.py:857 cps/admin.py:872 cps/admin.py:983 cps/web.py:1593 #, python-format msgid "Edit User %(nick)s" msgstr "%(nick)s kullanıcısını düzenle" -#: cps/admin.py:855 cps/web.py:1588 +#: cps/admin.py:863 cps/web.py:1585 msgid "This username is already taken" msgstr "Bu kullanıcı adı zaten alındı" -#: cps/admin.py:871 +#: cps/admin.py:879 #, python-format msgid "User '%(nick)s' updated" msgstr "'%(nick)s' kullanıcısı güncellendi" -#: cps/admin.py:874 +#: cps/admin.py:882 msgid "An unknown error occured." msgstr "Bilinmeyen bir hata oluştu." -#: cps/admin.py:901 cps/templates/admin.html:71 +#: cps/admin.py:912 cps/templates/admin.html:71 msgid "Edit E-mail Server Settings" msgstr "" -#: cps/admin.py:925 +#: cps/admin.py:941 #, python-format msgid "Test e-mail successfully send to %(kindlemail)s" msgstr "Deneme e-postası başarıyla %(kindlemail)s adresine gönderildi" -#: cps/admin.py:928 +#: cps/admin.py:944 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "Deneme e-postası gönderilirken bir hata oluştu: %(res)s" -#: cps/admin.py:930 +#: cps/admin.py:946 msgid "Please configure your e-mail address first..." msgstr "Lütfen önce e-posta adresinizi ayarlayın..." -#: cps/admin.py:932 +#: cps/admin.py:948 msgid "E-mail server settings updated" msgstr "E-posta sunucusu ayarları güncellendi" -#: cps/admin.py:943 +#: cps/admin.py:959 msgid "User not found" msgstr "" -#: cps/admin.py:978 +#: cps/admin.py:994 #, python-format msgid "Password for user %(user)s reset" msgstr "%(user)s kullanıcısının şifresi sıfırlandı" -#: cps/admin.py:981 cps/web.py:1361 cps/web.py:1425 +#: cps/admin.py:997 cps/web.py:1358 cps/web.py:1422 msgid "An unknown error occurred. Please try again later." msgstr "Bilinmeyen bir hata oluştu. Lütfen daha sonra tekrar deneyiniz." -#: cps/admin.py:984 cps/web.py:1299 +#: cps/admin.py:1000 cps/web.py:1296 msgid "Please configure the SMTP mail settings first..." msgstr "Lütfen önce SMTP e-posta ayarlarını ayarlayın..." -#: cps/admin.py:996 +#: cps/admin.py:1012 msgid "Logfile viewer" msgstr "Log dosyası görüntüleyici" -#: cps/admin.py:1035 +#: cps/admin.py:1051 msgid "Requesting update package" msgstr "Güncelleme paketi isteniyor" -#: cps/admin.py:1036 +#: cps/admin.py:1052 msgid "Downloading update package" msgstr "Güncelleme paketi indiriliyor" -#: cps/admin.py:1037 +#: cps/admin.py:1053 msgid "Unzipping update package" msgstr "Güncelleme paketi ayıklanıyor" -#: cps/admin.py:1038 +#: cps/admin.py:1054 msgid "Replacing files" msgstr "Dosyalar değiştiriliyor" -#: cps/admin.py:1039 +#: cps/admin.py:1055 msgid "Database connections are closed" msgstr "Veritabanı bağlantıları kapalı" -#: cps/admin.py:1040 +#: cps/admin.py:1056 msgid "Stopping server" msgstr "Sunucu durduruyor" -#: cps/admin.py:1041 +#: cps/admin.py:1057 msgid "Update finished, please press okay and reload page" msgstr "Güncelleme tamamlandı, sayfayı yenilemek için lütfen Tamam'a tıklayınız" -#: cps/admin.py:1042 cps/admin.py:1043 cps/admin.py:1044 cps/admin.py:1045 -#: cps/admin.py:1046 +#: cps/admin.py:1058 cps/admin.py:1059 cps/admin.py:1060 cps/admin.py:1061 +#: cps/admin.py:1062 msgid "Update failed:" msgstr "Güncelleme başarısız:" -#: cps/admin.py:1042 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522 +#: cps/admin.py:1058 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522 msgid "HTTP Error" msgstr "HTTP Hatası" -#: cps/admin.py:1043 cps/updater.py:321 cps/updater.py:524 +#: cps/admin.py:1059 cps/updater.py:321 cps/updater.py:524 msgid "Connection error" msgstr "Bağlantı hatası" -#: cps/admin.py:1044 cps/updater.py:323 cps/updater.py:526 +#: cps/admin.py:1060 cps/updater.py:323 cps/updater.py:526 msgid "Timeout while establishing connection" msgstr "Bağlantı kurulmaya çalışırken zaman aşımına uğradı" -#: cps/admin.py:1045 cps/updater.py:325 cps/updater.py:528 +#: cps/admin.py:1061 cps/updater.py:325 cps/updater.py:528 msgid "General error" msgstr "Genel hata" -#: cps/admin.py:1046 +#: cps/admin.py:1062 msgid "Update File Could Not be Saved in Temp Dir" msgstr "" @@ -301,8 +307,8 @@ msgstr "" msgid "Book Successfully Deleted" msgstr "" -#: cps/editbooks.py:254 cps/editbooks.py:548 cps/web.py:1644 cps/web.py:1685 -#: cps/web.py:1747 +#: cps/editbooks.py:254 cps/editbooks.py:549 cps/web.py:1641 cps/web.py:1682 +#: cps/web.py:1744 msgid "Error opening eBook. File does not exist or file is not accessible" msgstr "eKitap açılırken hata oluştu. Dosya mevcut değil veya erişilemiyor" @@ -310,82 +316,82 @@ msgstr "eKitap açılırken hata oluştu. Dosya mevcut değil veya erişilemiyor msgid "edit metadata" msgstr "metaveri düzenle" -#: cps/editbooks.py:361 +#: cps/editbooks.py:360 #, python-format msgid "%(langname)s is not a valid language" msgstr "%(langname)s geçerli bir dil değil" -#: cps/editbooks.py:467 cps/editbooks.py:712 +#: cps/editbooks.py:468 cps/editbooks.py:715 #, python-format msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgstr "'%(ext)s' uzantılı dosyaların bu sunucuya yüklenmesine izin verilmiyor" -#: cps/editbooks.py:471 cps/editbooks.py:716 +#: cps/editbooks.py:472 cps/editbooks.py:719 msgid "File to be uploaded must have an extension" msgstr "Yüklenecek dosyanın mutlaka bir uzantısı olması gerekli" -#: cps/editbooks.py:483 cps/editbooks.py:773 +#: cps/editbooks.py:484 cps/editbooks.py:779 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "%(path)s dizini oluşturulamadı. (İzin reddedildi)" -#: cps/editbooks.py:488 +#: cps/editbooks.py:489 #, python-format msgid "Failed to store file %(file)s." msgstr "%(file)s dosyası kaydedilemedi." -#: cps/editbooks.py:506 cps/editbooks.py:864 +#: cps/editbooks.py:507 cps/editbooks.py:870 #, python-format msgid "Database error: %(error)s." msgstr "" -#: cps/editbooks.py:510 +#: cps/editbooks.py:511 #, python-format msgid "File format %(ext)s added to %(book)s" msgstr "%(book)s kitabına %(ext)s dosya biçimi eklendi" -#: cps/editbooks.py:653 +#: cps/editbooks.py:656 msgid "Metadata successfully updated" msgstr "Metaveri başarıyla güncellendi" -#: cps/editbooks.py:662 +#: cps/editbooks.py:665 msgid "Error editing book, please check logfile for details" msgstr "eKitap düzenlenirken hata oluştu, detaylar için lütfen log dosyasını kontrol edin" -#: cps/editbooks.py:724 +#: cps/editbooks.py:727 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "%(filename)s dosyası geçici dizine kaydedilemedi" -#: cps/editbooks.py:734 +#: cps/editbooks.py:737 msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgstr "Yüklenen eKitap muhtemelen kitaplıkta zaten var. Yenisini yüklemeden değiştirmeyi düşünün: " -#: cps/editbooks.py:780 +#: cps/editbooks.py:786 #, python-format msgid "Failed to Move File %(file)s: %(error)s" msgstr "" -#: cps/editbooks.py:836 +#: cps/editbooks.py:842 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "" -#: cps/editbooks.py:850 +#: cps/editbooks.py:856 #, python-format msgid "File %(file)s uploaded" msgstr "%(file)s dosyası yüklendi" -#: cps/editbooks.py:876 +#: cps/editbooks.py:882 msgid "Source or destination format for conversion missing" msgstr "Dönüştürme için kaynak ya da hedef biçimi eksik" -#: cps/editbooks.py:884 +#: cps/editbooks.py:890 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "eKitap %(book_format)s formatlarına dönüştürülmek üzere başarıyla sıraya alındı" -#: cps/editbooks.py:888 +#: cps/editbooks.py:894 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "Bu eKitabı dönüştürürken bir hata oluştu: %(res)s" @@ -499,71 +505,71 @@ msgstr "%(file)s dosyası Google Drive'da bulunamadı" msgid "Book path %(path)s not found on Google Drive" msgstr "eKitap yolu %(path)s Google Drive'da bulunamadı" -#: cps/helper.py:542 +#: cps/helper.py:550 msgid "Error Downloading Cover" msgstr "" -#: cps/helper.py:545 +#: cps/helper.py:553 msgid "Cover Format Error" msgstr "" -#: cps/helper.py:561 +#: cps/helper.py:569 msgid "Failed to create path for cover" msgstr "" -#: cps/helper.py:566 +#: cps/helper.py:574 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "" -#: cps/helper.py:577 +#: cps/helper.py:585 msgid "Only jpg/jpeg/png/webp files are supported as coverfile" msgstr "" -#: cps/helper.py:591 +#: cps/helper.py:599 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "" -#: cps/helper.py:640 +#: cps/helper.py:648 msgid "Unrar binary file not found" msgstr "" -#: cps/helper.py:654 +#: cps/helper.py:662 msgid "Error excecuting UnRar" msgstr "" -#: cps/helper.py:710 +#: cps/helper.py:718 msgid "Waiting" msgstr "Bekleniyor" -#: cps/helper.py:712 +#: cps/helper.py:720 msgid "Failed" msgstr "Başarısız" -#: cps/helper.py:714 +#: cps/helper.py:722 msgid "Started" msgstr "Başladı" -#: cps/helper.py:716 +#: cps/helper.py:724 msgid "Finished" msgstr "Bitti" -#: cps/helper.py:718 +#: cps/helper.py:726 msgid "Unknown Status" msgstr "Bilinmeyen Durum" -#: cps/helper.py:723 +#: cps/helper.py:731 msgid "E-mail: " msgstr "e-Posta: " -#: cps/helper.py:725 cps/helper.py:729 +#: cps/helper.py:733 cps/helper.py:737 msgid "Convert: " msgstr "Dönüştür: " -#: cps/helper.py:727 +#: cps/helper.py:735 msgid "Upload: " msgstr "Yükle: " -#: cps/helper.py:731 +#: cps/helper.py:739 msgid "Unknown Task: " msgstr "Bilinmeyen Görev: " @@ -596,7 +602,7 @@ msgstr "Google ile giriş yapılamadı." msgid "Failed to fetch user info from Google." msgstr "Google'dan kullanıcı bilgileri alınamadı." -#: cps/oauth_bb.py:225 cps/web.py:1397 cps/web.py:1537 +#: cps/oauth_bb.py:225 cps/web.py:1394 cps/web.py:1534 #, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "giriş yaptınız: '%(nickname)s'" @@ -633,218 +639,218 @@ msgstr "GitHub Oauth hatası, lütfen tekrar deneyin." msgid "Google Oauth error, please retry later." msgstr "Google Oauth hatası, lütfen tekrar deneyin." -#: cps/shelf.py:66 cps/shelf.py:111 +#: cps/shelf.py:67 cps/shelf.py:120 msgid "Invalid shelf specified" msgstr "Geçersiz kitaplık seçildi" -#: cps/shelf.py:72 +#: cps/shelf.py:73 #, python-format msgid "Sorry you are not allowed to add a book to the the shelf: %(shelfname)s" msgstr "Maalesef bu kitaplığa eKitap eklemenize izin verilmiyor: %(shelfname)s" -#: cps/shelf.py:82 +#: cps/shelf.py:83 #, python-format msgid "Book is already part of the shelf: %(shelfname)s" msgstr "eKitap zaten bu kitaplıkta bulunuyor: %(shelfname)s" -#: cps/shelf.py:97 +#: cps/shelf.py:106 #, python-format msgid "Book has been added to shelf: %(sname)s" msgstr "eKitap kitaplığa eklendi: %(sname)s" -#: cps/shelf.py:115 +#: cps/shelf.py:124 #, python-format msgid "You are not allowed to add a book to the the shelf: %(name)s" msgstr "Bu kitaplığa eKitap eklemenize izin verilmiyor: %(name)s" -#: cps/shelf.py:133 +#: cps/shelf.py:142 #, python-format msgid "Books are already part of the shelf: %(name)s" msgstr "eKitaplar zaten bu kitaplıkta bulunuyor: %(name)s" -#: cps/shelf.py:148 +#: cps/shelf.py:158 #, python-format msgid "Books have been added to shelf: %(sname)s" msgstr "eKitaplar kitaplığa eklendi: %(sname)s" -#: cps/shelf.py:150 +#: cps/shelf.py:163 #, python-format msgid "Could not add books to shelf: %(sname)s" msgstr "eKitaplar kitaplığa eklenemedi: %(sname)s" -#: cps/shelf.py:188 +#: cps/shelf.py:208 #, python-format msgid "Book has been removed from shelf: %(sname)s" msgstr "eKitap kitaplıktan silindi: %(sname)s" -#: cps/shelf.py:196 +#: cps/shelf.py:216 #, python-format msgid "Sorry you are not allowed to remove a book from this shelf: %(sname)s" msgstr "Maalesef bu kitaplıktan eKitap silmenize izin verilmiyor: %(sname)s" -#: cps/shelf.py:220 cps/shelf.py:260 +#: cps/shelf.py:240 cps/shelf.py:284 #, python-format msgid "A public shelf with the name '%(title)s' already exists." msgstr "" -#: cps/shelf.py:229 cps/shelf.py:270 +#: cps/shelf.py:249 cps/shelf.py:294 #, python-format msgid "A private shelf with the name '%(title)s' already exists." msgstr "" -#: cps/shelf.py:236 +#: cps/shelf.py:256 #, python-format msgid "Shelf %(title)s created" msgstr "%(title)s kitaplığı oluşturuldu." -#: cps/shelf.py:239 cps/shelf.py:284 +#: cps/shelf.py:263 cps/shelf.py:312 msgid "There was an error" msgstr "Bir hata oluştu" -#: cps/shelf.py:240 cps/shelf.py:242 cps/templates/layout.html:144 +#: cps/shelf.py:264 cps/shelf.py:266 cps/templates/layout.html:144 msgid "Create a Shelf" msgstr "Kitaplık oluştur" -#: cps/shelf.py:282 +#: cps/shelf.py:306 #, python-format msgid "Shelf %(title)s changed" msgstr "%(title)s kitaplığı değiştirildi" -#: cps/shelf.py:285 cps/shelf.py:287 +#: cps/shelf.py:313 cps/shelf.py:315 msgid "Edit a shelf" msgstr "Kitaplığı düzenle" -#: cps/shelf.py:332 +#: cps/shelf.py:369 #, python-format msgid "Shelf: '%(name)s'" msgstr "Kitaplık: '%(name)s'" -#: cps/shelf.py:335 +#: cps/shelf.py:372 msgid "Error opening shelf. Shelf does not exist or is not accessible" msgstr "Kitaplık açılırken hata oluştu. Kitaplık mevcut değil ya da erişilebilir değil" -#: cps/shelf.py:368 +#: cps/shelf.py:409 msgid "Hidden Book" msgstr "" -#: cps/shelf.py:373 +#: cps/shelf.py:414 #, python-format msgid "Change order of Shelf: '%(name)s'" msgstr "Kitaplık sıralamasını değiştir: '%(name)s'" -#: cps/ub.py:64 +#: cps/ub.py:65 msgid "Recently Added" msgstr "Yeni" -#: cps/ub.py:66 +#: cps/ub.py:67 msgid "Show recent books" msgstr "Son eKitapları göster" -#: cps/templates/index.xml:17 cps/ub.py:67 +#: cps/templates/index.xml:17 cps/ub.py:68 msgid "Hot Books" msgstr "Popüler" -#: cps/ub.py:69 +#: cps/ub.py:70 msgid "Show Hot Books" msgstr "" -#: cps/templates/index.xml:24 cps/ub.py:71 cps/web.py:655 +#: cps/templates/index.xml:24 cps/ub.py:72 cps/web.py:652 msgid "Top Rated Books" msgstr "" -#: cps/ub.py:73 +#: cps/ub.py:74 msgid "Show Top Rated Books" msgstr "" -#: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:74 -#: cps/web.py:1222 +#: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:75 +#: cps/web.py:1219 msgid "Read Books" msgstr "Okunanlar" -#: cps/ub.py:76 +#: cps/ub.py:77 msgid "Show read and unread" msgstr "Okunan ve okunmayanları göster" -#: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:78 -#: cps/web.py:1225 +#: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:79 +#: cps/web.py:1222 msgid "Unread Books" msgstr "Okunmamışlar" -#: cps/ub.py:80 +#: cps/ub.py:81 msgid "Show unread" msgstr "Okunmamışları göster" -#: cps/ub.py:81 +#: cps/ub.py:82 msgid "Discover" msgstr "Keşfet" -#: cps/ub.py:83 +#: cps/ub.py:84 msgid "Show random books" msgstr "Rastgele eKitap göster" -#: cps/templates/index.xml:75 cps/ub.py:84 cps/web.py:970 +#: cps/templates/index.xml:75 cps/ub.py:85 cps/web.py:967 msgid "Categories" msgstr "Kategoriler" -#: cps/ub.py:86 +#: cps/ub.py:87 msgid "Show category selection" msgstr "Kategori seçimini göster" #: cps/templates/book_edit.html:84 cps/templates/index.xml:82 -#: cps/templates/search_form.html:53 cps/ub.py:87 cps/web.py:886 cps/web.py:896 +#: cps/templates/search_form.html:53 cps/ub.py:88 cps/web.py:883 cps/web.py:893 msgid "Series" msgstr "Seriler" -#: cps/ub.py:89 +#: cps/ub.py:90 msgid "Show series selection" msgstr "Seri seçimini göster" -#: cps/templates/index.xml:61 cps/ub.py:90 +#: cps/templates/index.xml:61 cps/ub.py:91 msgid "Authors" msgstr "Yazarlar" -#: cps/ub.py:92 +#: cps/ub.py:93 msgid "Show author selection" msgstr "Yazar seçimini göster" -#: cps/templates/index.xml:68 cps/ub.py:94 cps/web.py:869 +#: cps/templates/index.xml:68 cps/ub.py:95 cps/web.py:866 msgid "Publishers" msgstr "Yayıncılar" -#: cps/ub.py:96 +#: cps/ub.py:97 msgid "Show publisher selection" msgstr "Yayıncı seçimini göster" -#: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:97 -#: cps/web.py:953 +#: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:98 +#: cps/web.py:950 msgid "Languages" msgstr "Diller" -#: cps/ub.py:100 +#: cps/ub.py:101 msgid "Show language selection" msgstr "Dil seçimini göster" -#: cps/templates/index.xml:96 cps/ub.py:101 +#: cps/templates/index.xml:96 cps/ub.py:102 msgid "Ratings" msgstr "Değerlendirmeler" -#: cps/ub.py:103 +#: cps/ub.py:104 msgid "Show ratings selection" msgstr "Değerlendirme seçimini göster" -#: cps/templates/index.xml:104 cps/ub.py:104 +#: cps/templates/index.xml:104 cps/ub.py:105 msgid "File formats" msgstr "Biçimler" -#: cps/ub.py:106 +#: cps/ub.py:107 msgid "Show file formats selection" msgstr "Dosya biçimi seçimini göster" -#: cps/ub.py:108 cps/web.py:1249 +#: cps/ub.py:109 cps/web.py:1246 msgid "Archived Books" msgstr "" -#: cps/ub.py:110 +#: cps/ub.py:111 msgid "Show archived books" msgstr "" @@ -877,220 +883,220 @@ msgstr "Yeni bir güncelleme mevcut. Son sürüme güncellemek için aşağıdak msgid "Click on the button below to update to the latest stable version." msgstr "Son kararlı sürüme güncellemek için aşağıdaki düğmeye tıklayın." -#: cps/web.py:322 +#: cps/web.py:319 #, python-format msgid "Error: %(ldaperror)s" msgstr "" -#: cps/web.py:326 +#: cps/web.py:323 msgid "Error: No user returned in response of LDAP server" msgstr "" -#: cps/web.py:374 +#: cps/web.py:371 msgid "Failed to Create at Least One LDAP User" msgstr "" -#: cps/web.py:377 +#: cps/web.py:374 msgid "At Least One LDAP User Not Found in Database" msgstr "" -#: cps/web.py:379 +#: cps/web.py:376 msgid "User Successfully Imported" msgstr "" -#: cps/web.py:625 +#: cps/web.py:622 msgid "Recently Added Books" msgstr "Yeni Eklenen eKitaplar" -#: cps/templates/index.html:5 cps/web.py:663 +#: cps/templates/index.html:5 cps/web.py:660 msgid "Discover (Random Books)" msgstr "Keşfet (Rastgele)" -#: cps/web.py:691 +#: cps/web.py:688 msgid "Books" msgstr "eKitaplar" -#: cps/web.py:718 +#: cps/web.py:715 msgid "Hot Books (Most Downloaded)" msgstr "" -#: cps/web.py:731 +#: cps/web.py:728 msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible" msgstr "" -#: cps/web.py:745 +#: cps/web.py:742 #, python-format msgid "Author: %(name)s" msgstr "Yazar: %(name)s" -#: cps/web.py:759 +#: cps/web.py:756 #, python-format msgid "Publisher: %(name)s" msgstr "Yayınevi: %(name)s" -#: cps/web.py:772 +#: cps/web.py:769 #, python-format msgid "Series: %(serie)s" msgstr "Seri: %(serie)s" -#: cps/web.py:785 +#: cps/web.py:782 #, python-format msgid "Rating: %(rating)s stars" msgstr "Değerlendirme: %(rating)s yıldız" -#: cps/web.py:798 +#: cps/web.py:795 #, python-format msgid "File format: %(format)s" msgstr "Biçim: %(format)s" -#: cps/web.py:812 +#: cps/web.py:809 #, python-format msgid "Category: %(name)s" msgstr "Kategori: %(name)s" -#: cps/web.py:831 +#: cps/web.py:828 #, python-format msgid "Language: %(name)s" msgstr "Dil: %(name)s" -#: cps/web.py:910 +#: cps/web.py:907 msgid "Ratings list" msgstr "Değerlendirme listesi" -#: cps/web.py:925 +#: cps/web.py:922 msgid "File formats list" msgstr "Biçim listesi" -#: cps/templates/layout.html:74 cps/templates/tasks.html:7 cps/web.py:984 +#: cps/templates/layout.html:74 cps/templates/tasks.html:7 cps/web.py:981 msgid "Tasks" msgstr "Görevler" #: cps/templates/book_edit.html:235 cps/templates/feed.xml:33 #: cps/templates/layout.html:45 cps/templates/layout.html:48 -#: cps/templates/search_form.html:174 cps/web.py:1010 cps/web.py:1015 +#: cps/templates/search_form.html:174 cps/web.py:1007 cps/web.py:1012 msgid "Search" msgstr "Ara" -#: cps/web.py:1066 +#: cps/web.py:1063 msgid "Published after " msgstr "Yayınlanma (sonra)" -#: cps/web.py:1073 +#: cps/web.py:1070 msgid "Published before " msgstr "Yayınlanma (önce)" -#: cps/web.py:1087 +#: cps/web.py:1084 #, python-format msgid "Rating <= %(rating)s" msgstr "Değerlendirme <= %(rating)s" -#: cps/web.py:1089 +#: cps/web.py:1086 #, python-format msgid "Rating >= %(rating)s" msgstr "Değerlendirme >= %(rating)s" -#: cps/web.py:1158 cps/web.py:1183 +#: cps/web.py:1155 cps/web.py:1180 msgid "search" msgstr "ara" -#: cps/web.py:1213 +#: cps/web.py:1210 #, python-format msgid "Custom Column No.%(column)d is not existing in calibre database" msgstr "" -#: cps/web.py:1304 +#: cps/web.py:1301 #, python-format msgid "Book successfully queued for sending to %(kindlemail)s" msgstr "%(kindlemail)s'a gönderilmek üzere başarıyla sıraya alındı" -#: cps/web.py:1308 +#: cps/web.py:1305 #, python-format msgid "Oops! There was an error sending this book: %(res)s" msgstr "" -#: cps/web.py:1310 +#: cps/web.py:1307 msgid "Please update your profile with a valid Send to Kindle E-mail Address." msgstr "" -#: cps/web.py:1327 +#: cps/web.py:1324 msgid "E-Mail server is not configured, please contact your administrator!" msgstr "E-Posta sunucusu ayarlanmadı, lütfen yöneticinizle iletişime geçin!" -#: cps/web.py:1328 cps/web.py:1338 cps/web.py:1362 cps/web.py:1366 -#: cps/web.py:1371 cps/web.py:1375 +#: cps/web.py:1325 cps/web.py:1335 cps/web.py:1359 cps/web.py:1363 +#: cps/web.py:1368 cps/web.py:1372 msgid "register" msgstr "kaydol" -#: cps/web.py:1364 +#: cps/web.py:1361 msgid "Your e-mail is not allowed to register" msgstr "E-posta adresinizle kaydolunmasına izin verilmiyor" -#: cps/web.py:1367 +#: cps/web.py:1364 msgid "Confirmation e-mail was send to your e-mail account." msgstr "Onay e-Postası hesabınıza gönderildi." -#: cps/web.py:1370 +#: cps/web.py:1367 msgid "This username or e-mail address is already in use." msgstr "Kullanıcı adı ya da e-Posta adresi zaten kullanımda." -#: cps/web.py:1387 +#: cps/web.py:1384 msgid "Cannot activate LDAP authentication" msgstr "LDAP Kimlik Doğrulaması etkinleştirilemiyor" -#: cps/web.py:1404 +#: cps/web.py:1401 #, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgstr "" -#: cps/web.py:1410 +#: cps/web.py:1407 #, python-format msgid "Could not login: %(message)s" msgstr "" -#: cps/web.py:1414 cps/web.py:1438 +#: cps/web.py:1411 cps/web.py:1435 msgid "Wrong Username or Password" msgstr "Yanlış Kullanıcı adı ya da Şifre" -#: cps/web.py:1421 +#: cps/web.py:1418 msgid "New Password was send to your email address" msgstr "Yeni şifre e-Posta adresinize gönderildi" -#: cps/web.py:1427 +#: cps/web.py:1424 msgid "Please enter valid username to reset password" msgstr "Şifrenizi sıfırlayabilmek için lütfen geçerli bir kullanıcı adı giriniz" -#: cps/web.py:1433 +#: cps/web.py:1430 #, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "Giriş yaptınız: '%(nickname)s'" -#: cps/web.py:1442 cps/web.py:1469 +#: cps/web.py:1439 cps/web.py:1466 msgid "login" msgstr "giriş" -#: cps/web.py:1481 cps/web.py:1515 +#: cps/web.py:1478 cps/web.py:1512 msgid "Token not found" msgstr "Token bulunamadı" -#: cps/web.py:1490 cps/web.py:1523 +#: cps/web.py:1487 cps/web.py:1520 msgid "Token has expired" msgstr "Token süresi doldu" -#: cps/web.py:1499 +#: cps/web.py:1496 msgid "Success! Please return to your device" msgstr "Başarılı! Lütfen cihazınıza dönün" -#: cps/web.py:1580 cps/web.py:1625 cps/web.py:1631 +#: cps/web.py:1577 cps/web.py:1622 cps/web.py:1628 #, python-format msgid "%(name)s's profile" msgstr "%(name)s Profili" -#: cps/web.py:1627 +#: cps/web.py:1624 msgid "Profile updated" msgstr "Profil güncellendi" -#: cps/web.py:1656 cps/web.py:1659 cps/web.py:1662 cps/web.py:1669 -#: cps/web.py:1674 +#: cps/web.py:1653 cps/web.py:1656 cps/web.py:1659 cps/web.py:1666 +#: cps/web.py:1671 msgid "Read a Book" msgstr "Kitap Oku" diff --git a/cps/translations/uk/LC_MESSAGES/messages.mo b/cps/translations/uk/LC_MESSAGES/messages.mo index 81ee7eee..cb7a81c9 100644 Binary files a/cps/translations/uk/LC_MESSAGES/messages.mo and b/cps/translations/uk/LC_MESSAGES/messages.mo differ diff --git a/cps/translations/uk/LC_MESSAGES/messages.po b/cps/translations/uk/LC_MESSAGES/messages.po index 933343ef..41c448b2 100644 --- a/cps/translations/uk/LC_MESSAGES/messages.po +++ b/cps/translations/uk/LC_MESSAGES/messages.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Calibre-web\n" "Report-Msgid-Bugs-To: https://github.com/janeczku/calibre-web\n" -"POT-Creation-Date: 2020-06-07 06:47+0200\n" +"POT-Creation-Date: 2020-06-28 09:31+0200\n" "PO-Revision-Date: 2017-04-30 00:47+0300\n" "Last-Translator: ABIS Team \n" "Language: uk\n" @@ -45,9 +45,9 @@ msgstr "" msgid "Unknown command" msgstr "" -#: cps/admin.py:116 cps/editbooks.py:563 cps/editbooks.py:573 -#: cps/editbooks.py:667 cps/editbooks.py:669 cps/editbooks.py:730 -#: cps/editbooks.py:743 cps/updater.py:509 cps/uploader.py:97 +#: cps/admin.py:116 cps/editbooks.py:564 cps/editbooks.py:576 +#: cps/editbooks.py:670 cps/editbooks.py:672 cps/editbooks.py:733 +#: cps/editbooks.py:749 cps/updater.py:509 cps/uploader.py:97 #: cps/uploader.py:107 msgid "Unknown" msgstr "Невідомий" @@ -60,7 +60,7 @@ msgstr "Сторінка адміністратора" msgid "UI Configuration" msgstr "Конфігурація інтерфейсу" -#: cps/admin.py:189 cps/admin.py:706 +#: cps/admin.py:189 cps/admin.py:711 msgid "Calibre-Web configuration updated" msgstr "" @@ -112,175 +112,181 @@ msgstr "" msgid "LDAP Certificate Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:627 +#: cps/admin.py:628 msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:631 +#: cps/admin.py:632 msgid "Certfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:701 +#: cps/admin.py:694 cps/admin.py:793 cps/admin.py:885 cps/admin.py:934 +#: cps/shelf.py:100 cps/shelf.py:161 cps/shelf.py:202 cps/shelf.py:260 +#: cps/shelf.py:309 cps/shelf.py:338 cps/shelf.py:368 cps/shelf.py:392 +msgid "Settings DB is not Writeable" +msgstr "" + +#: cps/admin.py:706 msgid "DB Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:703 +#: cps/admin.py:708 msgid "DB is not Writeable" msgstr "" -#: cps/admin.py:736 +#: cps/admin.py:741 msgid "Basic Configuration" msgstr "Настройки сервера" -#: cps/admin.py:751 cps/web.py:1337 +#: cps/admin.py:756 cps/web.py:1334 msgid "Please fill out all fields!" msgstr "Будь-ласка, заповніть всі поля!" -#: cps/admin.py:754 cps/admin.py:766 cps/admin.py:772 cps/admin.py:892 +#: cps/admin.py:759 cps/admin.py:771 cps/admin.py:777 cps/admin.py:903 msgid "Add new user" msgstr "Додати користувача" -#: cps/admin.py:763 cps/web.py:1578 +#: cps/admin.py:768 cps/web.py:1575 msgid "E-mail is not from valid domain" msgstr "" -#: cps/admin.py:770 cps/admin.py:785 +#: cps/admin.py:775 cps/admin.py:790 msgid "Found an existing account for this e-mail address or nickname." msgstr "" -#: cps/admin.py:781 +#: cps/admin.py:786 #, python-format msgid "User '%(user)s' created" msgstr "Користувач '%(user)s' додан" -#: cps/admin.py:794 +#: cps/admin.py:802 #, python-format msgid "User '%(nick)s' deleted" msgstr "Користувача '%(nick)s' видалено" -#: cps/admin.py:797 +#: cps/admin.py:805 msgid "No admin user remaining, can't delete user" msgstr "" -#: cps/admin.py:803 +#: cps/admin.py:811 msgid "No admin user remaining, can't remove admin role" msgstr "" -#: cps/admin.py:839 cps/web.py:1621 +#: cps/admin.py:847 cps/web.py:1618 msgid "Found an existing account for this e-mail address." msgstr "" -#: cps/admin.py:849 cps/admin.py:864 cps/admin.py:967 cps/web.py:1596 +#: cps/admin.py:857 cps/admin.py:872 cps/admin.py:983 cps/web.py:1593 #, python-format msgid "Edit User %(nick)s" msgstr "Змінити користувача %(nick)s" -#: cps/admin.py:855 cps/web.py:1588 +#: cps/admin.py:863 cps/web.py:1585 msgid "This username is already taken" msgstr "" -#: cps/admin.py:871 +#: cps/admin.py:879 #, python-format msgid "User '%(nick)s' updated" msgstr "Користувача '%(nick)s' оновлено" -#: cps/admin.py:874 +#: cps/admin.py:882 msgid "An unknown error occured." msgstr "Сталась невідома помилка" -#: cps/admin.py:901 cps/templates/admin.html:71 +#: cps/admin.py:912 cps/templates/admin.html:71 msgid "Edit E-mail Server Settings" msgstr "Змінити налаштування SMTP" -#: cps/admin.py:925 +#: cps/admin.py:941 #, python-format msgid "Test e-mail successfully send to %(kindlemail)s" msgstr "" -#: cps/admin.py:928 +#: cps/admin.py:944 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "" -#: cps/admin.py:930 +#: cps/admin.py:946 msgid "Please configure your e-mail address first..." msgstr "" -#: cps/admin.py:932 +#: cps/admin.py:948 msgid "E-mail server settings updated" msgstr "" -#: cps/admin.py:943 +#: cps/admin.py:959 msgid "User not found" msgstr "" -#: cps/admin.py:978 +#: cps/admin.py:994 #, python-format msgid "Password for user %(user)s reset" msgstr "" -#: cps/admin.py:981 cps/web.py:1361 cps/web.py:1425 +#: cps/admin.py:997 cps/web.py:1358 cps/web.py:1422 msgid "An unknown error occurred. Please try again later." msgstr "" -#: cps/admin.py:984 cps/web.py:1299 +#: cps/admin.py:1000 cps/web.py:1296 msgid "Please configure the SMTP mail settings first..." msgstr "Будь-ласка, спочатку сконфігуруйте параметри SMTP" -#: cps/admin.py:996 +#: cps/admin.py:1012 msgid "Logfile viewer" msgstr "" -#: cps/admin.py:1035 +#: cps/admin.py:1051 msgid "Requesting update package" msgstr "Перевірка оновлень" -#: cps/admin.py:1036 +#: cps/admin.py:1052 msgid "Downloading update package" msgstr "Завантаження оновлень" -#: cps/admin.py:1037 +#: cps/admin.py:1053 msgid "Unzipping update package" msgstr "Розпакування оновлення" -#: cps/admin.py:1038 +#: cps/admin.py:1054 msgid "Replacing files" msgstr "" -#: cps/admin.py:1039 +#: cps/admin.py:1055 msgid "Database connections are closed" msgstr "З'єднання з базою даних закрите" -#: cps/admin.py:1040 +#: cps/admin.py:1056 msgid "Stopping server" msgstr "" -#: cps/admin.py:1041 +#: cps/admin.py:1057 msgid "Update finished, please press okay and reload page" msgstr "Оновлення встановлені, натисніть ok і перезавантажте сторінку" -#: cps/admin.py:1042 cps/admin.py:1043 cps/admin.py:1044 cps/admin.py:1045 -#: cps/admin.py:1046 +#: cps/admin.py:1058 cps/admin.py:1059 cps/admin.py:1060 cps/admin.py:1061 +#: cps/admin.py:1062 msgid "Update failed:" msgstr "" -#: cps/admin.py:1042 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522 +#: cps/admin.py:1058 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522 msgid "HTTP Error" msgstr "" -#: cps/admin.py:1043 cps/updater.py:321 cps/updater.py:524 +#: cps/admin.py:1059 cps/updater.py:321 cps/updater.py:524 msgid "Connection error" msgstr "" -#: cps/admin.py:1044 cps/updater.py:323 cps/updater.py:526 +#: cps/admin.py:1060 cps/updater.py:323 cps/updater.py:526 msgid "Timeout while establishing connection" msgstr "" -#: cps/admin.py:1045 cps/updater.py:325 cps/updater.py:528 +#: cps/admin.py:1061 cps/updater.py:325 cps/updater.py:528 msgid "General error" msgstr "" -#: cps/admin.py:1046 +#: cps/admin.py:1062 msgid "Update File Could Not be Saved in Temp Dir" msgstr "" @@ -300,8 +306,8 @@ msgstr "" msgid "Book Successfully Deleted" msgstr "" -#: cps/editbooks.py:254 cps/editbooks.py:548 cps/web.py:1644 cps/web.py:1685 -#: cps/web.py:1747 +#: cps/editbooks.py:254 cps/editbooks.py:549 cps/web.py:1641 cps/web.py:1682 +#: cps/web.py:1744 msgid "Error opening eBook. File does not exist or file is not accessible" msgstr "Сталась помилка при відкриванні eBook. Файл не існує або відсутній доступ до нього" @@ -309,82 +315,82 @@ msgstr "Сталась помилка при відкриванні eBook. Фа msgid "edit metadata" msgstr "змінити метадані" -#: cps/editbooks.py:361 +#: cps/editbooks.py:360 #, python-format msgid "%(langname)s is not a valid language" msgstr "" -#: cps/editbooks.py:467 cps/editbooks.py:712 +#: cps/editbooks.py:468 cps/editbooks.py:715 #, python-format msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgstr "" -#: cps/editbooks.py:471 cps/editbooks.py:716 +#: cps/editbooks.py:472 cps/editbooks.py:719 msgid "File to be uploaded must have an extension" msgstr "Завантажувальний файл повинен мати розширення" -#: cps/editbooks.py:483 cps/editbooks.py:773 +#: cps/editbooks.py:484 cps/editbooks.py:779 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "" -#: cps/editbooks.py:488 +#: cps/editbooks.py:489 #, python-format msgid "Failed to store file %(file)s." msgstr "" -#: cps/editbooks.py:506 cps/editbooks.py:864 +#: cps/editbooks.py:507 cps/editbooks.py:870 #, python-format msgid "Database error: %(error)s." msgstr "" -#: cps/editbooks.py:510 +#: cps/editbooks.py:511 #, python-format msgid "File format %(ext)s added to %(book)s" msgstr "" -#: cps/editbooks.py:653 +#: cps/editbooks.py:656 msgid "Metadata successfully updated" msgstr "" -#: cps/editbooks.py:662 +#: cps/editbooks.py:665 msgid "Error editing book, please check logfile for details" msgstr "Сталась помилка при редагуванні книги. Будь-ласка, перевірте лог-файл для деталей" -#: cps/editbooks.py:724 +#: cps/editbooks.py:727 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "" -#: cps/editbooks.py:734 +#: cps/editbooks.py:737 msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgstr "" -#: cps/editbooks.py:780 +#: cps/editbooks.py:786 #, python-format msgid "Failed to Move File %(file)s: %(error)s" msgstr "" -#: cps/editbooks.py:836 +#: cps/editbooks.py:842 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "" -#: cps/editbooks.py:850 +#: cps/editbooks.py:856 #, python-format msgid "File %(file)s uploaded" msgstr "" -#: cps/editbooks.py:876 +#: cps/editbooks.py:882 msgid "Source or destination format for conversion missing" msgstr "" -#: cps/editbooks.py:884 +#: cps/editbooks.py:890 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "" -#: cps/editbooks.py:888 +#: cps/editbooks.py:894 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "" @@ -498,71 +504,71 @@ msgstr "" msgid "Book path %(path)s not found on Google Drive" msgstr "" -#: cps/helper.py:542 +#: cps/helper.py:550 msgid "Error Downloading Cover" msgstr "" -#: cps/helper.py:545 +#: cps/helper.py:553 msgid "Cover Format Error" msgstr "" -#: cps/helper.py:561 +#: cps/helper.py:569 msgid "Failed to create path for cover" msgstr "" -#: cps/helper.py:566 +#: cps/helper.py:574 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "" -#: cps/helper.py:577 +#: cps/helper.py:585 msgid "Only jpg/jpeg/png/webp files are supported as coverfile" msgstr "" -#: cps/helper.py:591 +#: cps/helper.py:599 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "" -#: cps/helper.py:640 +#: cps/helper.py:648 msgid "Unrar binary file not found" msgstr "" -#: cps/helper.py:654 +#: cps/helper.py:662 msgid "Error excecuting UnRar" msgstr "" -#: cps/helper.py:710 +#: cps/helper.py:718 msgid "Waiting" msgstr "" -#: cps/helper.py:712 +#: cps/helper.py:720 msgid "Failed" msgstr "" -#: cps/helper.py:714 +#: cps/helper.py:722 msgid "Started" msgstr "" -#: cps/helper.py:716 +#: cps/helper.py:724 msgid "Finished" msgstr "" -#: cps/helper.py:718 +#: cps/helper.py:726 msgid "Unknown Status" msgstr "" -#: cps/helper.py:723 +#: cps/helper.py:731 msgid "E-mail: " msgstr "" -#: cps/helper.py:725 cps/helper.py:729 +#: cps/helper.py:733 cps/helper.py:737 msgid "Convert: " msgstr "" -#: cps/helper.py:727 +#: cps/helper.py:735 msgid "Upload: " msgstr "" -#: cps/helper.py:731 +#: cps/helper.py:739 msgid "Unknown Task: " msgstr "" @@ -595,7 +601,7 @@ msgstr "" msgid "Failed to fetch user info from Google." msgstr "" -#: cps/oauth_bb.py:225 cps/web.py:1397 cps/web.py:1537 +#: cps/oauth_bb.py:225 cps/web.py:1394 cps/web.py:1534 #, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "Ви увійшли як користувач: '%(nickname)s'" @@ -632,218 +638,218 @@ msgstr "" msgid "Google Oauth error, please retry later." msgstr "" -#: cps/shelf.py:66 cps/shelf.py:111 +#: cps/shelf.py:67 cps/shelf.py:120 msgid "Invalid shelf specified" msgstr "" -#: cps/shelf.py:72 +#: cps/shelf.py:73 #, python-format msgid "Sorry you are not allowed to add a book to the the shelf: %(shelfname)s" msgstr "" -#: cps/shelf.py:82 +#: cps/shelf.py:83 #, python-format msgid "Book is already part of the shelf: %(shelfname)s" msgstr "" -#: cps/shelf.py:97 +#: cps/shelf.py:106 #, python-format msgid "Book has been added to shelf: %(sname)s" msgstr "Книга додана на книжкову полицю: %(sname)s" -#: cps/shelf.py:115 +#: cps/shelf.py:124 #, python-format msgid "You are not allowed to add a book to the the shelf: %(name)s" msgstr "" -#: cps/shelf.py:133 +#: cps/shelf.py:142 #, python-format msgid "Books are already part of the shelf: %(name)s" msgstr "" -#: cps/shelf.py:148 +#: cps/shelf.py:158 #, python-format msgid "Books have been added to shelf: %(sname)s" msgstr "" -#: cps/shelf.py:150 +#: cps/shelf.py:163 #, python-format msgid "Could not add books to shelf: %(sname)s" msgstr "" -#: cps/shelf.py:188 +#: cps/shelf.py:208 #, python-format msgid "Book has been removed from shelf: %(sname)s" msgstr "Книга видалена з книжкової полиці: %(sname)s" -#: cps/shelf.py:196 +#: cps/shelf.py:216 #, python-format msgid "Sorry you are not allowed to remove a book from this shelf: %(sname)s" msgstr "Вибачте, але у вас немає дозволу для видалення книги з цієї полиці" -#: cps/shelf.py:220 cps/shelf.py:260 +#: cps/shelf.py:240 cps/shelf.py:284 #, python-format msgid "A public shelf with the name '%(title)s' already exists." msgstr "" -#: cps/shelf.py:229 cps/shelf.py:270 +#: cps/shelf.py:249 cps/shelf.py:294 #, python-format msgid "A private shelf with the name '%(title)s' already exists." msgstr "" -#: cps/shelf.py:236 +#: cps/shelf.py:256 #, python-format msgid "Shelf %(title)s created" msgstr "Створена книжкова полиця %(title)s" -#: cps/shelf.py:239 cps/shelf.py:284 +#: cps/shelf.py:263 cps/shelf.py:312 msgid "There was an error" msgstr "Сталась помилка" -#: cps/shelf.py:240 cps/shelf.py:242 cps/templates/layout.html:144 +#: cps/shelf.py:264 cps/shelf.py:266 cps/templates/layout.html:144 msgid "Create a Shelf" msgstr "створити книжкову полицю" -#: cps/shelf.py:282 +#: cps/shelf.py:306 #, python-format msgid "Shelf %(title)s changed" msgstr "Книжкова полиця %(title)s змінена" -#: cps/shelf.py:285 cps/shelf.py:287 +#: cps/shelf.py:313 cps/shelf.py:315 msgid "Edit a shelf" msgstr "Змінити книжкову полицю" -#: cps/shelf.py:332 +#: cps/shelf.py:369 #, python-format msgid "Shelf: '%(name)s'" msgstr "Книжкова полиця: '%(name)s'" -#: cps/shelf.py:335 +#: cps/shelf.py:372 msgid "Error opening shelf. Shelf does not exist or is not accessible" msgstr "Помилка при відкриванні полиці. Полиця не існує або до неї відсутній доступ" -#: cps/shelf.py:368 +#: cps/shelf.py:409 msgid "Hidden Book" msgstr "" -#: cps/shelf.py:373 +#: cps/shelf.py:414 #, python-format msgid "Change order of Shelf: '%(name)s'" msgstr "Змінити розташування книжкової полиці '%(name)s'" -#: cps/ub.py:64 +#: cps/ub.py:65 msgid "Recently Added" msgstr "Останні додані" -#: cps/ub.py:66 +#: cps/ub.py:67 msgid "Show recent books" msgstr "Показувати останні книги" -#: cps/templates/index.xml:17 cps/ub.py:67 +#: cps/templates/index.xml:17 cps/ub.py:68 msgid "Hot Books" msgstr "Популярні книги" -#: cps/ub.py:69 +#: cps/ub.py:70 msgid "Show Hot Books" msgstr "Показувати популярні книги" -#: cps/templates/index.xml:24 cps/ub.py:71 cps/web.py:655 +#: cps/templates/index.xml:24 cps/ub.py:72 cps/web.py:652 msgid "Top Rated Books" msgstr "Книги з найкращим рейтингом" -#: cps/ub.py:73 +#: cps/ub.py:74 msgid "Show Top Rated Books" msgstr "Показувати книги з найвищим рейтингом" -#: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:74 -#: cps/web.py:1222 +#: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:75 +#: cps/web.py:1219 msgid "Read Books" msgstr "Прочитані книги" -#: cps/ub.py:76 +#: cps/ub.py:77 msgid "Show read and unread" msgstr "Показувати прочитані та непрочитані книги" -#: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:78 -#: cps/web.py:1225 +#: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:79 +#: cps/web.py:1222 msgid "Unread Books" msgstr "Непрочитані книги" -#: cps/ub.py:80 +#: cps/ub.py:81 msgid "Show unread" msgstr "" -#: cps/ub.py:81 +#: cps/ub.py:82 msgid "Discover" msgstr "Огляд" -#: cps/ub.py:83 +#: cps/ub.py:84 msgid "Show random books" msgstr "Показувати випадкові книги" -#: cps/templates/index.xml:75 cps/ub.py:84 cps/web.py:970 +#: cps/templates/index.xml:75 cps/ub.py:85 cps/web.py:967 msgid "Categories" msgstr "Категорії" -#: cps/ub.py:86 +#: cps/ub.py:87 msgid "Show category selection" msgstr "Показувати вибір категорії" #: cps/templates/book_edit.html:84 cps/templates/index.xml:82 -#: cps/templates/search_form.html:53 cps/ub.py:87 cps/web.py:886 cps/web.py:896 +#: cps/templates/search_form.html:53 cps/ub.py:88 cps/web.py:883 cps/web.py:893 msgid "Series" msgstr "Серії" -#: cps/ub.py:89 +#: cps/ub.py:90 msgid "Show series selection" msgstr "Показувати вибір серії" -#: cps/templates/index.xml:61 cps/ub.py:90 +#: cps/templates/index.xml:61 cps/ub.py:91 msgid "Authors" msgstr "Автори" -#: cps/ub.py:92 +#: cps/ub.py:93 msgid "Show author selection" msgstr "Показувати вибір автора" -#: cps/templates/index.xml:68 cps/ub.py:94 cps/web.py:869 +#: cps/templates/index.xml:68 cps/ub.py:95 cps/web.py:866 msgid "Publishers" msgstr "" -#: cps/ub.py:96 +#: cps/ub.py:97 msgid "Show publisher selection" msgstr "" -#: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:97 -#: cps/web.py:953 +#: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:98 +#: cps/web.py:950 msgid "Languages" msgstr "Мови" -#: cps/ub.py:100 +#: cps/ub.py:101 msgid "Show language selection" msgstr "Показувати вибір мови" -#: cps/templates/index.xml:96 cps/ub.py:101 +#: cps/templates/index.xml:96 cps/ub.py:102 msgid "Ratings" msgstr "" -#: cps/ub.py:103 +#: cps/ub.py:104 msgid "Show ratings selection" msgstr "" -#: cps/templates/index.xml:104 cps/ub.py:104 +#: cps/templates/index.xml:104 cps/ub.py:105 msgid "File formats" msgstr "" -#: cps/ub.py:106 +#: cps/ub.py:107 msgid "Show file formats selection" msgstr "" -#: cps/ub.py:108 cps/web.py:1249 +#: cps/ub.py:109 cps/web.py:1246 msgid "Archived Books" msgstr "" -#: cps/ub.py:110 +#: cps/ub.py:111 msgid "Show archived books" msgstr "" @@ -876,220 +882,220 @@ msgstr "" msgid "Click on the button below to update to the latest stable version." msgstr "" -#: cps/web.py:322 +#: cps/web.py:319 #, python-format msgid "Error: %(ldaperror)s" msgstr "" -#: cps/web.py:326 +#: cps/web.py:323 msgid "Error: No user returned in response of LDAP server" msgstr "" -#: cps/web.py:374 +#: cps/web.py:371 msgid "Failed to Create at Least One LDAP User" msgstr "" -#: cps/web.py:377 +#: cps/web.py:374 msgid "At Least One LDAP User Not Found in Database" msgstr "" -#: cps/web.py:379 +#: cps/web.py:376 msgid "User Successfully Imported" msgstr "" -#: cps/web.py:625 +#: cps/web.py:622 msgid "Recently Added Books" msgstr "Нещодавно додані книги" -#: cps/templates/index.html:5 cps/web.py:663 +#: cps/templates/index.html:5 cps/web.py:660 msgid "Discover (Random Books)" msgstr "Огляд (випадкові книги)" -#: cps/web.py:691 +#: cps/web.py:688 msgid "Books" msgstr "" -#: cps/web.py:718 +#: cps/web.py:715 msgid "Hot Books (Most Downloaded)" msgstr "Популярні книги (найбільш завантажувані)" -#: cps/web.py:731 +#: cps/web.py:728 msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible" msgstr "Неможливо відкрити книгу. Файл не існує або немає доступу." -#: cps/web.py:745 +#: cps/web.py:742 #, python-format msgid "Author: %(name)s" msgstr "" -#: cps/web.py:759 +#: cps/web.py:756 #, python-format msgid "Publisher: %(name)s" msgstr "" -#: cps/web.py:772 +#: cps/web.py:769 #, python-format msgid "Series: %(serie)s" msgstr "Серії: %(serie)s" -#: cps/web.py:785 +#: cps/web.py:782 #, python-format msgid "Rating: %(rating)s stars" msgstr "" -#: cps/web.py:798 +#: cps/web.py:795 #, python-format msgid "File format: %(format)s" msgstr "" -#: cps/web.py:812 +#: cps/web.py:809 #, python-format msgid "Category: %(name)s" msgstr "Категорія: %(name)s" -#: cps/web.py:831 +#: cps/web.py:828 #, python-format msgid "Language: %(name)s" msgstr "Мова: %(name)s" -#: cps/web.py:910 +#: cps/web.py:907 msgid "Ratings list" msgstr "" -#: cps/web.py:925 +#: cps/web.py:922 msgid "File formats list" msgstr "" -#: cps/templates/layout.html:74 cps/templates/tasks.html:7 cps/web.py:984 +#: cps/templates/layout.html:74 cps/templates/tasks.html:7 cps/web.py:981 msgid "Tasks" msgstr "" #: cps/templates/book_edit.html:235 cps/templates/feed.xml:33 #: cps/templates/layout.html:45 cps/templates/layout.html:48 -#: cps/templates/search_form.html:174 cps/web.py:1010 cps/web.py:1015 +#: cps/templates/search_form.html:174 cps/web.py:1007 cps/web.py:1012 msgid "Search" msgstr "Пошук" -#: cps/web.py:1066 +#: cps/web.py:1063 msgid "Published after " msgstr "" -#: cps/web.py:1073 +#: cps/web.py:1070 msgid "Published before " msgstr "Опубліковано до" -#: cps/web.py:1087 +#: cps/web.py:1084 #, python-format msgid "Rating <= %(rating)s" msgstr "" -#: cps/web.py:1089 +#: cps/web.py:1086 #, python-format msgid "Rating >= %(rating)s" msgstr "" -#: cps/web.py:1158 cps/web.py:1183 +#: cps/web.py:1155 cps/web.py:1180 msgid "search" msgstr "пошук" -#: cps/web.py:1213 +#: cps/web.py:1210 #, python-format msgid "Custom Column No.%(column)d is not existing in calibre database" msgstr "" -#: cps/web.py:1304 +#: cps/web.py:1301 #, python-format msgid "Book successfully queued for sending to %(kindlemail)s" msgstr "" -#: cps/web.py:1308 +#: cps/web.py:1305 #, python-format msgid "Oops! There was an error sending this book: %(res)s" msgstr "Помилка при відправці книги: %(res)s" -#: cps/web.py:1310 +#: cps/web.py:1307 msgid "Please update your profile with a valid Send to Kindle E-mail Address." msgstr "" -#: cps/web.py:1327 +#: cps/web.py:1324 msgid "E-Mail server is not configured, please contact your administrator!" msgstr "" -#: cps/web.py:1328 cps/web.py:1338 cps/web.py:1362 cps/web.py:1366 -#: cps/web.py:1371 cps/web.py:1375 +#: cps/web.py:1325 cps/web.py:1335 cps/web.py:1359 cps/web.py:1363 +#: cps/web.py:1368 cps/web.py:1372 msgid "register" msgstr "зареєструватись" -#: cps/web.py:1364 +#: cps/web.py:1361 msgid "Your e-mail is not allowed to register" msgstr "" -#: cps/web.py:1367 +#: cps/web.py:1364 msgid "Confirmation e-mail was send to your e-mail account." msgstr "" -#: cps/web.py:1370 +#: cps/web.py:1367 msgid "This username or e-mail address is already in use." msgstr "" -#: cps/web.py:1387 +#: cps/web.py:1384 msgid "Cannot activate LDAP authentication" msgstr "" -#: cps/web.py:1404 +#: cps/web.py:1401 #, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgstr "" -#: cps/web.py:1410 +#: cps/web.py:1407 #, python-format msgid "Could not login: %(message)s" msgstr "" -#: cps/web.py:1414 cps/web.py:1438 +#: cps/web.py:1411 cps/web.py:1435 msgid "Wrong Username or Password" msgstr "Помилка в імені користувача або паролі" -#: cps/web.py:1421 +#: cps/web.py:1418 msgid "New Password was send to your email address" msgstr "" -#: cps/web.py:1427 +#: cps/web.py:1424 msgid "Please enter valid username to reset password" msgstr "" -#: cps/web.py:1433 +#: cps/web.py:1430 #, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "" -#: cps/web.py:1442 cps/web.py:1469 +#: cps/web.py:1439 cps/web.py:1466 msgid "login" msgstr "увійти" -#: cps/web.py:1481 cps/web.py:1515 +#: cps/web.py:1478 cps/web.py:1512 msgid "Token not found" msgstr "Токен не знайдено" -#: cps/web.py:1490 cps/web.py:1523 +#: cps/web.py:1487 cps/web.py:1520 msgid "Token has expired" msgstr "Час дії токено вичерпано" -#: cps/web.py:1499 +#: cps/web.py:1496 msgid "Success! Please return to your device" msgstr "Вдалося! Будь-ласка, поверніться до вашого пристрою" -#: cps/web.py:1580 cps/web.py:1625 cps/web.py:1631 +#: cps/web.py:1577 cps/web.py:1622 cps/web.py:1628 #, python-format msgid "%(name)s's profile" msgstr "Профіль %(name)s" -#: cps/web.py:1627 +#: cps/web.py:1624 msgid "Profile updated" msgstr "Профіль оновлено" -#: cps/web.py:1656 cps/web.py:1659 cps/web.py:1662 cps/web.py:1669 -#: cps/web.py:1674 +#: cps/web.py:1653 cps/web.py:1656 cps/web.py:1659 cps/web.py:1666 +#: cps/web.py:1671 msgid "Read a Book" msgstr "Читати книгу" diff --git a/cps/translations/zh_Hans_CN/LC_MESSAGES/messages.mo b/cps/translations/zh_Hans_CN/LC_MESSAGES/messages.mo index da7ed62e..3c7de466 100644 Binary files a/cps/translations/zh_Hans_CN/LC_MESSAGES/messages.mo and b/cps/translations/zh_Hans_CN/LC_MESSAGES/messages.mo differ diff --git a/cps/translations/zh_Hans_CN/LC_MESSAGES/messages.po b/cps/translations/zh_Hans_CN/LC_MESSAGES/messages.po index 16091a54..76b99287 100644 --- a/cps/translations/zh_Hans_CN/LC_MESSAGES/messages.po +++ b/cps/translations/zh_Hans_CN/LC_MESSAGES/messages.po @@ -6,11 +6,11 @@ msgid "" msgstr "" "Project-Id-Version: Calibre-Web\n" -"Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n" -"POT-Creation-Date: 2020-06-07 06:47+0200\n" -"PO-Revision-Date: 2017-01-06 17:00+0000\n" +"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" +"POT-Creation-Date: 2020-06-28 09:31+0200\n" +"PO-Revision-Date: 2020-06-20 19:06+0800\n" "Last-Translator: dalin \n" -"Language: zh_Hans_CN\n" +"Language: zh_CN\n" "Language-Team: zh_Hans_CN \n" "Plural-Forms: nplurals=1; plural=0\n" "MIME-Version: 1.0\n" @@ -40,15 +40,15 @@ msgstr "正在关闭服务器,请关闭窗口" #: cps/admin.py:103 msgid "Reconnect successful" -msgstr "" +msgstr "重新连接成功" #: cps/admin.py:106 msgid "Unknown command" -msgstr "" +msgstr "未知命令" -#: cps/admin.py:116 cps/editbooks.py:563 cps/editbooks.py:573 -#: cps/editbooks.py:667 cps/editbooks.py:669 cps/editbooks.py:730 -#: cps/editbooks.py:743 cps/updater.py:509 cps/uploader.py:97 +#: cps/admin.py:116 cps/editbooks.py:564 cps/editbooks.py:576 +#: cps/editbooks.py:670 cps/editbooks.py:672 cps/editbooks.py:733 +#: cps/editbooks.py:749 cps/updater.py:509 cps/uploader.py:97 #: cps/uploader.py:107 msgid "Unknown" msgstr "未知" @@ -61,248 +61,254 @@ msgstr "管理页" msgid "UI Configuration" msgstr "UI配置" -#: cps/admin.py:189 cps/admin.py:706 +#: cps/admin.py:189 cps/admin.py:711 msgid "Calibre-Web configuration updated" msgstr "Calibre-Web配置已更新" #: cps/admin.py:434 cps/admin.py:440 cps/admin.py:451 cps/admin.py:462 #: cps/templates/modal_restriction.html:29 msgid "Deny" -msgstr "限制" +msgstr "隐藏" #: cps/admin.py:436 cps/admin.py:442 cps/admin.py:453 cps/admin.py:464 #: cps/templates/modal_restriction.html:28 msgid "Allow" -msgstr "允许" +msgstr "显示" #: cps/admin.py:510 msgid "client_secrets.json Is Not Configured For Web Application" -msgstr "" +msgstr "client_secrets.json 未为 Web 应用程序配置" #: cps/admin.py:549 msgid "Logfile Location is not Valid, Please Enter Correct Path" -msgstr "" +msgstr "日志文件路径无效,请输入正确的路径" #: cps/admin.py:554 msgid "Access Logfile Location is not Valid, Please Enter Correct Path" -msgstr "" +msgstr "访问日志路径无效,请输入正确的路径" #: cps/admin.py:580 msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" -msgstr "" +msgstr "请输入LDAP主机、端口、DN和用户对象标识符" #: cps/admin.py:593 #, python-format msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" -msgstr "" +msgstr "LDAP组对象过滤器需要一个具有“%s”格式标识符" #: cps/admin.py:596 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" -msgstr "" +msgstr "LDAP组对象过滤器的括号不匹配" #: cps/admin.py:600 #, python-format msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" -msgstr "" +msgstr "LDAP用户对象过滤器需要一个具有“%s”格式标识符" #: cps/admin.py:603 msgid "LDAP User Object Filter Has Unmatched Parenthesis" -msgstr "" +msgstr "LDAP用户对象过滤器的括号不匹配" #: cps/admin.py:607 msgid "LDAP Certificate Location is not Valid, Please Enter Correct Path" -msgstr "" +msgstr "LDAP证书路径无效,请输入正确的路径" -#: cps/admin.py:627 +#: cps/admin.py:628 msgid "Keyfile Location is not Valid, Please Enter Correct Path" -msgstr "" +msgstr "密钥文件路径无效,请输入正确的路径" -#: cps/admin.py:631 +#: cps/admin.py:632 msgid "Certfile Location is not Valid, Please Enter Correct Path" +msgstr "证书文件路径无效,请输入正确的路径" + +#: cps/admin.py:694 cps/admin.py:793 cps/admin.py:885 cps/admin.py:934 +#: cps/shelf.py:100 cps/shelf.py:161 cps/shelf.py:202 cps/shelf.py:260 +#: cps/shelf.py:309 cps/shelf.py:338 cps/shelf.py:368 cps/shelf.py:392 +msgid "Settings DB is not Writeable" msgstr "" -#: cps/admin.py:701 +#: cps/admin.py:706 msgid "DB Location is not Valid, Please Enter Correct Path" -msgstr "" +msgstr "数据库路径无效,请输入正确的路径" -#: cps/admin.py:703 +#: cps/admin.py:708 msgid "DB is not Writeable" -msgstr "" +msgstr "数据库不可写入" -#: cps/admin.py:736 +#: cps/admin.py:741 msgid "Basic Configuration" msgstr "基本配置" -#: cps/admin.py:751 cps/web.py:1337 +#: cps/admin.py:756 cps/web.py:1334 msgid "Please fill out all fields!" -msgstr "请填写所有字段" +msgstr "请填写所有字段!" -#: cps/admin.py:754 cps/admin.py:766 cps/admin.py:772 cps/admin.py:892 +#: cps/admin.py:759 cps/admin.py:771 cps/admin.py:777 cps/admin.py:903 msgid "Add new user" msgstr "添加新用户" -#: cps/admin.py:763 cps/web.py:1578 +#: cps/admin.py:768 cps/web.py:1575 msgid "E-mail is not from valid domain" -msgstr "邮箱不在有效域中'" +msgstr "邮箱不在有效域中" -#: cps/admin.py:770 cps/admin.py:785 +#: cps/admin.py:775 cps/admin.py:790 msgid "Found an existing account for this e-mail address or nickname." -msgstr "此邮箱或昵称的账号已经存在。" +msgstr "此邮箱或用户名的账号已经存在。" -#: cps/admin.py:781 +#: cps/admin.py:786 #, python-format msgid "User '%(user)s' created" -msgstr "用户 '%(user)s' 已被创建" +msgstr "用户“%(user)s”已创建" -#: cps/admin.py:794 +#: cps/admin.py:802 #, python-format msgid "User '%(nick)s' deleted" -msgstr "用户 '%(nick)s' 已被删除" +msgstr "用户“%(nick)s”已删除" -#: cps/admin.py:797 +#: cps/admin.py:805 msgid "No admin user remaining, can't delete user" -msgstr "admin账户不存在,无法删除用户" +msgstr "管理员账户不存在,无法删除用户" -#: cps/admin.py:803 +#: cps/admin.py:811 msgid "No admin user remaining, can't remove admin role" -msgstr "" +msgstr "理员账户不存在,无法删除管理员角色" -#: cps/admin.py:839 cps/web.py:1621 +#: cps/admin.py:847 cps/web.py:1618 msgid "Found an existing account for this e-mail address." -msgstr "找到一个已有账号使用这个邮箱。" +msgstr "此邮箱的账号已经存在。" -#: cps/admin.py:849 cps/admin.py:864 cps/admin.py:967 cps/web.py:1596 +#: cps/admin.py:857 cps/admin.py:872 cps/admin.py:983 cps/web.py:1593 #, python-format msgid "Edit User %(nick)s" msgstr "编辑用户 %(nick)s" -#: cps/admin.py:855 cps/web.py:1588 +#: cps/admin.py:863 cps/web.py:1585 msgid "This username is already taken" msgstr "此用户名已被使用" -#: cps/admin.py:871 +#: cps/admin.py:879 #, python-format msgid "User '%(nick)s' updated" -msgstr "用户 '%(nick)s' 已被更新" +msgstr "用户“%(nick)s”已更新" -#: cps/admin.py:874 +#: cps/admin.py:882 msgid "An unknown error occured." msgstr "发生未知错误。" -#: cps/admin.py:901 cps/templates/admin.html:71 +#: cps/admin.py:912 cps/templates/admin.html:71 msgid "Edit E-mail Server Settings" -msgstr "修改SMTP设置" +msgstr "编辑邮件服务器设置" -#: cps/admin.py:925 +#: cps/admin.py:941 #, python-format msgid "Test e-mail successfully send to %(kindlemail)s" msgstr "测试邮件已经被成功发到 %(kindlemail)s" -#: cps/admin.py:928 +#: cps/admin.py:944 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" -msgstr "发送测试邮件出错了: %(res)s" +msgstr "发送测试邮件时出错:%(res)s" -#: cps/admin.py:930 +#: cps/admin.py:946 msgid "Please configure your e-mail address first..." -msgstr "请先配置有效的邮箱地址..." +msgstr "请先配置您的邮箱地址..." -#: cps/admin.py:932 +#: cps/admin.py:948 msgid "E-mail server settings updated" -msgstr "已更新邮件服务器设置" +msgstr "邮件服务器设置已更新" -#: cps/admin.py:943 +#: cps/admin.py:959 msgid "User not found" -msgstr "" +msgstr "找不到用户" -#: cps/admin.py:978 +#: cps/admin.py:994 #, python-format msgid "Password for user %(user)s reset" msgstr "用户 %(user)s 的密码已重置" -#: cps/admin.py:981 cps/web.py:1361 cps/web.py:1425 +#: cps/admin.py:997 cps/web.py:1358 cps/web.py:1422 msgid "An unknown error occurred. Please try again later." msgstr "发生一个未知错误,请稍后再试。" -#: cps/admin.py:984 cps/web.py:1299 +#: cps/admin.py:1000 cps/web.py:1296 msgid "Please configure the SMTP mail settings first..." -msgstr "请先配置SMTP邮箱..." +msgstr "请先配置SMTP邮箱设置..." -#: cps/admin.py:996 +#: cps/admin.py:1012 msgid "Logfile viewer" msgstr "日志文件查看器" -#: cps/admin.py:1035 +#: cps/admin.py:1051 msgid "Requesting update package" msgstr "正在请求更新包" -#: cps/admin.py:1036 +#: cps/admin.py:1052 msgid "Downloading update package" msgstr "正在下载更新包" -#: cps/admin.py:1037 +#: cps/admin.py:1053 msgid "Unzipping update package" msgstr "正在解压更新包" -#: cps/admin.py:1038 +#: cps/admin.py:1054 msgid "Replacing files" msgstr "正在替换文件" -#: cps/admin.py:1039 +#: cps/admin.py:1055 msgid "Database connections are closed" msgstr "数据库连接已关闭" -#: cps/admin.py:1040 +#: cps/admin.py:1056 msgid "Stopping server" msgstr "正在停止服务器" -#: cps/admin.py:1041 +#: cps/admin.py:1057 msgid "Update finished, please press okay and reload page" -msgstr "更新完成,请按确定并刷新页面" +msgstr "更新完成,请点击确定并刷新页面" -#: cps/admin.py:1042 cps/admin.py:1043 cps/admin.py:1044 cps/admin.py:1045 -#: cps/admin.py:1046 +#: cps/admin.py:1058 cps/admin.py:1059 cps/admin.py:1060 cps/admin.py:1061 +#: cps/admin.py:1062 msgid "Update failed:" msgstr "更新失败:" -#: cps/admin.py:1042 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522 +#: cps/admin.py:1058 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522 msgid "HTTP Error" msgstr "HTTP错误" -#: cps/admin.py:1043 cps/updater.py:321 cps/updater.py:524 +#: cps/admin.py:1059 cps/updater.py:321 cps/updater.py:524 msgid "Connection error" msgstr "连接错误" -#: cps/admin.py:1044 cps/updater.py:323 cps/updater.py:526 +#: cps/admin.py:1060 cps/updater.py:323 cps/updater.py:526 msgid "Timeout while establishing connection" msgstr "建立连接超时" -#: cps/admin.py:1045 cps/updater.py:325 cps/updater.py:528 +#: cps/admin.py:1061 cps/updater.py:325 cps/updater.py:528 msgid "General error" msgstr "一般错误" -#: cps/admin.py:1046 +#: cps/admin.py:1062 msgid "Update File Could Not be Saved in Temp Dir" -msgstr "" +msgstr "更新文件无法保存在临时目录中" #: cps/converter.py:32 msgid "not configured" -msgstr "配置为空" +msgstr "未配置" #: cps/converter.py:34 msgid "Execution permissions missing" -msgstr "" +msgstr "缺少执行权限" #: cps/editbooks.py:242 msgid "Book Format Successfully Deleted" -msgstr "" +msgstr "书籍格式已成功删除" #: cps/editbooks.py:245 msgid "Book Successfully Deleted" -msgstr "" +msgstr "书籍已成功删除" -#: cps/editbooks.py:254 cps/editbooks.py:548 cps/web.py:1644 cps/web.py:1685 -#: cps/web.py:1747 +#: cps/editbooks.py:254 cps/editbooks.py:549 cps/web.py:1641 cps/web.py:1682 +#: cps/web.py:1744 msgid "Error opening eBook. File does not exist or file is not accessible" msgstr "打开电子书出错。文件不存在或不可访问" @@ -310,89 +316,89 @@ msgstr "打开电子书出错。文件不存在或不可访问" msgid "edit metadata" msgstr "编辑元数据" -#: cps/editbooks.py:361 +#: cps/editbooks.py:360 #, python-format msgid "%(langname)s is not a valid language" msgstr "%(langname)s 不是一种有效语言" -#: cps/editbooks.py:467 cps/editbooks.py:712 +#: cps/editbooks.py:468 cps/editbooks.py:715 #, python-format msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" -msgstr "不能上传后缀为 '%(ext)s' 的文件到此服务器" +msgstr "不能上传文件扩展名为“%(ext)s”的文件到此服务器" -#: cps/editbooks.py:471 cps/editbooks.py:716 +#: cps/editbooks.py:472 cps/editbooks.py:719 msgid "File to be uploaded must have an extension" -msgstr "要上传的文件必须有一个后缀" +msgstr "要上传的文件必须具有扩展名" -#: cps/editbooks.py:483 cps/editbooks.py:773 +#: cps/editbooks.py:484 cps/editbooks.py:779 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "创建路径 %(path)s 失败(权限拒绝)。" -#: cps/editbooks.py:488 +#: cps/editbooks.py:489 #, python-format msgid "Failed to store file %(file)s." msgstr "保存文件 %(file)s 失败。" -#: cps/editbooks.py:506 cps/editbooks.py:864 +#: cps/editbooks.py:507 cps/editbooks.py:870 #, python-format msgid "Database error: %(error)s." -msgstr "" +msgstr "数据库错误:%(error)s。" -#: cps/editbooks.py:510 +#: cps/editbooks.py:511 #, python-format msgid "File format %(ext)s added to %(book)s" msgstr "已添加 %(ext)s 格式到 %(book)s" -#: cps/editbooks.py:653 +#: cps/editbooks.py:656 msgid "Metadata successfully updated" msgstr "已成功更新元数据" -#: cps/editbooks.py:662 +#: cps/editbooks.py:665 msgid "Error editing book, please check logfile for details" -msgstr "编辑书籍出错,详情请检查日志文件" +msgstr "编辑书籍出错,请检查日志文件以获取详细信息" -#: cps/editbooks.py:724 +#: cps/editbooks.py:727 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "文件 %(filename)s 无法保存到临时目录" -#: cps/editbooks.py:734 +#: cps/editbooks.py:737 msgid "Uploaded book probably exists in the library, consider to change before upload new: " -msgstr "上传的书籍可能已经存在,建议修改后重新上传:" +msgstr "上传的书籍可能已经存在,建议修改后重新上传: " -#: cps/editbooks.py:780 +#: cps/editbooks.py:786 #, python-format msgid "Failed to Move File %(file)s: %(error)s" -msgstr "" +msgstr "移动文件失败 %(file)s:%(error)s" -#: cps/editbooks.py:836 +#: cps/editbooks.py:842 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" -msgstr "" +msgstr "移动封面文件失败 %(file)s:%(error)s" -#: cps/editbooks.py:850 +#: cps/editbooks.py:856 #, python-format msgid "File %(file)s uploaded" msgstr "文件 %(file)s 已上传" -#: cps/editbooks.py:876 +#: cps/editbooks.py:882 msgid "Source or destination format for conversion missing" msgstr "转换的源或目的格式缺失" -#: cps/editbooks.py:884 +#: cps/editbooks.py:890 #, python-format msgid "Book successfully queued for converting to %(book_format)s" -msgstr "书籍已经被成功加入 %(book_format)s 的转换队列" +msgstr "书籍已经被成功加入到 %(book_format)s 格式转换队列" -#: cps/editbooks.py:888 +#: cps/editbooks.py:894 #, python-format msgid "There was an error converting this book: %(res)s" -msgstr "转换此书时出现错误: %(res)s" +msgstr "转换此书籍时出现错误: %(res)s" #: cps/gdrive.py:61 msgid "Google Drive setup not completed, try to deactivate and activate Google Drive again" -msgstr "Google Drive 没有完成,试试重新关闭Google Drive再开启" +msgstr "Google Drive 设置未完成,请尝试停用并再次激活Google云端硬盘" #: cps/gdrive.py:103 msgid "Callback domain is not verified, please follow steps to verify domain in google developer console" @@ -401,7 +407,7 @@ msgstr "回调域名尚未被校验,请在google开发者控制台按步骤校 #: cps/helper.py:79 #, python-format msgid "%(format)s format not found for book id: %(book)d" -msgstr "找不到id为 %(book)d 的书的 %(format)s 格式" +msgstr "找不到id为 %(book)d 的书籍的 %(format)s 格式" #: cps/helper.py:91 #, python-format @@ -415,12 +421,12 @@ msgstr "发送到Kindle" #: cps/helper.py:99 cps/helper.py:117 cps/helper.py:228 msgid "This e-mail has been sent via Calibre-Web." -msgstr "此邮件已经通过Calibre-Web发送" +msgstr "此邮件已经通过Calibre-Web发送。" #: cps/helper.py:110 #, python-format msgid "%(format)s not found: %(fn)s" -msgstr "找不到 %(format)s: %(fn)s" +msgstr "找不到 %(format)s:%(fn)s" #: cps/helper.py:115 msgid "Calibre-Web test e-mail" @@ -437,7 +443,7 @@ msgstr "开启Calibre-Web之旅" #: cps/helper.py:134 #, python-format msgid "Registration e-mail for user: %(name)s" -msgstr "用户 %(name)s 的注册邮箱" +msgstr "用户注册电子邮件:%(name)s" #: cps/helper.py:151 cps/helper.py:155 cps/helper.py:159 cps/helper.py:168 #: cps/helper.py:172 cps/helper.py:176 @@ -453,41 +459,41 @@ msgstr "转换 %(orig)s 到 %(format)s 并发送到Kindle" #: cps/helper.py:228 #, python-format msgid "E-mail: %(book)s" -msgstr "" +msgstr "邮件:%(book)s" #: cps/helper.py:230 msgid "The requested file could not be read. Maybe wrong permissions?" -msgstr "无法读取请求的文件。 可能有错误的权限设置?" +msgstr "无法读取请求的文件。可能有错误的权限设置?" #: cps/helper.py:300 #, python-format msgid "Deleting book %(id)s failed, path has subfolders: %(path)s" -msgstr "" +msgstr "删除书籍 %(id)s失败,路径包含子文件夹:%(path)s" #: cps/helper.py:310 #, python-format msgid "Deleting book %(id)s failed: %(message)s" -msgstr "" +msgstr "删除书籍 %(id)s失败:%(message)s" #: cps/helper.py:320 #, python-format msgid "Deleting book %(id)s, book path not valid: %(path)s" -msgstr "" +msgstr "删除书籍 %(id)s失败,书籍路径无效:%(path)s" #: cps/helper.py:355 #, python-format msgid "Rename title from: '%(src)s' to '%(dest)s' failed with error: %(error)s" -msgstr "将标题从'%(src)s'改为'%(dest)s'时失败,出错信息: %(error)s" +msgstr "将标题从“%(src)s”改为“%(dest)s”时失败,出错信息:%(error)s" #: cps/helper.py:365 #, python-format msgid "Rename author from: '%(src)s' to '%(dest)s' failed with error: %(error)s" -msgstr "将作者从'%(src)s'改为'%(dest)s'时失败,出错信息: %(error)s" +msgstr "将作者从“%(src)s”改为“%(dest)s”时失败,出错信息:%(error)s" #: cps/helper.py:379 #, python-format msgid "Rename file in path '%(src)s' to '%(dest)s' failed with error: %(error)s" -msgstr "从 '%(src)s' 重命名为 '%(dest)s' 失败,报错信息: %(error)s" +msgstr "从“%(src)s”重命名为“%(dest)s”失败,出错信息:%(error)s" #: cps/helper.py:405 cps/helper.py:415 cps/helper.py:423 #, python-format @@ -499,81 +505,81 @@ msgstr "Google Drive上找不到文件 %(file)s" msgid "Book path %(path)s not found on Google Drive" msgstr "Google Drive上找不到书籍路径 %(path)s" -#: cps/helper.py:542 +#: cps/helper.py:550 msgid "Error Downloading Cover" -msgstr "" +msgstr "下载封面时出错" -#: cps/helper.py:545 +#: cps/helper.py:553 msgid "Cover Format Error" -msgstr "" +msgstr "封面格式出错" -#: cps/helper.py:561 +#: cps/helper.py:569 msgid "Failed to create path for cover" -msgstr "" +msgstr "创建封面路径失败" -#: cps/helper.py:566 +#: cps/helper.py:574 msgid "Cover-file is not a valid image file, or could not be stored" -msgstr "" +msgstr "封面文件不是有效的图片文件,或者无法存储" -#: cps/helper.py:577 +#: cps/helper.py:585 msgid "Only jpg/jpeg/png/webp files are supported as coverfile" -msgstr "" +msgstr "仅将jpg、jpeg、png、webp文件作为封面文件" -#: cps/helper.py:591 +#: cps/helper.py:599 msgid "Only jpg/jpeg files are supported as coverfile" -msgstr "" +msgstr "仅将jpg、jpeg文件作为封面文件" -#: cps/helper.py:640 +#: cps/helper.py:648 msgid "Unrar binary file not found" -msgstr "" +msgstr "找不到Unrar执行文件" -#: cps/helper.py:654 +#: cps/helper.py:662 msgid "Error excecuting UnRar" -msgstr "" +msgstr "执行UnRar时出错" -#: cps/helper.py:710 +#: cps/helper.py:718 msgid "Waiting" msgstr "等待中" -#: cps/helper.py:712 +#: cps/helper.py:720 msgid "Failed" msgstr "失败" -#: cps/helper.py:714 +#: cps/helper.py:722 msgid "Started" msgstr "已开始" -#: cps/helper.py:716 +#: cps/helper.py:724 msgid "Finished" msgstr "已完成" -#: cps/helper.py:718 +#: cps/helper.py:726 msgid "Unknown Status" msgstr "未知状态" -#: cps/helper.py:723 +#: cps/helper.py:731 msgid "E-mail: " -msgstr "" +msgstr "邮件: " -#: cps/helper.py:725 cps/helper.py:729 +#: cps/helper.py:733 cps/helper.py:737 msgid "Convert: " -msgstr "转换:" +msgstr "转换: " -#: cps/helper.py:727 +#: cps/helper.py:735 msgid "Upload: " -msgstr "上传:" +msgstr "上传: " -#: cps/helper.py:731 +#: cps/helper.py:739 msgid "Unknown Task: " -msgstr "未知任务:" +msgstr "未知任务: " #: cps/kobo_auth.py:130 msgid "PLease access calibre-web from non localhost to get valid api_endpoint for kobo device" -msgstr "请不要使用localhost访问calibre-web,以便kobo设备能获取有效的api_endpoint" +msgstr "请不要使用localhost访问Calibre-Web,以便Kobo设备能获取有效的api_endpoint" #: cps/kobo_auth.py:133 cps/kobo_auth.py:153 msgid "Kobo Setup" -msgstr "" +msgstr "Kobo 设置" #: cps/oauth_bb.py:73 #, python-format @@ -596,34 +602,34 @@ msgstr "使用Google登录失败。" msgid "Failed to fetch user info from Google." msgstr "从Google获取用户信息失败。" -#: cps/oauth_bb.py:225 cps/web.py:1397 cps/web.py:1537 +#: cps/oauth_bb.py:225 cps/web.py:1394 cps/web.py:1534 #, python-format msgid "you are now logged in as: '%(nickname)s'" -msgstr "您现在已以'%(nickname)s'身份登录" +msgstr "您现在已以“%(nickname)s”身份登录" #: cps/oauth_bb.py:235 #, python-format msgid "Link to %(oauth)s Succeeded" -msgstr "" +msgstr "链接到%(oauth)s成功" #: cps/oauth_bb.py:241 msgid "Login failed, No User Linked With OAuth Account" -msgstr "" +msgstr "登录失败,没有用户与OAuth帐户关联" #: cps/oauth_bb.py:283 #, python-format msgid "Unlink to %(oauth)s Succeeded" -msgstr "" +msgstr "取消链接到%(oauth)s成功" #: cps/oauth_bb.py:287 #, python-format msgid "Unlink to %(oauth)s Failed" -msgstr "" +msgstr "取消链接到%(oauth)s失败" #: cps/oauth_bb.py:290 #, python-format msgid "Not Linked to %(oauth)s." -msgstr "" +msgstr "未链接到%(oauth)s。" #: cps/oauth_bb.py:318 msgid "GitHub Oauth error, please retry later." @@ -633,232 +639,232 @@ msgstr "GitHub Oauth 错误,请重试。" msgid "Google Oauth error, please retry later." msgstr "Google Oauth 错误,请重试。" -#: cps/shelf.py:66 cps/shelf.py:111 +#: cps/shelf.py:67 cps/shelf.py:120 msgid "Invalid shelf specified" msgstr "指定的书架无效" -#: cps/shelf.py:72 +#: cps/shelf.py:73 #, python-format msgid "Sorry you are not allowed to add a book to the the shelf: %(shelfname)s" msgstr "对不起,您没有添加书籍到书架 %(shelfname)s 的权限" -#: cps/shelf.py:82 +#: cps/shelf.py:83 #, python-format msgid "Book is already part of the shelf: %(shelfname)s" -msgstr "此书已经是书架 %(shelfname)s 的一部分" +msgstr "此书籍已经是书架 %(shelfname)s 的一部分" -#: cps/shelf.py:97 +#: cps/shelf.py:106 #, python-format msgid "Book has been added to shelf: %(sname)s" -msgstr "此书已被添加到书架: %(sname)s" +msgstr "此书籍已被添加到书架:%(sname)s" -#: cps/shelf.py:115 +#: cps/shelf.py:124 #, python-format msgid "You are not allowed to add a book to the the shelf: %(name)s" msgstr "您没有添加书籍到书架 %(name)s 的权限" -#: cps/shelf.py:133 +#: cps/shelf.py:142 #, python-format msgid "Books are already part of the shelf: %(name)s" msgstr "书籍已经在书架 %(name)s 中了" -#: cps/shelf.py:148 +#: cps/shelf.py:158 #, python-format msgid "Books have been added to shelf: %(sname)s" -msgstr "书籍已经被添加到书架 %(sname)s 中'" +msgstr "书籍已经被添加到书架 %(sname)s 中" -#: cps/shelf.py:150 +#: cps/shelf.py:163 #, python-format msgid "Could not add books to shelf: %(sname)s" -msgstr "无法添加书籍到书架: %(sname)s" +msgstr "无法添加书籍到书架:%(sname)s" -#: cps/shelf.py:188 +#: cps/shelf.py:208 #, python-format msgid "Book has been removed from shelf: %(sname)s" msgstr "此书已从书架 %(sname)s 中删除" -#: cps/shelf.py:196 +#: cps/shelf.py:216 #, python-format msgid "Sorry you are not allowed to remove a book from this shelf: %(sname)s" msgstr "对不起,您没有从书架 %(sname)s 中删除书籍的权限" -#: cps/shelf.py:220 cps/shelf.py:260 +#: cps/shelf.py:240 cps/shelf.py:284 #, python-format msgid "A public shelf with the name '%(title)s' already exists." -msgstr "" +msgstr "公共书架:%(title)s已经存在已经存在。" -#: cps/shelf.py:229 cps/shelf.py:270 +#: cps/shelf.py:249 cps/shelf.py:294 #, python-format msgid "A private shelf with the name '%(title)s' already exists." -msgstr "" +msgstr "私有书架:%(title)s已经存在已经存在。" -#: cps/shelf.py:236 +#: cps/shelf.py:256 #, python-format msgid "Shelf %(title)s created" -msgstr "书架 %(title)s 已被创建" +msgstr "书架 %(title)s 已创建" -#: cps/shelf.py:239 cps/shelf.py:284 +#: cps/shelf.py:263 cps/shelf.py:312 msgid "There was an error" msgstr "发生错误" -#: cps/shelf.py:240 cps/shelf.py:242 cps/templates/layout.html:144 +#: cps/shelf.py:264 cps/shelf.py:266 cps/templates/layout.html:144 msgid "Create a Shelf" msgstr "创建书架" -#: cps/shelf.py:282 +#: cps/shelf.py:306 #, python-format msgid "Shelf %(title)s changed" -msgstr "书架 %(title)s 已被修改" +msgstr "书架 %(title)s 已修改" -#: cps/shelf.py:285 cps/shelf.py:287 +#: cps/shelf.py:313 cps/shelf.py:315 msgid "Edit a shelf" msgstr "编辑书架" -#: cps/shelf.py:332 +#: cps/shelf.py:369 #, python-format msgid "Shelf: '%(name)s'" -msgstr "书架: '%(name)s'" +msgstr "书架:%(name)s" -#: cps/shelf.py:335 +#: cps/shelf.py:372 msgid "Error opening shelf. Shelf does not exist or is not accessible" msgstr "打开书架出错。书架不存在或不可访问" -#: cps/shelf.py:368 +#: cps/shelf.py:409 msgid "Hidden Book" msgstr "隐藏书籍" -#: cps/shelf.py:373 +#: cps/shelf.py:414 #, python-format msgid "Change order of Shelf: '%(name)s'" -msgstr "修改书架 '%(name)s' 顺序" +msgstr "修改书架 %(name)s 顺序" -#: cps/ub.py:64 +#: cps/ub.py:65 msgid "Recently Added" msgstr "最近添加" -#: cps/ub.py:66 +#: cps/ub.py:67 msgid "Show recent books" msgstr "显示最近书籍" -#: cps/templates/index.xml:17 cps/ub.py:67 +#: cps/templates/index.xml:17 cps/ub.py:68 msgid "Hot Books" msgstr "热门书籍" -#: cps/ub.py:69 +#: cps/ub.py:70 msgid "Show Hot Books" msgstr "显示热门书籍" -#: cps/templates/index.xml:24 cps/ub.py:71 cps/web.py:655 +#: cps/templates/index.xml:24 cps/ub.py:72 cps/web.py:652 msgid "Top Rated Books" msgstr "最高评分书籍" -#: cps/ub.py:73 +#: cps/ub.py:74 msgid "Show Top Rated Books" msgstr "显示最高评分书籍" -#: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:74 -#: cps/web.py:1222 +#: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:75 +#: cps/web.py:1219 msgid "Read Books" msgstr "已读书籍" -#: cps/ub.py:76 +#: cps/ub.py:77 msgid "Show read and unread" -msgstr "显示已读和未读" +msgstr "显示阅读状态" -#: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:78 -#: cps/web.py:1225 +#: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:79 +#: cps/web.py:1222 msgid "Unread Books" msgstr "未读书籍" -#: cps/ub.py:80 +#: cps/ub.py:81 msgid "Show unread" msgstr "显示未读" -#: cps/ub.py:81 +#: cps/ub.py:82 msgid "Discover" msgstr "发现" -#: cps/ub.py:83 +#: cps/ub.py:84 msgid "Show random books" msgstr "显示随机书籍" -#: cps/templates/index.xml:75 cps/ub.py:84 cps/web.py:970 +#: cps/templates/index.xml:75 cps/ub.py:85 cps/web.py:967 msgid "Categories" msgstr "分类" -#: cps/ub.py:86 +#: cps/ub.py:87 msgid "Show category selection" msgstr "显示分类选择" #: cps/templates/book_edit.html:84 cps/templates/index.xml:82 -#: cps/templates/search_form.html:53 cps/ub.py:87 cps/web.py:886 cps/web.py:896 +#: cps/templates/search_form.html:53 cps/ub.py:88 cps/web.py:883 cps/web.py:893 msgid "Series" msgstr "丛书" -#: cps/ub.py:89 +#: cps/ub.py:90 msgid "Show series selection" msgstr "显示丛书选择" -#: cps/templates/index.xml:61 cps/ub.py:90 +#: cps/templates/index.xml:61 cps/ub.py:91 msgid "Authors" msgstr "作者" -#: cps/ub.py:92 +#: cps/ub.py:93 msgid "Show author selection" msgstr "显示作者选择" -#: cps/templates/index.xml:68 cps/ub.py:94 cps/web.py:869 +#: cps/templates/index.xml:68 cps/ub.py:95 cps/web.py:866 msgid "Publishers" msgstr "出版社" -#: cps/ub.py:96 +#: cps/ub.py:97 msgid "Show publisher selection" msgstr "显示出版社选择" -#: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:97 -#: cps/web.py:953 +#: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:98 +#: cps/web.py:950 msgid "Languages" msgstr "语言" -#: cps/ub.py:100 +#: cps/ub.py:101 msgid "Show language selection" msgstr "显示语言选择" -#: cps/templates/index.xml:96 cps/ub.py:101 +#: cps/templates/index.xml:96 cps/ub.py:102 msgid "Ratings" msgstr "评分" -#: cps/ub.py:103 +#: cps/ub.py:104 msgid "Show ratings selection" msgstr "显示评分选择" -#: cps/templates/index.xml:104 cps/ub.py:104 +#: cps/templates/index.xml:104 cps/ub.py:105 msgid "File formats" msgstr "文件格式" -#: cps/ub.py:106 +#: cps/ub.py:107 msgid "Show file formats selection" msgstr "显示文件格式选择" -#: cps/ub.py:108 cps/web.py:1249 +#: cps/ub.py:109 cps/web.py:1246 msgid "Archived Books" -msgstr "" +msgstr "归档书籍" -#: cps/ub.py:110 +#: cps/ub.py:111 msgid "Show archived books" -msgstr "" +msgstr "显示归档书籍" #: cps/updater.py:294 cps/updater.py:305 cps/updater.py:406 cps/updater.py:420 msgid "Unexpected data while reading update information" -msgstr "读取更新信息时出现异常数据" +msgstr "读取更新信息时出现意外数据" #: cps/updater.py:301 cps/updater.py:412 msgid "No update available. You already have the latest version installed" -msgstr "没有可用更新。您已经安装了最新版本" +msgstr "无可用更新。您已经安装了最新版本" #: cps/updater.py:333 msgid "A new update is available. Click on the button below to update to the latest version." -msgstr "有一个更新可用。点击正文按钮更新到最新版本。" +msgstr "有新的更新。单击下面的按钮以更新到最新版本。" #: cps/updater.py:385 msgid "Could not fetch update information" @@ -866,238 +872,238 @@ msgstr "无法获取更新信息" #: cps/updater.py:399 msgid "No release information available" -msgstr "没有可用发布信息" +msgstr "无可用发布信息" #: cps/updater.py:456 cps/updater.py:467 cps/updater.py:486 #, python-format msgid "A new update is available. Click on the button below to update to version: %(version)s" -msgstr "一个新的更新可用。点击下面按钮更新到版本: %(version)s" +msgstr "有新的更新。单击下面的按钮以更新到版本: %(version)s" #: cps/updater.py:477 msgid "Click on the button below to update to the latest stable version." msgstr "点击下面按钮更新到最新稳定版本。" -#: cps/web.py:322 +#: cps/web.py:319 #, python-format msgid "Error: %(ldaperror)s" -msgstr "" +msgstr "错误:%(ldaperror)s" -#: cps/web.py:326 +#: cps/web.py:323 msgid "Error: No user returned in response of LDAP server" -msgstr "" +msgstr "错误:在LDAP服务器的响应中没有返回用户" -#: cps/web.py:374 +#: cps/web.py:371 msgid "Failed to Create at Least One LDAP User" -msgstr "" +msgstr "创建至少一个LDAP用户失败" -#: cps/web.py:377 +#: cps/web.py:374 msgid "At Least One LDAP User Not Found in Database" -msgstr "" +msgstr "数据库中没有找到至少一个LDAP用户" -#: cps/web.py:379 +#: cps/web.py:376 msgid "User Successfully Imported" -msgstr "" +msgstr "用户成功导入" -#: cps/web.py:625 +#: cps/web.py:622 msgid "Recently Added Books" msgstr "最近添加的书籍" -#: cps/templates/index.html:5 cps/web.py:663 +#: cps/templates/index.html:5 cps/web.py:660 msgid "Discover (Random Books)" msgstr "发现(随机书籍)" -#: cps/web.py:691 +#: cps/web.py:688 msgid "Books" -msgstr "" +msgstr "书籍" -#: cps/web.py:718 +#: cps/web.py:715 msgid "Hot Books (Most Downloaded)" msgstr "热门书籍(最多下载)" -#: cps/web.py:731 +#: cps/web.py:728 msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible" -msgstr "无法打开电子书。 文件不存在或者文件不可访问:" +msgstr "糟糕!选择书名无法打开。文件不存在或者文件不可访问" -#: cps/web.py:745 +#: cps/web.py:742 #, python-format msgid "Author: %(name)s" -msgstr "作者: %(name)s" +msgstr "作者:%(name)s" -#: cps/web.py:759 +#: cps/web.py:756 #, python-format msgid "Publisher: %(name)s" -msgstr "出版社: %(name)s" +msgstr "出版社:%(name)s" -#: cps/web.py:772 +#: cps/web.py:769 #, python-format msgid "Series: %(serie)s" -msgstr "丛书: %(serie)s" +msgstr "丛书:%(serie)s" -#: cps/web.py:785 +#: cps/web.py:782 #, python-format msgid "Rating: %(rating)s stars" -msgstr "评分: %(rating)s 星" +msgstr "评分:%(rating)s 星" -#: cps/web.py:798 +#: cps/web.py:795 #, python-format msgid "File format: %(format)s" -msgstr "文件格式: %(format)s" +msgstr "文件格式:%(format)s" -#: cps/web.py:812 +#: cps/web.py:809 #, python-format msgid "Category: %(name)s" -msgstr "分类: %(name)s" +msgstr "分类:%(name)s" -#: cps/web.py:831 +#: cps/web.py:828 #, python-format msgid "Language: %(name)s" -msgstr "语言: %(name)s" +msgstr "语言:%(name)s" -#: cps/web.py:910 +#: cps/web.py:907 msgid "Ratings list" msgstr "评分列表" -#: cps/web.py:925 +#: cps/web.py:922 msgid "File formats list" msgstr "文件格式列表" -#: cps/templates/layout.html:74 cps/templates/tasks.html:7 cps/web.py:984 +#: cps/templates/layout.html:74 cps/templates/tasks.html:7 cps/web.py:981 msgid "Tasks" -msgstr "任务" +msgstr "任务列表" #: cps/templates/book_edit.html:235 cps/templates/feed.xml:33 #: cps/templates/layout.html:45 cps/templates/layout.html:48 -#: cps/templates/search_form.html:174 cps/web.py:1010 cps/web.py:1015 +#: cps/templates/search_form.html:174 cps/web.py:1007 cps/web.py:1012 msgid "Search" msgstr "搜索" -#: cps/web.py:1066 +#: cps/web.py:1063 msgid "Published after " -msgstr "出版时晚于 " +msgstr "出版时间晚于 " -#: cps/web.py:1073 +#: cps/web.py:1070 msgid "Published before " -msgstr "出版时早于 " +msgstr "出版时间早于 " -#: cps/web.py:1087 +#: cps/web.py:1084 #, python-format msgid "Rating <= %(rating)s" msgstr "评分 <= %(rating)s" -#: cps/web.py:1089 +#: cps/web.py:1086 #, python-format msgid "Rating >= %(rating)s" msgstr "评分 >= %(rating)s" -#: cps/web.py:1158 cps/web.py:1183 +#: cps/web.py:1155 cps/web.py:1180 msgid "search" msgstr "搜索" -#: cps/web.py:1213 +#: cps/web.py:1210 #, python-format msgid "Custom Column No.%(column)d is not existing in calibre database" -msgstr "" +msgstr "自定义列号:%(column)d在Calibre数据库中不存在" -#: cps/web.py:1304 +#: cps/web.py:1301 #, python-format msgid "Book successfully queued for sending to %(kindlemail)s" -msgstr "书籍已经被成功加入 %(kindlemail)s 的发送队列" +msgstr "书籍已经成功加入 %(kindlemail)s 的发送队列" -#: cps/web.py:1308 +#: cps/web.py:1305 #, python-format msgid "Oops! There was an error sending this book: %(res)s" -msgstr "发送这本书的时候出现错误: %(res)s" +msgstr "糟糕!发送这本书籍的时候出现错误:%(res)s" -#: cps/web.py:1310 +#: cps/web.py:1307 msgid "Please update your profile with a valid Send to Kindle E-mail Address." -msgstr "请先配置您的kindle邮箱..." +msgstr "请先配置您的kindle邮箱。" -#: cps/web.py:1327 +#: cps/web.py:1324 msgid "E-Mail server is not configured, please contact your administrator!" -msgstr "邮件服务未配置,请联系网站管理员" +msgstr "邮件服务未配置,请联系网站管理员!" -#: cps/web.py:1328 cps/web.py:1338 cps/web.py:1362 cps/web.py:1366 -#: cps/web.py:1371 cps/web.py:1375 +#: cps/web.py:1325 cps/web.py:1335 cps/web.py:1359 cps/web.py:1363 +#: cps/web.py:1368 cps/web.py:1372 msgid "register" msgstr "注册" -#: cps/web.py:1364 +#: cps/web.py:1361 msgid "Your e-mail is not allowed to register" -msgstr "您的邮箱不能用来注册" +msgstr "您的电子邮件不允许注册" -#: cps/web.py:1367 +#: cps/web.py:1364 msgid "Confirmation e-mail was send to your e-mail account." msgstr "确认邮件已经发送到您的邮箱。" -#: cps/web.py:1370 +#: cps/web.py:1367 msgid "This username or e-mail address is already in use." -msgstr "这个用户名或者邮箱已经被使用。" +msgstr "这个用户名或者邮箱已被使用。" -#: cps/web.py:1387 +#: cps/web.py:1384 msgid "Cannot activate LDAP authentication" msgstr "无法激活LDAP认证" -#: cps/web.py:1404 +#: cps/web.py:1401 #, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" -msgstr "" +msgstr "后备登录“%(nickname)s”:无法访问LDAP服务器,或用户未知" -#: cps/web.py:1410 +#: cps/web.py:1407 #, python-format msgid "Could not login: %(message)s" -msgstr "" +msgstr "无法登录:%(message)s" -#: cps/web.py:1414 cps/web.py:1438 +#: cps/web.py:1411 cps/web.py:1435 msgid "Wrong Username or Password" msgstr "用户名或密码错误" -#: cps/web.py:1421 +#: cps/web.py:1418 msgid "New Password was send to your email address" msgstr "新密码已发送到您的邮箱" -#: cps/web.py:1427 +#: cps/web.py:1424 msgid "Please enter valid username to reset password" msgstr "请输入有效的用户名进行密码重置" -#: cps/web.py:1433 +#: cps/web.py:1430 #, python-format msgid "You are now logged in as: '%(nickname)s'" -msgstr "您已以 '%(nickname)s' 登录" +msgstr "您现在已以“%(nickname)s”登录" -#: cps/web.py:1442 cps/web.py:1469 +#: cps/web.py:1439 cps/web.py:1466 msgid "login" msgstr "登录" -#: cps/web.py:1481 cps/web.py:1515 +#: cps/web.py:1478 cps/web.py:1512 msgid "Token not found" msgstr "找不到Token" -#: cps/web.py:1490 cps/web.py:1523 +#: cps/web.py:1487 cps/web.py:1520 msgid "Token has expired" msgstr "Token已过期" -#: cps/web.py:1499 +#: cps/web.py:1496 msgid "Success! Please return to your device" msgstr "成功!请返回您的设备" -#: cps/web.py:1580 cps/web.py:1625 cps/web.py:1631 +#: cps/web.py:1577 cps/web.py:1622 cps/web.py:1628 #, python-format msgid "%(name)s's profile" -msgstr "%(name)s 的资料" +msgstr "%(name)s 的用户配置" -#: cps/web.py:1627 +#: cps/web.py:1624 msgid "Profile updated" msgstr "资料已更新" -#: cps/web.py:1656 cps/web.py:1659 cps/web.py:1662 cps/web.py:1669 -#: cps/web.py:1674 +#: cps/web.py:1653 cps/web.py:1656 cps/web.py:1659 cps/web.py:1666 +#: cps/web.py:1671 msgid "Read a Book" msgstr "阅读一本书" #: cps/worker.py:313 #, python-format msgid "Calibre ebook-convert %(tool)s not found" -msgstr "" +msgstr "Calibre 电子书转换器%(tool)s没有发现" #: cps/worker.py:373 #, python-format @@ -1107,12 +1113,12 @@ msgstr "电子书转换器失败: %(error)s" #: cps/worker.py:406 #, python-format msgid "Kepubify-converter failed: %(error)s" -msgstr "" +msgstr "Kepubify 转换失败:%(error)s" #: cps/worker.py:430 #, python-format msgid "Converted file not found or more than one file in folder %(folder)s" -msgstr "" +msgstr "找不到转换后的文件或文件夹%(folder)s中有多个文件" #: cps/templates/admin.html:9 msgid "Users" @@ -1122,65 +1128,65 @@ msgstr "用户列表" #: cps/templates/login.html:9 cps/templates/register.html:8 #: cps/templates/user_edit.html:9 msgid "Username" -msgstr "昵称" +msgstr "用户名" #: cps/templates/admin.html:13 cps/templates/register.html:13 #: cps/templates/user_edit.html:14 msgid "E-mail Address" -msgstr "邮箱" +msgstr "邮箱地址" #: cps/templates/admin.html:14 cps/templates/user_edit.html:27 msgid "Send to Kindle E-mail Address" -msgstr "Send to Kindle邮箱" +msgstr "接收书籍的Kindle邮箱地址" #: cps/templates/admin.html:15 msgid "Downloads" -msgstr "下载量" +msgstr "下载次数" #: cps/templates/admin.html:16 cps/templates/layout.html:77 msgid "Admin" -msgstr "管理" +msgstr "管理权限" #: cps/templates/admin.html:17 cps/templates/login.html:12 #: cps/templates/login.html:13 cps/templates/user_edit.html:22 msgid "Password" -msgstr "密码" +msgstr "有无密码" #: cps/templates/admin.html:18 cps/templates/layout.html:66 msgid "Upload" -msgstr "上传" +msgstr "上传书籍" #: cps/templates/admin.html:19 cps/templates/detail.html:18 #: cps/templates/detail.html:27 cps/templates/shelf.html:6 #: cps/templates/shelfdown.html:62 msgid "Download" -msgstr "下载" +msgstr "下载书籍" #: cps/templates/admin.html:20 msgid "View Books" -msgstr "查看电子书" +msgstr "查看书籍" #: cps/templates/admin.html:21 msgid "Edit" -msgstr "编辑" +msgstr "编辑书籍" #: cps/templates/admin.html:22 cps/templates/book_edit.html:16 #: cps/templates/book_edit.html:216 cps/templates/email_edit.html:100 #: cps/templates/user_edit.html:66 cps/templates/user_edit.html:179 msgid "Delete" -msgstr "删除" +msgstr "删除数据" #: cps/templates/admin.html:23 msgid "Public Shelf" -msgstr "" +msgstr "公共书架" #: cps/templates/admin.html:44 msgid "Add New User" -msgstr "新建用户" +msgstr "添加新用户" #: cps/templates/admin.html:46 cps/templates/admin.html:47 msgid "Import LDAP Users" -msgstr "" +msgstr "导入LDAP用户" #: cps/templates/admin.html:54 msgid "E-mail Server Settings" @@ -1188,7 +1194,7 @@ msgstr "SMTP邮件服务器设置" #: cps/templates/admin.html:57 cps/templates/email_edit.html:11 msgid "SMTP Hostname" -msgstr "SMTP地址" +msgstr "SMTP主机名" #: cps/templates/admin.html:58 cps/templates/email_edit.html:15 msgid "SMTP Port" @@ -1204,7 +1210,7 @@ msgstr "SMTP用户名" #: cps/templates/admin.html:61 cps/templates/email_edit.html:35 msgid "From E-mail" -msgstr "来自邮箱" +msgstr "发件人邮箱" #: cps/templates/admin.html:77 msgid "Configuration" @@ -1212,7 +1218,7 @@ msgstr "配置" #: cps/templates/admin.html:80 msgid "Calibre Database Directory" -msgstr "Calibre DB目录" +msgstr "Calibre 数据库路径" #: cps/templates/admin.html:84 cps/templates/config_edit.html:129 msgid "Log Level" @@ -1240,7 +1246,7 @@ msgstr "开放注册" #: cps/templates/admin.html:110 msgid "Magic Link Remote Login" -msgstr "远程登录" +msgstr "魔法链接远程登录" #: cps/templates/admin.html:114 msgid "Reverse Proxy Login" @@ -1248,15 +1254,15 @@ msgstr "反向代理登录" #: cps/templates/admin.html:119 msgid "Reverse proxy header name" -msgstr "反向代理header name" +msgstr "反向代理头部名称" #: cps/templates/admin.html:124 msgid "Edit Basic Configuration" -msgstr "修改基本配置" +msgstr "编辑基本配置" #: cps/templates/admin.html:125 msgid "Edit UI Configuration" -msgstr "修改界面配置" +msgstr "编辑界面配置" #: cps/templates/admin.html:131 msgid "Administration" @@ -1272,11 +1278,11 @@ msgstr "重新连接到Calibre数据库" #: cps/templates/admin.html:134 msgid "Restart" -msgstr "重启 Calibre-Web" +msgstr "重启" #: cps/templates/admin.html:135 msgid "Shutdown" -msgstr "停止 Calibre-Web" +msgstr "停止" #: cps/templates/admin.html:141 msgid "Update" @@ -1304,7 +1310,7 @@ msgstr "执行更新" #: cps/templates/admin.html:171 msgid "Are you sure you want to restart?" -msgstr "您确定要重启 Calibre-Web 吗?" +msgstr "您确定要重启吗?" #: cps/templates/admin.html:176 cps/templates/admin.html:190 #: cps/templates/admin.html:210 cps/templates/shelf.html:72 @@ -1322,7 +1328,7 @@ msgstr "取消" #: cps/templates/admin.html:189 msgid "Are you sure you want to shutdown?" -msgstr "您确定要关闭 Calibre-Web 吗?" +msgstr "您确定要关闭吗?" #: cps/templates/admin.html:201 msgid "Updating, please do not reload this page" @@ -1330,11 +1336,11 @@ msgstr "正在更新,请不要刷新页面" #: cps/templates/author.html:15 msgid "via" -msgstr "" +msgstr "通过" #: cps/templates/author.html:23 msgid "In Library" -msgstr "" +msgstr "在书库" #: cps/templates/author.html:34 cps/templates/book_table.html:14 #: cps/templates/grid.html:14 cps/templates/list.html:14 @@ -1347,11 +1353,11 @@ msgstr "全部" #: cps/templates/index.html:89 cps/templates/search.html:64 #: cps/templates/shelf.html:36 msgid "reduce" -msgstr "" +msgstr "减少" #: cps/templates/author.html:94 msgid "More by" -msgstr "" +msgstr "更多" #: cps/templates/book_edit.html:10 msgid "Delete Book" @@ -1367,7 +1373,7 @@ msgstr "转换书籍格式:" #: cps/templates/book_edit.html:28 msgid "Convert from:" -msgstr "从格式转换:" +msgstr "转换从:" #: cps/templates/book_edit.html:30 cps/templates/book_edit.html:37 msgid "select an option" @@ -1397,23 +1403,23 @@ msgstr "简介" #: cps/templates/book_edit.html:66 msgid "Identifiers" -msgstr "" +msgstr "书号" #: cps/templates/book_edit.html:70 cps/templates/book_edit.html:308 msgid "Identifier Type" -msgstr "" +msgstr "书号类型" #: cps/templates/book_edit.html:71 cps/templates/book_edit.html:309 msgid "Identifier Value" -msgstr "" +msgstr "书号编号" #: cps/templates/book_edit.html:72 cps/templates/book_edit.html:310 msgid "Remove" -msgstr "" +msgstr "移除" #: cps/templates/book_edit.html:76 msgid "Add Identifier" -msgstr "" +msgstr "添加书号" #: cps/templates/book_edit.html:80 cps/templates/search_form.html:33 msgid "Tags" @@ -1421,7 +1427,7 @@ msgstr "标签" #: cps/templates/book_edit.html:88 msgid "Series ID" -msgstr "" +msgstr "丛书编号" #: cps/templates/book_edit.html:92 msgid "Rating" @@ -1429,7 +1435,7 @@ msgstr "评分" #: cps/templates/book_edit.html:96 msgid "Fetch Cover from URL (JPEG - Image will be downloaded and stored in database)" -msgstr "封面URL(jpg,封面会被下载被保存在数据库中,然后字段会被重新清空)" +msgstr "从URL获取封面(JPEG - 图片将下载并存储在数据库中)" #: cps/templates/book_edit.html:100 msgid "Upload Cover from Local Disk" @@ -1456,7 +1462,7 @@ msgstr "确认" #: cps/templates/book_edit.html:127 cps/templates/search_form.html:138 msgid "No" -msgstr "无" +msgstr "没有" #: cps/templates/book_edit.html:173 msgid "Upload Format" @@ -1464,7 +1470,7 @@ msgstr "上传格式" #: cps/templates/book_edit.html:182 msgid "View Book on Save" -msgstr "编辑后查看书籍" +msgstr "查看保存书籍" #: cps/templates/book_edit.html:185 cps/templates/book_edit.html:229 msgid "Fetch Metadata" @@ -1482,7 +1488,7 @@ msgstr "您真的确认?" #: cps/templates/book_edit.html:204 msgid "This book will be permanently erased from database" -msgstr "书籍会从Calibre数据库中删除" +msgstr "此书籍将从数据库中永久删除" #: cps/templates/book_edit.html:205 msgid "and hard disk" @@ -1490,11 +1496,11 @@ msgstr ",包括从硬盘中" #: cps/templates/book_edit.html:209 msgid "Important Kobo Note: deleted books will remain on any paired Kobo device." -msgstr "" +msgstr "Kobo 重要说明:被删除的书籍将保留在任何配对的 Kobo 设备上。" #: cps/templates/book_edit.html:210 msgid "Books must first be archived and the device synced before a book can safely be deleted." -msgstr "" +msgstr "必须先将书籍存档并同步设备,然后才能安全地删除书籍。" #: cps/templates/book_edit.html:232 msgid "Keyword" @@ -1502,11 +1508,11 @@ msgstr "关键字" #: cps/templates/book_edit.html:233 msgid " Search keyword " -msgstr "搜索关键字" +msgstr " 搜索关键字 " #: cps/templates/book_edit.html:239 msgid "Click the cover to load metadata to the form" -msgstr "点击封面加载元数据到表单" +msgstr "单击封面将元数据加载到表单" #: cps/templates/book_edit.html:254 cps/templates/book_edit.html:294 msgid "Loading..." @@ -1520,15 +1526,15 @@ msgstr "关闭" #: cps/templates/book_edit.html:286 cps/templates/book_edit.html:300 msgid "Source" -msgstr "来源" +msgstr "源" #: cps/templates/book_edit.html:295 msgid "Search error!" -msgstr "搜索错误" +msgstr "搜索错误!" #: cps/templates/book_edit.html:296 msgid "No Result(s) found! Please try another keyword." -msgstr "找不到结果。请尝试另一个关键字" +msgstr "无搜索结果!请尝试另一个关键字。" #: cps/templates/config_edit.html:12 msgid "Library Configuration" @@ -1536,7 +1542,7 @@ msgstr "书库配置" #: cps/templates/config_edit.html:19 msgid "Location of Calibre Database" -msgstr "Calibre 数据库位置" +msgstr "Calibre 数据库路径" #: cps/templates/config_edit.html:28 msgid "Use Google Drive?" @@ -1560,11 +1566,11 @@ msgstr "登录后请完成Google Drive设置" #: cps/templates/config_edit.html:52 msgid "Google Drive Calibre folder" -msgstr "Google Drive Calibre 目录" +msgstr "Google Drive Calibre 路径" #: cps/templates/config_edit.html:60 msgid "Metadata Watch Channel ID" -msgstr "元数据监视频道ID" +msgstr "元数据监视通道ID" #: cps/templates/config_edit.html:63 msgid "Revoke" @@ -1580,15 +1586,15 @@ msgstr "服务器端口" #: cps/templates/config_edit.html:93 msgid "SSL certfile location (leave it empty for non-SSL Servers)" -msgstr "SSL 证书文件位置(非SSL服务器请留空)" +msgstr "SSL 证书文件路径(非SSL服务器请留空)" #: cps/templates/config_edit.html:100 msgid "SSL Keyfile location (leave it empty for non-SSL Servers)" -msgstr "SSL Key文件位置(非SSL服务器请留空)" +msgstr "SSL 密钥文件路径(非SSL服务器请留空)" #: cps/templates/config_edit.html:108 msgid "Update Channel" -msgstr "" +msgstr "更新通道" #: cps/templates/config_edit.html:110 msgid "Stable" @@ -1596,7 +1602,7 @@ msgstr "稳定版" #: cps/templates/config_edit.html:111 msgid "Nightly" -msgstr "" +msgstr "夜间版" #: cps/templates/config_edit.html:122 msgid "Logfile Configuration" @@ -1604,7 +1610,7 @@ msgstr "日志文件配置" #: cps/templates/config_edit.html:138 msgid "Location and name of logfile (calibre-web.log for no entry)" -msgstr "日志文件位置和名称(默认为calibre-web.log)" +msgstr "日志文件路径和名称(默认为calibre-web.log)" #: cps/templates/config_edit.html:143 msgid "Enable Access Log" @@ -1612,11 +1618,11 @@ msgstr "启用访问日志" #: cps/templates/config_edit.html:146 msgid "Location and name of access logfile (access.log for no entry)" -msgstr "访问日志位置和名称(默认为access.log)" +msgstr "访问日志路径和名称(默认为access.log)" #: cps/templates/config_edit.html:157 msgid "Feature Configuration" -msgstr "特性配置" +msgstr "功能配置" #: cps/templates/config_edit.html:165 msgid "Enable Uploads" @@ -1624,7 +1630,7 @@ msgstr "启用上传" #: cps/templates/config_edit.html:169 msgid "Allowed Upload Fileformats" -msgstr "" +msgstr "允许上传的文件格式" #: cps/templates/config_edit.html:175 msgid "Enable Anonymous Browsing" @@ -1636,11 +1642,11 @@ msgstr "启用注册" #: cps/templates/config_edit.html:184 msgid "Use E-Mail as Username" -msgstr "" +msgstr "使用邮箱或用户名" #: cps/templates/config_edit.html:189 msgid "Enable Magic Link Remote Login" -msgstr "启用远程登录 ('魔法链接')" +msgstr "启用魔法链接远程登录" #: cps/templates/config_edit.html:194 msgid "Enable Kobo sync" @@ -1648,7 +1654,7 @@ msgstr "启用Kobo同步" #: cps/templates/config_edit.html:199 msgid "Proxy unknown requests to Kobo Store" -msgstr "" +msgstr "代理未知请求到Kobo商店" #: cps/templates/config_edit.html:206 msgid "Use Goodreads" @@ -1656,15 +1662,15 @@ msgstr "使用Goodreads" #: cps/templates/config_edit.html:207 msgid "Create an API Key" -msgstr "获取API Key" +msgstr "创建API Key" #: cps/templates/config_edit.html:211 msgid "Goodreads API Key" -msgstr "" +msgstr "Goodreads API Key" #: cps/templates/config_edit.html:215 msgid "Goodreads API Secret" -msgstr "" +msgstr "Goodreads API Secret" #: cps/templates/config_edit.html:222 msgid "Allow Reverse Proxy Authentication" @@ -1672,7 +1678,7 @@ msgstr "允许反向代理认证方式" #: cps/templates/config_edit.html:226 msgid "Reverse Proxy Header Name" -msgstr "反向代理Header Name" +msgstr "反向代理头部名称" #: cps/templates/config_edit.html:233 msgid "Login type" @@ -1688,11 +1694,11 @@ msgstr "使用LDAP认证" #: cps/templates/config_edit.html:240 msgid "Use OAuth" -msgstr "使用OAuth" +msgstr "使用OAuth认证" #: cps/templates/config_edit.html:247 msgid "LDAP Server Host Name or IP Address" -msgstr "LDAP服务器名称或IP地址" +msgstr "LDAP服务器主机名或IP地址" #: cps/templates/config_edit.html:251 msgid "LDAP Server Port" @@ -1700,7 +1706,7 @@ msgstr "LDAP服务器端口" #: cps/templates/config_edit.html:255 msgid "LDAP Encryption" -msgstr "" +msgstr "LDAP 加密" #: cps/templates/config_edit.html:257 cps/templates/config_view_edit.html:61 #: cps/templates/email_edit.html:21 @@ -1709,31 +1715,31 @@ msgstr "无" #: cps/templates/config_edit.html:258 msgid "TLS" -msgstr "" +msgstr "TLS协议" #: cps/templates/config_edit.html:259 msgid "SSL" -msgstr "" +msgstr "SSL协议" #: cps/templates/config_edit.html:264 msgid "LDAP Certificate Path" -msgstr "" +msgstr "LDAP 证书路径" #: cps/templates/config_edit.html:269 msgid "LDAP Authentication" -msgstr "" +msgstr "LDAP 验证方式" #: cps/templates/config_edit.html:271 msgid "Anonymous" -msgstr "" +msgstr "匿名" #: cps/templates/config_edit.html:272 msgid "Unauthenticated" -msgstr "" +msgstr "无验证" #: cps/templates/config_edit.html:273 msgid "Simple" -msgstr "" +msgstr "简单" #: cps/templates/config_edit.html:278 msgid "LDAP Administrator Username" @@ -1745,66 +1751,66 @@ msgstr "LDAP管理员密码" #: cps/templates/config_edit.html:289 msgid "LDAP Distinguished Name (DN)" -msgstr "" +msgstr "LDAP专有名称(DN)" #: cps/templates/config_edit.html:293 msgid "LDAP User Object Filter" -msgstr "" +msgstr "LDAP用户对象过滤器" #: cps/templates/config_edit.html:298 msgid "LDAP Server is OpenLDAP?" -msgstr "" +msgstr "LDAP服务器是 OpenLDAP?" #: cps/templates/config_edit.html:300 msgid "Following Settings are Needed For User Import" -msgstr "" +msgstr "用户导入需要以下设置" #: cps/templates/config_edit.html:302 msgid "LDAP Group Object Filter" -msgstr "" +msgstr "LDAP组对象过滤器" #: cps/templates/config_edit.html:306 msgid "LDAP Group Name" -msgstr "" +msgstr "LDAP组名" #: cps/templates/config_edit.html:310 msgid "LDAP Group Members Field" -msgstr "" +msgstr "LDAP组成员字段" #: cps/templates/config_edit.html:319 #, python-format msgid "Obtain %(provider)s OAuth Credential" -msgstr "获取 %(provider)s OAuth Credential" +msgstr "获取 %(provider)s OAuth凭证" #: cps/templates/config_edit.html:322 #, python-format msgid "%(provider)s OAuth Client Id" -msgstr "" +msgstr "%(provider)s OAuth Client Secret" #: cps/templates/config_edit.html:326 #, python-format msgid "%(provider)s OAuth Client Secret" -msgstr "" +msgstr "%(provider)s OAuth Client Secret" #: cps/templates/config_edit.html:342 msgid "External binaries" -msgstr "外部二进制" +msgstr "扩展程序配置" #: cps/templates/config_edit.html:348 msgid "Path to Calibre E-Book Converter" -msgstr "" +msgstr "Calibre 电子书转换器路径" #: cps/templates/config_edit.html:356 msgid "Calibre E-Book Converter Settings" -msgstr "" +msgstr "Calibre 电子书转换器设置" #: cps/templates/config_edit.html:359 msgid "Path to Kepubify E-Book Converter" -msgstr "" +msgstr "KEpubify 电子书转换器路径" #: cps/templates/config_edit.html:367 msgid "Location of Unrar binary" -msgstr "Unrar二进制位置" +msgstr "Unrar程序路径" #: cps/templates/config_edit.html:390 cps/templates/layout.html:85 #: cps/templates/login.html:4 cps/templates/login.html:20 @@ -1817,7 +1823,7 @@ msgstr "查看配置" #: cps/templates/config_view_edit.html:23 cps/templates/shelf_edit.html:7 msgid "Title" -msgstr "标题" +msgstr "名称" #: cps/templates/config_view_edit.html:31 msgid "No. of Random Books to Display" @@ -1825,7 +1831,7 @@ msgstr "随机书籍显示数量" #: cps/templates/config_view_edit.html:35 msgid "No. of Authors to Display Before Hiding (0=Disable Hiding)" -msgstr "作者数量显示上限(0=不隐藏)" +msgstr "主页中书籍作者的最大显示数量(0=不隐藏)" #: cps/templates/config_view_edit.html:39 cps/templates/readcbr.html:112 msgid "Theme" @@ -1837,47 +1843,47 @@ msgstr "标准主题" #: cps/templates/config_view_edit.html:42 msgid "caliBlur! Dark Theme" -msgstr "" +msgstr "黑暗主题" #: cps/templates/config_view_edit.html:46 msgid "Regular Expression for Ignoring Columns" -msgstr "忽略列的正则表达式" +msgstr "可忽略的自定义栏目(正则表达式)" #: cps/templates/config_view_edit.html:50 msgid "Link Read/Unread Status to Calibre Column" -msgstr "链接 已读/未读 状态到Calibre栏" +msgstr "选择自定义栏目作为阅读状态" #: cps/templates/config_view_edit.html:59 msgid "View Restrictions based on Calibre column" -msgstr "根据Calibre column设定查看限制" +msgstr "选择自定义栏目作为书籍可见性" #: cps/templates/config_view_edit.html:68 msgid "Regular Expression for Title Sorting" -msgstr "标题排序的正则表达式" +msgstr "按规则提取书名后排序(正则表达式)" #: cps/templates/config_view_edit.html:80 msgid "Default Settings for New Users" -msgstr "新用户默认设置" +msgstr "新用户默认权限设置" #: cps/templates/config_view_edit.html:88 cps/templates/user_edit.html:94 msgid "Admin User" -msgstr "管理用户" +msgstr "管理员用户" #: cps/templates/config_view_edit.html:92 cps/templates/user_edit.html:99 msgid "Allow Downloads" -msgstr "允许下载" +msgstr "允许下载书籍" #: cps/templates/config_view_edit.html:96 cps/templates/user_edit.html:103 msgid "Allow eBook Viewer" -msgstr "允许eBook Viewer" +msgstr "允许在线阅读" #: cps/templates/config_view_edit.html:100 cps/templates/user_edit.html:107 msgid "Allow Uploads" -msgstr "允许上传" +msgstr "允许上传书籍" #: cps/templates/config_view_edit.html:104 cps/templates/user_edit.html:111 msgid "Allow Edit" -msgstr "允许编辑" +msgstr "允许编辑书籍" #: cps/templates/config_view_edit.html:108 cps/templates/user_edit.html:115 msgid "Allow Delete Books" @@ -1893,23 +1899,23 @@ msgstr "允许编辑公共书架" #: cps/templates/config_view_edit.html:126 msgid "Default Visibilities for New Users" -msgstr "新用户的默认显示权限" +msgstr "新用户默认显示权限" #: cps/templates/config_view_edit.html:142 cps/templates/user_edit.html:82 msgid "Show Random Books in Detail View" -msgstr "在详情页显示随机书籍" +msgstr "在主页显示随机书籍" #: cps/templates/config_view_edit.html:144 cps/templates/user_edit.html:85 msgid "Add Allowed/Denied Tags" -msgstr "添加(允许/禁止)标签" +msgstr "添加显示或隐藏书籍的标签值" #: cps/templates/config_view_edit.html:145 msgid "Add Allowed/Denied custom column values" -msgstr "添加(允许/禁止)自定义栏值" +msgstr "添加显示或隐藏书籍的自定义栏目值" #: cps/templates/detail.html:59 msgid "Read in Browser" -msgstr "在线浏览" +msgstr "在线阅读" #: cps/templates/detail.html:72 msgid "Listen in Browser" @@ -1917,15 +1923,15 @@ msgstr "在线听书" #: cps/templates/detail.html:117 msgid "Book" -msgstr "" +msgstr "丛书编号" #: cps/templates/detail.html:117 msgid "of" -msgstr "" +msgstr "在" #: cps/templates/detail.html:165 msgid "Published" -msgstr "出版" +msgstr "出版日期" #: cps/templates/detail.html:200 msgid "Mark As Unread" @@ -1941,15 +1947,15 @@ msgstr "已读" #: cps/templates/detail.html:209 msgid "Restore from archive" -msgstr "" +msgstr "从档案还原" #: cps/templates/detail.html:209 msgid "Add to archive" -msgstr "" +msgstr "添加到归档" #: cps/templates/detail.html:210 msgid "Archived" -msgstr "" +msgstr "归档" #: cps/templates/detail.html:221 msgid "Description:" @@ -1963,7 +1969,7 @@ msgstr "添加到书架" #: cps/templates/feed.xml:79 cps/templates/layout.html:137 #: cps/templates/layout.html:141 cps/templates/search.html:20 msgid "(Public)" -msgstr "" +msgstr "(公共)" #: cps/templates/detail.html:276 msgid "Edit Metadata" @@ -1971,11 +1977,11 @@ msgstr "编辑元数据" #: cps/templates/email_edit.html:22 msgid "STARTTLS" -msgstr "" +msgstr "STARTTLS协议" #: cps/templates/email_edit.html:23 msgid "SSL/TLS" -msgstr "" +msgstr "SSL/TLS协议" #: cps/templates/email_edit.html:31 msgid "SMTP Password" @@ -1983,7 +1989,7 @@ msgstr "SMTP密码" #: cps/templates/email_edit.html:38 msgid "Attachment Size Limit" -msgstr "" +msgstr "附件大小限制" #: cps/templates/email_edit.html:46 msgid "Save and Send Test E-mail" @@ -1991,7 +1997,7 @@ msgstr "保存设置并发送测试邮件" #: cps/templates/email_edit.html:51 msgid "Allowed Domains (Whitelist)" -msgstr "允许注册的域名" +msgstr "允许注册的域名(白名单)" #: cps/templates/email_edit.html:54 cps/templates/email_edit.html:80 msgid "Add Domain" @@ -2007,11 +2013,11 @@ msgstr "输入域名" #: cps/templates/email_edit.html:68 msgid "Denied Domains (Blacklist)" -msgstr "禁用的域名(黑名单)" +msgstr "禁止注册的域名(黑名单)" #: cps/templates/email_edit.html:99 msgid "Are you sure you want to delete this domain?" -msgstr "您确定要删除这条域名规则吗?" +msgstr "您确定要删除此域名吗?" #: cps/templates/feed.xml:21 cps/templates/layout.html:174 msgid "Next" @@ -2019,11 +2025,11 @@ msgstr "下一个" #: cps/templates/generate_kobo_auth_url.html:5 msgid "Open the .kobo/Kobo eReader.conf file in a text editor and add (or edit):" -msgstr "在文本编辑器中打开.kobo/Kobo eReader.conf,增加(修改为):" +msgstr "在文本编辑器中打开.kobo/Kobo eReader.conf,添加(或编辑):" #: cps/templates/http_error.html:38 msgid "Create Issue" -msgstr "创建issue" +msgstr "创建问题" #: cps/templates/http_error.html:45 msgid "Return to Home" @@ -2031,7 +2037,7 @@ msgstr "回到首页" #: cps/templates/index.html:64 msgid "Group by series" -msgstr "根据系列分组" +msgstr "根据丛书分组" #: cps/templates/index.xml:6 msgid "Start" @@ -2039,11 +2045,11 @@ msgstr "开始" #: cps/templates/index.xml:21 msgid "Popular publications from this catalog based on Downloads." -msgstr "基于下载数的热门书籍" +msgstr "基于下载数的热门书籍。" #: cps/templates/index.xml:28 msgid "Popular publications from this catalog based on Rating." -msgstr "基于评分的热门书籍" +msgstr "基于评分的热门书籍。" #: cps/templates/index.xml:31 msgid "Recently added Books" @@ -2067,7 +2073,7 @@ msgstr "书籍按作者排序" #: cps/templates/index.xml:72 msgid "Books ordered by publisher" -msgstr "书籍按出版社排版" +msgstr "书籍按出版社排序" #: cps/templates/index.xml:79 msgid "Books ordered by category" @@ -2079,23 +2085,23 @@ msgstr "书籍按丛书排序" #: cps/templates/index.xml:93 msgid "Books ordered by Languages" -msgstr "根据语言排序书籍" +msgstr "书籍按语言排序" #: cps/templates/index.xml:100 msgid "Books ordered by Rating" -msgstr "" +msgstr "书籍按评分排序" #: cps/templates/index.xml:108 msgid "Books ordered by file formats" -msgstr "根据文件类型排序书籍" +msgstr "书籍按文件格式排序" #: cps/templates/index.xml:111 cps/templates/layout.html:135 msgid "Shelves" -msgstr "" +msgstr "书架列表" #: cps/templates/index.xml:115 msgid "Books organized in shelves" -msgstr "" +msgstr "书架上的书" #: cps/templates/layout.html:29 msgid "Home" @@ -2137,7 +2143,7 @@ msgstr "注册" #: cps/templates/layout.html:117 cps/templates/layout.html:221 msgid "Uploading..." -msgstr "上传中..." +msgstr "正在上传..." #: cps/templates/layout.html:118 msgid "Please do not refresh the page" @@ -2145,7 +2151,7 @@ msgstr "请不要刷新页面" #: cps/templates/layout.html:128 msgid "Browse" -msgstr "浏览" +msgstr "按条件浏览" #: cps/templates/layout.html:139 msgid "Your Shelves" @@ -2185,35 +2191,35 @@ msgstr "通过魔法链接登录" #: cps/templates/logviewer.html:6 msgid "Show Calibre-Web Log: " -msgstr "显示Calibre-Web Log" +msgstr "显示Calibre-Web日志: " #: cps/templates/logviewer.html:8 msgid "Calibre-Web Log: " -msgstr "" +msgstr "Calibre-Web 日志: " #: cps/templates/logviewer.html:8 msgid "Stream output, can't be displayed" -msgstr "" +msgstr "输出流,无法显示" #: cps/templates/logviewer.html:12 msgid "Show Access Log: " -msgstr "显示Access Log: " +msgstr "显示访问日志: " #: cps/templates/modal_restriction.html:6 msgid "Select Allowed/Denied Tags" -msgstr "选择(允许/禁止)标签" +msgstr "选择标签值显示或隐藏书籍" #: cps/templates/modal_restriction.html:7 msgid "Select Allowed/Denied Custom Column Values" -msgstr "选择(允许/禁止)自定义栏值" +msgstr "选择自定义栏目值显示或隐藏本用户书籍" #: cps/templates/modal_restriction.html:8 msgid "Select Allowed/Denied Tags of User" -msgstr "选择(允许/禁止)用户标签" +msgstr "选择标签值显示或隐藏书籍" #: cps/templates/modal_restriction.html:9 msgid "Select Allowed/Denied Custom Column Values of User" -msgstr "选择(允许/禁止)用户自定义栏值" +msgstr "选择自定义栏目值显示或隐藏本用户书籍" #: cps/templates/modal_restriction.html:15 msgid "Enter Tag" @@ -2221,15 +2227,15 @@ msgstr "输入标签" #: cps/templates/modal_restriction.html:24 msgid "Add View Restriction" -msgstr "输入查看限制" +msgstr "添加显示或隐藏书籍的值" #: cps/templates/osd.xml:5 msgid "Calibre-Web eBook Catalog" -msgstr "Caliebre-Web电子书目录" +msgstr "Caliebre-Web电子书路径" #: cps/templates/read.html:74 msgid "Reflow text when sidebars are open." -msgstr "侧栏打开时重排文本" +msgstr "打开侧栏时重排文本。" #: cps/templates/readcbr.html:88 msgid "Keyboard Shortcuts" @@ -2333,11 +2339,11 @@ msgstr "PDF阅读器" #: cps/templates/readtxt.html:6 msgid "Basic txt Reader" -msgstr "简单txt阅读器" +msgstr "基础文本阅读器" #: cps/templates/register.html:4 msgid "Register New Account" -msgstr "注册新用户" +msgstr "注册新账号" #: cps/templates/register.html:9 msgid "Choose a username" @@ -2353,7 +2359,7 @@ msgstr "魔法链接 - 授权新设备" #: cps/templates/remote_login.html:6 msgid "On another device, login and visit:" -msgstr "在另一个设备上,登录并访问:" +msgstr "在另一个设备上,登录并访问:" #: cps/templates/remote_login.html:10 msgid "Once verified, you will automatically be logged in on this device." @@ -2365,7 +2371,7 @@ msgstr "此验证链接将在10分钟后失效。" #: cps/templates/search.html:5 msgid "No Results Found" -msgstr "搜索无结果" +msgstr "无搜索结果" #: cps/templates/search.html:6 msgid "Search Term:" @@ -2373,7 +2379,7 @@ msgstr "搜索项:" #: cps/templates/search.html:8 msgid "Results for:" -msgstr "结果:" +msgstr "结果:" #: cps/templates/search_form.html:19 msgid "Published Date From" @@ -2397,11 +2403,11 @@ msgstr "排除语言" #: cps/templates/search_form.html:95 msgid "Extensions" -msgstr "后缀名" +msgstr "扩展名" #: cps/templates/search_form.html:105 msgid "Exclude Extensions" -msgstr "排除后缀名" +msgstr "排除扩展名" #: cps/templates/search_form.html:117 msgid "Rating Above" @@ -2421,19 +2427,19 @@ msgstr "编辑书架" #: cps/templates/shelf.html:12 cps/templates/shelf_order.html:31 msgid "Change order" -msgstr "修改顺序" +msgstr "修改排序" #: cps/templates/shelf.html:67 msgid "Are you sure you want to delete this shelf?" -msgstr "您真的想要删除这个书架吗?" +msgstr "您确定要删除此书架吗?" #: cps/templates/shelf.html:70 msgid "Shelf will be deleted for all users" -msgstr "书架将会永远丢失!" +msgstr "书架将会重所有用户中删除" #: cps/templates/shelf_edit.html:13 msgid "Share with Everyone" -msgstr "要公开此书架吗?" +msgstr "书架将被公开" #: cps/templates/shelf_order.html:5 msgid "Drag to Rearrange Order" @@ -2441,31 +2447,31 @@ msgstr "拖拽以重新排序" #: cps/templates/stats.html:7 msgid "Library Statistics" -msgstr "Calibre书库统计" +msgstr "书库统计" #: cps/templates/stats.html:12 msgid "Books in this Library" -msgstr "本书在此书库" +msgstr "本书籍在此书库中" #: cps/templates/stats.html:16 msgid "Authors in this Library" -msgstr "个作者在此书库" +msgstr "位作者在此书库中" #: cps/templates/stats.html:20 msgid "Categories in this Library" -msgstr "个分类在此书库" +msgstr "种分类在此书库中" #: cps/templates/stats.html:24 msgid "Series in this Library" -msgstr "个丛书在此书库" +msgstr "套丛书在此书库中" #: cps/templates/stats.html:28 msgid "Linked Libraries" -msgstr "链接库" +msgstr "外部依赖程序" #: cps/templates/stats.html:32 msgid "Program Library" -msgstr "程序库" +msgstr "程序名称" #: cps/templates/stats.html:33 msgid "Installed Version" @@ -2473,19 +2479,19 @@ msgstr "已安装版本" #: cps/templates/tasks.html:12 msgid "User" -msgstr "用户" +msgstr "用户名称" #: cps/templates/tasks.html:14 msgid "Task" -msgstr "任务" +msgstr "任务信息" #: cps/templates/tasks.html:15 msgid "Status" -msgstr "状态" +msgstr "任务状态" #: cps/templates/tasks.html:16 msgid "Progress" -msgstr "进展" +msgstr "任务进度" #: cps/templates/tasks.html:17 msgid "Run Time" @@ -2529,15 +2535,15 @@ msgstr "取消链接" #: cps/templates/user_edit.html:63 msgid "Kobo Sync Token" -msgstr "" +msgstr "Kobo 同步 Token" #: cps/templates/user_edit.html:65 msgid "Create/View" -msgstr "新建/查看" +msgstr "新建或查看" #: cps/templates/user_edit.html:86 msgid "Add allowed/Denied Custom Column Values" -msgstr "添加(允许/禁止)自定义栏值" +msgstr "添加显示或隐藏书籍的自定义栏目值" #: cps/templates/user_edit.html:131 msgid "Delete User" @@ -2549,7 +2555,7 @@ msgstr "最近下载" #: cps/templates/user_edit.html:162 msgid "Generate Kobo Auth URL" -msgstr "生成Kobo Auth URL" +msgstr "生成Kobo Auth 地址" #: cps/templates/user_edit.html:178 msgid "Do you really want to delete the Kobo Token?" diff --git a/cps/ub.py b/cps/ub.py index d994b408..9e053bd5 100644 --- a/cps/ub.py +++ b/cps/ub.py @@ -19,6 +19,7 @@ from __future__ import division, print_function, unicode_literals import os +import sys import datetime import itertools import uuid @@ -611,9 +612,13 @@ def migrate_Database(session): session.commit() # Remove login capability of user Guest - conn = engine.connect() - conn.execute("UPDATE user SET password='' where nickname = 'Guest' and password !=''") - session.commit() + try: + conn = engine.connect() + conn.execute("UPDATE user SET password='' where nickname = 'Guest' and password !=''") + session.commit() + except exc.OperationalError: + print('Settings database is not writeable. Exiting...') + sys.exit(1) def clean_database(session): diff --git a/cps/web.py b/cps/web.py index 0e0578ea..f74c87d0 100644 --- a/cps/web.py +++ b/cps/web.py @@ -446,7 +446,7 @@ def toggle_read(book_id): new_cc = cc_class(value=1, book=book_id) calibre_db.session.add(new_cc) calibre_db.session.commit() - except KeyError: + except (KeyError, AttributeError): log.error(u"Custom Column No.%d is not exisiting in calibre database", config.config_read_column) except OperationalError as e: calibre_db.session.rollback() @@ -1252,7 +1252,7 @@ def render_read_books(page, are_read, as_xml=False, order=None, *args, **kwargs) db_filter, order, db.cc_classes[config.config_read_column]) - except KeyError: + except (KeyError, AttributeError): log.error("Custom Column No.%d is not existing in calibre database", config.config_read_column) if not as_xml: flash(_("Custom Column No.%(column)d is not existing in calibre database", @@ -1482,7 +1482,7 @@ def login(): log.info('Login failed for user "%s" IP-adress: %s', form['username'], ipAdress) flash(_(u"Wrong Username or Password"), category="error") - next_url = url_for('web.index') + next_url = request.args.get('next', default=url_for("web.index"), type=str) return render_title_template('login.html', title=_(u"login"), next_url=next_url, @@ -1759,7 +1759,7 @@ def show_book(book_id): try: matching_have_read_book = getattr(entries, 'custom_column_' + str(config.config_read_column)) have_read = len(matching_have_read_book) > 0 and matching_have_read_book[0].value - except KeyError: + except (KeyError, AttributeError): log.error("Custom Column No.%d is not existing in calibre database", config.config_read_column) have_read = None diff --git a/messages.pot b/messages.pot index c8120f61..8b630b6c 100644 --- a/messages.pot +++ b/messages.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PROJECT VERSION\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2020-06-07 06:47+0200\n" +"POT-Creation-Date: 2020-06-28 09:31+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -45,9 +45,9 @@ msgstr "" msgid "Unknown command" msgstr "" -#: cps/admin.py:116 cps/editbooks.py:563 cps/editbooks.py:573 -#: cps/editbooks.py:667 cps/editbooks.py:669 cps/editbooks.py:730 -#: cps/editbooks.py:743 cps/updater.py:509 cps/uploader.py:97 +#: cps/admin.py:116 cps/editbooks.py:564 cps/editbooks.py:576 +#: cps/editbooks.py:670 cps/editbooks.py:672 cps/editbooks.py:733 +#: cps/editbooks.py:749 cps/updater.py:509 cps/uploader.py:97 #: cps/uploader.py:107 msgid "Unknown" msgstr "" @@ -60,7 +60,7 @@ msgstr "" msgid "UI Configuration" msgstr "" -#: cps/admin.py:189 cps/admin.py:706 +#: cps/admin.py:189 cps/admin.py:711 msgid "Calibre-Web configuration updated" msgstr "" @@ -112,175 +112,181 @@ msgstr "" msgid "LDAP Certificate Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:627 +#: cps/admin.py:628 msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:631 +#: cps/admin.py:632 msgid "Certfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:701 +#: cps/admin.py:694 cps/admin.py:793 cps/admin.py:885 cps/admin.py:934 +#: cps/shelf.py:100 cps/shelf.py:161 cps/shelf.py:202 cps/shelf.py:260 +#: cps/shelf.py:309 cps/shelf.py:338 cps/shelf.py:368 cps/shelf.py:392 +msgid "Settings DB is not Writeable" +msgstr "" + +#: cps/admin.py:706 msgid "DB Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:703 +#: cps/admin.py:708 msgid "DB is not Writeable" msgstr "" -#: cps/admin.py:736 +#: cps/admin.py:741 msgid "Basic Configuration" msgstr "" -#: cps/admin.py:751 cps/web.py:1337 +#: cps/admin.py:756 cps/web.py:1334 msgid "Please fill out all fields!" msgstr "" -#: cps/admin.py:754 cps/admin.py:766 cps/admin.py:772 cps/admin.py:892 +#: cps/admin.py:759 cps/admin.py:771 cps/admin.py:777 cps/admin.py:903 msgid "Add new user" msgstr "" -#: cps/admin.py:763 cps/web.py:1578 +#: cps/admin.py:768 cps/web.py:1575 msgid "E-mail is not from valid domain" msgstr "" -#: cps/admin.py:770 cps/admin.py:785 +#: cps/admin.py:775 cps/admin.py:790 msgid "Found an existing account for this e-mail address or nickname." msgstr "" -#: cps/admin.py:781 +#: cps/admin.py:786 #, python-format msgid "User '%(user)s' created" msgstr "" -#: cps/admin.py:794 +#: cps/admin.py:802 #, python-format msgid "User '%(nick)s' deleted" msgstr "" -#: cps/admin.py:797 +#: cps/admin.py:805 msgid "No admin user remaining, can't delete user" msgstr "" -#: cps/admin.py:803 +#: cps/admin.py:811 msgid "No admin user remaining, can't remove admin role" msgstr "" -#: cps/admin.py:839 cps/web.py:1621 +#: cps/admin.py:847 cps/web.py:1618 msgid "Found an existing account for this e-mail address." msgstr "" -#: cps/admin.py:849 cps/admin.py:864 cps/admin.py:967 cps/web.py:1596 +#: cps/admin.py:857 cps/admin.py:872 cps/admin.py:983 cps/web.py:1593 #, python-format msgid "Edit User %(nick)s" msgstr "" -#: cps/admin.py:855 cps/web.py:1588 +#: cps/admin.py:863 cps/web.py:1585 msgid "This username is already taken" msgstr "" -#: cps/admin.py:871 +#: cps/admin.py:879 #, python-format msgid "User '%(nick)s' updated" msgstr "" -#: cps/admin.py:874 +#: cps/admin.py:882 msgid "An unknown error occured." msgstr "" -#: cps/admin.py:901 cps/templates/admin.html:71 +#: cps/admin.py:912 cps/templates/admin.html:71 msgid "Edit E-mail Server Settings" msgstr "" -#: cps/admin.py:925 +#: cps/admin.py:941 #, python-format msgid "Test e-mail successfully send to %(kindlemail)s" msgstr "" -#: cps/admin.py:928 +#: cps/admin.py:944 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "" -#: cps/admin.py:930 +#: cps/admin.py:946 msgid "Please configure your e-mail address first..." msgstr "" -#: cps/admin.py:932 +#: cps/admin.py:948 msgid "E-mail server settings updated" msgstr "" -#: cps/admin.py:943 +#: cps/admin.py:959 msgid "User not found" msgstr "" -#: cps/admin.py:978 +#: cps/admin.py:994 #, python-format msgid "Password for user %(user)s reset" msgstr "" -#: cps/admin.py:981 cps/web.py:1361 cps/web.py:1425 +#: cps/admin.py:997 cps/web.py:1358 cps/web.py:1422 msgid "An unknown error occurred. Please try again later." msgstr "" -#: cps/admin.py:984 cps/web.py:1299 +#: cps/admin.py:1000 cps/web.py:1296 msgid "Please configure the SMTP mail settings first..." msgstr "" -#: cps/admin.py:996 +#: cps/admin.py:1012 msgid "Logfile viewer" msgstr "" -#: cps/admin.py:1035 +#: cps/admin.py:1051 msgid "Requesting update package" msgstr "" -#: cps/admin.py:1036 +#: cps/admin.py:1052 msgid "Downloading update package" msgstr "" -#: cps/admin.py:1037 +#: cps/admin.py:1053 msgid "Unzipping update package" msgstr "" -#: cps/admin.py:1038 +#: cps/admin.py:1054 msgid "Replacing files" msgstr "" -#: cps/admin.py:1039 +#: cps/admin.py:1055 msgid "Database connections are closed" msgstr "" -#: cps/admin.py:1040 +#: cps/admin.py:1056 msgid "Stopping server" msgstr "" -#: cps/admin.py:1041 +#: cps/admin.py:1057 msgid "Update finished, please press okay and reload page" msgstr "" -#: cps/admin.py:1042 cps/admin.py:1043 cps/admin.py:1044 cps/admin.py:1045 -#: cps/admin.py:1046 +#: cps/admin.py:1058 cps/admin.py:1059 cps/admin.py:1060 cps/admin.py:1061 +#: cps/admin.py:1062 msgid "Update failed:" msgstr "" -#: cps/admin.py:1042 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522 +#: cps/admin.py:1058 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522 msgid "HTTP Error" msgstr "" -#: cps/admin.py:1043 cps/updater.py:321 cps/updater.py:524 +#: cps/admin.py:1059 cps/updater.py:321 cps/updater.py:524 msgid "Connection error" msgstr "" -#: cps/admin.py:1044 cps/updater.py:323 cps/updater.py:526 +#: cps/admin.py:1060 cps/updater.py:323 cps/updater.py:526 msgid "Timeout while establishing connection" msgstr "" -#: cps/admin.py:1045 cps/updater.py:325 cps/updater.py:528 +#: cps/admin.py:1061 cps/updater.py:325 cps/updater.py:528 msgid "General error" msgstr "" -#: cps/admin.py:1046 +#: cps/admin.py:1062 msgid "Update File Could Not be Saved in Temp Dir" msgstr "" @@ -300,8 +306,8 @@ msgstr "" msgid "Book Successfully Deleted" msgstr "" -#: cps/editbooks.py:254 cps/editbooks.py:548 cps/web.py:1644 cps/web.py:1685 -#: cps/web.py:1747 +#: cps/editbooks.py:254 cps/editbooks.py:549 cps/web.py:1641 cps/web.py:1682 +#: cps/web.py:1744 msgid "Error opening eBook. File does not exist or file is not accessible" msgstr "" @@ -309,82 +315,82 @@ msgstr "" msgid "edit metadata" msgstr "" -#: cps/editbooks.py:361 +#: cps/editbooks.py:360 #, python-format msgid "%(langname)s is not a valid language" msgstr "" -#: cps/editbooks.py:467 cps/editbooks.py:712 +#: cps/editbooks.py:468 cps/editbooks.py:715 #, python-format msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgstr "" -#: cps/editbooks.py:471 cps/editbooks.py:716 +#: cps/editbooks.py:472 cps/editbooks.py:719 msgid "File to be uploaded must have an extension" msgstr "" -#: cps/editbooks.py:483 cps/editbooks.py:773 +#: cps/editbooks.py:484 cps/editbooks.py:779 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "" -#: cps/editbooks.py:488 +#: cps/editbooks.py:489 #, python-format msgid "Failed to store file %(file)s." msgstr "" -#: cps/editbooks.py:506 cps/editbooks.py:864 +#: cps/editbooks.py:507 cps/editbooks.py:870 #, python-format msgid "Database error: %(error)s." msgstr "" -#: cps/editbooks.py:510 +#: cps/editbooks.py:511 #, python-format msgid "File format %(ext)s added to %(book)s" msgstr "" -#: cps/editbooks.py:653 +#: cps/editbooks.py:656 msgid "Metadata successfully updated" msgstr "" -#: cps/editbooks.py:662 +#: cps/editbooks.py:665 msgid "Error editing book, please check logfile for details" msgstr "" -#: cps/editbooks.py:724 +#: cps/editbooks.py:727 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "" -#: cps/editbooks.py:734 +#: cps/editbooks.py:737 msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgstr "" -#: cps/editbooks.py:780 +#: cps/editbooks.py:786 #, python-format msgid "Failed to Move File %(file)s: %(error)s" msgstr "" -#: cps/editbooks.py:836 +#: cps/editbooks.py:842 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "" -#: cps/editbooks.py:850 +#: cps/editbooks.py:856 #, python-format msgid "File %(file)s uploaded" msgstr "" -#: cps/editbooks.py:876 +#: cps/editbooks.py:882 msgid "Source or destination format for conversion missing" msgstr "" -#: cps/editbooks.py:884 +#: cps/editbooks.py:890 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "" -#: cps/editbooks.py:888 +#: cps/editbooks.py:894 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "" @@ -498,71 +504,71 @@ msgstr "" msgid "Book path %(path)s not found on Google Drive" msgstr "" -#: cps/helper.py:542 +#: cps/helper.py:550 msgid "Error Downloading Cover" msgstr "" -#: cps/helper.py:545 +#: cps/helper.py:553 msgid "Cover Format Error" msgstr "" -#: cps/helper.py:561 +#: cps/helper.py:569 msgid "Failed to create path for cover" msgstr "" -#: cps/helper.py:566 +#: cps/helper.py:574 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "" -#: cps/helper.py:577 +#: cps/helper.py:585 msgid "Only jpg/jpeg/png/webp files are supported as coverfile" msgstr "" -#: cps/helper.py:591 +#: cps/helper.py:599 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "" -#: cps/helper.py:640 +#: cps/helper.py:648 msgid "Unrar binary file not found" msgstr "" -#: cps/helper.py:654 +#: cps/helper.py:662 msgid "Error excecuting UnRar" msgstr "" -#: cps/helper.py:710 +#: cps/helper.py:718 msgid "Waiting" msgstr "" -#: cps/helper.py:712 +#: cps/helper.py:720 msgid "Failed" msgstr "" -#: cps/helper.py:714 +#: cps/helper.py:722 msgid "Started" msgstr "" -#: cps/helper.py:716 +#: cps/helper.py:724 msgid "Finished" msgstr "" -#: cps/helper.py:718 +#: cps/helper.py:726 msgid "Unknown Status" msgstr "" -#: cps/helper.py:723 +#: cps/helper.py:731 msgid "E-mail: " msgstr "" -#: cps/helper.py:725 cps/helper.py:729 +#: cps/helper.py:733 cps/helper.py:737 msgid "Convert: " msgstr "" -#: cps/helper.py:727 +#: cps/helper.py:735 msgid "Upload: " msgstr "" -#: cps/helper.py:731 +#: cps/helper.py:739 msgid "Unknown Task: " msgstr "" @@ -595,7 +601,7 @@ msgstr "" msgid "Failed to fetch user info from Google." msgstr "" -#: cps/oauth_bb.py:225 cps/web.py:1397 cps/web.py:1537 +#: cps/oauth_bb.py:225 cps/web.py:1394 cps/web.py:1534 #, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "" @@ -632,218 +638,218 @@ msgstr "" msgid "Google Oauth error, please retry later." msgstr "" -#: cps/shelf.py:66 cps/shelf.py:111 +#: cps/shelf.py:67 cps/shelf.py:120 msgid "Invalid shelf specified" msgstr "" -#: cps/shelf.py:72 +#: cps/shelf.py:73 #, python-format msgid "Sorry you are not allowed to add a book to the the shelf: %(shelfname)s" msgstr "" -#: cps/shelf.py:82 +#: cps/shelf.py:83 #, python-format msgid "Book is already part of the shelf: %(shelfname)s" msgstr "" -#: cps/shelf.py:97 +#: cps/shelf.py:106 #, python-format msgid "Book has been added to shelf: %(sname)s" msgstr "" -#: cps/shelf.py:115 +#: cps/shelf.py:124 #, python-format msgid "You are not allowed to add a book to the the shelf: %(name)s" msgstr "" -#: cps/shelf.py:133 +#: cps/shelf.py:142 #, python-format msgid "Books are already part of the shelf: %(name)s" msgstr "" -#: cps/shelf.py:148 +#: cps/shelf.py:158 #, python-format msgid "Books have been added to shelf: %(sname)s" msgstr "" -#: cps/shelf.py:150 +#: cps/shelf.py:163 #, python-format msgid "Could not add books to shelf: %(sname)s" msgstr "" -#: cps/shelf.py:188 +#: cps/shelf.py:208 #, python-format msgid "Book has been removed from shelf: %(sname)s" msgstr "" -#: cps/shelf.py:196 +#: cps/shelf.py:216 #, python-format msgid "Sorry you are not allowed to remove a book from this shelf: %(sname)s" msgstr "" -#: cps/shelf.py:220 cps/shelf.py:260 +#: cps/shelf.py:240 cps/shelf.py:284 #, python-format msgid "A public shelf with the name '%(title)s' already exists." msgstr "" -#: cps/shelf.py:229 cps/shelf.py:270 +#: cps/shelf.py:249 cps/shelf.py:294 #, python-format msgid "A private shelf with the name '%(title)s' already exists." msgstr "" -#: cps/shelf.py:236 +#: cps/shelf.py:256 #, python-format msgid "Shelf %(title)s created" msgstr "" -#: cps/shelf.py:239 cps/shelf.py:284 +#: cps/shelf.py:263 cps/shelf.py:312 msgid "There was an error" msgstr "" -#: cps/shelf.py:240 cps/shelf.py:242 cps/templates/layout.html:144 +#: cps/shelf.py:264 cps/shelf.py:266 cps/templates/layout.html:144 msgid "Create a Shelf" msgstr "" -#: cps/shelf.py:282 +#: cps/shelf.py:306 #, python-format msgid "Shelf %(title)s changed" msgstr "" -#: cps/shelf.py:285 cps/shelf.py:287 +#: cps/shelf.py:313 cps/shelf.py:315 msgid "Edit a shelf" msgstr "" -#: cps/shelf.py:332 +#: cps/shelf.py:369 #, python-format msgid "Shelf: '%(name)s'" msgstr "" -#: cps/shelf.py:335 +#: cps/shelf.py:372 msgid "Error opening shelf. Shelf does not exist or is not accessible" msgstr "" -#: cps/shelf.py:368 +#: cps/shelf.py:409 msgid "Hidden Book" msgstr "" -#: cps/shelf.py:373 +#: cps/shelf.py:414 #, python-format msgid "Change order of Shelf: '%(name)s'" msgstr "" -#: cps/ub.py:64 +#: cps/ub.py:65 msgid "Recently Added" msgstr "" -#: cps/ub.py:66 +#: cps/ub.py:67 msgid "Show recent books" msgstr "" -#: cps/templates/index.xml:17 cps/ub.py:67 +#: cps/templates/index.xml:17 cps/ub.py:68 msgid "Hot Books" msgstr "" -#: cps/ub.py:69 +#: cps/ub.py:70 msgid "Show Hot Books" msgstr "" -#: cps/templates/index.xml:24 cps/ub.py:71 cps/web.py:655 +#: cps/templates/index.xml:24 cps/ub.py:72 cps/web.py:652 msgid "Top Rated Books" msgstr "" -#: cps/ub.py:73 +#: cps/ub.py:74 msgid "Show Top Rated Books" msgstr "" -#: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:74 -#: cps/web.py:1222 +#: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:75 +#: cps/web.py:1219 msgid "Read Books" msgstr "" -#: cps/ub.py:76 +#: cps/ub.py:77 msgid "Show read and unread" msgstr "" -#: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:78 -#: cps/web.py:1225 +#: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:79 +#: cps/web.py:1222 msgid "Unread Books" msgstr "" -#: cps/ub.py:80 +#: cps/ub.py:81 msgid "Show unread" msgstr "" -#: cps/ub.py:81 +#: cps/ub.py:82 msgid "Discover" msgstr "" -#: cps/ub.py:83 +#: cps/ub.py:84 msgid "Show random books" msgstr "" -#: cps/templates/index.xml:75 cps/ub.py:84 cps/web.py:970 +#: cps/templates/index.xml:75 cps/ub.py:85 cps/web.py:967 msgid "Categories" msgstr "" -#: cps/ub.py:86 +#: cps/ub.py:87 msgid "Show category selection" msgstr "" #: cps/templates/book_edit.html:84 cps/templates/index.xml:82 -#: cps/templates/search_form.html:53 cps/ub.py:87 cps/web.py:886 cps/web.py:896 +#: cps/templates/search_form.html:53 cps/ub.py:88 cps/web.py:883 cps/web.py:893 msgid "Series" msgstr "" -#: cps/ub.py:89 +#: cps/ub.py:90 msgid "Show series selection" msgstr "" -#: cps/templates/index.xml:61 cps/ub.py:90 +#: cps/templates/index.xml:61 cps/ub.py:91 msgid "Authors" msgstr "" -#: cps/ub.py:92 +#: cps/ub.py:93 msgid "Show author selection" msgstr "" -#: cps/templates/index.xml:68 cps/ub.py:94 cps/web.py:869 +#: cps/templates/index.xml:68 cps/ub.py:95 cps/web.py:866 msgid "Publishers" msgstr "" -#: cps/ub.py:96 +#: cps/ub.py:97 msgid "Show publisher selection" msgstr "" -#: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:97 -#: cps/web.py:953 +#: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:98 +#: cps/web.py:950 msgid "Languages" msgstr "" -#: cps/ub.py:100 +#: cps/ub.py:101 msgid "Show language selection" msgstr "" -#: cps/templates/index.xml:96 cps/ub.py:101 +#: cps/templates/index.xml:96 cps/ub.py:102 msgid "Ratings" msgstr "" -#: cps/ub.py:103 +#: cps/ub.py:104 msgid "Show ratings selection" msgstr "" -#: cps/templates/index.xml:104 cps/ub.py:104 +#: cps/templates/index.xml:104 cps/ub.py:105 msgid "File formats" msgstr "" -#: cps/ub.py:106 +#: cps/ub.py:107 msgid "Show file formats selection" msgstr "" -#: cps/ub.py:108 cps/web.py:1249 +#: cps/ub.py:109 cps/web.py:1246 msgid "Archived Books" msgstr "" -#: cps/ub.py:110 +#: cps/ub.py:111 msgid "Show archived books" msgstr "" @@ -876,220 +882,220 @@ msgstr "" msgid "Click on the button below to update to the latest stable version." msgstr "" -#: cps/web.py:322 +#: cps/web.py:319 #, python-format msgid "Error: %(ldaperror)s" msgstr "" -#: cps/web.py:326 +#: cps/web.py:323 msgid "Error: No user returned in response of LDAP server" msgstr "" -#: cps/web.py:374 +#: cps/web.py:371 msgid "Failed to Create at Least One LDAP User" msgstr "" -#: cps/web.py:377 +#: cps/web.py:374 msgid "At Least One LDAP User Not Found in Database" msgstr "" -#: cps/web.py:379 +#: cps/web.py:376 msgid "User Successfully Imported" msgstr "" -#: cps/web.py:625 +#: cps/web.py:622 msgid "Recently Added Books" msgstr "" -#: cps/templates/index.html:5 cps/web.py:663 +#: cps/templates/index.html:5 cps/web.py:660 msgid "Discover (Random Books)" msgstr "" -#: cps/web.py:691 +#: cps/web.py:688 msgid "Books" msgstr "" -#: cps/web.py:718 +#: cps/web.py:715 msgid "Hot Books (Most Downloaded)" msgstr "" -#: cps/web.py:731 +#: cps/web.py:728 msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible" msgstr "" -#: cps/web.py:745 +#: cps/web.py:742 #, python-format msgid "Author: %(name)s" msgstr "" -#: cps/web.py:759 +#: cps/web.py:756 #, python-format msgid "Publisher: %(name)s" msgstr "" -#: cps/web.py:772 +#: cps/web.py:769 #, python-format msgid "Series: %(serie)s" msgstr "" -#: cps/web.py:785 +#: cps/web.py:782 #, python-format msgid "Rating: %(rating)s stars" msgstr "" -#: cps/web.py:798 +#: cps/web.py:795 #, python-format msgid "File format: %(format)s" msgstr "" -#: cps/web.py:812 +#: cps/web.py:809 #, python-format msgid "Category: %(name)s" msgstr "" -#: cps/web.py:831 +#: cps/web.py:828 #, python-format msgid "Language: %(name)s" msgstr "" -#: cps/web.py:910 +#: cps/web.py:907 msgid "Ratings list" msgstr "" -#: cps/web.py:925 +#: cps/web.py:922 msgid "File formats list" msgstr "" -#: cps/templates/layout.html:74 cps/templates/tasks.html:7 cps/web.py:984 +#: cps/templates/layout.html:74 cps/templates/tasks.html:7 cps/web.py:981 msgid "Tasks" msgstr "" #: cps/templates/book_edit.html:235 cps/templates/feed.xml:33 #: cps/templates/layout.html:45 cps/templates/layout.html:48 -#: cps/templates/search_form.html:174 cps/web.py:1010 cps/web.py:1015 +#: cps/templates/search_form.html:174 cps/web.py:1007 cps/web.py:1012 msgid "Search" msgstr "" -#: cps/web.py:1066 +#: cps/web.py:1063 msgid "Published after " msgstr "" -#: cps/web.py:1073 +#: cps/web.py:1070 msgid "Published before " msgstr "" -#: cps/web.py:1087 +#: cps/web.py:1084 #, python-format msgid "Rating <= %(rating)s" msgstr "" -#: cps/web.py:1089 +#: cps/web.py:1086 #, python-format msgid "Rating >= %(rating)s" msgstr "" -#: cps/web.py:1158 cps/web.py:1183 +#: cps/web.py:1155 cps/web.py:1180 msgid "search" msgstr "" -#: cps/web.py:1213 +#: cps/web.py:1210 #, python-format msgid "Custom Column No.%(column)d is not existing in calibre database" msgstr "" -#: cps/web.py:1304 +#: cps/web.py:1301 #, python-format msgid "Book successfully queued for sending to %(kindlemail)s" msgstr "" -#: cps/web.py:1308 +#: cps/web.py:1305 #, python-format msgid "Oops! There was an error sending this book: %(res)s" msgstr "" -#: cps/web.py:1310 +#: cps/web.py:1307 msgid "Please update your profile with a valid Send to Kindle E-mail Address." msgstr "" -#: cps/web.py:1327 +#: cps/web.py:1324 msgid "E-Mail server is not configured, please contact your administrator!" msgstr "" -#: cps/web.py:1328 cps/web.py:1338 cps/web.py:1362 cps/web.py:1366 -#: cps/web.py:1371 cps/web.py:1375 +#: cps/web.py:1325 cps/web.py:1335 cps/web.py:1359 cps/web.py:1363 +#: cps/web.py:1368 cps/web.py:1372 msgid "register" msgstr "" -#: cps/web.py:1364 +#: cps/web.py:1361 msgid "Your e-mail is not allowed to register" msgstr "" -#: cps/web.py:1367 +#: cps/web.py:1364 msgid "Confirmation e-mail was send to your e-mail account." msgstr "" -#: cps/web.py:1370 +#: cps/web.py:1367 msgid "This username or e-mail address is already in use." msgstr "" -#: cps/web.py:1387 +#: cps/web.py:1384 msgid "Cannot activate LDAP authentication" msgstr "" -#: cps/web.py:1404 +#: cps/web.py:1401 #, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgstr "" -#: cps/web.py:1410 +#: cps/web.py:1407 #, python-format msgid "Could not login: %(message)s" msgstr "" -#: cps/web.py:1414 cps/web.py:1438 +#: cps/web.py:1411 cps/web.py:1435 msgid "Wrong Username or Password" msgstr "" -#: cps/web.py:1421 +#: cps/web.py:1418 msgid "New Password was send to your email address" msgstr "" -#: cps/web.py:1427 +#: cps/web.py:1424 msgid "Please enter valid username to reset password" msgstr "" -#: cps/web.py:1433 +#: cps/web.py:1430 #, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "" -#: cps/web.py:1442 cps/web.py:1469 +#: cps/web.py:1439 cps/web.py:1466 msgid "login" msgstr "" -#: cps/web.py:1481 cps/web.py:1515 +#: cps/web.py:1478 cps/web.py:1512 msgid "Token not found" msgstr "" -#: cps/web.py:1490 cps/web.py:1523 +#: cps/web.py:1487 cps/web.py:1520 msgid "Token has expired" msgstr "" -#: cps/web.py:1499 +#: cps/web.py:1496 msgid "Success! Please return to your device" msgstr "" -#: cps/web.py:1580 cps/web.py:1625 cps/web.py:1631 +#: cps/web.py:1577 cps/web.py:1622 cps/web.py:1628 #, python-format msgid "%(name)s's profile" msgstr "" -#: cps/web.py:1627 +#: cps/web.py:1624 msgid "Profile updated" msgstr "" -#: cps/web.py:1656 cps/web.py:1659 cps/web.py:1662 cps/web.py:1669 -#: cps/web.py:1674 +#: cps/web.py:1653 cps/web.py:1656 cps/web.py:1659 cps/web.py:1666 +#: cps/web.py:1671 msgid "Read a Book" msgstr "" diff --git a/optional-requirements.txt b/optional-requirements.txt index 5cef4a05..6537a077 100644 --- a/optional-requirements.txt +++ b/optional-requirements.txt @@ -1,6 +1,6 @@ # GDrive Integration google-api-python-client==1.7.11,<1.8.0 -#gevent>=1.2.1,<20.6.0 +gevent>=1.2.1,<20.6.0 greenlet>=0.4.12,<0.5.0 httplib2>=0.9.2,<0.18.0 oauth2client>=4.0.0,<4.1.4