diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md index f59e5943ed66c6b7173d9d1c99a4be1eec40f1e0..34d2c453bd6397cca9a0855a826775f3110d207a 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 84a94cba2d9803766b394694f849760121280b3c..4fe027a21ac2abb02a11d313644e4a0f03d343a0 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 30cc918be10801296e0a48c20b6ae6b3cef16b46..91c795eabbf1d83a2155139350de7fdd8f7a5852 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 8b9880848119320d5a6a00574b268b167c4b0e78..f863db61c824f6187393a5423dec26e32cf0a5ae 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 d53044bd6b6aea0c81f1bde5bf241887fe9c66da..9ea0479d1699c40b4824195ea5ecb93c3af3faf1 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 b94634168f268cc5ecd4092aeffb05a57b6182fa..506613ebfe67bb8d84a20225164404ae48b8f699 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 b6fd0ac262f2e523216efff24e13c035aa06ab28..0933a933668b6cbf2535672a51d6d276107ddb97 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 307689304cc50a9857219806ee42cf40a3fff30c..37cfc02aa52bde6e69e43cff0ae578a56f3e75f7 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/<int:shelf_id>") @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 4711dd518df061e92d42cb6daf9aee832f2a910c..fb62424c4430591dfa5bfb7f3cb15eafd2ea3f0f 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):')}}</a> </p> <p> - {% if not warning %}'api_endpoint='{{kobo_auth_url}}{% else %}{{warning}}{% endif %}</a> + {% if not warning %}api_endpoint={{kobo_auth_url}}{% else %}{{warning}}{% endif %}</a> </p> <p> </div> diff --git a/cps/translations/cs/LC_MESSAGES/messages.mo b/cps/translations/cs/LC_MESSAGES/messages.mo index eed0c719e7d605391cdbd9f9eb44cfa20162c171..74bc33efabd204dc61f6d4379750c0e0ca906361 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 9928ff2bbb5fa0afba530795a9c1188cd953ce1d..6ef881ede2151397d2c07fec9e768c6fb16e904b 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 <lukas.heroudek@gmail.com>\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 7d06c8baf57ce14de660edede5b04c1ba0e354f6..8cda8251b51733190c8e31fe9cacf0e4d1ee9541 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 536938e3c6dcf579bc8d7ce116c241fb1ee0b740..a1372adbf0f4532e2d0a8c79f09156d5099278a8 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 5fbec266b5ef046d40ca0a6e629dd0e24f44f776..0d5a915370cdcd41e58d1784d1f3d11516c74d1d 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 4c745a11060b950c5ae4f4387fdbc49a7c1670d2..99bac86e14d627f2cb889d3a0263ff0e410050e0 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 <xxx@xxx.com>\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 5a61b9d6871df7a6316672fb1d0f0235ccee5036..7df8c7c82f36f2584fcb3aefe0b048c317a50a67 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 2fe9cc587193a59b2a7dc1232504d78284b37da1..09b133f105d3d4f02755f3c51287ccb9128674ad 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 <svalavuo@gmail.com>\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 a60b8ff1bd535eceb2e298709ea563431aa39dbb..64560b3e4ce8726a0b95eb959f0806228f7dd263 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 b5bd6e226f2e18ad32fb8e3d5a30e7a9dc274e57..6860cc5234826c02050940d23e503cbd9391f27b 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 <dekani1500@gmail.com>\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 88958bc32cadb301db9eef1a19341c56950f7d7b..99031abe11a75a4d7f0dba2316c6c5b61ef4a53e 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 a12df9d3c404ece277f04f133efef59d7580f814..0b0f71b413ddece477c715f3eb2154fd727f430d 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 afb7afafdba03822665de50446d7f1d69373961a..d9b1d59401a26127b3c67cde049d42fa446d7912 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 14493c377461ec31575ba60c5b47513ce0d71883..8c544937b2843da8870e37157e7ff5bee35791bf 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 <quimm@webtaste.com>\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 93735fd728c0e4a0f97adbe4bb06e042f1e793ad..636d38e03771d873a1fababea47e6cbed1b4a00e 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 a9c8bfd83720fb357a2a21d4c781a5acf34bcdaa..4ae537dc11d735c1e438d31821060777e648d280 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 <space_white@yahoo.com>\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 9f7892336950d316a0b80d3c3359123c1e2651fb..2db61a469712795fa51eef9148633536d529aa8f 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 c1a2b074b84347c512fad92e3aff144d6505e772..10d2d6af4c3a56fdf692976f2f7de1520ac94127 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 9c73f73d59108fa2f801621a2769a37ea49e4915..b1c4a55bfef34026bcff415239cd418fbf996b9f 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 c5482537cbfaa117e45635c5c04bb2df8c101710..4ce11eb28f07b5d3a118caee185e09121fa04c0a 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 <marcel.maas@outlook.com>\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 3c05f2a7f82747e80d4408520517c9a6e85ca508..6f3c5f96207ae14e47a12775fcd77ef0f3711545 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 2b9179806cba241f44e60902dee70d687ecb2381..e6dc6b4559b72be2a97cac6a48e7583204a18e23 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 <jerzy.piatek@gmail.com>\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 8a7658f2e21fca5f48431b93fcb424f49c4011f5..47a7b23cff33d664e265588f780049975c404545 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 60e636ccc6a12d93659e6b1ea12b3e8f61b0db40..8b265dab38ca8d2e7bbe63bffa1cb25039fa00ba 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 b1297f76e8d83ffeb4b42e94df72bb44e8cc290a..d65c43d7b9940502747af03e3b4c79a9b58e06ad 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 eb877b759106a03195ab40f70049326aafd04c58..b41fd9294298b549735cd5203f30eb4b6b724041 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 <jonatan.nyberg.karl@gmail.com>\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 b097b46ba2deafcd522bb8e6e719877d0af8b876..433bf447275f26db472f3f4f1a887d55861a153e 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 a5c068111930be6713c64b44cba2c92b190c71a7..b6ee89065beaa1746af321a8a6dff964c345ac91 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 <iz7iz7iz@protonmail.ch>\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 81ee7eeebbea2602d8390c472a559a05718fff53..cb7a81c92c9aefdb372b1f3686ab4274bcf7d99f 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 933343ef15483e4820b0354998bbe295cf83973e..41c448b22d8ae9bea716062a73980bb56b95ebe8 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 <biblio.if.abis@gmail.com>\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 da7ed62e78c640c9b547192976997847cecb591c..3c7de46662faa3494dcc9727f99728616fe87569 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 16091a5448c72afefb3d07ded47a541335d9639e..76b99287255ca21be60d4f4d8f26e2c2ea9dd118 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 <dalin.lin@gmail.com>\n" -"Language: zh_Hans_CN\n" +"Language: zh_CN\n" "Language-Team: zh_Hans_CN <LL@li.org>\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 d994b408a5480461be5562dee6e459a06f11e726..9e053bd541f16635263d2e97c803714113827396 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 0e0578eadd1bf674e12351b9cd8b5ca8bc68ac23..f74c87d0cea0f3bf4d1907d71885fd44481ddad9 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 c8120f61d170adfea5295986e009412f9eb7c4fb..8b630b6c7c04717433212170987da84a5cf7210e 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 <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <LL@li.org>\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 5cef4a05e7b81f02d1e065e0bd5e625a54976cbb..6537a0773a010d2580f5094b8956d87ed81bcd5f 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