1
0
mirror of https://github.com/janeczku/calibre-web synced 2024-11-29 04:49:58 +00:00

Merge pull request #3 from janeczku/master

Merging current upstream master
This commit is contained in:
Knepherbird 2020-05-24 15:25:49 -07:00 committed by GitHub
commit 2120d72901
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
62 changed files with 11853 additions and 3802 deletions

View File

@ -16,7 +16,7 @@ We can offer only very limited support regarding configuration of **Reverse-Prox
### **Translation** ### **Translation**
Some of the user languages in Calibre-Web having missing translations. We are happy to add the missing texts if you are translate them. Create a Pull Request, create an issue with the .po file attached, or write an email to "ozzie.fernandez.isaacs@googlemail.com" with attached translation file. To display all book languages in your native language an additional file is used (iso_language_names.py). The content of this file is autogenerated with the corresponding translations of Calibre, please do not edit this file on your own. Some of the user languages in Calibre-Web having missing translations. We are happy to add the missing texts if you translate them. Create a Pull Request, create an issue with the .po file attached, or write an email to "ozzie.fernandez.isaacs@googlemail.com" with attached translation file. To display all book languages in your native language an additional file is used (iso_language_names.py). The content of this file is autogenerated with the corresponding translations of Calibre, please do not edit this file on your own.
### **Documentation** ### **Documentation**

View File

@ -56,10 +56,17 @@ mimetypes.add_type('application/ogg', '.ogg')
mimetypes.add_type('application/ogg', '.oga') mimetypes.add_type('application/ogg', '.oga')
app = Flask(__name__) app = Flask(__name__)
app.config.update(
SESSION_COOKIE_HTTPONLY=True,
SESSION_COOKIE_SAMESITE='Lax',
REMEMBER_COOKIE_SAMESITE='Lax',
)
lm = LoginManager() lm = LoginManager()
lm.login_view = 'web.login' lm.login_view = 'web.login'
lm.anonymous_user = ub.Anonymous lm.anonymous_user = ub.Anonymous
lm.session_protection = 'strong'
ub.init_db(cli.settingspath) ub.init_db(cli.settingspath)
# pylint: disable=no-member # pylint: disable=no-member

View File

@ -178,9 +178,6 @@ def update_view_configuration():
_config_int("config_authors_max") _config_int("config_authors_max")
_config_int("config_restricted_column") _config_int("config_restricted_column")
if config.config_google_drive_watch_changes_response:
config.config_google_drive_watch_changes_response = json.dumps(config.config_google_drive_watch_changes_response)
config.config_default_role = constants.selected_roles(to_save) config.config_default_role = constants.selected_roles(to_save)
config.config_default_role &= ~constants.ROLE_ANONYMOUS config.config_default_role &= ~constants.ROLE_ANONYMOUS
@ -939,7 +936,7 @@ def reset_user_password(user_id):
if current_user is not None and current_user.is_authenticated: if current_user is not None and current_user.is_authenticated:
ret, message = reset_password(user_id) ret, message = reset_password(user_id)
if ret == 1: if ret == 1:
log.debug(u"Password for user %(user)s reset", user=message) log.debug(u"Password for user %s reset", message)
flash(_(u"Password for user %(user)s reset", user=message), category="success") flash(_(u"Password for user %(user)s reset", user=message), category="success")
elif ret == 0: elif ret == 0:
log.error(u"An unknown error occurred. Please try again later.") log.error(u"An unknown error occurred. Please try again later.")

View File

@ -279,6 +279,10 @@ class _ConfigSQL(object):
'''Apply all configuration values to the underlying storage.''' '''Apply all configuration values to the underlying storage.'''
s = self._read_from_storage() # type: _Settings s = self._read_from_storage() # type: _Settings
if self.config_google_drive_watch_changes_response:
self.config_google_drive_watch_changes_response = json.dumps(
self.config_google_drive_watch_changes_response)
for k, v in self.__dict__.items(): for k, v in self.__dict__.items():
if k[0] == '_': if k[0] == '_':
continue continue

View File

@ -110,10 +110,10 @@ except ValueError:
del env_CALIBRE_PORT del env_CALIBRE_PORT
EXTENSIONS_AUDIO = {'mp3', 'm4a', 'm4b'} EXTENSIONS_AUDIO = {'mp3', 'mp4', 'ogg', 'opus', 'wav', 'flac'}
EXTENSIONS_CONVERT = {'pdf', 'epub', 'mobi', 'azw3', 'docx', 'rtf', 'fb2', 'lit', 'lrf', 'txt', 'htmlz', 'rtf', 'odt'} EXTENSIONS_CONVERT = {'pdf', 'epub', 'mobi', 'azw3', 'docx', 'rtf', 'fb2', 'lit', 'lrf', 'txt', 'htmlz', 'rtf', 'odt'}
EXTENSIONS_UPLOAD = {'txt', 'pdf', 'epub', 'mobi', 'azw', 'azw3', 'cbr', 'cbz', 'cbt', 'djvu', 'prc', 'doc', 'docx', EXTENSIONS_UPLOAD = {'txt', 'pdf', 'epub', 'mobi', 'azw', 'azw3', 'cbr', 'cbz', 'cbt', 'djvu', 'prc', 'doc', 'docx',
'fb2', 'html', 'rtf', 'lit', 'odt', 'mp3', 'm4a', 'm4b'} 'fb2', 'html', 'rtf', 'lit', 'odt', 'mp3', 'mp4', 'ogg', 'opus', 'wav', 'flac'}
# EXTENSIONS_READER = set(['txt', 'pdf', 'epub', 'zip', 'cbz', 'tar', 'cbt'] + # EXTENSIONS_READER = set(['txt', 'pdf', 'epub', 'zip', 'cbz', 'tar', 'cbt'] +
# (['rar','cbr'] if feature_support['rar'] else [])) # (['rar','cbr'] if feature_support['rar'] else []))

View File

@ -100,14 +100,14 @@ class Identifiers(Base):
return self.type return self.type
def __repr__(self): def __repr__(self):
if self.type == "amazon": if self.type == "amazon" or self.type == "asin":
return u"https://amzn.com/{0}".format(self.val) return u"https://amzn.com/{0}".format(self.val)
elif self.type == "isbn": elif self.type == "isbn":
return u"http://www.worldcat.org/isbn/{0}".format(self.val) return u"https://www.worldcat.org/isbn/{0}".format(self.val)
elif self.type == "doi": elif self.type == "doi":
return u"http://dx.doi.org/{0}".format(self.val) return u"https://dx.doi.org/{0}".format(self.val)
elif self.type == "goodreads": elif self.type == "goodreads":
return u"http://www.goodreads.com/book/show/{0}".format(self.val) return u"https://www.goodreads.com/book/show/{0}".format(self.val)
elif self.type == "douban": elif self.type == "douban":
return u"https://book.douban.com/subject/{0}".format(self.val) return u"https://book.douban.com/subject/{0}".format(self.val)
elif self.type == "google": elif self.type == "google":
@ -115,7 +115,7 @@ class Identifiers(Base):
elif self.type == "kobo": elif self.type == "kobo":
return u"https://www.kobo.com/ebook/{0}".format(self.val) return u"https://www.kobo.com/ebook/{0}".format(self.val)
elif self.type == "lubimyczytac": elif self.type == "lubimyczytac":
return u" http://lubimyczytac.pl/ksiazka/{0}".format(self.val) return u" https://lubimyczytac.pl/ksiazka/{0}".format(self.val)
elif self.type == "url": elif self.type == "url":
return u"{0}".format(self.val) return u"{0}".format(self.val)
else: else:
@ -318,7 +318,7 @@ def update_title_sort(config, conn=None):
match = title_pat.search(title) match = title_pat.search(title)
if match: if match:
prep = match.group(1) prep = match.group(1)
title = title.replace(prep, '') + ', ' + prep title = title[len(prep):] + ', ' + prep
return title.strip() return title.strip()
conn = conn or session.connection().connection.connection conn = conn or session.connection().connection.connection

View File

@ -450,11 +450,11 @@ def reset_password(user_id):
existing_user = ub.session.query(ub.User).filter(ub.User.id == user_id).first() existing_user = ub.session.query(ub.User).filter(ub.User.id == user_id).first()
if not existing_user: if not existing_user:
return 0, None return 0, None
password = generate_random_password()
existing_user.password = generate_password_hash(password)
if not config.get_mail_server_configured(): if not config.get_mail_server_configured():
return 2, None return 2, None
try: try:
password = generate_random_password()
existing_user.password = generate_password_hash(password)
ub.session.commit() ub.session.commit()
send_registration_mail(existing_user.email, existing_user.nickname, password, True) send_registration_mail(existing_user.email, existing_user.nickname, password, True)
return 1, existing_user.nickname return 1, existing_user.nickname
@ -466,7 +466,7 @@ def reset_password(user_id):
def generate_random_password(): def generate_random_password():
s = "abcdefghijklmnopqrstuvwxyz01234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ!@#$%&*()?" s = "abcdefghijklmnopqrstuvwxyz01234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ!@#$%&*()?"
passlen = 8 passlen = 8
return "".join(random.sample(s, passlen)) return "".join(s[c % len(s)] for c in os.urandom(passlen))
################################## External interface ################################## External interface
@ -493,7 +493,7 @@ def get_cover_on_failure(use_generic_cover):
def get_book_cover(book_id): def get_book_cover(book_id):
book = db.session.query(db.Books).filter(db.Books.id == book_id).filter(common_filters()).first() book = db.session.query(db.Books).filter(db.Books.id == book_id).filter(common_filters(allow_show_archived=True)).first()
return get_book_cover_internal(book, use_generic_cover_on_failure=True) return get_book_cover_internal(book, use_generic_cover_on_failure=True)
@ -609,7 +609,9 @@ def do_download_file(book, book_format, data, headers):
# ToDo: improve error handling # ToDo: improve error handling
log.error('File not found: %s', os.path.join(filename, data.name + "." + book_format)) log.error('File not found: %s', os.path.join(filename, data.name + "." + book_format))
response = make_response(send_from_directory(filename, data.name + "." + book_format)) response = make_response(send_from_directory(filename, data.name + "." + book_format))
response.headers = headers # ToDo Check headers parameter
for element in headers:
response.headers[element[0]] = element[1]
return response return response
################################## ##################################
@ -822,12 +824,12 @@ def fill_indexpage_with_archived_books(page, database, db_filter, order, allow_s
else: else:
randm = false() randm = false()
off = int(int(config.config_books_per_page) * (page - 1)) off = int(int(config.config_books_per_page) * (page - 1))
query = db.session.query(database).join(*join, isouter=True).\
filter(db_filter).\
filter(common_filters(allow_show_archived))
pagination = Pagination(page, config.config_books_per_page, pagination = Pagination(page, config.config_books_per_page,
len(db.session.query(database).filter(db_filter) len(query.all()))
.filter(common_filters(allow_show_archived)).all())) entries = query.order_by(*order).offset(off).limit(config.config_books_per_page).all()
entries = db.session.query(database).join(*join, isouter=True).filter(db_filter)\
.filter(common_filters(allow_show_archived))\
.order_by(*order).offset(off).limit(config.config_books_per_page).all()
for book in entries: for book in entries:
book = order_authors(book) book = order_authors(book)
return entries, randm, pagination return entries, randm, pagination

View File

@ -332,6 +332,9 @@ def get_series(book):
return None return None
return book.series[0].name return book.series[0].name
def get_seriesindex(book):
return book.series_index or 1
def get_metadata(book): def get_metadata(book):
download_urls = [] download_urls = []
@ -386,8 +389,8 @@ def get_metadata(book):
name = get_series(book) name = get_series(book)
metadata["Series"] = { metadata["Series"] = {
"Name": get_series(book), "Name": get_series(book),
"Number": book.series_index, # ToDo Check int() ? "Number": get_seriesindex(book), # ToDo Check int() ?
"NumberFloat": float(book.series_index), "NumberFloat": float(get_seriesindex(book)),
# Get a deterministic id based on the series name. # Get a deterministic id based on the series name.
"Id": uuid.uuid3(uuid.NAMESPACE_DNS, name), "Id": uuid.uuid3(uuid.NAMESPACE_DNS, name),
} }
@ -979,7 +982,7 @@ def NATIVE_KOBO_RESOURCES():
"blackstone_header": {"key": "x-amz-request-payer", "value": "requester"}, "blackstone_header": {"key": "x-amz-request-payer", "value": "requester"},
"book": "https://storeapi.kobo.com/v1/products/books/{ProductId}", "book": "https://storeapi.kobo.com/v1/products/books/{ProductId}",
"book_detail_page": "https://store.kobobooks.com/{culture}/ebook/{slug}", "book_detail_page": "https://store.kobobooks.com/{culture}/ebook/{slug}",
"book_detail_page_rakuten": "http://books.rakuten.co.jp/rk/{crossrevisionid}", "book_detail_page_rakuten": "https://books.rakuten.co.jp/rk/{crossrevisionid}",
"book_landing_page": "https://store.kobobooks.com/ebooks", "book_landing_page": "https://store.kobobooks.com/ebooks",
"book_subscription": "https://storeapi.kobo.com/v1/products/books/subscriptions", "book_subscription": "https://storeapi.kobo.com/v1/products/books/subscriptions",
"categories": "https://storeapi.kobo.com/v1/categories", "categories": "https://storeapi.kobo.com/v1/categories",
@ -1017,7 +1020,7 @@ def NATIVE_KOBO_RESOURCES():
"get_tests_request": "https://storeapi.kobo.com/v1/analytics/gettests", "get_tests_request": "https://storeapi.kobo.com/v1/analytics/gettests",
"giftcard_epd_redeem_url": "https://www.kobo.com/{storefront}/{language}/redeem-ereader", "giftcard_epd_redeem_url": "https://www.kobo.com/{storefront}/{language}/redeem-ereader",
"giftcard_redeem_url": "https://www.kobo.com/{storefront}/{language}/redeem", "giftcard_redeem_url": "https://www.kobo.com/{storefront}/{language}/redeem",
"help_page": "http://www.kobo.com/help", "help_page": "https://www.kobo.com/help",
"kobo_audiobooks_enabled": "False", "kobo_audiobooks_enabled": "False",
"kobo_audiobooks_orange_deal_enabled": "False", "kobo_audiobooks_orange_deal_enabled": "False",
"kobo_audiobooks_subscriptions_enabled": "False", "kobo_audiobooks_subscriptions_enabled": "False",

View File

@ -121,7 +121,11 @@ kobo_auth = Blueprint("kobo_auth", __name__, url_prefix="/kobo_auth")
@kobo_auth.route("/generate_auth_token/<int:user_id>") @kobo_auth.route("/generate_auth_token/<int:user_id>")
@login_required @login_required
def generate_auth_token(user_id): def generate_auth_token(user_id):
host = ':'.join(request.host.rsplit(':')[0:-1]) host_list = request.host.rsplit(':')
if len(host_list) == 1:
host = ':'.join(host_list)
else:
host = ':'.join(host_list[0:-1])
if host.startswith('127.') or host.lower() == 'localhost' or host.startswith('[::ffff:7f'): if host.startswith('127.') or host.lower() == 'localhost' or host.startswith('[::ffff:7f'):
warning = _('PLease access calibre-web from non localhost to get valid api_endpoint for kobo device') warning = _('PLease access calibre-web from non localhost to get valid api_endpoint for kobo device')
return render_title_template( return render_title_template(

View File

@ -40,7 +40,7 @@ try:
Stores and retrieves OAuth tokens using a relational database through Stores and retrieves OAuth tokens using a relational database through
the `SQLAlchemy`_ ORM. the `SQLAlchemy`_ ORM.
.. _SQLAlchemy: http://www.sqlalchemy.org/ .. _SQLAlchemy: https://www.sqlalchemy.org/
""" """
def __init__(self, model, session, provider_id, def __init__(self, model, session, provider_id,
user=None, user_id=None, user_required=None, anon_user=None, user=None, user_id=None, user_required=None, anon_user=None,

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -124,7 +124,7 @@ $(function() {
if (field === 3) { if (field === 3) {
$.ajax ({ $.ajax ({
type: "Post", type: "Post",
data: "id=" + row.id + "&type=" + row.type + "&Element=" + row.Element, data: "id=" + row.id + "&type=" + row.type + "&Element=" + encodeURIComponent(row.Element),
url: path + "/../../ajax/deleterestriction/" + type, url: path + "/../../ajax/deleterestriction/" + type,
async: true, async: true,
timeout: 900, timeout: 900,

View File

@ -305,8 +305,8 @@
// create a random identifier type to have a valid name in form. This will not be used when dealing with the form // create a random identifier type to have a valid name in form. This will not be used when dealing with the form
var rand_id = Math.floor(Math.random() * 1000000).toString(); var rand_id = Math.floor(Math.random() * 1000000).toString();
var line = '<tr>'; var line = '<tr>';
line += '<td><input type="text" class="form-control" name="identifier-type-'+ rand_id +'" required="required" placeholder="{{_('Identifier Type')}}"></td>'; line += '<td><input type="text" class="form-control" name="identifier-type-'+ rand_id +'" required="required" placeholder={{_('Identifier Type')|safe|tojson}}></td>';
line += '<td><input type="text" class="form-control" name="identifier-val-'+ rand_id +'" required="required" placeholder="{{_('Identifier Value')}}"></td>'; line += '<td><input type="text" class="form-control" name="identifier-val-'+ rand_id +'" required="required" placeholder={{_('Identifier Value')|safe|tojson}}></td>';
line += '<td><a class="btn btn-default" onclick="removeIdentifierLine(this)">{{_('Remove')}}</a></td>'; line += '<td><a class="btn btn-default" onclick="removeIdentifierLine(this)">{{_('Remove')}}</a></td>';
line += '</tr>'; line += '</tr>';
$("#identifier-table").append(line); $("#identifier-table").append(line);

View File

@ -240,7 +240,7 @@
data-remove-href="{{ url_for('shelf.remove_from_shelf', book_id=entry.id, shelf_id=shelf.id) }}" data-remove-href="{{ url_for('shelf.remove_from_shelf', book_id=entry.id, shelf_id=shelf.id) }}"
data-shelf-action="add" data-shelf-action="add"
> >
{{shelf.name}} {{shelf.name}}{% if shelf.is_public == 1 %} {{_('(Public)')}}{% endif %}
</a> </a>
</li> </li>
{% endif %} {% endif %}
@ -257,7 +257,7 @@
> >
<span {% if not shelf.is_public or g.user.role_edit_shelfs() %} <span {% if not shelf.is_public or g.user.role_edit_shelfs() %}
class="glyphicon glyphicon-remove" class="glyphicon glyphicon-remove"
{% endif %}></span> {{shelf.name}} {% endif %}></span> {{shelf.name}}{% if shelf.is_public == 1 %} {{_('(Public)')}}{% endif %}
</a> </a>
{% endif %} {% endif %}
{%endfor%} {%endfor%}

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/terms/"> <feed xmlns="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/terms/" xmlns:dcterms="http://purl.org/dc/terms/">
<id>urn:uuid:2853dacf-ed79-42f5-8e8a-a7bb3d1ae6a2</id> <id>urn:uuid:2853dacf-ed79-42f5-8e8a-a7bb3d1ae6a2</id>
<updated>{{ current_time }}</updated> <updated>{{ current_time }}</updated>
<link rel="self" <link rel="self"

View File

@ -227,7 +227,9 @@
$(document).ready(function() { $(document).ready(function() {
var inp = $('#query').first() var inp = $('#query').first()
var val = inp.val() var val = inp.val()
if (val.length) {
inp.val('').blur().focus().val(val) inp.val('').blur().focus().val(val)
}
}); });
}); });
</script> </script>

View File

@ -15,13 +15,10 @@
<span class="caret"></span> <span class="caret"></span>
</button> </button>
<ul id="add-to-shelves" class="dropdown-menu" aria-labelledby="add-to-shelf"> <ul id="add-to-shelves" class="dropdown-menu" aria-labelledby="add-to-shelf">
{% for shelf in g.user.shelf %}
{% if shelf.is_public != 1 %}
<li><a href="{{ url_for('shelf.search_to_shelf', shelf_id=shelf.id) }}"> {{shelf.name}}</a></li>
{% endif %}
{% endfor %}
{% for shelf in g.shelves_access %} {% for shelf in g.shelves_access %}
<li><a href="{{ url_for('shelf.search_to_shelf', shelf_id=shelf.id) }}">{{shelf.name}}</a></li> {% if not shelf.id in books_shelfs and ( not shelf.is_public or g.user.role_edit_shelfs() ) %}
<li><a href="{{ url_for('shelf.search_to_shelf', shelf_id=shelf.id) }}"> {{shelf.name}}{% if shelf.is_public == 1 %} {{_('(Public)')}}{% endif %}</a></li>
{% endif %}
{%endfor%} {%endfor%}
</ul> </ul>
</div> </div>

View File

@ -143,6 +143,10 @@
<input type="number" step="1" class="form-control" name="{{ 'custom_column_' ~ c.id }}" id="{{ 'custom_column_' ~ c.id }}" value=""> <input type="number" step="1" class="form-control" name="{{ 'custom_column_' ~ c.id }}" id="{{ 'custom_column_' ~ c.id }}" value="">
{% endif %} {% endif %}
{% if c.datatype == 'float' %}
<input type="number" step="0.01" class="form-control" name="{{ 'custom_column_' ~ c.id }}" id="{{ 'custom_column_' ~ c.id }}" value="">
{% endif %}
{% if c.datatype in ['text', 'series'] and not c.is_multiple %} {% if c.datatype in ['text', 'series'] and not c.is_multiple %}
<input type="text" class="form-control" name="{{ 'custom_column_' ~ c.id }}" id="{{ 'custom_column_' ~ c.id }}" value=""> <input type="text" class="form-control" name="{{ 'custom_column_' ~ c.id }}" id="{{ 'custom_column_' ~ c.id }}" value="">
{% endif %} {% endif %}

View File

@ -6,7 +6,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Calibre-Web\n" "Project-Id-Version: Calibre-Web\n"
"Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n" "Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n"
"POT-Creation-Date: 2020-05-01 17:15+0200\n" "POT-Creation-Date: 2020-05-23 08:46+0200\n"
"PO-Revision-Date: 2020-01-08 11:37+0000\n" "PO-Revision-Date: 2020-01-08 11:37+0000\n"
"Last-Translator: Lukas Heroudek <lukas.heroudek@gmail.com>\n" "Last-Translator: Lukas Heroudek <lukas.heroudek@gmail.com>\n"
"Language: cs_CZ\n" "Language: cs_CZ\n"
@ -45,9 +45,9 @@ msgstr ""
msgid "Unknown command" msgid "Unknown command"
msgstr "" msgstr ""
#: cps/admin.py:115 cps/editbooks.py:504 cps/editbooks.py:514 #: cps/admin.py:115 cps/editbooks.py:505 cps/editbooks.py:515
#: cps/editbooks.py:620 cps/editbooks.py:622 cps/editbooks.py:688 #: cps/editbooks.py:621 cps/editbooks.py:623 cps/editbooks.py:689
#: cps/updater.py:509 cps/uploader.py:99 cps/uploader.py:110 #: cps/updater.py:509 cps/uploader.py:100 cps/uploader.py:110
msgid "Unknown" msgid "Unknown"
msgstr "Neznámý" msgstr "Neznámý"
@ -59,223 +59,223 @@ msgstr "Stránka správce"
msgid "UI Configuration" msgid "UI Configuration"
msgstr "Konfigurace uživatelského rozhraní" msgstr "Konfigurace uživatelského rozhraní"
#: cps/admin.py:192 cps/admin.py:674 #: cps/admin.py:189 cps/admin.py:671
msgid "Calibre-Web configuration updated" msgid "Calibre-Web configuration updated"
msgstr "Konfigurace Calibre-Web aktualizována" msgstr "Konfigurace Calibre-Web aktualizována"
#: cps/admin.py:438 cps/admin.py:444 cps/admin.py:455 cps/admin.py:466 #: cps/admin.py:435 cps/admin.py:441 cps/admin.py:452 cps/admin.py:463
#: cps/templates/modal_restriction.html:29 #: cps/templates/modal_restriction.html:29
msgid "Deny" msgid "Deny"
msgstr "" msgstr ""
#: cps/admin.py:440 cps/admin.py:446 cps/admin.py:457 cps/admin.py:468 #: cps/admin.py:437 cps/admin.py:443 cps/admin.py:454 cps/admin.py:465
#: cps/templates/modal_restriction.html:28 #: cps/templates/modal_restriction.html:28
msgid "Allow" msgid "Allow"
msgstr "" msgstr ""
#: cps/admin.py:509 #: cps/admin.py:506
msgid "client_secrets.json Is Not Configured For Web Application" msgid "client_secrets.json Is Not Configured For Web Application"
msgstr "" msgstr ""
#: cps/admin.py:525 #: cps/admin.py:522
msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgid "Keyfile Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:529 #: cps/admin.py:526
msgid "Certfile Location is not Valid, Please Enter Correct Path" msgid "Certfile Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:567 #: cps/admin.py:564
msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier"
msgstr "" msgstr ""
#: cps/admin.py:585 #: cps/admin.py:582
#, python-format #, python-format
msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier"
msgstr "" msgstr ""
#: cps/admin.py:588 #: cps/admin.py:585
msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgid "LDAP Group Object Filter Has Unmatched Parenthesis"
msgstr "" msgstr ""
#: cps/admin.py:592 #: cps/admin.py:589
#, python-format #, python-format
msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier"
msgstr "" msgstr ""
#: cps/admin.py:595 #: cps/admin.py:592
msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgid "LDAP User Object Filter Has Unmatched Parenthesis"
msgstr "" msgstr ""
#: cps/admin.py:599 #: cps/admin.py:596
msgid "LDAP Certificate Location is not Valid, Please Enter Correct Path" msgid "LDAP Certificate Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:647 #: cps/admin.py:644
msgid "Logfile Location is not Valid, Please Enter Correct Path" msgid "Logfile Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:652 #: cps/admin.py:649
msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgid "Access Logfile Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:671 #: cps/admin.py:668
msgid "DB Location is not Valid, Please Enter Correct Path" msgid "DB Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:704 #: cps/admin.py:701
msgid "Basic Configuration" msgid "Basic Configuration"
msgstr "Základní konfigurace" msgstr "Základní konfigurace"
#: cps/admin.py:728 cps/web.py:1230 #: cps/admin.py:725 cps/web.py:1235
msgid "Please fill out all fields!" msgid "Please fill out all fields!"
msgstr "Vyplňte všechna pole!" msgstr "Vyplňte všechna pole!"
#: cps/admin.py:731 cps/admin.py:743 cps/admin.py:749 cps/admin.py:767 #: cps/admin.py:728 cps/admin.py:740 cps/admin.py:746 cps/admin.py:764
msgid "Add new user" msgid "Add new user"
msgstr "Přidat nového uživatele" msgstr "Přidat nového uživatele"
#: cps/admin.py:740 cps/web.py:1472 #: cps/admin.py:737 cps/web.py:1477
msgid "E-mail is not from valid domain" msgid "E-mail is not from valid domain"
msgstr "E-mail není z platné domény" msgstr "E-mail není z platné domény"
#: cps/admin.py:747 cps/admin.py:762 #: cps/admin.py:744 cps/admin.py:759
msgid "Found an existing account for this e-mail address or nickname." 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." msgstr "Byl nalezen existující účet pro tuto e-mailovou adresu nebo přezdívku."
#: cps/admin.py:758 #: cps/admin.py:755
#, python-format #, python-format
msgid "User '%(user)s' created" msgid "User '%(user)s' created"
msgstr "Uživatel '%(user)s' vytvořen" msgstr "Uživatel '%(user)s' vytvořen"
#: cps/admin.py:777 #: cps/admin.py:774
msgid "Edit e-mail server settings" msgid "Edit e-mail server settings"
msgstr "Změnit nastavení e-mailového serveru" msgstr "Změnit nastavení e-mailového serveru"
#: cps/admin.py:803 #: cps/admin.py:800
#, python-format #, python-format
msgid "Test e-mail successfully send to %(kindlemail)s" msgid "Test e-mail successfully send to %(kindlemail)s"
msgstr "Zkušební e-mail úspěšně odeslán na %(kindlemail)s" msgstr "Zkušební e-mail úspěšně odeslán na %(kindlemail)s"
#: cps/admin.py:806 #: cps/admin.py:803
#, python-format #, python-format
msgid "There was an error sending the Test e-mail: %(res)s" msgid "There was an error sending the Test e-mail: %(res)s"
msgstr "Při odesílání zkušebního e-mailu došlo k chybě: %(res)s" msgstr "Při odesílání zkušebního e-mailu došlo k chybě: %(res)s"
#: cps/admin.py:808 #: cps/admin.py:805
msgid "Please configure your e-mail address first..." msgid "Please configure your e-mail address first..."
msgstr "Prvně nastavte svou e-mailovou adresu..." msgstr "Prvně nastavte svou e-mailovou adresu..."
#: cps/admin.py:810 #: cps/admin.py:807
msgid "E-mail server settings updated" msgid "E-mail server settings updated"
msgstr "Nastavení e-mailového serveru aktualizováno" msgstr "Nastavení e-mailového serveru aktualizováno"
#: cps/admin.py:821 #: cps/admin.py:818
msgid "User not found" msgid "User not found"
msgstr "" msgstr ""
#: cps/admin.py:842 #: cps/admin.py:839
#, python-format #, python-format
msgid "User '%(nick)s' deleted" msgid "User '%(nick)s' deleted"
msgstr "Uživatel '%(nick)s' smazán" msgstr "Uživatel '%(nick)s' smazán"
#: cps/admin.py:845 #: cps/admin.py:842
msgid "No admin user remaining, can't delete user" msgid "No admin user remaining, can't delete user"
msgstr "Nezbývá žádný správce, nemůžete jej odstranit" msgstr "Nezbývá žádný správce, nemůžete jej odstranit"
#: cps/admin.py:851 #: cps/admin.py:848
msgid "No admin user remaining, can't remove admin role" msgid "No admin user remaining, can't remove admin role"
msgstr "" msgstr ""
#: cps/admin.py:887 cps/web.py:1515 #: cps/admin.py:884 cps/web.py:1520
msgid "Found an existing account for this e-mail address." msgid "Found an existing account for this e-mail address."
msgstr "Byl nalezen existující účet pro tuto e-mailovou adresu." msgstr "Byl nalezen existující účet pro tuto e-mailovou adresu."
#: cps/admin.py:897 cps/admin.py:912 cps/admin.py:932 cps/web.py:1490 #: cps/admin.py:894 cps/admin.py:909 cps/admin.py:929 cps/web.py:1495
#, python-format #, python-format
msgid "Edit User %(nick)s" msgid "Edit User %(nick)s"
msgstr "Upravit uživatele %(nick)s" msgstr "Upravit uživatele %(nick)s"
#: cps/admin.py:903 cps/web.py:1482 #: cps/admin.py:900 cps/web.py:1487
msgid "This username is already taken" msgid "This username is already taken"
msgstr "Toto uživatelské jméno je již použito" msgstr "Toto uživatelské jméno je již použito"
#: cps/admin.py:919 #: cps/admin.py:916
#, python-format #, python-format
msgid "User '%(nick)s' updated" msgid "User '%(nick)s' updated"
msgstr "Uživatel '%(nick)s' aktualizován" msgstr "Uživatel '%(nick)s' aktualizován"
#: cps/admin.py:922 #: cps/admin.py:919
msgid "An unknown error occured." msgid "An unknown error occured."
msgstr "Došlo k neznámé chybě." msgstr "Došlo k neznámé chybě."
#: cps/admin.py:943 #: cps/admin.py:940
#, python-format #, python-format
msgid "Password for user %(user)s reset" msgid "Password for user %(user)s reset"
msgstr "Heslo pro uživatele %(user)s resetováno" msgstr "Heslo pro uživatele %(user)s resetováno"
#: cps/admin.py:946 cps/web.py:1255 cps/web.py:1319 #: cps/admin.py:943 cps/web.py:1260 cps/web.py:1324
msgid "An unknown error occurred. Please try again later." msgid "An unknown error occurred. Please try again later."
msgstr "Neznámá chyba. Opakujte prosím později." msgstr "Neznámá chyba. Opakujte prosím později."
#: cps/admin.py:949 cps/web.py:1196 #: cps/admin.py:946 cps/web.py:1201
msgid "Please configure the SMTP mail settings first..." msgid "Please configure the SMTP mail settings first..."
msgstr "Nejprve nakonfigurujte nastavení pošty SMTP..." msgstr "Nejprve nakonfigurujte nastavení pošty SMTP..."
#: cps/admin.py:961 #: cps/admin.py:958
msgid "Logfile viewer" msgid "Logfile viewer"
msgstr "Prohlížeč log souborů" msgstr "Prohlížeč log souborů"
#: cps/admin.py:1000 #: cps/admin.py:997
msgid "Requesting update package" msgid "Requesting update package"
msgstr "Požadování balíčku aktualizace" msgstr "Požadování balíčku aktualizace"
#: cps/admin.py:1001 #: cps/admin.py:998
msgid "Downloading update package" msgid "Downloading update package"
msgstr "Stahování balíčku aktualizace" msgstr "Stahování balíčku aktualizace"
#: cps/admin.py:1002 #: cps/admin.py:999
msgid "Unzipping update package" msgid "Unzipping update package"
msgstr "Rozbalování balíčku aktualizace" msgstr "Rozbalování balíčku aktualizace"
#: cps/admin.py:1003 #: cps/admin.py:1000
msgid "Replacing files" msgid "Replacing files"
msgstr "Nahrazování souborů" msgstr "Nahrazování souborů"
#: cps/admin.py:1004 #: cps/admin.py:1001
msgid "Database connections are closed" msgid "Database connections are closed"
msgstr "Databázová připojení jsou uzavřena" msgstr "Databázová připojení jsou uzavřena"
#: cps/admin.py:1005 #: cps/admin.py:1002
msgid "Stopping server" msgid "Stopping server"
msgstr "Zastavuji server" msgstr "Zastavuji server"
#: cps/admin.py:1006 #: cps/admin.py:1003
msgid "Update finished, please press okay and reload page" 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" msgstr "Aktualizace dokončena, klepněte na tlačítko OK a znovu načtěte stránku"
#: cps/admin.py:1007 cps/admin.py:1008 cps/admin.py:1009 cps/admin.py:1010 #: cps/admin.py:1004 cps/admin.py:1005 cps/admin.py:1006 cps/admin.py:1007
#: cps/admin.py:1011 #: cps/admin.py:1008
msgid "Update failed:" msgid "Update failed:"
msgstr "Aktualizace selhala:" msgstr "Aktualizace selhala:"
#: cps/admin.py:1007 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522 #: cps/admin.py:1004 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522
msgid "HTTP Error" msgid "HTTP Error"
msgstr "HTTP chyba" msgstr "HTTP chyba"
#: cps/admin.py:1008 cps/updater.py:321 cps/updater.py:524 #: cps/admin.py:1005 cps/updater.py:321 cps/updater.py:524
msgid "Connection error" msgid "Connection error"
msgstr "Chyba připojení" msgstr "Chyba připojení"
#: cps/admin.py:1009 cps/updater.py:323 cps/updater.py:526 #: cps/admin.py:1006 cps/updater.py:323 cps/updater.py:526
msgid "Timeout while establishing connection" msgid "Timeout while establishing connection"
msgstr "Vypršel časový limit při navazování spojení" msgstr "Vypršel časový limit při navazování spojení"
#: cps/admin.py:1010 cps/updater.py:325 cps/updater.py:528 #: cps/admin.py:1007 cps/updater.py:325 cps/updater.py:528
msgid "General error" msgid "General error"
msgstr "Všeobecná chyba" msgstr "Všeobecná chyba"
#: cps/admin.py:1011 #: cps/admin.py:1008
msgid "Update File Could Not be Saved in Temp Dir" msgid "Update File Could Not be Saved in Temp Dir"
msgstr "" msgstr ""
@ -291,7 +291,7 @@ msgstr ""
msgid "Book Successfully Deleted" msgid "Book Successfully Deleted"
msgstr "" msgstr ""
#: cps/editbooks.py:253 cps/editbooks.py:489 #: cps/editbooks.py:253 cps/editbooks.py:490
msgid "Error opening eBook. File does not exist or file is not accessible" msgid "Error opening eBook. File does not exist or file is not accessible"
msgstr "Chyba otevírání eknihy. Soubor neexistuje nebo není přístupný" msgstr "Chyba otevírání eknihy. Soubor neexistuje nebo není přístupný"
@ -304,16 +304,16 @@ msgstr "upravit metadata"
msgid "%(langname)s is not a valid language" msgid "%(langname)s is not a valid language"
msgstr "%(langname)s není platným jazykem" msgstr "%(langname)s není platným jazykem"
#: cps/editbooks.py:413 cps/editbooks.py:663 #: cps/editbooks.py:413 cps/editbooks.py:664
#, python-format #, python-format
msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" 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" msgstr "Soubor s příponou '%(ext)s' nelze odeslat na tento server"
#: cps/editbooks.py:417 cps/editbooks.py:667 #: cps/editbooks.py:417 cps/editbooks.py:668
msgid "File to be uploaded must have an extension" msgid "File to be uploaded must have an extension"
msgstr "Soubor, který má být odeslán musí mít příponu" msgstr "Soubor, který má být odeslán musí mít příponu"
#: cps/editbooks.py:429 cps/editbooks.py:701 #: cps/editbooks.py:429 cps/editbooks.py:702
#, python-format #, python-format
msgid "Failed to create path %(path)s (Permission denied)." msgid "Failed to create path %(path)s (Permission denied)."
msgstr "Nepodařilo se vytvořit cestu %(path)s (oprávnění odepřeno)." msgstr "Nepodařilo se vytvořit cestu %(path)s (oprávnění odepřeno)."
@ -328,48 +328,48 @@ msgstr "Uložení souboru %(file)s se nezdařilo."
msgid "File format %(ext)s added to %(book)s" msgid "File format %(ext)s added to %(book)s"
msgstr "Formát souboru %(ext)s přidán do %(book)s" msgstr "Formát souboru %(ext)s přidán do %(book)s"
#: cps/editbooks.py:606 #: cps/editbooks.py:607
msgid "Metadata successfully updated" msgid "Metadata successfully updated"
msgstr "Metadata úspěšně aktualizována" msgstr "Metadata úspěšně aktualizována"
#: cps/editbooks.py:615 #: cps/editbooks.py:616
msgid "Error editing book, please check logfile for details" msgid "Error editing book, please check logfile for details"
msgstr "Chyba při úpravách knihy, zkontrolujte prosím log pro podrobnosti" msgstr "Chyba při úpravách knihy, zkontrolujte prosím log pro podrobnosti"
#: cps/editbooks.py:675 #: cps/editbooks.py:676
#, python-format #, python-format
msgid "File %(filename)s could not saved to temp dir" 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" msgstr "Soubor %(filename)s nemohl být uložen do dočasného adresáře"
#: cps/editbooks.py:692 #: cps/editbooks.py:693
msgid "Uploaded book probably exists in the library, consider to change before upload new: " 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é: " msgstr "Nahraná kniha pravděpodobně existuje v knihovně, zvažte prosím změnu před nahráním nové: "
#: cps/editbooks.py:707 #: cps/editbooks.py:709
#, python-format #, python-format
msgid "Failed to store file %(file)s (Permission denied)." msgid "Failed to Move File %(file)s: %(error)s"
msgstr "Nepodařilo se uložit soubor %(file)s (Oprávnění odepřeno)." msgstr ""
#: cps/editbooks.py:713 #: cps/editbooks.py:723
#, python-format #, python-format
msgid "Failed to delete file %(file)s (Permission denied)." msgid "Failed to Move Cover File %(file)s: %(error)s"
msgstr "Nepodařilo se smazat soubor %(file)s (Oprávnění odepřeno)." msgstr ""
#: cps/editbooks.py:804 #: cps/editbooks.py:808
#, python-format #, python-format
msgid "File %(file)s uploaded" msgid "File %(file)s uploaded"
msgstr "Soubor %(file)s nahrán" msgstr "Soubor %(file)s nahrán"
#: cps/editbooks.py:833 #: cps/editbooks.py:837
msgid "Source or destination format for conversion missing" msgid "Source or destination format for conversion missing"
msgstr "Chybí zdrojový nebo cílový formát pro převod" msgstr "Chybí zdrojový nebo cílový formát pro převod"
#: cps/editbooks.py:841 #: cps/editbooks.py:845
#, python-format #, python-format
msgid "Book successfully queued for converting to %(book_format)s" 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" msgstr "Kniha byla úspěšně zařazena do fronty pro převod do %(book_format)s"
#: cps/editbooks.py:845 #: cps/editbooks.py:849
#, python-format #, python-format
msgid "There was an error converting this book: %(res)s" msgid "There was an error converting this book: %(res)s"
msgstr "Při převodu této knihy došlo k chybě: %(res)s" msgstr "Při převodu této knihy došlo k chybě: %(res)s"
@ -443,111 +443,111 @@ msgstr "E-mail: %(book)s"
msgid "The requested file could not be read. Maybe wrong permissions?" msgid "The requested file could not be read. Maybe wrong permissions?"
msgstr "Požadovaný soubor nelze přečíst. Možná nesprávná oprávnění?" msgstr "Požadovaný soubor nelze přečíst. Možná nesprávná oprávnění?"
#: cps/helper.py:299 #: cps/helper.py:300
#, python-format #, python-format
msgid "Deleting book %(id)s failed, path has subfolders: %(path)s" msgid "Deleting book %(id)s failed, path has subfolders: %(path)s"
msgstr "" msgstr ""
#: cps/helper.py:309 #: cps/helper.py:310
#, python-format #, python-format
msgid "Deleting book %(id)s failed: %(message)s" msgid "Deleting book %(id)s failed: %(message)s"
msgstr "" msgstr ""
#: cps/helper.py:319 #: cps/helper.py:320
#, python-format #, python-format
msgid "Deleting book %(id)s failed, book path not valid: %(path)s" msgid "Deleting book %(id)s failed, book path not valid: %(path)s"
msgstr "" msgstr ""
#: cps/helper.py:354 #: cps/helper.py:355
#, python-format #, python-format
msgid "Rename title from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgid "Rename title from: '%(src)s' to '%(dest)s' failed with error: %(error)s"
msgstr "Přejmenování názvu z: '%(src)s' na '%(dest)s' selhalo chybou: %(error)s" msgstr "Přejmenování názvu z: '%(src)s' na '%(dest)s' selhalo chybou: %(error)s"
#: cps/helper.py:364 #: cps/helper.py:365
#, python-format #, python-format
msgid "Rename author from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgid "Rename author from: '%(src)s' to '%(dest)s' failed with error: %(error)s"
msgstr "Přejmenovat autora z: '%(src)s' na '%(dest)s' selhalo chybou: %(error)s" msgstr "Přejmenovat autora z: '%(src)s' na '%(dest)s' selhalo chybou: %(error)s"
#: cps/helper.py:378 #: cps/helper.py:379
#, python-format #, python-format
msgid "Rename file in path '%(src)s' to '%(dest)s' failed with error: %(error)s" msgid "Rename file in path '%(src)s' to '%(dest)s' failed with error: %(error)s"
msgstr "Přejmenování souboru v cestě '%(src)s' na '%(dest)s' selhalo chybou: %(error)s" msgstr "Přejmenování souboru v cestě '%(src)s' na '%(dest)s' selhalo chybou: %(error)s"
#: cps/helper.py:404 cps/helper.py:414 cps/helper.py:422 #: cps/helper.py:405 cps/helper.py:415 cps/helper.py:423
#, python-format #, python-format
msgid "File %(file)s not found on Google Drive" msgid "File %(file)s not found on Google Drive"
msgstr "Soubor %(file)s nenalezen na Google Drive" msgstr "Soubor %(file)s nenalezen na Google Drive"
#: cps/helper.py:443 #: cps/helper.py:444
#, python-format #, python-format
msgid "Book path %(path)s not found on Google Drive" msgid "Book path %(path)s not found on Google Drive"
msgstr "Cesta ke knize %(path)s nebyla nalezena na Google Drive" msgstr "Cesta ke knize %(path)s nebyla nalezena na Google Drive"
#: cps/helper.py:550 #: cps/helper.py:551
msgid "Failed to create path for cover" msgid "Failed to create path for cover"
msgstr "" msgstr ""
#: cps/helper.py:555 #: cps/helper.py:556
msgid "Cover-file is not a valid image file, or could not be stored" msgid "Cover-file is not a valid image file, or could not be stored"
msgstr "" msgstr ""
#: cps/helper.py:566 #: cps/helper.py:567
msgid "Only jpg/jpeg/png/webp files are supported as coverfile" msgid "Only jpg/jpeg/png/webp files are supported as coverfile"
msgstr "" msgstr ""
#: cps/helper.py:580 #: cps/helper.py:581
msgid "Only jpg/jpeg files are supported as coverfile" msgid "Only jpg/jpeg files are supported as coverfile"
msgstr "" msgstr ""
#: cps/helper.py:622 #: cps/helper.py:625
msgid "Unrar binary file not found" msgid "Unrar binary file not found"
msgstr "" msgstr ""
#: cps/helper.py:635 #: cps/helper.py:638
msgid "Error excecuting UnRar" msgid "Error excecuting UnRar"
msgstr "" msgstr ""
#: cps/helper.py:691 #: cps/helper.py:694
msgid "Waiting" msgid "Waiting"
msgstr "Čekám" msgstr "Čekám"
#: cps/helper.py:693 #: cps/helper.py:696
msgid "Failed" msgid "Failed"
msgstr "Selhalo" msgstr "Selhalo"
#: cps/helper.py:695 #: cps/helper.py:698
msgid "Started" msgid "Started"
msgstr "Spuštěno" msgstr "Spuštěno"
#: cps/helper.py:697 #: cps/helper.py:700
msgid "Finished" msgid "Finished"
msgstr "Dokončeno" msgstr "Dokončeno"
#: cps/helper.py:699 #: cps/helper.py:702
msgid "Unknown Status" msgid "Unknown Status"
msgstr "Neznámý stav" msgstr "Neznámý stav"
#: cps/helper.py:704 #: cps/helper.py:707
msgid "E-mail: " msgid "E-mail: "
msgstr "E-mail: " msgstr "E-mail: "
#: cps/helper.py:706 cps/helper.py:710 #: cps/helper.py:709 cps/helper.py:713
msgid "Convert: " msgid "Convert: "
msgstr "Převést:" msgstr "Převést:"
#: cps/helper.py:708 #: cps/helper.py:711
msgid "Upload: " msgid "Upload: "
msgstr "Nahrát:" msgstr "Nahrát:"
#: cps/helper.py:712 #: cps/helper.py:715
msgid "Unknown Task: " msgid "Unknown Task: "
msgstr "Neznámá úloha:" msgstr "Neznámá úloha:"
#: cps/kobo_auth.py:126 #: cps/kobo_auth.py:130
msgid "PLease access calibre-web from non localhost to get valid api_endpoint for kobo device" msgid "PLease access calibre-web from non localhost to get valid api_endpoint for kobo device"
msgstr "" msgstr ""
#: cps/kobo_auth.py:129 cps/kobo_auth.py:149 #: cps/kobo_auth.py:133 cps/kobo_auth.py:153
msgid "Kobo Setup" msgid "Kobo Setup"
msgstr "" msgstr ""
@ -572,7 +572,7 @@ msgstr "Přihlášení pomocí Google selhalo"
msgid "Failed to fetch user info from Google." 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:1291 cps/web.py:1431 #: cps/oauth_bb.py:225 cps/web.py:1296 cps/web.py:1436
#, python-format #, python-format
msgid "you are now logged in as: '%(nickname)s'" msgid "you are now logged in as: '%(nickname)s'"
msgstr "nyní jste přihlášeni jako: '%(nickname)s'" msgstr "nyní jste přihlášeni jako: '%(nickname)s'"
@ -724,7 +724,7 @@ msgstr "Žhavé knihy"
msgid "Show Hot Books" msgid "Show Hot Books"
msgstr "" msgstr ""
#: cps/templates/index.xml:24 cps/ub.py:70 cps/web.py:615 #: cps/templates/index.xml:24 cps/ub.py:70 cps/web.py:616
msgid "Top Rated Books" msgid "Top Rated Books"
msgstr "" msgstr ""
@ -733,7 +733,7 @@ msgid "Show Top Rated Books"
msgstr "" msgstr ""
#: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:73 #: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:73
#: cps/web.py:1125 #: cps/web.py:1131
msgid "Read Books" msgid "Read Books"
msgstr "Přečtené knihy" msgstr "Přečtené knihy"
@ -742,7 +742,7 @@ msgid "Show read and unread"
msgstr "Zobrazit prečtené a nepřečtené" msgstr "Zobrazit prečtené a nepřečtené"
#: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:77 #: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:77
#: cps/web.py:1129 #: cps/web.py:1134
msgid "Unread Books" msgid "Unread Books"
msgstr "Nepřečtené knihy" msgstr "Nepřečtené knihy"
@ -758,7 +758,7 @@ msgstr "Objevte"
msgid "Show random books" msgid "Show random books"
msgstr "Zobrazit náhodné knihy" msgstr "Zobrazit náhodné knihy"
#: cps/templates/index.xml:75 cps/ub.py:83 cps/web.py:897 #: cps/templates/index.xml:75 cps/ub.py:83 cps/web.py:898
msgid "Categories" msgid "Categories"
msgstr "Kategorie" msgstr "Kategorie"
@ -767,7 +767,7 @@ msgid "Show category selection"
msgstr "Zobrazit výběr kategorie" msgstr "Zobrazit výběr kategorie"
#: cps/templates/book_edit.html:84 cps/templates/index.xml:82 #: cps/templates/book_edit.html:84 cps/templates/index.xml:82
#: cps/templates/search_form.html:53 cps/ub.py:86 cps/web.py:825 #: cps/templates/search_form.html:53 cps/ub.py:86 cps/web.py:826
msgid "Series" msgid "Series"
msgstr "Série" msgstr "Série"
@ -783,7 +783,7 @@ msgstr "Autoři"
msgid "Show author selection" msgid "Show author selection"
msgstr "Zobrazit výběr autora" msgstr "Zobrazit výběr autora"
#: cps/templates/index.xml:68 cps/ub.py:93 cps/web.py:809 #: cps/templates/index.xml:68 cps/ub.py:93 cps/web.py:810
msgid "Publishers" msgid "Publishers"
msgstr "Vydavatelé" msgstr "Vydavatelé"
@ -792,7 +792,7 @@ msgid "Show publisher selection"
msgstr "Zobrazit výběr vydavatele" msgstr "Zobrazit výběr vydavatele"
#: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:96 #: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:96
#: cps/web.py:880 #: cps/web.py:881
msgid "Languages" msgid "Languages"
msgstr "Jazyky" msgstr "Jazyky"
@ -816,7 +816,7 @@ msgstr "Formáty souborů"
msgid "Show file formats selection" msgid "Show file formats selection"
msgstr "Zobrazit výběr formátů" msgstr "Zobrazit výběr formátů"
#: cps/ub.py:107 cps/web.py:1150 #: cps/ub.py:107 cps/web.py:1155
msgid "Archived Books" msgid "Archived Books"
msgstr "" msgstr ""
@ -853,223 +853,223 @@ 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." 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." msgstr "Klepnutím na tlačítko níže aktualizujte na nejnovější stabilní verzi."
#: cps/web.py:306 #: cps/web.py:307
#, python-format #, python-format
msgid "Error: %(ldaperror)s" msgid "Error: %(ldaperror)s"
msgstr "" msgstr ""
#: cps/web.py:310 #: cps/web.py:311
msgid "Error: No user returned in response of LDAP server" msgid "Error: No user returned in response of LDAP server"
msgstr "" msgstr ""
#: cps/web.py:358 #: cps/web.py:359
msgid "Failed to Create at Least One LDAP User" msgid "Failed to Create at Least One LDAP User"
msgstr "" msgstr ""
#: cps/web.py:361 #: cps/web.py:362
msgid "At Least One LDAP User Not Found in Database" msgid "At Least One LDAP User Not Found in Database"
msgstr "" msgstr ""
#: cps/web.py:363 #: cps/web.py:364
msgid "User Successfully Imported" msgid "User Successfully Imported"
msgstr "" msgstr ""
#: cps/web.py:587 #: cps/web.py:588
msgid "Recently Added Books" msgid "Recently Added Books"
msgstr "Nedávno přidané knihy" msgstr "Nedávno přidané knihy"
#: cps/templates/index.html:5 cps/web.py:623 #: cps/templates/index.html:5 cps/web.py:624
msgid "Discover (Random Books)" msgid "Discover (Random Books)"
msgstr "Objevte (Náhodné knihy)" msgstr "Objevte (Náhodné knihy)"
#: cps/web.py:651 #: cps/web.py:652
msgid "Books" msgid "Books"
msgstr "Knihy" msgstr "Knihy"
#: cps/web.py:678 #: cps/web.py:679
msgid "Hot Books (Most Downloaded)" msgid "Hot Books (Most Downloaded)"
msgstr "" msgstr ""
#: cps/web.py:688 #: cps/web.py:689
msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible" msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible"
msgstr "" msgstr ""
#: cps/web.py:702 #: cps/web.py:703
#, python-format #, python-format
msgid "Author: %(name)s" msgid "Author: %(name)s"
msgstr "Autoři: %(name)s" msgstr "Autoři: %(name)s"
#: cps/web.py:714 #: cps/web.py:715
#, python-format #, python-format
msgid "Publisher: %(name)s" msgid "Publisher: %(name)s"
msgstr "Vydavatel: %(name)s" msgstr "Vydavatel: %(name)s"
#: cps/web.py:725 #: cps/web.py:726
#, python-format #, python-format
msgid "Series: %(serie)s" msgid "Series: %(serie)s"
msgstr "Série: %(serie)s" msgstr "Série: %(serie)s"
#: cps/web.py:736 #: cps/web.py:737
#, python-format #, python-format
msgid "Rating: %(rating)s stars" msgid "Rating: %(rating)s stars"
msgstr "Hodnocení: %(rating)s stars" msgstr "Hodnocení: %(rating)s stars"
#: cps/web.py:748 #: cps/web.py:749
#, python-format #, python-format
msgid "File format: %(format)s" msgid "File format: %(format)s"
msgstr "Soubor formátů: %(format)s" msgstr "Soubor formátů: %(format)s"
#: cps/web.py:760 #: cps/web.py:761
#, python-format #, python-format
msgid "Category: %(name)s" msgid "Category: %(name)s"
msgstr "Kategorie: %(name)s" msgstr "Kategorie: %(name)s"
#: cps/web.py:777 #: cps/web.py:778
#, python-format #, python-format
msgid "Language: %(name)s" msgid "Language: %(name)s"
msgstr "Jazyky: %(name)s" msgstr "Jazyky: %(name)s"
#: cps/web.py:839 #: cps/web.py:840
msgid "Ratings list" msgid "Ratings list"
msgstr "Seznam hodnocení" msgstr "Seznam hodnocení"
#: cps/web.py:852 #: cps/web.py:853
msgid "File formats list" msgid "File formats list"
msgstr "Seznam formátů" msgstr "Seznam formátů"
#: cps/templates/layout.html:73 cps/templates/tasks.html:7 cps/web.py:911 #: cps/templates/layout.html:73 cps/templates/tasks.html:7 cps/web.py:912
msgid "Tasks" msgid "Tasks"
msgstr "Úlohy" msgstr "Úlohy"
#: cps/templates/book_edit.html:235 cps/templates/feed.xml:33 #: cps/templates/book_edit.html:235 cps/templates/feed.xml:33
#: cps/templates/layout.html:44 cps/templates/layout.html:47 #: cps/templates/layout.html:44 cps/templates/layout.html:47
#: cps/templates/search_form.html:170 cps/web.py:937 cps/web.py:942 #: cps/templates/search_form.html:174 cps/web.py:938 cps/web.py:943
msgid "Search" msgid "Search"
msgstr "Hledat" msgstr "Hledat"
#: cps/web.py:993 #: cps/web.py:994
msgid "Published after " msgid "Published after "
msgstr "Vydáno po " msgstr "Vydáno po "
#: cps/web.py:1000 #: cps/web.py:1001
msgid "Published before " msgid "Published before "
msgstr "Vydáno před " msgstr "Vydáno před "
#: cps/web.py:1014 #: cps/web.py:1015
#, python-format #, python-format
msgid "Rating <= %(rating)s" msgid "Rating <= %(rating)s"
msgstr "Hodnocení <= %(rating)s" msgstr "Hodnocení <= %(rating)s"
#: cps/web.py:1016 #: cps/web.py:1017
#, python-format #, python-format
msgid "Rating >= %(rating)s" msgid "Rating >= %(rating)s"
msgstr "Hodnocení >= %(rating)s" msgstr "Hodnocení >= %(rating)s"
#: cps/web.py:1082 cps/web.py:1096 #: cps/web.py:1083 cps/web.py:1097
msgid "search" msgid "search"
msgstr "hledat" msgstr "hledat"
#: cps/web.py:1201 #: cps/web.py:1206
#, python-format #, python-format
msgid "Book successfully queued for sending to %(kindlemail)s" msgid "Book successfully queued for sending to %(kindlemail)s"
msgstr "Kniha byla úspěšně zařazena do fronty pro odeslání na %(kindlemail)s" msgstr "Kniha byla úspěšně zařazena do fronty pro odeslání na %(kindlemail)s"
#: cps/web.py:1205 #: cps/web.py:1210
#, python-format #, python-format
msgid "Oops! There was an error sending this book: %(res)s" 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" msgstr "Při odesílání této knihy došlo k chybě: %(res)s"
#: cps/web.py:1207 #: cps/web.py:1212
msgid "Please update your profile with a valid Send to Kindle E-mail Address." msgid "Please update your profile with a valid Send to Kindle E-mail Address."
msgstr "Nejprve nakonfigurujte vaši kindle e-mailovou adresu.." msgstr "Nejprve nakonfigurujte vaši kindle e-mailovou adresu.."
#: cps/web.py:1224 #: cps/web.py:1229
msgid "E-Mail server is not configured, please contact your administrator!" msgid "E-Mail server is not configured, please contact your administrator!"
msgstr "E-mailový server není nakonfigurován, kontaktujte svého správce!" msgstr "E-mailový server není nakonfigurován, kontaktujte svého správce!"
#: cps/web.py:1225 cps/web.py:1231 cps/web.py:1256 cps/web.py:1260 #: cps/web.py:1230 cps/web.py:1236 cps/web.py:1261 cps/web.py:1265
#: cps/web.py:1265 cps/web.py:1269 #: cps/web.py:1270 cps/web.py:1274
msgid "register" msgid "register"
msgstr "registrovat" msgstr "registrovat"
#: cps/web.py:1258 #: cps/web.py:1263
msgid "Your e-mail is not allowed to register" msgid "Your e-mail is not allowed to register"
msgstr "Váš e-mail nemá povolení k registraci" msgstr "Váš e-mail nemá povolení k registraci"
#: cps/web.py:1261 #: cps/web.py:1266
msgid "Confirmation e-mail was send to your e-mail account." msgid "Confirmation e-mail was send to your e-mail account."
msgstr "Potvrzovací e-mail byl odeslán na váš účet." msgstr "Potvrzovací e-mail byl odeslán na váš účet."
#: cps/web.py:1264 #: cps/web.py:1269
msgid "This username or e-mail address is already in use." 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." msgstr "Toto uživatelské jméno nebo e-mailová adresa jsou již používány."
#: cps/web.py:1281 #: cps/web.py:1286
msgid "Cannot activate LDAP authentication" msgid "Cannot activate LDAP authentication"
msgstr "Nelze aktivovat ověření LDAP" msgstr "Nelze aktivovat ověření LDAP"
#: cps/web.py:1298 #: cps/web.py:1303
#, python-format #, python-format
msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known"
msgstr "" msgstr ""
#: cps/web.py:1304 #: cps/web.py:1309
#, python-format #, python-format
msgid "Could not login: %(message)s" msgid "Could not login: %(message)s"
msgstr "" msgstr ""
#: cps/web.py:1308 cps/web.py:1332 #: cps/web.py:1313 cps/web.py:1337
msgid "Wrong Username or Password" msgid "Wrong Username or Password"
msgstr "Špatné uživatelské jméno nebo heslo" msgstr "Špatné uživatelské jméno nebo heslo"
#: cps/web.py:1315 #: cps/web.py:1320
msgid "New Password was send to your email address" 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 váši emailovou adresu"
#: cps/web.py:1321 #: cps/web.py:1326
msgid "Please enter valid username to reset password" msgid "Please enter valid username to reset password"
msgstr "Zadejte platné uživatelské jméno pro obnovení hesla" msgstr "Zadejte platné uživatelské jméno pro obnovení hesla"
#: cps/web.py:1327 #: cps/web.py:1332
#, python-format #, python-format
msgid "You are now logged in as: '%(nickname)s'" msgid "You are now logged in as: '%(nickname)s'"
msgstr "Nyní jste přihlášeni jako: '%(nickname)s'" msgstr "Nyní jste přihlášeni jako: '%(nickname)s'"
#: cps/web.py:1336 cps/web.py:1363 #: cps/web.py:1341 cps/web.py:1368
msgid "login" msgid "login"
msgstr "přihlásit se" msgstr "přihlásit se"
#: cps/web.py:1375 cps/web.py:1409 #: cps/web.py:1380 cps/web.py:1414
msgid "Token not found" msgid "Token not found"
msgstr "Token nenalezen" msgstr "Token nenalezen"
#: cps/web.py:1384 cps/web.py:1417 #: cps/web.py:1389 cps/web.py:1422
msgid "Token has expired" msgid "Token has expired"
msgstr "Token vypršel" msgstr "Token vypršel"
#: cps/web.py:1393 #: cps/web.py:1398
msgid "Success! Please return to your device" msgid "Success! Please return to your device"
msgstr "Úspěch! Vraťte se prosím do zařízení" msgstr "Úspěch! Vraťte se prosím do zařízení"
#: cps/web.py:1474 cps/web.py:1519 cps/web.py:1525 #: cps/web.py:1479 cps/web.py:1524 cps/web.py:1530
#, python-format #, python-format
msgid "%(name)s's profile" msgid "%(name)s's profile"
msgstr "%(name)s profil" msgstr "%(name)s profil"
#: cps/web.py:1521 #: cps/web.py:1526
msgid "Profile updated" msgid "Profile updated"
msgstr "Profil aktualizován" msgstr "Profil aktualizován"
#: cps/web.py:1538 cps/web.py:1642 #: cps/web.py:1543 cps/web.py:1647
msgid "Error opening eBook. File does not exist or file is not accessible:" msgid "Error opening eBook. File does not exist or file is not accessible:"
msgstr "Chyba při otevíraní eKnihy. Soubor neexistuje nebo neni přístupný:" msgstr "Chyba při otevíraní eKnihy. Soubor neexistuje nebo neni přístupný:"
#: cps/web.py:1550 cps/web.py:1553 cps/web.py:1556 cps/web.py:1563 #: cps/web.py:1555 cps/web.py:1558 cps/web.py:1561 cps/web.py:1568
#: cps/web.py:1568 #: cps/web.py:1573
msgid "Read a Book" msgid "Read a Book"
msgstr "Číst knihu" msgstr "Číst knihu"
#: cps/web.py:1579 #: cps/web.py:1584
msgid "Error opening eBook. File does not exist or file is not accessible." msgid "Error opening eBook. File does not exist or file is not accessible."
msgstr "Chyba při otevírání eKnihy. Soubor neexistuje nebo není přístupný" msgstr "Chyba při otevírání eKnihy. Soubor neexistuje nebo není přístupný"
@ -1295,13 +1295,13 @@ msgid "In Library"
msgstr "V knihovně" msgstr "V knihovně"
#: cps/templates/author.html:34 cps/templates/list.html:14 #: cps/templates/author.html:34 cps/templates/list.html:14
#: cps/templates/search.html:41 #: cps/templates/search.html:38
msgid "All" msgid "All"
msgstr "Vše" msgstr "Vše"
#: cps/templates/author.html:58 cps/templates/author.html:110 #: cps/templates/author.html:58 cps/templates/author.html:110
#: cps/templates/discover.html:27 cps/templates/index.html:26 #: cps/templates/discover.html:27 cps/templates/index.html:26
#: cps/templates/index.html:89 cps/templates/search.html:67 #: cps/templates/index.html:89 cps/templates/search.html:64
#: cps/templates/shelf.html:36 #: cps/templates/shelf.html:36
msgid "reduce" msgid "reduce"
msgstr "redukovat" msgstr "redukovat"
@ -1930,6 +1930,12 @@ msgstr "Popis:"
msgid "Add to shelf" msgid "Add to shelf"
msgstr "Přidat do police" msgstr "Přidat do police"
#: cps/templates/detail.html:243 cps/templates/detail.html:260
#: cps/templates/feed.xml:79 cps/templates/layout.html:136
#: cps/templates/layout.html:140 cps/templates/search.html:20
msgid "(Public)"
msgstr ""
#: cps/templates/detail.html:274 #: cps/templates/detail.html:274
msgid "Edit Metadata" msgid "Edit Metadata"
msgstr "Upravit metadata" msgstr "Upravit metadata"
@ -1978,11 +1984,6 @@ msgstr "Opravdu chcete odstranit toto pravidlo domény?"
msgid "Next" msgid "Next"
msgstr "Další" msgstr "Další"
#: cps/templates/feed.xml:79 cps/templates/layout.html:136
#: cps/templates/layout.html:140
msgid "(Public)"
msgstr ""
#: cps/templates/generate_kobo_auth_url.html:5 #: cps/templates/generate_kobo_auth_url.html:5
msgid "Open the .kobo/Kobo eReader.conf file in a text editor and add (or edit):" msgid "Open the .kobo/Kobo eReader.conf file in a text editor and add (or edit):"
msgstr "" msgstr ""

View File

@ -7,8 +7,8 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Calibre-Web\n" "Project-Id-Version: Calibre-Web\n"
"Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n" "Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n"
"POT-Creation-Date: 2020-05-01 17:15+0200\n" "POT-Creation-Date: 2020-05-23 08:46+0200\n"
"PO-Revision-Date: 2020-05-01 17:15+0200\n" "PO-Revision-Date: 2020-05-23 08:46+0200\n"
"Last-Translator: Ozzie Isaacs\n" "Last-Translator: Ozzie Isaacs\n"
"Language: de\n" "Language: de\n"
"Language-Team: \n" "Language-Team: \n"
@ -46,9 +46,9 @@ msgstr "Erfolgreich neu verbunden"
msgid "Unknown command" msgid "Unknown command"
msgstr "Unbekannter Befehl" msgstr "Unbekannter Befehl"
#: cps/admin.py:115 cps/editbooks.py:504 cps/editbooks.py:514 #: cps/admin.py:115 cps/editbooks.py:505 cps/editbooks.py:515
#: cps/editbooks.py:620 cps/editbooks.py:622 cps/editbooks.py:688 #: cps/editbooks.py:621 cps/editbooks.py:623 cps/editbooks.py:689
#: cps/updater.py:509 cps/uploader.py:99 cps/uploader.py:110 #: cps/updater.py:509 cps/uploader.py:100 cps/uploader.py:110
msgid "Unknown" msgid "Unknown"
msgstr "Unbekannt" msgstr "Unbekannt"
@ -60,223 +60,223 @@ msgstr "Admin Seite"
msgid "UI Configuration" msgid "UI Configuration"
msgstr "Benutzeroberflächenkonfiguration" msgstr "Benutzeroberflächenkonfiguration"
#: cps/admin.py:192 cps/admin.py:674 #: cps/admin.py:189 cps/admin.py:671
msgid "Calibre-Web configuration updated" msgid "Calibre-Web configuration updated"
msgstr "Konfiguration von Calibre-Web wurde aktualisiert" msgstr "Konfiguration von Calibre-Web wurde aktualisiert"
#: cps/admin.py:438 cps/admin.py:444 cps/admin.py:455 cps/admin.py:466 #: cps/admin.py:435 cps/admin.py:441 cps/admin.py:452 cps/admin.py:463
#: cps/templates/modal_restriction.html:29 #: cps/templates/modal_restriction.html:29
msgid "Deny" msgid "Deny"
msgstr "Verbieten" msgstr "Verbieten"
#: cps/admin.py:440 cps/admin.py:446 cps/admin.py:457 cps/admin.py:468 #: cps/admin.py:437 cps/admin.py:443 cps/admin.py:454 cps/admin.py:465
#: cps/templates/modal_restriction.html:28 #: cps/templates/modal_restriction.html:28
msgid "Allow" msgid "Allow"
msgstr "Erlauben" msgstr "Erlauben"
#: cps/admin.py:509 #: cps/admin.py:506
msgid "client_secrets.json Is Not Configured For Web Application" msgid "client_secrets.json Is Not Configured For Web Application"
msgstr "client_secrets.json ist nicht für Web Anwendungen konfiguriert" msgstr "client_secrets.json ist nicht für Web Anwendungen konfiguriert"
#: cps/admin.py:525 #: cps/admin.py:522
msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgid "Keyfile Location is not Valid, Please Enter Correct Path"
msgstr "Schlüsseldatei ist ungültig, bitte einen gültigen Pfad angeben" msgstr "Schlüsseldatei ist ungültig, bitte einen gültigen Pfad angeben"
#: cps/admin.py:529 #: cps/admin.py:526
msgid "Certfile Location is not Valid, Please Enter Correct Path" msgid "Certfile Location is not Valid, Please Enter Correct Path"
msgstr "Zertifikatsdatei ist ungültig, bitte einen gültigen Pfad angeben" msgstr "Zertifikatsdatei ist ungültig, bitte einen gültigen Pfad angeben"
#: cps/admin.py:567 #: cps/admin.py:564
msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier"
msgstr "Bitte einen LDAP Server, Port, DN und Benutzer Objekt angeben" msgstr "Bitte einen LDAP Server, Port, DN und Benutzer Objekt angeben"
#: cps/admin.py:585 #: cps/admin.py:582
#, python-format #, python-format
msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier"
msgstr "LDAP Gruppen Objekt Filter benötigt genau eine \"%s\" Format Kennung" msgstr "LDAP Gruppen Objekt Filter benötigt genau eine \"%s\" Format Kennung"
#: cps/admin.py:588 #: cps/admin.py:585
msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgid "LDAP Group Object Filter Has Unmatched Parenthesis"
msgstr "LDAP Gruppen Objekt Filter hat ungleiche Anzahl von Klammern" msgstr "LDAP Gruppen Objekt Filter hat ungleiche Anzahl von Klammern"
#: cps/admin.py:592 #: cps/admin.py:589
#, python-format #, python-format
msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier"
msgstr "LDAP Benutzer Objekt Filter benötigt genau eine \"%s\" Format Kennung" msgstr "LDAP Benutzer Objekt Filter benötigt genau eine \"%s\" Format Kennung"
#: cps/admin.py:595 #: cps/admin.py:592
msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgid "LDAP User Object Filter Has Unmatched Parenthesis"
msgstr "LDAP Benutzer Objekt Filter hat ungleiche Anzahl von Klammern" msgstr "LDAP Benutzer Objekt Filter hat ungleiche Anzahl von Klammern"
#: cps/admin.py:599 #: cps/admin.py:596
msgid "LDAP Certificate Location is not Valid, Please Enter Correct Path" msgid "LDAP Certificate Location is not Valid, Please Enter Correct Path"
msgstr "LDAP Zertifikat Pfad ist ungültig, bitte einen gültigen Pfad angeben" msgstr "LDAP Zertifikat Pfad ist ungültig, bitte einen gültigen Pfad angeben"
#: cps/admin.py:647 #: cps/admin.py:644
msgid "Logfile Location is not Valid, Please Enter Correct Path" msgid "Logfile Location is not Valid, Please Enter Correct Path"
msgstr "Logdatei Pfad ist ungültig, bitte einen gültigen Pfad angeben" msgstr "Logdatei Pfad ist ungültig, bitte einen gültigen Pfad angeben"
#: cps/admin.py:652 #: cps/admin.py:649
msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgid "Access Logfile Location is not Valid, Please Enter Correct Path"
msgstr "Zugriffs Logdatei Pfad ist ungültig, bitte einen gültigen Pfad angeben" msgstr "Zugriffs Logdatei Pfad ist ungültig, bitte einen gültigen Pfad angeben"
#: cps/admin.py:671 #: cps/admin.py:668
msgid "DB Location is not Valid, Please Enter Correct Path" msgid "DB Location is not Valid, Please Enter Correct Path"
msgstr "DB Pfad ist nicht gültig, bitte einen gültigen Pfad angeben" msgstr "DB Pfad ist nicht gültig, bitte einen gültigen Pfad angeben"
#: cps/admin.py:704 #: cps/admin.py:701
msgid "Basic Configuration" msgid "Basic Configuration"
msgstr "Basiskonfiguration" msgstr "Basiskonfiguration"
#: cps/admin.py:728 cps/web.py:1230 #: cps/admin.py:725 cps/web.py:1235
msgid "Please fill out all fields!" msgid "Please fill out all fields!"
msgstr "Bitte alle Felder ausfüllen!" msgstr "Bitte alle Felder ausfüllen!"
#: cps/admin.py:731 cps/admin.py:743 cps/admin.py:749 cps/admin.py:767 #: cps/admin.py:728 cps/admin.py:740 cps/admin.py:746 cps/admin.py:764
msgid "Add new user" msgid "Add new user"
msgstr "Neuen Benutzer hinzufügen" msgstr "Neuen Benutzer hinzufügen"
#: cps/admin.py:740 cps/web.py:1472 #: cps/admin.py:737 cps/web.py:1477
msgid "E-mail is not from valid domain" msgid "E-mail is not from valid domain"
msgstr "E-Mail bezieht sich nicht auf eine gültige Domain" msgstr "E-Mail bezieht sich nicht auf eine gültige Domain"
#: cps/admin.py:747 cps/admin.py:762 #: cps/admin.py:744 cps/admin.py:759
msgid "Found an existing account for this e-mail address or nickname." 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." msgstr "Es existiert bereits ein Account für diese E-Mailadresse oder diesen Benutzernamen."
#: cps/admin.py:758 #: cps/admin.py:755
#, python-format #, python-format
msgid "User '%(user)s' created" msgid "User '%(user)s' created"
msgstr "Benutzer '%(user)s' angelegt" msgstr "Benutzer '%(user)s' angelegt"
#: cps/admin.py:777 #: cps/admin.py:774
msgid "Edit e-mail server settings" msgid "Edit e-mail server settings"
msgstr "Einstellungen des E-Mail-Servers bearbeiten" msgstr "Einstellungen des E-Mail-Servers bearbeiten"
#: cps/admin.py:803 #: cps/admin.py:800
#, python-format #, python-format
msgid "Test e-mail successfully send to %(kindlemail)s" msgid "Test e-mail successfully send to %(kindlemail)s"
msgstr "Test-E-Mail wurde erfolgreich an %(kindlemail)s versendet" msgstr "Test-E-Mail wurde erfolgreich an %(kindlemail)s versendet"
#: cps/admin.py:806 #: cps/admin.py:803
#, python-format #, python-format
msgid "There was an error sending the Test e-mail: %(res)s" msgid "There was an error sending the Test e-mail: %(res)s"
msgstr "Es trat ein Fehler beim Versenden der Test-E-Mail auf: %(res)s" msgstr "Es trat ein Fehler beim Versenden der Test-E-Mail auf: %(res)s"
#: cps/admin.py:808 #: cps/admin.py:805
msgid "Please configure your e-mail address first..." msgid "Please configure your e-mail address first..."
msgstr "Bitte zuerst E-Mail Adresse konfigurieren..." msgstr "Bitte zuerst E-Mail Adresse konfigurieren..."
#: cps/admin.py:810 #: cps/admin.py:807
msgid "E-mail server settings updated" msgid "E-mail server settings updated"
msgstr "Einstellungen des E-Mail-Servers aktualisiert" msgstr "Einstellungen des E-Mail-Servers aktualisiert"
#: cps/admin.py:821 #: cps/admin.py:818
msgid "User not found" msgid "User not found"
msgstr "Benutzer nicht gefunden" msgstr "Benutzer nicht gefunden"
#: cps/admin.py:842 #: cps/admin.py:839
#, python-format #, python-format
msgid "User '%(nick)s' deleted" msgid "User '%(nick)s' deleted"
msgstr "Benutzer '%(nick)s' gelöscht" msgstr "Benutzer '%(nick)s' gelöscht"
#: cps/admin.py:845 #: cps/admin.py:842
msgid "No admin user remaining, can't delete user" msgid "No admin user remaining, can't delete user"
msgstr "Benutzer kann nicht gelöscht werden, es wäre kein Admin Benutzer übrig" msgstr "Benutzer kann nicht gelöscht werden, es wäre kein Admin Benutzer übrig"
#: cps/admin.py:851 #: cps/admin.py:848
msgid "No admin user remaining, can't remove admin role" msgid "No admin user remaining, can't remove admin role"
msgstr "Kein Admin Benutzer verblieben Admin Berechtigung kann nicht entfernt werden" msgstr "Kein Admin Benutzer verblieben Admin Berechtigung kann nicht entfernt werden"
#: cps/admin.py:887 cps/web.py:1515 #: cps/admin.py:884 cps/web.py:1520
msgid "Found an existing account for this e-mail address." msgid "Found an existing account for this e-mail address."
msgstr "Es existiert bereits ein Benutzer für diese E-Mailadresse." msgstr "Es existiert bereits ein Benutzer für diese E-Mailadresse."
#: cps/admin.py:897 cps/admin.py:912 cps/admin.py:932 cps/web.py:1490 #: cps/admin.py:894 cps/admin.py:909 cps/admin.py:929 cps/web.py:1495
#, python-format #, python-format
msgid "Edit User %(nick)s" msgid "Edit User %(nick)s"
msgstr "Benutzer %(nick)s bearbeiten" msgstr "Benutzer %(nick)s bearbeiten"
#: cps/admin.py:903 cps/web.py:1482 #: cps/admin.py:900 cps/web.py:1487
msgid "This username is already taken" msgid "This username is already taken"
msgstr "Benutzername ist schon vorhanden" msgstr "Benutzername ist schon vorhanden"
#: cps/admin.py:919 #: cps/admin.py:916
#, python-format #, python-format
msgid "User '%(nick)s' updated" msgid "User '%(nick)s' updated"
msgstr "Benutzer '%(nick)s' aktualisiert" msgstr "Benutzer '%(nick)s' aktualisiert"
#: cps/admin.py:922 #: cps/admin.py:919
msgid "An unknown error occured." msgid "An unknown error occured."
msgstr "Es ist ein unbekannter Fehler aufgetreten." msgstr "Es ist ein unbekannter Fehler aufgetreten."
#: cps/admin.py:943 #: cps/admin.py:940
#, python-format #, python-format
msgid "Password for user %(user)s reset" msgid "Password for user %(user)s reset"
msgstr "Passwort für Benutzer %(user)s wurde zurückgesetzt" msgstr "Passwort für Benutzer %(user)s wurde zurückgesetzt"
#: cps/admin.py:946 cps/web.py:1255 cps/web.py:1319 #: cps/admin.py:943 cps/web.py:1260 cps/web.py:1324
msgid "An unknown error occurred. Please try again later." msgid "An unknown error occurred. Please try again later."
msgstr "Es ist ein unbekannter Fehler aufgetreten. Bitte später erneut versuchen." msgstr "Es ist ein unbekannter Fehler aufgetreten. Bitte später erneut versuchen."
#: cps/admin.py:949 cps/web.py:1196 #: cps/admin.py:946 cps/web.py:1201
msgid "Please configure the SMTP mail settings first..." msgid "Please configure the SMTP mail settings first..."
msgstr "Bitte zuerst die SMTP-Einstellung konfigurieren ..." msgstr "Bitte zuerst die SMTP-Einstellung konfigurieren ..."
#: cps/admin.py:961 #: cps/admin.py:958
msgid "Logfile viewer" msgid "Logfile viewer"
msgstr "Logdatei Anzeige" msgstr "Logdatei Anzeige"
#: cps/admin.py:1000 #: cps/admin.py:997
msgid "Requesting update package" msgid "Requesting update package"
msgstr "Frage Update an" msgstr "Frage Update an"
#: cps/admin.py:1001 #: cps/admin.py:998
msgid "Downloading update package" msgid "Downloading update package"
msgstr "Lade Update herunter" msgstr "Lade Update herunter"
#: cps/admin.py:1002 #: cps/admin.py:999
msgid "Unzipping update package" msgid "Unzipping update package"
msgstr "Entpacke Update" msgstr "Entpacke Update"
#: cps/admin.py:1003 #: cps/admin.py:1000
msgid "Replacing files" msgid "Replacing files"
msgstr "Ersetze Dateien" msgstr "Ersetze Dateien"
#: cps/admin.py:1004 #: cps/admin.py:1001
msgid "Database connections are closed" msgid "Database connections are closed"
msgstr "Schließe Datenbankverbindungen" msgstr "Schließe Datenbankverbindungen"
#: cps/admin.py:1005 #: cps/admin.py:1002
msgid "Stopping server" msgid "Stopping server"
msgstr "Stoppe Server" msgstr "Stoppe Server"
#: cps/admin.py:1006 #: cps/admin.py:1003
msgid "Update finished, please press okay and reload page" msgid "Update finished, please press okay and reload page"
msgstr "Update abgeschlossen, bitte okay drücken und Seite neu laden" msgstr "Update abgeschlossen, bitte okay drücken und Seite neu laden"
#: cps/admin.py:1007 cps/admin.py:1008 cps/admin.py:1009 cps/admin.py:1010 #: cps/admin.py:1004 cps/admin.py:1005 cps/admin.py:1006 cps/admin.py:1007
#: cps/admin.py:1011 #: cps/admin.py:1008
msgid "Update failed:" msgid "Update failed:"
msgstr "Update fehlgeschlagen:" msgstr "Update fehlgeschlagen:"
#: cps/admin.py:1007 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522 #: cps/admin.py:1004 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522
msgid "HTTP Error" msgid "HTTP Error"
msgstr "HTTP Fehler" msgstr "HTTP Fehler"
#: cps/admin.py:1008 cps/updater.py:321 cps/updater.py:524 #: cps/admin.py:1005 cps/updater.py:321 cps/updater.py:524
msgid "Connection error" msgid "Connection error"
msgstr "Verbindungsfehler" msgstr "Verbindungsfehler"
#: cps/admin.py:1009 cps/updater.py:323 cps/updater.py:526 #: cps/admin.py:1006 cps/updater.py:323 cps/updater.py:526
msgid "Timeout while establishing connection" msgid "Timeout while establishing connection"
msgstr "Timeout beim Verbindungsaufbau" msgstr "Timeout beim Verbindungsaufbau"
#: cps/admin.py:1010 cps/updater.py:325 cps/updater.py:528 #: cps/admin.py:1007 cps/updater.py:325 cps/updater.py:528
msgid "General error" msgid "General error"
msgstr "Allgemeiner Fehler" msgstr "Allgemeiner Fehler"
#: cps/admin.py:1011 #: cps/admin.py:1008
msgid "Update File Could Not be Saved in Temp Dir" msgid "Update File Could Not be Saved in Temp Dir"
msgstr "Updatedatei konnte nicht in Temporärem Ordner gespeichert werden" msgstr "Updatedatei konnte nicht in Temporärem Ordner gespeichert werden"
@ -292,7 +292,7 @@ msgstr "Buch Format erfolgreich gelöscht"
msgid "Book Successfully Deleted" msgid "Book Successfully Deleted"
msgstr "Buch erfolgreich geschlöscht" msgstr "Buch erfolgreich geschlöscht"
#: cps/editbooks.py:253 cps/editbooks.py:489 #: cps/editbooks.py:253 cps/editbooks.py:490
msgid "Error opening eBook. File does not exist or file is not accessible" msgid "Error opening eBook. File does not exist or file is not accessible"
msgstr "Öffnen des Buchs fehlgeschlagen. Datei existiert nicht oder ist nicht zugänglich" msgstr "Öffnen des Buchs fehlgeschlagen. Datei existiert nicht oder ist nicht zugänglich"
@ -305,16 +305,16 @@ msgstr "Metadaten editieren"
msgid "%(langname)s is not a valid language" msgid "%(langname)s is not a valid language"
msgstr "%(langname)s ist keine gültige Sprache" msgstr "%(langname)s ist keine gültige Sprache"
#: cps/editbooks.py:413 cps/editbooks.py:663 #: cps/editbooks.py:413 cps/editbooks.py:664
#, python-format #, python-format
msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" 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" msgstr "Dateiendung '%(ext)s' kann nicht auf diesen Server hochgeladen werden"
#: cps/editbooks.py:417 cps/editbooks.py:667 #: cps/editbooks.py:417 cps/editbooks.py:668
msgid "File to be uploaded must have an extension" msgid "File to be uploaded must have an extension"
msgstr "Dateien müssen eine Erweiterung haben, um hochgeladen zu werden" msgstr "Dateien müssen eine Erweiterung haben, um hochgeladen zu werden"
#: cps/editbooks.py:429 cps/editbooks.py:701 #: cps/editbooks.py:429 cps/editbooks.py:702
#, python-format #, python-format
msgid "Failed to create path %(path)s (Permission denied)." msgid "Failed to create path %(path)s (Permission denied)."
msgstr "Fehler beim Erzeugen des Pfads %(path)s (Zugriff verweigert)" msgstr "Fehler beim Erzeugen des Pfads %(path)s (Zugriff verweigert)"
@ -329,48 +329,48 @@ msgstr "Fehler beim Speichern der Datei %(file)s."
msgid "File format %(ext)s added to %(book)s" msgid "File format %(ext)s added to %(book)s"
msgstr "Dateiformat %(ext)s zu %(book)s hinzugefügt" msgstr "Dateiformat %(ext)s zu %(book)s hinzugefügt"
#: cps/editbooks.py:606 #: cps/editbooks.py:607
msgid "Metadata successfully updated" msgid "Metadata successfully updated"
msgstr "Metadaten wurden erfolgreich aktualisiert" msgstr "Metadaten wurden erfolgreich aktualisiert"
#: cps/editbooks.py:615 #: cps/editbooks.py:616
msgid "Error editing book, please check logfile for details" msgid "Error editing book, please check logfile for details"
msgstr "Fehler beim Editieren des Buchs, Details im Logfile" msgstr "Fehler beim Editieren des Buchs, Details im Logfile"
#: cps/editbooks.py:675 #: cps/editbooks.py:676
#, python-format #, python-format
msgid "File %(filename)s could not saved to temp dir" msgid "File %(filename)s could not saved to temp dir"
msgstr "Die Datei %(filename)s konnte nicht im temporären Ordner gespeichert werden" msgstr "Die Datei %(filename)s konnte nicht im temporären Ordner gespeichert werden"
#: cps/editbooks.py:692 #: cps/editbooks.py:693
msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgid "Uploaded book probably exists in the library, consider to change before upload new: "
msgstr "Das hochgeladene Buch existiert evtl. schon in der Bibliothek: " msgstr "Das hochgeladene Buch existiert evtl. schon in der Bibliothek: "
#: cps/editbooks.py:707 #: cps/editbooks.py:709
#, python-format #, python-format
msgid "Failed to store file %(file)s (Permission denied)." msgid "Failed to Move File %(file)s: %(error)s"
msgstr "Fehler beim Speichern der Datei %(file)s (Zugriff verweigert)" msgstr "Fehler beim Verschieben der Datei %(file)s: %(error)s"
#: cps/editbooks.py:713 #: cps/editbooks.py:723
#, python-format #, python-format
msgid "Failed to delete file %(file)s (Permission denied)." msgid "Failed to Move Cover File %(file)s: %(error)s"
msgstr "Fehler beim Löschen von Datei %(file)s (Zugriff verweigert)" msgstr "Fehler beim Verschieben der Cover Datei %(file)s: %(error)s"
#: cps/editbooks.py:804 #: cps/editbooks.py:808
#, python-format #, python-format
msgid "File %(file)s uploaded" msgid "File %(file)s uploaded"
msgstr "Datei %(file)s hochgeladen" msgstr "Datei %(file)s hochgeladen"
#: cps/editbooks.py:833 #: cps/editbooks.py:837
msgid "Source or destination format for conversion missing" msgid "Source or destination format for conversion missing"
msgstr "Quell- oder Zielformat für Konvertierung fehlt" msgstr "Quell- oder Zielformat für Konvertierung fehlt"
#: cps/editbooks.py:841 #: cps/editbooks.py:845
#, python-format #, python-format
msgid "Book successfully queued for converting to %(book_format)s" msgid "Book successfully queued for converting to %(book_format)s"
msgstr "Buch wurde erfolgreich für die Konvertierung nach %(book_format)s eingereiht" msgstr "Buch wurde erfolgreich für die Konvertierung nach %(book_format)s eingereiht"
#: cps/editbooks.py:845 #: cps/editbooks.py:849
#, python-format #, python-format
msgid "There was an error converting this book: %(res)s" msgid "There was an error converting this book: %(res)s"
msgstr "Es trat ein Fehler beim Konvertieren des Buches auf: %(res)s" msgstr "Es trat ein Fehler beim Konvertieren des Buches auf: %(res)s"
@ -444,111 +444,111 @@ msgstr "E-Mail: %(book)s"
msgid "The requested file could not be read. Maybe wrong permissions?" msgid "The requested file could not be read. Maybe wrong permissions?"
msgstr "Die angeforderte Datei konnte nicht gelesen werden. Evtl. falsche Zugriffsrechte?" msgstr "Die angeforderte Datei konnte nicht gelesen werden. Evtl. falsche Zugriffsrechte?"
#: cps/helper.py:299 #: cps/helper.py:300
#, python-format #, python-format
msgid "Deleting book %(id)s failed, path has subfolders: %(path)s" msgid "Deleting book %(id)s failed, path has subfolders: %(path)s"
msgstr "Löschen von Buch %(id)s fehlgeschlagen, Pfad hat Unterpfade: %(path)s" msgstr "Löschen von Buch %(id)s fehlgeschlagen, Pfad hat Unterpfade: %(path)s"
#: cps/helper.py:309 #: cps/helper.py:310
#, python-format #, python-format
msgid "Deleting book %(id)s failed: %(message)s" msgid "Deleting book %(id)s failed: %(message)s"
msgstr "Löschen von Buch %(id)s fehlgeschlagen: %(message)s" msgstr "Löschen von Buch %(id)s fehlgeschlagen: %(message)s"
#: cps/helper.py:319 #: cps/helper.py:320
#, python-format #, python-format
msgid "Deleting book %(id)s failed, book path not valid: %(path)s" msgid "Deleting book %(id)s failed, book path not valid: %(path)s"
msgstr "Löschen von Buch %(id)s fehlgeschlagen, Buch Pfad nicht gültig: %(path)s" msgstr "Löschen von Buch %(id)s fehlgeschlagen, Buch Pfad nicht gültig: %(path)s"
#: cps/helper.py:354 #: cps/helper.py:355
#, python-format #, python-format
msgid "Rename title from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgid "Rename title from: '%(src)s' to '%(dest)s' failed with error: %(error)s"
msgstr "Umbenennen des Titels '%(src)s' zu '%(dest)s' schlug fehl: %(error)s" msgstr "Umbenennen des Titels '%(src)s' zu '%(dest)s' schlug fehl: %(error)s"
#: cps/helper.py:364 #: cps/helper.py:365
#, python-format #, python-format
msgid "Rename author from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgid "Rename author from: '%(src)s' to '%(dest)s' failed with error: %(error)s"
msgstr "Umbenennen des Authors '%(src)s' zu '%(dest)s' schlug fehl: %(error)s" msgstr "Umbenennen des Authors '%(src)s' zu '%(dest)s' schlug fehl: %(error)s"
#: cps/helper.py:378 #: cps/helper.py:379
#, python-format #, python-format
msgid "Rename file in path '%(src)s' to '%(dest)s' failed with error: %(error)s" msgid "Rename file in path '%(src)s' to '%(dest)s' failed with error: %(error)s"
msgstr "Umbenennen der Datei im Pfad '%(src)s' nach '%(dest)s' ist fehlgeschlagen: %(error)s" msgstr "Umbenennen der Datei im Pfad '%(src)s' nach '%(dest)s' ist fehlgeschlagen: %(error)s"
#: cps/helper.py:404 cps/helper.py:414 cps/helper.py:422 #: cps/helper.py:405 cps/helper.py:415 cps/helper.py:423
#, python-format #, python-format
msgid "File %(file)s not found on Google Drive" msgid "File %(file)s not found on Google Drive"
msgstr "Datei %(file)s wurde nicht auf Google Drive gefunden" msgstr "Datei %(file)s wurde nicht auf Google Drive gefunden"
#: cps/helper.py:443 #: cps/helper.py:444
#, python-format #, python-format
msgid "Book path %(path)s not found on Google Drive" msgid "Book path %(path)s not found on Google Drive"
msgstr "Buchpfad %(path)s wurde nicht auf Google Drive gefunden" msgstr "Buchpfad %(path)s wurde nicht auf Google Drive gefunden"
#: cps/helper.py:550 #: cps/helper.py:551
msgid "Failed to create path for cover" msgid "Failed to create path for cover"
msgstr "Fehler beim Erzeugen des Ordners für die Coverdatei" msgstr "Fehler beim Erzeugen des Ordners für die Coverdatei"
#: cps/helper.py:555 #: cps/helper.py:556
msgid "Cover-file is not a valid image file, or could not be stored" 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" msgstr "Cover Datei ist keine gültige Bilddatei, kann nicht gespeichert werden"
#: cps/helper.py:566 #: cps/helper.py:567
msgid "Only jpg/jpeg/png/webp files are supported as coverfile" msgid "Only jpg/jpeg/png/webp files are supported as coverfile"
msgstr "Es werden nur jpg/jpeg/png/webp Dateien als Cover untertützt" msgstr "Es werden nur jpg/jpeg/png/webp Dateien als Cover untertützt"
#: cps/helper.py:580 #: cps/helper.py:581
msgid "Only jpg/jpeg files are supported as coverfile" msgid "Only jpg/jpeg files are supported as coverfile"
msgstr "Es werden nur jpg/jpeg Dateien als Cover untertützt" msgstr "Es werden nur jpg/jpeg Dateien als Cover untertützt"
#: cps/helper.py:622 #: cps/helper.py:625
msgid "Unrar binary file not found" msgid "Unrar binary file not found"
msgstr "UnRar Programm nicht gefunden" msgstr "UnRar Programm nicht gefunden"
#: cps/helper.py:635 #: cps/helper.py:638
msgid "Error excecuting UnRar" msgid "Error excecuting UnRar"
msgstr "Fehler beim ausführen von UnRar" msgstr "Fehler beim ausführen von UnRar"
#: cps/helper.py:691 #: cps/helper.py:694
msgid "Waiting" msgid "Waiting"
msgstr "Wartend" msgstr "Wartend"
#: cps/helper.py:693 #: cps/helper.py:696
msgid "Failed" msgid "Failed"
msgstr "Fehlgeschlagen" msgstr "Fehlgeschlagen"
#: cps/helper.py:695 #: cps/helper.py:698
msgid "Started" msgid "Started"
msgstr "Gestartet" msgstr "Gestartet"
#: cps/helper.py:697 #: cps/helper.py:700
msgid "Finished" msgid "Finished"
msgstr "Beendet" msgstr "Beendet"
#: cps/helper.py:699 #: cps/helper.py:702
msgid "Unknown Status" msgid "Unknown Status"
msgstr "Unbekannter Status" msgstr "Unbekannter Status"
#: cps/helper.py:704 #: cps/helper.py:707
msgid "E-mail: " msgid "E-mail: "
msgstr "E-Mail: " msgstr "E-Mail: "
#: cps/helper.py:706 cps/helper.py:710 #: cps/helper.py:709 cps/helper.py:713
msgid "Convert: " msgid "Convert: "
msgstr "Konvertiere: " msgstr "Konvertiere: "
#: cps/helper.py:708 #: cps/helper.py:711
msgid "Upload: " msgid "Upload: "
msgstr "Upload: " msgstr "Upload: "
#: cps/helper.py:712 #: cps/helper.py:715
msgid "Unknown Task: " msgid "Unknown Task: "
msgstr "Unbekannte Aufgabe: " msgstr "Unbekannte Aufgabe: "
#: cps/kobo_auth.py:126 #: cps/kobo_auth.py:130
msgid "PLease access calibre-web from non localhost to get valid api_endpoint for kobo device" msgid "PLease access calibre-web from non localhost to get valid api_endpoint for kobo device"
msgstr "Bitte nicht von \"localhost\" auf Calibre-Web zugreifen, um einen gültigen api_endpoint für Kobo Geräte zu erhalten" msgstr "Bitte nicht von \"localhost\" auf Calibre-Web zugreifen, um einen gültigen api_endpoint für Kobo Geräte zu erhalten"
#: cps/kobo_auth.py:129 cps/kobo_auth.py:149 #: cps/kobo_auth.py:133 cps/kobo_auth.py:153
msgid "Kobo Setup" msgid "Kobo Setup"
msgstr "Kobo Setup" msgstr "Kobo Setup"
@ -573,7 +573,7 @@ msgstr "Login mit Google fehlgeschlagen."
msgid "Failed to fetch user info from Google." msgid "Failed to fetch user info from Google."
msgstr "Laden der Benutzerinformationen von Google fehlgeschlagen." msgstr "Laden der Benutzerinformationen von Google fehlgeschlagen."
#: cps/oauth_bb.py:225 cps/web.py:1291 cps/web.py:1431 #: cps/oauth_bb.py:225 cps/web.py:1296 cps/web.py:1436
#, python-format #, python-format
msgid "you are now logged in as: '%(nickname)s'" msgid "you are now logged in as: '%(nickname)s'"
msgstr "Du bist nun eingeloggt als '%(nickname)s'" msgstr "Du bist nun eingeloggt als '%(nickname)s'"
@ -725,7 +725,7 @@ msgstr "Beliebte Bücher"
msgid "Show Hot Books" msgid "Show Hot Books"
msgstr "Zeige beliebte Bücher" msgstr "Zeige beliebte Bücher"
#: cps/templates/index.xml:24 cps/ub.py:70 cps/web.py:615 #: cps/templates/index.xml:24 cps/ub.py:70 cps/web.py:616
msgid "Top Rated Books" msgid "Top Rated Books"
msgstr "Best bewertete Bücher" msgstr "Best bewertete Bücher"
@ -734,7 +734,7 @@ msgid "Show Top Rated Books"
msgstr "Bestbewertete Bücher anzeigen" msgstr "Bestbewertete Bücher anzeigen"
#: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:73 #: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:73
#: cps/web.py:1125 #: cps/web.py:1131
msgid "Read Books" msgid "Read Books"
msgstr "Gelesene Bücher" msgstr "Gelesene Bücher"
@ -743,7 +743,7 @@ msgid "Show read and unread"
msgstr "Zeige gelesene/ungelesene Bücher" msgstr "Zeige gelesene/ungelesene Bücher"
#: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:77 #: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:77
#: cps/web.py:1129 #: cps/web.py:1134
msgid "Unread Books" msgid "Unread Books"
msgstr "Ungelesene Bücher" msgstr "Ungelesene Bücher"
@ -759,7 +759,7 @@ msgstr "Entdecke"
msgid "Show random books" msgid "Show random books"
msgstr "Zeige zufällige Bücher" msgstr "Zeige zufällige Bücher"
#: cps/templates/index.xml:75 cps/ub.py:83 cps/web.py:897 #: cps/templates/index.xml:75 cps/ub.py:83 cps/web.py:898
msgid "Categories" msgid "Categories"
msgstr "Kategorien" msgstr "Kategorien"
@ -768,7 +768,7 @@ msgid "Show category selection"
msgstr "Zeige Kategorienauswahl" msgstr "Zeige Kategorienauswahl"
#: cps/templates/book_edit.html:84 cps/templates/index.xml:82 #: cps/templates/book_edit.html:84 cps/templates/index.xml:82
#: cps/templates/search_form.html:53 cps/ub.py:86 cps/web.py:825 #: cps/templates/search_form.html:53 cps/ub.py:86 cps/web.py:826
msgid "Series" msgid "Series"
msgstr "Serien" msgstr "Serien"
@ -784,7 +784,7 @@ msgstr "Autoren"
msgid "Show author selection" msgid "Show author selection"
msgstr "Zeige Autorenauswahl" msgstr "Zeige Autorenauswahl"
#: cps/templates/index.xml:68 cps/ub.py:93 cps/web.py:809 #: cps/templates/index.xml:68 cps/ub.py:93 cps/web.py:810
msgid "Publishers" msgid "Publishers"
msgstr "Verleger" msgstr "Verleger"
@ -793,7 +793,7 @@ msgid "Show publisher selection"
msgstr "Zeige Verlegerauswahl" msgstr "Zeige Verlegerauswahl"
#: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:96 #: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:96
#: cps/web.py:880 #: cps/web.py:881
msgid "Languages" msgid "Languages"
msgstr "Sprachen" msgstr "Sprachen"
@ -817,7 +817,7 @@ msgstr "Dateiformate"
msgid "Show file formats selection" msgid "Show file formats selection"
msgstr "Zeige Dateiformatauswahl" msgstr "Zeige Dateiformatauswahl"
#: cps/ub.py:107 cps/web.py:1150 #: cps/ub.py:107 cps/web.py:1155
msgid "Archived Books" msgid "Archived Books"
msgstr "Archivierte Bücher" msgstr "Archivierte Bücher"
@ -854,223 +854,223 @@ 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." 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." msgstr "Klicke auf den Button unten, um auf die letzte stabile Version zu aktualisieren."
#: cps/web.py:306 #: cps/web.py:307
#, python-format #, python-format
msgid "Error: %(ldaperror)s" msgid "Error: %(ldaperror)s"
msgstr "Fehler: %(ldaperror)s" msgstr "Fehler: %(ldaperror)s"
#: cps/web.py:310 #: cps/web.py:311
msgid "Error: No user returned in response of LDAP server" msgid "Error: No user returned in response of LDAP server"
msgstr "Fehler: Keine Benutzerinformationen von LDAP Server empfangen" msgstr "Fehler: Keine Benutzerinformationen von LDAP Server empfangen"
#: cps/web.py:358 #: cps/web.py:359
msgid "Failed to Create at Least One LDAP User" msgid "Failed to Create at Least One LDAP User"
msgstr "Mindestens ein LDAP Benutzer konnte nicht erzeugt werden" msgstr "Mindestens ein LDAP Benutzer konnte nicht erzeugt werden"
#: cps/web.py:361 #: cps/web.py:362
msgid "At Least One LDAP User Not Found in Database" msgid "At Least One LDAP User Not Found in Database"
msgstr "Mindestens ein LDAP Benutzer wurde nicht in der Datenbank gefudnen" msgstr "Mindestens ein LDAP Benutzer wurde nicht in der Datenbank gefudnen"
#: cps/web.py:363 #: cps/web.py:364
msgid "User Successfully Imported" msgid "User Successfully Imported"
msgstr "Benutzer erfolgreich hinzugefügt" msgstr "Benutzer erfolgreich hinzugefügt"
#: cps/web.py:587 #: cps/web.py:588
msgid "Recently Added Books" msgid "Recently Added Books"
msgstr "Kürzlich hinzugefügte Bücher" msgstr "Kürzlich hinzugefügte Bücher"
#: cps/templates/index.html:5 cps/web.py:623 #: cps/templates/index.html:5 cps/web.py:624
msgid "Discover (Random Books)" msgid "Discover (Random Books)"
msgstr "Zufällige Bücher" msgstr "Zufällige Bücher"
#: cps/web.py:651 #: cps/web.py:652
msgid "Books" msgid "Books"
msgstr "Bücher" msgstr "Bücher"
#: cps/web.py:678 #: cps/web.py:679
msgid "Hot Books (Most Downloaded)" msgid "Hot Books (Most Downloaded)"
msgstr "Beliebte Bücher (am meisten Downloads)" msgstr "Beliebte Bücher (am meisten Downloads)"
#: cps/web.py:688 #: cps/web.py:689
msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible" 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" msgstr "Öffnen des Buchs fehlgeschlagen. Datei existiert nicht oder ist nicht zugänglich"
#: cps/web.py:702 #: cps/web.py:703
#, python-format #, python-format
msgid "Author: %(name)s" msgid "Author: %(name)s"
msgstr "Author: %(name)s" msgstr "Author: %(name)s"
#: cps/web.py:714 #: cps/web.py:715
#, python-format #, python-format
msgid "Publisher: %(name)s" msgid "Publisher: %(name)s"
msgstr "Verleger: %(name)s" msgstr "Verleger: %(name)s"
#: cps/web.py:725 #: cps/web.py:726
#, python-format #, python-format
msgid "Series: %(serie)s" msgid "Series: %(serie)s"
msgstr "Serie: %(serie)s" msgstr "Serie: %(serie)s"
#: cps/web.py:736 #: cps/web.py:737
#, python-format #, python-format
msgid "Rating: %(rating)s stars" msgid "Rating: %(rating)s stars"
msgstr "Bewertung: %(rating)s Sterne" msgstr "Bewertung: %(rating)s Sterne"
#: cps/web.py:748 #: cps/web.py:749
#, python-format #, python-format
msgid "File format: %(format)s" msgid "File format: %(format)s"
msgstr "Dateiformat: %(format)s" msgstr "Dateiformat: %(format)s"
#: cps/web.py:760 #: cps/web.py:761
#, python-format #, python-format
msgid "Category: %(name)s" msgid "Category: %(name)s"
msgstr "Kategorie: %(name)s" msgstr "Kategorie: %(name)s"
#: cps/web.py:777 #: cps/web.py:778
#, python-format #, python-format
msgid "Language: %(name)s" msgid "Language: %(name)s"
msgstr "Sprache: %(name)s" msgstr "Sprache: %(name)s"
#: cps/web.py:839 #: cps/web.py:840
msgid "Ratings list" msgid "Ratings list"
msgstr "Bewertungsliste" msgstr "Bewertungsliste"
#: cps/web.py:852 #: cps/web.py:853
msgid "File formats list" msgid "File formats list"
msgstr "Liste der Dateiformate" msgstr "Liste der Dateiformate"
#: cps/templates/layout.html:73 cps/templates/tasks.html:7 cps/web.py:911 #: cps/templates/layout.html:73 cps/templates/tasks.html:7 cps/web.py:912
msgid "Tasks" msgid "Tasks"
msgstr "Aufgaben" msgstr "Aufgaben"
#: cps/templates/book_edit.html:235 cps/templates/feed.xml:33 #: cps/templates/book_edit.html:235 cps/templates/feed.xml:33
#: cps/templates/layout.html:44 cps/templates/layout.html:47 #: cps/templates/layout.html:44 cps/templates/layout.html:47
#: cps/templates/search_form.html:170 cps/web.py:937 cps/web.py:942 #: cps/templates/search_form.html:174 cps/web.py:938 cps/web.py:943
msgid "Search" msgid "Search"
msgstr "Suche" msgstr "Suche"
#: cps/web.py:993 #: cps/web.py:994
msgid "Published after " msgid "Published after "
msgstr "Herausgegeben nach dem " msgstr "Herausgegeben nach dem "
#: cps/web.py:1000 #: cps/web.py:1001
msgid "Published before " msgid "Published before "
msgstr "Herausgegeben vor dem " msgstr "Herausgegeben vor dem "
#: cps/web.py:1014 #: cps/web.py:1015
#, python-format #, python-format
msgid "Rating <= %(rating)s" msgid "Rating <= %(rating)s"
msgstr "Bewertung <= %(rating)s" msgstr "Bewertung <= %(rating)s"
#: cps/web.py:1016 #: cps/web.py:1017
#, python-format #, python-format
msgid "Rating >= %(rating)s" msgid "Rating >= %(rating)s"
msgstr "Bewertung >= %(rating)s" msgstr "Bewertung >= %(rating)s"
#: cps/web.py:1082 cps/web.py:1096 #: cps/web.py:1083 cps/web.py:1097
msgid "search" msgid "search"
msgstr "Suche" msgstr "Suche"
#: cps/web.py:1201 #: cps/web.py:1206
#, python-format #, python-format
msgid "Book successfully queued for sending to %(kindlemail)s" msgid "Book successfully queued for sending to %(kindlemail)s"
msgstr "Buch erfolgreich zum Senden an %(kindlemail)s eingereiht" msgstr "Buch erfolgreich zum Senden an %(kindlemail)s eingereiht"
#: cps/web.py:1205 #: cps/web.py:1210
#, python-format #, python-format
msgid "Oops! There was an error sending this book: %(res)s" msgid "Oops! There was an error sending this book: %(res)s"
msgstr "Beim Senden des Buchs trat ein Fehler auf: %(res)s" msgstr "Beim Senden des Buchs trat ein Fehler auf: %(res)s"
#: cps/web.py:1207 #: cps/web.py:1212
msgid "Please update your profile with a valid Send to Kindle E-mail Address." msgid "Please update your profile with a valid Send to Kindle E-mail Address."
msgstr "Bitte zuerst die Kindle E-Mailadresse konfigurieren..." msgstr "Bitte zuerst die Kindle E-Mailadresse konfigurieren..."
#: cps/web.py:1224 #: cps/web.py:1229
msgid "E-Mail server is not configured, please contact your administrator!" msgid "E-Mail server is not configured, please contact your administrator!"
msgstr "Der E-Mail Server ist nicht konfigurierte, bitte den Administrator kontaktieren!" msgstr "Der E-Mail Server ist nicht konfigurierte, bitte den Administrator kontaktieren!"
#: cps/web.py:1225 cps/web.py:1231 cps/web.py:1256 cps/web.py:1260 #: cps/web.py:1230 cps/web.py:1236 cps/web.py:1261 cps/web.py:1265
#: cps/web.py:1265 cps/web.py:1269 #: cps/web.py:1270 cps/web.py:1274
msgid "register" msgid "register"
msgstr "Registieren" msgstr "Registieren"
#: cps/web.py:1258 #: cps/web.py:1263
msgid "Your e-mail is not allowed to register" msgid "Your e-mail is not allowed to register"
msgstr "Diese E-Mail ist nicht für die Registrierung zugelassen" msgstr "Diese E-Mail ist nicht für die Registrierung zugelassen"
#: cps/web.py:1261 #: cps/web.py:1266
msgid "Confirmation e-mail was send to your e-mail account." msgid "Confirmation e-mail was send to your e-mail account."
msgstr "Eine Bestätigungs-E-Mail wurde an deinen E-Mail Account versendet." msgstr "Eine Bestätigungs-E-Mail wurde an deinen E-Mail Account versendet."
#: cps/web.py:1264 #: cps/web.py:1269
msgid "This username or e-mail address is already in use." msgid "This username or e-mail address is already in use."
msgstr "Benutzername oder E-Mailadresse ist bereits in Verwendung." msgstr "Benutzername oder E-Mailadresse ist bereits in Verwendung."
#: cps/web.py:1281 #: cps/web.py:1286
msgid "Cannot activate LDAP authentication" msgid "Cannot activate LDAP authentication"
msgstr "LDAP-Authentifizierung kann nicht aktiviert werden" msgstr "LDAP-Authentifizierung kann nicht aktiviert werden"
#: cps/web.py:1298 #: cps/web.py:1303
#, python-format #, python-format
msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" 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" msgstr "Rückfall Login als: '%(nickname)s', LDAP Server ist nicht erreichbar, oder der Nutzer ist unbekannt"
#: cps/web.py:1304 #: cps/web.py:1309
#, python-format #, python-format
msgid "Could not login: %(message)s" msgid "Could not login: %(message)s"
msgstr "Login nicht erfolgreich: %(message)s" msgstr "Login nicht erfolgreich: %(message)s"
#: cps/web.py:1308 cps/web.py:1332 #: cps/web.py:1313 cps/web.py:1337
msgid "Wrong Username or Password" msgid "Wrong Username or Password"
msgstr "Falscher Benutzername oder Passwort" msgstr "Falscher Benutzername oder Passwort"
#: cps/web.py:1315 #: cps/web.py:1320
msgid "New Password was send to your email address" msgid "New Password was send to your email address"
msgstr "Das neue Passwort wurde an die E-Mail Adresse verschickt" msgstr "Das neue Passwort wurde an die E-Mail Adresse verschickt"
#: cps/web.py:1321 #: cps/web.py:1326
msgid "Please enter valid username to reset password" msgid "Please enter valid username to reset password"
msgstr "Bitte einen gültigen Benutzernamen zum Zurücksetzen des Passworts angeben" msgstr "Bitte einen gültigen Benutzernamen zum Zurücksetzen des Passworts angeben"
#: cps/web.py:1327 #: cps/web.py:1332
#, python-format #, python-format
msgid "You are now logged in as: '%(nickname)s'" msgid "You are now logged in as: '%(nickname)s'"
msgstr "Eingeloggt als: '%(nickname)s'" msgstr "Eingeloggt als: '%(nickname)s'"
#: cps/web.py:1336 cps/web.py:1363 #: cps/web.py:1341 cps/web.py:1368
msgid "login" msgid "login"
msgstr "Login" msgstr "Login"
#: cps/web.py:1375 cps/web.py:1409 #: cps/web.py:1380 cps/web.py:1414
msgid "Token not found" msgid "Token not found"
msgstr "Token wurde nicht gefunden" msgstr "Token wurde nicht gefunden"
#: cps/web.py:1384 cps/web.py:1417 #: cps/web.py:1389 cps/web.py:1422
msgid "Token has expired" msgid "Token has expired"
msgstr "Token ist abgelaufen" msgstr "Token ist abgelaufen"
#: cps/web.py:1393 #: cps/web.py:1398
msgid "Success! Please return to your device" msgid "Success! Please return to your device"
msgstr "Erfolg! Bitte zum Gerät zurückkehren" msgstr "Erfolg! Bitte zum Gerät zurückkehren"
#: cps/web.py:1474 cps/web.py:1519 cps/web.py:1525 #: cps/web.py:1479 cps/web.py:1524 cps/web.py:1530
#, python-format #, python-format
msgid "%(name)s's profile" msgid "%(name)s's profile"
msgstr "%(name)s's Profil" msgstr "%(name)s's Profil"
#: cps/web.py:1521 #: cps/web.py:1526
msgid "Profile updated" msgid "Profile updated"
msgstr "Profil aktualisiert" msgstr "Profil aktualisiert"
#: cps/web.py:1538 cps/web.py:1642 #: cps/web.py:1543 cps/web.py:1647
msgid "Error opening eBook. File does not exist or file is not accessible:" msgid "Error opening eBook. File does not exist or file is not accessible:"
msgstr "Fehler beim Öffnen des eBooks. Datei existiert nicht oder ist nicht zugänglich:" msgstr "Fehler beim Öffnen des eBooks. Datei existiert nicht oder ist nicht zugänglich:"
#: cps/web.py:1550 cps/web.py:1553 cps/web.py:1556 cps/web.py:1563 #: cps/web.py:1555 cps/web.py:1558 cps/web.py:1561 cps/web.py:1568
#: cps/web.py:1568 #: cps/web.py:1573
msgid "Read a Book" msgid "Read a Book"
msgstr "Lese ein Buch" msgstr "Lese ein Buch"
#: cps/web.py:1579 #: cps/web.py:1584
msgid "Error opening eBook. File does not exist or file is not accessible." msgid "Error opening eBook. File does not exist or file is not accessible."
msgstr "Fehler beim Öffnen des eBooks. Datei existiert nicht oder ist nicht zugänglich." msgstr "Fehler beim Öffnen des eBooks. Datei existiert nicht oder ist nicht zugänglich."
@ -1296,13 +1296,13 @@ msgid "In Library"
msgstr "In Bibliothek" msgstr "In Bibliothek"
#: cps/templates/author.html:34 cps/templates/list.html:14 #: cps/templates/author.html:34 cps/templates/list.html:14
#: cps/templates/search.html:41 #: cps/templates/search.html:38
msgid "All" msgid "All"
msgstr "Alle" msgstr "Alle"
#: cps/templates/author.html:58 cps/templates/author.html:110 #: cps/templates/author.html:58 cps/templates/author.html:110
#: cps/templates/discover.html:27 cps/templates/index.html:26 #: cps/templates/discover.html:27 cps/templates/index.html:26
#: cps/templates/index.html:89 cps/templates/search.html:67 #: cps/templates/index.html:89 cps/templates/search.html:64
#: cps/templates/shelf.html:36 #: cps/templates/shelf.html:36
msgid "reduce" msgid "reduce"
msgstr "Reduzieren" msgstr "Reduzieren"
@ -1931,6 +1931,12 @@ msgstr "Beschreibung:"
msgid "Add to shelf" msgid "Add to shelf"
msgstr "Zu Bücherregal hinzufügen" msgstr "Zu Bücherregal hinzufügen"
#: cps/templates/detail.html:243 cps/templates/detail.html:260
#: cps/templates/feed.xml:79 cps/templates/layout.html:136
#: cps/templates/layout.html:140 cps/templates/search.html:20
msgid "(Public)"
msgstr "(Öffentlich)"
#: cps/templates/detail.html:274 #: cps/templates/detail.html:274
msgid "Edit Metadata" msgid "Edit Metadata"
msgstr "Metadaten bearbeiten" msgstr "Metadaten bearbeiten"
@ -1979,11 +1985,6 @@ msgstr "Soll diese Domain-Regel wirklich gelöscht werden?"
msgid "Next" msgid "Next"
msgstr "Nächste" msgstr "Nächste"
#: cps/templates/feed.xml:79 cps/templates/layout.html:136
#: cps/templates/layout.html:140
msgid "(Public)"
msgstr "(Öffentlich)"
#: cps/templates/generate_kobo_auth_url.html:5 #: cps/templates/generate_kobo_auth_url.html:5
msgid "Open the .kobo/Kobo eReader.conf file in a text editor and add (or edit):" msgid "Open the .kobo/Kobo eReader.conf file in a text editor and add (or edit):"
msgstr "Öffne ddie .kobo/Kobo eReader.conf Datei in einem Texteditor und füge hinzu (oder ersetze):" msgstr "Öffne ddie .kobo/Kobo eReader.conf Datei in einem Texteditor und füge hinzu (oder ersetze):"

View File

@ -8,7 +8,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Calibre-Web\n" "Project-Id-Version: Calibre-Web\n"
"Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n" "Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n"
"POT-Creation-Date: 2020-05-01 17:15+0200\n" "POT-Creation-Date: 2020-05-23 08:46+0200\n"
"PO-Revision-Date: 2019-07-26 11:44+0100\n" "PO-Revision-Date: 2019-07-26 11:44+0100\n"
"Last-Translator: minakmostoles <xxx@xxx.com>\n" "Last-Translator: minakmostoles <xxx@xxx.com>\n"
"Language: es\n" "Language: es\n"
@ -48,9 +48,9 @@ msgstr ""
msgid "Unknown command" msgid "Unknown command"
msgstr "" msgstr ""
#: cps/admin.py:115 cps/editbooks.py:504 cps/editbooks.py:514 #: cps/admin.py:115 cps/editbooks.py:505 cps/editbooks.py:515
#: cps/editbooks.py:620 cps/editbooks.py:622 cps/editbooks.py:688 #: cps/editbooks.py:621 cps/editbooks.py:623 cps/editbooks.py:689
#: cps/updater.py:509 cps/uploader.py:99 cps/uploader.py:110 #: cps/updater.py:509 cps/uploader.py:100 cps/uploader.py:110
msgid "Unknown" msgid "Unknown"
msgstr "Desconocido" msgstr "Desconocido"
@ -62,223 +62,223 @@ msgstr "Página de administración"
msgid "UI Configuration" msgid "UI Configuration"
msgstr "Configuración de la interfaz del usuario" msgstr "Configuración de la interfaz del usuario"
#: cps/admin.py:192 cps/admin.py:674 #: cps/admin.py:189 cps/admin.py:671
msgid "Calibre-Web configuration updated" msgid "Calibre-Web configuration updated"
msgstr "Configuración de Calibre-Web actualizada" msgstr "Configuración de Calibre-Web actualizada"
#: cps/admin.py:438 cps/admin.py:444 cps/admin.py:455 cps/admin.py:466 #: cps/admin.py:435 cps/admin.py:441 cps/admin.py:452 cps/admin.py:463
#: cps/templates/modal_restriction.html:29 #: cps/templates/modal_restriction.html:29
msgid "Deny" msgid "Deny"
msgstr "" msgstr ""
#: cps/admin.py:440 cps/admin.py:446 cps/admin.py:457 cps/admin.py:468 #: cps/admin.py:437 cps/admin.py:443 cps/admin.py:454 cps/admin.py:465
#: cps/templates/modal_restriction.html:28 #: cps/templates/modal_restriction.html:28
msgid "Allow" msgid "Allow"
msgstr "" msgstr ""
#: cps/admin.py:509 #: cps/admin.py:506
msgid "client_secrets.json Is Not Configured For Web Application" msgid "client_secrets.json Is Not Configured For Web Application"
msgstr "" msgstr ""
#: cps/admin.py:525 #: cps/admin.py:522
msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgid "Keyfile Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:529 #: cps/admin.py:526
msgid "Certfile Location is not Valid, Please Enter Correct Path" msgid "Certfile Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:567 #: cps/admin.py:564
msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier"
msgstr "" msgstr ""
#: cps/admin.py:585 #: cps/admin.py:582
#, python-format #, python-format
msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier"
msgstr "" msgstr ""
#: cps/admin.py:588 #: cps/admin.py:585
msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgid "LDAP Group Object Filter Has Unmatched Parenthesis"
msgstr "" msgstr ""
#: cps/admin.py:592 #: cps/admin.py:589
#, python-format #, python-format
msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier"
msgstr "" msgstr ""
#: cps/admin.py:595 #: cps/admin.py:592
msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgid "LDAP User Object Filter Has Unmatched Parenthesis"
msgstr "" msgstr ""
#: cps/admin.py:599 #: cps/admin.py:596
msgid "LDAP Certificate Location is not Valid, Please Enter Correct Path" msgid "LDAP Certificate Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:647 #: cps/admin.py:644
msgid "Logfile Location is not Valid, Please Enter Correct Path" msgid "Logfile Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:652 #: cps/admin.py:649
msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgid "Access Logfile Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:671 #: cps/admin.py:668
msgid "DB Location is not Valid, Please Enter Correct Path" msgid "DB Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:704 #: cps/admin.py:701
msgid "Basic Configuration" msgid "Basic Configuration"
msgstr "Configuración básica" msgstr "Configuración básica"
#: cps/admin.py:728 cps/web.py:1230 #: cps/admin.py:725 cps/web.py:1235
msgid "Please fill out all fields!" msgid "Please fill out all fields!"
msgstr "¡Por favor completar todos los campos!" msgstr "¡Por favor completar todos los campos!"
#: cps/admin.py:731 cps/admin.py:743 cps/admin.py:749 cps/admin.py:767 #: cps/admin.py:728 cps/admin.py:740 cps/admin.py:746 cps/admin.py:764
msgid "Add new user" msgid "Add new user"
msgstr "Agregar un nuevo usuario" msgstr "Agregar un nuevo usuario"
#: cps/admin.py:740 cps/web.py:1472 #: cps/admin.py:737 cps/web.py:1477
msgid "E-mail is not from valid domain" msgid "E-mail is not from valid domain"
msgstr "El correo electrónico no tiene un nombre de dominio válido" msgstr "El correo electrónico no tiene un nombre de dominio válido"
#: cps/admin.py:747 cps/admin.py:762 #: cps/admin.py:744 cps/admin.py:759
msgid "Found an existing account for this e-mail address or nickname." 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." msgstr "Encontrada una cuenta existente para este correo electrónico o nombre de usuario."
#: cps/admin.py:758 #: cps/admin.py:755
#, python-format #, python-format
msgid "User '%(user)s' created" msgid "User '%(user)s' created"
msgstr "Usuario '%(user)s' creado" msgstr "Usuario '%(user)s' creado"
#: cps/admin.py:777 #: cps/admin.py:774
msgid "Edit e-mail server settings" msgid "Edit e-mail server settings"
msgstr "Editar los ajustes del servidor de correo electrónico" msgstr "Editar los ajustes del servidor de correo electrónico"
#: cps/admin.py:803 #: cps/admin.py:800
#, python-format #, python-format
msgid "Test e-mail successfully send to %(kindlemail)s" msgid "Test e-mail successfully send to %(kindlemail)s"
msgstr "Correo electrónico de prueba enviado con éxito a %(kindlemail)s" msgstr "Correo electrónico de prueba enviado con éxito a %(kindlemail)s"
#: cps/admin.py:806 #: cps/admin.py:803
#, python-format #, python-format
msgid "There was an error sending the Test e-mail: %(res)s" msgid "There was an error sending the Test e-mail: %(res)s"
msgstr "Ocurrió un error enviando el correo electrónico de prueba: %(res)s" msgstr "Ocurrió un error enviando el correo electrónico de prueba: %(res)s"
#: cps/admin.py:808 #: cps/admin.py:805
msgid "Please configure your e-mail address first..." msgid "Please configure your e-mail address first..."
msgstr "" msgstr ""
#: cps/admin.py:810 #: cps/admin.py:807
msgid "E-mail server settings updated" msgid "E-mail server settings updated"
msgstr "Actualizados los ajustes del servidor de correo electrónico" msgstr "Actualizados los ajustes del servidor de correo electrónico"
#: cps/admin.py:821 #: cps/admin.py:818
msgid "User not found" msgid "User not found"
msgstr "" msgstr ""
#: cps/admin.py:842 #: cps/admin.py:839
#, python-format #, python-format
msgid "User '%(nick)s' deleted" msgid "User '%(nick)s' deleted"
msgstr "Usuario '%(nick)s' borrado" msgstr "Usuario '%(nick)s' borrado"
#: cps/admin.py:845 #: cps/admin.py:842
msgid "No admin user remaining, can't delete user" msgid "No admin user remaining, can't delete user"
msgstr "No queda ningún usuario administrador, no se puede eliminar usuario" msgstr "No queda ningún usuario administrador, no se puede eliminar usuario"
#: cps/admin.py:851 #: cps/admin.py:848
msgid "No admin user remaining, can't remove admin role" msgid "No admin user remaining, can't remove admin role"
msgstr "" msgstr ""
#: cps/admin.py:887 cps/web.py:1515 #: cps/admin.py:884 cps/web.py:1520
msgid "Found an existing account for this e-mail address." msgid "Found an existing account for this e-mail address."
msgstr "Encontrada una cuenta existente para esa dirección de correo electrónico." msgstr "Encontrada una cuenta existente para esa dirección de correo electrónico."
#: cps/admin.py:897 cps/admin.py:912 cps/admin.py:932 cps/web.py:1490 #: cps/admin.py:894 cps/admin.py:909 cps/admin.py:929 cps/web.py:1495
#, python-format #, python-format
msgid "Edit User %(nick)s" msgid "Edit User %(nick)s"
msgstr "Editar Usuario %(nick)s" msgstr "Editar Usuario %(nick)s"
#: cps/admin.py:903 cps/web.py:1482 #: cps/admin.py:900 cps/web.py:1487
msgid "This username is already taken" msgid "This username is already taken"
msgstr "" msgstr ""
#: cps/admin.py:919 #: cps/admin.py:916
#, python-format #, python-format
msgid "User '%(nick)s' updated" msgid "User '%(nick)s' updated"
msgstr "Usuario '%(nick)s' actualizado" msgstr "Usuario '%(nick)s' actualizado"
#: cps/admin.py:922 #: cps/admin.py:919
msgid "An unknown error occured." msgid "An unknown error occured."
msgstr "Ocurrió un error inesperado." msgstr "Ocurrió un error inesperado."
#: cps/admin.py:943 #: cps/admin.py:940
#, python-format #, python-format
msgid "Password for user %(user)s reset" msgid "Password for user %(user)s reset"
msgstr "Contraseña para el usuario %(user)s reinicializada" msgstr "Contraseña para el usuario %(user)s reinicializada"
#: cps/admin.py:946 cps/web.py:1255 cps/web.py:1319 #: cps/admin.py:943 cps/web.py:1260 cps/web.py:1324
msgid "An unknown error occurred. Please try again later." msgid "An unknown error occurred. Please try again later."
msgstr "Ha ocurrido un error desconocido. Por favor vuelva a intentarlo más tarde." msgstr "Ha ocurrido un error desconocido. Por favor vuelva a intentarlo más tarde."
#: cps/admin.py:949 cps/web.py:1196 #: cps/admin.py:946 cps/web.py:1201
msgid "Please configure the SMTP mail settings first..." msgid "Please configure the SMTP mail settings first..."
msgstr "Configura primero los parámetros del servidor SMTP..." msgstr "Configura primero los parámetros del servidor SMTP..."
#: cps/admin.py:961 #: cps/admin.py:958
msgid "Logfile viewer" msgid "Logfile viewer"
msgstr "Visor del fichero de log" msgstr "Visor del fichero de log"
#: cps/admin.py:1000 #: cps/admin.py:997
msgid "Requesting update package" msgid "Requesting update package"
msgstr "Solicitando paquete de actualización" msgstr "Solicitando paquete de actualización"
#: cps/admin.py:1001 #: cps/admin.py:998
msgid "Downloading update package" msgid "Downloading update package"
msgstr "Descargando paquete de actualización" msgstr "Descargando paquete de actualización"
#: cps/admin.py:1002 #: cps/admin.py:999
msgid "Unzipping update package" msgid "Unzipping update package"
msgstr "Descomprimiendo paquete de actualización" msgstr "Descomprimiendo paquete de actualización"
#: cps/admin.py:1003 #: cps/admin.py:1000
msgid "Replacing files" msgid "Replacing files"
msgstr "Remplazando ficheros" msgstr "Remplazando ficheros"
#: cps/admin.py:1004 #: cps/admin.py:1001
msgid "Database connections are closed" msgid "Database connections are closed"
msgstr "Los conexiones de base datos están cerradas" msgstr "Los conexiones de base datos están cerradas"
#: cps/admin.py:1005 #: cps/admin.py:1002
msgid "Stopping server" msgid "Stopping server"
msgstr "Parando servidor" msgstr "Parando servidor"
#: cps/admin.py:1006 #: cps/admin.py:1003
msgid "Update finished, please press okay and reload page" msgid "Update finished, please press okay and reload page"
msgstr "Actualización finalizada. Por favor, pulse OK y recargue la página" msgstr "Actualización finalizada. Por favor, pulse OK y recargue la página"
#: cps/admin.py:1007 cps/admin.py:1008 cps/admin.py:1009 cps/admin.py:1010 #: cps/admin.py:1004 cps/admin.py:1005 cps/admin.py:1006 cps/admin.py:1007
#: cps/admin.py:1011 #: cps/admin.py:1008
msgid "Update failed:" msgid "Update failed:"
msgstr "Fallo al actualizar" msgstr "Fallo al actualizar"
#: cps/admin.py:1007 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522 #: cps/admin.py:1004 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522
msgid "HTTP Error" msgid "HTTP Error"
msgstr "Error HTTP" msgstr "Error HTTP"
#: cps/admin.py:1008 cps/updater.py:321 cps/updater.py:524 #: cps/admin.py:1005 cps/updater.py:321 cps/updater.py:524
msgid "Connection error" msgid "Connection error"
msgstr "Error de conexión" msgstr "Error de conexión"
#: cps/admin.py:1009 cps/updater.py:323 cps/updater.py:526 #: cps/admin.py:1006 cps/updater.py:323 cps/updater.py:526
msgid "Timeout while establishing connection" msgid "Timeout while establishing connection"
msgstr "Tiempo agotado mientras se trataba de establecer la conexión" msgstr "Tiempo agotado mientras se trataba de establecer la conexión"
#: cps/admin.py:1010 cps/updater.py:325 cps/updater.py:528 #: cps/admin.py:1007 cps/updater.py:325 cps/updater.py:528
msgid "General error" msgid "General error"
msgstr "Error general" msgstr "Error general"
#: cps/admin.py:1011 #: cps/admin.py:1008
msgid "Update File Could Not be Saved in Temp Dir" msgid "Update File Could Not be Saved in Temp Dir"
msgstr "" msgstr ""
@ -294,7 +294,7 @@ msgstr ""
msgid "Book Successfully Deleted" msgid "Book Successfully Deleted"
msgstr "" msgstr ""
#: cps/editbooks.py:253 cps/editbooks.py:489 #: cps/editbooks.py:253 cps/editbooks.py:490
msgid "Error opening eBook. File does not exist or file is not accessible" msgid "Error opening eBook. File does not exist or file is not accessible"
msgstr "Error abriendo un eBook. El archivo no existe o no es accesible" msgstr "Error abriendo un eBook. El archivo no existe o no es accesible"
@ -307,16 +307,16 @@ msgstr "editar metadatos"
msgid "%(langname)s is not a valid language" msgid "%(langname)s is not a valid language"
msgstr "%(langname)s no es un idioma válido" msgstr "%(langname)s no es un idioma válido"
#: cps/editbooks.py:413 cps/editbooks.py:663 #: cps/editbooks.py:413 cps/editbooks.py:664
#, python-format #, python-format
msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" 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" msgstr "No se permite subir archivos con la extensión '%(ext)s' a este servidor"
#: cps/editbooks.py:417 cps/editbooks.py:667 #: cps/editbooks.py:417 cps/editbooks.py:668
msgid "File to be uploaded must have an extension" msgid "File to be uploaded must have an extension"
msgstr "El archivo a subir debe tener una extensión" msgstr "El archivo a subir debe tener una extensión"
#: cps/editbooks.py:429 cps/editbooks.py:701 #: cps/editbooks.py:429 cps/editbooks.py:702
#, python-format #, python-format
msgid "Failed to create path %(path)s (Permission denied)." msgid "Failed to create path %(path)s (Permission denied)."
msgstr "Fallo al crear la ruta %(path)s (permiso denegado)" msgstr "Fallo al crear la ruta %(path)s (permiso denegado)"
@ -331,48 +331,48 @@ msgstr "Falla al guardar el archivo %(file)s."
msgid "File format %(ext)s added to %(book)s" msgid "File format %(ext)s added to %(book)s"
msgstr "Fichero con formato %(ext)s añadido a %(book)s" msgstr "Fichero con formato %(ext)s añadido a %(book)s"
#: cps/editbooks.py:606 #: cps/editbooks.py:607
msgid "Metadata successfully updated" msgid "Metadata successfully updated"
msgstr "Metadatos actualizados correctamente" msgstr "Metadatos actualizados correctamente"
#: cps/editbooks.py:615 #: cps/editbooks.py:616
msgid "Error editing book, please check logfile for details" msgid "Error editing book, please check logfile for details"
msgstr "Error al editar el libro, por favor compruebe el fichero de registro (logfile) para tener más detalles" msgstr "Error al editar el libro, por favor compruebe el fichero de registro (logfile) para tener más detalles"
#: cps/editbooks.py:675 #: cps/editbooks.py:676
#, python-format #, python-format
msgid "File %(filename)s could not saved to temp dir" msgid "File %(filename)s could not saved to temp dir"
msgstr "" msgstr ""
#: cps/editbooks.py:692 #: cps/editbooks.py:693
msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgid "Uploaded book probably exists in the library, consider to change before upload new: "
msgstr "" msgstr ""
#: cps/editbooks.py:707 #: cps/editbooks.py:709
#, python-format #, python-format
msgid "Failed to store file %(file)s (Permission denied)." msgid "Failed to Move File %(file)s: %(error)s"
msgstr "Fallo al guardar el archivo %(file)s (permiso denegado)" msgstr ""
#: cps/editbooks.py:713 #: cps/editbooks.py:723
#, python-format #, python-format
msgid "Failed to delete file %(file)s (Permission denied)." msgid "Failed to Move Cover File %(file)s: %(error)s"
msgstr "Fallo al borrar el archivo %(file)s (permiso denegado)" msgstr ""
#: cps/editbooks.py:804 #: cps/editbooks.py:808
#, python-format #, python-format
msgid "File %(file)s uploaded" msgid "File %(file)s uploaded"
msgstr "El fichero %(file)s a sido subido" msgstr "El fichero %(file)s a sido subido"
#: cps/editbooks.py:833 #: cps/editbooks.py:837
msgid "Source or destination format for conversion missing" msgid "Source or destination format for conversion missing"
msgstr "Falta la fuente o el formato de destino para la conversión" msgstr "Falta la fuente o el formato de destino para la conversión"
#: cps/editbooks.py:841 #: cps/editbooks.py:845
#, python-format #, python-format
msgid "Book successfully queued for converting to %(book_format)s" msgid "Book successfully queued for converting to %(book_format)s"
msgstr "Libro puesto a la cola con éxito para convertirlo a %(book_format)s" msgstr "Libro puesto a la cola con éxito para convertirlo a %(book_format)s"
#: cps/editbooks.py:845 #: cps/editbooks.py:849
#, python-format #, python-format
msgid "There was an error converting this book: %(res)s" msgid "There was an error converting this book: %(res)s"
msgstr "Ocurrió un error al convertir este libro: %(res)s" msgstr "Ocurrió un error al convertir este libro: %(res)s"
@ -446,111 +446,111 @@ msgstr "Correo electrónico: %(book)s"
msgid "The requested file could not be read. Maybe wrong permissions?" msgid "The requested file could not be read. Maybe wrong permissions?"
msgstr "El fichero solicitado no puede ser leído. ¿Quizás existen problemas con los permisos?" msgstr "El fichero solicitado no puede ser leído. ¿Quizás existen problemas con los permisos?"
#: cps/helper.py:299 #: cps/helper.py:300
#, python-format #, python-format
msgid "Deleting book %(id)s failed, path has subfolders: %(path)s" msgid "Deleting book %(id)s failed, path has subfolders: %(path)s"
msgstr "" msgstr ""
#: cps/helper.py:309 #: cps/helper.py:310
#, python-format #, python-format
msgid "Deleting book %(id)s failed: %(message)s" msgid "Deleting book %(id)s failed: %(message)s"
msgstr "" msgstr ""
#: cps/helper.py:319 #: cps/helper.py:320
#, python-format #, python-format
msgid "Deleting book %(id)s failed, book path not valid: %(path)s" msgid "Deleting book %(id)s failed, book path not valid: %(path)s"
msgstr "" msgstr ""
#: cps/helper.py:354 #: cps/helper.py:355
#, python-format #, python-format
msgid "Rename title from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgid "Rename title from: '%(src)s' to '%(dest)s' failed with error: %(error)s"
msgstr "El renombrado del título de: '%(src)s' a '%(dest)s' falló con errores: %(error)s" msgstr "El renombrado del título de: '%(src)s' a '%(dest)s' falló con errores: %(error)s"
#: cps/helper.py:364 #: cps/helper.py:365
#, python-format #, python-format
msgid "Rename author from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgid "Rename author from: '%(src)s' to '%(dest)s' failed with error: %(error)s"
msgstr "El renombrado del autor de: '%(src)s' a '%(dest)s' falló con errores: %(error)s" msgstr "El renombrado del autor de: '%(src)s' a '%(dest)s' falló con errores: %(error)s"
#: cps/helper.py:378 #: cps/helper.py:379
#, python-format #, python-format
msgid "Rename file in path '%(src)s' to '%(dest)s' failed with error: %(error)s" msgid "Rename file in path '%(src)s' to '%(dest)s' failed with error: %(error)s"
msgstr "Ha fallado el cambio de nombre del archivo '%(src)s' a '%(dest)s' con el error: %(error)s" msgstr "Ha fallado el cambio de nombre del archivo '%(src)s' a '%(dest)s' con el error: %(error)s"
#: cps/helper.py:404 cps/helper.py:414 cps/helper.py:422 #: cps/helper.py:405 cps/helper.py:415 cps/helper.py:423
#, python-format #, python-format
msgid "File %(file)s not found on Google Drive" msgid "File %(file)s not found on Google Drive"
msgstr "Fichero %(file)s no encontrado en Google Drive" msgstr "Fichero %(file)s no encontrado en Google Drive"
#: cps/helper.py:443 #: cps/helper.py:444
#, python-format #, python-format
msgid "Book path %(path)s not found on 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" msgstr "La ruta %(path)s del libro no fue encontrada en Google Drive"
#: cps/helper.py:550 #: cps/helper.py:551
msgid "Failed to create path for cover" msgid "Failed to create path for cover"
msgstr "" msgstr ""
#: cps/helper.py:555 #: cps/helper.py:556
msgid "Cover-file is not a valid image file, or could not be stored" msgid "Cover-file is not a valid image file, or could not be stored"
msgstr "" msgstr ""
#: cps/helper.py:566 #: cps/helper.py:567
msgid "Only jpg/jpeg/png/webp files are supported as coverfile" msgid "Only jpg/jpeg/png/webp files are supported as coverfile"
msgstr "" msgstr ""
#: cps/helper.py:580 #: cps/helper.py:581
msgid "Only jpg/jpeg files are supported as coverfile" msgid "Only jpg/jpeg files are supported as coverfile"
msgstr "" msgstr ""
#: cps/helper.py:622 #: cps/helper.py:625
msgid "Unrar binary file not found" msgid "Unrar binary file not found"
msgstr "" msgstr ""
#: cps/helper.py:635 #: cps/helper.py:638
msgid "Error excecuting UnRar" msgid "Error excecuting UnRar"
msgstr "" msgstr ""
#: cps/helper.py:691 #: cps/helper.py:694
msgid "Waiting" msgid "Waiting"
msgstr "Esperando" msgstr "Esperando"
#: cps/helper.py:693 #: cps/helper.py:696
msgid "Failed" msgid "Failed"
msgstr "Fallido" msgstr "Fallido"
#: cps/helper.py:695 #: cps/helper.py:698
msgid "Started" msgid "Started"
msgstr "Comenzado" msgstr "Comenzado"
#: cps/helper.py:697 #: cps/helper.py:700
msgid "Finished" msgid "Finished"
msgstr "Finalizado" msgstr "Finalizado"
#: cps/helper.py:699 #: cps/helper.py:702
msgid "Unknown Status" msgid "Unknown Status"
msgstr "Estado desconocido" msgstr "Estado desconocido"
#: cps/helper.py:704 #: cps/helper.py:707
msgid "E-mail: " msgid "E-mail: "
msgstr "E-mail " msgstr "E-mail "
#: cps/helper.py:706 cps/helper.py:710 #: cps/helper.py:709 cps/helper.py:713
msgid "Convert: " msgid "Convert: "
msgstr "Convertir: " msgstr "Convertir: "
#: cps/helper.py:708 #: cps/helper.py:711
msgid "Upload: " msgid "Upload: "
msgstr "Subir: " msgstr "Subir: "
#: cps/helper.py:712 #: cps/helper.py:715
msgid "Unknown Task: " msgid "Unknown Task: "
msgstr "Tarea desconocida" msgstr "Tarea desconocida"
#: cps/kobo_auth.py:126 #: cps/kobo_auth.py:130
msgid "PLease access calibre-web from non localhost to get valid api_endpoint for kobo device" msgid "PLease access calibre-web from non localhost to get valid api_endpoint for kobo device"
msgstr "" msgstr ""
#: cps/kobo_auth.py:129 cps/kobo_auth.py:149 #: cps/kobo_auth.py:133 cps/kobo_auth.py:153
msgid "Kobo Setup" msgid "Kobo Setup"
msgstr "" msgstr ""
@ -575,7 +575,7 @@ msgstr "Error al iniciar sesión con Google."
msgid "Failed to fetch user info from Google." msgid "Failed to fetch user info from Google."
msgstr "Error al obtener información de usuario de Google." msgstr "Error al obtener información de usuario de Google."
#: cps/oauth_bb.py:225 cps/web.py:1291 cps/web.py:1431 #: cps/oauth_bb.py:225 cps/web.py:1296 cps/web.py:1436
#, python-format #, python-format
msgid "you are now logged in as: '%(nickname)s'" msgid "you are now logged in as: '%(nickname)s'"
msgstr "Sesión iniciada como : '%(nickname)s'" msgstr "Sesión iniciada como : '%(nickname)s'"
@ -727,7 +727,7 @@ msgstr "Libros populares"
msgid "Show Hot Books" msgid "Show Hot Books"
msgstr "Mostrar libros populares" msgstr "Mostrar libros populares"
#: cps/templates/index.xml:24 cps/ub.py:70 cps/web.py:615 #: cps/templates/index.xml:24 cps/ub.py:70 cps/web.py:616
msgid "Top Rated Books" msgid "Top Rated Books"
msgstr "Libros mejor valorados" msgstr "Libros mejor valorados"
@ -736,7 +736,7 @@ msgid "Show Top Rated Books"
msgstr "Mostrar libros mejor valorados" msgstr "Mostrar libros mejor valorados"
#: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:73 #: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:73
#: cps/web.py:1125 #: cps/web.py:1131
msgid "Read Books" msgid "Read Books"
msgstr "Libros leídos" msgstr "Libros leídos"
@ -745,7 +745,7 @@ msgid "Show read and unread"
msgstr "Mostrar leídos y no leídos" msgstr "Mostrar leídos y no leídos"
#: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:77 #: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:77
#: cps/web.py:1129 #: cps/web.py:1134
msgid "Unread Books" msgid "Unread Books"
msgstr "Libros no leídos" msgstr "Libros no leídos"
@ -761,7 +761,7 @@ msgstr "Descubrir"
msgid "Show random books" msgid "Show random books"
msgstr "Mostrar libros al azar" msgstr "Mostrar libros al azar"
#: cps/templates/index.xml:75 cps/ub.py:83 cps/web.py:897 #: cps/templates/index.xml:75 cps/ub.py:83 cps/web.py:898
msgid "Categories" msgid "Categories"
msgstr "Categorías" msgstr "Categorías"
@ -770,7 +770,7 @@ msgid "Show category selection"
msgstr "Mostrar selección de categorías" msgstr "Mostrar selección de categorías"
#: cps/templates/book_edit.html:84 cps/templates/index.xml:82 #: cps/templates/book_edit.html:84 cps/templates/index.xml:82
#: cps/templates/search_form.html:53 cps/ub.py:86 cps/web.py:825 #: cps/templates/search_form.html:53 cps/ub.py:86 cps/web.py:826
msgid "Series" msgid "Series"
msgstr "Series" msgstr "Series"
@ -786,7 +786,7 @@ msgstr "Autores"
msgid "Show author selection" msgid "Show author selection"
msgstr "Mostrar selección de autores" msgstr "Mostrar selección de autores"
#: cps/templates/index.xml:68 cps/ub.py:93 cps/web.py:809 #: cps/templates/index.xml:68 cps/ub.py:93 cps/web.py:810
msgid "Publishers" msgid "Publishers"
msgstr "Editoras" msgstr "Editoras"
@ -795,7 +795,7 @@ msgid "Show publisher selection"
msgstr "Mostrar selección de editores" msgstr "Mostrar selección de editores"
#: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:96 #: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:96
#: cps/web.py:880 #: cps/web.py:881
msgid "Languages" msgid "Languages"
msgstr "Idioma" msgstr "Idioma"
@ -819,7 +819,7 @@ msgstr "Formatos de archivo"
msgid "Show file formats selection" msgid "Show file formats selection"
msgstr "Mostrar selección de formatos de archivo" msgstr "Mostrar selección de formatos de archivo"
#: cps/ub.py:107 cps/web.py:1150 #: cps/ub.py:107 cps/web.py:1155
msgid "Archived Books" msgid "Archived Books"
msgstr "" msgstr ""
@ -856,223 +856,223 @@ 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." 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." msgstr "Haz clic en el botón de abajo para actualizar a la última versión estable."
#: cps/web.py:306 #: cps/web.py:307
#, python-format #, python-format
msgid "Error: %(ldaperror)s" msgid "Error: %(ldaperror)s"
msgstr "" msgstr ""
#: cps/web.py:310 #: cps/web.py:311
msgid "Error: No user returned in response of LDAP server" msgid "Error: No user returned in response of LDAP server"
msgstr "" msgstr ""
#: cps/web.py:358 #: cps/web.py:359
msgid "Failed to Create at Least One LDAP User" msgid "Failed to Create at Least One LDAP User"
msgstr "" msgstr ""
#: cps/web.py:361 #: cps/web.py:362
msgid "At Least One LDAP User Not Found in Database" msgid "At Least One LDAP User Not Found in Database"
msgstr "" msgstr ""
#: cps/web.py:363 #: cps/web.py:364
msgid "User Successfully Imported" msgid "User Successfully Imported"
msgstr "" msgstr ""
#: cps/web.py:587 #: cps/web.py:588
msgid "Recently Added Books" msgid "Recently Added Books"
msgstr "Libros añadidos recientemente" msgstr "Libros añadidos recientemente"
#: cps/templates/index.html:5 cps/web.py:623 #: cps/templates/index.html:5 cps/web.py:624
msgid "Discover (Random Books)" msgid "Discover (Random Books)"
msgstr "Descubrir (Libros al azar)" msgstr "Descubrir (Libros al azar)"
#: cps/web.py:651 #: cps/web.py:652
msgid "Books" msgid "Books"
msgstr "Libros" msgstr "Libros"
#: cps/web.py:678 #: cps/web.py:679
msgid "Hot Books (Most Downloaded)" msgid "Hot Books (Most Downloaded)"
msgstr "Libros populares (los más descargados)" msgstr "Libros populares (los más descargados)"
#: cps/web.py:688 #: cps/web.py:689
msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible" msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible"
msgstr "Error al abrir eBook. El archivo no existe o no es accesible:" msgstr "Error al abrir eBook. El archivo no existe o no es accesible:"
#: cps/web.py:702 #: cps/web.py:703
#, python-format #, python-format
msgid "Author: %(name)s" msgid "Author: %(name)s"
msgstr "Autor/es: %(name)s" msgstr "Autor/es: %(name)s"
#: cps/web.py:714 #: cps/web.py:715
#, python-format #, python-format
msgid "Publisher: %(name)s" msgid "Publisher: %(name)s"
msgstr "Editor/es: " msgstr "Editor/es: "
#: cps/web.py:725 #: cps/web.py:726
#, python-format #, python-format
msgid "Series: %(serie)s" msgid "Series: %(serie)s"
msgstr "Series: %(serie)s" msgstr "Series: %(serie)s"
#: cps/web.py:736 #: cps/web.py:737
#, python-format #, python-format
msgid "Rating: %(rating)s stars" msgid "Rating: %(rating)s stars"
msgstr "Calificación: %(rating)s estrellas" msgstr "Calificación: %(rating)s estrellas"
#: cps/web.py:748 #: cps/web.py:749
#, python-format #, python-format
msgid "File format: %(format)s" msgid "File format: %(format)s"
msgstr "Formato del fichero: %(format)s" msgstr "Formato del fichero: %(format)s"
#: cps/web.py:760 #: cps/web.py:761
#, python-format #, python-format
msgid "Category: %(name)s" msgid "Category: %(name)s"
msgstr "Categoría : %(name)s" msgstr "Categoría : %(name)s"
#: cps/web.py:777 #: cps/web.py:778
#, python-format #, python-format
msgid "Language: %(name)s" msgid "Language: %(name)s"
msgstr "Idioma: %(name)s" msgstr "Idioma: %(name)s"
#: cps/web.py:839 #: cps/web.py:840
msgid "Ratings list" msgid "Ratings list"
msgstr "Lista de calificaciones" msgstr "Lista de calificaciones"
#: cps/web.py:852 #: cps/web.py:853
msgid "File formats list" msgid "File formats list"
msgstr "Lista de formatos" msgstr "Lista de formatos"
#: cps/templates/layout.html:73 cps/templates/tasks.html:7 cps/web.py:911 #: cps/templates/layout.html:73 cps/templates/tasks.html:7 cps/web.py:912
msgid "Tasks" msgid "Tasks"
msgstr "Tareas" msgstr "Tareas"
#: cps/templates/book_edit.html:235 cps/templates/feed.xml:33 #: cps/templates/book_edit.html:235 cps/templates/feed.xml:33
#: cps/templates/layout.html:44 cps/templates/layout.html:47 #: cps/templates/layout.html:44 cps/templates/layout.html:47
#: cps/templates/search_form.html:170 cps/web.py:937 cps/web.py:942 #: cps/templates/search_form.html:174 cps/web.py:938 cps/web.py:943
msgid "Search" msgid "Search"
msgstr "Buscar" msgstr "Buscar"
#: cps/web.py:993 #: cps/web.py:994
msgid "Published after " msgid "Published after "
msgstr "Publicado después de" msgstr "Publicado después de"
#: cps/web.py:1000 #: cps/web.py:1001
msgid "Published before " msgid "Published before "
msgstr "Publicado antes de" msgstr "Publicado antes de"
#: cps/web.py:1014 #: cps/web.py:1015
#, python-format #, python-format
msgid "Rating <= %(rating)s" msgid "Rating <= %(rating)s"
msgstr "Calificación <= %(rating)s" msgstr "Calificación <= %(rating)s"
#: cps/web.py:1016 #: cps/web.py:1017
#, python-format #, python-format
msgid "Rating >= %(rating)s" msgid "Rating >= %(rating)s"
msgstr "Calificación >= %(rating)s" msgstr "Calificación >= %(rating)s"
#: cps/web.py:1082 cps/web.py:1096 #: cps/web.py:1083 cps/web.py:1097
msgid "search" msgid "search"
msgstr "búsqueda" msgstr "búsqueda"
#: cps/web.py:1201 #: cps/web.py:1206
#, python-format #, python-format
msgid "Book successfully queued for sending to %(kindlemail)s" msgid "Book successfully queued for sending to %(kindlemail)s"
msgstr "Libro puesto en la cola de envío a %(kindlemail)s" msgstr "Libro puesto en la cola de envío a %(kindlemail)s"
#: cps/web.py:1205 #: cps/web.py:1210
#, python-format #, python-format
msgid "Oops! There was an error sending this book: %(res)s" msgid "Oops! There was an error sending this book: %(res)s"
msgstr "Ha sucedido un error en el envío del libro: %(res)s" msgstr "Ha sucedido un error en el envío del libro: %(res)s"
#: cps/web.py:1207 #: cps/web.py:1212
msgid "Please update your profile with a valid Send to Kindle E-mail Address." msgid "Please update your profile with a valid Send to Kindle E-mail Address."
msgstr "Por favor configure primero la dirección de correo de su kindle..." msgstr "Por favor configure primero la dirección de correo de su kindle..."
#: cps/web.py:1224 #: cps/web.py:1229
msgid "E-Mail server is not configured, please contact your administrator!" msgid "E-Mail server is not configured, please contact your administrator!"
msgstr "" msgstr ""
#: cps/web.py:1225 cps/web.py:1231 cps/web.py:1256 cps/web.py:1260 #: cps/web.py:1230 cps/web.py:1236 cps/web.py:1261 cps/web.py:1265
#: cps/web.py:1265 cps/web.py:1269 #: cps/web.py:1270 cps/web.py:1274
msgid "register" msgid "register"
msgstr "registrarse" msgstr "registrarse"
#: cps/web.py:1258 #: cps/web.py:1263
msgid "Your e-mail is not allowed to register" msgid "Your e-mail is not allowed to register"
msgstr "Su correo electrónico no está permitido para registrarse" msgstr "Su correo electrónico no está permitido para registrarse"
#: cps/web.py:1261 #: cps/web.py:1266
msgid "Confirmation e-mail was send to your e-mail account." 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 electrónico." msgstr "Se ha enviado un correo electrónico de verificación a su cuenta de correo electrónico."
#: cps/web.py:1264 #: cps/web.py:1269
msgid "This username or e-mail address is already in use." 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." msgstr "Este nombre de usuario o correo electrónico ya están en uso."
#: cps/web.py:1281 #: cps/web.py:1286
msgid "Cannot activate LDAP authentication" msgid "Cannot activate LDAP authentication"
msgstr "No se puede activar la autenticación LDAP" msgstr "No se puede activar la autenticación LDAP"
#: cps/web.py:1298 #: cps/web.py:1303
#, python-format #, python-format
msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known"
msgstr "" msgstr ""
#: cps/web.py:1304 #: cps/web.py:1309
#, python-format #, python-format
msgid "Could not login: %(message)s" msgid "Could not login: %(message)s"
msgstr "" msgstr ""
#: cps/web.py:1308 cps/web.py:1332 #: cps/web.py:1313 cps/web.py:1337
msgid "Wrong Username or Password" msgid "Wrong Username or Password"
msgstr "Usuario o contraseña inválido" msgstr "Usuario o contraseña inválido"
#: cps/web.py:1315 #: cps/web.py:1320
msgid "New Password was send to your email address" msgid "New Password was send to your email address"
msgstr "" msgstr ""
#: cps/web.py:1321 #: cps/web.py:1326
msgid "Please enter valid username to reset password" msgid "Please enter valid username to reset password"
msgstr "" msgstr ""
#: cps/web.py:1327 #: cps/web.py:1332
#, python-format #, python-format
msgid "You are now logged in as: '%(nickname)s'" msgid "You are now logged in as: '%(nickname)s'"
msgstr "Ahora estás conectado como: '%(nickname)s'" msgstr "Ahora estás conectado como: '%(nickname)s'"
#: cps/web.py:1336 cps/web.py:1363 #: cps/web.py:1341 cps/web.py:1368
msgid "login" msgid "login"
msgstr "Iniciar sesión" msgstr "Iniciar sesión"
#: cps/web.py:1375 cps/web.py:1409 #: cps/web.py:1380 cps/web.py:1414
msgid "Token not found" msgid "Token not found"
msgstr "Token no encontrado" msgstr "Token no encontrado"
#: cps/web.py:1384 cps/web.py:1417 #: cps/web.py:1389 cps/web.py:1422
msgid "Token has expired" msgid "Token has expired"
msgstr "El token ha expirado" msgstr "El token ha expirado"
#: cps/web.py:1393 #: cps/web.py:1398
msgid "Success! Please return to your device" msgid "Success! Please return to your device"
msgstr "¡Correcto! Por favor regrese a su dispositivo" msgstr "¡Correcto! Por favor regrese a su dispositivo"
#: cps/web.py:1474 cps/web.py:1519 cps/web.py:1525 #: cps/web.py:1479 cps/web.py:1524 cps/web.py:1530
#, python-format #, python-format
msgid "%(name)s's profile" msgid "%(name)s's profile"
msgstr "Perfil de %(name)s" msgstr "Perfil de %(name)s"
#: cps/web.py:1521 #: cps/web.py:1526
msgid "Profile updated" msgid "Profile updated"
msgstr "Perfil actualizado" msgstr "Perfil actualizado"
#: cps/web.py:1538 cps/web.py:1642 #: cps/web.py:1543 cps/web.py:1647
msgid "Error opening eBook. File does not exist or file is not accessible:" msgid "Error opening eBook. File does not exist or file is not accessible:"
msgstr "" msgstr ""
#: cps/web.py:1550 cps/web.py:1553 cps/web.py:1556 cps/web.py:1563 #: cps/web.py:1555 cps/web.py:1558 cps/web.py:1561 cps/web.py:1568
#: cps/web.py:1568 #: cps/web.py:1573
msgid "Read a Book" msgid "Read a Book"
msgstr "Leer un libro" msgstr "Leer un libro"
#: cps/web.py:1579 #: cps/web.py:1584
msgid "Error opening eBook. File does not exist or file is not accessible." msgid "Error opening eBook. File does not exist or file is not accessible."
msgstr "Error al abrir el eBook. El archivo no existe o el archivo no es accesible." msgstr "Error al abrir el eBook. El archivo no existe o el archivo no es accesible."
@ -1298,13 +1298,13 @@ msgid "In Library"
msgstr "en Librería" msgstr "en Librería"
#: cps/templates/author.html:34 cps/templates/list.html:14 #: cps/templates/author.html:34 cps/templates/list.html:14
#: cps/templates/search.html:41 #: cps/templates/search.html:38
msgid "All" msgid "All"
msgstr "Todo" msgstr "Todo"
#: cps/templates/author.html:58 cps/templates/author.html:110 #: cps/templates/author.html:58 cps/templates/author.html:110
#: cps/templates/discover.html:27 cps/templates/index.html:26 #: cps/templates/discover.html:27 cps/templates/index.html:26
#: cps/templates/index.html:89 cps/templates/search.html:67 #: cps/templates/index.html:89 cps/templates/search.html:64
#: cps/templates/shelf.html:36 #: cps/templates/shelf.html:36
msgid "reduce" msgid "reduce"
msgstr "reducir" msgstr "reducir"
@ -1740,7 +1740,7 @@ msgstr ""
#: cps/templates/config_edit.html:300 #: cps/templates/config_edit.html:300
#, python-format #, python-format
msgid "Obtain %(provider)s OAuth Credential" msgid "Obtain %(provider)s OAuth Credential"
msgstr "Obtener la Credencial OAuth de %(proveedor)" msgstr "Obtener la Credencial OAuth de %(provider)"
#: cps/templates/config_edit.html:303 #: cps/templates/config_edit.html:303
#, python-format #, python-format
@ -1933,6 +1933,12 @@ msgstr "Descripción:"
msgid "Add to shelf" msgid "Add to shelf"
msgstr "Agregar al estante" msgstr "Agregar al estante"
#: cps/templates/detail.html:243 cps/templates/detail.html:260
#: cps/templates/feed.xml:79 cps/templates/layout.html:136
#: cps/templates/layout.html:140 cps/templates/search.html:20
msgid "(Public)"
msgstr ""
#: cps/templates/detail.html:274 #: cps/templates/detail.html:274
msgid "Edit Metadata" msgid "Edit Metadata"
msgstr "Editar metadatos" msgstr "Editar metadatos"
@ -1981,11 +1987,6 @@ msgstr "¿Realmente quiere eliminar esta regla de dominio?"
msgid "Next" msgid "Next"
msgstr "Siguiente" msgstr "Siguiente"
#: cps/templates/feed.xml:79 cps/templates/layout.html:136
#: cps/templates/layout.html:140
msgid "(Public)"
msgstr ""
#: cps/templates/generate_kobo_auth_url.html:5 #: cps/templates/generate_kobo_auth_url.html:5
msgid "Open the .kobo/Kobo eReader.conf file in a text editor and add (or edit):" msgid "Open the .kobo/Kobo eReader.conf file in a text editor and add (or edit):"
msgstr "" msgstr ""

View File

@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Calibre-Web\n" "Project-Id-Version: Calibre-Web\n"
"Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n" "Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n"
"POT-Creation-Date: 2020-05-01 17:15+0200\n" "POT-Creation-Date: 2020-05-23 08:46+0200\n"
"PO-Revision-Date: 2020-01-12 13:56+0100\n" "PO-Revision-Date: 2020-01-12 13:56+0100\n"
"Last-Translator: Samuli Valavuo <svalavuo@gmail.com>\n" "Last-Translator: Samuli Valavuo <svalavuo@gmail.com>\n"
"Language: fi\n" "Language: fi\n"
@ -46,9 +46,9 @@ msgstr ""
msgid "Unknown command" msgid "Unknown command"
msgstr "" msgstr ""
#: cps/admin.py:115 cps/editbooks.py:504 cps/editbooks.py:514 #: cps/admin.py:115 cps/editbooks.py:505 cps/editbooks.py:515
#: cps/editbooks.py:620 cps/editbooks.py:622 cps/editbooks.py:688 #: cps/editbooks.py:621 cps/editbooks.py:623 cps/editbooks.py:689
#: cps/updater.py:509 cps/uploader.py:99 cps/uploader.py:110 #: cps/updater.py:509 cps/uploader.py:100 cps/uploader.py:110
msgid "Unknown" msgid "Unknown"
msgstr "Tuntematon" msgstr "Tuntematon"
@ -60,223 +60,223 @@ msgstr "Ylläpitosivu"
msgid "UI Configuration" msgid "UI Configuration"
msgstr "Käyttöliittymän asetukset" msgstr "Käyttöliittymän asetukset"
#: cps/admin.py:192 cps/admin.py:674 #: cps/admin.py:189 cps/admin.py:671
msgid "Calibre-Web configuration updated" msgid "Calibre-Web configuration updated"
msgstr "Calibre-Web asetukset päivitetty" msgstr "Calibre-Web asetukset päivitetty"
#: cps/admin.py:438 cps/admin.py:444 cps/admin.py:455 cps/admin.py:466 #: cps/admin.py:435 cps/admin.py:441 cps/admin.py:452 cps/admin.py:463
#: cps/templates/modal_restriction.html:29 #: cps/templates/modal_restriction.html:29
msgid "Deny" msgid "Deny"
msgstr "" msgstr ""
#: cps/admin.py:440 cps/admin.py:446 cps/admin.py:457 cps/admin.py:468 #: cps/admin.py:437 cps/admin.py:443 cps/admin.py:454 cps/admin.py:465
#: cps/templates/modal_restriction.html:28 #: cps/templates/modal_restriction.html:28
msgid "Allow" msgid "Allow"
msgstr "" msgstr ""
#: cps/admin.py:509 #: cps/admin.py:506
msgid "client_secrets.json Is Not Configured For Web Application" msgid "client_secrets.json Is Not Configured For Web Application"
msgstr "" msgstr ""
#: cps/admin.py:525 #: cps/admin.py:522
msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgid "Keyfile Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:529 #: cps/admin.py:526
msgid "Certfile Location is not Valid, Please Enter Correct Path" msgid "Certfile Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:567 #: cps/admin.py:564
msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier"
msgstr "" msgstr ""
#: cps/admin.py:585 #: cps/admin.py:582
#, python-format #, python-format
msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier"
msgstr "" msgstr ""
#: cps/admin.py:588 #: cps/admin.py:585
msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgid "LDAP Group Object Filter Has Unmatched Parenthesis"
msgstr "" msgstr ""
#: cps/admin.py:592 #: cps/admin.py:589
#, python-format #, python-format
msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier"
msgstr "" msgstr ""
#: cps/admin.py:595 #: cps/admin.py:592
msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgid "LDAP User Object Filter Has Unmatched Parenthesis"
msgstr "" msgstr ""
#: cps/admin.py:599 #: cps/admin.py:596
msgid "LDAP Certificate Location is not Valid, Please Enter Correct Path" msgid "LDAP Certificate Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:647 #: cps/admin.py:644
msgid "Logfile Location is not Valid, Please Enter Correct Path" msgid "Logfile Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:652 #: cps/admin.py:649
msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgid "Access Logfile Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:671 #: cps/admin.py:668
msgid "DB Location is not Valid, Please Enter Correct Path" msgid "DB Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:704 #: cps/admin.py:701
msgid "Basic Configuration" msgid "Basic Configuration"
msgstr "Perusasetukset" msgstr "Perusasetukset"
#: cps/admin.py:728 cps/web.py:1230 #: cps/admin.py:725 cps/web.py:1235
msgid "Please fill out all fields!" msgid "Please fill out all fields!"
msgstr "Ole hyvä ja täytä kaikki kentät!" msgstr "Ole hyvä ja täytä kaikki kentät!"
#: cps/admin.py:731 cps/admin.py:743 cps/admin.py:749 cps/admin.py:767 #: cps/admin.py:728 cps/admin.py:740 cps/admin.py:746 cps/admin.py:764
msgid "Add new user" msgid "Add new user"
msgstr "Lisää uusi käyttäjä" msgstr "Lisää uusi käyttäjä"
#: cps/admin.py:740 cps/web.py:1472 #: cps/admin.py:737 cps/web.py:1477
msgid "E-mail is not from valid domain" msgid "E-mail is not from valid domain"
msgstr "Sähköpostiosoite ei ole toimivasta domainista" msgstr "Sähköpostiosoite ei ole toimivasta domainista"
#: cps/admin.py:747 cps/admin.py:762 #: cps/admin.py:744 cps/admin.py:759
msgid "Found an existing account for this e-mail address or nickname." msgid "Found an existing account for this e-mail address or nickname."
msgstr "Tälle sähköpostiosoitteelle tai tunnukselle löytyi jo tili." msgstr "Tälle sähköpostiosoitteelle tai tunnukselle löytyi jo tili."
#: cps/admin.py:758 #: cps/admin.py:755
#, python-format #, python-format
msgid "User '%(user)s' created" msgid "User '%(user)s' created"
msgstr "Käyttäjä '%(user)s' lisätty" msgstr "Käyttäjä '%(user)s' lisätty"
#: cps/admin.py:777 #: cps/admin.py:774
msgid "Edit e-mail server settings" msgid "Edit e-mail server settings"
msgstr "Muuta sähköpostipalvelimen asetuksia" msgstr "Muuta sähköpostipalvelimen asetuksia"
#: cps/admin.py:803 #: cps/admin.py:800
#, python-format #, python-format
msgid "Test e-mail successfully send to %(kindlemail)s" msgid "Test e-mail successfully send to %(kindlemail)s"
msgstr "Testisähköposti lähetetty onnistuneesti osoitteeseen %(kindlemail)s" msgstr "Testisähköposti lähetetty onnistuneesti osoitteeseen %(kindlemail)s"
#: cps/admin.py:806 #: cps/admin.py:803
#, python-format #, python-format
msgid "There was an error sending the Test e-mail: %(res)s" msgid "There was an error sending the Test e-mail: %(res)s"
msgstr "Testisähköpostin lähetyksessä tapahtui virhe: %(res)s" msgstr "Testisähköpostin lähetyksessä tapahtui virhe: %(res)s"
#: cps/admin.py:808 #: cps/admin.py:805
msgid "Please configure your e-mail address first..." msgid "Please configure your e-mail address first..."
msgstr "" msgstr ""
#: cps/admin.py:810 #: cps/admin.py:807
msgid "E-mail server settings updated" msgid "E-mail server settings updated"
msgstr "Sähköpostipalvelimen tiedot päivitetty" msgstr "Sähköpostipalvelimen tiedot päivitetty"
#: cps/admin.py:821 #: cps/admin.py:818
msgid "User not found" msgid "User not found"
msgstr "" msgstr ""
#: cps/admin.py:842 #: cps/admin.py:839
#, python-format #, python-format
msgid "User '%(nick)s' deleted" msgid "User '%(nick)s' deleted"
msgstr "Käyttäjä '%(nick)s' poistettu" msgstr "Käyttäjä '%(nick)s' poistettu"
#: cps/admin.py:845 #: cps/admin.py:842
msgid "No admin user remaining, can't delete user" msgid "No admin user remaining, can't delete user"
msgstr "Pääkäyttäjiä ei jää jäljelle, käyttäjää ei voi poistaa" msgstr "Pääkäyttäjiä ei jää jäljelle, käyttäjää ei voi poistaa"
#: cps/admin.py:851 #: cps/admin.py:848
msgid "No admin user remaining, can't remove admin role" msgid "No admin user remaining, can't remove admin role"
msgstr "" msgstr ""
#: cps/admin.py:887 cps/web.py:1515 #: cps/admin.py:884 cps/web.py:1520
msgid "Found an existing account for this e-mail address." msgid "Found an existing account for this e-mail address."
msgstr "Tälle sähköpostiosoitteelle läytyi jo käyttäjätunnus." msgstr "Tälle sähköpostiosoitteelle läytyi jo käyttäjätunnus."
#: cps/admin.py:897 cps/admin.py:912 cps/admin.py:932 cps/web.py:1490 #: cps/admin.py:894 cps/admin.py:909 cps/admin.py:929 cps/web.py:1495
#, python-format #, python-format
msgid "Edit User %(nick)s" msgid "Edit User %(nick)s"
msgstr "Muokkaa käyttäjää %(nick)s" msgstr "Muokkaa käyttäjää %(nick)s"
#: cps/admin.py:903 cps/web.py:1482 #: cps/admin.py:900 cps/web.py:1487
msgid "This username is already taken" msgid "This username is already taken"
msgstr "" msgstr ""
#: cps/admin.py:919 #: cps/admin.py:916
#, python-format #, python-format
msgid "User '%(nick)s' updated" msgid "User '%(nick)s' updated"
msgstr "Käyttäjä '%(nick)s' päivitetty" msgstr "Käyttäjä '%(nick)s' päivitetty"
#: cps/admin.py:922 #: cps/admin.py:919
msgid "An unknown error occured." msgid "An unknown error occured."
msgstr "Tapahtui tuntematon virhe." msgstr "Tapahtui tuntematon virhe."
#: cps/admin.py:943 #: cps/admin.py:940
#, python-format #, python-format
msgid "Password for user %(user)s reset" msgid "Password for user %(user)s reset"
msgstr "Käyttäjän %(user)s salasana palautettu" msgstr "Käyttäjän %(user)s salasana palautettu"
#: cps/admin.py:946 cps/web.py:1255 cps/web.py:1319 #: cps/admin.py:943 cps/web.py:1260 cps/web.py:1324
msgid "An unknown error occurred. Please try again later." msgid "An unknown error occurred. Please try again later."
msgstr "Tapahtui tuntematon virhe. Yritä myöhemmin uudelleen." msgstr "Tapahtui tuntematon virhe. Yritä myöhemmin uudelleen."
#: cps/admin.py:949 cps/web.py:1196 #: cps/admin.py:946 cps/web.py:1201
msgid "Please configure the SMTP mail settings first..." msgid "Please configure the SMTP mail settings first..."
msgstr "Ole hyvä ja aseta SMTP postiasetukset ensin..." msgstr "Ole hyvä ja aseta SMTP postiasetukset ensin..."
#: cps/admin.py:961 #: cps/admin.py:958
msgid "Logfile viewer" msgid "Logfile viewer"
msgstr "Lokitiedoston katselin" msgstr "Lokitiedoston katselin"
#: cps/admin.py:1000 #: cps/admin.py:997
msgid "Requesting update package" msgid "Requesting update package"
msgstr "Haetaan päivitystiedostoa" msgstr "Haetaan päivitystiedostoa"
#: cps/admin.py:1001 #: cps/admin.py:998
msgid "Downloading update package" msgid "Downloading update package"
msgstr "Ladataan päivitystiedostoa" msgstr "Ladataan päivitystiedostoa"
#: cps/admin.py:1002 #: cps/admin.py:999
msgid "Unzipping update package" msgid "Unzipping update package"
msgstr "Puretaan päivitystiedostoa" msgstr "Puretaan päivitystiedostoa"
#: cps/admin.py:1003 #: cps/admin.py:1000
msgid "Replacing files" msgid "Replacing files"
msgstr "Korvataan tiedostoja" msgstr "Korvataan tiedostoja"
#: cps/admin.py:1004 #: cps/admin.py:1001
msgid "Database connections are closed" msgid "Database connections are closed"
msgstr "Tietokantayhteydet on katkaistu" msgstr "Tietokantayhteydet on katkaistu"
#: cps/admin.py:1005 #: cps/admin.py:1002
msgid "Stopping server" msgid "Stopping server"
msgstr "Sammutetaan palvelin" msgstr "Sammutetaan palvelin"
#: cps/admin.py:1006 #: cps/admin.py:1003
msgid "Update finished, please press okay and reload page" msgid "Update finished, please press okay and reload page"
msgstr "Päivitys valmistui, ole hyvä ja paina OK ja lataa sivu uudelleen" msgstr "Päivitys valmistui, ole hyvä ja paina OK ja lataa sivu uudelleen"
#: cps/admin.py:1007 cps/admin.py:1008 cps/admin.py:1009 cps/admin.py:1010 #: cps/admin.py:1004 cps/admin.py:1005 cps/admin.py:1006 cps/admin.py:1007
#: cps/admin.py:1011 #: cps/admin.py:1008
msgid "Update failed:" msgid "Update failed:"
msgstr "Päivitys epäonnistui:" msgstr "Päivitys epäonnistui:"
#: cps/admin.py:1007 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522 #: cps/admin.py:1004 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522
msgid "HTTP Error" msgid "HTTP Error"
msgstr "HTTP virhe" msgstr "HTTP virhe"
#: cps/admin.py:1008 cps/updater.py:321 cps/updater.py:524 #: cps/admin.py:1005 cps/updater.py:321 cps/updater.py:524
msgid "Connection error" msgid "Connection error"
msgstr "Yhteysvirhe" msgstr "Yhteysvirhe"
#: cps/admin.py:1009 cps/updater.py:323 cps/updater.py:526 #: cps/admin.py:1006 cps/updater.py:323 cps/updater.py:526
msgid "Timeout while establishing connection" msgid "Timeout while establishing connection"
msgstr "Aikakatkaisu yhteyttä luotaessa" msgstr "Aikakatkaisu yhteyttä luotaessa"
#: cps/admin.py:1010 cps/updater.py:325 cps/updater.py:528 #: cps/admin.py:1007 cps/updater.py:325 cps/updater.py:528
msgid "General error" msgid "General error"
msgstr "Yleinen virhe" msgstr "Yleinen virhe"
#: cps/admin.py:1011 #: cps/admin.py:1008
msgid "Update File Could Not be Saved in Temp Dir" msgid "Update File Could Not be Saved in Temp Dir"
msgstr "" msgstr ""
@ -292,7 +292,7 @@ msgstr ""
msgid "Book Successfully Deleted" msgid "Book Successfully Deleted"
msgstr "" msgstr ""
#: cps/editbooks.py:253 cps/editbooks.py:489 #: cps/editbooks.py:253 cps/editbooks.py:490
msgid "Error opening eBook. File does not exist or file is not accessible" msgid "Error opening eBook. File does not exist or file is not accessible"
msgstr "Virhe e-kirjaa avatessa. Tiedostoa ei löydy tai se ei ole saatavilla" msgstr "Virhe e-kirjaa avatessa. Tiedostoa ei löydy tai se ei ole saatavilla"
@ -305,16 +305,16 @@ msgstr "muokkaa metadataa"
msgid "%(langname)s is not a valid language" msgid "%(langname)s is not a valid language"
msgstr "%(langname)s ei ole kelvollinen kieli" msgstr "%(langname)s ei ole kelvollinen kieli"
#: cps/editbooks.py:413 cps/editbooks.py:663 #: cps/editbooks.py:413 cps/editbooks.py:664
#, python-format #, python-format
msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" 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" msgstr "Tiedostopääte '%(ext)s' ei ole sallittujen palvelimelle ladattavien listalla"
#: cps/editbooks.py:417 cps/editbooks.py:667 #: cps/editbooks.py:417 cps/editbooks.py:668
msgid "File to be uploaded must have an extension" msgid "File to be uploaded must have an extension"
msgstr "Ladattavalla tiedostolla on oltava tiedostopääte" msgstr "Ladattavalla tiedostolla on oltava tiedostopääte"
#: cps/editbooks.py:429 cps/editbooks.py:701 #: cps/editbooks.py:429 cps/editbooks.py:702
#, python-format #, python-format
msgid "Failed to create path %(path)s (Permission denied)." msgid "Failed to create path %(path)s (Permission denied)."
msgstr "Polun %(path)s luonti epäonnistui (Ei oikeutta)." msgstr "Polun %(path)s luonti epäonnistui (Ei oikeutta)."
@ -329,48 +329,48 @@ msgstr "Tiedoston %(file)s tallennus epäonnistui."
msgid "File format %(ext)s added to %(book)s" msgid "File format %(ext)s added to %(book)s"
msgstr "Tiedostoformaatti %(ext)s lisätty %(book)s" msgstr "Tiedostoformaatti %(ext)s lisätty %(book)s"
#: cps/editbooks.py:606 #: cps/editbooks.py:607
msgid "Metadata successfully updated" msgid "Metadata successfully updated"
msgstr "Metadata päivitetty onnistuneesti" msgstr "Metadata päivitetty onnistuneesti"
#: cps/editbooks.py:615 #: cps/editbooks.py:616
msgid "Error editing book, please check logfile for details" msgid "Error editing book, please check logfile for details"
msgstr "Kirjan editoinnissa tapahtui virhe, tarkista virheilmoitus lokista" msgstr "Kirjan editoinnissa tapahtui virhe, tarkista virheilmoitus lokista"
#: cps/editbooks.py:675 #: cps/editbooks.py:676
#, python-format #, python-format
msgid "File %(filename)s could not saved to temp dir" msgid "File %(filename)s could not saved to temp dir"
msgstr "" msgstr ""
#: cps/editbooks.py:692 #: cps/editbooks.py:693
msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgid "Uploaded book probably exists in the library, consider to change before upload new: "
msgstr "" msgstr ""
#: cps/editbooks.py:707 #: cps/editbooks.py:709
#, python-format #, python-format
msgid "Failed to store file %(file)s (Permission denied)." msgid "Failed to Move File %(file)s: %(error)s"
msgstr "Tiedoston %(file)s tallentamisessa tapahtui virhe (Ei oikeutta)." msgstr ""
#: cps/editbooks.py:713 #: cps/editbooks.py:723
#, python-format #, python-format
msgid "Failed to delete file %(file)s (Permission denied)." msgid "Failed to Move Cover File %(file)s: %(error)s"
msgstr "Tiedoston %(file)s poisto epäonnistui (Ei oikeutta)." msgstr ""
#: cps/editbooks.py:804 #: cps/editbooks.py:808
#, python-format #, python-format
msgid "File %(file)s uploaded" msgid "File %(file)s uploaded"
msgstr "Tiedosto %(file)s tallennettu" msgstr "Tiedosto %(file)s tallennettu"
#: cps/editbooks.py:833 #: cps/editbooks.py:837
msgid "Source or destination format for conversion missing" msgid "Source or destination format for conversion missing"
msgstr "Lähteen tai kohteen tiedostomuoto puuttuu" msgstr "Lähteen tai kohteen tiedostomuoto puuttuu"
#: cps/editbooks.py:841 #: cps/editbooks.py:845
#, python-format #, python-format
msgid "Book successfully queued for converting to %(book_format)s" msgid "Book successfully queued for converting to %(book_format)s"
msgstr "Kirja lisätty muutosjonoon muotoon %(book_format)s" msgstr "Kirja lisätty muutosjonoon muotoon %(book_format)s"
#: cps/editbooks.py:845 #: cps/editbooks.py:849
#, python-format #, python-format
msgid "There was an error converting this book: %(res)s" msgid "There was an error converting this book: %(res)s"
msgstr "Kirjan muunnoksessa tapahtui virhe: %(res)s" msgstr "Kirjan muunnoksessa tapahtui virhe: %(res)s"
@ -444,111 +444,111 @@ msgstr "Sähköposti: %(book)s"
msgid "The requested file could not be read. Maybe wrong permissions?" msgid "The requested file could not be read. Maybe wrong permissions?"
msgstr "Haettua tiedostoa ei pystytty lukemaan. Ehkä vaäärät oikeudet?" msgstr "Haettua tiedostoa ei pystytty lukemaan. Ehkä vaäärät oikeudet?"
#: cps/helper.py:299 #: cps/helper.py:300
#, python-format #, python-format
msgid "Deleting book %(id)s failed, path has subfolders: %(path)s" msgid "Deleting book %(id)s failed, path has subfolders: %(path)s"
msgstr "" msgstr ""
#: cps/helper.py:309 #: cps/helper.py:310
#, python-format #, python-format
msgid "Deleting book %(id)s failed: %(message)s" msgid "Deleting book %(id)s failed: %(message)s"
msgstr "" msgstr ""
#: cps/helper.py:319 #: cps/helper.py:320
#, python-format #, python-format
msgid "Deleting book %(id)s failed, book path not valid: %(path)s" msgid "Deleting book %(id)s failed, book path not valid: %(path)s"
msgstr "" msgstr ""
#: cps/helper.py:354 #: cps/helper.py:355
#, python-format #, python-format
msgid "Rename title from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgid "Rename title from: '%(src)s' to '%(dest)s' failed with error: %(error)s"
msgstr "Tiedon muuttaminen arvosta: '%(src)s' arvoon '%(dest)s' epäonnistui virheeseen: %(error)s" msgstr "Tiedon muuttaminen arvosta: '%(src)s' arvoon '%(dest)s' epäonnistui virheeseen: %(error)s"
#: cps/helper.py:364 #: cps/helper.py:365
#, python-format #, python-format
msgid "Rename author from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgid "Rename author from: '%(src)s' to '%(dest)s' failed with error: %(error)s"
msgstr "Kirjailijan muuttaminen arvosta: \"%(src)s\" arvoon \"%(dest)s\" epäonnistui virheeseen: %(error)s" msgstr "Kirjailijan muuttaminen arvosta: \"%(src)s\" arvoon \"%(dest)s\" epäonnistui virheeseen: %(error)s"
#: cps/helper.py:378 #: cps/helper.py:379
#, python-format #, python-format
msgid "Rename file in path '%(src)s' to '%(dest)s' failed with error: %(error)s" msgid "Rename file in path '%(src)s' to '%(dest)s' failed with error: %(error)s"
msgstr "Tiedoston nimeäminen polusta '%(src)s' polkuun '%(dest)s' epäonnistui virheeseen: %(error)s" msgstr "Tiedoston nimeäminen polusta '%(src)s' polkuun '%(dest)s' epäonnistui virheeseen: %(error)s"
#: cps/helper.py:404 cps/helper.py:414 cps/helper.py:422 #: cps/helper.py:405 cps/helper.py:415 cps/helper.py:423
#, python-format #, python-format
msgid "File %(file)s not found on Google Drive" msgid "File %(file)s not found on Google Drive"
msgstr "Tiedostoa %(file)s ei löytynyt Google Drivesta" msgstr "Tiedostoa %(file)s ei löytynyt Google Drivesta"
#: cps/helper.py:443 #: cps/helper.py:444
#, python-format #, python-format
msgid "Book path %(path)s not found on Google Drive" msgid "Book path %(path)s not found on Google Drive"
msgstr "Kirjan polkua %(path)s ei löytynyt Google Drivesta" msgstr "Kirjan polkua %(path)s ei löytynyt Google Drivesta"
#: cps/helper.py:550 #: cps/helper.py:551
msgid "Failed to create path for cover" msgid "Failed to create path for cover"
msgstr "" msgstr ""
#: cps/helper.py:555 #: cps/helper.py:556
msgid "Cover-file is not a valid image file, or could not be stored" msgid "Cover-file is not a valid image file, or could not be stored"
msgstr "" msgstr ""
#: cps/helper.py:566 #: cps/helper.py:567
msgid "Only jpg/jpeg/png/webp files are supported as coverfile" msgid "Only jpg/jpeg/png/webp files are supported as coverfile"
msgstr "" msgstr ""
#: cps/helper.py:580 #: cps/helper.py:581
msgid "Only jpg/jpeg files are supported as coverfile" msgid "Only jpg/jpeg files are supported as coverfile"
msgstr "" msgstr ""
#: cps/helper.py:622 #: cps/helper.py:625
msgid "Unrar binary file not found" msgid "Unrar binary file not found"
msgstr "" msgstr ""
#: cps/helper.py:635 #: cps/helper.py:638
msgid "Error excecuting UnRar" msgid "Error excecuting UnRar"
msgstr "" msgstr ""
#: cps/helper.py:691 #: cps/helper.py:694
msgid "Waiting" msgid "Waiting"
msgstr "Odottaa" msgstr "Odottaa"
#: cps/helper.py:693 #: cps/helper.py:696
msgid "Failed" msgid "Failed"
msgstr "Epäonnistui" msgstr "Epäonnistui"
#: cps/helper.py:695 #: cps/helper.py:698
msgid "Started" msgid "Started"
msgstr "Aloitettu" msgstr "Aloitettu"
#: cps/helper.py:697 #: cps/helper.py:700
msgid "Finished" msgid "Finished"
msgstr "Valmistui" msgstr "Valmistui"
#: cps/helper.py:699 #: cps/helper.py:702
msgid "Unknown Status" msgid "Unknown Status"
msgstr "Tuntematon tila" msgstr "Tuntematon tila"
#: cps/helper.py:704 #: cps/helper.py:707
msgid "E-mail: " msgid "E-mail: "
msgstr "Sähköposti: " msgstr "Sähköposti: "
#: cps/helper.py:706 cps/helper.py:710 #: cps/helper.py:709 cps/helper.py:713
msgid "Convert: " msgid "Convert: "
msgstr "Muunna: " msgstr "Muunna: "
#: cps/helper.py:708 #: cps/helper.py:711
msgid "Upload: " msgid "Upload: "
msgstr "Lähetä: " msgstr "Lähetä: "
#: cps/helper.py:712 #: cps/helper.py:715
msgid "Unknown Task: " msgid "Unknown Task: "
msgstr "Tuntematon tehtävä: " msgstr "Tuntematon tehtävä: "
#: cps/kobo_auth.py:126 #: cps/kobo_auth.py:130
msgid "PLease access calibre-web from non localhost to get valid api_endpoint for kobo device" msgid "PLease access calibre-web from non localhost to get valid api_endpoint for kobo device"
msgstr "" msgstr ""
#: cps/kobo_auth.py:129 cps/kobo_auth.py:149 #: cps/kobo_auth.py:133 cps/kobo_auth.py:153
msgid "Kobo Setup" msgid "Kobo Setup"
msgstr "" msgstr ""
@ -573,7 +573,7 @@ msgstr "Googleen kirjautuminen epäonnistui."
msgid "Failed to fetch user info from Google." msgid "Failed to fetch user info from Google."
msgstr "Käyttäjätietojen haku Googlesta epäonnistui." msgstr "Käyttäjätietojen haku Googlesta epäonnistui."
#: cps/oauth_bb.py:225 cps/web.py:1291 cps/web.py:1431 #: cps/oauth_bb.py:225 cps/web.py:1296 cps/web.py:1436
#, python-format #, python-format
msgid "you are now logged in as: '%(nickname)s'" msgid "you are now logged in as: '%(nickname)s'"
msgstr "olet nyt kirjautunut tunnuksella: \"%(nickname)s\"" msgstr "olet nyt kirjautunut tunnuksella: \"%(nickname)s\""
@ -725,7 +725,7 @@ msgstr "Kuumat kirjat"
msgid "Show Hot Books" msgid "Show Hot Books"
msgstr "Näytä kuumat kirjat" msgstr "Näytä kuumat kirjat"
#: cps/templates/index.xml:24 cps/ub.py:70 cps/web.py:615 #: cps/templates/index.xml:24 cps/ub.py:70 cps/web.py:616
msgid "Top Rated Books" msgid "Top Rated Books"
msgstr "Parhaiten arvioidut kirjat" msgstr "Parhaiten arvioidut kirjat"
@ -734,7 +734,7 @@ msgid "Show Top Rated Books"
msgstr "Näytä parhaiten arvioidut kirjat" msgstr "Näytä parhaiten arvioidut kirjat"
#: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:73 #: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:73
#: cps/web.py:1125 #: cps/web.py:1131
msgid "Read Books" msgid "Read Books"
msgstr "Luetut kirjat" msgstr "Luetut kirjat"
@ -743,7 +743,7 @@ msgid "Show read and unread"
msgstr "Näytä luetut ja lukemattomat" msgstr "Näytä luetut ja lukemattomat"
#: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:77 #: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:77
#: cps/web.py:1129 #: cps/web.py:1134
msgid "Unread Books" msgid "Unread Books"
msgstr "Lukemattomat kirjat" msgstr "Lukemattomat kirjat"
@ -759,7 +759,7 @@ msgstr "Löydä"
msgid "Show random books" msgid "Show random books"
msgstr "Näytä satunnaisia kirjoja" msgstr "Näytä satunnaisia kirjoja"
#: cps/templates/index.xml:75 cps/ub.py:83 cps/web.py:897 #: cps/templates/index.xml:75 cps/ub.py:83 cps/web.py:898
msgid "Categories" msgid "Categories"
msgstr "Kategoriat" msgstr "Kategoriat"
@ -768,7 +768,7 @@ msgid "Show category selection"
msgstr "Näytä kategoriavalinta" msgstr "Näytä kategoriavalinta"
#: cps/templates/book_edit.html:84 cps/templates/index.xml:82 #: cps/templates/book_edit.html:84 cps/templates/index.xml:82
#: cps/templates/search_form.html:53 cps/ub.py:86 cps/web.py:825 #: cps/templates/search_form.html:53 cps/ub.py:86 cps/web.py:826
msgid "Series" msgid "Series"
msgstr "Sarjat" msgstr "Sarjat"
@ -784,7 +784,7 @@ msgstr "Kirjailijat"
msgid "Show author selection" msgid "Show author selection"
msgstr "Näytä kirjailijavalinta" msgstr "Näytä kirjailijavalinta"
#: cps/templates/index.xml:68 cps/ub.py:93 cps/web.py:809 #: cps/templates/index.xml:68 cps/ub.py:93 cps/web.py:810
msgid "Publishers" msgid "Publishers"
msgstr "Julkaisijat" msgstr "Julkaisijat"
@ -793,7 +793,7 @@ msgid "Show publisher selection"
msgstr "Näytä julkaisijavalinta" msgstr "Näytä julkaisijavalinta"
#: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:96 #: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:96
#: cps/web.py:880 #: cps/web.py:881
msgid "Languages" msgid "Languages"
msgstr "Kielet" msgstr "Kielet"
@ -817,7 +817,7 @@ msgstr "Tiedotomuodot"
msgid "Show file formats selection" msgid "Show file formats selection"
msgstr "Näytä tiedostomuotovalinta" msgstr "Näytä tiedostomuotovalinta"
#: cps/ub.py:107 cps/web.py:1150 #: cps/ub.py:107 cps/web.py:1155
msgid "Archived Books" msgid "Archived Books"
msgstr "" msgstr ""
@ -854,223 +854,223 @@ 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." msgid "Click on the button below to update to the latest stable version."
msgstr "Paina alla olevaa nappia päivittääksesi uusimpaan vakaaseen versioon." msgstr "Paina alla olevaa nappia päivittääksesi uusimpaan vakaaseen versioon."
#: cps/web.py:306 #: cps/web.py:307
#, python-format #, python-format
msgid "Error: %(ldaperror)s" msgid "Error: %(ldaperror)s"
msgstr "" msgstr ""
#: cps/web.py:310 #: cps/web.py:311
msgid "Error: No user returned in response of LDAP server" msgid "Error: No user returned in response of LDAP server"
msgstr "" msgstr ""
#: cps/web.py:358 #: cps/web.py:359
msgid "Failed to Create at Least One LDAP User" msgid "Failed to Create at Least One LDAP User"
msgstr "" msgstr ""
#: cps/web.py:361 #: cps/web.py:362
msgid "At Least One LDAP User Not Found in Database" msgid "At Least One LDAP User Not Found in Database"
msgstr "" msgstr ""
#: cps/web.py:363 #: cps/web.py:364
msgid "User Successfully Imported" msgid "User Successfully Imported"
msgstr "" msgstr ""
#: cps/web.py:587 #: cps/web.py:588
msgid "Recently Added Books" msgid "Recently Added Books"
msgstr "Viimeksi lisätyt kirjat" msgstr "Viimeksi lisätyt kirjat"
#: cps/templates/index.html:5 cps/web.py:623 #: cps/templates/index.html:5 cps/web.py:624
msgid "Discover (Random Books)" msgid "Discover (Random Books)"
msgstr "Löydä (satunnaiset kirjat)" msgstr "Löydä (satunnaiset kirjat)"
#: cps/web.py:651 #: cps/web.py:652
msgid "Books" msgid "Books"
msgstr "Kirjat" msgstr "Kirjat"
#: cps/web.py:678 #: cps/web.py:679
msgid "Hot Books (Most Downloaded)" msgid "Hot Books (Most Downloaded)"
msgstr "Kuumat kirjat (ladatuimmat)" msgstr "Kuumat kirjat (ladatuimmat)"
#: cps/web.py:688 #: cps/web.py:689
msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible" 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:" msgstr "Virhe eKirjan avaamisessa. Tiedostoa ei ole tai se ei ole saatavilla:"
#: cps/web.py:702 #: cps/web.py:703
#, python-format #, python-format
msgid "Author: %(name)s" msgid "Author: %(name)s"
msgstr "Kirjailija: %(name)s" msgstr "Kirjailija: %(name)s"
#: cps/web.py:714 #: cps/web.py:715
#, python-format #, python-format
msgid "Publisher: %(name)s" msgid "Publisher: %(name)s"
msgstr "Julkaisija: %(name)s" msgstr "Julkaisija: %(name)s"
#: cps/web.py:725 #: cps/web.py:726
#, python-format #, python-format
msgid "Series: %(serie)s" msgid "Series: %(serie)s"
msgstr "Sarja: %(serie)s" msgstr "Sarja: %(serie)s"
#: cps/web.py:736 #: cps/web.py:737
#, python-format #, python-format
msgid "Rating: %(rating)s stars" msgid "Rating: %(rating)s stars"
msgstr "Arvostelu: %(rating)s tähteä" msgstr "Arvostelu: %(rating)s tähteä"
#: cps/web.py:748 #: cps/web.py:749
#, python-format #, python-format
msgid "File format: %(format)s" msgid "File format: %(format)s"
msgstr "Tiedostomuoto: %(format)s" msgstr "Tiedostomuoto: %(format)s"
#: cps/web.py:760 #: cps/web.py:761
#, python-format #, python-format
msgid "Category: %(name)s" msgid "Category: %(name)s"
msgstr "Kategoria: %(name)s" msgstr "Kategoria: %(name)s"
#: cps/web.py:777 #: cps/web.py:778
#, python-format #, python-format
msgid "Language: %(name)s" msgid "Language: %(name)s"
msgstr "Kieli: %(name)s" msgstr "Kieli: %(name)s"
#: cps/web.py:839 #: cps/web.py:840
msgid "Ratings list" msgid "Ratings list"
msgstr "Arvostelulistaus" msgstr "Arvostelulistaus"
#: cps/web.py:852 #: cps/web.py:853
msgid "File formats list" msgid "File formats list"
msgstr "Tiedostomuotolistaus" msgstr "Tiedostomuotolistaus"
#: cps/templates/layout.html:73 cps/templates/tasks.html:7 cps/web.py:911 #: cps/templates/layout.html:73 cps/templates/tasks.html:7 cps/web.py:912
msgid "Tasks" msgid "Tasks"
msgstr "Tehtävät" msgstr "Tehtävät"
#: cps/templates/book_edit.html:235 cps/templates/feed.xml:33 #: cps/templates/book_edit.html:235 cps/templates/feed.xml:33
#: cps/templates/layout.html:44 cps/templates/layout.html:47 #: cps/templates/layout.html:44 cps/templates/layout.html:47
#: cps/templates/search_form.html:170 cps/web.py:937 cps/web.py:942 #: cps/templates/search_form.html:174 cps/web.py:938 cps/web.py:943
msgid "Search" msgid "Search"
msgstr "Hae" msgstr "Hae"
#: cps/web.py:993 #: cps/web.py:994
msgid "Published after " msgid "Published after "
msgstr "Julkaistu alkaen " msgstr "Julkaistu alkaen "
#: cps/web.py:1000 #: cps/web.py:1001
msgid "Published before " msgid "Published before "
msgstr "Julkaisut ennen " msgstr "Julkaisut ennen "
#: cps/web.py:1014 #: cps/web.py:1015
#, python-format #, python-format
msgid "Rating <= %(rating)s" msgid "Rating <= %(rating)s"
msgstr "Arvostelu <= %(rating)s" msgstr "Arvostelu <= %(rating)s"
#: cps/web.py:1016 #: cps/web.py:1017
#, python-format #, python-format
msgid "Rating >= %(rating)s" msgid "Rating >= %(rating)s"
msgstr "Arvostelu >= %(rating)s" msgstr "Arvostelu >= %(rating)s"
#: cps/web.py:1082 cps/web.py:1096 #: cps/web.py:1083 cps/web.py:1097
msgid "search" msgid "search"
msgstr "hae" msgstr "hae"
#: cps/web.py:1201 #: cps/web.py:1206
#, python-format #, python-format
msgid "Book successfully queued for sending to %(kindlemail)s" msgid "Book successfully queued for sending to %(kindlemail)s"
msgstr "Kirja lisätty onnistuneeksi lähetettäväksi osoitteeseen %(kindlemail)s" msgstr "Kirja lisätty onnistuneeksi lähetettäväksi osoitteeseen %(kindlemail)s"
#: cps/web.py:1205 #: cps/web.py:1210
#, python-format #, python-format
msgid "Oops! There was an error sending this book: %(res)s" msgid "Oops! There was an error sending this book: %(res)s"
msgstr "Kirjan: %(res)s lähettämisessa tapahtui virhe" msgstr "Kirjan: %(res)s lähettämisessa tapahtui virhe"
#: cps/web.py:1207 #: cps/web.py:1212
msgid "Please update your profile with a valid Send to Kindle E-mail Address." msgid "Please update your profile with a valid Send to Kindle E-mail Address."
msgstr "Ole hyvä ja aseta Kindle sähköpostiosoite ensin..." msgstr "Ole hyvä ja aseta Kindle sähköpostiosoite ensin..."
#: cps/web.py:1224 #: cps/web.py:1229
msgid "E-Mail server is not configured, please contact your administrator!" msgid "E-Mail server is not configured, please contact your administrator!"
msgstr "" msgstr ""
#: cps/web.py:1225 cps/web.py:1231 cps/web.py:1256 cps/web.py:1260 #: cps/web.py:1230 cps/web.py:1236 cps/web.py:1261 cps/web.py:1265
#: cps/web.py:1265 cps/web.py:1269 #: cps/web.py:1270 cps/web.py:1274
msgid "register" msgid "register"
msgstr "rekisteröidy" msgstr "rekisteröidy"
#: cps/web.py:1258 #: cps/web.py:1263
msgid "Your e-mail is not allowed to register" msgid "Your e-mail is not allowed to register"
msgstr "Sähköpostiosoitteellasi ei ole sallittua rekisteröityä" msgstr "Sähköpostiosoitteellasi ei ole sallittua rekisteröityä"
#: cps/web.py:1261 #: cps/web.py:1266
msgid "Confirmation e-mail was send to your e-mail account." msgid "Confirmation e-mail was send to your e-mail account."
msgstr "Vahvistusviesti on lähetetty sähköpostiosoitteeseesi." msgstr "Vahvistusviesti on lähetetty sähköpostiosoitteeseesi."
#: cps/web.py:1264 #: cps/web.py:1269
msgid "This username or e-mail address is already in use." 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ä." msgstr "Käyttäjätunnus tai sähköpostiosoite on jo käytössä."
#: cps/web.py:1281 #: cps/web.py:1286
msgid "Cannot activate LDAP authentication" msgid "Cannot activate LDAP authentication"
msgstr "LDAP autnetikoinnin aktivointi ei onnistu" msgstr "LDAP autnetikoinnin aktivointi ei onnistu"
#: cps/web.py:1298 #: cps/web.py:1303
#, python-format #, python-format
msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known"
msgstr "" msgstr ""
#: cps/web.py:1304 #: cps/web.py:1309
#, python-format #, python-format
msgid "Could not login: %(message)s" msgid "Could not login: %(message)s"
msgstr "" msgstr ""
#: cps/web.py:1308 cps/web.py:1332 #: cps/web.py:1313 cps/web.py:1337
msgid "Wrong Username or Password" msgid "Wrong Username or Password"
msgstr "Väärä käyttäjätunnus tai salasana" msgstr "Väärä käyttäjätunnus tai salasana"
#: cps/web.py:1315 #: cps/web.py:1320
msgid "New Password was send to your email address" msgid "New Password was send to your email address"
msgstr "" msgstr ""
#: cps/web.py:1321 #: cps/web.py:1326
msgid "Please enter valid username to reset password" msgid "Please enter valid username to reset password"
msgstr "" msgstr ""
#: cps/web.py:1327 #: cps/web.py:1332
#, python-format #, python-format
msgid "You are now logged in as: '%(nickname)s'" msgid "You are now logged in as: '%(nickname)s'"
msgstr "olet kirjautunut tunnuksella: '%(nickname)s'" msgstr "olet kirjautunut tunnuksella: '%(nickname)s'"
#: cps/web.py:1336 cps/web.py:1363 #: cps/web.py:1341 cps/web.py:1368
msgid "login" msgid "login"
msgstr "kirjaudu" msgstr "kirjaudu"
#: cps/web.py:1375 cps/web.py:1409 #: cps/web.py:1380 cps/web.py:1414
msgid "Token not found" msgid "Token not found"
msgstr "Valtuutusta ei löytynyt" msgstr "Valtuutusta ei löytynyt"
#: cps/web.py:1384 cps/web.py:1417 #: cps/web.py:1389 cps/web.py:1422
msgid "Token has expired" msgid "Token has expired"
msgstr "Valtuutus vanhentunut" msgstr "Valtuutus vanhentunut"
#: cps/web.py:1393 #: cps/web.py:1398
msgid "Success! Please return to your device" msgid "Success! Please return to your device"
msgstr "Onnistui! Ole hyvä ja palaa laitteellesi" msgstr "Onnistui! Ole hyvä ja palaa laitteellesi"
#: cps/web.py:1474 cps/web.py:1519 cps/web.py:1525 #: cps/web.py:1479 cps/web.py:1524 cps/web.py:1530
#, python-format #, python-format
msgid "%(name)s's profile" msgid "%(name)s's profile"
msgstr "%(name)sn profiili" msgstr "%(name)sn profiili"
#: cps/web.py:1521 #: cps/web.py:1526
msgid "Profile updated" msgid "Profile updated"
msgstr "Profiili päivitetty" msgstr "Profiili päivitetty"
#: cps/web.py:1538 cps/web.py:1642 #: cps/web.py:1543 cps/web.py:1647
msgid "Error opening eBook. File does not exist or file is not accessible:" msgid "Error opening eBook. File does not exist or file is not accessible:"
msgstr "" msgstr ""
#: cps/web.py:1550 cps/web.py:1553 cps/web.py:1556 cps/web.py:1563 #: cps/web.py:1555 cps/web.py:1558 cps/web.py:1561 cps/web.py:1568
#: cps/web.py:1568 #: cps/web.py:1573
msgid "Read a Book" msgid "Read a Book"
msgstr "Lue kirja" msgstr "Lue kirja"
#: cps/web.py:1579 #: cps/web.py:1584
msgid "Error opening eBook. File does not exist or file is not accessible." msgid "Error opening eBook. File does not exist or file is not accessible."
msgstr "Virhe kirjan avaamisessa. Tiedostoa ei ole tai se ei ole saatavilla." msgstr "Virhe kirjan avaamisessa. Tiedostoa ei ole tai se ei ole saatavilla."
@ -1296,13 +1296,13 @@ msgid "In Library"
msgstr "Kirjastossa" msgstr "Kirjastossa"
#: cps/templates/author.html:34 cps/templates/list.html:14 #: cps/templates/author.html:34 cps/templates/list.html:14
#: cps/templates/search.html:41 #: cps/templates/search.html:38
msgid "All" msgid "All"
msgstr "Kaikki" msgstr "Kaikki"
#: cps/templates/author.html:58 cps/templates/author.html:110 #: cps/templates/author.html:58 cps/templates/author.html:110
#: cps/templates/discover.html:27 cps/templates/index.html:26 #: cps/templates/discover.html:27 cps/templates/index.html:26
#: cps/templates/index.html:89 cps/templates/search.html:67 #: cps/templates/index.html:89 cps/templates/search.html:64
#: cps/templates/shelf.html:36 #: cps/templates/shelf.html:36
msgid "reduce" msgid "reduce"
msgstr "vähennä" msgstr "vähennä"
@ -1931,6 +1931,12 @@ msgstr "Kuvaus:"
msgid "Add to shelf" msgid "Add to shelf"
msgstr "Lisää hyllyyn" msgstr "Lisää hyllyyn"
#: cps/templates/detail.html:243 cps/templates/detail.html:260
#: cps/templates/feed.xml:79 cps/templates/layout.html:136
#: cps/templates/layout.html:140 cps/templates/search.html:20
msgid "(Public)"
msgstr ""
#: cps/templates/detail.html:274 #: cps/templates/detail.html:274
msgid "Edit Metadata" msgid "Edit Metadata"
msgstr "Muokkaa metadataa" msgstr "Muokkaa metadataa"
@ -1979,11 +1985,6 @@ msgstr "Haluatko todellakin poistaa tämän domainin säännön?"
msgid "Next" msgid "Next"
msgstr "Seuraava" msgstr "Seuraava"
#: cps/templates/feed.xml:79 cps/templates/layout.html:136
#: cps/templates/layout.html:140
msgid "(Public)"
msgstr ""
#: cps/templates/generate_kobo_auth_url.html:5 #: cps/templates/generate_kobo_auth_url.html:5
msgid "Open the .kobo/Kobo eReader.conf file in a text editor and add (or edit):" msgid "Open the .kobo/Kobo eReader.conf file in a text editor and add (or edit):"
msgstr "" msgstr ""

File diff suppressed because it is too large Load Diff

View File

@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PROJECT VERSION\n" "Project-Id-Version: PROJECT VERSION\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2020-05-01 17:15+0200\n" "POT-Creation-Date: 2020-05-23 08:46+0200\n"
"PO-Revision-Date: 2019-04-06 23:36+0200\n" "PO-Revision-Date: 2019-04-06 23:36+0200\n"
"Last-Translator: \n" "Last-Translator: \n"
"Language: hu\n" "Language: hu\n"
@ -46,9 +46,9 @@ msgstr ""
msgid "Unknown command" msgid "Unknown command"
msgstr "" msgstr ""
#: cps/admin.py:115 cps/editbooks.py:504 cps/editbooks.py:514 #: cps/admin.py:115 cps/editbooks.py:505 cps/editbooks.py:515
#: cps/editbooks.py:620 cps/editbooks.py:622 cps/editbooks.py:688 #: cps/editbooks.py:621 cps/editbooks.py:623 cps/editbooks.py:689
#: cps/updater.py:509 cps/uploader.py:99 cps/uploader.py:110 #: cps/updater.py:509 cps/uploader.py:100 cps/uploader.py:110
msgid "Unknown" msgid "Unknown"
msgstr "Ismeretlen" msgstr "Ismeretlen"
@ -60,223 +60,223 @@ msgstr "Rendszergazda oldala"
msgid "UI Configuration" msgid "UI Configuration"
msgstr "Felhasználói felület beállításai" msgstr "Felhasználói felület beállításai"
#: cps/admin.py:192 cps/admin.py:674 #: cps/admin.py:189 cps/admin.py:671
msgid "Calibre-Web configuration updated" msgid "Calibre-Web configuration updated"
msgstr "A Calibre-Web konfigurációja frissítve." msgstr "A Calibre-Web konfigurációja frissítve."
#: cps/admin.py:438 cps/admin.py:444 cps/admin.py:455 cps/admin.py:466 #: cps/admin.py:435 cps/admin.py:441 cps/admin.py:452 cps/admin.py:463
#: cps/templates/modal_restriction.html:29 #: cps/templates/modal_restriction.html:29
msgid "Deny" msgid "Deny"
msgstr "" msgstr ""
#: cps/admin.py:440 cps/admin.py:446 cps/admin.py:457 cps/admin.py:468 #: cps/admin.py:437 cps/admin.py:443 cps/admin.py:454 cps/admin.py:465
#: cps/templates/modal_restriction.html:28 #: cps/templates/modal_restriction.html:28
msgid "Allow" msgid "Allow"
msgstr "" msgstr ""
#: cps/admin.py:509 #: cps/admin.py:506
msgid "client_secrets.json Is Not Configured For Web Application" msgid "client_secrets.json Is Not Configured For Web Application"
msgstr "" msgstr ""
#: cps/admin.py:525 #: cps/admin.py:522
msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgid "Keyfile Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:529 #: cps/admin.py:526
msgid "Certfile Location is not Valid, Please Enter Correct Path" msgid "Certfile Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:567 #: cps/admin.py:564
msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier"
msgstr "" msgstr ""
#: cps/admin.py:585 #: cps/admin.py:582
#, python-format #, python-format
msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier"
msgstr "" msgstr ""
#: cps/admin.py:588 #: cps/admin.py:585
msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgid "LDAP Group Object Filter Has Unmatched Parenthesis"
msgstr "" msgstr ""
#: cps/admin.py:592 #: cps/admin.py:589
#, python-format #, python-format
msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier"
msgstr "" msgstr ""
#: cps/admin.py:595 #: cps/admin.py:592
msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgid "LDAP User Object Filter Has Unmatched Parenthesis"
msgstr "" msgstr ""
#: cps/admin.py:599 #: cps/admin.py:596
msgid "LDAP Certificate Location is not Valid, Please Enter Correct Path" msgid "LDAP Certificate Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:647 #: cps/admin.py:644
msgid "Logfile Location is not Valid, Please Enter Correct Path" msgid "Logfile Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:652 #: cps/admin.py:649
msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgid "Access Logfile Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:671 #: cps/admin.py:668
msgid "DB Location is not Valid, Please Enter Correct Path" msgid "DB Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:704 #: cps/admin.py:701
msgid "Basic Configuration" msgid "Basic Configuration"
msgstr "Alapvető beállítások" msgstr "Alapvető beállítások"
#: cps/admin.py:728 cps/web.py:1230 #: cps/admin.py:725 cps/web.py:1235
msgid "Please fill out all fields!" msgid "Please fill out all fields!"
msgstr "Az összes mezőt ki kell tölteni!" msgstr "Az összes mezőt ki kell tölteni!"
#: cps/admin.py:731 cps/admin.py:743 cps/admin.py:749 cps/admin.py:767 #: cps/admin.py:728 cps/admin.py:740 cps/admin.py:746 cps/admin.py:764
msgid "Add new user" msgid "Add new user"
msgstr "Új felhasználó hozzáadása" msgstr "Új felhasználó hozzáadása"
#: cps/admin.py:740 cps/web.py:1472 #: cps/admin.py:737 cps/web.py:1477
msgid "E-mail is not from valid domain" msgid "E-mail is not from valid domain"
msgstr "Az e-mail tartománya nem érvényes." msgstr "Az e-mail tartománya nem érvényes."
#: cps/admin.py:747 cps/admin.py:762 #: cps/admin.py:744 cps/admin.py:759
msgid "Found an existing account for this e-mail address or nickname." 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." msgstr "Már létezik felhasználó ehhez az e-mail címhez vagy felhasználói névhez."
#: cps/admin.py:758 #: cps/admin.py:755
#, python-format #, python-format
msgid "User '%(user)s' created" msgid "User '%(user)s' created"
msgstr "A következő felhasználó létrehozva: %(user)s" msgstr "A következő felhasználó létrehozva: %(user)s"
#: cps/admin.py:777 #: cps/admin.py:774
msgid "Edit e-mail server settings" msgid "Edit e-mail server settings"
msgstr "Az e-mail kiszolgáló beállításainak módosítása" msgstr "Az e-mail kiszolgáló beállításainak módosítása"
#: cps/admin.py:803 #: cps/admin.py:800
#, python-format #, python-format
msgid "Test e-mail successfully send to %(kindlemail)s" msgid "Test e-mail successfully send to %(kindlemail)s"
msgstr "A teszt levél sikeresen elküldve ide: %(kindlemail)s" msgstr "A teszt levél sikeresen elküldve ide: %(kindlemail)s"
#: cps/admin.py:806 #: cps/admin.py:803
#, python-format #, python-format
msgid "There was an error sending the Test e-mail: %(res)s" msgid "There was an error sending the Test e-mail: %(res)s"
msgstr "Hiba történt a teszt levél küldése során: %(res)s" msgstr "Hiba történt a teszt levél küldése során: %(res)s"
#: cps/admin.py:808 #: cps/admin.py:805
msgid "Please configure your e-mail address first..." msgid "Please configure your e-mail address first..."
msgstr "" msgstr ""
#: cps/admin.py:810 #: cps/admin.py:807
msgid "E-mail server settings updated" msgid "E-mail server settings updated"
msgstr "Az e-mail kiszolgáló beállításai frissítve." msgstr "Az e-mail kiszolgáló beállításai frissítve."
#: cps/admin.py:821 #: cps/admin.py:818
msgid "User not found" msgid "User not found"
msgstr "" msgstr ""
#: cps/admin.py:842 #: cps/admin.py:839
#, python-format #, python-format
msgid "User '%(nick)s' deleted" msgid "User '%(nick)s' deleted"
msgstr "A felhasználó törölve: %(nick)s" msgstr "A felhasználó törölve: %(nick)s"
#: cps/admin.py:845 #: cps/admin.py:842
msgid "No admin user remaining, can't delete user" msgid "No admin user remaining, can't delete user"
msgstr "" msgstr ""
#: cps/admin.py:851 #: cps/admin.py:848
msgid "No admin user remaining, can't remove admin role" msgid "No admin user remaining, can't remove admin role"
msgstr "" msgstr ""
#: cps/admin.py:887 cps/web.py:1515 #: cps/admin.py:884 cps/web.py:1520
msgid "Found an existing account for this e-mail address." msgid "Found an existing account for this e-mail address."
msgstr "Már létezik felhasználó ehhez az e-mail címhez." msgstr "Már létezik felhasználó ehhez az e-mail címhez."
#: cps/admin.py:897 cps/admin.py:912 cps/admin.py:932 cps/web.py:1490 #: cps/admin.py:894 cps/admin.py:909 cps/admin.py:929 cps/web.py:1495
#, python-format #, python-format
msgid "Edit User %(nick)s" msgid "Edit User %(nick)s"
msgstr " A felhasználó szerkesztése: %(nick)s" msgstr " A felhasználó szerkesztése: %(nick)s"
#: cps/admin.py:903 cps/web.py:1482 #: cps/admin.py:900 cps/web.py:1487
msgid "This username is already taken" msgid "This username is already taken"
msgstr "" msgstr ""
#: cps/admin.py:919 #: cps/admin.py:916
#, python-format #, python-format
msgid "User '%(nick)s' updated" msgid "User '%(nick)s' updated"
msgstr "A felhasználó frissítve: %(nick)s" msgstr "A felhasználó frissítve: %(nick)s"
#: cps/admin.py:922 #: cps/admin.py:919
msgid "An unknown error occured." msgid "An unknown error occured."
msgstr "Ismeretlen hiba történt." msgstr "Ismeretlen hiba történt."
#: cps/admin.py:943 #: cps/admin.py:940
#, python-format #, python-format
msgid "Password for user %(user)s reset" msgid "Password for user %(user)s reset"
msgstr "A(z) %(user)s felhasználó jelszavának alaphelyzetbe állítása" msgstr "A(z) %(user)s felhasználó jelszavának alaphelyzetbe állítása"
#: cps/admin.py:946 cps/web.py:1255 cps/web.py:1319 #: cps/admin.py:943 cps/web.py:1260 cps/web.py:1324
msgid "An unknown error occurred. Please try again later." msgid "An unknown error occurred. Please try again later."
msgstr "Ismeretlen hiba történt. Próbáld újra később!" msgstr "Ismeretlen hiba történt. Próbáld újra később!"
#: cps/admin.py:949 cps/web.py:1196 #: cps/admin.py:946 cps/web.py:1201
msgid "Please configure the SMTP mail settings first..." msgid "Please configure the SMTP mail settings first..."
msgstr "Először be kell állítani az SMTP levelező beállításokat..." msgstr "Először be kell állítani az SMTP levelező beállításokat..."
#: cps/admin.py:961 #: cps/admin.py:958
msgid "Logfile viewer" msgid "Logfile viewer"
msgstr "" msgstr ""
#: cps/admin.py:1000 #: cps/admin.py:997
msgid "Requesting update package" msgid "Requesting update package"
msgstr "Frissítési csomag kérése" msgstr "Frissítési csomag kérése"
#: cps/admin.py:1001 #: cps/admin.py:998
msgid "Downloading update package" msgid "Downloading update package"
msgstr "Frissítési csomag letöltése" msgstr "Frissítési csomag letöltése"
#: cps/admin.py:1002 #: cps/admin.py:999
msgid "Unzipping update package" msgid "Unzipping update package"
msgstr "Frissítési csomag kitömörítése" msgstr "Frissítési csomag kitömörítése"
#: cps/admin.py:1003 #: cps/admin.py:1000
msgid "Replacing files" msgid "Replacing files"
msgstr "Fájlok cserélése" msgstr "Fájlok cserélése"
#: cps/admin.py:1004 #: cps/admin.py:1001
msgid "Database connections are closed" msgid "Database connections are closed"
msgstr "Adatbázis kapcsolatok lezárva" msgstr "Adatbázis kapcsolatok lezárva"
#: cps/admin.py:1005 #: cps/admin.py:1002
msgid "Stopping server" msgid "Stopping server"
msgstr "Szerver leállítása" msgstr "Szerver leállítása"
#: cps/admin.py:1006 #: cps/admin.py:1003
msgid "Update finished, please press okay and reload page" 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" msgstr "A frissítés települt, kattints az OK-ra és újra tölt az oldal"
#: cps/admin.py:1007 cps/admin.py:1008 cps/admin.py:1009 cps/admin.py:1010 #: cps/admin.py:1004 cps/admin.py:1005 cps/admin.py:1006 cps/admin.py:1007
#: cps/admin.py:1011 #: cps/admin.py:1008
msgid "Update failed:" msgid "Update failed:"
msgstr "A frissítés nem sikerült:" msgstr "A frissítés nem sikerült:"
#: cps/admin.py:1007 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522 #: cps/admin.py:1004 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522
msgid "HTTP Error" msgid "HTTP Error"
msgstr "HTTP hiba" msgstr "HTTP hiba"
#: cps/admin.py:1008 cps/updater.py:321 cps/updater.py:524 #: cps/admin.py:1005 cps/updater.py:321 cps/updater.py:524
msgid "Connection error" msgid "Connection error"
msgstr "Kapcsolódási hiba" msgstr "Kapcsolódási hiba"
#: cps/admin.py:1009 cps/updater.py:323 cps/updater.py:526 #: cps/admin.py:1006 cps/updater.py:323 cps/updater.py:526
msgid "Timeout while establishing connection" msgid "Timeout while establishing connection"
msgstr "Időtúllépés a kapcsolódás során" msgstr "Időtúllépés a kapcsolódás során"
#: cps/admin.py:1010 cps/updater.py:325 cps/updater.py:528 #: cps/admin.py:1007 cps/updater.py:325 cps/updater.py:528
msgid "General error" msgid "General error"
msgstr "Általános hiba" msgstr "Általános hiba"
#: cps/admin.py:1011 #: cps/admin.py:1008
msgid "Update File Could Not be Saved in Temp Dir" msgid "Update File Could Not be Saved in Temp Dir"
msgstr "" msgstr ""
@ -292,7 +292,7 @@ msgstr ""
msgid "Book Successfully Deleted" msgid "Book Successfully Deleted"
msgstr "" msgstr ""
#: cps/editbooks.py:253 cps/editbooks.py:489 #: cps/editbooks.py:253 cps/editbooks.py:490
msgid "Error opening eBook. File does not exist or file is not accessible" msgid "Error opening eBook. File does not exist or file is not accessible"
msgstr "Hiba az ekönyv megnyitásakor. A fájl nem létezik vagy nem elérhető." msgstr "Hiba az ekönyv megnyitásakor. A fájl nem létezik vagy nem elérhető."
@ -305,16 +305,16 @@ msgstr "Metaadatok szerkesztése"
msgid "%(langname)s is not a valid language" msgid "%(langname)s is not a valid language"
msgstr "A(z) %(langname)s nem érvényes nyelv" msgstr "A(z) %(langname)s nem érvényes nyelv"
#: cps/editbooks.py:413 cps/editbooks.py:663 #: cps/editbooks.py:413 cps/editbooks.py:664
#, python-format #, python-format
msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" 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." msgstr "A(z) \"%(ext)s\" kiterjesztésű fájlok feltöltése nincs engedélyezve ezen a szerveren."
#: cps/editbooks.py:417 cps/editbooks.py:667 #: cps/editbooks.py:417 cps/editbooks.py:668
msgid "File to be uploaded must have an extension" msgid "File to be uploaded must have an extension"
msgstr "A feltöltendő fájlnak kiterjesztéssel kell rendelkeznie!" msgstr "A feltöltendő fájlnak kiterjesztéssel kell rendelkeznie!"
#: cps/editbooks.py:429 cps/editbooks.py:701 #: cps/editbooks.py:429 cps/editbooks.py:702
#, python-format #, python-format
msgid "Failed to create path %(path)s (Permission denied)." 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." msgstr "Nem sikerült létrehozni az elérési utat (engedély megtagadva): %(path)s."
@ -329,48 +329,48 @@ msgstr "Nem sikerült elmenteni a %(file)s fájlt."
msgid "File format %(ext)s added to %(book)s" msgid "File format %(ext)s added to %(book)s"
msgstr "A(z) %(ext)s fájlformátum hozzáadva a könyvhez: %(book)s." msgstr "A(z) %(ext)s fájlformátum hozzáadva a könyvhez: %(book)s."
#: cps/editbooks.py:606 #: cps/editbooks.py:607
msgid "Metadata successfully updated" msgid "Metadata successfully updated"
msgstr "A metaadatok sikeresen frissültek" msgstr "A metaadatok sikeresen frissültek"
#: cps/editbooks.py:615 #: cps/editbooks.py:616
msgid "Error editing book, please check logfile for details" 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." msgstr "Hiba a könyv szerkesztése során, további részletek a naplófájlban."
#: cps/editbooks.py:675 #: cps/editbooks.py:676
#, python-format #, python-format
msgid "File %(filename)s could not saved to temp dir" msgid "File %(filename)s could not saved to temp dir"
msgstr "" msgstr ""
#: cps/editbooks.py:692 #: cps/editbooks.py:693
msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgid "Uploaded book probably exists in the library, consider to change before upload new: "
msgstr "" msgstr ""
#: cps/editbooks.py:707 #: cps/editbooks.py:709
#, python-format #, python-format
msgid "Failed to store file %(file)s (Permission denied)." msgid "Failed to Move File %(file)s: %(error)s"
msgstr "Nem sikerült elmenteni a %(file)s fájlt." msgstr ""
#: cps/editbooks.py:713 #: cps/editbooks.py:723
#, python-format #, python-format
msgid "Failed to delete file %(file)s (Permission denied)." msgid "Failed to Move Cover File %(file)s: %(error)s"
msgstr "Nem sikerült törölni a %(file)s fájlt." msgstr ""
#: cps/editbooks.py:804 #: cps/editbooks.py:808
#, python-format #, python-format
msgid "File %(file)s uploaded" msgid "File %(file)s uploaded"
msgstr "" msgstr ""
#: cps/editbooks.py:833 #: cps/editbooks.py:837
msgid "Source or destination format for conversion missing" msgid "Source or destination format for conversion missing"
msgstr "Az átalakításhoz hiányzik a forrás- vagy a célformátum!" msgstr "Az átalakításhoz hiányzik a forrás- vagy a célformátum!"
#: cps/editbooks.py:841 #: cps/editbooks.py:845
#, python-format #, python-format
msgid "Book successfully queued for converting to %(book_format)s" 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" msgstr "A könyv sikeresen átalakításra lett jelölve a következő formátumra: %(book_format)s"
#: cps/editbooks.py:845 #: cps/editbooks.py:849
#, python-format #, python-format
msgid "There was an error converting this book: %(res)s" msgid "There was an error converting this book: %(res)s"
msgstr "Hiba történt a könyv átalakításakor: %(res)s" msgstr "Hiba történt a könyv átalakításakor: %(res)s"
@ -444,111 +444,111 @@ msgstr "E-mail: %(book)s"
msgid "The requested file could not be read. Maybe wrong permissions?" msgid "The requested file could not be read. Maybe wrong permissions?"
msgstr "A kért fájl nem olvasható. Esetleg jogosultsági probléma lenne?" msgstr "A kért fájl nem olvasható. Esetleg jogosultsági probléma lenne?"
#: cps/helper.py:299 #: cps/helper.py:300
#, python-format #, python-format
msgid "Deleting book %(id)s failed, path has subfolders: %(path)s" msgid "Deleting book %(id)s failed, path has subfolders: %(path)s"
msgstr "" msgstr ""
#: cps/helper.py:309 #: cps/helper.py:310
#, python-format #, python-format
msgid "Deleting book %(id)s failed: %(message)s" msgid "Deleting book %(id)s failed: %(message)s"
msgstr "" msgstr ""
#: cps/helper.py:319 #: cps/helper.py:320
#, python-format #, python-format
msgid "Deleting book %(id)s failed, book path not valid: %(path)s" msgid "Deleting book %(id)s failed, book path not valid: %(path)s"
msgstr "" msgstr ""
#: cps/helper.py:354 #: cps/helper.py:355
#, python-format #, python-format
msgid "Rename title from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgid "Rename title from: '%(src)s' to '%(dest)s' failed with error: %(error)s"
msgstr "A cím átnevezése \"%(src)s\"-ról \"%(dest)s\"-ra nem sikerült a következő hiba miatt: %(error)s" msgstr "A cím átnevezése \"%(src)s\"-ról \"%(dest)s\"-ra nem sikerült a következő hiba miatt: %(error)s"
#: cps/helper.py:364 #: cps/helper.py:365
#, python-format #, python-format
msgid "Rename author from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgid "Rename author from: '%(src)s' to '%(dest)s' failed with error: %(error)s"
msgstr "A szerző átnevezése \"%(src)s\"-ról \"%(dest)s\"-ra nem sikerült a következő hiba miatt: %(error)s" msgstr "A szerző átnevezése \"%(src)s\"-ról \"%(dest)s\"-ra nem sikerült a következő hiba miatt: %(error)s"
#: cps/helper.py:378 #: cps/helper.py:379
#, python-format #, python-format
msgid "Rename file in path '%(src)s' to '%(dest)s' failed with error: %(error)s" msgid "Rename file in path '%(src)s' to '%(dest)s' failed with error: %(error)s"
msgstr "\"%(src)s\" fájl átnevezése \"%(dest)s\"-re nem sikerült a következő hiba miatt: %(error)s" msgstr "\"%(src)s\" fájl átnevezése \"%(dest)s\"-re nem sikerült a következő hiba miatt: %(error)s"
#: cps/helper.py:404 cps/helper.py:414 cps/helper.py:422 #: cps/helper.py:405 cps/helper.py:415 cps/helper.py:423
#, python-format #, python-format
msgid "File %(file)s not found on Google Drive" msgid "File %(file)s not found on Google Drive"
msgstr "A \"%(file)s\" fájl nem található a Google Drive-on" msgstr "A \"%(file)s\" fájl nem található a Google Drive-on"
#: cps/helper.py:443 #: cps/helper.py:444
#, python-format #, python-format
msgid "Book path %(path)s not found on Google Drive" 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" msgstr "A könyv elérési útja (\"%(path)s\") nem található a Google Drive-on"
#: cps/helper.py:550 #: cps/helper.py:551
msgid "Failed to create path for cover" msgid "Failed to create path for cover"
msgstr "" msgstr ""
#: cps/helper.py:555 #: cps/helper.py:556
msgid "Cover-file is not a valid image file, or could not be stored" msgid "Cover-file is not a valid image file, or could not be stored"
msgstr "" msgstr ""
#: cps/helper.py:566 #: cps/helper.py:567
msgid "Only jpg/jpeg/png/webp files are supported as coverfile" msgid "Only jpg/jpeg/png/webp files are supported as coverfile"
msgstr "" msgstr ""
#: cps/helper.py:580 #: cps/helper.py:581
msgid "Only jpg/jpeg files are supported as coverfile" msgid "Only jpg/jpeg files are supported as coverfile"
msgstr "" msgstr ""
#: cps/helper.py:622 #: cps/helper.py:625
msgid "Unrar binary file not found" msgid "Unrar binary file not found"
msgstr "" msgstr ""
#: cps/helper.py:635 #: cps/helper.py:638
msgid "Error excecuting UnRar" msgid "Error excecuting UnRar"
msgstr "" msgstr ""
#: cps/helper.py:691 #: cps/helper.py:694
msgid "Waiting" msgid "Waiting"
msgstr "Várakozás" msgstr "Várakozás"
#: cps/helper.py:693 #: cps/helper.py:696
msgid "Failed" msgid "Failed"
msgstr "Nem sikerült" msgstr "Nem sikerült"
#: cps/helper.py:695 #: cps/helper.py:698
msgid "Started" msgid "Started"
msgstr "Elindítva" msgstr "Elindítva"
#: cps/helper.py:697 #: cps/helper.py:700
msgid "Finished" msgid "Finished"
msgstr "Végrehajtva" msgstr "Végrehajtva"
#: cps/helper.py:699 #: cps/helper.py:702
msgid "Unknown Status" msgid "Unknown Status"
msgstr "Ismeretlen állapot" msgstr "Ismeretlen állapot"
#: cps/helper.py:704 #: cps/helper.py:707
msgid "E-mail: " msgid "E-mail: "
msgstr "E-mail cím: " msgstr "E-mail cím: "
#: cps/helper.py:706 cps/helper.py:710 #: cps/helper.py:709 cps/helper.py:713
msgid "Convert: " msgid "Convert: "
msgstr "Konvertálás:" msgstr "Konvertálás:"
#: cps/helper.py:708 #: cps/helper.py:711
msgid "Upload: " msgid "Upload: "
msgstr "Feltöltés:" msgstr "Feltöltés:"
#: cps/helper.py:712 #: cps/helper.py:715
msgid "Unknown Task: " msgid "Unknown Task: "
msgstr "Ismeretlen feladat:" msgstr "Ismeretlen feladat:"
#: cps/kobo_auth.py:126 #: cps/kobo_auth.py:130
msgid "PLease access calibre-web from non localhost to get valid api_endpoint for kobo device" msgid "PLease access calibre-web from non localhost to get valid api_endpoint for kobo device"
msgstr "" msgstr ""
#: cps/kobo_auth.py:129 cps/kobo_auth.py:149 #: cps/kobo_auth.py:133 cps/kobo_auth.py:153
msgid "Kobo Setup" msgid "Kobo Setup"
msgstr "" msgstr ""
@ -573,7 +573,7 @@ msgstr ""
msgid "Failed to fetch user info from Google." msgid "Failed to fetch user info from Google."
msgstr "" msgstr ""
#: cps/oauth_bb.py:225 cps/web.py:1291 cps/web.py:1431 #: cps/oauth_bb.py:225 cps/web.py:1296 cps/web.py:1436
#, python-format #, python-format
msgid "you are now logged in as: '%(nickname)s'" msgid "you are now logged in as: '%(nickname)s'"
msgstr "Be vagy jelentkezve mint: %(nickname)s" msgstr "Be vagy jelentkezve mint: %(nickname)s"
@ -725,7 +725,7 @@ msgstr "Kelendő könyvek"
msgid "Show Hot Books" msgid "Show Hot Books"
msgstr "Kelendő könyvek mutatása" msgstr "Kelendő könyvek mutatása"
#: cps/templates/index.xml:24 cps/ub.py:70 cps/web.py:615 #: cps/templates/index.xml:24 cps/ub.py:70 cps/web.py:616
msgid "Top Rated Books" msgid "Top Rated Books"
msgstr "Legjobb könyvek" msgstr "Legjobb könyvek"
@ -734,7 +734,7 @@ msgid "Show Top Rated Books"
msgstr "Legjobbra értékelt könyvek mutatása" msgstr "Legjobbra értékelt könyvek mutatása"
#: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:73 #: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:73
#: cps/web.py:1125 #: cps/web.py:1131
msgid "Read Books" msgid "Read Books"
msgstr "Olvasott könyvek" msgstr "Olvasott könyvek"
@ -743,7 +743,7 @@ msgid "Show read and unread"
msgstr "Mutassa az olvasva/olvasatlan állapotot" msgstr "Mutassa az olvasva/olvasatlan állapotot"
#: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:77 #: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:77
#: cps/web.py:1129 #: cps/web.py:1134
msgid "Unread Books" msgid "Unread Books"
msgstr "Olvasatlan könyvek" msgstr "Olvasatlan könyvek"
@ -759,7 +759,7 @@ msgstr "Felfedezés"
msgid "Show random books" msgid "Show random books"
msgstr "Könyvek találomra mutatása" msgstr "Könyvek találomra mutatása"
#: cps/templates/index.xml:75 cps/ub.py:83 cps/web.py:897 #: cps/templates/index.xml:75 cps/ub.py:83 cps/web.py:898
msgid "Categories" msgid "Categories"
msgstr "Címkék" msgstr "Címkék"
@ -768,7 +768,7 @@ msgid "Show category selection"
msgstr "Címke választó mutatása" msgstr "Címke választó mutatása"
#: cps/templates/book_edit.html:84 cps/templates/index.xml:82 #: cps/templates/book_edit.html:84 cps/templates/index.xml:82
#: cps/templates/search_form.html:53 cps/ub.py:86 cps/web.py:825 #: cps/templates/search_form.html:53 cps/ub.py:86 cps/web.py:826
msgid "Series" msgid "Series"
msgstr "Sorozatok" msgstr "Sorozatok"
@ -784,7 +784,7 @@ msgstr "Szerzők"
msgid "Show author selection" msgid "Show author selection"
msgstr "Szerző választó mutatása" msgstr "Szerző választó mutatása"
#: cps/templates/index.xml:68 cps/ub.py:93 cps/web.py:809 #: cps/templates/index.xml:68 cps/ub.py:93 cps/web.py:810
msgid "Publishers" msgid "Publishers"
msgstr "Kiadók" msgstr "Kiadók"
@ -793,7 +793,7 @@ msgid "Show publisher selection"
msgstr "Kiadó választó mutatása" msgstr "Kiadó választó mutatása"
#: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:96 #: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:96
#: cps/web.py:880 #: cps/web.py:881
msgid "Languages" msgid "Languages"
msgstr "Nyelvek" msgstr "Nyelvek"
@ -817,7 +817,7 @@ msgstr ""
msgid "Show file formats selection" msgid "Show file formats selection"
msgstr "" msgstr ""
#: cps/ub.py:107 cps/web.py:1150 #: cps/ub.py:107 cps/web.py:1155
msgid "Archived Books" msgid "Archived Books"
msgstr "" msgstr ""
@ -854,223 +854,223 @@ 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." msgid "Click on the button below to update to the latest stable version."
msgstr "" msgstr ""
#: cps/web.py:306 #: cps/web.py:307
#, python-format #, python-format
msgid "Error: %(ldaperror)s" msgid "Error: %(ldaperror)s"
msgstr "" msgstr ""
#: cps/web.py:310 #: cps/web.py:311
msgid "Error: No user returned in response of LDAP server" msgid "Error: No user returned in response of LDAP server"
msgstr "" msgstr ""
#: cps/web.py:358 #: cps/web.py:359
msgid "Failed to Create at Least One LDAP User" msgid "Failed to Create at Least One LDAP User"
msgstr "" msgstr ""
#: cps/web.py:361 #: cps/web.py:362
msgid "At Least One LDAP User Not Found in Database" msgid "At Least One LDAP User Not Found in Database"
msgstr "" msgstr ""
#: cps/web.py:363 #: cps/web.py:364
msgid "User Successfully Imported" msgid "User Successfully Imported"
msgstr "" msgstr ""
#: cps/web.py:587 #: cps/web.py:588
msgid "Recently Added Books" msgid "Recently Added Books"
msgstr "Legutóbb hozzáadott könyvek" msgstr "Legutóbb hozzáadott könyvek"
#: cps/templates/index.html:5 cps/web.py:623 #: cps/templates/index.html:5 cps/web.py:624
msgid "Discover (Random Books)" msgid "Discover (Random Books)"
msgstr "Felfedezés (könyvek találomra)" msgstr "Felfedezés (könyvek találomra)"
#: cps/web.py:651 #: cps/web.py:652
msgid "Books" msgid "Books"
msgstr "" msgstr ""
#: cps/web.py:678 #: cps/web.py:679
msgid "Hot Books (Most Downloaded)" msgid "Hot Books (Most Downloaded)"
msgstr "Kelendő könyvek (legtöbbet letöltöttek)" msgstr "Kelendő könyvek (legtöbbet letöltöttek)"
#: cps/web.py:688 #: cps/web.py:689
msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible" 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:" msgstr "Hiba történt az e-könyv megnyitásakor. A fájl nem létezik vagy nem érhető el:"
#: cps/web.py:702 #: cps/web.py:703
#, python-format #, python-format
msgid "Author: %(name)s" msgid "Author: %(name)s"
msgstr "" msgstr ""
#: cps/web.py:714 #: cps/web.py:715
#, python-format #, python-format
msgid "Publisher: %(name)s" msgid "Publisher: %(name)s"
msgstr "Kiadó: %(name)s" msgstr "Kiadó: %(name)s"
#: cps/web.py:725 #: cps/web.py:726
#, python-format #, python-format
msgid "Series: %(serie)s" msgid "Series: %(serie)s"
msgstr "Sorozat: %(serie)s" msgstr "Sorozat: %(serie)s"
#: cps/web.py:736 #: cps/web.py:737
#, python-format #, python-format
msgid "Rating: %(rating)s stars" msgid "Rating: %(rating)s stars"
msgstr "" msgstr ""
#: cps/web.py:748 #: cps/web.py:749
#, python-format #, python-format
msgid "File format: %(format)s" msgid "File format: %(format)s"
msgstr "" msgstr ""
#: cps/web.py:760 #: cps/web.py:761
#, python-format #, python-format
msgid "Category: %(name)s" msgid "Category: %(name)s"
msgstr "Címke: %(name)s" msgstr "Címke: %(name)s"
#: cps/web.py:777 #: cps/web.py:778
#, python-format #, python-format
msgid "Language: %(name)s" msgid "Language: %(name)s"
msgstr "Nyelv: %(name)s" msgstr "Nyelv: %(name)s"
#: cps/web.py:839 #: cps/web.py:840
msgid "Ratings list" msgid "Ratings list"
msgstr "" msgstr ""
#: cps/web.py:852 #: cps/web.py:853
msgid "File formats list" msgid "File formats list"
msgstr "" msgstr ""
#: cps/templates/layout.html:73 cps/templates/tasks.html:7 cps/web.py:911 #: cps/templates/layout.html:73 cps/templates/tasks.html:7 cps/web.py:912
msgid "Tasks" msgid "Tasks"
msgstr "Feladatok" msgstr "Feladatok"
#: cps/templates/book_edit.html:235 cps/templates/feed.xml:33 #: cps/templates/book_edit.html:235 cps/templates/feed.xml:33
#: cps/templates/layout.html:44 cps/templates/layout.html:47 #: cps/templates/layout.html:44 cps/templates/layout.html:47
#: cps/templates/search_form.html:170 cps/web.py:937 cps/web.py:942 #: cps/templates/search_form.html:174 cps/web.py:938 cps/web.py:943
msgid "Search" msgid "Search"
msgstr "Keresés" msgstr "Keresés"
#: cps/web.py:993 #: cps/web.py:994
msgid "Published after " msgid "Published after "
msgstr "Kiadva ezután: " msgstr "Kiadva ezután: "
#: cps/web.py:1000 #: cps/web.py:1001
msgid "Published before " msgid "Published before "
msgstr "Kiadva ezelőtt: " msgstr "Kiadva ezelőtt: "
#: cps/web.py:1014 #: cps/web.py:1015
#, python-format #, python-format
msgid "Rating <= %(rating)s" msgid "Rating <= %(rating)s"
msgstr "Értékelés <= %(rating)s" msgstr "Értékelés <= %(rating)s"
#: cps/web.py:1016 #: cps/web.py:1017
#, python-format #, python-format
msgid "Rating >= %(rating)s" msgid "Rating >= %(rating)s"
msgstr "Értékelés <= %(rating)s" msgstr "Értékelés <= %(rating)s"
#: cps/web.py:1082 cps/web.py:1096 #: cps/web.py:1083 cps/web.py:1097
msgid "search" msgid "search"
msgstr "keresés" msgstr "keresés"
#: cps/web.py:1201 #: cps/web.py:1206
#, python-format #, python-format
msgid "Book successfully queued for sending to %(kindlemail)s" 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" msgstr "A könyv sikeresen küldésre lett jelölve a következő címre: %(kindlemail)s"
#: cps/web.py:1205 #: cps/web.py:1210
#, python-format #, python-format
msgid "Oops! There was an error sending this book: %(res)s" msgid "Oops! There was an error sending this book: %(res)s"
msgstr "Hiba történt a könyv küldésekor: %(res)s" msgstr "Hiba történt a könyv küldésekor: %(res)s"
#: cps/web.py:1207 #: cps/web.py:1212
msgid "Please update your profile with a valid Send to Kindle E-mail Address." 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..." msgstr "Először be kell állítani a kindle e-mail címet..."
#: cps/web.py:1224 #: cps/web.py:1229
msgid "E-Mail server is not configured, please contact your administrator!" msgid "E-Mail server is not configured, please contact your administrator!"
msgstr "" msgstr ""
#: cps/web.py:1225 cps/web.py:1231 cps/web.py:1256 cps/web.py:1260 #: cps/web.py:1230 cps/web.py:1236 cps/web.py:1261 cps/web.py:1265
#: cps/web.py:1265 cps/web.py:1269 #: cps/web.py:1270 cps/web.py:1274
msgid "register" msgid "register"
msgstr "regisztrálás" msgstr "regisztrálás"
#: cps/web.py:1258 #: cps/web.py:1263
msgid "Your e-mail is not allowed to register" msgid "Your e-mail is not allowed to register"
msgstr "Nem engedélyezett a megadott e-mail cím bejegyzése" msgstr "Nem engedélyezett a megadott e-mail cím bejegyzése"
#: cps/web.py:1261 #: cps/web.py:1266
msgid "Confirmation e-mail was send to your e-mail account." msgid "Confirmation e-mail was send to your e-mail account."
msgstr "Jóváhagyó levél elküldve az email címedre." msgstr "Jóváhagyó levél elküldve az email címedre."
#: cps/web.py:1264 #: cps/web.py:1269
msgid "This username or e-mail address is already in use." 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." msgstr "Ez a felhasználónév vagy e-mail cím már használatban van."
#: cps/web.py:1281 #: cps/web.py:1286
msgid "Cannot activate LDAP authentication" msgid "Cannot activate LDAP authentication"
msgstr "" msgstr ""
#: cps/web.py:1298 #: cps/web.py:1303
#, python-format #, python-format
msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known"
msgstr "" msgstr ""
#: cps/web.py:1304 #: cps/web.py:1309
#, python-format #, python-format
msgid "Could not login: %(message)s" msgid "Could not login: %(message)s"
msgstr "" msgstr ""
#: cps/web.py:1308 cps/web.py:1332 #: cps/web.py:1313 cps/web.py:1337
msgid "Wrong Username or Password" msgid "Wrong Username or Password"
msgstr "Rossz felhasználó név vagy jelszó!" msgstr "Rossz felhasználó név vagy jelszó!"
#: cps/web.py:1315 #: cps/web.py:1320
msgid "New Password was send to your email address" msgid "New Password was send to your email address"
msgstr "" msgstr ""
#: cps/web.py:1321 #: cps/web.py:1326
msgid "Please enter valid username to reset password" msgid "Please enter valid username to reset password"
msgstr "" msgstr ""
#: cps/web.py:1327 #: cps/web.py:1332
#, python-format #, python-format
msgid "You are now logged in as: '%(nickname)s'" msgid "You are now logged in as: '%(nickname)s'"
msgstr "" msgstr ""
#: cps/web.py:1336 cps/web.py:1363 #: cps/web.py:1341 cps/web.py:1368
msgid "login" msgid "login"
msgstr "belépés" msgstr "belépés"
#: cps/web.py:1375 cps/web.py:1409 #: cps/web.py:1380 cps/web.py:1414
msgid "Token not found" msgid "Token not found"
msgstr "A token nem található." msgstr "A token nem található."
#: cps/web.py:1384 cps/web.py:1417 #: cps/web.py:1389 cps/web.py:1422
msgid "Token has expired" msgid "Token has expired"
msgstr "A token érvényessége lejárt." msgstr "A token érvényessége lejárt."
#: cps/web.py:1393 #: cps/web.py:1398
msgid "Success! Please return to your device" msgid "Success! Please return to your device"
msgstr "Sikerült! Újra használható az eszköz." msgstr "Sikerült! Újra használható az eszköz."
#: cps/web.py:1474 cps/web.py:1519 cps/web.py:1525 #: cps/web.py:1479 cps/web.py:1524 cps/web.py:1530
#, python-format #, python-format
msgid "%(name)s's profile" msgid "%(name)s's profile"
msgstr "%(name)s profilja" msgstr "%(name)s profilja"
#: cps/web.py:1521 #: cps/web.py:1526
msgid "Profile updated" msgid "Profile updated"
msgstr "A profil frissítve." msgstr "A profil frissítve."
#: cps/web.py:1538 cps/web.py:1642 #: cps/web.py:1543 cps/web.py:1647
msgid "Error opening eBook. File does not exist or file is not accessible:" msgid "Error opening eBook. File does not exist or file is not accessible:"
msgstr "" msgstr ""
#: cps/web.py:1550 cps/web.py:1553 cps/web.py:1556 cps/web.py:1563 #: cps/web.py:1555 cps/web.py:1558 cps/web.py:1561 cps/web.py:1568
#: cps/web.py:1568 #: cps/web.py:1573
msgid "Read a Book" msgid "Read a Book"
msgstr "Egy olvasott könyv" msgstr "Egy olvasott könyv"
#: cps/web.py:1579 #: cps/web.py:1584
msgid "Error opening eBook. File does not exist or file is not accessible." msgid "Error opening eBook. File does not exist or file is not accessible."
msgstr "" msgstr ""
@ -1296,13 +1296,13 @@ msgid "In Library"
msgstr "Könyvtárban" msgstr "Könyvtárban"
#: cps/templates/author.html:34 cps/templates/list.html:14 #: cps/templates/author.html:34 cps/templates/list.html:14
#: cps/templates/search.html:41 #: cps/templates/search.html:38
msgid "All" msgid "All"
msgstr "" msgstr ""
#: cps/templates/author.html:58 cps/templates/author.html:110 #: cps/templates/author.html:58 cps/templates/author.html:110
#: cps/templates/discover.html:27 cps/templates/index.html:26 #: cps/templates/discover.html:27 cps/templates/index.html:26
#: cps/templates/index.html:89 cps/templates/search.html:67 #: cps/templates/index.html:89 cps/templates/search.html:64
#: cps/templates/shelf.html:36 #: cps/templates/shelf.html:36
msgid "reduce" msgid "reduce"
msgstr "csökkentsd" msgstr "csökkentsd"
@ -1931,6 +1931,12 @@ msgstr "Ismertető:"
msgid "Add to shelf" msgid "Add to shelf"
msgstr "Hozzáadás polchoz" msgstr "Hozzáadás polchoz"
#: cps/templates/detail.html:243 cps/templates/detail.html:260
#: cps/templates/feed.xml:79 cps/templates/layout.html:136
#: cps/templates/layout.html:140 cps/templates/search.html:20
msgid "(Public)"
msgstr ""
#: cps/templates/detail.html:274 #: cps/templates/detail.html:274
msgid "Edit Metadata" msgid "Edit Metadata"
msgstr "Metaadatok szerkesztése" msgstr "Metaadatok szerkesztése"
@ -1979,11 +1985,6 @@ msgstr "Valóban törölni akarod ezt a tartomány-szabályt?"
msgid "Next" msgid "Next"
msgstr "Következő" msgstr "Következő"
#: cps/templates/feed.xml:79 cps/templates/layout.html:136
#: cps/templates/layout.html:140
msgid "(Public)"
msgstr ""
#: cps/templates/generate_kobo_auth_url.html:5 #: cps/templates/generate_kobo_auth_url.html:5
msgid "Open the .kobo/Kobo eReader.conf file in a text editor and add (or edit):" msgid "Open the .kobo/Kobo eReader.conf file in a text editor and add (or edit):"
msgstr "" msgstr ""

View File

@ -6,7 +6,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Calibre-Web\n" "Project-Id-Version: Calibre-Web\n"
"Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n" "Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n"
"POT-Creation-Date: 2020-05-04 20:19+0200\n" "POT-Creation-Date: 2020-05-23 08:46+0200\n"
"PO-Revision-Date: 2017-04-04 15:09+0200\n" "PO-Revision-Date: 2017-04-04 15:09+0200\n"
"Last-Translator: ElQuimm <quimm@webtaste.com>\n" "Last-Translator: ElQuimm <quimm@webtaste.com>\n"
"Language: it\n" "Language: it\n"
@ -45,9 +45,9 @@ msgstr "Ricollegato con successo"
msgid "Unknown command" msgid "Unknown command"
msgstr "Comando sconosciuto" msgstr "Comando sconosciuto"
#: cps/admin.py:115 cps/editbooks.py:504 cps/editbooks.py:514 #: cps/admin.py:115 cps/editbooks.py:505 cps/editbooks.py:515
#: cps/editbooks.py:620 cps/editbooks.py:622 cps/editbooks.py:688 #: cps/editbooks.py:621 cps/editbooks.py:623 cps/editbooks.py:689
#: cps/updater.py:509 cps/uploader.py:99 cps/uploader.py:110 #: cps/updater.py:509 cps/uploader.py:100 cps/uploader.py:110
msgid "Unknown" msgid "Unknown"
msgstr "Sconosciuto" msgstr "Sconosciuto"
@ -59,223 +59,223 @@ msgstr "Pagina di amministrazione"
msgid "UI Configuration" msgid "UI Configuration"
msgstr "Configurazione dell'interfaccia utente" msgstr "Configurazione dell'interfaccia utente"
#: cps/admin.py:192 cps/admin.py:674 #: cps/admin.py:189 cps/admin.py:671
msgid "Calibre-Web configuration updated" msgid "Calibre-Web configuration updated"
msgstr "La configurazione di Calibre-Web è stata aggiornata" msgstr "La configurazione di Calibre-Web è stata aggiornata"
#: cps/admin.py:438 cps/admin.py:444 cps/admin.py:455 cps/admin.py:466 #: cps/admin.py:435 cps/admin.py:441 cps/admin.py:452 cps/admin.py:463
#: cps/templates/modal_restriction.html:29 #: cps/templates/modal_restriction.html:29
msgid "Deny" msgid "Deny"
msgstr "Nega" msgstr "Nega"
#: cps/admin.py:440 cps/admin.py:446 cps/admin.py:457 cps/admin.py:468 #: cps/admin.py:437 cps/admin.py:443 cps/admin.py:454 cps/admin.py:465
#: cps/templates/modal_restriction.html:28 #: cps/templates/modal_restriction.html:28
msgid "Allow" msgid "Allow"
msgstr "Permetti" msgstr "Permetti"
#: cps/admin.py:509 #: cps/admin.py:506
msgid "client_secrets.json Is Not Configured For Web Application" msgid "client_secrets.json Is Not Configured For Web Application"
msgstr "client_secrets.json non è configurato per Web Application" msgstr "client_secrets.json non è configurato per Web Application"
#: cps/admin.py:525 #: cps/admin.py:522
msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgid "Keyfile Location is not Valid, Please Enter Correct Path"
msgstr "La posizione del Keyfile non è valida, per favore indica il percorso corretto" msgstr "La posizione del Keyfile non è valida, per favore indica il percorso corretto"
#: cps/admin.py:529 #: cps/admin.py:526
msgid "Certfile Location is not Valid, Please Enter Correct Path" msgid "Certfile Location is not Valid, Please Enter Correct Path"
msgstr "La posizione del Certfile non è valida, per favore indica il percorso corretto" msgstr "La posizione del Certfile non è valida, per favore indica il percorso corretto"
#: cps/admin.py:567 #: cps/admin.py:564
msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier"
msgstr "Per favore digita un Provider LDAP, porta, DN e User Object Identifier" msgstr "Per favore digita un Provider LDAP, porta, DN e User Object Identifier"
#: cps/admin.py:585 #: cps/admin.py:582
#, python-format #, python-format
msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier"
msgstr "LDAP Group Object Filter deve avere un \"%s\" Format Identifier" msgstr "LDAP Group Object Filter deve avere un \"%s\" Format Identifier"
#: cps/admin.py:588 #: cps/admin.py:585
msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgid "LDAP Group Object Filter Has Unmatched Parenthesis"
msgstr "LDAP Group Object Filter contiene una parentesi senza la corrispettiva" msgstr "LDAP Group Object Filter contiene una parentesi senza la corrispettiva"
#: cps/admin.py:592 #: cps/admin.py:589
#, python-format #, python-format
msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier"
msgstr "LDAP User Object Filter deve avere un \"%s\" Format Identifier" msgstr "LDAP User Object Filter deve avere un \"%s\" Format Identifier"
#: cps/admin.py:595 #: cps/admin.py:592
msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgid "LDAP User Object Filter Has Unmatched Parenthesis"
msgstr "LDAP User Object Filter contiene una parentesi senza la corrispettiva" msgstr "LDAP User Object Filter contiene una parentesi senza la corrispettiva"
#: cps/admin.py:599 #: cps/admin.py:596
msgid "LDAP Certificate Location is not Valid, Please Enter Correct Path" 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" msgstr "La posizione del certificato LDAP non è valida, per favore indica il percorso corretto"
#: cps/admin.py:647 #: cps/admin.py:644
msgid "Logfile Location is not Valid, Please Enter Correct Path" msgid "Logfile Location is not Valid, Please Enter Correct Path"
msgstr "La posizione del Logfile non è valida, per favore indica il percorso corretto" msgstr "La posizione del Logfile non è valida, per favore indica il percorso corretto"
#: cps/admin.py:652 #: cps/admin.py:649
msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgid "Access Logfile Location is not Valid, Please Enter Correct Path"
msgstr "La posizione dell'Access Logfile non è valida, per favore indica il percorso corretto" msgstr "La posizione dell'Access Logfile non è valida, per favore indica il percorso corretto"
#: cps/admin.py:671 #: cps/admin.py:668
msgid "DB Location is not Valid, Please Enter Correct Path" msgid "DB Location is not Valid, Please Enter Correct Path"
msgstr "La posizione del DB non è valida, per favore indica il percorso corretto" msgstr "La posizione del DB non è valida, per favore indica il percorso corretto"
#: cps/admin.py:704 #: cps/admin.py:701
msgid "Basic Configuration" msgid "Basic Configuration"
msgstr "Configurazione di base" msgstr "Configurazione di base"
#: cps/admin.py:728 cps/web.py:1230 #: cps/admin.py:725 cps/web.py:1235
msgid "Please fill out all fields!" msgid "Please fill out all fields!"
msgstr "Per favore compila tutti i campi!" msgstr "Per favore compila tutti i campi!"
#: cps/admin.py:731 cps/admin.py:743 cps/admin.py:749 cps/admin.py:767 #: cps/admin.py:728 cps/admin.py:740 cps/admin.py:746 cps/admin.py:764
msgid "Add new user" msgid "Add new user"
msgstr "Aggiungi un nuovo utente" msgstr "Aggiungi un nuovo utente"
#: cps/admin.py:740 cps/web.py:1472 #: cps/admin.py:737 cps/web.py:1477
msgid "E-mail is not from valid domain" msgid "E-mail is not from valid domain"
msgstr "L'e-mail non proviene da un dominio valido" msgstr "L'e-mail non proviene da un dominio valido"
#: cps/admin.py:747 cps/admin.py:762 #: cps/admin.py:744 cps/admin.py:759
msgid "Found an existing account for this e-mail address or nickname." 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" msgstr "Trovato un account esistente con questo e-mail o nome di utente"
#: cps/admin.py:758 #: cps/admin.py:755
#, python-format #, python-format
msgid "User '%(user)s' created" msgid "User '%(user)s' created"
msgstr "Creato l'utente '%(user)s'" msgstr "Creato l'utente '%(user)s'"
#: cps/admin.py:777 #: cps/admin.py:774
msgid "Edit e-mail server settings" msgid "Edit e-mail server settings"
msgstr "Modifica la configurazione del server e-mail" msgstr "Modifica la configurazione del server e-mail"
#: cps/admin.py:803 #: cps/admin.py:800
#, python-format #, python-format
msgid "Test e-mail successfully send to %(kindlemail)s" msgid "Test e-mail successfully send to %(kindlemail)s"
msgstr "E-mail di test inviato con successo a %(kindlemail)s" msgstr "E-mail di test inviato con successo a %(kindlemail)s"
#: cps/admin.py:806 #: cps/admin.py:803
#, python-format #, python-format
msgid "There was an error sending the Test e-mail: %(res)s" msgid "There was an error sending the Test e-mail: %(res)s"
msgstr "Si è verificato un errore nell'invio dell'e-mail di test: %(res)s" msgstr "Si è verificato un errore nell'invio dell'e-mail di test: %(res)s"
#: cps/admin.py:808 #: cps/admin.py:805
msgid "Please configure your e-mail address first..." msgid "Please configure your e-mail address first..."
msgstr "Per favore prima configura il tuo indirizzo e-mail..." msgstr "Per favore prima configura il tuo indirizzo e-mail..."
#: cps/admin.py:810 #: cps/admin.py:807
msgid "E-mail server settings updated" msgid "E-mail server settings updated"
msgstr "Configurazione del server e-mail aggiornata" msgstr "Configurazione del server e-mail aggiornata"
#: cps/admin.py:821 #: cps/admin.py:818
msgid "User not found" msgid "User not found"
msgstr "Utente non trovato" msgstr "Utente non trovato"
#: cps/admin.py:842 #: cps/admin.py:839
#, python-format #, python-format
msgid "User '%(nick)s' deleted" msgid "User '%(nick)s' deleted"
msgstr "Utente '%(nick)s' eliminato" msgstr "Utente '%(nick)s' eliminato"
#: cps/admin.py:845 #: cps/admin.py:842
msgid "No admin user remaining, can't delete user" msgid "No admin user remaining, can't delete user"
msgstr "Non rimarrebbe nessun utente amministratore, non posso eliminare l'utente" msgstr "Non rimarrebbe nessun utente amministratore, non posso eliminare l'utente"
#: cps/admin.py:851 #: cps/admin.py:848
msgid "No admin user remaining, can't remove admin role" msgid "No admin user remaining, can't remove admin role"
msgstr "Non rimarrebbe nessun utente amministratore, non posso eliminare il ruolo di amministratore" msgstr "Non rimarrebbe nessun utente amministratore, non posso eliminare il ruolo di amministratore"
#: cps/admin.py:887 cps/web.py:1515 #: cps/admin.py:884 cps/web.py:1520
msgid "Found an existing account for this e-mail address." msgid "Found an existing account for this e-mail address."
msgstr "Ho trovato un account creato in precedenza con questo e-mail." msgstr "Ho trovato un account creato in precedenza con questo e-mail."
#: cps/admin.py:897 cps/admin.py:912 cps/admin.py:932 cps/web.py:1490 #: cps/admin.py:894 cps/admin.py:909 cps/admin.py:929 cps/web.py:1495
#, python-format #, python-format
msgid "Edit User %(nick)s" msgid "Edit User %(nick)s"
msgstr "Modifica utente %(nick)s" msgstr "Modifica utente %(nick)s"
#: cps/admin.py:903 cps/web.py:1482 #: cps/admin.py:900 cps/web.py:1487
msgid "This username is already taken" msgid "This username is already taken"
msgstr "Questo nome di utente è già utilizzato" msgstr "Questo nome di utente è già utilizzato"
#: cps/admin.py:919 #: cps/admin.py:916
#, python-format #, python-format
msgid "User '%(nick)s' updated" msgid "User '%(nick)s' updated"
msgstr "Utente '%(nick)s' aggiornato" msgstr "Utente '%(nick)s' aggiornato"
#: cps/admin.py:922 #: cps/admin.py:919
msgid "An unknown error occured." msgid "An unknown error occured."
msgstr "Si è verificato un errore imprevisto." msgstr "Si è verificato un errore imprevisto."
#: cps/admin.py:943 #: cps/admin.py:940
#, python-format #, python-format
msgid "Password for user %(user)s reset" msgid "Password for user %(user)s reset"
msgstr "La password dell'utente %(user)s è stata resettata" msgstr "La password dell'utente %(user)s è stata resettata"
#: cps/admin.py:946 cps/web.py:1255 cps/web.py:1319 #: cps/admin.py:943 cps/web.py:1260 cps/web.py:1324
msgid "An unknown error occurred. Please try again later." msgid "An unknown error occurred. Please try again later."
msgstr "Si è verificato un errore sconosciuto: per favore riprova." msgstr "Si è verificato un errore sconosciuto: per favore riprova."
#: cps/admin.py:949 cps/web.py:1196 #: cps/admin.py:946 cps/web.py:1201
msgid "Please configure the SMTP mail settings first..." msgid "Please configure the SMTP mail settings first..."
msgstr "Configura dapprima le impostazioni del server SMTP..." msgstr "Configura dapprima le impostazioni del server SMTP..."
#: cps/admin.py:961 #: cps/admin.py:958
msgid "Logfile viewer" msgid "Logfile viewer"
msgstr "Visualizzatore del Logfile" msgstr "Visualizzatore del Logfile"
#: cps/admin.py:1000 #: cps/admin.py:997
msgid "Requesting update package" msgid "Requesting update package"
msgstr "Richiedo il pacchetto di aggiornamento" msgstr "Richiedo il pacchetto di aggiornamento"
#: cps/admin.py:1001 #: cps/admin.py:998
msgid "Downloading update package" msgid "Downloading update package"
msgstr "Scarico il pacchetto di aggiornamento" msgstr "Scarico il pacchetto di aggiornamento"
#: cps/admin.py:1002 #: cps/admin.py:999
msgid "Unzipping update package" msgid "Unzipping update package"
msgstr "Decomprimo il pacchetto di aggiornamento" msgstr "Decomprimo il pacchetto di aggiornamento"
#: cps/admin.py:1003 #: cps/admin.py:1000
msgid "Replacing files" msgid "Replacing files"
msgstr "Sostituisco i file" msgstr "Sostituisco i file"
#: cps/admin.py:1004 #: cps/admin.py:1001
msgid "Database connections are closed" msgid "Database connections are closed"
msgstr "Le connessioni al database sono chiuse" msgstr "Le connessioni al database sono chiuse"
#: cps/admin.py:1005 #: cps/admin.py:1002
msgid "Stopping server" msgid "Stopping server"
msgstr "Arresto il server" msgstr "Arresto il server"
#: cps/admin.py:1006 #: cps/admin.py:1003
msgid "Update finished, please press okay and reload page" msgid "Update finished, please press okay and reload page"
msgstr "Aggiornamento completato, per favore premi ok e ricarica la pagina" msgstr "Aggiornamento completato, per favore premi ok e ricarica la pagina"
#: cps/admin.py:1007 cps/admin.py:1008 cps/admin.py:1009 cps/admin.py:1010 #: cps/admin.py:1004 cps/admin.py:1005 cps/admin.py:1006 cps/admin.py:1007
#: cps/admin.py:1011 #: cps/admin.py:1008
msgid "Update failed:" msgid "Update failed:"
msgstr "Aggiornamento fallito:" msgstr "Aggiornamento fallito:"
#: cps/admin.py:1007 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522 #: cps/admin.py:1004 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522
msgid "HTTP Error" msgid "HTTP Error"
msgstr "Errore HTTP" msgstr "Errore HTTP"
#: cps/admin.py:1008 cps/updater.py:321 cps/updater.py:524 #: cps/admin.py:1005 cps/updater.py:321 cps/updater.py:524
msgid "Connection error" msgid "Connection error"
msgstr "Errore di connessione" msgstr "Errore di connessione"
#: cps/admin.py:1009 cps/updater.py:323 cps/updater.py:526 #: cps/admin.py:1006 cps/updater.py:323 cps/updater.py:526
msgid "Timeout while establishing connection" msgid "Timeout while establishing connection"
msgstr "Tempo scaduto nello stabilire la connessione" msgstr "Tempo scaduto nello stabilire la connessione"
#: cps/admin.py:1010 cps/updater.py:325 cps/updater.py:528 #: cps/admin.py:1007 cps/updater.py:325 cps/updater.py:528
msgid "General error" msgid "General error"
msgstr "Errore generale" msgstr "Errore generale"
#: cps/admin.py:1011 #: cps/admin.py:1008
msgid "Update File Could Not be Saved in Temp Dir" msgid "Update File Could Not be Saved in Temp Dir"
msgstr "Il file di aggiornamento non può essere salvato nella cartella temporanea" msgstr "Il file di aggiornamento non può essere salvato nella cartella temporanea"
@ -291,7 +291,7 @@ msgstr "Il formato del libro è stato eliminato con successo"
msgid "Book Successfully Deleted" msgid "Book Successfully Deleted"
msgstr "Il libro é stato eliminato con successo" msgstr "Il libro é stato eliminato con successo"
#: cps/editbooks.py:253 cps/editbooks.py:489 #: cps/editbooks.py:253 cps/editbooks.py:490
msgid "Error opening eBook. File does not exist or file is not accessible" msgid "Error opening eBook. File does not exist or file is not accessible"
msgstr "Errore durante l'apertura del libro. Il file non esiste o il file non è accessibile" msgstr "Errore durante l'apertura del libro. Il file non esiste o il file non è accessibile"
@ -304,16 +304,16 @@ msgstr "Modifica i metadati"
msgid "%(langname)s is not a valid language" msgid "%(langname)s is not a valid language"
msgstr "%(langname)s non è una lingua valida" msgstr "%(langname)s non è una lingua valida"
#: cps/editbooks.py:413 cps/editbooks.py:663 #: cps/editbooks.py:413 cps/editbooks.py:664
#, python-format #, python-format
msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" 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" msgstr "Non è consentito caricare file con l'estensione '%(ext)s' su questo server"
#: cps/editbooks.py:417 cps/editbooks.py:667 #: cps/editbooks.py:417 cps/editbooks.py:668
msgid "File to be uploaded must have an extension" msgid "File to be uploaded must have an extension"
msgstr "Il file da caricare deve avere un'estensione" msgstr "Il file da caricare deve avere un'estensione"
#: cps/editbooks.py:429 cps/editbooks.py:701 #: cps/editbooks.py:429 cps/editbooks.py:702
#, python-format #, python-format
msgid "Failed to create path %(path)s (Permission denied)." msgid "Failed to create path %(path)s (Permission denied)."
msgstr "Impossibile creare la cartella %(path)s (autorizzazione negata)." msgstr "Impossibile creare la cartella %(path)s (autorizzazione negata)."
@ -328,48 +328,48 @@ msgstr "Il salvataggio del file %(file)s non è riuscito."
msgid "File format %(ext)s added to %(book)s" msgid "File format %(ext)s added to %(book)s"
msgstr "Ho aggiunto il formato %(ext)s al libro %(book)s" msgstr "Ho aggiunto il formato %(ext)s al libro %(book)s"
#: cps/editbooks.py:606 #: cps/editbooks.py:607
msgid "Metadata successfully updated" msgid "Metadata successfully updated"
msgstr "I metadati sono stati aggiornati con successo" msgstr "I metadati sono stati aggiornati con successo"
#: cps/editbooks.py:615 #: cps/editbooks.py:616
msgid "Error editing book, please check logfile for details" 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)" msgstr "Errore nella modifica del libro. Per favore verifica i dettagli nel file di registro (logfile)"
#: cps/editbooks.py:675 #: cps/editbooks.py:676
#, python-format #, python-format
msgid "File %(filename)s could not saved to temp dir" msgid "File %(filename)s could not saved to temp dir"
msgstr "Il file %(filename)s non può essere salvato nella cartella temporanea" msgstr "Il file %(filename)s non può essere salvato nella cartella temporanea"
#: cps/editbooks.py:692 #: cps/editbooks.py:693
msgid "Uploaded book probably exists in the library, consider to change before upload new: " 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: " msgstr "Probabilmnete il libro caricato esiste già nella libreria; considera di cambiare prima di sottoporlo nuovamente: "
#: cps/editbooks.py:707 #: cps/editbooks.py:709
#, python-format #, python-format
msgid "Failed to store file %(file)s (Permission denied)." msgid "Failed to Move File %(file)s: %(error)s"
msgstr "Impossibile salvare il file %(file)s (autorizzazione negata)." msgstr ""
#: cps/editbooks.py:713 #: cps/editbooks.py:723
#, python-format #, python-format
msgid "Failed to delete file %(file)s (Permission denied)." msgid "Failed to Move Cover File %(file)s: %(error)s"
msgstr "Impossibile eliminare il file %(file)s (autorizzazione negata)." msgstr ""
#: cps/editbooks.py:804 #: cps/editbooks.py:808
#, python-format #, python-format
msgid "File %(file)s uploaded" msgid "File %(file)s uploaded"
msgstr "Il file %(file)s è stato caricato" msgstr "Il file %(file)s è stato caricato"
#: cps/editbooks.py:833 #: cps/editbooks.py:837
msgid "Source or destination format for conversion missing" msgid "Source or destination format for conversion missing"
msgstr "Mancano o il formato sorgente o quello di destinazione, necessari alla conversione" msgstr "Mancano o il formato sorgente o quello di destinazione, necessari alla conversione"
#: cps/editbooks.py:841 #: cps/editbooks.py:845
#, python-format #, python-format
msgid "Book successfully queued for converting to %(book_format)s" msgid "Book successfully queued for converting to %(book_format)s"
msgstr "Libro accodato con successo per essere convertito in %(book_format)s" msgstr "Libro accodato con successo per essere convertito in %(book_format)s"
#: cps/editbooks.py:845 #: cps/editbooks.py:849
#, python-format #, python-format
msgid "There was an error converting this book: %(res)s" msgid "There was an error converting this book: %(res)s"
msgstr "Si è verificato un errore durante la conversione del libro: %(res)s" msgstr "Si è verificato un errore durante la conversione del libro: %(res)s"
@ -443,111 +443,111 @@ msgstr "E-mail: %(book)s"
msgid "The requested file could not be read. Maybe wrong permissions?" msgid "The requested file could not be read. Maybe wrong permissions?"
msgstr "Il file richiesto non può essere letto. I permessi sono corretti?" msgstr "Il file richiesto non può essere letto. I permessi sono corretti?"
#: cps/helper.py:299 #: cps/helper.py:300
#, python-format #, python-format
msgid "Deleting book %(id)s failed, path has subfolders: %(path)s" msgid "Deleting book %(id)s failed, path has subfolders: %(path)s"
msgstr "L'eliminazione del libro %(id)s non è riuscita, poiché il percorso ha delle sottocartelle: %(path)s" msgstr "L'eliminazione del libro %(id)s non è riuscita, poiché il percorso ha delle sottocartelle: %(path)s"
#: cps/helper.py:309 #: cps/helper.py:310
#, python-format #, python-format
msgid "Deleting book %(id)s failed: %(message)s" msgid "Deleting book %(id)s failed: %(message)s"
msgstr "L'eliminazione del libro %(id)s non è riuscita: %(message)s" msgstr "L'eliminazione del libro %(id)s non è riuscita: %(message)s"
#: cps/helper.py:319 #: cps/helper.py:320
#, python-format #, python-format
msgid "Deleting book %(id)s failed, book path not valid: %(path)s" msgid "Deleting book %(id)s failed, book path not valid: %(path)s"
msgstr "L'eliminazione del libro %(id)s non è riuscita, poiché il percorso non è valido: %(path)s" msgstr "L'eliminazione del libro %(id)s non è riuscita, poiché il percorso non è valido: %(path)s"
#: cps/helper.py:354 #: cps/helper.py:355
#, python-format #, python-format
msgid "Rename title from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgid "Rename title from: '%(src)s' to '%(dest)s' failed with error: %(error)s"
msgstr "La modifica del titolo da '%(src)s' a '%(dest)s' è terminata con l'errore: %(error)s" msgstr "La modifica del titolo da '%(src)s' a '%(dest)s' è terminata con l'errore: %(error)s"
#: cps/helper.py:364 #: cps/helper.py:365
#, python-format #, python-format
msgid "Rename author from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgid "Rename author from: '%(src)s' to '%(dest)s' failed with error: %(error)s"
msgstr "La modifica dell'autore da '%(src)s' a '%(dest)s' è terminata con l'errore: %(error)s" msgstr "La modifica dell'autore da '%(src)s' a '%(dest)s' è terminata con l'errore: %(error)s"
#: cps/helper.py:378 #: cps/helper.py:379
#, python-format #, python-format
msgid "Rename file in path '%(src)s' to '%(dest)s' failed with error: %(error)s" msgid "Rename file in path '%(src)s' to '%(dest)s' failed with error: %(error)s"
msgstr "La modifica del file nella cartella da '%(src)s' a '%(dest)s' è terminata con l'errore: %(error)s" msgstr "La modifica del file nella cartella da '%(src)s' a '%(dest)s' è terminata con l'errore: %(error)s"
#: cps/helper.py:404 cps/helper.py:414 cps/helper.py:422 #: cps/helper.py:405 cps/helper.py:415 cps/helper.py:423
#, python-format #, python-format
msgid "File %(file)s not found on Google Drive" msgid "File %(file)s not found on Google Drive"
msgstr "File %(file)s non trovato su Google Drive" msgstr "File %(file)s non trovato su Google Drive"
#: cps/helper.py:443 #: cps/helper.py:444
#, python-format #, python-format
msgid "Book path %(path)s not found on 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" msgstr "Non ho trovato la cartella %(path)s del libro su Google Drive"
#: cps/helper.py:550 #: cps/helper.py:551
msgid "Failed to create path for cover" msgid "Failed to create path for cover"
msgstr "Errore nel creare la cartella per la copertina" msgstr "Errore nel creare la cartella per la copertina"
#: cps/helper.py:555 #: cps/helper.py:556
msgid "Cover-file is not a valid image file, or could not be stored" 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" msgstr "Il file della copertina non è in un formato immagine valido o non può essere salvato"
#: cps/helper.py:566 #: cps/helper.py:567
msgid "Only jpg/jpeg/png/webp files are supported as coverfile" 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" msgstr "Solamente i file nei formati jpg/jpeg/png/webp sono supportati per le copertine"
#: cps/helper.py:580 #: cps/helper.py:581
msgid "Only jpg/jpeg files are supported as coverfile" msgid "Only jpg/jpeg files are supported as coverfile"
msgstr "Solamente i file nei formati jpg/jpeg sono supportati per le copertine" msgstr "Solamente i file nei formati jpg/jpeg sono supportati per le copertine"
#: cps/helper.py:622 #: cps/helper.py:625
msgid "Unrar binary file not found" msgid "Unrar binary file not found"
msgstr "Non ho trovato il file binario di UnRar" msgstr "Non ho trovato il file binario di UnRar"
#: cps/helper.py:635 #: cps/helper.py:638
msgid "Error excecuting UnRar" msgid "Error excecuting UnRar"
msgstr "Errore nell'eseguire UnRar" msgstr "Errore nell'eseguire UnRar"
#: cps/helper.py:691 #: cps/helper.py:694
msgid "Waiting" msgid "Waiting"
msgstr "Attendi" msgstr "Attendi"
#: cps/helper.py:693 #: cps/helper.py:696
msgid "Failed" msgid "Failed"
msgstr "Non riuscito" msgstr "Non riuscito"
#: cps/helper.py:695 #: cps/helper.py:698
msgid "Started" msgid "Started"
msgstr "Avviato" msgstr "Avviato"
#: cps/helper.py:697 #: cps/helper.py:700
msgid "Finished" msgid "Finished"
msgstr "Terminato" msgstr "Terminato"
#: cps/helper.py:699 #: cps/helper.py:702
msgid "Unknown Status" msgid "Unknown Status"
msgstr "Stato sconosciuto" msgstr "Stato sconosciuto"
#: cps/helper.py:704 #: cps/helper.py:707
msgid "E-mail: " msgid "E-mail: "
msgstr "E-mail: " msgstr "E-mail: "
#: cps/helper.py:706 cps/helper.py:710 #: cps/helper.py:709 cps/helper.py:713
msgid "Convert: " msgid "Convert: "
msgstr "Conversione: " msgstr "Conversione: "
#: cps/helper.py:708 #: cps/helper.py:711
msgid "Upload: " msgid "Upload: "
msgstr "Upload: " msgstr "Upload: "
#: cps/helper.py:712 #: cps/helper.py:715
msgid "Unknown Task: " msgid "Unknown Task: "
msgstr "Processo sconosciuto: " msgstr "Processo sconosciuto: "
#: cps/kobo_auth.py:126 #: cps/kobo_auth.py:130
msgid "PLease access calibre-web from non localhost to get valid api_endpoint for kobo device" msgid "PLease access calibre-web from non localhost to get valid api_endpoint for kobo device"
msgstr "Per favore, per ottenere un valido api-endpoint per Kobo, accedi a Calibre-web non da localhost" msgstr "Per favore, per ottenere un valido api-endpoint per Kobo, accedi a Calibre-web non da localhost"
#: cps/kobo_auth.py:129 cps/kobo_auth.py:149 #: cps/kobo_auth.py:133 cps/kobo_auth.py:153
msgid "Kobo Setup" msgid "Kobo Setup"
msgstr "Configurazione di Kobo" msgstr "Configurazione di Kobo"
@ -572,7 +572,7 @@ msgstr "L'accesso con Google non è riuscito."
msgid "Failed to fetch user info from Google." msgid "Failed to fetch user info from Google."
msgstr "Il recupero delle informazioni dell'utente da Google non è riuscito." msgstr "Il recupero delle informazioni dell'utente da Google non è riuscito."
#: cps/oauth_bb.py:225 cps/web.py:1291 cps/web.py:1431 #: cps/oauth_bb.py:225 cps/web.py:1296 cps/web.py:1436
#, python-format #, python-format
msgid "you are now logged in as: '%(nickname)s'" msgid "you are now logged in as: '%(nickname)s'"
msgstr "ora sei connesso come: '%(nickname)s'" msgstr "ora sei connesso come: '%(nickname)s'"
@ -724,7 +724,7 @@ msgstr "Libri popolari"
msgid "Show Hot Books" msgid "Show Hot Books"
msgstr "Mostra l'opzione per la selezione dei libri più popolari" msgstr "Mostra l'opzione per la selezione dei libri più popolari"
#: cps/templates/index.xml:24 cps/ub.py:70 cps/web.py:615 #: cps/templates/index.xml:24 cps/ub.py:70 cps/web.py:616
msgid "Top Rated Books" msgid "Top Rated Books"
msgstr "Libri meglio valutati" msgstr "Libri meglio valutati"
@ -733,7 +733,7 @@ msgid "Show Top Rated Books"
msgstr "Mostra l'opzione per la selezione dei libri meglio valutati" msgstr "Mostra l'opzione per la selezione dei libri meglio valutati"
#: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:73 #: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:73
#: cps/web.py:1125 #: cps/web.py:1131
msgid "Read Books" msgid "Read Books"
msgstr "Libri da leggere" msgstr "Libri da leggere"
@ -742,7 +742,7 @@ msgid "Show read and unread"
msgstr "Mostra l'opzione per la selezione letto e non letto" msgstr "Mostra l'opzione per la selezione letto e non letto"
#: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:77 #: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:77
#: cps/web.py:1129 #: cps/web.py:1134
msgid "Unread Books" msgid "Unread Books"
msgstr "Libri non letti" msgstr "Libri non letti"
@ -758,7 +758,7 @@ msgstr "Per scoprire"
msgid "Show random books" msgid "Show random books"
msgstr "Mostra l'opzione per presentare libri aleatoriamente" msgstr "Mostra l'opzione per presentare libri aleatoriamente"
#: cps/templates/index.xml:75 cps/ub.py:83 cps/web.py:897 #: cps/templates/index.xml:75 cps/ub.py:83 cps/web.py:898
msgid "Categories" msgid "Categories"
msgstr "Categorie" msgstr "Categorie"
@ -767,7 +767,7 @@ msgid "Show category selection"
msgstr "Mostra l'opzione per la selezione delle categorie" msgstr "Mostra l'opzione per la selezione delle categorie"
#: cps/templates/book_edit.html:84 cps/templates/index.xml:82 #: cps/templates/book_edit.html:84 cps/templates/index.xml:82
#: cps/templates/search_form.html:53 cps/ub.py:86 cps/web.py:825 #: cps/templates/search_form.html:53 cps/ub.py:86 cps/web.py:826
msgid "Series" msgid "Series"
msgstr "Serie" msgstr "Serie"
@ -783,7 +783,7 @@ msgstr "Autori"
msgid "Show author selection" msgid "Show author selection"
msgstr "Mostra l'opzione per la selezione degli autori" msgstr "Mostra l'opzione per la selezione degli autori"
#: cps/templates/index.xml:68 cps/ub.py:93 cps/web.py:809 #: cps/templates/index.xml:68 cps/ub.py:93 cps/web.py:810
msgid "Publishers" msgid "Publishers"
msgstr "Editori" msgstr "Editori"
@ -792,7 +792,7 @@ msgid "Show publisher selection"
msgstr "Mostra l'opzione per la selezione degli editori" msgstr "Mostra l'opzione per la selezione degli editori"
#: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:96 #: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:96
#: cps/web.py:880 #: cps/web.py:881
msgid "Languages" msgid "Languages"
msgstr "Lingue" msgstr "Lingue"
@ -816,7 +816,7 @@ msgstr "Formati file"
msgid "Show file formats selection" msgid "Show file formats selection"
msgstr "Mostra la selezione del formato dei file" msgstr "Mostra la selezione del formato dei file"
#: cps/ub.py:107 cps/web.py:1150 #: cps/ub.py:107 cps/web.py:1155
msgid "Archived Books" msgid "Archived Books"
msgstr "Libri archiviati" msgstr "Libri archiviati"
@ -853,223 +853,223 @@ msgstr "Nuovo aggiornamento disponibile. Clicca sul pulsante sottostante per agg
msgid "Click on the button below to update to the latest stable version." msgid "Click on the button below to update to the latest stable version."
msgstr "Clicca sul pulsante per aggiornare all'ultima versione stabile." msgstr "Clicca sul pulsante per aggiornare all'ultima versione stabile."
#: cps/web.py:306 #: cps/web.py:307
#, python-format #, python-format
msgid "Error: %(ldaperror)s" msgid "Error: %(ldaperror)s"
msgstr "Errore: %(ldaperror)s" msgstr "Errore: %(ldaperror)s"
#: cps/web.py:310 #: cps/web.py:311
msgid "Error: No user returned in response of LDAP server" msgid "Error: No user returned in response of LDAP server"
msgstr "Errore: nessun utente restituito in risposta dal server LDAP" msgstr "Errore: nessun utente restituito in risposta dal server LDAP"
#: cps/web.py:358 #: cps/web.py:359
msgid "Failed to Create at Least One LDAP User" msgid "Failed to Create at Least One LDAP User"
msgstr "Fallita la creazione di almeno un utente LDAP" msgstr "Fallita la creazione di almeno un utente LDAP"
#: cps/web.py:361 #: cps/web.py:362
msgid "At Least One LDAP User Not Found in Database" msgid "At Least One LDAP User Not Found in Database"
msgstr "Almeno un utente LDAP non è stato trovato nel database" msgstr "Almeno un utente LDAP non è stato trovato nel database"
#: cps/web.py:363 #: cps/web.py:364
msgid "User Successfully Imported" msgid "User Successfully Imported"
msgstr "Utente importato con successo" msgstr "Utente importato con successo"
#: cps/web.py:587 #: cps/web.py:588
msgid "Recently Added Books" msgid "Recently Added Books"
msgstr "Libri aggiunti di recente" msgstr "Libri aggiunti di recente"
#: cps/templates/index.html:5 cps/web.py:623 #: cps/templates/index.html:5 cps/web.py:624
msgid "Discover (Random Books)" msgid "Discover (Random Books)"
msgstr "Scopri (libri casuali)" msgstr "Scopri (libri casuali)"
#: cps/web.py:651 #: cps/web.py:652
msgid "Books" msgid "Books"
msgstr "Libri" msgstr "Libri"
#: cps/web.py:678 #: cps/web.py:679
msgid "Hot Books (Most Downloaded)" msgid "Hot Books (Most Downloaded)"
msgstr "I libri più richiesti" msgstr "I libri più richiesti"
#: cps/web.py:688 #: cps/web.py:689
msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible" 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" msgstr "Errore durante l'apertura del libro selezionato. Il file non esiste o il file non è accessibile"
#: cps/web.py:702 #: cps/web.py:703
#, python-format #, python-format
msgid "Author: %(name)s" msgid "Author: %(name)s"
msgstr "Autore: %(name)s" msgstr "Autore: %(name)s"
#: cps/web.py:714 #: cps/web.py:715
#, python-format #, python-format
msgid "Publisher: %(name)s" msgid "Publisher: %(name)s"
msgstr "Editore: %(name)s" msgstr "Editore: %(name)s"
#: cps/web.py:725 #: cps/web.py:726
#, python-format #, python-format
msgid "Series: %(serie)s" msgid "Series: %(serie)s"
msgstr "Serie: %(serie)s" msgstr "Serie: %(serie)s"
#: cps/web.py:736 #: cps/web.py:737
#, python-format #, python-format
msgid "Rating: %(rating)s stars" msgid "Rating: %(rating)s stars"
msgstr "Valutazione: %(rating)s stelle" msgstr "Valutazione: %(rating)s stelle"
#: cps/web.py:748 #: cps/web.py:749
#, python-format #, python-format
msgid "File format: %(format)s" msgid "File format: %(format)s"
msgstr "Formato del file: %(format)s" msgstr "Formato del file: %(format)s"
#: cps/web.py:760 #: cps/web.py:761
#, python-format #, python-format
msgid "Category: %(name)s" msgid "Category: %(name)s"
msgstr "Categoria: %(name)s" msgstr "Categoria: %(name)s"
#: cps/web.py:777 #: cps/web.py:778
#, python-format #, python-format
msgid "Language: %(name)s" msgid "Language: %(name)s"
msgstr "Lingua: %(name)s" msgstr "Lingua: %(name)s"
#: cps/web.py:839 #: cps/web.py:840
msgid "Ratings list" msgid "Ratings list"
msgstr "Elenco delle valutazioni" msgstr "Elenco delle valutazioni"
#: cps/web.py:852 #: cps/web.py:853
msgid "File formats list" msgid "File formats list"
msgstr "Elenco dei formati" msgstr "Elenco dei formati"
#: cps/templates/layout.html:73 cps/templates/tasks.html:7 cps/web.py:911 #: cps/templates/layout.html:73 cps/templates/tasks.html:7 cps/web.py:912
msgid "Tasks" msgid "Tasks"
msgstr "Compito" msgstr "Compito"
#: cps/templates/book_edit.html:235 cps/templates/feed.xml:33 #: cps/templates/book_edit.html:235 cps/templates/feed.xml:33
#: cps/templates/layout.html:44 cps/templates/layout.html:47 #: cps/templates/layout.html:44 cps/templates/layout.html:47
#: cps/templates/search_form.html:170 cps/web.py:937 cps/web.py:942 #: cps/templates/search_form.html:174 cps/web.py:938 cps/web.py:943
msgid "Search" msgid "Search"
msgstr "Cerca" msgstr "Cerca"
#: cps/web.py:993 #: cps/web.py:994
msgid "Published after " msgid "Published after "
msgstr "Pubblicato dopo " msgstr "Pubblicato dopo "
#: cps/web.py:1000 #: cps/web.py:1001
msgid "Published before " msgid "Published before "
msgstr "Pubblicato prima " msgstr "Pubblicato prima "
#: cps/web.py:1014 #: cps/web.py:1015
#, python-format #, python-format
msgid "Rating <= %(rating)s" msgid "Rating <= %(rating)s"
msgstr "Valutazione <= %(rating)s" msgstr "Valutazione <= %(rating)s"
#: cps/web.py:1016 #: cps/web.py:1017
#, python-format #, python-format
msgid "Rating >= %(rating)s" msgid "Rating >= %(rating)s"
msgstr "Valutazione >= %(rating)s" msgstr "Valutazione >= %(rating)s"
#: cps/web.py:1082 cps/web.py:1096 #: cps/web.py:1083 cps/web.py:1097
msgid "search" msgid "search"
msgstr "ricerca" msgstr "ricerca"
#: cps/web.py:1201 #: cps/web.py:1206
#, python-format #, python-format
msgid "Book successfully queued for sending to %(kindlemail)s" msgid "Book successfully queued for sending to %(kindlemail)s"
msgstr "Libro accodato con successo per essere spedito a %(kindlemail)s" msgstr "Libro accodato con successo per essere spedito a %(kindlemail)s"
#: cps/web.py:1205 #: cps/web.py:1210
#, python-format #, python-format
msgid "Oops! There was an error sending this book: %(res)s" msgid "Oops! There was an error sending this book: %(res)s"
msgstr "Si è verificato un errore durante l'invio di questo libro: %(res)s" msgstr "Si è verificato un errore durante l'invio di questo libro: %(res)s"
#: cps/web.py:1207 #: cps/web.py:1212
msgid "Please update your profile with a valid Send to Kindle E-mail Address." 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." msgstr "Per favore aggiorna il tuo profilo con un indirizzo e-mail Kindle a cui inviare i libri."
#: cps/web.py:1224 #: cps/web.py:1229
msgid "E-Mail server is not configured, please contact your administrator!" msgid "E-Mail server is not configured, please contact your administrator!"
msgstr "Il server e-mail non è configurato, per favore contatta l'amministratore" msgstr "Il server e-mail non è configurato, per favore contatta l'amministratore"
#: cps/web.py:1225 cps/web.py:1231 cps/web.py:1256 cps/web.py:1260 #: cps/web.py:1230 cps/web.py:1236 cps/web.py:1261 cps/web.py:1265
#: cps/web.py:1265 cps/web.py:1269 #: cps/web.py:1270 cps/web.py:1274
msgid "register" msgid "register"
msgstr "registra" msgstr "registra"
#: cps/web.py:1258 #: cps/web.py:1263
msgid "Your e-mail is not allowed to register" msgid "Your e-mail is not allowed to register"
msgstr "Il tuo e-mail non è autorizzato alla registrazione" msgstr "Il tuo e-mail non è autorizzato alla registrazione"
#: cps/web.py:1261 #: cps/web.py:1266
msgid "Confirmation e-mail was send to your e-mail account." msgid "Confirmation e-mail was send to your e-mail account."
msgstr "Un e-mail di conferma è stato inviato al tuo indirizzo." msgstr "Un e-mail di conferma è stato inviato al tuo indirizzo."
#: cps/web.py:1264 #: cps/web.py:1269
msgid "This username or e-mail address is already in use." msgid "This username or e-mail address is already in use."
msgstr "Questo nome di utente o questo e-mail sono già utilizzati." msgstr "Questo nome di utente o questo e-mail sono già utilizzati."
#: cps/web.py:1281 #: cps/web.py:1286
msgid "Cannot activate LDAP authentication" msgid "Cannot activate LDAP authentication"
msgstr "Non posso attivare l'autenticazione LDAP" msgstr "Non posso attivare l'autenticazione LDAP"
#: cps/web.py:1298 #: cps/web.py:1303
#, python-format #, python-format
msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" 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" msgstr "Login come: '%(nickname)s', il server LDAP non è raggiungibile o l'utente è sconosciuto"
#: cps/web.py:1304 #: cps/web.py:1309
#, python-format #, python-format
msgid "Could not login: %(message)s" msgid "Could not login: %(message)s"
msgstr "Non posso accedere: %(message)s" msgstr "Non posso accedere: %(message)s"
#: cps/web.py:1308 cps/web.py:1332 #: cps/web.py:1313 cps/web.py:1337
msgid "Wrong Username or Password" msgid "Wrong Username or Password"
msgstr "Nome utente o password errati" msgstr "Nome utente o password errati"
#: cps/web.py:1315 #: cps/web.py:1320
msgid "New Password was send to your email address" msgid "New Password was send to your email address"
msgstr "Una nuova password è stata inviata al tuo recapito e-mail" msgstr "Una nuova password è stata inviata al tuo recapito e-mail"
#: cps/web.py:1321 #: cps/web.py:1326
msgid "Please enter valid username to reset password" msgid "Please enter valid username to reset password"
msgstr "Per favore digita un nome di utente valido per resettare la password" msgstr "Per favore digita un nome di utente valido per resettare la password"
#: cps/web.py:1327 #: cps/web.py:1332
#, python-format #, python-format
msgid "You are now logged in as: '%(nickname)s'" msgid "You are now logged in as: '%(nickname)s'"
msgstr "Ora sei connesso come '%(nickname)s'" msgstr "Ora sei connesso come '%(nickname)s'"
#: cps/web.py:1336 cps/web.py:1363 #: cps/web.py:1341 cps/web.py:1368
msgid "login" msgid "login"
msgstr "accedi" msgstr "accedi"
#: cps/web.py:1375 cps/web.py:1409 #: cps/web.py:1380 cps/web.py:1414
msgid "Token not found" msgid "Token not found"
msgstr "Token non trovato" msgstr "Token non trovato"
#: cps/web.py:1384 cps/web.py:1417 #: cps/web.py:1389 cps/web.py:1422
msgid "Token has expired" msgid "Token has expired"
msgstr "Il token è scaduto" msgstr "Il token è scaduto"
#: cps/web.py:1393 #: cps/web.py:1398
msgid "Success! Please return to your device" msgid "Success! Please return to your device"
msgstr "Riuscito! Torna al tuo dispositivo" msgstr "Riuscito! Torna al tuo dispositivo"
#: cps/web.py:1474 cps/web.py:1519 cps/web.py:1525 #: cps/web.py:1479 cps/web.py:1524 cps/web.py:1530
#, python-format #, python-format
msgid "%(name)s's profile" msgid "%(name)s's profile"
msgstr "Profilo di %(name)s" msgstr "Profilo di %(name)s"
#: cps/web.py:1521 #: cps/web.py:1526
msgid "Profile updated" msgid "Profile updated"
msgstr "Profilo aggiornato" msgstr "Profilo aggiornato"
#: cps/web.py:1538 cps/web.py:1642 #: cps/web.py:1543 cps/web.py:1647
msgid "Error opening eBook. File does not exist or file is not accessible:" msgid "Error opening eBook. File does not exist or file is not accessible:"
msgstr "Errore nell'aprire il libro. Il file non esiste o il file non è accessibile:" msgstr "Errore nell'aprire il libro. Il file non esiste o il file non è accessibile:"
#: cps/web.py:1550 cps/web.py:1553 cps/web.py:1556 cps/web.py:1563 #: cps/web.py:1555 cps/web.py:1558 cps/web.py:1561 cps/web.py:1568
#: cps/web.py:1568 #: cps/web.py:1573
msgid "Read a Book" msgid "Read a Book"
msgstr "Leggi un libro" msgstr "Leggi un libro"
#: cps/web.py:1579 #: cps/web.py:1584
msgid "Error opening eBook. File does not exist or file is not accessible." msgid "Error opening eBook. File does not exist or file is not accessible."
msgstr "Errore nell'aprire il libro. Il file non esiste o il file non è accessibile." msgstr "Errore nell'aprire il libro. Il file non esiste o il file non è accessibile."
@ -1295,13 +1295,13 @@ msgid "In Library"
msgstr "Nella libreria" msgstr "Nella libreria"
#: cps/templates/author.html:34 cps/templates/list.html:14 #: cps/templates/author.html:34 cps/templates/list.html:14
#: cps/templates/search.html:41 #: cps/templates/search.html:38
msgid "All" msgid "All"
msgstr "Tutti" msgstr "Tutti"
#: cps/templates/author.html:58 cps/templates/author.html:110 #: cps/templates/author.html:58 cps/templates/author.html:110
#: cps/templates/discover.html:27 cps/templates/index.html:26 #: cps/templates/discover.html:27 cps/templates/index.html:26
#: cps/templates/index.html:89 cps/templates/search.html:67 #: cps/templates/index.html:89 cps/templates/search.html:64
#: cps/templates/shelf.html:36 #: cps/templates/shelf.html:36
msgid "reduce" msgid "reduce"
msgstr "riduci" msgstr "riduci"
@ -1920,7 +1920,7 @@ msgstr "Aggiungi all'archivio"
#: cps/templates/detail.html:209 #: cps/templates/detail.html:209
msgid "Archived" msgid "Archived"
msgstr "Archiviato" msgstr "da archiviare"
#: cps/templates/detail.html:219 #: cps/templates/detail.html:219
msgid "Description:" msgid "Description:"
@ -1930,6 +1930,12 @@ msgstr "Descrizione:"
msgid "Add to shelf" msgid "Add to shelf"
msgstr "Aggiungi allo scaffale" msgstr "Aggiungi allo scaffale"
#: cps/templates/detail.html:243 cps/templates/detail.html:260
#: cps/templates/feed.xml:79 cps/templates/layout.html:136
#: cps/templates/layout.html:140 cps/templates/search.html:20
msgid "(Public)"
msgstr "(Pubblico)"
#: cps/templates/detail.html:274 #: cps/templates/detail.html:274
msgid "Edit Metadata" msgid "Edit Metadata"
msgstr "Modifica metadati" msgstr "Modifica metadati"
@ -1978,11 +1984,6 @@ msgstr "Se sicuro di voler eliminare questo dominio?"
msgid "Next" msgid "Next"
msgstr "Prossimo" msgstr "Prossimo"
#: cps/templates/feed.xml:79 cps/templates/layout.html:136
#: cps/templates/layout.html:140
msgid "(Public)"
msgstr "(Pubblico)"
#: cps/templates/generate_kobo_auth_url.html:5 #: cps/templates/generate_kobo_auth_url.html:5
msgid "Open the .kobo/Kobo eReader.conf file in a text editor and add (or edit):" msgid "Open the .kobo/Kobo eReader.conf file in a text editor and add (or edit):"
msgstr "Apri il file .kobo/Kobo eReader.conf in un editore di testi e aggiungi (o edita):" msgstr "Apri il file .kobo/Kobo eReader.conf in un editore di testi e aggiungi (o edita):"

View File

@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Calibre-Web\n" "Project-Id-Version: Calibre-Web\n"
"Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n" "Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n"
"POT-Creation-Date: 2020-05-01 17:15+0200\n" "POT-Creation-Date: 2020-05-23 08:46+0200\n"
"PO-Revision-Date: 2018-02-07 02:20-0500\n" "PO-Revision-Date: 2018-02-07 02:20-0500\n"
"Last-Translator: white <space_white@yahoo.com>\n" "Last-Translator: white <space_white@yahoo.com>\n"
"Language: ja\n" "Language: ja\n"
@ -46,9 +46,9 @@ msgstr ""
msgid "Unknown command" msgid "Unknown command"
msgstr "" msgstr ""
#: cps/admin.py:115 cps/editbooks.py:504 cps/editbooks.py:514 #: cps/admin.py:115 cps/editbooks.py:505 cps/editbooks.py:515
#: cps/editbooks.py:620 cps/editbooks.py:622 cps/editbooks.py:688 #: cps/editbooks.py:621 cps/editbooks.py:623 cps/editbooks.py:689
#: cps/updater.py:509 cps/uploader.py:99 cps/uploader.py:110 #: cps/updater.py:509 cps/uploader.py:100 cps/uploader.py:110
msgid "Unknown" msgid "Unknown"
msgstr "不明" msgstr "不明"
@ -60,223 +60,223 @@ msgstr "管理者ページ"
msgid "UI Configuration" msgid "UI Configuration"
msgstr "UI設定" msgstr "UI設定"
#: cps/admin.py:192 cps/admin.py:674 #: cps/admin.py:189 cps/admin.py:671
msgid "Calibre-Web configuration updated" msgid "Calibre-Web configuration updated"
msgstr "Calibre-Web の設定を更新しました" msgstr "Calibre-Web の設定を更新しました"
#: cps/admin.py:438 cps/admin.py:444 cps/admin.py:455 cps/admin.py:466 #: cps/admin.py:435 cps/admin.py:441 cps/admin.py:452 cps/admin.py:463
#: cps/templates/modal_restriction.html:29 #: cps/templates/modal_restriction.html:29
msgid "Deny" msgid "Deny"
msgstr "" msgstr ""
#: cps/admin.py:440 cps/admin.py:446 cps/admin.py:457 cps/admin.py:468 #: cps/admin.py:437 cps/admin.py:443 cps/admin.py:454 cps/admin.py:465
#: cps/templates/modal_restriction.html:28 #: cps/templates/modal_restriction.html:28
msgid "Allow" msgid "Allow"
msgstr "" msgstr ""
#: cps/admin.py:509 #: cps/admin.py:506
msgid "client_secrets.json Is Not Configured For Web Application" msgid "client_secrets.json Is Not Configured For Web Application"
msgstr "" msgstr ""
#: cps/admin.py:525 #: cps/admin.py:522
msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgid "Keyfile Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:529 #: cps/admin.py:526
msgid "Certfile Location is not Valid, Please Enter Correct Path" msgid "Certfile Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:567 #: cps/admin.py:564
msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier"
msgstr "" msgstr ""
#: cps/admin.py:585 #: cps/admin.py:582
#, python-format #, python-format
msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier"
msgstr "" msgstr ""
#: cps/admin.py:588 #: cps/admin.py:585
msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgid "LDAP Group Object Filter Has Unmatched Parenthesis"
msgstr "" msgstr ""
#: cps/admin.py:592 #: cps/admin.py:589
#, python-format #, python-format
msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier"
msgstr "" msgstr ""
#: cps/admin.py:595 #: cps/admin.py:592
msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgid "LDAP User Object Filter Has Unmatched Parenthesis"
msgstr "" msgstr ""
#: cps/admin.py:599 #: cps/admin.py:596
msgid "LDAP Certificate Location is not Valid, Please Enter Correct Path" msgid "LDAP Certificate Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:647 #: cps/admin.py:644
msgid "Logfile Location is not Valid, Please Enter Correct Path" msgid "Logfile Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:652 #: cps/admin.py:649
msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgid "Access Logfile Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:671 #: cps/admin.py:668
msgid "DB Location is not Valid, Please Enter Correct Path" msgid "DB Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:704 #: cps/admin.py:701
msgid "Basic Configuration" msgid "Basic Configuration"
msgstr "基本設定" msgstr "基本設定"
#: cps/admin.py:728 cps/web.py:1230 #: cps/admin.py:725 cps/web.py:1235
msgid "Please fill out all fields!" msgid "Please fill out all fields!"
msgstr "全ての項目を入力してください" msgstr "全ての項目を入力してください"
#: cps/admin.py:731 cps/admin.py:743 cps/admin.py:749 cps/admin.py:767 #: cps/admin.py:728 cps/admin.py:740 cps/admin.py:746 cps/admin.py:764
msgid "Add new user" msgid "Add new user"
msgstr "新規ユーザ追加" msgstr "新規ユーザ追加"
#: cps/admin.py:740 cps/web.py:1472 #: cps/admin.py:737 cps/web.py:1477
msgid "E-mail is not from valid domain" msgid "E-mail is not from valid domain"
msgstr "このメールは有効なドメインからのものではありません" msgstr "このメールは有効なドメインからのものではありません"
#: cps/admin.py:747 cps/admin.py:762 #: cps/admin.py:744 cps/admin.py:759
msgid "Found an existing account for this e-mail address or nickname." msgid "Found an existing account for this e-mail address or nickname."
msgstr "このメールアドレスかニックネームで登録されたアカウントが見つかりました" msgstr "このメールアドレスかニックネームで登録されたアカウントが見つかりました"
#: cps/admin.py:758 #: cps/admin.py:755
#, python-format #, python-format
msgid "User '%(user)s' created" msgid "User '%(user)s' created"
msgstr "ユーザ '%(user)s' を作成しました" msgstr "ユーザ '%(user)s' を作成しました"
#: cps/admin.py:777 #: cps/admin.py:774
msgid "Edit e-mail server settings" msgid "Edit e-mail server settings"
msgstr "メールサーバの設定を編集" msgstr "メールサーバの設定を編集"
#: cps/admin.py:803 #: cps/admin.py:800
#, python-format #, python-format
msgid "Test e-mail successfully send to %(kindlemail)s" msgid "Test e-mail successfully send to %(kindlemail)s"
msgstr "テストメールが %(kindlemail)s に送信されました" msgstr "テストメールが %(kindlemail)s に送信されました"
#: cps/admin.py:806 #: cps/admin.py:803
#, python-format #, python-format
msgid "There was an error sending the Test e-mail: %(res)s" msgid "There was an error sending the Test e-mail: %(res)s"
msgstr "テストメールを %(res)s に送信中にエラーが発生しました" msgstr "テストメールを %(res)s に送信中にエラーが発生しました"
#: cps/admin.py:808 #: cps/admin.py:805
msgid "Please configure your e-mail address first..." msgid "Please configure your e-mail address first..."
msgstr "" msgstr ""
#: cps/admin.py:810 #: cps/admin.py:807
msgid "E-mail server settings updated" msgid "E-mail server settings updated"
msgstr "メールサーバの設定を更新しました" msgstr "メールサーバの設定を更新しました"
#: cps/admin.py:821 #: cps/admin.py:818
msgid "User not found" msgid "User not found"
msgstr "" msgstr ""
#: cps/admin.py:842 #: cps/admin.py:839
#, python-format #, python-format
msgid "User '%(nick)s' deleted" msgid "User '%(nick)s' deleted"
msgstr "ユーザ '%(nick)s' を削除しました" msgstr "ユーザ '%(nick)s' を削除しました"
#: cps/admin.py:845 #: cps/admin.py:842
msgid "No admin user remaining, can't delete user" msgid "No admin user remaining, can't delete user"
msgstr "" msgstr ""
#: cps/admin.py:851 #: cps/admin.py:848
msgid "No admin user remaining, can't remove admin role" msgid "No admin user remaining, can't remove admin role"
msgstr "" msgstr ""
#: cps/admin.py:887 cps/web.py:1515 #: cps/admin.py:884 cps/web.py:1520
msgid "Found an existing account for this e-mail address." msgid "Found an existing account for this e-mail address."
msgstr "このメールアドレスで登録されたアカウントがあります" msgstr "このメールアドレスで登録されたアカウントがあります"
#: cps/admin.py:897 cps/admin.py:912 cps/admin.py:932 cps/web.py:1490 #: cps/admin.py:894 cps/admin.py:909 cps/admin.py:929 cps/web.py:1495
#, python-format #, python-format
msgid "Edit User %(nick)s" msgid "Edit User %(nick)s"
msgstr "%(nick)s を編集" msgstr "%(nick)s を編集"
#: cps/admin.py:903 cps/web.py:1482 #: cps/admin.py:900 cps/web.py:1487
msgid "This username is already taken" msgid "This username is already taken"
msgstr "" msgstr ""
#: cps/admin.py:919 #: cps/admin.py:916
#, python-format #, python-format
msgid "User '%(nick)s' updated" msgid "User '%(nick)s' updated"
msgstr "ユーザ '%(nick)s' を更新しました" msgstr "ユーザ '%(nick)s' を更新しました"
#: cps/admin.py:922 #: cps/admin.py:919
msgid "An unknown error occured." msgid "An unknown error occured."
msgstr "不明なエラーが発生しました。" msgstr "不明なエラーが発生しました。"
#: cps/admin.py:943 #: cps/admin.py:940
#, python-format #, python-format
msgid "Password for user %(user)s reset" msgid "Password for user %(user)s reset"
msgstr "%(user)s 用のパスワードをリセット" msgstr "%(user)s 用のパスワードをリセット"
#: cps/admin.py:946 cps/web.py:1255 cps/web.py:1319 #: cps/admin.py:943 cps/web.py:1260 cps/web.py:1324
msgid "An unknown error occurred. Please try again later." msgid "An unknown error occurred. Please try again later."
msgstr "不明なエラーが発生しました。あとで再試行してください。" msgstr "不明なエラーが発生しました。あとで再試行してください。"
#: cps/admin.py:949 cps/web.py:1196 #: cps/admin.py:946 cps/web.py:1201
msgid "Please configure the SMTP mail settings first..." msgid "Please configure the SMTP mail settings first..."
msgstr "初めにSMTPメールの設定をしてください" msgstr "初めにSMTPメールの設定をしてください"
#: cps/admin.py:961 #: cps/admin.py:958
msgid "Logfile viewer" msgid "Logfile viewer"
msgstr "" msgstr ""
#: cps/admin.py:1000 #: cps/admin.py:997
msgid "Requesting update package" msgid "Requesting update package"
msgstr "更新データを要求中" msgstr "更新データを要求中"
#: cps/admin.py:1001 #: cps/admin.py:998
msgid "Downloading update package" msgid "Downloading update package"
msgstr "更新データをダウンロード中" msgstr "更新データをダウンロード中"
#: cps/admin.py:1002 #: cps/admin.py:999
msgid "Unzipping update package" msgid "Unzipping update package"
msgstr "更新データを展開中" msgstr "更新データを展開中"
#: cps/admin.py:1003 #: cps/admin.py:1000
msgid "Replacing files" msgid "Replacing files"
msgstr "ファイルを置換中" msgstr "ファイルを置換中"
#: cps/admin.py:1004 #: cps/admin.py:1001
msgid "Database connections are closed" msgid "Database connections are closed"
msgstr "データベースの接続を切断完了" msgstr "データベースの接続を切断完了"
#: cps/admin.py:1005 #: cps/admin.py:1002
msgid "Stopping server" msgid "Stopping server"
msgstr "サーバ停止中" msgstr "サーバ停止中"
#: cps/admin.py:1006 #: cps/admin.py:1003
msgid "Update finished, please press okay and reload page" msgid "Update finished, please press okay and reload page"
msgstr "アップデート完了、OKを押してページをリロードしてください" msgstr "アップデート完了、OKを押してページをリロードしてください"
#: cps/admin.py:1007 cps/admin.py:1008 cps/admin.py:1009 cps/admin.py:1010 #: cps/admin.py:1004 cps/admin.py:1005 cps/admin.py:1006 cps/admin.py:1007
#: cps/admin.py:1011 #: cps/admin.py:1008
msgid "Update failed:" msgid "Update failed:"
msgstr "アップデート失敗:" msgstr "アップデート失敗:"
#: cps/admin.py:1007 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522 #: cps/admin.py:1004 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522
msgid "HTTP Error" msgid "HTTP Error"
msgstr "HTTPエラー" msgstr "HTTPエラー"
#: cps/admin.py:1008 cps/updater.py:321 cps/updater.py:524 #: cps/admin.py:1005 cps/updater.py:321 cps/updater.py:524
msgid "Connection error" msgid "Connection error"
msgstr "接続エラー" msgstr "接続エラー"
#: cps/admin.py:1009 cps/updater.py:323 cps/updater.py:526 #: cps/admin.py:1006 cps/updater.py:323 cps/updater.py:526
msgid "Timeout while establishing connection" msgid "Timeout while establishing connection"
msgstr "接続を確立中にタイムアウトしました" msgstr "接続を確立中にタイムアウトしました"
#: cps/admin.py:1010 cps/updater.py:325 cps/updater.py:528 #: cps/admin.py:1007 cps/updater.py:325 cps/updater.py:528
msgid "General error" msgid "General error"
msgstr "エラー発生" msgstr "エラー発生"
#: cps/admin.py:1011 #: cps/admin.py:1008
msgid "Update File Could Not be Saved in Temp Dir" msgid "Update File Could Not be Saved in Temp Dir"
msgstr "" msgstr ""
@ -292,7 +292,7 @@ msgstr ""
msgid "Book Successfully Deleted" msgid "Book Successfully Deleted"
msgstr "" msgstr ""
#: cps/editbooks.py:253 cps/editbooks.py:489 #: cps/editbooks.py:253 cps/editbooks.py:490
msgid "Error opening eBook. File does not exist or file is not accessible" msgid "Error opening eBook. File does not exist or file is not accessible"
msgstr "電子書籍を開けません。ファイルが存在しないかアクセスできません" msgstr "電子書籍を開けません。ファイルが存在しないかアクセスできません"
@ -305,16 +305,16 @@ msgstr "メタデータを編集"
msgid "%(langname)s is not a valid language" msgid "%(langname)s is not a valid language"
msgstr "%(langname)s は有効な言語ではありません" msgstr "%(langname)s は有効な言語ではありません"
#: cps/editbooks.py:413 cps/editbooks.py:663 #: cps/editbooks.py:413 cps/editbooks.py:664
#, python-format #, python-format
msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgid "File extension '%(ext)s' is not allowed to be uploaded to this server"
msgstr "ファイル拡張子 '%(ext)s' をこのサーバにアップロードすることは許可されていません" msgstr "ファイル拡張子 '%(ext)s' をこのサーバにアップロードすることは許可されていません"
#: cps/editbooks.py:417 cps/editbooks.py:667 #: cps/editbooks.py:417 cps/editbooks.py:668
msgid "File to be uploaded must have an extension" msgid "File to be uploaded must have an extension"
msgstr "アップロードするファイルには拡張子が必要です" msgstr "アップロードするファイルには拡張子が必要です"
#: cps/editbooks.py:429 cps/editbooks.py:701 #: cps/editbooks.py:429 cps/editbooks.py:702
#, python-format #, python-format
msgid "Failed to create path %(path)s (Permission denied)." msgid "Failed to create path %(path)s (Permission denied)."
msgstr "%(path)s の作成に失敗しました (Permission denied)。" msgstr "%(path)s の作成に失敗しました (Permission denied)。"
@ -329,48 +329,48 @@ msgstr "%(file)s を保存できません。"
msgid "File format %(ext)s added to %(book)s" msgid "File format %(ext)s added to %(book)s"
msgstr "ファイル形式 %(ext)s が %(book)s に追加されました" msgstr "ファイル形式 %(ext)s が %(book)s に追加されました"
#: cps/editbooks.py:606 #: cps/editbooks.py:607
msgid "Metadata successfully updated" msgid "Metadata successfully updated"
msgstr "メタデータを更新しました" msgstr "メタデータを更新しました"
#: cps/editbooks.py:615 #: cps/editbooks.py:616
msgid "Error editing book, please check logfile for details" msgid "Error editing book, please check logfile for details"
msgstr "本の編集でエラーが発生しました。詳細はログファイルを確認してください" msgstr "本の編集でエラーが発生しました。詳細はログファイルを確認してください"
#: cps/editbooks.py:675 #: cps/editbooks.py:676
#, python-format #, python-format
msgid "File %(filename)s could not saved to temp dir" msgid "File %(filename)s could not saved to temp dir"
msgstr "" msgstr ""
#: cps/editbooks.py:692 #: cps/editbooks.py:693
msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgid "Uploaded book probably exists in the library, consider to change before upload new: "
msgstr "" msgstr ""
#: cps/editbooks.py:707 #: cps/editbooks.py:709
#, python-format #, python-format
msgid "Failed to store file %(file)s (Permission denied)." msgid "Failed to Move File %(file)s: %(error)s"
msgstr "ファイル %(file)s の保存に失敗しました (Permission denied)。" msgstr ""
#: cps/editbooks.py:713 #: cps/editbooks.py:723
#, python-format #, python-format
msgid "Failed to delete file %(file)s (Permission denied)." msgid "Failed to Move Cover File %(file)s: %(error)s"
msgstr "ファイル %(file)s の削除に失敗しました (Permission denied)。" msgstr ""
#: cps/editbooks.py:804 #: cps/editbooks.py:808
#, python-format #, python-format
msgid "File %(file)s uploaded" msgid "File %(file)s uploaded"
msgstr "" msgstr ""
#: cps/editbooks.py:833 #: cps/editbooks.py:837
msgid "Source or destination format for conversion missing" msgid "Source or destination format for conversion missing"
msgstr "変換元の形式または変換後の形式が指定されていません" msgstr "変換元の形式または変換後の形式が指定されていません"
#: cps/editbooks.py:841 #: cps/editbooks.py:845
#, python-format #, python-format
msgid "Book successfully queued for converting to %(book_format)s" msgid "Book successfully queued for converting to %(book_format)s"
msgstr "本の %(book_format)s への変換がキューに追加されました" msgstr "本の %(book_format)s への変換がキューに追加されました"
#: cps/editbooks.py:845 #: cps/editbooks.py:849
#, python-format #, python-format
msgid "There was an error converting this book: %(res)s" msgid "There was an error converting this book: %(res)s"
msgstr "この本の変換中にエラーが発生しました: %(res)s" msgstr "この本の変換中にエラーが発生しました: %(res)s"
@ -444,111 +444,111 @@ msgstr "メール: %(book)s"
msgid "The requested file could not be read. Maybe wrong permissions?" msgid "The requested file could not be read. Maybe wrong permissions?"
msgstr "要求されたファイルを読み込めませんでした。権限設定が正しいか確認してください。" msgstr "要求されたファイルを読み込めませんでした。権限設定が正しいか確認してください。"
#: cps/helper.py:299 #: cps/helper.py:300
#, python-format #, python-format
msgid "Deleting book %(id)s failed, path has subfolders: %(path)s" msgid "Deleting book %(id)s failed, path has subfolders: %(path)s"
msgstr "" msgstr ""
#: cps/helper.py:309 #: cps/helper.py:310
#, python-format #, python-format
msgid "Deleting book %(id)s failed: %(message)s" msgid "Deleting book %(id)s failed: %(message)s"
msgstr "" msgstr ""
#: cps/helper.py:319 #: cps/helper.py:320
#, python-format #, python-format
msgid "Deleting book %(id)s failed, book path not valid: %(path)s" msgid "Deleting book %(id)s failed, book path not valid: %(path)s"
msgstr "" msgstr ""
#: cps/helper.py:354 #: cps/helper.py:355
#, python-format #, python-format
msgid "Rename title from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgid "Rename title from: '%(src)s' to '%(dest)s' failed with error: %(error)s"
msgstr "エラー: %(error)s により、タイトルを %(src)s から %(dest)s に変更できませんでした。" msgstr "エラー: %(error)s により、タイトルを %(src)s から %(dest)s に変更できませんでした。"
#: cps/helper.py:364 #: cps/helper.py:365
#, python-format #, python-format
msgid "Rename author from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgid "Rename author from: '%(src)s' to '%(dest)s' failed with error: %(error)s"
msgstr "エラー: %(error)s により、著者名を %(src)s から %(dest)s に変更できませんでした。" msgstr "エラー: %(error)s により、著者名を %(src)s から %(dest)s に変更できませんでした。"
#: cps/helper.py:378 #: cps/helper.py:379
#, python-format #, python-format
msgid "Rename file in path '%(src)s' to '%(dest)s' failed with error: %(error)s" msgid "Rename file in path '%(src)s' to '%(dest)s' failed with error: %(error)s"
msgstr "エラー: %(error)s により、ファイルパスを %(src)s から %(dest)s に変更できませんでした。" msgstr "エラー: %(error)s により、ファイルパスを %(src)s から %(dest)s に変更できませんでした。"
#: cps/helper.py:404 cps/helper.py:414 cps/helper.py:422 #: cps/helper.py:405 cps/helper.py:415 cps/helper.py:423
#, python-format #, python-format
msgid "File %(file)s not found on Google Drive" msgid "File %(file)s not found on Google Drive"
msgstr "ファイル %(file)s はGoogleドライブ上にありません" msgstr "ファイル %(file)s はGoogleドライブ上にありません"
#: cps/helper.py:443 #: cps/helper.py:444
#, python-format #, python-format
msgid "Book path %(path)s not found on Google Drive" msgid "Book path %(path)s not found on Google Drive"
msgstr "本のパス %(path)s はGoogleドライブ上にありません" msgstr "本のパス %(path)s はGoogleドライブ上にありません"
#: cps/helper.py:550 #: cps/helper.py:551
msgid "Failed to create path for cover" msgid "Failed to create path for cover"
msgstr "" msgstr ""
#: cps/helper.py:555 #: cps/helper.py:556
msgid "Cover-file is not a valid image file, or could not be stored" msgid "Cover-file is not a valid image file, or could not be stored"
msgstr "" msgstr ""
#: cps/helper.py:566 #: cps/helper.py:567
msgid "Only jpg/jpeg/png/webp files are supported as coverfile" msgid "Only jpg/jpeg/png/webp files are supported as coverfile"
msgstr "" msgstr ""
#: cps/helper.py:580 #: cps/helper.py:581
msgid "Only jpg/jpeg files are supported as coverfile" msgid "Only jpg/jpeg files are supported as coverfile"
msgstr "" msgstr ""
#: cps/helper.py:622 #: cps/helper.py:625
msgid "Unrar binary file not found" msgid "Unrar binary file not found"
msgstr "" msgstr ""
#: cps/helper.py:635 #: cps/helper.py:638
msgid "Error excecuting UnRar" msgid "Error excecuting UnRar"
msgstr "" msgstr ""
#: cps/helper.py:691 #: cps/helper.py:694
msgid "Waiting" msgid "Waiting"
msgstr "待機中" msgstr "待機中"
#: cps/helper.py:693 #: cps/helper.py:696
msgid "Failed" msgid "Failed"
msgstr "失敗" msgstr "失敗"
#: cps/helper.py:695 #: cps/helper.py:698
msgid "Started" msgid "Started"
msgstr "開始" msgstr "開始"
#: cps/helper.py:697 #: cps/helper.py:700
msgid "Finished" msgid "Finished"
msgstr "終了" msgstr "終了"
#: cps/helper.py:699 #: cps/helper.py:702
msgid "Unknown Status" msgid "Unknown Status"
msgstr "不明" msgstr "不明"
#: cps/helper.py:704 #: cps/helper.py:707
msgid "E-mail: " msgid "E-mail: "
msgstr "メール: " msgstr "メール: "
#: cps/helper.py:706 cps/helper.py:710 #: cps/helper.py:709 cps/helper.py:713
msgid "Convert: " msgid "Convert: "
msgstr "変換: " msgstr "変換: "
#: cps/helper.py:708 #: cps/helper.py:711
msgid "Upload: " msgid "Upload: "
msgstr "アップロード: " msgstr "アップロード: "
#: cps/helper.py:712 #: cps/helper.py:715
msgid "Unknown Task: " msgid "Unknown Task: "
msgstr "不明なタスク: " msgstr "不明なタスク: "
#: cps/kobo_auth.py:126 #: cps/kobo_auth.py:130
msgid "PLease access calibre-web from non localhost to get valid api_endpoint for kobo device" msgid "PLease access calibre-web from non localhost to get valid api_endpoint for kobo device"
msgstr "" msgstr ""
#: cps/kobo_auth.py:129 cps/kobo_auth.py:149 #: cps/kobo_auth.py:133 cps/kobo_auth.py:153
msgid "Kobo Setup" msgid "Kobo Setup"
msgstr "" msgstr ""
@ -573,7 +573,7 @@ msgstr ""
msgid "Failed to fetch user info from Google." msgid "Failed to fetch user info from Google."
msgstr "" msgstr ""
#: cps/oauth_bb.py:225 cps/web.py:1291 cps/web.py:1431 #: cps/oauth_bb.py:225 cps/web.py:1296 cps/web.py:1436
#, python-format #, python-format
msgid "you are now logged in as: '%(nickname)s'" msgid "you are now logged in as: '%(nickname)s'"
msgstr "%(nickname)s としてログイン中" msgstr "%(nickname)s としてログイン中"
@ -725,7 +725,7 @@ msgstr "人気の本"
msgid "Show Hot Books" msgid "Show Hot Books"
msgstr "" msgstr ""
#: cps/templates/index.xml:24 cps/ub.py:70 cps/web.py:615 #: cps/templates/index.xml:24 cps/ub.py:70 cps/web.py:616
msgid "Top Rated Books" msgid "Top Rated Books"
msgstr "" msgstr ""
@ -734,7 +734,7 @@ msgid "Show Top Rated Books"
msgstr "" msgstr ""
#: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:73 #: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:73
#: cps/web.py:1125 #: cps/web.py:1131
msgid "Read Books" msgid "Read Books"
msgstr "読んだ本" msgstr "読んだ本"
@ -743,7 +743,7 @@ msgid "Show read and unread"
msgstr "既読の本と未読の本を表示" msgstr "既読の本と未読の本を表示"
#: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:77 #: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:77
#: cps/web.py:1129 #: cps/web.py:1134
msgid "Unread Books" msgid "Unread Books"
msgstr "未読の本" msgstr "未読の本"
@ -759,7 +759,7 @@ msgstr "見つける"
msgid "Show random books" msgid "Show random books"
msgstr "ランダムで本を表示" msgstr "ランダムで本を表示"
#: cps/templates/index.xml:75 cps/ub.py:83 cps/web.py:897 #: cps/templates/index.xml:75 cps/ub.py:83 cps/web.py:898
msgid "Categories" msgid "Categories"
msgstr "カテゴリ" msgstr "カテゴリ"
@ -768,7 +768,7 @@ msgid "Show category selection"
msgstr "カテゴリ選択を表示" msgstr "カテゴリ選択を表示"
#: cps/templates/book_edit.html:84 cps/templates/index.xml:82 #: cps/templates/book_edit.html:84 cps/templates/index.xml:82
#: cps/templates/search_form.html:53 cps/ub.py:86 cps/web.py:825 #: cps/templates/search_form.html:53 cps/ub.py:86 cps/web.py:826
msgid "Series" msgid "Series"
msgstr "シリーズ" msgstr "シリーズ"
@ -784,7 +784,7 @@ msgstr "著者"
msgid "Show author selection" msgid "Show author selection"
msgstr "著者選択を表示" msgstr "著者選択を表示"
#: cps/templates/index.xml:68 cps/ub.py:93 cps/web.py:809 #: cps/templates/index.xml:68 cps/ub.py:93 cps/web.py:810
msgid "Publishers" msgid "Publishers"
msgstr "出版社" msgstr "出版社"
@ -793,7 +793,7 @@ msgid "Show publisher selection"
msgstr "出版社選択を表示" msgstr "出版社選択を表示"
#: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:96 #: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:96
#: cps/web.py:880 #: cps/web.py:881
msgid "Languages" msgid "Languages"
msgstr "言語" msgstr "言語"
@ -817,7 +817,7 @@ msgstr ""
msgid "Show file formats selection" msgid "Show file formats selection"
msgstr "" msgstr ""
#: cps/ub.py:107 cps/web.py:1150 #: cps/ub.py:107 cps/web.py:1155
msgid "Archived Books" msgid "Archived Books"
msgstr "" msgstr ""
@ -854,223 +854,223 @@ msgstr "アップデートが利用可能です。下のボタンをクリック
msgid "Click on the button below to update to the latest stable version." msgid "Click on the button below to update to the latest stable version."
msgstr "" msgstr ""
#: cps/web.py:306 #: cps/web.py:307
#, python-format #, python-format
msgid "Error: %(ldaperror)s" msgid "Error: %(ldaperror)s"
msgstr "" msgstr ""
#: cps/web.py:310 #: cps/web.py:311
msgid "Error: No user returned in response of LDAP server" msgid "Error: No user returned in response of LDAP server"
msgstr "" msgstr ""
#: cps/web.py:358 #: cps/web.py:359
msgid "Failed to Create at Least One LDAP User" msgid "Failed to Create at Least One LDAP User"
msgstr "" msgstr ""
#: cps/web.py:361 #: cps/web.py:362
msgid "At Least One LDAP User Not Found in Database" msgid "At Least One LDAP User Not Found in Database"
msgstr "" msgstr ""
#: cps/web.py:363 #: cps/web.py:364
msgid "User Successfully Imported" msgid "User Successfully Imported"
msgstr "" msgstr ""
#: cps/web.py:587 #: cps/web.py:588
msgid "Recently Added Books" msgid "Recently Added Books"
msgstr "最近追加された本" msgstr "最近追加された本"
#: cps/templates/index.html:5 cps/web.py:623 #: cps/templates/index.html:5 cps/web.py:624
msgid "Discover (Random Books)" msgid "Discover (Random Books)"
msgstr "本を見つける (ランダムで表示)" msgstr "本を見つける (ランダムで表示)"
#: cps/web.py:651 #: cps/web.py:652
msgid "Books" msgid "Books"
msgstr "" msgstr ""
#: cps/web.py:678 #: cps/web.py:679
msgid "Hot Books (Most Downloaded)" msgid "Hot Books (Most Downloaded)"
msgstr "" msgstr ""
#: cps/web.py:688 #: cps/web.py:689
msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible" msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible"
msgstr "" msgstr ""
#: cps/web.py:702 #: cps/web.py:703
#, python-format #, python-format
msgid "Author: %(name)s" msgid "Author: %(name)s"
msgstr "" msgstr ""
#: cps/web.py:714 #: cps/web.py:715
#, python-format #, python-format
msgid "Publisher: %(name)s" msgid "Publisher: %(name)s"
msgstr "出版社: %(name)s" msgstr "出版社: %(name)s"
#: cps/web.py:725 #: cps/web.py:726
#, python-format #, python-format
msgid "Series: %(serie)s" msgid "Series: %(serie)s"
msgstr "シリーズ: %(serie)s" msgstr "シリーズ: %(serie)s"
#: cps/web.py:736 #: cps/web.py:737
#, python-format #, python-format
msgid "Rating: %(rating)s stars" msgid "Rating: %(rating)s stars"
msgstr "" msgstr ""
#: cps/web.py:748 #: cps/web.py:749
#, python-format #, python-format
msgid "File format: %(format)s" msgid "File format: %(format)s"
msgstr "" msgstr ""
#: cps/web.py:760 #: cps/web.py:761
#, python-format #, python-format
msgid "Category: %(name)s" msgid "Category: %(name)s"
msgstr "カテゴリ: %(name)s" msgstr "カテゴリ: %(name)s"
#: cps/web.py:777 #: cps/web.py:778
#, python-format #, python-format
msgid "Language: %(name)s" msgid "Language: %(name)s"
msgstr "言語: %(name)s" msgstr "言語: %(name)s"
#: cps/web.py:839 #: cps/web.py:840
msgid "Ratings list" msgid "Ratings list"
msgstr "" msgstr ""
#: cps/web.py:852 #: cps/web.py:853
msgid "File formats list" msgid "File formats list"
msgstr "" msgstr ""
#: cps/templates/layout.html:73 cps/templates/tasks.html:7 cps/web.py:911 #: cps/templates/layout.html:73 cps/templates/tasks.html:7 cps/web.py:912
msgid "Tasks" msgid "Tasks"
msgstr "タスク" msgstr "タスク"
#: cps/templates/book_edit.html:235 cps/templates/feed.xml:33 #: cps/templates/book_edit.html:235 cps/templates/feed.xml:33
#: cps/templates/layout.html:44 cps/templates/layout.html:47 #: cps/templates/layout.html:44 cps/templates/layout.html:47
#: cps/templates/search_form.html:170 cps/web.py:937 cps/web.py:942 #: cps/templates/search_form.html:174 cps/web.py:938 cps/web.py:943
msgid "Search" msgid "Search"
msgstr "検索" msgstr "検索"
#: cps/web.py:993 #: cps/web.py:994
msgid "Published after " msgid "Published after "
msgstr "これ以降に出版 " msgstr "これ以降に出版 "
#: cps/web.py:1000 #: cps/web.py:1001
msgid "Published before " msgid "Published before "
msgstr "これ以前に出版 " msgstr "これ以前に出版 "
#: cps/web.py:1014 #: cps/web.py:1015
#, python-format #, python-format
msgid "Rating <= %(rating)s" msgid "Rating <= %(rating)s"
msgstr "評価 <= %(rating)s" msgstr "評価 <= %(rating)s"
#: cps/web.py:1016 #: cps/web.py:1017
#, python-format #, python-format
msgid "Rating >= %(rating)s" msgid "Rating >= %(rating)s"
msgstr "評価 >= %(rating)s" msgstr "評価 >= %(rating)s"
#: cps/web.py:1082 cps/web.py:1096 #: cps/web.py:1083 cps/web.py:1097
msgid "search" msgid "search"
msgstr "検索" msgstr "検索"
#: cps/web.py:1201 #: cps/web.py:1206
#, python-format #, python-format
msgid "Book successfully queued for sending to %(kindlemail)s" msgid "Book successfully queued for sending to %(kindlemail)s"
msgstr "本の %(kindlemail)s への送信がキューに追加されました" msgstr "本の %(kindlemail)s への送信がキューに追加されました"
#: cps/web.py:1205 #: cps/web.py:1210
#, python-format #, python-format
msgid "Oops! There was an error sending this book: %(res)s" msgid "Oops! There was an error sending this book: %(res)s"
msgstr "%(res)s を送信中にエラーが発生しました" msgstr "%(res)s を送信中にエラーが発生しました"
#: cps/web.py:1207 #: cps/web.py:1212
msgid "Please update your profile with a valid Send to Kindle E-mail Address." msgid "Please update your profile with a valid Send to Kindle E-mail Address."
msgstr "初めにKindleのメールアドレスを設定してください" msgstr "初めにKindleのメールアドレスを設定してください"
#: cps/web.py:1224 #: cps/web.py:1229
msgid "E-Mail server is not configured, please contact your administrator!" msgid "E-Mail server is not configured, please contact your administrator!"
msgstr "" msgstr ""
#: cps/web.py:1225 cps/web.py:1231 cps/web.py:1256 cps/web.py:1260 #: cps/web.py:1230 cps/web.py:1236 cps/web.py:1261 cps/web.py:1265
#: cps/web.py:1265 cps/web.py:1269 #: cps/web.py:1270 cps/web.py:1274
msgid "register" msgid "register"
msgstr "登録" msgstr "登録"
#: cps/web.py:1258 #: cps/web.py:1263
msgid "Your e-mail is not allowed to register" msgid "Your e-mail is not allowed to register"
msgstr "このメールアドレスは登録が許可されていません" msgstr "このメールアドレスは登録が許可されていません"
#: cps/web.py:1261 #: cps/web.py:1266
msgid "Confirmation e-mail was send to your e-mail account." msgid "Confirmation e-mail was send to your e-mail account."
msgstr "確認メールがこのメールアドレスに送信されました。" msgstr "確認メールがこのメールアドレスに送信されました。"
#: cps/web.py:1264 #: cps/web.py:1269
msgid "This username or e-mail address is already in use." msgid "This username or e-mail address is already in use."
msgstr "このユーザ名またはメールアドレスはすでに使われています。" msgstr "このユーザ名またはメールアドレスはすでに使われています。"
#: cps/web.py:1281 #: cps/web.py:1286
msgid "Cannot activate LDAP authentication" msgid "Cannot activate LDAP authentication"
msgstr "" msgstr ""
#: cps/web.py:1298 #: cps/web.py:1303
#, python-format #, python-format
msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known"
msgstr "" msgstr ""
#: cps/web.py:1304 #: cps/web.py:1309
#, python-format #, python-format
msgid "Could not login: %(message)s" msgid "Could not login: %(message)s"
msgstr "" msgstr ""
#: cps/web.py:1308 cps/web.py:1332 #: cps/web.py:1313 cps/web.py:1337
msgid "Wrong Username or Password" msgid "Wrong Username or Password"
msgstr "ユーザ名またはパスワードが違います" msgstr "ユーザ名またはパスワードが違います"
#: cps/web.py:1315 #: cps/web.py:1320
msgid "New Password was send to your email address" msgid "New Password was send to your email address"
msgstr "" msgstr ""
#: cps/web.py:1321 #: cps/web.py:1326
msgid "Please enter valid username to reset password" msgid "Please enter valid username to reset password"
msgstr "" msgstr ""
#: cps/web.py:1327 #: cps/web.py:1332
#, python-format #, python-format
msgid "You are now logged in as: '%(nickname)s'" msgid "You are now logged in as: '%(nickname)s'"
msgstr "" msgstr ""
#: cps/web.py:1336 cps/web.py:1363 #: cps/web.py:1341 cps/web.py:1368
msgid "login" msgid "login"
msgstr "ログイン" msgstr "ログイン"
#: cps/web.py:1375 cps/web.py:1409 #: cps/web.py:1380 cps/web.py:1414
msgid "Token not found" msgid "Token not found"
msgstr "トークンが見つかりません" msgstr "トークンが見つかりません"
#: cps/web.py:1384 cps/web.py:1417 #: cps/web.py:1389 cps/web.py:1422
msgid "Token has expired" msgid "Token has expired"
msgstr "トークンが無効です" msgstr "トークンが無効です"
#: cps/web.py:1393 #: cps/web.py:1398
msgid "Success! Please return to your device" msgid "Success! Please return to your device"
msgstr "成功です!端末に戻ってください" msgstr "成功です!端末に戻ってください"
#: cps/web.py:1474 cps/web.py:1519 cps/web.py:1525 #: cps/web.py:1479 cps/web.py:1524 cps/web.py:1530
#, python-format #, python-format
msgid "%(name)s's profile" msgid "%(name)s's profile"
msgstr "%(name)s のプロフィール" msgstr "%(name)s のプロフィール"
#: cps/web.py:1521 #: cps/web.py:1526
msgid "Profile updated" msgid "Profile updated"
msgstr "プロフィールを更新しました" msgstr "プロフィールを更新しました"
#: cps/web.py:1538 cps/web.py:1642 #: cps/web.py:1543 cps/web.py:1647
msgid "Error opening eBook. File does not exist or file is not accessible:" msgid "Error opening eBook. File does not exist or file is not accessible:"
msgstr "電子書籍を開けません。ファイルが存在しないかアクセスできません:" msgstr "電子書籍を開けません。ファイルが存在しないかアクセスできません:"
#: cps/web.py:1550 cps/web.py:1553 cps/web.py:1556 cps/web.py:1563 #: cps/web.py:1555 cps/web.py:1558 cps/web.py:1561 cps/web.py:1568
#: cps/web.py:1568 #: cps/web.py:1573
msgid "Read a Book" msgid "Read a Book"
msgstr "本を読む" msgstr "本を読む"
#: cps/web.py:1579 #: cps/web.py:1584
msgid "Error opening eBook. File does not exist or file is not accessible." msgid "Error opening eBook. File does not exist or file is not accessible."
msgstr "" msgstr ""
@ -1296,13 +1296,13 @@ msgid "In Library"
msgstr "ライブラリ内" msgstr "ライブラリ内"
#: cps/templates/author.html:34 cps/templates/list.html:14 #: cps/templates/author.html:34 cps/templates/list.html:14
#: cps/templates/search.html:41 #: cps/templates/search.html:38
msgid "All" msgid "All"
msgstr "" msgstr ""
#: cps/templates/author.html:58 cps/templates/author.html:110 #: cps/templates/author.html:58 cps/templates/author.html:110
#: cps/templates/discover.html:27 cps/templates/index.html:26 #: cps/templates/discover.html:27 cps/templates/index.html:26
#: cps/templates/index.html:89 cps/templates/search.html:67 #: cps/templates/index.html:89 cps/templates/search.html:64
#: cps/templates/shelf.html:36 #: cps/templates/shelf.html:36
msgid "reduce" msgid "reduce"
msgstr "減らす" msgstr "減らす"
@ -1931,6 +1931,12 @@ msgstr "詳細:"
msgid "Add to shelf" msgid "Add to shelf"
msgstr "本棚に追加" msgstr "本棚に追加"
#: cps/templates/detail.html:243 cps/templates/detail.html:260
#: cps/templates/feed.xml:79 cps/templates/layout.html:136
#: cps/templates/layout.html:140 cps/templates/search.html:20
msgid "(Public)"
msgstr ""
#: cps/templates/detail.html:274 #: cps/templates/detail.html:274
msgid "Edit Metadata" msgid "Edit Metadata"
msgstr "" msgstr ""
@ -1979,11 +1985,6 @@ msgstr ""
msgid "Next" msgid "Next"
msgstr "次" msgstr "次"
#: cps/templates/feed.xml:79 cps/templates/layout.html:136
#: cps/templates/layout.html:140
msgid "(Public)"
msgstr ""
#: cps/templates/generate_kobo_auth_url.html:5 #: cps/templates/generate_kobo_auth_url.html:5
msgid "Open the .kobo/Kobo eReader.conf file in a text editor and add (or edit):" msgid "Open the .kobo/Kobo eReader.conf file in a text editor and add (or edit):"
msgstr "" msgstr ""

View File

@ -8,7 +8,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Calibre-Web\n" "Project-Id-Version: Calibre-Web\n"
"Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n" "Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n"
"POT-Creation-Date: 2020-05-01 17:15+0200\n" "POT-Creation-Date: 2020-05-23 08:46+0200\n"
"PO-Revision-Date: 2018-08-27 17:06+0700\n" "PO-Revision-Date: 2018-08-27 17:06+0700\n"
"Last-Translator: \n" "Last-Translator: \n"
"Language: km_KH\n" "Language: km_KH\n"
@ -47,9 +47,9 @@ msgstr ""
msgid "Unknown command" msgid "Unknown command"
msgstr "" msgstr ""
#: cps/admin.py:115 cps/editbooks.py:504 cps/editbooks.py:514 #: cps/admin.py:115 cps/editbooks.py:505 cps/editbooks.py:515
#: cps/editbooks.py:620 cps/editbooks.py:622 cps/editbooks.py:688 #: cps/editbooks.py:621 cps/editbooks.py:623 cps/editbooks.py:689
#: cps/updater.py:509 cps/uploader.py:99 cps/uploader.py:110 #: cps/updater.py:509 cps/uploader.py:100 cps/uploader.py:110
msgid "Unknown" msgid "Unknown"
msgstr "មិនដឹង" msgstr "មិនដឹង"
@ -61,223 +61,223 @@ msgstr "ទំព័ររដ្ឋបាល"
msgid "UI Configuration" msgid "UI Configuration"
msgstr "ការកំណត់ផ្ទាំងប្រើប្រាស់" msgstr "ការកំណត់ផ្ទាំងប្រើប្រាស់"
#: cps/admin.py:192 cps/admin.py:674 #: cps/admin.py:189 cps/admin.py:671
msgid "Calibre-Web configuration updated" msgid "Calibre-Web configuration updated"
msgstr "" msgstr ""
#: cps/admin.py:438 cps/admin.py:444 cps/admin.py:455 cps/admin.py:466 #: cps/admin.py:435 cps/admin.py:441 cps/admin.py:452 cps/admin.py:463
#: cps/templates/modal_restriction.html:29 #: cps/templates/modal_restriction.html:29
msgid "Deny" msgid "Deny"
msgstr "" msgstr ""
#: cps/admin.py:440 cps/admin.py:446 cps/admin.py:457 cps/admin.py:468 #: cps/admin.py:437 cps/admin.py:443 cps/admin.py:454 cps/admin.py:465
#: cps/templates/modal_restriction.html:28 #: cps/templates/modal_restriction.html:28
msgid "Allow" msgid "Allow"
msgstr "" msgstr ""
#: cps/admin.py:509 #: cps/admin.py:506
msgid "client_secrets.json Is Not Configured For Web Application" msgid "client_secrets.json Is Not Configured For Web Application"
msgstr "" msgstr ""
#: cps/admin.py:525 #: cps/admin.py:522
msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgid "Keyfile Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:529 #: cps/admin.py:526
msgid "Certfile Location is not Valid, Please Enter Correct Path" msgid "Certfile Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:567 #: cps/admin.py:564
msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier"
msgstr "" msgstr ""
#: cps/admin.py:585 #: cps/admin.py:582
#, python-format #, python-format
msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier"
msgstr "" msgstr ""
#: cps/admin.py:588 #: cps/admin.py:585
msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgid "LDAP Group Object Filter Has Unmatched Parenthesis"
msgstr "" msgstr ""
#: cps/admin.py:592 #: cps/admin.py:589
#, python-format #, python-format
msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier"
msgstr "" msgstr ""
#: cps/admin.py:595 #: cps/admin.py:592
msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgid "LDAP User Object Filter Has Unmatched Parenthesis"
msgstr "" msgstr ""
#: cps/admin.py:599 #: cps/admin.py:596
msgid "LDAP Certificate Location is not Valid, Please Enter Correct Path" msgid "LDAP Certificate Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:647 #: cps/admin.py:644
msgid "Logfile Location is not Valid, Please Enter Correct Path" msgid "Logfile Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:652 #: cps/admin.py:649
msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgid "Access Logfile Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:671 #: cps/admin.py:668
msgid "DB Location is not Valid, Please Enter Correct Path" msgid "DB Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:704 #: cps/admin.py:701
msgid "Basic Configuration" msgid "Basic Configuration"
msgstr "ការកំណត់សាមញ្ញ" msgstr "ការកំណត់សាមញ្ញ"
#: cps/admin.py:728 cps/web.py:1230 #: cps/admin.py:725 cps/web.py:1235
msgid "Please fill out all fields!" msgid "Please fill out all fields!"
msgstr "សូមបំពេញចន្លោះទាំងអស់!" msgstr "សូមបំពេញចន្លោះទាំងអស់!"
#: cps/admin.py:731 cps/admin.py:743 cps/admin.py:749 cps/admin.py:767 #: cps/admin.py:728 cps/admin.py:740 cps/admin.py:746 cps/admin.py:764
msgid "Add new user" msgid "Add new user"
msgstr "បន្ថែមអ្នកប្រើប្រាស់ថ្មី" msgstr "បន្ថែមអ្នកប្រើប្រាស់ថ្មី"
#: cps/admin.py:740 cps/web.py:1472 #: cps/admin.py:737 cps/web.py:1477
msgid "E-mail is not from valid domain" msgid "E-mail is not from valid domain"
msgstr "" msgstr ""
#: cps/admin.py:747 cps/admin.py:762 #: cps/admin.py:744 cps/admin.py:759
msgid "Found an existing account for this e-mail address or nickname." msgid "Found an existing account for this e-mail address or nickname."
msgstr "" msgstr ""
#: cps/admin.py:758 #: cps/admin.py:755
#, python-format #, python-format
msgid "User '%(user)s' created" msgid "User '%(user)s' created"
msgstr "បានបង្កើតអ្នកប្រើប្រាស់ %(user)s" msgstr "បានបង្កើតអ្នកប្រើប្រាស់ %(user)s"
#: cps/admin.py:777 #: cps/admin.py:774
msgid "Edit e-mail server settings" msgid "Edit e-mail server settings"
msgstr "" msgstr ""
#: cps/admin.py:803 #: cps/admin.py:800
#, python-format #, python-format
msgid "Test e-mail successfully send to %(kindlemail)s" msgid "Test e-mail successfully send to %(kindlemail)s"
msgstr "" msgstr ""
#: cps/admin.py:806 #: cps/admin.py:803
#, python-format #, python-format
msgid "There was an error sending the Test e-mail: %(res)s" msgid "There was an error sending the Test e-mail: %(res)s"
msgstr "" msgstr ""
#: cps/admin.py:808 #: cps/admin.py:805
msgid "Please configure your e-mail address first..." msgid "Please configure your e-mail address first..."
msgstr "" msgstr ""
#: cps/admin.py:810 #: cps/admin.py:807
msgid "E-mail server settings updated" msgid "E-mail server settings updated"
msgstr "" msgstr ""
#: cps/admin.py:821 #: cps/admin.py:818
msgid "User not found" msgid "User not found"
msgstr "" msgstr ""
#: cps/admin.py:842 #: cps/admin.py:839
#, python-format #, python-format
msgid "User '%(nick)s' deleted" msgid "User '%(nick)s' deleted"
msgstr "អ្នកប្រើប្រាស់ %(nick)s ត្រូវបានលុប" msgstr "អ្នកប្រើប្រាស់ %(nick)s ត្រូវបានលុប"
#: cps/admin.py:845 #: cps/admin.py:842
msgid "No admin user remaining, can't delete user" msgid "No admin user remaining, can't delete user"
msgstr "" msgstr ""
#: cps/admin.py:851 #: cps/admin.py:848
msgid "No admin user remaining, can't remove admin role" msgid "No admin user remaining, can't remove admin role"
msgstr "" msgstr ""
#: cps/admin.py:887 cps/web.py:1515 #: cps/admin.py:884 cps/web.py:1520
msgid "Found an existing account for this e-mail address." msgid "Found an existing account for this e-mail address."
msgstr "" msgstr ""
#: cps/admin.py:897 cps/admin.py:912 cps/admin.py:932 cps/web.py:1490 #: cps/admin.py:894 cps/admin.py:909 cps/admin.py:929 cps/web.py:1495
#, python-format #, python-format
msgid "Edit User %(nick)s" msgid "Edit User %(nick)s"
msgstr "កែប្រែអ្នកប្រើប្រាស់ %(nick)s" msgstr "កែប្រែអ្នកប្រើប្រាស់ %(nick)s"
#: cps/admin.py:903 cps/web.py:1482 #: cps/admin.py:900 cps/web.py:1487
msgid "This username is already taken" msgid "This username is already taken"
msgstr "" msgstr ""
#: cps/admin.py:919 #: cps/admin.py:916
#, python-format #, python-format
msgid "User '%(nick)s' updated" msgid "User '%(nick)s' updated"
msgstr "អ្នកប្រើប្រាស់ %(nick)s ត្រូវបានកែប្រែ" msgstr "អ្នកប្រើប្រាស់ %(nick)s ត្រូវបានកែប្រែ"
#: cps/admin.py:922 #: cps/admin.py:919
msgid "An unknown error occured." msgid "An unknown error occured."
msgstr "បញ្ហាដែលមិនដឹងបានកើតឡើង។" msgstr "បញ្ហាដែលមិនដឹងបានកើតឡើង។"
#: cps/admin.py:943 #: cps/admin.py:940
#, python-format #, python-format
msgid "Password for user %(user)s reset" msgid "Password for user %(user)s reset"
msgstr "" msgstr ""
#: cps/admin.py:946 cps/web.py:1255 cps/web.py:1319 #: cps/admin.py:943 cps/web.py:1260 cps/web.py:1324
msgid "An unknown error occurred. Please try again later." msgid "An unknown error occurred. Please try again later."
msgstr "" msgstr ""
#: cps/admin.py:949 cps/web.py:1196 #: cps/admin.py:946 cps/web.py:1201
msgid "Please configure the SMTP mail settings first..." msgid "Please configure the SMTP mail settings first..."
msgstr "សូមកំណត់អ៊ីមែល SMTP ជាមុនសិន" msgstr "សូមកំណត់អ៊ីមែល SMTP ជាមុនសិន"
#: cps/admin.py:961 #: cps/admin.py:958
msgid "Logfile viewer" msgid "Logfile viewer"
msgstr "" msgstr ""
#: cps/admin.py:1000 #: cps/admin.py:997
msgid "Requesting update package" msgid "Requesting update package"
msgstr "កំពុងស្នើសុំឯកសារបច្ចុប្បន្នភាព" msgstr "កំពុងស្នើសុំឯកសារបច្ចុប្បន្នភាព"
#: cps/admin.py:1001 #: cps/admin.py:998
msgid "Downloading update package" msgid "Downloading update package"
msgstr "កំពុងទាញយកឯកសារបច្ចុប្បន្នភាព" msgstr "កំពុងទាញយកឯកសារបច្ចុប្បន្នភាព"
#: cps/admin.py:1002 #: cps/admin.py:999
msgid "Unzipping update package" msgid "Unzipping update package"
msgstr "កំពុងពន្លាឯកសារបច្ចុប្បន្នភាព" msgstr "កំពុងពន្លាឯកសារបច្ចុប្បន្នភាព"
#: cps/admin.py:1003 #: cps/admin.py:1000
msgid "Replacing files" msgid "Replacing files"
msgstr "" msgstr ""
#: cps/admin.py:1004 #: cps/admin.py:1001
msgid "Database connections are closed" msgid "Database connections are closed"
msgstr "ទំនាក់ទំនងទៅមូលដ្ឋានទិន្នន័យត្រូវបានផ្តាច់" msgstr "ទំនាក់ទំនងទៅមូលដ្ឋានទិន្នន័យត្រូវបានផ្តាច់"
#: cps/admin.py:1005 #: cps/admin.py:1002
msgid "Stopping server" msgid "Stopping server"
msgstr "" msgstr ""
#: cps/admin.py:1006 #: cps/admin.py:1003
msgid "Update finished, please press okay and reload page" msgid "Update finished, please press okay and reload page"
msgstr "ការធ្វើបច្ចុប្បន្នភាពបានបញ្ចប់ សូមចុច okay រួចបើកទំព័រជាថ្មី" msgstr "ការធ្វើបច្ចុប្បន្នភាពបានបញ្ចប់ សូមចុច okay រួចបើកទំព័រជាថ្មី"
#: cps/admin.py:1007 cps/admin.py:1008 cps/admin.py:1009 cps/admin.py:1010 #: cps/admin.py:1004 cps/admin.py:1005 cps/admin.py:1006 cps/admin.py:1007
#: cps/admin.py:1011 #: cps/admin.py:1008
msgid "Update failed:" msgid "Update failed:"
msgstr "" msgstr ""
#: cps/admin.py:1007 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522 #: cps/admin.py:1004 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522
msgid "HTTP Error" msgid "HTTP Error"
msgstr "" msgstr ""
#: cps/admin.py:1008 cps/updater.py:321 cps/updater.py:524 #: cps/admin.py:1005 cps/updater.py:321 cps/updater.py:524
msgid "Connection error" msgid "Connection error"
msgstr "" msgstr ""
#: cps/admin.py:1009 cps/updater.py:323 cps/updater.py:526 #: cps/admin.py:1006 cps/updater.py:323 cps/updater.py:526
msgid "Timeout while establishing connection" msgid "Timeout while establishing connection"
msgstr "" msgstr ""
#: cps/admin.py:1010 cps/updater.py:325 cps/updater.py:528 #: cps/admin.py:1007 cps/updater.py:325 cps/updater.py:528
msgid "General error" msgid "General error"
msgstr "" msgstr ""
#: cps/admin.py:1011 #: cps/admin.py:1008
msgid "Update File Could Not be Saved in Temp Dir" msgid "Update File Could Not be Saved in Temp Dir"
msgstr "" msgstr ""
@ -293,7 +293,7 @@ msgstr ""
msgid "Book Successfully Deleted" msgid "Book Successfully Deleted"
msgstr "" msgstr ""
#: cps/editbooks.py:253 cps/editbooks.py:489 #: cps/editbooks.py:253 cps/editbooks.py:490
msgid "Error opening eBook. File does not exist or file is not accessible" msgid "Error opening eBook. File does not exist or file is not accessible"
msgstr "មានបញ្ហាពេលបើកឯកសារ eBook ។ ពុំមានឯកសារ ឬឯកសារនេះមិនអាចបើកបាន" msgstr "មានបញ្ហាពេលបើកឯកសារ eBook ។ ពុំមានឯកសារ ឬឯកសារនេះមិនអាចបើកបាន"
@ -306,16 +306,16 @@ msgstr "កែប្រែទិន្នន័យមេតា"
msgid "%(langname)s is not a valid language" msgid "%(langname)s is not a valid language"
msgstr "" msgstr ""
#: cps/editbooks.py:413 cps/editbooks.py:663 #: cps/editbooks.py:413 cps/editbooks.py:664
#, python-format #, python-format
msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgid "File extension '%(ext)s' is not allowed to be uploaded to this server"
msgstr "ឯកសារប្រភេទ '%(ext)s' មិនត្រូវបានអនុញ្ញាតឲអាប់ឡូដទៅម៉ាស៊ីន server នេះទេ" msgstr "ឯកសារប្រភេទ '%(ext)s' មិនត្រូវបានអនុញ្ញាតឲអាប់ឡូដទៅម៉ាស៊ីន server នេះទេ"
#: cps/editbooks.py:417 cps/editbooks.py:667 #: cps/editbooks.py:417 cps/editbooks.py:668
msgid "File to be uploaded must have an extension" msgid "File to be uploaded must have an extension"
msgstr "ឯកសារដែលត្រូវអាប់ឡូដត្រូវមានកន្ទុយឯកសារ" msgstr "ឯកសារដែលត្រូវអាប់ឡូដត្រូវមានកន្ទុយឯកសារ"
#: cps/editbooks.py:429 cps/editbooks.py:701 #: cps/editbooks.py:429 cps/editbooks.py:702
#, python-format #, python-format
msgid "Failed to create path %(path)s (Permission denied)." msgid "Failed to create path %(path)s (Permission denied)."
msgstr "មិនអាចបង្កើតទីតាំង %(path)s (ពុំមានសិទ្ធិ)។" msgstr "មិនអាចបង្កើតទីតាំង %(path)s (ពុំមានសិទ្ធិ)។"
@ -330,48 +330,48 @@ msgstr "មិនអាចរក្សាទុកឯកសារ %(file)s ។"
msgid "File format %(ext)s added to %(book)s" msgid "File format %(ext)s added to %(book)s"
msgstr "ឯកសារទម្រង់ %(ext)s ត្រូវបានបន្ថែមទៅ %(book)s" msgstr "ឯកសារទម្រង់ %(ext)s ត្រូវបានបន្ថែមទៅ %(book)s"
#: cps/editbooks.py:606 #: cps/editbooks.py:607
msgid "Metadata successfully updated" msgid "Metadata successfully updated"
msgstr "" msgstr ""
#: cps/editbooks.py:615 #: cps/editbooks.py:616
msgid "Error editing book, please check logfile for details" msgid "Error editing book, please check logfile for details"
msgstr "មានបញ្ហាពេលកែប្រែសៀវភៅ សូមពិនិត្យមើល logfile សម្រាប់ព័ត៌មានបន្ថែម" msgstr "មានបញ្ហាពេលកែប្រែសៀវភៅ សូមពិនិត្យមើល logfile សម្រាប់ព័ត៌មានបន្ថែម"
#: cps/editbooks.py:675 #: cps/editbooks.py:676
#, python-format #, python-format
msgid "File %(filename)s could not saved to temp dir" msgid "File %(filename)s could not saved to temp dir"
msgstr "" msgstr ""
#: cps/editbooks.py:692 #: cps/editbooks.py:693
msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgid "Uploaded book probably exists in the library, consider to change before upload new: "
msgstr "" msgstr ""
#: cps/editbooks.py:707 #: cps/editbooks.py:709
#, python-format #, python-format
msgid "Failed to store file %(file)s (Permission denied)." msgid "Failed to Move File %(file)s: %(error)s"
msgstr "មិនអាចរក្សាទុកឯកសារ %(file)s (មិនមានសិទ្ធិ)។" msgstr ""
#: cps/editbooks.py:713 #: cps/editbooks.py:723
#, python-format #, python-format
msgid "Failed to delete file %(file)s (Permission denied)." msgid "Failed to Move Cover File %(file)s: %(error)s"
msgstr "មិនអាចលុបឯកសារ %(file)s (មិនមានសិទ្ធិ)។" msgstr ""
#: cps/editbooks.py:804 #: cps/editbooks.py:808
#, python-format #, python-format
msgid "File %(file)s uploaded" msgid "File %(file)s uploaded"
msgstr "" msgstr ""
#: cps/editbooks.py:833 #: cps/editbooks.py:837
msgid "Source or destination format for conversion missing" msgid "Source or destination format for conversion missing"
msgstr "" msgstr ""
#: cps/editbooks.py:841 #: cps/editbooks.py:845
#, python-format #, python-format
msgid "Book successfully queued for converting to %(book_format)s" msgid "Book successfully queued for converting to %(book_format)s"
msgstr "" msgstr ""
#: cps/editbooks.py:845 #: cps/editbooks.py:849
#, python-format #, python-format
msgid "There was an error converting this book: %(res)s" msgid "There was an error converting this book: %(res)s"
msgstr "" msgstr ""
@ -445,111 +445,111 @@ msgstr "អ៊ីមែល៖ %(book)s"
msgid "The requested file could not be read. Maybe wrong permissions?" msgid "The requested file could not be read. Maybe wrong permissions?"
msgstr "ឯកសារដែលបានស្នើសុំមិនអាចបើកបានទេ។ អាចនឹងខុសសិទ្ធិប្រើប្រាស់ទេដឹង?" msgstr "ឯកសារដែលបានស្នើសុំមិនអាចបើកបានទេ។ អាចនឹងខុសសិទ្ធិប្រើប្រាស់ទេដឹង?"
#: cps/helper.py:299 #: cps/helper.py:300
#, python-format #, python-format
msgid "Deleting book %(id)s failed, path has subfolders: %(path)s" msgid "Deleting book %(id)s failed, path has subfolders: %(path)s"
msgstr "" msgstr ""
#: cps/helper.py:309 #: cps/helper.py:310
#, python-format #, python-format
msgid "Deleting book %(id)s failed: %(message)s" msgid "Deleting book %(id)s failed: %(message)s"
msgstr "" msgstr ""
#: cps/helper.py:319 #: cps/helper.py:320
#, python-format #, python-format
msgid "Deleting book %(id)s failed, book path not valid: %(path)s" msgid "Deleting book %(id)s failed, book path not valid: %(path)s"
msgstr "" msgstr ""
#: cps/helper.py:354 #: cps/helper.py:355
#, python-format #, python-format
msgid "Rename title from: '%(src)s' to '%(dest)s' failed with error: %(error)s" 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:364 #: cps/helper.py:365
#, python-format #, python-format
msgid "Rename author from: '%(src)s' to '%(dest)s' failed with error: %(error)s" 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:378 #: cps/helper.py:379
#, python-format #, python-format
msgid "Rename file in path '%(src)s' to '%(dest)s' failed with error: %(error)s" msgid "Rename file in path '%(src)s' to '%(dest)s' failed with error: %(error)s"
msgstr "" msgstr ""
#: cps/helper.py:404 cps/helper.py:414 cps/helper.py:422 #: cps/helper.py:405 cps/helper.py:415 cps/helper.py:423
#, python-format #, python-format
msgid "File %(file)s not found on Google Drive" msgid "File %(file)s not found on Google Drive"
msgstr "ឯកសារ %(file)s រកមិនឃើញក្នុង Google Drive" msgstr "ឯកសារ %(file)s រកមិនឃើញក្នុង Google Drive"
#: cps/helper.py:443 #: cps/helper.py:444
#, python-format #, python-format
msgid "Book path %(path)s not found on Google Drive" msgid "Book path %(path)s not found on Google Drive"
msgstr "ទីតាំងសៀវភៅ %(path)s រកមិនឃើញក្នុង Google Drive" msgstr "ទីតាំងសៀវភៅ %(path)s រកមិនឃើញក្នុង Google Drive"
#: cps/helper.py:550 #: cps/helper.py:551
msgid "Failed to create path for cover" msgid "Failed to create path for cover"
msgstr "" msgstr ""
#: cps/helper.py:555 #: cps/helper.py:556
msgid "Cover-file is not a valid image file, or could not be stored" msgid "Cover-file is not a valid image file, or could not be stored"
msgstr "" msgstr ""
#: cps/helper.py:566 #: cps/helper.py:567
msgid "Only jpg/jpeg/png/webp files are supported as coverfile" msgid "Only jpg/jpeg/png/webp files are supported as coverfile"
msgstr "" msgstr ""
#: cps/helper.py:580 #: cps/helper.py:581
msgid "Only jpg/jpeg files are supported as coverfile" msgid "Only jpg/jpeg files are supported as coverfile"
msgstr "" msgstr ""
#: cps/helper.py:622 #: cps/helper.py:625
msgid "Unrar binary file not found" msgid "Unrar binary file not found"
msgstr "" msgstr ""
#: cps/helper.py:635 #: cps/helper.py:638
msgid "Error excecuting UnRar" msgid "Error excecuting UnRar"
msgstr "" msgstr ""
#: cps/helper.py:691 #: cps/helper.py:694
msgid "Waiting" msgid "Waiting"
msgstr "កំពុងរង់ចាំ" msgstr "កំពុងរង់ចាំ"
#: cps/helper.py:693 #: cps/helper.py:696
msgid "Failed" msgid "Failed"
msgstr "បានបរាជ័យ" msgstr "បានបរាជ័យ"
#: cps/helper.py:695 #: cps/helper.py:698
msgid "Started" msgid "Started"
msgstr "បានចាប់ផ្តើម" msgstr "បានចាប់ផ្តើម"
#: cps/helper.py:697 #: cps/helper.py:700
msgid "Finished" msgid "Finished"
msgstr "បានបញ្ចប់" msgstr "បានបញ្ចប់"
#: cps/helper.py:699 #: cps/helper.py:702
msgid "Unknown Status" msgid "Unknown Status"
msgstr "" msgstr ""
#: cps/helper.py:704 #: cps/helper.py:707
msgid "E-mail: " msgid "E-mail: "
msgstr "" msgstr ""
#: cps/helper.py:706 cps/helper.py:710 #: cps/helper.py:709 cps/helper.py:713
msgid "Convert: " msgid "Convert: "
msgstr "" msgstr ""
#: cps/helper.py:708 #: cps/helper.py:711
msgid "Upload: " msgid "Upload: "
msgstr "" msgstr ""
#: cps/helper.py:712 #: cps/helper.py:715
msgid "Unknown Task: " msgid "Unknown Task: "
msgstr "" msgstr ""
#: cps/kobo_auth.py:126 #: cps/kobo_auth.py:130
msgid "PLease access calibre-web from non localhost to get valid api_endpoint for kobo device" msgid "PLease access calibre-web from non localhost to get valid api_endpoint for kobo device"
msgstr "" msgstr ""
#: cps/kobo_auth.py:129 cps/kobo_auth.py:149 #: cps/kobo_auth.py:133 cps/kobo_auth.py:153
msgid "Kobo Setup" msgid "Kobo Setup"
msgstr "" msgstr ""
@ -574,7 +574,7 @@ msgstr ""
msgid "Failed to fetch user info from Google." msgid "Failed to fetch user info from Google."
msgstr "" msgstr ""
#: cps/oauth_bb.py:225 cps/web.py:1291 cps/web.py:1431 #: cps/oauth_bb.py:225 cps/web.py:1296 cps/web.py:1436
#, python-format #, python-format
msgid "you are now logged in as: '%(nickname)s'" msgid "you are now logged in as: '%(nickname)s'"
msgstr "ឥឡូវអ្នកបានចូលដោយមានឈ្មោះថា៖ %(nickname)s" msgstr "ឥឡូវអ្នកបានចូលដោយមានឈ្មោះថា៖ %(nickname)s"
@ -726,7 +726,7 @@ msgstr "សៀវភៅដែលមានប្រជាប្រិយភាព
msgid "Show Hot Books" msgid "Show Hot Books"
msgstr "បង្ហាញសៀវភៅដែលមានប្រជាប្រិយភាព" msgstr "បង្ហាញសៀវភៅដែលមានប្រជាប្រិយភាព"
#: cps/templates/index.xml:24 cps/ub.py:70 cps/web.py:615 #: cps/templates/index.xml:24 cps/ub.py:70 cps/web.py:616
msgid "Top Rated Books" msgid "Top Rated Books"
msgstr "សៀវភៅដែលមានការវាយតម្លៃល្អជាងគេ" msgstr "សៀវភៅដែលមានការវាយតម្លៃល្អជាងគេ"
@ -735,7 +735,7 @@ msgid "Show Top Rated Books"
msgstr "បង្ហាញសៀវភៅដែលមានការវាយតម្លៃល្អជាងគេ" msgstr "បង្ហាញសៀវភៅដែលមានការវាយតម្លៃល្អជាងគេ"
#: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:73 #: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:73
#: cps/web.py:1125 #: cps/web.py:1131
msgid "Read Books" msgid "Read Books"
msgstr "សៀវភៅដែលបានអានរួច" msgstr "សៀវភៅដែលបានអានរួច"
@ -744,7 +744,7 @@ msgid "Show read and unread"
msgstr "បង្ហាញអានរួច និងមិនទាន់អាន" msgstr "បង្ហាញអានរួច និងមិនទាន់អាន"
#: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:77 #: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:77
#: cps/web.py:1129 #: cps/web.py:1134
msgid "Unread Books" msgid "Unread Books"
msgstr "សៀវភៅដែលមិនទាន់បានអាន" msgstr "សៀវភៅដែលមិនទាន់បានអាន"
@ -760,7 +760,7 @@ msgstr "ស្រាវជ្រាវ"
msgid "Show random books" msgid "Show random books"
msgstr "បង្ហាញសៀវភៅចៃដន្យ" msgstr "បង្ហាញសៀវភៅចៃដន្យ"
#: cps/templates/index.xml:75 cps/ub.py:83 cps/web.py:897 #: cps/templates/index.xml:75 cps/ub.py:83 cps/web.py:898
msgid "Categories" msgid "Categories"
msgstr "ប្រភេទនានា" msgstr "ប្រភេទនានា"
@ -769,7 +769,7 @@ msgid "Show category selection"
msgstr "បង្ហាញជម្រើសប្រភេទ" msgstr "បង្ហាញជម្រើសប្រភេទ"
#: cps/templates/book_edit.html:84 cps/templates/index.xml:82 #: cps/templates/book_edit.html:84 cps/templates/index.xml:82
#: cps/templates/search_form.html:53 cps/ub.py:86 cps/web.py:825 #: cps/templates/search_form.html:53 cps/ub.py:86 cps/web.py:826
msgid "Series" msgid "Series"
msgstr "ស៊េរី" msgstr "ស៊េរី"
@ -785,7 +785,7 @@ msgstr "អ្នកនិពន្ធ"
msgid "Show author selection" msgid "Show author selection"
msgstr "បង្ហាញជម្រើសអ្នកនិពន្ធ" msgstr "បង្ហាញជម្រើសអ្នកនិពន្ធ"
#: cps/templates/index.xml:68 cps/ub.py:93 cps/web.py:809 #: cps/templates/index.xml:68 cps/ub.py:93 cps/web.py:810
msgid "Publishers" msgid "Publishers"
msgstr "" msgstr ""
@ -794,7 +794,7 @@ msgid "Show publisher selection"
msgstr "" msgstr ""
#: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:96 #: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:96
#: cps/web.py:880 #: cps/web.py:881
msgid "Languages" msgid "Languages"
msgstr "ភាសានានា" msgstr "ភាសានានា"
@ -818,7 +818,7 @@ msgstr ""
msgid "Show file formats selection" msgid "Show file formats selection"
msgstr "" msgstr ""
#: cps/ub.py:107 cps/web.py:1150 #: cps/ub.py:107 cps/web.py:1155
msgid "Archived Books" msgid "Archived Books"
msgstr "" msgstr ""
@ -855,223 +855,223 @@ msgstr ""
msgid "Click on the button below to update to the latest stable version." msgid "Click on the button below to update to the latest stable version."
msgstr "" msgstr ""
#: cps/web.py:306 #: cps/web.py:307
#, python-format #, python-format
msgid "Error: %(ldaperror)s" msgid "Error: %(ldaperror)s"
msgstr "" msgstr ""
#: cps/web.py:310 #: cps/web.py:311
msgid "Error: No user returned in response of LDAP server" msgid "Error: No user returned in response of LDAP server"
msgstr "" msgstr ""
#: cps/web.py:358 #: cps/web.py:359
msgid "Failed to Create at Least One LDAP User" msgid "Failed to Create at Least One LDAP User"
msgstr "" msgstr ""
#: cps/web.py:361 #: cps/web.py:362
msgid "At Least One LDAP User Not Found in Database" msgid "At Least One LDAP User Not Found in Database"
msgstr "" msgstr ""
#: cps/web.py:363 #: cps/web.py:364
msgid "User Successfully Imported" msgid "User Successfully Imported"
msgstr "" msgstr ""
#: cps/web.py:587 #: cps/web.py:588
msgid "Recently Added Books" msgid "Recently Added Books"
msgstr "សៀវភៅដែលទើបបានបន្ថែម" msgstr "សៀវភៅដែលទើបបានបន្ថែម"
#: cps/templates/index.html:5 cps/web.py:623 #: cps/templates/index.html:5 cps/web.py:624
msgid "Discover (Random Books)" msgid "Discover (Random Books)"
msgstr "ស្រាវជ្រាវ (សៀវភៅចៃដន្យ)" msgstr "ស្រាវជ្រាវ (សៀវភៅចៃដន្យ)"
#: cps/web.py:651 #: cps/web.py:652
msgid "Books" msgid "Books"
msgstr "" msgstr ""
#: cps/web.py:678 #: cps/web.py:679
msgid "Hot Books (Most Downloaded)" msgid "Hot Books (Most Downloaded)"
msgstr "សៀវភៅដែលត្រូវបានទាញយកច្រើនជាងគេ" msgstr "សៀវភៅដែលត្រូវបានទាញយកច្រើនជាងគេ"
#: cps/web.py:688 #: cps/web.py:689
msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible" msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible"
msgstr "" msgstr ""
#: cps/web.py:702 #: cps/web.py:703
#, python-format #, python-format
msgid "Author: %(name)s" msgid "Author: %(name)s"
msgstr "" msgstr ""
#: cps/web.py:714 #: cps/web.py:715
#, python-format #, python-format
msgid "Publisher: %(name)s" msgid "Publisher: %(name)s"
msgstr "" msgstr ""
#: cps/web.py:725 #: cps/web.py:726
#, python-format #, python-format
msgid "Series: %(serie)s" msgid "Series: %(serie)s"
msgstr "ស៊េរី៖ %(serie)s" msgstr "ស៊េរី៖ %(serie)s"
#: cps/web.py:736 #: cps/web.py:737
#, python-format #, python-format
msgid "Rating: %(rating)s stars" msgid "Rating: %(rating)s stars"
msgstr "" msgstr ""
#: cps/web.py:748 #: cps/web.py:749
#, python-format #, python-format
msgid "File format: %(format)s" msgid "File format: %(format)s"
msgstr "" msgstr ""
#: cps/web.py:760 #: cps/web.py:761
#, python-format #, python-format
msgid "Category: %(name)s" msgid "Category: %(name)s"
msgstr "ប្រភេទ៖ %(name)s" msgstr "ប្រភេទ៖ %(name)s"
#: cps/web.py:777 #: cps/web.py:778
#, python-format #, python-format
msgid "Language: %(name)s" msgid "Language: %(name)s"
msgstr "ភាសា៖ %(name)s" msgstr "ភាសា៖ %(name)s"
#: cps/web.py:839 #: cps/web.py:840
msgid "Ratings list" msgid "Ratings list"
msgstr "" msgstr ""
#: cps/web.py:852 #: cps/web.py:853
msgid "File formats list" msgid "File formats list"
msgstr "" msgstr ""
#: cps/templates/layout.html:73 cps/templates/tasks.html:7 cps/web.py:911 #: cps/templates/layout.html:73 cps/templates/tasks.html:7 cps/web.py:912
msgid "Tasks" msgid "Tasks"
msgstr "កិច្ចការនានា" msgstr "កិច្ចការនានា"
#: cps/templates/book_edit.html:235 cps/templates/feed.xml:33 #: cps/templates/book_edit.html:235 cps/templates/feed.xml:33
#: cps/templates/layout.html:44 cps/templates/layout.html:47 #: cps/templates/layout.html:44 cps/templates/layout.html:47
#: cps/templates/search_form.html:170 cps/web.py:937 cps/web.py:942 #: cps/templates/search_form.html:174 cps/web.py:938 cps/web.py:943
msgid "Search" msgid "Search"
msgstr "ស្វែងរក" msgstr "ស្វែងរក"
#: cps/web.py:993 #: cps/web.py:994
msgid "Published after " msgid "Published after "
msgstr "បានបោះពុម្ភក្រោយ " msgstr "បានបោះពុម្ភក្រោយ "
#: cps/web.py:1000 #: cps/web.py:1001
msgid "Published before " msgid "Published before "
msgstr "បានបោះពុម្ភមុន " msgstr "បានបោះពុម្ភមុន "
#: cps/web.py:1014 #: cps/web.py:1015
#, python-format #, python-format
msgid "Rating <= %(rating)s" msgid "Rating <= %(rating)s"
msgstr "ការវាយតម្លៃ <= %(rating)s" msgstr "ការវាយតម្លៃ <= %(rating)s"
#: cps/web.py:1016 #: cps/web.py:1017
#, python-format #, python-format
msgid "Rating >= %(rating)s" msgid "Rating >= %(rating)s"
msgstr "ការវាយតម្លៃ >= %(rating)s" msgstr "ការវាយតម្លៃ >= %(rating)s"
#: cps/web.py:1082 cps/web.py:1096 #: cps/web.py:1083 cps/web.py:1097
msgid "search" msgid "search"
msgstr "ស្វែងរក" msgstr "ស្វែងរក"
#: cps/web.py:1201 #: cps/web.py:1206
#, python-format #, python-format
msgid "Book successfully queued for sending to %(kindlemail)s" msgid "Book successfully queued for sending to %(kindlemail)s"
msgstr "សៀវភៅបានចូលជួរសម្រាប់ផ្ញើទៅ %(kindlemail)s ដោយជោគជ័យ" msgstr "សៀវភៅបានចូលជួរសម្រាប់ផ្ញើទៅ %(kindlemail)s ដោយជោគជ័យ"
#: cps/web.py:1205 #: cps/web.py:1210
#, python-format #, python-format
msgid "Oops! There was an error sending this book: %(res)s" msgid "Oops! There was an error sending this book: %(res)s"
msgstr "មានបញ្ហានៅពេលផ្ញើសៀវភៅនេះ៖ %(res)s" msgstr "មានបញ្ហានៅពេលផ្ញើសៀវភៅនេះ៖ %(res)s"
#: cps/web.py:1207 #: cps/web.py:1212
msgid "Please update your profile with a valid Send to Kindle E-mail Address." msgid "Please update your profile with a valid Send to Kindle E-mail Address."
msgstr "" msgstr ""
#: cps/web.py:1224 #: cps/web.py:1229
msgid "E-Mail server is not configured, please contact your administrator!" msgid "E-Mail server is not configured, please contact your administrator!"
msgstr "" msgstr ""
#: cps/web.py:1225 cps/web.py:1231 cps/web.py:1256 cps/web.py:1260 #: cps/web.py:1230 cps/web.py:1236 cps/web.py:1261 cps/web.py:1265
#: cps/web.py:1265 cps/web.py:1269 #: cps/web.py:1270 cps/web.py:1274
msgid "register" msgid "register"
msgstr "ចុះឈ្មោះ" msgstr "ចុះឈ្មោះ"
#: cps/web.py:1258 #: cps/web.py:1263
msgid "Your e-mail is not allowed to register" msgid "Your e-mail is not allowed to register"
msgstr "" msgstr ""
#: cps/web.py:1261 #: cps/web.py:1266
msgid "Confirmation e-mail was send to your e-mail account." msgid "Confirmation e-mail was send to your e-mail account."
msgstr "" msgstr ""
#: cps/web.py:1264 #: cps/web.py:1269
msgid "This username or e-mail address is already in use." msgid "This username or e-mail address is already in use."
msgstr "" msgstr ""
#: cps/web.py:1281 #: cps/web.py:1286
msgid "Cannot activate LDAP authentication" msgid "Cannot activate LDAP authentication"
msgstr "" msgstr ""
#: cps/web.py:1298 #: cps/web.py:1303
#, python-format #, python-format
msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known"
msgstr "" msgstr ""
#: cps/web.py:1304 #: cps/web.py:1309
#, python-format #, python-format
msgid "Could not login: %(message)s" msgid "Could not login: %(message)s"
msgstr "" msgstr ""
#: cps/web.py:1308 cps/web.py:1332 #: cps/web.py:1313 cps/web.py:1337
msgid "Wrong Username or Password" msgid "Wrong Username or Password"
msgstr "ខុសឈ្មោះអ្នកប្រើប្រាស់ ឬលេខសម្ងាត់" msgstr "ខុសឈ្មោះអ្នកប្រើប្រាស់ ឬលេខសម្ងាត់"
#: cps/web.py:1315 #: cps/web.py:1320
msgid "New Password was send to your email address" msgid "New Password was send to your email address"
msgstr "" msgstr ""
#: cps/web.py:1321 #: cps/web.py:1326
msgid "Please enter valid username to reset password" msgid "Please enter valid username to reset password"
msgstr "" msgstr ""
#: cps/web.py:1327 #: cps/web.py:1332
#, python-format #, python-format
msgid "You are now logged in as: '%(nickname)s'" msgid "You are now logged in as: '%(nickname)s'"
msgstr "" msgstr ""
#: cps/web.py:1336 cps/web.py:1363 #: cps/web.py:1341 cps/web.py:1368
msgid "login" msgid "login"
msgstr "ចូលប្រើ" msgstr "ចូលប្រើ"
#: cps/web.py:1375 cps/web.py:1409 #: cps/web.py:1380 cps/web.py:1414
msgid "Token not found" msgid "Token not found"
msgstr "រកមិនឃើញវត្ថុតាង" msgstr "រកមិនឃើញវត្ថុតាង"
#: cps/web.py:1384 cps/web.py:1417 #: cps/web.py:1389 cps/web.py:1422
msgid "Token has expired" msgid "Token has expired"
msgstr "វត្ថុតាងហួសពេលកំណត់" msgstr "វត្ថុតាងហួសពេលកំណត់"
#: cps/web.py:1393 #: cps/web.py:1398
msgid "Success! Please return to your device" msgid "Success! Please return to your device"
msgstr "ជោគជ័យ! សូមវិលមកឧបករណ៍អ្នកវិញ" msgstr "ជោគជ័យ! សូមវិលមកឧបករណ៍អ្នកវិញ"
#: cps/web.py:1474 cps/web.py:1519 cps/web.py:1525 #: cps/web.py:1479 cps/web.py:1524 cps/web.py:1530
#, python-format #, python-format
msgid "%(name)s's profile" msgid "%(name)s's profile"
msgstr "ព័ត៌មានសង្ខេបរបស់ %(name)s" msgstr "ព័ត៌មានសង្ខេបរបស់ %(name)s"
#: cps/web.py:1521 #: cps/web.py:1526
msgid "Profile updated" msgid "Profile updated"
msgstr "ព័ត៌មានសង្ខេបបានកែប្រែ" msgstr "ព័ត៌មានសង្ខេបបានកែប្រែ"
#: cps/web.py:1538 cps/web.py:1642 #: cps/web.py:1543 cps/web.py:1647
msgid "Error opening eBook. File does not exist or file is not accessible:" msgid "Error opening eBook. File does not exist or file is not accessible:"
msgstr "មានបញ្ហាពេលបើកឯកសារ eBook ។ មិនមានឯកសារនេះ ឬមិនអាចបើកបាន៖" msgstr "មានបញ្ហាពេលបើកឯកសារ eBook ។ មិនមានឯកសារនេះ ឬមិនអាចបើកបាន៖"
#: cps/web.py:1550 cps/web.py:1553 cps/web.py:1556 cps/web.py:1563 #: cps/web.py:1555 cps/web.py:1558 cps/web.py:1561 cps/web.py:1568
#: cps/web.py:1568 #: cps/web.py:1573
msgid "Read a Book" msgid "Read a Book"
msgstr "អានសៀវភៅ" msgstr "អានសៀវភៅ"
#: cps/web.py:1579 #: cps/web.py:1584
msgid "Error opening eBook. File does not exist or file is not accessible." msgid "Error opening eBook. File does not exist or file is not accessible."
msgstr "" msgstr ""
@ -1297,13 +1297,13 @@ msgid "In Library"
msgstr "នៅក្នុងបណ្ណាល័យ" msgstr "នៅក្នុងបណ្ណាល័យ"
#: cps/templates/author.html:34 cps/templates/list.html:14 #: cps/templates/author.html:34 cps/templates/list.html:14
#: cps/templates/search.html:41 #: cps/templates/search.html:38
msgid "All" msgid "All"
msgstr "" msgstr ""
#: cps/templates/author.html:58 cps/templates/author.html:110 #: cps/templates/author.html:58 cps/templates/author.html:110
#: cps/templates/discover.html:27 cps/templates/index.html:26 #: cps/templates/discover.html:27 cps/templates/index.html:26
#: cps/templates/index.html:89 cps/templates/search.html:67 #: cps/templates/index.html:89 cps/templates/search.html:64
#: cps/templates/shelf.html:36 #: cps/templates/shelf.html:36
msgid "reduce" msgid "reduce"
msgstr "" msgstr ""
@ -1932,6 +1932,12 @@ msgstr "ពិពណ៌នា"
msgid "Add to shelf" msgid "Add to shelf"
msgstr "បន្ថែមទៅធ្នើ" msgstr "បន្ថែមទៅធ្នើ"
#: cps/templates/detail.html:243 cps/templates/detail.html:260
#: cps/templates/feed.xml:79 cps/templates/layout.html:136
#: cps/templates/layout.html:140 cps/templates/search.html:20
msgid "(Public)"
msgstr ""
#: cps/templates/detail.html:274 #: cps/templates/detail.html:274
msgid "Edit Metadata" msgid "Edit Metadata"
msgstr "កែប្រែទិន្នន័យមេតា" msgstr "កែប្រែទិន្នន័យមេតា"
@ -1980,11 +1986,6 @@ msgstr ""
msgid "Next" msgid "Next"
msgstr "បន្ទាប់" msgstr "បន្ទាប់"
#: cps/templates/feed.xml:79 cps/templates/layout.html:136
#: cps/templates/layout.html:140
msgid "(Public)"
msgstr ""
#: cps/templates/generate_kobo_auth_url.html:5 #: cps/templates/generate_kobo_auth_url.html:5
msgid "Open the .kobo/Kobo eReader.conf file in a text editor and add (or edit):" msgid "Open the .kobo/Kobo eReader.conf file in a text editor and add (or edit):"
msgstr "" msgstr ""

File diff suppressed because it is too large Load Diff

View File

@ -8,7 +8,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Calibre Web - polski (POT: 2019-08-06 18:35)\n" "Project-Id-Version: Calibre Web - polski (POT: 2019-08-06 18:35)\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2020-05-01 17:15+0200\n" "POT-Creation-Date: 2020-05-23 08:46+0200\n"
"PO-Revision-Date: 2020-03-31 21:50+0200\n" "PO-Revision-Date: 2020-03-31 21:50+0200\n"
"Last-Translator: Jerzy Piątek <jerzy.piatek@gmail.com>\n" "Last-Translator: Jerzy Piątek <jerzy.piatek@gmail.com>\n"
"Language: pl\n" "Language: pl\n"
@ -48,9 +48,9 @@ msgid "Unknown command"
msgstr "" msgstr ""
# ??? # ???
#: cps/admin.py:115 cps/editbooks.py:504 cps/editbooks.py:514 #: cps/admin.py:115 cps/editbooks.py:505 cps/editbooks.py:515
#: cps/editbooks.py:620 cps/editbooks.py:622 cps/editbooks.py:688 #: cps/editbooks.py:621 cps/editbooks.py:623 cps/editbooks.py:689
#: cps/updater.py:509 cps/uploader.py:99 cps/uploader.py:110 #: cps/updater.py:509 cps/uploader.py:100 cps/uploader.py:110
msgid "Unknown" msgid "Unknown"
msgstr "Nieznany" msgstr "Nieznany"
@ -62,225 +62,225 @@ msgstr "Panel administratora"
msgid "UI Configuration" msgid "UI Configuration"
msgstr "Konfiguracja Interfejsu" msgstr "Konfiguracja Interfejsu"
#: cps/admin.py:192 cps/admin.py:674 #: cps/admin.py:189 cps/admin.py:671
msgid "Calibre-Web configuration updated" msgid "Calibre-Web configuration updated"
msgstr "Konfiguracja Calibre-Web została zaktualizowana" msgstr "Konfiguracja Calibre-Web została zaktualizowana"
#: cps/admin.py:438 cps/admin.py:444 cps/admin.py:455 cps/admin.py:466 #: cps/admin.py:435 cps/admin.py:441 cps/admin.py:452 cps/admin.py:463
#: cps/templates/modal_restriction.html:29 #: cps/templates/modal_restriction.html:29
msgid "Deny" msgid "Deny"
msgstr "Zabroń" msgstr "Zabroń"
#: cps/admin.py:440 cps/admin.py:446 cps/admin.py:457 cps/admin.py:468 #: cps/admin.py:437 cps/admin.py:443 cps/admin.py:454 cps/admin.py:465
#: cps/templates/modal_restriction.html:28 #: cps/templates/modal_restriction.html:28
msgid "Allow" msgid "Allow"
msgstr "Zezwalaj" msgstr "Zezwalaj"
#: cps/admin.py:509 #: cps/admin.py:506
msgid "client_secrets.json Is Not Configured For Web Application" msgid "client_secrets.json Is Not Configured For Web Application"
msgstr "" msgstr ""
#: cps/admin.py:525 #: cps/admin.py:522
msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgid "Keyfile Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:529 #: cps/admin.py:526
msgid "Certfile Location is not Valid, Please Enter Correct Path" msgid "Certfile Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:567 #: cps/admin.py:564
msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier"
msgstr "" msgstr ""
#: cps/admin.py:585 #: cps/admin.py:582
#, python-format #, python-format
msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier"
msgstr "" msgstr ""
#: cps/admin.py:588 #: cps/admin.py:585
msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgid "LDAP Group Object Filter Has Unmatched Parenthesis"
msgstr "" msgstr ""
#: cps/admin.py:592 #: cps/admin.py:589
#, python-format #, python-format
msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier"
msgstr "" msgstr ""
#: cps/admin.py:595 #: cps/admin.py:592
msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgid "LDAP User Object Filter Has Unmatched Parenthesis"
msgstr "" msgstr ""
#: cps/admin.py:599 #: cps/admin.py:596
msgid "LDAP Certificate Location is not Valid, Please Enter Correct Path" msgid "LDAP Certificate Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:647 #: cps/admin.py:644
msgid "Logfile Location is not Valid, Please Enter Correct Path" msgid "Logfile Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:652 #: cps/admin.py:649
msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgid "Access Logfile Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:671 #: cps/admin.py:668
msgid "DB Location is not Valid, Please Enter Correct Path" msgid "DB Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:704 #: cps/admin.py:701
msgid "Basic Configuration" msgid "Basic Configuration"
msgstr "Konfiguracja podstawowa" msgstr "Konfiguracja podstawowa"
#: cps/admin.py:728 cps/web.py:1230 #: cps/admin.py:725 cps/web.py:1235
msgid "Please fill out all fields!" msgid "Please fill out all fields!"
msgstr "Proszę wypełnić wszystkie pola!" msgstr "Proszę wypełnić wszystkie pola!"
#: cps/admin.py:731 cps/admin.py:743 cps/admin.py:749 cps/admin.py:767 #: cps/admin.py:728 cps/admin.py:740 cps/admin.py:746 cps/admin.py:764
msgid "Add new user" msgid "Add new user"
msgstr "Dodaj nowego użytkownika" msgstr "Dodaj nowego użytkownika"
#: cps/admin.py:740 cps/web.py:1472 #: cps/admin.py:737 cps/web.py:1477
msgid "E-mail is not from valid domain" msgid "E-mail is not from valid domain"
msgstr "E-mail nie pochodzi z prawidłowej domeny" msgstr "E-mail nie pochodzi z prawidłowej domeny"
#: cps/admin.py:747 cps/admin.py:762 #: cps/admin.py:744 cps/admin.py:759
msgid "Found an existing account for this e-mail address or nickname." msgid "Found an existing account for this e-mail address or nickname."
msgstr "Znaleziono istniejące konto dla tego adresu e-mail lub pseudonimu." msgstr "Znaleziono istniejące konto dla tego adresu e-mail lub pseudonimu."
#: cps/admin.py:758 #: cps/admin.py:755
#, python-format #, python-format
msgid "User '%(user)s' created" msgid "User '%(user)s' created"
msgstr "Użytkownik '%(user)s' został utworzony" msgstr "Użytkownik '%(user)s' został utworzony"
#: cps/admin.py:777 #: cps/admin.py:774
msgid "Edit e-mail server settings" msgid "Edit e-mail server settings"
msgstr "Edycja ustawień serwera e-mail" msgstr "Edycja ustawień serwera e-mail"
#: cps/admin.py:803 #: cps/admin.py:800
#, python-format #, python-format
msgid "Test e-mail successfully send to %(kindlemail)s" msgid "Test e-mail successfully send to %(kindlemail)s"
msgstr "Testowy e-mail pomyślnie przesłany do %(kindlemail)s" msgstr "Testowy e-mail pomyślnie przesłany do %(kindlemail)s"
#: cps/admin.py:806 #: cps/admin.py:803
#, python-format #, python-format
msgid "There was an error sending the Test e-mail: %(res)s" msgid "There was an error sending the Test e-mail: %(res)s"
msgstr "Wystąpił błąd podczas wysyłania e-maila testowego: %(res)s" msgstr "Wystąpił błąd podczas wysyłania e-maila testowego: %(res)s"
#: cps/admin.py:808 #: cps/admin.py:805
msgid "Please configure your e-mail address first..." msgid "Please configure your e-mail address first..."
msgstr "Najpierw skonfiguruj swój adres e-mail..." msgstr "Najpierw skonfiguruj swój adres e-mail..."
#: cps/admin.py:810 #: cps/admin.py:807
msgid "E-mail server settings updated" msgid "E-mail server settings updated"
msgstr "Zaktualizowano ustawienia serwera poczty e-mail" msgstr "Zaktualizowano ustawienia serwera poczty e-mail"
#: cps/admin.py:821 #: cps/admin.py:818
msgid "User not found" msgid "User not found"
msgstr "" msgstr ""
#: cps/admin.py:842 #: cps/admin.py:839
#, python-format #, python-format
msgid "User '%(nick)s' deleted" msgid "User '%(nick)s' deleted"
msgstr "Użytkownik '%(nick)s' został usunięty" msgstr "Użytkownik '%(nick)s' został usunięty"
#: cps/admin.py:845 #: cps/admin.py:842
msgid "No admin user remaining, can't delete user" msgid "No admin user remaining, can't delete user"
msgstr "Nie można usunąć użytkownika. Brak na serwerze innego konta z prawami administratora" msgstr "Nie można usunąć użytkownika. Brak na serwerze innego konta z prawami administratora"
#: cps/admin.py:851 #: cps/admin.py:848
msgid "No admin user remaining, can't remove admin role" msgid "No admin user remaining, can't remove admin role"
msgstr "" msgstr ""
#: cps/admin.py:887 cps/web.py:1515 #: cps/admin.py:884 cps/web.py:1520
msgid "Found an existing account for this e-mail address." msgid "Found an existing account for this e-mail address."
msgstr "Znaleziono istniejące konto dla tego adresu e-mail." msgstr "Znaleziono istniejące konto dla tego adresu e-mail."
#: cps/admin.py:897 cps/admin.py:912 cps/admin.py:932 cps/web.py:1490 #: cps/admin.py:894 cps/admin.py:909 cps/admin.py:929 cps/web.py:1495
#, python-format #, python-format
msgid "Edit User %(nick)s" msgid "Edit User %(nick)s"
msgstr "Edytuj użytkownika %(nick)s" msgstr "Edytuj użytkownika %(nick)s"
#: cps/admin.py:903 cps/web.py:1482 #: cps/admin.py:900 cps/web.py:1487
msgid "This username is already taken" msgid "This username is already taken"
msgstr "Nazwa użytkownika jest już zajęta" msgstr "Nazwa użytkownika jest już zajęta"
#: cps/admin.py:919 #: cps/admin.py:916
#, python-format #, python-format
msgid "User '%(nick)s' updated" msgid "User '%(nick)s' updated"
msgstr "Użytkownik '%(nick)s' został zaktualizowany" msgstr "Użytkownik '%(nick)s' został zaktualizowany"
#: cps/admin.py:922 #: cps/admin.py:919
msgid "An unknown error occured." msgid "An unknown error occured."
msgstr "Wystąpił nieznany błąd." msgstr "Wystąpił nieznany błąd."
# ??? # ???
#: cps/admin.py:943 #: cps/admin.py:940
#, python-format #, python-format
msgid "Password for user %(user)s reset" msgid "Password for user %(user)s reset"
msgstr "Zrestartowano hasło użytkownika %(user)s" msgstr "Zrestartowano hasło użytkownika %(user)s"
#: cps/admin.py:946 cps/web.py:1255 cps/web.py:1319 #: cps/admin.py:943 cps/web.py:1260 cps/web.py:1324
msgid "An unknown error occurred. Please try again later." msgid "An unknown error occurred. Please try again later."
msgstr "Wystąpił nieznany błąd. Spróbuj ponownie później." msgstr "Wystąpił nieznany błąd. Spróbuj ponownie później."
#: cps/admin.py:949 cps/web.py:1196 #: cps/admin.py:946 cps/web.py:1201
msgid "Please configure the SMTP mail settings first..." msgid "Please configure the SMTP mail settings first..."
msgstr "Proszę najpierw skonfigurować ustawienia SMTP poczty e-mail..." msgstr "Proszę najpierw skonfigurować ustawienia SMTP poczty e-mail..."
#: cps/admin.py:961 #: cps/admin.py:958
msgid "Logfile viewer" msgid "Logfile viewer"
msgstr "Przeglądanie dziennika" msgstr "Przeglądanie dziennika"
#: cps/admin.py:1000 #: cps/admin.py:997
msgid "Requesting update package" msgid "Requesting update package"
msgstr "Żądanie o pakiet aktualizacji" msgstr "Żądanie o pakiet aktualizacji"
#: cps/admin.py:1001 #: cps/admin.py:998
msgid "Downloading update package" msgid "Downloading update package"
msgstr "Pobieranie pakietu aktualizacji" msgstr "Pobieranie pakietu aktualizacji"
#: cps/admin.py:1002 #: cps/admin.py:999
msgid "Unzipping update package" msgid "Unzipping update package"
msgstr "Rozpakowywanie pakietu aktualizacji" msgstr "Rozpakowywanie pakietu aktualizacji"
# ??? # ???
#: cps/admin.py:1003 #: cps/admin.py:1000
msgid "Replacing files" msgid "Replacing files"
msgstr "Zastępowanie plików" msgstr "Zastępowanie plików"
#: cps/admin.py:1004 #: cps/admin.py:1001
msgid "Database connections are closed" msgid "Database connections are closed"
msgstr "Połączenia z bazą danych zostały zakończone" msgstr "Połączenia z bazą danych zostały zakończone"
#: cps/admin.py:1005 #: cps/admin.py:1002
msgid "Stopping server" msgid "Stopping server"
msgstr "Zatrzymywanie serwera" msgstr "Zatrzymywanie serwera"
#: cps/admin.py:1006 #: cps/admin.py:1003
msgid "Update finished, please press okay and reload page" msgid "Update finished, please press okay and reload page"
msgstr "Aktualizacja zakończona, proszę nacisnąć OK i odświeżyć stronę" msgstr "Aktualizacja zakończona, proszę nacisnąć OK i odświeżyć stronę"
#: cps/admin.py:1007 cps/admin.py:1008 cps/admin.py:1009 cps/admin.py:1010 #: cps/admin.py:1004 cps/admin.py:1005 cps/admin.py:1006 cps/admin.py:1007
#: cps/admin.py:1011 #: cps/admin.py:1008
msgid "Update failed:" msgid "Update failed:"
msgstr "Aktualizacja nieudana:" msgstr "Aktualizacja nieudana:"
#: cps/admin.py:1007 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522 #: cps/admin.py:1004 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522
msgid "HTTP Error" msgid "HTTP Error"
msgstr "Błąd HTTP" msgstr "Błąd HTTP"
#: cps/admin.py:1008 cps/updater.py:321 cps/updater.py:524 #: cps/admin.py:1005 cps/updater.py:321 cps/updater.py:524
msgid "Connection error" msgid "Connection error"
msgstr "Błąd połączenia" msgstr "Błąd połączenia"
#: cps/admin.py:1009 cps/updater.py:323 cps/updater.py:526 #: cps/admin.py:1006 cps/updater.py:323 cps/updater.py:526
msgid "Timeout while establishing connection" msgid "Timeout while establishing connection"
msgstr "Przekroczono limit czasu podczas nawiązywania połączenia" msgstr "Przekroczono limit czasu podczas nawiązywania połączenia"
#: cps/admin.py:1010 cps/updater.py:325 cps/updater.py:528 #: cps/admin.py:1007 cps/updater.py:325 cps/updater.py:528
msgid "General error" msgid "General error"
msgstr "Błąd ogólny" msgstr "Błąd ogólny"
#: cps/admin.py:1011 #: cps/admin.py:1008
msgid "Update File Could Not be Saved in Temp Dir" msgid "Update File Could Not be Saved in Temp Dir"
msgstr "" msgstr ""
@ -296,7 +296,7 @@ msgstr ""
msgid "Book Successfully Deleted" msgid "Book Successfully Deleted"
msgstr "" msgstr ""
#: cps/editbooks.py:253 cps/editbooks.py:489 #: cps/editbooks.py:253 cps/editbooks.py:490
msgid "Error opening eBook. File does not exist or file is not accessible" msgid "Error opening eBook. File does not exist or file is not accessible"
msgstr "Błąd podczas otwierania e-booka. Plik nie istnieje lub jest niedostępny" msgstr "Błąd podczas otwierania e-booka. Plik nie istnieje lub jest niedostępny"
@ -309,16 +309,16 @@ msgstr "edytuj metadane"
msgid "%(langname)s is not a valid language" msgid "%(langname)s is not a valid language"
msgstr "%(langname)s nie jest prawidłowym językiem" msgstr "%(langname)s nie jest prawidłowym językiem"
#: cps/editbooks.py:413 cps/editbooks.py:663 #: cps/editbooks.py:413 cps/editbooks.py:664
#, python-format #, python-format
msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" 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" msgstr "Rozszerzenie pliku '%(ext)s' nie jest dozwolone do wysłania na ten serwer"
#: cps/editbooks.py:417 cps/editbooks.py:667 #: cps/editbooks.py:417 cps/editbooks.py:668
msgid "File to be uploaded must have an extension" msgid "File to be uploaded must have an extension"
msgstr "Plik do wysłania musi mieć rozszerzenie" msgstr "Plik do wysłania musi mieć rozszerzenie"
#: cps/editbooks.py:429 cps/editbooks.py:701 #: cps/editbooks.py:429 cps/editbooks.py:702
#, python-format #, python-format
msgid "Failed to create path %(path)s (Permission denied)." msgid "Failed to create path %(path)s (Permission denied)."
msgstr "Nie udało się utworzyć łącza %(path)s (Odmowa dostępu)." msgstr "Nie udało się utworzyć łącza %(path)s (Odmowa dostępu)."
@ -333,48 +333,48 @@ msgstr "Nie można zapisać pliku %(file)s."
msgid "File format %(ext)s added to %(book)s" msgid "File format %(ext)s added to %(book)s"
msgstr "Format pliku %(ext)s dodany do %(book)s" msgstr "Format pliku %(ext)s dodany do %(book)s"
#: cps/editbooks.py:606 #: cps/editbooks.py:607
msgid "Metadata successfully updated" msgid "Metadata successfully updated"
msgstr "Metadane zostały pomyślnie zaktualizowane" msgstr "Metadane zostały pomyślnie zaktualizowane"
#: cps/editbooks.py:615 #: cps/editbooks.py:616
msgid "Error editing book, please check logfile for details" msgid "Error editing book, please check logfile for details"
msgstr "Błąd podczas edycji książki, sprawdź plik dziennika, aby uzyskać szczegółowe informacje" msgstr "Błąd podczas edycji książki, sprawdź plik dziennika, aby uzyskać szczegółowe informacje"
#: cps/editbooks.py:675 #: cps/editbooks.py:676
#, python-format #, python-format
msgid "File %(filename)s could not saved to temp dir" msgid "File %(filename)s could not saved to temp dir"
msgstr "Nie można zapisać pliku %(filename)s w katalogu tymczasowym" msgstr "Nie można zapisać pliku %(filename)s w katalogu tymczasowym"
#: cps/editbooks.py:692 #: cps/editbooks.py:693
msgid "Uploaded book probably exists in the library, consider to change before upload new: " 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: " msgstr "Wysłana książka prawdopodobnie istnieje w bibliotece, rozważ zmianę przed przesłaniem nowej: "
#: cps/editbooks.py:707 #: cps/editbooks.py:709
#, python-format #, python-format
msgid "Failed to store file %(file)s (Permission denied)." msgid "Failed to Move File %(file)s: %(error)s"
msgstr "Nie można przechowywać pliku %(file)s (Odmowa dostępu)." msgstr ""
#: cps/editbooks.py:713 #: cps/editbooks.py:723
#, python-format #, python-format
msgid "Failed to delete file %(file)s (Permission denied)." msgid "Failed to Move Cover File %(file)s: %(error)s"
msgstr "Nie udało się usunąć pliku %(file)s (Odmowa dostępu)." msgstr ""
#: cps/editbooks.py:804 #: cps/editbooks.py:808
#, python-format #, python-format
msgid "File %(file)s uploaded" msgid "File %(file)s uploaded"
msgstr "Wysłano plik %(file)s" msgstr "Wysłano plik %(file)s"
#: cps/editbooks.py:833 #: cps/editbooks.py:837
msgid "Source or destination format for conversion missing" msgid "Source or destination format for conversion missing"
msgstr "Brak formatu źródłowego lub docelowego do konwersji" msgstr "Brak formatu źródłowego lub docelowego do konwersji"
#: cps/editbooks.py:841 #: cps/editbooks.py:845
#, python-format #, python-format
msgid "Book successfully queued for converting to %(book_format)s" 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" msgstr "Książka została pomyślnie umieszczona w zadaniach do konwersji %(book_format)s"
#: cps/editbooks.py:845 #: cps/editbooks.py:849
#, python-format #, python-format
msgid "There was an error converting this book: %(res)s" msgid "There was an error converting this book: %(res)s"
msgstr "Podczas konwersji książki wystąpił błąd: %(res)s" msgstr "Podczas konwersji książki wystąpił błąd: %(res)s"
@ -450,111 +450,111 @@ msgstr "E-mail: %(book)s"
msgid "The requested file could not be read. Maybe wrong permissions?" msgid "The requested file could not be read. Maybe wrong permissions?"
msgstr "Żądany plik nie mógł zostać odczytany. Sprawdź uprawnienia?" msgstr "Żądany plik nie mógł zostać odczytany. Sprawdź uprawnienia?"
#: cps/helper.py:299 #: cps/helper.py:300
#, python-format #, python-format
msgid "Deleting book %(id)s failed, path has subfolders: %(path)s" msgid "Deleting book %(id)s failed, path has subfolders: %(path)s"
msgstr "" msgstr ""
#: cps/helper.py:309 #: cps/helper.py:310
#, python-format #, python-format
msgid "Deleting book %(id)s failed: %(message)s" msgid "Deleting book %(id)s failed: %(message)s"
msgstr "" msgstr ""
#: cps/helper.py:319 #: cps/helper.py:320
#, python-format #, python-format
msgid "Deleting book %(id)s failed, book path not valid: %(path)s" msgid "Deleting book %(id)s failed, book path not valid: %(path)s"
msgstr "" msgstr ""
#: cps/helper.py:354 #: cps/helper.py:355
#, python-format #, python-format
msgid "Rename title from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgid "Rename title from: '%(src)s' to '%(dest)s' failed with error: %(error)s"
msgstr "Zmiana nazwy tytułu z: „%(src)s” na „%(dest)s” zakończyła się niepowodzeniem z błędem: %(error)s" msgstr "Zmiana nazwy tytułu z: „%(src)s” na „%(dest)s” zakończyła się niepowodzeniem z błędem: %(error)s"
#: cps/helper.py:364 #: cps/helper.py:365
#, python-format #, python-format
msgid "Rename author from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgid "Rename author from: '%(src)s' to '%(dest)s' failed with error: %(error)s"
msgstr "Zmiana autora z: '%(src)s' na '%(dest)s' zakończyło się błędem: %(error)s" msgstr "Zmiana autora z: '%(src)s' na '%(dest)s' zakończyło się błędem: %(error)s"
#: cps/helper.py:378 #: cps/helper.py:379
#, python-format #, python-format
msgid "Rename file in path '%(src)s' to '%(dest)s' failed with error: %(error)s" msgid "Rename file in path '%(src)s' to '%(dest)s' failed with error: %(error)s"
msgstr "Zmiana nazwy pliku w ścieżce '%(src)s' na '%(dest)s' zakończyło się błędem: %(error)s" msgstr "Zmiana nazwy pliku w ścieżce '%(src)s' na '%(dest)s' zakończyło się błędem: %(error)s"
#: cps/helper.py:404 cps/helper.py:414 cps/helper.py:422 #: cps/helper.py:405 cps/helper.py:415 cps/helper.py:423
#, python-format #, python-format
msgid "File %(file)s not found on Google Drive" msgid "File %(file)s not found on Google Drive"
msgstr "Nie znaleziono pliku %(file)s na Google Drive" msgstr "Nie znaleziono pliku %(file)s na Google Drive"
#: cps/helper.py:443 #: cps/helper.py:444
#, python-format #, python-format
msgid "Book path %(path)s not found on 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" msgstr "Nie znaleziono ścieżki do książki %(path)s na Google Drive"
#: cps/helper.py:550 #: cps/helper.py:551
msgid "Failed to create path for cover" msgid "Failed to create path for cover"
msgstr "Nie udało się utworzyć ścieżki dla okładki" msgstr "Nie udało się utworzyć ścieżki dla okładki"
#: cps/helper.py:555 #: cps/helper.py:556
msgid "Cover-file is not a valid image file, or could not be stored" msgid "Cover-file is not a valid image file, or could not be stored"
msgstr "" msgstr ""
#: cps/helper.py:566 #: cps/helper.py:567
msgid "Only jpg/jpeg/png/webp files are supported as coverfile" msgid "Only jpg/jpeg/png/webp files are supported as coverfile"
msgstr "Jako plik okładki dopuszczalne są jedynie pliki jpg/jpeg/png/webp" msgstr "Jako plik okładki dopuszczalne są jedynie pliki jpg/jpeg/png/webp"
#: cps/helper.py:580 #: cps/helper.py:581
msgid "Only jpg/jpeg files are supported as coverfile" msgid "Only jpg/jpeg files are supported as coverfile"
msgstr "Jako plik okładki dopuszczalne są jedynie pliki jpg/jpeg" msgstr "Jako plik okładki dopuszczalne są jedynie pliki jpg/jpeg"
#: cps/helper.py:622 #: cps/helper.py:625
msgid "Unrar binary file not found" msgid "Unrar binary file not found"
msgstr "" msgstr ""
#: cps/helper.py:635 #: cps/helper.py:638
msgid "Error excecuting UnRar" msgid "Error excecuting UnRar"
msgstr "" msgstr ""
#: cps/helper.py:691 #: cps/helper.py:694
msgid "Waiting" msgid "Waiting"
msgstr "Oczekiwanie" msgstr "Oczekiwanie"
#: cps/helper.py:693 #: cps/helper.py:696
msgid "Failed" msgid "Failed"
msgstr "Nieudane" msgstr "Nieudane"
#: cps/helper.py:695 #: cps/helper.py:698
msgid "Started" msgid "Started"
msgstr "Rozpoczynanie" msgstr "Rozpoczynanie"
#: cps/helper.py:697 #: cps/helper.py:700
msgid "Finished" msgid "Finished"
msgstr "Zakończone" msgstr "Zakończone"
#: cps/helper.py:699 #: cps/helper.py:702
msgid "Unknown Status" msgid "Unknown Status"
msgstr "Ststus nieznany" msgstr "Ststus nieznany"
#: cps/helper.py:704 #: cps/helper.py:707
msgid "E-mail: " msgid "E-mail: "
msgstr "E-mail: " msgstr "E-mail: "
#: cps/helper.py:706 cps/helper.py:710 #: cps/helper.py:709 cps/helper.py:713
msgid "Convert: " msgid "Convert: "
msgstr "Konwertowanie: " msgstr "Konwertowanie: "
#: cps/helper.py:708 #: cps/helper.py:711
msgid "Upload: " msgid "Upload: "
msgstr "Wyślij: " msgstr "Wyślij: "
#: cps/helper.py:712 #: cps/helper.py:715
msgid "Unknown Task: " msgid "Unknown Task: "
msgstr "Nieznane zadanie: " msgstr "Nieznane zadanie: "
#: cps/kobo_auth.py:126 #: cps/kobo_auth.py:130
msgid "PLease access calibre-web from non localhost to get valid api_endpoint for kobo device" msgid "PLease access calibre-web from non localhost to get valid api_endpoint for kobo device"
msgstr "Aby uzyskać prawidłowy api_endpoint dla urządzenia kobo, należy skorzystać z dostępu do calibre-web spoza localhost" msgstr "Aby uzyskać prawidłowy api_endpoint dla urządzenia kobo, należy skorzystać z dostępu do calibre-web spoza localhost"
#: cps/kobo_auth.py:129 cps/kobo_auth.py:149 #: cps/kobo_auth.py:133 cps/kobo_auth.py:153
msgid "Kobo Setup" msgid "Kobo Setup"
msgstr "Konfiguracja Kobo" msgstr "Konfiguracja Kobo"
@ -580,7 +580,7 @@ msgstr "Nie udało się zalogować do Google."
msgid "Failed to fetch user info from Google." msgid "Failed to fetch user info from Google."
msgstr "Nie udało się pobrać informacji o użytkowniku z Google." msgstr "Nie udało się pobrać informacji o użytkowniku z Google."
#: cps/oauth_bb.py:225 cps/web.py:1291 cps/web.py:1431 #: cps/oauth_bb.py:225 cps/web.py:1296 cps/web.py:1436
#, python-format #, python-format
msgid "you are now logged in as: '%(nickname)s'" msgid "you are now logged in as: '%(nickname)s'"
msgstr "zalogowałeś się jako: '%(nickname)s'" msgstr "zalogowałeś się jako: '%(nickname)s'"
@ -732,7 +732,7 @@ msgstr "Najpopularniejsze"
msgid "Show Hot Books" msgid "Show Hot Books"
msgstr "Pokaż menu najpopularniejszych książek" msgstr "Pokaż menu najpopularniejszych książek"
#: cps/templates/index.xml:24 cps/ub.py:70 cps/web.py:615 #: cps/templates/index.xml:24 cps/ub.py:70 cps/web.py:616
msgid "Top Rated Books" msgid "Top Rated Books"
msgstr "Najwyżej ocenione" msgstr "Najwyżej ocenione"
@ -741,7 +741,7 @@ msgid "Show Top Rated Books"
msgstr "Pokaż menu najwyżej ocenionych książek" msgstr "Pokaż menu najwyżej ocenionych książek"
#: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:73 #: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:73
#: cps/web.py:1125 #: cps/web.py:1131
msgid "Read Books" msgid "Read Books"
msgstr "Przeczytane" msgstr "Przeczytane"
@ -750,7 +750,7 @@ msgid "Show read and unread"
msgstr "Pokaż menu przeczytane i nieprzeczytane" msgstr "Pokaż menu przeczytane i nieprzeczytane"
#: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:77 #: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:77
#: cps/web.py:1129 #: cps/web.py:1134
msgid "Unread Books" msgid "Unread Books"
msgstr "Nieprzeczytane" msgstr "Nieprzeczytane"
@ -766,7 +766,7 @@ msgstr "Odkrywaj"
msgid "Show random books" msgid "Show random books"
msgstr "Pokaż menu losowych książek" msgstr "Pokaż menu losowych książek"
#: cps/templates/index.xml:75 cps/ub.py:83 cps/web.py:897 #: cps/templates/index.xml:75 cps/ub.py:83 cps/web.py:898
msgid "Categories" msgid "Categories"
msgstr "Kategorie" msgstr "Kategorie"
@ -775,7 +775,7 @@ msgid "Show category selection"
msgstr "Pokaż menu wyboru kategorii" msgstr "Pokaż menu wyboru kategorii"
#: cps/templates/book_edit.html:84 cps/templates/index.xml:82 #: cps/templates/book_edit.html:84 cps/templates/index.xml:82
#: cps/templates/search_form.html:53 cps/ub.py:86 cps/web.py:825 #: cps/templates/search_form.html:53 cps/ub.py:86 cps/web.py:826
msgid "Series" msgid "Series"
msgstr "Cykle" msgstr "Cykle"
@ -791,7 +791,7 @@ msgstr "Autorzy"
msgid "Show author selection" msgid "Show author selection"
msgstr "Pokaż menu wyboru autora" msgstr "Pokaż menu wyboru autora"
#: cps/templates/index.xml:68 cps/ub.py:93 cps/web.py:809 #: cps/templates/index.xml:68 cps/ub.py:93 cps/web.py:810
msgid "Publishers" msgid "Publishers"
msgstr "Wydawcy" msgstr "Wydawcy"
@ -800,7 +800,7 @@ msgid "Show publisher selection"
msgstr "Pokaż menu wyboru wydawcy" msgstr "Pokaż menu wyboru wydawcy"
#: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:96 #: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:96
#: cps/web.py:880 #: cps/web.py:881
msgid "Languages" msgid "Languages"
msgstr "Języki" msgstr "Języki"
@ -824,7 +824,7 @@ msgstr "Formaty plików"
msgid "Show file formats selection" msgid "Show file formats selection"
msgstr "Pokaż menu formatu plików" msgstr "Pokaż menu formatu plików"
#: cps/ub.py:107 cps/web.py:1150 #: cps/ub.py:107 cps/web.py:1155
msgid "Archived Books" msgid "Archived Books"
msgstr "" msgstr ""
@ -861,223 +861,223 @@ 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." msgid "Click on the button below to update to the latest stable version."
msgstr "Kliknij przycisk poniżej, aby zaktualizować do najnowszej stabilnej wersji." msgstr "Kliknij przycisk poniżej, aby zaktualizować do najnowszej stabilnej wersji."
#: cps/web.py:306 #: cps/web.py:307
#, python-format #, python-format
msgid "Error: %(ldaperror)s" msgid "Error: %(ldaperror)s"
msgstr "" msgstr ""
#: cps/web.py:310 #: cps/web.py:311
msgid "Error: No user returned in response of LDAP server" msgid "Error: No user returned in response of LDAP server"
msgstr "" msgstr ""
#: cps/web.py:358 #: cps/web.py:359
msgid "Failed to Create at Least One LDAP User" msgid "Failed to Create at Least One LDAP User"
msgstr "" msgstr ""
#: cps/web.py:361 #: cps/web.py:362
msgid "At Least One LDAP User Not Found in Database" msgid "At Least One LDAP User Not Found in Database"
msgstr "" msgstr ""
#: cps/web.py:363 #: cps/web.py:364
msgid "User Successfully Imported" msgid "User Successfully Imported"
msgstr "" msgstr ""
#: cps/web.py:587 #: cps/web.py:588
msgid "Recently Added Books" msgid "Recently Added Books"
msgstr "Ostatnio dodane książki" msgstr "Ostatnio dodane książki"
#: cps/templates/index.html:5 cps/web.py:623 #: cps/templates/index.html:5 cps/web.py:624
msgid "Discover (Random Books)" msgid "Discover (Random Books)"
msgstr "Odkrywaj (losowe książki)" msgstr "Odkrywaj (losowe książki)"
#: cps/web.py:651 #: cps/web.py:652
msgid "Books" msgid "Books"
msgstr "Książki" msgstr "Książki"
#: cps/web.py:678 #: cps/web.py:679
msgid "Hot Books (Most Downloaded)" msgid "Hot Books (Most Downloaded)"
msgstr "Najpopularniejsze książki (najczęściej pobierane)" msgstr "Najpopularniejsze książki (najczęściej pobierane)"
#: cps/web.py:688 #: cps/web.py:689
msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible" 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" msgstr "Błąd otwierania e-booka. Plik nie istnieje lub jest niedostępny"
#: cps/web.py:702 #: cps/web.py:703
#, python-format #, python-format
msgid "Author: %(name)s" msgid "Author: %(name)s"
msgstr "Autor: %(name)s" msgstr "Autor: %(name)s"
#: cps/web.py:714 #: cps/web.py:715
#, python-format #, python-format
msgid "Publisher: %(name)s" msgid "Publisher: %(name)s"
msgstr "Wydawca: %(name)s" msgstr "Wydawca: %(name)s"
#: cps/web.py:725 #: cps/web.py:726
#, python-format #, python-format
msgid "Series: %(serie)s" msgid "Series: %(serie)s"
msgstr "Cykl: %(serie)s" msgstr "Cykl: %(serie)s"
#: cps/web.py:736 #: cps/web.py:737
#, python-format #, python-format
msgid "Rating: %(rating)s stars" msgid "Rating: %(rating)s stars"
msgstr "Ocena: %(rating)s gwiazdek" msgstr "Ocena: %(rating)s gwiazdek"
#: cps/web.py:748 #: cps/web.py:749
#, python-format #, python-format
msgid "File format: %(format)s" msgid "File format: %(format)s"
msgstr "Format pliku: %(format)s" msgstr "Format pliku: %(format)s"
#: cps/web.py:760 #: cps/web.py:761
#, python-format #, python-format
msgid "Category: %(name)s" msgid "Category: %(name)s"
msgstr "Kategoria: %(name)s" msgstr "Kategoria: %(name)s"
#: cps/web.py:777 #: cps/web.py:778
#, python-format #, python-format
msgid "Language: %(name)s" msgid "Language: %(name)s"
msgstr "Język: %(name)s" msgstr "Język: %(name)s"
#: cps/web.py:839 #: cps/web.py:840
msgid "Ratings list" msgid "Ratings list"
msgstr "Lista z ocenami" msgstr "Lista z ocenami"
#: cps/web.py:852 #: cps/web.py:853
msgid "File formats list" msgid "File formats list"
msgstr "Lista formatów" msgstr "Lista formatów"
#: cps/templates/layout.html:73 cps/templates/tasks.html:7 cps/web.py:911 #: cps/templates/layout.html:73 cps/templates/tasks.html:7 cps/web.py:912
msgid "Tasks" msgid "Tasks"
msgstr "Zadania" msgstr "Zadania"
#: cps/templates/book_edit.html:235 cps/templates/feed.xml:33 #: cps/templates/book_edit.html:235 cps/templates/feed.xml:33
#: cps/templates/layout.html:44 cps/templates/layout.html:47 #: cps/templates/layout.html:44 cps/templates/layout.html:47
#: cps/templates/search_form.html:170 cps/web.py:937 cps/web.py:942 #: cps/templates/search_form.html:174 cps/web.py:938 cps/web.py:943
msgid "Search" msgid "Search"
msgstr "Szukaj" msgstr "Szukaj"
#: cps/web.py:993 #: cps/web.py:994
msgid "Published after " msgid "Published after "
msgstr "Opublikowane po " msgstr "Opublikowane po "
#: cps/web.py:1000 #: cps/web.py:1001
msgid "Published before " msgid "Published before "
msgstr "Opublikowane przed " msgstr "Opublikowane przed "
#: cps/web.py:1014 #: cps/web.py:1015
#, python-format #, python-format
msgid "Rating <= %(rating)s" msgid "Rating <= %(rating)s"
msgstr "Ocena <= %(rating)s" msgstr "Ocena <= %(rating)s"
#: cps/web.py:1016 #: cps/web.py:1017
#, python-format #, python-format
msgid "Rating >= %(rating)s" msgid "Rating >= %(rating)s"
msgstr "Ocena >= %(rating)s" msgstr "Ocena >= %(rating)s"
#: cps/web.py:1082 cps/web.py:1096 #: cps/web.py:1083 cps/web.py:1097
msgid "search" msgid "search"
msgstr "szukaj" msgstr "szukaj"
#: cps/web.py:1201 #: cps/web.py:1206
#, python-format #, python-format
msgid "Book successfully queued for sending to %(kindlemail)s" msgid "Book successfully queued for sending to %(kindlemail)s"
msgstr "Książka została umieszczona w kolejce do wysłania do %(kindlemail)s" msgstr "Książka została umieszczona w kolejce do wysłania do %(kindlemail)s"
#: cps/web.py:1205 #: cps/web.py:1210
#, python-format #, python-format
msgid "Oops! There was an error sending this book: %(res)s" msgid "Oops! There was an error sending this book: %(res)s"
msgstr "Wystąpił błąd podczas wysyłania tej książki: %(res)s" msgstr "Wystąpił błąd podczas wysyłania tej książki: %(res)s"
#: cps/web.py:1207 #: cps/web.py:1212
msgid "Please update your profile with a valid Send to Kindle E-mail Address." msgid "Please update your profile with a valid Send to Kindle E-mail Address."
msgstr "Najpierw skonfiguruj adres e-mail Kindle..." msgstr "Najpierw skonfiguruj adres e-mail Kindle..."
#: cps/web.py:1224 #: cps/web.py:1229
msgid "E-Mail server is not configured, please contact your administrator!" msgid "E-Mail server is not configured, please contact your administrator!"
msgstr "Serwer e-mail nie jest skonfigurowany, skontaktuj się z administratorem!" msgstr "Serwer e-mail nie jest skonfigurowany, skontaktuj się z administratorem!"
#: cps/web.py:1225 cps/web.py:1231 cps/web.py:1256 cps/web.py:1260 #: cps/web.py:1230 cps/web.py:1236 cps/web.py:1261 cps/web.py:1265
#: cps/web.py:1265 cps/web.py:1269 #: cps/web.py:1270 cps/web.py:1274
msgid "register" msgid "register"
msgstr "rejestracja" msgstr "rejestracja"
#: cps/web.py:1258 #: cps/web.py:1263
msgid "Your e-mail is not allowed to register" msgid "Your e-mail is not allowed to register"
msgstr "Twój e-mail nie może się zarejestrować" msgstr "Twój e-mail nie może się zarejestrować"
#: cps/web.py:1261 #: cps/web.py:1266
msgid "Confirmation e-mail was send to your e-mail account." 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." msgstr "Wiadomość e-mail z potwierdzeniem została wysłana na Twoje konto e-mail."
#: cps/web.py:1264 #: cps/web.py:1269
msgid "This username or e-mail address is already in use." msgid "This username or e-mail address is already in use."
msgstr "Ta nazwa użytkownika lub adres e-mail jest już używany." msgstr "Ta nazwa użytkownika lub adres e-mail jest już używany."
#: cps/web.py:1281 #: cps/web.py:1286
msgid "Cannot activate LDAP authentication" msgid "Cannot activate LDAP authentication"
msgstr "Nie można aktywować uwierzytelniania LDAP" msgstr "Nie można aktywować uwierzytelniania LDAP"
#: cps/web.py:1298 #: cps/web.py:1303
#, python-format #, python-format
msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known"
msgstr "" msgstr ""
#: cps/web.py:1304 #: cps/web.py:1309
#, python-format #, python-format
msgid "Could not login: %(message)s" msgid "Could not login: %(message)s"
msgstr "" msgstr ""
#: cps/web.py:1308 cps/web.py:1332 #: cps/web.py:1313 cps/web.py:1337
msgid "Wrong Username or Password" msgid "Wrong Username or Password"
msgstr "Błędna nazwa użytkownika lub hasło" msgstr "Błędna nazwa użytkownika lub hasło"
#: cps/web.py:1315 #: cps/web.py:1320
msgid "New Password was send to your email address" msgid "New Password was send to your email address"
msgstr "Nowe hasło zostało wysłane na Twój adres e-mail" msgstr "Nowe hasło zostało wysłane na Twój adres e-mail"
#: cps/web.py:1321 #: cps/web.py:1326
msgid "Please enter valid username to reset password" msgid "Please enter valid username to reset password"
msgstr "Wprowadź prawidłową nazwę użytkownika, aby zresetować hasło" msgstr "Wprowadź prawidłową nazwę użytkownika, aby zresetować hasło"
#: cps/web.py:1327 #: cps/web.py:1332
#, python-format #, python-format
msgid "You are now logged in as: '%(nickname)s'" msgid "You are now logged in as: '%(nickname)s'"
msgstr "Jesteś teraz zalogowany jako: '%(nickname)s'" msgstr "Jesteś teraz zalogowany jako: '%(nickname)s'"
#: cps/web.py:1336 cps/web.py:1363 #: cps/web.py:1341 cps/web.py:1368
msgid "login" msgid "login"
msgstr "logowanie" msgstr "logowanie"
#: cps/web.py:1375 cps/web.py:1409 #: cps/web.py:1380 cps/web.py:1414
msgid "Token not found" msgid "Token not found"
msgstr "Nie znaleziono tokenu" msgstr "Nie znaleziono tokenu"
#: cps/web.py:1384 cps/web.py:1417 #: cps/web.py:1389 cps/web.py:1422
msgid "Token has expired" msgid "Token has expired"
msgstr "Token wygasł" msgstr "Token wygasł"
#: cps/web.py:1393 #: cps/web.py:1398
msgid "Success! Please return to your device" msgid "Success! Please return to your device"
msgstr "Powodzenie! Wróć do swojego urządzenia" msgstr "Powodzenie! Wróć do swojego urządzenia"
#: cps/web.py:1474 cps/web.py:1519 cps/web.py:1525 #: cps/web.py:1479 cps/web.py:1524 cps/web.py:1530
#, python-format #, python-format
msgid "%(name)s's profile" msgid "%(name)s's profile"
msgstr "Profil użytkownika %(name)s" msgstr "Profil użytkownika %(name)s"
#: cps/web.py:1521 #: cps/web.py:1526
msgid "Profile updated" msgid "Profile updated"
msgstr "Zaktualizowano profil" msgstr "Zaktualizowano profil"
#: cps/web.py:1538 cps/web.py:1642 #: cps/web.py:1543 cps/web.py:1647
msgid "Error opening eBook. File does not exist or file is not accessible:" msgid "Error opening eBook. File does not exist or file is not accessible:"
msgstr "Błąd podczas otwierania e-booka. Plik nie istnieje lub jest niedostępny:" msgstr "Błąd podczas otwierania e-booka. Plik nie istnieje lub jest niedostępny:"
#: cps/web.py:1550 cps/web.py:1553 cps/web.py:1556 cps/web.py:1563 #: cps/web.py:1555 cps/web.py:1558 cps/web.py:1561 cps/web.py:1568
#: cps/web.py:1568 #: cps/web.py:1573
msgid "Read a Book" msgid "Read a Book"
msgstr "Czytaj książkę" msgstr "Czytaj książkę"
#: cps/web.py:1579 #: cps/web.py:1584
msgid "Error opening eBook. File does not exist or file is not accessible." msgid "Error opening eBook. File does not exist or file is not accessible."
msgstr "Błąd podczas otwierania e-booka. Plik nie istnieje lub jest niedostępny." msgstr "Błąd podczas otwierania e-booka. Plik nie istnieje lub jest niedostępny."
@ -1306,13 +1306,13 @@ msgstr "W Bibliotece"
# ??? # ???
#: cps/templates/author.html:34 cps/templates/list.html:14 #: cps/templates/author.html:34 cps/templates/list.html:14
#: cps/templates/search.html:41 #: cps/templates/search.html:38
msgid "All" msgid "All"
msgstr "Wszystko" msgstr "Wszystko"
#: cps/templates/author.html:58 cps/templates/author.html:110 #: cps/templates/author.html:58 cps/templates/author.html:110
#: cps/templates/discover.html:27 cps/templates/index.html:26 #: cps/templates/discover.html:27 cps/templates/index.html:26
#: cps/templates/index.html:89 cps/templates/search.html:67 #: cps/templates/index.html:89 cps/templates/search.html:64
#: cps/templates/shelf.html:36 #: cps/templates/shelf.html:36
msgid "reduce" msgid "reduce"
msgstr "zwiń" msgstr "zwiń"
@ -1945,6 +1945,12 @@ msgstr "Opis:"
msgid "Add to shelf" msgid "Add to shelf"
msgstr "Dodaj do półki" msgstr "Dodaj do półki"
#: cps/templates/detail.html:243 cps/templates/detail.html:260
#: cps/templates/feed.xml:79 cps/templates/layout.html:136
#: cps/templates/layout.html:140 cps/templates/search.html:20
msgid "(Public)"
msgstr ""
#: cps/templates/detail.html:274 #: cps/templates/detail.html:274
msgid "Edit Metadata" msgid "Edit Metadata"
msgstr "Edytuj metadane" msgstr "Edytuj metadane"
@ -1993,11 +1999,6 @@ msgstr "Czy na pewno chcesz usunąć tę domenę?"
msgid "Next" msgid "Next"
msgstr "Następne" msgstr "Następne"
#: cps/templates/feed.xml:79 cps/templates/layout.html:136
#: cps/templates/layout.html:140
msgid "(Public)"
msgstr ""
#: cps/templates/generate_kobo_auth_url.html:5 #: cps/templates/generate_kobo_auth_url.html:5
msgid "Open the .kobo/Kobo eReader.conf file in a text editor and add (or edit):" msgid "Open the .kobo/Kobo eReader.conf file in a text editor and add (or edit):"
msgstr "Otwórz plik .kobo/Kobo eReader.conf w edytorze tekstu i dodaj (lub edytuj):" msgstr "Otwórz plik .kobo/Kobo eReader.conf w edytorze tekstu i dodaj (lub edytuj):"

View File

@ -8,7 +8,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Calibre-Web\n" "Project-Id-Version: Calibre-Web\n"
"Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n" "Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n"
"POT-Creation-Date: 2020-05-01 17:15+0200\n" "POT-Creation-Date: 2020-05-23 08:46+0200\n"
"PO-Revision-Date: 2020-04-29 01:20+0400\n" "PO-Revision-Date: 2020-04-29 01:20+0400\n"
"Last-Translator: ZIZA\n" "Last-Translator: ZIZA\n"
"Language: ru\n" "Language: ru\n"
@ -47,9 +47,9 @@ msgstr "Успешно переподключено"
msgid "Unknown command" msgid "Unknown command"
msgstr "Неизвестная команда" msgstr "Неизвестная команда"
#: cps/admin.py:115 cps/editbooks.py:504 cps/editbooks.py:514 #: cps/admin.py:115 cps/editbooks.py:505 cps/editbooks.py:515
#: cps/editbooks.py:620 cps/editbooks.py:622 cps/editbooks.py:688 #: cps/editbooks.py:621 cps/editbooks.py:623 cps/editbooks.py:689
#: cps/updater.py:509 cps/uploader.py:99 cps/uploader.py:110 #: cps/updater.py:509 cps/uploader.py:100 cps/uploader.py:110
msgid "Unknown" msgid "Unknown"
msgstr "Неизвестно" msgstr "Неизвестно"
@ -61,223 +61,223 @@ msgstr "Администрирование"
msgid "UI Configuration" msgid "UI Configuration"
msgstr "Настройка интерфейса" msgstr "Настройка интерфейса"
#: cps/admin.py:192 cps/admin.py:674 #: cps/admin.py:189 cps/admin.py:671
msgid "Calibre-Web configuration updated" msgid "Calibre-Web configuration updated"
msgstr "Конфигурация Calibre-Web обновлена" msgstr "Конфигурация Calibre-Web обновлена"
#: cps/admin.py:438 cps/admin.py:444 cps/admin.py:455 cps/admin.py:466 #: cps/admin.py:435 cps/admin.py:441 cps/admin.py:452 cps/admin.py:463
#: cps/templates/modal_restriction.html:29 #: cps/templates/modal_restriction.html:29
msgid "Deny" msgid "Deny"
msgstr "Запретить" msgstr "Запретить"
#: cps/admin.py:440 cps/admin.py:446 cps/admin.py:457 cps/admin.py:468 #: cps/admin.py:437 cps/admin.py:443 cps/admin.py:454 cps/admin.py:465
#: cps/templates/modal_restriction.html:28 #: cps/templates/modal_restriction.html:28
msgid "Allow" msgid "Allow"
msgstr "Разрешить" msgstr "Разрешить"
#: cps/admin.py:509 #: cps/admin.py:506
msgid "client_secrets.json Is Not Configured For Web Application" msgid "client_secrets.json Is Not Configured For Web Application"
msgstr "client_secrets.json не настроен для веб-приложения" msgstr "client_secrets.json не настроен для веб-приложения"
#: cps/admin.py:525 #: cps/admin.py:522
msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgid "Keyfile Location is not Valid, Please Enter Correct Path"
msgstr "Расположение ключевого файла неверно, пожалуйста, введите правильный путь" msgstr "Расположение ключевого файла неверно, пожалуйста, введите правильный путь"
#: cps/admin.py:529 #: cps/admin.py:526
msgid "Certfile Location is not Valid, Please Enter Correct Path" msgid "Certfile Location is not Valid, Please Enter Correct Path"
msgstr "Расположение Certfile не является действительным, пожалуйста, введите правильный путь" msgstr "Расположение Certfile не является действительным, пожалуйста, введите правильный путь"
#: cps/admin.py:567 #: cps/admin.py:564
msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier"
msgstr "Пожалуйста, введите провайдера LDAP, порт, DN и идентификатор объекта пользователя" msgstr "Пожалуйста, введите провайдера LDAP, порт, DN и идентификатор объекта пользователя"
#: cps/admin.py:585 #: cps/admin.py:582
#, python-format #, python-format
msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier"
msgstr "Фильтр объектов группы LDAP должен иметь один идентификатор формата \"%s\"" msgstr "Фильтр объектов группы LDAP должен иметь один идентификатор формата \"%s\""
#: cps/admin.py:588 #: cps/admin.py:585
msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgid "LDAP Group Object Filter Has Unmatched Parenthesis"
msgstr "Фильтр объектов группы LDAP имеет незавершённые круглые скобки" msgstr "Фильтр объектов группы LDAP имеет незавершённые круглые скобки"
#: cps/admin.py:592 #: cps/admin.py:589
#, python-format #, python-format
msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier"
msgstr "Фильтр объектов пользователя LDAP должен иметь один идентификатор формата \"%s\"" msgstr "Фильтр объектов пользователя LDAP должен иметь один идентификатор формата \"%s\""
#: cps/admin.py:595 #: cps/admin.py:592
msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgid "LDAP User Object Filter Has Unmatched Parenthesis"
msgstr "Фильтр объектов пользователя LDAP имеет незавершенную круглую скобку" msgstr "Фильтр объектов пользователя LDAP имеет незавершенную круглую скобку"
#: cps/admin.py:599 #: cps/admin.py:596
msgid "LDAP Certificate Location is not Valid, Please Enter Correct Path" msgid "LDAP Certificate Location is not Valid, Please Enter Correct Path"
msgstr "Неверное расположение сертификата LDAP, пожалуйста, введите правильный путь" msgstr "Неверное расположение сертификата LDAP, пожалуйста, введите правильный путь"
#: cps/admin.py:647 #: cps/admin.py:644
msgid "Logfile Location is not Valid, Please Enter Correct Path" msgid "Logfile Location is not Valid, Please Enter Correct Path"
msgstr "Неправильное расположение файла журнала, пожалуйста, введите правильный путь." msgstr "Неправильное расположение файла журнала, пожалуйста, введите правильный путь."
#: cps/admin.py:652 #: cps/admin.py:649
msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgid "Access Logfile Location is not Valid, Please Enter Correct Path"
msgstr "Недопустимое расположение файла журнала доступа, пожалуйста, введите правильный путь" msgstr "Недопустимое расположение файла журнала доступа, пожалуйста, введите правильный путь"
#: cps/admin.py:671 #: cps/admin.py:668
msgid "DB Location is not Valid, Please Enter Correct Path" msgid "DB Location is not Valid, Please Enter Correct Path"
msgstr "Расположение Базы Данных неверно, пожалуйста, введите правильный путь." msgstr "Расположение Базы Данных неверно, пожалуйста, введите правильный путь."
#: cps/admin.py:704 #: cps/admin.py:701
msgid "Basic Configuration" msgid "Basic Configuration"
msgstr "Настройки сервера" msgstr "Настройки сервера"
#: cps/admin.py:728 cps/web.py:1230 #: cps/admin.py:725 cps/web.py:1235
msgid "Please fill out all fields!" msgid "Please fill out all fields!"
msgstr "Пожалуйста, заполните все поля!" msgstr "Пожалуйста, заполните все поля!"
#: cps/admin.py:731 cps/admin.py:743 cps/admin.py:749 cps/admin.py:767 #: cps/admin.py:728 cps/admin.py:740 cps/admin.py:746 cps/admin.py:764
msgid "Add new user" msgid "Add new user"
msgstr "Добавить пользователя" msgstr "Добавить пользователя"
#: cps/admin.py:740 cps/web.py:1472 #: cps/admin.py:737 cps/web.py:1477
msgid "E-mail is not from valid domain" msgid "E-mail is not from valid domain"
msgstr "E-mail не из существующей доменной зоны" msgstr "E-mail не из существующей доменной зоны"
#: cps/admin.py:747 cps/admin.py:762 #: cps/admin.py:744 cps/admin.py:759
msgid "Found an existing account for this e-mail address or nickname." msgid "Found an existing account for this e-mail address or nickname."
msgstr "Для этого адреса электронной почты или логина уже есть учётная запись." msgstr "Для этого адреса электронной почты или логина уже есть учётная запись."
#: cps/admin.py:758 #: cps/admin.py:755
#, python-format #, python-format
msgid "User '%(user)s' created" msgid "User '%(user)s' created"
msgstr "Пользователь '%(user)s' добавлен" msgstr "Пользователь '%(user)s' добавлен"
#: cps/admin.py:777 #: cps/admin.py:774
msgid "Edit e-mail server settings" msgid "Edit e-mail server settings"
msgstr "Изменить настройки e-mail сервера" msgstr "Изменить настройки e-mail сервера"
#: cps/admin.py:803 #: cps/admin.py:800
#, python-format #, python-format
msgid "Test e-mail successfully send to %(kindlemail)s" msgid "Test e-mail successfully send to %(kindlemail)s"
msgstr "Тестовое письмо успешно отправлено на %(kindlemail)s" msgstr "Тестовое письмо успешно отправлено на %(kindlemail)s"
#: cps/admin.py:806 #: cps/admin.py:803
#, python-format #, python-format
msgid "There was an error sending the Test e-mail: %(res)s" msgid "There was an error sending the Test e-mail: %(res)s"
msgstr "Произошла ошибка при отправке тестового письма на: %(res)s" msgstr "Произошла ошибка при отправке тестового письма на: %(res)s"
#: cps/admin.py:808 #: cps/admin.py:805
msgid "Please configure your e-mail address first..." msgid "Please configure your e-mail address first..."
msgstr "Пожалуйста, сначала настройте свой адрес электронной почты ..." msgstr "Пожалуйста, сначала настройте свой адрес электронной почты ..."
#: cps/admin.py:810 #: cps/admin.py:807
msgid "E-mail server settings updated" msgid "E-mail server settings updated"
msgstr "Настройки E-mail сервера обновлены" msgstr "Настройки E-mail сервера обновлены"
#: cps/admin.py:821 #: cps/admin.py:818
msgid "User not found" msgid "User not found"
msgstr "" msgstr ""
#: cps/admin.py:842 #: cps/admin.py:839
#, python-format #, python-format
msgid "User '%(nick)s' deleted" msgid "User '%(nick)s' deleted"
msgstr "Пользователь '%(nick)s' удалён" msgstr "Пользователь '%(nick)s' удалён"
#: cps/admin.py:845 #: cps/admin.py:842
msgid "No admin user remaining, can't delete user" msgid "No admin user remaining, can't delete user"
msgstr "Это последний администратор, невозможно удалить пользователя" msgstr "Это последний администратор, невозможно удалить пользователя"
#: cps/admin.py:851 #: cps/admin.py:848
msgid "No admin user remaining, can't remove admin role" msgid "No admin user remaining, can't remove admin role"
msgstr "" msgstr ""
#: cps/admin.py:887 cps/web.py:1515 #: cps/admin.py:884 cps/web.py:1520
msgid "Found an existing account for this e-mail address." msgid "Found an existing account for this e-mail address."
msgstr "Этот адрес электронной почты уже зарегистрирован." msgstr "Этот адрес электронной почты уже зарегистрирован."
#: cps/admin.py:897 cps/admin.py:912 cps/admin.py:932 cps/web.py:1490 #: cps/admin.py:894 cps/admin.py:909 cps/admin.py:929 cps/web.py:1495
#, python-format #, python-format
msgid "Edit User %(nick)s" msgid "Edit User %(nick)s"
msgstr "Изменить пользователя %(nick)s" msgstr "Изменить пользователя %(nick)s"
#: cps/admin.py:903 cps/web.py:1482 #: cps/admin.py:900 cps/web.py:1487
msgid "This username is already taken" msgid "This username is already taken"
msgstr "Это имя пользователя уже занято" msgstr "Это имя пользователя уже занято"
#: cps/admin.py:919 #: cps/admin.py:916
#, python-format #, python-format
msgid "User '%(nick)s' updated" msgid "User '%(nick)s' updated"
msgstr "Пользователь '%(nick)s' обновлён" msgstr "Пользователь '%(nick)s' обновлён"
#: cps/admin.py:922 #: cps/admin.py:919
msgid "An unknown error occured." msgid "An unknown error occured."
msgstr "Произошла неизвестная ошибка." msgstr "Произошла неизвестная ошибка."
#: cps/admin.py:943 #: cps/admin.py:940
#, python-format #, python-format
msgid "Password for user %(user)s reset" msgid "Password for user %(user)s reset"
msgstr "Пароль для пользователя %(user)s сброшен" msgstr "Пароль для пользователя %(user)s сброшен"
#: cps/admin.py:946 cps/web.py:1255 cps/web.py:1319 #: cps/admin.py:943 cps/web.py:1260 cps/web.py:1324
msgid "An unknown error occurred. Please try again later." msgid "An unknown error occurred. Please try again later."
msgstr "Неизвестная ошибка. Попробуйте позже." msgstr "Неизвестная ошибка. Попробуйте позже."
#: cps/admin.py:949 cps/web.py:1196 #: cps/admin.py:946 cps/web.py:1201
msgid "Please configure the SMTP mail settings first..." msgid "Please configure the SMTP mail settings first..."
msgstr "Пожалуйста, сперва настройте параметры SMTP....." msgstr "Пожалуйста, сперва настройте параметры SMTP....."
#: cps/admin.py:961 #: cps/admin.py:958
msgid "Logfile viewer" msgid "Logfile viewer"
msgstr "Просмотр лога" msgstr "Просмотр лога"
#: cps/admin.py:1000 #: cps/admin.py:997
msgid "Requesting update package" msgid "Requesting update package"
msgstr "Проверка обновлений" msgstr "Проверка обновлений"
#: cps/admin.py:1001 #: cps/admin.py:998
msgid "Downloading update package" msgid "Downloading update package"
msgstr "Загрузка обновлений" msgstr "Загрузка обновлений"
#: cps/admin.py:1002 #: cps/admin.py:999
msgid "Unzipping update package" msgid "Unzipping update package"
msgstr "Распаковка обновлений" msgstr "Распаковка обновлений"
#: cps/admin.py:1003 #: cps/admin.py:1000
msgid "Replacing files" msgid "Replacing files"
msgstr "Замена файлов" msgstr "Замена файлов"
#: cps/admin.py:1004 #: cps/admin.py:1001
msgid "Database connections are closed" msgid "Database connections are closed"
msgstr "Соединения с базой данных закрыты" msgstr "Соединения с базой данных закрыты"
#: cps/admin.py:1005 #: cps/admin.py:1002
msgid "Stopping server" msgid "Stopping server"
msgstr "Остановка сервера" msgstr "Остановка сервера"
#: cps/admin.py:1006 #: cps/admin.py:1003
msgid "Update finished, please press okay and reload page" msgid "Update finished, please press okay and reload page"
msgstr "Обновления установлены, нажмите ок и перезагрузите страницу" msgstr "Обновления установлены, нажмите ок и перезагрузите страницу"
#: cps/admin.py:1007 cps/admin.py:1008 cps/admin.py:1009 cps/admin.py:1010 #: cps/admin.py:1004 cps/admin.py:1005 cps/admin.py:1006 cps/admin.py:1007
#: cps/admin.py:1011 #: cps/admin.py:1008
msgid "Update failed:" msgid "Update failed:"
msgstr "Ошибка обновления:" msgstr "Ошибка обновления:"
#: cps/admin.py:1007 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522 #: cps/admin.py:1004 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522
msgid "HTTP Error" msgid "HTTP Error"
msgstr "Ошибка HTTP" msgstr "Ошибка HTTP"
#: cps/admin.py:1008 cps/updater.py:321 cps/updater.py:524 #: cps/admin.py:1005 cps/updater.py:321 cps/updater.py:524
msgid "Connection error" msgid "Connection error"
msgstr "Ошибка соединения" msgstr "Ошибка соединения"
#: cps/admin.py:1009 cps/updater.py:323 cps/updater.py:526 #: cps/admin.py:1006 cps/updater.py:323 cps/updater.py:526
msgid "Timeout while establishing connection" msgid "Timeout while establishing connection"
msgstr "Тайм-аут при установлении соединения" msgstr "Тайм-аут при установлении соединения"
#: cps/admin.py:1010 cps/updater.py:325 cps/updater.py:528 #: cps/admin.py:1007 cps/updater.py:325 cps/updater.py:528
msgid "General error" msgid "General error"
msgstr "Общая ошибка" msgstr "Общая ошибка"
#: cps/admin.py:1011 #: cps/admin.py:1008
msgid "Update File Could Not be Saved in Temp Dir" msgid "Update File Could Not be Saved in Temp Dir"
msgstr "Не удалось сохранить файл обновления во временной папке." msgstr "Не удалось сохранить файл обновления во временной папке."
@ -293,7 +293,7 @@ msgstr ""
msgid "Book Successfully Deleted" msgid "Book Successfully Deleted"
msgstr "" msgstr ""
#: cps/editbooks.py:253 cps/editbooks.py:489 #: cps/editbooks.py:253 cps/editbooks.py:490
msgid "Error opening eBook. File does not exist or file is not accessible" msgid "Error opening eBook. File does not exist or file is not accessible"
msgstr "Ошибка при открытии eBook. Файл не существует или файл недоступен" msgstr "Ошибка при открытии eBook. Файл не существует или файл недоступен"
@ -306,16 +306,16 @@ msgstr "изменить метаданные"
msgid "%(langname)s is not a valid language" msgid "%(langname)s is not a valid language"
msgstr "%(langname)s не допустимый язык" msgstr "%(langname)s не допустимый язык"
#: cps/editbooks.py:413 cps/editbooks.py:663 #: cps/editbooks.py:413 cps/editbooks.py:664
#, python-format #, python-format
msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgid "File extension '%(ext)s' is not allowed to be uploaded to this server"
msgstr "Запрещена загрузка файлов с расширением '%(ext)s'" msgstr "Запрещена загрузка файлов с расширением '%(ext)s'"
#: cps/editbooks.py:417 cps/editbooks.py:667 #: cps/editbooks.py:417 cps/editbooks.py:668
msgid "File to be uploaded must have an extension" msgid "File to be uploaded must have an extension"
msgstr "Загружаемый файл должен иметь расширение" msgstr "Загружаемый файл должен иметь расширение"
#: cps/editbooks.py:429 cps/editbooks.py:701 #: cps/editbooks.py:429 cps/editbooks.py:702
#, python-format #, python-format
msgid "Failed to create path %(path)s (Permission denied)." msgid "Failed to create path %(path)s (Permission denied)."
msgstr "Ошибка при создании пути %(path)s (Доступ запрещён)." msgstr "Ошибка при создании пути %(path)s (Доступ запрещён)."
@ -330,48 +330,48 @@ msgstr "Не удалось сохранить файл %(file)s."
msgid "File format %(ext)s added to %(book)s" msgid "File format %(ext)s added to %(book)s"
msgstr "Формат файла %(ext)s добавлен в %(book)s" msgstr "Формат файла %(ext)s добавлен в %(book)s"
#: cps/editbooks.py:606 #: cps/editbooks.py:607
msgid "Metadata successfully updated" msgid "Metadata successfully updated"
msgstr "Метаданные обновлены" msgstr "Метаданные обновлены"
#: cps/editbooks.py:615 #: cps/editbooks.py:616
msgid "Error editing book, please check logfile for details" msgid "Error editing book, please check logfile for details"
msgstr "Ошибка редактирования книги. Пожалуйста, проверьте лог-файл для дополнительной информации" msgstr "Ошибка редактирования книги. Пожалуйста, проверьте лог-файл для дополнительной информации"
#: cps/editbooks.py:675 #: cps/editbooks.py:676
#, python-format #, python-format
msgid "File %(filename)s could not saved to temp dir" msgid "File %(filename)s could not saved to temp dir"
msgstr "Файл %(filename)s не удалось сохранить во временную папку" msgstr "Файл %(filename)s не удалось сохранить во временную папку"
#: cps/editbooks.py:692 #: cps/editbooks.py:693
msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgid "Uploaded book probably exists in the library, consider to change before upload new: "
msgstr "Загруженная книга, вероятно, существует в библиотеке, перед тем как загрузить новую, рассмотрите возможность изменения: " msgstr "Загруженная книга, вероятно, существует в библиотеке, перед тем как загрузить новую, рассмотрите возможность изменения: "
#: cps/editbooks.py:707 #: cps/editbooks.py:709
#, python-format #, python-format
msgid "Failed to store file %(file)s (Permission denied)." msgid "Failed to Move File %(file)s: %(error)s"
msgstr "Ошибка записи файла %(file)s (Доступ запрещён)." msgstr ""
#: cps/editbooks.py:713 #: cps/editbooks.py:723
#, python-format #, python-format
msgid "Failed to delete file %(file)s (Permission denied)." msgid "Failed to Move Cover File %(file)s: %(error)s"
msgstr "Ошибка удаления файла %(file)s (Доступ запрещён)." msgstr ""
#: cps/editbooks.py:804 #: cps/editbooks.py:808
#, python-format #, python-format
msgid "File %(file)s uploaded" msgid "File %(file)s uploaded"
msgstr "Файл %(file)s загружен" msgstr "Файл %(file)s загружен"
#: cps/editbooks.py:833 #: cps/editbooks.py:837
msgid "Source or destination format for conversion missing" msgid "Source or destination format for conversion missing"
msgstr "Исходный или целевой формат для конвертирования отсутствует" msgstr "Исходный или целевой формат для конвертирования отсутствует"
#: cps/editbooks.py:841 #: cps/editbooks.py:845
#, python-format #, python-format
msgid "Book successfully queued for converting to %(book_format)s" msgid "Book successfully queued for converting to %(book_format)s"
msgstr "Книга успешно поставлена в очередь для конвертирования в %(book_format)s" msgstr "Книга успешно поставлена в очередь для конвертирования в %(book_format)s"
#: cps/editbooks.py:845 #: cps/editbooks.py:849
#, python-format #, python-format
msgid "There was an error converting this book: %(res)s" msgid "There was an error converting this book: %(res)s"
msgstr "Произошла ошибка при конвертирования этой книги: %(res)s" msgstr "Произошла ошибка при конвертирования этой книги: %(res)s"
@ -445,111 +445,111 @@ msgstr "Эл. почта: %(book)s"
msgid "The requested file could not be read. Maybe wrong permissions?" msgid "The requested file could not be read. Maybe wrong permissions?"
msgstr "Запрашиваемый файл не может быть прочитан. Возможно у вас нет разрешения?" msgstr "Запрашиваемый файл не может быть прочитан. Возможно у вас нет разрешения?"
#: cps/helper.py:299 #: cps/helper.py:300
#, python-format #, python-format
msgid "Deleting book %(id)s failed, path has subfolders: %(path)s" msgid "Deleting book %(id)s failed, path has subfolders: %(path)s"
msgstr "" msgstr ""
#: cps/helper.py:309 #: cps/helper.py:310
#, python-format #, python-format
msgid "Deleting book %(id)s failed: %(message)s" msgid "Deleting book %(id)s failed: %(message)s"
msgstr "" msgstr ""
#: cps/helper.py:319 #: cps/helper.py:320
#, python-format #, python-format
msgid "Deleting book %(id)s failed, book path not valid: %(path)s" msgid "Deleting book %(id)s failed, book path not valid: %(path)s"
msgstr "" msgstr ""
#: cps/helper.py:354 #: cps/helper.py:355
#, python-format #, python-format
msgid "Rename title from: '%(src)s' to '%(dest)s' failed with error: %(error)s" 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:364 #: cps/helper.py:365
#, python-format #, python-format
msgid "Rename author from: '%(src)s' to '%(dest)s' failed with error: %(error)s" 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:378 #: cps/helper.py:379
#, python-format #, python-format
msgid "Rename file in path '%(src)s' to '%(dest)s' failed with error: %(error)s" msgid "Rename file in path '%(src)s' to '%(dest)s' failed with error: %(error)s"
msgstr "Не удалось переименовать файл по пути '%(src)s' to '%(dest)s' из-за ошибки: %(error)s" msgstr "Не удалось переименовать файл по пути '%(src)s' to '%(dest)s' из-за ошибки: %(error)s"
#: cps/helper.py:404 cps/helper.py:414 cps/helper.py:422 #: cps/helper.py:405 cps/helper.py:415 cps/helper.py:423
#, python-format #, python-format
msgid "File %(file)s not found on Google Drive" msgid "File %(file)s not found on Google Drive"
msgstr "Файл %(file)s не найден на Google Drive" msgstr "Файл %(file)s не найден на Google Drive"
#: cps/helper.py:443 #: cps/helper.py:444
#, python-format #, python-format
msgid "Book path %(path)s not found on Google Drive" msgid "Book path %(path)s not found on Google Drive"
msgstr "Путь книги %(path)s не найден на Google Drive" msgstr "Путь книги %(path)s не найден на Google Drive"
#: cps/helper.py:550 #: cps/helper.py:551
msgid "Failed to create path for cover" msgid "Failed to create path for cover"
msgstr "Не удалось создать путь для обложки." msgstr "Не удалось создать путь для обложки."
#: cps/helper.py:555 #: cps/helper.py:556
msgid "Cover-file is not a valid image file, or could not be stored" msgid "Cover-file is not a valid image file, or could not be stored"
msgstr "" msgstr ""
#: cps/helper.py:566 #: cps/helper.py:567
msgid "Only jpg/jpeg/png/webp files are supported as coverfile" msgid "Only jpg/jpeg/png/webp files are supported as coverfile"
msgstr "Только файлы jpg / jpeg / png / webp поддерживаются в качестве файла обложки" msgstr "Только файлы jpg / jpeg / png / webp поддерживаются в качестве файла обложки"
#: cps/helper.py:580 #: cps/helper.py:581
msgid "Only jpg/jpeg files are supported as coverfile" msgid "Only jpg/jpeg files are supported as coverfile"
msgstr "Только файлы в формате jpg / jpeg поддерживаются как файл обложки" msgstr "Только файлы в формате jpg / jpeg поддерживаются как файл обложки"
#: cps/helper.py:622 #: cps/helper.py:625
msgid "Unrar binary file not found" msgid "Unrar binary file not found"
msgstr "" msgstr ""
#: cps/helper.py:635 #: cps/helper.py:638
msgid "Error excecuting UnRar" msgid "Error excecuting UnRar"
msgstr "" msgstr ""
#: cps/helper.py:691 #: cps/helper.py:694
msgid "Waiting" msgid "Waiting"
msgstr "Ожидание" msgstr "Ожидание"
#: cps/helper.py:693 #: cps/helper.py:696
msgid "Failed" msgid "Failed"
msgstr "Неудачно" msgstr "Неудачно"
#: cps/helper.py:695 #: cps/helper.py:698
msgid "Started" msgid "Started"
msgstr "Начало" msgstr "Начало"
#: cps/helper.py:697 #: cps/helper.py:700
msgid "Finished" msgid "Finished"
msgstr "Завершено" msgstr "Завершено"
#: cps/helper.py:699 #: cps/helper.py:702
msgid "Unknown Status" msgid "Unknown Status"
msgstr "Неизвестный статус" msgstr "Неизвестный статус"
#: cps/helper.py:704 #: cps/helper.py:707
msgid "E-mail: " msgid "E-mail: "
msgstr "E-mail: " msgstr "E-mail: "
#: cps/helper.py:706 cps/helper.py:710 #: cps/helper.py:709 cps/helper.py:713
msgid "Convert: " msgid "Convert: "
msgstr "Конвертировать: " msgstr "Конвертировать: "
#: cps/helper.py:708 #: cps/helper.py:711
msgid "Upload: " msgid "Upload: "
msgstr "Загрузить: " msgstr "Загрузить: "
#: cps/helper.py:712 #: cps/helper.py:715
msgid "Unknown Task: " msgid "Unknown Task: "
msgstr "Неизвестная задача: " msgstr "Неизвестная задача: "
#: cps/kobo_auth.py:126 #: cps/kobo_auth.py:130
msgid "PLease access calibre-web from non localhost to get valid api_endpoint for kobo device" msgid "PLease access calibre-web from non localhost to get valid api_endpoint for kobo device"
msgstr "Пожалуйста, подключитесь к Calibre-Web не с локального хоста, чтобы получить действительный api_endpoint для устройства Kobo" msgstr "Пожалуйста, подключитесь к Calibre-Web не с локального хоста, чтобы получить действительный api_endpoint для устройства Kobo"
#: cps/kobo_auth.py:129 cps/kobo_auth.py:149 #: cps/kobo_auth.py:133 cps/kobo_auth.py:153
msgid "Kobo Setup" msgid "Kobo Setup"
msgstr "Настройка Kobo" msgstr "Настройка Kobo"
@ -574,7 +574,7 @@ msgstr "Не удалось войти в систему с помощью Googl
msgid "Failed to fetch user info from Google." msgid "Failed to fetch user info from Google."
msgstr "Не удалось получить информацию о пользователе из Google." msgstr "Не удалось получить информацию о пользователе из Google."
#: cps/oauth_bb.py:225 cps/web.py:1291 cps/web.py:1431 #: cps/oauth_bb.py:225 cps/web.py:1296 cps/web.py:1436
#, python-format #, python-format
msgid "you are now logged in as: '%(nickname)s'" msgid "you are now logged in as: '%(nickname)s'"
msgstr "вы вошли как пользователь '%(nickname)s'" msgstr "вы вошли как пользователь '%(nickname)s'"
@ -726,7 +726,7 @@ msgstr "Популярные Книги"
msgid "Show Hot Books" msgid "Show Hot Books"
msgstr "Показывать популярные книги" msgstr "Показывать популярные книги"
#: cps/templates/index.xml:24 cps/ub.py:70 cps/web.py:615 #: cps/templates/index.xml:24 cps/ub.py:70 cps/web.py:616
msgid "Top Rated Books" msgid "Top Rated Books"
msgstr "Книги с наилучшим рейтингом" msgstr "Книги с наилучшим рейтингом"
@ -735,7 +735,7 @@ msgid "Show Top Rated Books"
msgstr "Показывать книги с наивысшим рейтингом" msgstr "Показывать книги с наивысшим рейтингом"
#: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:73 #: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:73
#: cps/web.py:1125 #: cps/web.py:1131
msgid "Read Books" msgid "Read Books"
msgstr "Прочитанные Книги" msgstr "Прочитанные Книги"
@ -744,7 +744,7 @@ msgid "Show read and unread"
msgstr "Показывать прочитанные и непрочитанные" msgstr "Показывать прочитанные и непрочитанные"
#: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:77 #: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:77
#: cps/web.py:1129 #: cps/web.py:1134
msgid "Unread Books" msgid "Unread Books"
msgstr "Непрочитанные Книги" msgstr "Непрочитанные Книги"
@ -760,7 +760,7 @@ msgstr "Обзор"
msgid "Show random books" msgid "Show random books"
msgstr "Показывать случайные книги" msgstr "Показывать случайные книги"
#: cps/templates/index.xml:75 cps/ub.py:83 cps/web.py:897 #: cps/templates/index.xml:75 cps/ub.py:83 cps/web.py:898
msgid "Categories" msgid "Categories"
msgstr "Категории" msgstr "Категории"
@ -769,7 +769,7 @@ msgid "Show category selection"
msgstr "Показывать выбор категории" msgstr "Показывать выбор категории"
#: cps/templates/book_edit.html:84 cps/templates/index.xml:82 #: cps/templates/book_edit.html:84 cps/templates/index.xml:82
#: cps/templates/search_form.html:53 cps/ub.py:86 cps/web.py:825 #: cps/templates/search_form.html:53 cps/ub.py:86 cps/web.py:826
msgid "Series" msgid "Series"
msgstr "Серии" msgstr "Серии"
@ -785,7 +785,7 @@ msgstr "Авторы"
msgid "Show author selection" msgid "Show author selection"
msgstr "Показывать выбор автора" msgstr "Показывать выбор автора"
#: cps/templates/index.xml:68 cps/ub.py:93 cps/web.py:809 #: cps/templates/index.xml:68 cps/ub.py:93 cps/web.py:810
msgid "Publishers" msgid "Publishers"
msgstr "Издатели" msgstr "Издатели"
@ -794,7 +794,7 @@ msgid "Show publisher selection"
msgstr "Показать выбор издателя" msgstr "Показать выбор издателя"
#: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:96 #: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:96
#: cps/web.py:880 #: cps/web.py:881
msgid "Languages" msgid "Languages"
msgstr "Языки" msgstr "Языки"
@ -818,7 +818,7 @@ msgstr "Форматы файлов"
msgid "Show file formats selection" msgid "Show file formats selection"
msgstr "Показать выбор форматов файлов" msgstr "Показать выбор форматов файлов"
#: cps/ub.py:107 cps/web.py:1150 #: cps/ub.py:107 cps/web.py:1155
msgid "Archived Books" msgid "Archived Books"
msgstr "" msgstr ""
@ -855,223 +855,223 @@ msgstr "Новое обновление доступно. Нажмите на к
msgid "Click on the button below to update to the latest stable version." msgid "Click on the button below to update to the latest stable version."
msgstr "Нажмите на кнопку ниже для обновления до последней стабильной версии." msgstr "Нажмите на кнопку ниже для обновления до последней стабильной версии."
#: cps/web.py:306 #: cps/web.py:307
#, python-format #, python-format
msgid "Error: %(ldaperror)s" msgid "Error: %(ldaperror)s"
msgstr "Ошибка: %(ldaperror)s" msgstr "Ошибка: %(ldaperror)s"
#: cps/web.py:310 #: cps/web.py:311
msgid "Error: No user returned in response of LDAP server" msgid "Error: No user returned in response of LDAP server"
msgstr "Ошибка: ни одного пользователя не найдено в ответ на запрос сервер LDAP" msgstr "Ошибка: ни одного пользователя не найдено в ответ на запрос сервер LDAP"
#: cps/web.py:358 #: cps/web.py:359
msgid "Failed to Create at Least One LDAP User" msgid "Failed to Create at Least One LDAP User"
msgstr "Не удалось создать хотя бы одного пользователя LDAP" msgstr "Не удалось создать хотя бы одного пользователя LDAP"
#: cps/web.py:361 #: cps/web.py:362
msgid "At Least One LDAP User Not Found in Database" msgid "At Least One LDAP User Not Found in Database"
msgstr "По крайней мере, один пользователь LDAP не найден в базе данных" msgstr "По крайней мере, один пользователь LDAP не найден в базе данных"
#: cps/web.py:363 #: cps/web.py:364
msgid "User Successfully Imported" msgid "User Successfully Imported"
msgstr "Пользователь успешно импортирован" msgstr "Пользователь успешно импортирован"
#: cps/web.py:587 #: cps/web.py:588
msgid "Recently Added Books" msgid "Recently Added Books"
msgstr "Недавно Добавленные Книги" msgstr "Недавно Добавленные Книги"
#: cps/templates/index.html:5 cps/web.py:623 #: cps/templates/index.html:5 cps/web.py:624
msgid "Discover (Random Books)" msgid "Discover (Random Books)"
msgstr "Обзор (Случайные Книги)" msgstr "Обзор (Случайные Книги)"
#: cps/web.py:651 #: cps/web.py:652
msgid "Books" msgid "Books"
msgstr "Книги" msgstr "Книги"
#: cps/web.py:678 #: cps/web.py:679
msgid "Hot Books (Most Downloaded)" msgid "Hot Books (Most Downloaded)"
msgstr "Популярные книги (часто загружаемые)" msgstr "Популярные книги (часто загружаемые)"
#: cps/web.py:688 #: cps/web.py:689
msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible" msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible"
msgstr "Невозможно открыть книгу. Файл не существует или недоступен" msgstr "Невозможно открыть книгу. Файл не существует или недоступен"
#: cps/web.py:702 #: cps/web.py:703
#, python-format #, python-format
msgid "Author: %(name)s" msgid "Author: %(name)s"
msgstr "Автор: %(name)s" msgstr "Автор: %(name)s"
#: cps/web.py:714 #: cps/web.py:715
#, python-format #, python-format
msgid "Publisher: %(name)s" msgid "Publisher: %(name)s"
msgstr "Издатель: %(name)s" msgstr "Издатель: %(name)s"
#: cps/web.py:725 #: cps/web.py:726
#, python-format #, python-format
msgid "Series: %(serie)s" msgid "Series: %(serie)s"
msgstr "Серии: %(serie)s" msgstr "Серии: %(serie)s"
#: cps/web.py:736 #: cps/web.py:737
#, python-format #, python-format
msgid "Rating: %(rating)s stars" msgid "Rating: %(rating)s stars"
msgstr "Оценка: %(rating)s звезды(а)" msgstr "Оценка: %(rating)s звезды(а)"
#: cps/web.py:748 #: cps/web.py:749
#, python-format #, python-format
msgid "File format: %(format)s" msgid "File format: %(format)s"
msgstr "Формат файла: %(format)s" msgstr "Формат файла: %(format)s"
#: cps/web.py:760 #: cps/web.py:761
#, python-format #, python-format
msgid "Category: %(name)s" msgid "Category: %(name)s"
msgstr "Категория: %(name)s" msgstr "Категория: %(name)s"
#: cps/web.py:777 #: cps/web.py:778
#, python-format #, python-format
msgid "Language: %(name)s" msgid "Language: %(name)s"
msgstr "Язык: %(name)s" msgstr "Язык: %(name)s"
#: cps/web.py:839 #: cps/web.py:840
msgid "Ratings list" msgid "Ratings list"
msgstr "Список рейтингов" msgstr "Список рейтингов"
#: cps/web.py:852 #: cps/web.py:853
msgid "File formats list" msgid "File formats list"
msgstr "Список форматов файлов" msgstr "Список форматов файлов"
#: cps/templates/layout.html:73 cps/templates/tasks.html:7 cps/web.py:911 #: cps/templates/layout.html:73 cps/templates/tasks.html:7 cps/web.py:912
msgid "Tasks" msgid "Tasks"
msgstr "Задания" msgstr "Задания"
#: cps/templates/book_edit.html:235 cps/templates/feed.xml:33 #: cps/templates/book_edit.html:235 cps/templates/feed.xml:33
#: cps/templates/layout.html:44 cps/templates/layout.html:47 #: cps/templates/layout.html:44 cps/templates/layout.html:47
#: cps/templates/search_form.html:170 cps/web.py:937 cps/web.py:942 #: cps/templates/search_form.html:174 cps/web.py:938 cps/web.py:943
msgid "Search" msgid "Search"
msgstr "Поиск" msgstr "Поиск"
#: cps/web.py:993 #: cps/web.py:994
msgid "Published after " msgid "Published after "
msgstr "Опубликовано после " msgstr "Опубликовано после "
#: cps/web.py:1000 #: cps/web.py:1001
msgid "Published before " msgid "Published before "
msgstr "Опубликовано до " msgstr "Опубликовано до "
#: cps/web.py:1014 #: cps/web.py:1015
#, python-format #, python-format
msgid "Rating <= %(rating)s" msgid "Rating <= %(rating)s"
msgstr "Рейтинг <= %(rating)s" msgstr "Рейтинг <= %(rating)s"
#: cps/web.py:1016 #: cps/web.py:1017
#, python-format #, python-format
msgid "Rating >= %(rating)s" msgid "Rating >= %(rating)s"
msgstr "Рейтинг >= %(rating)s" msgstr "Рейтинг >= %(rating)s"
#: cps/web.py:1082 cps/web.py:1096 #: cps/web.py:1083 cps/web.py:1097
msgid "search" msgid "search"
msgstr "поиск" msgstr "поиск"
#: cps/web.py:1201 #: cps/web.py:1206
#, python-format #, python-format
msgid "Book successfully queued for sending to %(kindlemail)s" msgid "Book successfully queued for sending to %(kindlemail)s"
msgstr "Книга успешно поставлена в очередь для отправки на %(kindlemail)s" msgstr "Книга успешно поставлена в очередь для отправки на %(kindlemail)s"
#: cps/web.py:1205 #: cps/web.py:1210
#, python-format #, python-format
msgid "Oops! There was an error sending this book: %(res)s" msgid "Oops! There was an error sending this book: %(res)s"
msgstr "При отправке этой книги произошла ошибка: %(res)s" msgstr "При отправке этой книги произошла ошибка: %(res)s"
#: cps/web.py:1207 #: cps/web.py:1212
msgid "Please update your profile with a valid Send to Kindle E-mail Address." msgid "Please update your profile with a valid Send to Kindle E-mail Address."
msgstr "Пожалуйста, сначала настройте e-mail на вашем kindle..." msgstr "Пожалуйста, сначала настройте e-mail на вашем kindle..."
#: cps/web.py:1224 #: cps/web.py:1229
msgid "E-Mail server is not configured, please contact your administrator!" msgid "E-Mail server is not configured, please contact your administrator!"
msgstr "Сервер электронной почты не настроен, обратитесь к администратору !" msgstr "Сервер электронной почты не настроен, обратитесь к администратору !"
#: cps/web.py:1225 cps/web.py:1231 cps/web.py:1256 cps/web.py:1260 #: cps/web.py:1230 cps/web.py:1236 cps/web.py:1261 cps/web.py:1265
#: cps/web.py:1265 cps/web.py:1269 #: cps/web.py:1270 cps/web.py:1274
msgid "register" msgid "register"
msgstr "регистрация" msgstr "регистрация"
#: cps/web.py:1258 #: cps/web.py:1263
msgid "Your e-mail is not allowed to register" msgid "Your e-mail is not allowed to register"
msgstr "Ваш e-mail не подходит для регистрации" msgstr "Ваш e-mail не подходит для регистрации"
#: cps/web.py:1261 #: cps/web.py:1266
msgid "Confirmation e-mail was send to your e-mail account." msgid "Confirmation e-mail was send to your e-mail account."
msgstr "Письмо с подтверждением отправлено вам на e-mail." msgstr "Письмо с подтверждением отправлено вам на e-mail."
#: cps/web.py:1264 #: cps/web.py:1269
msgid "This username or e-mail address is already in use." msgid "This username or e-mail address is already in use."
msgstr "Этот никнейм или e-mail уже используются." msgstr "Этот никнейм или e-mail уже используются."
#: cps/web.py:1281 #: cps/web.py:1286
msgid "Cannot activate LDAP authentication" msgid "Cannot activate LDAP authentication"
msgstr "Не удается активировать LDAP аутентификацию" msgstr "Не удается активировать LDAP аутентификацию"
#: cps/web.py:1298 #: cps/web.py:1303
#, python-format #, python-format
msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known"
msgstr "Резервный вход в систему как: '%(nickname)s', LDAP-сервер недоступен или пользователь не известен" msgstr "Резервный вход в систему как: '%(nickname)s', LDAP-сервер недоступен или пользователь не известен"
#: cps/web.py:1304 #: cps/web.py:1309
#, python-format #, python-format
msgid "Could not login: %(message)s" msgid "Could not login: %(message)s"
msgstr "Не удалось войти: %(message)s" msgstr "Не удалось войти: %(message)s"
#: cps/web.py:1308 cps/web.py:1332 #: cps/web.py:1313 cps/web.py:1337
msgid "Wrong Username or Password" msgid "Wrong Username or Password"
msgstr "Ошибка в имени пользователя или пароле" msgstr "Ошибка в имени пользователя или пароле"
#: cps/web.py:1315 #: cps/web.py:1320
msgid "New Password was send to your email address" msgid "New Password was send to your email address"
msgstr "Новый пароль был отправлен на ваш адрес электронной почты" msgstr "Новый пароль был отправлен на ваш адрес электронной почты"
#: cps/web.py:1321 #: cps/web.py:1326
msgid "Please enter valid username to reset password" msgid "Please enter valid username to reset password"
msgstr "Пожалуйста, введите действительное имя пользователя для сброса пароля" msgstr "Пожалуйста, введите действительное имя пользователя для сброса пароля"
#: cps/web.py:1327 #: cps/web.py:1332
#, python-format #, python-format
msgid "You are now logged in as: '%(nickname)s'" msgid "You are now logged in as: '%(nickname)s'"
msgstr "Вы вошли как: '%(nickname)s'" msgstr "Вы вошли как: '%(nickname)s'"
#: cps/web.py:1336 cps/web.py:1363 #: cps/web.py:1341 cps/web.py:1368
msgid "login" msgid "login"
msgstr "войти" msgstr "войти"
#: cps/web.py:1375 cps/web.py:1409 #: cps/web.py:1380 cps/web.py:1414
msgid "Token not found" msgid "Token not found"
msgstr "Ключ не найден" msgstr "Ключ не найден"
#: cps/web.py:1384 cps/web.py:1417 #: cps/web.py:1389 cps/web.py:1422
msgid "Token has expired" msgid "Token has expired"
msgstr "Ключ просрочен" msgstr "Ключ просрочен"
#: cps/web.py:1393 #: cps/web.py:1398
msgid "Success! Please return to your device" msgid "Success! Please return to your device"
msgstr "Успешно! Пожалуйста, проверьте свое устройство" msgstr "Успешно! Пожалуйста, проверьте свое устройство"
#: cps/web.py:1474 cps/web.py:1519 cps/web.py:1525 #: cps/web.py:1479 cps/web.py:1524 cps/web.py:1530
#, python-format #, python-format
msgid "%(name)s's profile" msgid "%(name)s's profile"
msgstr "Профиль %(name)s's" msgstr "Профиль %(name)s's"
#: cps/web.py:1521 #: cps/web.py:1526
msgid "Profile updated" msgid "Profile updated"
msgstr "Профиль обновлён" msgstr "Профиль обновлён"
#: cps/web.py:1538 cps/web.py:1642 #: cps/web.py:1543 cps/web.py:1647
msgid "Error opening eBook. File does not exist or file is not accessible:" msgid "Error opening eBook. File does not exist or file is not accessible:"
msgstr "Ошибка открытия электронной книги. Файл не существует или файл недоступен:" msgstr "Ошибка открытия электронной книги. Файл не существует или файл недоступен:"
#: cps/web.py:1550 cps/web.py:1553 cps/web.py:1556 cps/web.py:1563 #: cps/web.py:1555 cps/web.py:1558 cps/web.py:1561 cps/web.py:1568
#: cps/web.py:1568 #: cps/web.py:1573
msgid "Read a Book" msgid "Read a Book"
msgstr "Читать Книгу" msgstr "Читать Книгу"
#: cps/web.py:1579 #: cps/web.py:1584
msgid "Error opening eBook. File does not exist or file is not accessible." msgid "Error opening eBook. File does not exist or file is not accessible."
msgstr "Ошибка открытия электронной книги. Файл не существует или файл недоступен." msgstr "Ошибка открытия электронной книги. Файл не существует или файл недоступен."
@ -1297,13 +1297,13 @@ msgid "In Library"
msgstr "В библиотеке" msgstr "В библиотеке"
#: cps/templates/author.html:34 cps/templates/list.html:14 #: cps/templates/author.html:34 cps/templates/list.html:14
#: cps/templates/search.html:41 #: cps/templates/search.html:38
msgid "All" msgid "All"
msgstr "Все" msgstr "Все"
#: cps/templates/author.html:58 cps/templates/author.html:110 #: cps/templates/author.html:58 cps/templates/author.html:110
#: cps/templates/discover.html:27 cps/templates/index.html:26 #: cps/templates/discover.html:27 cps/templates/index.html:26
#: cps/templates/index.html:89 cps/templates/search.html:67 #: cps/templates/index.html:89 cps/templates/search.html:64
#: cps/templates/shelf.html:36 #: cps/templates/shelf.html:36
msgid "reduce" msgid "reduce"
msgstr "уменьшить" msgstr "уменьшить"
@ -1932,6 +1932,12 @@ msgstr "Описание:"
msgid "Add to shelf" msgid "Add to shelf"
msgstr "Добавить на книжную полку" msgstr "Добавить на книжную полку"
#: cps/templates/detail.html:243 cps/templates/detail.html:260
#: cps/templates/feed.xml:79 cps/templates/layout.html:136
#: cps/templates/layout.html:140 cps/templates/search.html:20
msgid "(Public)"
msgstr "(Публичная)"
#: cps/templates/detail.html:274 #: cps/templates/detail.html:274
msgid "Edit Metadata" msgid "Edit Metadata"
msgstr "Редактировать метаданные" msgstr "Редактировать метаданные"
@ -1980,11 +1986,6 @@ msgstr "Вы действительно желаете удалить это п
msgid "Next" msgid "Next"
msgstr "Далее" msgstr "Далее"
#: cps/templates/feed.xml:79 cps/templates/layout.html:136
#: cps/templates/layout.html:140
msgid "(Public)"
msgstr "(Публичная)"
#: cps/templates/generate_kobo_auth_url.html:5 #: cps/templates/generate_kobo_auth_url.html:5
msgid "Open the .kobo/Kobo eReader.conf file in a text editor and add (or edit):" 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 в текстовом редакторе и добавьте (или отредактируйте):"

View File

@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Calibre-Web\n" "Project-Id-Version: Calibre-Web\n"
"Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n" "Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n"
"POT-Creation-Date: 2020-05-01 17:15+0200\n" "POT-Creation-Date: 2020-05-23 08:46+0200\n"
"PO-Revision-Date: 2020-03-14 09:30+0100\n" "PO-Revision-Date: 2020-03-14 09:30+0100\n"
"Last-Translator: Jonatan Nyberg <jonatan.nyberg.karl@gmail.com>\n" "Last-Translator: Jonatan Nyberg <jonatan.nyberg.karl@gmail.com>\n"
"Language: sv\n" "Language: sv\n"
@ -46,9 +46,9 @@ msgstr ""
msgid "Unknown command" msgid "Unknown command"
msgstr "" msgstr ""
#: cps/admin.py:115 cps/editbooks.py:504 cps/editbooks.py:514 #: cps/admin.py:115 cps/editbooks.py:505 cps/editbooks.py:515
#: cps/editbooks.py:620 cps/editbooks.py:622 cps/editbooks.py:688 #: cps/editbooks.py:621 cps/editbooks.py:623 cps/editbooks.py:689
#: cps/updater.py:509 cps/uploader.py:99 cps/uploader.py:110 #: cps/updater.py:509 cps/uploader.py:100 cps/uploader.py:110
msgid "Unknown" msgid "Unknown"
msgstr "Okänd" msgstr "Okänd"
@ -60,223 +60,223 @@ msgstr "Administrationssida"
msgid "UI Configuration" msgid "UI Configuration"
msgstr "Användargränssnitt konfiguration" msgstr "Användargränssnitt konfiguration"
#: cps/admin.py:192 cps/admin.py:674 #: cps/admin.py:189 cps/admin.py:671
msgid "Calibre-Web configuration updated" msgid "Calibre-Web configuration updated"
msgstr "Calibre-Web konfiguration uppdaterad" msgstr "Calibre-Web konfiguration uppdaterad"
#: cps/admin.py:438 cps/admin.py:444 cps/admin.py:455 cps/admin.py:466 #: cps/admin.py:435 cps/admin.py:441 cps/admin.py:452 cps/admin.py:463
#: cps/templates/modal_restriction.html:29 #: cps/templates/modal_restriction.html:29
msgid "Deny" msgid "Deny"
msgstr "Förneka" msgstr "Förneka"
#: cps/admin.py:440 cps/admin.py:446 cps/admin.py:457 cps/admin.py:468 #: cps/admin.py:437 cps/admin.py:443 cps/admin.py:454 cps/admin.py:465
#: cps/templates/modal_restriction.html:28 #: cps/templates/modal_restriction.html:28
msgid "Allow" msgid "Allow"
msgstr "Tillåt" msgstr "Tillåt"
#: cps/admin.py:509 #: cps/admin.py:506
msgid "client_secrets.json Is Not Configured For Web Application" msgid "client_secrets.json Is Not Configured For Web Application"
msgstr "" msgstr ""
#: cps/admin.py:525 #: cps/admin.py:522
msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgid "Keyfile Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:529 #: cps/admin.py:526
msgid "Certfile Location is not Valid, Please Enter Correct Path" msgid "Certfile Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:567 #: cps/admin.py:564
msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier"
msgstr "" msgstr ""
#: cps/admin.py:585 #: cps/admin.py:582
#, python-format #, python-format
msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier"
msgstr "" msgstr ""
#: cps/admin.py:588 #: cps/admin.py:585
msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgid "LDAP Group Object Filter Has Unmatched Parenthesis"
msgstr "" msgstr ""
#: cps/admin.py:592 #: cps/admin.py:589
#, python-format #, python-format
msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier"
msgstr "" msgstr ""
#: cps/admin.py:595 #: cps/admin.py:592
msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgid "LDAP User Object Filter Has Unmatched Parenthesis"
msgstr "" msgstr ""
#: cps/admin.py:599 #: cps/admin.py:596
msgid "LDAP Certificate Location is not Valid, Please Enter Correct Path" msgid "LDAP Certificate Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:647 #: cps/admin.py:644
msgid "Logfile Location is not Valid, Please Enter Correct Path" msgid "Logfile Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:652 #: cps/admin.py:649
msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgid "Access Logfile Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:671 #: cps/admin.py:668
msgid "DB Location is not Valid, Please Enter Correct Path" msgid "DB Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:704 #: cps/admin.py:701
msgid "Basic Configuration" msgid "Basic Configuration"
msgstr "Grundläggande konfiguration" msgstr "Grundläggande konfiguration"
#: cps/admin.py:728 cps/web.py:1230 #: cps/admin.py:725 cps/web.py:1235
msgid "Please fill out all fields!" msgid "Please fill out all fields!"
msgstr "Fyll i alla fält!" msgstr "Fyll i alla fält!"
#: cps/admin.py:731 cps/admin.py:743 cps/admin.py:749 cps/admin.py:767 #: cps/admin.py:728 cps/admin.py:740 cps/admin.py:746 cps/admin.py:764
msgid "Add new user" msgid "Add new user"
msgstr "Lägg till ny användare" msgstr "Lägg till ny användare"
#: cps/admin.py:740 cps/web.py:1472 #: cps/admin.py:737 cps/web.py:1477
msgid "E-mail is not from valid domain" msgid "E-mail is not from valid domain"
msgstr "E-posten är inte från giltig domän" msgstr "E-posten är inte från giltig domän"
#: cps/admin.py:747 cps/admin.py:762 #: cps/admin.py:744 cps/admin.py:759
msgid "Found an existing account for this e-mail address or nickname." 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." msgstr "Hittade ett befintligt konto för den här e-postadressen eller smeknamnet."
#: cps/admin.py:758 #: cps/admin.py:755
#, python-format #, python-format
msgid "User '%(user)s' created" msgid "User '%(user)s' created"
msgstr "Användaren '%(user)s' skapad" msgstr "Användaren '%(user)s' skapad"
#: cps/admin.py:777 #: cps/admin.py:774
msgid "Edit e-mail server settings" msgid "Edit e-mail server settings"
msgstr "Redigera inställningar för e-postserver" msgstr "Redigera inställningar för e-postserver"
#: cps/admin.py:803 #: cps/admin.py:800
#, python-format #, python-format
msgid "Test e-mail successfully send to %(kindlemail)s" msgid "Test e-mail successfully send to %(kindlemail)s"
msgstr "Test-e-post skicka till %(kindlemail)s" msgstr "Test-e-post skicka till %(kindlemail)s"
#: cps/admin.py:806 #: cps/admin.py:803
#, python-format #, python-format
msgid "There was an error sending the Test e-mail: %(res)s" msgid "There was an error sending the Test e-mail: %(res)s"
msgstr "Det gick inte att skicka Testmeddelandet: %(res)s" msgstr "Det gick inte att skicka Testmeddelandet: %(res)s"
#: cps/admin.py:808 #: cps/admin.py:805
msgid "Please configure your e-mail address first..." msgid "Please configure your e-mail address first..."
msgstr "Vänligen konfigurera din e-postadress först..." msgstr "Vänligen konfigurera din e-postadress först..."
#: cps/admin.py:810 #: cps/admin.py:807
msgid "E-mail server settings updated" msgid "E-mail server settings updated"
msgstr "E-postserverinställningar uppdaterade" msgstr "E-postserverinställningar uppdaterade"
#: cps/admin.py:821 #: cps/admin.py:818
msgid "User not found" msgid "User not found"
msgstr "" msgstr ""
#: cps/admin.py:842 #: cps/admin.py:839
#, python-format #, python-format
msgid "User '%(nick)s' deleted" msgid "User '%(nick)s' deleted"
msgstr "Användaren '%(nick)s' borttagen" msgstr "Användaren '%(nick)s' borttagen"
#: cps/admin.py:845 #: cps/admin.py:842
msgid "No admin user remaining, can't delete user" msgid "No admin user remaining, can't delete user"
msgstr "Ingen adminstratörsanvändare kvar, kan inte ta bort användaren" msgstr "Ingen adminstratörsanvändare kvar, kan inte ta bort användaren"
#: cps/admin.py:851 #: cps/admin.py:848
msgid "No admin user remaining, can't remove admin role" msgid "No admin user remaining, can't remove admin role"
msgstr "" msgstr ""
#: cps/admin.py:887 cps/web.py:1515 #: cps/admin.py:884 cps/web.py:1520
msgid "Found an existing account for this e-mail address." msgid "Found an existing account for this e-mail address."
msgstr "Hittade ett befintligt konto för den här e-postadressen." msgstr "Hittade ett befintligt konto för den här e-postadressen."
#: cps/admin.py:897 cps/admin.py:912 cps/admin.py:932 cps/web.py:1490 #: cps/admin.py:894 cps/admin.py:909 cps/admin.py:929 cps/web.py:1495
#, python-format #, python-format
msgid "Edit User %(nick)s" msgid "Edit User %(nick)s"
msgstr "Redigera användaren %(nick)s" msgstr "Redigera användaren %(nick)s"
#: cps/admin.py:903 cps/web.py:1482 #: cps/admin.py:900 cps/web.py:1487
msgid "This username is already taken" msgid "This username is already taken"
msgstr "Detta användarnamn är redan taget" msgstr "Detta användarnamn är redan taget"
#: cps/admin.py:919 #: cps/admin.py:916
#, python-format #, python-format
msgid "User '%(nick)s' updated" msgid "User '%(nick)s' updated"
msgstr "Användaren '%(nick)s' uppdaterad" msgstr "Användaren '%(nick)s' uppdaterad"
#: cps/admin.py:922 #: cps/admin.py:919
msgid "An unknown error occured." msgid "An unknown error occured."
msgstr "Ett okänt fel uppstod." msgstr "Ett okänt fel uppstod."
#: cps/admin.py:943 #: cps/admin.py:940
#, python-format #, python-format
msgid "Password for user %(user)s reset" msgid "Password for user %(user)s reset"
msgstr "Lösenord för användaren %(user)s återställd" msgstr "Lösenord för användaren %(user)s återställd"
#: cps/admin.py:946 cps/web.py:1255 cps/web.py:1319 #: cps/admin.py:943 cps/web.py:1260 cps/web.py:1324
msgid "An unknown error occurred. Please try again later." msgid "An unknown error occurred. Please try again later."
msgstr "Ett okänt fel uppstod. Försök igen senare." msgstr "Ett okänt fel uppstod. Försök igen senare."
#: cps/admin.py:949 cps/web.py:1196 #: cps/admin.py:946 cps/web.py:1201
msgid "Please configure the SMTP mail settings first..." msgid "Please configure the SMTP mail settings first..."
msgstr "Konfigurera SMTP-postinställningarna först..." msgstr "Konfigurera SMTP-postinställningarna först..."
#: cps/admin.py:961 #: cps/admin.py:958
msgid "Logfile viewer" msgid "Logfile viewer"
msgstr "Visaren för loggfil" msgstr "Visaren för loggfil"
#: cps/admin.py:1000 #: cps/admin.py:997
msgid "Requesting update package" msgid "Requesting update package"
msgstr "Begär uppdateringspaketet" msgstr "Begär uppdateringspaketet"
#: cps/admin.py:1001 #: cps/admin.py:998
msgid "Downloading update package" msgid "Downloading update package"
msgstr "Hämtar uppdateringspaketet" msgstr "Hämtar uppdateringspaketet"
#: cps/admin.py:1002 #: cps/admin.py:999
msgid "Unzipping update package" msgid "Unzipping update package"
msgstr "Packar upp uppdateringspaketet" msgstr "Packar upp uppdateringspaketet"
#: cps/admin.py:1003 #: cps/admin.py:1000
msgid "Replacing files" msgid "Replacing files"
msgstr "Ersätta filer" msgstr "Ersätta filer"
#: cps/admin.py:1004 #: cps/admin.py:1001
msgid "Database connections are closed" msgid "Database connections are closed"
msgstr "Databasanslutningarna är stängda" msgstr "Databasanslutningarna är stängda"
#: cps/admin.py:1005 #: cps/admin.py:1002
msgid "Stopping server" msgid "Stopping server"
msgstr "Stoppar server" msgstr "Stoppar server"
#: cps/admin.py:1006 #: cps/admin.py:1003
msgid "Update finished, please press okay and reload page" msgid "Update finished, please press okay and reload page"
msgstr "Uppdatering klar, tryck på okej och uppdatera sidan" msgstr "Uppdatering klar, tryck på okej och uppdatera sidan"
#: cps/admin.py:1007 cps/admin.py:1008 cps/admin.py:1009 cps/admin.py:1010 #: cps/admin.py:1004 cps/admin.py:1005 cps/admin.py:1006 cps/admin.py:1007
#: cps/admin.py:1011 #: cps/admin.py:1008
msgid "Update failed:" msgid "Update failed:"
msgstr "Uppdateringen misslyckades:" msgstr "Uppdateringen misslyckades:"
#: cps/admin.py:1007 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522 #: cps/admin.py:1004 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522
msgid "HTTP Error" msgid "HTTP Error"
msgstr "HTTP-fel" msgstr "HTTP-fel"
#: cps/admin.py:1008 cps/updater.py:321 cps/updater.py:524 #: cps/admin.py:1005 cps/updater.py:321 cps/updater.py:524
msgid "Connection error" msgid "Connection error"
msgstr "Anslutningsfel" msgstr "Anslutningsfel"
#: cps/admin.py:1009 cps/updater.py:323 cps/updater.py:526 #: cps/admin.py:1006 cps/updater.py:323 cps/updater.py:526
msgid "Timeout while establishing connection" msgid "Timeout while establishing connection"
msgstr "Tiden ute när du etablerade anslutning" msgstr "Tiden ute när du etablerade anslutning"
#: cps/admin.py:1010 cps/updater.py:325 cps/updater.py:528 #: cps/admin.py:1007 cps/updater.py:325 cps/updater.py:528
msgid "General error" msgid "General error"
msgstr "Allmänt fel" msgstr "Allmänt fel"
#: cps/admin.py:1011 #: cps/admin.py:1008
msgid "Update File Could Not be Saved in Temp Dir" msgid "Update File Could Not be Saved in Temp Dir"
msgstr "" msgstr ""
@ -292,7 +292,7 @@ msgstr ""
msgid "Book Successfully Deleted" msgid "Book Successfully Deleted"
msgstr "" msgstr ""
#: cps/editbooks.py:253 cps/editbooks.py:489 #: cps/editbooks.py:253 cps/editbooks.py:490
msgid "Error opening eBook. File does not exist or file is not accessible" msgid "Error opening eBook. File does not exist or file is not accessible"
msgstr "Det gick inte att öppna e-boken. Filen finns inte eller filen är inte tillgänglig" msgstr "Det gick inte att öppna e-boken. Filen finns inte eller filen är inte tillgänglig"
@ -305,16 +305,16 @@ msgstr "redigera metadata"
msgid "%(langname)s is not a valid language" msgid "%(langname)s is not a valid language"
msgstr "%(langname)s är inte ett giltigt språk" msgstr "%(langname)s är inte ett giltigt språk"
#: cps/editbooks.py:413 cps/editbooks.py:663 #: cps/editbooks.py:413 cps/editbooks.py:664
#, python-format #, python-format
msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" 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" msgstr "Filändelsen '%(ext)s' får inte laddas upp till den här servern"
#: cps/editbooks.py:417 cps/editbooks.py:667 #: cps/editbooks.py:417 cps/editbooks.py:668
msgid "File to be uploaded must have an extension" msgid "File to be uploaded must have an extension"
msgstr "Filen som ska laddas upp måste ha en ändelse" msgstr "Filen som ska laddas upp måste ha en ändelse"
#: cps/editbooks.py:429 cps/editbooks.py:701 #: cps/editbooks.py:429 cps/editbooks.py:702
#, python-format #, python-format
msgid "Failed to create path %(path)s (Permission denied)." msgid "Failed to create path %(path)s (Permission denied)."
msgstr "Det gick inte att skapa sökväg %(path)s (behörighet nekad)." msgstr "Det gick inte att skapa sökväg %(path)s (behörighet nekad)."
@ -329,48 +329,48 @@ msgstr "Det gick inte att lagra filen %(file)s."
msgid "File format %(ext)s added to %(book)s" msgid "File format %(ext)s added to %(book)s"
msgstr "Filformatet %(ext)s lades till %(book)s" msgstr "Filformatet %(ext)s lades till %(book)s"
#: cps/editbooks.py:606 #: cps/editbooks.py:607
msgid "Metadata successfully updated" msgid "Metadata successfully updated"
msgstr "Metadata uppdaterades" msgstr "Metadata uppdaterades"
#: cps/editbooks.py:615 #: cps/editbooks.py:616
msgid "Error editing book, please check logfile for details" msgid "Error editing book, please check logfile for details"
msgstr "Det gick inte att redigera boken, kontrollera loggfilen för mer information" msgstr "Det gick inte att redigera boken, kontrollera loggfilen för mer information"
#: cps/editbooks.py:675 #: cps/editbooks.py:676
#, python-format #, python-format
msgid "File %(filename)s could not saved to temp dir" msgid "File %(filename)s could not saved to temp dir"
msgstr "Filen %(filename)s kunde inte sparas i temp dir" msgstr "Filen %(filename)s kunde inte sparas i temp dir"
#: cps/editbooks.py:692 #: cps/editbooks.py:693
msgid "Uploaded book probably exists in the library, consider to change before upload new: " 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: " msgstr "Uppladdad bok finns förmodligen i biblioteket, överväg att ändra innan du laddar upp nya: "
#: cps/editbooks.py:707 #: cps/editbooks.py:709
#, python-format #, python-format
msgid "Failed to store file %(file)s (Permission denied)." msgid "Failed to Move File %(file)s: %(error)s"
msgstr "Det gick inte att lagra filen %(file)s (behörighet nekad)." msgstr ""
#: cps/editbooks.py:713 #: cps/editbooks.py:723
#, python-format #, python-format
msgid "Failed to delete file %(file)s (Permission denied)." msgid "Failed to Move Cover File %(file)s: %(error)s"
msgstr "Det gick inte att ta bort filen %(file)s (behörighet nekad)." msgstr ""
#: cps/editbooks.py:804 #: cps/editbooks.py:808
#, python-format #, python-format
msgid "File %(file)s uploaded" msgid "File %(file)s uploaded"
msgstr "Filen %(file)s uppladdad" msgstr "Filen %(file)s uppladdad"
#: cps/editbooks.py:833 #: cps/editbooks.py:837
msgid "Source or destination format for conversion missing" msgid "Source or destination format for conversion missing"
msgstr "Källa eller målformat för konvertering saknas" msgstr "Källa eller målformat för konvertering saknas"
#: cps/editbooks.py:841 #: cps/editbooks.py:845
#, python-format #, python-format
msgid "Book successfully queued for converting to %(book_format)s" msgid "Book successfully queued for converting to %(book_format)s"
msgstr "Boken är i kö för konvertering till %(book_format)s" msgstr "Boken är i kö för konvertering till %(book_format)s"
#: cps/editbooks.py:845 #: cps/editbooks.py:849
#, python-format #, python-format
msgid "There was an error converting this book: %(res)s" msgid "There was an error converting this book: %(res)s"
msgstr "Det gick inte att konvertera den här boken: %(res)s" msgstr "Det gick inte att konvertera den här boken: %(res)s"
@ -444,111 +444,111 @@ msgstr "E-post: %(book)s"
msgid "The requested file could not be read. Maybe wrong permissions?" msgid "The requested file could not be read. Maybe wrong permissions?"
msgstr "Den begärda filen kunde inte läsas. Kanske fel behörigheter?" msgstr "Den begärda filen kunde inte läsas. Kanske fel behörigheter?"
#: cps/helper.py:299 #: cps/helper.py:300
#, python-format #, python-format
msgid "Deleting book %(id)s failed, path has subfolders: %(path)s" msgid "Deleting book %(id)s failed, path has subfolders: %(path)s"
msgstr "" msgstr ""
#: cps/helper.py:309 #: cps/helper.py:310
#, python-format #, python-format
msgid "Deleting book %(id)s failed: %(message)s" msgid "Deleting book %(id)s failed: %(message)s"
msgstr "" msgstr ""
#: cps/helper.py:319 #: cps/helper.py:320
#, python-format #, python-format
msgid "Deleting book %(id)s failed, book path not valid: %(path)s" msgid "Deleting book %(id)s failed, book path not valid: %(path)s"
msgstr "" msgstr ""
#: cps/helper.py:354 #: cps/helper.py:355
#, python-format #, python-format
msgid "Rename title from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgid "Rename title from: '%(src)s' to '%(dest)s' failed with error: %(error)s"
msgstr "Byt namn på titel från: \"%(src)s\" till \"%(dest)s\" misslyckades med fel: %(error)s" msgstr "Byt namn på titel från: \"%(src)s\" till \"%(dest)s\" misslyckades med fel: %(error)s"
#: cps/helper.py:364 #: cps/helper.py:365
#, python-format #, python-format
msgid "Rename author from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgid "Rename author from: '%(src)s' to '%(dest)s' failed with error: %(error)s"
msgstr "Byt namn på författare från: \"%(src)s\" till \"%(dest)s\" misslyckades med fel: %(error)s" msgstr "Byt namn på författare från: \"%(src)s\" till \"%(dest)s\" misslyckades med fel: %(error)s"
#: cps/helper.py:378 #: cps/helper.py:379
#, python-format #, python-format
msgid "Rename file in path '%(src)s' to '%(dest)s' failed with error: %(error)s" msgid "Rename file in path '%(src)s' to '%(dest)s' failed with error: %(error)s"
msgstr "Byt namn på fil i sökvägen '%(src)s' till '%(dest)s' misslyckades med fel: %(error)s" msgstr "Byt namn på fil i sökvägen '%(src)s' till '%(dest)s' misslyckades med fel: %(error)s"
#: cps/helper.py:404 cps/helper.py:414 cps/helper.py:422 #: cps/helper.py:405 cps/helper.py:415 cps/helper.py:423
#, python-format #, python-format
msgid "File %(file)s not found on Google Drive" msgid "File %(file)s not found on Google Drive"
msgstr "Filen %(file)s hittades inte på Google Drive" msgstr "Filen %(file)s hittades inte på Google Drive"
#: cps/helper.py:443 #: cps/helper.py:444
#, python-format #, python-format
msgid "Book path %(path)s not found on Google Drive" msgid "Book path %(path)s not found on Google Drive"
msgstr "Boksökvägen %(path)s hittades inte på Google Drive" msgstr "Boksökvägen %(path)s hittades inte på Google Drive"
#: cps/helper.py:550 #: cps/helper.py:551
msgid "Failed to create path for cover" msgid "Failed to create path for cover"
msgstr "Det gick inte att skapa sökväg för omslag" msgstr "Det gick inte att skapa sökväg för omslag"
#: cps/helper.py:555 #: cps/helper.py:556
msgid "Cover-file is not a valid image file, or could not be stored" msgid "Cover-file is not a valid image file, or could not be stored"
msgstr "" msgstr ""
#: cps/helper.py:566 #: cps/helper.py:567
msgid "Only jpg/jpeg/png/webp files are supported as coverfile" msgid "Only jpg/jpeg/png/webp files are supported as coverfile"
msgstr "Endast jpg/jpeg/png/webp-filer stöds som omslagsfil" msgstr "Endast jpg/jpeg/png/webp-filer stöds som omslagsfil"
#: cps/helper.py:580 #: cps/helper.py:581
msgid "Only jpg/jpeg files are supported as coverfile" msgid "Only jpg/jpeg files are supported as coverfile"
msgstr "Endast jpg/jpeg-filer stöds som omslagsfil" msgstr "Endast jpg/jpeg-filer stöds som omslagsfil"
#: cps/helper.py:622 #: cps/helper.py:625
msgid "Unrar binary file not found" msgid "Unrar binary file not found"
msgstr "" msgstr ""
#: cps/helper.py:635 #: cps/helper.py:638
msgid "Error excecuting UnRar" msgid "Error excecuting UnRar"
msgstr "" msgstr ""
#: cps/helper.py:691 #: cps/helper.py:694
msgid "Waiting" msgid "Waiting"
msgstr "Väntar" msgstr "Väntar"
#: cps/helper.py:693 #: cps/helper.py:696
msgid "Failed" msgid "Failed"
msgstr "Misslyckades" msgstr "Misslyckades"
#: cps/helper.py:695 #: cps/helper.py:698
msgid "Started" msgid "Started"
msgstr "Startad" msgstr "Startad"
#: cps/helper.py:697 #: cps/helper.py:700
msgid "Finished" msgid "Finished"
msgstr "Klar" msgstr "Klar"
#: cps/helper.py:699 #: cps/helper.py:702
msgid "Unknown Status" msgid "Unknown Status"
msgstr "Okänd status" msgstr "Okänd status"
#: cps/helper.py:704 #: cps/helper.py:707
msgid "E-mail: " msgid "E-mail: "
msgstr "E-post: " msgstr "E-post: "
#: cps/helper.py:706 cps/helper.py:710 #: cps/helper.py:709 cps/helper.py:713
msgid "Convert: " msgid "Convert: "
msgstr "Konvertera: " msgstr "Konvertera: "
#: cps/helper.py:708 #: cps/helper.py:711
msgid "Upload: " msgid "Upload: "
msgstr "Överför: " msgstr "Överför: "
#: cps/helper.py:712 #: cps/helper.py:715
msgid "Unknown Task: " msgid "Unknown Task: "
msgstr "Okänd uppgift: " msgstr "Okänd uppgift: "
#: cps/kobo_auth.py:126 #: cps/kobo_auth.py:130
msgid "PLease access calibre-web from non localhost to get valid api_endpoint for kobo device" msgid "PLease access calibre-web from non localhost to get valid api_endpoint for kobo device"
msgstr "Vänligen få tillgång till calibre-web från icke localhost för att få giltig api_endpoint för Kobo-enhet" msgstr "Vänligen få tillgång till calibre-web från icke localhost för att få giltig api_endpoint för Kobo-enhet"
#: cps/kobo_auth.py:129 cps/kobo_auth.py:149 #: cps/kobo_auth.py:133 cps/kobo_auth.py:153
msgid "Kobo Setup" msgid "Kobo Setup"
msgstr "Kobo-installation" msgstr "Kobo-installation"
@ -573,7 +573,7 @@ msgstr "Det gick inte att logga in med Google."
msgid "Failed to fetch user info from Google." msgid "Failed to fetch user info from Google."
msgstr "Det gick inte att hämta användarinformation från Google." msgstr "Det gick inte att hämta användarinformation från Google."
#: cps/oauth_bb.py:225 cps/web.py:1291 cps/web.py:1431 #: cps/oauth_bb.py:225 cps/web.py:1296 cps/web.py:1436
#, python-format #, python-format
msgid "you are now logged in as: '%(nickname)s'" msgid "you are now logged in as: '%(nickname)s'"
msgstr "du är nu inloggad som: \"%(nickname)s\"" msgstr "du är nu inloggad som: \"%(nickname)s\""
@ -725,7 +725,7 @@ msgstr "Heta böcker"
msgid "Show Hot Books" msgid "Show Hot Books"
msgstr "Visa heta böcker" msgstr "Visa heta böcker"
#: cps/templates/index.xml:24 cps/ub.py:70 cps/web.py:615 #: cps/templates/index.xml:24 cps/ub.py:70 cps/web.py:616
msgid "Top Rated Books" msgid "Top Rated Books"
msgstr "Bäst rankade böcker" msgstr "Bäst rankade böcker"
@ -734,7 +734,7 @@ msgid "Show Top Rated Books"
msgstr "Visa böcker med bästa betyg" msgstr "Visa böcker med bästa betyg"
#: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:73 #: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:73
#: cps/web.py:1125 #: cps/web.py:1131
msgid "Read Books" msgid "Read Books"
msgstr "Lästa böcker" msgstr "Lästa böcker"
@ -743,7 +743,7 @@ msgid "Show read and unread"
msgstr "Visa lästa och olästa" msgstr "Visa lästa och olästa"
#: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:77 #: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:77
#: cps/web.py:1129 #: cps/web.py:1134
msgid "Unread Books" msgid "Unread Books"
msgstr "Olästa böcker" msgstr "Olästa böcker"
@ -759,7 +759,7 @@ msgstr "Upptäck"
msgid "Show random books" msgid "Show random books"
msgstr "Visa slumpmässiga böcker" msgstr "Visa slumpmässiga böcker"
#: cps/templates/index.xml:75 cps/ub.py:83 cps/web.py:897 #: cps/templates/index.xml:75 cps/ub.py:83 cps/web.py:898
msgid "Categories" msgid "Categories"
msgstr "Kategorier" msgstr "Kategorier"
@ -768,7 +768,7 @@ msgid "Show category selection"
msgstr "Visa kategorival" msgstr "Visa kategorival"
#: cps/templates/book_edit.html:84 cps/templates/index.xml:82 #: cps/templates/book_edit.html:84 cps/templates/index.xml:82
#: cps/templates/search_form.html:53 cps/ub.py:86 cps/web.py:825 #: cps/templates/search_form.html:53 cps/ub.py:86 cps/web.py:826
msgid "Series" msgid "Series"
msgstr "Serier" msgstr "Serier"
@ -784,7 +784,7 @@ msgstr "Författare"
msgid "Show author selection" msgid "Show author selection"
msgstr "Visa författarval" msgstr "Visa författarval"
#: cps/templates/index.xml:68 cps/ub.py:93 cps/web.py:809 #: cps/templates/index.xml:68 cps/ub.py:93 cps/web.py:810
msgid "Publishers" msgid "Publishers"
msgstr "Förlag" msgstr "Förlag"
@ -793,7 +793,7 @@ msgid "Show publisher selection"
msgstr "Visa urval av förlag" msgstr "Visa urval av förlag"
#: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:96 #: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:96
#: cps/web.py:880 #: cps/web.py:881
msgid "Languages" msgid "Languages"
msgstr "Språk" msgstr "Språk"
@ -817,7 +817,7 @@ msgstr "Filformat"
msgid "Show file formats selection" msgid "Show file formats selection"
msgstr "Visa val av filformat" msgstr "Visa val av filformat"
#: cps/ub.py:107 cps/web.py:1150 #: cps/ub.py:107 cps/web.py:1155
msgid "Archived Books" msgid "Archived Books"
msgstr "" msgstr ""
@ -854,223 +854,223 @@ 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." 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." msgstr "Klicka på knappen nedan för att uppdatera till den senaste stabila versionen."
#: cps/web.py:306 #: cps/web.py:307
#, python-format #, python-format
msgid "Error: %(ldaperror)s" msgid "Error: %(ldaperror)s"
msgstr "" msgstr ""
#: cps/web.py:310 #: cps/web.py:311
msgid "Error: No user returned in response of LDAP server" msgid "Error: No user returned in response of LDAP server"
msgstr "" msgstr ""
#: cps/web.py:358 #: cps/web.py:359
msgid "Failed to Create at Least One LDAP User" msgid "Failed to Create at Least One LDAP User"
msgstr "" msgstr ""
#: cps/web.py:361 #: cps/web.py:362
msgid "At Least One LDAP User Not Found in Database" msgid "At Least One LDAP User Not Found in Database"
msgstr "" msgstr ""
#: cps/web.py:363 #: cps/web.py:364
msgid "User Successfully Imported" msgid "User Successfully Imported"
msgstr "" msgstr ""
#: cps/web.py:587 #: cps/web.py:588
msgid "Recently Added Books" msgid "Recently Added Books"
msgstr "Nyligen tillagda böcker" msgstr "Nyligen tillagda böcker"
#: cps/templates/index.html:5 cps/web.py:623 #: cps/templates/index.html:5 cps/web.py:624
msgid "Discover (Random Books)" msgid "Discover (Random Books)"
msgstr "Upptäck (slumpmässiga böcker)" msgstr "Upptäck (slumpmässiga böcker)"
#: cps/web.py:651 #: cps/web.py:652
msgid "Books" msgid "Books"
msgstr "Böcker" msgstr "Böcker"
#: cps/web.py:678 #: cps/web.py:679
msgid "Hot Books (Most Downloaded)" msgid "Hot Books (Most Downloaded)"
msgstr "Heta böcker (mest hämtade)" msgstr "Heta böcker (mest hämtade)"
#: cps/web.py:688 #: cps/web.py:689
msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible" 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" msgstr "Hoppsan! Vald boktitel är inte tillgänglig. Filen finns inte eller är inte tillgänglig"
#: cps/web.py:702 #: cps/web.py:703
#, python-format #, python-format
msgid "Author: %(name)s" msgid "Author: %(name)s"
msgstr "Författare: %(name)s" msgstr "Författare: %(name)s"
#: cps/web.py:714 #: cps/web.py:715
#, python-format #, python-format
msgid "Publisher: %(name)s" msgid "Publisher: %(name)s"
msgstr "Förlag: %(name)s" msgstr "Förlag: %(name)s"
#: cps/web.py:725 #: cps/web.py:726
#, python-format #, python-format
msgid "Series: %(serie)s" msgid "Series: %(serie)s"
msgstr "Serier: %(serie)s" msgstr "Serier: %(serie)s"
#: cps/web.py:736 #: cps/web.py:737
#, python-format #, python-format
msgid "Rating: %(rating)s stars" msgid "Rating: %(rating)s stars"
msgstr "Betyg: %(rating)s stars" msgstr "Betyg: %(rating)s stars"
#: cps/web.py:748 #: cps/web.py:749
#, python-format #, python-format
msgid "File format: %(format)s" msgid "File format: %(format)s"
msgstr "Filformat: %(format)s" msgstr "Filformat: %(format)s"
#: cps/web.py:760 #: cps/web.py:761
#, python-format #, python-format
msgid "Category: %(name)s" msgid "Category: %(name)s"
msgstr "Kategori: %(name)s" msgstr "Kategori: %(name)s"
#: cps/web.py:777 #: cps/web.py:778
#, python-format #, python-format
msgid "Language: %(name)s" msgid "Language: %(name)s"
msgstr "Språk: %(name)s" msgstr "Språk: %(name)s"
#: cps/web.py:839 #: cps/web.py:840
msgid "Ratings list" msgid "Ratings list"
msgstr "Betygslista" msgstr "Betygslista"
#: cps/web.py:852 #: cps/web.py:853
msgid "File formats list" msgid "File formats list"
msgstr "Lista över filformat" msgstr "Lista över filformat"
#: cps/templates/layout.html:73 cps/templates/tasks.html:7 cps/web.py:911 #: cps/templates/layout.html:73 cps/templates/tasks.html:7 cps/web.py:912
msgid "Tasks" msgid "Tasks"
msgstr "Uppgifter" msgstr "Uppgifter"
#: cps/templates/book_edit.html:235 cps/templates/feed.xml:33 #: cps/templates/book_edit.html:235 cps/templates/feed.xml:33
#: cps/templates/layout.html:44 cps/templates/layout.html:47 #: cps/templates/layout.html:44 cps/templates/layout.html:47
#: cps/templates/search_form.html:170 cps/web.py:937 cps/web.py:942 #: cps/templates/search_form.html:174 cps/web.py:938 cps/web.py:943
msgid "Search" msgid "Search"
msgstr "Sök" msgstr "Sök"
#: cps/web.py:993 #: cps/web.py:994
msgid "Published after " msgid "Published after "
msgstr "Publicerad efter " msgstr "Publicerad efter "
#: cps/web.py:1000 #: cps/web.py:1001
msgid "Published before " msgid "Published before "
msgstr "Publicerad före " msgstr "Publicerad före "
#: cps/web.py:1014 #: cps/web.py:1015
#, python-format #, python-format
msgid "Rating <= %(rating)s" msgid "Rating <= %(rating)s"
msgstr "Betyg <= %(rating)s" msgstr "Betyg <= %(rating)s"
#: cps/web.py:1016 #: cps/web.py:1017
#, python-format #, python-format
msgid "Rating >= %(rating)s" msgid "Rating >= %(rating)s"
msgstr "Betyg >= %(rating)s" msgstr "Betyg >= %(rating)s"
#: cps/web.py:1082 cps/web.py:1096 #: cps/web.py:1083 cps/web.py:1097
msgid "search" msgid "search"
msgstr "sök" msgstr "sök"
#: cps/web.py:1201 #: cps/web.py:1206
#, python-format #, python-format
msgid "Book successfully queued for sending to %(kindlemail)s" msgid "Book successfully queued for sending to %(kindlemail)s"
msgstr "Boken är i kö för att skicka till %(kindlemail)s" msgstr "Boken är i kö för att skicka till %(kindlemail)s"
#: cps/web.py:1205 #: cps/web.py:1210
#, python-format #, python-format
msgid "Oops! There was an error sending this book: %(res)s" msgid "Oops! There was an error sending this book: %(res)s"
msgstr "Det gick inte att skicka den här boken: %(res)s" msgstr "Det gick inte att skicka den här boken: %(res)s"
#: cps/web.py:1207 #: cps/web.py:1212
msgid "Please update your profile with a valid Send to Kindle E-mail Address." msgid "Please update your profile with a valid Send to Kindle E-mail Address."
msgstr "Konfigurera din kindle-e-postadress först..." msgstr "Konfigurera din kindle-e-postadress först..."
#: cps/web.py:1224 #: cps/web.py:1229
msgid "E-Mail server is not configured, please contact your administrator!" msgid "E-Mail server is not configured, please contact your administrator!"
msgstr "E-postservern är inte konfigurerad, kontakta din administratör!" msgstr "E-postservern är inte konfigurerad, kontakta din administratör!"
#: cps/web.py:1225 cps/web.py:1231 cps/web.py:1256 cps/web.py:1260 #: cps/web.py:1230 cps/web.py:1236 cps/web.py:1261 cps/web.py:1265
#: cps/web.py:1265 cps/web.py:1269 #: cps/web.py:1270 cps/web.py:1274
msgid "register" msgid "register"
msgstr "registrera" msgstr "registrera"
#: cps/web.py:1258 #: cps/web.py:1263
msgid "Your e-mail is not allowed to register" msgid "Your e-mail is not allowed to register"
msgstr "Din e-post är inte tillåten att registrera" msgstr "Din e-post är inte tillåten att registrera"
#: cps/web.py:1261 #: cps/web.py:1266
msgid "Confirmation e-mail was send to your e-mail account." msgid "Confirmation e-mail was send to your e-mail account."
msgstr "Bekräftelsemail skickades till ditt e-postkonto." msgstr "Bekräftelsemail skickades till ditt e-postkonto."
#: cps/web.py:1264 #: cps/web.py:1269
msgid "This username or e-mail address is already in use." msgid "This username or e-mail address is already in use."
msgstr "Det här användarnamnet eller e-postadressen är redan i bruk." msgstr "Det här användarnamnet eller e-postadressen är redan i bruk."
#: cps/web.py:1281 #: cps/web.py:1286
msgid "Cannot activate LDAP authentication" msgid "Cannot activate LDAP authentication"
msgstr "Det går inte att aktivera LDAP-autentisering" msgstr "Det går inte att aktivera LDAP-autentisering"
#: cps/web.py:1298 #: cps/web.py:1303
#, python-format #, python-format
msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known"
msgstr "" msgstr ""
#: cps/web.py:1304 #: cps/web.py:1309
#, python-format #, python-format
msgid "Could not login: %(message)s" msgid "Could not login: %(message)s"
msgstr "" msgstr ""
#: cps/web.py:1308 cps/web.py:1332 #: cps/web.py:1313 cps/web.py:1337
msgid "Wrong Username or Password" msgid "Wrong Username or Password"
msgstr "Fel användarnamn eller lösenord" msgstr "Fel användarnamn eller lösenord"
#: cps/web.py:1315 #: cps/web.py:1320
msgid "New Password was send to your email address" msgid "New Password was send to your email address"
msgstr "Nytt lösenord skickades till din e-postadress" msgstr "Nytt lösenord skickades till din e-postadress"
#: cps/web.py:1321 #: cps/web.py:1326
msgid "Please enter valid username to reset password" msgid "Please enter valid username to reset password"
msgstr "Ange giltigt användarnamn för att återställa lösenordet" msgstr "Ange giltigt användarnamn för att återställa lösenordet"
#: cps/web.py:1327 #: cps/web.py:1332
#, python-format #, python-format
msgid "You are now logged in as: '%(nickname)s'" msgid "You are now logged in as: '%(nickname)s'"
msgstr "Du är nu inloggad som: \"%(nickname)s\"" msgstr "Du är nu inloggad som: \"%(nickname)s\""
#: cps/web.py:1336 cps/web.py:1363 #: cps/web.py:1341 cps/web.py:1368
msgid "login" msgid "login"
msgstr "logga in" msgstr "logga in"
#: cps/web.py:1375 cps/web.py:1409 #: cps/web.py:1380 cps/web.py:1414
msgid "Token not found" msgid "Token not found"
msgstr "Token hittades inte" msgstr "Token hittades inte"
#: cps/web.py:1384 cps/web.py:1417 #: cps/web.py:1389 cps/web.py:1422
msgid "Token has expired" msgid "Token has expired"
msgstr "Token har löpt ut" msgstr "Token har löpt ut"
#: cps/web.py:1393 #: cps/web.py:1398
msgid "Success! Please return to your device" msgid "Success! Please return to your device"
msgstr "Lyckades! Vänligen återvänd till din enhet" msgstr "Lyckades! Vänligen återvänd till din enhet"
#: cps/web.py:1474 cps/web.py:1519 cps/web.py:1525 #: cps/web.py:1479 cps/web.py:1524 cps/web.py:1530
#, python-format #, python-format
msgid "%(name)s's profile" msgid "%(name)s's profile"
msgstr "%(name)ss profil" msgstr "%(name)ss profil"
#: cps/web.py:1521 #: cps/web.py:1526
msgid "Profile updated" msgid "Profile updated"
msgstr "Profilen uppdaterad" msgstr "Profilen uppdaterad"
#: cps/web.py:1538 cps/web.py:1642 #: cps/web.py:1543 cps/web.py:1647
msgid "Error opening eBook. File does not exist or file is not accessible:" msgid "Error opening eBook. File does not exist or file is not accessible:"
msgstr "Fel vid öppningen av e-boken. Filen finns inte eller filen är inte tillgänglig:" msgstr "Fel vid öppningen av e-boken. Filen finns inte eller filen är inte tillgänglig:"
#: cps/web.py:1550 cps/web.py:1553 cps/web.py:1556 cps/web.py:1563 #: cps/web.py:1555 cps/web.py:1558 cps/web.py:1561 cps/web.py:1568
#: cps/web.py:1568 #: cps/web.py:1573
msgid "Read a Book" msgid "Read a Book"
msgstr "Läs en bok" msgstr "Läs en bok"
#: cps/web.py:1579 #: cps/web.py:1584
msgid "Error opening eBook. File does not exist or file is not accessible." msgid "Error opening eBook. File does not exist or file is not accessible."
msgstr "Fel vid öppningen av e-boken. Filen finns inte eller filen är inte tillgänglig." msgstr "Fel vid öppningen av e-boken. Filen finns inte eller filen är inte tillgänglig."
@ -1296,13 +1296,13 @@ msgid "In Library"
msgstr "I biblioteket" msgstr "I biblioteket"
#: cps/templates/author.html:34 cps/templates/list.html:14 #: cps/templates/author.html:34 cps/templates/list.html:14
#: cps/templates/search.html:41 #: cps/templates/search.html:38
msgid "All" msgid "All"
msgstr "Alla" msgstr "Alla"
#: cps/templates/author.html:58 cps/templates/author.html:110 #: cps/templates/author.html:58 cps/templates/author.html:110
#: cps/templates/discover.html:27 cps/templates/index.html:26 #: cps/templates/discover.html:27 cps/templates/index.html:26
#: cps/templates/index.html:89 cps/templates/search.html:67 #: cps/templates/index.html:89 cps/templates/search.html:64
#: cps/templates/shelf.html:36 #: cps/templates/shelf.html:36
msgid "reduce" msgid "reduce"
msgstr "minska" msgstr "minska"
@ -1931,6 +1931,12 @@ msgstr "Beskrivning:"
msgid "Add to shelf" msgid "Add to shelf"
msgstr "Lägg till hyllan" msgstr "Lägg till hyllan"
#: cps/templates/detail.html:243 cps/templates/detail.html:260
#: cps/templates/feed.xml:79 cps/templates/layout.html:136
#: cps/templates/layout.html:140 cps/templates/search.html:20
msgid "(Public)"
msgstr ""
#: cps/templates/detail.html:274 #: cps/templates/detail.html:274
msgid "Edit Metadata" msgid "Edit Metadata"
msgstr "Redigera metadata" msgstr "Redigera metadata"
@ -1979,11 +1985,6 @@ msgstr "Är du säker på att du vill ta bort den här domänregeln?"
msgid "Next" msgid "Next"
msgstr "Nästa" msgstr "Nästa"
#: cps/templates/feed.xml:79 cps/templates/layout.html:136
#: cps/templates/layout.html:140
msgid "(Public)"
msgstr ""
#: cps/templates/generate_kobo_auth_url.html:5 #: cps/templates/generate_kobo_auth_url.html:5
msgid "Open the .kobo/Kobo eReader.conf file in a text editor and add (or edit):" msgid "Open the .kobo/Kobo eReader.conf file in a text editor and add (or edit):"
msgstr "Öppna filen .kobo/Kobo eReader.conf i en textredigerare och lägg till (eller redigera):" msgstr "Öppna filen .kobo/Kobo eReader.conf i en textredigerare och lägg till (eller redigera):"

View File

@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Calibre-Web\n" "Project-Id-Version: Calibre-Web\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2020-05-01 17:15+0200\n" "POT-Creation-Date: 2020-05-23 08:46+0200\n"
"PO-Revision-Date: 2020-04-23 22:47+0300\n" "PO-Revision-Date: 2020-04-23 22:47+0300\n"
"Last-Translator: iz <iz7iz7iz@protonmail.ch>\n" "Last-Translator: iz <iz7iz7iz@protonmail.ch>\n"
"Language: tr\n" "Language: tr\n"
@ -46,9 +46,9 @@ msgstr ""
msgid "Unknown command" msgid "Unknown command"
msgstr "" msgstr ""
#: cps/admin.py:115 cps/editbooks.py:504 cps/editbooks.py:514 #: cps/admin.py:115 cps/editbooks.py:505 cps/editbooks.py:515
#: cps/editbooks.py:620 cps/editbooks.py:622 cps/editbooks.py:688 #: cps/editbooks.py:621 cps/editbooks.py:623 cps/editbooks.py:689
#: cps/updater.py:509 cps/uploader.py:99 cps/uploader.py:110 #: cps/updater.py:509 cps/uploader.py:100 cps/uploader.py:110
msgid "Unknown" msgid "Unknown"
msgstr "Bilinmeyen" msgstr "Bilinmeyen"
@ -60,223 +60,223 @@ msgstr "Yönetim sayfası"
msgid "UI Configuration" msgid "UI Configuration"
msgstr "Arayüz Ayarları" msgstr "Arayüz Ayarları"
#: cps/admin.py:192 cps/admin.py:674 #: cps/admin.py:189 cps/admin.py:671
msgid "Calibre-Web configuration updated" msgid "Calibre-Web configuration updated"
msgstr "Calibre-Web yapılandırması güncellendi" msgstr "Calibre-Web yapılandırması güncellendi"
#: cps/admin.py:438 cps/admin.py:444 cps/admin.py:455 cps/admin.py:466 #: cps/admin.py:435 cps/admin.py:441 cps/admin.py:452 cps/admin.py:463
#: cps/templates/modal_restriction.html:29 #: cps/templates/modal_restriction.html:29
msgid "Deny" msgid "Deny"
msgstr "" msgstr ""
#: cps/admin.py:440 cps/admin.py:446 cps/admin.py:457 cps/admin.py:468 #: cps/admin.py:437 cps/admin.py:443 cps/admin.py:454 cps/admin.py:465
#: cps/templates/modal_restriction.html:28 #: cps/templates/modal_restriction.html:28
msgid "Allow" msgid "Allow"
msgstr "" msgstr ""
#: cps/admin.py:509 #: cps/admin.py:506
msgid "client_secrets.json Is Not Configured For Web Application" msgid "client_secrets.json Is Not Configured For Web Application"
msgstr "" msgstr ""
#: cps/admin.py:525 #: cps/admin.py:522
msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgid "Keyfile Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:529 #: cps/admin.py:526
msgid "Certfile Location is not Valid, Please Enter Correct Path" msgid "Certfile Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:567 #: cps/admin.py:564
msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier"
msgstr "" msgstr ""
#: cps/admin.py:585 #: cps/admin.py:582
#, python-format #, python-format
msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier"
msgstr "" msgstr ""
#: cps/admin.py:588 #: cps/admin.py:585
msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgid "LDAP Group Object Filter Has Unmatched Parenthesis"
msgstr "" msgstr ""
#: cps/admin.py:592 #: cps/admin.py:589
#, python-format #, python-format
msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier"
msgstr "" msgstr ""
#: cps/admin.py:595 #: cps/admin.py:592
msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgid "LDAP User Object Filter Has Unmatched Parenthesis"
msgstr "" msgstr ""
#: cps/admin.py:599 #: cps/admin.py:596
msgid "LDAP Certificate Location is not Valid, Please Enter Correct Path" msgid "LDAP Certificate Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:647 #: cps/admin.py:644
msgid "Logfile Location is not Valid, Please Enter Correct Path" msgid "Logfile Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:652 #: cps/admin.py:649
msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgid "Access Logfile Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:671 #: cps/admin.py:668
msgid "DB Location is not Valid, Please Enter Correct Path" msgid "DB Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:704 #: cps/admin.py:701
msgid "Basic Configuration" msgid "Basic Configuration"
msgstr "Temel Ayarlar" msgstr "Temel Ayarlar"
#: cps/admin.py:728 cps/web.py:1230 #: cps/admin.py:725 cps/web.py:1235
msgid "Please fill out all fields!" msgid "Please fill out all fields!"
msgstr "Lütfen tüm alanları doldurun!" msgstr "Lütfen tüm alanları doldurun!"
#: cps/admin.py:731 cps/admin.py:743 cps/admin.py:749 cps/admin.py:767 #: cps/admin.py:728 cps/admin.py:740 cps/admin.py:746 cps/admin.py:764
msgid "Add new user" msgid "Add new user"
msgstr "Yeni kullanıcı ekle" msgstr "Yeni kullanıcı ekle"
#: cps/admin.py:740 cps/web.py:1472 #: cps/admin.py:737 cps/web.py:1477
msgid "E-mail is not from valid domain" msgid "E-mail is not from valid domain"
msgstr "E-posta izin verilen bir servisten değil" msgstr "E-posta izin verilen bir servisten değil"
#: cps/admin.py:747 cps/admin.py:762 #: cps/admin.py:744 cps/admin.py:759
msgid "Found an existing account for this e-mail address or nickname." 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." msgstr "Bu e-posta adresi veya kullanıcı adı için zaten bir hesap var."
#: cps/admin.py:758 #: cps/admin.py:755
#, python-format #, python-format
msgid "User '%(user)s' created" msgid "User '%(user)s' created"
msgstr "'%(user)s' kullanıcısı oluşturuldu" msgstr "'%(user)s' kullanıcısı oluşturuldu"
#: cps/admin.py:777 #: cps/admin.py:774
msgid "Edit e-mail server settings" msgid "Edit e-mail server settings"
msgstr "E-posta sunucusu ayarlarını düzenle" msgstr "E-posta sunucusu ayarlarını düzenle"
#: cps/admin.py:803 #: cps/admin.py:800
#, python-format #, python-format
msgid "Test e-mail successfully send to %(kindlemail)s" msgid "Test e-mail successfully send to %(kindlemail)s"
msgstr "Deneme e-postası başarıyla %(kindlemail)s adresine gönderildi" msgstr "Deneme e-postası başarıyla %(kindlemail)s adresine gönderildi"
#: cps/admin.py:806 #: cps/admin.py:803
#, python-format #, python-format
msgid "There was an error sending the Test e-mail: %(res)s" msgid "There was an error sending the Test e-mail: %(res)s"
msgstr "Deneme e-postası gönderilirken bir hata oluştu: %(res)s" msgstr "Deneme e-postası gönderilirken bir hata oluştu: %(res)s"
#: cps/admin.py:808 #: cps/admin.py:805
msgid "Please configure your e-mail address first..." msgid "Please configure your e-mail address first..."
msgstr "Lütfen önce e-posta adresinizi ayarlayın..." msgstr "Lütfen önce e-posta adresinizi ayarlayın..."
#: cps/admin.py:810 #: cps/admin.py:807
msgid "E-mail server settings updated" msgid "E-mail server settings updated"
msgstr "E-posta sunucusu ayarları güncellendi" msgstr "E-posta sunucusu ayarları güncellendi"
#: cps/admin.py:821 #: cps/admin.py:818
msgid "User not found" msgid "User not found"
msgstr "" msgstr ""
#: cps/admin.py:842 #: cps/admin.py:839
#, python-format #, python-format
msgid "User '%(nick)s' deleted" msgid "User '%(nick)s' deleted"
msgstr "Kullanıcı '%(nick)s' silindi" msgstr "Kullanıcı '%(nick)s' silindi"
#: cps/admin.py:845 #: cps/admin.py:842
msgid "No admin user remaining, can't delete user" msgid "No admin user remaining, can't delete user"
msgstr "Başka yönetici kullanıcı olmadığından silinemedi" msgstr "Başka yönetici kullanıcı olmadığından silinemedi"
#: cps/admin.py:851 #: cps/admin.py:848
msgid "No admin user remaining, can't remove admin role" msgid "No admin user remaining, can't remove admin role"
msgstr "" msgstr ""
#: cps/admin.py:887 cps/web.py:1515 #: cps/admin.py:884 cps/web.py:1520
msgid "Found an existing account for this e-mail address." msgid "Found an existing account for this e-mail address."
msgstr "Bu e-posta adresi için bir hesap mevcut." msgstr "Bu e-posta adresi için bir hesap mevcut."
#: cps/admin.py:897 cps/admin.py:912 cps/admin.py:932 cps/web.py:1490 #: cps/admin.py:894 cps/admin.py:909 cps/admin.py:929 cps/web.py:1495
#, python-format #, python-format
msgid "Edit User %(nick)s" msgid "Edit User %(nick)s"
msgstr "%(nick)s kullanıcısını düzenle" msgstr "%(nick)s kullanıcısını düzenle"
#: cps/admin.py:903 cps/web.py:1482 #: cps/admin.py:900 cps/web.py:1487
msgid "This username is already taken" msgid "This username is already taken"
msgstr "Bu kullanıcı adı zaten alındı" msgstr "Bu kullanıcı adı zaten alındı"
#: cps/admin.py:919 #: cps/admin.py:916
#, python-format #, python-format
msgid "User '%(nick)s' updated" msgid "User '%(nick)s' updated"
msgstr "'%(nick)s' kullanıcısı güncellendi" msgstr "'%(nick)s' kullanıcısı güncellendi"
#: cps/admin.py:922 #: cps/admin.py:919
msgid "An unknown error occured." msgid "An unknown error occured."
msgstr "Bilinmeyen bir hata oluştu." msgstr "Bilinmeyen bir hata oluştu."
#: cps/admin.py:943 #: cps/admin.py:940
#, python-format #, python-format
msgid "Password for user %(user)s reset" msgid "Password for user %(user)s reset"
msgstr "%(user)s kullanıcısının şifresi sıfırlandı" msgstr "%(user)s kullanıcısının şifresi sıfırlandı"
#: cps/admin.py:946 cps/web.py:1255 cps/web.py:1319 #: cps/admin.py:943 cps/web.py:1260 cps/web.py:1324
msgid "An unknown error occurred. Please try again later." msgid "An unknown error occurred. Please try again later."
msgstr "Bilinmeyen bir hata oluştu. Lütfen daha sonra tekrar deneyiniz." msgstr "Bilinmeyen bir hata oluştu. Lütfen daha sonra tekrar deneyiniz."
#: cps/admin.py:949 cps/web.py:1196 #: cps/admin.py:946 cps/web.py:1201
msgid "Please configure the SMTP mail settings first..." msgid "Please configure the SMTP mail settings first..."
msgstr "Lütfen önce SMTP e-posta ayarlarını ayarlayın..." msgstr "Lütfen önce SMTP e-posta ayarlarını ayarlayın..."
#: cps/admin.py:961 #: cps/admin.py:958
msgid "Logfile viewer" msgid "Logfile viewer"
msgstr "Log dosyası görüntüleyici" msgstr "Log dosyası görüntüleyici"
#: cps/admin.py:1000 #: cps/admin.py:997
msgid "Requesting update package" msgid "Requesting update package"
msgstr "Güncelleme paketi isteniyor" msgstr "Güncelleme paketi isteniyor"
#: cps/admin.py:1001 #: cps/admin.py:998
msgid "Downloading update package" msgid "Downloading update package"
msgstr "Güncelleme paketi indiriliyor" msgstr "Güncelleme paketi indiriliyor"
#: cps/admin.py:1002 #: cps/admin.py:999
msgid "Unzipping update package" msgid "Unzipping update package"
msgstr "Güncelleme paketi ayıklanıyor" msgstr "Güncelleme paketi ayıklanıyor"
#: cps/admin.py:1003 #: cps/admin.py:1000
msgid "Replacing files" msgid "Replacing files"
msgstr "Dosyalar değiştiriliyor" msgstr "Dosyalar değiştiriliyor"
#: cps/admin.py:1004 #: cps/admin.py:1001
msgid "Database connections are closed" msgid "Database connections are closed"
msgstr "Veritabanı bağlantıları kapalı" msgstr "Veritabanı bağlantıları kapalı"
#: cps/admin.py:1005 #: cps/admin.py:1002
msgid "Stopping server" msgid "Stopping server"
msgstr "Sunucu durduruyor" msgstr "Sunucu durduruyor"
#: cps/admin.py:1006 #: cps/admin.py:1003
msgid "Update finished, please press okay and reload page" 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" msgstr "Güncelleme tamamlandı, sayfayı yenilemek için lütfen Tamam'a tıklayınız"
#: cps/admin.py:1007 cps/admin.py:1008 cps/admin.py:1009 cps/admin.py:1010 #: cps/admin.py:1004 cps/admin.py:1005 cps/admin.py:1006 cps/admin.py:1007
#: cps/admin.py:1011 #: cps/admin.py:1008
msgid "Update failed:" msgid "Update failed:"
msgstr "Güncelleme başarısız:" msgstr "Güncelleme başarısız:"
#: cps/admin.py:1007 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522 #: cps/admin.py:1004 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522
msgid "HTTP Error" msgid "HTTP Error"
msgstr "HTTP Hatası" msgstr "HTTP Hatası"
#: cps/admin.py:1008 cps/updater.py:321 cps/updater.py:524 #: cps/admin.py:1005 cps/updater.py:321 cps/updater.py:524
msgid "Connection error" msgid "Connection error"
msgstr "Bağlantı hatası" msgstr "Bağlantı hatası"
#: cps/admin.py:1009 cps/updater.py:323 cps/updater.py:526 #: cps/admin.py:1006 cps/updater.py:323 cps/updater.py:526
msgid "Timeout while establishing connection" msgid "Timeout while establishing connection"
msgstr "Bağlantı kurulmaya çalışırken zaman aşımına uğradı" msgstr "Bağlantı kurulmaya çalışırken zaman aşımına uğradı"
#: cps/admin.py:1010 cps/updater.py:325 cps/updater.py:528 #: cps/admin.py:1007 cps/updater.py:325 cps/updater.py:528
msgid "General error" msgid "General error"
msgstr "Genel hata" msgstr "Genel hata"
#: cps/admin.py:1011 #: cps/admin.py:1008
msgid "Update File Could Not be Saved in Temp Dir" msgid "Update File Could Not be Saved in Temp Dir"
msgstr "" msgstr ""
@ -292,7 +292,7 @@ msgstr ""
msgid "Book Successfully Deleted" msgid "Book Successfully Deleted"
msgstr "" msgstr ""
#: cps/editbooks.py:253 cps/editbooks.py:489 #: cps/editbooks.py:253 cps/editbooks.py:490
msgid "Error opening eBook. File does not exist or file is not accessible" msgid "Error opening eBook. File does not exist or file is not accessible"
msgstr "eKitap açılırken hata oluştu. Dosya mevcut değil veya erişilemiyor" msgstr "eKitap açılırken hata oluştu. Dosya mevcut değil veya erişilemiyor"
@ -305,16 +305,16 @@ msgstr "metaveri düzenle"
msgid "%(langname)s is not a valid language" msgid "%(langname)s is not a valid language"
msgstr "%(langname)s geçerli bir dil değil" msgstr "%(langname)s geçerli bir dil değil"
#: cps/editbooks.py:413 cps/editbooks.py:663 #: cps/editbooks.py:413 cps/editbooks.py:664
#, python-format #, python-format
msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" 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" msgstr "'%(ext)s' uzantılı dosyaların bu sunucuya yüklenmesine izin verilmiyor"
#: cps/editbooks.py:417 cps/editbooks.py:667 #: cps/editbooks.py:417 cps/editbooks.py:668
msgid "File to be uploaded must have an extension" msgid "File to be uploaded must have an extension"
msgstr "Yüklenecek dosyanın mutlaka bir uzantısı olması gerekli" msgstr "Yüklenecek dosyanın mutlaka bir uzantısı olması gerekli"
#: cps/editbooks.py:429 cps/editbooks.py:701 #: cps/editbooks.py:429 cps/editbooks.py:702
#, python-format #, python-format
msgid "Failed to create path %(path)s (Permission denied)." msgid "Failed to create path %(path)s (Permission denied)."
msgstr "%(path)s dizini oluşturulamadı. (İzin reddedildi)" msgstr "%(path)s dizini oluşturulamadı. (İzin reddedildi)"
@ -329,48 +329,48 @@ msgstr "%(file)s dosyası kaydedilemedi."
msgid "File format %(ext)s added to %(book)s" msgid "File format %(ext)s added to %(book)s"
msgstr "%(book)s kitabına %(ext)s dosya biçimi eklendi" msgstr "%(book)s kitabına %(ext)s dosya biçimi eklendi"
#: cps/editbooks.py:606 #: cps/editbooks.py:607
msgid "Metadata successfully updated" msgid "Metadata successfully updated"
msgstr "Metaveri başarıyla güncellendi" msgstr "Metaveri başarıyla güncellendi"
#: cps/editbooks.py:615 #: cps/editbooks.py:616
msgid "Error editing book, please check logfile for details" 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" msgstr "eKitap düzenlenirken hata oluştu, detaylar için lütfen log dosyasını kontrol edin"
#: cps/editbooks.py:675 #: cps/editbooks.py:676
#, python-format #, python-format
msgid "File %(filename)s could not saved to temp dir" msgid "File %(filename)s could not saved to temp dir"
msgstr "%(filename)s dosyası geçici dizine kaydedilemedi" msgstr "%(filename)s dosyası geçici dizine kaydedilemedi"
#: cps/editbooks.py:692 #: cps/editbooks.py:693
msgid "Uploaded book probably exists in the library, consider to change before upload new: " 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: " msgstr "Yüklenen eKitap muhtemelen kitaplıkta zaten var. Yenisini yüklemeden değiştirmeyi düşünün: "
#: cps/editbooks.py:707 #: cps/editbooks.py:709
#, python-format #, python-format
msgid "Failed to store file %(file)s (Permission denied)." msgid "Failed to Move File %(file)s: %(error)s"
msgstr "%(file)s dosyası kaydedilemedi. (İzin reddedildi)" msgstr ""
#: cps/editbooks.py:713 #: cps/editbooks.py:723
#, python-format #, python-format
msgid "Failed to delete file %(file)s (Permission denied)." msgid "Failed to Move Cover File %(file)s: %(error)s"
msgstr "%(file)s dosyası silinemedi. (İzin reddedildi)" msgstr ""
#: cps/editbooks.py:804 #: cps/editbooks.py:808
#, python-format #, python-format
msgid "File %(file)s uploaded" msgid "File %(file)s uploaded"
msgstr "%(file)s dosyası yüklendi" msgstr "%(file)s dosyası yüklendi"
#: cps/editbooks.py:833 #: cps/editbooks.py:837
msgid "Source or destination format for conversion missing" msgid "Source or destination format for conversion missing"
msgstr "Dönüştürme için kaynak ya da hedef biçimi eksik" msgstr "Dönüştürme için kaynak ya da hedef biçimi eksik"
#: cps/editbooks.py:841 #: cps/editbooks.py:845
#, python-format #, python-format
msgid "Book successfully queued for converting to %(book_format)s" 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ı" msgstr "eKitap %(book_format)s formatlarına dönüştürülmek üzere başarıyla sıraya alındı"
#: cps/editbooks.py:845 #: cps/editbooks.py:849
#, python-format #, python-format
msgid "There was an error converting this book: %(res)s" msgid "There was an error converting this book: %(res)s"
msgstr "Bu eKitabı dönüştürürken bir hata oluştu: %(res)s" msgstr "Bu eKitabı dönüştürürken bir hata oluştu: %(res)s"
@ -444,111 +444,111 @@ msgstr "e-Posta: %(book)s"
msgid "The requested file could not be read. Maybe wrong permissions?" msgid "The requested file could not be read. Maybe wrong permissions?"
msgstr "İstenilen dosya okunamadı. Yanlış izinlerden kaynaklanabilir?" msgstr "İstenilen dosya okunamadı. Yanlış izinlerden kaynaklanabilir?"
#: cps/helper.py:299 #: cps/helper.py:300
#, python-format #, python-format
msgid "Deleting book %(id)s failed, path has subfolders: %(path)s" msgid "Deleting book %(id)s failed, path has subfolders: %(path)s"
msgstr "" msgstr ""
#: cps/helper.py:309 #: cps/helper.py:310
#, python-format #, python-format
msgid "Deleting book %(id)s failed: %(message)s" msgid "Deleting book %(id)s failed: %(message)s"
msgstr "" msgstr ""
#: cps/helper.py:319 #: cps/helper.py:320
#, python-format #, python-format
msgid "Deleting book %(id)s failed, book path not valid: %(path)s" msgid "Deleting book %(id)s failed, book path not valid: %(path)s"
msgstr "" msgstr ""
#: cps/helper.py:354 #: cps/helper.py:355
#, python-format #, python-format
msgid "Rename title from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgid "Rename title from: '%(src)s' to '%(dest)s' failed with error: %(error)s"
msgstr "Kitap adını değiştirme sırasında hata oluştu ('%(src)s' → '%(dest)s'): %(error)s" msgstr "Kitap adını değiştirme sırasında hata oluştu ('%(src)s' → '%(dest)s'): %(error)s"
#: cps/helper.py:364 #: cps/helper.py:365
#, python-format #, python-format
msgid "Rename author from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgid "Rename author from: '%(src)s' to '%(dest)s' failed with error: %(error)s"
msgstr "Yazar adını değiştirme sırasında hata oluştu ('%(src)s' → '%(dest)s'): %(error)s" msgstr "Yazar adını değiştirme sırasında hata oluştu ('%(src)s' → '%(dest)s'): %(error)s"
#: cps/helper.py:378 #: cps/helper.py:379
#, python-format #, python-format
msgid "Rename file in path '%(src)s' to '%(dest)s' failed with error: %(error)s" msgid "Rename file in path '%(src)s' to '%(dest)s' failed with error: %(error)s"
msgstr "Dosya adını değiştirme sırasında hata oluştu ('%(src)s' → '%(dest)s'): %(error)s" msgstr "Dosya adını değiştirme sırasında hata oluştu ('%(src)s' → '%(dest)s'): %(error)s"
#: cps/helper.py:404 cps/helper.py:414 cps/helper.py:422 #: cps/helper.py:405 cps/helper.py:415 cps/helper.py:423
#, python-format #, python-format
msgid "File %(file)s not found on Google Drive" msgid "File %(file)s not found on Google Drive"
msgstr "%(file)s dosyası Google Drive'da bulunamadı" msgstr "%(file)s dosyası Google Drive'da bulunamadı"
#: cps/helper.py:443 #: cps/helper.py:444
#, python-format #, python-format
msgid "Book path %(path)s not found on Google Drive" msgid "Book path %(path)s not found on Google Drive"
msgstr "eKitap yolu %(path)s Google Drive'da bulunamadı" msgstr "eKitap yolu %(path)s Google Drive'da bulunamadı"
#: cps/helper.py:550 #: cps/helper.py:551
msgid "Failed to create path for cover" msgid "Failed to create path for cover"
msgstr "" msgstr ""
#: cps/helper.py:555 #: cps/helper.py:556
msgid "Cover-file is not a valid image file, or could not be stored" msgid "Cover-file is not a valid image file, or could not be stored"
msgstr "" msgstr ""
#: cps/helper.py:566 #: cps/helper.py:567
msgid "Only jpg/jpeg/png/webp files are supported as coverfile" msgid "Only jpg/jpeg/png/webp files are supported as coverfile"
msgstr "" msgstr ""
#: cps/helper.py:580 #: cps/helper.py:581
msgid "Only jpg/jpeg files are supported as coverfile" msgid "Only jpg/jpeg files are supported as coverfile"
msgstr "" msgstr ""
#: cps/helper.py:622 #: cps/helper.py:625
msgid "Unrar binary file not found" msgid "Unrar binary file not found"
msgstr "" msgstr ""
#: cps/helper.py:635 #: cps/helper.py:638
msgid "Error excecuting UnRar" msgid "Error excecuting UnRar"
msgstr "" msgstr ""
#: cps/helper.py:691 #: cps/helper.py:694
msgid "Waiting" msgid "Waiting"
msgstr "Bekleniyor" msgstr "Bekleniyor"
#: cps/helper.py:693 #: cps/helper.py:696
msgid "Failed" msgid "Failed"
msgstr "Başarısız" msgstr "Başarısız"
#: cps/helper.py:695 #: cps/helper.py:698
msgid "Started" msgid "Started"
msgstr "Başladı" msgstr "Başladı"
#: cps/helper.py:697 #: cps/helper.py:700
msgid "Finished" msgid "Finished"
msgstr "Bitti" msgstr "Bitti"
#: cps/helper.py:699 #: cps/helper.py:702
msgid "Unknown Status" msgid "Unknown Status"
msgstr "Bilinmeyen Durum" msgstr "Bilinmeyen Durum"
#: cps/helper.py:704 #: cps/helper.py:707
msgid "E-mail: " msgid "E-mail: "
msgstr "e-Posta: " msgstr "e-Posta: "
#: cps/helper.py:706 cps/helper.py:710 #: cps/helper.py:709 cps/helper.py:713
msgid "Convert: " msgid "Convert: "
msgstr "Dönüştür: " msgstr "Dönüştür: "
#: cps/helper.py:708 #: cps/helper.py:711
msgid "Upload: " msgid "Upload: "
msgstr "Yükle: " msgstr "Yükle: "
#: cps/helper.py:712 #: cps/helper.py:715
msgid "Unknown Task: " msgid "Unknown Task: "
msgstr "Bilinmeyen Görev: " msgstr "Bilinmeyen Görev: "
#: cps/kobo_auth.py:126 #: cps/kobo_auth.py:130
msgid "PLease access calibre-web from non localhost to get valid api_endpoint for kobo device" msgid "PLease access calibre-web from non localhost to get valid api_endpoint for kobo device"
msgstr "" msgstr ""
#: cps/kobo_auth.py:129 cps/kobo_auth.py:149 #: cps/kobo_auth.py:133 cps/kobo_auth.py:153
msgid "Kobo Setup" msgid "Kobo Setup"
msgstr "" msgstr ""
@ -573,7 +573,7 @@ msgstr "Google ile giriş yapılamadı."
msgid "Failed to fetch user info from Google." msgid "Failed to fetch user info from Google."
msgstr "Google'dan kullanıcı bilgileri alınamadı." msgstr "Google'dan kullanıcı bilgileri alınamadı."
#: cps/oauth_bb.py:225 cps/web.py:1291 cps/web.py:1431 #: cps/oauth_bb.py:225 cps/web.py:1296 cps/web.py:1436
#, python-format #, python-format
msgid "you are now logged in as: '%(nickname)s'" msgid "you are now logged in as: '%(nickname)s'"
msgstr "giriş yaptınız: '%(nickname)s'" msgstr "giriş yaptınız: '%(nickname)s'"
@ -725,7 +725,7 @@ msgstr "Popüler"
msgid "Show Hot Books" msgid "Show Hot Books"
msgstr "" msgstr ""
#: cps/templates/index.xml:24 cps/ub.py:70 cps/web.py:615 #: cps/templates/index.xml:24 cps/ub.py:70 cps/web.py:616
msgid "Top Rated Books" msgid "Top Rated Books"
msgstr "" msgstr ""
@ -734,7 +734,7 @@ msgid "Show Top Rated Books"
msgstr "" msgstr ""
#: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:73 #: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:73
#: cps/web.py:1125 #: cps/web.py:1131
msgid "Read Books" msgid "Read Books"
msgstr "Okunanlar" msgstr "Okunanlar"
@ -743,7 +743,7 @@ msgid "Show read and unread"
msgstr "Okunan ve okunmayanları göster" msgstr "Okunan ve okunmayanları göster"
#: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:77 #: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:77
#: cps/web.py:1129 #: cps/web.py:1134
msgid "Unread Books" msgid "Unread Books"
msgstr "Okunmamışlar" msgstr "Okunmamışlar"
@ -759,7 +759,7 @@ msgstr "Keşfet"
msgid "Show random books" msgid "Show random books"
msgstr "Rastgele eKitap göster" msgstr "Rastgele eKitap göster"
#: cps/templates/index.xml:75 cps/ub.py:83 cps/web.py:897 #: cps/templates/index.xml:75 cps/ub.py:83 cps/web.py:898
msgid "Categories" msgid "Categories"
msgstr "Kategoriler" msgstr "Kategoriler"
@ -768,7 +768,7 @@ msgid "Show category selection"
msgstr "Kategori seçimini göster" msgstr "Kategori seçimini göster"
#: cps/templates/book_edit.html:84 cps/templates/index.xml:82 #: cps/templates/book_edit.html:84 cps/templates/index.xml:82
#: cps/templates/search_form.html:53 cps/ub.py:86 cps/web.py:825 #: cps/templates/search_form.html:53 cps/ub.py:86 cps/web.py:826
msgid "Series" msgid "Series"
msgstr "Seriler" msgstr "Seriler"
@ -784,7 +784,7 @@ msgstr "Yazarlar"
msgid "Show author selection" msgid "Show author selection"
msgstr "Yazar seçimini göster" msgstr "Yazar seçimini göster"
#: cps/templates/index.xml:68 cps/ub.py:93 cps/web.py:809 #: cps/templates/index.xml:68 cps/ub.py:93 cps/web.py:810
msgid "Publishers" msgid "Publishers"
msgstr "Yayıncılar" msgstr "Yayıncılar"
@ -793,7 +793,7 @@ msgid "Show publisher selection"
msgstr "Yayıncı seçimini göster" msgstr "Yayıncı seçimini göster"
#: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:96 #: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:96
#: cps/web.py:880 #: cps/web.py:881
msgid "Languages" msgid "Languages"
msgstr "Diller" msgstr "Diller"
@ -817,7 +817,7 @@ msgstr "Biçimler"
msgid "Show file formats selection" msgid "Show file formats selection"
msgstr "Dosya biçimi seçimini göster" msgstr "Dosya biçimi seçimini göster"
#: cps/ub.py:107 cps/web.py:1150 #: cps/ub.py:107 cps/web.py:1155
msgid "Archived Books" msgid "Archived Books"
msgstr "" msgstr ""
@ -854,223 +854,223 @@ 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." 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." msgstr "Son kararlı sürüme güncellemek için aşağıdaki düğmeye tıklayın."
#: cps/web.py:306 #: cps/web.py:307
#, python-format #, python-format
msgid "Error: %(ldaperror)s" msgid "Error: %(ldaperror)s"
msgstr "" msgstr ""
#: cps/web.py:310 #: cps/web.py:311
msgid "Error: No user returned in response of LDAP server" msgid "Error: No user returned in response of LDAP server"
msgstr "" msgstr ""
#: cps/web.py:358 #: cps/web.py:359
msgid "Failed to Create at Least One LDAP User" msgid "Failed to Create at Least One LDAP User"
msgstr "" msgstr ""
#: cps/web.py:361 #: cps/web.py:362
msgid "At Least One LDAP User Not Found in Database" msgid "At Least One LDAP User Not Found in Database"
msgstr "" msgstr ""
#: cps/web.py:363 #: cps/web.py:364
msgid "User Successfully Imported" msgid "User Successfully Imported"
msgstr "" msgstr ""
#: cps/web.py:587 #: cps/web.py:588
msgid "Recently Added Books" msgid "Recently Added Books"
msgstr "Yeni Eklenen eKitaplar" msgstr "Yeni Eklenen eKitaplar"
#: cps/templates/index.html:5 cps/web.py:623 #: cps/templates/index.html:5 cps/web.py:624
msgid "Discover (Random Books)" msgid "Discover (Random Books)"
msgstr "Keşfet (Rastgele)" msgstr "Keşfet (Rastgele)"
#: cps/web.py:651 #: cps/web.py:652
msgid "Books" msgid "Books"
msgstr "eKitaplar" msgstr "eKitaplar"
#: cps/web.py:678 #: cps/web.py:679
msgid "Hot Books (Most Downloaded)" msgid "Hot Books (Most Downloaded)"
msgstr "" msgstr ""
#: cps/web.py:688 #: cps/web.py:689
msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible" msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible"
msgstr "" msgstr ""
#: cps/web.py:702 #: cps/web.py:703
#, python-format #, python-format
msgid "Author: %(name)s" msgid "Author: %(name)s"
msgstr "Yazar: %(name)s" msgstr "Yazar: %(name)s"
#: cps/web.py:714 #: cps/web.py:715
#, python-format #, python-format
msgid "Publisher: %(name)s" msgid "Publisher: %(name)s"
msgstr "Yayınevi: %(name)s" msgstr "Yayınevi: %(name)s"
#: cps/web.py:725 #: cps/web.py:726
#, python-format #, python-format
msgid "Series: %(serie)s" msgid "Series: %(serie)s"
msgstr "Seri: %(serie)s" msgstr "Seri: %(serie)s"
#: cps/web.py:736 #: cps/web.py:737
#, python-format #, python-format
msgid "Rating: %(rating)s stars" msgid "Rating: %(rating)s stars"
msgstr "Değerlendirme: %(rating)s yıldız" msgstr "Değerlendirme: %(rating)s yıldız"
#: cps/web.py:748 #: cps/web.py:749
#, python-format #, python-format
msgid "File format: %(format)s" msgid "File format: %(format)s"
msgstr "Biçim: %(format)s" msgstr "Biçim: %(format)s"
#: cps/web.py:760 #: cps/web.py:761
#, python-format #, python-format
msgid "Category: %(name)s" msgid "Category: %(name)s"
msgstr "Kategori: %(name)s" msgstr "Kategori: %(name)s"
#: cps/web.py:777 #: cps/web.py:778
#, python-format #, python-format
msgid "Language: %(name)s" msgid "Language: %(name)s"
msgstr "Dil: %(name)s" msgstr "Dil: %(name)s"
#: cps/web.py:839 #: cps/web.py:840
msgid "Ratings list" msgid "Ratings list"
msgstr "Değerlendirme listesi" msgstr "Değerlendirme listesi"
#: cps/web.py:852 #: cps/web.py:853
msgid "File formats list" msgid "File formats list"
msgstr "Biçim listesi" msgstr "Biçim listesi"
#: cps/templates/layout.html:73 cps/templates/tasks.html:7 cps/web.py:911 #: cps/templates/layout.html:73 cps/templates/tasks.html:7 cps/web.py:912
msgid "Tasks" msgid "Tasks"
msgstr "Görevler" msgstr "Görevler"
#: cps/templates/book_edit.html:235 cps/templates/feed.xml:33 #: cps/templates/book_edit.html:235 cps/templates/feed.xml:33
#: cps/templates/layout.html:44 cps/templates/layout.html:47 #: cps/templates/layout.html:44 cps/templates/layout.html:47
#: cps/templates/search_form.html:170 cps/web.py:937 cps/web.py:942 #: cps/templates/search_form.html:174 cps/web.py:938 cps/web.py:943
msgid "Search" msgid "Search"
msgstr "Ara" msgstr "Ara"
#: cps/web.py:993 #: cps/web.py:994
msgid "Published after " msgid "Published after "
msgstr "Yayınlanma (sonra)" msgstr "Yayınlanma (sonra)"
#: cps/web.py:1000 #: cps/web.py:1001
msgid "Published before " msgid "Published before "
msgstr "Yayınlanma (önce)" msgstr "Yayınlanma (önce)"
#: cps/web.py:1014 #: cps/web.py:1015
#, python-format #, python-format
msgid "Rating <= %(rating)s" msgid "Rating <= %(rating)s"
msgstr "Değerlendirme <= %(rating)s" msgstr "Değerlendirme <= %(rating)s"
#: cps/web.py:1016 #: cps/web.py:1017
#, python-format #, python-format
msgid "Rating >= %(rating)s" msgid "Rating >= %(rating)s"
msgstr "Değerlendirme >= %(rating)s" msgstr "Değerlendirme >= %(rating)s"
#: cps/web.py:1082 cps/web.py:1096 #: cps/web.py:1083 cps/web.py:1097
msgid "search" msgid "search"
msgstr "ara" msgstr "ara"
#: cps/web.py:1201 #: cps/web.py:1206
#, python-format #, python-format
msgid "Book successfully queued for sending to %(kindlemail)s" msgid "Book successfully queued for sending to %(kindlemail)s"
msgstr "%(kindlemail)s'a gönderilmek üzere başarıyla sıraya alındı" msgstr "%(kindlemail)s'a gönderilmek üzere başarıyla sıraya alındı"
#: cps/web.py:1205 #: cps/web.py:1210
#, python-format #, python-format
msgid "Oops! There was an error sending this book: %(res)s" msgid "Oops! There was an error sending this book: %(res)s"
msgstr "" msgstr ""
#: cps/web.py:1207 #: cps/web.py:1212
msgid "Please update your profile with a valid Send to Kindle E-mail Address." msgid "Please update your profile with a valid Send to Kindle E-mail Address."
msgstr "" msgstr ""
#: cps/web.py:1224 #: cps/web.py:1229
msgid "E-Mail server is not configured, please contact your administrator!" msgid "E-Mail server is not configured, please contact your administrator!"
msgstr "E-Posta sunucusu ayarlanmadı, lütfen yöneticinizle iletişime geçin!" msgstr "E-Posta sunucusu ayarlanmadı, lütfen yöneticinizle iletişime geçin!"
#: cps/web.py:1225 cps/web.py:1231 cps/web.py:1256 cps/web.py:1260 #: cps/web.py:1230 cps/web.py:1236 cps/web.py:1261 cps/web.py:1265
#: cps/web.py:1265 cps/web.py:1269 #: cps/web.py:1270 cps/web.py:1274
msgid "register" msgid "register"
msgstr "kaydol" msgstr "kaydol"
#: cps/web.py:1258 #: cps/web.py:1263
msgid "Your e-mail is not allowed to register" msgid "Your e-mail is not allowed to register"
msgstr "E-posta adresinizle kaydolunmasına izin verilmiyor" msgstr "E-posta adresinizle kaydolunmasına izin verilmiyor"
#: cps/web.py:1261 #: cps/web.py:1266
msgid "Confirmation e-mail was send to your e-mail account." msgid "Confirmation e-mail was send to your e-mail account."
msgstr "Onay e-Postası hesabınıza gönderildi." msgstr "Onay e-Postası hesabınıza gönderildi."
#: cps/web.py:1264 #: cps/web.py:1269
msgid "This username or e-mail address is already in use." msgid "This username or e-mail address is already in use."
msgstr "Kullanıcı adı ya da e-Posta adresi zaten kullanımda." msgstr "Kullanıcı adı ya da e-Posta adresi zaten kullanımda."
#: cps/web.py:1281 #: cps/web.py:1286
msgid "Cannot activate LDAP authentication" msgid "Cannot activate LDAP authentication"
msgstr "LDAP Kimlik Doğrulaması etkinleştirilemiyor" msgstr "LDAP Kimlik Doğrulaması etkinleştirilemiyor"
#: cps/web.py:1298 #: cps/web.py:1303
#, python-format #, python-format
msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known"
msgstr "" msgstr ""
#: cps/web.py:1304 #: cps/web.py:1309
#, python-format #, python-format
msgid "Could not login: %(message)s" msgid "Could not login: %(message)s"
msgstr "" msgstr ""
#: cps/web.py:1308 cps/web.py:1332 #: cps/web.py:1313 cps/web.py:1337
msgid "Wrong Username or Password" msgid "Wrong Username or Password"
msgstr "Yanlış Kullanıcı adı ya da Şifre" msgstr "Yanlış Kullanıcı adı ya da Şifre"
#: cps/web.py:1315 #: cps/web.py:1320
msgid "New Password was send to your email address" msgid "New Password was send to your email address"
msgstr "Yeni şifre e-Posta adresinize gönderildi" msgstr "Yeni şifre e-Posta adresinize gönderildi"
#: cps/web.py:1321 #: cps/web.py:1326
msgid "Please enter valid username to reset password" msgid "Please enter valid username to reset password"
msgstr "Şifrenizi sıfırlayabilmek için lütfen geçerli bir kullanıcı adı giriniz" msgstr "Şifrenizi sıfırlayabilmek için lütfen geçerli bir kullanıcı adı giriniz"
#: cps/web.py:1327 #: cps/web.py:1332
#, python-format #, python-format
msgid "You are now logged in as: '%(nickname)s'" msgid "You are now logged in as: '%(nickname)s'"
msgstr "Giriş yaptınız: '%(nickname)s'" msgstr "Giriş yaptınız: '%(nickname)s'"
#: cps/web.py:1336 cps/web.py:1363 #: cps/web.py:1341 cps/web.py:1368
msgid "login" msgid "login"
msgstr "giriş" msgstr "giriş"
#: cps/web.py:1375 cps/web.py:1409 #: cps/web.py:1380 cps/web.py:1414
msgid "Token not found" msgid "Token not found"
msgstr "Token bulunamadı" msgstr "Token bulunamadı"
#: cps/web.py:1384 cps/web.py:1417 #: cps/web.py:1389 cps/web.py:1422
msgid "Token has expired" msgid "Token has expired"
msgstr "Token süresi doldu" msgstr "Token süresi doldu"
#: cps/web.py:1393 #: cps/web.py:1398
msgid "Success! Please return to your device" msgid "Success! Please return to your device"
msgstr "Başarılı! Lütfen cihazınıza dönün" msgstr "Başarılı! Lütfen cihazınıza dönün"
#: cps/web.py:1474 cps/web.py:1519 cps/web.py:1525 #: cps/web.py:1479 cps/web.py:1524 cps/web.py:1530
#, python-format #, python-format
msgid "%(name)s's profile" msgid "%(name)s's profile"
msgstr "%(name)s Profili" msgstr "%(name)s Profili"
#: cps/web.py:1521 #: cps/web.py:1526
msgid "Profile updated" msgid "Profile updated"
msgstr "Profil güncellendi" msgstr "Profil güncellendi"
#: cps/web.py:1538 cps/web.py:1642 #: cps/web.py:1543 cps/web.py:1647
msgid "Error opening eBook. File does not exist or file is not accessible:" msgid "Error opening eBook. File does not exist or file is not accessible:"
msgstr "eKitap açılırken hata oluştu. Dosya mevcut değil veya erişilemiyor:" msgstr "eKitap açılırken hata oluştu. Dosya mevcut değil veya erişilemiyor:"
#: cps/web.py:1550 cps/web.py:1553 cps/web.py:1556 cps/web.py:1563 #: cps/web.py:1555 cps/web.py:1558 cps/web.py:1561 cps/web.py:1568
#: cps/web.py:1568 #: cps/web.py:1573
msgid "Read a Book" msgid "Read a Book"
msgstr "Kitap Oku" msgstr "Kitap Oku"
#: cps/web.py:1579 #: cps/web.py:1584
msgid "Error opening eBook. File does not exist or file is not accessible." msgid "Error opening eBook. File does not exist or file is not accessible."
msgstr "eKitap açılırken hata oluştu. Dosya mevcut değil veya erişilemiyor" msgstr "eKitap açılırken hata oluştu. Dosya mevcut değil veya erişilemiyor"
@ -1296,13 +1296,13 @@ msgid "In Library"
msgstr "Kitaplıkta" msgstr "Kitaplıkta"
#: cps/templates/author.html:34 cps/templates/list.html:14 #: cps/templates/author.html:34 cps/templates/list.html:14
#: cps/templates/search.html:41 #: cps/templates/search.html:38
msgid "All" msgid "All"
msgstr "Tümü" msgstr "Tümü"
#: cps/templates/author.html:58 cps/templates/author.html:110 #: cps/templates/author.html:58 cps/templates/author.html:110
#: cps/templates/discover.html:27 cps/templates/index.html:26 #: cps/templates/discover.html:27 cps/templates/index.html:26
#: cps/templates/index.html:89 cps/templates/search.html:67 #: cps/templates/index.html:89 cps/templates/search.html:64
#: cps/templates/shelf.html:36 #: cps/templates/shelf.html:36
msgid "reduce" msgid "reduce"
msgstr "azalt" msgstr "azalt"
@ -1931,6 +1931,12 @@ msgstr "Açıklama:"
msgid "Add to shelf" msgid "Add to shelf"
msgstr "Kitaplığa ekle" msgstr "Kitaplığa ekle"
#: cps/templates/detail.html:243 cps/templates/detail.html:260
#: cps/templates/feed.xml:79 cps/templates/layout.html:136
#: cps/templates/layout.html:140 cps/templates/search.html:20
msgid "(Public)"
msgstr ""
#: cps/templates/detail.html:274 #: cps/templates/detail.html:274
msgid "Edit Metadata" msgid "Edit Metadata"
msgstr "" msgstr ""
@ -1979,11 +1985,6 @@ msgstr ""
msgid "Next" msgid "Next"
msgstr "Sonraki" msgstr "Sonraki"
#: cps/templates/feed.xml:79 cps/templates/layout.html:136
#: cps/templates/layout.html:140
msgid "(Public)"
msgstr ""
#: cps/templates/generate_kobo_auth_url.html:5 #: cps/templates/generate_kobo_auth_url.html:5
msgid "Open the .kobo/Kobo eReader.conf file in a text editor and add (or edit):" msgid "Open the .kobo/Kobo eReader.conf file in a text editor and add (or edit):"
msgstr "" msgstr ""

View File

@ -6,7 +6,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Calibre-web\n" "Project-Id-Version: Calibre-web\n"
"Report-Msgid-Bugs-To: https://github.com/janeczku/calibre-web\n" "Report-Msgid-Bugs-To: https://github.com/janeczku/calibre-web\n"
"POT-Creation-Date: 2020-05-01 17:15+0200\n" "POT-Creation-Date: 2020-05-23 08:46+0200\n"
"PO-Revision-Date: 2017-04-30 00:47+0300\n" "PO-Revision-Date: 2017-04-30 00:47+0300\n"
"Last-Translator: ABIS Team <biblio.if.abis@gmail.com>\n" "Last-Translator: ABIS Team <biblio.if.abis@gmail.com>\n"
"Language: uk\n" "Language: uk\n"
@ -45,9 +45,9 @@ msgstr ""
msgid "Unknown command" msgid "Unknown command"
msgstr "" msgstr ""
#: cps/admin.py:115 cps/editbooks.py:504 cps/editbooks.py:514 #: cps/admin.py:115 cps/editbooks.py:505 cps/editbooks.py:515
#: cps/editbooks.py:620 cps/editbooks.py:622 cps/editbooks.py:688 #: cps/editbooks.py:621 cps/editbooks.py:623 cps/editbooks.py:689
#: cps/updater.py:509 cps/uploader.py:99 cps/uploader.py:110 #: cps/updater.py:509 cps/uploader.py:100 cps/uploader.py:110
msgid "Unknown" msgid "Unknown"
msgstr "Невідомий" msgstr "Невідомий"
@ -59,223 +59,223 @@ msgstr "Сторінка адміністратора"
msgid "UI Configuration" msgid "UI Configuration"
msgstr "Конфігурація інтерфейсу" msgstr "Конфігурація інтерфейсу"
#: cps/admin.py:192 cps/admin.py:674 #: cps/admin.py:189 cps/admin.py:671
msgid "Calibre-Web configuration updated" msgid "Calibre-Web configuration updated"
msgstr "" msgstr ""
#: cps/admin.py:438 cps/admin.py:444 cps/admin.py:455 cps/admin.py:466 #: cps/admin.py:435 cps/admin.py:441 cps/admin.py:452 cps/admin.py:463
#: cps/templates/modal_restriction.html:29 #: cps/templates/modal_restriction.html:29
msgid "Deny" msgid "Deny"
msgstr "" msgstr ""
#: cps/admin.py:440 cps/admin.py:446 cps/admin.py:457 cps/admin.py:468 #: cps/admin.py:437 cps/admin.py:443 cps/admin.py:454 cps/admin.py:465
#: cps/templates/modal_restriction.html:28 #: cps/templates/modal_restriction.html:28
msgid "Allow" msgid "Allow"
msgstr "" msgstr ""
#: cps/admin.py:509 #: cps/admin.py:506
msgid "client_secrets.json Is Not Configured For Web Application" msgid "client_secrets.json Is Not Configured For Web Application"
msgstr "" msgstr ""
#: cps/admin.py:525 #: cps/admin.py:522
msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgid "Keyfile Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:529 #: cps/admin.py:526
msgid "Certfile Location is not Valid, Please Enter Correct Path" msgid "Certfile Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:567 #: cps/admin.py:564
msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier"
msgstr "" msgstr ""
#: cps/admin.py:585 #: cps/admin.py:582
#, python-format #, python-format
msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier"
msgstr "" msgstr ""
#: cps/admin.py:588 #: cps/admin.py:585
msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgid "LDAP Group Object Filter Has Unmatched Parenthesis"
msgstr "" msgstr ""
#: cps/admin.py:592 #: cps/admin.py:589
#, python-format #, python-format
msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier"
msgstr "" msgstr ""
#: cps/admin.py:595 #: cps/admin.py:592
msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgid "LDAP User Object Filter Has Unmatched Parenthesis"
msgstr "" msgstr ""
#: cps/admin.py:599 #: cps/admin.py:596
msgid "LDAP Certificate Location is not Valid, Please Enter Correct Path" msgid "LDAP Certificate Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:647 #: cps/admin.py:644
msgid "Logfile Location is not Valid, Please Enter Correct Path" msgid "Logfile Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:652 #: cps/admin.py:649
msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgid "Access Logfile Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:671 #: cps/admin.py:668
msgid "DB Location is not Valid, Please Enter Correct Path" msgid "DB Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:704 #: cps/admin.py:701
msgid "Basic Configuration" msgid "Basic Configuration"
msgstr "Настройки сервера" msgstr "Настройки сервера"
#: cps/admin.py:728 cps/web.py:1230 #: cps/admin.py:725 cps/web.py:1235
msgid "Please fill out all fields!" msgid "Please fill out all fields!"
msgstr "Будь-ласка, заповніть всі поля!" msgstr "Будь-ласка, заповніть всі поля!"
#: cps/admin.py:731 cps/admin.py:743 cps/admin.py:749 cps/admin.py:767 #: cps/admin.py:728 cps/admin.py:740 cps/admin.py:746 cps/admin.py:764
msgid "Add new user" msgid "Add new user"
msgstr "Додати користувача" msgstr "Додати користувача"
#: cps/admin.py:740 cps/web.py:1472 #: cps/admin.py:737 cps/web.py:1477
msgid "E-mail is not from valid domain" msgid "E-mail is not from valid domain"
msgstr "" msgstr ""
#: cps/admin.py:747 cps/admin.py:762 #: cps/admin.py:744 cps/admin.py:759
msgid "Found an existing account for this e-mail address or nickname." msgid "Found an existing account for this e-mail address or nickname."
msgstr "" msgstr ""
#: cps/admin.py:758 #: cps/admin.py:755
#, python-format #, python-format
msgid "User '%(user)s' created" msgid "User '%(user)s' created"
msgstr "Користувач '%(user)s' додан" msgstr "Користувач '%(user)s' додан"
#: cps/admin.py:777 #: cps/admin.py:774
msgid "Edit e-mail server settings" msgid "Edit e-mail server settings"
msgstr "" msgstr ""
#: cps/admin.py:803 #: cps/admin.py:800
#, python-format #, python-format
msgid "Test e-mail successfully send to %(kindlemail)s" msgid "Test e-mail successfully send to %(kindlemail)s"
msgstr "" msgstr ""
#: cps/admin.py:806 #: cps/admin.py:803
#, python-format #, python-format
msgid "There was an error sending the Test e-mail: %(res)s" msgid "There was an error sending the Test e-mail: %(res)s"
msgstr "" msgstr ""
#: cps/admin.py:808 #: cps/admin.py:805
msgid "Please configure your e-mail address first..." msgid "Please configure your e-mail address first..."
msgstr "" msgstr ""
#: cps/admin.py:810 #: cps/admin.py:807
msgid "E-mail server settings updated" msgid "E-mail server settings updated"
msgstr "" msgstr ""
#: cps/admin.py:821 #: cps/admin.py:818
msgid "User not found" msgid "User not found"
msgstr "" msgstr ""
#: cps/admin.py:842 #: cps/admin.py:839
#, python-format #, python-format
msgid "User '%(nick)s' deleted" msgid "User '%(nick)s' deleted"
msgstr "Користувача '%(nick)s' видалено" msgstr "Користувача '%(nick)s' видалено"
#: cps/admin.py:845 #: cps/admin.py:842
msgid "No admin user remaining, can't delete user" msgid "No admin user remaining, can't delete user"
msgstr "" msgstr ""
#: cps/admin.py:851 #: cps/admin.py:848
msgid "No admin user remaining, can't remove admin role" msgid "No admin user remaining, can't remove admin role"
msgstr "" msgstr ""
#: cps/admin.py:887 cps/web.py:1515 #: cps/admin.py:884 cps/web.py:1520
msgid "Found an existing account for this e-mail address." msgid "Found an existing account for this e-mail address."
msgstr "" msgstr ""
#: cps/admin.py:897 cps/admin.py:912 cps/admin.py:932 cps/web.py:1490 #: cps/admin.py:894 cps/admin.py:909 cps/admin.py:929 cps/web.py:1495
#, python-format #, python-format
msgid "Edit User %(nick)s" msgid "Edit User %(nick)s"
msgstr "Змінити користувача %(nick)s" msgstr "Змінити користувача %(nick)s"
#: cps/admin.py:903 cps/web.py:1482 #: cps/admin.py:900 cps/web.py:1487
msgid "This username is already taken" msgid "This username is already taken"
msgstr "" msgstr ""
#: cps/admin.py:919 #: cps/admin.py:916
#, python-format #, python-format
msgid "User '%(nick)s' updated" msgid "User '%(nick)s' updated"
msgstr "Користувача '%(nick)s' оновлено" msgstr "Користувача '%(nick)s' оновлено"
#: cps/admin.py:922 #: cps/admin.py:919
msgid "An unknown error occured." msgid "An unknown error occured."
msgstr "Сталась невідома помилка" msgstr "Сталась невідома помилка"
#: cps/admin.py:943 #: cps/admin.py:940
#, python-format #, python-format
msgid "Password for user %(user)s reset" msgid "Password for user %(user)s reset"
msgstr "" msgstr ""
#: cps/admin.py:946 cps/web.py:1255 cps/web.py:1319 #: cps/admin.py:943 cps/web.py:1260 cps/web.py:1324
msgid "An unknown error occurred. Please try again later." msgid "An unknown error occurred. Please try again later."
msgstr "" msgstr ""
#: cps/admin.py:949 cps/web.py:1196 #: cps/admin.py:946 cps/web.py:1201
msgid "Please configure the SMTP mail settings first..." msgid "Please configure the SMTP mail settings first..."
msgstr "Будь-ласка, спочатку сконфігуруйте параметри SMTP" msgstr "Будь-ласка, спочатку сконфігуруйте параметри SMTP"
#: cps/admin.py:961 #: cps/admin.py:958
msgid "Logfile viewer" msgid "Logfile viewer"
msgstr "" msgstr ""
#: cps/admin.py:1000 #: cps/admin.py:997
msgid "Requesting update package" msgid "Requesting update package"
msgstr "Перевірка оновлень" msgstr "Перевірка оновлень"
#: cps/admin.py:1001 #: cps/admin.py:998
msgid "Downloading update package" msgid "Downloading update package"
msgstr "Завантаження оновлень" msgstr "Завантаження оновлень"
#: cps/admin.py:1002 #: cps/admin.py:999
msgid "Unzipping update package" msgid "Unzipping update package"
msgstr "Розпакування оновлення" msgstr "Розпакування оновлення"
#: cps/admin.py:1003 #: cps/admin.py:1000
msgid "Replacing files" msgid "Replacing files"
msgstr "" msgstr ""
#: cps/admin.py:1004 #: cps/admin.py:1001
msgid "Database connections are closed" msgid "Database connections are closed"
msgstr "З'єднання з базою даних закрите" msgstr "З'єднання з базою даних закрите"
#: cps/admin.py:1005 #: cps/admin.py:1002
msgid "Stopping server" msgid "Stopping server"
msgstr "" msgstr ""
#: cps/admin.py:1006 #: cps/admin.py:1003
msgid "Update finished, please press okay and reload page" msgid "Update finished, please press okay and reload page"
msgstr "Оновлення встановлені, натисніть ok і перезавантажте сторінку" msgstr "Оновлення встановлені, натисніть ok і перезавантажте сторінку"
#: cps/admin.py:1007 cps/admin.py:1008 cps/admin.py:1009 cps/admin.py:1010 #: cps/admin.py:1004 cps/admin.py:1005 cps/admin.py:1006 cps/admin.py:1007
#: cps/admin.py:1011 #: cps/admin.py:1008
msgid "Update failed:" msgid "Update failed:"
msgstr "" msgstr ""
#: cps/admin.py:1007 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522 #: cps/admin.py:1004 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522
msgid "HTTP Error" msgid "HTTP Error"
msgstr "" msgstr ""
#: cps/admin.py:1008 cps/updater.py:321 cps/updater.py:524 #: cps/admin.py:1005 cps/updater.py:321 cps/updater.py:524
msgid "Connection error" msgid "Connection error"
msgstr "" msgstr ""
#: cps/admin.py:1009 cps/updater.py:323 cps/updater.py:526 #: cps/admin.py:1006 cps/updater.py:323 cps/updater.py:526
msgid "Timeout while establishing connection" msgid "Timeout while establishing connection"
msgstr "" msgstr ""
#: cps/admin.py:1010 cps/updater.py:325 cps/updater.py:528 #: cps/admin.py:1007 cps/updater.py:325 cps/updater.py:528
msgid "General error" msgid "General error"
msgstr "" msgstr ""
#: cps/admin.py:1011 #: cps/admin.py:1008
msgid "Update File Could Not be Saved in Temp Dir" msgid "Update File Could Not be Saved in Temp Dir"
msgstr "" msgstr ""
@ -291,7 +291,7 @@ msgstr ""
msgid "Book Successfully Deleted" msgid "Book Successfully Deleted"
msgstr "" msgstr ""
#: cps/editbooks.py:253 cps/editbooks.py:489 #: cps/editbooks.py:253 cps/editbooks.py:490
msgid "Error opening eBook. File does not exist or file is not accessible" msgid "Error opening eBook. File does not exist or file is not accessible"
msgstr "Сталась помилка при відкриванні eBook. Файл не існує або відсутній доступ до нього" msgstr "Сталась помилка при відкриванні eBook. Файл не існує або відсутній доступ до нього"
@ -304,16 +304,16 @@ msgstr "змінити метадані"
msgid "%(langname)s is not a valid language" msgid "%(langname)s is not a valid language"
msgstr "" msgstr ""
#: cps/editbooks.py:413 cps/editbooks.py:663 #: cps/editbooks.py:413 cps/editbooks.py:664
#, python-format #, python-format
msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgid "File extension '%(ext)s' is not allowed to be uploaded to this server"
msgstr "" msgstr ""
#: cps/editbooks.py:417 cps/editbooks.py:667 #: cps/editbooks.py:417 cps/editbooks.py:668
msgid "File to be uploaded must have an extension" msgid "File to be uploaded must have an extension"
msgstr "Завантажувальний файл повинен мати розширення" msgstr "Завантажувальний файл повинен мати розширення"
#: cps/editbooks.py:429 cps/editbooks.py:701 #: cps/editbooks.py:429 cps/editbooks.py:702
#, python-format #, python-format
msgid "Failed to create path %(path)s (Permission denied)." msgid "Failed to create path %(path)s (Permission denied)."
msgstr "" msgstr ""
@ -328,48 +328,48 @@ msgstr ""
msgid "File format %(ext)s added to %(book)s" msgid "File format %(ext)s added to %(book)s"
msgstr "" msgstr ""
#: cps/editbooks.py:606 #: cps/editbooks.py:607
msgid "Metadata successfully updated" msgid "Metadata successfully updated"
msgstr "" msgstr ""
#: cps/editbooks.py:615 #: cps/editbooks.py:616
msgid "Error editing book, please check logfile for details" msgid "Error editing book, please check logfile for details"
msgstr "Сталась помилка при редагуванні книги. Будь-ласка, перевірте лог-файл для деталей" msgstr "Сталась помилка при редагуванні книги. Будь-ласка, перевірте лог-файл для деталей"
#: cps/editbooks.py:675 #: cps/editbooks.py:676
#, python-format #, python-format
msgid "File %(filename)s could not saved to temp dir" msgid "File %(filename)s could not saved to temp dir"
msgstr "" msgstr ""
#: cps/editbooks.py:692 #: cps/editbooks.py:693
msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgid "Uploaded book probably exists in the library, consider to change before upload new: "
msgstr "" msgstr ""
#: cps/editbooks.py:707 #: cps/editbooks.py:709
#, python-format #, python-format
msgid "Failed to store file %(file)s (Permission denied)." msgid "Failed to Move File %(file)s: %(error)s"
msgstr "" msgstr ""
#: cps/editbooks.py:713 #: cps/editbooks.py:723
#, python-format #, python-format
msgid "Failed to delete file %(file)s (Permission denied)." msgid "Failed to Move Cover File %(file)s: %(error)s"
msgstr "" msgstr ""
#: cps/editbooks.py:804 #: cps/editbooks.py:808
#, python-format #, python-format
msgid "File %(file)s uploaded" msgid "File %(file)s uploaded"
msgstr "" msgstr ""
#: cps/editbooks.py:833 #: cps/editbooks.py:837
msgid "Source or destination format for conversion missing" msgid "Source or destination format for conversion missing"
msgstr "" msgstr ""
#: cps/editbooks.py:841 #: cps/editbooks.py:845
#, python-format #, python-format
msgid "Book successfully queued for converting to %(book_format)s" msgid "Book successfully queued for converting to %(book_format)s"
msgstr "" msgstr ""
#: cps/editbooks.py:845 #: cps/editbooks.py:849
#, python-format #, python-format
msgid "There was an error converting this book: %(res)s" msgid "There was an error converting this book: %(res)s"
msgstr "" msgstr ""
@ -443,111 +443,111 @@ msgstr ""
msgid "The requested file could not be read. Maybe wrong permissions?" msgid "The requested file could not be read. Maybe wrong permissions?"
msgstr "" msgstr ""
#: cps/helper.py:299 #: cps/helper.py:300
#, python-format #, python-format
msgid "Deleting book %(id)s failed, path has subfolders: %(path)s" msgid "Deleting book %(id)s failed, path has subfolders: %(path)s"
msgstr "" msgstr ""
#: cps/helper.py:309 #: cps/helper.py:310
#, python-format #, python-format
msgid "Deleting book %(id)s failed: %(message)s" msgid "Deleting book %(id)s failed: %(message)s"
msgstr "" msgstr ""
#: cps/helper.py:319 #: cps/helper.py:320
#, python-format #, python-format
msgid "Deleting book %(id)s failed, book path not valid: %(path)s" msgid "Deleting book %(id)s failed, book path not valid: %(path)s"
msgstr "" msgstr ""
#: cps/helper.py:354 #: cps/helper.py:355
#, python-format #, python-format
msgid "Rename title from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgid "Rename title from: '%(src)s' to '%(dest)s' failed with error: %(error)s"
msgstr "" msgstr ""
#: cps/helper.py:364 #: cps/helper.py:365
#, python-format #, python-format
msgid "Rename author from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgid "Rename author from: '%(src)s' to '%(dest)s' failed with error: %(error)s"
msgstr "" msgstr ""
#: cps/helper.py:378 #: cps/helper.py:379
#, python-format #, python-format
msgid "Rename file in path '%(src)s' to '%(dest)s' failed with error: %(error)s" msgid "Rename file in path '%(src)s' to '%(dest)s' failed with error: %(error)s"
msgstr "" msgstr ""
#: cps/helper.py:404 cps/helper.py:414 cps/helper.py:422 #: cps/helper.py:405 cps/helper.py:415 cps/helper.py:423
#, python-format #, python-format
msgid "File %(file)s not found on Google Drive" msgid "File %(file)s not found on Google Drive"
msgstr "" msgstr ""
#: cps/helper.py:443 #: cps/helper.py:444
#, python-format #, python-format
msgid "Book path %(path)s not found on Google Drive" msgid "Book path %(path)s not found on Google Drive"
msgstr "" msgstr ""
#: cps/helper.py:550 #: cps/helper.py:551
msgid "Failed to create path for cover" msgid "Failed to create path for cover"
msgstr "" msgstr ""
#: cps/helper.py:555 #: cps/helper.py:556
msgid "Cover-file is not a valid image file, or could not be stored" msgid "Cover-file is not a valid image file, or could not be stored"
msgstr "" msgstr ""
#: cps/helper.py:566 #: cps/helper.py:567
msgid "Only jpg/jpeg/png/webp files are supported as coverfile" msgid "Only jpg/jpeg/png/webp files are supported as coverfile"
msgstr "" msgstr ""
#: cps/helper.py:580 #: cps/helper.py:581
msgid "Only jpg/jpeg files are supported as coverfile" msgid "Only jpg/jpeg files are supported as coverfile"
msgstr "" msgstr ""
#: cps/helper.py:622 #: cps/helper.py:625
msgid "Unrar binary file not found" msgid "Unrar binary file not found"
msgstr "" msgstr ""
#: cps/helper.py:635 #: cps/helper.py:638
msgid "Error excecuting UnRar" msgid "Error excecuting UnRar"
msgstr "" msgstr ""
#: cps/helper.py:691 #: cps/helper.py:694
msgid "Waiting" msgid "Waiting"
msgstr "" msgstr ""
#: cps/helper.py:693 #: cps/helper.py:696
msgid "Failed" msgid "Failed"
msgstr "" msgstr ""
#: cps/helper.py:695 #: cps/helper.py:698
msgid "Started" msgid "Started"
msgstr "" msgstr ""
#: cps/helper.py:697 #: cps/helper.py:700
msgid "Finished" msgid "Finished"
msgstr "" msgstr ""
#: cps/helper.py:699 #: cps/helper.py:702
msgid "Unknown Status" msgid "Unknown Status"
msgstr "" msgstr ""
#: cps/helper.py:704 #: cps/helper.py:707
msgid "E-mail: " msgid "E-mail: "
msgstr "" msgstr ""
#: cps/helper.py:706 cps/helper.py:710 #: cps/helper.py:709 cps/helper.py:713
msgid "Convert: " msgid "Convert: "
msgstr "" msgstr ""
#: cps/helper.py:708 #: cps/helper.py:711
msgid "Upload: " msgid "Upload: "
msgstr "" msgstr ""
#: cps/helper.py:712 #: cps/helper.py:715
msgid "Unknown Task: " msgid "Unknown Task: "
msgstr "" msgstr ""
#: cps/kobo_auth.py:126 #: cps/kobo_auth.py:130
msgid "PLease access calibre-web from non localhost to get valid api_endpoint for kobo device" msgid "PLease access calibre-web from non localhost to get valid api_endpoint for kobo device"
msgstr "" msgstr ""
#: cps/kobo_auth.py:129 cps/kobo_auth.py:149 #: cps/kobo_auth.py:133 cps/kobo_auth.py:153
msgid "Kobo Setup" msgid "Kobo Setup"
msgstr "" msgstr ""
@ -572,7 +572,7 @@ msgstr ""
msgid "Failed to fetch user info from Google." msgid "Failed to fetch user info from Google."
msgstr "" msgstr ""
#: cps/oauth_bb.py:225 cps/web.py:1291 cps/web.py:1431 #: cps/oauth_bb.py:225 cps/web.py:1296 cps/web.py:1436
#, python-format #, python-format
msgid "you are now logged in as: '%(nickname)s'" msgid "you are now logged in as: '%(nickname)s'"
msgstr "Ви увійшли як користувач: '%(nickname)s'" msgstr "Ви увійшли як користувач: '%(nickname)s'"
@ -724,7 +724,7 @@ msgstr "Популярні книги"
msgid "Show Hot Books" msgid "Show Hot Books"
msgstr "Показувати популярні книги" msgstr "Показувати популярні книги"
#: cps/templates/index.xml:24 cps/ub.py:70 cps/web.py:615 #: cps/templates/index.xml:24 cps/ub.py:70 cps/web.py:616
msgid "Top Rated Books" msgid "Top Rated Books"
msgstr "Книги з найкращим рейтингом" msgstr "Книги з найкращим рейтингом"
@ -733,7 +733,7 @@ msgid "Show Top Rated Books"
msgstr "Показувати книги з найвищим рейтингом" msgstr "Показувати книги з найвищим рейтингом"
#: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:73 #: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:73
#: cps/web.py:1125 #: cps/web.py:1131
msgid "Read Books" msgid "Read Books"
msgstr "Прочитані книги" msgstr "Прочитані книги"
@ -742,7 +742,7 @@ msgid "Show read and unread"
msgstr "Показувати прочитані та непрочитані книги" msgstr "Показувати прочитані та непрочитані книги"
#: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:77 #: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:77
#: cps/web.py:1129 #: cps/web.py:1134
msgid "Unread Books" msgid "Unread Books"
msgstr "Непрочитані книги" msgstr "Непрочитані книги"
@ -758,7 +758,7 @@ msgstr "Огляд"
msgid "Show random books" msgid "Show random books"
msgstr "Показувати випадкові книги" msgstr "Показувати випадкові книги"
#: cps/templates/index.xml:75 cps/ub.py:83 cps/web.py:897 #: cps/templates/index.xml:75 cps/ub.py:83 cps/web.py:898
msgid "Categories" msgid "Categories"
msgstr "Категорії" msgstr "Категорії"
@ -767,7 +767,7 @@ msgid "Show category selection"
msgstr "Показувати вибір категорії" msgstr "Показувати вибір категорії"
#: cps/templates/book_edit.html:84 cps/templates/index.xml:82 #: cps/templates/book_edit.html:84 cps/templates/index.xml:82
#: cps/templates/search_form.html:53 cps/ub.py:86 cps/web.py:825 #: cps/templates/search_form.html:53 cps/ub.py:86 cps/web.py:826
msgid "Series" msgid "Series"
msgstr "Серії" msgstr "Серії"
@ -783,7 +783,7 @@ msgstr "Автори"
msgid "Show author selection" msgid "Show author selection"
msgstr "Показувати вибір автора" msgstr "Показувати вибір автора"
#: cps/templates/index.xml:68 cps/ub.py:93 cps/web.py:809 #: cps/templates/index.xml:68 cps/ub.py:93 cps/web.py:810
msgid "Publishers" msgid "Publishers"
msgstr "" msgstr ""
@ -792,7 +792,7 @@ msgid "Show publisher selection"
msgstr "" msgstr ""
#: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:96 #: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:96
#: cps/web.py:880 #: cps/web.py:881
msgid "Languages" msgid "Languages"
msgstr "Мови" msgstr "Мови"
@ -816,7 +816,7 @@ msgstr ""
msgid "Show file formats selection" msgid "Show file formats selection"
msgstr "" msgstr ""
#: cps/ub.py:107 cps/web.py:1150 #: cps/ub.py:107 cps/web.py:1155
msgid "Archived Books" msgid "Archived Books"
msgstr "" msgstr ""
@ -853,223 +853,223 @@ msgstr ""
msgid "Click on the button below to update to the latest stable version." msgid "Click on the button below to update to the latest stable version."
msgstr "" msgstr ""
#: cps/web.py:306 #: cps/web.py:307
#, python-format #, python-format
msgid "Error: %(ldaperror)s" msgid "Error: %(ldaperror)s"
msgstr "" msgstr ""
#: cps/web.py:310 #: cps/web.py:311
msgid "Error: No user returned in response of LDAP server" msgid "Error: No user returned in response of LDAP server"
msgstr "" msgstr ""
#: cps/web.py:358 #: cps/web.py:359
msgid "Failed to Create at Least One LDAP User" msgid "Failed to Create at Least One LDAP User"
msgstr "" msgstr ""
#: cps/web.py:361 #: cps/web.py:362
msgid "At Least One LDAP User Not Found in Database" msgid "At Least One LDAP User Not Found in Database"
msgstr "" msgstr ""
#: cps/web.py:363 #: cps/web.py:364
msgid "User Successfully Imported" msgid "User Successfully Imported"
msgstr "" msgstr ""
#: cps/web.py:587 #: cps/web.py:588
msgid "Recently Added Books" msgid "Recently Added Books"
msgstr "Нещодавно додані книги" msgstr "Нещодавно додані книги"
#: cps/templates/index.html:5 cps/web.py:623 #: cps/templates/index.html:5 cps/web.py:624
msgid "Discover (Random Books)" msgid "Discover (Random Books)"
msgstr "Огляд (випадкові книги)" msgstr "Огляд (випадкові книги)"
#: cps/web.py:651 #: cps/web.py:652
msgid "Books" msgid "Books"
msgstr "" msgstr ""
#: cps/web.py:678 #: cps/web.py:679
msgid "Hot Books (Most Downloaded)" msgid "Hot Books (Most Downloaded)"
msgstr "Популярні книги (найбільш завантажувані)" msgstr "Популярні книги (найбільш завантажувані)"
#: cps/web.py:688 #: cps/web.py:689
msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible" msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible"
msgstr "Неможливо відкрити книгу. Файл не існує або немає доступу." msgstr "Неможливо відкрити книгу. Файл не існує або немає доступу."
#: cps/web.py:702 #: cps/web.py:703
#, python-format #, python-format
msgid "Author: %(name)s" msgid "Author: %(name)s"
msgstr "" msgstr ""
#: cps/web.py:714 #: cps/web.py:715
#, python-format #, python-format
msgid "Publisher: %(name)s" msgid "Publisher: %(name)s"
msgstr "" msgstr ""
#: cps/web.py:725 #: cps/web.py:726
#, python-format #, python-format
msgid "Series: %(serie)s" msgid "Series: %(serie)s"
msgstr "Серії: %(serie)s" msgstr "Серії: %(serie)s"
#: cps/web.py:736 #: cps/web.py:737
#, python-format #, python-format
msgid "Rating: %(rating)s stars" msgid "Rating: %(rating)s stars"
msgstr "" msgstr ""
#: cps/web.py:748 #: cps/web.py:749
#, python-format #, python-format
msgid "File format: %(format)s" msgid "File format: %(format)s"
msgstr "" msgstr ""
#: cps/web.py:760 #: cps/web.py:761
#, python-format #, python-format
msgid "Category: %(name)s" msgid "Category: %(name)s"
msgstr "Категорія: %(name)s" msgstr "Категорія: %(name)s"
#: cps/web.py:777 #: cps/web.py:778
#, python-format #, python-format
msgid "Language: %(name)s" msgid "Language: %(name)s"
msgstr "Мова: %(name)s" msgstr "Мова: %(name)s"
#: cps/web.py:839 #: cps/web.py:840
msgid "Ratings list" msgid "Ratings list"
msgstr "" msgstr ""
#: cps/web.py:852 #: cps/web.py:853
msgid "File formats list" msgid "File formats list"
msgstr "" msgstr ""
#: cps/templates/layout.html:73 cps/templates/tasks.html:7 cps/web.py:911 #: cps/templates/layout.html:73 cps/templates/tasks.html:7 cps/web.py:912
msgid "Tasks" msgid "Tasks"
msgstr "" msgstr ""
#: cps/templates/book_edit.html:235 cps/templates/feed.xml:33 #: cps/templates/book_edit.html:235 cps/templates/feed.xml:33
#: cps/templates/layout.html:44 cps/templates/layout.html:47 #: cps/templates/layout.html:44 cps/templates/layout.html:47
#: cps/templates/search_form.html:170 cps/web.py:937 cps/web.py:942 #: cps/templates/search_form.html:174 cps/web.py:938 cps/web.py:943
msgid "Search" msgid "Search"
msgstr "Пошук" msgstr "Пошук"
#: cps/web.py:993 #: cps/web.py:994
msgid "Published after " msgid "Published after "
msgstr "" msgstr ""
#: cps/web.py:1000 #: cps/web.py:1001
msgid "Published before " msgid "Published before "
msgstr "Опубліковано до" msgstr "Опубліковано до"
#: cps/web.py:1014 #: cps/web.py:1015
#, python-format #, python-format
msgid "Rating <= %(rating)s" msgid "Rating <= %(rating)s"
msgstr "" msgstr ""
#: cps/web.py:1016 #: cps/web.py:1017
#, python-format #, python-format
msgid "Rating >= %(rating)s" msgid "Rating >= %(rating)s"
msgstr "" msgstr ""
#: cps/web.py:1082 cps/web.py:1096 #: cps/web.py:1083 cps/web.py:1097
msgid "search" msgid "search"
msgstr "пошук" msgstr "пошук"
#: cps/web.py:1201 #: cps/web.py:1206
#, python-format #, python-format
msgid "Book successfully queued for sending to %(kindlemail)s" msgid "Book successfully queued for sending to %(kindlemail)s"
msgstr "" msgstr ""
#: cps/web.py:1205 #: cps/web.py:1210
#, python-format #, python-format
msgid "Oops! There was an error sending this book: %(res)s" msgid "Oops! There was an error sending this book: %(res)s"
msgstr "Помилка при відправці книги: %(res)s" msgstr "Помилка при відправці книги: %(res)s"
#: cps/web.py:1207 #: cps/web.py:1212
msgid "Please update your profile with a valid Send to Kindle E-mail Address." msgid "Please update your profile with a valid Send to Kindle E-mail Address."
msgstr "" msgstr ""
#: cps/web.py:1224 #: cps/web.py:1229
msgid "E-Mail server is not configured, please contact your administrator!" msgid "E-Mail server is not configured, please contact your administrator!"
msgstr "" msgstr ""
#: cps/web.py:1225 cps/web.py:1231 cps/web.py:1256 cps/web.py:1260 #: cps/web.py:1230 cps/web.py:1236 cps/web.py:1261 cps/web.py:1265
#: cps/web.py:1265 cps/web.py:1269 #: cps/web.py:1270 cps/web.py:1274
msgid "register" msgid "register"
msgstr "зареєструватись" msgstr "зареєструватись"
#: cps/web.py:1258 #: cps/web.py:1263
msgid "Your e-mail is not allowed to register" msgid "Your e-mail is not allowed to register"
msgstr "" msgstr ""
#: cps/web.py:1261 #: cps/web.py:1266
msgid "Confirmation e-mail was send to your e-mail account." msgid "Confirmation e-mail was send to your e-mail account."
msgstr "" msgstr ""
#: cps/web.py:1264 #: cps/web.py:1269
msgid "This username or e-mail address is already in use." msgid "This username or e-mail address is already in use."
msgstr "" msgstr ""
#: cps/web.py:1281 #: cps/web.py:1286
msgid "Cannot activate LDAP authentication" msgid "Cannot activate LDAP authentication"
msgstr "" msgstr ""
#: cps/web.py:1298 #: cps/web.py:1303
#, python-format #, python-format
msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known"
msgstr "" msgstr ""
#: cps/web.py:1304 #: cps/web.py:1309
#, python-format #, python-format
msgid "Could not login: %(message)s" msgid "Could not login: %(message)s"
msgstr "" msgstr ""
#: cps/web.py:1308 cps/web.py:1332 #: cps/web.py:1313 cps/web.py:1337
msgid "Wrong Username or Password" msgid "Wrong Username or Password"
msgstr "Помилка в імені користувача або паролі" msgstr "Помилка в імені користувача або паролі"
#: cps/web.py:1315 #: cps/web.py:1320
msgid "New Password was send to your email address" msgid "New Password was send to your email address"
msgstr "" msgstr ""
#: cps/web.py:1321 #: cps/web.py:1326
msgid "Please enter valid username to reset password" msgid "Please enter valid username to reset password"
msgstr "" msgstr ""
#: cps/web.py:1327 #: cps/web.py:1332
#, python-format #, python-format
msgid "You are now logged in as: '%(nickname)s'" msgid "You are now logged in as: '%(nickname)s'"
msgstr "" msgstr ""
#: cps/web.py:1336 cps/web.py:1363 #: cps/web.py:1341 cps/web.py:1368
msgid "login" msgid "login"
msgstr "увійти" msgstr "увійти"
#: cps/web.py:1375 cps/web.py:1409 #: cps/web.py:1380 cps/web.py:1414
msgid "Token not found" msgid "Token not found"
msgstr "Токен не знайдено" msgstr "Токен не знайдено"
#: cps/web.py:1384 cps/web.py:1417 #: cps/web.py:1389 cps/web.py:1422
msgid "Token has expired" msgid "Token has expired"
msgstr "Час дії токено вичерпано" msgstr "Час дії токено вичерпано"
#: cps/web.py:1393 #: cps/web.py:1398
msgid "Success! Please return to your device" msgid "Success! Please return to your device"
msgstr "Вдалося! Будь-ласка, поверніться до вашого пристрою" msgstr "Вдалося! Будь-ласка, поверніться до вашого пристрою"
#: cps/web.py:1474 cps/web.py:1519 cps/web.py:1525 #: cps/web.py:1479 cps/web.py:1524 cps/web.py:1530
#, python-format #, python-format
msgid "%(name)s's profile" msgid "%(name)s's profile"
msgstr "Профіль %(name)s" msgstr "Профіль %(name)s"
#: cps/web.py:1521 #: cps/web.py:1526
msgid "Profile updated" msgid "Profile updated"
msgstr "Профіль оновлено" msgstr "Профіль оновлено"
#: cps/web.py:1538 cps/web.py:1642 #: cps/web.py:1543 cps/web.py:1647
msgid "Error opening eBook. File does not exist or file is not accessible:" msgid "Error opening eBook. File does not exist or file is not accessible:"
msgstr "" msgstr ""
#: cps/web.py:1550 cps/web.py:1553 cps/web.py:1556 cps/web.py:1563 #: cps/web.py:1555 cps/web.py:1558 cps/web.py:1561 cps/web.py:1568
#: cps/web.py:1568 #: cps/web.py:1573
msgid "Read a Book" msgid "Read a Book"
msgstr "Читати книгу" msgstr "Читати книгу"
#: cps/web.py:1579 #: cps/web.py:1584
msgid "Error opening eBook. File does not exist or file is not accessible." msgid "Error opening eBook. File does not exist or file is not accessible."
msgstr "" msgstr ""
@ -1295,13 +1295,13 @@ msgid "In Library"
msgstr "У бібліотеці" msgstr "У бібліотеці"
#: cps/templates/author.html:34 cps/templates/list.html:14 #: cps/templates/author.html:34 cps/templates/list.html:14
#: cps/templates/search.html:41 #: cps/templates/search.html:38
msgid "All" msgid "All"
msgstr "" msgstr ""
#: cps/templates/author.html:58 cps/templates/author.html:110 #: cps/templates/author.html:58 cps/templates/author.html:110
#: cps/templates/discover.html:27 cps/templates/index.html:26 #: cps/templates/discover.html:27 cps/templates/index.html:26
#: cps/templates/index.html:89 cps/templates/search.html:67 #: cps/templates/index.html:89 cps/templates/search.html:64
#: cps/templates/shelf.html:36 #: cps/templates/shelf.html:36
msgid "reduce" msgid "reduce"
msgstr "" msgstr ""
@ -1930,6 +1930,12 @@ msgstr "Опис:"
msgid "Add to shelf" msgid "Add to shelf"
msgstr "Додати на книжкову полицю" msgstr "Додати на книжкову полицю"
#: cps/templates/detail.html:243 cps/templates/detail.html:260
#: cps/templates/feed.xml:79 cps/templates/layout.html:136
#: cps/templates/layout.html:140 cps/templates/search.html:20
msgid "(Public)"
msgstr ""
#: cps/templates/detail.html:274 #: cps/templates/detail.html:274
msgid "Edit Metadata" msgid "Edit Metadata"
msgstr "Редагувати метадані" msgstr "Редагувати метадані"
@ -1978,11 +1984,6 @@ msgstr ""
msgid "Next" msgid "Next"
msgstr "Далі" msgstr "Далі"
#: cps/templates/feed.xml:79 cps/templates/layout.html:136
#: cps/templates/layout.html:140
msgid "(Public)"
msgstr ""
#: cps/templates/generate_kobo_auth_url.html:5 #: cps/templates/generate_kobo_auth_url.html:5
msgid "Open the .kobo/Kobo eReader.conf file in a text editor and add (or edit):" msgid "Open the .kobo/Kobo eReader.conf file in a text editor and add (or edit):"
msgstr "" msgstr ""

View File

@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Calibre-Web\n" "Project-Id-Version: Calibre-Web\n"
"Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n" "Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n"
"POT-Creation-Date: 2020-05-01 17:15+0200\n" "POT-Creation-Date: 2020-05-23 08:46+0200\n"
"PO-Revision-Date: 2017-01-06 17:00+0000\n" "PO-Revision-Date: 2017-01-06 17:00+0000\n"
"Last-Translator: dalin <dalin.lin@gmail.com>\n" "Last-Translator: dalin <dalin.lin@gmail.com>\n"
"Language: zh_Hans_CN\n" "Language: zh_Hans_CN\n"
@ -46,9 +46,9 @@ msgstr ""
msgid "Unknown command" msgid "Unknown command"
msgstr "" msgstr ""
#: cps/admin.py:115 cps/editbooks.py:504 cps/editbooks.py:514 #: cps/admin.py:115 cps/editbooks.py:505 cps/editbooks.py:515
#: cps/editbooks.py:620 cps/editbooks.py:622 cps/editbooks.py:688 #: cps/editbooks.py:621 cps/editbooks.py:623 cps/editbooks.py:689
#: cps/updater.py:509 cps/uploader.py:99 cps/uploader.py:110 #: cps/updater.py:509 cps/uploader.py:100 cps/uploader.py:110
msgid "Unknown" msgid "Unknown"
msgstr "未知" msgstr "未知"
@ -60,223 +60,223 @@ msgstr "管理页"
msgid "UI Configuration" msgid "UI Configuration"
msgstr "UI配置" msgstr "UI配置"
#: cps/admin.py:192 cps/admin.py:674 #: cps/admin.py:189 cps/admin.py:671
msgid "Calibre-Web configuration updated" msgid "Calibre-Web configuration updated"
msgstr "Calibre-Web配置已更新" msgstr "Calibre-Web配置已更新"
#: cps/admin.py:438 cps/admin.py:444 cps/admin.py:455 cps/admin.py:466 #: cps/admin.py:435 cps/admin.py:441 cps/admin.py:452 cps/admin.py:463
#: cps/templates/modal_restriction.html:29 #: cps/templates/modal_restriction.html:29
msgid "Deny" msgid "Deny"
msgstr "限制" msgstr "限制"
#: cps/admin.py:440 cps/admin.py:446 cps/admin.py:457 cps/admin.py:468 #: cps/admin.py:437 cps/admin.py:443 cps/admin.py:454 cps/admin.py:465
#: cps/templates/modal_restriction.html:28 #: cps/templates/modal_restriction.html:28
msgid "Allow" msgid "Allow"
msgstr "允许" msgstr "允许"
#: cps/admin.py:509 #: cps/admin.py:506
msgid "client_secrets.json Is Not Configured For Web Application" msgid "client_secrets.json Is Not Configured For Web Application"
msgstr "" msgstr ""
#: cps/admin.py:525 #: cps/admin.py:522
msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgid "Keyfile Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:529 #: cps/admin.py:526
msgid "Certfile Location is not Valid, Please Enter Correct Path" msgid "Certfile Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:567 #: cps/admin.py:564
msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier"
msgstr "" msgstr ""
#: cps/admin.py:585 #: cps/admin.py:582
#, python-format #, python-format
msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier"
msgstr "" msgstr ""
#: cps/admin.py:588 #: cps/admin.py:585
msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgid "LDAP Group Object Filter Has Unmatched Parenthesis"
msgstr "" msgstr ""
#: cps/admin.py:592 #: cps/admin.py:589
#, python-format #, python-format
msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier"
msgstr "" msgstr ""
#: cps/admin.py:595 #: cps/admin.py:592
msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgid "LDAP User Object Filter Has Unmatched Parenthesis"
msgstr "" msgstr ""
#: cps/admin.py:599 #: cps/admin.py:596
msgid "LDAP Certificate Location is not Valid, Please Enter Correct Path" msgid "LDAP Certificate Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:647 #: cps/admin.py:644
msgid "Logfile Location is not Valid, Please Enter Correct Path" msgid "Logfile Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:652 #: cps/admin.py:649
msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgid "Access Logfile Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:671 #: cps/admin.py:668
msgid "DB Location is not Valid, Please Enter Correct Path" msgid "DB Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:704 #: cps/admin.py:701
msgid "Basic Configuration" msgid "Basic Configuration"
msgstr "基本配置" msgstr "基本配置"
#: cps/admin.py:728 cps/web.py:1230 #: cps/admin.py:725 cps/web.py:1235
msgid "Please fill out all fields!" msgid "Please fill out all fields!"
msgstr "请填写所有字段" msgstr "请填写所有字段"
#: cps/admin.py:731 cps/admin.py:743 cps/admin.py:749 cps/admin.py:767 #: cps/admin.py:728 cps/admin.py:740 cps/admin.py:746 cps/admin.py:764
msgid "Add new user" msgid "Add new user"
msgstr "添加新用户" msgstr "添加新用户"
#: cps/admin.py:740 cps/web.py:1472 #: cps/admin.py:737 cps/web.py:1477
msgid "E-mail is not from valid domain" msgid "E-mail is not from valid domain"
msgstr "邮箱不在有效域中'" msgstr "邮箱不在有效域中'"
#: cps/admin.py:747 cps/admin.py:762 #: cps/admin.py:744 cps/admin.py:759
msgid "Found an existing account for this e-mail address or nickname." msgid "Found an existing account for this e-mail address or nickname."
msgstr "此邮箱或昵称的账号已经存在。" msgstr "此邮箱或昵称的账号已经存在。"
#: cps/admin.py:758 #: cps/admin.py:755
#, python-format #, python-format
msgid "User '%(user)s' created" msgid "User '%(user)s' created"
msgstr "用户 '%(user)s' 已被创建" msgstr "用户 '%(user)s' 已被创建"
#: cps/admin.py:777 #: cps/admin.py:774
msgid "Edit e-mail server settings" msgid "Edit e-mail server settings"
msgstr "编辑邮箱服务器设置" msgstr "编辑邮箱服务器设置"
#: cps/admin.py:803 #: cps/admin.py:800
#, python-format #, python-format
msgid "Test e-mail successfully send to %(kindlemail)s" msgid "Test e-mail successfully send to %(kindlemail)s"
msgstr "测试邮件已经被成功发到 %(kindlemail)s" msgstr "测试邮件已经被成功发到 %(kindlemail)s"
#: cps/admin.py:806 #: cps/admin.py:803
#, python-format #, python-format
msgid "There was an error sending the Test e-mail: %(res)s" msgid "There was an error sending the Test e-mail: %(res)s"
msgstr "发送测试邮件出错了: %(res)s" msgstr "发送测试邮件出错了: %(res)s"
#: cps/admin.py:808 #: cps/admin.py:805
msgid "Please configure your e-mail address first..." msgid "Please configure your e-mail address first..."
msgstr "请先配置有效的邮箱地址..." msgstr "请先配置有效的邮箱地址..."
#: cps/admin.py:810 #: cps/admin.py:807
msgid "E-mail server settings updated" msgid "E-mail server settings updated"
msgstr "已更新邮件服务器设置" msgstr "已更新邮件服务器设置"
#: cps/admin.py:821 #: cps/admin.py:818
msgid "User not found" msgid "User not found"
msgstr "" msgstr ""
#: cps/admin.py:842 #: cps/admin.py:839
#, python-format #, python-format
msgid "User '%(nick)s' deleted" msgid "User '%(nick)s' deleted"
msgstr "用户 '%(nick)s' 已被删除" msgstr "用户 '%(nick)s' 已被删除"
#: cps/admin.py:845 #: cps/admin.py:842
msgid "No admin user remaining, can't delete user" msgid "No admin user remaining, can't delete user"
msgstr "admin账户不存在无法删除用户" msgstr "admin账户不存在无法删除用户"
#: cps/admin.py:851 #: cps/admin.py:848
msgid "No admin user remaining, can't remove admin role" msgid "No admin user remaining, can't remove admin role"
msgstr "" msgstr ""
#: cps/admin.py:887 cps/web.py:1515 #: cps/admin.py:884 cps/web.py:1520
msgid "Found an existing account for this e-mail address." msgid "Found an existing account for this e-mail address."
msgstr "找到一个已有账号使用这个邮箱。" msgstr "找到一个已有账号使用这个邮箱。"
#: cps/admin.py:897 cps/admin.py:912 cps/admin.py:932 cps/web.py:1490 #: cps/admin.py:894 cps/admin.py:909 cps/admin.py:929 cps/web.py:1495
#, python-format #, python-format
msgid "Edit User %(nick)s" msgid "Edit User %(nick)s"
msgstr "编辑用户 %(nick)s" msgstr "编辑用户 %(nick)s"
#: cps/admin.py:903 cps/web.py:1482 #: cps/admin.py:900 cps/web.py:1487
msgid "This username is already taken" msgid "This username is already taken"
msgstr "此用户名已被使用" msgstr "此用户名已被使用"
#: cps/admin.py:919 #: cps/admin.py:916
#, python-format #, python-format
msgid "User '%(nick)s' updated" msgid "User '%(nick)s' updated"
msgstr "用户 '%(nick)s' 已被更新" msgstr "用户 '%(nick)s' 已被更新"
#: cps/admin.py:922 #: cps/admin.py:919
msgid "An unknown error occured." msgid "An unknown error occured."
msgstr "发生未知错误。" msgstr "发生未知错误。"
#: cps/admin.py:943 #: cps/admin.py:940
#, python-format #, python-format
msgid "Password for user %(user)s reset" msgid "Password for user %(user)s reset"
msgstr "用户 %(user)s 的密码已重置" msgstr "用户 %(user)s 的密码已重置"
#: cps/admin.py:946 cps/web.py:1255 cps/web.py:1319 #: cps/admin.py:943 cps/web.py:1260 cps/web.py:1324
msgid "An unknown error occurred. Please try again later." msgid "An unknown error occurred. Please try again later."
msgstr "发生一个未知错误,请稍后再试。" msgstr "发生一个未知错误,请稍后再试。"
#: cps/admin.py:949 cps/web.py:1196 #: cps/admin.py:946 cps/web.py:1201
msgid "Please configure the SMTP mail settings first..." msgid "Please configure the SMTP mail settings first..."
msgstr "请先配置SMTP邮箱..." msgstr "请先配置SMTP邮箱..."
#: cps/admin.py:961 #: cps/admin.py:958
msgid "Logfile viewer" msgid "Logfile viewer"
msgstr "日志文件查看器" msgstr "日志文件查看器"
#: cps/admin.py:1000 #: cps/admin.py:997
msgid "Requesting update package" msgid "Requesting update package"
msgstr "正在请求更新包" msgstr "正在请求更新包"
#: cps/admin.py:1001 #: cps/admin.py:998
msgid "Downloading update package" msgid "Downloading update package"
msgstr "正在下载更新包" msgstr "正在下载更新包"
#: cps/admin.py:1002 #: cps/admin.py:999
msgid "Unzipping update package" msgid "Unzipping update package"
msgstr "正在解压更新包" msgstr "正在解压更新包"
#: cps/admin.py:1003 #: cps/admin.py:1000
msgid "Replacing files" msgid "Replacing files"
msgstr "正在替换文件" msgstr "正在替换文件"
#: cps/admin.py:1004 #: cps/admin.py:1001
msgid "Database connections are closed" msgid "Database connections are closed"
msgstr "数据库连接已关闭" msgstr "数据库连接已关闭"
#: cps/admin.py:1005 #: cps/admin.py:1002
msgid "Stopping server" msgid "Stopping server"
msgstr "正在停止服务器" msgstr "正在停止服务器"
#: cps/admin.py:1006 #: cps/admin.py:1003
msgid "Update finished, please press okay and reload page" msgid "Update finished, please press okay and reload page"
msgstr "更新完成,请按确定并刷新页面" msgstr "更新完成,请按确定并刷新页面"
#: cps/admin.py:1007 cps/admin.py:1008 cps/admin.py:1009 cps/admin.py:1010 #: cps/admin.py:1004 cps/admin.py:1005 cps/admin.py:1006 cps/admin.py:1007
#: cps/admin.py:1011 #: cps/admin.py:1008
msgid "Update failed:" msgid "Update failed:"
msgstr "更新失败:" msgstr "更新失败:"
#: cps/admin.py:1007 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522 #: cps/admin.py:1004 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522
msgid "HTTP Error" msgid "HTTP Error"
msgstr "HTTP错误" msgstr "HTTP错误"
#: cps/admin.py:1008 cps/updater.py:321 cps/updater.py:524 #: cps/admin.py:1005 cps/updater.py:321 cps/updater.py:524
msgid "Connection error" msgid "Connection error"
msgstr "连接错误" msgstr "连接错误"
#: cps/admin.py:1009 cps/updater.py:323 cps/updater.py:526 #: cps/admin.py:1006 cps/updater.py:323 cps/updater.py:526
msgid "Timeout while establishing connection" msgid "Timeout while establishing connection"
msgstr "建立连接超时" msgstr "建立连接超时"
#: cps/admin.py:1010 cps/updater.py:325 cps/updater.py:528 #: cps/admin.py:1007 cps/updater.py:325 cps/updater.py:528
msgid "General error" msgid "General error"
msgstr "一般错误" msgstr "一般错误"
#: cps/admin.py:1011 #: cps/admin.py:1008
msgid "Update File Could Not be Saved in Temp Dir" msgid "Update File Could Not be Saved in Temp Dir"
msgstr "" msgstr ""
@ -292,7 +292,7 @@ msgstr ""
msgid "Book Successfully Deleted" msgid "Book Successfully Deleted"
msgstr "" msgstr ""
#: cps/editbooks.py:253 cps/editbooks.py:489 #: cps/editbooks.py:253 cps/editbooks.py:490
msgid "Error opening eBook. File does not exist or file is not accessible" msgid "Error opening eBook. File does not exist or file is not accessible"
msgstr "打开电子书出错。文件不存在或不可访问" msgstr "打开电子书出错。文件不存在或不可访问"
@ -305,16 +305,16 @@ msgstr "编辑元数据"
msgid "%(langname)s is not a valid language" msgid "%(langname)s is not a valid language"
msgstr "%(langname)s 不是一种有效语言" msgstr "%(langname)s 不是一种有效语言"
#: cps/editbooks.py:413 cps/editbooks.py:663 #: cps/editbooks.py:413 cps/editbooks.py:664
#, python-format #, python-format
msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgid "File extension '%(ext)s' is not allowed to be uploaded to this server"
msgstr "不能上传后缀为 '%(ext)s' 的文件到此服务器" msgstr "不能上传后缀为 '%(ext)s' 的文件到此服务器"
#: cps/editbooks.py:417 cps/editbooks.py:667 #: cps/editbooks.py:417 cps/editbooks.py:668
msgid "File to be uploaded must have an extension" msgid "File to be uploaded must have an extension"
msgstr "要上传的文件必须有一个后缀" msgstr "要上传的文件必须有一个后缀"
#: cps/editbooks.py:429 cps/editbooks.py:701 #: cps/editbooks.py:429 cps/editbooks.py:702
#, python-format #, python-format
msgid "Failed to create path %(path)s (Permission denied)." msgid "Failed to create path %(path)s (Permission denied)."
msgstr "创建路径 %(path)s 失败(权限拒绝)。" msgstr "创建路径 %(path)s 失败(权限拒绝)。"
@ -329,48 +329,48 @@ msgstr "保存文件 %(file)s 失败。"
msgid "File format %(ext)s added to %(book)s" msgid "File format %(ext)s added to %(book)s"
msgstr "已添加 %(ext)s 格式到 %(book)s" msgstr "已添加 %(ext)s 格式到 %(book)s"
#: cps/editbooks.py:606 #: cps/editbooks.py:607
msgid "Metadata successfully updated" msgid "Metadata successfully updated"
msgstr "已成功更新元数据" msgstr "已成功更新元数据"
#: cps/editbooks.py:615 #: cps/editbooks.py:616
msgid "Error editing book, please check logfile for details" msgid "Error editing book, please check logfile for details"
msgstr "编辑书籍出错,详情请检查日志文件" msgstr "编辑书籍出错,详情请检查日志文件"
#: cps/editbooks.py:675 #: cps/editbooks.py:676
#, python-format #, python-format
msgid "File %(filename)s could not saved to temp dir" msgid "File %(filename)s could not saved to temp dir"
msgstr "文件 %(filename)s 无法保存到临时目录" msgstr "文件 %(filename)s 无法保存到临时目录"
#: cps/editbooks.py:692 #: cps/editbooks.py:693
msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgid "Uploaded book probably exists in the library, consider to change before upload new: "
msgstr "上传的书籍可能已经存在,建议修改后重新上传:" msgstr "上传的书籍可能已经存在,建议修改后重新上传:"
#: cps/editbooks.py:707 #: cps/editbooks.py:709
#, python-format #, python-format
msgid "Failed to store file %(file)s (Permission denied)." msgid "Failed to Move File %(file)s: %(error)s"
msgstr "存储文件 %(file)s 失败(权限拒绝)。" msgstr ""
#: cps/editbooks.py:713 #: cps/editbooks.py:723
#, python-format #, python-format
msgid "Failed to delete file %(file)s (Permission denied)." msgid "Failed to Move Cover File %(file)s: %(error)s"
msgstr "删除文件 %(file)s 失败(权限拒绝)。" msgstr ""
#: cps/editbooks.py:804 #: cps/editbooks.py:808
#, python-format #, python-format
msgid "File %(file)s uploaded" msgid "File %(file)s uploaded"
msgstr "文件 %(file)s 已上传" msgstr "文件 %(file)s 已上传"
#: cps/editbooks.py:833 #: cps/editbooks.py:837
msgid "Source or destination format for conversion missing" msgid "Source or destination format for conversion missing"
msgstr "转换的源或目的格式缺失" msgstr "转换的源或目的格式缺失"
#: cps/editbooks.py:841 #: cps/editbooks.py:845
#, python-format #, python-format
msgid "Book successfully queued for converting to %(book_format)s" msgid "Book successfully queued for converting to %(book_format)s"
msgstr "书籍已经被成功加入 %(book_format)s 的转换队列" msgstr "书籍已经被成功加入 %(book_format)s 的转换队列"
#: cps/editbooks.py:845 #: cps/editbooks.py:849
#, python-format #, python-format
msgid "There was an error converting this book: %(res)s" msgid "There was an error converting this book: %(res)s"
msgstr "转换此书时出现错误: %(res)s" msgstr "转换此书时出现错误: %(res)s"
@ -444,111 +444,111 @@ msgstr ""
msgid "The requested file could not be read. Maybe wrong permissions?" msgid "The requested file could not be read. Maybe wrong permissions?"
msgstr "无法读取请求的文件。 可能有错误的权限设置?" msgstr "无法读取请求的文件。 可能有错误的权限设置?"
#: cps/helper.py:299 #: cps/helper.py:300
#, python-format #, python-format
msgid "Deleting book %(id)s failed, path has subfolders: %(path)s" msgid "Deleting book %(id)s failed, path has subfolders: %(path)s"
msgstr "" msgstr ""
#: cps/helper.py:309 #: cps/helper.py:310
#, python-format #, python-format
msgid "Deleting book %(id)s failed: %(message)s" msgid "Deleting book %(id)s failed: %(message)s"
msgstr "" msgstr ""
#: cps/helper.py:319 #: cps/helper.py:320
#, python-format #, python-format
msgid "Deleting book %(id)s failed, book path not valid: %(path)s" msgid "Deleting book %(id)s failed, book path not valid: %(path)s"
msgstr "" msgstr ""
#: cps/helper.py:354 #: cps/helper.py:355
#, python-format #, python-format
msgid "Rename title from: '%(src)s' to '%(dest)s' failed with error: %(error)s" 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:364 #: cps/helper.py:365
#, python-format #, python-format
msgid "Rename author from: '%(src)s' to '%(dest)s' failed with error: %(error)s" 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:378 #: cps/helper.py:379
#, python-format #, python-format
msgid "Rename file in path '%(src)s' to '%(dest)s' failed with error: %(error)s" 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:404 cps/helper.py:414 cps/helper.py:422 #: cps/helper.py:405 cps/helper.py:415 cps/helper.py:423
#, python-format #, python-format
msgid "File %(file)s not found on Google Drive" msgid "File %(file)s not found on Google Drive"
msgstr "Google Drive上找不到文件 %(file)s" msgstr "Google Drive上找不到文件 %(file)s"
#: cps/helper.py:443 #: cps/helper.py:444
#, python-format #, python-format
msgid "Book path %(path)s not found on Google Drive" msgid "Book path %(path)s not found on Google Drive"
msgstr "Google Drive上找不到书籍路径 %(path)s" msgstr "Google Drive上找不到书籍路径 %(path)s"
#: cps/helper.py:550 #: cps/helper.py:551
msgid "Failed to create path for cover" msgid "Failed to create path for cover"
msgstr "" msgstr ""
#: cps/helper.py:555 #: cps/helper.py:556
msgid "Cover-file is not a valid image file, or could not be stored" msgid "Cover-file is not a valid image file, or could not be stored"
msgstr "" msgstr ""
#: cps/helper.py:566 #: cps/helper.py:567
msgid "Only jpg/jpeg/png/webp files are supported as coverfile" msgid "Only jpg/jpeg/png/webp files are supported as coverfile"
msgstr "" msgstr ""
#: cps/helper.py:580 #: cps/helper.py:581
msgid "Only jpg/jpeg files are supported as coverfile" msgid "Only jpg/jpeg files are supported as coverfile"
msgstr "" msgstr ""
#: cps/helper.py:622 #: cps/helper.py:625
msgid "Unrar binary file not found" msgid "Unrar binary file not found"
msgstr "" msgstr ""
#: cps/helper.py:635 #: cps/helper.py:638
msgid "Error excecuting UnRar" msgid "Error excecuting UnRar"
msgstr "" msgstr ""
#: cps/helper.py:691 #: cps/helper.py:694
msgid "Waiting" msgid "Waiting"
msgstr "等待中" msgstr "等待中"
#: cps/helper.py:693 #: cps/helper.py:696
msgid "Failed" msgid "Failed"
msgstr "失败" msgstr "失败"
#: cps/helper.py:695 #: cps/helper.py:698
msgid "Started" msgid "Started"
msgstr "已开始" msgstr "已开始"
#: cps/helper.py:697 #: cps/helper.py:700
msgid "Finished" msgid "Finished"
msgstr "已完成" msgstr "已完成"
#: cps/helper.py:699 #: cps/helper.py:702
msgid "Unknown Status" msgid "Unknown Status"
msgstr "未知状态" msgstr "未知状态"
#: cps/helper.py:704 #: cps/helper.py:707
msgid "E-mail: " msgid "E-mail: "
msgstr "" msgstr ""
#: cps/helper.py:706 cps/helper.py:710 #: cps/helper.py:709 cps/helper.py:713
msgid "Convert: " msgid "Convert: "
msgstr "转换:" msgstr "转换:"
#: cps/helper.py:708 #: cps/helper.py:711
msgid "Upload: " msgid "Upload: "
msgstr "上传:" msgstr "上传:"
#: cps/helper.py:712 #: cps/helper.py:715
msgid "Unknown Task: " msgid "Unknown Task: "
msgstr "未知任务:" msgstr "未知任务:"
#: cps/kobo_auth.py:126 #: cps/kobo_auth.py:130
msgid "PLease access calibre-web from non localhost to get valid api_endpoint for kobo device" 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:129 cps/kobo_auth.py:149 #: cps/kobo_auth.py:133 cps/kobo_auth.py:153
msgid "Kobo Setup" msgid "Kobo Setup"
msgstr "" msgstr ""
@ -573,7 +573,7 @@ msgstr "使用Google登录失败。"
msgid "Failed to fetch user info from Google." msgid "Failed to fetch user info from Google."
msgstr "从Google获取用户信息失败。" msgstr "从Google获取用户信息失败。"
#: cps/oauth_bb.py:225 cps/web.py:1291 cps/web.py:1431 #: cps/oauth_bb.py:225 cps/web.py:1296 cps/web.py:1436
#, python-format #, python-format
msgid "you are now logged in as: '%(nickname)s'" msgid "you are now logged in as: '%(nickname)s'"
msgstr "您现在已以'%(nickname)s'身份登录" msgstr "您现在已以'%(nickname)s'身份登录"
@ -725,7 +725,7 @@ msgstr "热门书籍"
msgid "Show Hot Books" msgid "Show Hot Books"
msgstr "显示热门书籍" msgstr "显示热门书籍"
#: cps/templates/index.xml:24 cps/ub.py:70 cps/web.py:615 #: cps/templates/index.xml:24 cps/ub.py:70 cps/web.py:616
msgid "Top Rated Books" msgid "Top Rated Books"
msgstr "最高评分书籍" msgstr "最高评分书籍"
@ -734,7 +734,7 @@ msgid "Show Top Rated Books"
msgstr "显示最高评分书籍" msgstr "显示最高评分书籍"
#: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:73 #: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:73
#: cps/web.py:1125 #: cps/web.py:1131
msgid "Read Books" msgid "Read Books"
msgstr "已读书籍" msgstr "已读书籍"
@ -743,7 +743,7 @@ msgid "Show read and unread"
msgstr "显示已读和未读" msgstr "显示已读和未读"
#: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:77 #: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:77
#: cps/web.py:1129 #: cps/web.py:1134
msgid "Unread Books" msgid "Unread Books"
msgstr "未读书籍" msgstr "未读书籍"
@ -759,7 +759,7 @@ msgstr "发现"
msgid "Show random books" msgid "Show random books"
msgstr "显示随机书籍" msgstr "显示随机书籍"
#: cps/templates/index.xml:75 cps/ub.py:83 cps/web.py:897 #: cps/templates/index.xml:75 cps/ub.py:83 cps/web.py:898
msgid "Categories" msgid "Categories"
msgstr "分类" msgstr "分类"
@ -768,7 +768,7 @@ msgid "Show category selection"
msgstr "显示分类选择" msgstr "显示分类选择"
#: cps/templates/book_edit.html:84 cps/templates/index.xml:82 #: cps/templates/book_edit.html:84 cps/templates/index.xml:82
#: cps/templates/search_form.html:53 cps/ub.py:86 cps/web.py:825 #: cps/templates/search_form.html:53 cps/ub.py:86 cps/web.py:826
msgid "Series" msgid "Series"
msgstr "丛书" msgstr "丛书"
@ -784,7 +784,7 @@ msgstr "作者"
msgid "Show author selection" msgid "Show author selection"
msgstr "显示作者选择" msgstr "显示作者选择"
#: cps/templates/index.xml:68 cps/ub.py:93 cps/web.py:809 #: cps/templates/index.xml:68 cps/ub.py:93 cps/web.py:810
msgid "Publishers" msgid "Publishers"
msgstr "出版社" msgstr "出版社"
@ -793,7 +793,7 @@ msgid "Show publisher selection"
msgstr "显示出版社选择" msgstr "显示出版社选择"
#: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:96 #: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:96
#: cps/web.py:880 #: cps/web.py:881
msgid "Languages" msgid "Languages"
msgstr "语言" msgstr "语言"
@ -817,7 +817,7 @@ msgstr "文件格式"
msgid "Show file formats selection" msgid "Show file formats selection"
msgstr "显示文件格式选择" msgstr "显示文件格式选择"
#: cps/ub.py:107 cps/web.py:1150 #: cps/ub.py:107 cps/web.py:1155
msgid "Archived Books" msgid "Archived Books"
msgstr "" msgstr ""
@ -854,223 +854,223 @@ msgstr "一个新的更新可用。点击下面按钮更新到版本: %(version)
msgid "Click on the button below to update to the latest stable version." msgid "Click on the button below to update to the latest stable version."
msgstr "点击下面按钮更新到最新稳定版本。" msgstr "点击下面按钮更新到最新稳定版本。"
#: cps/web.py:306 #: cps/web.py:307
#, python-format #, python-format
msgid "Error: %(ldaperror)s" msgid "Error: %(ldaperror)s"
msgstr "" msgstr ""
#: cps/web.py:310 #: cps/web.py:311
msgid "Error: No user returned in response of LDAP server" msgid "Error: No user returned in response of LDAP server"
msgstr "" msgstr ""
#: cps/web.py:358 #: cps/web.py:359
msgid "Failed to Create at Least One LDAP User" msgid "Failed to Create at Least One LDAP User"
msgstr "" msgstr ""
#: cps/web.py:361 #: cps/web.py:362
msgid "At Least One LDAP User Not Found in Database" msgid "At Least One LDAP User Not Found in Database"
msgstr "" msgstr ""
#: cps/web.py:363 #: cps/web.py:364
msgid "User Successfully Imported" msgid "User Successfully Imported"
msgstr "" msgstr ""
#: cps/web.py:587 #: cps/web.py:588
msgid "Recently Added Books" msgid "Recently Added Books"
msgstr "最近添加的书籍" msgstr "最近添加的书籍"
#: cps/templates/index.html:5 cps/web.py:623 #: cps/templates/index.html:5 cps/web.py:624
msgid "Discover (Random Books)" msgid "Discover (Random Books)"
msgstr "发现(随机书籍)" msgstr "发现(随机书籍)"
#: cps/web.py:651 #: cps/web.py:652
msgid "Books" msgid "Books"
msgstr "" msgstr ""
#: cps/web.py:678 #: cps/web.py:679
msgid "Hot Books (Most Downloaded)" msgid "Hot Books (Most Downloaded)"
msgstr "热门书籍(最多下载)" msgstr "热门书籍(最多下载)"
#: cps/web.py:688 #: cps/web.py:689
msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible" msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible"
msgstr "无法打开电子书。 文件不存在或者文件不可访问:" msgstr "无法打开电子书。 文件不存在或者文件不可访问:"
#: cps/web.py:702 #: cps/web.py:703
#, python-format #, python-format
msgid "Author: %(name)s" msgid "Author: %(name)s"
msgstr "作者: %(name)s" msgstr "作者: %(name)s"
#: cps/web.py:714 #: cps/web.py:715
#, python-format #, python-format
msgid "Publisher: %(name)s" msgid "Publisher: %(name)s"
msgstr "出版社: %(name)s" msgstr "出版社: %(name)s"
#: cps/web.py:725 #: cps/web.py:726
#, python-format #, python-format
msgid "Series: %(serie)s" msgid "Series: %(serie)s"
msgstr "丛书: %(serie)s" msgstr "丛书: %(serie)s"
#: cps/web.py:736 #: cps/web.py:737
#, python-format #, python-format
msgid "Rating: %(rating)s stars" msgid "Rating: %(rating)s stars"
msgstr "评分: %(rating)s 星" msgstr "评分: %(rating)s 星"
#: cps/web.py:748 #: cps/web.py:749
#, python-format #, python-format
msgid "File format: %(format)s" msgid "File format: %(format)s"
msgstr "文件格式: %(format)s" msgstr "文件格式: %(format)s"
#: cps/web.py:760 #: cps/web.py:761
#, python-format #, python-format
msgid "Category: %(name)s" msgid "Category: %(name)s"
msgstr "分类: %(name)s" msgstr "分类: %(name)s"
#: cps/web.py:777 #: cps/web.py:778
#, python-format #, python-format
msgid "Language: %(name)s" msgid "Language: %(name)s"
msgstr "语言: %(name)s" msgstr "语言: %(name)s"
#: cps/web.py:839 #: cps/web.py:840
msgid "Ratings list" msgid "Ratings list"
msgstr "评分列表" msgstr "评分列表"
#: cps/web.py:852 #: cps/web.py:853
msgid "File formats list" msgid "File formats list"
msgstr "文件格式列表" msgstr "文件格式列表"
#: cps/templates/layout.html:73 cps/templates/tasks.html:7 cps/web.py:911 #: cps/templates/layout.html:73 cps/templates/tasks.html:7 cps/web.py:912
msgid "Tasks" msgid "Tasks"
msgstr "任务" msgstr "任务"
#: cps/templates/book_edit.html:235 cps/templates/feed.xml:33 #: cps/templates/book_edit.html:235 cps/templates/feed.xml:33
#: cps/templates/layout.html:44 cps/templates/layout.html:47 #: cps/templates/layout.html:44 cps/templates/layout.html:47
#: cps/templates/search_form.html:170 cps/web.py:937 cps/web.py:942 #: cps/templates/search_form.html:174 cps/web.py:938 cps/web.py:943
msgid "Search" msgid "Search"
msgstr "搜索" msgstr "搜索"
#: cps/web.py:993 #: cps/web.py:994
msgid "Published after " msgid "Published after "
msgstr "出版时晚于 " msgstr "出版时晚于 "
#: cps/web.py:1000 #: cps/web.py:1001
msgid "Published before " msgid "Published before "
msgstr "出版时早于 " msgstr "出版时早于 "
#: cps/web.py:1014 #: cps/web.py:1015
#, python-format #, python-format
msgid "Rating <= %(rating)s" msgid "Rating <= %(rating)s"
msgstr "评分 <= %(rating)s" msgstr "评分 <= %(rating)s"
#: cps/web.py:1016 #: cps/web.py:1017
#, python-format #, python-format
msgid "Rating >= %(rating)s" msgid "Rating >= %(rating)s"
msgstr "评分 >= %(rating)s" msgstr "评分 >= %(rating)s"
#: cps/web.py:1082 cps/web.py:1096 #: cps/web.py:1083 cps/web.py:1097
msgid "search" msgid "search"
msgstr "搜索" msgstr "搜索"
#: cps/web.py:1201 #: cps/web.py:1206
#, python-format #, python-format
msgid "Book successfully queued for sending to %(kindlemail)s" msgid "Book successfully queued for sending to %(kindlemail)s"
msgstr "书籍已经被成功加入 %(kindlemail)s 的发送队列" msgstr "书籍已经被成功加入 %(kindlemail)s 的发送队列"
#: cps/web.py:1205 #: cps/web.py:1210
#, python-format #, python-format
msgid "Oops! There was an error sending this book: %(res)s" msgid "Oops! There was an error sending this book: %(res)s"
msgstr "发送这本书的时候出现错误: %(res)s" msgstr "发送这本书的时候出现错误: %(res)s"
#: cps/web.py:1207 #: cps/web.py:1212
msgid "Please update your profile with a valid Send to Kindle E-mail Address." msgid "Please update your profile with a valid Send to Kindle E-mail Address."
msgstr "请先配置您的kindle邮箱..." msgstr "请先配置您的kindle邮箱..."
#: cps/web.py:1224 #: cps/web.py:1229
msgid "E-Mail server is not configured, please contact your administrator!" msgid "E-Mail server is not configured, please contact your administrator!"
msgstr "邮件服务未配置,请联系网站管理员" msgstr "邮件服务未配置,请联系网站管理员"
#: cps/web.py:1225 cps/web.py:1231 cps/web.py:1256 cps/web.py:1260 #: cps/web.py:1230 cps/web.py:1236 cps/web.py:1261 cps/web.py:1265
#: cps/web.py:1265 cps/web.py:1269 #: cps/web.py:1270 cps/web.py:1274
msgid "register" msgid "register"
msgstr "注册" msgstr "注册"
#: cps/web.py:1258 #: cps/web.py:1263
msgid "Your e-mail is not allowed to register" msgid "Your e-mail is not allowed to register"
msgstr "您的邮箱不能用来注册" msgstr "您的邮箱不能用来注册"
#: cps/web.py:1261 #: cps/web.py:1266
msgid "Confirmation e-mail was send to your e-mail account." msgid "Confirmation e-mail was send to your e-mail account."
msgstr "确认邮件已经发送到您的邮箱。" msgstr "确认邮件已经发送到您的邮箱。"
#: cps/web.py:1264 #: cps/web.py:1269
msgid "This username or e-mail address is already in use." msgid "This username or e-mail address is already in use."
msgstr "这个用户名或者邮箱已经被使用。" msgstr "这个用户名或者邮箱已经被使用。"
#: cps/web.py:1281 #: cps/web.py:1286
msgid "Cannot activate LDAP authentication" msgid "Cannot activate LDAP authentication"
msgstr "无法激活LDAP认证" msgstr "无法激活LDAP认证"
#: cps/web.py:1298 #: cps/web.py:1303
#, python-format #, python-format
msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known"
msgstr "" msgstr ""
#: cps/web.py:1304 #: cps/web.py:1309
#, python-format #, python-format
msgid "Could not login: %(message)s" msgid "Could not login: %(message)s"
msgstr "" msgstr ""
#: cps/web.py:1308 cps/web.py:1332 #: cps/web.py:1313 cps/web.py:1337
msgid "Wrong Username or Password" msgid "Wrong Username or Password"
msgstr "用户名或密码错误" msgstr "用户名或密码错误"
#: cps/web.py:1315 #: cps/web.py:1320
msgid "New Password was send to your email address" msgid "New Password was send to your email address"
msgstr "新密码已发送到您的邮箱" msgstr "新密码已发送到您的邮箱"
#: cps/web.py:1321 #: cps/web.py:1326
msgid "Please enter valid username to reset password" msgid "Please enter valid username to reset password"
msgstr "请输入有效的用户名进行密码重置" msgstr "请输入有效的用户名进行密码重置"
#: cps/web.py:1327 #: cps/web.py:1332
#, python-format #, python-format
msgid "You are now logged in as: '%(nickname)s'" msgid "You are now logged in as: '%(nickname)s'"
msgstr "您已以 '%(nickname)s' 登录" msgstr "您已以 '%(nickname)s' 登录"
#: cps/web.py:1336 cps/web.py:1363 #: cps/web.py:1341 cps/web.py:1368
msgid "login" msgid "login"
msgstr "登录" msgstr "登录"
#: cps/web.py:1375 cps/web.py:1409 #: cps/web.py:1380 cps/web.py:1414
msgid "Token not found" msgid "Token not found"
msgstr "找不到Token" msgstr "找不到Token"
#: cps/web.py:1384 cps/web.py:1417 #: cps/web.py:1389 cps/web.py:1422
msgid "Token has expired" msgid "Token has expired"
msgstr "Token已过期" msgstr "Token已过期"
#: cps/web.py:1393 #: cps/web.py:1398
msgid "Success! Please return to your device" msgid "Success! Please return to your device"
msgstr "成功!请返回您的设备" msgstr "成功!请返回您的设备"
#: cps/web.py:1474 cps/web.py:1519 cps/web.py:1525 #: cps/web.py:1479 cps/web.py:1524 cps/web.py:1530
#, python-format #, python-format
msgid "%(name)s's profile" msgid "%(name)s's profile"
msgstr "%(name)s 的资料" msgstr "%(name)s 的资料"
#: cps/web.py:1521 #: cps/web.py:1526
msgid "Profile updated" msgid "Profile updated"
msgstr "资料已更新" msgstr "资料已更新"
#: cps/web.py:1538 cps/web.py:1642 #: cps/web.py:1543 cps/web.py:1647
msgid "Error opening eBook. File does not exist or file is not accessible:" msgid "Error opening eBook. File does not exist or file is not accessible:"
msgstr "打开电子书错误。文件不存在或者无法访问:" msgstr "打开电子书错误。文件不存在或者无法访问:"
#: cps/web.py:1550 cps/web.py:1553 cps/web.py:1556 cps/web.py:1563 #: cps/web.py:1555 cps/web.py:1558 cps/web.py:1561 cps/web.py:1568
#: cps/web.py:1568 #: cps/web.py:1573
msgid "Read a Book" msgid "Read a Book"
msgstr "阅读一本书" msgstr "阅读一本书"
#: cps/web.py:1579 #: cps/web.py:1584
msgid "Error opening eBook. File does not exist or file is not accessible." msgid "Error opening eBook. File does not exist or file is not accessible."
msgstr "打开电子书错误。文件不存在或者无法访问。" msgstr "打开电子书错误。文件不存在或者无法访问。"
@ -1296,13 +1296,13 @@ msgid "In Library"
msgstr "" msgstr ""
#: cps/templates/author.html:34 cps/templates/list.html:14 #: cps/templates/author.html:34 cps/templates/list.html:14
#: cps/templates/search.html:41 #: cps/templates/search.html:38
msgid "All" msgid "All"
msgstr "全部" msgstr "全部"
#: cps/templates/author.html:58 cps/templates/author.html:110 #: cps/templates/author.html:58 cps/templates/author.html:110
#: cps/templates/discover.html:27 cps/templates/index.html:26 #: cps/templates/discover.html:27 cps/templates/index.html:26
#: cps/templates/index.html:89 cps/templates/search.html:67 #: cps/templates/index.html:89 cps/templates/search.html:64
#: cps/templates/shelf.html:36 #: cps/templates/shelf.html:36
msgid "reduce" msgid "reduce"
msgstr "" msgstr ""
@ -1931,6 +1931,12 @@ msgstr "简介:"
msgid "Add to shelf" msgid "Add to shelf"
msgstr "添加到书架" msgstr "添加到书架"
#: cps/templates/detail.html:243 cps/templates/detail.html:260
#: cps/templates/feed.xml:79 cps/templates/layout.html:136
#: cps/templates/layout.html:140 cps/templates/search.html:20
msgid "(Public)"
msgstr ""
#: cps/templates/detail.html:274 #: cps/templates/detail.html:274
msgid "Edit Metadata" msgid "Edit Metadata"
msgstr "编辑元数据" msgstr "编辑元数据"
@ -1979,11 +1985,6 @@ msgstr "您确定要删除这条域名规则吗?"
msgid "Next" msgid "Next"
msgstr "下一个" msgstr "下一个"
#: cps/templates/feed.xml:79 cps/templates/layout.html:136
#: cps/templates/layout.html:140
msgid "(Public)"
msgstr ""
#: cps/templates/generate_kobo_auth_url.html:5 #: cps/templates/generate_kobo_auth_url.html:5
msgid "Open the .kobo/Kobo eReader.conf file in a text editor and add (or edit):" 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增加修改为:"

View File

@ -494,6 +494,10 @@ def migrate_Database(session):
conn.execute("ALTER TABLE book_read_link ADD column 'last_time_started_reading' DATETIME") conn.execute("ALTER TABLE book_read_link ADD column 'last_time_started_reading' DATETIME")
conn.execute("ALTER TABLE book_read_link ADD column 'times_started_reading' INTEGER DEFAULT 0") conn.execute("ALTER TABLE book_read_link ADD column 'times_started_reading' INTEGER DEFAULT 0")
session.commit() session.commit()
test = session.query(ReadBook).filter(ReadBook.last_modified == None).all()
for book in test:
book.last_modified = datetime.datetime.utcnow()
session.commit()
try: try:
session.query(exists().where(Shelf.uuid)).scalar() session.query(exists().where(Shelf.uuid)).scalar()
except exc.OperationalError: except exc.OperationalError:
@ -552,6 +556,7 @@ def migrate_Database(session):
conn.execute("ALTER TABLE user ADD column `allowed_tags` String DEFAULT ''") conn.execute("ALTER TABLE user ADD column `allowed_tags` String DEFAULT ''")
conn.execute("ALTER TABLE user ADD column `denied_column_value` DEFAULT ''") conn.execute("ALTER TABLE user ADD column `denied_column_value` DEFAULT ''")
conn.execute("ALTER TABLE user ADD column `allowed_column_value` DEFAULT ''") conn.execute("ALTER TABLE user ADD column `allowed_column_value` DEFAULT ''")
session.commit()
if session.query(User).filter(User.role.op('&')(constants.ROLE_ANONYMOUS) == constants.ROLE_ANONYMOUS).first() \ if session.query(User).filter(User.role.op('&')(constants.ROLE_ANONYMOUS) == constants.ROLE_ANONYMOUS).first() \
is None: is None:
create_anonymous_user(session) create_anonymous_user(session)

View File

@ -76,21 +76,22 @@ except ImportError as e:
__author__ = 'lemmsh' __author__ = 'lemmsh'
def process(tmp_file_path, original_file_name, original_file_extension, rarExcecutable): def process(tmp_file_path, original_file_name, original_file_extension, rarExecutable):
"""Get the metadata for tmp_file_path."""
meta = None meta = None
extension_upper = original_file_extension.upper()
try: try:
if ".PDF" == original_file_extension.upper(): if ".PDF" == extension_upper:
meta = pdf_meta(tmp_file_path, original_file_name, original_file_extension) meta = pdf_meta(tmp_file_path, original_file_name, original_file_extension)
if ".EPUB" == original_file_extension.upper() and use_epub_meta is True: elif ".EPUB" == extension_upper and use_epub_meta is True:
meta = epub.get_epub_info(tmp_file_path, original_file_name, original_file_extension) meta = epub.get_epub_info(tmp_file_path, original_file_name, original_file_extension)
if ".FB2" == original_file_extension.upper() and use_fb2_meta is True: elif ".FB2" == extension_upper and use_fb2_meta is True:
meta = fb2.get_fb2_info(tmp_file_path, original_file_extension) meta = fb2.get_fb2_info(tmp_file_path, original_file_extension)
if original_file_extension.upper() in ['.CBZ', '.CBT', '.CBR']: elif extension_upper in ['.CBZ', '.CBT', '.CBR']:
meta = comic.get_comic_info(tmp_file_path, meta = comic.get_comic_info(tmp_file_path,
original_file_name, original_file_name,
original_file_extension, original_file_extension,
rarExcecutable) rarExecutable)
except Exception as ex: except Exception as ex:
log.warning('cannot parse metadata, using default: %s', ex) log.warning('cannot parse metadata, using default: %s', ex)
@ -98,7 +99,6 @@ def process(tmp_file_path, original_file_name, original_file_extension, rarExcec
if meta.author.lower() == 'unknown': if meta.author.lower() == 'unknown':
meta = meta._replace(author=_(u'Unknown')) meta = meta._replace(author=_(u'Unknown'))
return meta return meta
else:
return default_meta(tmp_file_path, original_file_name, original_file_extension) return default_meta(tmp_file_path, original_file_name, original_file_extension)
@ -117,14 +117,11 @@ def default_meta(tmp_file_path, original_file_name, original_file_extension):
def pdf_meta(tmp_file_path, original_file_name, original_file_extension): def pdf_meta(tmp_file_path, original_file_name, original_file_extension):
if use_pdf_meta:
pdf = PdfFileReader(open(tmp_file_path, 'rb'))
doc_info = pdf.getDocumentInfo()
else:
doc_info = None doc_info = None
if use_pdf_meta:
doc_info = PdfFileReader(open(tmp_file_path, 'rb')).getDocumentInfo()
if doc_info is not None: if doc_info:
author = doc_info.author if doc_info.author else u'Unknown' author = doc_info.author if doc_info.author else u'Unknown'
title = doc_info.title if doc_info.title else original_file_name title = doc_info.title if doc_info.title else original_file_name
subject = doc_info.subject subject = doc_info.subject
@ -149,7 +146,6 @@ def pdf_meta(tmp_file_path, original_file_name, original_file_extension):
def pdf_preview(tmp_file_path, tmp_dir): def pdf_preview(tmp_file_path, tmp_dir):
if use_generic_pdf_cover: if use_generic_pdf_cover:
return None return None
else:
try: try:
cover_file_name = os.path.splitext(tmp_file_path)[0] + ".cover.jpg" cover_file_name = os.path.splitext(tmp_file_path)[0] + ".cover.jpg"
with Image() as img: with Image() as img:
@ -202,12 +198,11 @@ def upload(uploadfile, rarExcecutable):
if not os.path.isdir(tmp_dir): if not os.path.isdir(tmp_dir):
os.mkdir(tmp_dir) os.mkdir(tmp_dir)
filename = uploadfile.filename filename = uploadfile.filename
filename_root, file_extension = os.path.splitext(filename) filename_root, file_extension = os.path.splitext(filename)
md5 = hashlib.md5() md5 = hashlib.md5(filename.encode('utf-8')).hexdigest()
md5.update(filename.encode('utf-8')) tmp_file_path = os.path.join(tmp_dir, md5)
tmp_file_path = os.path.join(tmp_dir, md5.hexdigest())
log.debug("Temporary file: %s", tmp_file_path) log.debug("Temporary file: %s", tmp_file_path)
uploadfile.save(tmp_file_path) uploadfile.save(tmp_file_path)
meta = process(tmp_file_path, filename_root, file_extension, rarExcecutable) return process(tmp_file_path, filename_root, file_extension, rarExcecutable)
return meta

View File

@ -40,6 +40,7 @@ from flask_login import login_user, logout_user, login_required, current_user
from sqlalchemy.exc import IntegrityError from sqlalchemy.exc import IntegrityError
from sqlalchemy.sql.expression import text, func, true, false, not_, and_, or_ from sqlalchemy.sql.expression import text, func, true, false, not_, and_, or_
from werkzeug.exceptions import default_exceptions from werkzeug.exceptions import default_exceptions
from sqlalchemy.sql.functions import coalesce
try: try:
from werkzeug.exceptions import FailedDependency from werkzeug.exceptions import FailedDependency
except ImportError: except ImportError:
@ -316,7 +317,7 @@ def import_ldap_users():
match = re.search("([a-zA-Z0-9-]+)=%s", config.config_ldap_user_object, re.IGNORECASE | re.UNICODE) match = re.search("([a-zA-Z0-9-]+)=%s", config.config_ldap_user_object, re.IGNORECASE | re.UNICODE)
if match: if match:
match_filter = match.group(1) match_filter = match.group(1)
match = re.search(match_filter + "=([[\d\w-]+)", user, re.IGNORECASE | re.UNICODE) match = re.search(match_filter + "=([\d\s\w-]+)", user, re.IGNORECASE | re.UNICODE)
if match: if match:
user = match.group(1) user = match.group(1)
else: else:
@ -801,7 +802,7 @@ def publisher_list():
if current_user.check_visibility(constants.SIDEBAR_PUBLISHER): if current_user.check_visibility(constants.SIDEBAR_PUBLISHER):
entries = db.session.query(db.Publishers, func.count('books_publishers_link.book').label('count')) \ entries = db.session.query(db.Publishers, func.count('books_publishers_link.book').label('count')) \
.join(db.books_publishers_link).join(db.Books).filter(common_filters()) \ .join(db.books_publishers_link).join(db.Books).filter(common_filters()) \
.group_by(text('books_publishers_link.publisher')).order_by(db.Publishers.sort).all() .group_by(text('books_publishers_link.publisher')).order_by(db.Publishers.name).all()
charlist = db.session.query(func.upper(func.substr(db.Publishers.name, 1, 1)).label('char')) \ charlist = db.session.query(func.upper(func.substr(db.Publishers.name, 1, 1)).label('char')) \
.join(db.books_publishers_link).join(db.Books).filter(common_filters()) \ .join(db.books_publishers_link).join(db.Books).filter(common_filters()) \
.group_by(func.upper(func.substr(db.Publishers.name, 1, 1))).all() .group_by(func.upper(func.substr(db.Publishers.name, 1, 1))).all()
@ -1102,31 +1103,35 @@ def render_read_books(page, are_read, as_xml=False, order=None, *args, **kwargs)
readBooks = ub.session.query(ub.ReadBook).filter(ub.ReadBook.user_id == int(current_user.id))\ readBooks = ub.session.query(ub.ReadBook).filter(ub.ReadBook.user_id == int(current_user.id))\
.filter(ub.ReadBook.read_status == ub.ReadBook.STATUS_FINISHED).all() .filter(ub.ReadBook.read_status == ub.ReadBook.STATUS_FINISHED).all()
readBookIds = [x.book_id for x in readBooks] readBookIds = [x.book_id for x in readBooks]
else:
try:
readBooks = db.session.query(db.cc_classes[config.config_read_column]) \
.filter(db.cc_classes[config.config_read_column].value == True).all()
readBookIds = [x.book for x in readBooks]
except KeyError:
log.error("Custom Column No.%d is not existing in calibre database", config.config_read_column)
readBookIds = []
if are_read: if are_read:
db_filter = db.Books.id.in_(readBookIds) db_filter = db.Books.id.in_(readBookIds)
else: else:
db_filter = ~db.Books.id.in_(readBookIds) db_filter = ~db.Books.id.in_(readBookIds)
entries, random, pagination = fill_indexpage(page, db.Books, db_filter, order) entries, random, pagination = fill_indexpage(page, db.Books, db_filter, order)
else:
try:
if are_read:
db_filter = db.cc_classes[config.config_read_column].value == True
else:
db_filter = coalesce(db.cc_classes[config.config_read_column].value, False) != True
# book_count = db.session.query(func.count(db.Books.id)).filter(common_filters()).filter(db_filter).scalar()
entries, random, pagination = fill_indexpage(page, db.Books,
db_filter,
order,
db.cc_classes[config.config_read_column])
except KeyError:
log.error("Custom Column No.%d is not existing in calibre database", config.config_read_column)
book_count = 0
if as_xml: if as_xml:
return entries, pagination return entries, pagination
else: else:
if are_read: if are_read:
name = _(u'Read Books') + ' (' + str(len(readBookIds)) + ')' name = _(u'Read Books') + ' (' + str(pagination.total_count) + ')'
pagename = "read" pagename = "read"
else: else:
total_books = db.session.query(func.count(db.Books.id)).filter(common_filters()).scalar() name = _(u'Unread Books') + ' (' + str(pagination.total_count) + ')'
name = _(u'Unread Books') + ' (' + str(total_books - len(readBookIds)) + ')'
pagename = "unread" pagename = "unread"
return render_title_template('index.html', random=random, entries=entries, pagination=pagination, return render_title_template('index.html', random=random, entries=entries, pagination=pagination,
title=name, page=pagename) title=name, page=pagename)
@ -1467,7 +1472,7 @@ def profile():
current_user.kindle_mail = to_save["kindle_mail"] current_user.kindle_mail = to_save["kindle_mail"]
if "allowed_tags" in to_save and to_save["allowed_tags"] != current_user.allowed_tags: if "allowed_tags" in to_save and to_save["allowed_tags"] != current_user.allowed_tags:
current_user.allowed_tags = to_save["allowed_tags"].strip() current_user.allowed_tags = to_save["allowed_tags"].strip()
if to_save["email"] and to_save["email"] != current_user.email: if "email" in to_save and to_save["email"] != current_user.email:
if config.config_public_reg and not check_valid_domain(to_save["email"]): if config.config_public_reg and not check_valid_domain(to_save["email"]):
flash(_(u"E-mail is not from valid domain"), category="error") flash(_(u"E-mail is not from valid domain"), category="error")
return render_title_template("user_edit.html", content=current_user, downloads=downloads, return render_title_template("user_edit.html", content=current_user, downloads=downloads,
@ -1555,7 +1560,7 @@ def read_book(book_id, book_format):
log.debug(u"Start txt reader for %d", book_id) log.debug(u"Start txt reader for %d", book_id)
return render_title_template('readtxt.html', txtfile=book_id, title=_(u"Read a Book")) return render_title_template('readtxt.html', txtfile=book_id, title=_(u"Read a Book"))
else: else:
for fileExt in ["mp3", "m4b", "m4a"]: for fileExt in constants.EXTENSIONS_AUDIO:
if book_format.lower() == fileExt: if book_format.lower() == fileExt:
entries = db.session.query(db.Books).filter(db.Books.id == book_id).filter(common_filters()).first() entries = db.session.query(db.Books).filter(db.Books.id == book_id).filter(common_filters()).first()
log.debug(u"Start mp3 listening for %d", book_id) log.debug(u"Start mp3 listening for %d", book_id)

View File

@ -96,7 +96,7 @@ def get_attachment(bookpath, filename):
data = file_.read() data = file_.read()
file_.close() file_.close()
except IOError as e: except IOError as e:
log.exception(e) # traceback.print_exc() log.exception(e)
log.error(u'The requested file could not be read. Maybe wrong permissions?') log.error(u'The requested file could not be read. Maybe wrong permissions?')
return None return None
@ -426,10 +426,6 @@ class WorkerThread(threading.Thread):
if self.last >= 20: if self.last >= 20:
self._delete_completed_tasks() self._delete_completed_tasks()
# progress=100%, runtime=0, and status finished # progress=100%, runtime=0, and status finished
log.debug("Last " + str(self.last))
log.debug("Current " + str(self.current))
log.debug("id" + str(self.id))
self.id += 1 self.id += 1
starttime = datetime.now() starttime = datetime.now()
self.queue.append({'starttime': starttime, 'taskType': TASK_UPLOAD}) self.queue.append({'starttime': starttime, 'taskType': TASK_UPLOAD})
@ -501,7 +497,8 @@ class WorkerThread(threading.Thread):
smtplib.stderr = org_smtpstderr smtplib.stderr = org_smtpstderr
except (MemoryError) as e: except (MemoryError) as e:
self._handleError(u'Error sending email: ' + e.message) log.exception(e)
self._handleError(u'MemoryError sending email: ' + str(e))
return None return None
except (smtplib.SMTPException, smtplib.SMTPAuthenticationError) as e: except (smtplib.SMTPException, smtplib.SMTPAuthenticationError) as e:
if hasattr(e, "smtp_error"): if hasattr(e, "smtp_error"):
@ -509,11 +506,12 @@ class WorkerThread(threading.Thread):
elif hasattr(e, "message"): elif hasattr(e, "message"):
text = e.message text = e.message
else: else:
log.exception(e)
text = '' text = ''
self._handleError(u'Error sending email: ' + text) self._handleError(u'Smtplib Error sending email: ' + text)
return None return None
except (socket.error) as e: except (socket.error) as e:
self._handleError(u'Error sending email: ' + e.strerror) self._handleError(u'Socket Error sending email: ' + e.strerror)
return None return None
def _handleError(self, error_message): def _handleError(self, error_message):

View File

@ -8,7 +8,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PROJECT VERSION\n" "Project-Id-Version: PROJECT VERSION\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2020-05-01 17:15+0200\n" "POT-Creation-Date: 2020-05-23 08:46+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
@ -45,9 +45,9 @@ msgstr ""
msgid "Unknown command" msgid "Unknown command"
msgstr "" msgstr ""
#: cps/admin.py:115 cps/editbooks.py:504 cps/editbooks.py:514 #: cps/admin.py:115 cps/editbooks.py:505 cps/editbooks.py:515
#: cps/editbooks.py:620 cps/editbooks.py:622 cps/editbooks.py:688 #: cps/editbooks.py:621 cps/editbooks.py:623 cps/editbooks.py:689
#: cps/updater.py:509 cps/uploader.py:99 cps/uploader.py:110 #: cps/updater.py:509 cps/uploader.py:100 cps/uploader.py:110
msgid "Unknown" msgid "Unknown"
msgstr "" msgstr ""
@ -59,223 +59,223 @@ msgstr ""
msgid "UI Configuration" msgid "UI Configuration"
msgstr "" msgstr ""
#: cps/admin.py:192 cps/admin.py:674 #: cps/admin.py:189 cps/admin.py:671
msgid "Calibre-Web configuration updated" msgid "Calibre-Web configuration updated"
msgstr "" msgstr ""
#: cps/admin.py:438 cps/admin.py:444 cps/admin.py:455 cps/admin.py:466 #: cps/admin.py:435 cps/admin.py:441 cps/admin.py:452 cps/admin.py:463
#: cps/templates/modal_restriction.html:29 #: cps/templates/modal_restriction.html:29
msgid "Deny" msgid "Deny"
msgstr "" msgstr ""
#: cps/admin.py:440 cps/admin.py:446 cps/admin.py:457 cps/admin.py:468 #: cps/admin.py:437 cps/admin.py:443 cps/admin.py:454 cps/admin.py:465
#: cps/templates/modal_restriction.html:28 #: cps/templates/modal_restriction.html:28
msgid "Allow" msgid "Allow"
msgstr "" msgstr ""
#: cps/admin.py:509 #: cps/admin.py:506
msgid "client_secrets.json Is Not Configured For Web Application" msgid "client_secrets.json Is Not Configured For Web Application"
msgstr "" msgstr ""
#: cps/admin.py:525 #: cps/admin.py:522
msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgid "Keyfile Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:529 #: cps/admin.py:526
msgid "Certfile Location is not Valid, Please Enter Correct Path" msgid "Certfile Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:567 #: cps/admin.py:564
msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier"
msgstr "" msgstr ""
#: cps/admin.py:585 #: cps/admin.py:582
#, python-format #, python-format
msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier"
msgstr "" msgstr ""
#: cps/admin.py:588 #: cps/admin.py:585
msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgid "LDAP Group Object Filter Has Unmatched Parenthesis"
msgstr "" msgstr ""
#: cps/admin.py:592 #: cps/admin.py:589
#, python-format #, python-format
msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier"
msgstr "" msgstr ""
#: cps/admin.py:595 #: cps/admin.py:592
msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgid "LDAP User Object Filter Has Unmatched Parenthesis"
msgstr "" msgstr ""
#: cps/admin.py:599 #: cps/admin.py:596
msgid "LDAP Certificate Location is not Valid, Please Enter Correct Path" msgid "LDAP Certificate Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:647 #: cps/admin.py:644
msgid "Logfile Location is not Valid, Please Enter Correct Path" msgid "Logfile Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:652 #: cps/admin.py:649
msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgid "Access Logfile Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:671 #: cps/admin.py:668
msgid "DB Location is not Valid, Please Enter Correct Path" msgid "DB Location is not Valid, Please Enter Correct Path"
msgstr "" msgstr ""
#: cps/admin.py:704 #: cps/admin.py:701
msgid "Basic Configuration" msgid "Basic Configuration"
msgstr "" msgstr ""
#: cps/admin.py:728 cps/web.py:1230 #: cps/admin.py:725 cps/web.py:1235
msgid "Please fill out all fields!" msgid "Please fill out all fields!"
msgstr "" msgstr ""
#: cps/admin.py:731 cps/admin.py:743 cps/admin.py:749 cps/admin.py:767 #: cps/admin.py:728 cps/admin.py:740 cps/admin.py:746 cps/admin.py:764
msgid "Add new user" msgid "Add new user"
msgstr "" msgstr ""
#: cps/admin.py:740 cps/web.py:1472 #: cps/admin.py:737 cps/web.py:1477
msgid "E-mail is not from valid domain" msgid "E-mail is not from valid domain"
msgstr "" msgstr ""
#: cps/admin.py:747 cps/admin.py:762 #: cps/admin.py:744 cps/admin.py:759
msgid "Found an existing account for this e-mail address or nickname." msgid "Found an existing account for this e-mail address or nickname."
msgstr "" msgstr ""
#: cps/admin.py:758 #: cps/admin.py:755
#, python-format #, python-format
msgid "User '%(user)s' created" msgid "User '%(user)s' created"
msgstr "" msgstr ""
#: cps/admin.py:777 #: cps/admin.py:774
msgid "Edit e-mail server settings" msgid "Edit e-mail server settings"
msgstr "" msgstr ""
#: cps/admin.py:803 #: cps/admin.py:800
#, python-format #, python-format
msgid "Test e-mail successfully send to %(kindlemail)s" msgid "Test e-mail successfully send to %(kindlemail)s"
msgstr "" msgstr ""
#: cps/admin.py:806 #: cps/admin.py:803
#, python-format #, python-format
msgid "There was an error sending the Test e-mail: %(res)s" msgid "There was an error sending the Test e-mail: %(res)s"
msgstr "" msgstr ""
#: cps/admin.py:808 #: cps/admin.py:805
msgid "Please configure your e-mail address first..." msgid "Please configure your e-mail address first..."
msgstr "" msgstr ""
#: cps/admin.py:810 #: cps/admin.py:807
msgid "E-mail server settings updated" msgid "E-mail server settings updated"
msgstr "" msgstr ""
#: cps/admin.py:821 #: cps/admin.py:818
msgid "User not found" msgid "User not found"
msgstr "" msgstr ""
#: cps/admin.py:842 #: cps/admin.py:839
#, python-format #, python-format
msgid "User '%(nick)s' deleted" msgid "User '%(nick)s' deleted"
msgstr "" msgstr ""
#: cps/admin.py:845 #: cps/admin.py:842
msgid "No admin user remaining, can't delete user" msgid "No admin user remaining, can't delete user"
msgstr "" msgstr ""
#: cps/admin.py:851 #: cps/admin.py:848
msgid "No admin user remaining, can't remove admin role" msgid "No admin user remaining, can't remove admin role"
msgstr "" msgstr ""
#: cps/admin.py:887 cps/web.py:1515 #: cps/admin.py:884 cps/web.py:1520
msgid "Found an existing account for this e-mail address." msgid "Found an existing account for this e-mail address."
msgstr "" msgstr ""
#: cps/admin.py:897 cps/admin.py:912 cps/admin.py:932 cps/web.py:1490 #: cps/admin.py:894 cps/admin.py:909 cps/admin.py:929 cps/web.py:1495
#, python-format #, python-format
msgid "Edit User %(nick)s" msgid "Edit User %(nick)s"
msgstr "" msgstr ""
#: cps/admin.py:903 cps/web.py:1482 #: cps/admin.py:900 cps/web.py:1487
msgid "This username is already taken" msgid "This username is already taken"
msgstr "" msgstr ""
#: cps/admin.py:919 #: cps/admin.py:916
#, python-format #, python-format
msgid "User '%(nick)s' updated" msgid "User '%(nick)s' updated"
msgstr "" msgstr ""
#: cps/admin.py:922 #: cps/admin.py:919
msgid "An unknown error occured." msgid "An unknown error occured."
msgstr "" msgstr ""
#: cps/admin.py:943 #: cps/admin.py:940
#, python-format #, python-format
msgid "Password for user %(user)s reset" msgid "Password for user %(user)s reset"
msgstr "" msgstr ""
#: cps/admin.py:946 cps/web.py:1255 cps/web.py:1319 #: cps/admin.py:943 cps/web.py:1260 cps/web.py:1324
msgid "An unknown error occurred. Please try again later." msgid "An unknown error occurred. Please try again later."
msgstr "" msgstr ""
#: cps/admin.py:949 cps/web.py:1196 #: cps/admin.py:946 cps/web.py:1201
msgid "Please configure the SMTP mail settings first..." msgid "Please configure the SMTP mail settings first..."
msgstr "" msgstr ""
#: cps/admin.py:961 #: cps/admin.py:958
msgid "Logfile viewer" msgid "Logfile viewer"
msgstr "" msgstr ""
#: cps/admin.py:1000 #: cps/admin.py:997
msgid "Requesting update package" msgid "Requesting update package"
msgstr "" msgstr ""
#: cps/admin.py:1001 #: cps/admin.py:998
msgid "Downloading update package" msgid "Downloading update package"
msgstr "" msgstr ""
#: cps/admin.py:1002 #: cps/admin.py:999
msgid "Unzipping update package" msgid "Unzipping update package"
msgstr "" msgstr ""
#: cps/admin.py:1003 #: cps/admin.py:1000
msgid "Replacing files" msgid "Replacing files"
msgstr "" msgstr ""
#: cps/admin.py:1004 #: cps/admin.py:1001
msgid "Database connections are closed" msgid "Database connections are closed"
msgstr "" msgstr ""
#: cps/admin.py:1005 #: cps/admin.py:1002
msgid "Stopping server" msgid "Stopping server"
msgstr "" msgstr ""
#: cps/admin.py:1006 #: cps/admin.py:1003
msgid "Update finished, please press okay and reload page" msgid "Update finished, please press okay and reload page"
msgstr "" msgstr ""
#: cps/admin.py:1007 cps/admin.py:1008 cps/admin.py:1009 cps/admin.py:1010 #: cps/admin.py:1004 cps/admin.py:1005 cps/admin.py:1006 cps/admin.py:1007
#: cps/admin.py:1011 #: cps/admin.py:1008
msgid "Update failed:" msgid "Update failed:"
msgstr "" msgstr ""
#: cps/admin.py:1007 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522 #: cps/admin.py:1004 cps/updater.py:319 cps/updater.py:520 cps/updater.py:522
msgid "HTTP Error" msgid "HTTP Error"
msgstr "" msgstr ""
#: cps/admin.py:1008 cps/updater.py:321 cps/updater.py:524 #: cps/admin.py:1005 cps/updater.py:321 cps/updater.py:524
msgid "Connection error" msgid "Connection error"
msgstr "" msgstr ""
#: cps/admin.py:1009 cps/updater.py:323 cps/updater.py:526 #: cps/admin.py:1006 cps/updater.py:323 cps/updater.py:526
msgid "Timeout while establishing connection" msgid "Timeout while establishing connection"
msgstr "" msgstr ""
#: cps/admin.py:1010 cps/updater.py:325 cps/updater.py:528 #: cps/admin.py:1007 cps/updater.py:325 cps/updater.py:528
msgid "General error" msgid "General error"
msgstr "" msgstr ""
#: cps/admin.py:1011 #: cps/admin.py:1008
msgid "Update File Could Not be Saved in Temp Dir" msgid "Update File Could Not be Saved in Temp Dir"
msgstr "" msgstr ""
@ -291,7 +291,7 @@ msgstr ""
msgid "Book Successfully Deleted" msgid "Book Successfully Deleted"
msgstr "" msgstr ""
#: cps/editbooks.py:253 cps/editbooks.py:489 #: cps/editbooks.py:253 cps/editbooks.py:490
msgid "Error opening eBook. File does not exist or file is not accessible" msgid "Error opening eBook. File does not exist or file is not accessible"
msgstr "" msgstr ""
@ -304,16 +304,16 @@ msgstr ""
msgid "%(langname)s is not a valid language" msgid "%(langname)s is not a valid language"
msgstr "" msgstr ""
#: cps/editbooks.py:413 cps/editbooks.py:663 #: cps/editbooks.py:413 cps/editbooks.py:664
#, python-format #, python-format
msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgid "File extension '%(ext)s' is not allowed to be uploaded to this server"
msgstr "" msgstr ""
#: cps/editbooks.py:417 cps/editbooks.py:667 #: cps/editbooks.py:417 cps/editbooks.py:668
msgid "File to be uploaded must have an extension" msgid "File to be uploaded must have an extension"
msgstr "" msgstr ""
#: cps/editbooks.py:429 cps/editbooks.py:701 #: cps/editbooks.py:429 cps/editbooks.py:702
#, python-format #, python-format
msgid "Failed to create path %(path)s (Permission denied)." msgid "Failed to create path %(path)s (Permission denied)."
msgstr "" msgstr ""
@ -328,48 +328,48 @@ msgstr ""
msgid "File format %(ext)s added to %(book)s" msgid "File format %(ext)s added to %(book)s"
msgstr "" msgstr ""
#: cps/editbooks.py:606 #: cps/editbooks.py:607
msgid "Metadata successfully updated" msgid "Metadata successfully updated"
msgstr "" msgstr ""
#: cps/editbooks.py:615 #: cps/editbooks.py:616
msgid "Error editing book, please check logfile for details" msgid "Error editing book, please check logfile for details"
msgstr "" msgstr ""
#: cps/editbooks.py:675 #: cps/editbooks.py:676
#, python-format #, python-format
msgid "File %(filename)s could not saved to temp dir" msgid "File %(filename)s could not saved to temp dir"
msgstr "" msgstr ""
#: cps/editbooks.py:692 #: cps/editbooks.py:693
msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgid "Uploaded book probably exists in the library, consider to change before upload new: "
msgstr "" msgstr ""
#: cps/editbooks.py:707 #: cps/editbooks.py:709
#, python-format #, python-format
msgid "Failed to store file %(file)s (Permission denied)." msgid "Failed to Move File %(file)s: %(error)s"
msgstr "" msgstr ""
#: cps/editbooks.py:713 #: cps/editbooks.py:723
#, python-format #, python-format
msgid "Failed to delete file %(file)s (Permission denied)." msgid "Failed to Move Cover File %(file)s: %(error)s"
msgstr "" msgstr ""
#: cps/editbooks.py:804 #: cps/editbooks.py:808
#, python-format #, python-format
msgid "File %(file)s uploaded" msgid "File %(file)s uploaded"
msgstr "" msgstr ""
#: cps/editbooks.py:833 #: cps/editbooks.py:837
msgid "Source or destination format for conversion missing" msgid "Source or destination format for conversion missing"
msgstr "" msgstr ""
#: cps/editbooks.py:841 #: cps/editbooks.py:845
#, python-format #, python-format
msgid "Book successfully queued for converting to %(book_format)s" msgid "Book successfully queued for converting to %(book_format)s"
msgstr "" msgstr ""
#: cps/editbooks.py:845 #: cps/editbooks.py:849
#, python-format #, python-format
msgid "There was an error converting this book: %(res)s" msgid "There was an error converting this book: %(res)s"
msgstr "" msgstr ""
@ -443,111 +443,111 @@ msgstr ""
msgid "The requested file could not be read. Maybe wrong permissions?" msgid "The requested file could not be read. Maybe wrong permissions?"
msgstr "" msgstr ""
#: cps/helper.py:299 #: cps/helper.py:300
#, python-format #, python-format
msgid "Deleting book %(id)s failed, path has subfolders: %(path)s" msgid "Deleting book %(id)s failed, path has subfolders: %(path)s"
msgstr "" msgstr ""
#: cps/helper.py:309 #: cps/helper.py:310
#, python-format #, python-format
msgid "Deleting book %(id)s failed: %(message)s" msgid "Deleting book %(id)s failed: %(message)s"
msgstr "" msgstr ""
#: cps/helper.py:319 #: cps/helper.py:320
#, python-format #, python-format
msgid "Deleting book %(id)s failed, book path not valid: %(path)s" msgid "Deleting book %(id)s failed, book path not valid: %(path)s"
msgstr "" msgstr ""
#: cps/helper.py:354 #: cps/helper.py:355
#, python-format #, python-format
msgid "Rename title from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgid "Rename title from: '%(src)s' to '%(dest)s' failed with error: %(error)s"
msgstr "" msgstr ""
#: cps/helper.py:364 #: cps/helper.py:365
#, python-format #, python-format
msgid "Rename author from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgid "Rename author from: '%(src)s' to '%(dest)s' failed with error: %(error)s"
msgstr "" msgstr ""
#: cps/helper.py:378 #: cps/helper.py:379
#, python-format #, python-format
msgid "Rename file in path '%(src)s' to '%(dest)s' failed with error: %(error)s" msgid "Rename file in path '%(src)s' to '%(dest)s' failed with error: %(error)s"
msgstr "" msgstr ""
#: cps/helper.py:404 cps/helper.py:414 cps/helper.py:422 #: cps/helper.py:405 cps/helper.py:415 cps/helper.py:423
#, python-format #, python-format
msgid "File %(file)s not found on Google Drive" msgid "File %(file)s not found on Google Drive"
msgstr "" msgstr ""
#: cps/helper.py:443 #: cps/helper.py:444
#, python-format #, python-format
msgid "Book path %(path)s not found on Google Drive" msgid "Book path %(path)s not found on Google Drive"
msgstr "" msgstr ""
#: cps/helper.py:550 #: cps/helper.py:551
msgid "Failed to create path for cover" msgid "Failed to create path for cover"
msgstr "" msgstr ""
#: cps/helper.py:555 #: cps/helper.py:556
msgid "Cover-file is not a valid image file, or could not be stored" msgid "Cover-file is not a valid image file, or could not be stored"
msgstr "" msgstr ""
#: cps/helper.py:566 #: cps/helper.py:567
msgid "Only jpg/jpeg/png/webp files are supported as coverfile" msgid "Only jpg/jpeg/png/webp files are supported as coverfile"
msgstr "" msgstr ""
#: cps/helper.py:580 #: cps/helper.py:581
msgid "Only jpg/jpeg files are supported as coverfile" msgid "Only jpg/jpeg files are supported as coverfile"
msgstr "" msgstr ""
#: cps/helper.py:622 #: cps/helper.py:625
msgid "Unrar binary file not found" msgid "Unrar binary file not found"
msgstr "" msgstr ""
#: cps/helper.py:635 #: cps/helper.py:638
msgid "Error excecuting UnRar" msgid "Error excecuting UnRar"
msgstr "" msgstr ""
#: cps/helper.py:691 #: cps/helper.py:694
msgid "Waiting" msgid "Waiting"
msgstr "" msgstr ""
#: cps/helper.py:693 #: cps/helper.py:696
msgid "Failed" msgid "Failed"
msgstr "" msgstr ""
#: cps/helper.py:695 #: cps/helper.py:698
msgid "Started" msgid "Started"
msgstr "" msgstr ""
#: cps/helper.py:697 #: cps/helper.py:700
msgid "Finished" msgid "Finished"
msgstr "" msgstr ""
#: cps/helper.py:699 #: cps/helper.py:702
msgid "Unknown Status" msgid "Unknown Status"
msgstr "" msgstr ""
#: cps/helper.py:704 #: cps/helper.py:707
msgid "E-mail: " msgid "E-mail: "
msgstr "" msgstr ""
#: cps/helper.py:706 cps/helper.py:710 #: cps/helper.py:709 cps/helper.py:713
msgid "Convert: " msgid "Convert: "
msgstr "" msgstr ""
#: cps/helper.py:708 #: cps/helper.py:711
msgid "Upload: " msgid "Upload: "
msgstr "" msgstr ""
#: cps/helper.py:712 #: cps/helper.py:715
msgid "Unknown Task: " msgid "Unknown Task: "
msgstr "" msgstr ""
#: cps/kobo_auth.py:126 #: cps/kobo_auth.py:130
msgid "PLease access calibre-web from non localhost to get valid api_endpoint for kobo device" msgid "PLease access calibre-web from non localhost to get valid api_endpoint for kobo device"
msgstr "" msgstr ""
#: cps/kobo_auth.py:129 cps/kobo_auth.py:149 #: cps/kobo_auth.py:133 cps/kobo_auth.py:153
msgid "Kobo Setup" msgid "Kobo Setup"
msgstr "" msgstr ""
@ -572,7 +572,7 @@ msgstr ""
msgid "Failed to fetch user info from Google." msgid "Failed to fetch user info from Google."
msgstr "" msgstr ""
#: cps/oauth_bb.py:225 cps/web.py:1291 cps/web.py:1431 #: cps/oauth_bb.py:225 cps/web.py:1296 cps/web.py:1436
#, python-format #, python-format
msgid "you are now logged in as: '%(nickname)s'" msgid "you are now logged in as: '%(nickname)s'"
msgstr "" msgstr ""
@ -724,7 +724,7 @@ msgstr ""
msgid "Show Hot Books" msgid "Show Hot Books"
msgstr "" msgstr ""
#: cps/templates/index.xml:24 cps/ub.py:70 cps/web.py:615 #: cps/templates/index.xml:24 cps/ub.py:70 cps/web.py:616
msgid "Top Rated Books" msgid "Top Rated Books"
msgstr "" msgstr ""
@ -733,7 +733,7 @@ msgid "Show Top Rated Books"
msgstr "" msgstr ""
#: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:73 #: cps/templates/index.xml:46 cps/templates/index.xml:50 cps/ub.py:73
#: cps/web.py:1125 #: cps/web.py:1131
msgid "Read Books" msgid "Read Books"
msgstr "" msgstr ""
@ -742,7 +742,7 @@ msgid "Show read and unread"
msgstr "" msgstr ""
#: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:77 #: cps/templates/index.xml:53 cps/templates/index.xml:57 cps/ub.py:77
#: cps/web.py:1129 #: cps/web.py:1134
msgid "Unread Books" msgid "Unread Books"
msgstr "" msgstr ""
@ -758,7 +758,7 @@ msgstr ""
msgid "Show random books" msgid "Show random books"
msgstr "" msgstr ""
#: cps/templates/index.xml:75 cps/ub.py:83 cps/web.py:897 #: cps/templates/index.xml:75 cps/ub.py:83 cps/web.py:898
msgid "Categories" msgid "Categories"
msgstr "" msgstr ""
@ -767,7 +767,7 @@ msgid "Show category selection"
msgstr "" msgstr ""
#: cps/templates/book_edit.html:84 cps/templates/index.xml:82 #: cps/templates/book_edit.html:84 cps/templates/index.xml:82
#: cps/templates/search_form.html:53 cps/ub.py:86 cps/web.py:825 #: cps/templates/search_form.html:53 cps/ub.py:86 cps/web.py:826
msgid "Series" msgid "Series"
msgstr "" msgstr ""
@ -783,7 +783,7 @@ msgstr ""
msgid "Show author selection" msgid "Show author selection"
msgstr "" msgstr ""
#: cps/templates/index.xml:68 cps/ub.py:93 cps/web.py:809 #: cps/templates/index.xml:68 cps/ub.py:93 cps/web.py:810
msgid "Publishers" msgid "Publishers"
msgstr "" msgstr ""
@ -792,7 +792,7 @@ msgid "Show publisher selection"
msgstr "" msgstr ""
#: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:96 #: cps/templates/index.xml:89 cps/templates/search_form.html:74 cps/ub.py:96
#: cps/web.py:880 #: cps/web.py:881
msgid "Languages" msgid "Languages"
msgstr "" msgstr ""
@ -816,7 +816,7 @@ msgstr ""
msgid "Show file formats selection" msgid "Show file formats selection"
msgstr "" msgstr ""
#: cps/ub.py:107 cps/web.py:1150 #: cps/ub.py:107 cps/web.py:1155
msgid "Archived Books" msgid "Archived Books"
msgstr "" msgstr ""
@ -853,223 +853,223 @@ msgstr ""
msgid "Click on the button below to update to the latest stable version." msgid "Click on the button below to update to the latest stable version."
msgstr "" msgstr ""
#: cps/web.py:306 #: cps/web.py:307
#, python-format #, python-format
msgid "Error: %(ldaperror)s" msgid "Error: %(ldaperror)s"
msgstr "" msgstr ""
#: cps/web.py:310 #: cps/web.py:311
msgid "Error: No user returned in response of LDAP server" msgid "Error: No user returned in response of LDAP server"
msgstr "" msgstr ""
#: cps/web.py:358 #: cps/web.py:359
msgid "Failed to Create at Least One LDAP User" msgid "Failed to Create at Least One LDAP User"
msgstr "" msgstr ""
#: cps/web.py:361 #: cps/web.py:362
msgid "At Least One LDAP User Not Found in Database" msgid "At Least One LDAP User Not Found in Database"
msgstr "" msgstr ""
#: cps/web.py:363 #: cps/web.py:364
msgid "User Successfully Imported" msgid "User Successfully Imported"
msgstr "" msgstr ""
#: cps/web.py:587 #: cps/web.py:588
msgid "Recently Added Books" msgid "Recently Added Books"
msgstr "" msgstr ""
#: cps/templates/index.html:5 cps/web.py:623 #: cps/templates/index.html:5 cps/web.py:624
msgid "Discover (Random Books)" msgid "Discover (Random Books)"
msgstr "" msgstr ""
#: cps/web.py:651 #: cps/web.py:652
msgid "Books" msgid "Books"
msgstr "" msgstr ""
#: cps/web.py:678 #: cps/web.py:679
msgid "Hot Books (Most Downloaded)" msgid "Hot Books (Most Downloaded)"
msgstr "" msgstr ""
#: cps/web.py:688 #: cps/web.py:689
msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible" msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible"
msgstr "" msgstr ""
#: cps/web.py:702 #: cps/web.py:703
#, python-format #, python-format
msgid "Author: %(name)s" msgid "Author: %(name)s"
msgstr "" msgstr ""
#: cps/web.py:714 #: cps/web.py:715
#, python-format #, python-format
msgid "Publisher: %(name)s" msgid "Publisher: %(name)s"
msgstr "" msgstr ""
#: cps/web.py:725 #: cps/web.py:726
#, python-format #, python-format
msgid "Series: %(serie)s" msgid "Series: %(serie)s"
msgstr "" msgstr ""
#: cps/web.py:736 #: cps/web.py:737
#, python-format #, python-format
msgid "Rating: %(rating)s stars" msgid "Rating: %(rating)s stars"
msgstr "" msgstr ""
#: cps/web.py:748 #: cps/web.py:749
#, python-format #, python-format
msgid "File format: %(format)s" msgid "File format: %(format)s"
msgstr "" msgstr ""
#: cps/web.py:760 #: cps/web.py:761
#, python-format #, python-format
msgid "Category: %(name)s" msgid "Category: %(name)s"
msgstr "" msgstr ""
#: cps/web.py:777 #: cps/web.py:778
#, python-format #, python-format
msgid "Language: %(name)s" msgid "Language: %(name)s"
msgstr "" msgstr ""
#: cps/web.py:839 #: cps/web.py:840
msgid "Ratings list" msgid "Ratings list"
msgstr "" msgstr ""
#: cps/web.py:852 #: cps/web.py:853
msgid "File formats list" msgid "File formats list"
msgstr "" msgstr ""
#: cps/templates/layout.html:73 cps/templates/tasks.html:7 cps/web.py:911 #: cps/templates/layout.html:73 cps/templates/tasks.html:7 cps/web.py:912
msgid "Tasks" msgid "Tasks"
msgstr "" msgstr ""
#: cps/templates/book_edit.html:235 cps/templates/feed.xml:33 #: cps/templates/book_edit.html:235 cps/templates/feed.xml:33
#: cps/templates/layout.html:44 cps/templates/layout.html:47 #: cps/templates/layout.html:44 cps/templates/layout.html:47
#: cps/templates/search_form.html:170 cps/web.py:937 cps/web.py:942 #: cps/templates/search_form.html:174 cps/web.py:938 cps/web.py:943
msgid "Search" msgid "Search"
msgstr "" msgstr ""
#: cps/web.py:993 #: cps/web.py:994
msgid "Published after " msgid "Published after "
msgstr "" msgstr ""
#: cps/web.py:1000 #: cps/web.py:1001
msgid "Published before " msgid "Published before "
msgstr "" msgstr ""
#: cps/web.py:1014 #: cps/web.py:1015
#, python-format #, python-format
msgid "Rating <= %(rating)s" msgid "Rating <= %(rating)s"
msgstr "" msgstr ""
#: cps/web.py:1016 #: cps/web.py:1017
#, python-format #, python-format
msgid "Rating >= %(rating)s" msgid "Rating >= %(rating)s"
msgstr "" msgstr ""
#: cps/web.py:1082 cps/web.py:1096 #: cps/web.py:1083 cps/web.py:1097
msgid "search" msgid "search"
msgstr "" msgstr ""
#: cps/web.py:1201 #: cps/web.py:1206
#, python-format #, python-format
msgid "Book successfully queued for sending to %(kindlemail)s" msgid "Book successfully queued for sending to %(kindlemail)s"
msgstr "" msgstr ""
#: cps/web.py:1205 #: cps/web.py:1210
#, python-format #, python-format
msgid "Oops! There was an error sending this book: %(res)s" msgid "Oops! There was an error sending this book: %(res)s"
msgstr "" msgstr ""
#: cps/web.py:1207 #: cps/web.py:1212
msgid "Please update your profile with a valid Send to Kindle E-mail Address." msgid "Please update your profile with a valid Send to Kindle E-mail Address."
msgstr "" msgstr ""
#: cps/web.py:1224 #: cps/web.py:1229
msgid "E-Mail server is not configured, please contact your administrator!" msgid "E-Mail server is not configured, please contact your administrator!"
msgstr "" msgstr ""
#: cps/web.py:1225 cps/web.py:1231 cps/web.py:1256 cps/web.py:1260 #: cps/web.py:1230 cps/web.py:1236 cps/web.py:1261 cps/web.py:1265
#: cps/web.py:1265 cps/web.py:1269 #: cps/web.py:1270 cps/web.py:1274
msgid "register" msgid "register"
msgstr "" msgstr ""
#: cps/web.py:1258 #: cps/web.py:1263
msgid "Your e-mail is not allowed to register" msgid "Your e-mail is not allowed to register"
msgstr "" msgstr ""
#: cps/web.py:1261 #: cps/web.py:1266
msgid "Confirmation e-mail was send to your e-mail account." msgid "Confirmation e-mail was send to your e-mail account."
msgstr "" msgstr ""
#: cps/web.py:1264 #: cps/web.py:1269
msgid "This username or e-mail address is already in use." msgid "This username or e-mail address is already in use."
msgstr "" msgstr ""
#: cps/web.py:1281 #: cps/web.py:1286
msgid "Cannot activate LDAP authentication" msgid "Cannot activate LDAP authentication"
msgstr "" msgstr ""
#: cps/web.py:1298 #: cps/web.py:1303
#, python-format #, python-format
msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known"
msgstr "" msgstr ""
#: cps/web.py:1304 #: cps/web.py:1309
#, python-format #, python-format
msgid "Could not login: %(message)s" msgid "Could not login: %(message)s"
msgstr "" msgstr ""
#: cps/web.py:1308 cps/web.py:1332 #: cps/web.py:1313 cps/web.py:1337
msgid "Wrong Username or Password" msgid "Wrong Username or Password"
msgstr "" msgstr ""
#: cps/web.py:1315 #: cps/web.py:1320
msgid "New Password was send to your email address" msgid "New Password was send to your email address"
msgstr "" msgstr ""
#: cps/web.py:1321 #: cps/web.py:1326
msgid "Please enter valid username to reset password" msgid "Please enter valid username to reset password"
msgstr "" msgstr ""
#: cps/web.py:1327 #: cps/web.py:1332
#, python-format #, python-format
msgid "You are now logged in as: '%(nickname)s'" msgid "You are now logged in as: '%(nickname)s'"
msgstr "" msgstr ""
#: cps/web.py:1336 cps/web.py:1363 #: cps/web.py:1341 cps/web.py:1368
msgid "login" msgid "login"
msgstr "" msgstr ""
#: cps/web.py:1375 cps/web.py:1409 #: cps/web.py:1380 cps/web.py:1414
msgid "Token not found" msgid "Token not found"
msgstr "" msgstr ""
#: cps/web.py:1384 cps/web.py:1417 #: cps/web.py:1389 cps/web.py:1422
msgid "Token has expired" msgid "Token has expired"
msgstr "" msgstr ""
#: cps/web.py:1393 #: cps/web.py:1398
msgid "Success! Please return to your device" msgid "Success! Please return to your device"
msgstr "" msgstr ""
#: cps/web.py:1474 cps/web.py:1519 cps/web.py:1525 #: cps/web.py:1479 cps/web.py:1524 cps/web.py:1530
#, python-format #, python-format
msgid "%(name)s's profile" msgid "%(name)s's profile"
msgstr "" msgstr ""
#: cps/web.py:1521 #: cps/web.py:1526
msgid "Profile updated" msgid "Profile updated"
msgstr "" msgstr ""
#: cps/web.py:1538 cps/web.py:1642 #: cps/web.py:1543 cps/web.py:1647
msgid "Error opening eBook. File does not exist or file is not accessible:" msgid "Error opening eBook. File does not exist or file is not accessible:"
msgstr "" msgstr ""
#: cps/web.py:1550 cps/web.py:1553 cps/web.py:1556 cps/web.py:1563 #: cps/web.py:1555 cps/web.py:1558 cps/web.py:1561 cps/web.py:1568
#: cps/web.py:1568 #: cps/web.py:1573
msgid "Read a Book" msgid "Read a Book"
msgstr "" msgstr ""
#: cps/web.py:1579 #: cps/web.py:1584
msgid "Error opening eBook. File does not exist or file is not accessible." msgid "Error opening eBook. File does not exist or file is not accessible."
msgstr "" msgstr ""
@ -1295,13 +1295,13 @@ msgid "In Library"
msgstr "" msgstr ""
#: cps/templates/author.html:34 cps/templates/list.html:14 #: cps/templates/author.html:34 cps/templates/list.html:14
#: cps/templates/search.html:41 #: cps/templates/search.html:38
msgid "All" msgid "All"
msgstr "" msgstr ""
#: cps/templates/author.html:58 cps/templates/author.html:110 #: cps/templates/author.html:58 cps/templates/author.html:110
#: cps/templates/discover.html:27 cps/templates/index.html:26 #: cps/templates/discover.html:27 cps/templates/index.html:26
#: cps/templates/index.html:89 cps/templates/search.html:67 #: cps/templates/index.html:89 cps/templates/search.html:64
#: cps/templates/shelf.html:36 #: cps/templates/shelf.html:36
msgid "reduce" msgid "reduce"
msgstr "" msgstr ""
@ -1930,6 +1930,12 @@ msgstr ""
msgid "Add to shelf" msgid "Add to shelf"
msgstr "" msgstr ""
#: cps/templates/detail.html:243 cps/templates/detail.html:260
#: cps/templates/feed.xml:79 cps/templates/layout.html:136
#: cps/templates/layout.html:140 cps/templates/search.html:20
msgid "(Public)"
msgstr ""
#: cps/templates/detail.html:274 #: cps/templates/detail.html:274
msgid "Edit Metadata" msgid "Edit Metadata"
msgstr "" msgstr ""
@ -1978,11 +1984,6 @@ msgstr ""
msgid "Next" msgid "Next"
msgstr "" msgstr ""
#: cps/templates/feed.xml:79 cps/templates/layout.html:136
#: cps/templates/layout.html:140
msgid "(Public)"
msgstr ""
#: cps/templates/generate_kobo_auth_url.html:5 #: cps/templates/generate_kobo_auth_url.html:5
msgid "Open the .kobo/Kobo eReader.conf file in a text editor and add (or edit):" msgid "Open the .kobo/Kobo eReader.conf file in a text editor and add (or edit):"
msgstr "" msgstr ""

View File

@ -1,9 +1,9 @@
# GDrive Integration # GDrive Integration
google-api-python-client==1.7.11,<1.8.0 google-api-python-client==1.7.11,<1.8.0
gevent>=1.2.1,<1.6.0 #gevent>=1.2.1,<20.6.0
greenlet>=0.4.12,<0.5.0 greenlet>=0.4.12,<0.5.0
httplib2>=0.9.2,<0.18.0 httplib2>=0.9.2,<0.18.0
oauth2client>=4.0.0,<4.14.0 oauth2client>=4.0.0,<4.1.4
uritemplate>=3.0.0,<3.1.0 uritemplate>=3.0.0,<3.1.0
pyasn1-modules>=0.0.8,<0.3.0 pyasn1-modules>=0.0.8,<0.3.0
pyasn1>=0.1.9,<0.5.0 pyasn1>=0.1.9,<0.5.0

View File

@ -36,17 +36,17 @@
<div class="col-xs-12 col-sm-6"> <div class="col-xs-12 col-sm-6">
<div class="row"> <div class="row">
<div class="col-xs-6 col-md-6 col-sm-offset-3" style="margin-top:50px;"> <div class="col-xs-6 col-md-6 col-sm-offset-3" style="margin-top:50px;">
<p class='text-justify attribute'><strong>Start Time: </strong>2020-05-05 19:02:03</p> <p class='text-justify attribute'><strong>Start Time: </strong>2020-05-10 13:45:56</p>
</div> </div>
</div> </div>
<div class="row"> <div class="row">
<div class="col-xs-6 col-md-6 col-sm-offset-3"> <div class="col-xs-6 col-md-6 col-sm-offset-3">
<p class='text-justify attribute'><strong>Stop Time: </strong>2020-05-05 19:58:37</p> <p class='text-justify attribute'><strong>Stop Time: </strong>2020-05-10 14:42:12</p>
</div> </div>
</div> </div>
<div class="row"> <div class="row">
<div class="col-xs-6 col-md-6 col-sm-offset-3"> <div class="col-xs-6 col-md-6 col-sm-offset-3">
<p class='text-justify attribute'><strong>Duration: </strong>47:42 min</p> <p class='text-justify attribute'><strong>Duration: </strong>47:37 min</p>
</div> </div>
</div> </div>
</div> </div>
@ -457,8 +457,8 @@
<tr class="result['header']['style']"> <tr class="result['header']['style']">
<td>test_edit_books.test_edit_books</td> <td>test_edit_books.test_edit_books</td>
<td class="text-center">30</td> <td class="text-center">30</td>
<td class="text-center">28</td> <td class="text-center">27</td>
<td class="text-center">0</td> <td class="text-center">1</td>
<td class="text-center">0</td> <td class="text-center">0</td>
<td class="text-center">2</td> <td class="text-center">2</td>
<td class="text-center"> <td class="text-center">
@ -763,11 +763,33 @@
<tr id='pt5.30' class='hiddenRow bg-success'> <tr id='ft5.30' class='none bg-danger'>
<td> <td>
<div class='testcase'>test_upload_cover_hdd</div> <div class='testcase'>test_upload_cover_hdd</div>
</td> </td>
<td colspan='6' align='center'>PASS</td> <td colspan='6'>
<div class="text-center">
<a class="popup_link text-center" onfocus='blur()' onclick="showTestDetail('div_ft5.30')">FAIL</a>
</div>
<!--css div popup start-->
<div id='div_ft5.30' class="popup_window test_output" style="display:none;">
<div class='close_button pull-right'>
<button type="button" class="close" aria-label="Close" onfocus='this.blur();'
onclick="document.getElementById('div_ft5.30').style.display='none'"><span
aria-hidden="true">&times;</span></button>
</div>
<div class="text-left pull-left">
<pre class="text-left">Traceback (most recent call last):
File "/home/matthias/Entwicklung/calibre-web-test/test/test_edit_books.py", line 654, in test_upload_cover_hdd
self.assertEqual('20317',resp.headers['Content-Length'])
AssertionError: '20317' != '5232'
- 20317
+ 5232</pre>
</div>
<div class="clearfix"></div>
</div>
<!--css div popup end-->
</td>
</tr> </tr>
@ -1829,8 +1851,8 @@ AssertionError: False is not true : logfile config value is not empty after rese
<tr class="result['header']['style']"> <tr class="result['header']['style']">
<td>test_updater.test_updater</td> <td>test_updater.test_updater</td>
<td class="text-center">7</td> <td class="text-center">7</td>
<td class="text-center">5</td> <td class="text-center">6</td>
<td class="text-center">1</td> <td class="text-center">0</td>
<td class="text-center">0</td> <td class="text-center">0</td>
<td class="text-center">1</td> <td class="text-center">1</td>
<td class="text-center"> <td class="text-center">
@ -1867,33 +1889,11 @@ AssertionError: False is not true : logfile config value is not empty after rese
<tr id='ft18.4' class='none bg-danger'> <tr id='pt18.4' class='hiddenRow bg-success'>
<td> <td>
<div class='testcase'>test_check_update_stable_versions</div> <div class='testcase'>test_check_update_stable_versions</div>
</td> </td>
<td colspan='6'> <td colspan='6' align='center'>PASS</td>
<div class="text-center">
<a class="popup_link text-center" onfocus='blur()' onclick="showTestDetail('div_ft18.4')">FAIL</a>
</div>
<!--css div popup start-->
<div id='div_ft18.4' class="popup_window test_output" style="display:none;">
<div class='close_button pull-right'>
<button type="button" class="close" aria-label="Close" onfocus='this.blur();'
onclick="document.getElementById('div_ft18.4').style.display='none'"><span
aria-hidden="true">&times;</span></button>
</div>
<div class="text-left pull-left">
<pre class="text-left">Traceback (most recent call last):
File "/home/matthias/Entwicklung/calibre-web-test/test/test_updater.py", line 150, in test_check_update_stable_versions
self.check_updater('latest version installed', "alert-warning")
File "/home/matthias/Entwicklung/calibre-web-test/test/test_updater.py", line 60, in check_updater
self.assertTrue(self.check_element_on_page((By.CLASS_NAME, className)))
AssertionError: False is not true</pre>
</div>
<div class="clearfix"></div>
</div>
<!--css div popup end-->
</td>
</tr> </tr>
@ -2520,6 +2520,12 @@ AssertionError: False is not true</pre>
<td>Basic</td> <td>Basic</td>
</tr> </tr>
<tr>
<th>comicapi</th>
<td>2.1</td>
<td>test_edit_additional_books</td>
</tr>
<tr> <tr>
<th>lxml</th> <th>lxml</th>
<td>4.5.0</td> <td>4.5.0</td>
@ -2550,6 +2556,12 @@ AssertionError: False is not true</pre>
<td>test_edit_books</td> <td>test_edit_books</td>
</tr> </tr>
<tr>
<th>goodreads</th>
<td>0.3.2</td>
<td>test_goodreads</td>
</tr>
<tr> <tr>
<th>jsonschema</th> <th>jsonschema</th>
<td>3.2.0</td> <td>3.2.0</td>