Merge branch 'master' into Develop
This commit is contained in:
commit
b2e4907165
|
@ -38,6 +38,13 @@ To receive fixes for security vulnerabilities it is required to always upgrade t
|
||||||
| V 0.6.18 | Possible SQL Injection is prevented in user table Thanks to Iman Sharafaldin (Forward Security) |CVE-2022-30765|
|
| V 0.6.18 | Possible SQL Injection is prevented in user table Thanks to Iman Sharafaldin (Forward Security) |CVE-2022-30765|
|
||||||
| V 0.6.18 | The SSRF protection no longer can be bypassed by IPV6/IPV4 embedding. Thanks to @416e6e61 |CVE-2022-0939|
|
| V 0.6.18 | The SSRF protection no longer can be bypassed by IPV6/IPV4 embedding. Thanks to @416e6e61 |CVE-2022-0939|
|
||||||
| V 0.6.18 | The SSRF protection no longer can be bypassed to connect to other servers in the local network. Thanks to @michaellrowley |CVE-2022-0990|
|
| V 0.6.18 | The SSRF protection no longer can be bypassed to connect to other servers in the local network. Thanks to @michaellrowley |CVE-2022-0990|
|
||||||
|
| V 0.6.20 | Credentials for emails are now stored encrypted ||
|
||||||
|
| V 0.6.20 | Login is rate limited ||
|
||||||
|
| V 0.6.20 | Passwordstrength can be forced ||
|
||||||
|
| V 0.6.21 | SMTP server credentials are no longer returned to client ||
|
||||||
|
| V 0.6.21 | Cross-site scripting (XSS) stored in href bypasses filter using data wrapper no longer possible ||
|
||||||
|
| V 0.6.21 | Cross-site scripting (XSS) is no longer possible via pathchooser ||
|
||||||
|
| V 0.6.21 | Error Handling at non existent rating, language, and user downloaded books was fixed ||
|
||||||
|
|
||||||
|
|
||||||
## Statement regarding Log4j (CVE-2021-44228 and related)
|
## Statement regarding Log4j (CVE-2021-44228 and related)
|
||||||
|
|
|
@ -34,6 +34,8 @@ UPDATER_AVAILABLE = True
|
||||||
|
|
||||||
# Base dir is parent of current file, necessary if called from different folder
|
# Base dir is parent of current file, necessary if called from different folder
|
||||||
BASE_DIR = os.path.abspath(os.path.join(os.path.dirname(os.path.abspath(__file__)), os.pardir))
|
BASE_DIR = os.path.abspath(os.path.join(os.path.dirname(os.path.abspath(__file__)), os.pardir))
|
||||||
|
# if executable file the files should be placed in the parent dir (parallel to the exe file)
|
||||||
|
|
||||||
STATIC_DIR = os.path.join(BASE_DIR, 'cps', 'static')
|
STATIC_DIR = os.path.join(BASE_DIR, 'cps', 'static')
|
||||||
TEMPLATES_DIR = os.path.join(BASE_DIR, 'cps', 'templates')
|
TEMPLATES_DIR = os.path.join(BASE_DIR, 'cps', 'templates')
|
||||||
TRANSLATIONS_DIR = os.path.join(BASE_DIR, 'cps', 'translations')
|
TRANSLATIONS_DIR = os.path.join(BASE_DIR, 'cps', 'translations')
|
||||||
|
@ -49,6 +51,9 @@ if HOME_CONFIG:
|
||||||
CONFIG_DIR = os.environ.get('CALIBRE_DBPATH', home_dir)
|
CONFIG_DIR = os.environ.get('CALIBRE_DBPATH', home_dir)
|
||||||
else:
|
else:
|
||||||
CONFIG_DIR = os.environ.get('CALIBRE_DBPATH', BASE_DIR)
|
CONFIG_DIR = os.environ.get('CALIBRE_DBPATH', BASE_DIR)
|
||||||
|
if getattr(sys, 'frozen', False):
|
||||||
|
CONFIG_DIR = os.path.abspath(os.path.join(CONFIG_DIR, os.pardir))
|
||||||
|
|
||||||
|
|
||||||
DEFAULT_SETTINGS_FILE = "app.db"
|
DEFAULT_SETTINGS_FILE = "app.db"
|
||||||
DEFAULT_GDRIVE_FILE = "gdrive.db"
|
DEFAULT_GDRIVE_FILE = "gdrive.db"
|
||||||
|
@ -163,7 +168,7 @@ def selected_roles(dictionary):
|
||||||
BookMeta = namedtuple('BookMeta', 'file_path, extension, title, author, cover, description, tags, series, '
|
BookMeta = namedtuple('BookMeta', 'file_path, extension, title, author, cover, description, tags, series, '
|
||||||
'series_id, languages, publisher, pubdate, identifiers')
|
'series_id, languages, publisher, pubdate, identifiers')
|
||||||
|
|
||||||
STABLE_VERSION = {'version': '0.6.21 Beta'}
|
STABLE_VERSION = {'version': '0.6.22 Beta'}
|
||||||
|
|
||||||
NIGHTLY_VERSION = dict()
|
NIGHTLY_VERSION = dict()
|
||||||
NIGHTLY_VERSION[0] = '$Format:%H$'
|
NIGHTLY_VERSION[0] = '$Format:%H$'
|
||||||
|
|
|
@ -315,7 +315,7 @@ def generate_sync_response(sync_token, sync_results, set_cont=False):
|
||||||
extra_headers["x-kobo-recent-reads"] = store_response.headers.get("x-kobo-recent-reads")
|
extra_headers["x-kobo-recent-reads"] = store_response.headers.get("x-kobo-recent-reads")
|
||||||
|
|
||||||
except Exception as ex:
|
except Exception as ex:
|
||||||
log.error("Failed to receive or parse response from Kobo's sync endpoint: {}".format(ex))
|
log.error_or_exception("Failed to receive or parse response from Kobo's sync endpoint: {}".format(ex))
|
||||||
if set_cont:
|
if set_cont:
|
||||||
extra_headers["x-kobo-sync"] = "continue"
|
extra_headers["x-kobo-sync"] = "continue"
|
||||||
sync_token.to_headers(extra_headers)
|
sync_token.to_headers(extra_headers)
|
||||||
|
|
|
@ -179,26 +179,23 @@ kthoom.ImageFile = function(file) {
|
||||||
};
|
};
|
||||||
|
|
||||||
function updateDirectionButtons(){
|
function updateDirectionButtons(){
|
||||||
$("#right").show();
|
var left, right = 1;
|
||||||
$("#left").show();
|
|
||||||
if (currentImage == 0 ) {
|
if (currentImage == 0 ) {
|
||||||
if (settings.direction === 0) {
|
if (settings.direction === 0) {
|
||||||
$("#right").show();
|
left = 0;
|
||||||
$("#left").hide();
|
|
||||||
} else {
|
} else {
|
||||||
$("#left").show();
|
right = 0;
|
||||||
$("#right").hide();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if ((currentImage + 1) >= Math.max(totalImages, imageFiles.length)) {
|
if ((currentImage + 1) >= Math.max(totalImages, imageFiles.length)) {
|
||||||
if (settings.direction === 0) {
|
if (settings.direction === 0) {
|
||||||
$("#left").show();
|
right = 0;
|
||||||
$("#right").hide();
|
|
||||||
} else {
|
} else {
|
||||||
$("#right").show();
|
left = 0;
|
||||||
$("#left").hide();
|
}
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
left === 1 ? $("#left").show() : $("#left").hide();
|
||||||
|
right === 1 ? $("#right").show() : $("#right").hide();
|
||||||
}
|
}
|
||||||
function initProgressClick() {
|
function initProgressClick() {
|
||||||
$("#progress").click(function(e) {
|
$("#progress").click(function(e) {
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
<?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/" xmlns:dcterms="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/">
|
||||||
|
<icon>{{ url_for('static', filename='favicon.ico') }}</icon>
|
||||||
<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"
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<feed xmlns="http://www.w3.org/2005/Atom">
|
<feed xmlns="http://www.w3.org/2005/Atom">
|
||||||
|
<icon>{{ url_for('static', filename='favicon.ico') }}</icon>
|
||||||
<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" href="{{url_for('opds.feed_index')}}" type="application/atom+xml;profile=opds-catalog;kind=navigation"/>
|
<link rel="self" href="{{url_for('opds.feed_index')}}" type="application/atom+xml;profile=opds-catalog;kind=navigation"/>
|
||||||
|
|
Binary file not shown.
|
@ -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: 2023-10-14 15:45+0200\n"
|
"POT-Creation-Date: 2023-10-21 15:46+0200\n"
|
||||||
"PO-Revision-Date: 2020-06-09 21:11+0100\n"
|
"PO-Revision-Date: 2020-06-09 21:11+0100\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"
|
||||||
|
|
Binary file not shown.
|
@ -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: 2023-10-14 15:45+0200\n"
|
"POT-Creation-Date: 2023-10-21 15:46+0200\n"
|
||||||
"PO-Revision-Date: 2023-06-25 11:29+0200\n"
|
"PO-Revision-Date: 2023-10-21 15:45+0200\n"
|
||||||
"Last-Translator: Ozzie Isaacs\n"
|
"Last-Translator: Ozzie Isaacs\n"
|
||||||
"Language: de\n"
|
"Language: de\n"
|
||||||
"Language-Team: \n"
|
"Language-Team: \n"
|
||||||
|
@ -3096,11 +3096,11 @@ msgstr "Rechts nach links"
|
||||||
|
|
||||||
#: cps/templates/readcbr.html:162
|
#: cps/templates/readcbr.html:162
|
||||||
msgid "Reset to Top"
|
msgid "Reset to Top"
|
||||||
msgstr ""
|
msgstr "Auf Anfang zurücksetzen"
|
||||||
|
|
||||||
#: cps/templates/readcbr.html:163
|
#: cps/templates/readcbr.html:163
|
||||||
msgid "Remember Position"
|
msgid "Remember Position"
|
||||||
msgstr ""
|
msgstr "Position speichern"
|
||||||
|
|
||||||
#: cps/templates/readcbr.html:168
|
#: cps/templates/readcbr.html:168
|
||||||
msgid "Scrollbar"
|
msgid "Scrollbar"
|
||||||
|
|
Binary file not shown.
|
@ -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: 2023-10-14 15:45+0200\n"
|
"POT-Creation-Date: 2023-10-21 15: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: Depountis Georgios\n"
|
"Last-Translator: Depountis Georgios\n"
|
||||||
"Language: el\n"
|
"Language: el\n"
|
||||||
|
|
Binary file not shown.
|
@ -9,7 +9,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: 2023-10-14 15:45+0200\n"
|
"POT-Creation-Date: 2023-10-21 15:46+0200\n"
|
||||||
"PO-Revision-Date: 2020-05-25 17:22+0200\n"
|
"PO-Revision-Date: 2020-05-25 17:22+0200\n"
|
||||||
"Last-Translator: minakmostoles <xxx@xxx.com>\n"
|
"Last-Translator: minakmostoles <xxx@xxx.com>\n"
|
||||||
"Language: es\n"
|
"Language: es\n"
|
||||||
|
|
Binary file not shown.
|
@ -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: 2023-10-14 15:45+0200\n"
|
"POT-Creation-Date: 2023-10-21 15: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"
|
||||||
|
|
Binary file not shown.
|
@ -22,7 +22,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: 2023-10-14 15:45+0200\n"
|
"POT-Creation-Date: 2023-10-21 15:46+0200\n"
|
||||||
"PO-Revision-Date: 2020-06-07 06:47+0200\n"
|
"PO-Revision-Date: 2020-06-07 06:47+0200\n"
|
||||||
"Last-Translator: <thovi98@gmail.com>\n"
|
"Last-Translator: <thovi98@gmail.com>\n"
|
||||||
"Language: fr\n"
|
"Language: fr\n"
|
||||||
|
|
Binary file not shown.
|
@ -5,7 +5,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: 2023-10-14 15:45+0200\n"
|
"POT-Creation-Date: 2023-10-21 15:46+0200\n"
|
||||||
"PO-Revision-Date: 2022-08-11 16:46+0200\n"
|
"PO-Revision-Date: 2022-08-11 16:46+0200\n"
|
||||||
"Last-Translator: pollitor <pollitor@gmx.com>\n"
|
"Last-Translator: pollitor <pollitor@gmx.com>\n"
|
||||||
"Language: gl\n"
|
"Language: gl\n"
|
||||||
|
|
Binary file not shown.
|
@ -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: 2023-10-14 15:45+0200\n"
|
"POT-Creation-Date: 2023-10-21 15: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"
|
||||||
|
|
Binary file not shown.
|
@ -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: 2023-10-14 15:45+0200\n"
|
"POT-Creation-Date: 2023-10-21 15:46+0200\n"
|
||||||
"PO-Revision-Date: 2023-01-21 10:00+0700\n"
|
"PO-Revision-Date: 2023-01-21 10:00+0700\n"
|
||||||
"Last-Translator: Arief Hidayat<arihid95@gmail.com>\n"
|
"Last-Translator: Arief Hidayat<arihid95@gmail.com>\n"
|
||||||
"Language: id\n"
|
"Language: id\n"
|
||||||
|
|
Binary file not shown.
|
@ -2,13 +2,13 @@
|
||||||
# Copyright (C) 2016 Smart Cities Community
|
# Copyright (C) 2016 Smart Cities Community
|
||||||
# This file is distributed under the same license as the Calibre-Web
|
# This file is distributed under the same license as the Calibre-Web
|
||||||
# Juan F. Villa <juan.villa@paisdelconocimiento.org>, 2016.
|
# Juan F. Villa <juan.villa@paisdelconocimiento.org>, 2016.
|
||||||
# Massimo Pissarello <mapi68@gmail.com>, 2023.
|
# SPDX-FileCopyrightText: 2023 Massimo Pissarello <mapi68@gmail.com>
|
||||||
msgid ""
|
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: 2023-10-14 15:45+0200\n"
|
"POT-Creation-Date: 2023-10-21 15:46+0200\n"
|
||||||
"PO-Revision-Date: 2023-04-18 09:04+0200\n"
|
"PO-Revision-Date: 2023-10-21 15:27+0200\n"
|
||||||
"Last-Translator: Massimo Pissarello <mapi68@gmail.com>\n"
|
"Last-Translator: Massimo Pissarello <mapi68@gmail.com>\n"
|
||||||
"Language: it\n"
|
"Language: it\n"
|
||||||
"Language-Team: Italian <>\n"
|
"Language-Team: Italian <>\n"
|
||||||
|
@ -3096,11 +3096,11 @@ msgstr "Da destra a sinistra"
|
||||||
|
|
||||||
#: cps/templates/readcbr.html:162
|
#: cps/templates/readcbr.html:162
|
||||||
msgid "Reset to Top"
|
msgid "Reset to Top"
|
||||||
msgstr ""
|
msgstr "Reimposta in alto"
|
||||||
|
|
||||||
#: cps/templates/readcbr.html:163
|
#: cps/templates/readcbr.html:163
|
||||||
msgid "Remember Position"
|
msgid "Remember Position"
|
||||||
msgstr ""
|
msgstr "Ricorda la posizione"
|
||||||
|
|
||||||
#: cps/templates/readcbr.html:168
|
#: cps/templates/readcbr.html:168
|
||||||
msgid "Scrollbar"
|
msgid "Scrollbar"
|
||||||
|
|
Binary file not shown.
|
@ -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: 2023-10-14 15:45+0200\n"
|
"POT-Creation-Date: 2023-10-21 15: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: subdiox <subdiox@gmail.com>\n"
|
"Last-Translator: subdiox <subdiox@gmail.com>\n"
|
||||||
"Language: ja\n"
|
"Language: ja\n"
|
||||||
|
|
Binary file not shown.
|
@ -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: 2023-10-14 15:45+0200\n"
|
"POT-Creation-Date: 2023-10-21 15: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"
|
||||||
|
|
Binary file not shown.
|
@ -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: 2023-10-14 15:45+0200\n"
|
"POT-Creation-Date: 2023-10-21 15:46+0200\n"
|
||||||
"PO-Revision-Date: 2022-01-10 11:30+0900\n"
|
"PO-Revision-Date: 2022-01-10 11:30+0900\n"
|
||||||
"Last-Translator: 내맘대로의 EPUBGUIDE.NET <byword77@gmail.com>\n"
|
"Last-Translator: 내맘대로의 EPUBGUIDE.NET <byword77@gmail.com>\n"
|
||||||
"Language: ko\n"
|
"Language: ko\n"
|
||||||
|
@ -33,7 +33,7 @@ msgstr "서버를 종료하는 중, 창을 닫아야 함"
|
||||||
|
|
||||||
#: cps/admin.py:156
|
#: cps/admin.py:156
|
||||||
msgid "Success! Database Reconnected"
|
msgid "Success! Database Reconnected"
|
||||||
msgstr ""
|
msgstr "성공적으로 DB를 다시 연결하였습니다."
|
||||||
|
|
||||||
#: cps/admin.py:159
|
#: cps/admin.py:159
|
||||||
msgid "Unknown command"
|
msgid "Unknown command"
|
||||||
|
@ -190,7 +190,7 @@ msgstr "캘리버 서재의 언어를 변경하시겠습니까?"
|
||||||
|
|
||||||
#: cps/admin.py:629
|
#: cps/admin.py:629
|
||||||
msgid "Calibre-Web will search for updated Covers and update Cover Thumbnails, this may take a while?"
|
msgid "Calibre-Web will search for updated Covers and update Cover Thumbnails, this may take a while?"
|
||||||
msgstr ""
|
msgstr "Calibre-Web은 업데이트된 표지를 검색하고 표지 섬네일 업데이트합니다. 시간이 오래 걸릴 수 있습니다."
|
||||||
|
|
||||||
#: cps/admin.py:632
|
#: cps/admin.py:632
|
||||||
msgid "Are you sure you want delete Calibre-Web's sync database to force a full sync with your Kobo Reader?"
|
msgid "Are you sure you want delete Calibre-Web's sync database to force a full sync with your Kobo Reader?"
|
||||||
|
@ -285,7 +285,7 @@ msgstr "이메일 서버 설정 편집"
|
||||||
|
|
||||||
#: cps/admin.py:1290
|
#: cps/admin.py:1290
|
||||||
msgid "Success! Gmail Account Verified."
|
msgid "Success! Gmail Account Verified."
|
||||||
msgstr ""
|
msgstr "Gmail 계정 인증에 성공하였습니다."
|
||||||
|
|
||||||
#: cps/admin.py:1310 cps/admin.py:1313 cps/admin.py:1695 cps/admin.py:1829
|
#: cps/admin.py:1310 cps/admin.py:1313 cps/admin.py:1695 cps/admin.py:1829
|
||||||
#: cps/admin.py:1927 cps/admin.py:2048 cps/editbooks.py:230
|
#: cps/admin.py:1927 cps/admin.py:2048 cps/editbooks.py:230
|
||||||
|
@ -316,19 +316,19 @@ msgstr "이메일 서버 설정 업데이트됨"
|
||||||
|
|
||||||
#: cps/admin.py:1350 cps/templates/admin.html:195
|
#: cps/admin.py:1350 cps/templates/admin.html:195
|
||||||
msgid "Edit Scheduled Tasks Settings"
|
msgid "Edit Scheduled Tasks Settings"
|
||||||
msgstr ""
|
msgstr "예약 작업 설정 편집"
|
||||||
|
|
||||||
#: cps/admin.py:1362
|
#: cps/admin.py:1362
|
||||||
msgid "Invalid start time for task specified"
|
msgid "Invalid start time for task specified"
|
||||||
msgstr ""
|
msgstr "지정된 작업의 시작 시간이 잘못 설정되었습니다."
|
||||||
|
|
||||||
#: cps/admin.py:1367
|
#: cps/admin.py:1367
|
||||||
msgid "Invalid duration for task specified"
|
msgid "Invalid duration for task specified"
|
||||||
msgstr ""
|
msgstr "지정된 작업의 기간이 잘못 설정되었습니다."
|
||||||
|
|
||||||
#: cps/admin.py:1377
|
#: cps/admin.py:1377
|
||||||
msgid "Scheduled tasks settings updated"
|
msgid "Scheduled tasks settings updated"
|
||||||
msgstr ""
|
msgstr "예약된 작업 설정을 업데이트 하였습니다."
|
||||||
|
|
||||||
#: cps/admin.py:1387 cps/admin.py:1436 cps/admin.py:2044 cps/web.py:1289
|
#: cps/admin.py:1387 cps/admin.py:1436 cps/admin.py:2044 cps/web.py:1289
|
||||||
msgid "Oops! An unknown error occurred. Please try again later."
|
msgid "Oops! An unknown error occurred. Please try again later."
|
||||||
|
@ -336,7 +336,7 @@ msgstr "알 수없는 오류가 발생했습니다. 나중에 다시 시도 해
|
||||||
|
|
||||||
#: cps/admin.py:1391
|
#: cps/admin.py:1391
|
||||||
msgid "Settings DB is not Writeable"
|
msgid "Settings DB is not Writeable"
|
||||||
msgstr ""
|
msgstr "저장할 수 없는 설정 DB입니다."
|
||||||
|
|
||||||
#: cps/admin.py:1421 cps/admin.py:2036
|
#: cps/admin.py:1421 cps/admin.py:2036
|
||||||
#, python-format
|
#, python-format
|
||||||
|
@ -457,7 +457,7 @@ msgstr "올바르지 않은 인증서 파일 위치. 올바른 경로 입력 필
|
||||||
|
|
||||||
#: cps/admin.py:1816
|
#: cps/admin.py:1816
|
||||||
msgid "Password length has to be between 1 and 40"
|
msgid "Password length has to be between 1 and 40"
|
||||||
msgstr ""
|
msgstr "비밀번호 길이는 1에서 40 사이여야 합니다."
|
||||||
|
|
||||||
#: cps/admin.py:1868
|
#: cps/admin.py:1868
|
||||||
msgid "Database Settings updated"
|
msgid "Database Settings updated"
|
||||||
|
@ -503,7 +503,7 @@ msgstr "관리자 계정이 하나 뿐일 때는 관리자 권한을 삭제할
|
||||||
|
|
||||||
#: cps/admin.py:2014 cps/web.py:1438
|
#: cps/admin.py:2014 cps/web.py:1438
|
||||||
msgid "Email can't be empty and has to be a valid Email"
|
msgid "Email can't be empty and has to be a valid Email"
|
||||||
msgstr ""
|
msgstr "이메일은 반드시 입력해야 하며 유효한 이메일이어야 합니다."
|
||||||
|
|
||||||
#: cps/admin.py:2040
|
#: cps/admin.py:2040
|
||||||
#, python-format
|
#, python-format
|
||||||
|
@ -537,7 +537,7 @@ msgstr "선택한 책 제목을 사용할 수 없습니다. 파일이 존재하
|
||||||
|
|
||||||
#: cps/editbooks.py:155 cps/editbooks.py:1227
|
#: cps/editbooks.py:155 cps/editbooks.py:1227
|
||||||
msgid "User has no rights to upload cover"
|
msgid "User has no rights to upload cover"
|
||||||
msgstr ""
|
msgstr "표지를 업로드 할 수 있는 권한이 없는 사용자입니다."
|
||||||
|
|
||||||
#: cps/editbooks.py:175 cps/editbooks.py:720
|
#: cps/editbooks.py:175 cps/editbooks.py:720
|
||||||
msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier"
|
msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier"
|
||||||
|
@ -549,7 +549,7 @@ msgstr "메타데이터가 성공적으로 업데이트되었습니다"
|
||||||
|
|
||||||
#: cps/editbooks.py:235
|
#: cps/editbooks.py:235
|
||||||
msgid "Error editing book: {}"
|
msgid "Error editing book: {}"
|
||||||
msgstr ""
|
msgstr "책 편집 중 오류 발생: {}"
|
||||||
|
|
||||||
#: cps/editbooks.py:292
|
#: cps/editbooks.py:292
|
||||||
#, python-format
|
#, python-format
|
||||||
|
@ -608,7 +608,7 @@ msgstr "책이 성공적으로 삭제되었습니다"
|
||||||
|
|
||||||
#: cps/editbooks.py:884
|
#: cps/editbooks.py:884
|
||||||
msgid "You are missing permissions to delete books"
|
msgid "You are missing permissions to delete books"
|
||||||
msgstr ""
|
msgstr "책을 삭제할 수 있는 권한이 없습니다."
|
||||||
|
|
||||||
#: cps/editbooks.py:934
|
#: cps/editbooks.py:934
|
||||||
msgid "edit metadata"
|
msgid "edit metadata"
|
||||||
|
@ -621,7 +621,7 @@ msgstr "%(seriesindex)s은(는) 유효한 숫자가 아닙니다. 건너뜁니
|
||||||
|
|
||||||
#: cps/editbooks.py:1162
|
#: cps/editbooks.py:1162
|
||||||
msgid "User has no rights to upload additional file formats"
|
msgid "User has no rights to upload additional file formats"
|
||||||
msgstr ""
|
msgstr "추가 파일 유형을 업로드 할 권한이 없는 사용자입니다."
|
||||||
|
|
||||||
#: cps/editbooks.py:1183
|
#: cps/editbooks.py:1183
|
||||||
#, python-format
|
#, python-format
|
||||||
|
@ -711,7 +711,7 @@ msgstr "요청한 파일을 읽을 수 없습니다. 올바른 권한인가요?"
|
||||||
|
|
||||||
#: cps/helper.py:342
|
#: cps/helper.py:342
|
||||||
msgid "Read status could not set: {}"
|
msgid "Read status could not set: {}"
|
||||||
msgstr ""
|
msgstr "읽기 상태를 설정할 수 없음: {}"
|
||||||
|
|
||||||
#: cps/helper.py:365
|
#: cps/helper.py:365
|
||||||
#, python-format
|
#, python-format
|
||||||
|
@ -745,7 +745,7 @@ msgstr "제목 이름을 '%(src)s'에서 '%(dest)s'(으)로 변경하지 못했
|
||||||
|
|
||||||
#: cps/helper.py:582
|
#: cps/helper.py:582
|
||||||
msgid "Error in rename file in path: {}"
|
msgid "Error in rename file in path: {}"
|
||||||
msgstr ""
|
msgstr "경로에서 파일 이름을 바꾸는 중 오류가 발생: {}"
|
||||||
|
|
||||||
#: cps/helper.py:600
|
#: cps/helper.py:600
|
||||||
#, python-format
|
#, python-format
|
||||||
|
@ -754,7 +754,7 @@ msgstr "Google 드라이브에서 책 경로 %(path)s을(를) 찾을 수 없습
|
||||||
|
|
||||||
#: cps/helper.py:665
|
#: cps/helper.py:665
|
||||||
msgid "Found an existing account for this Email address"
|
msgid "Found an existing account for this Email address"
|
||||||
msgstr ""
|
msgstr "다른 계정에서 사용하고 있는 이메일 주소입니다."
|
||||||
|
|
||||||
#: cps/helper.py:673
|
#: cps/helper.py:673
|
||||||
msgid "This username is already taken"
|
msgid "This username is already taken"
|
||||||
|
@ -767,11 +767,11 @@ msgstr "이메일 주소 형식이 잘못되었습니다"
|
||||||
|
|
||||||
#: cps/helper.py:703
|
#: cps/helper.py:703
|
||||||
msgid "Password doesn't comply with password validation rules"
|
msgid "Password doesn't comply with password validation rules"
|
||||||
msgstr ""
|
msgstr "규칙에 어긋나는 비밀번호입니다."
|
||||||
|
|
||||||
#: cps/helper.py:852
|
#: cps/helper.py:852
|
||||||
msgid "Python module 'advocate' is not installed but is needed for cover uploads"
|
msgid "Python module 'advocate' is not installed but is needed for cover uploads"
|
||||||
msgstr ""
|
msgstr "표지 업로드에 필요한 Python 모듈 'advocate'이 설치되지 않았습니다."
|
||||||
|
|
||||||
#: cps/helper.py:862
|
#: cps/helper.py:862
|
||||||
msgid "Error Downloading Cover"
|
msgid "Error Downloading Cover"
|
||||||
|
@ -783,7 +783,7 @@ msgstr "표지 형식 오류"
|
||||||
|
|
||||||
#: cps/helper.py:868
|
#: cps/helper.py:868
|
||||||
msgid "You are not allowed to access localhost or the local network for cover uploads"
|
msgid "You are not allowed to access localhost or the local network for cover uploads"
|
||||||
msgstr ""
|
msgstr "표지 업로드를 위해 localhost 또는 로컬 네트워크에 액세스할 수 없습니다."
|
||||||
|
|
||||||
#: cps/helper.py:878
|
#: cps/helper.py:878
|
||||||
msgid "Failed to create path for cover"
|
msgid "Failed to create path for cover"
|
||||||
|
@ -821,7 +821,7 @@ msgstr "발견"
|
||||||
|
|
||||||
#: cps/helper.py:1079 cps/templates/admin.html:216
|
#: cps/helper.py:1079 cps/templates/admin.html:216
|
||||||
msgid "Queue all books for metadata backup"
|
msgid "Queue all books for metadata backup"
|
||||||
msgstr ""
|
msgstr "메타데이터 백업을 위해 모든 도서를 대기열에 추가"
|
||||||
|
|
||||||
#: cps/kobo_auth.py:90
|
#: cps/kobo_auth.py:90
|
||||||
#, fuzzy
|
#, fuzzy
|
||||||
|
@ -1166,7 +1166,7 @@ msgstr "책장 편집"
|
||||||
|
|
||||||
#: cps/shelf.py:229
|
#: cps/shelf.py:229
|
||||||
msgid "Error deleting Shelf"
|
msgid "Error deleting Shelf"
|
||||||
msgstr ""
|
msgstr "서제를 삭제하는 동안 오류 발생"
|
||||||
|
|
||||||
#: cps/shelf.py:231
|
#: cps/shelf.py:231
|
||||||
#, fuzzy
|
#, fuzzy
|
||||||
|
@ -1238,11 +1238,11 @@ msgstr "종료"
|
||||||
|
|
||||||
#: cps/tasks_status.py:70
|
#: cps/tasks_status.py:70
|
||||||
msgid "Ended"
|
msgid "Ended"
|
||||||
msgstr ""
|
msgstr "종료됨"
|
||||||
|
|
||||||
#: cps/tasks_status.py:72
|
#: cps/tasks_status.py:72
|
||||||
msgid "Cancelled"
|
msgid "Cancelled"
|
||||||
msgstr ""
|
msgstr "취소됨"
|
||||||
|
|
||||||
#: cps/tasks_status.py:74
|
#: cps/tasks_status.py:74
|
||||||
msgid "Unknown Status"
|
msgid "Unknown Status"
|
||||||
|
@ -1307,7 +1307,7 @@ msgstr "시리즈: %(serie)s"
|
||||||
|
|
||||||
#: cps/web.py:620
|
#: cps/web.py:620
|
||||||
msgid "Rating: None"
|
msgid "Rating: None"
|
||||||
msgstr ""
|
msgstr "평가: 없음음"
|
||||||
|
|
||||||
#: cps/web.py:629
|
#: cps/web.py:629
|
||||||
#, python-format
|
#, python-format
|
||||||
|
@ -1363,7 +1363,7 @@ msgstr "Kindle로 보내는 유효한 이메일 주소로 프로필을 업데이
|
||||||
|
|
||||||
#: cps/web.py:1254
|
#: cps/web.py:1254
|
||||||
msgid "Please wait one minute to register next user"
|
msgid "Please wait one minute to register next user"
|
||||||
msgstr ""
|
msgstr "1분 이상 지난 후 다음 사용자를 등록하세요."
|
||||||
|
|
||||||
#: cps/templates/layout.html:68 cps/templates/layout.html:102
|
#: cps/templates/layout.html:68 cps/templates/layout.html:102
|
||||||
#: cps/templates/login.html:27 cps/templates/register.html:17 cps/web.py:1255
|
#: cps/templates/login.html:27 cps/templates/register.html:17 cps/web.py:1255
|
||||||
|
@ -1391,7 +1391,7 @@ msgstr "LDAP 인증을 활성화할 수 없습니다"
|
||||||
|
|
||||||
#: cps/web.py:1353
|
#: cps/web.py:1353
|
||||||
msgid "Please wait one minute before next login"
|
msgid "Please wait one minute before next login"
|
||||||
msgstr ""
|
msgstr "1분 이상 지난 후 로그인을 하세요."
|
||||||
|
|
||||||
#: cps/web.py:1369
|
#: cps/web.py:1369
|
||||||
#, fuzzy, python-format
|
#, fuzzy, python-format
|
||||||
|
@ -1492,15 +1492,15 @@ msgstr "오류로 인한 Calibre 실패: %(error)s"
|
||||||
|
|
||||||
#: cps/tasks/convert.py:275
|
#: cps/tasks/convert.py:275
|
||||||
msgid "Convert"
|
msgid "Convert"
|
||||||
msgstr ""
|
msgstr "변환"
|
||||||
|
|
||||||
#: cps/tasks/database.py:28
|
#: cps/tasks/database.py:28
|
||||||
msgid "Reconnecting Calibre database"
|
msgid "Reconnecting Calibre database"
|
||||||
msgstr ""
|
msgstr "Calibre DB를 다시 연결합니다."
|
||||||
|
|
||||||
#: cps/tasks/mail.py:269
|
#: cps/tasks/mail.py:269
|
||||||
msgid "E-mail"
|
msgid "E-mail"
|
||||||
msgstr ""
|
msgstr "이메일일"
|
||||||
|
|
||||||
#: cps/tasks/metadata_backup.py:46
|
#: cps/tasks/metadata_backup.py:46
|
||||||
#, fuzzy
|
#, fuzzy
|
||||||
|
@ -1510,20 +1510,20 @@ msgstr "메타데이터 편집"
|
||||||
#: cps/tasks/thumbnail.py:96
|
#: cps/tasks/thumbnail.py:96
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "Generated %(count)s cover thumbnails"
|
msgid "Generated %(count)s cover thumbnails"
|
||||||
msgstr ""
|
msgstr "%(count)개의 표지 섬네일을 생성하였습니다."
|
||||||
|
|
||||||
#: cps/tasks/thumbnail.py:230 cps/tasks/thumbnail.py:443
|
#: cps/tasks/thumbnail.py:230 cps/tasks/thumbnail.py:443
|
||||||
#: cps/tasks/thumbnail.py:511
|
#: cps/tasks/thumbnail.py:511
|
||||||
msgid "Cover Thumbnails"
|
msgid "Cover Thumbnails"
|
||||||
msgstr ""
|
msgstr "표지 섬네일"
|
||||||
|
|
||||||
#: cps/tasks/thumbnail.py:289
|
#: cps/tasks/thumbnail.py:289
|
||||||
msgid "Generated {0} series thumbnails"
|
msgid "Generated {0} series thumbnails"
|
||||||
msgstr ""
|
msgstr "{0} 시리즈 섬네일을 생성하였습니다."
|
||||||
|
|
||||||
#: cps/tasks/thumbnail.py:454
|
#: cps/tasks/thumbnail.py:454
|
||||||
msgid "Clearing cover thumbnail cache"
|
msgid "Clearing cover thumbnail cache"
|
||||||
msgstr ""
|
msgstr "표지 섬네일 캐시를 삭제합니다."
|
||||||
|
|
||||||
#: cps/tasks/upload.py:38 cps/templates/admin.html:20
|
#: cps/tasks/upload.py:38 cps/templates/admin.html:20
|
||||||
#: cps/templates/layout.html:81 cps/templates/user_table.html:145
|
#: cps/templates/layout.html:81 cps/templates/user_table.html:145
|
||||||
|
@ -1686,37 +1686,37 @@ msgstr "UI 환경 설정 편집"
|
||||||
|
|
||||||
#: cps/templates/admin.html:167
|
#: cps/templates/admin.html:167
|
||||||
msgid "Scheduled Tasks"
|
msgid "Scheduled Tasks"
|
||||||
msgstr ""
|
msgstr "예약된 작업"
|
||||||
|
|
||||||
#: cps/templates/admin.html:170 cps/templates/schedule_edit.html:12
|
#: cps/templates/admin.html:170 cps/templates/schedule_edit.html:12
|
||||||
#: cps/templates/tasks.html:18
|
#: cps/templates/tasks.html:18
|
||||||
msgid "Start Time"
|
msgid "Start Time"
|
||||||
msgstr ""
|
msgstr "시작 시간"
|
||||||
|
|
||||||
#: cps/templates/admin.html:174 cps/templates/schedule_edit.html:20
|
#: cps/templates/admin.html:174 cps/templates/schedule_edit.html:20
|
||||||
msgid "Maximum Duration"
|
msgid "Maximum Duration"
|
||||||
msgstr ""
|
msgstr "최대 기간"
|
||||||
|
|
||||||
#: cps/templates/admin.html:178 cps/templates/schedule_edit.html:29
|
#: cps/templates/admin.html:178 cps/templates/schedule_edit.html:29
|
||||||
msgid "Generate Thumbnails"
|
msgid "Generate Thumbnails"
|
||||||
msgstr ""
|
msgstr "섬네일 생성성"
|
||||||
|
|
||||||
#: cps/templates/admin.html:182
|
#: cps/templates/admin.html:182
|
||||||
msgid "Generate series cover thumbnails"
|
msgid "Generate series cover thumbnails"
|
||||||
msgstr ""
|
msgstr "시리즈 표지 섬네일 생성"
|
||||||
|
|
||||||
#: cps/templates/admin.html:186 cps/templates/admin.html:208
|
#: cps/templates/admin.html:186 cps/templates/admin.html:208
|
||||||
#: cps/templates/schedule_edit.html:37
|
#: cps/templates/schedule_edit.html:37
|
||||||
msgid "Reconnect Calibre Database"
|
msgid "Reconnect Calibre Database"
|
||||||
msgstr ""
|
msgstr "Calibre DB 다시 연결"
|
||||||
|
|
||||||
#: cps/templates/admin.html:190 cps/templates/schedule_edit.html:41
|
#: cps/templates/admin.html:190 cps/templates/schedule_edit.html:41
|
||||||
msgid "Generate Metadata Backup Files"
|
msgid "Generate Metadata Backup Files"
|
||||||
msgstr ""
|
msgstr "메타 정보 백업 파일 생성"
|
||||||
|
|
||||||
#: cps/templates/admin.html:197
|
#: cps/templates/admin.html:197
|
||||||
msgid "Refresh Thumbnail Cache"
|
msgid "Refresh Thumbnail Cache"
|
||||||
msgstr ""
|
msgstr "섬네일 캐시 새로 고침침"
|
||||||
|
|
||||||
#: cps/templates/admin.html:203
|
#: cps/templates/admin.html:203
|
||||||
msgid "Administration"
|
msgid "Administration"
|
||||||
|
@ -1740,7 +1740,7 @@ msgstr "종료"
|
||||||
|
|
||||||
#: cps/templates/admin.html:221
|
#: cps/templates/admin.html:221
|
||||||
msgid "Version Information"
|
msgid "Version Information"
|
||||||
msgstr ""
|
msgstr "버전 정보"
|
||||||
|
|
||||||
#: cps/templates/admin.html:225
|
#: cps/templates/admin.html:225
|
||||||
msgid "Version"
|
msgid "Version"
|
||||||
|
@ -1788,7 +1788,7 @@ msgstr "종료를 하시겠습니까?"
|
||||||
|
|
||||||
#: cps/templates/admin.html:283
|
#: cps/templates/admin.html:283
|
||||||
msgid "Updating, please do not reload this page"
|
msgid "Updating, please do not reload this page"
|
||||||
msgstr "Встановлення оновлень, будь-ласка, не оновлюйте сторінку"
|
msgstr "업데이트 중입니다. 이 페이지를 새로고침 하지 마세요."
|
||||||
|
|
||||||
#: cps/templates/author.html:15
|
#: cps/templates/author.html:15
|
||||||
msgid "via"
|
msgid "via"
|
||||||
|
@ -2089,7 +2089,7 @@ msgstr "코멘트"
|
||||||
|
|
||||||
#: cps/templates/book_table.html:75
|
#: cps/templates/book_table.html:75
|
||||||
msgid "Archive Status"
|
msgid "Archive Status"
|
||||||
msgstr ""
|
msgstr "아카이브 상태태"
|
||||||
|
|
||||||
#: cps/templates/book_table.html:77 cps/templates/search_form.html:42
|
#: cps/templates/book_table.html:77 cps/templates/search_form.html:42
|
||||||
msgid "Read Status"
|
msgid "Read Status"
|
||||||
|
@ -2133,7 +2133,7 @@ msgstr "구글 드라이브 인증"
|
||||||
|
|
||||||
#: cps/templates/config_db.html:32
|
#: cps/templates/config_db.html:32
|
||||||
msgid "Google Drive Calibre folder"
|
msgid "Google Drive Calibre folder"
|
||||||
msgstr "Google Drive Calibre 폴더"
|
msgstr "구글 드라이브 Calibre 폴더"
|
||||||
|
|
||||||
#: cps/templates/config_db.html:40
|
#: cps/templates/config_db.html:40
|
||||||
msgid "Metadata Watch Channel ID"
|
msgid "Metadata Watch Channel ID"
|
||||||
|
@ -2421,44 +2421,44 @@ msgstr "OAuth 설정"
|
||||||
|
|
||||||
#: cps/templates/config_edit.html:369
|
#: cps/templates/config_edit.html:369
|
||||||
msgid "Limit failed login attempts"
|
msgid "Limit failed login attempts"
|
||||||
msgstr ""
|
msgstr "로그인 시도 제한"
|
||||||
|
|
||||||
#: cps/templates/config_edit.html:372
|
#: cps/templates/config_edit.html:372
|
||||||
msgid "Session protection"
|
msgid "Session protection"
|
||||||
msgstr ""
|
msgstr "세션 보호"
|
||||||
|
|
||||||
#: cps/templates/config_edit.html:374
|
#: cps/templates/config_edit.html:374
|
||||||
msgid "Basic"
|
msgid "Basic"
|
||||||
msgstr ""
|
msgstr "기본"
|
||||||
|
|
||||||
#: cps/templates/config_edit.html:375
|
#: cps/templates/config_edit.html:375
|
||||||
msgid "Strong"
|
msgid "Strong"
|
||||||
msgstr ""
|
msgstr "강함함"
|
||||||
|
|
||||||
#: cps/templates/config_edit.html:380
|
#: cps/templates/config_edit.html:380
|
||||||
#, fuzzy
|
#, fuzzy
|
||||||
msgid "User Password policy"
|
msgid "User Password policy"
|
||||||
msgstr "사용자 비밀번호 초기화"
|
msgstr "사용자 비밀번호 정책"
|
||||||
|
|
||||||
#: cps/templates/config_edit.html:384
|
#: cps/templates/config_edit.html:384
|
||||||
msgid "Minimum password length"
|
msgid "Minimum password length"
|
||||||
msgstr ""
|
msgstr "최소 비밀번호 길이"
|
||||||
|
|
||||||
#: cps/templates/config_edit.html:389
|
#: cps/templates/config_edit.html:389
|
||||||
msgid "Enforce number"
|
msgid "Enforce number"
|
||||||
msgstr ""
|
msgstr "반드시 숫자 입력"
|
||||||
|
|
||||||
#: cps/templates/config_edit.html:393
|
#: cps/templates/config_edit.html:393
|
||||||
msgid "Enforce lowercase characters"
|
msgid "Enforce lowercase characters"
|
||||||
msgstr ""
|
msgstr "반드시 소문자 입력"
|
||||||
|
|
||||||
#: cps/templates/config_edit.html:397
|
#: cps/templates/config_edit.html:397
|
||||||
msgid "Enforce uppercase characters"
|
msgid "Enforce uppercase characters"
|
||||||
msgstr ""
|
msgstr "반드시 대문자 입력"
|
||||||
|
|
||||||
#: cps/templates/config_edit.html:401
|
#: cps/templates/config_edit.html:401
|
||||||
msgid "Enforce special characters"
|
msgid "Enforce special characters"
|
||||||
msgstr ""
|
msgstr "반드시 특수문자 입력력"
|
||||||
|
|
||||||
#: cps/templates/config_view_edit.html:17
|
#: cps/templates/config_view_edit.html:17
|
||||||
msgid "View Configuration"
|
msgid "View Configuration"
|
||||||
|
@ -2620,7 +2620,7 @@ msgstr "(공개)"
|
||||||
|
|
||||||
#: cps/templates/detail.html:339
|
#: cps/templates/detail.html:339
|
||||||
msgid "Edit Metadata"
|
msgid "Edit Metadata"
|
||||||
msgstr "메타저오 편집"
|
msgstr "메타정보보 편집"
|
||||||
|
|
||||||
#: cps/templates/email_edit.html:13
|
#: cps/templates/email_edit.html:13
|
||||||
msgid "Email Account Type"
|
msgid "Email Account Type"
|
||||||
|
@ -2634,11 +2634,11 @@ msgstr "표준 이메일 계정 사용"
|
||||||
#: cps/templates/email_edit.html:16
|
#: cps/templates/email_edit.html:16
|
||||||
#, fuzzy
|
#, fuzzy
|
||||||
msgid "Gmail Account"
|
msgid "Gmail Account"
|
||||||
msgstr "서버 유형 선택"
|
msgstr "Gmail 계정"
|
||||||
|
|
||||||
#: cps/templates/email_edit.html:22
|
#: cps/templates/email_edit.html:22
|
||||||
msgid "Setup Gmail Account"
|
msgid "Setup Gmail Account"
|
||||||
msgstr ""
|
msgstr "Gmail 계정 설정정"
|
||||||
|
|
||||||
#: cps/templates/email_edit.html:24
|
#: cps/templates/email_edit.html:24
|
||||||
msgid "Revoke Gmail Access"
|
msgid "Revoke Gmail Access"
|
||||||
|
@ -2706,7 +2706,7 @@ msgstr "코보 연동 토큰"
|
||||||
|
|
||||||
#: cps/templates/grid.html:21
|
#: cps/templates/grid.html:21
|
||||||
msgid "List"
|
msgid "List"
|
||||||
msgstr ""
|
msgstr "목록"
|
||||||
|
|
||||||
#: cps/templates/http_error.html:34
|
#: cps/templates/http_error.html:34
|
||||||
msgid "Calibre-Web Instance is unconfigured, please contact your administrator"
|
msgid "Calibre-Web Instance is unconfigured, please contact your administrator"
|
||||||
|
@ -2878,7 +2878,7 @@ msgstr "책 상세정보"
|
||||||
|
|
||||||
#: cps/templates/list.html:22
|
#: cps/templates/list.html:22
|
||||||
msgid "Grid"
|
msgid "Grid"
|
||||||
msgstr ""
|
msgstr "그리드드"
|
||||||
|
|
||||||
#: cps/templates/login.html:18
|
#: cps/templates/login.html:18
|
||||||
msgid "Remember Me"
|
msgid "Remember Me"
|
||||||
|
@ -3006,7 +3006,7 @@ msgstr "어둡게"
|
||||||
|
|
||||||
#: cps/templates/read.html:83
|
#: cps/templates/read.html:83
|
||||||
msgid "Sepia"
|
msgid "Sepia"
|
||||||
msgstr ""
|
msgstr "세피아"
|
||||||
|
|
||||||
#: cps/templates/read.html:84
|
#: cps/templates/read.html:84
|
||||||
#, fuzzy
|
#, fuzzy
|
||||||
|
@ -3019,7 +3019,7 @@ msgstr "사이드바가 열려 있을 때 텍스트 다시 배열."
|
||||||
|
|
||||||
#: cps/templates/read.html:93
|
#: cps/templates/read.html:93
|
||||||
msgid "Font Sizes"
|
msgid "Font Sizes"
|
||||||
msgstr ""
|
msgstr "글자 크기기"
|
||||||
|
|
||||||
#: cps/templates/readcbr.html:8
|
#: cps/templates/readcbr.html:8
|
||||||
msgid "Comic Reader"
|
msgid "Comic Reader"
|
||||||
|
@ -3039,11 +3039,11 @@ msgstr "다음 페이지"
|
||||||
|
|
||||||
#: cps/templates/readcbr.html:80
|
#: cps/templates/readcbr.html:80
|
||||||
msgid "Single Page Display"
|
msgid "Single Page Display"
|
||||||
msgstr ""
|
msgstr "한 페이지 보기기"
|
||||||
|
|
||||||
#: cps/templates/readcbr.html:81
|
#: cps/templates/readcbr.html:81
|
||||||
msgid "Long Strip Display"
|
msgid "Long Strip Display"
|
||||||
msgstr ""
|
msgstr "Long Strip Display"
|
||||||
|
|
||||||
#: cps/templates/readcbr.html:82
|
#: cps/templates/readcbr.html:82
|
||||||
msgid "Scale to Best"
|
msgid "Scale to Best"
|
||||||
|
@ -3075,7 +3075,7 @@ msgstr "이미지 뒤집기"
|
||||||
|
|
||||||
#: cps/templates/readcbr.html:110
|
#: cps/templates/readcbr.html:110
|
||||||
msgid "Display"
|
msgid "Display"
|
||||||
msgstr ""
|
msgstr "화면"
|
||||||
|
|
||||||
#: cps/templates/readcbr.html:113
|
#: cps/templates/readcbr.html:113
|
||||||
#, fuzzy
|
#, fuzzy
|
||||||
|
@ -3084,7 +3084,7 @@ msgstr "관리자 페이지"
|
||||||
|
|
||||||
#: cps/templates/readcbr.html:114
|
#: cps/templates/readcbr.html:114
|
||||||
msgid "Long Strip"
|
msgid "Long Strip"
|
||||||
msgstr ""
|
msgstr "Long Strip"
|
||||||
|
|
||||||
#: cps/templates/readcbr.html:119
|
#: cps/templates/readcbr.html:119
|
||||||
msgid "Scale"
|
msgid "Scale"
|
||||||
|
@ -3196,7 +3196,7 @@ msgstr "이 확인 링크는 10분 후에 만료됩니다."
|
||||||
|
|
||||||
#: cps/templates/schedule_edit.html:33
|
#: cps/templates/schedule_edit.html:33
|
||||||
msgid "Generate Series Cover Thumbnails"
|
msgid "Generate Series Cover Thumbnails"
|
||||||
msgstr ""
|
msgstr "시리즈 섬네일 표지 생성"
|
||||||
|
|
||||||
#: cps/templates/search.html:6
|
#: cps/templates/search.html:6
|
||||||
msgid "No Results Found"
|
msgid "No Results Found"
|
||||||
|
@ -3320,7 +3320,7 @@ msgstr "시스템 통계"
|
||||||
|
|
||||||
#: cps/templates/stats.html:33
|
#: cps/templates/stats.html:33
|
||||||
msgid "Program"
|
msgid "Program"
|
||||||
msgstr ""
|
msgstr "프로그램램"
|
||||||
|
|
||||||
#: cps/templates/stats.html:34
|
#: cps/templates/stats.html:34
|
||||||
msgid "Installed Version"
|
msgid "Installed Version"
|
||||||
|
@ -3348,15 +3348,15 @@ msgstr "실행 시간"
|
||||||
|
|
||||||
#: cps/templates/tasks.html:20
|
#: cps/templates/tasks.html:20
|
||||||
msgid "Actions"
|
msgid "Actions"
|
||||||
msgstr ""
|
msgstr "Actions"
|
||||||
|
|
||||||
#: cps/templates/tasks.html:40
|
#: cps/templates/tasks.html:40
|
||||||
msgid "This task will be cancelled. Any progress made by this task will be saved."
|
msgid "This task will be cancelled. Any progress made by this task will be saved."
|
||||||
msgstr ""
|
msgstr "이 작업을 취소합니다. 이 작업의 모든 진행사항은 반영됩니다."
|
||||||
|
|
||||||
#: cps/templates/tasks.html:41
|
#: cps/templates/tasks.html:41
|
||||||
msgid "If this is a scheduled task, it will be re-ran during the next scheduled time."
|
msgid "If this is a scheduled task, it will be re-ran during the next scheduled time."
|
||||||
msgstr ""
|
msgstr "이 작업이 예약된 작업이라면, 다음 예약 시간에 다시 실행됩니다."
|
||||||
|
|
||||||
#: cps/templates/user_edit.html:20
|
#: cps/templates/user_edit.html:20
|
||||||
msgid "Reset user Password"
|
msgid "Reset user Password"
|
||||||
|
|
Binary file not shown.
|
@ -8,7 +8,7 @@ msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Calibre-Web (GPLV3)\n"
|
"Project-Id-Version: Calibre-Web (GPLV3)\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: 2023-10-14 15:45+0200\n"
|
"POT-Creation-Date: 2023-10-21 15:46+0200\n"
|
||||||
"PO-Revision-Date: 2020-12-12 08:20+0100\n"
|
"PO-Revision-Date: 2020-12-12 08:20+0100\n"
|
||||||
"Last-Translator: Marcel Maas <marcel.maas@outlook.com>\n"
|
"Last-Translator: Marcel Maas <marcel.maas@outlook.com>\n"
|
||||||
"Language: nl\n"
|
"Language: nl\n"
|
||||||
|
|
Binary file not shown.
|
@ -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: 2023-10-14 15:45+0200\n"
|
"POT-Creation-Date: 2023-10-21 15:46+0200\n"
|
||||||
"PO-Revision-Date: 2023-01-06 11:00+0000\n"
|
"PO-Revision-Date: 2023-01-06 11:00+0000\n"
|
||||||
"Last-Translator: Vegard Fladby <vegard.fladby@gmail.com>\n"
|
"Last-Translator: Vegard Fladby <vegard.fladby@gmail.com>\n"
|
||||||
"Language: no\n"
|
"Language: no\n"
|
||||||
|
|
Binary file not shown.
|
@ -8,7 +8,7 @@ msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Calibre Web - polski (POT: 2021-06-12 08:52)\n"
|
"Project-Id-Version: Calibre Web - polski (POT: 2021-06-12 08:52)\n"
|
||||||
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
|
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
|
||||||
"POT-Creation-Date: 2023-10-14 15:45+0200\n"
|
"POT-Creation-Date: 2023-10-21 15:46+0200\n"
|
||||||
"PO-Revision-Date: 2021-06-12 15:35+0200\n"
|
"PO-Revision-Date: 2021-06-12 15:35+0200\n"
|
||||||
"Last-Translator: Radosław Kierznowski <radek.kierznowski@outlook.com>\n"
|
"Last-Translator: Radosław Kierznowski <radek.kierznowski@outlook.com>\n"
|
||||||
"Language: pl\n"
|
"Language: pl\n"
|
||||||
|
|
Binary file not shown.
|
@ -4,7 +4,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: 2023-10-14 15:45+0200\n"
|
"POT-Creation-Date: 2023-10-21 15:46+0200\n"
|
||||||
"PO-Revision-Date: 2023-07-25 11:30+0100\n"
|
"PO-Revision-Date: 2023-07-25 11:30+0100\n"
|
||||||
"Last-Translator: horus68 <https://github.com/horus68>\n"
|
"Last-Translator: horus68 <https://github.com/horus68>\n"
|
||||||
"Language: pt\n"
|
"Language: pt\n"
|
||||||
|
|
Binary file not shown.
|
@ -4,7 +4,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: 2023-10-14 15:45+0200\n"
|
"POT-Creation-Date: 2023-10-21 15: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: br\n"
|
"Language: br\n"
|
||||||
|
|
Binary file not shown.
|
@ -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: 2023-10-14 15:45+0200\n"
|
"POT-Creation-Date: 2023-10-21 15: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"
|
||||||
|
|
Binary file not shown.
|
@ -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: 2023-10-14 15:45+0200\n"
|
"POT-Creation-Date: 2023-10-21 15:46+0200\n"
|
||||||
"PO-Revision-Date: 2021-05-13 11:00+0000\n"
|
"PO-Revision-Date: 2021-05-13 11:00+0000\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"
|
||||||
|
|
Binary file not shown.
|
@ -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: 2023-10-14 15:45+0200\n"
|
"POT-Creation-Date: 2023-10-21 15: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"
|
||||||
|
|
Binary file not shown.
|
@ -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: 2023-10-14 15:45+0200\n"
|
"POT-Creation-Date: 2023-10-21 15: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"
|
||||||
|
|
Binary file not shown.
|
@ -4,7 +4,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: 2023-10-14 15:45+0200\n"
|
"POT-Creation-Date: 2023-10-21 15:46+0200\n"
|
||||||
"PO-Revision-Date: 2022-09-20 21:36+0700\n"
|
"PO-Revision-Date: 2022-09-20 21:36+0700\n"
|
||||||
"Last-Translator: Ha Link <halink0803@gmail.com>\n"
|
"Last-Translator: Ha Link <halink0803@gmail.com>\n"
|
||||||
"Language: vi\n"
|
"Language: vi\n"
|
||||||
|
|
Binary file not shown.
|
@ -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: 2023-10-14 15:45+0200\n"
|
"POT-Creation-Date: 2023-10-21 15:46+0200\n"
|
||||||
"PO-Revision-Date: 2020-09-27 22:18+0800\n"
|
"PO-Revision-Date: 2020-09-27 22:18+0800\n"
|
||||||
"Last-Translator: xlivevil <xlivevil@aliyun.com>\n"
|
"Last-Translator: xlivevil <xlivevil@aliyun.com>\n"
|
||||||
"Language: zh_CN\n"
|
"Language: zh_CN\n"
|
||||||
|
|
Binary file not shown.
|
@ -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: 2023-10-14 15:45+0200\n"
|
"POT-Creation-Date: 2023-10-21 15:46+0200\n"
|
||||||
"PO-Revision-Date: 2020-09-27 22:18+0800\n"
|
"PO-Revision-Date: 2020-09-27 22:18+0800\n"
|
||||||
"Last-Translator: xlivevil <xlivevil@aliyun.com>\n"
|
"Last-Translator: xlivevil <xlivevil@aliyun.com>\n"
|
||||||
"Language: zh_TW\n"
|
"Language: zh_TW\n"
|
||||||
|
|
|
@ -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: 2023-10-14 15:45+0200\n"
|
"POT-Creation-Date: 2023-10-21 15: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"
|
||||||
|
|
|
@ -13,7 +13,7 @@ author = @OzzieIsaacs
|
||||||
author_email = Ozzie.Fernandez.Isaacs@googlemail.com
|
author_email = Ozzie.Fernandez.Isaacs@googlemail.com
|
||||||
maintainer = @OzzieIsaacs
|
maintainer = @OzzieIsaacs
|
||||||
license = GPLv3+
|
license = GPLv3+
|
||||||
license_file = LICENSE
|
license_files = LICENSE
|
||||||
classifiers =
|
classifiers =
|
||||||
Development Status :: 5 - Production/Stable
|
Development Status :: 5 - Production/Stable
|
||||||
License :: OSI Approved :: GNU Affero General Public License v3
|
License :: OSI Approved :: GNU Affero General Public License v3
|
||||||
|
@ -60,6 +60,10 @@ install_requires =
|
||||||
Flask-Limiter>=2.3.0,<3.5.0
|
Flask-Limiter>=2.3.0,<3.5.0
|
||||||
|
|
||||||
|
|
||||||
|
[options.packages.find]
|
||||||
|
where = src
|
||||||
|
include = cps/services*
|
||||||
|
|
||||||
[options.extras_require]
|
[options.extras_require]
|
||||||
gdrive =
|
gdrive =
|
||||||
google-api-python-client>=1.7.11,<2.98.0
|
google-api-python-client>=1.7.11,<2.98.0
|
||||||
|
|
3
setup.py
3
setup.py
|
@ -20,7 +20,6 @@
|
||||||
# """Calibre-web distribution package setuptools installer."""
|
# """Calibre-web distribution package setuptools installer."""
|
||||||
|
|
||||||
from setuptools import setup
|
from setuptools import setup
|
||||||
from setuptools import find_packages
|
|
||||||
import os
|
import os
|
||||||
import re
|
import re
|
||||||
import codecs
|
import codecs
|
||||||
|
@ -40,7 +39,5 @@ def find_version(*file_paths):
|
||||||
raise RuntimeError("Unable to find version string.")
|
raise RuntimeError("Unable to find version string.")
|
||||||
|
|
||||||
setup(
|
setup(
|
||||||
packages=find_packages("src"),
|
|
||||||
package_dir = {'': 'src'},
|
|
||||||
version=find_version("src", "calibreweb", "cps", "constants.py")
|
version=find_version("src", "calibreweb", "cps", "constants.py")
|
||||||
)
|
)
|
||||||
|
|
|
@ -37,20 +37,20 @@
|
||||||
<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>2023-10-11 19:32:23</p>
|
<p class='text-justify attribute'><strong>Start Time: </strong>2023-10-16 19:38:22</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>2023-10-12 01:29:49</p>
|
<p class='text-justify attribute'><strong>Stop Time: </strong>2023-10-17 02:18:49</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>4h 56 min</p>
|
<p class='text-justify attribute'><strong>Duration: </strong>5h 37 min</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -234,11 +234,11 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<tr id="su" class="failClass">
|
<tr id="su" class="passClass">
|
||||||
<td>TestBackupMetadata</td>
|
<td>TestBackupMetadata</td>
|
||||||
<td class="text-center">22</td>
|
<td class="text-center">22</td>
|
||||||
<td class="text-center">21</td>
|
<td class="text-center">22</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">0</td>
|
<td class="text-center">0</td>
|
||||||
<td class="text-center">
|
<td class="text-center">
|
||||||
|
@ -248,31 +248,11 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<tr id="ft2.1" class="none bg-danger">
|
<tr id='pt2.1' class='hiddenRow bg-success'>
|
||||||
<td>
|
<td>
|
||||||
<div class='testcase'>TestBackupMetadata - test_backup_all</div>
|
<div class='testcase'>TestBackupMetadata - test_backup_all</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_ft2.1')">FAIL</a>
|
|
||||||
</div>
|
|
||||||
<!--css div popup start-->
|
|
||||||
<div id="div_ft2.1" class="popup_window test_output" style="display:block;">
|
|
||||||
<div class='close_button pull-right'>
|
|
||||||
<button type="button" class="close" aria-label="Close" onfocus="this.blur();"
|
|
||||||
onclick="document.getElementById('div_ft2.1').style.display='none'"><span
|
|
||||||
aria-hidden="true">×</span></button>
|
|
||||||
</div>
|
|
||||||
<div class="text-left pull-left">
|
|
||||||
<pre class="text-left">Traceback (most recent call last):
|
|
||||||
File "/home/ozzie/Development/calibre-web-test/test/test_backup_metadata.py", line 49, in test_backup_all
|
|
||||||
self.assertEqual(1, len(res))
|
|
||||||
AssertionError: 1 != 0</pre>
|
|
||||||
</div>
|
|
||||||
<div class="clearfix"></div>
|
|
||||||
</div>
|
|
||||||
<!--css div popup end-->
|
|
||||||
</td>
|
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
|
|
||||||
|
@ -1996,12 +1976,12 @@ IndexError: list index out of range</pre>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<tr id="su" class="passClass">
|
<tr id="su" class="errorClass">
|
||||||
<td>TestEditBooksOnGdrive</td>
|
<td>TestEditBooksOnGdrive</td>
|
||||||
<td class="text-center">18</td>
|
<td class="text-center">18</td>
|
||||||
<td class="text-center">18</td>
|
<td class="text-center">17</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">0</td>
|
<td class="text-center">0</td>
|
||||||
<td class="text-center">
|
<td class="text-center">
|
||||||
<a onclick="showClassDetail('c18', 18)">Detail</a>
|
<a onclick="showClassDetail('c18', 18)">Detail</a>
|
||||||
|
@ -2145,11 +2125,31 @@ IndexError: list index out of range</pre>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<tr id='pt18.16' class='hiddenRow bg-success'>
|
<tr id="et18.16" class="none bg-info">
|
||||||
<td>
|
<td>
|
||||||
<div class='testcase'>TestEditBooksOnGdrive - test_edit_title</div>
|
<div class='testcase'>TestEditBooksOnGdrive - test_edit_title</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_et18.16')">ERROR</a>
|
||||||
|
</div>
|
||||||
|
<!--css div popup start-->
|
||||||
|
<div id="div_et18.16" class="popup_window test_output" style="display:block;">
|
||||||
|
<div class='close_button pull-right'>
|
||||||
|
<button type="button" class="close" aria-label="Close" onfocus="this.blur();"
|
||||||
|
onclick="document.getElementById('div_et18.16').style.display='none'"><span
|
||||||
|
aria-hidden="true">×</span></button>
|
||||||
|
</div>
|
||||||
|
<div class="text-left pull-left">
|
||||||
|
<pre class="text-left">Traceback (most recent call last):
|
||||||
|
File "/home/ozzie/Development/calibre-web-test/test/test_edit_ebooks_gdrive.py", line 173, in test_edit_title
|
||||||
|
self.assertEqual('Unknown', values['title'])
|
||||||
|
KeyError: 'title'</pre>
|
||||||
|
</div>
|
||||||
|
<div class="clearfix"></div>
|
||||||
|
</div>
|
||||||
|
<!--css div popup end-->
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
|
|
||||||
|
@ -3623,11 +3623,11 @@ IndexError: list index out of range</pre>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<tr id="su" class="passClass">
|
<tr id="su" class="failClass">
|
||||||
<td>TestReader</td>
|
<td>TestReader</td>
|
||||||
<td class="text-center">6</td>
|
<td class="text-center">6</td>
|
||||||
<td class="text-center">6</td>
|
<td class="text-center">5</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">0</td>
|
<td class="text-center">0</td>
|
||||||
<td class="text-center">
|
<td class="text-center">
|
||||||
|
@ -3673,11 +3673,37 @@ IndexError: list index out of range</pre>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<tr id='pt39.5' class='hiddenRow bg-success'>
|
<tr id="ft39.5" class="none bg-danger">
|
||||||
<td>
|
<td>
|
||||||
<div class='testcase'>TestReader - test_sound_listener</div>
|
<div class='testcase'>TestReader - test_sound_listener</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_ft39.5')">FAIL</a>
|
||||||
|
</div>
|
||||||
|
<!--css div popup start-->
|
||||||
|
<div id="div_ft39.5" class="popup_window test_output" style="display:block;">
|
||||||
|
<div class='close_button pull-right'>
|
||||||
|
<button type="button" class="close" aria-label="Close" onfocus="this.blur();"
|
||||||
|
onclick="document.getElementById('div_ft39.5').style.display='none'"><span
|
||||||
|
aria-hidden="true">×</span></button>
|
||||||
|
</div>
|
||||||
|
<div class="text-left pull-left">
|
||||||
|
<pre class="text-left">Traceback (most recent call last):
|
||||||
|
File "/home/ozzie/Development/calibre-web-test/test/test_reader.py", line 331, in test_sound_listener
|
||||||
|
self.sound_test('music.flac', 'Unknown - music', '0:02')
|
||||||
|
File "/home/ozzie/Development/calibre-web-test/test/test_reader.py", line 320, in sound_test
|
||||||
|
self.assertEqual(duration, duration_item.text)
|
||||||
|
AssertionError: '0:02' != '0:01'
|
||||||
|
- 0:02
|
||||||
|
? ^
|
||||||
|
+ 0:01
|
||||||
|
? ^</pre>
|
||||||
|
</div>
|
||||||
|
<div class="clearfix"></div>
|
||||||
|
</div>
|
||||||
|
<!--css div popup end-->
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
|
|
||||||
|
@ -4139,9 +4165,9 @@ IndexError: list index out of range</pre>
|
||||||
</div>
|
</div>
|
||||||
<div class="text-left pull-left">
|
<div class="text-left pull-left">
|
||||||
<pre class="text-left">Traceback (most recent call last):
|
<pre class="text-left">Traceback (most recent call last):
|
||||||
File "/home/ozzie/Development/calibre-web-test/test/test_thumbnails.py", line 311, in test_sideloaded_book
|
File "/home/ozzie/Development/calibre-web-test/test/test_thumbnails.py", line 321, in test_sideloaded_book
|
||||||
self.assertAlmostEqual(diff(BytesIO(list_cover), BytesIO(old_list_cover), delete_diff_file=True), 0.0,
|
self.assertGreaterEqual(diff(BytesIO(list_cover), BytesIO(new_list_cover), delete_diff_file=True), 0.04)
|
||||||
AssertionError: 0.004399004046062869 != 0.0 within 0.0001 delta (0.004399004046062869 difference)</pre>
|
AssertionError: 0.029247650171179584 not greater than or equal to 0.04</pre>
|
||||||
</div>
|
</div>
|
||||||
<div class="clearfix"></div>
|
<div class="clearfix"></div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -5221,9 +5247,9 @@ AssertionError: 0.004399004046062869 != 0.0 within 0.0001 delta (0.0043990040460
|
||||||
<tr id='total_row' class="text-center bg-grey">
|
<tr id='total_row' class="text-center bg-grey">
|
||||||
<td>Total</td>
|
<td>Total</td>
|
||||||
<td>462</td>
|
<td>462</td>
|
||||||
<td>450</td>
|
<td>449</td>
|
||||||
|
<td>2</td>
|
||||||
<td>2</td>
|
<td>2</td>
|
||||||
<td>1</td>
|
|
||||||
<td>9</td>
|
<td>9</td>
|
||||||
<td> </td>
|
<td> </td>
|
||||||
</tr>
|
</tr>
|
||||||
|
@ -5714,7 +5740,7 @@ AssertionError: 0.004399004046062869 != 0.0 within 0.0001 delta (0.0043990040460
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
drawCircle(450, 2, 1, 9);
|
drawCircle(449, 2, 2, 9);
|
||||||
showCase(5);
|
showCase(5);
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user