diff --git a/cps/constants.py b/cps/constants.py index e5836433..13146845 100644 --- a/cps/constants.py +++ b/cps/constants.py @@ -175,7 +175,7 @@ BookMeta = namedtuple('BookMeta', 'file_path, extension, title, author, cover, d 'series_id, languages, publisher, pubdate, identifiers') # python build process likes to have x.y.zbw -> b for beta and w a counting number -STABLE_VERSION = {'version': '0.6.22b'} +STABLE_VERSION = {'version': '0.6.23b'} NIGHTLY_VERSION = dict() NIGHTLY_VERSION[0] = '$Format:%H$' diff --git a/cps/iso_language_names.py b/cps/iso_language_names.py index 930d2b5d..4b9a8ef9 100644 --- a/cps/iso_language_names.py +++ b/cps/iso_language_names.py @@ -10973,4 +10973,4 @@ LANGUAGE_NAMES = { "zxx": "No linguistic content", "zza": "Zaza" } -} +} \ No newline at end of file diff --git a/cps/metadata_provider/lubimyczytac.py b/cps/metadata_provider/lubimyczytac.py index 0f3081ec..02a96992 100644 --- a/cps/metadata_provider/lubimyczytac.py +++ b/cps/metadata_provider/lubimyczytac.py @@ -285,11 +285,13 @@ class LubimyCzytacParser: def _parse_tags(self) -> List[str]: tags = self._parse_xpath_node(xpath=LubimyCzytac.TAGS, take_first=False) - return [ - strip_accents(w.replace(", itd.", " itd.")) - for w in tags - if isinstance(w, str) - ] + if tags: + return [ + strip_accents(w.replace(", itd.", " itd.")) + for w in tags + if isinstance(w, str) + ] + return None def _parse_from_summary(self, attribute_name: str) -> Optional[str]: value = None diff --git a/cps/static/js/caliBlur.js b/cps/static/js/caliBlur.js index 89d47228..48bb26e6 100755 --- a/cps/static/js/caliBlur.js +++ b/cps/static/js/caliBlur.js @@ -125,6 +125,7 @@ if ($("body.book").length > 0) { $("#sendbtn").parent().addClass("sendBtn"); $("[id*=btnGroupDrop]").parent().addClass("downloadBtn"); $("read-in-browser").parent().addClass("readBtn"); + $("listen-in-browser").parent().addClass("listenBtn"); $(".downloadBtn button:first").addClass("download-text"); // Move all options in book details page to the same group @@ -138,21 +139,33 @@ if ($("body.book").length > 0) { .prependTo('[aria-label^="Download, send"]'); $("#have_read_cb") .after(''); + $("#have_read_form").next("p").remove(); + $("#have_read_form").next("p").remove(); $("#archived_cb") .after(''); $("#shelf-actions").prependTo('[aria-label^="Download, send"]'); + $(".more-stuff .col-sm-12 #back").hide() +/* .html("« Previous") + .addClass("page-link") + .removeClass("btn btn-default") + .prependTo('[aria-label^="Download, send"]');*/ // Move dropdown lists higher in dom, replace bootstrap toggle with own toggle. $('ul[aria-labelledby="read-in-browser"]').insertBefore(".blur-wrapper").addClass("readinbrowser-drop"); + $('ul[aria-labelledby="listen-in-browser"]').insertBefore(".blur-wrapper").addClass("readinbrowser-drop"); $('ul[aria-labelledby="send-to-kereader"]').insertBefore(".blur-wrapper").addClass("sendtoereader-drop"); $(".leramslist").insertBefore(".blur-wrapper"); $('ul[aria-labelledby="btnGroupDrop1"]').insertBefore(".blur-wrapper").addClass("leramslist"); $("#add-to-shelves").insertBefore(".blur-wrapper"); - + $("#back") $("#read-in-browser").click(function () { $(".readinbrowser-drop").toggle(); }); + $("#listen-in-browser").click(function () { + $(".readinbrowser-drop").toggle(); + }); + $(".downloadBtn").click(function () { $(".leramslist").toggle(); @@ -626,6 +639,7 @@ if ($("body.epub").length === 0) { } $("#read-in-browser a").attr("target", ""); +$("#listen-in-browser a").attr("target", ""); if ($(".edit-shelf-btn").length > 1) { $(".edit-shelf-btn:first").remove(); diff --git a/cps/translations/cs/LC_MESSAGES/messages.mo b/cps/translations/cs/LC_MESSAGES/messages.mo index 5ef24c84..86fa642a 100644 Binary files a/cps/translations/cs/LC_MESSAGES/messages.mo and b/cps/translations/cs/LC_MESSAGES/messages.mo differ diff --git a/cps/translations/cs/LC_MESSAGES/messages.po b/cps/translations/cs/LC_MESSAGES/messages.po index f62111a3..e88c4b70 100644 --- a/cps/translations/cs/LC_MESSAGES/messages.po +++ b/cps/translations/cs/LC_MESSAGES/messages.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Calibre-Web\n" "Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n" -"POT-Creation-Date: 2024-06-09 12:26+0200\n" +"POT-Creation-Date: 2024-06-30 12:19+0200\n" "PO-Revision-Date: 2020-06-09 21:11+0100\n" "Last-Translator: Lukas Heroudek \n" "Language: cs_CZ\n" @@ -15,7 +15,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.11.0\n" +"Generated-By: Babel 2.13.1\n" #: cps/about.py:84 msgid "Statistics" @@ -44,9 +44,9 @@ msgstr "Neznámý příkaz" msgid "Success! Books queued for Metadata Backup, please check Tasks for result" msgstr "Kniha byla úspěšně zařazena do fronty pro odeslání na %(eReadermail)s" -#: cps/admin.py:207 cps/editbooks.py:591 cps/editbooks.py:593 -#: cps/editbooks.py:631 cps/editbooks.py:648 cps/editbooks.py:1280 -#: cps/updater.py:613 cps/uploader.py:93 cps/uploader.py:102 +#: cps/admin.py:207 cps/editbooks.py:573 cps/editbooks.py:575 +#: cps/editbooks.py:615 cps/editbooks.py:658 cps/editbooks.py:1280 +#: cps/updater.py:615 cps/uploader.py:93 cps/uploader.py:102 msgid "Unknown" msgstr "Neznámý" @@ -67,12 +67,12 @@ msgstr "Konfigurace uživatelského rozhraní" msgid "Edit Users" msgstr "Uživatel admin" -#: cps/admin.py:368 cps/opds.py:541 cps/templates/grid.html:14 +#: cps/admin.py:368 cps/opds.py:542 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "Vše" -#: cps/admin.py:395 cps/admin.py:1417 +#: cps/admin.py:395 cps/admin.py:1414 msgid "User not found" msgstr "Uživatel nenalezen" @@ -89,7 +89,7 @@ msgstr "Zobrazit vše" msgid "Malformed request" msgstr "" -#: cps/admin.py:471 cps/admin.py:2048 +#: cps/admin.py:471 cps/admin.py:2046 msgid "Guest Name can't be changed" msgstr "" @@ -97,7 +97,7 @@ msgstr "" msgid "Guest can't have this role" msgstr "" -#: cps/admin.py:495 cps/admin.py:2002 +#: cps/admin.py:495 cps/admin.py:2000 msgid "No admin user remaining, can't remove admin role" msgstr "Nezbývá žádný správce, nelze odebrat roli správce" @@ -129,7 +129,7 @@ msgstr "" msgid "No Valid Book Language Given" msgstr "" -#: cps/admin.py:535 cps/editbooks.py:457 +#: cps/admin.py:535 cps/editbooks.py:440 msgid "Parameter not found" msgstr "" @@ -141,7 +141,7 @@ msgstr "" msgid "Invalid Restricted Column" msgstr "" -#: cps/admin.py:598 cps/admin.py:1873 +#: cps/admin.py:598 cps/admin.py:1871 msgid "Calibre-Web configuration updated" msgstr "Konfigurace Calibre-Web aktualizována" @@ -225,298 +225,298 @@ msgstr "" msgid "Invalid Action" msgstr "" -#: cps/admin.py:1123 +#: cps/admin.py:1120 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "client_secrets.json není nakonfigurováno pro webové aplikace" -#: cps/admin.py:1168 +#: cps/admin.py:1165 msgid "Logfile Location is not Valid, Please Enter Correct Path" msgstr "Umístění zápisového souboru není platné. Určete prosím platnou polohu" -#: cps/admin.py:1174 +#: cps/admin.py:1171 msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgstr "Umístění zápisového souboru pro přístup není platné. Určete prosím platnou polohu" -#: cps/admin.py:1208 +#: cps/admin.py:1205 msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgstr "Prosím zadejte LDAP poskytovatele, port, DN a Identifikátor objektu uživatele" -#: cps/admin.py:1214 +#: cps/admin.py:1211 #, fuzzy msgid "Please Enter a LDAP Service Account and Password" msgstr "Zadejte platné uživatelské jméno pro obnovení hesla" -#: cps/admin.py:1217 +#: cps/admin.py:1214 msgid "Please Enter a LDAP Service Account" msgstr "" -#: cps/admin.py:1222 +#: cps/admin.py:1219 #, python-format msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgstr "Filtr objektů skupiny LDAP musí mít jeden “%s” formátový identifikátor" -#: cps/admin.py:1224 +#: cps/admin.py:1221 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "Filtr objektů skupiny LDAP má nesrovnatelnou závorku" -#: cps/admin.py:1228 +#: cps/admin.py:1225 #, python-format msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgstr "Filtr uživatelských objektů LDAP musí mít jeden “%s” formátový identifikátor" -#: cps/admin.py:1230 +#: cps/admin.py:1227 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "Filtr uživatelských objektů LDAP má nesrovnatelnou závorku" -#: cps/admin.py:1237 +#: cps/admin.py:1234 #, python-format msgid "LDAP Member User Filter needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1239 +#: cps/admin.py:1236 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1246 +#: cps/admin.py:1243 msgid "LDAP CACertificate, Certificate or Key Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1277 cps/templates/admin.html:53 +#: cps/admin.py:1274 cps/templates/admin.html:53 msgid "Add New User" msgstr "Přidat nového uživatele" -#: cps/admin.py:1286 cps/templates/admin.html:100 +#: cps/admin.py:1283 cps/templates/admin.html:100 msgid "Edit Email Server Settings" msgstr "Změnit SMTP nastavení" -#: cps/admin.py:1305 +#: cps/admin.py:1302 msgid "Success! Gmail Account Verified." msgstr "" -#: cps/admin.py:1325 cps/admin.py:1328 cps/admin.py:1713 cps/admin.py:1857 -#: cps/admin.py:1955 cps/admin.py:2076 cps/editbooks.py:243 -#: cps/editbooks.py:319 cps/editbooks.py:1242 cps/shelf.py:90 cps/shelf.py:150 +#: cps/admin.py:1322 cps/admin.py:1325 cps/admin.py:1710 cps/admin.py:1855 +#: cps/admin.py:1953 cps/admin.py:2074 cps/editbooks.py:226 +#: cps/editbooks.py:303 cps/editbooks.py:1242 cps/shelf.py:90 cps/shelf.py:150 #: cps/shelf.py:193 cps/shelf.py:243 cps/shelf.py:280 cps/shelf.py:354 -#: cps/shelf.py:468 cps/tasks/convert.py:150 cps/web.py:1520 +#: cps/shelf.py:468 cps/tasks/convert.py:153 cps/web.py:1520 #, python-format msgid "Oops! Database Error: %(error)s." msgstr "Chyba databáze: %(error)s." -#: cps/admin.py:1335 +#: cps/admin.py:1332 #, python-format msgid "Test e-mail queued for sending to %(email)s, please check Tasks for result" msgstr "" -#: cps/admin.py:1338 +#: cps/admin.py:1335 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "Při odesílání zkušebního e-mailu došlo k chybě: %(res)s" -#: cps/admin.py:1340 +#: cps/admin.py:1337 msgid "Please configure your e-mail address first..." msgstr "Prvně nastavte svou e-mailovou adresu..." -#: cps/admin.py:1342 +#: cps/admin.py:1339 msgid "Email Server Settings updated" msgstr "Nastavení e-mailového serveru aktualizováno" -#: cps/admin.py:1365 cps/templates/admin.html:195 +#: cps/admin.py:1362 cps/templates/admin.html:195 msgid "Edit Scheduled Tasks Settings" msgstr "" -#: cps/admin.py:1377 +#: cps/admin.py:1374 msgid "Invalid start time for task specified" msgstr "" -#: cps/admin.py:1382 +#: cps/admin.py:1379 msgid "Invalid duration for task specified" msgstr "" -#: cps/admin.py:1392 +#: cps/admin.py:1389 msgid "Scheduled tasks settings updated" msgstr "" -#: cps/admin.py:1402 cps/admin.py:1451 cps/admin.py:2072 cps/web.py:1316 +#: cps/admin.py:1399 cps/admin.py:1448 cps/admin.py:2070 cps/web.py:1316 msgid "Oops! An unknown error occurred. Please try again later." msgstr "Neznámá chyba. Opakujte prosím později." -#: cps/admin.py:1406 +#: cps/admin.py:1403 msgid "Settings DB is not Writeable" msgstr "" -#: cps/admin.py:1436 cps/admin.py:2064 +#: cps/admin.py:1433 cps/admin.py:2062 #, python-format msgid "Edit User %(nick)s" msgstr "Upravit uživatele %(nick)s" -#: cps/admin.py:1448 +#: cps/admin.py:1445 #, fuzzy, python-format msgid "Success! Password for user %(user)s reset" msgstr "Heslo pro uživatele %(user)s resetováno" -#: cps/admin.py:1454 +#: cps/admin.py:1451 #, fuzzy msgid "Oops! Please configure the SMTP mail settings." msgstr "Nejprve nakonfigurujte nastavení pošty SMTP..." -#: cps/admin.py:1465 +#: cps/admin.py:1462 msgid "Logfile viewer" msgstr "Prohlížeč log souborů" -#: cps/admin.py:1531 +#: cps/admin.py:1528 msgid "Requesting update package" msgstr "Požadování balíčku aktualizace" -#: cps/admin.py:1532 +#: cps/admin.py:1529 msgid "Downloading update package" msgstr "Stahování balíčku aktualizace" -#: cps/admin.py:1533 +#: cps/admin.py:1530 msgid "Unzipping update package" msgstr "Rozbalování balíčku aktualizace" -#: cps/admin.py:1534 +#: cps/admin.py:1531 msgid "Replacing files" msgstr "Nahrazování souborů" -#: cps/admin.py:1535 +#: cps/admin.py:1532 msgid "Database connections are closed" msgstr "Databázová připojení jsou uzavřena" -#: cps/admin.py:1536 +#: cps/admin.py:1533 msgid "Stopping server" msgstr "Zastavuji server" -#: cps/admin.py:1537 +#: cps/admin.py:1534 msgid "Update finished, please press okay and reload page" msgstr "Aktualizace dokončena, klepněte na tlačítko OK a znovu načtěte stránku" -#: cps/admin.py:1538 cps/admin.py:1539 cps/admin.py:1540 cps/admin.py:1541 -#: cps/admin.py:1542 cps/admin.py:1543 +#: cps/admin.py:1535 cps/admin.py:1536 cps/admin.py:1537 cps/admin.py:1538 +#: cps/admin.py:1539 cps/admin.py:1540 msgid "Update failed:" msgstr "Aktualizace selhala:" -#: cps/admin.py:1538 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 +#: cps/admin.py:1535 cps/updater.py:391 cps/updater.py:626 cps/updater.py:628 msgid "HTTP Error" msgstr "HTTP chyba" -#: cps/admin.py:1539 cps/updater.py:391 cps/updater.py:628 +#: cps/admin.py:1536 cps/updater.py:393 cps/updater.py:630 msgid "Connection error" msgstr "Chyba připojení" -#: cps/admin.py:1540 cps/updater.py:393 cps/updater.py:630 +#: cps/admin.py:1537 cps/updater.py:395 cps/updater.py:632 msgid "Timeout while establishing connection" msgstr "Vypršel časový limit při navazování spojení" -#: cps/admin.py:1541 cps/updater.py:395 cps/updater.py:632 +#: cps/admin.py:1538 cps/updater.py:397 cps/updater.py:634 msgid "General error" msgstr "Všeobecná chyba" -#: cps/admin.py:1542 +#: cps/admin.py:1539 #, fuzzy msgid "Update file could not be saved in temp dir" msgstr "Aktualizační soubor nemohl být uložen do Temp Dir" -#: cps/admin.py:1543 +#: cps/admin.py:1540 msgid "Files could not be replaced during update" msgstr "" -#: cps/admin.py:1567 +#: cps/admin.py:1564 #, fuzzy msgid "Failed to extract at least One LDAP User" msgstr "Nepodařilo se vytvořit nejméně jednoho uživatele LDAP" -#: cps/admin.py:1612 +#: cps/admin.py:1609 msgid "Failed to Create at Least One LDAP User" msgstr "Nepodařilo se vytvořit nejméně jednoho uživatele LDAP" -#: cps/admin.py:1625 +#: cps/admin.py:1622 #, python-format msgid "Error: %(ldaperror)s" msgstr "Chyba: %(ldaperror)s" -#: cps/admin.py:1629 +#: cps/admin.py:1626 msgid "Error: No user returned in response of LDAP server" msgstr "Chyba: Žádná reakce od uživatele LDAP serveru" -#: cps/admin.py:1665 +#: cps/admin.py:1662 msgid "At Least One LDAP User Not Found in Database" msgstr "Nejméně jeden uživatel LDAP nenalezen v databázi" -#: cps/admin.py:1667 +#: cps/admin.py:1664 msgid "{} User Successfully Imported" msgstr "" -#: cps/admin.py:1725 +#: cps/admin.py:1722 msgid "DB Location is not Valid, Please Enter Correct Path" msgstr "Umístění databáze není platné, opravte prosím cestu" -#: cps/admin.py:1745 +#: cps/admin.py:1742 msgid "DB is not Writeable" msgstr "Databáze není zapisovatelná" -#: cps/admin.py:1761 +#: cps/admin.py:1758 msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgstr "Umístění souboru klíčů není platné, zadejte prosím správnou cestu" -#: cps/admin.py:1765 +#: cps/admin.py:1762 msgid "Certfile Location is not Valid, Please Enter Correct Path" msgstr "Umístění certifikátu není platné, zadejte prosím správnou cestu" -#: cps/admin.py:1842 +#: cps/admin.py:1840 msgid "Password length has to be between 1 and 40" msgstr "" -#: cps/admin.py:1896 +#: cps/admin.py:1894 #, fuzzy msgid "Database Settings updated" msgstr "Nastavení e-mailového serveru aktualizováno" -#: cps/admin.py:1904 +#: cps/admin.py:1902 #, fuzzy msgid "Database Configuration" msgstr "Konfigurace funkcí" -#: cps/admin.py:1919 cps/web.py:1290 +#: cps/admin.py:1917 cps/web.py:1290 msgid "Oops! Please complete all fields." msgstr "Vyplňte všechna pole!" -#: cps/admin.py:1928 +#: cps/admin.py:1926 msgid "E-mail is not from valid domain" msgstr "E-mail není z platné domény" -#: cps/admin.py:1934 +#: cps/admin.py:1932 msgid "Add new user" msgstr "Přidat nového uživatele" -#: cps/admin.py:1945 +#: cps/admin.py:1943 #, python-format msgid "User '%(user)s' created" msgstr "Uživatel '%(user)s' vytvořen" -#: cps/admin.py:1951 +#: cps/admin.py:1949 #, fuzzy msgid "Oops! An account already exists for this Email. or name." msgstr "Byl nalezen existující účet pro tuto e-mailovou adresu nebo přezdívku." -#: cps/admin.py:1981 +#: cps/admin.py:1979 #, python-format msgid "User '%(nick)s' deleted" msgstr "Uživatel '%(nick)s' smazán" -#: cps/admin.py:1984 +#: cps/admin.py:1982 msgid "Can't delete Guest User" msgstr "" -#: cps/admin.py:1987 +#: cps/admin.py:1985 msgid "No admin user remaining, can't delete user" msgstr "Nezbývá žádný správce, nemůžete jej odstranit" -#: cps/admin.py:2042 cps/web.py:1469 +#: cps/admin.py:2040 cps/web.py:1469 msgid "Email can't be empty and has to be a valid Email" msgstr "" -#: cps/admin.py:2068 +#: cps/admin.py:2066 #, python-format msgid "User '%(nick)s' updated" msgstr "Uživatel '%(nick)s' aktualizován" @@ -529,12 +529,12 @@ msgstr "není nainstalováno" msgid "Execution permissions missing" msgstr "Chybí povolení k exekuci" -#: cps/db.py:756 cps/search.py:137 cps/web.py:747 +#: cps/db.py:768 cps/search.py:137 cps/web.py:747 #, fuzzy, python-format msgid "Custom Column No.%(column)d does not exist in calibre database" msgstr "Vlastní sloupec %(column)d neexistuje v databázi" -#: cps/db.py:996 cps/templates/config_edit.html:203 +#: cps/db.py:1008 cps/templates/config_edit.html:203 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 #: cps/web.py:562 cps/web.py:596 cps/web.py:641 cps/web.py:681 cps/web.py:708 #: cps/web.py:989 cps/web.py:1019 cps/web.py:1064 cps/web.py:1092 @@ -542,100 +542,105 @@ msgstr "Vlastní sloupec %(column)d neexistuje v databázi" msgid "None" msgstr "Žádné" -#: cps/editbooks.py:124 cps/editbooks.py:912 cps/web.py:529 cps/web.py:1561 -#: cps/web.py:1605 cps/web.py:1650 +#: cps/editbooks.py:108 cps/editbooks.py:929 cps/web.py:529 cps/web.py:1561 +#: cps/web.py:1606 cps/web.py:1651 msgid "Oops! Selected book is unavailable. File does not exist or is not accessible" msgstr "Jejda! Vybraná kniha není k dispozici. Soubor neexistuje nebo není přístupný" -#: cps/editbooks.py:168 cps/editbooks.py:1263 +#: cps/editbooks.py:151 cps/editbooks.py:1263 msgid "User has no rights to upload cover" msgstr "" -#: cps/editbooks.py:188 cps/editbooks.py:733 +#: cps/editbooks.py:171 cps/editbooks.py:744 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "" -#: cps/editbooks.py:230 +#: cps/editbooks.py:213 msgid "Metadata successfully updated" msgstr "Metadata úspěšně aktualizována" -#: cps/editbooks.py:248 +#: cps/editbooks.py:231 msgid "Error editing book: {}" msgstr "" -#: cps/editbooks.py:305 +#: cps/editbooks.py:289 #, python-format msgid "File %(file)s uploaded" msgstr "Soubor %(file)s nahrán" -#: cps/editbooks.py:333 +#: cps/editbooks.py:317 msgid "Source or destination format for conversion missing" msgstr "Chybí zdrojový nebo cílový formát pro převod" -#: cps/editbooks.py:341 +#: cps/editbooks.py:325 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "Kniha byla úspěšně zařazena do fronty pro převod do %(book_format)s" -#: cps/editbooks.py:345 +#: cps/editbooks.py:329 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "Při převodu této knihy došlo k chybě: %(res)s" -#: cps/editbooks.py:652 +#: cps/editbooks.py:662 msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgstr "Nahraná kniha pravděpodobně existuje v knihovně, zvažte prosím změnu před nahráním nové: " -#: cps/editbooks.py:707 cps/editbooks.py:1043 +#: cps/editbooks.py:718 cps/editbooks.py:1049 #, fuzzy, python-format msgid "'%(langname)s' is not a valid language" msgstr "%(langname)s není platným jazykem" -#: cps/editbooks.py:745 cps/editbooks.py:1203 +#: cps/editbooks.py:756 cps/editbooks.py:1192 +#, fuzzy +msgid "File type isn't allowed to be uploaded to this server" +msgstr "Soubor s příponou '%(ext)s' nelze odeslat na tento server" + +#: cps/editbooks.py:762 cps/editbooks.py:1202 #, python-format msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgstr "Soubor s příponou '%(ext)s' nelze odeslat na tento server" -#: cps/editbooks.py:749 cps/editbooks.py:1207 +#: cps/editbooks.py:766 cps/editbooks.py:1206 msgid "File to be uploaded must have an extension" msgstr "Soubor, který má být odeslán musí mít příponu" -#: cps/editbooks.py:757 +#: cps/editbooks.py:774 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "Soubor %(filename)s nemohl být uložen do dočasného adresáře" -#: cps/editbooks.py:777 +#: cps/editbooks.py:794 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "Nepodařilo se přesunout soubor obalu %(file)s: %(error)s" -#: cps/editbooks.py:834 cps/editbooks.py:836 +#: cps/editbooks.py:851 cps/editbooks.py:853 msgid "Book Format Successfully Deleted" msgstr "Formát knihy úspěšně smazán" -#: cps/editbooks.py:843 cps/editbooks.py:845 +#: cps/editbooks.py:860 cps/editbooks.py:862 msgid "Book Successfully Deleted" msgstr "Kniha úspěšně smazána" -#: cps/editbooks.py:897 +#: cps/editbooks.py:914 msgid "You are missing permissions to delete books" msgstr "" -#: cps/editbooks.py:947 +#: cps/editbooks.py:964 msgid "edit metadata" msgstr "upravit metadata" -#: cps/editbooks.py:996 +#: cps/editbooks.py:1013 #, python-format msgid "%(seriesindex)s is not a valid number, skipping" msgstr "" -#: cps/editbooks.py:1198 +#: cps/editbooks.py:1197 msgid "User has no rights to upload additional file formats" msgstr "" -#: cps/editbooks.py:1219 +#: cps/editbooks.py:1218 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "Nepodařilo se vytvořit cestu %(path)s (oprávnění odepřeno)." @@ -654,7 +659,7 @@ msgstr "Formát souboru %(ext)s přidán do %(book)s" msgid "Google Drive setup not completed, try to deactivate and activate Google Drive again" msgstr "Google Drive nastavení nebylo dokončeno, zkuste znovu deaktivovat a aktivovat Google Drive" -#: cps/gdrive.py:95 +#: cps/gdrive.py:96 msgid "Callback domain is not verified, please follow steps to verify domain in google developer console" msgstr "Doména zpětného volání není ověřena, postupujte podle pokynů k ověření domény v konzole pro vývojáře google" @@ -663,7 +668,7 @@ msgstr "Doména zpětného volání není ověřena, postupujte podle pokynů k msgid "%(format)s format not found for book id: %(book)d" msgstr "%(format)s formát pro knihu: %(book)d nenalezen" -#: cps/helper.py:93 cps/tasks/convert.py:86 +#: cps/helper.py:93 cps/tasks/convert.py:89 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "%(format)s nenalezen na Google Drive: %(fn)s" @@ -740,125 +745,121 @@ msgstr "Mazání knihy selhalo %(id)s failed: %(message)s" msgid "Deleting book %(id)s from database only, book path in database not valid: %(path)s" msgstr "Mazání knihy %(id)s, cesta ke knize není platná %(path)s" -#: cps/helper.py:452 +#: cps/helper.py:465 #, fuzzy, python-format msgid "Rename author 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" -#: cps/helper.py:524 cps/helper.py:533 +#: cps/helper.py:536 cps/helper.py:545 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "Soubor %(file)s nenalezen na Google Drive" -#: cps/helper.py:567 +#: cps/helper.py:587 #, python-format 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" -#: cps/helper.py:587 -msgid "Error in rename file in path: {}" -msgstr "" - -#: cps/helper.py:605 +#: cps/helper.py:625 #, python-format msgid "Book path %(path)s not found on Google Drive" msgstr "Cesta ke knize %(path)s nebyla nalezena na Google Drive" -#: cps/helper.py:670 +#: cps/helper.py:685 msgid "Found an existing account for this Email address" msgstr "" -#: cps/helper.py:678 +#: cps/helper.py:693 msgid "This username is already taken" msgstr "Zadané uživatelské jméno je již použito" -#: cps/helper.py:690 +#: cps/helper.py:705 msgid "Invalid Email address format" msgstr "" -#: cps/helper.py:710 +#: cps/helper.py:726 msgid "Password doesn't comply with password validation rules" msgstr "" -#: cps/helper.py:859 +#: cps/helper.py:873 msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "" -#: cps/helper.py:869 +#: cps/helper.py:883 msgid "Error Downloading Cover" msgstr "Chyba stahování obalu" -#: cps/helper.py:872 +#: cps/helper.py:886 msgid "Cover Format Error" msgstr "Chyba formátu obalu" -#: cps/helper.py:875 +#: cps/helper.py:889 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "" -#: cps/helper.py:885 +#: cps/helper.py:899 msgid "Failed to create path for cover" msgstr "Vytvoření cesty obalu selhalo" -#: cps/helper.py:901 +#: cps/helper.py:915 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "Soubor obalu není platný, nebo nelze uložit" -#: cps/helper.py:912 +#: cps/helper.py:926 msgid "Only jpg/jpeg/png/webp/bmp files are supported as coverfile" msgstr "" -#: cps/helper.py:924 +#: cps/helper.py:938 msgid "Invalid cover file content" msgstr "" -#: cps/helper.py:928 +#: cps/helper.py:942 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "Pouze jpg/jpeg jsou podporované soubory pro obal" -#: cps/helper.py:999 cps/helper.py:1156 +#: cps/helper.py:1014 cps/helper.py:1171 #, fuzzy msgid "Cover" msgstr "Objevte" -#: cps/helper.py:1016 +#: cps/helper.py:1031 msgid "UnRar binary file not found" msgstr "UnRar binární soubor nenalezen" -#: cps/helper.py:1027 +#: cps/helper.py:1042 #, fuzzy msgid "Error executing UnRar" msgstr "Chyba provádění UnRar" -#: cps/helper.py:1035 +#: cps/helper.py:1050 msgid "Could not find the specified directory" msgstr "" -#: cps/helper.py:1038 +#: cps/helper.py:1053 msgid "Please specify a directory, not a file" msgstr "" -#: cps/helper.py:1052 +#: cps/helper.py:1067 #, fuzzy msgid "Calibre binaries not viable" msgstr "Databáze není zapisovatelná" -#: cps/helper.py:1061 +#: cps/helper.py:1076 #, python-format msgid "Missing calibre binaries: %(missing)s" msgstr "" -#: cps/helper.py:1063 +#: cps/helper.py:1078 #, fuzzy, python-format msgid "Missing executable permissions: %(missing)s" msgstr "Chybí povolení k exekuci" -#: cps/helper.py:1068 +#: cps/helper.py:1083 #, fuzzy msgid "Error executing Calibre" msgstr "Chyba provádění UnRar" -#: cps/helper.py:1158 cps/templates/admin.html:216 +#: cps/helper.py:1173 cps/templates/admin.html:216 msgid "Queue all books for metadata backup" msgstr "" @@ -905,35 +906,35 @@ msgstr "Odpojení od %(oauth)s selhalo" msgid "Not Linked to %(oauth)s" msgstr "" -#: cps/oauth_bb.py:261 +#: cps/oauth_bb.py:262 msgid "Failed to log in with GitHub." msgstr "Přihlášení pomocí GitHub selhalo." -#: cps/oauth_bb.py:267 +#: cps/oauth_bb.py:268 msgid "Failed to fetch user info from GitHub." msgstr "Nepodařilo se načíst informace o uživateli z GitHub." -#: cps/oauth_bb.py:279 +#: cps/oauth_bb.py:280 msgid "Failed to log in with Google." msgstr "Přihlášení pomocí Google selhalo." -#: cps/oauth_bb.py:285 +#: cps/oauth_bb.py:286 msgid "Failed to fetch user info from Google." msgstr "Nepodařilo se načíst informace o uživateli z Google." -#: cps/oauth_bb.py:332 +#: cps/oauth_bb.py:334 msgid "GitHub Oauth error, please retry later." msgstr "GitHub Oauth chyba, prosím opakujte později." -#: cps/oauth_bb.py:335 +#: cps/oauth_bb.py:337 msgid "GitHub Oauth error: {}" msgstr "" -#: cps/oauth_bb.py:356 +#: cps/oauth_bb.py:358 msgid "Google Oauth error, please retry later." msgstr "Google Oauth chyba, prosím opakujte později." -#: cps/oauth_bb.py:359 +#: cps/oauth_bb.py:361 msgid "Google Oauth error: {}" msgstr "" @@ -1294,32 +1295,32 @@ msgstr "" msgid "Unknown Status" msgstr "Neznámý stav" -#: cps/updater.py:431 cps/updater.py:442 cps/updater.py:543 cps/updater.py:558 +#: cps/updater.py:433 cps/updater.py:444 cps/updater.py:545 cps/updater.py:560 msgid "Unexpected data while reading update information" msgstr "Neočekávaná data při čtení informací o aktualizaci" -#: cps/updater.py:438 cps/updater.py:550 +#: cps/updater.py:440 cps/updater.py:552 msgid "No update available. You already have the latest version installed" msgstr "Aktualizace není k dispozici. Máte nainstalovanou nejnovější verzi" -#: cps/updater.py:456 +#: cps/updater.py:458 msgid "A new update is available. Click on the button below to update to the latest version." msgstr "Nová aktualizace k dispozici. Klepnutím na tlačítko níže aktualizujte na nejnovější verzi." -#: cps/updater.py:474 +#: cps/updater.py:476 msgid "Could not fetch update information" msgstr "Nelze získat informace o aktualizaci" -#: cps/updater.py:484 +#: cps/updater.py:486 msgid "Click on the button below to update to the latest stable version." msgstr "Klepnutím na tlačítko níže aktualizujte na nejnovější stabilní verzi." -#: cps/updater.py:493 cps/updater.py:507 cps/updater.py:518 +#: cps/updater.py:495 cps/updater.py:509 cps/updater.py:520 #, python-format msgid "A new update is available. Click on the button below to update to version: %(version)s" msgstr "Nová aktualizace k dispozici. Klepnutím na tlačítko níže aktualizujte na verzi: %(version)s" -#: cps/updater.py:536 +#: cps/updater.py:538 msgid "No release information available" msgstr "Nejsou k dispozici žádné informace o verzi" @@ -1499,50 +1500,50 @@ msgstr "Profil aktualizován" msgid "Oops! An account already exists for this Email." msgstr "Byl nalezen existující účet pro tuto e-mailovou adresu." -#: cps/services/gmail.py:58 +#: cps/services/gmail.py:59 msgid "Found no valid gmail.json file with OAuth information" msgstr "" -#: cps/tasks/convert.py:105 +#: cps/tasks/convert.py:108 #, fuzzy, python-format msgid "%(book)s send to E-Reader" msgstr "Poslat do Kindle" -#: cps/tasks/convert.py:167 +#: cps/tasks/convert.py:170 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "Calibre převaděč %(tool)s nenalezen" -#: cps/tasks/convert.py:201 +#: cps/tasks/convert.py:204 #, python-format msgid "%(format)s format not found on disk" msgstr "" -#: cps/tasks/convert.py:205 +#: cps/tasks/convert.py:208 msgid "Ebook converter failed with unknown error" msgstr "" -#: cps/tasks/convert.py:224 +#: cps/tasks/convert.py:227 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "Kepubify-převaděč selhal: %(error)s" -#: cps/tasks/convert.py:245 +#: cps/tasks/convert.py:248 #, python-format msgid "Converted file not found or more than one file in folder %(folder)s" msgstr "Převedený soubor nebyl nalezen nebo více než jeden soubor ve složce %(folder)s" -#: cps/tasks/convert.py:287 +#: cps/tasks/convert.py:291 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "Převaděč eknih selhal: %(error)s" -#: cps/tasks/convert.py:310 +#: cps/tasks/convert.py:314 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "" -#: cps/tasks/convert.py:315 +#: cps/tasks/convert.py:319 msgid "Convert" msgstr "" @@ -1554,7 +1555,7 @@ msgstr "" msgid "E-mail" msgstr "" -#: cps/tasks/metadata_backup.py:33 +#: cps/tasks/metadata_backup.py:34 #, fuzzy msgid "Backing up Metadata" msgstr "upravit metadata" @@ -1568,20 +1569,20 @@ msgstr "" msgid "Generated %(count)s cover thumbnails" msgstr "" -#: cps/tasks/thumbnail.py:230 cps/tasks/thumbnail.py:443 -#: cps/tasks/thumbnail.py:511 +#: cps/tasks/thumbnail.py:231 cps/tasks/thumbnail.py:444 +#: cps/tasks/thumbnail.py:512 msgid "Cover Thumbnails" msgstr "" -#: cps/tasks/thumbnail.py:289 +#: cps/tasks/thumbnail.py:290 msgid "Generated {0} series thumbnails" msgstr "" -#: cps/tasks/thumbnail.py:454 +#: cps/tasks/thumbnail.py:455 msgid "Clearing cover thumbnail cache" msgstr "" -#: cps/tasks/upload.py:38 cps/templates/admin.html:20 +#: cps/tasks/upload.py:39 cps/templates/admin.html:20 #: cps/templates/layout.html:81 cps/templates/user_table.html:145 msgid "Upload" msgstr "Nahrávat" @@ -1829,7 +1830,7 @@ msgstr "OK" #: cps/templates/admin.html:259 cps/templates/admin.html:273 #: cps/templates/book_edit.html:214 cps/templates/book_table.html:127 -#: cps/templates/config_db.html:66 cps/templates/config_edit.html:423 +#: cps/templates/config_db.html:66 cps/templates/config_edit.html:427 #: cps/templates/config_view_edit.html:175 cps/templates/detail.html:342 #: cps/templates/modal_dialogs.html:64 cps/templates/modal_dialogs.html:99 #: cps/templates/modal_dialogs.html:117 cps/templates/modal_dialogs.html:135 @@ -2015,7 +2016,7 @@ msgid "Fetch Metadata" msgstr "Získat metadata" #: cps/templates/book_edit.html:213 cps/templates/config_db.html:65 -#: cps/templates/config_edit.html:422 cps/templates/config_view_edit.html:174 +#: cps/templates/config_edit.html:426 cps/templates/config_view_edit.html:174 #: cps/templates/email_edit.html:65 cps/templates/schedule_edit.html:44 #: cps/templates/shelf_edit.html:25 cps/templates/shelf_order.html:41 #: cps/templates/user_edit.html:142 @@ -2490,47 +2491,51 @@ msgid "Configure Backend for Limiter" msgstr "" #: cps/templates/config_edit.html:376 -msgid "Options for Limiter" +msgid "Options for Limiter Backend" msgstr "" -#: cps/templates/config_edit.html:381 +#: cps/templates/config_edit.html:382 +msgid "Check if file extensions matches file content on upload" +msgstr "" + +#: cps/templates/config_edit.html:385 msgid "Session protection" msgstr "" -#: cps/templates/config_edit.html:383 +#: cps/templates/config_edit.html:387 msgid "Basic" msgstr "" -#: cps/templates/config_edit.html:384 +#: cps/templates/config_edit.html:388 msgid "Strong" msgstr "" -#: cps/templates/config_edit.html:389 +#: cps/templates/config_edit.html:393 #, fuzzy msgid "User Password policy" msgstr "Resetovat uživatelské heslo" -#: cps/templates/config_edit.html:393 +#: cps/templates/config_edit.html:397 msgid "Minimum password length" msgstr "" -#: cps/templates/config_edit.html:398 +#: cps/templates/config_edit.html:402 msgid "Enforce number" msgstr "" -#: cps/templates/config_edit.html:402 +#: cps/templates/config_edit.html:406 msgid "Enforce lowercase characters" msgstr "" -#: cps/templates/config_edit.html:406 +#: cps/templates/config_edit.html:410 msgid "Enforce uppercase characters" msgstr "" -#: cps/templates/config_edit.html:410 +#: cps/templates/config_edit.html:414 msgid "Enforce characters (needed For Chinese/Japanese/Korean Characters)" msgstr "" -#: cps/templates/config_edit.html:414 +#: cps/templates/config_edit.html:418 msgid "Enforce special characters" msgstr "" @@ -2662,6 +2667,11 @@ msgstr "Označit jako nepřečtené" msgid "Mark As Read" msgstr "Označit jako přečtené" +#: cps/templates/detail.html:254 +#, fuzzy +msgid "Mark Book as Read or Unread" +msgstr "Označit jako nepřečtené" + #: cps/templates/detail.html:254 cps/templates/listenmp3.html:159 msgid "Read" msgstr "Přečteno" @@ -2674,8 +2684,13 @@ msgstr "Obnovit z archivu" msgid "Add to archive" msgstr "Archívovat" -#: cps/templates/detail.html:267 cps/templates/listenmp3.html:167 -msgid "Archived" +#: cps/templates/detail.html:267 +msgid "Mark Book as archived or not, to hide it in Calibre-Web and delete it from Kobo Reader" +msgstr "" + +#: cps/templates/detail.html:267 +#, fuzzy +msgid "Archive" msgstr "Archivováno" #: cps/templates/detail.html:278 cps/templates/listenmp3.html:177 @@ -2956,6 +2971,10 @@ msgstr "Podrobnosti o knize" msgid "Grid" msgstr "" +#: cps/templates/listenmp3.html:167 +msgid "Archived" +msgstr "Archivováno" + #: cps/templates/login.html:18 msgid "Remember Me" msgstr "Zapamatovat si" diff --git a/cps/translations/de/LC_MESSAGES/messages.mo b/cps/translations/de/LC_MESSAGES/messages.mo index ab2741e1..31a5fae9 100644 Binary files a/cps/translations/de/LC_MESSAGES/messages.mo and b/cps/translations/de/LC_MESSAGES/messages.mo differ diff --git a/cps/translations/de/LC_MESSAGES/messages.po b/cps/translations/de/LC_MESSAGES/messages.po index 63ebc88f..14e6cb17 100644 --- a/cps/translations/de/LC_MESSAGES/messages.po +++ b/cps/translations/de/LC_MESSAGES/messages.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Calibre-Web\n" "Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n" -"POT-Creation-Date: 2024-06-09 12:26+0200\n" +"POT-Creation-Date: 2024-06-30 12:19+0200\n" "PO-Revision-Date: 2023-10-21 15:45+0200\n" "Last-Translator: Ozzie Isaacs\n" "Language: de\n" @@ -16,7 +16,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.11.0\n" +"Generated-By: Babel 2.13.1\n" #: cps/about.py:84 msgid "Statistics" @@ -42,9 +42,9 @@ msgstr "Unbekannter Befehl" msgid "Success! Books queued for Metadata Backup, please check Tasks for result" msgstr "Bücher wurden für Metadaten Backup eingereiht, für das Ergebnis bitte Aufgaben überprüfen" -#: cps/admin.py:207 cps/editbooks.py:591 cps/editbooks.py:593 -#: cps/editbooks.py:631 cps/editbooks.py:648 cps/editbooks.py:1280 -#: cps/updater.py:613 cps/uploader.py:93 cps/uploader.py:102 +#: cps/admin.py:207 cps/editbooks.py:573 cps/editbooks.py:575 +#: cps/editbooks.py:615 cps/editbooks.py:658 cps/editbooks.py:1280 +#: cps/updater.py:615 cps/uploader.py:93 cps/uploader.py:102 msgid "Unknown" msgstr "Unbekannt" @@ -64,12 +64,12 @@ msgstr "Benutzeroberflächenkonfiguration" msgid "Edit Users" msgstr "Benutzer bearbeiten" -#: cps/admin.py:368 cps/opds.py:541 cps/templates/grid.html:14 +#: cps/admin.py:368 cps/opds.py:542 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "Alle" -#: cps/admin.py:395 cps/admin.py:1417 +#: cps/admin.py:395 cps/admin.py:1414 msgid "User not found" msgstr "Benutzer nicht gefunden" @@ -86,7 +86,7 @@ msgstr "Zeige alle" msgid "Malformed request" msgstr "Ungültige Anfrage" -#: cps/admin.py:471 cps/admin.py:2048 +#: cps/admin.py:471 cps/admin.py:2046 msgid "Guest Name can't be changed" msgstr "Guest Name kann nicht geändert werden" @@ -94,7 +94,7 @@ msgstr "Guest Name kann nicht geändert werden" msgid "Guest can't have this role" msgstr "Guest Benutzer kann diese Rolle nicht haben" -#: cps/admin.py:495 cps/admin.py:2002 +#: cps/admin.py:495 cps/admin.py:2000 msgid "No admin user remaining, can't remove admin role" msgstr "Kein Admin Benutzer verblieben Admin Berechtigung kann nicht entfernt werden" @@ -126,7 +126,7 @@ msgstr "Keine gültige Sprache gewählt" msgid "No Valid Book Language Given" msgstr "Keine gültige Buchsprache gewählt" -#: cps/admin.py:535 cps/editbooks.py:457 +#: cps/admin.py:535 cps/editbooks.py:440 msgid "Parameter not found" msgstr "Parameter wurde nicht gefunden" @@ -138,7 +138,7 @@ msgstr "Ungültige Lese Spalte" msgid "Invalid Restricted Column" msgstr "Ungültiger Spaltenname für Einschränkung" -#: cps/admin.py:598 cps/admin.py:1873 +#: cps/admin.py:598 cps/admin.py:1871 msgid "Calibre-Web configuration updated" msgstr "Konfiguration von Calibre-Web wurde aktualisiert" @@ -218,291 +218,291 @@ msgstr "Tag nicht gefunden" msgid "Invalid Action" msgstr "Ungültige Aktion" -#: cps/admin.py:1123 +#: cps/admin.py:1120 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "client_secrets.json ist nicht für Web Anwendungen konfiguriert" -#: cps/admin.py:1168 +#: cps/admin.py:1165 msgid "Logfile Location is not Valid, Please Enter Correct Path" msgstr "Logdatei Pfad ist ungültig, bitte einen gültigen Pfad angeben" -#: cps/admin.py:1174 +#: cps/admin.py:1171 msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgstr "Zugriffs Logdatei Pfad ist ungültig, bitte einen gültigen Pfad angeben" -#: cps/admin.py:1208 +#: cps/admin.py:1205 msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgstr "Bitte einen LDAP Server, Port, DN und Benutzer Objekt angeben" -#: cps/admin.py:1214 +#: cps/admin.py:1211 msgid "Please Enter a LDAP Service Account and Password" msgstr "Bitte einen LDAP Service Account und Password eingeben" -#: cps/admin.py:1217 +#: cps/admin.py:1214 msgid "Please Enter a LDAP Service Account" msgstr "Bitte einen LDAP Service Account eingeben" -#: cps/admin.py:1222 +#: cps/admin.py:1219 #, python-format msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgstr "LDAP Gruppen Objekt Filter benötigt genau eine \"%s\" Format Kennung" -#: cps/admin.py:1224 +#: cps/admin.py:1221 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "LDAP Gruppen Objekt Filter hat ungleiche Anzahl von Klammern" -#: cps/admin.py:1228 +#: cps/admin.py:1225 #, python-format msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgstr "LDAP Benutzer Objekt Filter benötigt genau eine \"%s\" Format Kennung" -#: cps/admin.py:1230 +#: cps/admin.py:1227 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "LDAP Benutzer Objekt Filter hat ungleiche Anzahl von Klammern" -#: cps/admin.py:1237 +#: cps/admin.py:1234 #, python-format msgid "LDAP Member User Filter needs to Have One \"%s\" Format Identifier" msgstr "Der LDAP Member User Filter benötigt genau eine \"%s\" Formatierungsmarkierung" -#: cps/admin.py:1239 +#: cps/admin.py:1236 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "LDAP Member User Filter hat eine ungleiche Anzahl von geöffneten und geschlossenen Klammern" -#: cps/admin.py:1246 +#: cps/admin.py:1243 msgid "LDAP CACertificate, Certificate or Key Location is not Valid, Please Enter Correct Path" msgstr "LDAP CA-Zertifikat, Zertifikat oder Key Datei ist kein gültiger Pfad" -#: cps/admin.py:1277 cps/templates/admin.html:53 +#: cps/admin.py:1274 cps/templates/admin.html:53 msgid "Add New User" msgstr "Neuen Benutzer hinzufügen" -#: cps/admin.py:1286 cps/templates/admin.html:100 +#: cps/admin.py:1283 cps/templates/admin.html:100 msgid "Edit Email Server Settings" msgstr "SMTP-Einstellungen ändern" -#: cps/admin.py:1305 +#: cps/admin.py:1302 msgid "Success! Gmail Account Verified." msgstr "G-Mail Konto verifiziert." -#: cps/admin.py:1325 cps/admin.py:1328 cps/admin.py:1713 cps/admin.py:1857 -#: cps/admin.py:1955 cps/admin.py:2076 cps/editbooks.py:243 -#: cps/editbooks.py:319 cps/editbooks.py:1242 cps/shelf.py:90 cps/shelf.py:150 +#: cps/admin.py:1322 cps/admin.py:1325 cps/admin.py:1710 cps/admin.py:1855 +#: cps/admin.py:1953 cps/admin.py:2074 cps/editbooks.py:226 +#: cps/editbooks.py:303 cps/editbooks.py:1242 cps/shelf.py:90 cps/shelf.py:150 #: cps/shelf.py:193 cps/shelf.py:243 cps/shelf.py:280 cps/shelf.py:354 -#: cps/shelf.py:468 cps/tasks/convert.py:150 cps/web.py:1520 +#: cps/shelf.py:468 cps/tasks/convert.py:153 cps/web.py:1520 #, python-format msgid "Oops! Database Error: %(error)s." msgstr "Datenbankfehler: %(error)s." -#: cps/admin.py:1335 +#: cps/admin.py:1332 #, python-format msgid "Test e-mail queued for sending to %(email)s, please check Tasks for result" msgstr "Test E-Mail an %(email)s wurde zum Senden in die Warteschlange eingereiht, für das Ergebnis bitte Aufgaben überprüfen" -#: cps/admin.py:1338 +#: cps/admin.py:1335 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "Es trat ein Fehler beim Versenden der Test-E-Mail auf: %(res)s" -#: cps/admin.py:1340 +#: cps/admin.py:1337 msgid "Please configure your e-mail address first..." msgstr "Bitte zuerst E-Mail Adresse konfigurieren..." -#: cps/admin.py:1342 +#: cps/admin.py:1339 msgid "Email Server Settings updated" msgstr "Einstellungen des E-Mail-Servers aktualisiert" -#: cps/admin.py:1365 cps/templates/admin.html:195 +#: cps/admin.py:1362 cps/templates/admin.html:195 msgid "Edit Scheduled Tasks Settings" msgstr "Einstellungen für Geplante Aufgaben" -#: cps/admin.py:1377 +#: cps/admin.py:1374 msgid "Invalid start time for task specified" msgstr "Ungültigen Startzeitpunkt für Aufgaben spezifiziert" -#: cps/admin.py:1382 +#: cps/admin.py:1379 msgid "Invalid duration for task specified" msgstr "Ungültige Laufzeit für Aufgaben spezifiziert" -#: cps/admin.py:1392 +#: cps/admin.py:1389 msgid "Scheduled tasks settings updated" msgstr "Einstellungen für Geplante Aufgaben aktualisiert" -#: cps/admin.py:1402 cps/admin.py:1451 cps/admin.py:2072 cps/web.py:1316 +#: cps/admin.py:1399 cps/admin.py:1448 cps/admin.py:2070 cps/web.py:1316 msgid "Oops! An unknown error occurred. Please try again later." msgstr "Es ist ein unbekannter Fehler aufgetreten. Bitte später erneut versuchen." -#: cps/admin.py:1406 +#: cps/admin.py:1403 msgid "Settings DB is not Writeable" msgstr "Einstellungsdatenbank ist nicht schreibbar" -#: cps/admin.py:1436 cps/admin.py:2064 +#: cps/admin.py:1433 cps/admin.py:2062 #, python-format msgid "Edit User %(nick)s" msgstr "Benutzer %(nick)s bearbeiten" -#: cps/admin.py:1448 +#: cps/admin.py:1445 #, python-format msgid "Success! Password for user %(user)s reset" msgstr "Passwort für Benutzer %(user)s wurde zurückgesetzt" -#: cps/admin.py:1454 +#: cps/admin.py:1451 msgid "Oops! Please configure the SMTP mail settings." msgstr "Bitte zuerst die SMTP-Einstellung konfigurieren." -#: cps/admin.py:1465 +#: cps/admin.py:1462 msgid "Logfile viewer" msgstr "Logdatei Anzeige" -#: cps/admin.py:1531 +#: cps/admin.py:1528 msgid "Requesting update package" msgstr "Frage Update an" -#: cps/admin.py:1532 +#: cps/admin.py:1529 msgid "Downloading update package" msgstr "Lade Update herunter" -#: cps/admin.py:1533 +#: cps/admin.py:1530 msgid "Unzipping update package" msgstr "Entpacke Update" -#: cps/admin.py:1534 +#: cps/admin.py:1531 msgid "Replacing files" msgstr "Ersetze Dateien" -#: cps/admin.py:1535 +#: cps/admin.py:1532 msgid "Database connections are closed" msgstr "Schließe Datenbankverbindungen" -#: cps/admin.py:1536 +#: cps/admin.py:1533 msgid "Stopping server" msgstr "Stoppe Server" -#: cps/admin.py:1537 +#: cps/admin.py:1534 msgid "Update finished, please press okay and reload page" msgstr "Update abgeschlossen, bitte okay drücken und Seite neu laden" -#: cps/admin.py:1538 cps/admin.py:1539 cps/admin.py:1540 cps/admin.py:1541 -#: cps/admin.py:1542 cps/admin.py:1543 +#: cps/admin.py:1535 cps/admin.py:1536 cps/admin.py:1537 cps/admin.py:1538 +#: cps/admin.py:1539 cps/admin.py:1540 msgid "Update failed:" msgstr "Update fehlgeschlagen:" -#: cps/admin.py:1538 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 +#: cps/admin.py:1535 cps/updater.py:391 cps/updater.py:626 cps/updater.py:628 msgid "HTTP Error" msgstr "HTTP Fehler" -#: cps/admin.py:1539 cps/updater.py:391 cps/updater.py:628 +#: cps/admin.py:1536 cps/updater.py:393 cps/updater.py:630 msgid "Connection error" msgstr "Verbindungsfehler" -#: cps/admin.py:1540 cps/updater.py:393 cps/updater.py:630 +#: cps/admin.py:1537 cps/updater.py:395 cps/updater.py:632 msgid "Timeout while establishing connection" msgstr "Timeout beim Verbindungsaufbau" -#: cps/admin.py:1541 cps/updater.py:395 cps/updater.py:632 +#: cps/admin.py:1538 cps/updater.py:397 cps/updater.py:634 msgid "General error" msgstr "Allgemeiner Fehler" -#: cps/admin.py:1542 +#: cps/admin.py:1539 msgid "Update file could not be saved in temp dir" msgstr "Updatedatei konnte nicht in Temporärem Ordner gespeichert werden" -#: cps/admin.py:1543 +#: cps/admin.py:1540 msgid "Files could not be replaced during update" msgstr "Dateien konnten während des Updates nicht ausgetauscht werden" -#: cps/admin.py:1567 +#: cps/admin.py:1564 msgid "Failed to extract at least One LDAP User" msgstr "Mindestens ein LDAP Benutzer konnte nicht extrahiert werden" -#: cps/admin.py:1612 +#: cps/admin.py:1609 msgid "Failed to Create at Least One LDAP User" msgstr "Mindestens ein LDAP Benutzer konnte nicht erzeugt werden" -#: cps/admin.py:1625 +#: cps/admin.py:1622 #, python-format msgid "Error: %(ldaperror)s" msgstr "Fehler: %(ldaperror)s" -#: cps/admin.py:1629 +#: cps/admin.py:1626 msgid "Error: No user returned in response of LDAP server" msgstr "Fehler: Keine Benutzerinformationen von LDAP Server empfangen" -#: cps/admin.py:1665 +#: cps/admin.py:1662 msgid "At Least One LDAP User Not Found in Database" msgstr "Mindestens ein LDAP Benutzer wurde nicht in der Datenbank gefudnen" -#: cps/admin.py:1667 +#: cps/admin.py:1664 msgid "{} User Successfully Imported" msgstr "{} Benutzer erfolgreich importiert" -#: cps/admin.py:1725 +#: cps/admin.py:1722 msgid "DB Location is not Valid, Please Enter Correct Path" msgstr "DB Pfad ist nicht gültig, bitte einen gültigen Pfad angeben" -#: cps/admin.py:1745 +#: cps/admin.py:1742 msgid "DB is not Writeable" msgstr "Datenbank ist nicht schreibbar" -#: cps/admin.py:1761 +#: cps/admin.py:1758 msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgstr "Schlüsseldatei ist ungültig, bitte einen gültigen Pfad angeben" -#: cps/admin.py:1765 +#: cps/admin.py:1762 msgid "Certfile Location is not Valid, Please Enter Correct Path" msgstr "Zertifikatsdatei ist ungültig, bitte einen gültigen Pfad angeben" -#: cps/admin.py:1842 +#: cps/admin.py:1840 msgid "Password length has to be between 1 and 40" msgstr "Passwortlänge muss zwischen 1 und 40 Zeichen liegen" -#: cps/admin.py:1896 +#: cps/admin.py:1894 msgid "Database Settings updated" msgstr "Datenbankeinstellung aktualisiert" -#: cps/admin.py:1904 +#: cps/admin.py:1902 msgid "Database Configuration" msgstr "Datenbank-Konfiguration" -#: cps/admin.py:1919 cps/web.py:1290 +#: cps/admin.py:1917 cps/web.py:1290 msgid "Oops! Please complete all fields." msgstr "Bitte alle Felder ausfüllen." -#: cps/admin.py:1928 +#: cps/admin.py:1926 msgid "E-mail is not from valid domain" msgstr "E-Mail bezieht sich nicht auf eine gültige Domain" -#: cps/admin.py:1934 +#: cps/admin.py:1932 msgid "Add new user" msgstr "Neuen Benutzer hinzufügen" -#: cps/admin.py:1945 +#: cps/admin.py:1943 #, python-format msgid "User '%(user)s' created" msgstr "Benutzer '%(user)s' angelegt" -#: cps/admin.py:1951 +#: cps/admin.py:1949 msgid "Oops! An account already exists for this Email. or name." msgstr "Es existiert bereits ein Account für diese E-Mailadresse oder diesen Benutzernamen." -#: cps/admin.py:1981 +#: cps/admin.py:1979 #, python-format msgid "User '%(nick)s' deleted" msgstr "Benutzer '%(nick)s' gelöscht" -#: cps/admin.py:1984 +#: cps/admin.py:1982 msgid "Can't delete Guest User" msgstr "Guest Benutzer kann nicht gelöscht werden" -#: cps/admin.py:1987 +#: cps/admin.py:1985 msgid "No admin user remaining, can't delete user" msgstr "Benutzer kann nicht gelöscht werden, es wäre kein Admin Benutzer übrig" -#: cps/admin.py:2042 cps/web.py:1469 +#: cps/admin.py:2040 cps/web.py:1469 msgid "Email can't be empty and has to be a valid Email" msgstr "E-Mail kann nicht leer sein und muss gültig sein" -#: cps/admin.py:2068 +#: cps/admin.py:2066 #, python-format msgid "User '%(nick)s' updated" msgstr "Benutzer '%(nick)s' aktualisiert" @@ -515,12 +515,12 @@ msgstr "Nicht installiert" msgid "Execution permissions missing" msgstr "Ausführeberechtigung fehlt" -#: cps/db.py:756 cps/search.py:137 cps/web.py:747 +#: cps/db.py:768 cps/search.py:137 cps/web.py:747 #, python-format msgid "Custom Column No.%(column)d does not exist in calibre database" msgstr "Benutzerdefinierte Spalte Nr. %(column)d ist nicht in Calibre Datenbank vorhanden" -#: cps/db.py:996 cps/templates/config_edit.html:203 +#: cps/db.py:1008 cps/templates/config_edit.html:203 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 #: cps/web.py:562 cps/web.py:596 cps/web.py:641 cps/web.py:681 cps/web.py:708 #: cps/web.py:989 cps/web.py:1019 cps/web.py:1064 cps/web.py:1092 @@ -528,100 +528,105 @@ msgstr "Benutzerdefinierte Spalte Nr. %(column)d ist nicht in Calibre Datenbank msgid "None" msgstr "Keine" -#: cps/editbooks.py:124 cps/editbooks.py:912 cps/web.py:529 cps/web.py:1561 -#: cps/web.py:1605 cps/web.py:1650 +#: cps/editbooks.py:108 cps/editbooks.py:929 cps/web.py:529 cps/web.py:1561 +#: cps/web.py:1606 cps/web.py:1651 msgid "Oops! Selected book is unavailable. File does not exist or is not accessible" msgstr "Öffnen des Buchs fehlgeschlagen. Datei existiert nicht oder ist nicht zugänglich" -#: cps/editbooks.py:168 cps/editbooks.py:1263 +#: cps/editbooks.py:151 cps/editbooks.py:1263 msgid "User has no rights to upload cover" msgstr "Benutzer hat keine Berechtigung Cover hochzuladen" -#: cps/editbooks.py:188 cps/editbooks.py:733 +#: cps/editbooks.py:171 cps/editbooks.py:744 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "IDs unterscheiden nicht Groß-Kleinschreibung, alte ID wird überschrieben" -#: cps/editbooks.py:230 +#: cps/editbooks.py:213 msgid "Metadata successfully updated" msgstr "Metadaten wurden erfolgreich aktualisiert" -#: cps/editbooks.py:248 +#: cps/editbooks.py:231 msgid "Error editing book: {}" msgstr "Fehler beim editieren des Buches: {}" -#: cps/editbooks.py:305 +#: cps/editbooks.py:289 #, python-format msgid "File %(file)s uploaded" msgstr "Datei %(file)s hochgeladen" -#: cps/editbooks.py:333 +#: cps/editbooks.py:317 msgid "Source or destination format for conversion missing" msgstr "Quell- oder Zielformat für Konvertierung fehlt" -#: cps/editbooks.py:341 +#: cps/editbooks.py:325 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "Buch wurde erfolgreich für die Konvertierung nach %(book_format)s eingereiht" -#: cps/editbooks.py:345 +#: cps/editbooks.py:329 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "Es trat ein Fehler beim Konvertieren des Buches auf: %(res)s" -#: cps/editbooks.py:652 +#: cps/editbooks.py:662 msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgstr "Das hochgeladene Buch existiert evtl. schon in der Bibliothek: " -#: cps/editbooks.py:707 cps/editbooks.py:1043 +#: cps/editbooks.py:718 cps/editbooks.py:1049 #, python-format msgid "'%(langname)s' is not a valid language" msgstr "'%(langname)s' ist keine gültige Sprache" -#: cps/editbooks.py:745 cps/editbooks.py:1203 +#: cps/editbooks.py:756 cps/editbooks.py:1192 +#, fuzzy +msgid "File type isn't allowed to be uploaded to this server" +msgstr "Dateiendung '%(ext)s' kann nicht auf diesen Server hochgeladen werden" + +#: cps/editbooks.py:762 cps/editbooks.py:1202 #, python-format msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgstr "Dateiendung '%(ext)s' kann nicht auf diesen Server hochgeladen werden" -#: cps/editbooks.py:749 cps/editbooks.py:1207 +#: cps/editbooks.py:766 cps/editbooks.py:1206 msgid "File to be uploaded must have an extension" msgstr "Dateien müssen eine Erweiterung haben, um hochgeladen zu werden" -#: cps/editbooks.py:757 +#: cps/editbooks.py:774 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "Die Datei %(filename)s konnte nicht im temporären Ordner gespeichert werden" -#: cps/editbooks.py:777 +#: cps/editbooks.py:794 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "Fehler beim Verschieben der Cover Datei %(file)s: %(error)s" -#: cps/editbooks.py:834 cps/editbooks.py:836 +#: cps/editbooks.py:851 cps/editbooks.py:853 msgid "Book Format Successfully Deleted" msgstr "Buch Format erfolgreich gelöscht" -#: cps/editbooks.py:843 cps/editbooks.py:845 +#: cps/editbooks.py:860 cps/editbooks.py:862 msgid "Book Successfully Deleted" msgstr "Buch erfolgreich gelöscht" -#: cps/editbooks.py:897 +#: cps/editbooks.py:914 msgid "You are missing permissions to delete books" msgstr "Keine Erlaubnis zum Bücher löschen" -#: cps/editbooks.py:947 +#: cps/editbooks.py:964 msgid "edit metadata" msgstr "Metadaten editieren" -#: cps/editbooks.py:996 +#: cps/editbooks.py:1013 #, python-format msgid "%(seriesindex)s is not a valid number, skipping" msgstr "%(seriesindex)s ist keine gültige Zahl, Eintrag wird ignoriert" -#: cps/editbooks.py:1198 +#: cps/editbooks.py:1197 msgid "User has no rights to upload additional file formats" msgstr "Benutzer hat kein Recht zusätzliche Dateiformate hochzuladen" -#: cps/editbooks.py:1219 +#: cps/editbooks.py:1218 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "Fehler beim Erzeugen des Pfads %(path)s (Zugriff verweigert)" @@ -640,7 +645,7 @@ msgstr "Dateiformat %(ext)s zu %(book)s hinzugefügt" msgid "Google Drive setup not completed, try to deactivate and activate Google Drive again" msgstr "Google Drive Setup is nicht komplett, bitte versuche Google Drive zu deaktivieren und aktiviere es anschließend erneut" -#: cps/gdrive.py:95 +#: cps/gdrive.py:96 msgid "Callback domain is not verified, please follow steps to verify domain in google developer console" msgstr "Callback Domain ist nicht verifiziert, bitte Domain in der Google Developer Console verifizieren" @@ -649,7 +654,7 @@ msgstr "Callback Domain ist nicht verifiziert, bitte Domain in der Google Develo msgid "%(format)s format not found for book id: %(book)d" msgstr "%(format)s Format für Buch-ID %(book)d nicht gefunden" -#: cps/helper.py:93 cps/tasks/convert.py:86 +#: cps/helper.py:93 cps/tasks/convert.py:89 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "%(format)s von Buch %(fn)s nicht auf Google Drive gefunden" @@ -722,123 +727,119 @@ msgstr "Löschen von Buch %(id)s fehlgeschlagen: %(message)s" msgid "Deleting book %(id)s from database only, book path in database not valid: %(path)s" msgstr "Lösche Buch %(id)s nur aus Datenbank, Pfad zum Buch in Datenbank ist nicht gültig: %(path)s" -#: cps/helper.py:452 +#: cps/helper.py:465 #, python-format msgid "Rename author from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgstr "Umbenennen des Autors '%(src)s' zu '%(dest)s' schlug fehl: %(error)s" -#: cps/helper.py:524 cps/helper.py:533 +#: cps/helper.py:536 cps/helper.py:545 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "Datei %(file)s wurde nicht auf Google Drive gefunden" -#: cps/helper.py:567 +#: cps/helper.py:587 #, python-format 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" -#: cps/helper.py:587 -msgid "Error in rename file in path: {}" -msgstr "Fehler beim umbenennen der Datei im Pfad: {}" - -#: cps/helper.py:605 +#: cps/helper.py:625 #, python-format msgid "Book path %(path)s not found on Google Drive" msgstr "Buchpfad %(path)s wurde nicht auf Google Drive gefunden" -#: cps/helper.py:670 +#: cps/helper.py:685 msgid "Found an existing account for this Email address" msgstr "Es existiert bereits ein Benutzerkonto für diese E-Mail Adresse" -#: cps/helper.py:678 +#: cps/helper.py:693 msgid "This username is already taken" msgstr "Benutzername ist schon vorhanden" -#: cps/helper.py:690 +#: cps/helper.py:705 msgid "Invalid Email address format" msgstr "Ungültiges E-Mail Adressformat" -#: cps/helper.py:710 +#: cps/helper.py:726 msgid "Password doesn't comply with password validation rules" msgstr "Passwort stimmt nicht mit den Passwortregln überein" -#: cps/helper.py:859 +#: cps/helper.py:873 msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "Python Module 'advocate' ist nicht installiert, wird aber für das Cover hochladen benötigt" -#: cps/helper.py:869 +#: cps/helper.py:883 msgid "Error Downloading Cover" msgstr "Fehler beim Herunterladen des Covers" -#: cps/helper.py:872 +#: cps/helper.py:886 msgid "Cover Format Error" msgstr "Coverdatei fehlerhaft" -#: cps/helper.py:875 +#: cps/helper.py:889 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "Keine Berechtigung Cover von Localhost oder dem lokalen Netzwerk hochzuladen" -#: cps/helper.py:885 +#: cps/helper.py:899 msgid "Failed to create path for cover" msgstr "Fehler beim Erzeugen des Ordners für die Coverdatei" -#: cps/helper.py:901 +#: cps/helper.py:915 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "Cover Datei ist keine gültige Bilddatei, kann nicht gespeichert werden" -#: cps/helper.py:912 +#: cps/helper.py:926 msgid "Only jpg/jpeg/png/webp/bmp files are supported as coverfile" msgstr "Nur jpg/jpeg/png/webp/bmp Dateien werden als Coverdatei unterstützt" -#: cps/helper.py:924 +#: cps/helper.py:938 msgid "Invalid cover file content" msgstr "Ungültiger Cover Dateiinhalt" -#: cps/helper.py:928 +#: cps/helper.py:942 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "Es werden nur jpg/jpeg Dateien als Cover untertützt" -#: cps/helper.py:999 cps/helper.py:1156 +#: cps/helper.py:1014 cps/helper.py:1171 msgid "Cover" msgstr "Titelbild" -#: cps/helper.py:1016 +#: cps/helper.py:1031 msgid "UnRar binary file not found" msgstr "UnRar Programm nicht gefunden" -#: cps/helper.py:1027 +#: cps/helper.py:1042 msgid "Error executing UnRar" msgstr "Fehler beim Ausführen von UnRar" -#: cps/helper.py:1035 +#: cps/helper.py:1050 msgid "Could not find the specified directory" msgstr "" -#: cps/helper.py:1038 +#: cps/helper.py:1053 msgid "Please specify a directory, not a file" msgstr "" -#: cps/helper.py:1052 +#: cps/helper.py:1067 #, fuzzy msgid "Calibre binaries not viable" msgstr "Datenbank ist nicht schreibbar" -#: cps/helper.py:1061 +#: cps/helper.py:1076 #, python-format msgid "Missing calibre binaries: %(missing)s" msgstr "" -#: cps/helper.py:1063 +#: cps/helper.py:1078 #, fuzzy, python-format msgid "Missing executable permissions: %(missing)s" msgstr "Ausführeberechtigung fehlt" -#: cps/helper.py:1068 +#: cps/helper.py:1083 #, fuzzy msgid "Error executing Calibre" msgstr "Fehler beim Ausführen von UnRar" -#: cps/helper.py:1158 cps/templates/admin.html:216 +#: cps/helper.py:1173 cps/templates/admin.html:216 msgid "Queue all books for metadata backup" msgstr "Alle Bücher für Metadaten Backup einreihen" @@ -884,35 +885,35 @@ msgstr "Verbindung mit %(oauth)s fehlgeschlagen" msgid "Not Linked to %(oauth)s" msgstr "Nicht mit %(oauth)s verbunden" -#: cps/oauth_bb.py:261 +#: cps/oauth_bb.py:262 msgid "Failed to log in with GitHub." msgstr "Login mit Github fehlgeschlagen." -#: cps/oauth_bb.py:267 +#: cps/oauth_bb.py:268 msgid "Failed to fetch user info from GitHub." msgstr "Laden der Benutzerinformationen von Github fehlgeschlagen." -#: cps/oauth_bb.py:279 +#: cps/oauth_bb.py:280 msgid "Failed to log in with Google." msgstr "Login mit Google fehlgeschlagen." -#: cps/oauth_bb.py:285 +#: cps/oauth_bb.py:286 msgid "Failed to fetch user info from Google." msgstr "Laden der Benutzerinformationen von Google fehlgeschlagen." -#: cps/oauth_bb.py:332 +#: cps/oauth_bb.py:334 msgid "GitHub Oauth error, please retry later." msgstr "GitHub Oauth Fehler, bitte später erneut versuchen." -#: cps/oauth_bb.py:335 +#: cps/oauth_bb.py:337 msgid "GitHub Oauth error: {}" msgstr "Github Oauth Fehler {}" -#: cps/oauth_bb.py:356 +#: cps/oauth_bb.py:358 msgid "Google Oauth error, please retry later." msgstr "Google Oauth Fehler, bitte später erneut versuchen." -#: cps/oauth_bb.py:359 +#: cps/oauth_bb.py:361 msgid "Google Oauth error: {}" msgstr "Google Oauth Fehler: {}" @@ -1261,32 +1262,32 @@ msgstr "Abgebrochen" msgid "Unknown Status" msgstr "Unbekannter Status" -#: cps/updater.py:431 cps/updater.py:442 cps/updater.py:543 cps/updater.py:558 +#: cps/updater.py:433 cps/updater.py:444 cps/updater.py:545 cps/updater.py:560 msgid "Unexpected data while reading update information" msgstr "Updateinformationen enthalten unbekannte Daten" -#: cps/updater.py:438 cps/updater.py:550 +#: cps/updater.py:440 cps/updater.py:552 msgid "No update available. You already have the latest version installed" msgstr "Kein Update verfügbar. Es ist bereits die aktuellste Version installiert" -#: cps/updater.py:456 +#: cps/updater.py:458 msgid "A new update is available. Click on the button below to update to the latest version." msgstr "Es sind Updates verfügbar. Klicke auf den Button unten, um auf die aktuellste Version zu aktualisieren." -#: cps/updater.py:474 +#: cps/updater.py:476 msgid "Could not fetch update information" msgstr "Updateinformationen konnten nicht geladen werden" -#: cps/updater.py:484 +#: cps/updater.py:486 msgid "Click on the button below to update to the latest stable version." msgstr "Klicke auf den Button unten, um auf die letzte stabile Version zu aktualisieren." -#: cps/updater.py:493 cps/updater.py:507 cps/updater.py:518 +#: cps/updater.py:495 cps/updater.py:509 cps/updater.py:520 #, python-format msgid "A new update is available. Click on the button below to update to version: %(version)s" msgstr "Ein neues Update ist verfügbar. Klicke auf den Button unten, um auf Version: %(version)s zu aktualisieren" -#: cps/updater.py:536 +#: cps/updater.py:538 msgid "No release information available" msgstr "Keine Releaseinformationen verfügbar" @@ -1457,50 +1458,50 @@ msgstr "Profil aktualisiert" msgid "Oops! An account already exists for this Email." msgstr "Es existiert bereits ein Benutzer für diese E-Mailadresse." -#: cps/services/gmail.py:58 +#: cps/services/gmail.py:59 msgid "Found no valid gmail.json file with OAuth information" msgstr "Keine gültige gmail.json Datei mit Oauth informationen gefunden" -#: cps/tasks/convert.py:105 +#: cps/tasks/convert.py:108 #, python-format msgid "%(book)s send to E-Reader" msgstr "%(book)s an E-Reader gesendet" -#: cps/tasks/convert.py:167 +#: cps/tasks/convert.py:170 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "Calibre E-Book Konverter %(tool)s nicht gefunden" -#: cps/tasks/convert.py:201 +#: cps/tasks/convert.py:204 #, python-format msgid "%(format)s format not found on disk" msgstr "%(format)s Format nicht gefunden" -#: cps/tasks/convert.py:205 +#: cps/tasks/convert.py:208 msgid "Ebook converter failed with unknown error" msgstr "EBook Converter mit unbekanntem Fehler fehlgeschlagen" -#: cps/tasks/convert.py:224 +#: cps/tasks/convert.py:227 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "Kepubify Konverter Aufruf fehlgeschlagen: %(error)s" -#: cps/tasks/convert.py:245 +#: cps/tasks/convert.py:248 #, python-format msgid "Converted file not found or more than one file in folder %(folder)s" msgstr "Konvertierte Datei nicht gefunden, oder mehr als eine Datei im Pfad %(folder)s" -#: cps/tasks/convert.py:287 +#: cps/tasks/convert.py:291 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "Fehler des EBook-Converters: %(error)s" -#: cps/tasks/convert.py:310 +#: cps/tasks/convert.py:314 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "Calibre fehlgeschlagen mit Fehler: %(error)s" -#: cps/tasks/convert.py:315 +#: cps/tasks/convert.py:319 msgid "Convert" msgstr "Konvertiere" @@ -1512,7 +1513,7 @@ msgstr "Calibre Datenbank wird neu verbunden" msgid "E-mail" msgstr "E-Mail" -#: cps/tasks/metadata_backup.py:33 +#: cps/tasks/metadata_backup.py:34 msgid "Backing up Metadata" msgstr "Metadaten Backup läuft" @@ -1525,20 +1526,20 @@ msgstr "" msgid "Generated %(count)s cover thumbnails" msgstr "%(count)s Cover Miniaturansichten erzeugt" -#: cps/tasks/thumbnail.py:230 cps/tasks/thumbnail.py:443 -#: cps/tasks/thumbnail.py:511 +#: cps/tasks/thumbnail.py:231 cps/tasks/thumbnail.py:444 +#: cps/tasks/thumbnail.py:512 msgid "Cover Thumbnails" msgstr "Cover Miniaturansichtern" -#: cps/tasks/thumbnail.py:289 +#: cps/tasks/thumbnail.py:290 msgid "Generated {0} series thumbnails" msgstr "{0} Serien Miniaturansichten erzeugt" -#: cps/tasks/thumbnail.py:454 +#: cps/tasks/thumbnail.py:455 msgid "Clearing cover thumbnail cache" msgstr "Cover Miniaturansichten Cache wird gelöscht" -#: cps/tasks/upload.py:38 cps/templates/admin.html:20 +#: cps/tasks/upload.py:39 cps/templates/admin.html:20 #: cps/templates/layout.html:81 cps/templates/user_table.html:145 msgid "Upload" msgstr "Upload" @@ -1784,7 +1785,7 @@ msgstr "OK" #: cps/templates/admin.html:259 cps/templates/admin.html:273 #: cps/templates/book_edit.html:214 cps/templates/book_table.html:127 -#: cps/templates/config_db.html:66 cps/templates/config_edit.html:423 +#: cps/templates/config_db.html:66 cps/templates/config_edit.html:427 #: cps/templates/config_view_edit.html:175 cps/templates/detail.html:342 #: cps/templates/modal_dialogs.html:64 cps/templates/modal_dialogs.html:99 #: cps/templates/modal_dialogs.html:117 cps/templates/modal_dialogs.html:135 @@ -1970,7 +1971,7 @@ msgid "Fetch Metadata" msgstr "Metadaten laden" #: cps/templates/book_edit.html:213 cps/templates/config_db.html:65 -#: cps/templates/config_edit.html:422 cps/templates/config_view_edit.html:174 +#: cps/templates/config_edit.html:426 cps/templates/config_view_edit.html:174 #: cps/templates/email_edit.html:65 cps/templates/schedule_edit.html:44 #: cps/templates/shelf_edit.html:25 cps/templates/shelf_order.html:41 #: cps/templates/user_edit.html:142 @@ -2440,46 +2441,50 @@ msgid "Configure Backend for Limiter" msgstr "" #: cps/templates/config_edit.html:376 -msgid "Options for Limiter" +msgid "Options for Limiter Backend" msgstr "" -#: cps/templates/config_edit.html:381 +#: cps/templates/config_edit.html:382 +msgid "Check if file extensions matches file content on upload" +msgstr "" + +#: cps/templates/config_edit.html:385 msgid "Session protection" msgstr "Sessionschutz" -#: cps/templates/config_edit.html:383 +#: cps/templates/config_edit.html:387 msgid "Basic" msgstr "Einfach" -#: cps/templates/config_edit.html:384 +#: cps/templates/config_edit.html:388 msgid "Strong" msgstr "Stark" -#: cps/templates/config_edit.html:389 +#: cps/templates/config_edit.html:393 msgid "User Password policy" msgstr "Passwort Regeln" -#: cps/templates/config_edit.html:393 +#: cps/templates/config_edit.html:397 msgid "Minimum password length" msgstr "Minimale Passwortlänge" -#: cps/templates/config_edit.html:398 +#: cps/templates/config_edit.html:402 msgid "Enforce number" msgstr "Erzwinge Nummer" -#: cps/templates/config_edit.html:402 +#: cps/templates/config_edit.html:406 msgid "Enforce lowercase characters" msgstr "Erzwinge Kleinbuchstaben" -#: cps/templates/config_edit.html:406 +#: cps/templates/config_edit.html:410 msgid "Enforce uppercase characters" msgstr "Erzwinge Großbuchstaben" -#: cps/templates/config_edit.html:410 +#: cps/templates/config_edit.html:414 msgid "Enforce characters (needed For Chinese/Japanese/Korean Characters)" msgstr "" -#: cps/templates/config_edit.html:414 +#: cps/templates/config_edit.html:418 msgid "Enforce special characters" msgstr "Erzwinge Spezialzeichen" @@ -2609,6 +2614,11 @@ msgstr "Als ungelesen markieren" msgid "Mark As Read" msgstr "Als gelesen markieren" +#: cps/templates/detail.html:254 +#, fuzzy +msgid "Mark Book as Read or Unread" +msgstr "Als ungelesen markieren" + #: cps/templates/detail.html:254 cps/templates/listenmp3.html:159 msgid "Read" msgstr "Gelesen" @@ -2621,8 +2631,13 @@ msgstr "Vom Archiv wiederherstellen" msgid "Add to archive" msgstr "Zum Archiv hinzufügen" -#: cps/templates/detail.html:267 cps/templates/listenmp3.html:167 -msgid "Archived" +#: cps/templates/detail.html:267 +msgid "Mark Book as archived or not, to hide it in Calibre-Web and delete it from Kobo Reader" +msgstr "" + +#: cps/templates/detail.html:267 +#, fuzzy +msgid "Archive" msgstr "Archiviert" #: cps/templates/detail.html:278 cps/templates/listenmp3.html:177 @@ -2899,6 +2914,10 @@ msgstr "Buchdetails" msgid "Grid" msgstr "Raster" +#: cps/templates/listenmp3.html:167 +msgid "Archived" +msgstr "Archiviert" + #: cps/templates/login.html:18 msgid "Remember Me" msgstr "Merken" diff --git a/cps/translations/el/LC_MESSAGES/messages.mo b/cps/translations/el/LC_MESSAGES/messages.mo index 75166a5c..6981b1a7 100644 Binary files a/cps/translations/el/LC_MESSAGES/messages.mo and b/cps/translations/el/LC_MESSAGES/messages.mo differ diff --git a/cps/translations/el/LC_MESSAGES/messages.po b/cps/translations/el/LC_MESSAGES/messages.po index 45a28cea..d1080182 100644 --- a/cps/translations/el/LC_MESSAGES/messages.po +++ b/cps/translations/el/LC_MESSAGES/messages.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Calibre-Web\n" "Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n" -"POT-Creation-Date: 2024-06-09 12:26+0200\n" +"POT-Creation-Date: 2024-06-30 12:19+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: Depountis Georgios\n" "Language: el\n" @@ -15,7 +15,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.11.0\n" +"Generated-By: Babel 2.13.1\n" #: cps/about.py:84 msgid "Statistics" @@ -44,9 +44,9 @@ msgstr "Άγνωστη εντολή" msgid "Success! Books queued for Metadata Backup, please check Tasks for result" msgstr "Το βιβλίο έχει επιτυχώς μπει σε σειρά για αποστολή στο %(eReadermail)s" -#: cps/admin.py:207 cps/editbooks.py:591 cps/editbooks.py:593 -#: cps/editbooks.py:631 cps/editbooks.py:648 cps/editbooks.py:1280 -#: cps/updater.py:613 cps/uploader.py:93 cps/uploader.py:102 +#: cps/admin.py:207 cps/editbooks.py:573 cps/editbooks.py:575 +#: cps/editbooks.py:615 cps/editbooks.py:658 cps/editbooks.py:1280 +#: cps/updater.py:615 cps/uploader.py:93 cps/uploader.py:102 msgid "Unknown" msgstr "ʼΑγνωστο" @@ -67,12 +67,12 @@ msgstr "UI Διαμόρφωση" msgid "Edit Users" msgstr "Χρήστης Διαχειριστής" -#: cps/admin.py:368 cps/opds.py:541 cps/templates/grid.html:14 +#: cps/admin.py:368 cps/opds.py:542 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "Όλα" -#: cps/admin.py:395 cps/admin.py:1417 +#: cps/admin.py:395 cps/admin.py:1414 msgid "User not found" msgstr "Δεν βρέθηκε χρήστης" @@ -89,7 +89,7 @@ msgstr "Προβολή Όλων" msgid "Malformed request" msgstr "" -#: cps/admin.py:471 cps/admin.py:2048 +#: cps/admin.py:471 cps/admin.py:2046 msgid "Guest Name can't be changed" msgstr "" @@ -97,7 +97,7 @@ msgstr "" msgid "Guest can't have this role" msgstr "" -#: cps/admin.py:495 cps/admin.py:2002 +#: cps/admin.py:495 cps/admin.py:2000 msgid "No admin user remaining, can't remove admin role" msgstr "Δεν έχει απομείνει χρήστης διαχειριστής, δεν μπορεί να αφαιρεθεί ο ρόλος διαχειριστή" @@ -129,7 +129,7 @@ msgstr "" msgid "No Valid Book Language Given" msgstr "" -#: cps/admin.py:535 cps/editbooks.py:457 +#: cps/admin.py:535 cps/editbooks.py:440 msgid "Parameter not found" msgstr "" @@ -141,7 +141,7 @@ msgstr "" msgid "Invalid Restricted Column" msgstr "" -#: cps/admin.py:598 cps/admin.py:1873 +#: cps/admin.py:598 cps/admin.py:1871 msgid "Calibre-Web configuration updated" msgstr "Ενημερώθηκε η διαμόρφωση Calibre-Web" @@ -225,298 +225,298 @@ msgstr "" msgid "Invalid Action" msgstr "" -#: cps/admin.py:1123 +#: cps/admin.py:1120 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "client_secrets.json Δεν Έχει Διαμορφωθεί Για Διαδικτυακή Εφαρμογή" -#: cps/admin.py:1168 +#: cps/admin.py:1165 msgid "Logfile Location is not Valid, Please Enter Correct Path" msgstr "Το Φύλλο Καταγραφής Τοποθεσίας δεν είναι Έγκυρο, Παρακαλούμε Συμπλήρωσε Τη Σωστή Πορεία" -#: cps/admin.py:1174 +#: cps/admin.py:1171 msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgstr "Η Πρόσβαση Φύλλου Καταγραφης Τοποθεσίας δεν είναι έγκυρη, Παρακαλούμε Συμπλήρωσε Τη Σωστή Πορεία" -#: cps/admin.py:1208 +#: cps/admin.py:1205 msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgstr "Παρακαλούμε Συμπλήρωσε ένα Πάροχο LDAP, Θύρα, DN και Αντικείμενο Αναγνώρισης Χρήστη" -#: cps/admin.py:1214 +#: cps/admin.py:1211 #, fuzzy msgid "Please Enter a LDAP Service Account and Password" msgstr "Παρακαλούμε συμπλήρωσε ένα έγκυρο όνομα χρήστη για επαναφορά του κωδικού" -#: cps/admin.py:1217 +#: cps/admin.py:1214 msgid "Please Enter a LDAP Service Account" msgstr "" -#: cps/admin.py:1222 +#: cps/admin.py:1219 #, python-format msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgstr "Το Αντικείμενο Φίλτρου Ομάδας LDAP Πρέπει να Έχει Μια \"%s\" Αναγνώριση Μορφής" -#: cps/admin.py:1224 +#: cps/admin.py:1221 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "Το Αντικείμενο Φίλτρου Ομάδας LDAP Έχει Παρενθέσεις Που Δεν Ταιριάζουν" -#: cps/admin.py:1228 +#: cps/admin.py:1225 #, python-format msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgstr "Το Αντικείμενο Φίλτρου Χρήστη LDAP πρέπει να Έχει Μια \"%s\" Αναγνώριση Μορφής" -#: cps/admin.py:1230 +#: cps/admin.py:1227 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "Το Αντικείμενο Φίλτρου Χρήστη LDAP Έχει Παρενθέσεις Που Δεν Ταιριάζουν" -#: cps/admin.py:1237 +#: cps/admin.py:1234 #, python-format msgid "LDAP Member User Filter needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1239 +#: cps/admin.py:1236 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1246 +#: cps/admin.py:1243 msgid "LDAP CACertificate, Certificate or Key Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1277 cps/templates/admin.html:53 +#: cps/admin.py:1274 cps/templates/admin.html:53 msgid "Add New User" msgstr "Προσθήκη Νέου Χρήστη" -#: cps/admin.py:1286 cps/templates/admin.html:100 +#: cps/admin.py:1283 cps/templates/admin.html:100 msgid "Edit Email Server Settings" msgstr "Επεξεργασία Ρυθμίσεων E-mail Διακομιστή" -#: cps/admin.py:1305 +#: cps/admin.py:1302 msgid "Success! Gmail Account Verified." msgstr "" -#: cps/admin.py:1325 cps/admin.py:1328 cps/admin.py:1713 cps/admin.py:1857 -#: cps/admin.py:1955 cps/admin.py:2076 cps/editbooks.py:243 -#: cps/editbooks.py:319 cps/editbooks.py:1242 cps/shelf.py:90 cps/shelf.py:150 +#: cps/admin.py:1322 cps/admin.py:1325 cps/admin.py:1710 cps/admin.py:1855 +#: cps/admin.py:1953 cps/admin.py:2074 cps/editbooks.py:226 +#: cps/editbooks.py:303 cps/editbooks.py:1242 cps/shelf.py:90 cps/shelf.py:150 #: cps/shelf.py:193 cps/shelf.py:243 cps/shelf.py:280 cps/shelf.py:354 -#: cps/shelf.py:468 cps/tasks/convert.py:150 cps/web.py:1520 +#: cps/shelf.py:468 cps/tasks/convert.py:153 cps/web.py:1520 #, python-format msgid "Oops! Database Error: %(error)s." msgstr "Σφάλμα βάσης δεδομένων: %(error)s." -#: cps/admin.py:1335 +#: cps/admin.py:1332 #, python-format msgid "Test e-mail queued for sending to %(email)s, please check Tasks for result" msgstr "" -#: cps/admin.py:1338 +#: cps/admin.py:1335 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "Παρουσιάστηκε σφάλμα κατά την αποστολή του δοκιμαστικού e-mail:% (res)s" -#: cps/admin.py:1340 +#: cps/admin.py:1337 msgid "Please configure your e-mail address first..." msgstr "Παρακαλούμε ρύθμισε πρώτα τη διεύθυνση e-mail σου..." -#: cps/admin.py:1342 +#: cps/admin.py:1339 msgid "Email Server Settings updated" msgstr "Ενημερώθηκαν οι ρυθμίσεις E-mail διακομιστή" -#: cps/admin.py:1365 cps/templates/admin.html:195 +#: cps/admin.py:1362 cps/templates/admin.html:195 msgid "Edit Scheduled Tasks Settings" msgstr "" -#: cps/admin.py:1377 +#: cps/admin.py:1374 msgid "Invalid start time for task specified" msgstr "" -#: cps/admin.py:1382 +#: cps/admin.py:1379 msgid "Invalid duration for task specified" msgstr "" -#: cps/admin.py:1392 +#: cps/admin.py:1389 msgid "Scheduled tasks settings updated" msgstr "" -#: cps/admin.py:1402 cps/admin.py:1451 cps/admin.py:2072 cps/web.py:1316 +#: cps/admin.py:1399 cps/admin.py:1448 cps/admin.py:2070 cps/web.py:1316 msgid "Oops! An unknown error occurred. Please try again later." msgstr "Προέκυψε ένα άγνωστο σφάλμα. Παρακαλούμε δοκίμασε ξανά αργότερα." -#: cps/admin.py:1406 +#: cps/admin.py:1403 msgid "Settings DB is not Writeable" msgstr "" -#: cps/admin.py:1436 cps/admin.py:2064 +#: cps/admin.py:1433 cps/admin.py:2062 #, python-format msgid "Edit User %(nick)s" msgstr "Επεξεργασία χρήστη %(nick)s" -#: cps/admin.py:1448 +#: cps/admin.py:1445 #, fuzzy, python-format msgid "Success! Password for user %(user)s reset" msgstr "Κωδικός για επαναφορά %(user) χρήστη/ών" -#: cps/admin.py:1454 +#: cps/admin.py:1451 #, fuzzy msgid "Oops! Please configure the SMTP mail settings." msgstr "Παρακαλούμε διαμόρφωσε πρώτα τις ρυθμίσεις ταχυδρομείου SMTP..." -#: cps/admin.py:1465 +#: cps/admin.py:1462 msgid "Logfile viewer" msgstr "Προβολέας αρχείου φύλλου καταγραφής" -#: cps/admin.py:1531 +#: cps/admin.py:1528 msgid "Requesting update package" msgstr "Αίτημα πακέτου ενημέρωσης" -#: cps/admin.py:1532 +#: cps/admin.py:1529 msgid "Downloading update package" msgstr "Κατεβάζει πακέτο ενημέρωσης" -#: cps/admin.py:1533 +#: cps/admin.py:1530 msgid "Unzipping update package" msgstr "Ανοίγει πακέτο ενημέρωσης" -#: cps/admin.py:1534 +#: cps/admin.py:1531 msgid "Replacing files" msgstr "Αντικατάσταση αρχείων" -#: cps/admin.py:1535 +#: cps/admin.py:1532 msgid "Database connections are closed" msgstr "Οι συνδέσεις βάσης δεδομένων είναι κλειστές" -#: cps/admin.py:1536 +#: cps/admin.py:1533 msgid "Stopping server" msgstr "Σταματάει το διακομιστή" -#: cps/admin.py:1537 +#: cps/admin.py:1534 msgid "Update finished, please press okay and reload page" msgstr "Η ενημέρωση τελειώσε, παρακαλούμε πιέστε το εντάξει και φορτώστε ξανά τη σελίδα" -#: cps/admin.py:1538 cps/admin.py:1539 cps/admin.py:1540 cps/admin.py:1541 -#: cps/admin.py:1542 cps/admin.py:1543 +#: cps/admin.py:1535 cps/admin.py:1536 cps/admin.py:1537 cps/admin.py:1538 +#: cps/admin.py:1539 cps/admin.py:1540 msgid "Update failed:" msgstr "Η ενημέρωση απέτυχε:" -#: cps/admin.py:1538 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 +#: cps/admin.py:1535 cps/updater.py:391 cps/updater.py:626 cps/updater.py:628 msgid "HTTP Error" msgstr "HTTP Σφάλμα" -#: cps/admin.py:1539 cps/updater.py:391 cps/updater.py:628 +#: cps/admin.py:1536 cps/updater.py:393 cps/updater.py:630 msgid "Connection error" msgstr "Σφάλμα σύνδεσης" -#: cps/admin.py:1540 cps/updater.py:393 cps/updater.py:630 +#: cps/admin.py:1537 cps/updater.py:395 cps/updater.py:632 msgid "Timeout while establishing connection" msgstr "Τελείωσε ο χρόνος κατά την προσπάθεια δημιουργίας σύνδεσης" -#: cps/admin.py:1541 cps/updater.py:395 cps/updater.py:632 +#: cps/admin.py:1538 cps/updater.py:397 cps/updater.py:634 msgid "General error" msgstr "Γενικό σφάλμα" -#: cps/admin.py:1542 +#: cps/admin.py:1539 #, fuzzy msgid "Update file could not be saved in temp dir" msgstr "Το Αρχείο Ενημέρωσης Δεν Μπόρεσε Να Αποθηκευτεί σε" -#: cps/admin.py:1543 +#: cps/admin.py:1540 msgid "Files could not be replaced during update" msgstr "" -#: cps/admin.py:1567 +#: cps/admin.py:1564 #, fuzzy msgid "Failed to extract at least One LDAP User" msgstr "Αποτυχία Δημιουργίας Τουλάχιστον Ενός Χρήστη LDAP" -#: cps/admin.py:1612 +#: cps/admin.py:1609 msgid "Failed to Create at Least One LDAP User" msgstr "Αποτυχία Δημιουργίας Τουλάχιστον Ενός Χρήστη LDAP" -#: cps/admin.py:1625 +#: cps/admin.py:1622 #, python-format msgid "Error: %(ldaperror)s" msgstr "Σφάλμα: %(ldaperror)s" -#: cps/admin.py:1629 +#: cps/admin.py:1626 msgid "Error: No user returned in response of LDAP server" msgstr "Σφάλμα: Δεν επιστράφηκε χρήστης σε απάντηση του διακομιστή LDAP" -#: cps/admin.py:1665 +#: cps/admin.py:1662 msgid "At Least One LDAP User Not Found in Database" msgstr "Τουλάχιστον Ένας Χρήστης LDAP Δεν Βρέθηκε Στη Βάση Δεδομένων" -#: cps/admin.py:1667 +#: cps/admin.py:1664 msgid "{} User Successfully Imported" msgstr "" -#: cps/admin.py:1725 +#: cps/admin.py:1722 msgid "DB Location is not Valid, Please Enter Correct Path" msgstr "Η Τοποθεσία DB δεν είναι Έγκυρη, Παρακαλούμε Συμπληρώστε Τη Σωστή Πορεία" -#: cps/admin.py:1745 +#: cps/admin.py:1742 msgid "DB is not Writeable" msgstr "Η DB δεν μπορεί να Γραφτεί" -#: cps/admin.py:1761 +#: cps/admin.py:1758 msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgstr "Το Αρχειο Κλειδί Τοποθεσίας δεν είναι Έγκυρο, Παρακαλούμε Συμπληρώστε Τη Σωστή Πορεία" -#: cps/admin.py:1765 +#: cps/admin.py:1762 msgid "Certfile Location is not Valid, Please Enter Correct Path" msgstr "Η Τοποθεσία Certfile δεν είναι Έγκυρη, Παρακαλούμε Συμπληρώστε Τη Σωστή Πορεία" -#: cps/admin.py:1842 +#: cps/admin.py:1840 msgid "Password length has to be between 1 and 40" msgstr "" -#: cps/admin.py:1896 +#: cps/admin.py:1894 #, fuzzy msgid "Database Settings updated" msgstr "Ενημερώθηκαν οι ρυθμίσεις E-mail διακομιστή" -#: cps/admin.py:1904 +#: cps/admin.py:1902 #, fuzzy msgid "Database Configuration" msgstr "Διαμόρφωση Λειτουργίας" -#: cps/admin.py:1919 cps/web.py:1290 +#: cps/admin.py:1917 cps/web.py:1290 msgid "Oops! Please complete all fields." msgstr "Παρακαλούμε συμπλήρωσε όλα τα πεδία!" -#: cps/admin.py:1928 +#: cps/admin.py:1926 msgid "E-mail is not from valid domain" msgstr "Το E-mail δεν είναι από έγκυρο domain" -#: cps/admin.py:1934 +#: cps/admin.py:1932 msgid "Add new user" msgstr "Προσθήκη νέου χρήστη" -#: cps/admin.py:1945 +#: cps/admin.py:1943 #, python-format msgid "User '%(user)s' created" msgstr "Χρήστης/ες '%(user)s' δημιουργήθηκαν" -#: cps/admin.py:1951 +#: cps/admin.py:1949 #, fuzzy msgid "Oops! An account already exists for this Email. or name." msgstr "Βρέθηκε ένας ήδη υπάρχον λογαριασμός για αυτή τη διεύθυνση e-mail ή όνομα χρήστη." -#: cps/admin.py:1981 +#: cps/admin.py:1979 #, python-format msgid "User '%(nick)s' deleted" msgstr "Χρήστης/ες '%(nick)s' διαγράφηκαν" -#: cps/admin.py:1984 +#: cps/admin.py:1982 msgid "Can't delete Guest User" msgstr "" -#: cps/admin.py:1987 +#: cps/admin.py:1985 msgid "No admin user remaining, can't delete user" msgstr "Δεν έχει απομείνει χρήστης διαχειριστής, δεν μπορεί να διαγραφεί ο χρήστης" -#: cps/admin.py:2042 cps/web.py:1469 +#: cps/admin.py:2040 cps/web.py:1469 msgid "Email can't be empty and has to be a valid Email" msgstr "" -#: cps/admin.py:2068 +#: cps/admin.py:2066 #, python-format msgid "User '%(nick)s' updated" msgstr "Χρήστης/ες '%(nick)s' ενημερώθηκαν" @@ -529,12 +529,12 @@ msgstr "δεν εγκαταστάθηκε" msgid "Execution permissions missing" msgstr "Λείπουν άδειες εκτέλεσης" -#: cps/db.py:756 cps/search.py:137 cps/web.py:747 +#: cps/db.py:768 cps/search.py:137 cps/web.py:747 #, fuzzy, python-format msgid "Custom Column No.%(column)d does not exist in calibre database" msgstr "Η ειδικά προσαρμοσμένη στήλη No.%(column)d δεν υπάρχει στο επίπεδο βάσης δεδομένων" -#: cps/db.py:996 cps/templates/config_edit.html:203 +#: cps/db.py:1008 cps/templates/config_edit.html:203 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 #: cps/web.py:562 cps/web.py:596 cps/web.py:641 cps/web.py:681 cps/web.py:708 #: cps/web.py:989 cps/web.py:1019 cps/web.py:1064 cps/web.py:1092 @@ -542,100 +542,105 @@ msgstr "Η ειδικά προσαρμοσμένη στήλη No.%(column)d δε msgid "None" msgstr "Κανένα" -#: cps/editbooks.py:124 cps/editbooks.py:912 cps/web.py:529 cps/web.py:1561 -#: cps/web.py:1605 cps/web.py:1650 +#: cps/editbooks.py:108 cps/editbooks.py:929 cps/web.py:529 cps/web.py:1561 +#: cps/web.py:1606 cps/web.py:1651 msgid "Oops! Selected book is unavailable. File does not exist or is not accessible" msgstr "Oυπς! Ο επιλεγμένος τίτλος βιβλίου δεν είναι διαθέσιμος. Το αρχείο δεν υπάρχει ή δεν είναι προσβάσιμο" -#: cps/editbooks.py:168 cps/editbooks.py:1263 +#: cps/editbooks.py:151 cps/editbooks.py:1263 msgid "User has no rights to upload cover" msgstr "" -#: cps/editbooks.py:188 cps/editbooks.py:733 +#: cps/editbooks.py:171 cps/editbooks.py:744 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "Τα αναγνωριστικά δεν έχουν Διάκριση Πεζών-Κεφαλαίων Γραμμάτων, Αντικατάσταση Παλιού Αναγνωριστικού" -#: cps/editbooks.py:230 +#: cps/editbooks.py:213 msgid "Metadata successfully updated" msgstr "Τα μεταδεδομένα ενημερώθηκαν επιτυχώς" -#: cps/editbooks.py:248 +#: cps/editbooks.py:231 msgid "Error editing book: {}" msgstr "" -#: cps/editbooks.py:305 +#: cps/editbooks.py:289 #, python-format msgid "File %(file)s uploaded" msgstr "Το αρχείο %(file)s ανέβηκε" -#: cps/editbooks.py:333 +#: cps/editbooks.py:317 msgid "Source or destination format for conversion missing" msgstr "Η δομή πηγής ή προορισμού για μετατροπή λείπει" -#: cps/editbooks.py:341 +#: cps/editbooks.py:325 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "Το βιβλίο είναι σε σειρά επιτυχώς για μετατροπή σε %(book_format)s" -#: cps/editbooks.py:345 +#: cps/editbooks.py:329 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "Υπήρξε ένα σφάλμα στη μετατροπή αυτού του βιβλίου: %(res)s" -#: cps/editbooks.py:652 +#: cps/editbooks.py:662 msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgstr "Το βιβλίο που ανέβηκε πιθανόν να υπάρχει στη βιβλιοθήκη, σκέψου να το αλλάξεις πριν ανεβάσεις νέο: " -#: cps/editbooks.py:707 cps/editbooks.py:1043 +#: cps/editbooks.py:718 cps/editbooks.py:1049 #, fuzzy, python-format msgid "'%(langname)s' is not a valid language" msgstr "%(langname)s δεν είναι μια έγκυρη γλώσσα" -#: cps/editbooks.py:745 cps/editbooks.py:1203 +#: cps/editbooks.py:756 cps/editbooks.py:1192 +#, fuzzy +msgid "File type isn't allowed to be uploaded to this server" +msgstr "Η επέκταση αρχείου '%(ext)s' δεν επιτρέπεται να ανέβει σε αυτό το διακομιστή" + +#: cps/editbooks.py:762 cps/editbooks.py:1202 #, python-format msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgstr "Η επέκταση αρχείου '%(ext)s' δεν επιτρέπεται να ανέβει σε αυτό το διακομιστή" -#: cps/editbooks.py:749 cps/editbooks.py:1207 +#: cps/editbooks.py:766 cps/editbooks.py:1206 msgid "File to be uploaded must have an extension" msgstr "Το αρχείο προς ανέβασμα πρέπει να έχει μια επέκταση" -#: cps/editbooks.py:757 +#: cps/editbooks.py:774 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "Το αρχείο %(filename)s δεν μπόρεσε να αποθηκευτεί σε temp dir" -#: cps/editbooks.py:777 +#: cps/editbooks.py:794 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "Αποτυχία Μετακίνησης Αρχείου Φόντου %(file)s: %(error)s" -#: cps/editbooks.py:834 cps/editbooks.py:836 +#: cps/editbooks.py:851 cps/editbooks.py:853 msgid "Book Format Successfully Deleted" msgstr "Η μορφή βιβλίου Διαγράφηκε Επιτυχώς" -#: cps/editbooks.py:843 cps/editbooks.py:845 +#: cps/editbooks.py:860 cps/editbooks.py:862 msgid "Book Successfully Deleted" msgstr "Το Βιβλίο Διαγράφηκε Επιτυχώς" -#: cps/editbooks.py:897 +#: cps/editbooks.py:914 msgid "You are missing permissions to delete books" msgstr "" -#: cps/editbooks.py:947 +#: cps/editbooks.py:964 msgid "edit metadata" msgstr "επεξεργασία μεταδεδομένων" -#: cps/editbooks.py:996 +#: cps/editbooks.py:1013 #, python-format msgid "%(seriesindex)s is not a valid number, skipping" msgstr "" -#: cps/editbooks.py:1198 +#: cps/editbooks.py:1197 msgid "User has no rights to upload additional file formats" msgstr "" -#: cps/editbooks.py:1219 +#: cps/editbooks.py:1218 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "Αποτυχεία δημιουργίας πορείας %(path)s (Η άδεια απορρήφθηκε)." @@ -654,7 +659,7 @@ msgstr "Μορφή αρχείου %(ext)s προστέθηκε σε %(book)s" msgid "Google Drive setup not completed, try to deactivate and activate Google Drive again" msgstr "Η ρύθμιση του Google Drive δεν ολοκληρώθηκε, προσπάθησε να απενεργοποιήσεις και να ενεργοποιήσεις ξανά το Google Drive" -#: cps/gdrive.py:95 +#: cps/gdrive.py:96 msgid "Callback domain is not verified, please follow steps to verify domain in google developer console" msgstr "Η ανάκληση ονόματος δεν έχει επαληθευτεί, παρακαλούμε ακολούθησε τα βήματα για την επαλήθευση ονόματος στην κονσόλα προγραμματιστή google" @@ -663,7 +668,7 @@ msgstr "Η ανάκληση ονόματος δεν έχει επαληθευτ msgid "%(format)s format not found for book id: %(book)d" msgstr "%(format)s η δομή δεν βρέθηκε για την ταυτότητα βιβλίου: %(book)d" -#: cps/helper.py:93 cps/tasks/convert.py:86 +#: cps/helper.py:93 cps/tasks/convert.py:89 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "%(format)s δεν βρέθηκε στο Google Drive: %(fn)s" @@ -740,125 +745,121 @@ msgstr "Η διαγραφή βιβλίου %(id)s απέτυχε: %(message)s" msgid "Deleting book %(id)s from database only, book path in database not valid: %(path)s" msgstr "Διαγραφή βιβλίου %(id)s, η πορεία βιβλίου δεν είναι έγκυρη: %(path)s" -#: cps/helper.py:452 +#: cps/helper.py:465 #, fuzzy, python-format msgid "Rename author from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgstr "Η μετονομασία τίτλου από: '%(src)s' σε '%(dest)s' απέτυχε με σφάλμα: %(error)s" -#: cps/helper.py:524 cps/helper.py:533 +#: cps/helper.py:536 cps/helper.py:545 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "Το αρχείο %(file)s δεν βρέθηκε στο Google Drive" -#: cps/helper.py:567 +#: cps/helper.py:587 #, python-format msgid "Rename title from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgstr "Η μετονομασία τίτλου από: '%(src)s' σε '%(dest)s' απέτυχε με σφάλμα: %(error)s" -#: cps/helper.py:587 -msgid "Error in rename file in path: {}" -msgstr "" - -#: cps/helper.py:605 +#: cps/helper.py:625 #, python-format msgid "Book path %(path)s not found on Google Drive" msgstr "Η πορεία βιβλίου %(path)s δεν βρέθηκε στο Google Drive" -#: cps/helper.py:670 +#: cps/helper.py:685 msgid "Found an existing account for this Email address" msgstr "" -#: cps/helper.py:678 +#: cps/helper.py:693 msgid "This username is already taken" msgstr "Αυτό το όνομα χρήστη έχει ήδη παρθεί" -#: cps/helper.py:690 +#: cps/helper.py:705 msgid "Invalid Email address format" msgstr "" -#: cps/helper.py:710 +#: cps/helper.py:726 msgid "Password doesn't comply with password validation rules" msgstr "" -#: cps/helper.py:859 +#: cps/helper.py:873 msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "" -#: cps/helper.py:869 +#: cps/helper.py:883 msgid "Error Downloading Cover" msgstr "Σφάλμα Κατεβάσματος Φόντου" -#: cps/helper.py:872 +#: cps/helper.py:886 msgid "Cover Format Error" msgstr "Σφάλμα Μορφής Φόντου" -#: cps/helper.py:875 +#: cps/helper.py:889 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "" -#: cps/helper.py:885 +#: cps/helper.py:899 msgid "Failed to create path for cover" msgstr "Αποτυχία δημιουργίας πορείας για φόντο" -#: cps/helper.py:901 +#: cps/helper.py:915 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "Το αρχείο φόντου δεν είναι ένα έγκυρο αρχείο εικόνας, ή δεν μπόρεσε να αποθηκευτεί" -#: cps/helper.py:912 +#: cps/helper.py:926 msgid "Only jpg/jpeg/png/webp/bmp files are supported as coverfile" msgstr "" -#: cps/helper.py:924 +#: cps/helper.py:938 msgid "Invalid cover file content" msgstr "" -#: cps/helper.py:928 +#: cps/helper.py:942 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "Μόνο jpg/jpeg αρχεία υποστηρίζονται ως αρχεία φόντου" -#: cps/helper.py:999 cps/helper.py:1156 +#: cps/helper.py:1014 cps/helper.py:1171 #, fuzzy msgid "Cover" msgstr "Ανακάλυψε" -#: cps/helper.py:1016 +#: cps/helper.py:1031 msgid "UnRar binary file not found" msgstr "Δεν βρέθηκε δυαδικό αρχείο UnRar" -#: cps/helper.py:1027 +#: cps/helper.py:1042 #, fuzzy msgid "Error executing UnRar" msgstr "Σφάλμα εκτέλεσης UnRar" -#: cps/helper.py:1035 +#: cps/helper.py:1050 msgid "Could not find the specified directory" msgstr "" -#: cps/helper.py:1038 +#: cps/helper.py:1053 msgid "Please specify a directory, not a file" msgstr "" -#: cps/helper.py:1052 +#: cps/helper.py:1067 #, fuzzy msgid "Calibre binaries not viable" msgstr "Η DB δεν μπορεί να Γραφτεί" -#: cps/helper.py:1061 +#: cps/helper.py:1076 #, python-format msgid "Missing calibre binaries: %(missing)s" msgstr "" -#: cps/helper.py:1063 +#: cps/helper.py:1078 #, fuzzy, python-format msgid "Missing executable permissions: %(missing)s" msgstr "Λείπουν άδειες εκτέλεσης" -#: cps/helper.py:1068 +#: cps/helper.py:1083 #, fuzzy msgid "Error executing Calibre" msgstr "Σφάλμα εκτέλεσης UnRar" -#: cps/helper.py:1158 cps/templates/admin.html:216 +#: cps/helper.py:1173 cps/templates/admin.html:216 msgid "Queue all books for metadata backup" msgstr "" @@ -905,35 +906,35 @@ msgstr "Η αφαίρεση σύνδεσης με το %(oauth)s Απέτυχε" msgid "Not Linked to %(oauth)s" msgstr "Δεν Είναι Συνδεδεμένο με το %(oauth)s" -#: cps/oauth_bb.py:261 +#: cps/oauth_bb.py:262 msgid "Failed to log in with GitHub." msgstr "Αποτυχία σύνδεσης με GitHub." -#: cps/oauth_bb.py:267 +#: cps/oauth_bb.py:268 msgid "Failed to fetch user info from GitHub." msgstr "Αποτυχία συγκέντρωσης πληροφοριών χρήστη από το GitHub." -#: cps/oauth_bb.py:279 +#: cps/oauth_bb.py:280 msgid "Failed to log in with Google." msgstr "Αποτυχία σύνδεσης με το Google." -#: cps/oauth_bb.py:285 +#: cps/oauth_bb.py:286 msgid "Failed to fetch user info from Google." msgstr "Αποτυχία συγκέντρωσης πληροφοριών χρήστη από το Google." -#: cps/oauth_bb.py:332 +#: cps/oauth_bb.py:334 msgid "GitHub Oauth error, please retry later." msgstr "GitHub Oauth σφάλμα, παρακαλούμε δοκίμασε ξανά αργότερα." -#: cps/oauth_bb.py:335 +#: cps/oauth_bb.py:337 msgid "GitHub Oauth error: {}" msgstr "" -#: cps/oauth_bb.py:356 +#: cps/oauth_bb.py:358 msgid "Google Oauth error, please retry later." msgstr "Google Oauth σφάλμα, παρακαλούμε δοκίμασε ξανά αργότερα." -#: cps/oauth_bb.py:359 +#: cps/oauth_bb.py:361 msgid "Google Oauth error: {}" msgstr "" @@ -1294,32 +1295,32 @@ msgstr "" msgid "Unknown Status" msgstr "ʼΑγνωστη κατάσταση" -#: cps/updater.py:431 cps/updater.py:442 cps/updater.py:543 cps/updater.py:558 +#: cps/updater.py:433 cps/updater.py:444 cps/updater.py:545 cps/updater.py:560 msgid "Unexpected data while reading update information" msgstr "Απρόβλεπτα δεδομένα κατά την ανάγνωση των πληροφοριών ενημέρωσης" -#: cps/updater.py:438 cps/updater.py:550 +#: cps/updater.py:440 cps/updater.py:552 msgid "No update available. You already have the latest version installed" msgstr "Δεν υπάρχει διαθέσιμη ενημέρωση. Έχεις ήδη την τελευταία έκδοση εγκατεστημένη" -#: cps/updater.py:456 +#: cps/updater.py:458 msgid "A new update is available. Click on the button below to update to the latest version." msgstr "Μια νέα ενημέρωση είναι διαθέσιμη. Κάνε κλικ στο κουμπί πιο κάτω για να ενημερώσεις με την τελευταία έκδοση." -#: cps/updater.py:474 +#: cps/updater.py:476 msgid "Could not fetch update information" msgstr "Δεν μπόρεσε να συγκεντρώσει τις πληροφορίες ενημέρωσης" -#: cps/updater.py:484 +#: cps/updater.py:486 msgid "Click on the button below to update to the latest stable version." msgstr "Κάνε κλικ στο κουμπί πιο κάτω για να ενημερώσεις με την τελευταία σταθερή έκδοση." -#: cps/updater.py:493 cps/updater.py:507 cps/updater.py:518 +#: cps/updater.py:495 cps/updater.py:509 cps/updater.py:520 #, python-format msgid "A new update is available. Click on the button below to update to version: %(version)s" msgstr "Μια νέα ενημέρωση είναι διαθέσιμη. Κάνε κλικ στο κουμπί πιο κάτω για ενημέρωση με την έκδοση: %(version)s" -#: cps/updater.py:536 +#: cps/updater.py:538 msgid "No release information available" msgstr "Δεν υπάρχουν διαθέσιμες πληροφορίες αποδέσμευσης" @@ -1499,50 +1500,50 @@ msgstr "Το προφίλ ενημερώθηκε" msgid "Oops! An account already exists for this Email." msgstr "Βρέθηκε ένας ήδη υπάρχον λογαριασμός για αυτή τη διεύθυνση e-mail." -#: cps/services/gmail.py:58 +#: cps/services/gmail.py:59 msgid "Found no valid gmail.json file with OAuth information" msgstr "" -#: cps/tasks/convert.py:105 +#: cps/tasks/convert.py:108 #, fuzzy, python-format msgid "%(book)s send to E-Reader" msgstr "Αποστολή στο Kindle" -#: cps/tasks/convert.py:167 +#: cps/tasks/convert.py:170 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "Το εργαλείο μετατροπής Calibre ebook %(tool)s δεν βρέθηκε" -#: cps/tasks/convert.py:201 +#: cps/tasks/convert.py:204 #, python-format msgid "%(format)s format not found on disk" msgstr "%(format)s μορφή δεν βρέθηκε σε δίσκο" -#: cps/tasks/convert.py:205 +#: cps/tasks/convert.py:208 msgid "Ebook converter failed with unknown error" msgstr "Ο μετατροπέας Ebook απέτυχε με άγνωστο σφάλμα" -#: cps/tasks/convert.py:224 +#: cps/tasks/convert.py:227 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "Ο μετατροπέας Kepubify απέτυχε: %(error)s" -#: cps/tasks/convert.py:245 +#: cps/tasks/convert.py:248 #, python-format msgid "Converted file not found or more than one file in folder %(folder)s" msgstr "Το τροποποιημένο αρχείο δεν βρέθηκε ή υπάρχουν περισσότερα από ένα αρχεία στο φάκελο %(folder)s" -#: cps/tasks/convert.py:287 +#: cps/tasks/convert.py:291 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "Ο μετατροπέας Ebook απέτυχε: %(error)s" -#: cps/tasks/convert.py:310 +#: cps/tasks/convert.py:314 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "Το Calibre απέτυχε με σφάλμα: %(error)s" -#: cps/tasks/convert.py:315 +#: cps/tasks/convert.py:319 msgid "Convert" msgstr "" @@ -1554,7 +1555,7 @@ msgstr "" msgid "E-mail" msgstr "" -#: cps/tasks/metadata_backup.py:33 +#: cps/tasks/metadata_backup.py:34 #, fuzzy msgid "Backing up Metadata" msgstr "επεξεργασία μεταδεδομένων" @@ -1568,20 +1569,20 @@ msgstr "" msgid "Generated %(count)s cover thumbnails" msgstr "" -#: cps/tasks/thumbnail.py:230 cps/tasks/thumbnail.py:443 -#: cps/tasks/thumbnail.py:511 +#: cps/tasks/thumbnail.py:231 cps/tasks/thumbnail.py:444 +#: cps/tasks/thumbnail.py:512 msgid "Cover Thumbnails" msgstr "" -#: cps/tasks/thumbnail.py:289 +#: cps/tasks/thumbnail.py:290 msgid "Generated {0} series thumbnails" msgstr "" -#: cps/tasks/thumbnail.py:454 +#: cps/tasks/thumbnail.py:455 msgid "Clearing cover thumbnail cache" msgstr "" -#: cps/tasks/upload.py:38 cps/templates/admin.html:20 +#: cps/tasks/upload.py:39 cps/templates/admin.html:20 #: cps/templates/layout.html:81 cps/templates/user_table.html:145 msgid "Upload" msgstr "Ανέβασμα" @@ -1829,7 +1830,7 @@ msgstr "OK" #: cps/templates/admin.html:259 cps/templates/admin.html:273 #: cps/templates/book_edit.html:214 cps/templates/book_table.html:127 -#: cps/templates/config_db.html:66 cps/templates/config_edit.html:423 +#: cps/templates/config_db.html:66 cps/templates/config_edit.html:427 #: cps/templates/config_view_edit.html:175 cps/templates/detail.html:342 #: cps/templates/modal_dialogs.html:64 cps/templates/modal_dialogs.html:99 #: cps/templates/modal_dialogs.html:117 cps/templates/modal_dialogs.html:135 @@ -2015,7 +2016,7 @@ msgid "Fetch Metadata" msgstr "Συγκέντρωση Μεταδεδομένων" #: cps/templates/book_edit.html:213 cps/templates/config_db.html:65 -#: cps/templates/config_edit.html:422 cps/templates/config_view_edit.html:174 +#: cps/templates/config_edit.html:426 cps/templates/config_view_edit.html:174 #: cps/templates/email_edit.html:65 cps/templates/schedule_edit.html:44 #: cps/templates/shelf_edit.html:25 cps/templates/shelf_order.html:41 #: cps/templates/user_edit.html:142 @@ -2490,47 +2491,51 @@ msgid "Configure Backend for Limiter" msgstr "" #: cps/templates/config_edit.html:376 -msgid "Options for Limiter" +msgid "Options for Limiter Backend" msgstr "" -#: cps/templates/config_edit.html:381 +#: cps/templates/config_edit.html:382 +msgid "Check if file extensions matches file content on upload" +msgstr "" + +#: cps/templates/config_edit.html:385 msgid "Session protection" msgstr "" -#: cps/templates/config_edit.html:383 +#: cps/templates/config_edit.html:387 msgid "Basic" msgstr "" -#: cps/templates/config_edit.html:384 +#: cps/templates/config_edit.html:388 msgid "Strong" msgstr "" -#: cps/templates/config_edit.html:389 +#: cps/templates/config_edit.html:393 #, fuzzy msgid "User Password policy" msgstr "Επαναφορά Κωδικού χρήστη" -#: cps/templates/config_edit.html:393 +#: cps/templates/config_edit.html:397 msgid "Minimum password length" msgstr "" -#: cps/templates/config_edit.html:398 +#: cps/templates/config_edit.html:402 msgid "Enforce number" msgstr "" -#: cps/templates/config_edit.html:402 +#: cps/templates/config_edit.html:406 msgid "Enforce lowercase characters" msgstr "" -#: cps/templates/config_edit.html:406 +#: cps/templates/config_edit.html:410 msgid "Enforce uppercase characters" msgstr "" -#: cps/templates/config_edit.html:410 +#: cps/templates/config_edit.html:414 msgid "Enforce characters (needed For Chinese/Japanese/Korean Characters)" msgstr "" -#: cps/templates/config_edit.html:414 +#: cps/templates/config_edit.html:418 msgid "Enforce special characters" msgstr "" @@ -2662,6 +2667,11 @@ msgstr "Σήμανση ως Αδιάβαστο" msgid "Mark As Read" msgstr "Σήμανση ως Διαβασμένο" +#: cps/templates/detail.html:254 +#, fuzzy +msgid "Mark Book as Read or Unread" +msgstr "Σήμανση ως Αδιάβαστο" + #: cps/templates/detail.html:254 cps/templates/listenmp3.html:159 msgid "Read" msgstr "Διαβάστηκε" @@ -2674,8 +2684,13 @@ msgstr "Επαναφορά από το αρχείο" msgid "Add to archive" msgstr "Προσθήκη στο αρχείο" -#: cps/templates/detail.html:267 cps/templates/listenmp3.html:167 -msgid "Archived" +#: cps/templates/detail.html:267 +msgid "Mark Book as archived or not, to hide it in Calibre-Web and delete it from Kobo Reader" +msgstr "" + +#: cps/templates/detail.html:267 +#, fuzzy +msgid "Archive" msgstr "Αρχειοθετήθηκε" #: cps/templates/detail.html:278 cps/templates/listenmp3.html:177 @@ -2956,6 +2971,10 @@ msgstr "Λεπτομέρειες Βιβλίου" msgid "Grid" msgstr "" +#: cps/templates/listenmp3.html:167 +msgid "Archived" +msgstr "Αρχειοθετήθηκε" + #: cps/templates/login.html:18 msgid "Remember Me" msgstr "Να με Θυμάσαι" diff --git a/cps/translations/es/LC_MESSAGES/messages.mo b/cps/translations/es/LC_MESSAGES/messages.mo index fdfbdbca..5632570d 100644 Binary files a/cps/translations/es/LC_MESSAGES/messages.mo and b/cps/translations/es/LC_MESSAGES/messages.mo differ diff --git a/cps/translations/es/LC_MESSAGES/messages.po b/cps/translations/es/LC_MESSAGES/messages.po index d95947a7..9493fcfc 100644 --- a/cps/translations/es/LC_MESSAGES/messages.po +++ b/cps/translations/es/LC_MESSAGES/messages.po @@ -9,7 +9,7 @@ msgid "" msgstr "" "Project-Id-Version: Calibre-Web\n" "Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n" -"POT-Creation-Date: 2024-06-09 12:26+0200\n" +"POT-Creation-Date: 2024-06-30 12:19+0200\n" "PO-Revision-Date: 2020-05-25 17:22+0200\n" "Last-Translator: minakmostoles \n" "Language: es\n" @@ -18,7 +18,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.11.0\n" +"Generated-By: Babel 2.13.1\n" # "Last-Translator: victorhck \n" #: cps/about.py:84 @@ -48,9 +48,9 @@ msgstr "Comando desconocido" msgid "Success! Books queued for Metadata Backup, please check Tasks for result" msgstr "Puesto en cola un correo electrónico de prueba enviado a %(email)s, por favor, comprueba el resultado en Tareas" -#: cps/admin.py:207 cps/editbooks.py:591 cps/editbooks.py:593 -#: cps/editbooks.py:631 cps/editbooks.py:648 cps/editbooks.py:1280 -#: cps/updater.py:613 cps/uploader.py:93 cps/uploader.py:102 +#: cps/admin.py:207 cps/editbooks.py:573 cps/editbooks.py:575 +#: cps/editbooks.py:615 cps/editbooks.py:658 cps/editbooks.py:1280 +#: cps/updater.py:615 cps/uploader.py:93 cps/uploader.py:102 msgid "Unknown" msgstr "Desconocido" @@ -71,12 +71,12 @@ msgstr "Configuración de la interfaz de usuario" msgid "Edit Users" msgstr "Editar usuarios" -#: cps/admin.py:368 cps/opds.py:541 cps/templates/grid.html:14 +#: cps/admin.py:368 cps/opds.py:542 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "Todo" -#: cps/admin.py:395 cps/admin.py:1417 +#: cps/admin.py:395 cps/admin.py:1414 msgid "User not found" msgstr "Usuario no encontrado" @@ -93,7 +93,7 @@ msgstr "Mostrar todo" msgid "Malformed request" msgstr "Petición mal formulada" -#: cps/admin.py:471 cps/admin.py:2048 +#: cps/admin.py:471 cps/admin.py:2046 msgid "Guest Name can't be changed" msgstr "El nombre de invitado no se puede cambiar" @@ -101,7 +101,7 @@ msgstr "El nombre de invitado no se puede cambiar" msgid "Guest can't have this role" msgstr "El invitado no puede tener ese rol" -#: cps/admin.py:495 cps/admin.py:2002 +#: cps/admin.py:495 cps/admin.py:2000 msgid "No admin user remaining, can't remove admin role" msgstr "No queda ningún usuario administrador, no se puede eliminar al usuario" @@ -133,7 +133,7 @@ msgstr "No hay un sitio válido" msgid "No Valid Book Language Given" msgstr "No se ha indicado un idioma válido para el libro" -#: cps/admin.py:535 cps/editbooks.py:457 +#: cps/admin.py:535 cps/editbooks.py:440 msgid "Parameter not found" msgstr "Parámetro no encontrado" @@ -145,7 +145,7 @@ msgstr "Columna de lectura no válida" msgid "Invalid Restricted Column" msgstr "Columna restringida no válida" -#: cps/admin.py:598 cps/admin.py:1873 +#: cps/admin.py:598 cps/admin.py:1871 msgid "Calibre-Web configuration updated" msgstr "Configuración de Calibre-Web actualizada" @@ -229,298 +229,298 @@ msgstr "Etiqueta no encontrada" msgid "Invalid Action" msgstr "Acción no válida" -#: cps/admin.py:1123 +#: cps/admin.py:1120 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "client_secrets.json no está configurado para la aplicación web" -#: cps/admin.py:1168 +#: cps/admin.py:1165 msgid "Logfile Location is not Valid, Please Enter Correct Path" msgstr "La ruta del Logfile no es válida. Por favor, Introduce la ruta correcta" -#: cps/admin.py:1174 +#: cps/admin.py:1171 msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgstr "La ruta del Access Logfile no es válida. Por favor, Introduce la ruta correcta" -#: cps/admin.py:1208 +#: cps/admin.py:1205 msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgstr "Por favor, Introduce un proveedor LDAP, puerto, DN y el User Object Identifier" -#: cps/admin.py:1214 +#: cps/admin.py:1211 #, fuzzy msgid "Please Enter a LDAP Service Account and Password" msgstr "Por favor, introduce una cuenta de servicio LDAP y su contraseña" -#: cps/admin.py:1217 +#: cps/admin.py:1214 msgid "Please Enter a LDAP Service Account" msgstr "Por favor, introduce una cuenta de servicio LDAP" -#: cps/admin.py:1222 +#: cps/admin.py:1219 #, python-format msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgstr "LDAP Group Object Filter necesita tener un identificador de formato \"%s\"" -#: cps/admin.py:1224 +#: cps/admin.py:1221 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "El LDAP Group Object Filter tiene un paréntesis diferente" -#: cps/admin.py:1228 +#: cps/admin.py:1225 #, python-format msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgstr "LDAP Group Object Filter necesita tener un identificador de formato \"%s\"" -#: cps/admin.py:1230 +#: cps/admin.py:1227 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "El LDAP Group Object Filter tiene un paréntesis diferente" -#: cps/admin.py:1237 +#: cps/admin.py:1234 #, python-format msgid "LDAP Member User Filter needs to Have One \"%s\" Format Identifier" msgstr "El filtro de usuarios LDAP necesita tener un identificador de formato \"%s\"" -#: cps/admin.py:1239 +#: cps/admin.py:1236 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "El filtro de LDAP \"Member User\" tiene paréntesis no coincidentes" -#: cps/admin.py:1246 +#: cps/admin.py:1243 msgid "LDAP CACertificate, Certificate or Key Location is not Valid, Please Enter Correct Path" msgstr "Ubicaciones del certificado de la CA del LDAP, del certificado o de la clave no válidos. Por favor introduce la ruta correcta" -#: cps/admin.py:1277 cps/templates/admin.html:53 +#: cps/admin.py:1274 cps/templates/admin.html:53 msgid "Add New User" msgstr "Añadir nuevo usuario" -#: cps/admin.py:1286 cps/templates/admin.html:100 +#: cps/admin.py:1283 cps/templates/admin.html:100 msgid "Edit Email Server Settings" msgstr "Cambiar parámetros de correo" -#: cps/admin.py:1305 +#: cps/admin.py:1302 msgid "Success! Gmail Account Verified." msgstr "" -#: cps/admin.py:1325 cps/admin.py:1328 cps/admin.py:1713 cps/admin.py:1857 -#: cps/admin.py:1955 cps/admin.py:2076 cps/editbooks.py:243 -#: cps/editbooks.py:319 cps/editbooks.py:1242 cps/shelf.py:90 cps/shelf.py:150 +#: cps/admin.py:1322 cps/admin.py:1325 cps/admin.py:1710 cps/admin.py:1855 +#: cps/admin.py:1953 cps/admin.py:2074 cps/editbooks.py:226 +#: cps/editbooks.py:303 cps/editbooks.py:1242 cps/shelf.py:90 cps/shelf.py:150 #: cps/shelf.py:193 cps/shelf.py:243 cps/shelf.py:280 cps/shelf.py:354 -#: cps/shelf.py:468 cps/tasks/convert.py:150 cps/web.py:1520 +#: cps/shelf.py:468 cps/tasks/convert.py:153 cps/web.py:1520 #, python-format msgid "Oops! Database Error: %(error)s." msgstr "Error en la base de datos: %(error)s." -#: cps/admin.py:1335 +#: cps/admin.py:1332 #, python-format msgid "Test e-mail queued for sending to %(email)s, please check Tasks for result" msgstr "Puesto en cola un correo electrónico de prueba enviado a %(email)s, por favor, comprueba el resultado en Tareas" -#: cps/admin.py:1338 +#: cps/admin.py:1335 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "Ocurrió un error enviando el correo electrónico de prueba: %(res)s" -#: cps/admin.py:1340 +#: cps/admin.py:1337 msgid "Please configure your e-mail address first..." msgstr "Por favor, configure su correo electrónico primero..." -#: cps/admin.py:1342 +#: cps/admin.py:1339 msgid "Email Server Settings updated" msgstr "Actualizados los ajustes del servidor de correo electrónico" -#: cps/admin.py:1365 cps/templates/admin.html:195 +#: cps/admin.py:1362 cps/templates/admin.html:195 msgid "Edit Scheduled Tasks Settings" msgstr "" -#: cps/admin.py:1377 +#: cps/admin.py:1374 msgid "Invalid start time for task specified" msgstr "" -#: cps/admin.py:1382 +#: cps/admin.py:1379 msgid "Invalid duration for task specified" msgstr "" -#: cps/admin.py:1392 +#: cps/admin.py:1389 msgid "Scheduled tasks settings updated" msgstr "" -#: cps/admin.py:1402 cps/admin.py:1451 cps/admin.py:2072 cps/web.py:1316 +#: cps/admin.py:1399 cps/admin.py:1448 cps/admin.py:2070 cps/web.py:1316 msgid "Oops! An unknown error occurred. Please try again later." msgstr "Ha ocurrido un error desconocido. Por favor vuelva a intentarlo más tarde." -#: cps/admin.py:1406 +#: cps/admin.py:1403 msgid "Settings DB is not Writeable" msgstr "" -#: cps/admin.py:1436 cps/admin.py:2064 +#: cps/admin.py:1433 cps/admin.py:2062 #, python-format msgid "Edit User %(nick)s" msgstr "Editar Usuario %(nick)s" -#: cps/admin.py:1448 +#: cps/admin.py:1445 #, fuzzy, python-format msgid "Success! Password for user %(user)s reset" msgstr "Contraseña para el usuario %(user)s reinicializada" -#: cps/admin.py:1454 +#: cps/admin.py:1451 #, fuzzy msgid "Oops! Please configure the SMTP mail settings." msgstr "Configura primero los parámetros del servidor SMTP..." -#: cps/admin.py:1465 +#: cps/admin.py:1462 msgid "Logfile viewer" msgstr "Visor del fichero de log" -#: cps/admin.py:1531 +#: cps/admin.py:1528 msgid "Requesting update package" msgstr "Solicitando paquete de actualización" -#: cps/admin.py:1532 +#: cps/admin.py:1529 msgid "Downloading update package" msgstr "Descargando paquete de actualización" -#: cps/admin.py:1533 +#: cps/admin.py:1530 msgid "Unzipping update package" msgstr "Descomprimiendo paquete de actualización" -#: cps/admin.py:1534 +#: cps/admin.py:1531 msgid "Replacing files" msgstr "Remplazando archivos" -#: cps/admin.py:1535 +#: cps/admin.py:1532 msgid "Database connections are closed" msgstr "Los conexiones con la base datos están cerradas" -#: cps/admin.py:1536 +#: cps/admin.py:1533 msgid "Stopping server" msgstr "Parando el servidor" -#: cps/admin.py:1537 +#: cps/admin.py:1534 msgid "Update finished, please press okay and reload page" msgstr "Actualización finalizada. Por favor, pulse OK y recargue la página" -#: cps/admin.py:1538 cps/admin.py:1539 cps/admin.py:1540 cps/admin.py:1541 -#: cps/admin.py:1542 cps/admin.py:1543 +#: cps/admin.py:1535 cps/admin.py:1536 cps/admin.py:1537 cps/admin.py:1538 +#: cps/admin.py:1539 cps/admin.py:1540 msgid "Update failed:" msgstr "Falló la actualización:" -#: cps/admin.py:1538 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 +#: cps/admin.py:1535 cps/updater.py:391 cps/updater.py:626 cps/updater.py:628 msgid "HTTP Error" msgstr "Error HTTP" -#: cps/admin.py:1539 cps/updater.py:391 cps/updater.py:628 +#: cps/admin.py:1536 cps/updater.py:393 cps/updater.py:630 msgid "Connection error" msgstr "Error de conexión" -#: cps/admin.py:1540 cps/updater.py:393 cps/updater.py:630 +#: cps/admin.py:1537 cps/updater.py:395 cps/updater.py:632 msgid "Timeout while establishing connection" msgstr "Tiempo agotado mientras se trataba de establecer la conexión" -#: cps/admin.py:1541 cps/updater.py:395 cps/updater.py:632 +#: cps/admin.py:1538 cps/updater.py:397 cps/updater.py:634 msgid "General error" msgstr "Error general" -#: cps/admin.py:1542 +#: cps/admin.py:1539 #, fuzzy msgid "Update file could not be saved in temp dir" msgstr "La actualización del archivo no pudo guardarse en el directorio temporal (Temp Dir)" -#: cps/admin.py:1543 +#: cps/admin.py:1540 msgid "Files could not be replaced during update" msgstr "" -#: cps/admin.py:1567 +#: cps/admin.py:1564 #, fuzzy msgid "Failed to extract at least One LDAP User" msgstr "Error al crear al menos un usuario LDAP" -#: cps/admin.py:1612 +#: cps/admin.py:1609 msgid "Failed to Create at Least One LDAP User" msgstr "Error al crear al menos un usuario LDAP" -#: cps/admin.py:1625 +#: cps/admin.py:1622 #, python-format msgid "Error: %(ldaperror)s" msgstr "Error: %(ldaperror)s" -#: cps/admin.py:1629 +#: cps/admin.py:1626 msgid "Error: No user returned in response of LDAP server" msgstr "Error: el servidor LDAP no ha devuelto ningún usuario" -#: cps/admin.py:1665 +#: cps/admin.py:1662 msgid "At Least One LDAP User Not Found in Database" msgstr "Al menos, un usuario LDAP no se ha encontrado en la base de datos" -#: cps/admin.py:1667 +#: cps/admin.py:1664 msgid "{} User Successfully Imported" msgstr "{} Usuario importado con éxito" -#: cps/admin.py:1725 +#: cps/admin.py:1722 msgid "DB Location is not Valid, Please Enter Correct Path" msgstr "La ruta de la base de datos no es válida. Por favor, Introduce la ruta correcta" -#: cps/admin.py:1745 +#: cps/admin.py:1742 msgid "DB is not Writeable" msgstr "La base de datos no es modificable" -#: cps/admin.py:1761 +#: cps/admin.py:1758 msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgstr "La ruta del Keyfile no es válida, por favor, Introduce la ruta correcta" -#: cps/admin.py:1765 +#: cps/admin.py:1762 msgid "Certfile Location is not Valid, Please Enter Correct Path" msgstr "La ruta de Certfile no es válida, por favor, Introduce la ruta correcta" -#: cps/admin.py:1842 +#: cps/admin.py:1840 msgid "Password length has to be between 1 and 40" msgstr "" -#: cps/admin.py:1896 +#: cps/admin.py:1894 #, fuzzy msgid "Database Settings updated" msgstr "Actualizados los ajustes del servidor de correo electrónico" -#: cps/admin.py:1904 +#: cps/admin.py:1902 #, fuzzy msgid "Database Configuration" msgstr "Configuración de la base de datos" -#: cps/admin.py:1919 cps/web.py:1290 +#: cps/admin.py:1917 cps/web.py:1290 msgid "Oops! Please complete all fields." msgstr "¡Por favor, rellena todos los campos!" -#: cps/admin.py:1928 +#: cps/admin.py:1926 msgid "E-mail is not from valid domain" msgstr "El correo electrónico no tiene un dominio válido" -#: cps/admin.py:1934 +#: cps/admin.py:1932 msgid "Add new user" msgstr "Añadir un nuevo usuario" -#: cps/admin.py:1945 +#: cps/admin.py:1943 #, python-format msgid "User '%(user)s' created" msgstr "Usuario '%(user)s' creado" -#: cps/admin.py:1951 +#: cps/admin.py:1949 #, fuzzy msgid "Oops! An account already exists for this Email. or name." msgstr "Encontrada una cuenta existente para este correo electrónico o nombre de usuario." -#: cps/admin.py:1981 +#: cps/admin.py:1979 #, python-format msgid "User '%(nick)s' deleted" msgstr "Usuario '%(nick)s' eliminado" -#: cps/admin.py:1984 +#: cps/admin.py:1982 msgid "Can't delete Guest User" msgstr "No puedes borrar al Usuario Invitado" -#: cps/admin.py:1987 +#: cps/admin.py:1985 msgid "No admin user remaining, can't delete user" msgstr "No queda ningún usuario administrador, no se puede borrar al usuario" -#: cps/admin.py:2042 cps/web.py:1469 +#: cps/admin.py:2040 cps/web.py:1469 msgid "Email can't be empty and has to be a valid Email" msgstr "" -#: cps/admin.py:2068 +#: cps/admin.py:2066 #, python-format msgid "User '%(nick)s' updated" msgstr "Usuario '%(nick)s' actualizado" @@ -533,12 +533,12 @@ msgstr "no instalado" msgid "Execution permissions missing" msgstr "Faltan permisos de ejecución" -#: cps/db.py:756 cps/search.py:137 cps/web.py:747 +#: cps/db.py:768 cps/search.py:137 cps/web.py:747 #, fuzzy, python-format msgid "Custom Column No.%(column)d does not exist in calibre database" msgstr "Columna personalizada No.%(column)d no existe en la base de datos calibre" -#: cps/db.py:996 cps/templates/config_edit.html:203 +#: cps/db.py:1008 cps/templates/config_edit.html:203 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 #: cps/web.py:562 cps/web.py:596 cps/web.py:641 cps/web.py:681 cps/web.py:708 #: cps/web.py:989 cps/web.py:1019 cps/web.py:1064 cps/web.py:1092 @@ -546,100 +546,105 @@ msgstr "Columna personalizada No.%(column)d no existe en la base de datos calibr msgid "None" msgstr "Ninguno" -#: cps/editbooks.py:124 cps/editbooks.py:912 cps/web.py:529 cps/web.py:1561 -#: cps/web.py:1605 cps/web.py:1650 +#: cps/editbooks.py:108 cps/editbooks.py:929 cps/web.py:529 cps/web.py:1561 +#: cps/web.py:1606 cps/web.py:1651 msgid "Oops! Selected book is unavailable. File does not exist or is not accessible" msgstr "oh, oh, el libro seleccionado no está disponible. El archivo no existe o no es accesible" -#: cps/editbooks.py:168 cps/editbooks.py:1263 +#: cps/editbooks.py:151 cps/editbooks.py:1263 msgid "User has no rights to upload cover" msgstr "" -#: cps/editbooks.py:188 cps/editbooks.py:733 +#: cps/editbooks.py:171 cps/editbooks.py:744 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "Los identificadores no distinguen entre mayúsculas y minúsculas, sobrescribiendo el identificador antiguo" -#: cps/editbooks.py:230 +#: cps/editbooks.py:213 msgid "Metadata successfully updated" msgstr "Metadatos actualizados con éxito" -#: cps/editbooks.py:248 +#: cps/editbooks.py:231 msgid "Error editing book: {}" msgstr "" -#: cps/editbooks.py:305 +#: cps/editbooks.py:289 #, python-format msgid "File %(file)s uploaded" msgstr "El fichero %(file)s ha sido subido" -#: cps/editbooks.py:333 +#: cps/editbooks.py:317 msgid "Source or destination format for conversion missing" msgstr "Falta la fuente o el formato de destino para la conversión" -#: cps/editbooks.py:341 +#: cps/editbooks.py:325 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "Libro puesto a la cola para su conversión a %(book_format)s" -#: cps/editbooks.py:345 +#: cps/editbooks.py:329 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "Ocurrió un error al convertir este libro: %(res)s" -#: cps/editbooks.py:652 +#: cps/editbooks.py:662 msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgstr "El libro cargado probablemente existe en la biblioteca, considera cambiarlo antes de subirlo de nuevo: " -#: cps/editbooks.py:707 cps/editbooks.py:1043 +#: cps/editbooks.py:718 cps/editbooks.py:1049 #, fuzzy, python-format msgid "'%(langname)s' is not a valid language" msgstr "%(langname)s no es un idioma válido" -#: cps/editbooks.py:745 cps/editbooks.py:1203 +#: cps/editbooks.py:756 cps/editbooks.py:1192 +#, fuzzy +msgid "File type isn't allowed to be uploaded to this server" +msgstr "No se permite subir archivos con la extensión '%(ext)s' a este servidor" + +#: cps/editbooks.py:762 cps/editbooks.py:1202 #, python-format msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgstr "No se permite subir archivos con la extensión '%(ext)s' a este servidor" -#: cps/editbooks.py:749 cps/editbooks.py:1207 +#: cps/editbooks.py:766 cps/editbooks.py:1206 msgid "File to be uploaded must have an extension" msgstr "El archivo a subir debe tener una extensión" -#: cps/editbooks.py:757 +#: cps/editbooks.py:774 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "El archivo %(filename)s no pudo salvarse en el directorio temporal (Temp Dir)" -#: cps/editbooks.py:777 +#: cps/editbooks.py:794 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "Fallo al mover el archivo de cubierta %(file)s: %(error)s" -#: cps/editbooks.py:834 cps/editbooks.py:836 +#: cps/editbooks.py:851 cps/editbooks.py:853 msgid "Book Format Successfully Deleted" msgstr "Formato de libro eliminado con éxito" -#: cps/editbooks.py:843 cps/editbooks.py:845 +#: cps/editbooks.py:860 cps/editbooks.py:862 msgid "Book Successfully Deleted" msgstr "Libro eliminado con éxito" -#: cps/editbooks.py:897 +#: cps/editbooks.py:914 msgid "You are missing permissions to delete books" msgstr "" -#: cps/editbooks.py:947 +#: cps/editbooks.py:964 msgid "edit metadata" msgstr "editar metadatos" -#: cps/editbooks.py:996 +#: cps/editbooks.py:1013 #, python-format msgid "%(seriesindex)s is not a valid number, skipping" msgstr "%(seriesindex) no es un número válido, saltando" -#: cps/editbooks.py:1198 +#: cps/editbooks.py:1197 msgid "User has no rights to upload additional file formats" msgstr "" -#: cps/editbooks.py:1219 +#: cps/editbooks.py:1218 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "Fallo al crear la ruta %(path)s (permiso denegado)" @@ -658,7 +663,7 @@ msgstr "Archivo con formato %(ext)s añadido a %(book)s" msgid "Google Drive setup not completed, try to deactivate and activate Google Drive again" msgstr "La configuración de Google Drive no se ha completado, intente desactivar y activar Google Drive nuevamente" -#: cps/gdrive.py:95 +#: cps/gdrive.py:96 msgid "Callback domain is not verified, please follow steps to verify domain in google developer console" msgstr "El dominio Callback no se ha verificado, siga los pasos para verificarlo en la consola de desarrollador de Google" @@ -667,7 +672,7 @@ msgstr "El dominio Callback no se ha verificado, siga los pasos para verificarlo msgid "%(format)s format not found for book id: %(book)d" msgstr "%(format)s formato no encontrado para el id del libro: %(book)d" -#: cps/helper.py:93 cps/tasks/convert.py:86 +#: cps/helper.py:93 cps/tasks/convert.py:89 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "%(format)s no encontrado en Google Drive: %(fn)s" @@ -744,126 +749,122 @@ msgstr "El eliminado del libro %(id)s falló: %(message)s" msgid "Deleting book %(id)s from database only, book path in database not valid: %(path)s" msgstr "Borrando el libro %(id)s, la ruta del libro es no válida: %(path)s" -#: cps/helper.py:452 +#: cps/helper.py:465 #, fuzzy, python-format msgid "Rename author 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 el error: %(error)s" -#: cps/helper.py:524 cps/helper.py:533 +#: cps/helper.py:536 cps/helper.py:545 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "Fichero %(file)s no encontrado en Google Drive" -#: cps/helper.py:567 +#: cps/helper.py:587 #, python-format 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 el error: %(error)s" -#: cps/helper.py:587 -msgid "Error in rename file in path: {}" -msgstr "" - -#: cps/helper.py:605 +#: cps/helper.py:625 #, python-format msgid "Book path %(path)s not found on Google Drive" msgstr "La ruta %(path)s del libro no fue encontrada en Google Drive" -#: cps/helper.py:670 +#: cps/helper.py:685 msgid "Found an existing account for this Email address" msgstr "" -#: cps/helper.py:678 +#: cps/helper.py:693 msgid "This username is already taken" msgstr "Este nombre de usuario ya está en uso" -#: cps/helper.py:690 +#: cps/helper.py:705 #, fuzzy msgid "Invalid Email address format" msgstr "Dirección de correo no válida" -#: cps/helper.py:710 +#: cps/helper.py:726 msgid "Password doesn't comply with password validation rules" msgstr "" -#: cps/helper.py:859 +#: cps/helper.py:873 msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "" -#: cps/helper.py:869 +#: cps/helper.py:883 msgid "Error Downloading Cover" msgstr "Error al descargar la cubierta" -#: cps/helper.py:872 +#: cps/helper.py:886 msgid "Cover Format Error" msgstr "Error en el formato de la cubierta" -#: cps/helper.py:875 +#: cps/helper.py:889 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "" -#: cps/helper.py:885 +#: cps/helper.py:899 msgid "Failed to create path for cover" msgstr "Error al crear una ruta para la cubierta" -#: cps/helper.py:901 +#: cps/helper.py:915 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "El archivo de cubierta no es una imágen válida" -#: cps/helper.py:912 +#: cps/helper.py:926 msgid "Only jpg/jpeg/png/webp/bmp files are supported as coverfile" msgstr "Sólo se admiten como portada los archivos jpg/jpeg/png/webp/bmp" -#: cps/helper.py:924 +#: cps/helper.py:938 msgid "Invalid cover file content" msgstr "" -#: cps/helper.py:928 +#: cps/helper.py:942 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "Sólo se admiten como portada los archivos jpg/jpeg" -#: cps/helper.py:999 cps/helper.py:1156 +#: cps/helper.py:1014 cps/helper.py:1171 #, fuzzy msgid "Cover" msgstr "Descubrir" -#: cps/helper.py:1016 +#: cps/helper.py:1031 msgid "UnRar binary file not found" msgstr "No se encuentra el archivo binario UnRar" -#: cps/helper.py:1027 +#: cps/helper.py:1042 #, fuzzy msgid "Error executing UnRar" msgstr "Error ejecutando UnRar" -#: cps/helper.py:1035 +#: cps/helper.py:1050 msgid "Could not find the specified directory" msgstr "" -#: cps/helper.py:1038 +#: cps/helper.py:1053 msgid "Please specify a directory, not a file" msgstr "" -#: cps/helper.py:1052 +#: cps/helper.py:1067 #, fuzzy msgid "Calibre binaries not viable" msgstr "La base de datos no es modificable" -#: cps/helper.py:1061 +#: cps/helper.py:1076 #, python-format msgid "Missing calibre binaries: %(missing)s" msgstr "" -#: cps/helper.py:1063 +#: cps/helper.py:1078 #, fuzzy, python-format msgid "Missing executable permissions: %(missing)s" msgstr "Faltan permisos de ejecución" -#: cps/helper.py:1068 +#: cps/helper.py:1083 #, fuzzy msgid "Error executing Calibre" msgstr "Error ejecutando UnRar" -#: cps/helper.py:1158 cps/templates/admin.html:216 +#: cps/helper.py:1173 cps/templates/admin.html:216 msgid "Queue all books for metadata backup" msgstr "" @@ -910,35 +911,35 @@ msgstr "Error al desenlazar %(oauth)s" msgid "Not Linked to %(oauth)s" msgstr "No vinculado con %(oauth)s" -#: cps/oauth_bb.py:261 +#: cps/oauth_bb.py:262 msgid "Failed to log in with GitHub." msgstr "Error al iniciar sesión con GitHub." -#: cps/oauth_bb.py:267 +#: cps/oauth_bb.py:268 msgid "Failed to fetch user info from GitHub." msgstr "Error al obtener la información del usuario de GitHub." -#: cps/oauth_bb.py:279 +#: cps/oauth_bb.py:280 msgid "Failed to log in with Google." msgstr "Error al iniciar sesión con Google." -#: cps/oauth_bb.py:285 +#: cps/oauth_bb.py:286 msgid "Failed to fetch user info from Google." msgstr "Error al obtener información del usuario de Google." -#: cps/oauth_bb.py:332 +#: cps/oauth_bb.py:334 msgid "GitHub Oauth error, please retry later." msgstr "Error en GitHub Oauth, por favor, vuelva a intentarlo más tarde." -#: cps/oauth_bb.py:335 +#: cps/oauth_bb.py:337 msgid "GitHub Oauth error: {}" msgstr "Error GitHub Oauth {}" -#: cps/oauth_bb.py:356 +#: cps/oauth_bb.py:358 msgid "Google Oauth error, please retry later." msgstr "Error en Google Oauth, por favor vuelva a intentarlo más tarde." -#: cps/oauth_bb.py:359 +#: cps/oauth_bb.py:361 msgid "Google Oauth error: {}" msgstr "Error Google Oauth {}" @@ -1299,32 +1300,32 @@ msgstr "" msgid "Unknown Status" msgstr "Estado desconocido" -#: cps/updater.py:431 cps/updater.py:442 cps/updater.py:543 cps/updater.py:558 +#: cps/updater.py:433 cps/updater.py:444 cps/updater.py:545 cps/updater.py:560 msgid "Unexpected data while reading update information" msgstr "Dato inesperado mientras se leía la información de actualización" -#: cps/updater.py:438 cps/updater.py:550 +#: cps/updater.py:440 cps/updater.py:552 msgid "No update available. You already have the latest version installed" msgstr "Actualización no disponible. Ya tienes instalada la versión más reciente" -#: cps/updater.py:456 +#: cps/updater.py:458 msgid "A new update is available. Click on the button below to update to the latest version." msgstr "Una nueva actualización está disponible. Haz clic en el botón inferior para actualizar a la versión más reciente." -#: cps/updater.py:474 +#: cps/updater.py:476 msgid "Could not fetch update information" msgstr "No se puede conseguir información sobre la actualización" -#: cps/updater.py:484 +#: cps/updater.py:486 msgid "Click on the button below to update to the latest stable version." msgstr "Haz clic en el botón de abajo para actualizar a la última versión estable." -#: cps/updater.py:493 cps/updater.py:507 cps/updater.py:518 +#: cps/updater.py:495 cps/updater.py:509 cps/updater.py:520 #, python-format msgid "A new update is available. Click on the button below to update to version: %(version)s" msgstr "Hay una nueva actualización disponible. Haz clic en el botón de abajo para actualizar a la versión: %(version)s" -#: cps/updater.py:536 +#: cps/updater.py:538 msgid "No release information available" msgstr "No hay información del lanzamiento disponible" @@ -1504,50 +1505,50 @@ msgstr "Perfil actualizado" msgid "Oops! An account already exists for this Email." msgstr "Encontrada una cuenta existente para esa dirección de correo electrónico" -#: cps/services/gmail.py:58 +#: cps/services/gmail.py:59 msgid "Found no valid gmail.json file with OAuth information" msgstr "No se ha encontrado ningún archivo gmail.json válido con información OAuth" -#: cps/tasks/convert.py:105 +#: cps/tasks/convert.py:108 #, fuzzy, python-format msgid "%(book)s send to E-Reader" msgstr "Enviar al Kindle" -#: cps/tasks/convert.py:167 +#: cps/tasks/convert.py:170 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "Calibre ebook-convert %(tool)s no encontrado" -#: cps/tasks/convert.py:201 +#: cps/tasks/convert.py:204 #, python-format msgid "%(format)s format not found on disk" msgstr "%(format)s format no encontrado en disco" -#: cps/tasks/convert.py:205 +#: cps/tasks/convert.py:208 msgid "Ebook converter failed with unknown error" msgstr "El conversor de Ebook falló con un error desconocido" -#: cps/tasks/convert.py:224 +#: cps/tasks/convert.py:227 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "Kepubify-converter falló: %(error)s" -#: cps/tasks/convert.py:245 +#: cps/tasks/convert.py:248 #, python-format msgid "Converted file not found or more than one file in folder %(folder)s" msgstr "Archivo convertido no encontrado, o más de un archivo en el directorio %(folder)s" -#: cps/tasks/convert.py:287 +#: cps/tasks/convert.py:291 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "Falló Ebook-converter: %(error)s" -#: cps/tasks/convert.py:310 +#: cps/tasks/convert.py:314 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "Calibre falló con el error: %(error)s" -#: cps/tasks/convert.py:315 +#: cps/tasks/convert.py:319 msgid "Convert" msgstr "" @@ -1559,7 +1560,7 @@ msgstr "" msgid "E-mail" msgstr "" -#: cps/tasks/metadata_backup.py:33 +#: cps/tasks/metadata_backup.py:34 #, fuzzy msgid "Backing up Metadata" msgstr "editar metadatos" @@ -1573,20 +1574,20 @@ msgstr "" msgid "Generated %(count)s cover thumbnails" msgstr "" -#: cps/tasks/thumbnail.py:230 cps/tasks/thumbnail.py:443 -#: cps/tasks/thumbnail.py:511 +#: cps/tasks/thumbnail.py:231 cps/tasks/thumbnail.py:444 +#: cps/tasks/thumbnail.py:512 msgid "Cover Thumbnails" msgstr "" -#: cps/tasks/thumbnail.py:289 +#: cps/tasks/thumbnail.py:290 msgid "Generated {0} series thumbnails" msgstr "" -#: cps/tasks/thumbnail.py:454 +#: cps/tasks/thumbnail.py:455 msgid "Clearing cover thumbnail cache" msgstr "" -#: cps/tasks/upload.py:38 cps/templates/admin.html:20 +#: cps/tasks/upload.py:39 cps/templates/admin.html:20 #: cps/templates/layout.html:81 cps/templates/user_table.html:145 msgid "Upload" msgstr "Subir archivo" @@ -1835,7 +1836,7 @@ msgstr "Ok" #: cps/templates/admin.html:259 cps/templates/admin.html:273 #: cps/templates/book_edit.html:214 cps/templates/book_table.html:127 -#: cps/templates/config_db.html:66 cps/templates/config_edit.html:423 +#: cps/templates/config_db.html:66 cps/templates/config_edit.html:427 #: cps/templates/config_view_edit.html:175 cps/templates/detail.html:342 #: cps/templates/modal_dialogs.html:64 cps/templates/modal_dialogs.html:99 #: cps/templates/modal_dialogs.html:117 cps/templates/modal_dialogs.html:135 @@ -2021,7 +2022,7 @@ msgid "Fetch Metadata" msgstr "Obtener metadatos" #: cps/templates/book_edit.html:213 cps/templates/config_db.html:65 -#: cps/templates/config_edit.html:422 cps/templates/config_view_edit.html:174 +#: cps/templates/config_edit.html:426 cps/templates/config_view_edit.html:174 #: cps/templates/email_edit.html:65 cps/templates/schedule_edit.html:44 #: cps/templates/shelf_edit.html:25 cps/templates/shelf_order.html:41 #: cps/templates/user_edit.html:142 @@ -2496,47 +2497,51 @@ msgid "Configure Backend for Limiter" msgstr "" #: cps/templates/config_edit.html:376 -msgid "Options for Limiter" +msgid "Options for Limiter Backend" msgstr "" -#: cps/templates/config_edit.html:381 +#: cps/templates/config_edit.html:382 +msgid "Check if file extensions matches file content on upload" +msgstr "" + +#: cps/templates/config_edit.html:385 msgid "Session protection" msgstr "" -#: cps/templates/config_edit.html:383 +#: cps/templates/config_edit.html:387 msgid "Basic" msgstr "" -#: cps/templates/config_edit.html:384 +#: cps/templates/config_edit.html:388 msgid "Strong" msgstr "" -#: cps/templates/config_edit.html:389 +#: cps/templates/config_edit.html:393 #, fuzzy msgid "User Password policy" msgstr "Resetear contraseña de usuario" -#: cps/templates/config_edit.html:393 +#: cps/templates/config_edit.html:397 msgid "Minimum password length" msgstr "" -#: cps/templates/config_edit.html:398 +#: cps/templates/config_edit.html:402 msgid "Enforce number" msgstr "" -#: cps/templates/config_edit.html:402 +#: cps/templates/config_edit.html:406 msgid "Enforce lowercase characters" msgstr "" -#: cps/templates/config_edit.html:406 +#: cps/templates/config_edit.html:410 msgid "Enforce uppercase characters" msgstr "" -#: cps/templates/config_edit.html:410 +#: cps/templates/config_edit.html:414 msgid "Enforce characters (needed For Chinese/Japanese/Korean Characters)" msgstr "" -#: cps/templates/config_edit.html:414 +#: cps/templates/config_edit.html:418 msgid "Enforce special characters" msgstr "" @@ -2668,6 +2673,11 @@ msgstr "Marcar como no leido" msgid "Mark As Read" msgstr "Marcar como leido" +#: cps/templates/detail.html:254 +#, fuzzy +msgid "Mark Book as Read or Unread" +msgstr "Marcar como no leido" + #: cps/templates/detail.html:254 cps/templates/listenmp3.html:159 msgid "Read" msgstr "Leído" @@ -2680,8 +2690,13 @@ msgstr "Restarurar desde el archivo" msgid "Add to archive" msgstr "Añadir a archivación" -#: cps/templates/detail.html:267 cps/templates/listenmp3.html:167 -msgid "Archived" +#: cps/templates/detail.html:267 +msgid "Mark Book as archived or not, to hide it in Calibre-Web and delete it from Kobo Reader" +msgstr "" + +#: cps/templates/detail.html:267 +#, fuzzy +msgid "Archive" msgstr "Archivado" #: cps/templates/detail.html:278 cps/templates/listenmp3.html:177 @@ -2963,6 +2978,10 @@ msgstr "Detalles del libro" msgid "Grid" msgstr "" +#: cps/templates/listenmp3.html:167 +msgid "Archived" +msgstr "Archivado" + #: cps/templates/login.html:18 msgid "Remember Me" msgstr "Recordarme" diff --git a/cps/translations/fi/LC_MESSAGES/messages.mo b/cps/translations/fi/LC_MESSAGES/messages.mo index 91125a24..73fd4721 100644 Binary files a/cps/translations/fi/LC_MESSAGES/messages.mo and b/cps/translations/fi/LC_MESSAGES/messages.mo differ diff --git a/cps/translations/fi/LC_MESSAGES/messages.po b/cps/translations/fi/LC_MESSAGES/messages.po index ff92a820..6024c1c0 100644 --- a/cps/translations/fi/LC_MESSAGES/messages.po +++ b/cps/translations/fi/LC_MESSAGES/messages.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Calibre-Web\n" "Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n" -"POT-Creation-Date: 2024-06-09 12:26+0200\n" +"POT-Creation-Date: 2024-06-30 12:19+0200\n" "PO-Revision-Date: 2020-01-12 13:56+0100\n" "Last-Translator: Samuli Valavuo \n" "Language: fi\n" @@ -16,7 +16,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.11.0\n" +"Generated-By: Babel 2.13.1\n" #: cps/about.py:84 msgid "Statistics" @@ -45,9 +45,9 @@ msgstr "" msgid "Success! Books queued for Metadata Backup, please check Tasks for result" msgstr "Kirja lisätty onnistuneeksi lähetettäväksi osoitteeseen %(eReadermail)s" -#: cps/admin.py:207 cps/editbooks.py:591 cps/editbooks.py:593 -#: cps/editbooks.py:631 cps/editbooks.py:648 cps/editbooks.py:1280 -#: cps/updater.py:613 cps/uploader.py:93 cps/uploader.py:102 +#: cps/admin.py:207 cps/editbooks.py:573 cps/editbooks.py:575 +#: cps/editbooks.py:615 cps/editbooks.py:658 cps/editbooks.py:1280 +#: cps/updater.py:615 cps/uploader.py:93 cps/uploader.py:102 msgid "Unknown" msgstr "Tuntematon" @@ -68,12 +68,12 @@ msgstr "Käyttöliittymän asetukset" msgid "Edit Users" msgstr "Pääkäyttäjä" -#: cps/admin.py:368 cps/opds.py:541 cps/templates/grid.html:14 +#: cps/admin.py:368 cps/opds.py:542 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "Kaikki" -#: cps/admin.py:395 cps/admin.py:1417 +#: cps/admin.py:395 cps/admin.py:1414 msgid "User not found" msgstr "" @@ -90,7 +90,7 @@ msgstr "Näytä kaikki" msgid "Malformed request" msgstr "" -#: cps/admin.py:471 cps/admin.py:2048 +#: cps/admin.py:471 cps/admin.py:2046 msgid "Guest Name can't be changed" msgstr "" @@ -98,7 +98,7 @@ msgstr "" msgid "Guest can't have this role" msgstr "" -#: cps/admin.py:495 cps/admin.py:2002 +#: cps/admin.py:495 cps/admin.py:2000 msgid "No admin user remaining, can't remove admin role" msgstr "" @@ -130,7 +130,7 @@ msgstr "" msgid "No Valid Book Language Given" msgstr "" -#: cps/admin.py:535 cps/editbooks.py:457 +#: cps/admin.py:535 cps/editbooks.py:440 msgid "Parameter not found" msgstr "" @@ -142,7 +142,7 @@ msgstr "" msgid "Invalid Restricted Column" msgstr "" -#: cps/admin.py:598 cps/admin.py:1873 +#: cps/admin.py:598 cps/admin.py:1871 msgid "Calibre-Web configuration updated" msgstr "Calibre-Web asetukset päivitetty" @@ -226,295 +226,295 @@ msgstr "" msgid "Invalid Action" msgstr "" -#: cps/admin.py:1123 +#: cps/admin.py:1120 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "" -#: cps/admin.py:1168 +#: cps/admin.py:1165 msgid "Logfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1174 +#: cps/admin.py:1171 msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1208 +#: cps/admin.py:1205 msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgstr "" -#: cps/admin.py:1214 +#: cps/admin.py:1211 msgid "Please Enter a LDAP Service Account and Password" msgstr "" -#: cps/admin.py:1217 +#: cps/admin.py:1214 msgid "Please Enter a LDAP Service Account" msgstr "" -#: cps/admin.py:1222 +#: cps/admin.py:1219 #, python-format msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1224 +#: cps/admin.py:1221 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1228 +#: cps/admin.py:1225 #, python-format msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1230 +#: cps/admin.py:1227 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1237 +#: cps/admin.py:1234 #, python-format msgid "LDAP Member User Filter needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1239 +#: cps/admin.py:1236 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1246 +#: cps/admin.py:1243 msgid "LDAP CACertificate, Certificate or Key Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1277 cps/templates/admin.html:53 +#: cps/admin.py:1274 cps/templates/admin.html:53 msgid "Add New User" msgstr "" -#: cps/admin.py:1286 cps/templates/admin.html:100 +#: cps/admin.py:1283 cps/templates/admin.html:100 msgid "Edit Email Server Settings" msgstr "Muuta SMTP asetuksia" -#: cps/admin.py:1305 +#: cps/admin.py:1302 msgid "Success! Gmail Account Verified." msgstr "" -#: cps/admin.py:1325 cps/admin.py:1328 cps/admin.py:1713 cps/admin.py:1857 -#: cps/admin.py:1955 cps/admin.py:2076 cps/editbooks.py:243 -#: cps/editbooks.py:319 cps/editbooks.py:1242 cps/shelf.py:90 cps/shelf.py:150 +#: cps/admin.py:1322 cps/admin.py:1325 cps/admin.py:1710 cps/admin.py:1855 +#: cps/admin.py:1953 cps/admin.py:2074 cps/editbooks.py:226 +#: cps/editbooks.py:303 cps/editbooks.py:1242 cps/shelf.py:90 cps/shelf.py:150 #: cps/shelf.py:193 cps/shelf.py:243 cps/shelf.py:280 cps/shelf.py:354 -#: cps/shelf.py:468 cps/tasks/convert.py:150 cps/web.py:1520 +#: cps/shelf.py:468 cps/tasks/convert.py:153 cps/web.py:1520 #, python-format msgid "Oops! Database Error: %(error)s." msgstr "" -#: cps/admin.py:1335 +#: cps/admin.py:1332 #, python-format msgid "Test e-mail queued for sending to %(email)s, please check Tasks for result" msgstr "" -#: cps/admin.py:1338 +#: cps/admin.py:1335 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "Testisähköpostin lähetyksessä tapahtui virhe: %(res)s" -#: cps/admin.py:1340 +#: cps/admin.py:1337 msgid "Please configure your e-mail address first..." msgstr "" -#: cps/admin.py:1342 +#: cps/admin.py:1339 msgid "Email Server Settings updated" msgstr "Sähköpostipalvelimen tiedot päivitetty" -#: cps/admin.py:1365 cps/templates/admin.html:195 +#: cps/admin.py:1362 cps/templates/admin.html:195 msgid "Edit Scheduled Tasks Settings" msgstr "" -#: cps/admin.py:1377 +#: cps/admin.py:1374 msgid "Invalid start time for task specified" msgstr "" -#: cps/admin.py:1382 +#: cps/admin.py:1379 msgid "Invalid duration for task specified" msgstr "" -#: cps/admin.py:1392 +#: cps/admin.py:1389 msgid "Scheduled tasks settings updated" msgstr "" -#: cps/admin.py:1402 cps/admin.py:1451 cps/admin.py:2072 cps/web.py:1316 +#: cps/admin.py:1399 cps/admin.py:1448 cps/admin.py:2070 cps/web.py:1316 msgid "Oops! An unknown error occurred. Please try again later." msgstr "Tapahtui tuntematon virhe. Yritä myöhemmin uudelleen." -#: cps/admin.py:1406 +#: cps/admin.py:1403 msgid "Settings DB is not Writeable" msgstr "" -#: cps/admin.py:1436 cps/admin.py:2064 +#: cps/admin.py:1433 cps/admin.py:2062 #, python-format msgid "Edit User %(nick)s" msgstr "Muokkaa käyttäjää %(nick)s" -#: cps/admin.py:1448 +#: cps/admin.py:1445 #, fuzzy, python-format msgid "Success! Password for user %(user)s reset" msgstr "Käyttäjän %(user)s salasana palautettu" -#: cps/admin.py:1454 +#: cps/admin.py:1451 #, fuzzy msgid "Oops! Please configure the SMTP mail settings." msgstr "Ole hyvä ja aseta SMTP postiasetukset ensin..." -#: cps/admin.py:1465 +#: cps/admin.py:1462 msgid "Logfile viewer" msgstr "Lokitiedoston katselin" -#: cps/admin.py:1531 +#: cps/admin.py:1528 msgid "Requesting update package" msgstr "Haetaan päivitystiedostoa" -#: cps/admin.py:1532 +#: cps/admin.py:1529 msgid "Downloading update package" msgstr "Ladataan päivitystiedostoa" -#: cps/admin.py:1533 +#: cps/admin.py:1530 msgid "Unzipping update package" msgstr "Puretaan päivitystiedostoa" -#: cps/admin.py:1534 +#: cps/admin.py:1531 msgid "Replacing files" msgstr "Korvataan tiedostoja" -#: cps/admin.py:1535 +#: cps/admin.py:1532 msgid "Database connections are closed" msgstr "Tietokantayhteydet on katkaistu" -#: cps/admin.py:1536 +#: cps/admin.py:1533 msgid "Stopping server" msgstr "Sammutetaan palvelin" -#: cps/admin.py:1537 +#: cps/admin.py:1534 msgid "Update finished, please press okay and reload page" msgstr "Päivitys valmistui, ole hyvä ja paina OK ja lataa sivu uudelleen" -#: cps/admin.py:1538 cps/admin.py:1539 cps/admin.py:1540 cps/admin.py:1541 -#: cps/admin.py:1542 cps/admin.py:1543 +#: cps/admin.py:1535 cps/admin.py:1536 cps/admin.py:1537 cps/admin.py:1538 +#: cps/admin.py:1539 cps/admin.py:1540 msgid "Update failed:" msgstr "Päivitys epäonnistui:" -#: cps/admin.py:1538 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 +#: cps/admin.py:1535 cps/updater.py:391 cps/updater.py:626 cps/updater.py:628 msgid "HTTP Error" msgstr "HTTP virhe" -#: cps/admin.py:1539 cps/updater.py:391 cps/updater.py:628 +#: cps/admin.py:1536 cps/updater.py:393 cps/updater.py:630 msgid "Connection error" msgstr "Yhteysvirhe" -#: cps/admin.py:1540 cps/updater.py:393 cps/updater.py:630 +#: cps/admin.py:1537 cps/updater.py:395 cps/updater.py:632 msgid "Timeout while establishing connection" msgstr "Aikakatkaisu yhteyttä luotaessa" -#: cps/admin.py:1541 cps/updater.py:395 cps/updater.py:632 +#: cps/admin.py:1538 cps/updater.py:397 cps/updater.py:634 msgid "General error" msgstr "Yleinen virhe" -#: cps/admin.py:1542 +#: cps/admin.py:1539 msgid "Update file could not be saved in temp dir" msgstr "" -#: cps/admin.py:1543 +#: cps/admin.py:1540 msgid "Files could not be replaced during update" msgstr "" -#: cps/admin.py:1567 +#: cps/admin.py:1564 msgid "Failed to extract at least One LDAP User" msgstr "" -#: cps/admin.py:1612 +#: cps/admin.py:1609 msgid "Failed to Create at Least One LDAP User" msgstr "" -#: cps/admin.py:1625 +#: cps/admin.py:1622 #, python-format msgid "Error: %(ldaperror)s" msgstr "" -#: cps/admin.py:1629 +#: cps/admin.py:1626 msgid "Error: No user returned in response of LDAP server" msgstr "" -#: cps/admin.py:1665 +#: cps/admin.py:1662 msgid "At Least One LDAP User Not Found in Database" msgstr "" -#: cps/admin.py:1667 +#: cps/admin.py:1664 msgid "{} User Successfully Imported" msgstr "" -#: cps/admin.py:1725 +#: cps/admin.py:1722 msgid "DB Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1745 +#: cps/admin.py:1742 msgid "DB is not Writeable" msgstr "" -#: cps/admin.py:1761 +#: cps/admin.py:1758 msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1765 +#: cps/admin.py:1762 msgid "Certfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1842 +#: cps/admin.py:1840 msgid "Password length has to be between 1 and 40" msgstr "" -#: cps/admin.py:1896 +#: cps/admin.py:1894 #, fuzzy msgid "Database Settings updated" msgstr "Sähköpostipalvelimen tiedot päivitetty" -#: cps/admin.py:1904 +#: cps/admin.py:1902 #, fuzzy msgid "Database Configuration" msgstr "Ominaisuuksien asetukset" -#: cps/admin.py:1919 cps/web.py:1290 +#: cps/admin.py:1917 cps/web.py:1290 msgid "Oops! Please complete all fields." msgstr "Ole hyvä ja täytä kaikki kentät!" -#: cps/admin.py:1928 +#: cps/admin.py:1926 msgid "E-mail is not from valid domain" msgstr "Sähköpostiosoite ei ole toimivasta domainista" -#: cps/admin.py:1934 +#: cps/admin.py:1932 msgid "Add new user" msgstr "Lisää uusi käyttäjä" -#: cps/admin.py:1945 +#: cps/admin.py:1943 #, python-format msgid "User '%(user)s' created" msgstr "Käyttäjä '%(user)s' lisätty" -#: cps/admin.py:1951 +#: cps/admin.py:1949 #, fuzzy msgid "Oops! An account already exists for this Email. or name." msgstr "Tälle sähköpostiosoitteelle tai tunnukselle löytyi jo tili." -#: cps/admin.py:1981 +#: cps/admin.py:1979 #, python-format msgid "User '%(nick)s' deleted" msgstr "Käyttäjä '%(nick)s' poistettu" -#: cps/admin.py:1984 +#: cps/admin.py:1982 msgid "Can't delete Guest User" msgstr "" -#: cps/admin.py:1987 +#: cps/admin.py:1985 msgid "No admin user remaining, can't delete user" msgstr "Pääkäyttäjiä ei jää jäljelle, käyttäjää ei voi poistaa" -#: cps/admin.py:2042 cps/web.py:1469 +#: cps/admin.py:2040 cps/web.py:1469 msgid "Email can't be empty and has to be a valid Email" msgstr "" -#: cps/admin.py:2068 +#: cps/admin.py:2066 #, python-format msgid "User '%(nick)s' updated" msgstr "Käyttäjä '%(nick)s' päivitetty" @@ -527,12 +527,12 @@ msgstr "ei asennettu" msgid "Execution permissions missing" msgstr "" -#: cps/db.py:756 cps/search.py:137 cps/web.py:747 +#: cps/db.py:768 cps/search.py:137 cps/web.py:747 #, python-format msgid "Custom Column No.%(column)d does not exist in calibre database" msgstr "" -#: cps/db.py:996 cps/templates/config_edit.html:203 +#: cps/db.py:1008 cps/templates/config_edit.html:203 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 #: cps/web.py:562 cps/web.py:596 cps/web.py:641 cps/web.py:681 cps/web.py:708 #: cps/web.py:989 cps/web.py:1019 cps/web.py:1064 cps/web.py:1092 @@ -540,100 +540,105 @@ msgstr "" msgid "None" msgstr "Ei mitään" -#: cps/editbooks.py:124 cps/editbooks.py:912 cps/web.py:529 cps/web.py:1561 -#: cps/web.py:1605 cps/web.py:1650 +#: cps/editbooks.py:108 cps/editbooks.py:929 cps/web.py:529 cps/web.py:1561 +#: cps/web.py:1606 cps/web.py:1651 msgid "Oops! Selected book is unavailable. File does not exist or is not accessible" msgstr "Virhe eKirjan avaamisessa. Tiedostoa ei ole tai se ei ole saatavilla:" -#: cps/editbooks.py:168 cps/editbooks.py:1263 +#: cps/editbooks.py:151 cps/editbooks.py:1263 msgid "User has no rights to upload cover" msgstr "" -#: cps/editbooks.py:188 cps/editbooks.py:733 +#: cps/editbooks.py:171 cps/editbooks.py:744 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "" -#: cps/editbooks.py:230 +#: cps/editbooks.py:213 msgid "Metadata successfully updated" msgstr "Metadata päivitetty onnistuneesti" -#: cps/editbooks.py:248 +#: cps/editbooks.py:231 msgid "Error editing book: {}" msgstr "" -#: cps/editbooks.py:305 +#: cps/editbooks.py:289 #, python-format msgid "File %(file)s uploaded" msgstr "Tiedosto %(file)s tallennettu" -#: cps/editbooks.py:333 +#: cps/editbooks.py:317 msgid "Source or destination format for conversion missing" msgstr "Lähteen tai kohteen tiedostomuoto puuttuu" -#: cps/editbooks.py:341 +#: cps/editbooks.py:325 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "Kirja lisätty muutosjonoon muotoon %(book_format)s" -#: cps/editbooks.py:345 +#: cps/editbooks.py:329 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "Kirjan muunnoksessa tapahtui virhe: %(res)s" -#: cps/editbooks.py:652 +#: cps/editbooks.py:662 msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgstr "" -#: cps/editbooks.py:707 cps/editbooks.py:1043 +#: cps/editbooks.py:718 cps/editbooks.py:1049 #, fuzzy, python-format msgid "'%(langname)s' is not a valid language" msgstr "%(langname)s ei ole kelvollinen kieli" -#: cps/editbooks.py:745 cps/editbooks.py:1203 +#: cps/editbooks.py:756 cps/editbooks.py:1192 +#, fuzzy +msgid "File type isn't allowed to be uploaded to this server" +msgstr "Tiedostopääte '%(ext)s' ei ole sallittujen palvelimelle ladattavien listalla" + +#: cps/editbooks.py:762 cps/editbooks.py:1202 #, python-format msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgstr "Tiedostopääte '%(ext)s' ei ole sallittujen palvelimelle ladattavien listalla" -#: cps/editbooks.py:749 cps/editbooks.py:1207 +#: cps/editbooks.py:766 cps/editbooks.py:1206 msgid "File to be uploaded must have an extension" msgstr "Ladattavalla tiedostolla on oltava tiedostopääte" -#: cps/editbooks.py:757 +#: cps/editbooks.py:774 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "" -#: cps/editbooks.py:777 +#: cps/editbooks.py:794 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "" -#: cps/editbooks.py:834 cps/editbooks.py:836 +#: cps/editbooks.py:851 cps/editbooks.py:853 msgid "Book Format Successfully Deleted" msgstr "" -#: cps/editbooks.py:843 cps/editbooks.py:845 +#: cps/editbooks.py:860 cps/editbooks.py:862 msgid "Book Successfully Deleted" msgstr "" -#: cps/editbooks.py:897 +#: cps/editbooks.py:914 msgid "You are missing permissions to delete books" msgstr "" -#: cps/editbooks.py:947 +#: cps/editbooks.py:964 msgid "edit metadata" msgstr "muokkaa metadataa" -#: cps/editbooks.py:996 +#: cps/editbooks.py:1013 #, python-format msgid "%(seriesindex)s is not a valid number, skipping" msgstr "" -#: cps/editbooks.py:1198 +#: cps/editbooks.py:1197 msgid "User has no rights to upload additional file formats" msgstr "" -#: cps/editbooks.py:1219 +#: cps/editbooks.py:1218 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "Polun %(path)s luonti epäonnistui (Ei oikeutta)." @@ -652,7 +657,7 @@ msgstr "Tiedostoformaatti %(ext)s lisätty %(book)s" msgid "Google Drive setup not completed, try to deactivate and activate Google Drive again" msgstr "Google Drive asetukset ei ole valmiit. Koita poistaa Google Drive käytöstä ja ottaa se uudelleen käyttöön" -#: cps/gdrive.py:95 +#: cps/gdrive.py:96 msgid "Callback domain is not verified, please follow steps to verify domain in google developer console" msgstr "Paluuosoitteen domain ei ole varmistettu, seuraa ohjeita vamistaaksesi sen googlen kehittäjäkonsolissa" @@ -661,7 +666,7 @@ msgstr "Paluuosoitteen domain ei ole varmistettu, seuraa ohjeita vamistaaksesi s msgid "%(format)s format not found for book id: %(book)d" msgstr "%(format)s tiedostomuotoa ei löytynyt kirjalle: %(book)d" -#: cps/helper.py:93 cps/tasks/convert.py:86 +#: cps/helper.py:93 cps/tasks/convert.py:89 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "%(format)s ei löytynyt Google Drivesta: %(fn)s" @@ -738,122 +743,118 @@ msgstr "" msgid "Deleting book %(id)s from database only, book path in database not valid: %(path)s" msgstr "" -#: cps/helper.py:452 +#: cps/helper.py:465 #, fuzzy, python-format msgid "Rename author 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" -#: cps/helper.py:524 cps/helper.py:533 +#: cps/helper.py:536 cps/helper.py:545 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "Tiedostoa %(file)s ei löytynyt Google Drivesta" -#: cps/helper.py:567 +#: cps/helper.py:587 #, python-format 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" -#: cps/helper.py:587 -msgid "Error in rename file in path: {}" -msgstr "" - -#: cps/helper.py:605 +#: cps/helper.py:625 #, python-format msgid "Book path %(path)s not found on Google Drive" msgstr "Kirjan polkua %(path)s ei löytynyt Google Drivesta" -#: cps/helper.py:670 +#: cps/helper.py:685 msgid "Found an existing account for this Email address" msgstr "" -#: cps/helper.py:678 +#: cps/helper.py:693 msgid "This username is already taken" msgstr "" -#: cps/helper.py:690 +#: cps/helper.py:705 msgid "Invalid Email address format" msgstr "" -#: cps/helper.py:710 +#: cps/helper.py:726 msgid "Password doesn't comply with password validation rules" msgstr "" -#: cps/helper.py:859 +#: cps/helper.py:873 msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "" -#: cps/helper.py:869 +#: cps/helper.py:883 msgid "Error Downloading Cover" msgstr "" -#: cps/helper.py:872 +#: cps/helper.py:886 msgid "Cover Format Error" msgstr "" -#: cps/helper.py:875 +#: cps/helper.py:889 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "" -#: cps/helper.py:885 +#: cps/helper.py:899 msgid "Failed to create path for cover" msgstr "" -#: cps/helper.py:901 +#: cps/helper.py:915 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "" -#: cps/helper.py:912 +#: cps/helper.py:926 msgid "Only jpg/jpeg/png/webp/bmp files are supported as coverfile" msgstr "" -#: cps/helper.py:924 +#: cps/helper.py:938 msgid "Invalid cover file content" msgstr "" -#: cps/helper.py:928 +#: cps/helper.py:942 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "" -#: cps/helper.py:999 cps/helper.py:1156 +#: cps/helper.py:1014 cps/helper.py:1171 #, fuzzy msgid "Cover" msgstr "Löydä" -#: cps/helper.py:1016 +#: cps/helper.py:1031 msgid "UnRar binary file not found" msgstr "" -#: cps/helper.py:1027 +#: cps/helper.py:1042 msgid "Error executing UnRar" msgstr "" -#: cps/helper.py:1035 +#: cps/helper.py:1050 msgid "Could not find the specified directory" msgstr "" -#: cps/helper.py:1038 +#: cps/helper.py:1053 msgid "Please specify a directory, not a file" msgstr "" -#: cps/helper.py:1052 +#: cps/helper.py:1067 msgid "Calibre binaries not viable" msgstr "" -#: cps/helper.py:1061 +#: cps/helper.py:1076 #, python-format msgid "Missing calibre binaries: %(missing)s" msgstr "" -#: cps/helper.py:1063 +#: cps/helper.py:1078 #, python-format msgid "Missing executable permissions: %(missing)s" msgstr "" -#: cps/helper.py:1068 +#: cps/helper.py:1083 msgid "Error executing Calibre" msgstr "" -#: cps/helper.py:1158 cps/templates/admin.html:216 +#: cps/helper.py:1173 cps/templates/admin.html:216 msgid "Queue all books for metadata backup" msgstr "" @@ -899,35 +900,35 @@ msgstr "" msgid "Not Linked to %(oauth)s" msgstr "" -#: cps/oauth_bb.py:261 +#: cps/oauth_bb.py:262 msgid "Failed to log in with GitHub." msgstr "GitHubiin kirjautuminen epäonnistui." -#: cps/oauth_bb.py:267 +#: cps/oauth_bb.py:268 msgid "Failed to fetch user info from GitHub." msgstr "Käyttäjätietojen haku GitHubista epäonnistui" -#: cps/oauth_bb.py:279 +#: cps/oauth_bb.py:280 msgid "Failed to log in with Google." msgstr "Googleen kirjautuminen epäonnistui." -#: cps/oauth_bb.py:285 +#: cps/oauth_bb.py:286 msgid "Failed to fetch user info from Google." msgstr "Käyttäjätietojen haku Googlesta epäonnistui." -#: cps/oauth_bb.py:332 +#: cps/oauth_bb.py:334 msgid "GitHub Oauth error, please retry later." msgstr "GitHub Oauth virhe, yritä myöhemmin uudelleen." -#: cps/oauth_bb.py:335 +#: cps/oauth_bb.py:337 msgid "GitHub Oauth error: {}" msgstr "" -#: cps/oauth_bb.py:356 +#: cps/oauth_bb.py:358 msgid "Google Oauth error, please retry later." msgstr "Google Oauth virhe, yritä myöhemmin uudelleen." -#: cps/oauth_bb.py:359 +#: cps/oauth_bb.py:361 msgid "Google Oauth error: {}" msgstr "" @@ -1288,32 +1289,32 @@ msgstr "" msgid "Unknown Status" msgstr "Tuntematon tila" -#: cps/updater.py:431 cps/updater.py:442 cps/updater.py:543 cps/updater.py:558 +#: cps/updater.py:433 cps/updater.py:444 cps/updater.py:545 cps/updater.py:560 msgid "Unexpected data while reading update information" msgstr "Odottamatonta tietoa luettaessa päivitystietoa" -#: cps/updater.py:438 cps/updater.py:550 +#: cps/updater.py:440 cps/updater.py:552 msgid "No update available. You already have the latest version installed" msgstr "Ei päivitystä saatavilla. Sinulla on jo uusin versio" -#: cps/updater.py:456 +#: cps/updater.py:458 msgid "A new update is available. Click on the button below to update to the latest version." msgstr "Uusi päivitys saatavilla. Paina alla olevaa nappia päivittääksesi uusimpaan versioon." -#: cps/updater.py:474 +#: cps/updater.py:476 msgid "Could not fetch update information" msgstr "Päivitystiedon hakeminen epäonnistui" -#: cps/updater.py:484 +#: cps/updater.py:486 msgid "Click on the button below to update to the latest stable version." msgstr "Paina alla olevaa nappia päivittääksesi uusimpaan vakaaseen versioon." -#: cps/updater.py:493 cps/updater.py:507 cps/updater.py:518 +#: cps/updater.py:495 cps/updater.py:509 cps/updater.py:520 #, python-format msgid "A new update is available. Click on the button below to update to version: %(version)s" msgstr "Uusi päivitys saatavilla. Paina alla olevaa nappia päivittääksesi versioon: %(version)s" -#: cps/updater.py:536 +#: cps/updater.py:538 msgid "No release information available" msgstr "Ei päivitystietoa saatavilla" @@ -1491,50 +1492,50 @@ msgstr "Profiili päivitetty" msgid "Oops! An account already exists for this Email." msgstr "Tälle sähköpostiosoitteelle läytyi jo käyttäjätunnus." -#: cps/services/gmail.py:58 +#: cps/services/gmail.py:59 msgid "Found no valid gmail.json file with OAuth information" msgstr "" -#: cps/tasks/convert.py:105 +#: cps/tasks/convert.py:108 #, fuzzy, python-format msgid "%(book)s send to E-Reader" msgstr "Lähetä Kindleen" -#: cps/tasks/convert.py:167 +#: cps/tasks/convert.py:170 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "" -#: cps/tasks/convert.py:201 +#: cps/tasks/convert.py:204 #, python-format msgid "%(format)s format not found on disk" msgstr "" -#: cps/tasks/convert.py:205 +#: cps/tasks/convert.py:208 msgid "Ebook converter failed with unknown error" msgstr "" -#: cps/tasks/convert.py:224 +#: cps/tasks/convert.py:227 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "" -#: cps/tasks/convert.py:245 +#: cps/tasks/convert.py:248 #, python-format msgid "Converted file not found or more than one file in folder %(folder)s" msgstr "" -#: cps/tasks/convert.py:287 +#: cps/tasks/convert.py:291 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "E-kirjan muunnos epäonnistui: %(error)s" -#: cps/tasks/convert.py:310 +#: cps/tasks/convert.py:314 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "" -#: cps/tasks/convert.py:315 +#: cps/tasks/convert.py:319 msgid "Convert" msgstr "" @@ -1546,7 +1547,7 @@ msgstr "" msgid "E-mail" msgstr "" -#: cps/tasks/metadata_backup.py:33 +#: cps/tasks/metadata_backup.py:34 #, fuzzy msgid "Backing up Metadata" msgstr "muokkaa metadataa" @@ -1560,20 +1561,20 @@ msgstr "" msgid "Generated %(count)s cover thumbnails" msgstr "" -#: cps/tasks/thumbnail.py:230 cps/tasks/thumbnail.py:443 -#: cps/tasks/thumbnail.py:511 +#: cps/tasks/thumbnail.py:231 cps/tasks/thumbnail.py:444 +#: cps/tasks/thumbnail.py:512 msgid "Cover Thumbnails" msgstr "" -#: cps/tasks/thumbnail.py:289 +#: cps/tasks/thumbnail.py:290 msgid "Generated {0} series thumbnails" msgstr "" -#: cps/tasks/thumbnail.py:454 +#: cps/tasks/thumbnail.py:455 msgid "Clearing cover thumbnail cache" msgstr "" -#: cps/tasks/upload.py:38 cps/templates/admin.html:20 +#: cps/tasks/upload.py:39 cps/templates/admin.html:20 #: cps/templates/layout.html:81 cps/templates/user_table.html:145 msgid "Upload" msgstr "Lähetä" @@ -1821,7 +1822,7 @@ msgstr "Ok" #: cps/templates/admin.html:259 cps/templates/admin.html:273 #: cps/templates/book_edit.html:214 cps/templates/book_table.html:127 -#: cps/templates/config_db.html:66 cps/templates/config_edit.html:423 +#: cps/templates/config_db.html:66 cps/templates/config_edit.html:427 #: cps/templates/config_view_edit.html:175 cps/templates/detail.html:342 #: cps/templates/modal_dialogs.html:64 cps/templates/modal_dialogs.html:99 #: cps/templates/modal_dialogs.html:117 cps/templates/modal_dialogs.html:135 @@ -2007,7 +2008,7 @@ msgid "Fetch Metadata" msgstr "Hae metadata" #: cps/templates/book_edit.html:213 cps/templates/config_db.html:65 -#: cps/templates/config_edit.html:422 cps/templates/config_view_edit.html:174 +#: cps/templates/config_edit.html:426 cps/templates/config_view_edit.html:174 #: cps/templates/email_edit.html:65 cps/templates/schedule_edit.html:44 #: cps/templates/shelf_edit.html:25 cps/templates/shelf_order.html:41 #: cps/templates/user_edit.html:142 @@ -2480,47 +2481,51 @@ msgid "Configure Backend for Limiter" msgstr "" #: cps/templates/config_edit.html:376 -msgid "Options for Limiter" +msgid "Options for Limiter Backend" msgstr "" -#: cps/templates/config_edit.html:381 +#: cps/templates/config_edit.html:382 +msgid "Check if file extensions matches file content on upload" +msgstr "" + +#: cps/templates/config_edit.html:385 msgid "Session protection" msgstr "" -#: cps/templates/config_edit.html:383 +#: cps/templates/config_edit.html:387 msgid "Basic" msgstr "" -#: cps/templates/config_edit.html:384 +#: cps/templates/config_edit.html:388 msgid "Strong" msgstr "" -#: cps/templates/config_edit.html:389 +#: cps/templates/config_edit.html:393 #, fuzzy msgid "User Password policy" msgstr "Nollaa käyttäjän salasana" -#: cps/templates/config_edit.html:393 +#: cps/templates/config_edit.html:397 msgid "Minimum password length" msgstr "" -#: cps/templates/config_edit.html:398 +#: cps/templates/config_edit.html:402 msgid "Enforce number" msgstr "" -#: cps/templates/config_edit.html:402 +#: cps/templates/config_edit.html:406 msgid "Enforce lowercase characters" msgstr "" -#: cps/templates/config_edit.html:406 +#: cps/templates/config_edit.html:410 msgid "Enforce uppercase characters" msgstr "" -#: cps/templates/config_edit.html:410 +#: cps/templates/config_edit.html:414 msgid "Enforce characters (needed For Chinese/Japanese/Korean Characters)" msgstr "" -#: cps/templates/config_edit.html:414 +#: cps/templates/config_edit.html:418 msgid "Enforce special characters" msgstr "" @@ -2652,6 +2657,11 @@ msgstr "Merkitse lukemattomaksi" msgid "Mark As Read" msgstr "Merkitse luetuksi" +#: cps/templates/detail.html:254 +#, fuzzy +msgid "Mark Book as Read or Unread" +msgstr "Merkitse lukemattomaksi" + #: cps/templates/detail.html:254 cps/templates/listenmp3.html:159 msgid "Read" msgstr "Luettu" @@ -2664,10 +2674,15 @@ msgstr "" msgid "Add to archive" msgstr "" -#: cps/templates/detail.html:267 cps/templates/listenmp3.html:167 -msgid "Archived" +#: cps/templates/detail.html:267 +msgid "Mark Book as archived or not, to hide it in Calibre-Web and delete it from Kobo Reader" msgstr "" +#: cps/templates/detail.html:267 +#, fuzzy +msgid "Archive" +msgstr "Hae" + #: cps/templates/detail.html:278 cps/templates/listenmp3.html:177 msgid "Description:" msgstr "Kuvaus:" @@ -2944,6 +2959,10 @@ msgstr "Kirjan tiedot" msgid "Grid" msgstr "" +#: cps/templates/listenmp3.html:167 +msgid "Archived" +msgstr "" + #: cps/templates/login.html:18 msgid "Remember Me" msgstr "Muista minut" diff --git a/cps/translations/fr/LC_MESSAGES/messages.mo b/cps/translations/fr/LC_MESSAGES/messages.mo index 8a0ae5a4..66bf3345 100644 Binary files a/cps/translations/fr/LC_MESSAGES/messages.mo and b/cps/translations/fr/LC_MESSAGES/messages.mo differ diff --git a/cps/translations/fr/LC_MESSAGES/messages.po b/cps/translations/fr/LC_MESSAGES/messages.po index d49604bc..b79256bc 100644 --- a/cps/translations/fr/LC_MESSAGES/messages.po +++ b/cps/translations/fr/LC_MESSAGES/messages.po @@ -22,7 +22,7 @@ msgid "" msgstr "" "Project-Id-Version: Calibre-Web\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2024-06-09 12:26+0200\n" +"POT-Creation-Date: 2024-06-30 12:19+0200\n" "PO-Revision-Date: 2020-06-07 06:47+0200\n" "Last-Translator: \n" "Language: fr\n" @@ -31,7 +31,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.11.0\n" +"Generated-By: Babel 2.13.1\n" #: cps/about.py:84 msgid "Statistics" @@ -60,9 +60,9 @@ msgstr "Commande inconnue" msgid "Success! Books queued for Metadata Backup, please check Tasks for result" msgstr "Teste les courriels en file d’attente pour l’envoi à %(email)s, veuillez vérifier le résultat des tâches" -#: cps/admin.py:207 cps/editbooks.py:591 cps/editbooks.py:593 -#: cps/editbooks.py:631 cps/editbooks.py:648 cps/editbooks.py:1280 -#: cps/updater.py:613 cps/uploader.py:93 cps/uploader.py:102 +#: cps/admin.py:207 cps/editbooks.py:573 cps/editbooks.py:575 +#: cps/editbooks.py:615 cps/editbooks.py:658 cps/editbooks.py:1280 +#: cps/updater.py:615 cps/uploader.py:93 cps/uploader.py:102 msgid "Unknown" msgstr "Inconnu" @@ -83,12 +83,12 @@ msgstr "Configuration de l’interface utilisateur" msgid "Edit Users" msgstr "Éditer les utilisateurs" -#: cps/admin.py:368 cps/opds.py:541 cps/templates/grid.html:14 +#: cps/admin.py:368 cps/opds.py:542 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "Tout" -#: cps/admin.py:395 cps/admin.py:1417 +#: cps/admin.py:395 cps/admin.py:1414 msgid "User not found" msgstr "L'utilisateur n'a pas été trouvé" @@ -105,7 +105,7 @@ msgstr "Montrer tout" msgid "Malformed request" msgstr "Demande malformée" -#: cps/admin.py:471 cps/admin.py:2048 +#: cps/admin.py:471 cps/admin.py:2046 msgid "Guest Name can't be changed" msgstr "Le nom de l’invité ne peut pas être modifié" @@ -113,7 +113,7 @@ msgstr "Le nom de l’invité ne peut pas être modifié" msgid "Guest can't have this role" msgstr "L’invité ne peut pas avoir ce rôle" -#: cps/admin.py:495 cps/admin.py:2002 +#: cps/admin.py:495 cps/admin.py:2000 msgid "No admin user remaining, can't remove admin role" msgstr "Aucun utilisateur admin restant, impossible de supprimer le rôle admin" @@ -145,7 +145,7 @@ msgstr "Aucun paramètre régional valide n’est donné" msgid "No Valid Book Language Given" msgstr "Aucune langue de livre valide donnée" -#: cps/admin.py:535 cps/editbooks.py:457 +#: cps/admin.py:535 cps/editbooks.py:440 msgid "Parameter not found" msgstr "Paramètre non trouvé" @@ -157,7 +157,7 @@ msgstr "Colonne de lecture non valide" msgid "Invalid Restricted Column" msgstr "Colonne restreinte non valide" -#: cps/admin.py:598 cps/admin.py:1873 +#: cps/admin.py:598 cps/admin.py:1871 msgid "Calibre-Web configuration updated" msgstr "Configuration de Calibre-Web mise à jour" @@ -241,298 +241,298 @@ msgstr "Étiquette introuvable" msgid "Invalid Action" msgstr "Action invalide" -#: cps/admin.py:1123 +#: cps/admin.py:1120 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "client_secrets.json n'est pas configuré pour l'application Web" -#: cps/admin.py:1168 +#: cps/admin.py:1165 msgid "Logfile Location is not Valid, Please Enter Correct Path" msgstr "L'emplacement du fichier logfile est incorrect, veuillez saisir un chemin valide" -#: cps/admin.py:1174 +#: cps/admin.py:1171 msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgstr "L'emplacement du fichier Access Logfile est incorrect, veuillez saisir un chemin valide" -#: cps/admin.py:1208 +#: cps/admin.py:1205 msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgstr "Veuillez saisir un fournisseur LDAP, Port, DN et l'identifiant objet de l'utilisateur" -#: cps/admin.py:1214 +#: cps/admin.py:1211 #, fuzzy msgid "Please Enter a LDAP Service Account and Password" msgstr "Veuillez entrer un nom d'utilisateur valide pour réinitialiser le mot de passe" -#: cps/admin.py:1217 +#: cps/admin.py:1214 msgid "Please Enter a LDAP Service Account" msgstr "Veuillez entrer un compte de service LDAP" -#: cps/admin.py:1222 +#: cps/admin.py:1219 #, python-format msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgstr "Le filtre objet du groupe LDAP a besoin d'un identifiant de format \"%s\"" -#: cps/admin.py:1224 +#: cps/admin.py:1221 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "Le filtre objet du groupe LDAP a une parenthèse non gérée" -#: cps/admin.py:1228 +#: cps/admin.py:1225 #, python-format msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgstr "Le filtre objet de l'utilisateur LDAP a besoin d'un identifiant de format \"%s\"" -#: cps/admin.py:1230 +#: cps/admin.py:1227 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "Le filtre objet de l'utilisateur LDAP a une parenthèse non gérée" -#: cps/admin.py:1237 +#: cps/admin.py:1234 #, python-format msgid "LDAP Member User Filter needs to Have One \"%s\" Format Identifier" msgstr "Le filtre utilisateur des membres LDAP doit avoir un identificateur de format \"%s\\ »" -#: cps/admin.py:1239 +#: cps/admin.py:1236 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "Le filtre utilisateur de membre LDAP a des parenthèses non appariées" -#: cps/admin.py:1246 +#: cps/admin.py:1243 msgid "LDAP CACertificate, Certificate or Key Location is not Valid, Please Enter Correct Path" msgstr "LDAP CACertificat, certificat ou emplacement de clé non valide, veuillez entrer le chemin correct" -#: cps/admin.py:1277 cps/templates/admin.html:53 +#: cps/admin.py:1274 cps/templates/admin.html:53 msgid "Add New User" msgstr "Ajouter un nouvel utilisateur" -#: cps/admin.py:1286 cps/templates/admin.html:100 +#: cps/admin.py:1283 cps/templates/admin.html:100 msgid "Edit Email Server Settings" msgstr "Modifier les paramètres du serveur de courriels" -#: cps/admin.py:1305 +#: cps/admin.py:1302 msgid "Success! Gmail Account Verified." msgstr "" -#: cps/admin.py:1325 cps/admin.py:1328 cps/admin.py:1713 cps/admin.py:1857 -#: cps/admin.py:1955 cps/admin.py:2076 cps/editbooks.py:243 -#: cps/editbooks.py:319 cps/editbooks.py:1242 cps/shelf.py:90 cps/shelf.py:150 +#: cps/admin.py:1322 cps/admin.py:1325 cps/admin.py:1710 cps/admin.py:1855 +#: cps/admin.py:1953 cps/admin.py:2074 cps/editbooks.py:226 +#: cps/editbooks.py:303 cps/editbooks.py:1242 cps/shelf.py:90 cps/shelf.py:150 #: cps/shelf.py:193 cps/shelf.py:243 cps/shelf.py:280 cps/shelf.py:354 -#: cps/shelf.py:468 cps/tasks/convert.py:150 cps/web.py:1520 +#: cps/shelf.py:468 cps/tasks/convert.py:153 cps/web.py:1520 #, python-format msgid "Oops! Database Error: %(error)s." msgstr "Erreur de la base de données: %(error)s." -#: cps/admin.py:1335 +#: cps/admin.py:1332 #, python-format msgid "Test e-mail queued for sending to %(email)s, please check Tasks for result" msgstr "Teste les courriels en file d’attente pour l’envoi à %(email)s, veuillez vérifier le résultat des tâches" -#: cps/admin.py:1338 +#: cps/admin.py:1335 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "Il y a eu une erreur pendant l’envoi du courriel de test : %(res)s" -#: cps/admin.py:1340 +#: cps/admin.py:1337 msgid "Please configure your e-mail address first..." msgstr "Veuillez d'abord configurer votre adresse de courriel..." -#: cps/admin.py:1342 +#: cps/admin.py:1339 msgid "Email Server Settings updated" msgstr "Les paramètres du serveur de courriels ont été mis à jour" -#: cps/admin.py:1365 cps/templates/admin.html:195 +#: cps/admin.py:1362 cps/templates/admin.html:195 msgid "Edit Scheduled Tasks Settings" msgstr "" -#: cps/admin.py:1377 +#: cps/admin.py:1374 msgid "Invalid start time for task specified" msgstr "" -#: cps/admin.py:1382 +#: cps/admin.py:1379 msgid "Invalid duration for task specified" msgstr "" -#: cps/admin.py:1392 +#: cps/admin.py:1389 msgid "Scheduled tasks settings updated" msgstr "" -#: cps/admin.py:1402 cps/admin.py:1451 cps/admin.py:2072 cps/web.py:1316 +#: cps/admin.py:1399 cps/admin.py:1448 cps/admin.py:2070 cps/web.py:1316 msgid "Oops! An unknown error occurred. Please try again later." msgstr "Une erreur inconnue est survenue. Veuillez réessayer plus tard." -#: cps/admin.py:1406 +#: cps/admin.py:1403 msgid "Settings DB is not Writeable" msgstr "" -#: cps/admin.py:1436 cps/admin.py:2064 +#: cps/admin.py:1433 cps/admin.py:2062 #, python-format msgid "Edit User %(nick)s" msgstr "Éditer l'utilisateur %(nick)s" -#: cps/admin.py:1448 +#: cps/admin.py:1445 #, fuzzy, python-format msgid "Success! Password for user %(user)s reset" msgstr "Le mot de passe de l’utilisateur %(user)s a été réinitialisé" -#: cps/admin.py:1454 +#: cps/admin.py:1451 #, fuzzy msgid "Oops! Please configure the SMTP mail settings." msgstr "Veuillez configurer les paramètres SMTP au préalable..." -#: cps/admin.py:1465 +#: cps/admin.py:1462 msgid "Logfile viewer" msgstr "Visualiseur de fichier journal" -#: cps/admin.py:1531 +#: cps/admin.py:1528 msgid "Requesting update package" msgstr "Demande de mise à jour" -#: cps/admin.py:1532 +#: cps/admin.py:1529 msgid "Downloading update package" msgstr "Téléchargement de la mise à jour" -#: cps/admin.py:1533 +#: cps/admin.py:1530 msgid "Unzipping update package" msgstr "Décompression de la mise à jour" -#: cps/admin.py:1534 +#: cps/admin.py:1531 msgid "Replacing files" msgstr "Remplacement des fichiers" -#: cps/admin.py:1535 +#: cps/admin.py:1532 msgid "Database connections are closed" msgstr "Les connexions à la base de données ont été fermées" -#: cps/admin.py:1536 +#: cps/admin.py:1533 msgid "Stopping server" msgstr "Arrêt du serveur" -#: cps/admin.py:1537 +#: cps/admin.py:1534 msgid "Update finished, please press okay and reload page" msgstr "Mise à jour terminée, merci d’appuyer sur okay et de rafraîchir la page" -#: cps/admin.py:1538 cps/admin.py:1539 cps/admin.py:1540 cps/admin.py:1541 -#: cps/admin.py:1542 cps/admin.py:1543 +#: cps/admin.py:1535 cps/admin.py:1536 cps/admin.py:1537 cps/admin.py:1538 +#: cps/admin.py:1539 cps/admin.py:1540 msgid "Update failed:" msgstr "La mise à jour a échoué :" -#: cps/admin.py:1538 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 +#: cps/admin.py:1535 cps/updater.py:391 cps/updater.py:626 cps/updater.py:628 msgid "HTTP Error" msgstr "Erreur HTTP" -#: cps/admin.py:1539 cps/updater.py:391 cps/updater.py:628 +#: cps/admin.py:1536 cps/updater.py:393 cps/updater.py:630 msgid "Connection error" msgstr "Erreur de connexion" -#: cps/admin.py:1540 cps/updater.py:393 cps/updater.py:630 +#: cps/admin.py:1537 cps/updater.py:395 cps/updater.py:632 msgid "Timeout while establishing connection" msgstr "Délai d'attente dépassé lors de l'établissement de connexion" -#: cps/admin.py:1541 cps/updater.py:395 cps/updater.py:632 +#: cps/admin.py:1538 cps/updater.py:397 cps/updater.py:634 msgid "General error" msgstr "Erreur générale" -#: cps/admin.py:1542 +#: cps/admin.py:1539 #, fuzzy msgid "Update file could not be saved in temp dir" msgstr "Le fichier de mise à jour ne peut pas être sauvegardé dans le répertoire temporaire" -#: cps/admin.py:1543 +#: cps/admin.py:1540 msgid "Files could not be replaced during update" msgstr "Les fichiers n’ont pas pu être remplacés pendant la mise à jour" -#: cps/admin.py:1567 +#: cps/admin.py:1564 #, fuzzy msgid "Failed to extract at least One LDAP User" msgstr "Impossible de créer au moins un utilisateur LDAP" -#: cps/admin.py:1612 +#: cps/admin.py:1609 msgid "Failed to Create at Least One LDAP User" msgstr "Impossible de créer au moins un utilisateur LDAP" -#: cps/admin.py:1625 +#: cps/admin.py:1622 #, python-format msgid "Error: %(ldaperror)s" msgstr "Erreur : %(ldaperror)s" -#: cps/admin.py:1629 +#: cps/admin.py:1626 msgid "Error: No user returned in response of LDAP server" msgstr "Erreur : Aucun utilisateur renvoyé dans la réponse LDAP du serveur" -#: cps/admin.py:1665 +#: cps/admin.py:1662 msgid "At Least One LDAP User Not Found in Database" msgstr "Au moins un utilisateur LDAP n'a pas été trouvé dans la base de données" -#: cps/admin.py:1667 +#: cps/admin.py:1664 msgid "{} User Successfully Imported" msgstr "{} utilisateur importé avec succès" -#: cps/admin.py:1725 +#: cps/admin.py:1722 msgid "DB Location is not Valid, Please Enter Correct Path" msgstr "L'emplacement de la base de données est incorrect, veuillez saisir un chemin valide" -#: cps/admin.py:1745 +#: cps/admin.py:1742 msgid "DB is not Writeable" msgstr "La base de données n'est pas accessible en écriture" -#: cps/admin.py:1761 +#: cps/admin.py:1758 msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgstr "L'emplacement du fichier Keyfile est incorrect, veuillez saisir un chemin valide" -#: cps/admin.py:1765 +#: cps/admin.py:1762 msgid "Certfile Location is not Valid, Please Enter Correct Path" msgstr "L'emplacement du fichier Certfile est incorrect, veuillez saisir un chemin valide" -#: cps/admin.py:1842 +#: cps/admin.py:1840 msgid "Password length has to be between 1 and 40" msgstr "" -#: cps/admin.py:1896 +#: cps/admin.py:1894 #, fuzzy msgid "Database Settings updated" msgstr "Les paramètres du serveur de courriels ont été mis à jour" -#: cps/admin.py:1904 +#: cps/admin.py:1902 #, fuzzy msgid "Database Configuration" msgstr "Configuration des options" -#: cps/admin.py:1919 cps/web.py:1290 +#: cps/admin.py:1917 cps/web.py:1290 msgid "Oops! Please complete all fields." msgstr "Veuillez compléter tous les champs !" -#: cps/admin.py:1928 +#: cps/admin.py:1926 msgid "E-mail is not from valid domain" msgstr "Cette adresse de courriel n’appartient pas à un domaine valide" -#: cps/admin.py:1934 +#: cps/admin.py:1932 msgid "Add new user" msgstr "Ajouter un nouvel utilisateur" -#: cps/admin.py:1945 +#: cps/admin.py:1943 #, python-format msgid "User '%(user)s' created" msgstr "Utilisateur '%(user)s' créé" -#: cps/admin.py:1951 +#: cps/admin.py:1949 #, fuzzy msgid "Oops! An account already exists for this Email. or name." msgstr "Un compte existant a été trouvé pour cette adresse de courriel ou pour ce surnom." -#: cps/admin.py:1981 +#: cps/admin.py:1979 #, python-format msgid "User '%(nick)s' deleted" msgstr "Utilisateur '%(nick)s' supprimé" -#: cps/admin.py:1984 +#: cps/admin.py:1982 msgid "Can't delete Guest User" msgstr "Impossible de supprimer l’utilisateur Invité" -#: cps/admin.py:1987 +#: cps/admin.py:1985 msgid "No admin user remaining, can't delete user" msgstr "Aucun utilisateur admin restant, impossible de supprimer l’utilisateur" -#: cps/admin.py:2042 cps/web.py:1469 +#: cps/admin.py:2040 cps/web.py:1469 msgid "Email can't be empty and has to be a valid Email" msgstr "" -#: cps/admin.py:2068 +#: cps/admin.py:2066 #, python-format msgid "User '%(nick)s' updated" msgstr "Utilisateur '%(nick)s' mis à jour" @@ -545,12 +545,12 @@ msgstr "non installé" msgid "Execution permissions missing" msgstr "Les permissions d'exécutions manquantes" -#: cps/db.py:756 cps/search.py:137 cps/web.py:747 +#: cps/db.py:768 cps/search.py:137 cps/web.py:747 #, fuzzy, python-format msgid "Custom Column No.%(column)d does not exist in calibre database" msgstr "La colonne personnalisée No.%(column)d n'existe pas dans la base de données calibre" -#: cps/db.py:996 cps/templates/config_edit.html:203 +#: cps/db.py:1008 cps/templates/config_edit.html:203 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 #: cps/web.py:562 cps/web.py:596 cps/web.py:641 cps/web.py:681 cps/web.py:708 #: cps/web.py:989 cps/web.py:1019 cps/web.py:1064 cps/web.py:1092 @@ -558,100 +558,105 @@ msgstr "La colonne personnalisée No.%(column)d n'existe pas dans la base de don msgid "None" msgstr "Aucun" -#: cps/editbooks.py:124 cps/editbooks.py:912 cps/web.py:529 cps/web.py:1561 -#: cps/web.py:1605 cps/web.py:1650 +#: cps/editbooks.py:108 cps/editbooks.py:929 cps/web.py:529 cps/web.py:1561 +#: cps/web.py:1606 cps/web.py:1651 msgid "Oops! Selected book is unavailable. File does not exist or is not accessible" msgstr "Erreur d'ouverture du livre numérique. Le fichier n'existe pas ou n'est pas accessible" -#: cps/editbooks.py:168 cps/editbooks.py:1263 +#: cps/editbooks.py:151 cps/editbooks.py:1263 msgid "User has no rights to upload cover" msgstr "" -#: cps/editbooks.py:188 cps/editbooks.py:733 +#: cps/editbooks.py:171 cps/editbooks.py:744 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "Les identificateurs ne sont pas sensibles à la casse, écrasant l’ancien identificateur" -#: cps/editbooks.py:230 +#: cps/editbooks.py:213 msgid "Metadata successfully updated" msgstr "Les métadonnées ont bien été mises à jour" -#: cps/editbooks.py:248 +#: cps/editbooks.py:231 msgid "Error editing book: {}" msgstr "" -#: cps/editbooks.py:305 +#: cps/editbooks.py:289 #, python-format msgid "File %(file)s uploaded" msgstr "Le fichier %(file)s a été téléchargé" -#: cps/editbooks.py:333 +#: cps/editbooks.py:317 msgid "Source or destination format for conversion missing" msgstr "Le format de conversion de la source ou de la destination est manquant" -#: cps/editbooks.py:341 +#: cps/editbooks.py:325 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "Le livre a été mis avec succès en file de traitement pour conversion vers %(book_format)s" -#: cps/editbooks.py:345 +#: cps/editbooks.py:329 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "Une erreur est survenue au cours de la conversion du livre : %(res)s" -#: cps/editbooks.py:652 +#: cps/editbooks.py:662 msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgstr "Le fichier téléchargé existe probablement dans la librairie, veuillez le modifier avant de le télécharger de nouveau: " -#: cps/editbooks.py:707 cps/editbooks.py:1043 +#: cps/editbooks.py:718 cps/editbooks.py:1049 #, fuzzy, python-format msgid "'%(langname)s' is not a valid language" msgstr "%(langname)s n'est pas une langue valide" -#: cps/editbooks.py:745 cps/editbooks.py:1203 +#: cps/editbooks.py:756 cps/editbooks.py:1192 +#, fuzzy +msgid "File type isn't allowed to be uploaded to this server" +msgstr "L’extension de fichier '%(ext)s' n’est pas autorisée pour être déposée sur ce serveur" + +#: cps/editbooks.py:762 cps/editbooks.py:1202 #, python-format msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgstr "L’extension de fichier '%(ext)s' n’est pas autorisée pour être déposée sur ce serveur" -#: cps/editbooks.py:749 cps/editbooks.py:1207 +#: cps/editbooks.py:766 cps/editbooks.py:1206 msgid "File to be uploaded must have an extension" msgstr "Pour être déposé le fichier doit avoir une extension" -#: cps/editbooks.py:757 +#: cps/editbooks.py:774 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "Le fichier %(filename)s ne peut pas être sauvegardé dans le répertoire temporaire" -#: cps/editbooks.py:777 +#: cps/editbooks.py:794 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "Impossible de déplacer le fichier de couverture %(file)s: %(error)s" -#: cps/editbooks.py:834 cps/editbooks.py:836 +#: cps/editbooks.py:851 cps/editbooks.py:853 msgid "Book Format Successfully Deleted" msgstr "Le format du livre a été supprimé avec succès" -#: cps/editbooks.py:843 cps/editbooks.py:845 +#: cps/editbooks.py:860 cps/editbooks.py:862 msgid "Book Successfully Deleted" msgstr "Le livre a été supprimé avec succès" -#: cps/editbooks.py:897 +#: cps/editbooks.py:914 msgid "You are missing permissions to delete books" msgstr "Vous n’avez par les permissions pour supprimer les livres" -#: cps/editbooks.py:947 +#: cps/editbooks.py:964 msgid "edit metadata" msgstr "modifier les métadonnées" -#: cps/editbooks.py:996 +#: cps/editbooks.py:1013 #, python-format msgid "%(seriesindex)s is not a valid number, skipping" msgstr "%(seriesindex)s n’est pas un nombre valide, ignoré" -#: cps/editbooks.py:1198 +#: cps/editbooks.py:1197 msgid "User has no rights to upload additional file formats" msgstr "" -#: cps/editbooks.py:1219 +#: cps/editbooks.py:1218 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "Impossible de créer le chemin %(path)s (Permission refusée)." @@ -670,7 +675,7 @@ msgstr "Le format de fichier %(ext)s a été ajouté à %(book)s" msgid "Google Drive setup not completed, try to deactivate and activate Google Drive again" msgstr "La configuration de Google Drive n’est pas terminée, essayez de désactiver et d’activer à nouveau Google Drive" -#: cps/gdrive.py:95 +#: cps/gdrive.py:96 msgid "Callback domain is not verified, please follow steps to verify domain in google developer console" msgstr "Le domaine de retour d’appel (Callback domain) est non vérifié, veuillez suivre les étapes nécessaires pour vérifier le domaine dans la console de développement de Google" @@ -679,7 +684,7 @@ msgstr "Le domaine de retour d’appel (Callback domain) est non vérifié, veui msgid "%(format)s format not found for book id: %(book)d" msgstr "le format %(format)s est introuvable pour le livre : %(book)d" -#: cps/helper.py:93 cps/tasks/convert.py:86 +#: cps/helper.py:93 cps/tasks/convert.py:89 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "le %(format)s est introuvable sur Google Drive : %(fn)s" @@ -756,126 +761,122 @@ msgstr "La suppression du livre %(id)s a échoué: %(message)s" msgid "Deleting book %(id)s from database only, book path in database not valid: %(path)s" msgstr "Suppression du livre %(id)s, le chemin du livre est invalide : %(path)s" -#: cps/helper.py:452 +#: cps/helper.py:465 #, fuzzy, python-format msgid "Rename author from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgstr "Renommer le titre de : '%(src)s' à '%(dest)s' a échoué avec l’erreur : %(error)s" -#: cps/helper.py:524 cps/helper.py:533 +#: cps/helper.py:536 cps/helper.py:545 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "Le fichier %(file)s n'a pas été trouvé dans Google Drive" -#: cps/helper.py:567 +#: cps/helper.py:587 #, python-format msgid "Rename title from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgstr "Renommer le titre de : '%(src)s' à '%(dest)s' a échoué avec l’erreur : %(error)s" -#: cps/helper.py:587 -msgid "Error in rename file in path: {}" -msgstr "" - -#: cps/helper.py:605 +#: cps/helper.py:625 #, python-format msgid "Book path %(path)s not found on Google Drive" msgstr "Le chemin du livre %(path)s n'a pas été trouvé dans Google Drive" -#: cps/helper.py:670 +#: cps/helper.py:685 msgid "Found an existing account for this Email address" msgstr "" -#: cps/helper.py:678 +#: cps/helper.py:693 msgid "This username is already taken" msgstr "Cet utilisateur est déjà pris" -#: cps/helper.py:690 +#: cps/helper.py:705 #, fuzzy msgid "Invalid Email address format" msgstr "Format de l’adresse courriel invalide" -#: cps/helper.py:710 +#: cps/helper.py:726 msgid "Password doesn't comply with password validation rules" msgstr "" -#: cps/helper.py:859 +#: cps/helper.py:873 msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "" -#: cps/helper.py:869 +#: cps/helper.py:883 msgid "Error Downloading Cover" msgstr "Erreur lors du téléchargement de la couverture" -#: cps/helper.py:872 +#: cps/helper.py:886 msgid "Cover Format Error" msgstr "Erreur de format de couverture" -#: cps/helper.py:875 +#: cps/helper.py:889 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "" -#: cps/helper.py:885 +#: cps/helper.py:899 msgid "Failed to create path for cover" msgstr "Impossible de créer le chemin pour la couverture" -#: cps/helper.py:901 +#: cps/helper.py:915 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "Le fichier couverture n'est pas un fichier image valide, ou ne peut pas être stocké" -#: cps/helper.py:912 +#: cps/helper.py:926 msgid "Only jpg/jpeg/png/webp/bmp files are supported as coverfile" msgstr "Seuls les fichiers jpg/jpeg/png/webp/bmp sont supportés comme fichier de couverture" -#: cps/helper.py:924 +#: cps/helper.py:938 msgid "Invalid cover file content" msgstr "Contenu du fichier de couverture invalide" -#: cps/helper.py:928 +#: cps/helper.py:942 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "Seuls les fichiers jpg/jpeg sont supportés comme fichier de couverture" -#: cps/helper.py:999 cps/helper.py:1156 +#: cps/helper.py:1014 cps/helper.py:1171 #, fuzzy msgid "Cover" msgstr "Découvrir" -#: cps/helper.py:1016 +#: cps/helper.py:1031 msgid "UnRar binary file not found" msgstr "Fichier binaire UnRar non trouvé" -#: cps/helper.py:1027 +#: cps/helper.py:1042 #, fuzzy msgid "Error executing UnRar" msgstr "Une erreur est survenue lors de l'exécution d'UnRar" -#: cps/helper.py:1035 +#: cps/helper.py:1050 msgid "Could not find the specified directory" msgstr "" -#: cps/helper.py:1038 +#: cps/helper.py:1053 msgid "Please specify a directory, not a file" msgstr "" -#: cps/helper.py:1052 +#: cps/helper.py:1067 #, fuzzy msgid "Calibre binaries not viable" msgstr "La base de données n'est pas accessible en écriture" -#: cps/helper.py:1061 +#: cps/helper.py:1076 #, python-format msgid "Missing calibre binaries: %(missing)s" msgstr "" -#: cps/helper.py:1063 +#: cps/helper.py:1078 #, fuzzy, python-format msgid "Missing executable permissions: %(missing)s" msgstr "Les permissions d'exécutions manquantes" -#: cps/helper.py:1068 +#: cps/helper.py:1083 #, fuzzy msgid "Error executing Calibre" msgstr "Une erreur est survenue lors de l'exécution d'UnRar" -#: cps/helper.py:1158 cps/templates/admin.html:216 +#: cps/helper.py:1173 cps/templates/admin.html:216 msgid "Queue all books for metadata backup" msgstr "" @@ -922,35 +923,35 @@ msgstr "Suppression de la liaison vers %(oauth)s a échoué" msgid "Not Linked to %(oauth)s" msgstr "Non lié à %(oauth)s" -#: cps/oauth_bb.py:261 +#: cps/oauth_bb.py:262 msgid "Failed to log in with GitHub." msgstr "Échec de la connexion avec GitHub." -#: cps/oauth_bb.py:267 +#: cps/oauth_bb.py:268 msgid "Failed to fetch user info from GitHub." msgstr "Impossible d’obtenir les informations d’utilisateur à partir de GitHub." -#: cps/oauth_bb.py:279 +#: cps/oauth_bb.py:280 msgid "Failed to log in with Google." msgstr "Échec de la connexion avec Google." -#: cps/oauth_bb.py:285 +#: cps/oauth_bb.py:286 msgid "Failed to fetch user info from Google." msgstr "Impossible d’obtenir les informations d’utilisateur avec Google." -#: cps/oauth_bb.py:332 +#: cps/oauth_bb.py:334 msgid "GitHub Oauth error, please retry later." msgstr "Erreur Oauth GitHub, veuillez réessayer plus tard." -#: cps/oauth_bb.py:335 +#: cps/oauth_bb.py:337 msgid "GitHub Oauth error: {}" msgstr "Erreur Oauth Github : {}" -#: cps/oauth_bb.py:356 +#: cps/oauth_bb.py:358 msgid "Google Oauth error, please retry later." msgstr "Erreur Oauth Google, veuillez réessayer plus tard." -#: cps/oauth_bb.py:359 +#: cps/oauth_bb.py:361 msgid "Google Oauth error: {}" msgstr "Erreur Oauth Google : {}" @@ -1311,32 +1312,32 @@ msgstr "" msgid "Unknown Status" msgstr "Statut inconnu" -#: cps/updater.py:431 cps/updater.py:442 cps/updater.py:543 cps/updater.py:558 +#: cps/updater.py:433 cps/updater.py:444 cps/updater.py:545 cps/updater.py:560 msgid "Unexpected data while reading update information" msgstr "Données inattendues lors de la lecture des informations de mise à jour" -#: cps/updater.py:438 cps/updater.py:550 +#: cps/updater.py:440 cps/updater.py:552 msgid "No update available. You already have the latest version installed" msgstr "Aucune mise à jour disponible. Vous avez déjà la dernière version installée" -#: cps/updater.py:456 +#: cps/updater.py:458 msgid "A new update is available. Click on the button below to update to the latest version." msgstr "Une nouvelle mise à jour est disponible. Cliquez sur le bouton ci-dessous pour charger la dernière version." -#: cps/updater.py:474 +#: cps/updater.py:476 msgid "Could not fetch update information" msgstr "Impossible d'extraire les informations de mise à jour" -#: cps/updater.py:484 +#: cps/updater.py:486 msgid "Click on the button below to update to the latest stable version." msgstr "Téléchargez la dernière version en cliquant sur le bouton ci-dessous." -#: cps/updater.py:493 cps/updater.py:507 cps/updater.py:518 +#: cps/updater.py:495 cps/updater.py:509 cps/updater.py:520 #, python-format msgid "A new update is available. Click on the button below to update to version: %(version)s" msgstr "Une nouvelle mise à jour est disponible. Cliquez sur le bouton ci-dessous pour charger la version: %(version)s" -#: cps/updater.py:536 +#: cps/updater.py:538 msgid "No release information available" msgstr "Aucune information concernant cette version n’est disponible" @@ -1516,50 +1517,50 @@ msgstr "Profil mis à jour" msgid "Oops! An account already exists for this Email." msgstr "Un compte existant a été trouvé pour cette adresse de courriel." -#: cps/services/gmail.py:58 +#: cps/services/gmail.py:59 msgid "Found no valid gmail.json file with OAuth information" msgstr "Aucun fichier gmail.json avec information OAuth valide trouvé" -#: cps/tasks/convert.py:105 +#: cps/tasks/convert.py:108 #, fuzzy, python-format msgid "%(book)s send to E-Reader" msgstr "Envoyer vers Kindle" -#: cps/tasks/convert.py:167 +#: cps/tasks/convert.py:170 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "ebook-convert calibre %(tool)s non trouvé" -#: cps/tasks/convert.py:201 +#: cps/tasks/convert.py:204 #, python-format msgid "%(format)s format not found on disk" msgstr "Format %(format)s non trouvé sur le disque" -#: cps/tasks/convert.py:205 +#: cps/tasks/convert.py:208 msgid "Ebook converter failed with unknown error" msgstr "Le convertisseur Ebook a échoué avec une erreur inconnue" -#: cps/tasks/convert.py:224 +#: cps/tasks/convert.py:227 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "La commande Kepubify-converter a échouée : %(error)s" -#: cps/tasks/convert.py:245 +#: cps/tasks/convert.py:248 #, python-format msgid "Converted file not found or more than one file in folder %(folder)s" msgstr "Fichier converti non trouvé ou plus d'un fichier dans le chemin %(folder)s" -#: cps/tasks/convert.py:287 +#: cps/tasks/convert.py:291 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "La commande ebook-convert a échouée : %(error)s" -#: cps/tasks/convert.py:310 +#: cps/tasks/convert.py:314 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "Calibre a échoué avec l’erreur : %(error)s" -#: cps/tasks/convert.py:315 +#: cps/tasks/convert.py:319 msgid "Convert" msgstr "" @@ -1571,7 +1572,7 @@ msgstr "" msgid "E-mail" msgstr "" -#: cps/tasks/metadata_backup.py:33 +#: cps/tasks/metadata_backup.py:34 #, fuzzy msgid "Backing up Metadata" msgstr "modifier les métadonnées" @@ -1585,20 +1586,20 @@ msgstr "" msgid "Generated %(count)s cover thumbnails" msgstr "" -#: cps/tasks/thumbnail.py:230 cps/tasks/thumbnail.py:443 -#: cps/tasks/thumbnail.py:511 +#: cps/tasks/thumbnail.py:231 cps/tasks/thumbnail.py:444 +#: cps/tasks/thumbnail.py:512 msgid "Cover Thumbnails" msgstr "" -#: cps/tasks/thumbnail.py:289 +#: cps/tasks/thumbnail.py:290 msgid "Generated {0} series thumbnails" msgstr "" -#: cps/tasks/thumbnail.py:454 +#: cps/tasks/thumbnail.py:455 msgid "Clearing cover thumbnail cache" msgstr "" -#: cps/tasks/upload.py:38 cps/templates/admin.html:20 +#: cps/tasks/upload.py:39 cps/templates/admin.html:20 #: cps/templates/layout.html:81 cps/templates/user_table.html:145 msgid "Upload" msgstr "Téléverser" @@ -1847,7 +1848,7 @@ msgstr "OK" #: cps/templates/admin.html:259 cps/templates/admin.html:273 #: cps/templates/book_edit.html:214 cps/templates/book_table.html:127 -#: cps/templates/config_db.html:66 cps/templates/config_edit.html:423 +#: cps/templates/config_db.html:66 cps/templates/config_edit.html:427 #: cps/templates/config_view_edit.html:175 cps/templates/detail.html:342 #: cps/templates/modal_dialogs.html:64 cps/templates/modal_dialogs.html:99 #: cps/templates/modal_dialogs.html:117 cps/templates/modal_dialogs.html:135 @@ -2033,7 +2034,7 @@ msgid "Fetch Metadata" msgstr "Obtenir les métadonnées" #: cps/templates/book_edit.html:213 cps/templates/config_db.html:65 -#: cps/templates/config_edit.html:422 cps/templates/config_view_edit.html:174 +#: cps/templates/config_edit.html:426 cps/templates/config_view_edit.html:174 #: cps/templates/email_edit.html:65 cps/templates/schedule_edit.html:44 #: cps/templates/shelf_edit.html:25 cps/templates/shelf_order.html:41 #: cps/templates/user_edit.html:142 @@ -2508,47 +2509,51 @@ msgid "Configure Backend for Limiter" msgstr "" #: cps/templates/config_edit.html:376 -msgid "Options for Limiter" +msgid "Options for Limiter Backend" msgstr "" -#: cps/templates/config_edit.html:381 +#: cps/templates/config_edit.html:382 +msgid "Check if file extensions matches file content on upload" +msgstr "" + +#: cps/templates/config_edit.html:385 msgid "Session protection" msgstr "" -#: cps/templates/config_edit.html:383 +#: cps/templates/config_edit.html:387 msgid "Basic" msgstr "" -#: cps/templates/config_edit.html:384 +#: cps/templates/config_edit.html:388 msgid "Strong" msgstr "" -#: cps/templates/config_edit.html:389 +#: cps/templates/config_edit.html:393 #, fuzzy msgid "User Password policy" msgstr "Réinitialiser le mot de passe de l’utilisateur" -#: cps/templates/config_edit.html:393 +#: cps/templates/config_edit.html:397 msgid "Minimum password length" msgstr "" -#: cps/templates/config_edit.html:398 +#: cps/templates/config_edit.html:402 msgid "Enforce number" msgstr "" -#: cps/templates/config_edit.html:402 +#: cps/templates/config_edit.html:406 msgid "Enforce lowercase characters" msgstr "" -#: cps/templates/config_edit.html:406 +#: cps/templates/config_edit.html:410 msgid "Enforce uppercase characters" msgstr "" -#: cps/templates/config_edit.html:410 +#: cps/templates/config_edit.html:414 msgid "Enforce characters (needed For Chinese/Japanese/Korean Characters)" msgstr "" -#: cps/templates/config_edit.html:414 +#: cps/templates/config_edit.html:418 msgid "Enforce special characters" msgstr "" @@ -2680,6 +2685,11 @@ msgstr "Marquer comme non lu" msgid "Mark As Read" msgstr "Marquer comme lu" +#: cps/templates/detail.html:254 +#, fuzzy +msgid "Mark Book as Read or Unread" +msgstr "Marquer comme non lu" + #: cps/templates/detail.html:254 cps/templates/listenmp3.html:159 msgid "Read" msgstr "Lu" @@ -2692,8 +2702,13 @@ msgstr "Restaurer à partir de l'archive" msgid "Add to archive" msgstr "Ajouter comme archive" -#: cps/templates/detail.html:267 cps/templates/listenmp3.html:167 -msgid "Archived" +#: cps/templates/detail.html:267 +msgid "Mark Book as archived or not, to hide it in Calibre-Web and delete it from Kobo Reader" +msgstr "" + +#: cps/templates/detail.html:267 +#, fuzzy +msgid "Archive" msgstr "Archivé" #: cps/templates/detail.html:278 cps/templates/listenmp3.html:177 @@ -2975,6 +2990,10 @@ msgstr "Détails du livre" msgid "Grid" msgstr "" +#: cps/templates/listenmp3.html:167 +msgid "Archived" +msgstr "Archivé" + #: cps/templates/login.html:18 msgid "Remember Me" msgstr "Se rappeler de moi" diff --git a/cps/translations/gl/LC_MESSAGES/messages.mo b/cps/translations/gl/LC_MESSAGES/messages.mo index 28657c2e..6fe8528e 100644 Binary files a/cps/translations/gl/LC_MESSAGES/messages.mo and b/cps/translations/gl/LC_MESSAGES/messages.mo differ diff --git a/cps/translations/gl/LC_MESSAGES/messages.po b/cps/translations/gl/LC_MESSAGES/messages.po index 2dc411d6..469185d4 100644 --- a/cps/translations/gl/LC_MESSAGES/messages.po +++ b/cps/translations/gl/LC_MESSAGES/messages.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: Calibre-Web\n" "Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n" -"POT-Creation-Date: 2024-06-09 12:26+0200\n" +"POT-Creation-Date: 2024-06-30 12:19+0200\n" "PO-Revision-Date: 2022-08-11 16:46+0200\n" "Last-Translator: pollitor \n" "Language: gl\n" @@ -14,7 +14,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.11.0\n" +"Generated-By: Babel 2.13.1\n" #: cps/about.py:84 msgid "Statistics" @@ -43,9 +43,9 @@ msgstr "Orde descoñecida" msgid "Success! Books queued for Metadata Backup, please check Tasks for result" msgstr "Posto en cola un correo electrónico de proba enviado a %(email)s, por favor, comproba o resultado nas Tarefas" -#: cps/admin.py:207 cps/editbooks.py:591 cps/editbooks.py:593 -#: cps/editbooks.py:631 cps/editbooks.py:648 cps/editbooks.py:1280 -#: cps/updater.py:613 cps/uploader.py:93 cps/uploader.py:102 +#: cps/admin.py:207 cps/editbooks.py:573 cps/editbooks.py:575 +#: cps/editbooks.py:615 cps/editbooks.py:658 cps/editbooks.py:1280 +#: cps/updater.py:615 cps/uploader.py:93 cps/uploader.py:102 msgid "Unknown" msgstr "Descoñecido" @@ -65,12 +65,12 @@ msgstr "Configuración da Interface de Usuario" msgid "Edit Users" msgstr "Editar Usuarios" -#: cps/admin.py:368 cps/opds.py:541 cps/templates/grid.html:14 +#: cps/admin.py:368 cps/opds.py:542 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "Todo" -#: cps/admin.py:395 cps/admin.py:1417 +#: cps/admin.py:395 cps/admin.py:1414 msgid "User not found" msgstr "Usuario non atopado" @@ -87,7 +87,7 @@ msgstr "Mostrar Todo" msgid "Malformed request" msgstr "Petición mal formada" -#: cps/admin.py:471 cps/admin.py:2048 +#: cps/admin.py:471 cps/admin.py:2046 msgid "Guest Name can't be changed" msgstr "O nome do convidado non se pode cambiar" @@ -95,7 +95,7 @@ msgstr "O nome do convidado non se pode cambiar" msgid "Guest can't have this role" msgstr "O convidado non pode ter este rol" -#: cps/admin.py:495 cps/admin.py:2002 +#: cps/admin.py:495 cps/admin.py:2000 msgid "No admin user remaining, can't remove admin role" msgstr "Non queda ningún usuario administrador, non se pode eliminar ao usuario" @@ -127,7 +127,7 @@ msgstr "Non hai unha localización válida" msgid "No Valid Book Language Given" msgstr "Non se indicou unha lingua válida para o libro" -#: cps/admin.py:535 cps/editbooks.py:457 +#: cps/admin.py:535 cps/editbooks.py:440 msgid "Parameter not found" msgstr "Parámetro non atopado" @@ -139,7 +139,7 @@ msgstr "Columna de lectura non válida" msgid "Invalid Restricted Column" msgstr "Columna restrinxida non válida" -#: cps/admin.py:598 cps/admin.py:1873 +#: cps/admin.py:598 cps/admin.py:1871 msgid "Calibre-Web configuration updated" msgstr "Configuración de Calibre-Web actualizada" @@ -219,292 +219,292 @@ msgstr "Etiqueta non atopada" msgid "Invalid Action" msgstr "Acción non válida" -#: cps/admin.py:1123 +#: cps/admin.py:1120 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "client_secrets.json non está configurado para a aplicación web" -#: cps/admin.py:1168 +#: cps/admin.py:1165 msgid "Logfile Location is not Valid, Please Enter Correct Path" msgstr "A localización do arquivo de rexistro non é válida. Por favor, Introduce a ruta correcta" -#: cps/admin.py:1174 +#: cps/admin.py:1171 msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgstr "A localización do rexistro de accesos non é válida. Por favor, Introduce a ruta correcta" -#: cps/admin.py:1208 +#: cps/admin.py:1205 msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgstr "Por favor, Introduce un provedor LDAP, porto, DN e o User Object Identifier" -#: cps/admin.py:1214 +#: cps/admin.py:1211 msgid "Please Enter a LDAP Service Account and Password" msgstr "Por favor, introduce unha conta de servizo LDAP e o seu contrasinal" -#: cps/admin.py:1217 +#: cps/admin.py:1214 msgid "Please Enter a LDAP Service Account" msgstr "Por favor, introduce unha conta de servizo LDAP" -#: cps/admin.py:1222 +#: cps/admin.py:1219 #, python-format msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgstr "LDAP Group Object Filter necesita ter un identificador de formato \"%s\"" -#: cps/admin.py:1224 +#: cps/admin.py:1221 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "O LDAP Group Object Filter ten parénteses que non casan" -#: cps/admin.py:1228 +#: cps/admin.py:1225 #, python-format msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgstr "LDAP Group Object Filter necesita ter un identificador de formato \"%s\"" -#: cps/admin.py:1230 +#: cps/admin.py:1227 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "O LDAP Group Object Filter ten parénteses que non casan" -#: cps/admin.py:1237 +#: cps/admin.py:1234 #, python-format msgid "LDAP Member User Filter needs to Have One \"%s\" Format Identifier" msgstr "O filtro de usuarios LDAP necesita ter un identificador de formato \"%s\"" -#: cps/admin.py:1239 +#: cps/admin.py:1236 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "O filtro de LDAP \"Member User\" ten parénteses que non casan" -#: cps/admin.py:1246 +#: cps/admin.py:1243 msgid "LDAP CACertificate, Certificate or Key Location is not Valid, Please Enter Correct Path" msgstr "As localizacións do certificado da CA do LDAP, do certificado ou da chave non válidos. Por favor introduce a ruta correcta" -#: cps/admin.py:1277 cps/templates/admin.html:53 +#: cps/admin.py:1274 cps/templates/admin.html:53 msgid "Add New User" msgstr "Engadir novo usuario" -#: cps/admin.py:1286 cps/templates/admin.html:100 +#: cps/admin.py:1283 cps/templates/admin.html:100 msgid "Edit Email Server Settings" msgstr "Cambiar os parámetros do correo" -#: cps/admin.py:1305 +#: cps/admin.py:1302 msgid "Success! Gmail Account Verified." msgstr "" -#: cps/admin.py:1325 cps/admin.py:1328 cps/admin.py:1713 cps/admin.py:1857 -#: cps/admin.py:1955 cps/admin.py:2076 cps/editbooks.py:243 -#: cps/editbooks.py:319 cps/editbooks.py:1242 cps/shelf.py:90 cps/shelf.py:150 +#: cps/admin.py:1322 cps/admin.py:1325 cps/admin.py:1710 cps/admin.py:1855 +#: cps/admin.py:1953 cps/admin.py:2074 cps/editbooks.py:226 +#: cps/editbooks.py:303 cps/editbooks.py:1242 cps/shelf.py:90 cps/shelf.py:150 #: cps/shelf.py:193 cps/shelf.py:243 cps/shelf.py:280 cps/shelf.py:354 -#: cps/shelf.py:468 cps/tasks/convert.py:150 cps/web.py:1520 +#: cps/shelf.py:468 cps/tasks/convert.py:153 cps/web.py:1520 #, python-format msgid "Oops! Database Error: %(error)s." msgstr "Error na base de datos: %(error)s." -#: cps/admin.py:1335 +#: cps/admin.py:1332 #, python-format msgid "Test e-mail queued for sending to %(email)s, please check Tasks for result" msgstr "Posto en cola un correo electrónico de proba enviado a %(email)s, por favor, comproba o resultado nas Tarefas" -#: cps/admin.py:1338 +#: cps/admin.py:1335 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "Ocurreu un error enviando o correo electrónico de proba: %(res)s" -#: cps/admin.py:1340 +#: cps/admin.py:1337 msgid "Please configure your e-mail address first..." msgstr "Por favor, configure o seu correo electrónico primeiro..." -#: cps/admin.py:1342 +#: cps/admin.py:1339 msgid "Email Server Settings updated" msgstr "Actualizáronse os axustes do servidor de correo electrónico" -#: cps/admin.py:1365 cps/templates/admin.html:195 +#: cps/admin.py:1362 cps/templates/admin.html:195 msgid "Edit Scheduled Tasks Settings" msgstr "Editar a Configuración das Tarefas Programadas" -#: cps/admin.py:1377 +#: cps/admin.py:1374 msgid "Invalid start time for task specified" msgstr "Indicada unha hora incorrecta de comezo de tarefa" -#: cps/admin.py:1382 +#: cps/admin.py:1379 msgid "Invalid duration for task specified" msgstr "Indicada unha duracción incorrecta para a tarefa" -#: cps/admin.py:1392 +#: cps/admin.py:1389 msgid "Scheduled tasks settings updated" msgstr "Actualizouse a configuración das tarefas programadas" -#: cps/admin.py:1402 cps/admin.py:1451 cps/admin.py:2072 cps/web.py:1316 +#: cps/admin.py:1399 cps/admin.py:1448 cps/admin.py:2070 cps/web.py:1316 msgid "Oops! An unknown error occurred. Please try again later." msgstr "Sucedeu un erro descoñecido. Por favor volva a intentalo máis tarde." -#: cps/admin.py:1406 +#: cps/admin.py:1403 msgid "Settings DB is not Writeable" msgstr "A configuración da DB non se pode escribir" -#: cps/admin.py:1436 cps/admin.py:2064 +#: cps/admin.py:1433 cps/admin.py:2062 #, python-format msgid "Edit User %(nick)s" msgstr "Editar o Usuario %(nick)s" -#: cps/admin.py:1448 +#: cps/admin.py:1445 #, fuzzy, python-format msgid "Success! Password for user %(user)s reset" msgstr "Reiniciada a contrasinal para o usuario %(user)s" -#: cps/admin.py:1454 +#: cps/admin.py:1451 #, fuzzy msgid "Oops! Please configure the SMTP mail settings." msgstr "Configura primeiro os parámetros do servidor SMTP..." -#: cps/admin.py:1465 +#: cps/admin.py:1462 msgid "Logfile viewer" msgstr "Visor do ficheiro de rexistro" -#: cps/admin.py:1531 +#: cps/admin.py:1528 msgid "Requesting update package" msgstr "Solicitando paquete de actualización" -#: cps/admin.py:1532 +#: cps/admin.py:1529 msgid "Downloading update package" msgstr "Descargando paquete de actualización" -#: cps/admin.py:1533 +#: cps/admin.py:1530 msgid "Unzipping update package" msgstr "Descomprimendo paquete de actualización" -#: cps/admin.py:1534 +#: cps/admin.py:1531 msgid "Replacing files" msgstr "Remplazando archivos" -#: cps/admin.py:1535 +#: cps/admin.py:1532 msgid "Database connections are closed" msgstr "As conexións coa base datos están pechadas" -#: cps/admin.py:1536 +#: cps/admin.py:1533 msgid "Stopping server" msgstr "Detendo o servidor" -#: cps/admin.py:1537 +#: cps/admin.py:1534 msgid "Update finished, please press okay and reload page" msgstr "Actualización finalizada. Por favor, prema OK e recargue a páxina" -#: cps/admin.py:1538 cps/admin.py:1539 cps/admin.py:1540 cps/admin.py:1541 -#: cps/admin.py:1542 cps/admin.py:1543 +#: cps/admin.py:1535 cps/admin.py:1536 cps/admin.py:1537 cps/admin.py:1538 +#: cps/admin.py:1539 cps/admin.py:1540 msgid "Update failed:" msgstr "A actualización fallou:" -#: cps/admin.py:1538 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 +#: cps/admin.py:1535 cps/updater.py:391 cps/updater.py:626 cps/updater.py:628 msgid "HTTP Error" msgstr "Erro HTTP" -#: cps/admin.py:1539 cps/updater.py:391 cps/updater.py:628 +#: cps/admin.py:1536 cps/updater.py:393 cps/updater.py:630 msgid "Connection error" msgstr "Erro de conexión" -#: cps/admin.py:1540 cps/updater.py:393 cps/updater.py:630 +#: cps/admin.py:1537 cps/updater.py:395 cps/updater.py:632 msgid "Timeout while establishing connection" msgstr "Tempo esgotado mentras se trataba de establecer a conexión" -#: cps/admin.py:1541 cps/updater.py:395 cps/updater.py:632 +#: cps/admin.py:1538 cps/updater.py:397 cps/updater.py:634 msgid "General error" msgstr "Erro xeral" -#: cps/admin.py:1542 +#: cps/admin.py:1539 msgid "Update file could not be saved in temp dir" msgstr "A actualización do arquivo non se puido gardar no directorio temporal (Temp Dir)" -#: cps/admin.py:1543 +#: cps/admin.py:1540 msgid "Files could not be replaced during update" msgstr "Non se puideron substituír os ficheiros durante a actualización" -#: cps/admin.py:1567 +#: cps/admin.py:1564 msgid "Failed to extract at least One LDAP User" msgstr "Erro ao extraer polo menos un usuario LDAP" -#: cps/admin.py:1612 +#: cps/admin.py:1609 msgid "Failed to Create at Least One LDAP User" msgstr "Erro ao crear polo menos un usuario LDAP" -#: cps/admin.py:1625 +#: cps/admin.py:1622 #, python-format msgid "Error: %(ldaperror)s" msgstr "Erro: %(ldaperror)s" -#: cps/admin.py:1629 +#: cps/admin.py:1626 msgid "Error: No user returned in response of LDAP server" msgstr "Erro: o servidor LDAP non devolveu ningún usuario" -#: cps/admin.py:1665 +#: cps/admin.py:1662 msgid "At Least One LDAP User Not Found in Database" msgstr "Polo menos, un usuario LDAP non se atopou na base de datos" -#: cps/admin.py:1667 +#: cps/admin.py:1664 msgid "{} User Successfully Imported" msgstr "Usuario {} importado con éxito" -#: cps/admin.py:1725 +#: cps/admin.py:1722 msgid "DB Location is not Valid, Please Enter Correct Path" msgstr "A localización da base de datos non é válida. Por favor, Introduce a ruta correcta" -#: cps/admin.py:1745 +#: cps/admin.py:1742 msgid "DB is not Writeable" msgstr "A base de datos non é modificable" -#: cps/admin.py:1761 +#: cps/admin.py:1758 msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgstr "A localización do Keyfile non é válida, por favor, Introduce a ruta correcta" -#: cps/admin.py:1765 +#: cps/admin.py:1762 msgid "Certfile Location is not Valid, Please Enter Correct Path" msgstr "A localización do Certfile non é válida, por favor, Introduce a ruta correcta" -#: cps/admin.py:1842 +#: cps/admin.py:1840 msgid "Password length has to be between 1 and 40" msgstr "" -#: cps/admin.py:1896 +#: cps/admin.py:1894 msgid "Database Settings updated" msgstr "Actualizados os axustes da base de datos" -#: cps/admin.py:1904 +#: cps/admin.py:1902 msgid "Database Configuration" msgstr "Configuración da base de datos" -#: cps/admin.py:1919 cps/web.py:1290 +#: cps/admin.py:1917 cps/web.py:1290 msgid "Oops! Please complete all fields." msgstr "Por favor, cubra todos os campos!" -#: cps/admin.py:1928 +#: cps/admin.py:1926 msgid "E-mail is not from valid domain" msgstr "O correo electrónico non ven dun dominio válido" -#: cps/admin.py:1934 +#: cps/admin.py:1932 msgid "Add new user" msgstr "Engadir un usuario novo" -#: cps/admin.py:1945 +#: cps/admin.py:1943 #, python-format msgid "User '%(user)s' created" msgstr "Usuario '%(user)s' creado" -#: cps/admin.py:1951 +#: cps/admin.py:1949 msgid "Oops! An account already exists for this Email. or name." msgstr "Atopada unha conta existente para este correo electrónico ou nome de usuario." -#: cps/admin.py:1981 +#: cps/admin.py:1979 #, python-format msgid "User '%(nick)s' deleted" msgstr "Usuario '%(nick)s' eliminado" -#: cps/admin.py:1984 +#: cps/admin.py:1982 msgid "Can't delete Guest User" msgstr "Non se pode borrar ao Usuario Invitado" -#: cps/admin.py:1987 +#: cps/admin.py:1985 msgid "No admin user remaining, can't delete user" msgstr "Non queda ningún usuario administrador, non se pode borrar ao usuario" -#: cps/admin.py:2042 cps/web.py:1469 +#: cps/admin.py:2040 cps/web.py:1469 msgid "Email can't be empty and has to be a valid Email" msgstr "" -#: cps/admin.py:2068 +#: cps/admin.py:2066 #, python-format msgid "User '%(nick)s' updated" msgstr "Usuario '%(nick)s' actualizado" @@ -517,12 +517,12 @@ msgstr "non instalado" msgid "Execution permissions missing" msgstr "Faltan permisos de execución" -#: cps/db.py:756 cps/search.py:137 cps/web.py:747 +#: cps/db.py:768 cps/search.py:137 cps/web.py:747 #, python-format msgid "Custom Column No.%(column)d does not exist in calibre database" msgstr "Columna personalizada No.%(column)d non existe na base de datos calibre" -#: cps/db.py:996 cps/templates/config_edit.html:203 +#: cps/db.py:1008 cps/templates/config_edit.html:203 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 #: cps/web.py:562 cps/web.py:596 cps/web.py:641 cps/web.py:681 cps/web.py:708 #: cps/web.py:989 cps/web.py:1019 cps/web.py:1064 cps/web.py:1092 @@ -530,100 +530,105 @@ msgstr "Columna personalizada No.%(column)d non existe na base de datos calibre" msgid "None" msgstr "Ningún" -#: cps/editbooks.py:124 cps/editbooks.py:912 cps/web.py:529 cps/web.py:1561 -#: cps/web.py:1605 cps/web.py:1650 +#: cps/editbooks.py:108 cps/editbooks.py:929 cps/web.py:529 cps/web.py:1561 +#: cps/web.py:1606 cps/web.py:1651 msgid "Oops! Selected book is unavailable. File does not exist or is not accessible" msgstr "oh, oh, o libro seleccionado non está disponible. O arquivo non existe ou non está accesible" -#: cps/editbooks.py:168 cps/editbooks.py:1263 +#: cps/editbooks.py:151 cps/editbooks.py:1263 msgid "User has no rights to upload cover" msgstr "O usuario non ten permisos para subir a cuberta" -#: cps/editbooks.py:188 cps/editbooks.py:733 +#: cps/editbooks.py:171 cps/editbooks.py:744 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "Os identificadores non distinguen entre maiúsculas e minúsculas, sobrescribindo o identificador antigo" -#: cps/editbooks.py:230 +#: cps/editbooks.py:213 msgid "Metadata successfully updated" msgstr "Metadatos actualizados con éxito" -#: cps/editbooks.py:248 +#: cps/editbooks.py:231 msgid "Error editing book: {}" msgstr "Erro editando libro: {}" -#: cps/editbooks.py:305 +#: cps/editbooks.py:289 #, python-format msgid "File %(file)s uploaded" msgstr "O ficheiro %(file)s subiuse" -#: cps/editbooks.py:333 +#: cps/editbooks.py:317 msgid "Source or destination format for conversion missing" msgstr "Falta a fonte ou o formato de destino para a conversión" -#: cps/editbooks.py:341 +#: cps/editbooks.py:325 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "Libro posto na cola para a súa conversión a %(book_format)s" -#: cps/editbooks.py:345 +#: cps/editbooks.py:329 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "Houbo un erro ao convertir este libro: %(res)s" -#: cps/editbooks.py:652 +#: cps/editbooks.py:662 msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgstr "O libro cargado probablemente existe na biblioteca, considera cambialo antes de subilo outra vez: " -#: cps/editbooks.py:707 cps/editbooks.py:1043 +#: cps/editbooks.py:718 cps/editbooks.py:1049 #, python-format msgid "'%(langname)s' is not a valid language" msgstr "%(langname)s non é unha lingua válida" -#: cps/editbooks.py:745 cps/editbooks.py:1203 +#: cps/editbooks.py:756 cps/editbooks.py:1192 +#, fuzzy +msgid "File type isn't allowed to be uploaded to this server" +msgstr "Non se permite subir arquivos coa extensión '%(ext)s' a este servidor" + +#: cps/editbooks.py:762 cps/editbooks.py:1202 #, python-format msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgstr "Non se permite subir arquivos coa extensión '%(ext)s' a este servidor" -#: cps/editbooks.py:749 cps/editbooks.py:1207 +#: cps/editbooks.py:766 cps/editbooks.py:1206 msgid "File to be uploaded must have an extension" msgstr "O arquivo que se vai cargar debe ter unha extensión" -#: cps/editbooks.py:757 +#: cps/editbooks.py:774 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "El archivo %(filename)s non puido gravarse no directorio temporal (Temp Dir)" -#: cps/editbooks.py:777 +#: cps/editbooks.py:794 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "Fallo ao mover o arquivo de cuberta %(file)s: %(error)s" -#: cps/editbooks.py:834 cps/editbooks.py:836 +#: cps/editbooks.py:851 cps/editbooks.py:853 msgid "Book Format Successfully Deleted" msgstr "Formato de libro eliminado con éxito" -#: cps/editbooks.py:843 cps/editbooks.py:845 +#: cps/editbooks.py:860 cps/editbooks.py:862 msgid "Book Successfully Deleted" msgstr "Libro eliminado con éxito" -#: cps/editbooks.py:897 +#: cps/editbooks.py:914 msgid "You are missing permissions to delete books" msgstr "Vostede non ten permisos para borrar libros" -#: cps/editbooks.py:947 +#: cps/editbooks.py:964 msgid "edit metadata" msgstr "editar metadatos" -#: cps/editbooks.py:996 +#: cps/editbooks.py:1013 #, python-format msgid "%(seriesindex)s is not a valid number, skipping" msgstr "%(seriesindex)s non é un número válido, saltando" -#: cps/editbooks.py:1198 +#: cps/editbooks.py:1197 msgid "User has no rights to upload additional file formats" msgstr "O usuario non ten permisos para cargar formatos de ficheiro adicionais" -#: cps/editbooks.py:1219 +#: cps/editbooks.py:1218 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "Fallo ao crear a ruta %(path)s (permiso denegado)" @@ -642,7 +647,7 @@ msgstr "Arquivo con formato %(ext)s engadido a %(book)s" msgid "Google Drive setup not completed, try to deactivate and activate Google Drive again" msgstr "A configuración de Google Drive non se completou, intente desactivar e activar Google Drive outra vez" -#: cps/gdrive.py:95 +#: cps/gdrive.py:96 msgid "Callback domain is not verified, please follow steps to verify domain in google developer console" msgstr "O dominio Callback non se comprobou, siga os pasos para comprobalo na consola de desenvolvedor de Google" @@ -651,7 +656,7 @@ msgstr "O dominio Callback non se comprobou, siga os pasos para comprobalo na co msgid "%(format)s format not found for book id: %(book)d" msgstr "%(format)s formato non atopado para o id do libro: %(book)d" -#: cps/helper.py:93 cps/tasks/convert.py:86 +#: cps/helper.py:93 cps/tasks/convert.py:89 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "%(format)s non atopado en Google Drive: %(fn)s" @@ -727,125 +732,121 @@ msgstr "O borrado do libro %(id)s fallou: %(message)s" msgid "Deleting book %(id)s from database only, book path in database not valid: %(path)s" msgstr "Borrando o libro %(id)s, a ruta de libro non é válida: %(path)s" -#: cps/helper.py:452 +#: cps/helper.py:465 #, python-format msgid "Rename author from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgstr "O renomeado do título de: '%(src)s' a '%(dest)s' fallou co erro: %(error)s" -#: cps/helper.py:524 cps/helper.py:533 +#: cps/helper.py:536 cps/helper.py:545 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "Ficheiro %(file)s non atopado en Google Drive" -#: cps/helper.py:567 +#: cps/helper.py:587 #, python-format msgid "Rename title from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgstr "O renomeado do título de: '%(src)s' a '%(dest)s' fallou co erro: %(error)s" -#: cps/helper.py:587 -msgid "Error in rename file in path: {}" -msgstr "Erro ao renomear o ficheiro na ruta: {}" - -#: cps/helper.py:605 +#: cps/helper.py:625 #, python-format msgid "Book path %(path)s not found on Google Drive" msgstr "A ruta %(path)s do libro non se atopou en Google Drive" -#: cps/helper.py:670 +#: cps/helper.py:685 msgid "Found an existing account for this Email address" msgstr "" -#: cps/helper.py:678 +#: cps/helper.py:693 msgid "This username is already taken" msgstr "Este nome de usuario xa está en uso" -#: cps/helper.py:690 +#: cps/helper.py:705 #, fuzzy msgid "Invalid Email address format" msgstr "Enderezo de correo non válido" -#: cps/helper.py:710 +#: cps/helper.py:726 msgid "Password doesn't comply with password validation rules" msgstr "" -#: cps/helper.py:859 +#: cps/helper.py:873 msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "O módulo Python 'advocate' non está instalado pero se necesita para as cargas de cubertas" -#: cps/helper.py:869 +#: cps/helper.py:883 msgid "Error Downloading Cover" msgstr "Erro ao descargar a cuberta" -#: cps/helper.py:872 +#: cps/helper.py:886 msgid "Cover Format Error" msgstr "Erro no formato da cuberta" -#: cps/helper.py:875 +#: cps/helper.py:889 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "Non ten permiso para acceder a localhost ou á rede local para as cargas de cubertas" -#: cps/helper.py:885 +#: cps/helper.py:899 msgid "Failed to create path for cover" msgstr "Erro ao crear unha ruta para a cuberta" -#: cps/helper.py:901 +#: cps/helper.py:915 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "O arquivo de cuberta non é unha imaxe válida" -#: cps/helper.py:912 +#: cps/helper.py:926 msgid "Only jpg/jpeg/png/webp/bmp files are supported as coverfile" msgstr "Soamente se admiten como cuberta os arquivos jpg/jpeg/png/webp/bmp" -#: cps/helper.py:924 +#: cps/helper.py:938 msgid "Invalid cover file content" msgstr "Contido do arquivo de cuberta non válido" -#: cps/helper.py:928 +#: cps/helper.py:942 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "Soamente se admiten como cuberta os arquivos jpg/jpeg" -#: cps/helper.py:999 cps/helper.py:1156 +#: cps/helper.py:1014 cps/helper.py:1171 #, fuzzy msgid "Cover" msgstr "Descubrir" -#: cps/helper.py:1016 +#: cps/helper.py:1031 msgid "UnRar binary file not found" msgstr "Non se atopa o arquivo binario de UnRar" -#: cps/helper.py:1027 +#: cps/helper.py:1042 msgid "Error executing UnRar" msgstr "Erro executando UnRar" -#: cps/helper.py:1035 +#: cps/helper.py:1050 msgid "Could not find the specified directory" msgstr "" -#: cps/helper.py:1038 +#: cps/helper.py:1053 msgid "Please specify a directory, not a file" msgstr "" -#: cps/helper.py:1052 +#: cps/helper.py:1067 #, fuzzy msgid "Calibre binaries not viable" msgstr "A base de datos non é modificable" -#: cps/helper.py:1061 +#: cps/helper.py:1076 #, python-format msgid "Missing calibre binaries: %(missing)s" msgstr "" -#: cps/helper.py:1063 +#: cps/helper.py:1078 #, fuzzy, python-format msgid "Missing executable permissions: %(missing)s" msgstr "Faltan permisos de execución" -#: cps/helper.py:1068 +#: cps/helper.py:1083 #, fuzzy msgid "Error executing Calibre" msgstr "Erro executando UnRar" -#: cps/helper.py:1158 cps/templates/admin.html:216 +#: cps/helper.py:1173 cps/templates/admin.html:216 msgid "Queue all books for metadata backup" msgstr "" @@ -891,35 +892,35 @@ msgstr "Erro ao desenlazar %(oauth)s" msgid "Not Linked to %(oauth)s" msgstr "Non vinculado con %(oauth)s" -#: cps/oauth_bb.py:261 +#: cps/oauth_bb.py:262 msgid "Failed to log in with GitHub." msgstr "Erro ao iniciar sesión con GitHub." -#: cps/oauth_bb.py:267 +#: cps/oauth_bb.py:268 msgid "Failed to fetch user info from GitHub." msgstr "Erro ao obter a información do usuario de GitHub." -#: cps/oauth_bb.py:279 +#: cps/oauth_bb.py:280 msgid "Failed to log in with Google." msgstr "Erro ao iniciar sesión con Google." -#: cps/oauth_bb.py:285 +#: cps/oauth_bb.py:286 msgid "Failed to fetch user info from Google." msgstr "Erro ao obter información do usuario de Google." -#: cps/oauth_bb.py:332 +#: cps/oauth_bb.py:334 msgid "GitHub Oauth error, please retry later." msgstr "Erro en GitHub Oauth, por favor, volva a intentalo máis tarde." -#: cps/oauth_bb.py:335 +#: cps/oauth_bb.py:337 msgid "GitHub Oauth error: {}" msgstr "Erro GitHub Oauth {}" -#: cps/oauth_bb.py:356 +#: cps/oauth_bb.py:358 msgid "Google Oauth error, please retry later." msgstr "Erro en Google Oauth, por favor volva a intentalo máis tarde." -#: cps/oauth_bb.py:359 +#: cps/oauth_bb.py:361 msgid "Google Oauth error: {}" msgstr "Erro Google Oauth {}" @@ -1277,32 +1278,32 @@ msgstr "Cancelado" msgid "Unknown Status" msgstr "Estado descoñecido" -#: cps/updater.py:431 cps/updater.py:442 cps/updater.py:543 cps/updater.py:558 +#: cps/updater.py:433 cps/updater.py:444 cps/updater.py:545 cps/updater.py:560 msgid "Unexpected data while reading update information" msgstr "Dato inesperado mentres líase a información de actualización" -#: cps/updater.py:438 cps/updater.py:550 +#: cps/updater.py:440 cps/updater.py:552 msgid "No update available. You already have the latest version installed" msgstr "Actualización non dispoñiible. Xa tes instalada a versión máis recente" -#: cps/updater.py:456 +#: cps/updater.py:458 msgid "A new update is available. Click on the button below to update to the latest version." msgstr "Unha nova actualización está dispoñible. Preme no botón inferior para actualizar á versión máis reciente." -#: cps/updater.py:474 +#: cps/updater.py:476 msgid "Could not fetch update information" msgstr "Non se pode conseguir información sobre a actualización" -#: cps/updater.py:484 +#: cps/updater.py:486 msgid "Click on the button below to update to the latest stable version." msgstr "Preme no botón de abaixo para actualizar á última versión estable." -#: cps/updater.py:493 cps/updater.py:507 cps/updater.py:518 +#: cps/updater.py:495 cps/updater.py:509 cps/updater.py:520 #, python-format msgid "A new update is available. Click on the button below to update to version: %(version)s" msgstr "Hai unha nova actualización dispoñible. Preme no botón de abaixo para actualizar á versión: %(version)s" -#: cps/updater.py:536 +#: cps/updater.py:538 msgid "No release information available" msgstr "Non hai información do lanzamento dispoñible" @@ -1481,50 +1482,50 @@ msgstr "Perfil actualizado" msgid "Oops! An account already exists for this Email." msgstr "Atopada unha conta existente para ese enderezo de correo electrónico" -#: cps/services/gmail.py:58 +#: cps/services/gmail.py:59 msgid "Found no valid gmail.json file with OAuth information" msgstr "Non se atopou ningún arquivo gmail.json válido con información OAuth" -#: cps/tasks/convert.py:105 +#: cps/tasks/convert.py:108 #, python-format msgid "%(book)s send to E-Reader" msgstr "Enviar ao Kindle %(book)s" -#: cps/tasks/convert.py:167 +#: cps/tasks/convert.py:170 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "Non se atopou Calibre ebook-convert %(tool)s" -#: cps/tasks/convert.py:201 +#: cps/tasks/convert.py:204 #, python-format msgid "%(format)s format not found on disk" msgstr "O formato %(format)s non se atopou no disco" -#: cps/tasks/convert.py:205 +#: cps/tasks/convert.py:208 msgid "Ebook converter failed with unknown error" msgstr "O conversor de Ebook fallou cun erro descoñecido" -#: cps/tasks/convert.py:224 +#: cps/tasks/convert.py:227 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "Kepubify-converter fallou: %(error)s" -#: cps/tasks/convert.py:245 +#: cps/tasks/convert.py:248 #, python-format msgid "Converted file not found or more than one file in folder %(folder)s" msgstr "Arquivo convertido non atopado, ou máis dun arquivo no directorio %(folder)s" -#: cps/tasks/convert.py:287 +#: cps/tasks/convert.py:291 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "Fallou Ebook-converter: %(error)s" -#: cps/tasks/convert.py:310 +#: cps/tasks/convert.py:314 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "Calibre fallou co erro: %(error)s" -#: cps/tasks/convert.py:315 +#: cps/tasks/convert.py:319 msgid "Convert" msgstr "Convertir" @@ -1536,7 +1537,7 @@ msgstr "Reconectando a base de datos de Calibre" msgid "E-mail" msgstr "Correo electrónico" -#: cps/tasks/metadata_backup.py:33 +#: cps/tasks/metadata_backup.py:34 #, fuzzy msgid "Backing up Metadata" msgstr "editar metadatos" @@ -1550,20 +1551,20 @@ msgstr "" msgid "Generated %(count)s cover thumbnails" msgstr "Xeradas %(count)s miniaturas de cubertas" -#: cps/tasks/thumbnail.py:230 cps/tasks/thumbnail.py:443 -#: cps/tasks/thumbnail.py:511 +#: cps/tasks/thumbnail.py:231 cps/tasks/thumbnail.py:444 +#: cps/tasks/thumbnail.py:512 msgid "Cover Thumbnails" msgstr "Miniaturas de cubertas" -#: cps/tasks/thumbnail.py:289 +#: cps/tasks/thumbnail.py:290 msgid "Generated {0} series thumbnails" msgstr "Xeradas {0} miniaturas de series" -#: cps/tasks/thumbnail.py:454 +#: cps/tasks/thumbnail.py:455 msgid "Clearing cover thumbnail cache" msgstr "Limpando caché de miniaturas de cubertas" -#: cps/tasks/upload.py:38 cps/templates/admin.html:20 +#: cps/tasks/upload.py:39 cps/templates/admin.html:20 #: cps/templates/layout.html:81 cps/templates/user_table.html:145 msgid "Upload" msgstr "Subir arquivo" @@ -1810,7 +1811,7 @@ msgstr "Vale" #: cps/templates/admin.html:259 cps/templates/admin.html:273 #: cps/templates/book_edit.html:214 cps/templates/book_table.html:127 -#: cps/templates/config_db.html:66 cps/templates/config_edit.html:423 +#: cps/templates/config_db.html:66 cps/templates/config_edit.html:427 #: cps/templates/config_view_edit.html:175 cps/templates/detail.html:342 #: cps/templates/modal_dialogs.html:64 cps/templates/modal_dialogs.html:99 #: cps/templates/modal_dialogs.html:117 cps/templates/modal_dialogs.html:135 @@ -1996,7 +1997,7 @@ msgid "Fetch Metadata" msgstr "Obter metadatos" #: cps/templates/book_edit.html:213 cps/templates/config_db.html:65 -#: cps/templates/config_edit.html:422 cps/templates/config_view_edit.html:174 +#: cps/templates/config_edit.html:426 cps/templates/config_view_edit.html:174 #: cps/templates/email_edit.html:65 cps/templates/schedule_edit.html:44 #: cps/templates/shelf_edit.html:25 cps/templates/shelf_order.html:41 #: cps/templates/user_edit.html:142 @@ -2467,47 +2468,51 @@ msgid "Configure Backend for Limiter" msgstr "" #: cps/templates/config_edit.html:376 -msgid "Options for Limiter" +msgid "Options for Limiter Backend" msgstr "" -#: cps/templates/config_edit.html:381 +#: cps/templates/config_edit.html:382 +msgid "Check if file extensions matches file content on upload" +msgstr "" + +#: cps/templates/config_edit.html:385 msgid "Session protection" msgstr "" -#: cps/templates/config_edit.html:383 +#: cps/templates/config_edit.html:387 msgid "Basic" msgstr "" -#: cps/templates/config_edit.html:384 +#: cps/templates/config_edit.html:388 msgid "Strong" msgstr "" -#: cps/templates/config_edit.html:389 +#: cps/templates/config_edit.html:393 #, fuzzy msgid "User Password policy" msgstr "Restablecer contrasinal de usuario" -#: cps/templates/config_edit.html:393 +#: cps/templates/config_edit.html:397 msgid "Minimum password length" msgstr "" -#: cps/templates/config_edit.html:398 +#: cps/templates/config_edit.html:402 msgid "Enforce number" msgstr "" -#: cps/templates/config_edit.html:402 +#: cps/templates/config_edit.html:406 msgid "Enforce lowercase characters" msgstr "" -#: cps/templates/config_edit.html:406 +#: cps/templates/config_edit.html:410 msgid "Enforce uppercase characters" msgstr "" -#: cps/templates/config_edit.html:410 +#: cps/templates/config_edit.html:414 msgid "Enforce characters (needed For Chinese/Japanese/Korean Characters)" msgstr "" -#: cps/templates/config_edit.html:414 +#: cps/templates/config_edit.html:418 msgid "Enforce special characters" msgstr "" @@ -2637,6 +2642,11 @@ msgstr "Marcar como non lido" msgid "Mark As Read" msgstr "Marcar como lido" +#: cps/templates/detail.html:254 +#, fuzzy +msgid "Mark Book as Read or Unread" +msgstr "Marcar como non lido" + #: cps/templates/detail.html:254 cps/templates/listenmp3.html:159 msgid "Read" msgstr "Lido" @@ -2649,8 +2659,13 @@ msgstr "Restaurar dende o arquivo" msgid "Add to archive" msgstr "Engadir a arquivo" -#: cps/templates/detail.html:267 cps/templates/listenmp3.html:167 -msgid "Archived" +#: cps/templates/detail.html:267 +msgid "Mark Book as archived or not, to hide it in Calibre-Web and delete it from Kobo Reader" +msgstr "" + +#: cps/templates/detail.html:267 +#, fuzzy +msgid "Archive" msgstr "Arquivado" #: cps/templates/detail.html:278 cps/templates/listenmp3.html:177 @@ -2930,6 +2945,10 @@ msgstr "Detalles do libro" msgid "Grid" msgstr "Reixa" +#: cps/templates/listenmp3.html:167 +msgid "Archived" +msgstr "Arquivado" + #: cps/templates/login.html:18 msgid "Remember Me" msgstr "Lembrarme" diff --git a/cps/translations/hu/LC_MESSAGES/messages.mo b/cps/translations/hu/LC_MESSAGES/messages.mo index 85206f3a..49f2adbe 100644 Binary files a/cps/translations/hu/LC_MESSAGES/messages.mo and b/cps/translations/hu/LC_MESSAGES/messages.mo differ diff --git a/cps/translations/hu/LC_MESSAGES/messages.po b/cps/translations/hu/LC_MESSAGES/messages.po index 43c001f7..4b28b115 100644 --- a/cps/translations/hu/LC_MESSAGES/messages.po +++ b/cps/translations/hu/LC_MESSAGES/messages.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PROJECT VERSION\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2024-06-09 12:26+0200\n" +"POT-Creation-Date: 2024-06-30 12:19+0200\n" "PO-Revision-Date: 2019-04-06 23:36+0200\n" "Last-Translator: \n" "Language: hu\n" @@ -16,7 +16,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.11.0\n" +"Generated-By: Babel 2.13.1\n" #: cps/about.py:84 msgid "Statistics" @@ -44,9 +44,9 @@ msgstr "" msgid "Success! Books queued for Metadata Backup, please check Tasks for result" msgstr "" -#: cps/admin.py:207 cps/editbooks.py:591 cps/editbooks.py:593 -#: cps/editbooks.py:631 cps/editbooks.py:648 cps/editbooks.py:1280 -#: cps/updater.py:613 cps/uploader.py:93 cps/uploader.py:102 +#: cps/admin.py:207 cps/editbooks.py:573 cps/editbooks.py:575 +#: cps/editbooks.py:615 cps/editbooks.py:658 cps/editbooks.py:1280 +#: cps/updater.py:615 cps/uploader.py:93 cps/uploader.py:102 msgid "Unknown" msgstr "Ismeretlen" @@ -67,12 +67,12 @@ msgstr "Felhasználói felület beállításai" msgid "Edit Users" msgstr "Rendszergazda felhasználó" -#: cps/admin.py:368 cps/opds.py:541 cps/templates/grid.html:14 +#: cps/admin.py:368 cps/opds.py:542 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "" -#: cps/admin.py:395 cps/admin.py:1417 +#: cps/admin.py:395 cps/admin.py:1414 msgid "User not found" msgstr "" @@ -89,7 +89,7 @@ msgstr "Mindent mutass" msgid "Malformed request" msgstr "" -#: cps/admin.py:471 cps/admin.py:2048 +#: cps/admin.py:471 cps/admin.py:2046 msgid "Guest Name can't be changed" msgstr "" @@ -97,7 +97,7 @@ msgstr "" msgid "Guest can't have this role" msgstr "" -#: cps/admin.py:495 cps/admin.py:2002 +#: cps/admin.py:495 cps/admin.py:2000 msgid "No admin user remaining, can't remove admin role" msgstr "" @@ -129,7 +129,7 @@ msgstr "" msgid "No Valid Book Language Given" msgstr "" -#: cps/admin.py:535 cps/editbooks.py:457 +#: cps/admin.py:535 cps/editbooks.py:440 msgid "Parameter not found" msgstr "" @@ -141,7 +141,7 @@ msgstr "" msgid "Invalid Restricted Column" msgstr "" -#: cps/admin.py:598 cps/admin.py:1873 +#: cps/admin.py:598 cps/admin.py:1871 msgid "Calibre-Web configuration updated" msgstr "A Calibre-Web konfigurációja frissítve." @@ -225,295 +225,295 @@ msgstr "" msgid "Invalid Action" msgstr "" -#: cps/admin.py:1123 +#: cps/admin.py:1120 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "" -#: cps/admin.py:1168 +#: cps/admin.py:1165 msgid "Logfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1174 +#: cps/admin.py:1171 msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1208 +#: cps/admin.py:1205 msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgstr "" -#: cps/admin.py:1214 +#: cps/admin.py:1211 msgid "Please Enter a LDAP Service Account and Password" msgstr "" -#: cps/admin.py:1217 +#: cps/admin.py:1214 msgid "Please Enter a LDAP Service Account" msgstr "" -#: cps/admin.py:1222 +#: cps/admin.py:1219 #, python-format msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1224 +#: cps/admin.py:1221 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1228 +#: cps/admin.py:1225 #, python-format msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1230 +#: cps/admin.py:1227 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1237 +#: cps/admin.py:1234 #, python-format msgid "LDAP Member User Filter needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1239 +#: cps/admin.py:1236 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1246 +#: cps/admin.py:1243 msgid "LDAP CACertificate, Certificate or Key Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1277 cps/templates/admin.html:53 +#: cps/admin.py:1274 cps/templates/admin.html:53 msgid "Add New User" msgstr "" -#: cps/admin.py:1286 cps/templates/admin.html:100 +#: cps/admin.py:1283 cps/templates/admin.html:100 msgid "Edit Email Server Settings" msgstr "SMTP beállítások változtatása" -#: cps/admin.py:1305 +#: cps/admin.py:1302 msgid "Success! Gmail Account Verified." msgstr "" -#: cps/admin.py:1325 cps/admin.py:1328 cps/admin.py:1713 cps/admin.py:1857 -#: cps/admin.py:1955 cps/admin.py:2076 cps/editbooks.py:243 -#: cps/editbooks.py:319 cps/editbooks.py:1242 cps/shelf.py:90 cps/shelf.py:150 +#: cps/admin.py:1322 cps/admin.py:1325 cps/admin.py:1710 cps/admin.py:1855 +#: cps/admin.py:1953 cps/admin.py:2074 cps/editbooks.py:226 +#: cps/editbooks.py:303 cps/editbooks.py:1242 cps/shelf.py:90 cps/shelf.py:150 #: cps/shelf.py:193 cps/shelf.py:243 cps/shelf.py:280 cps/shelf.py:354 -#: cps/shelf.py:468 cps/tasks/convert.py:150 cps/web.py:1520 +#: cps/shelf.py:468 cps/tasks/convert.py:153 cps/web.py:1520 #, python-format msgid "Oops! Database Error: %(error)s." msgstr "" -#: cps/admin.py:1335 +#: cps/admin.py:1332 #, python-format msgid "Test e-mail queued for sending to %(email)s, please check Tasks for result" msgstr "" -#: cps/admin.py:1338 +#: cps/admin.py:1335 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "Hiba történt a teszt levél küldése során: %(res)s" -#: cps/admin.py:1340 +#: cps/admin.py:1337 msgid "Please configure your e-mail address first..." msgstr "" -#: cps/admin.py:1342 +#: cps/admin.py:1339 msgid "Email Server Settings updated" msgstr "Az e-mail kiszolgáló beállításai frissítve." -#: cps/admin.py:1365 cps/templates/admin.html:195 +#: cps/admin.py:1362 cps/templates/admin.html:195 msgid "Edit Scheduled Tasks Settings" msgstr "" -#: cps/admin.py:1377 +#: cps/admin.py:1374 msgid "Invalid start time for task specified" msgstr "" -#: cps/admin.py:1382 +#: cps/admin.py:1379 msgid "Invalid duration for task specified" msgstr "" -#: cps/admin.py:1392 +#: cps/admin.py:1389 msgid "Scheduled tasks settings updated" msgstr "" -#: cps/admin.py:1402 cps/admin.py:1451 cps/admin.py:2072 cps/web.py:1316 +#: cps/admin.py:1399 cps/admin.py:1448 cps/admin.py:2070 cps/web.py:1316 msgid "Oops! An unknown error occurred. Please try again later." msgstr "Ismeretlen hiba történt. Próbáld újra később!" -#: cps/admin.py:1406 +#: cps/admin.py:1403 msgid "Settings DB is not Writeable" msgstr "" -#: cps/admin.py:1436 cps/admin.py:2064 +#: cps/admin.py:1433 cps/admin.py:2062 #, python-format msgid "Edit User %(nick)s" msgstr " A felhasználó szerkesztése: %(nick)s" -#: cps/admin.py:1448 +#: cps/admin.py:1445 #, fuzzy, python-format msgid "Success! Password for user %(user)s reset" msgstr "A(z) %(user)s felhasználó jelszavának alaphelyzetbe állítása" -#: cps/admin.py:1454 +#: cps/admin.py:1451 #, fuzzy msgid "Oops! Please configure the SMTP mail settings." msgstr "Először be kell állítani az SMTP levelező beállításokat..." -#: cps/admin.py:1465 +#: cps/admin.py:1462 msgid "Logfile viewer" msgstr "" -#: cps/admin.py:1531 +#: cps/admin.py:1528 msgid "Requesting update package" msgstr "Frissítési csomag kérése" -#: cps/admin.py:1532 +#: cps/admin.py:1529 msgid "Downloading update package" msgstr "Frissítési csomag letöltése" -#: cps/admin.py:1533 +#: cps/admin.py:1530 msgid "Unzipping update package" msgstr "Frissítési csomag kitömörítése" -#: cps/admin.py:1534 +#: cps/admin.py:1531 msgid "Replacing files" msgstr "Fájlok cserélése" -#: cps/admin.py:1535 +#: cps/admin.py:1532 msgid "Database connections are closed" msgstr "Adatbázis kapcsolatok lezárva" -#: cps/admin.py:1536 +#: cps/admin.py:1533 msgid "Stopping server" msgstr "Szerver leállítása" -#: cps/admin.py:1537 +#: cps/admin.py:1534 msgid "Update finished, please press okay and reload page" msgstr "A frissítés települt, kattints az OK-ra és újra tölt az oldal" -#: cps/admin.py:1538 cps/admin.py:1539 cps/admin.py:1540 cps/admin.py:1541 -#: cps/admin.py:1542 cps/admin.py:1543 +#: cps/admin.py:1535 cps/admin.py:1536 cps/admin.py:1537 cps/admin.py:1538 +#: cps/admin.py:1539 cps/admin.py:1540 msgid "Update failed:" msgstr "A frissítés nem sikerült:" -#: cps/admin.py:1538 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 +#: cps/admin.py:1535 cps/updater.py:391 cps/updater.py:626 cps/updater.py:628 msgid "HTTP Error" msgstr "HTTP hiba" -#: cps/admin.py:1539 cps/updater.py:391 cps/updater.py:628 +#: cps/admin.py:1536 cps/updater.py:393 cps/updater.py:630 msgid "Connection error" msgstr "Kapcsolódási hiba" -#: cps/admin.py:1540 cps/updater.py:393 cps/updater.py:630 +#: cps/admin.py:1537 cps/updater.py:395 cps/updater.py:632 msgid "Timeout while establishing connection" msgstr "Időtúllépés a kapcsolódás során" -#: cps/admin.py:1541 cps/updater.py:395 cps/updater.py:632 +#: cps/admin.py:1538 cps/updater.py:397 cps/updater.py:634 msgid "General error" msgstr "Általános hiba" -#: cps/admin.py:1542 +#: cps/admin.py:1539 msgid "Update file could not be saved in temp dir" msgstr "" -#: cps/admin.py:1543 +#: cps/admin.py:1540 msgid "Files could not be replaced during update" msgstr "" -#: cps/admin.py:1567 +#: cps/admin.py:1564 msgid "Failed to extract at least One LDAP User" msgstr "" -#: cps/admin.py:1612 +#: cps/admin.py:1609 msgid "Failed to Create at Least One LDAP User" msgstr "" -#: cps/admin.py:1625 +#: cps/admin.py:1622 #, python-format msgid "Error: %(ldaperror)s" msgstr "" -#: cps/admin.py:1629 +#: cps/admin.py:1626 msgid "Error: No user returned in response of LDAP server" msgstr "" -#: cps/admin.py:1665 +#: cps/admin.py:1662 msgid "At Least One LDAP User Not Found in Database" msgstr "" -#: cps/admin.py:1667 +#: cps/admin.py:1664 msgid "{} User Successfully Imported" msgstr "" -#: cps/admin.py:1725 +#: cps/admin.py:1722 msgid "DB Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1745 +#: cps/admin.py:1742 msgid "DB is not Writeable" msgstr "" -#: cps/admin.py:1761 +#: cps/admin.py:1758 msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1765 +#: cps/admin.py:1762 msgid "Certfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1842 +#: cps/admin.py:1840 msgid "Password length has to be between 1 and 40" msgstr "" -#: cps/admin.py:1896 +#: cps/admin.py:1894 #, fuzzy msgid "Database Settings updated" msgstr "Az e-mail kiszolgáló beállításai frissítve." -#: cps/admin.py:1904 +#: cps/admin.py:1902 #, fuzzy msgid "Database Configuration" msgstr "Funkciók beállítása" -#: cps/admin.py:1919 cps/web.py:1290 +#: cps/admin.py:1917 cps/web.py:1290 msgid "Oops! Please complete all fields." msgstr "Az összes mezőt ki kell tölteni!" -#: cps/admin.py:1928 +#: cps/admin.py:1926 msgid "E-mail is not from valid domain" msgstr "Az e-mail tartománya nem érvényes." -#: cps/admin.py:1934 +#: cps/admin.py:1932 msgid "Add new user" msgstr "Új felhasználó hozzáadása" -#: cps/admin.py:1945 +#: cps/admin.py:1943 #, python-format msgid "User '%(user)s' created" msgstr "A következő felhasználó létrehozva: %(user)s" -#: cps/admin.py:1951 +#: cps/admin.py:1949 #, fuzzy msgid "Oops! An account already exists for this Email. or name." msgstr "Már létezik felhasználó ehhez az e-mail címhez vagy felhasználói névhez." -#: cps/admin.py:1981 +#: cps/admin.py:1979 #, python-format msgid "User '%(nick)s' deleted" msgstr "A felhasználó törölve: %(nick)s" -#: cps/admin.py:1984 +#: cps/admin.py:1982 msgid "Can't delete Guest User" msgstr "" -#: cps/admin.py:1987 +#: cps/admin.py:1985 msgid "No admin user remaining, can't delete user" msgstr "" -#: cps/admin.py:2042 cps/web.py:1469 +#: cps/admin.py:2040 cps/web.py:1469 msgid "Email can't be empty and has to be a valid Email" msgstr "" -#: cps/admin.py:2068 +#: cps/admin.py:2066 #, python-format msgid "User '%(nick)s' updated" msgstr "A felhasználó frissítve: %(nick)s" @@ -526,12 +526,12 @@ msgstr "nincs telepítve" msgid "Execution permissions missing" msgstr "" -#: cps/db.py:756 cps/search.py:137 cps/web.py:747 +#: cps/db.py:768 cps/search.py:137 cps/web.py:747 #, python-format msgid "Custom Column No.%(column)d does not exist in calibre database" msgstr "" -#: cps/db.py:996 cps/templates/config_edit.html:203 +#: cps/db.py:1008 cps/templates/config_edit.html:203 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 #: cps/web.py:562 cps/web.py:596 cps/web.py:641 cps/web.py:681 cps/web.py:708 #: cps/web.py:989 cps/web.py:1019 cps/web.py:1064 cps/web.py:1092 @@ -539,100 +539,105 @@ msgstr "" msgid "None" msgstr "Nincs" -#: cps/editbooks.py:124 cps/editbooks.py:912 cps/web.py:529 cps/web.py:1561 -#: cps/web.py:1605 cps/web.py:1650 +#: cps/editbooks.py:108 cps/editbooks.py:929 cps/web.py:529 cps/web.py:1561 +#: cps/web.py:1606 cps/web.py:1651 msgid "Oops! Selected book is unavailable. File does not exist or is not accessible" msgstr "Hiba történt az e-könyv megnyitásakor. A fájl nem létezik vagy nem érhető el:" -#: cps/editbooks.py:168 cps/editbooks.py:1263 +#: cps/editbooks.py:151 cps/editbooks.py:1263 msgid "User has no rights to upload cover" msgstr "" -#: cps/editbooks.py:188 cps/editbooks.py:733 +#: cps/editbooks.py:171 cps/editbooks.py:744 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "" -#: cps/editbooks.py:230 +#: cps/editbooks.py:213 msgid "Metadata successfully updated" msgstr "A metaadatok sikeresen frissültek" -#: cps/editbooks.py:248 +#: cps/editbooks.py:231 msgid "Error editing book: {}" msgstr "" -#: cps/editbooks.py:305 +#: cps/editbooks.py:289 #, python-format msgid "File %(file)s uploaded" msgstr "" -#: cps/editbooks.py:333 +#: cps/editbooks.py:317 msgid "Source or destination format for conversion missing" msgstr "Az átalakításhoz hiányzik a forrás- vagy a célformátum!" -#: cps/editbooks.py:341 +#: cps/editbooks.py:325 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "A könyv sikeresen átalakításra lett jelölve a következő formátumra: %(book_format)s" -#: cps/editbooks.py:345 +#: cps/editbooks.py:329 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "Hiba történt a könyv átalakításakor: %(res)s" -#: cps/editbooks.py:652 +#: cps/editbooks.py:662 msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgstr "" -#: cps/editbooks.py:707 cps/editbooks.py:1043 +#: cps/editbooks.py:718 cps/editbooks.py:1049 #, fuzzy, python-format msgid "'%(langname)s' is not a valid language" msgstr "A(z) %(langname)s nem érvényes nyelv" -#: cps/editbooks.py:745 cps/editbooks.py:1203 +#: cps/editbooks.py:756 cps/editbooks.py:1192 +#, fuzzy +msgid "File type isn't allowed to be uploaded to this server" +msgstr "A(z) \"%(ext)s\" kiterjesztésű fájlok feltöltése nincs engedélyezve ezen a szerveren." + +#: cps/editbooks.py:762 cps/editbooks.py:1202 #, python-format msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgstr "A(z) \"%(ext)s\" kiterjesztésű fájlok feltöltése nincs engedélyezve ezen a szerveren." -#: cps/editbooks.py:749 cps/editbooks.py:1207 +#: cps/editbooks.py:766 cps/editbooks.py:1206 msgid "File to be uploaded must have an extension" msgstr "A feltöltendő fájlnak kiterjesztéssel kell rendelkeznie!" -#: cps/editbooks.py:757 +#: cps/editbooks.py:774 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "" -#: cps/editbooks.py:777 +#: cps/editbooks.py:794 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "" -#: cps/editbooks.py:834 cps/editbooks.py:836 +#: cps/editbooks.py:851 cps/editbooks.py:853 msgid "Book Format Successfully Deleted" msgstr "" -#: cps/editbooks.py:843 cps/editbooks.py:845 +#: cps/editbooks.py:860 cps/editbooks.py:862 msgid "Book Successfully Deleted" msgstr "" -#: cps/editbooks.py:897 +#: cps/editbooks.py:914 msgid "You are missing permissions to delete books" msgstr "" -#: cps/editbooks.py:947 +#: cps/editbooks.py:964 msgid "edit metadata" msgstr "Metaadatok szerkesztése" -#: cps/editbooks.py:996 +#: cps/editbooks.py:1013 #, python-format msgid "%(seriesindex)s is not a valid number, skipping" msgstr "" -#: cps/editbooks.py:1198 +#: cps/editbooks.py:1197 msgid "User has no rights to upload additional file formats" msgstr "" -#: cps/editbooks.py:1219 +#: cps/editbooks.py:1218 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "Nem sikerült létrehozni az elérési utat (engedély megtagadva): %(path)s." @@ -651,7 +656,7 @@ msgstr "A(z) %(ext)s fájlformátum hozzáadva a könyvhez: %(book)s." msgid "Google Drive setup not completed, try to deactivate and activate Google Drive again" msgstr "A Google Drive beállítása nem fejeződött be, próbáld kikapcsolni és újra aktíválni a Google Drive-ot." -#: cps/gdrive.py:95 +#: cps/gdrive.py:96 msgid "Callback domain is not verified, please follow steps to verify domain in google developer console" msgstr "A visszahívási tartomány nem ellenőrzött, kövesd az alábbi lépéseket a tartomány ellenőrzéséhez a Google Developer Console-ban:" @@ -660,7 +665,7 @@ msgstr "A visszahívási tartomány nem ellenőrzött, kövesd az alábbi lépé msgid "%(format)s format not found for book id: %(book)d" msgstr "A(z) %(format)s formátum nem található a következő könyvhöz: %(book)d" -#: cps/helper.py:93 cps/tasks/convert.py:86 +#: cps/helper.py:93 cps/tasks/convert.py:89 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "%(format)s nem található a Google Drive-on: %(fn)s" @@ -737,122 +742,118 @@ msgstr "" msgid "Deleting book %(id)s from database only, book path in database not valid: %(path)s" msgstr "" -#: cps/helper.py:452 +#: cps/helper.py:465 #, fuzzy, python-format msgid "Rename author 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" -#: cps/helper.py:524 cps/helper.py:533 +#: cps/helper.py:536 cps/helper.py:545 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "A \"%(file)s\" fájl nem található a Google Drive-on" -#: cps/helper.py:567 +#: cps/helper.py:587 #, python-format 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" -#: cps/helper.py:587 -msgid "Error in rename file in path: {}" -msgstr "" - -#: cps/helper.py:605 +#: cps/helper.py:625 #, python-format msgid "Book path %(path)s not found on Google Drive" msgstr "A könyv elérési útja (\"%(path)s\") nem található a Google Drive-on" -#: cps/helper.py:670 +#: cps/helper.py:685 msgid "Found an existing account for this Email address" msgstr "" -#: cps/helper.py:678 +#: cps/helper.py:693 msgid "This username is already taken" msgstr "" -#: cps/helper.py:690 +#: cps/helper.py:705 msgid "Invalid Email address format" msgstr "" -#: cps/helper.py:710 +#: cps/helper.py:726 msgid "Password doesn't comply with password validation rules" msgstr "" -#: cps/helper.py:859 +#: cps/helper.py:873 msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "" -#: cps/helper.py:869 +#: cps/helper.py:883 msgid "Error Downloading Cover" msgstr "" -#: cps/helper.py:872 +#: cps/helper.py:886 msgid "Cover Format Error" msgstr "" -#: cps/helper.py:875 +#: cps/helper.py:889 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "" -#: cps/helper.py:885 +#: cps/helper.py:899 msgid "Failed to create path for cover" msgstr "" -#: cps/helper.py:901 +#: cps/helper.py:915 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "" -#: cps/helper.py:912 +#: cps/helper.py:926 msgid "Only jpg/jpeg/png/webp/bmp files are supported as coverfile" msgstr "" -#: cps/helper.py:924 +#: cps/helper.py:938 msgid "Invalid cover file content" msgstr "" -#: cps/helper.py:928 +#: cps/helper.py:942 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "" -#: cps/helper.py:999 cps/helper.py:1156 +#: cps/helper.py:1014 cps/helper.py:1171 #, fuzzy msgid "Cover" msgstr "Felfedezés" -#: cps/helper.py:1016 +#: cps/helper.py:1031 msgid "UnRar binary file not found" msgstr "" -#: cps/helper.py:1027 +#: cps/helper.py:1042 msgid "Error executing UnRar" msgstr "" -#: cps/helper.py:1035 +#: cps/helper.py:1050 msgid "Could not find the specified directory" msgstr "" -#: cps/helper.py:1038 +#: cps/helper.py:1053 msgid "Please specify a directory, not a file" msgstr "" -#: cps/helper.py:1052 +#: cps/helper.py:1067 msgid "Calibre binaries not viable" msgstr "" -#: cps/helper.py:1061 +#: cps/helper.py:1076 #, python-format msgid "Missing calibre binaries: %(missing)s" msgstr "" -#: cps/helper.py:1063 +#: cps/helper.py:1078 #, python-format msgid "Missing executable permissions: %(missing)s" msgstr "" -#: cps/helper.py:1068 +#: cps/helper.py:1083 msgid "Error executing Calibre" msgstr "" -#: cps/helper.py:1158 cps/templates/admin.html:216 +#: cps/helper.py:1173 cps/templates/admin.html:216 msgid "Queue all books for metadata backup" msgstr "" @@ -898,35 +899,35 @@ msgstr "" msgid "Not Linked to %(oauth)s" msgstr "" -#: cps/oauth_bb.py:261 +#: cps/oauth_bb.py:262 msgid "Failed to log in with GitHub." msgstr "" -#: cps/oauth_bb.py:267 +#: cps/oauth_bb.py:268 msgid "Failed to fetch user info from GitHub." msgstr "" -#: cps/oauth_bb.py:279 +#: cps/oauth_bb.py:280 msgid "Failed to log in with Google." msgstr "" -#: cps/oauth_bb.py:285 +#: cps/oauth_bb.py:286 msgid "Failed to fetch user info from Google." msgstr "" -#: cps/oauth_bb.py:332 +#: cps/oauth_bb.py:334 msgid "GitHub Oauth error, please retry later." msgstr "" -#: cps/oauth_bb.py:335 +#: cps/oauth_bb.py:337 msgid "GitHub Oauth error: {}" msgstr "" -#: cps/oauth_bb.py:356 +#: cps/oauth_bb.py:358 msgid "Google Oauth error, please retry later." msgstr "" -#: cps/oauth_bb.py:359 +#: cps/oauth_bb.py:361 msgid "Google Oauth error: {}" msgstr "" @@ -1287,32 +1288,32 @@ msgstr "" msgid "Unknown Status" msgstr "Ismeretlen állapot" -#: cps/updater.py:431 cps/updater.py:442 cps/updater.py:543 cps/updater.py:558 +#: cps/updater.py:433 cps/updater.py:444 cps/updater.py:545 cps/updater.py:560 msgid "Unexpected data while reading update information" msgstr "Ismeretlen adat a frissítési információk olvasásakor" -#: cps/updater.py:438 cps/updater.py:550 +#: cps/updater.py:440 cps/updater.py:552 msgid "No update available. You already have the latest version installed" msgstr "Nem érhető el újabb frissítés. Már a legújabb verzió van telepítve." -#: cps/updater.py:456 +#: cps/updater.py:458 msgid "A new update is available. Click on the button below to update to the latest version." msgstr "Egy új frissítés érhető el. Kattints a lenti gombra a legújabb verzió frissítésére" -#: cps/updater.py:474 +#: cps/updater.py:476 msgid "Could not fetch update information" msgstr "Nem lehetett begyűjteni a frissítési információkat" -#: cps/updater.py:484 +#: cps/updater.py:486 msgid "Click on the button below to update to the latest stable version." msgstr "" -#: cps/updater.py:493 cps/updater.py:507 cps/updater.py:518 +#: cps/updater.py:495 cps/updater.py:509 cps/updater.py:520 #, python-format msgid "A new update is available. Click on the button below to update to version: %(version)s" msgstr "Új frissítés érhető el. Kattints az alábbi gombra a frissítéshez a következő verzióra: %(version)s" -#: cps/updater.py:536 +#: cps/updater.py:538 msgid "No release information available" msgstr "Nincs információ a kiadásról." @@ -1489,50 +1490,50 @@ msgstr "A profil frissítve." msgid "Oops! An account already exists for this Email." msgstr "Már létezik felhasználó ehhez az e-mail címhez." -#: cps/services/gmail.py:58 +#: cps/services/gmail.py:59 msgid "Found no valid gmail.json file with OAuth information" msgstr "" -#: cps/tasks/convert.py:105 +#: cps/tasks/convert.py:108 #, fuzzy, python-format msgid "%(book)s send to E-Reader" msgstr "Küldés Kindle-re" -#: cps/tasks/convert.py:167 +#: cps/tasks/convert.py:170 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "" -#: cps/tasks/convert.py:201 +#: cps/tasks/convert.py:204 #, python-format msgid "%(format)s format not found on disk" msgstr "" -#: cps/tasks/convert.py:205 +#: cps/tasks/convert.py:208 msgid "Ebook converter failed with unknown error" msgstr "" -#: cps/tasks/convert.py:224 +#: cps/tasks/convert.py:227 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "" -#: cps/tasks/convert.py:245 +#: cps/tasks/convert.py:248 #, python-format msgid "Converted file not found or more than one file in folder %(folder)s" msgstr "" -#: cps/tasks/convert.py:287 +#: cps/tasks/convert.py:291 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "Az e-könyv átalakítás nem sikerült: %(error)s" -#: cps/tasks/convert.py:310 +#: cps/tasks/convert.py:314 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "" -#: cps/tasks/convert.py:315 +#: cps/tasks/convert.py:319 msgid "Convert" msgstr "" @@ -1544,7 +1545,7 @@ msgstr "" msgid "E-mail" msgstr "" -#: cps/tasks/metadata_backup.py:33 +#: cps/tasks/metadata_backup.py:34 #, fuzzy msgid "Backing up Metadata" msgstr "Metaadatok szerkesztése" @@ -1558,20 +1559,20 @@ msgstr "" msgid "Generated %(count)s cover thumbnails" msgstr "" -#: cps/tasks/thumbnail.py:230 cps/tasks/thumbnail.py:443 -#: cps/tasks/thumbnail.py:511 +#: cps/tasks/thumbnail.py:231 cps/tasks/thumbnail.py:444 +#: cps/tasks/thumbnail.py:512 msgid "Cover Thumbnails" msgstr "" -#: cps/tasks/thumbnail.py:289 +#: cps/tasks/thumbnail.py:290 msgid "Generated {0} series thumbnails" msgstr "" -#: cps/tasks/thumbnail.py:454 +#: cps/tasks/thumbnail.py:455 msgid "Clearing cover thumbnail cache" msgstr "" -#: cps/tasks/upload.py:38 cps/templates/admin.html:20 +#: cps/tasks/upload.py:39 cps/templates/admin.html:20 #: cps/templates/layout.html:81 cps/templates/user_table.html:145 msgid "Upload" msgstr "Feltöltés" @@ -1819,7 +1820,7 @@ msgstr "OK" #: cps/templates/admin.html:259 cps/templates/admin.html:273 #: cps/templates/book_edit.html:214 cps/templates/book_table.html:127 -#: cps/templates/config_db.html:66 cps/templates/config_edit.html:423 +#: cps/templates/config_db.html:66 cps/templates/config_edit.html:427 #: cps/templates/config_view_edit.html:175 cps/templates/detail.html:342 #: cps/templates/modal_dialogs.html:64 cps/templates/modal_dialogs.html:99 #: cps/templates/modal_dialogs.html:117 cps/templates/modal_dialogs.html:135 @@ -2005,7 +2006,7 @@ msgid "Fetch Metadata" msgstr "Metaadatok beszerzése" #: cps/templates/book_edit.html:213 cps/templates/config_db.html:65 -#: cps/templates/config_edit.html:422 cps/templates/config_view_edit.html:174 +#: cps/templates/config_edit.html:426 cps/templates/config_view_edit.html:174 #: cps/templates/email_edit.html:65 cps/templates/schedule_edit.html:44 #: cps/templates/shelf_edit.html:25 cps/templates/shelf_order.html:41 #: cps/templates/user_edit.html:142 @@ -2477,47 +2478,51 @@ msgid "Configure Backend for Limiter" msgstr "" #: cps/templates/config_edit.html:376 -msgid "Options for Limiter" +msgid "Options for Limiter Backend" msgstr "" -#: cps/templates/config_edit.html:381 +#: cps/templates/config_edit.html:382 +msgid "Check if file extensions matches file content on upload" +msgstr "" + +#: cps/templates/config_edit.html:385 msgid "Session protection" msgstr "" -#: cps/templates/config_edit.html:383 +#: cps/templates/config_edit.html:387 msgid "Basic" msgstr "" -#: cps/templates/config_edit.html:384 +#: cps/templates/config_edit.html:388 msgid "Strong" msgstr "" -#: cps/templates/config_edit.html:389 +#: cps/templates/config_edit.html:393 #, fuzzy msgid "User Password policy" msgstr "Felhasználó jelszavának alaphelyzetbe állítása" -#: cps/templates/config_edit.html:393 +#: cps/templates/config_edit.html:397 msgid "Minimum password length" msgstr "" -#: cps/templates/config_edit.html:398 +#: cps/templates/config_edit.html:402 msgid "Enforce number" msgstr "" -#: cps/templates/config_edit.html:402 +#: cps/templates/config_edit.html:406 msgid "Enforce lowercase characters" msgstr "" -#: cps/templates/config_edit.html:406 +#: cps/templates/config_edit.html:410 msgid "Enforce uppercase characters" msgstr "" -#: cps/templates/config_edit.html:410 +#: cps/templates/config_edit.html:414 msgid "Enforce characters (needed For Chinese/Japanese/Korean Characters)" msgstr "" -#: cps/templates/config_edit.html:414 +#: cps/templates/config_edit.html:418 msgid "Enforce special characters" msgstr "" @@ -2649,6 +2654,11 @@ msgstr "Legyen olvasatlan" msgid "Mark As Read" msgstr "Legyen olvasott" +#: cps/templates/detail.html:254 +#, fuzzy +msgid "Mark Book as Read or Unread" +msgstr "Legyen olvasatlan" + #: cps/templates/detail.html:254 cps/templates/listenmp3.html:159 msgid "Read" msgstr "Olvasva" @@ -2661,10 +2671,15 @@ msgstr "" msgid "Add to archive" msgstr "" -#: cps/templates/detail.html:267 cps/templates/listenmp3.html:167 -msgid "Archived" +#: cps/templates/detail.html:267 +msgid "Mark Book as archived or not, to hide it in Calibre-Web and delete it from Kobo Reader" msgstr "" +#: cps/templates/detail.html:267 +#, fuzzy +msgid "Archive" +msgstr "Keresés" + #: cps/templates/detail.html:278 cps/templates/listenmp3.html:177 msgid "Description:" msgstr "Ismertető:" @@ -2941,6 +2956,10 @@ msgstr "Könyv részletei" msgid "Grid" msgstr "" +#: cps/templates/listenmp3.html:167 +msgid "Archived" +msgstr "" + #: cps/templates/login.html:18 msgid "Remember Me" msgstr "Emlékezz rám" diff --git a/cps/translations/id/LC_MESSAGES/messages.mo b/cps/translations/id/LC_MESSAGES/messages.mo index 8d48dc80..ebdf755c 100644 Binary files a/cps/translations/id/LC_MESSAGES/messages.mo and b/cps/translations/id/LC_MESSAGES/messages.mo differ diff --git a/cps/translations/id/LC_MESSAGES/messages.po b/cps/translations/id/LC_MESSAGES/messages.po index c4522890..486e19cd 100644 --- a/cps/translations/id/LC_MESSAGES/messages.po +++ b/cps/translations/id/LC_MESSAGES/messages.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Calibre-Web\n" "Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n" -"POT-Creation-Date: 2024-06-09 12:26+0200\n" +"POT-Creation-Date: 2024-06-30 12:19+0200\n" "PO-Revision-Date: 2023-01-21 10:00+0700\n" "Last-Translator: Arief Hidayat\n" "Language: id\n" @@ -16,7 +16,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.11.0\n" +"Generated-By: Babel 2.13.1\n" #: cps/about.py:84 msgid "Statistics" @@ -45,9 +45,9 @@ msgstr "Perintah tidak diketahui" msgid "Success! Books queued for Metadata Backup, please check Tasks for result" msgstr "Uji email diantrean untuk dikirim ke %(email), harap periksa Tasks untuk hasilnya" -#: cps/admin.py:207 cps/editbooks.py:591 cps/editbooks.py:593 -#: cps/editbooks.py:631 cps/editbooks.py:648 cps/editbooks.py:1280 -#: cps/updater.py:613 cps/uploader.py:93 cps/uploader.py:102 +#: cps/admin.py:207 cps/editbooks.py:573 cps/editbooks.py:575 +#: cps/editbooks.py:615 cps/editbooks.py:658 cps/editbooks.py:1280 +#: cps/updater.py:615 cps/uploader.py:93 cps/uploader.py:102 msgid "Unknown" msgstr "Tidak diketahui" @@ -67,12 +67,12 @@ msgstr "Pengaturan Antarmuka" msgid "Edit Users" msgstr "Edit pengguna" -#: cps/admin.py:368 cps/opds.py:541 cps/templates/grid.html:14 +#: cps/admin.py:368 cps/opds.py:542 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "Semua" -#: cps/admin.py:395 cps/admin.py:1417 +#: cps/admin.py:395 cps/admin.py:1414 msgid "User not found" msgstr "Pengguna tidak ditemukan" @@ -89,7 +89,7 @@ msgstr "Tampilkan semua" msgid "Malformed request" msgstr "Permintaan salah" -#: cps/admin.py:471 cps/admin.py:2048 +#: cps/admin.py:471 cps/admin.py:2046 msgid "Guest Name can't be changed" msgstr "Nama Tamu tidak dapat diganti" @@ -97,7 +97,7 @@ msgstr "Nama Tamu tidak dapat diganti" msgid "Guest can't have this role" msgstr "Tamu tidak dapat memiliki peran ini" -#: cps/admin.py:495 cps/admin.py:2002 +#: cps/admin.py:495 cps/admin.py:2000 msgid "No admin user remaining, can't remove admin role" msgstr "Tidak ada pengguna admin yang tersisa, tidak dapat menghapus peran admin" @@ -129,7 +129,7 @@ msgstr "Tidak Ada Lokal yang Valid Diberikan" msgid "No Valid Book Language Given" msgstr "Tidak Ada Bahasa Buku yang Valid Diberikan" -#: cps/admin.py:535 cps/editbooks.py:457 +#: cps/admin.py:535 cps/editbooks.py:440 msgid "Parameter not found" msgstr "Parameter tidak ditemukan" @@ -141,7 +141,7 @@ msgstr "Kolom Baca Tidak Valid" msgid "Invalid Restricted Column" msgstr "Kolom Dibatasi Tidak Valid" -#: cps/admin.py:598 cps/admin.py:1873 +#: cps/admin.py:598 cps/admin.py:1871 msgid "Calibre-Web configuration updated" msgstr "Pengaturan Calibre-Web telah diperbarui" @@ -221,292 +221,292 @@ msgstr "Tag tidak ditemukan" msgid "Invalid Action" msgstr "Tindakan Tidak Valid" -#: cps/admin.py:1123 +#: cps/admin.py:1120 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "client_secrets.json Tidak Diatur Untuk Aplikasi Web" -#: cps/admin.py:1168 +#: cps/admin.py:1165 msgid "Logfile Location is not Valid, Please Enter Correct Path" msgstr "Lokasi Logfile tidak Valid, Harap Masukkan Jalur yang Benar" -#: cps/admin.py:1174 +#: cps/admin.py:1171 msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgstr "Akses Logfile Catatan tidak Valid, Harap Masukkan Jalur yang Benar" -#: cps/admin.py:1208 +#: cps/admin.py:1205 msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgstr "Harap Masukkan Provider LDAP, Port, DN dan User Obect Identifier" -#: cps/admin.py:1214 +#: cps/admin.py:1211 msgid "Please Enter a LDAP Service Account and Password" msgstr "Masukkan Akun Layanan LDAP dan Kata Sandi" -#: cps/admin.py:1217 +#: cps/admin.py:1214 msgid "Please Enter a LDAP Service Account" msgstr "Masukkan Akun Layanan LDAP" -#: cps/admin.py:1222 +#: cps/admin.py:1219 #, python-format msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgstr "Filter Objek Grup LDAP Harus Memiliki Satu Pengidentifikasi Format \"%s\"" -#: cps/admin.py:1224 +#: cps/admin.py:1221 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "Filter Objek Grup LDAP Memiliki Tanda kurung yang Tak Berpasangan" -#: cps/admin.py:1228 +#: cps/admin.py:1225 #, python-format msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgstr "Filter Objek Pengguna LDAP harus Memiliki Satu Pengidentifikasi Format \"%s\"" -#: cps/admin.py:1230 +#: cps/admin.py:1227 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "Filter Objek Pengguna LDAP Memiliki Tanda kurung yang Tak Berpasangan" -#: cps/admin.py:1237 +#: cps/admin.py:1234 #, python-format msgid "LDAP Member User Filter needs to Have One \"%s\" Format Identifier" msgstr "Filter Pengguna Anggota LDAP harus Memiliki Satu Pengenal Format \"%s\"" -#: cps/admin.py:1239 +#: cps/admin.py:1236 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "Filter Pengguna Anggota LDAP Memiliki Tanda Kurung yang Tak Berpasangan" -#: cps/admin.py:1246 +#: cps/admin.py:1243 msgid "LDAP CACertificate, Certificate or Key Location is not Valid, Please Enter Correct Path" msgstr "Lokasi LDAP Sertifikat CA, Sertifikat, atau Kunci tidak Valid, Harap Masukkan Jalur yang Benar " -#: cps/admin.py:1277 cps/templates/admin.html:53 +#: cps/admin.py:1274 cps/templates/admin.html:53 msgid "Add New User" msgstr "Tambah Pengguna Baru" -#: cps/admin.py:1286 cps/templates/admin.html:100 +#: cps/admin.py:1283 cps/templates/admin.html:100 msgid "Edit Email Server Settings" msgstr "Edit Pengaturan Server Email" -#: cps/admin.py:1305 +#: cps/admin.py:1302 msgid "Success! Gmail Account Verified." msgstr "" -#: cps/admin.py:1325 cps/admin.py:1328 cps/admin.py:1713 cps/admin.py:1857 -#: cps/admin.py:1955 cps/admin.py:2076 cps/editbooks.py:243 -#: cps/editbooks.py:319 cps/editbooks.py:1242 cps/shelf.py:90 cps/shelf.py:150 +#: cps/admin.py:1322 cps/admin.py:1325 cps/admin.py:1710 cps/admin.py:1855 +#: cps/admin.py:1953 cps/admin.py:2074 cps/editbooks.py:226 +#: cps/editbooks.py:303 cps/editbooks.py:1242 cps/shelf.py:90 cps/shelf.py:150 #: cps/shelf.py:193 cps/shelf.py:243 cps/shelf.py:280 cps/shelf.py:354 -#: cps/shelf.py:468 cps/tasks/convert.py:150 cps/web.py:1520 +#: cps/shelf.py:468 cps/tasks/convert.py:153 cps/web.py:1520 #, python-format msgid "Oops! Database Error: %(error)s." msgstr "Kesalahan basis data: %(error)s" -#: cps/admin.py:1335 +#: cps/admin.py:1332 #, python-format msgid "Test e-mail queued for sending to %(email)s, please check Tasks for result" msgstr "Uji email diantrean untuk dikirim ke %(email), harap periksa Tasks untuk hasilnya" -#: cps/admin.py:1338 +#: cps/admin.py:1335 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "Terjadi kesalahan saat mengirim email tes: %(res)s" -#: cps/admin.py:1340 +#: cps/admin.py:1337 msgid "Please configure your e-mail address first..." msgstr "Harap atur alamat email Anda terlebih dahulu.." -#: cps/admin.py:1342 +#: cps/admin.py:1339 msgid "Email Server Settings updated" msgstr "Setelan server email diperbarui" -#: cps/admin.py:1365 cps/templates/admin.html:195 +#: cps/admin.py:1362 cps/templates/admin.html:195 msgid "Edit Scheduled Tasks Settings" msgstr "Edit Pengaturan Tugas Terjadwal" -#: cps/admin.py:1377 +#: cps/admin.py:1374 msgid "Invalid start time for task specified" msgstr "Waktu mulai tidak valid untuk tugas yang ditentukan" -#: cps/admin.py:1382 +#: cps/admin.py:1379 msgid "Invalid duration for task specified" msgstr "Durasi tidak valid untuk tugas yang ditentukan" -#: cps/admin.py:1392 +#: cps/admin.py:1389 msgid "Scheduled tasks settings updated" msgstr "Pengaturan tugas terjadwal diperbarui" -#: cps/admin.py:1402 cps/admin.py:1451 cps/admin.py:2072 cps/web.py:1316 +#: cps/admin.py:1399 cps/admin.py:1448 cps/admin.py:2070 cps/web.py:1316 msgid "Oops! An unknown error occurred. Please try again later." msgstr "Terjadi kesalahan yang tidak diketahui. Coba lagi nanti." -#: cps/admin.py:1406 +#: cps/admin.py:1403 msgid "Settings DB is not Writeable" msgstr "Pengaturan DB tidak dapat ditulisi" -#: cps/admin.py:1436 cps/admin.py:2064 +#: cps/admin.py:1433 cps/admin.py:2062 #, python-format msgid "Edit User %(nick)s" msgstr "Edit pengguna %(nick)s" -#: cps/admin.py:1448 +#: cps/admin.py:1445 #, fuzzy, python-format msgid "Success! Password for user %(user)s reset" msgstr "Kata sandi untuk pengaturan ulang pengguna %(user) " -#: cps/admin.py:1454 +#: cps/admin.py:1451 #, fuzzy msgid "Oops! Please configure the SMTP mail settings." msgstr "Harap atur pengaturan email SMTP terlebih dahulu..." -#: cps/admin.py:1465 +#: cps/admin.py:1462 msgid "Logfile viewer" msgstr "Penampil berkas log" -#: cps/admin.py:1531 +#: cps/admin.py:1528 msgid "Requesting update package" msgstr "Meminta paket pembaruan" -#: cps/admin.py:1532 +#: cps/admin.py:1529 msgid "Downloading update package" msgstr "Mengunduh paket pembaruan" -#: cps/admin.py:1533 +#: cps/admin.py:1530 msgid "Unzipping update package" msgstr "Mengekstrak paket pembaruan" -#: cps/admin.py:1534 +#: cps/admin.py:1531 msgid "Replacing files" msgstr "Mengganti berkas" -#: cps/admin.py:1535 +#: cps/admin.py:1532 msgid "Database connections are closed" msgstr "Koneksi basis data ditutup" -#: cps/admin.py:1536 +#: cps/admin.py:1533 msgid "Stopping server" msgstr "Menghentikan server" -#: cps/admin.py:1537 +#: cps/admin.py:1534 msgid "Update finished, please press okay and reload page" msgstr "Pembaruan selesai, silakan tekan OK dan muat ulang halaman" -#: cps/admin.py:1538 cps/admin.py:1539 cps/admin.py:1540 cps/admin.py:1541 -#: cps/admin.py:1542 cps/admin.py:1543 +#: cps/admin.py:1535 cps/admin.py:1536 cps/admin.py:1537 cps/admin.py:1538 +#: cps/admin.py:1539 cps/admin.py:1540 msgid "Update failed:" msgstr "Pembaruan gagal:" -#: cps/admin.py:1538 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 +#: cps/admin.py:1535 cps/updater.py:391 cps/updater.py:626 cps/updater.py:628 msgid "HTTP Error" msgstr "Kesalahan HTTP" -#: cps/admin.py:1539 cps/updater.py:391 cps/updater.py:628 +#: cps/admin.py:1536 cps/updater.py:393 cps/updater.py:630 msgid "Connection error" msgstr "Kesalahan koneksi" -#: cps/admin.py:1540 cps/updater.py:393 cps/updater.py:630 +#: cps/admin.py:1537 cps/updater.py:395 cps/updater.py:632 msgid "Timeout while establishing connection" msgstr "Batas waktu saat membuat koneksi" -#: cps/admin.py:1541 cps/updater.py:395 cps/updater.py:632 +#: cps/admin.py:1538 cps/updater.py:397 cps/updater.py:634 msgid "General error" msgstr "Kesalahan umum" -#: cps/admin.py:1542 +#: cps/admin.py:1539 msgid "Update file could not be saved in temp dir" msgstr "Berkas pembaruan tidak dapat disimpan di direktori temp" -#: cps/admin.py:1543 +#: cps/admin.py:1540 msgid "Files could not be replaced during update" msgstr "Berkas tidak dapat diganti selama pembaruan" -#: cps/admin.py:1567 +#: cps/admin.py:1564 msgid "Failed to extract at least One LDAP User" msgstr "Gagal mengekstrak setidaknya Satu Pengguna LDAP" -#: cps/admin.py:1612 +#: cps/admin.py:1609 msgid "Failed to Create at Least One LDAP User" msgstr "Gagal Membuat Sedikitnya Satu Pengguna LDAP" -#: cps/admin.py:1625 +#: cps/admin.py:1622 #, python-format msgid "Error: %(ldaperror)s" msgstr "Kesalahan: %(ldaperror)s" -#: cps/admin.py:1629 +#: cps/admin.py:1626 msgid "Error: No user returned in response of LDAP server" msgstr "Error: Tidak ada pengguna yang dikembalikan sebagai respons dari server LDAP" -#: cps/admin.py:1665 +#: cps/admin.py:1662 msgid "At Least One LDAP User Not Found in Database" msgstr "Setidaknya Satu Pengguna LDAP Tidak Ditemukan di Basis Data" -#: cps/admin.py:1667 +#: cps/admin.py:1664 msgid "{} User Successfully Imported" msgstr "{} Pengguna Berhasil Diimpor" -#: cps/admin.py:1725 +#: cps/admin.py:1722 msgid "DB Location is not Valid, Please Enter Correct Path" msgstr "Lokasi Basis Data tidak Valid, Harap Masukkan Jalur yang Benar" -#: cps/admin.py:1745 +#: cps/admin.py:1742 msgid "DB is not Writeable" msgstr "Basis Data tidak dapat ditulisi" -#: cps/admin.py:1761 +#: cps/admin.py:1758 msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgstr "Lokasi keyfile tidak Valid, Harap Masukkan Jalur yang Benar " -#: cps/admin.py:1765 +#: cps/admin.py:1762 msgid "Certfile Location is not Valid, Please Enter Correct Path" msgstr "Lokasi Sertifikat tidak Valid, Harap Masukkan Jalur yang Benar " -#: cps/admin.py:1842 +#: cps/admin.py:1840 msgid "Password length has to be between 1 and 40" msgstr "" -#: cps/admin.py:1896 +#: cps/admin.py:1894 msgid "Database Settings updated" msgstr "Pengaturan Basis Data diperbarui" -#: cps/admin.py:1904 +#: cps/admin.py:1902 msgid "Database Configuration" msgstr "Pengaturan Basis Data" -#: cps/admin.py:1919 cps/web.py:1290 +#: cps/admin.py:1917 cps/web.py:1290 msgid "Oops! Please complete all fields." msgstr "Harap masukkan seluruh isian!" -#: cps/admin.py:1928 +#: cps/admin.py:1926 msgid "E-mail is not from valid domain" msgstr "Email bukan dari domain yang valid" -#: cps/admin.py:1934 +#: cps/admin.py:1932 msgid "Add new user" msgstr "Tambahkan pengguna baru" -#: cps/admin.py:1945 +#: cps/admin.py:1943 #, python-format msgid "User '%(user)s' created" msgstr "Pengguna '%(user)s' telah dibuat" -#: cps/admin.py:1951 +#: cps/admin.py:1949 msgid "Oops! An account already exists for this Email. or name." msgstr "Ditemukan akun yang ada untuk alamat email atau nama ini." -#: cps/admin.py:1981 +#: cps/admin.py:1979 #, python-format msgid "User '%(nick)s' deleted" msgstr "Pengguna '%(nick)s' telah dihapus" -#: cps/admin.py:1984 +#: cps/admin.py:1982 msgid "Can't delete Guest User" msgstr "Tidak dapat menghapus Pengguna Tamu" -#: cps/admin.py:1987 +#: cps/admin.py:1985 msgid "No admin user remaining, can't delete user" msgstr "Tidak ada pengguna admin tersisa, tidak dapat menghapus pengguna" -#: cps/admin.py:2042 cps/web.py:1469 +#: cps/admin.py:2040 cps/web.py:1469 msgid "Email can't be empty and has to be a valid Email" msgstr "Alamat email tidak boleh kosong dan harus berupa email yang valid" -#: cps/admin.py:2068 +#: cps/admin.py:2066 #, python-format msgid "User '%(nick)s' updated" msgstr "Pengguna '%(nick)s' diperbarui" @@ -519,12 +519,12 @@ msgstr "belum dipasang" msgid "Execution permissions missing" msgstr "Izin eksekusi hilang" -#: cps/db.py:756 cps/search.py:137 cps/web.py:747 +#: cps/db.py:768 cps/search.py:137 cps/web.py:747 #, python-format msgid "Custom Column No.%(column)d does not exist in calibre database" msgstr "Kolom Kustom No.%(column)d tidak ada di basis data kaliber" -#: cps/db.py:996 cps/templates/config_edit.html:203 +#: cps/db.py:1008 cps/templates/config_edit.html:203 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 #: cps/web.py:562 cps/web.py:596 cps/web.py:641 cps/web.py:681 cps/web.py:708 #: cps/web.py:989 cps/web.py:1019 cps/web.py:1064 cps/web.py:1092 @@ -532,100 +532,105 @@ msgstr "Kolom Kustom No.%(column)d tidak ada di basis data kaliber" msgid "None" msgstr "Tidak ada" -#: cps/editbooks.py:124 cps/editbooks.py:912 cps/web.py:529 cps/web.py:1561 -#: cps/web.py:1605 cps/web.py:1650 +#: cps/editbooks.py:108 cps/editbooks.py:929 cps/web.py:529 cps/web.py:1561 +#: cps/web.py:1606 cps/web.py:1651 msgid "Oops! Selected book is unavailable. File does not exist or is not accessible" msgstr "Ups! Judul buku yang dipilih tidak tersedia. Berkas tidak ada atau tidak dapat diakses" -#: cps/editbooks.py:168 cps/editbooks.py:1263 +#: cps/editbooks.py:151 cps/editbooks.py:1263 msgid "User has no rights to upload cover" msgstr "Pengguna tidak berhak mengganti sampul" -#: cps/editbooks.py:188 cps/editbooks.py:733 +#: cps/editbooks.py:171 cps/editbooks.py:744 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "IDは大文字小文字を区別しません。元のIDを上書きします" -#: cps/editbooks.py:230 +#: cps/editbooks.py:213 msgid "Metadata successfully updated" msgstr "Metadata berhasil diperbarui" -#: cps/editbooks.py:248 +#: cps/editbooks.py:231 msgid "Error editing book: {}" msgstr "Kesalahan pengeditan buku: {}" -#: cps/editbooks.py:305 +#: cps/editbooks.py:289 #, python-format msgid "File %(file)s uploaded" msgstr "Berkas %(file)s telah diunggah" -#: cps/editbooks.py:333 +#: cps/editbooks.py:317 msgid "Source or destination format for conversion missing" msgstr "Format sumber atau tujuan untuk konversi tidak ada" -#: cps/editbooks.py:341 +#: cps/editbooks.py:325 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "Buku berhasil diantrekan untuk dikonversi ke %(book_format)s" -#: cps/editbooks.py:345 +#: cps/editbooks.py:329 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "Terjadi kesalahan saat mengonversi buku ini: %(res)s" -#: cps/editbooks.py:652 +#: cps/editbooks.py:662 msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgstr "Buku yang diunggah mungkin ada di perpustakaan, pertimbangkan untuk mengubahnya sebelum mengunggah yang baru: " -#: cps/editbooks.py:707 cps/editbooks.py:1043 +#: cps/editbooks.py:718 cps/editbooks.py:1049 #, python-format msgid "'%(langname)s' is not a valid language" msgstr "'%(langname)s' bukan bahasa yang valid" -#: cps/editbooks.py:745 cps/editbooks.py:1203 +#: cps/editbooks.py:756 cps/editbooks.py:1192 +#, fuzzy +msgid "File type isn't allowed to be uploaded to this server" +msgstr "Ekstensi berkas '%(ext)s' tidak diizinkan untuk diunggah ke server ini" + +#: cps/editbooks.py:762 cps/editbooks.py:1202 #, python-format msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgstr "Ekstensi berkas '%(ext)s' tidak diizinkan untuk diunggah ke server ini" -#: cps/editbooks.py:749 cps/editbooks.py:1207 +#: cps/editbooks.py:766 cps/editbooks.py:1206 msgid "File to be uploaded must have an extension" msgstr "Berkas yang akan diunggah harus memiliki ekstensi" -#: cps/editbooks.py:757 +#: cps/editbooks.py:774 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "Berkas %(filename)s tidak dapat disimpan ke direktori temp" -#: cps/editbooks.py:777 +#: cps/editbooks.py:794 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "Gagal Memindahkan Berkas Sampul %(file)s: %(error)s" -#: cps/editbooks.py:834 cps/editbooks.py:836 +#: cps/editbooks.py:851 cps/editbooks.py:853 msgid "Book Format Successfully Deleted" msgstr "Format Buku Berhasil Dihapus" -#: cps/editbooks.py:843 cps/editbooks.py:845 +#: cps/editbooks.py:860 cps/editbooks.py:862 msgid "Book Successfully Deleted" msgstr "Buku Berhasil Dihapus" -#: cps/editbooks.py:897 +#: cps/editbooks.py:914 msgid "You are missing permissions to delete books" msgstr "Anda tidak memiliki izin untuk menghapus buku" -#: cps/editbooks.py:947 +#: cps/editbooks.py:964 msgid "edit metadata" msgstr "edit metadata" -#: cps/editbooks.py:996 +#: cps/editbooks.py:1013 #, python-format msgid "%(seriesindex)s is not a valid number, skipping" msgstr "%(seriesindex)s dilewati karena bukan angka yang valid" -#: cps/editbooks.py:1198 +#: cps/editbooks.py:1197 msgid "User has no rights to upload additional file formats" msgstr "Pengguna tidak memiliki izin untuk mengunggah format berkas tambahan" -#: cps/editbooks.py:1219 +#: cps/editbooks.py:1218 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "Gagal membuat jalur %(path)s (Izin ditolak)." @@ -644,7 +649,7 @@ msgstr "Format berkas %(ext)s ditambahkan ke %(book)s" msgid "Google Drive setup not completed, try to deactivate and activate Google Drive again" msgstr "Pengaturan Google Drive belum selesai, coba nonaktifkan dan aktifkan kembali Google Drive" -#: cps/gdrive.py:95 +#: cps/gdrive.py:96 msgid "Callback domain is not verified, please follow steps to verify domain in google developer console" msgstr "Domain panggilan balik tidak diverifikasi, ikuti langkah-langkah untuk memverifikasi domain di konsol pengembang google" @@ -653,7 +658,7 @@ msgstr "Domain panggilan balik tidak diverifikasi, ikuti langkah-langkah untuk m msgid "%(format)s format not found for book id: %(book)d" msgstr "%(format)s format tidak ditemukan untuk id buku: %(book)d" -#: cps/helper.py:93 cps/tasks/convert.py:86 +#: cps/helper.py:93 cps/tasks/convert.py:89 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "%(format)s tidak ditemukan di Google Drive: %(fn)s" @@ -729,126 +734,122 @@ msgstr "Gagal menghapus buku %(id)s: %(message)s" msgid "Deleting book %(id)s from database only, book path in database not valid: %(path)s" msgstr "Menghapus buku %(id)s hanya dari basis data, jalur buku di basis data tidak valid: %(path)s" -#: cps/helper.py:452 +#: cps/helper.py:465 #, python-format msgid "Rename author from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgstr "Ganti nama pengarang dari: '%(src)s' menjadi '%(dest)s' gagal dengan kesalahan: %(error)s" -#: cps/helper.py:524 cps/helper.py:533 +#: cps/helper.py:536 cps/helper.py:545 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "Berkas %(file)s tidak ditemukan di Google Drive" -#: cps/helper.py:567 +#: cps/helper.py:587 #, python-format msgid "Rename title from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgstr "Ganti nama judul dari: '%(src)s' menjadi '%(dest)s' gagal dengan kesalahan: %(error)s" -#: cps/helper.py:587 -msgid "Error in rename file in path: {}" -msgstr "Kesalahan dalam mengganti nama berkas di jalur: {}" - -#: cps/helper.py:605 +#: cps/helper.py:625 #, python-format msgid "Book path %(path)s not found on Google Drive" msgstr "Jalur buku %(path)s tidak ditemukan di Google Drive" -#: cps/helper.py:670 +#: cps/helper.py:685 msgid "Found an existing account for this Email address" msgstr "" -#: cps/helper.py:678 +#: cps/helper.py:693 msgid "This username is already taken" msgstr "Nama pengguna ini sudah digunakan" -#: cps/helper.py:690 +#: cps/helper.py:705 #, fuzzy msgid "Invalid Email address format" msgstr "Format alamat email tidak valid" -#: cps/helper.py:710 +#: cps/helper.py:726 msgid "Password doesn't comply with password validation rules" msgstr "" -#: cps/helper.py:859 +#: cps/helper.py:873 msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "Modul 'advocate' Python tidak diinstal tetapi diperlukan untuk unggahan sampul" -#: cps/helper.py:869 +#: cps/helper.py:883 msgid "Error Downloading Cover" msgstr "Kesalahan Mengunduh Sampul" -#: cps/helper.py:872 +#: cps/helper.py:886 msgid "Cover Format Error" msgstr "Kesalahan Format Sampul" -#: cps/helper.py:875 +#: cps/helper.py:889 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "Anda tidak diizinkan mengakses localhost atau jaringan lokal untuk unggahan sampul" -#: cps/helper.py:885 +#: cps/helper.py:899 msgid "Failed to create path for cover" msgstr "Gagal membuat jalur untuk sampul" -#: cps/helper.py:901 +#: cps/helper.py:915 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "Berkas sampul bukan berkas gambar yang valid, atau tidak dapat disimpan" -#: cps/helper.py:912 +#: cps/helper.py:926 msgid "Only jpg/jpeg/png/webp/bmp files are supported as coverfile" msgstr "Hanya berkas jpg/jpeg/png/webp/bmp yang didukung sebagai berkas sampul" -#: cps/helper.py:924 +#: cps/helper.py:938 msgid "Invalid cover file content" msgstr "Konten berkas sampul tidak valid" -#: cps/helper.py:928 +#: cps/helper.py:942 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "Hanya berkas jpg/jpeg yang didukung sebagai berkas sampul" -#: cps/helper.py:999 cps/helper.py:1156 +#: cps/helper.py:1014 cps/helper.py:1171 #, fuzzy msgid "Cover" msgstr "Sampul" -#: cps/helper.py:1016 +#: cps/helper.py:1031 msgid "UnRar binary file not found" msgstr "Berkas biner unrar tidak ditemukan" -#: cps/helper.py:1027 +#: cps/helper.py:1042 #, fuzzy msgid "Error executing UnRar" msgstr "Kesalahan saat menjalankan UnRar" -#: cps/helper.py:1035 +#: cps/helper.py:1050 msgid "Could not find the specified directory" msgstr "" -#: cps/helper.py:1038 +#: cps/helper.py:1053 msgid "Please specify a directory, not a file" msgstr "" -#: cps/helper.py:1052 +#: cps/helper.py:1067 #, fuzzy msgid "Calibre binaries not viable" msgstr "Basis Data tidak dapat ditulisi" -#: cps/helper.py:1061 +#: cps/helper.py:1076 #, python-format msgid "Missing calibre binaries: %(missing)s" msgstr "" -#: cps/helper.py:1063 +#: cps/helper.py:1078 #, fuzzy, python-format msgid "Missing executable permissions: %(missing)s" msgstr "Izin eksekusi hilang" -#: cps/helper.py:1068 +#: cps/helper.py:1083 #, fuzzy msgid "Error executing Calibre" msgstr "Kesalahan saat menjalankan UnRar" -#: cps/helper.py:1158 cps/templates/admin.html:216 +#: cps/helper.py:1173 cps/templates/admin.html:216 msgid "Queue all books for metadata backup" msgstr "Antrian semua buku untuk cadangan metadata" @@ -894,35 +895,35 @@ msgstr "Membatalkan tautan ke %(oauth)s Gagal" msgid "Not Linked to %(oauth)s" msgstr "Tidak Tertaut ke %(oauth)s" -#: cps/oauth_bb.py:261 +#: cps/oauth_bb.py:262 msgid "Failed to log in with GitHub." msgstr "Gagal masuk dengan GitHub." -#: cps/oauth_bb.py:267 +#: cps/oauth_bb.py:268 msgid "Failed to fetch user info from GitHub." msgstr "Gagal mengambil info pengguna dari GitHub." -#: cps/oauth_bb.py:279 +#: cps/oauth_bb.py:280 msgid "Failed to log in with Google." msgstr "Gagal masuk dengan Google." -#: cps/oauth_bb.py:285 +#: cps/oauth_bb.py:286 msgid "Failed to fetch user info from Google." msgstr "Gagal mengambil info pengguna dari Google." -#: cps/oauth_bb.py:332 +#: cps/oauth_bb.py:334 msgid "GitHub Oauth error, please retry later." msgstr "Kesalahan GitHub Oauth, silakan coba lagi nanti." -#: cps/oauth_bb.py:335 +#: cps/oauth_bb.py:337 msgid "GitHub Oauth error: {}" msgstr "Kesalahan GitHub OAuth: {}" -#: cps/oauth_bb.py:356 +#: cps/oauth_bb.py:358 msgid "Google Oauth error, please retry later." msgstr "Kesalahan Google Oauth, harap coba lagi nanti." -#: cps/oauth_bb.py:359 +#: cps/oauth_bb.py:361 msgid "Google Oauth error: {}" msgstr "Kesalahan Google OAuth: {}" @@ -1280,32 +1281,32 @@ msgstr "Dibatalkan" msgid "Unknown Status" msgstr "Status Tidak Diketahui" -#: cps/updater.py:431 cps/updater.py:442 cps/updater.py:543 cps/updater.py:558 +#: cps/updater.py:433 cps/updater.py:444 cps/updater.py:545 cps/updater.py:560 msgid "Unexpected data while reading update information" msgstr "Data tak terduga saat membaca informasi pembaruan" -#: cps/updater.py:438 cps/updater.py:550 +#: cps/updater.py:440 cps/updater.py:552 msgid "No update available. You already have the latest version installed" msgstr "Tidak ada pembaruan yang tersedia. Anda telah memasang versi terbaru" -#: cps/updater.py:456 +#: cps/updater.py:458 msgid "A new update is available. Click on the button below to update to the latest version." msgstr "Pembaruan tersedia. Klik tombol di bawah untuk memperbarui ke versi terbaru." -#: cps/updater.py:474 +#: cps/updater.py:476 msgid "Could not fetch update information" msgstr "Tidak dapat mengambil informasi pembaruan" -#: cps/updater.py:484 +#: cps/updater.py:486 msgid "Click on the button below to update to the latest stable version." msgstr "Klik tombol di bawah untuk memperbarui ke versi stabil terbaru." -#: cps/updater.py:493 cps/updater.py:507 cps/updater.py:518 +#: cps/updater.py:495 cps/updater.py:509 cps/updater.py:520 #, python-format msgid "A new update is available. Click on the button below to update to version: %(version)s" msgstr "Pembaruan tersedia. Klik tombol di bawah untuk memperbarui ke versi: %(version)s" -#: cps/updater.py:536 +#: cps/updater.py:538 msgid "No release information available" msgstr "Tidak ada informasi rilis yang tersedia" @@ -1484,50 +1485,50 @@ msgstr "Profil diperbarui" msgid "Oops! An account already exists for this Email." msgstr "Ditemukan akun yang ada untuk alamat email ini" -#: cps/services/gmail.py:58 +#: cps/services/gmail.py:59 msgid "Found no valid gmail.json file with OAuth information" msgstr "Tidak ditemukan berkas gmail.json yang valid dengan informasi OAuth" -#: cps/tasks/convert.py:105 +#: cps/tasks/convert.py:108 #, python-format msgid "%(book)s send to E-Reader" msgstr "%%(buku)s telah dikirim ke E-Reader" -#: cps/tasks/convert.py:167 +#: cps/tasks/convert.py:170 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "Calibre ebook-convert %(tool)s tidak ditemukan" -#: cps/tasks/convert.py:201 +#: cps/tasks/convert.py:204 #, python-format msgid "%(format)s format not found on disk" msgstr "%(format)s format tidak ditemukan dalam disk" -#: cps/tasks/convert.py:205 +#: cps/tasks/convert.py:208 msgid "Ebook converter failed with unknown error" msgstr "Konverter ebook gagal dengan kesalahan yang tidak diketahui." -#: cps/tasks/convert.py:224 +#: cps/tasks/convert.py:227 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "Kebupify-converter gagal: %(error)s" -#: cps/tasks/convert.py:245 +#: cps/tasks/convert.py:248 #, python-format msgid "Converted file not found or more than one file in folder %(folder)s" msgstr "Berkas yang telah dikonversi tidak ditemukan atau terdapat duplikat dalam folder %(folder)s" -#: cps/tasks/convert.py:287 +#: cps/tasks/convert.py:291 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "Ebook-converter gagal: %(error)s" -#: cps/tasks/convert.py:310 +#: cps/tasks/convert.py:314 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "Calibre gagal dengan kesalahan: %(error)s" -#: cps/tasks/convert.py:315 +#: cps/tasks/convert.py:319 msgid "Convert" msgstr "Konversi" @@ -1539,7 +1540,7 @@ msgstr "Menghubungkan kembali basis data Calibre" msgid "E-mail" msgstr "Email" -#: cps/tasks/metadata_backup.py:33 +#: cps/tasks/metadata_backup.py:34 #, fuzzy msgid "Backing up Metadata" msgstr "Mencadangkan Metadata" @@ -1553,20 +1554,20 @@ msgstr "" msgid "Generated %(count)s cover thumbnails" msgstr "%(count)s thumbnail sampul dibuat" -#: cps/tasks/thumbnail.py:230 cps/tasks/thumbnail.py:443 -#: cps/tasks/thumbnail.py:511 +#: cps/tasks/thumbnail.py:231 cps/tasks/thumbnail.py:444 +#: cps/tasks/thumbnail.py:512 msgid "Cover Thumbnails" msgstr "Thumbnail Sampul" -#: cps/tasks/thumbnail.py:289 +#: cps/tasks/thumbnail.py:290 msgid "Generated {0} series thumbnails" msgstr "{0} thumbnail seri dihasilkan" -#: cps/tasks/thumbnail.py:454 +#: cps/tasks/thumbnail.py:455 msgid "Clearing cover thumbnail cache" msgstr "Menghapus cache thumbnail sampul" -#: cps/tasks/upload.py:38 cps/templates/admin.html:20 +#: cps/tasks/upload.py:39 cps/templates/admin.html:20 #: cps/templates/layout.html:81 cps/templates/user_table.html:145 msgid "Upload" msgstr "Unggah" @@ -1813,7 +1814,7 @@ msgstr "OK" #: cps/templates/admin.html:259 cps/templates/admin.html:273 #: cps/templates/book_edit.html:214 cps/templates/book_table.html:127 -#: cps/templates/config_db.html:66 cps/templates/config_edit.html:423 +#: cps/templates/config_db.html:66 cps/templates/config_edit.html:427 #: cps/templates/config_view_edit.html:175 cps/templates/detail.html:342 #: cps/templates/modal_dialogs.html:64 cps/templates/modal_dialogs.html:99 #: cps/templates/modal_dialogs.html:117 cps/templates/modal_dialogs.html:135 @@ -1999,7 +2000,7 @@ msgid "Fetch Metadata" msgstr "Ambil Metadata" #: cps/templates/book_edit.html:213 cps/templates/config_db.html:65 -#: cps/templates/config_edit.html:422 cps/templates/config_view_edit.html:174 +#: cps/templates/config_edit.html:426 cps/templates/config_view_edit.html:174 #: cps/templates/email_edit.html:65 cps/templates/schedule_edit.html:44 #: cps/templates/shelf_edit.html:25 cps/templates/shelf_order.html:41 #: cps/templates/user_edit.html:142 @@ -2470,47 +2471,51 @@ msgid "Configure Backend for Limiter" msgstr "" #: cps/templates/config_edit.html:376 -msgid "Options for Limiter" +msgid "Options for Limiter Backend" msgstr "" -#: cps/templates/config_edit.html:381 +#: cps/templates/config_edit.html:382 +msgid "Check if file extensions matches file content on upload" +msgstr "" + +#: cps/templates/config_edit.html:385 msgid "Session protection" msgstr "" -#: cps/templates/config_edit.html:383 +#: cps/templates/config_edit.html:387 msgid "Basic" msgstr "" -#: cps/templates/config_edit.html:384 +#: cps/templates/config_edit.html:388 msgid "Strong" msgstr "" -#: cps/templates/config_edit.html:389 +#: cps/templates/config_edit.html:393 #, fuzzy msgid "User Password policy" msgstr "Atur ulang kata sandi pengguna" -#: cps/templates/config_edit.html:393 +#: cps/templates/config_edit.html:397 msgid "Minimum password length" msgstr "" -#: cps/templates/config_edit.html:398 +#: cps/templates/config_edit.html:402 msgid "Enforce number" msgstr "" -#: cps/templates/config_edit.html:402 +#: cps/templates/config_edit.html:406 msgid "Enforce lowercase characters" msgstr "" -#: cps/templates/config_edit.html:406 +#: cps/templates/config_edit.html:410 msgid "Enforce uppercase characters" msgstr "" -#: cps/templates/config_edit.html:410 +#: cps/templates/config_edit.html:414 msgid "Enforce characters (needed For Chinese/Japanese/Korean Characters)" msgstr "" -#: cps/templates/config_edit.html:414 +#: cps/templates/config_edit.html:418 msgid "Enforce special characters" msgstr "" @@ -2640,6 +2645,11 @@ msgstr "Tandai sebagai Belum dibaca" msgid "Mark As Read" msgstr "Tandai sebagai dibaca" +#: cps/templates/detail.html:254 +#, fuzzy +msgid "Mark Book as Read or Unread" +msgstr "Tandai sebagai Belum dibaca" + #: cps/templates/detail.html:254 cps/templates/listenmp3.html:159 msgid "Read" msgstr "Baca" @@ -2652,8 +2662,13 @@ msgstr "Pulihkan dari arsip" msgid "Add to archive" msgstr "Tambahkan ke Arsip" -#: cps/templates/detail.html:267 cps/templates/listenmp3.html:167 -msgid "Archived" +#: cps/templates/detail.html:267 +msgid "Mark Book as archived or not, to hide it in Calibre-Web and delete it from Kobo Reader" +msgstr "" + +#: cps/templates/detail.html:267 +#, fuzzy +msgid "Archive" msgstr "Diarsipkan" #: cps/templates/detail.html:278 cps/templates/listenmp3.html:177 @@ -2933,6 +2948,10 @@ msgstr "Detail Buku" msgid "Grid" msgstr "Terjadi Kesalahan" +#: cps/templates/listenmp3.html:167 +msgid "Archived" +msgstr "Diarsipkan" + #: cps/templates/login.html:18 msgid "Remember Me" msgstr "Ingat saya" diff --git a/cps/translations/it/LC_MESSAGES/messages.mo b/cps/translations/it/LC_MESSAGES/messages.mo index 1be75cc2..8bc7304e 100644 Binary files a/cps/translations/it/LC_MESSAGES/messages.mo and b/cps/translations/it/LC_MESSAGES/messages.mo differ diff --git a/cps/translations/it/LC_MESSAGES/messages.po b/cps/translations/it/LC_MESSAGES/messages.po index d262b851..fb07f532 100644 --- a/cps/translations/it/LC_MESSAGES/messages.po +++ b/cps/translations/it/LC_MESSAGES/messages.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Calibre-Web\n" "Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n" -"POT-Creation-Date: 2024-06-09 12:26+0200\n" +"POT-Creation-Date: 2024-06-30 12:19+0200\n" "PO-Revision-Date: 2024-06-01 05:51+0200\n" "Last-Translator: Massimo Pissarello \n" "Language: it\n" @@ -16,7 +16,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.11.0\n" +"Generated-By: Babel 2.13.1\n" #: cps/about.py:84 msgid "Statistics" @@ -42,9 +42,9 @@ msgstr "Comando sconosciuto" msgid "Success! Books queued for Metadata Backup, please check Tasks for result" msgstr "Tutto OK! Libri in coda per il backup dei metadati, controlla le attività per il risultato" -#: cps/admin.py:207 cps/editbooks.py:591 cps/editbooks.py:593 -#: cps/editbooks.py:631 cps/editbooks.py:648 cps/editbooks.py:1280 -#: cps/updater.py:613 cps/uploader.py:93 cps/uploader.py:102 +#: cps/admin.py:207 cps/editbooks.py:573 cps/editbooks.py:575 +#: cps/editbooks.py:615 cps/editbooks.py:658 cps/editbooks.py:1280 +#: cps/updater.py:615 cps/uploader.py:93 cps/uploader.py:102 msgid "Unknown" msgstr "Sconosciuto" @@ -64,12 +64,12 @@ msgstr "Configurazione dell'interfaccia utente" msgid "Edit Users" msgstr "Modifica utenti" -#: cps/admin.py:368 cps/opds.py:541 cps/templates/grid.html:14 +#: cps/admin.py:368 cps/opds.py:542 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "Tutti" -#: cps/admin.py:395 cps/admin.py:1417 +#: cps/admin.py:395 cps/admin.py:1414 msgid "User not found" msgstr "Utente non trovato" @@ -86,7 +86,7 @@ msgstr "Mostra tutto" msgid "Malformed request" msgstr "Richiesta non valida" -#: cps/admin.py:471 cps/admin.py:2048 +#: cps/admin.py:471 cps/admin.py:2046 msgid "Guest Name can't be changed" msgstr "Il nome dell'utente Guest (ospite) non può essere modificato" @@ -94,7 +94,7 @@ msgstr "Il nome dell'utente Guest (ospite) non può essere modificato" msgid "Guest can't have this role" msgstr "L'utente Guest (ospite) non può avere questo ruolo" -#: cps/admin.py:495 cps/admin.py:2002 +#: cps/admin.py:495 cps/admin.py:2000 msgid "No admin user remaining, can't remove admin role" msgstr "Non rimarrebbe nessun utente amministratore, non è possibile rimuovere il ruolo di amministratore" @@ -126,7 +126,7 @@ msgstr "Nessuna lingua valida specificata" msgid "No Valid Book Language Given" msgstr "Nessun libro valido per la lingua specificata" -#: cps/admin.py:535 cps/editbooks.py:457 +#: cps/admin.py:535 cps/editbooks.py:440 msgid "Parameter not found" msgstr "Parametro non trovato" @@ -138,7 +138,7 @@ msgstr "Colonna di lettura non valida" msgid "Invalid Restricted Column" msgstr "Colonna con restrizioni non valida" -#: cps/admin.py:598 cps/admin.py:1873 +#: cps/admin.py:598 cps/admin.py:1871 msgid "Calibre-Web configuration updated" msgstr "La configurazione di Calibre-Web è stata aggiornata" @@ -218,291 +218,291 @@ msgstr "Etichetta non trovata" msgid "Invalid Action" msgstr "Azione non valida" -#: cps/admin.py:1123 +#: cps/admin.py:1120 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "client_secrets.json non è configurato per Web Application" -#: cps/admin.py:1168 +#: cps/admin.py:1165 msgid "Logfile Location is not Valid, Please Enter Correct Path" msgstr "La posizione del file di log non è valida, per favore indica il percorso corretto" -#: cps/admin.py:1174 +#: cps/admin.py:1171 msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgstr "La posizione del file del log di accesso non è valida, indica il percorso corretto" -#: cps/admin.py:1208 +#: cps/admin.py:1205 msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgstr "Inserisci un provider LDAP, una porta, un DN e un identificatore oggetto utente" -#: cps/admin.py:1214 +#: cps/admin.py:1211 msgid "Please Enter a LDAP Service Account and Password" msgstr "Inserisci un account e una password del servizio LDAP" -#: cps/admin.py:1217 +#: cps/admin.py:1214 msgid "Please Enter a LDAP Service Account" msgstr "Inserisci un account di servizio LDAP" -#: cps/admin.py:1222 +#: cps/admin.py:1219 #, python-format msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgstr "Il filtro oggetto gruppo LDAP deve avere un identificatore di formato \"%s\"" -#: cps/admin.py:1224 +#: cps/admin.py:1221 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "Il filtro oggetto gruppo LDAP ha parentesi senza corrispondenza" -#: cps/admin.py:1228 +#: cps/admin.py:1225 #, python-format msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgstr "Il filtro oggetto utente LDAP deve avere un identificatore di formato \"%s\"" -#: cps/admin.py:1230 +#: cps/admin.py:1227 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "Il filtro oggetto utente LDAP ha parentesi senza corrispondenza" -#: cps/admin.py:1237 +#: cps/admin.py:1234 #, python-format msgid "LDAP Member User Filter needs to Have One \"%s\" Format Identifier" msgstr "Il filtro utente membro LDAP deve avere un identificatore di formato \"%s\"" -#: cps/admin.py:1239 +#: cps/admin.py:1236 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "Il filtro utente membro LDAP ha parentesi senza corrispondenza" -#: cps/admin.py:1246 +#: cps/admin.py:1243 msgid "LDAP CACertificate, Certificate or Key Location is not Valid, Please Enter Correct Path" msgstr "Il certificato CA LDAP, il certificato o la posizione della chiave non sono validi. Inserisci il percorso corretto" -#: cps/admin.py:1277 cps/templates/admin.html:53 +#: cps/admin.py:1274 cps/templates/admin.html:53 msgid "Add New User" msgstr "Aggiungi nuovo utente" -#: cps/admin.py:1286 cps/templates/admin.html:100 +#: cps/admin.py:1283 cps/templates/admin.html:100 msgid "Edit Email Server Settings" msgstr "Modifica le impostazioni del server e-mail" -#: cps/admin.py:1305 +#: cps/admin.py:1302 msgid "Success! Gmail Account Verified." msgstr "Tutto OK! Account Gmail verificato." -#: cps/admin.py:1325 cps/admin.py:1328 cps/admin.py:1713 cps/admin.py:1857 -#: cps/admin.py:1955 cps/admin.py:2076 cps/editbooks.py:243 -#: cps/editbooks.py:319 cps/editbooks.py:1242 cps/shelf.py:90 cps/shelf.py:150 +#: cps/admin.py:1322 cps/admin.py:1325 cps/admin.py:1710 cps/admin.py:1855 +#: cps/admin.py:1953 cps/admin.py:2074 cps/editbooks.py:226 +#: cps/editbooks.py:303 cps/editbooks.py:1242 cps/shelf.py:90 cps/shelf.py:150 #: cps/shelf.py:193 cps/shelf.py:243 cps/shelf.py:280 cps/shelf.py:354 -#: cps/shelf.py:468 cps/tasks/convert.py:150 cps/web.py:1520 +#: cps/shelf.py:468 cps/tasks/convert.py:153 cps/web.py:1520 #, python-format msgid "Oops! Database Error: %(error)s." msgstr "Errore nel database: %(error)s." -#: cps/admin.py:1335 +#: cps/admin.py:1332 #, python-format msgid "Test e-mail queued for sending to %(email)s, please check Tasks for result" msgstr "L'e-mail di prova è stato accodata correttamente per essere spedita a %(email)s, controlla il risultato in Attività" -#: cps/admin.py:1338 +#: cps/admin.py:1335 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "Si è verificato un errore nell'invio dell'e-mail di prova: %(res)s" -#: cps/admin.py:1340 +#: cps/admin.py:1337 msgid "Please configure your e-mail address first..." msgstr "Configura prima il tuo indirizzo e-mail..." -#: cps/admin.py:1342 +#: cps/admin.py:1339 msgid "Email Server Settings updated" msgstr "Le impostazioni del server e-mail sono state aggiornate" -#: cps/admin.py:1365 cps/templates/admin.html:195 +#: cps/admin.py:1362 cps/templates/admin.html:195 msgid "Edit Scheduled Tasks Settings" msgstr "Modifica le impostazioni delle attività pianificate" -#: cps/admin.py:1377 +#: cps/admin.py:1374 msgid "Invalid start time for task specified" msgstr "Ora di inizio non valida per l'attività specificata" -#: cps/admin.py:1382 +#: cps/admin.py:1379 msgid "Invalid duration for task specified" msgstr "Durata non valida per l'attività specificata" -#: cps/admin.py:1392 +#: cps/admin.py:1389 msgid "Scheduled tasks settings updated" msgstr "Impostazioni delle attività pianificate aggiornate" -#: cps/admin.py:1402 cps/admin.py:1451 cps/admin.py:2072 cps/web.py:1316 +#: cps/admin.py:1399 cps/admin.py:1448 cps/admin.py:2070 cps/web.py:1316 msgid "Oops! An unknown error occurred. Please try again later." msgstr "Si è verificato un errore sconosciuto. Per favore riprova più tardi." -#: cps/admin.py:1406 +#: cps/admin.py:1403 msgid "Settings DB is not Writeable" msgstr "Il DB delle impostazioni non è scrivibile" -#: cps/admin.py:1436 cps/admin.py:2064 +#: cps/admin.py:1433 cps/admin.py:2062 #, python-format msgid "Edit User %(nick)s" msgstr "Modifica utente %(nick)s" -#: cps/admin.py:1448 +#: cps/admin.py:1445 #, python-format msgid "Success! Password for user %(user)s reset" msgstr "Tutto OK! Password reimpostata per l'utente %(user)s" -#: cps/admin.py:1454 +#: cps/admin.py:1451 msgid "Oops! Please configure the SMTP mail settings." msgstr "Per favore configura le impostazioni della posta SMTP." -#: cps/admin.py:1465 +#: cps/admin.py:1462 msgid "Logfile viewer" msgstr "Visualizzatore del file di log" -#: cps/admin.py:1531 +#: cps/admin.py:1528 msgid "Requesting update package" msgstr "Richiesta del pacchetto di aggiornamento" -#: cps/admin.py:1532 +#: cps/admin.py:1529 msgid "Downloading update package" msgstr "Download del pacchetto di aggiornamento" -#: cps/admin.py:1533 +#: cps/admin.py:1530 msgid "Unzipping update package" msgstr "Decompressione del pacchetto di aggiornamento" -#: cps/admin.py:1534 +#: cps/admin.py:1531 msgid "Replacing files" msgstr "Sostituzione dei file" -#: cps/admin.py:1535 +#: cps/admin.py:1532 msgid "Database connections are closed" msgstr "Le connessioni al database sono chiuse" -#: cps/admin.py:1536 +#: cps/admin.py:1533 msgid "Stopping server" msgstr "Arresto del server" -#: cps/admin.py:1537 +#: cps/admin.py:1534 msgid "Update finished, please press okay and reload page" msgstr "Aggiornamento terminato, premi OK e ricarica la pagina" -#: cps/admin.py:1538 cps/admin.py:1539 cps/admin.py:1540 cps/admin.py:1541 -#: cps/admin.py:1542 cps/admin.py:1543 +#: cps/admin.py:1535 cps/admin.py:1536 cps/admin.py:1537 cps/admin.py:1538 +#: cps/admin.py:1539 cps/admin.py:1540 msgid "Update failed:" msgstr "Aggiornamento non riuscito:" -#: cps/admin.py:1538 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 +#: cps/admin.py:1535 cps/updater.py:391 cps/updater.py:626 cps/updater.py:628 msgid "HTTP Error" msgstr "Errore HTTP" -#: cps/admin.py:1539 cps/updater.py:391 cps/updater.py:628 +#: cps/admin.py:1536 cps/updater.py:393 cps/updater.py:630 msgid "Connection error" msgstr "Errore di connessione" -#: cps/admin.py:1540 cps/updater.py:393 cps/updater.py:630 +#: cps/admin.py:1537 cps/updater.py:395 cps/updater.py:632 msgid "Timeout while establishing connection" msgstr "Tempo scaduto nello stabilire la connessione" -#: cps/admin.py:1541 cps/updater.py:395 cps/updater.py:632 +#: cps/admin.py:1538 cps/updater.py:397 cps/updater.py:634 msgid "General error" msgstr "Errore generale" -#: cps/admin.py:1542 +#: cps/admin.py:1539 msgid "Update file could not be saved in temp dir" msgstr "Il file di aggiornamento non può essere salvato nella cartella temporanea" -#: cps/admin.py:1543 +#: cps/admin.py:1540 msgid "Files could not be replaced during update" msgstr "Impossibile sostituire i file durante l'aggiornamento" -#: cps/admin.py:1567 +#: cps/admin.py:1564 msgid "Failed to extract at least One LDAP User" msgstr "Impossibile estrarre almeno un utente LDAP" -#: cps/admin.py:1612 +#: cps/admin.py:1609 msgid "Failed to Create at Least One LDAP User" msgstr "Impossibile creare almeno un utente LDAP" -#: cps/admin.py:1625 +#: cps/admin.py:1622 #, python-format msgid "Error: %(ldaperror)s" msgstr "Errore: %(ldaperror)s" -#: cps/admin.py:1629 +#: cps/admin.py:1626 msgid "Error: No user returned in response of LDAP server" msgstr "Errore: nessun utente restituito in risposta dal server LDAP" -#: cps/admin.py:1665 +#: cps/admin.py:1662 msgid "At Least One LDAP User Not Found in Database" msgstr "Almeno un utente LDAP non è stato trovato nel database" -#: cps/admin.py:1667 +#: cps/admin.py:1664 msgid "{} User Successfully Imported" msgstr "{} utente importato correttamente" -#: cps/admin.py:1725 +#: cps/admin.py:1722 msgid "DB Location is not Valid, Please Enter Correct Path" msgstr "La posizione del DB non è valida, per favore indica il percorso corretto" -#: cps/admin.py:1745 +#: cps/admin.py:1742 msgid "DB is not Writeable" msgstr "Il DB non è scrivibile" -#: cps/admin.py:1761 +#: cps/admin.py:1758 msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgstr "La posizione del Keyfile non è valida. Inserisci il percorso corretto" -#: cps/admin.py:1765 +#: cps/admin.py:1762 msgid "Certfile Location is not Valid, Please Enter Correct Path" msgstr "La posizione del Certfile non è valida, indica il percorso corretto" -#: cps/admin.py:1842 +#: cps/admin.py:1840 msgid "Password length has to be between 1 and 40" msgstr "La lunghezza della password deve essere compresa tra 1 e 40" -#: cps/admin.py:1896 +#: cps/admin.py:1894 msgid "Database Settings updated" msgstr "Impostazioni del database aggiornate" -#: cps/admin.py:1904 +#: cps/admin.py:1902 msgid "Database Configuration" msgstr "Configurazione del database" -#: cps/admin.py:1919 cps/web.py:1290 +#: cps/admin.py:1917 cps/web.py:1290 msgid "Oops! Please complete all fields." msgstr "Per favore completa tutti i campi." -#: cps/admin.py:1928 +#: cps/admin.py:1926 msgid "E-mail is not from valid domain" msgstr "L'e-mail non proviene da un dominio valido" -#: cps/admin.py:1934 +#: cps/admin.py:1932 msgid "Add new user" msgstr "Aggiungi nuovo utente" -#: cps/admin.py:1945 +#: cps/admin.py:1943 #, python-format msgid "User '%(user)s' created" msgstr "L'utente '%(user)s' è stato creato" -#: cps/admin.py:1951 +#: cps/admin.py:1949 msgid "Oops! An account already exists for this Email. or name." msgstr "Esiste già un account per questa e-mail o nome." -#: cps/admin.py:1981 +#: cps/admin.py:1979 #, python-format msgid "User '%(nick)s' deleted" msgstr "L'utente '%(nick)s' è stato eliminato" -#: cps/admin.py:1984 +#: cps/admin.py:1982 msgid "Can't delete Guest User" msgstr "Impossibile eliminare l'utente Guest (ospite)" -#: cps/admin.py:1987 +#: cps/admin.py:1985 msgid "No admin user remaining, can't delete user" msgstr "Non rimarrebbe nessun utente amministratore, non è possibile eliminare l'utente" -#: cps/admin.py:2042 cps/web.py:1469 +#: cps/admin.py:2040 cps/web.py:1469 msgid "Email can't be empty and has to be a valid Email" msgstr "L'e-mail non può essere vuota e deve essere un'e-mail valida" -#: cps/admin.py:2068 +#: cps/admin.py:2066 #, python-format msgid "User '%(nick)s' updated" msgstr "L'utente '%(nick)s' è stato aggiornato" @@ -515,12 +515,12 @@ msgstr "non installato" msgid "Execution permissions missing" msgstr "Mancano i permessi di esecuzione" -#: cps/db.py:756 cps/search.py:137 cps/web.py:747 +#: cps/db.py:768 cps/search.py:137 cps/web.py:747 #, python-format msgid "Custom Column No.%(column)d does not exist in calibre database" msgstr "La colonna personalizzata no.%(column)d non esiste nel database di Calibre" -#: cps/db.py:996 cps/templates/config_edit.html:203 +#: cps/db.py:1008 cps/templates/config_edit.html:203 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 #: cps/web.py:562 cps/web.py:596 cps/web.py:641 cps/web.py:681 cps/web.py:708 #: cps/web.py:989 cps/web.py:1019 cps/web.py:1064 cps/web.py:1092 @@ -528,100 +528,105 @@ msgstr "La colonna personalizzata no.%(column)d non esiste nel database di Calib msgid "None" msgstr "Nessuna" -#: cps/editbooks.py:124 cps/editbooks.py:912 cps/web.py:529 cps/web.py:1561 -#: cps/web.py:1605 cps/web.py:1650 +#: cps/editbooks.py:108 cps/editbooks.py:929 cps/web.py:529 cps/web.py:1561 +#: cps/web.py:1606 cps/web.py:1651 msgid "Oops! Selected book is unavailable. File does not exist or is not accessible" msgstr "Il libro selezionato non è disponibile. Il file non esiste o non è accessibile" -#: cps/editbooks.py:168 cps/editbooks.py:1263 +#: cps/editbooks.py:151 cps/editbooks.py:1263 msgid "User has no rights to upload cover" msgstr "L'utente non ha i permessi per caricare le copertine" -#: cps/editbooks.py:188 cps/editbooks.py:733 +#: cps/editbooks.py:171 cps/editbooks.py:744 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "Gli identificatori non fanno distinzione tra maiuscole e minuscole e sovrascrivono il vecchio identificatore" -#: cps/editbooks.py:230 +#: cps/editbooks.py:213 msgid "Metadata successfully updated" msgstr "Metadati aggiornati correttamente" -#: cps/editbooks.py:248 +#: cps/editbooks.py:231 msgid "Error editing book: {}" msgstr "Errore nella modifica del libro: {}" -#: cps/editbooks.py:305 +#: cps/editbooks.py:289 #, python-format msgid "File %(file)s uploaded" msgstr "Il file %(file)s è stato caricato" -#: cps/editbooks.py:333 +#: cps/editbooks.py:317 msgid "Source or destination format for conversion missing" msgstr "Manca il formato di origine o di destinazione per la conversione" -#: cps/editbooks.py:341 +#: cps/editbooks.py:325 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "Libro accodato correttamente per essere convertito in %(book_format)s" -#: cps/editbooks.py:345 +#: cps/editbooks.py:329 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "Si è verificato un errore durante la conversione del libro: %(res)s" -#: cps/editbooks.py:652 +#: cps/editbooks.py:662 msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgstr "Probabilmente il libro caricato esiste già nella biblioteca, cambialo prima di caricarlo di nuovo:" -#: cps/editbooks.py:707 cps/editbooks.py:1043 +#: cps/editbooks.py:718 cps/editbooks.py:1049 #, python-format msgid "'%(langname)s' is not a valid language" msgstr "%(langname)s non è una lingua valida" -#: cps/editbooks.py:745 cps/editbooks.py:1203 +#: cps/editbooks.py:756 cps/editbooks.py:1192 +#, fuzzy +msgid "File type isn't allowed to be uploaded to this server" +msgstr "Non è consentito caricare l'estensione del file '%(ext)s' su questo server" + +#: cps/editbooks.py:762 cps/editbooks.py:1202 #, python-format msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgstr "Non è consentito caricare l'estensione del file '%(ext)s' su questo server" -#: cps/editbooks.py:749 cps/editbooks.py:1207 +#: cps/editbooks.py:766 cps/editbooks.py:1206 msgid "File to be uploaded must have an extension" msgstr "Il file da caricare deve avere un'estensione" -#: cps/editbooks.py:757 +#: cps/editbooks.py:774 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "Il file %(filename)s non può essere salvato nella cartella temporanea" -#: cps/editbooks.py:777 +#: cps/editbooks.py:794 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "Impossibile spostare il file della copertina %(file)s: %(error)s" -#: cps/editbooks.py:834 cps/editbooks.py:836 +#: cps/editbooks.py:851 cps/editbooks.py:853 msgid "Book Format Successfully Deleted" msgstr "Il formato del libro è stato eliminato correttamente" -#: cps/editbooks.py:843 cps/editbooks.py:845 +#: cps/editbooks.py:860 cps/editbooks.py:862 msgid "Book Successfully Deleted" msgstr "Il libro è stato eliminato correttamente" -#: cps/editbooks.py:897 +#: cps/editbooks.py:914 msgid "You are missing permissions to delete books" msgstr "Ti mancano le autorizzazioni per eliminare i libri" -#: cps/editbooks.py:947 +#: cps/editbooks.py:964 msgid "edit metadata" msgstr "modifica i metadati" -#: cps/editbooks.py:996 +#: cps/editbooks.py:1013 #, python-format msgid "%(seriesindex)s is not a valid number, skipping" msgstr "%(seriesindex)s non è un numero valido, lo salto" -#: cps/editbooks.py:1198 +#: cps/editbooks.py:1197 msgid "User has no rights to upload additional file formats" msgstr "L'utente non ha i permessi per caricare formati di file aggiuntivi" -#: cps/editbooks.py:1219 +#: cps/editbooks.py:1218 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "Impossibile creare il percorso %(path)s (autorizzazione negata)." @@ -640,7 +645,7 @@ msgstr "Formato file %(ext)s aggiunto a %(book)s" msgid "Google Drive setup not completed, try to deactivate and activate Google Drive again" msgstr "Configurazione di Google Drive non completata, prova a disattivare e attivare nuovamente Google Drive" -#: cps/gdrive.py:95 +#: cps/gdrive.py:96 msgid "Callback domain is not verified, please follow steps to verify domain in google developer console" msgstr "Il dominio di callback non è stato verificato, segui i passaggi per verificare il dominio nella console per sviluppatori di Google" @@ -649,7 +654,7 @@ msgstr "Il dominio di callback non è stato verificato, segui i passaggi per ver msgid "%(format)s format not found for book id: %(book)d" msgstr "Formato %(format)s non trovato per l'ID libro: %(book)d" -#: cps/helper.py:93 cps/tasks/convert.py:86 +#: cps/helper.py:93 cps/tasks/convert.py:89 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "%(format)s non trovato su Google Drive: %(fn)s" @@ -722,122 +727,118 @@ msgstr "Eliminazione del libro %(id)s non riuscita: %(message)s" msgid "Deleting book %(id)s from database only, book path in database not valid: %(path)s" msgstr "Eliminazione del libro %(id)s solo dal database, percorso del libro nel database non valido: %(path)s" -#: cps/helper.py:452 +#: cps/helper.py:465 #, python-format 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" -#: cps/helper.py:524 cps/helper.py:533 +#: cps/helper.py:536 cps/helper.py:545 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "Il file %(file) non è stato trovato su Google Drive" -#: cps/helper.py:567 +#: cps/helper.py:587 #, python-format 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" -#: cps/helper.py:587 -msgid "Error in rename file in path: {}" -msgstr "Errore nel rinominare il file nel percorso: {}" - -#: cps/helper.py:605 +#: cps/helper.py:625 #, python-format msgid "Book path %(path)s not found on Google Drive" msgstr "Il percorso del libro %(path)s non è stato trovato su Google Drive" -#: cps/helper.py:670 +#: cps/helper.py:685 msgid "Found an existing account for this Email address" msgstr "Trovato un account esistente per questo indirizzo e-mail" -#: cps/helper.py:678 +#: cps/helper.py:693 msgid "This username is already taken" msgstr "Questo nome utente è già utilizzato" -#: cps/helper.py:690 +#: cps/helper.py:705 msgid "Invalid Email address format" msgstr "Formato dell'indirizzo e-mail non valido" -#: cps/helper.py:710 +#: cps/helper.py:726 msgid "Password doesn't comply with password validation rules" msgstr "La password non è conforme alle regole di convalida della password" -#: cps/helper.py:859 +#: cps/helper.py:873 msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "Il modulo Python \"advocate\" non è installato ma è necessario per il caricamento delle copertine" -#: cps/helper.py:869 +#: cps/helper.py:883 msgid "Error Downloading Cover" msgstr "Errore nello scaricare la copertina" -#: cps/helper.py:872 +#: cps/helper.py:886 msgid "Cover Format Error" msgstr "Errore nel formato della copertina" -#: cps/helper.py:875 +#: cps/helper.py:889 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "Non ti è consentito accedere all'host locale o alla rete locale per caricare le copertine" -#: cps/helper.py:885 +#: cps/helper.py:899 msgid "Failed to create path for cover" msgstr "Impossibile creare il percorso per la copertina" -#: cps/helper.py:901 +#: cps/helper.py:915 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "Il file della copertina non è in un formato di immagine valido o non può essere salvato" -#: cps/helper.py:912 +#: cps/helper.py:926 msgid "Only jpg/jpeg/png/webp/bmp files are supported as coverfile" msgstr "Solo i file jpg/jpeg/png/webp/bmp sono supportati come file di copertina" -#: cps/helper.py:924 +#: cps/helper.py:938 msgid "Invalid cover file content" msgstr "Contenuto del file di copertina non valido" -#: cps/helper.py:928 +#: cps/helper.py:942 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "Solo i file jpg/jpeg sono supportati come file di copertina" -#: cps/helper.py:999 cps/helper.py:1156 +#: cps/helper.py:1014 cps/helper.py:1171 msgid "Cover" msgstr "Copertina" -#: cps/helper.py:1016 +#: cps/helper.py:1031 msgid "UnRar binary file not found" msgstr "File binario UnRar non trovato" -#: cps/helper.py:1027 +#: cps/helper.py:1042 msgid "Error executing UnRar" msgstr "Errore nell'eseguire UnRar" -#: cps/helper.py:1035 +#: cps/helper.py:1050 msgid "Could not find the specified directory" msgstr "Impossibile trovare la cartella specificata" -#: cps/helper.py:1038 +#: cps/helper.py:1053 msgid "Please specify a directory, not a file" msgstr "Specifica una cartella, non un file" -#: cps/helper.py:1052 +#: cps/helper.py:1067 msgid "Calibre binaries not viable" msgstr "Eseguibili di Calibre non validi" -#: cps/helper.py:1061 +#: cps/helper.py:1076 #, python-format msgid "Missing calibre binaries: %(missing)s" msgstr "File eseguibili di Calibre mancanti: %(missing)s" -#: cps/helper.py:1063 +#: cps/helper.py:1078 #, python-format msgid "Missing executable permissions: %(missing)s" msgstr "Permessi di esecuzione mancanti: %(missing)s" -#: cps/helper.py:1068 +#: cps/helper.py:1083 #, fuzzy msgid "Error executing Calibre" msgstr "Errore nell'esecuzione di Calibre" -#: cps/helper.py:1158 cps/templates/admin.html:216 +#: cps/helper.py:1173 cps/templates/admin.html:216 msgid "Queue all books for metadata backup" msgstr "Metti in coda tutti i libri per il backup dei metadati" @@ -883,35 +884,35 @@ msgstr "Scollegamento da %(oauth)s non riuscito" msgid "Not Linked to %(oauth)s" msgstr "Non collegato a %(oauth)s" -#: cps/oauth_bb.py:261 +#: cps/oauth_bb.py:262 msgid "Failed to log in with GitHub." msgstr "Impossibile accedere con GitHub." -#: cps/oauth_bb.py:267 +#: cps/oauth_bb.py:268 msgid "Failed to fetch user info from GitHub." msgstr "Impossibile recuperare le informazioni dell'utente da GitHub." -#: cps/oauth_bb.py:279 +#: cps/oauth_bb.py:280 msgid "Failed to log in with Google." msgstr "Impossibile accedere con Google." -#: cps/oauth_bb.py:285 +#: cps/oauth_bb.py:286 msgid "Failed to fetch user info from Google." msgstr "Impossibile recuperare le informazioni dell'utente da Google." -#: cps/oauth_bb.py:332 +#: cps/oauth_bb.py:334 msgid "GitHub Oauth error, please retry later." msgstr "Errore GitHub Oauth, riprova più tardi." -#: cps/oauth_bb.py:335 +#: cps/oauth_bb.py:337 msgid "GitHub Oauth error: {}" msgstr "Errore GitHub Oauth: {}" -#: cps/oauth_bb.py:356 +#: cps/oauth_bb.py:358 msgid "Google Oauth error, please retry later." msgstr "Errore OAuth di Google, riprova più tardi." -#: cps/oauth_bb.py:359 +#: cps/oauth_bb.py:361 msgid "Google Oauth error: {}" msgstr "Errore OAuth di Google: {}" @@ -1260,32 +1261,32 @@ msgstr "Annullato" msgid "Unknown Status" msgstr "Stato sconosciuto" -#: cps/updater.py:431 cps/updater.py:442 cps/updater.py:543 cps/updater.py:558 +#: cps/updater.py:433 cps/updater.py:444 cps/updater.py:545 cps/updater.py:560 msgid "Unexpected data while reading update information" msgstr "Dati imprevisti durante la lettura delle informazioni di aggiornamento" -#: cps/updater.py:438 cps/updater.py:550 +#: cps/updater.py:440 cps/updater.py:552 msgid "No update available. You already have the latest version installed" msgstr "Nessun aggiornamento disponibile. Hai già l'ultima versione installata" -#: cps/updater.py:456 +#: cps/updater.py:458 msgid "A new update is available. Click on the button below to update to the latest version." msgstr "È disponibile un nuovo aggiornamento. Fai clic sul pulsante in basso per aggiornare all'ultima versione" -#: cps/updater.py:474 +#: cps/updater.py:476 msgid "Could not fetch update information" msgstr "Impossibile recuperare le informazioni sull'aggiornamento" -#: cps/updater.py:484 +#: cps/updater.py:486 msgid "Click on the button below to update to the latest stable version." msgstr "Fai clic sul pulsante in basso per eseguire l'aggiornamento all'ultima versione stabile." -#: cps/updater.py:493 cps/updater.py:507 cps/updater.py:518 +#: cps/updater.py:495 cps/updater.py:509 cps/updater.py:520 #, python-format msgid "A new update is available. Click on the button below to update to version: %(version)s" msgstr "È disponibile un nuovo aggiornamento. Fai clic sul pulsante in basso per aggiornare alla versione:%(version)s" -#: cps/updater.py:536 +#: cps/updater.py:538 msgid "No release information available" msgstr "Nessuna informazione disponibile sulla versione" @@ -1455,50 +1456,50 @@ msgstr "Tutto OK! Profilo aggiornato" msgid "Oops! An account already exists for this Email." msgstr "Esiste già un account per questa e-mail." -#: cps/services/gmail.py:58 +#: cps/services/gmail.py:59 msgid "Found no valid gmail.json file with OAuth information" msgstr "Nessun file gmail.json valido con informazioni OAuth trovato" -#: cps/tasks/convert.py:105 +#: cps/tasks/convert.py:108 #, python-format msgid "%(book)s send to E-Reader" msgstr "%(book)s inviato all'E-Reader" -#: cps/tasks/convert.py:167 +#: cps/tasks/convert.py:170 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "Il convertitore di libri di Calibre %(tool)s non è stato trovato" -#: cps/tasks/convert.py:201 +#: cps/tasks/convert.py:204 #, python-format msgid "%(format)s format not found on disk" msgstr "Formato %(format)s non trovato sul disco" -#: cps/tasks/convert.py:205 +#: cps/tasks/convert.py:208 msgid "Ebook converter failed with unknown error" msgstr "La conversione del libro è terminata con un errore sconosciuto" -#: cps/tasks/convert.py:224 +#: cps/tasks/convert.py:227 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "Errore con il convertitore Kepubify: %(error)s" -#: cps/tasks/convert.py:245 +#: cps/tasks/convert.py:248 #, python-format msgid "Converted file not found or more than one file in folder %(folder)s" msgstr "File convertito non trovato o più di un file nella cartella %(folder)s" -#: cps/tasks/convert.py:287 +#: cps/tasks/convert.py:291 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "Errore nel convertitore: %(error)s" -#: cps/tasks/convert.py:310 +#: cps/tasks/convert.py:314 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "Si è verificato un errore con Calibre: %(error)s" -#: cps/tasks/convert.py:315 +#: cps/tasks/convert.py:319 msgid "Convert" msgstr "Converti" @@ -1510,7 +1511,7 @@ msgstr "Riconessione al database di Calibre" msgid "E-mail" msgstr "E-mail" -#: cps/tasks/metadata_backup.py:33 +#: cps/tasks/metadata_backup.py:34 msgid "Backing up Metadata" msgstr "Backup dei metadati" @@ -1523,20 +1524,20 @@ msgstr "Elimina contenuto della cartella temporanea" msgid "Generated %(count)s cover thumbnails" msgstr "Sono state generate %(count)s miniature delle copertine" -#: cps/tasks/thumbnail.py:230 cps/tasks/thumbnail.py:443 -#: cps/tasks/thumbnail.py:511 +#: cps/tasks/thumbnail.py:231 cps/tasks/thumbnail.py:444 +#: cps/tasks/thumbnail.py:512 msgid "Cover Thumbnails" msgstr "Miniature delle copertine" -#: cps/tasks/thumbnail.py:289 +#: cps/tasks/thumbnail.py:290 msgid "Generated {0} series thumbnails" msgstr "Sono state generate {0} miniature delle serie" -#: cps/tasks/thumbnail.py:454 +#: cps/tasks/thumbnail.py:455 msgid "Clearing cover thumbnail cache" msgstr "Cancellazione della cache delle miniature delle copertine" -#: cps/tasks/upload.py:38 cps/templates/admin.html:20 +#: cps/tasks/upload.py:39 cps/templates/admin.html:20 #: cps/templates/layout.html:81 cps/templates/user_table.html:145 msgid "Upload" msgstr "Caricamento" @@ -1782,7 +1783,7 @@ msgstr "OK" #: cps/templates/admin.html:259 cps/templates/admin.html:273 #: cps/templates/book_edit.html:214 cps/templates/book_table.html:127 -#: cps/templates/config_db.html:66 cps/templates/config_edit.html:423 +#: cps/templates/config_db.html:66 cps/templates/config_edit.html:427 #: cps/templates/config_view_edit.html:175 cps/templates/detail.html:342 #: cps/templates/modal_dialogs.html:64 cps/templates/modal_dialogs.html:99 #: cps/templates/modal_dialogs.html:117 cps/templates/modal_dialogs.html:135 @@ -1968,7 +1969,7 @@ msgid "Fetch Metadata" msgstr "Recupera i metadati" #: cps/templates/book_edit.html:213 cps/templates/config_db.html:65 -#: cps/templates/config_edit.html:422 cps/templates/config_view_edit.html:174 +#: cps/templates/config_edit.html:426 cps/templates/config_view_edit.html:174 #: cps/templates/email_edit.html:65 cps/templates/schedule_edit.html:44 #: cps/templates/shelf_edit.html:25 cps/templates/shelf_order.html:41 #: cps/templates/user_edit.html:142 @@ -2437,46 +2438,51 @@ msgid "Configure Backend for Limiter" msgstr "Configura il backend per il limitatore" #: cps/templates/config_edit.html:376 -msgid "Options for Limiter" +#, fuzzy +msgid "Options for Limiter Backend" msgstr "Opzioni per il limitatore" -#: cps/templates/config_edit.html:381 +#: cps/templates/config_edit.html:382 +msgid "Check if file extensions matches file content on upload" +msgstr "" + +#: cps/templates/config_edit.html:385 msgid "Session protection" msgstr "Protezione sessione" -#: cps/templates/config_edit.html:383 +#: cps/templates/config_edit.html:387 msgid "Basic" msgstr "Di base" -#: cps/templates/config_edit.html:384 +#: cps/templates/config_edit.html:388 msgid "Strong" msgstr "Forte" -#: cps/templates/config_edit.html:389 +#: cps/templates/config_edit.html:393 msgid "User Password policy" msgstr "Politica password utente" -#: cps/templates/config_edit.html:393 +#: cps/templates/config_edit.html:397 msgid "Minimum password length" msgstr "Lunghezza minima password" -#: cps/templates/config_edit.html:398 +#: cps/templates/config_edit.html:402 msgid "Enforce number" msgstr "Obbliga numero" -#: cps/templates/config_edit.html:402 +#: cps/templates/config_edit.html:406 msgid "Enforce lowercase characters" msgstr "Obbliga caratteri minuscoli" -#: cps/templates/config_edit.html:406 +#: cps/templates/config_edit.html:410 msgid "Enforce uppercase characters" msgstr "Obbliga caratteri maiuscoli" -#: cps/templates/config_edit.html:410 +#: cps/templates/config_edit.html:414 msgid "Enforce characters (needed For Chinese/Japanese/Korean Characters)" msgstr "Obbliga caratteri (necessario per caratteri cinesi, giapponesi e coreani)" -#: cps/templates/config_edit.html:414 +#: cps/templates/config_edit.html:418 msgid "Enforce special characters" msgstr "Obbliga caratteri speciali" @@ -2606,6 +2612,11 @@ msgstr "Contrassegna come da leggere" msgid "Mark As Read" msgstr "Contrassegna come letto" +#: cps/templates/detail.html:254 +#, fuzzy +msgid "Mark Book as Read or Unread" +msgstr "Contrassegna come da leggere" + #: cps/templates/detail.html:254 cps/templates/listenmp3.html:159 msgid "Read" msgstr "Letto" @@ -2618,8 +2629,13 @@ msgstr "Ripristina dall'archivio" msgid "Add to archive" msgstr "Aggiungi all'archivio" -#: cps/templates/detail.html:267 cps/templates/listenmp3.html:167 -msgid "Archived" +#: cps/templates/detail.html:267 +msgid "Mark Book as archived or not, to hide it in Calibre-Web and delete it from Kobo Reader" +msgstr "" + +#: cps/templates/detail.html:267 +#, fuzzy +msgid "Archive" msgstr "Archiviato" #: cps/templates/detail.html:278 cps/templates/listenmp3.html:177 @@ -2896,6 +2912,10 @@ msgstr "Dettagli del libro" msgid "Grid" msgstr "Griglia" +#: cps/templates/listenmp3.html:167 +msgid "Archived" +msgstr "Archiviato" + #: cps/templates/login.html:18 msgid "Remember Me" msgstr "Ricordami" diff --git a/cps/translations/ja/LC_MESSAGES/messages.mo b/cps/translations/ja/LC_MESSAGES/messages.mo index 0f040557..f0ab7eb3 100644 Binary files a/cps/translations/ja/LC_MESSAGES/messages.mo and b/cps/translations/ja/LC_MESSAGES/messages.mo differ diff --git a/cps/translations/ja/LC_MESSAGES/messages.po b/cps/translations/ja/LC_MESSAGES/messages.po index e87511e0..b5a3c50e 100644 --- a/cps/translations/ja/LC_MESSAGES/messages.po +++ b/cps/translations/ja/LC_MESSAGES/messages.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Calibre-Web\n" "Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n" -"POT-Creation-Date: 2024-06-09 12:26+0200\n" +"POT-Creation-Date: 2024-06-30 12:19+0200\n" "PO-Revision-Date: 2018-02-07 02:20-0500\n" "Last-Translator: subdiox \n" "Language: ja\n" @@ -16,7 +16,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.11.0\n" +"Generated-By: Babel 2.13.1\n" #: cps/about.py:84 msgid "Statistics" @@ -45,9 +45,9 @@ msgstr "不明なコマンド" msgid "Success! Books queued for Metadata Backup, please check Tasks for result" msgstr "%(email)s へのテストメール送信がキューに追加されました。結果を見るにはタスクを確認してください" -#: cps/admin.py:207 cps/editbooks.py:591 cps/editbooks.py:593 -#: cps/editbooks.py:631 cps/editbooks.py:648 cps/editbooks.py:1280 -#: cps/updater.py:613 cps/uploader.py:93 cps/uploader.py:102 +#: cps/admin.py:207 cps/editbooks.py:573 cps/editbooks.py:575 +#: cps/editbooks.py:615 cps/editbooks.py:658 cps/editbooks.py:1280 +#: cps/updater.py:615 cps/uploader.py:93 cps/uploader.py:102 msgid "Unknown" msgstr "不明" @@ -67,12 +67,12 @@ msgstr "UI設定" msgid "Edit Users" msgstr "ユーザーを編集" -#: cps/admin.py:368 cps/opds.py:541 cps/templates/grid.html:14 +#: cps/admin.py:368 cps/opds.py:542 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "全て" -#: cps/admin.py:395 cps/admin.py:1417 +#: cps/admin.py:395 cps/admin.py:1414 msgid "User not found" msgstr "ユーザーが見つかりません" @@ -89,7 +89,7 @@ msgstr "全て表示" msgid "Malformed request" msgstr "不正なリクエスト" -#: cps/admin.py:471 cps/admin.py:2048 +#: cps/admin.py:471 cps/admin.py:2046 msgid "Guest Name can't be changed" msgstr "ゲストユーザーの名前は変更できません" @@ -97,7 +97,7 @@ msgstr "ゲストユーザーの名前は変更できません" msgid "Guest can't have this role" msgstr "ゲストユーザーはこのロールを持つことができません" -#: cps/admin.py:495 cps/admin.py:2002 +#: cps/admin.py:495 cps/admin.py:2000 msgid "No admin user remaining, can't remove admin role" msgstr "管理者ユーザーが残っておらず、管理者ロールを削除できません" @@ -129,7 +129,7 @@ msgstr "有効な言語設定がありません" msgid "No Valid Book Language Given" msgstr "有効な本の言語がありません" -#: cps/admin.py:535 cps/editbooks.py:457 +#: cps/admin.py:535 cps/editbooks.py:440 msgid "Parameter not found" msgstr "パラメータが見つかりません" @@ -141,7 +141,7 @@ msgstr "無効な読み取り列" msgid "Invalid Restricted Column" msgstr "無効な制限列" -#: cps/admin.py:598 cps/admin.py:1873 +#: cps/admin.py:598 cps/admin.py:1871 msgid "Calibre-Web configuration updated" msgstr "Calibre-Webの設定を更新しました" @@ -221,292 +221,292 @@ msgstr "タグが見つかりません" msgid "Invalid Action" msgstr "無効なアクションです" -#: cps/admin.py:1123 +#: cps/admin.py:1120 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "client_secrets.jsonがWebアプリケーション用に設定されていません" -#: cps/admin.py:1168 +#: cps/admin.py:1165 msgid "Logfile Location is not Valid, Please Enter Correct Path" msgstr "ログファイルの場所が無効です。正しいパスを入力してください" -#: cps/admin.py:1174 +#: cps/admin.py:1171 msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgstr "アクセスログファイルの場所が無効です。正しいパスを入力してください" -#: cps/admin.py:1208 +#: cps/admin.py:1205 msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgstr "LDAPのプロバイダ、ポート番号、DN、ユーザーIDを入力してください" -#: cps/admin.py:1214 +#: cps/admin.py:1211 msgid "Please Enter a LDAP Service Account and Password" msgstr "LDAPのサービスアカウント名とパスワードを入力してください" -#: cps/admin.py:1217 +#: cps/admin.py:1214 msgid "Please Enter a LDAP Service Account" msgstr "LDAPのサービスアカウント名を入力してください" -#: cps/admin.py:1222 +#: cps/admin.py:1219 #, python-format msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgstr "LDAPのグループフィルタには \"%s\" というフォーマットのIDが一つ必要です" -#: cps/admin.py:1224 +#: cps/admin.py:1221 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "LDAPのグループフィルタ内の括弧が一致しません" -#: cps/admin.py:1228 +#: cps/admin.py:1225 #, python-format msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgstr "LDAPのユーザーフィルタには \"%s\" というフォーマットのIDが一つ必要です" -#: cps/admin.py:1230 +#: cps/admin.py:1227 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "LDAPのユーザーフィルタ内の括弧が一致しません" -#: cps/admin.py:1237 +#: cps/admin.py:1234 #, python-format msgid "LDAP Member User Filter needs to Have One \"%s\" Format Identifier" msgstr "LDAPのメンバーフィルタには \"%s\" というフォーマットのIDが一つ必要です" -#: cps/admin.py:1239 +#: cps/admin.py:1236 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "LDAPのメンバーフィルタ内の括弧が一致しません" -#: cps/admin.py:1246 +#: cps/admin.py:1243 msgid "LDAP CACertificate, Certificate or Key Location is not Valid, Please Enter Correct Path" msgstr "LDAPのCA証明書、証明書、キーの場所が無効です。正しいパスを入力してください" -#: cps/admin.py:1277 cps/templates/admin.html:53 +#: cps/admin.py:1274 cps/templates/admin.html:53 msgid "Add New User" msgstr "新規ユーザーを追加" -#: cps/admin.py:1286 cps/templates/admin.html:100 +#: cps/admin.py:1283 cps/templates/admin.html:100 msgid "Edit Email Server Settings" msgstr "メールサーバー設定を編集" -#: cps/admin.py:1305 +#: cps/admin.py:1302 msgid "Success! Gmail Account Verified." msgstr "" -#: cps/admin.py:1325 cps/admin.py:1328 cps/admin.py:1713 cps/admin.py:1857 -#: cps/admin.py:1955 cps/admin.py:2076 cps/editbooks.py:243 -#: cps/editbooks.py:319 cps/editbooks.py:1242 cps/shelf.py:90 cps/shelf.py:150 +#: cps/admin.py:1322 cps/admin.py:1325 cps/admin.py:1710 cps/admin.py:1855 +#: cps/admin.py:1953 cps/admin.py:2074 cps/editbooks.py:226 +#: cps/editbooks.py:303 cps/editbooks.py:1242 cps/shelf.py:90 cps/shelf.py:150 #: cps/shelf.py:193 cps/shelf.py:243 cps/shelf.py:280 cps/shelf.py:354 -#: cps/shelf.py:468 cps/tasks/convert.py:150 cps/web.py:1520 +#: cps/shelf.py:468 cps/tasks/convert.py:153 cps/web.py:1520 #, python-format msgid "Oops! Database Error: %(error)s." msgstr "DBエラー: %(error)s" -#: cps/admin.py:1335 +#: cps/admin.py:1332 #, python-format msgid "Test e-mail queued for sending to %(email)s, please check Tasks for result" msgstr "%(email)s へのテストメール送信がキューに追加されました。結果を見るにはタスクを確認してください" -#: cps/admin.py:1338 +#: cps/admin.py:1335 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "%(res)s へのテストメール送信中にエラーが発生しました" -#: cps/admin.py:1340 +#: cps/admin.py:1337 msgid "Please configure your e-mail address first..." msgstr "初めにメールアドレスを設定してください" -#: cps/admin.py:1342 +#: cps/admin.py:1339 msgid "Email Server Settings updated" msgstr "メールサーバーの設定を更新しました" -#: cps/admin.py:1365 cps/templates/admin.html:195 +#: cps/admin.py:1362 cps/templates/admin.html:195 msgid "Edit Scheduled Tasks Settings" msgstr "スケジュールタスク設定を編集" -#: cps/admin.py:1377 +#: cps/admin.py:1374 msgid "Invalid start time for task specified" msgstr "指定したタスクの開始時刻が無効です" -#: cps/admin.py:1382 +#: cps/admin.py:1379 msgid "Invalid duration for task specified" msgstr "指定したタスクの期間が無効です" -#: cps/admin.py:1392 +#: cps/admin.py:1389 msgid "Scheduled tasks settings updated" msgstr "スケジュールタスクの設定を更新しました" -#: cps/admin.py:1402 cps/admin.py:1451 cps/admin.py:2072 cps/web.py:1316 +#: cps/admin.py:1399 cps/admin.py:1448 cps/admin.py:2070 cps/web.py:1316 msgid "Oops! An unknown error occurred. Please try again later." msgstr "不明なエラーが発生しました。あとで再試行してください。" -#: cps/admin.py:1406 +#: cps/admin.py:1403 msgid "Settings DB is not Writeable" msgstr "設定DBが書き込みできません" -#: cps/admin.py:1436 cps/admin.py:2064 +#: cps/admin.py:1433 cps/admin.py:2062 #, python-format msgid "Edit User %(nick)s" msgstr "ユーザー %(nick)s を編集" -#: cps/admin.py:1448 +#: cps/admin.py:1445 #, fuzzy, python-format msgid "Success! Password for user %(user)s reset" msgstr "ユーザー %(user)s のパスワードをリセット" -#: cps/admin.py:1454 +#: cps/admin.py:1451 #, fuzzy msgid "Oops! Please configure the SMTP mail settings." msgstr "初めにSMTPメールの設定をしてください" -#: cps/admin.py:1465 +#: cps/admin.py:1462 msgid "Logfile viewer" msgstr "ログファイルビューア" -#: cps/admin.py:1531 +#: cps/admin.py:1528 msgid "Requesting update package" msgstr "更新データを要求中" -#: cps/admin.py:1532 +#: cps/admin.py:1529 msgid "Downloading update package" msgstr "更新データをダウンロード中" -#: cps/admin.py:1533 +#: cps/admin.py:1530 msgid "Unzipping update package" msgstr "更新データを展開中" -#: cps/admin.py:1534 +#: cps/admin.py:1531 msgid "Replacing files" msgstr "ファイルを置換中" -#: cps/admin.py:1535 +#: cps/admin.py:1532 msgid "Database connections are closed" msgstr "DB接続を切断" -#: cps/admin.py:1536 +#: cps/admin.py:1533 msgid "Stopping server" msgstr "サーバー停止中" -#: cps/admin.py:1537 +#: cps/admin.py:1534 msgid "Update finished, please press okay and reload page" msgstr "アップデート完了、OKを押してページを再読み込みしてください" -#: cps/admin.py:1538 cps/admin.py:1539 cps/admin.py:1540 cps/admin.py:1541 -#: cps/admin.py:1542 cps/admin.py:1543 +#: cps/admin.py:1535 cps/admin.py:1536 cps/admin.py:1537 cps/admin.py:1538 +#: cps/admin.py:1539 cps/admin.py:1540 msgid "Update failed:" msgstr "アップデート失敗:" -#: cps/admin.py:1538 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 +#: cps/admin.py:1535 cps/updater.py:391 cps/updater.py:626 cps/updater.py:628 msgid "HTTP Error" msgstr "HTTPエラー" -#: cps/admin.py:1539 cps/updater.py:391 cps/updater.py:628 +#: cps/admin.py:1536 cps/updater.py:393 cps/updater.py:630 msgid "Connection error" msgstr "接続エラー" -#: cps/admin.py:1540 cps/updater.py:393 cps/updater.py:630 +#: cps/admin.py:1537 cps/updater.py:395 cps/updater.py:632 msgid "Timeout while establishing connection" msgstr "接続確立中にタイムアウトしました" -#: cps/admin.py:1541 cps/updater.py:395 cps/updater.py:632 +#: cps/admin.py:1538 cps/updater.py:397 cps/updater.py:634 msgid "General error" msgstr "エラー発生" -#: cps/admin.py:1542 +#: cps/admin.py:1539 msgid "Update file could not be saved in temp dir" msgstr "更新データを一時フォルダに保存できませんでした" -#: cps/admin.py:1543 +#: cps/admin.py:1540 msgid "Files could not be replaced during update" msgstr "更新中にファイルを置換できませんでした" -#: cps/admin.py:1567 +#: cps/admin.py:1564 msgid "Failed to extract at least One LDAP User" msgstr "少なくとも1人のLDAPユーザーの抽出に失敗しました" -#: cps/admin.py:1612 +#: cps/admin.py:1609 msgid "Failed to Create at Least One LDAP User" msgstr "少なくとも1人のLDAPユーザーの作成に失敗しました" -#: cps/admin.py:1625 +#: cps/admin.py:1622 #, python-format msgid "Error: %(ldaperror)s" msgstr "エラー: %(ldaperror)s" -#: cps/admin.py:1629 +#: cps/admin.py:1626 msgid "Error: No user returned in response of LDAP server" msgstr "エラー: LDAPサーバーのレスポンスでユーザーが返されません" -#: cps/admin.py:1665 +#: cps/admin.py:1662 msgid "At Least One LDAP User Not Found in Database" msgstr "DB内にLDAPユーザーが1人も見つかりません" -#: cps/admin.py:1667 +#: cps/admin.py:1664 msgid "{} User Successfully Imported" msgstr "{}人のユーザーをインポートしました" -#: cps/admin.py:1725 +#: cps/admin.py:1722 msgid "DB Location is not Valid, Please Enter Correct Path" msgstr "DBの場所が無効です。正しいパスを入力してください" -#: cps/admin.py:1745 +#: cps/admin.py:1742 msgid "DB is not Writeable" msgstr "DBへの書き込みができません" -#: cps/admin.py:1761 +#: cps/admin.py:1758 msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgstr "キーファイルの場所が無効です。正しいパスを入力してください" -#: cps/admin.py:1765 +#: cps/admin.py:1762 msgid "Certfile Location is not Valid, Please Enter Correct Path" msgstr "証明書ファイルの場所が無効です。正しいパスを入力してください" -#: cps/admin.py:1842 +#: cps/admin.py:1840 msgid "Password length has to be between 1 and 40" msgstr "" -#: cps/admin.py:1896 +#: cps/admin.py:1894 msgid "Database Settings updated" msgstr "DB設定を更新しました" -#: cps/admin.py:1904 +#: cps/admin.py:1902 msgid "Database Configuration" msgstr "DB設定" -#: cps/admin.py:1919 cps/web.py:1290 +#: cps/admin.py:1917 cps/web.py:1290 msgid "Oops! Please complete all fields." msgstr "全ての項目を入力してください" -#: cps/admin.py:1928 +#: cps/admin.py:1926 msgid "E-mail is not from valid domain" msgstr "このメールは有効なドメインからのものではありません" -#: cps/admin.py:1934 +#: cps/admin.py:1932 msgid "Add new user" msgstr "新規ユーザー追加" -#: cps/admin.py:1945 +#: cps/admin.py:1943 #, python-format msgid "User '%(user)s' created" msgstr "ユーザー '%(user)s' を作成しました" -#: cps/admin.py:1951 +#: cps/admin.py:1949 msgid "Oops! An account already exists for this Email. or name." msgstr "このメールアドレスかニックネームで登録されたアカウントがすでに存在します。" -#: cps/admin.py:1981 +#: cps/admin.py:1979 #, python-format msgid "User '%(nick)s' deleted" msgstr "ユーザー '%(nick)s' を削除しました" -#: cps/admin.py:1984 +#: cps/admin.py:1982 msgid "Can't delete Guest User" msgstr "ゲストユーザーは削除できません" -#: cps/admin.py:1987 +#: cps/admin.py:1985 msgid "No admin user remaining, can't delete user" msgstr "管理者ユーザーが残っておらず、ユーザーを削除できません" -#: cps/admin.py:2042 cps/web.py:1469 +#: cps/admin.py:2040 cps/web.py:1469 msgid "Email can't be empty and has to be a valid Email" msgstr "" -#: cps/admin.py:2068 +#: cps/admin.py:2066 #, python-format msgid "User '%(nick)s' updated" msgstr "ユーザー '%(nick)s' を更新しました" @@ -519,12 +519,12 @@ msgstr "インストールされていません" msgid "Execution permissions missing" msgstr "実行権限がありません" -#: cps/db.py:756 cps/search.py:137 cps/web.py:747 +#: cps/db.py:768 cps/search.py:137 cps/web.py:747 #, python-format msgid "Custom Column No.%(column)d does not exist in calibre database" msgstr "カスタムカラムの%(column)d列目がcalibreのDBに存在しません" -#: cps/db.py:996 cps/templates/config_edit.html:203 +#: cps/db.py:1008 cps/templates/config_edit.html:203 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 #: cps/web.py:562 cps/web.py:596 cps/web.py:641 cps/web.py:681 cps/web.py:708 #: cps/web.py:989 cps/web.py:1019 cps/web.py:1064 cps/web.py:1092 @@ -532,100 +532,105 @@ msgstr "カスタムカラムの%(column)d列目がcalibreのDBに存在しま msgid "None" msgstr "なし" -#: cps/editbooks.py:124 cps/editbooks.py:912 cps/web.py:529 cps/web.py:1561 -#: cps/web.py:1605 cps/web.py:1650 +#: cps/editbooks.py:108 cps/editbooks.py:929 cps/web.py:529 cps/web.py:1561 +#: cps/web.py:1606 cps/web.py:1651 msgid "Oops! Selected book is unavailable. File does not exist or is not accessible" msgstr "選択した本は利用できません。ファイルが存在しないか、アクセスできません" -#: cps/editbooks.py:168 cps/editbooks.py:1263 +#: cps/editbooks.py:151 cps/editbooks.py:1263 msgid "User has no rights to upload cover" msgstr "ユーザーは表紙をアップロードする権限がありません" -#: cps/editbooks.py:188 cps/editbooks.py:733 +#: cps/editbooks.py:171 cps/editbooks.py:744 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "IDは大文字小文字を区別しません。元のIDを上書きします" -#: cps/editbooks.py:230 +#: cps/editbooks.py:213 msgid "Metadata successfully updated" msgstr "メタデータを更新しました" -#: cps/editbooks.py:248 +#: cps/editbooks.py:231 msgid "Error editing book: {}" msgstr "本編集中のエラー: {}" -#: cps/editbooks.py:305 +#: cps/editbooks.py:289 #, python-format msgid "File %(file)s uploaded" msgstr "ファイル %(file)s をアップロードしました" -#: cps/editbooks.py:333 +#: cps/editbooks.py:317 msgid "Source or destination format for conversion missing" msgstr "変換元の形式または変換後の形式が指定されていません" -#: cps/editbooks.py:341 +#: cps/editbooks.py:325 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "本の %(book_format)s への変換がキューに追加されました" -#: cps/editbooks.py:345 +#: cps/editbooks.py:329 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "この本の変換中にエラーが発生しました: %(res)s" -#: cps/editbooks.py:652 +#: cps/editbooks.py:662 msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgstr "アップロードした本はすでにライブラリに存在します。新しくアップロードする前に変更を加えてください: " -#: cps/editbooks.py:707 cps/editbooks.py:1043 +#: cps/editbooks.py:718 cps/editbooks.py:1049 #, python-format msgid "'%(langname)s' is not a valid language" msgstr "'%(langname)s' は有効な言語ではありません" -#: cps/editbooks.py:745 cps/editbooks.py:1203 +#: cps/editbooks.py:756 cps/editbooks.py:1192 +#, fuzzy +msgid "File type isn't allowed to be uploaded to this server" +msgstr "ファイル拡張子 '%(ext)s' をこのサーバーにアップロードすることは許可されていません" + +#: cps/editbooks.py:762 cps/editbooks.py:1202 #, python-format msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgstr "ファイル拡張子 '%(ext)s' をこのサーバーにアップロードすることは許可されていません" -#: cps/editbooks.py:749 cps/editbooks.py:1207 +#: cps/editbooks.py:766 cps/editbooks.py:1206 msgid "File to be uploaded must have an extension" msgstr "アップロードするファイルには拡張子が必要です" -#: cps/editbooks.py:757 +#: cps/editbooks.py:774 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "ファイル %(filename)s は一時フォルダに保存できませんでした" -#: cps/editbooks.py:777 +#: cps/editbooks.py:794 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "表紙ファイル %(file)s の移動に失敗しました: %(error)s" -#: cps/editbooks.py:834 cps/editbooks.py:836 +#: cps/editbooks.py:851 cps/editbooks.py:853 msgid "Book Format Successfully Deleted" msgstr "本の形式を削除しました" -#: cps/editbooks.py:843 cps/editbooks.py:845 +#: cps/editbooks.py:860 cps/editbooks.py:862 msgid "Book Successfully Deleted" msgstr "本を削除しました" -#: cps/editbooks.py:897 +#: cps/editbooks.py:914 msgid "You are missing permissions to delete books" msgstr "本を削除する権限がありません" -#: cps/editbooks.py:947 +#: cps/editbooks.py:964 msgid "edit metadata" msgstr "メタデータを編集" -#: cps/editbooks.py:996 +#: cps/editbooks.py:1013 #, python-format msgid "%(seriesindex)s is not a valid number, skipping" msgstr "%(seriesindex)s は有効な数字ではありません。スキップします" -#: cps/editbooks.py:1198 +#: cps/editbooks.py:1197 msgid "User has no rights to upload additional file formats" msgstr "新たなファイル形式をアップロードする権限がありません" -#: cps/editbooks.py:1219 +#: cps/editbooks.py:1218 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "%(path)s の作成に失敗しました (Permission denied)。" @@ -644,7 +649,7 @@ msgstr "ファイル形式 %(ext)s が %(book)s に追加されました" msgid "Google Drive setup not completed, try to deactivate and activate Google Drive again" msgstr "Googleドライブの設定が完了していません。Googleドライブを無効にしてから再度有効にしてみてください" -#: cps/gdrive.py:95 +#: cps/gdrive.py:96 msgid "Callback domain is not verified, please follow steps to verify domain in google developer console" msgstr "コールバックドメインが認証されていません。Google Developer Consoleでドメインを認証してください" @@ -653,7 +658,7 @@ msgstr "コールバックドメインが認証されていません。Google De msgid "%(format)s format not found for book id: %(book)d" msgstr "ID: %(book)d の本に %(format)s フォーマットはありません" -#: cps/helper.py:93 cps/tasks/convert.py:86 +#: cps/helper.py:93 cps/tasks/convert.py:89 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "Googleドライブ: %(fn)s に %(format)s はありません" @@ -729,126 +734,122 @@ msgstr "本 %(id)s の削除に失敗しました: %(message)s" msgid "Deleting book %(id)s from database only, book path in database not valid: %(path)s" msgstr "本 %(id)s はDBのみから削除されます。DB内の本のパスが有効ではありません: %(path)s" -#: cps/helper.py:452 +#: cps/helper.py:465 #, python-format msgid "Rename author from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgstr "エラー: %(error)s により、著者名を %(src)s から %(dest)s に変更できませんでした" -#: cps/helper.py:524 cps/helper.py:533 +#: cps/helper.py:536 cps/helper.py:545 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "ファイル %(file)s はGoogleドライブ上にありません" -#: cps/helper.py:567 +#: cps/helper.py:587 #, python-format msgid "Rename title from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgstr "エラー: %(error)s により、タイトルを %(src)s から %(dest)s に変更できませんでした" -#: cps/helper.py:587 -msgid "Error in rename file in path: {}" -msgstr "ファイル名の変更でエラーが発生しました: {}" - -#: cps/helper.py:605 +#: cps/helper.py:625 #, python-format msgid "Book path %(path)s not found on Google Drive" msgstr "本のパス %(path)s はGoogleドライブ上にありません" -#: cps/helper.py:670 +#: cps/helper.py:685 msgid "Found an existing account for this Email address" msgstr "" -#: cps/helper.py:678 +#: cps/helper.py:693 msgid "This username is already taken" msgstr "このユーザー名はすでに使われています" -#: cps/helper.py:690 +#: cps/helper.py:705 #, fuzzy msgid "Invalid Email address format" msgstr "メールアドレスの形式が無効" -#: cps/helper.py:710 +#: cps/helper.py:726 msgid "Password doesn't comply with password validation rules" msgstr "" -#: cps/helper.py:859 +#: cps/helper.py:873 msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "表紙のアップロードに必要なPythonモジュール 'advocate' がインストールされていません" -#: cps/helper.py:869 +#: cps/helper.py:883 msgid "Error Downloading Cover" msgstr "表紙のダウンロードに失敗しました" -#: cps/helper.py:872 +#: cps/helper.py:886 msgid "Cover Format Error" msgstr "表紙形式エラー" -#: cps/helper.py:875 +#: cps/helper.py:889 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "表紙アップロードのためにlocalhostやローカルネットワークにアクセスすることは許可されていません" -#: cps/helper.py:885 +#: cps/helper.py:899 msgid "Failed to create path for cover" msgstr "表紙ファイルの作成に失敗しました" -#: cps/helper.py:901 +#: cps/helper.py:915 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "表紙ファイルが有効な画像ファイルでないか、または保存できませんでした" -#: cps/helper.py:912 +#: cps/helper.py:926 msgid "Only jpg/jpeg/png/webp/bmp files are supported as coverfile" msgstr "表紙ファイルは jpg/jpeg/png/webp/bmp のみ対応しています" -#: cps/helper.py:924 +#: cps/helper.py:938 msgid "Invalid cover file content" msgstr "表紙ファイルの内容が無効です" -#: cps/helper.py:928 +#: cps/helper.py:942 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "表紙ファイルは jpg/jpeg のみ対応しています" -#: cps/helper.py:999 cps/helper.py:1156 +#: cps/helper.py:1014 cps/helper.py:1171 #, fuzzy msgid "Cover" msgstr "見つける" -#: cps/helper.py:1016 +#: cps/helper.py:1031 msgid "UnRar binary file not found" msgstr "UnRarのバイナリファイルが見つかりません" -#: cps/helper.py:1027 +#: cps/helper.py:1042 #, fuzzy msgid "Error executing UnRar" msgstr "UnRarの実行中にエラーが発生しました" -#: cps/helper.py:1035 +#: cps/helper.py:1050 msgid "Could not find the specified directory" msgstr "" -#: cps/helper.py:1038 +#: cps/helper.py:1053 msgid "Please specify a directory, not a file" msgstr "" -#: cps/helper.py:1052 +#: cps/helper.py:1067 #, fuzzy msgid "Calibre binaries not viable" msgstr "DBへの書き込みができません" -#: cps/helper.py:1061 +#: cps/helper.py:1076 #, python-format msgid "Missing calibre binaries: %(missing)s" msgstr "" -#: cps/helper.py:1063 +#: cps/helper.py:1078 #, fuzzy, python-format msgid "Missing executable permissions: %(missing)s" msgstr "実行権限がありません" -#: cps/helper.py:1068 +#: cps/helper.py:1083 #, fuzzy msgid "Error executing Calibre" msgstr "UnRarの実行中にエラーが発生しました" -#: cps/helper.py:1158 cps/templates/admin.html:216 +#: cps/helper.py:1173 cps/templates/admin.html:216 msgid "Queue all books for metadata backup" msgstr "" @@ -894,35 +895,35 @@ msgstr "%(oauth)s との連携解除に失敗しました" msgid "Not Linked to %(oauth)s" msgstr "%(oauth)s と連携していません" -#: cps/oauth_bb.py:261 +#: cps/oauth_bb.py:262 msgid "Failed to log in with GitHub." msgstr "GitHubアカウントでのログインに失敗しました。" -#: cps/oauth_bb.py:267 +#: cps/oauth_bb.py:268 msgid "Failed to fetch user info from GitHub." msgstr "GitHubからのユーザー情報取得に失敗しました。" -#: cps/oauth_bb.py:279 +#: cps/oauth_bb.py:280 msgid "Failed to log in with Google." msgstr "Googleアカウントでのログインに失敗しました。" -#: cps/oauth_bb.py:285 +#: cps/oauth_bb.py:286 msgid "Failed to fetch user info from Google." msgstr "Googleからのユーザー情報取得に失敗しました。" -#: cps/oauth_bb.py:332 +#: cps/oauth_bb.py:334 msgid "GitHub Oauth error, please retry later." msgstr "GitHub OAuth エラー、再度お試しください。" -#: cps/oauth_bb.py:335 +#: cps/oauth_bb.py:337 msgid "GitHub Oauth error: {}" msgstr "GitHub OAuth エラー: {}" -#: cps/oauth_bb.py:356 +#: cps/oauth_bb.py:358 msgid "Google Oauth error, please retry later." msgstr "Google OAuth エラー、再度お試しください。" -#: cps/oauth_bb.py:359 +#: cps/oauth_bb.py:361 msgid "Google Oauth error: {}" msgstr "Google OAuth エラー: {}" @@ -1280,32 +1281,32 @@ msgstr "キャンセル" msgid "Unknown Status" msgstr "不明" -#: cps/updater.py:431 cps/updater.py:442 cps/updater.py:543 cps/updater.py:558 +#: cps/updater.py:433 cps/updater.py:444 cps/updater.py:545 cps/updater.py:560 msgid "Unexpected data while reading update information" msgstr "アップデート情報の読み込み中に予期しないデータが見つかりました" -#: cps/updater.py:438 cps/updater.py:550 +#: cps/updater.py:440 cps/updater.py:552 msgid "No update available. You already have the latest version installed" msgstr "アップデートはありません。すでに最新バージョンがインストールされています" -#: cps/updater.py:456 +#: cps/updater.py:458 msgid "A new update is available. Click on the button below to update to the latest version." msgstr "アップデートが利用可能です。下のボタンをクリックして最新バージョンにアップデートしてください。" -#: cps/updater.py:474 +#: cps/updater.py:476 msgid "Could not fetch update information" msgstr "アップデート情報を取得できません" -#: cps/updater.py:484 +#: cps/updater.py:486 msgid "Click on the button below to update to the latest stable version." msgstr "下のボタンをクリックして最新の安定バージョンにアップデートしてください。" -#: cps/updater.py:493 cps/updater.py:507 cps/updater.py:518 +#: cps/updater.py:495 cps/updater.py:509 cps/updater.py:520 #, python-format msgid "A new update is available. Click on the button below to update to version: %(version)s" msgstr "アップデートが利用可能です。下のボタンをクリックしてバージョン: %(version)s にアップデートしてください。" -#: cps/updater.py:536 +#: cps/updater.py:538 msgid "No release information available" msgstr "リリース情報がありません" @@ -1484,50 +1485,50 @@ msgstr "プロフィールを更新しました" msgid "Oops! An account already exists for this Email." msgstr "このメールアドレスで登録されたアカウントがすでに存在します" -#: cps/services/gmail.py:58 +#: cps/services/gmail.py:59 msgid "Found no valid gmail.json file with OAuth information" msgstr "OAuth情報を含んだ有効なgmail.jsonファイルが見つかりません" -#: cps/tasks/convert.py:105 +#: cps/tasks/convert.py:108 #, python-format msgid "%(book)s send to E-Reader" msgstr "%(book)s をE-Readerに送信" -#: cps/tasks/convert.py:167 +#: cps/tasks/convert.py:170 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "Calibre ebook-convert %(tool)s が見つかりません" -#: cps/tasks/convert.py:201 +#: cps/tasks/convert.py:204 #, python-format msgid "%(format)s format not found on disk" msgstr "%(format)s 形式は存在しません" -#: cps/tasks/convert.py:205 +#: cps/tasks/convert.py:208 msgid "Ebook converter failed with unknown error" msgstr "Ebook converter が不明なエラーで失敗しました" -#: cps/tasks/convert.py:224 +#: cps/tasks/convert.py:227 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "Kepubify-converter が失敗しました: %(error)s" -#: cps/tasks/convert.py:245 +#: cps/tasks/convert.py:248 #, python-format msgid "Converted file not found or more than one file in folder %(folder)s" msgstr "変換されたファイルが見つからないか、またはフォルダー %(folder)s 内に複数存在します" -#: cps/tasks/convert.py:287 +#: cps/tasks/convert.py:291 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "Ebook-converter が失敗しました: %(error)s" -#: cps/tasks/convert.py:310 +#: cps/tasks/convert.py:314 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "Calibre が失敗しました: %(error)s" -#: cps/tasks/convert.py:315 +#: cps/tasks/convert.py:319 msgid "Convert" msgstr "変換" @@ -1539,7 +1540,7 @@ msgstr "Calibre DBと再接続中" msgid "E-mail" msgstr "メール" -#: cps/tasks/metadata_backup.py:33 +#: cps/tasks/metadata_backup.py:34 #, fuzzy msgid "Backing up Metadata" msgstr "メタデータを編集" @@ -1553,20 +1554,20 @@ msgstr "" msgid "Generated %(count)s cover thumbnails" msgstr "表紙サムネイルを%(count)s個生成しました" -#: cps/tasks/thumbnail.py:230 cps/tasks/thumbnail.py:443 -#: cps/tasks/thumbnail.py:511 +#: cps/tasks/thumbnail.py:231 cps/tasks/thumbnail.py:444 +#: cps/tasks/thumbnail.py:512 msgid "Cover Thumbnails" msgstr "表紙サムネイル" -#: cps/tasks/thumbnail.py:289 +#: cps/tasks/thumbnail.py:290 msgid "Generated {0} series thumbnails" msgstr "シリーズのサムネイルを{0}個生成しました" -#: cps/tasks/thumbnail.py:454 +#: cps/tasks/thumbnail.py:455 msgid "Clearing cover thumbnail cache" msgstr "表紙サムネイルのキャッシュを消去中" -#: cps/tasks/upload.py:38 cps/templates/admin.html:20 +#: cps/tasks/upload.py:39 cps/templates/admin.html:20 #: cps/templates/layout.html:81 cps/templates/user_table.html:145 msgid "Upload" msgstr "アップロード" @@ -1813,7 +1814,7 @@ msgstr "OK" #: cps/templates/admin.html:259 cps/templates/admin.html:273 #: cps/templates/book_edit.html:214 cps/templates/book_table.html:127 -#: cps/templates/config_db.html:66 cps/templates/config_edit.html:423 +#: cps/templates/config_db.html:66 cps/templates/config_edit.html:427 #: cps/templates/config_view_edit.html:175 cps/templates/detail.html:342 #: cps/templates/modal_dialogs.html:64 cps/templates/modal_dialogs.html:99 #: cps/templates/modal_dialogs.html:117 cps/templates/modal_dialogs.html:135 @@ -1999,7 +2000,7 @@ msgid "Fetch Metadata" msgstr "メタデータを取得" #: cps/templates/book_edit.html:213 cps/templates/config_db.html:65 -#: cps/templates/config_edit.html:422 cps/templates/config_view_edit.html:174 +#: cps/templates/config_edit.html:426 cps/templates/config_view_edit.html:174 #: cps/templates/email_edit.html:65 cps/templates/schedule_edit.html:44 #: cps/templates/shelf_edit.html:25 cps/templates/shelf_order.html:41 #: cps/templates/user_edit.html:142 @@ -2470,47 +2471,51 @@ msgid "Configure Backend for Limiter" msgstr "" #: cps/templates/config_edit.html:376 -msgid "Options for Limiter" +msgid "Options for Limiter Backend" msgstr "" -#: cps/templates/config_edit.html:381 +#: cps/templates/config_edit.html:382 +msgid "Check if file extensions matches file content on upload" +msgstr "" + +#: cps/templates/config_edit.html:385 msgid "Session protection" msgstr "" -#: cps/templates/config_edit.html:383 +#: cps/templates/config_edit.html:387 msgid "Basic" msgstr "" -#: cps/templates/config_edit.html:384 +#: cps/templates/config_edit.html:388 msgid "Strong" msgstr "" -#: cps/templates/config_edit.html:389 +#: cps/templates/config_edit.html:393 #, fuzzy msgid "User Password policy" msgstr "パスワードをリセット" -#: cps/templates/config_edit.html:393 +#: cps/templates/config_edit.html:397 msgid "Minimum password length" msgstr "" -#: cps/templates/config_edit.html:398 +#: cps/templates/config_edit.html:402 msgid "Enforce number" msgstr "" -#: cps/templates/config_edit.html:402 +#: cps/templates/config_edit.html:406 msgid "Enforce lowercase characters" msgstr "" -#: cps/templates/config_edit.html:406 +#: cps/templates/config_edit.html:410 msgid "Enforce uppercase characters" msgstr "" -#: cps/templates/config_edit.html:410 +#: cps/templates/config_edit.html:414 msgid "Enforce characters (needed For Chinese/Japanese/Korean Characters)" msgstr "" -#: cps/templates/config_edit.html:414 +#: cps/templates/config_edit.html:418 msgid "Enforce special characters" msgstr "" @@ -2640,6 +2645,11 @@ msgstr "未読に設定" msgid "Mark As Read" msgstr "既読に設定" +#: cps/templates/detail.html:254 +#, fuzzy +msgid "Mark Book as Read or Unread" +msgstr "未読に設定" + #: cps/templates/detail.html:254 cps/templates/listenmp3.html:159 msgid "Read" msgstr "既読" @@ -2652,8 +2662,13 @@ msgstr "アーカイブから復元" msgid "Add to archive" msgstr "アーカイブに追加" -#: cps/templates/detail.html:267 cps/templates/listenmp3.html:167 -msgid "Archived" +#: cps/templates/detail.html:267 +msgid "Mark Book as archived or not, to hide it in Calibre-Web and delete it from Kobo Reader" +msgstr "" + +#: cps/templates/detail.html:267 +#, fuzzy +msgid "Archive" msgstr "アーカイブ済み" #: cps/templates/detail.html:278 cps/templates/listenmp3.html:177 @@ -2933,6 +2948,10 @@ msgstr "本の詳細" msgid "Grid" msgstr "表" +#: cps/templates/listenmp3.html:167 +msgid "Archived" +msgstr "アーカイブ済み" + #: cps/templates/login.html:18 msgid "Remember Me" msgstr "アカウント情報を記憶する" diff --git a/cps/translations/km/LC_MESSAGES/messages.mo b/cps/translations/km/LC_MESSAGES/messages.mo index b5ff6622..569e974d 100644 Binary files a/cps/translations/km/LC_MESSAGES/messages.mo and b/cps/translations/km/LC_MESSAGES/messages.mo differ diff --git a/cps/translations/km/LC_MESSAGES/messages.po b/cps/translations/km/LC_MESSAGES/messages.po index e130a840..10b49837 100644 --- a/cps/translations/km/LC_MESSAGES/messages.po +++ b/cps/translations/km/LC_MESSAGES/messages.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: Calibre-Web\n" "Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n" -"POT-Creation-Date: 2024-06-09 12:26+0200\n" +"POT-Creation-Date: 2024-06-30 12:19+0200\n" "PO-Revision-Date: 2018-08-27 17:06+0700\n" "Last-Translator: \n" "Language: km_KH\n" @@ -17,7 +17,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.11.0\n" +"Generated-By: Babel 2.13.1\n" #: cps/about.py:84 msgid "Statistics" @@ -46,9 +46,9 @@ msgstr "" msgid "Success! Books queued for Metadata Backup, please check Tasks for result" msgstr "សៀវភៅបានចូលជួរសម្រាប់ផ្ញើទៅ %(eReadermail)s ដោយជោគជ័យ" -#: cps/admin.py:207 cps/editbooks.py:591 cps/editbooks.py:593 -#: cps/editbooks.py:631 cps/editbooks.py:648 cps/editbooks.py:1280 -#: cps/updater.py:613 cps/uploader.py:93 cps/uploader.py:102 +#: cps/admin.py:207 cps/editbooks.py:573 cps/editbooks.py:575 +#: cps/editbooks.py:615 cps/editbooks.py:658 cps/editbooks.py:1280 +#: cps/updater.py:615 cps/uploader.py:93 cps/uploader.py:102 msgid "Unknown" msgstr "មិនដឹង" @@ -69,12 +69,12 @@ msgstr "ការកំណត់ផ្ទាំងប្រើប្រាស់ msgid "Edit Users" msgstr "អ្នកប្រើប្រាស់រដ្ឋបាល" -#: cps/admin.py:368 cps/opds.py:541 cps/templates/grid.html:14 +#: cps/admin.py:368 cps/opds.py:542 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "" -#: cps/admin.py:395 cps/admin.py:1417 +#: cps/admin.py:395 cps/admin.py:1414 msgid "User not found" msgstr "" @@ -91,7 +91,7 @@ msgstr "បង្ហាញទាំងអស់" msgid "Malformed request" msgstr "" -#: cps/admin.py:471 cps/admin.py:2048 +#: cps/admin.py:471 cps/admin.py:2046 msgid "Guest Name can't be changed" msgstr "" @@ -99,7 +99,7 @@ msgstr "" msgid "Guest can't have this role" msgstr "" -#: cps/admin.py:495 cps/admin.py:2002 +#: cps/admin.py:495 cps/admin.py:2000 msgid "No admin user remaining, can't remove admin role" msgstr "" @@ -131,7 +131,7 @@ msgstr "" msgid "No Valid Book Language Given" msgstr "" -#: cps/admin.py:535 cps/editbooks.py:457 +#: cps/admin.py:535 cps/editbooks.py:440 msgid "Parameter not found" msgstr "" @@ -143,7 +143,7 @@ msgstr "" msgid "Invalid Restricted Column" msgstr "" -#: cps/admin.py:598 cps/admin.py:1873 +#: cps/admin.py:598 cps/admin.py:1871 msgid "Calibre-Web configuration updated" msgstr "" @@ -227,294 +227,294 @@ msgstr "" msgid "Invalid Action" msgstr "" -#: cps/admin.py:1123 +#: cps/admin.py:1120 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "" -#: cps/admin.py:1168 +#: cps/admin.py:1165 msgid "Logfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1174 +#: cps/admin.py:1171 msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1208 +#: cps/admin.py:1205 msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgstr "" -#: cps/admin.py:1214 +#: cps/admin.py:1211 msgid "Please Enter a LDAP Service Account and Password" msgstr "" -#: cps/admin.py:1217 +#: cps/admin.py:1214 msgid "Please Enter a LDAP Service Account" msgstr "" -#: cps/admin.py:1222 +#: cps/admin.py:1219 #, python-format msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1224 +#: cps/admin.py:1221 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1228 +#: cps/admin.py:1225 #, python-format msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1230 +#: cps/admin.py:1227 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1237 +#: cps/admin.py:1234 #, python-format msgid "LDAP Member User Filter needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1239 +#: cps/admin.py:1236 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1246 +#: cps/admin.py:1243 msgid "LDAP CACertificate, Certificate or Key Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1277 cps/templates/admin.html:53 +#: cps/admin.py:1274 cps/templates/admin.html:53 msgid "Add New User" msgstr "" -#: cps/admin.py:1286 cps/templates/admin.html:100 +#: cps/admin.py:1283 cps/templates/admin.html:100 msgid "Edit Email Server Settings" msgstr "ប្តូរការកំណត់ SMTP" -#: cps/admin.py:1305 +#: cps/admin.py:1302 msgid "Success! Gmail Account Verified." msgstr "" -#: cps/admin.py:1325 cps/admin.py:1328 cps/admin.py:1713 cps/admin.py:1857 -#: cps/admin.py:1955 cps/admin.py:2076 cps/editbooks.py:243 -#: cps/editbooks.py:319 cps/editbooks.py:1242 cps/shelf.py:90 cps/shelf.py:150 +#: cps/admin.py:1322 cps/admin.py:1325 cps/admin.py:1710 cps/admin.py:1855 +#: cps/admin.py:1953 cps/admin.py:2074 cps/editbooks.py:226 +#: cps/editbooks.py:303 cps/editbooks.py:1242 cps/shelf.py:90 cps/shelf.py:150 #: cps/shelf.py:193 cps/shelf.py:243 cps/shelf.py:280 cps/shelf.py:354 -#: cps/shelf.py:468 cps/tasks/convert.py:150 cps/web.py:1520 +#: cps/shelf.py:468 cps/tasks/convert.py:153 cps/web.py:1520 #, python-format msgid "Oops! Database Error: %(error)s." msgstr "" -#: cps/admin.py:1335 +#: cps/admin.py:1332 #, python-format msgid "Test e-mail queued for sending to %(email)s, please check Tasks for result" msgstr "" -#: cps/admin.py:1338 +#: cps/admin.py:1335 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "" -#: cps/admin.py:1340 +#: cps/admin.py:1337 msgid "Please configure your e-mail address first..." msgstr "" -#: cps/admin.py:1342 +#: cps/admin.py:1339 msgid "Email Server Settings updated" msgstr "" -#: cps/admin.py:1365 cps/templates/admin.html:195 +#: cps/admin.py:1362 cps/templates/admin.html:195 msgid "Edit Scheduled Tasks Settings" msgstr "" -#: cps/admin.py:1377 +#: cps/admin.py:1374 msgid "Invalid start time for task specified" msgstr "" -#: cps/admin.py:1382 +#: cps/admin.py:1379 msgid "Invalid duration for task specified" msgstr "" -#: cps/admin.py:1392 +#: cps/admin.py:1389 msgid "Scheduled tasks settings updated" msgstr "" -#: cps/admin.py:1402 cps/admin.py:1451 cps/admin.py:2072 cps/web.py:1316 +#: cps/admin.py:1399 cps/admin.py:1448 cps/admin.py:2070 cps/web.py:1316 msgid "Oops! An unknown error occurred. Please try again later." msgstr "" -#: cps/admin.py:1406 +#: cps/admin.py:1403 msgid "Settings DB is not Writeable" msgstr "" -#: cps/admin.py:1436 cps/admin.py:2064 +#: cps/admin.py:1433 cps/admin.py:2062 #, python-format msgid "Edit User %(nick)s" msgstr "កែប្រែអ្នកប្រើប្រាស់ %(nick)s" -#: cps/admin.py:1448 +#: cps/admin.py:1445 #, python-format msgid "Success! Password for user %(user)s reset" msgstr "" -#: cps/admin.py:1454 +#: cps/admin.py:1451 #, fuzzy msgid "Oops! Please configure the SMTP mail settings." msgstr "សូមកំណត់អ៊ីមែល SMTP ជាមុនសិន" -#: cps/admin.py:1465 +#: cps/admin.py:1462 msgid "Logfile viewer" msgstr "" -#: cps/admin.py:1531 +#: cps/admin.py:1528 msgid "Requesting update package" msgstr "កំពុងស្នើសុំឯកសារបច្ចុប្បន្នភាព" -#: cps/admin.py:1532 +#: cps/admin.py:1529 msgid "Downloading update package" msgstr "កំពុងទាញយកឯកសារបច្ចុប្បន្នភាព" -#: cps/admin.py:1533 +#: cps/admin.py:1530 msgid "Unzipping update package" msgstr "កំពុងពន្លាឯកសារបច្ចុប្បន្នភាព" -#: cps/admin.py:1534 +#: cps/admin.py:1531 msgid "Replacing files" msgstr "" -#: cps/admin.py:1535 +#: cps/admin.py:1532 msgid "Database connections are closed" msgstr "ទំនាក់ទំនងទៅមូលដ្ឋានទិន្នន័យត្រូវបានផ្តាច់" -#: cps/admin.py:1536 +#: cps/admin.py:1533 msgid "Stopping server" msgstr "" -#: cps/admin.py:1537 +#: cps/admin.py:1534 msgid "Update finished, please press okay and reload page" msgstr "ការធ្វើបច្ចុប្បន្នភាពបានបញ្ចប់ សូមចុច okay រួចបើកទំព័រជាថ្មី" -#: cps/admin.py:1538 cps/admin.py:1539 cps/admin.py:1540 cps/admin.py:1541 -#: cps/admin.py:1542 cps/admin.py:1543 +#: cps/admin.py:1535 cps/admin.py:1536 cps/admin.py:1537 cps/admin.py:1538 +#: cps/admin.py:1539 cps/admin.py:1540 msgid "Update failed:" msgstr "" -#: cps/admin.py:1538 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 +#: cps/admin.py:1535 cps/updater.py:391 cps/updater.py:626 cps/updater.py:628 msgid "HTTP Error" msgstr "" -#: cps/admin.py:1539 cps/updater.py:391 cps/updater.py:628 +#: cps/admin.py:1536 cps/updater.py:393 cps/updater.py:630 msgid "Connection error" msgstr "" -#: cps/admin.py:1540 cps/updater.py:393 cps/updater.py:630 +#: cps/admin.py:1537 cps/updater.py:395 cps/updater.py:632 msgid "Timeout while establishing connection" msgstr "" -#: cps/admin.py:1541 cps/updater.py:395 cps/updater.py:632 +#: cps/admin.py:1538 cps/updater.py:397 cps/updater.py:634 msgid "General error" msgstr "" -#: cps/admin.py:1542 +#: cps/admin.py:1539 msgid "Update file could not be saved in temp dir" msgstr "" -#: cps/admin.py:1543 +#: cps/admin.py:1540 msgid "Files could not be replaced during update" msgstr "" -#: cps/admin.py:1567 +#: cps/admin.py:1564 msgid "Failed to extract at least One LDAP User" msgstr "" -#: cps/admin.py:1612 +#: cps/admin.py:1609 msgid "Failed to Create at Least One LDAP User" msgstr "" -#: cps/admin.py:1625 +#: cps/admin.py:1622 #, python-format msgid "Error: %(ldaperror)s" msgstr "" -#: cps/admin.py:1629 +#: cps/admin.py:1626 msgid "Error: No user returned in response of LDAP server" msgstr "" -#: cps/admin.py:1665 +#: cps/admin.py:1662 msgid "At Least One LDAP User Not Found in Database" msgstr "" -#: cps/admin.py:1667 +#: cps/admin.py:1664 msgid "{} User Successfully Imported" msgstr "" -#: cps/admin.py:1725 +#: cps/admin.py:1722 msgid "DB Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1745 +#: cps/admin.py:1742 msgid "DB is not Writeable" msgstr "" -#: cps/admin.py:1761 +#: cps/admin.py:1758 msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1765 +#: cps/admin.py:1762 msgid "Certfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1842 +#: cps/admin.py:1840 msgid "Password length has to be between 1 and 40" msgstr "" -#: cps/admin.py:1896 +#: cps/admin.py:1894 #, fuzzy msgid "Database Settings updated" msgstr "ទំនាក់ទំនងទៅមូលដ្ឋានទិន្នន័យត្រូវបានផ្តាច់" -#: cps/admin.py:1904 +#: cps/admin.py:1902 #, fuzzy msgid "Database Configuration" msgstr "ការកំណត់មុខងារ" -#: cps/admin.py:1919 cps/web.py:1290 +#: cps/admin.py:1917 cps/web.py:1290 msgid "Oops! Please complete all fields." msgstr "សូមបំពេញចន្លោះទាំងអស់!" -#: cps/admin.py:1928 +#: cps/admin.py:1926 msgid "E-mail is not from valid domain" msgstr "" -#: cps/admin.py:1934 +#: cps/admin.py:1932 msgid "Add new user" msgstr "បន្ថែមអ្នកប្រើប្រាស់ថ្មី" -#: cps/admin.py:1945 +#: cps/admin.py:1943 #, python-format msgid "User '%(user)s' created" msgstr "បានបង្កើតអ្នកប្រើប្រាស់ ‘%(user)s’" -#: cps/admin.py:1951 +#: cps/admin.py:1949 msgid "Oops! An account already exists for this Email. or name." msgstr "" -#: cps/admin.py:1981 +#: cps/admin.py:1979 #, python-format msgid "User '%(nick)s' deleted" msgstr "អ្នកប្រើប្រាស់ ‘%(nick)s’ ត្រូវបានលុប" -#: cps/admin.py:1984 +#: cps/admin.py:1982 msgid "Can't delete Guest User" msgstr "" -#: cps/admin.py:1987 +#: cps/admin.py:1985 msgid "No admin user remaining, can't delete user" msgstr "" -#: cps/admin.py:2042 cps/web.py:1469 +#: cps/admin.py:2040 cps/web.py:1469 msgid "Email can't be empty and has to be a valid Email" msgstr "" -#: cps/admin.py:2068 +#: cps/admin.py:2066 #, python-format msgid "User '%(nick)s' updated" msgstr "អ្នកប្រើប្រាស់ ‘%(nick)s’ ត្រូវបានកែប្រែ" @@ -527,12 +527,12 @@ msgstr "មិនបានតម្លើង" msgid "Execution permissions missing" msgstr "" -#: cps/db.py:756 cps/search.py:137 cps/web.py:747 +#: cps/db.py:768 cps/search.py:137 cps/web.py:747 #, python-format msgid "Custom Column No.%(column)d does not exist in calibre database" msgstr "" -#: cps/db.py:996 cps/templates/config_edit.html:203 +#: cps/db.py:1008 cps/templates/config_edit.html:203 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 #: cps/web.py:562 cps/web.py:596 cps/web.py:641 cps/web.py:681 cps/web.py:708 #: cps/web.py:989 cps/web.py:1019 cps/web.py:1064 cps/web.py:1092 @@ -540,100 +540,105 @@ msgstr "" msgid "None" msgstr "គ្មាន" -#: cps/editbooks.py:124 cps/editbooks.py:912 cps/web.py:529 cps/web.py:1561 -#: cps/web.py:1605 cps/web.py:1650 +#: cps/editbooks.py:108 cps/editbooks.py:929 cps/web.py:529 cps/web.py:1561 +#: cps/web.py:1606 cps/web.py:1651 msgid "Oops! Selected book is unavailable. File does not exist or is not accessible" msgstr "" -#: cps/editbooks.py:168 cps/editbooks.py:1263 +#: cps/editbooks.py:151 cps/editbooks.py:1263 msgid "User has no rights to upload cover" msgstr "" -#: cps/editbooks.py:188 cps/editbooks.py:733 +#: cps/editbooks.py:171 cps/editbooks.py:744 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "" -#: cps/editbooks.py:230 +#: cps/editbooks.py:213 msgid "Metadata successfully updated" msgstr "" -#: cps/editbooks.py:248 +#: cps/editbooks.py:231 msgid "Error editing book: {}" msgstr "" -#: cps/editbooks.py:305 +#: cps/editbooks.py:289 #, python-format msgid "File %(file)s uploaded" msgstr "" -#: cps/editbooks.py:333 +#: cps/editbooks.py:317 msgid "Source or destination format for conversion missing" msgstr "" -#: cps/editbooks.py:341 +#: cps/editbooks.py:325 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "" -#: cps/editbooks.py:345 +#: cps/editbooks.py:329 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "" -#: cps/editbooks.py:652 +#: cps/editbooks.py:662 msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgstr "" -#: cps/editbooks.py:707 cps/editbooks.py:1043 +#: cps/editbooks.py:718 cps/editbooks.py:1049 #, python-format msgid "'%(langname)s' is not a valid language" msgstr "" -#: cps/editbooks.py:745 cps/editbooks.py:1203 +#: cps/editbooks.py:756 cps/editbooks.py:1192 +#, fuzzy +msgid "File type isn't allowed to be uploaded to this server" +msgstr "ឯកសារប្រភេទ '%(ext)s' មិនត្រូវបានអនុញ្ញាតឲអាប់ឡូដទៅម៉ាស៊ីន server នេះទេ" + +#: cps/editbooks.py:762 cps/editbooks.py:1202 #, python-format msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgstr "ឯកសារប្រភេទ '%(ext)s' មិនត្រូវបានអនុញ្ញាតឲអាប់ឡូដទៅម៉ាស៊ីន server នេះទេ" -#: cps/editbooks.py:749 cps/editbooks.py:1207 +#: cps/editbooks.py:766 cps/editbooks.py:1206 msgid "File to be uploaded must have an extension" msgstr "ឯកសារដែលត្រូវអាប់ឡូដត្រូវមានកន្ទុយឯកសារ" -#: cps/editbooks.py:757 +#: cps/editbooks.py:774 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "" -#: cps/editbooks.py:777 +#: cps/editbooks.py:794 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "" -#: cps/editbooks.py:834 cps/editbooks.py:836 +#: cps/editbooks.py:851 cps/editbooks.py:853 msgid "Book Format Successfully Deleted" msgstr "" -#: cps/editbooks.py:843 cps/editbooks.py:845 +#: cps/editbooks.py:860 cps/editbooks.py:862 msgid "Book Successfully Deleted" msgstr "" -#: cps/editbooks.py:897 +#: cps/editbooks.py:914 msgid "You are missing permissions to delete books" msgstr "" -#: cps/editbooks.py:947 +#: cps/editbooks.py:964 msgid "edit metadata" msgstr "កែប្រែទិន្នន័យមេតា" -#: cps/editbooks.py:996 +#: cps/editbooks.py:1013 #, python-format msgid "%(seriesindex)s is not a valid number, skipping" msgstr "" -#: cps/editbooks.py:1198 +#: cps/editbooks.py:1197 msgid "User has no rights to upload additional file formats" msgstr "" -#: cps/editbooks.py:1219 +#: cps/editbooks.py:1218 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "មិនអាចបង្កើតទីតាំង %(path)s (ពុំមានសិទ្ធិ)។" @@ -652,7 +657,7 @@ msgstr "ឯកសារទម្រង់ %(ext)s ត្រូវបានបន msgid "Google Drive setup not completed, try to deactivate and activate Google Drive again" msgstr "" -#: cps/gdrive.py:95 +#: cps/gdrive.py:96 msgid "Callback domain is not verified, please follow steps to verify domain in google developer console" msgstr "Callback domain មិនទាន់បានផ្ទៀងផ្ទាត់ឲប្រើទេ សូមធ្វើតាមជំហានដើម្បីផ្ទៀងផ្ទាត់ domain នៅក្នុង Google Developer Console" @@ -661,7 +666,7 @@ msgstr "Callback domain មិនទាន់បានផ្ទៀងផ្ទ msgid "%(format)s format not found for book id: %(book)d" msgstr "" -#: cps/helper.py:93 cps/tasks/convert.py:86 +#: cps/helper.py:93 cps/tasks/convert.py:89 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "" @@ -735,122 +740,118 @@ msgstr "" msgid "Deleting book %(id)s from database only, book path in database not valid: %(path)s" msgstr "" -#: cps/helper.py:452 +#: cps/helper.py:465 #, fuzzy, python-format msgid "Rename author from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgstr "ប្តូរចំណងជើងពី “%(src)s” ទៅជា “%(dest)s” បរាជ័យដោយបញ្ហា: %(error)s" -#: cps/helper.py:524 cps/helper.py:533 +#: cps/helper.py:536 cps/helper.py:545 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "ឯកសារ %(file)s រកមិនឃើញក្នុង Google Drive" -#: cps/helper.py:567 +#: cps/helper.py:587 #, python-format msgid "Rename title from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgstr "ប្តូរចំណងជើងពី “%(src)s” ទៅជា “%(dest)s” បរាជ័យដោយបញ្ហា: %(error)s" -#: cps/helper.py:587 -msgid "Error in rename file in path: {}" -msgstr "" - -#: cps/helper.py:605 +#: cps/helper.py:625 #, python-format msgid "Book path %(path)s not found on Google Drive" msgstr "ទីតាំងសៀវភៅ %(path)s រកមិនឃើញក្នុង Google Drive" -#: cps/helper.py:670 +#: cps/helper.py:685 msgid "Found an existing account for this Email address" msgstr "" -#: cps/helper.py:678 +#: cps/helper.py:693 msgid "This username is already taken" msgstr "" -#: cps/helper.py:690 +#: cps/helper.py:705 msgid "Invalid Email address format" msgstr "" -#: cps/helper.py:710 +#: cps/helper.py:726 msgid "Password doesn't comply with password validation rules" msgstr "" -#: cps/helper.py:859 +#: cps/helper.py:873 msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "" -#: cps/helper.py:869 +#: cps/helper.py:883 msgid "Error Downloading Cover" msgstr "" -#: cps/helper.py:872 +#: cps/helper.py:886 msgid "Cover Format Error" msgstr "" -#: cps/helper.py:875 +#: cps/helper.py:889 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "" -#: cps/helper.py:885 +#: cps/helper.py:899 msgid "Failed to create path for cover" msgstr "" -#: cps/helper.py:901 +#: cps/helper.py:915 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "" -#: cps/helper.py:912 +#: cps/helper.py:926 msgid "Only jpg/jpeg/png/webp/bmp files are supported as coverfile" msgstr "" -#: cps/helper.py:924 +#: cps/helper.py:938 msgid "Invalid cover file content" msgstr "" -#: cps/helper.py:928 +#: cps/helper.py:942 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "" -#: cps/helper.py:999 cps/helper.py:1156 +#: cps/helper.py:1014 cps/helper.py:1171 #, fuzzy msgid "Cover" msgstr "ស្រាវជ្រាវ" -#: cps/helper.py:1016 +#: cps/helper.py:1031 msgid "UnRar binary file not found" msgstr "" -#: cps/helper.py:1027 +#: cps/helper.py:1042 msgid "Error executing UnRar" msgstr "" -#: cps/helper.py:1035 +#: cps/helper.py:1050 msgid "Could not find the specified directory" msgstr "" -#: cps/helper.py:1038 +#: cps/helper.py:1053 msgid "Please specify a directory, not a file" msgstr "" -#: cps/helper.py:1052 +#: cps/helper.py:1067 msgid "Calibre binaries not viable" msgstr "" -#: cps/helper.py:1061 +#: cps/helper.py:1076 #, python-format msgid "Missing calibre binaries: %(missing)s" msgstr "" -#: cps/helper.py:1063 +#: cps/helper.py:1078 #, python-format msgid "Missing executable permissions: %(missing)s" msgstr "" -#: cps/helper.py:1068 +#: cps/helper.py:1083 msgid "Error executing Calibre" msgstr "" -#: cps/helper.py:1158 cps/templates/admin.html:216 +#: cps/helper.py:1173 cps/templates/admin.html:216 msgid "Queue all books for metadata backup" msgstr "" @@ -896,35 +897,35 @@ msgstr "" msgid "Not Linked to %(oauth)s" msgstr "" -#: cps/oauth_bb.py:261 +#: cps/oauth_bb.py:262 msgid "Failed to log in with GitHub." msgstr "" -#: cps/oauth_bb.py:267 +#: cps/oauth_bb.py:268 msgid "Failed to fetch user info from GitHub." msgstr "" -#: cps/oauth_bb.py:279 +#: cps/oauth_bb.py:280 msgid "Failed to log in with Google." msgstr "" -#: cps/oauth_bb.py:285 +#: cps/oauth_bb.py:286 msgid "Failed to fetch user info from Google." msgstr "" -#: cps/oauth_bb.py:332 +#: cps/oauth_bb.py:334 msgid "GitHub Oauth error, please retry later." msgstr "" -#: cps/oauth_bb.py:335 +#: cps/oauth_bb.py:337 msgid "GitHub Oauth error: {}" msgstr "" -#: cps/oauth_bb.py:356 +#: cps/oauth_bb.py:358 msgid "Google Oauth error, please retry later." msgstr "" -#: cps/oauth_bb.py:359 +#: cps/oauth_bb.py:361 msgid "Google Oauth error: {}" msgstr "" @@ -1284,32 +1285,32 @@ msgstr "" msgid "Unknown Status" msgstr "" -#: cps/updater.py:431 cps/updater.py:442 cps/updater.py:543 cps/updater.py:558 +#: cps/updater.py:433 cps/updater.py:444 cps/updater.py:545 cps/updater.py:560 msgid "Unexpected data while reading update information" msgstr "" -#: cps/updater.py:438 cps/updater.py:550 +#: cps/updater.py:440 cps/updater.py:552 msgid "No update available. You already have the latest version installed" msgstr "" -#: cps/updater.py:456 +#: cps/updater.py:458 msgid "A new update is available. Click on the button below to update to the latest version." msgstr "" -#: cps/updater.py:474 +#: cps/updater.py:476 msgid "Could not fetch update information" msgstr "" -#: cps/updater.py:484 +#: cps/updater.py:486 msgid "Click on the button below to update to the latest stable version." msgstr "" -#: cps/updater.py:493 cps/updater.py:507 cps/updater.py:518 +#: cps/updater.py:495 cps/updater.py:509 cps/updater.py:520 #, python-format msgid "A new update is available. Click on the button below to update to version: %(version)s" msgstr "" -#: cps/updater.py:536 +#: cps/updater.py:538 msgid "No release information available" msgstr "" @@ -1483,50 +1484,50 @@ msgstr "ព័ត៌មានសង្ខេបបានកែប្រែ" msgid "Oops! An account already exists for this Email." msgstr "" -#: cps/services/gmail.py:58 +#: cps/services/gmail.py:59 msgid "Found no valid gmail.json file with OAuth information" msgstr "" -#: cps/tasks/convert.py:105 +#: cps/tasks/convert.py:108 #, fuzzy, python-format msgid "%(book)s send to E-Reader" msgstr "ផ្ញើទៅ Kindle" -#: cps/tasks/convert.py:167 +#: cps/tasks/convert.py:170 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "" -#: cps/tasks/convert.py:201 +#: cps/tasks/convert.py:204 #, python-format msgid "%(format)s format not found on disk" msgstr "" -#: cps/tasks/convert.py:205 +#: cps/tasks/convert.py:208 msgid "Ebook converter failed with unknown error" msgstr "" -#: cps/tasks/convert.py:224 +#: cps/tasks/convert.py:227 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "" -#: cps/tasks/convert.py:245 +#: cps/tasks/convert.py:248 #, python-format msgid "Converted file not found or more than one file in folder %(folder)s" msgstr "" -#: cps/tasks/convert.py:287 +#: cps/tasks/convert.py:291 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "Ebook-converter បានបរាជ័យ៖ %(error)s" -#: cps/tasks/convert.py:310 +#: cps/tasks/convert.py:314 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "" -#: cps/tasks/convert.py:315 +#: cps/tasks/convert.py:319 msgid "Convert" msgstr "" @@ -1538,7 +1539,7 @@ msgstr "" msgid "E-mail" msgstr "" -#: cps/tasks/metadata_backup.py:33 +#: cps/tasks/metadata_backup.py:34 #, fuzzy msgid "Backing up Metadata" msgstr "កែប្រែទិន្នន័យមេតា" @@ -1552,20 +1553,20 @@ msgstr "" msgid "Generated %(count)s cover thumbnails" msgstr "" -#: cps/tasks/thumbnail.py:230 cps/tasks/thumbnail.py:443 -#: cps/tasks/thumbnail.py:511 +#: cps/tasks/thumbnail.py:231 cps/tasks/thumbnail.py:444 +#: cps/tasks/thumbnail.py:512 msgid "Cover Thumbnails" msgstr "" -#: cps/tasks/thumbnail.py:289 +#: cps/tasks/thumbnail.py:290 msgid "Generated {0} series thumbnails" msgstr "" -#: cps/tasks/thumbnail.py:454 +#: cps/tasks/thumbnail.py:455 msgid "Clearing cover thumbnail cache" msgstr "" -#: cps/tasks/upload.py:38 cps/templates/admin.html:20 +#: cps/tasks/upload.py:39 cps/templates/admin.html:20 #: cps/templates/layout.html:81 cps/templates/user_table.html:145 msgid "Upload" msgstr "អាប់ឡូដ" @@ -1813,7 +1814,7 @@ msgstr "បាទ/ចាស" #: cps/templates/admin.html:259 cps/templates/admin.html:273 #: cps/templates/book_edit.html:214 cps/templates/book_table.html:127 -#: cps/templates/config_db.html:66 cps/templates/config_edit.html:423 +#: cps/templates/config_db.html:66 cps/templates/config_edit.html:427 #: cps/templates/config_view_edit.html:175 cps/templates/detail.html:342 #: cps/templates/modal_dialogs.html:64 cps/templates/modal_dialogs.html:99 #: cps/templates/modal_dialogs.html:117 cps/templates/modal_dialogs.html:135 @@ -1999,7 +2000,7 @@ msgid "Fetch Metadata" msgstr "មើលទិន្នន័យមេតា" #: cps/templates/book_edit.html:213 cps/templates/config_db.html:65 -#: cps/templates/config_edit.html:422 cps/templates/config_view_edit.html:174 +#: cps/templates/config_edit.html:426 cps/templates/config_view_edit.html:174 #: cps/templates/email_edit.html:65 cps/templates/schedule_edit.html:44 #: cps/templates/shelf_edit.html:25 cps/templates/shelf_order.html:41 #: cps/templates/user_edit.html:142 @@ -2469,46 +2470,50 @@ msgid "Configure Backend for Limiter" msgstr "" #: cps/templates/config_edit.html:376 -msgid "Options for Limiter" +msgid "Options for Limiter Backend" msgstr "" -#: cps/templates/config_edit.html:381 +#: cps/templates/config_edit.html:382 +msgid "Check if file extensions matches file content on upload" +msgstr "" + +#: cps/templates/config_edit.html:385 msgid "Session protection" msgstr "" -#: cps/templates/config_edit.html:383 +#: cps/templates/config_edit.html:387 msgid "Basic" msgstr "" -#: cps/templates/config_edit.html:384 +#: cps/templates/config_edit.html:388 msgid "Strong" msgstr "" -#: cps/templates/config_edit.html:389 +#: cps/templates/config_edit.html:393 msgid "User Password policy" msgstr "" -#: cps/templates/config_edit.html:393 +#: cps/templates/config_edit.html:397 msgid "Minimum password length" msgstr "" -#: cps/templates/config_edit.html:398 +#: cps/templates/config_edit.html:402 msgid "Enforce number" msgstr "" -#: cps/templates/config_edit.html:402 +#: cps/templates/config_edit.html:406 msgid "Enforce lowercase characters" msgstr "" -#: cps/templates/config_edit.html:406 +#: cps/templates/config_edit.html:410 msgid "Enforce uppercase characters" msgstr "" -#: cps/templates/config_edit.html:410 +#: cps/templates/config_edit.html:414 msgid "Enforce characters (needed For Chinese/Japanese/Korean Characters)" msgstr "" -#: cps/templates/config_edit.html:414 +#: cps/templates/config_edit.html:418 msgid "Enforce special characters" msgstr "" @@ -2640,6 +2645,10 @@ msgstr "" msgid "Mark As Read" msgstr "" +#: cps/templates/detail.html:254 +msgid "Mark Book as Read or Unread" +msgstr "" + #: cps/templates/detail.html:254 cps/templates/listenmp3.html:159 msgid "Read" msgstr "អាន" @@ -2652,10 +2661,15 @@ msgstr "" msgid "Add to archive" msgstr "" -#: cps/templates/detail.html:267 cps/templates/listenmp3.html:167 -msgid "Archived" +#: cps/templates/detail.html:267 +msgid "Mark Book as archived or not, to hide it in Calibre-Web and delete it from Kobo Reader" msgstr "" +#: cps/templates/detail.html:267 +#, fuzzy +msgid "Archive" +msgstr "ស្វែងរក" + #: cps/templates/detail.html:278 cps/templates/listenmp3.html:177 msgid "Description:" msgstr "ពិពណ៌នា" @@ -2931,6 +2945,10 @@ msgstr "ព័ត៌មានលម្អិតរបស់សៀវភៅ" msgid "Grid" msgstr "" +#: cps/templates/listenmp3.html:167 +msgid "Archived" +msgstr "" + #: cps/templates/login.html:18 msgid "Remember Me" msgstr "ចងចាំខ្ញុំ" diff --git a/cps/translations/ko/LC_MESSAGES/messages.mo b/cps/translations/ko/LC_MESSAGES/messages.mo index 2270f7b0..5f56c187 100644 Binary files a/cps/translations/ko/LC_MESSAGES/messages.mo and b/cps/translations/ko/LC_MESSAGES/messages.mo differ diff --git a/cps/translations/ko/LC_MESSAGES/messages.po b/cps/translations/ko/LC_MESSAGES/messages.po index 860616a3..99c2d7dd 100644 --- a/cps/translations/ko/LC_MESSAGES/messages.po +++ b/cps/translations/ko/LC_MESSAGES/messages.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Calibre-web\n" "Report-Msgid-Bugs-To: https://github.com/janeczku/calibre-web\n" -"POT-Creation-Date: 2024-06-09 12:26+0200\n" +"POT-Creation-Date: 2024-06-30 12:19+0200\n" "PO-Revision-Date: 2022-01-10 11:30+0900\n" "Last-Translator: 내맘대로의 EPUBGUIDE.NET \n" "Language: ko\n" @@ -15,7 +15,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.11.0\n" +"Generated-By: Babel 2.13.1\n" #: cps/about.py:84 msgid "Statistics" @@ -44,9 +44,9 @@ msgstr "알 수 없는 명령" msgid "Success! Books queued for Metadata Backup, please check Tasks for result" msgstr "%(email)s에 테스트를 위한 이메일을 보냄. 결과 확인 필요" -#: cps/admin.py:207 cps/editbooks.py:591 cps/editbooks.py:593 -#: cps/editbooks.py:631 cps/editbooks.py:648 cps/editbooks.py:1280 -#: cps/updater.py:613 cps/uploader.py:93 cps/uploader.py:102 +#: cps/admin.py:207 cps/editbooks.py:573 cps/editbooks.py:575 +#: cps/editbooks.py:615 cps/editbooks.py:658 cps/editbooks.py:1280 +#: cps/updater.py:615 cps/uploader.py:93 cps/uploader.py:102 msgid "Unknown" msgstr "알 수 없음" @@ -66,12 +66,12 @@ msgstr "UI 설정" msgid "Edit Users" msgstr "사용자 관리" -#: cps/admin.py:368 cps/opds.py:541 cps/templates/grid.html:14 +#: cps/admin.py:368 cps/opds.py:542 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "모두" -#: cps/admin.py:395 cps/admin.py:1417 +#: cps/admin.py:395 cps/admin.py:1414 msgid "User not found" msgstr "사용자를 찾을 수 없음" @@ -88,7 +88,7 @@ msgstr "모두 보기" msgid "Malformed request" msgstr "잘못된 요청" -#: cps/admin.py:471 cps/admin.py:2048 +#: cps/admin.py:471 cps/admin.py:2046 msgid "Guest Name can't be changed" msgstr "Guest 이름은 수정할 수 없음" @@ -96,7 +96,7 @@ msgstr "Guest 이름은 수정할 수 없음" msgid "Guest can't have this role" msgstr "Guest는 이 권한을 사용할 수 없음" -#: cps/admin.py:495 cps/admin.py:2002 +#: cps/admin.py:495 cps/admin.py:2000 msgid "No admin user remaining, can't remove admin role" msgstr "관리자 계정이 하나 뿐일 때는 관리자를 삭제할 수 없음" @@ -128,7 +128,7 @@ msgstr "유효한 로케일이 아님" msgid "No Valid Book Language Given" msgstr "제공된 책의 언어가 유효하지 않음" -#: cps/admin.py:535 cps/editbooks.py:457 +#: cps/admin.py:535 cps/editbooks.py:440 msgid "Parameter not found" msgstr "매개변수를 찾을 수 없음" @@ -140,7 +140,7 @@ msgstr "잘못된 읽기 열" msgid "Invalid Restricted Column" msgstr "잘못된 제한된 열" -#: cps/admin.py:598 cps/admin.py:1873 +#: cps/admin.py:598 cps/admin.py:1871 msgid "Calibre-Web configuration updated" msgstr "Calibre-Web 설정이 업데이트 됨" @@ -220,292 +220,292 @@ msgstr "태그를 찾을 수 없음" msgid "Invalid Action" msgstr "잘못된 액션" -#: cps/admin.py:1123 +#: cps/admin.py:1120 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "client_secrets.json이 Web 응용프로그램에 대해 설정되지 않음" -#: cps/admin.py:1168 +#: cps/admin.py:1165 msgid "Logfile Location is not Valid, Please Enter Correct Path" msgstr "로그 파일 위치가 오류. 올바른 경로 입력 필요" -#: cps/admin.py:1174 +#: cps/admin.py:1171 msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgstr "액세스 로그 파일 위치가 올바르지 않음. 올바른 경로 입력 필요" -#: cps/admin.py:1208 +#: cps/admin.py:1205 msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgstr "LDAP 공급자, 포트, DN 및 사용자 개체 식별자를 입력" -#: cps/admin.py:1214 +#: cps/admin.py:1211 msgid "Please Enter a LDAP Service Account and Password" msgstr "LDAP 서비스 계정 및 비밀번호를 입력하십시오" -#: cps/admin.py:1217 +#: cps/admin.py:1214 msgid "Please Enter a LDAP Service Account" msgstr "LDAP 서비스 계정을 입력하십시오" -#: cps/admin.py:1222 +#: cps/admin.py:1219 #, python-format msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgstr "LDAP 그룹 개체 필터에는 하나의 \"%s\" 형식 식별자가 필요함" -#: cps/admin.py:1224 +#: cps/admin.py:1221 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "LDAP 그룹 개체 필터에 일치하지 않는 괄호가 있음" -#: cps/admin.py:1228 +#: cps/admin.py:1225 #, python-format msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgstr "LDAP 사용자 개체 필터에는 하나의 \"%s\" 형식 식별자 필요" -#: cps/admin.py:1230 +#: cps/admin.py:1227 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "LDAP 사용자 개체 필터에 일치하지 않는 괄호가 있음" -#: cps/admin.py:1237 +#: cps/admin.py:1234 #, python-format msgid "LDAP Member User Filter needs to Have One \"%s\" Format Identifier" msgstr "LDAP 구성원 사용자 필터에는 하나의 \"%s\" 형식 식별자 필요" -#: cps/admin.py:1239 +#: cps/admin.py:1236 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "LDAP 구성원 사용자 필터에 일치하지 않는 괄호가 있음" -#: cps/admin.py:1246 +#: cps/admin.py:1243 msgid "LDAP CACertificate, Certificate or Key Location is not Valid, Please Enter Correct Path" msgstr "유요하지 않은 LDAP CACertificate, 인증서 또는 키 위치. 올바른 경로를 입력 필요" -#: cps/admin.py:1277 cps/templates/admin.html:53 +#: cps/admin.py:1274 cps/templates/admin.html:53 msgid "Add New User" msgstr "사용자 추가" -#: cps/admin.py:1286 cps/templates/admin.html:100 +#: cps/admin.py:1283 cps/templates/admin.html:100 msgid "Edit Email Server Settings" msgstr "이메일 서버 설정 편집" -#: cps/admin.py:1305 +#: cps/admin.py:1302 msgid "Success! Gmail Account Verified." msgstr "Gmail 계정 인증에 성공하였습니다." -#: cps/admin.py:1325 cps/admin.py:1328 cps/admin.py:1713 cps/admin.py:1857 -#: cps/admin.py:1955 cps/admin.py:2076 cps/editbooks.py:243 -#: cps/editbooks.py:319 cps/editbooks.py:1242 cps/shelf.py:90 cps/shelf.py:150 +#: cps/admin.py:1322 cps/admin.py:1325 cps/admin.py:1710 cps/admin.py:1855 +#: cps/admin.py:1953 cps/admin.py:2074 cps/editbooks.py:226 +#: cps/editbooks.py:303 cps/editbooks.py:1242 cps/shelf.py:90 cps/shelf.py:150 #: cps/shelf.py:193 cps/shelf.py:243 cps/shelf.py:280 cps/shelf.py:354 -#: cps/shelf.py:468 cps/tasks/convert.py:150 cps/web.py:1520 +#: cps/shelf.py:468 cps/tasks/convert.py:153 cps/web.py:1520 #, python-format msgid "Oops! Database Error: %(error)s." msgstr "데이터베이스 오류: %(error)s." -#: cps/admin.py:1335 +#: cps/admin.py:1332 #, python-format msgid "Test e-mail queued for sending to %(email)s, please check Tasks for result" msgstr "%(email)s에 테스트를 위한 이메일을 보냄. 결과 확인 필요" -#: cps/admin.py:1338 +#: cps/admin.py:1335 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "테스트 이메일을 보내는 동안 오류가 발생했습니다: %(res)s" -#: cps/admin.py:1340 +#: cps/admin.py:1337 msgid "Please configure your e-mail address first..." msgstr "먼저 이메일 주소를 구성하십시오..." -#: cps/admin.py:1342 +#: cps/admin.py:1339 msgid "Email Server Settings updated" msgstr "이메일 서버 설정 업데이트됨" -#: cps/admin.py:1365 cps/templates/admin.html:195 +#: cps/admin.py:1362 cps/templates/admin.html:195 msgid "Edit Scheduled Tasks Settings" msgstr "예약 작업 설정 편집" -#: cps/admin.py:1377 +#: cps/admin.py:1374 msgid "Invalid start time for task specified" msgstr "지정된 작업의 시작 시간이 잘못 설정되었습니다." -#: cps/admin.py:1382 +#: cps/admin.py:1379 msgid "Invalid duration for task specified" msgstr "지정된 작업의 기간이 잘못 설정되었습니다." -#: cps/admin.py:1392 +#: cps/admin.py:1389 msgid "Scheduled tasks settings updated" msgstr "예약된 작업 설정을 업데이트 하였습니다." -#: cps/admin.py:1402 cps/admin.py:1451 cps/admin.py:2072 cps/web.py:1316 +#: cps/admin.py:1399 cps/admin.py:1448 cps/admin.py:2070 cps/web.py:1316 msgid "Oops! An unknown error occurred. Please try again later." msgstr "알 수없는 오류가 발생했습니다. 나중에 다시 시도 해주십시오." -#: cps/admin.py:1406 +#: cps/admin.py:1403 msgid "Settings DB is not Writeable" msgstr "저장할 수 없는 설정 DB입니다." -#: cps/admin.py:1436 cps/admin.py:2064 +#: cps/admin.py:1433 cps/admin.py:2062 #, python-format msgid "Edit User %(nick)s" msgstr "사용자 %(nick)s 편집" -#: cps/admin.py:1448 +#: cps/admin.py:1445 #, fuzzy, python-format msgid "Success! Password for user %(user)s reset" msgstr "사용자 %(user)s의 비밀번호 재설정" -#: cps/admin.py:1454 +#: cps/admin.py:1451 #, fuzzy msgid "Oops! Please configure the SMTP mail settings." msgstr "먼저 SMTP 메일 설정을 구성하십시오..." -#: cps/admin.py:1465 +#: cps/admin.py:1462 msgid "Logfile viewer" msgstr "로그 파일 뷰어" -#: cps/admin.py:1531 +#: cps/admin.py:1528 msgid "Requesting update package" msgstr "업데이트 패키지 요청" -#: cps/admin.py:1532 +#: cps/admin.py:1529 msgid "Downloading update package" msgstr "업데이트 패키지 다운로드" -#: cps/admin.py:1533 +#: cps/admin.py:1530 msgid "Unzipping update package" msgstr "업데이트 패키지 압축 풀기" -#: cps/admin.py:1534 +#: cps/admin.py:1531 msgid "Replacing files" msgstr "파일 교체" -#: cps/admin.py:1535 +#: cps/admin.py:1532 msgid "Database connections are closed" msgstr "데이터베이스 연결이 닫힙니다" -#: cps/admin.py:1536 +#: cps/admin.py:1533 msgid "Stopping server" msgstr "서버 중지" -#: cps/admin.py:1537 +#: cps/admin.py:1534 msgid "Update finished, please press okay and reload page" msgstr "업데이트가 완료되었습니다. 확인을 누르고 페이지를 새로고침하세요" -#: cps/admin.py:1538 cps/admin.py:1539 cps/admin.py:1540 cps/admin.py:1541 -#: cps/admin.py:1542 cps/admin.py:1543 +#: cps/admin.py:1535 cps/admin.py:1536 cps/admin.py:1537 cps/admin.py:1538 +#: cps/admin.py:1539 cps/admin.py:1540 msgid "Update failed:" msgstr "업데이트 실패:" -#: cps/admin.py:1538 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 +#: cps/admin.py:1535 cps/updater.py:391 cps/updater.py:626 cps/updater.py:628 msgid "HTTP Error" msgstr "HTTP 오류" -#: cps/admin.py:1539 cps/updater.py:391 cps/updater.py:628 +#: cps/admin.py:1536 cps/updater.py:393 cps/updater.py:630 msgid "Connection error" msgstr "연결 오류" -#: cps/admin.py:1540 cps/updater.py:393 cps/updater.py:630 +#: cps/admin.py:1537 cps/updater.py:395 cps/updater.py:632 msgid "Timeout while establishing connection" msgstr "연결 설정 중 시간 초과" -#: cps/admin.py:1541 cps/updater.py:395 cps/updater.py:632 +#: cps/admin.py:1538 cps/updater.py:397 cps/updater.py:634 msgid "General error" msgstr "일반 오류" -#: cps/admin.py:1542 +#: cps/admin.py:1539 msgid "Update file could not be saved in temp dir" msgstr "임시 디렉토리에 업데이트 파일을 저장할 수 없습니다" -#: cps/admin.py:1543 +#: cps/admin.py:1540 msgid "Files could not be replaced during update" msgstr "업데이트하는 동안 파일을 교체할 수 없습니다" -#: cps/admin.py:1567 +#: cps/admin.py:1564 msgid "Failed to extract at least One LDAP User" msgstr "하나 이상의 LDAP 사용자를 추출하지 못했습니다" -#: cps/admin.py:1612 +#: cps/admin.py:1609 msgid "Failed to Create at Least One LDAP User" msgstr "하나 이상의 LDAP 사용자를 생성하지 못했습니다" -#: cps/admin.py:1625 +#: cps/admin.py:1622 #, python-format msgid "Error: %(ldaperror)s" msgstr "오류: %(ldaperror)s" -#: cps/admin.py:1629 +#: cps/admin.py:1626 msgid "Error: No user returned in response of LDAP server" msgstr "오류: LDAP 서버의 응답으로 사용자가 반환되지 않았습니다" -#: cps/admin.py:1665 +#: cps/admin.py:1662 msgid "At Least One LDAP User Not Found in Database" msgstr "데이터베이스에서 하나 이상의 LDAP 사용자를 찾을 수 없습니다" -#: cps/admin.py:1667 +#: cps/admin.py:1664 msgid "{} User Successfully Imported" msgstr "{} 사용자 가져오기 성공" -#: cps/admin.py:1725 +#: cps/admin.py:1722 msgid "DB Location is not Valid, Please Enter Correct Path" msgstr "올바르지 않은 DB 위치. 올바른 경로 입력 필요" -#: cps/admin.py:1745 +#: cps/admin.py:1742 msgid "DB is not Writeable" msgstr "쓰기 권한이 없는 DB" -#: cps/admin.py:1761 +#: cps/admin.py:1758 msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgstr "올바르지 않은 키 파일 위치. 올바른 경로 입력 필요" -#: cps/admin.py:1765 +#: cps/admin.py:1762 msgid "Certfile Location is not Valid, Please Enter Correct Path" msgstr "올바르지 않은 인증서 파일 위치. 올바른 경로 입력 필요" -#: cps/admin.py:1842 +#: cps/admin.py:1840 msgid "Password length has to be between 1 and 40" msgstr "비밀번호 길이는 1에서 40 사이여야 합니다." -#: cps/admin.py:1896 +#: cps/admin.py:1894 msgid "Database Settings updated" msgstr "데이터베이스 설정이 업데이트 되었습니다" -#: cps/admin.py:1904 +#: cps/admin.py:1902 msgid "Database Configuration" msgstr "데이터베이스 구성" -#: cps/admin.py:1919 cps/web.py:1290 +#: cps/admin.py:1917 cps/web.py:1290 msgid "Oops! Please complete all fields." msgstr "모든 필드를 채워주십시오!" -#: cps/admin.py:1928 +#: cps/admin.py:1926 msgid "E-mail is not from valid domain" msgstr "유효한 도메인에서 온 이메일이 아니" -#: cps/admin.py:1934 +#: cps/admin.py:1932 msgid "Add new user" msgstr "새 사용자 추가" -#: cps/admin.py:1945 +#: cps/admin.py:1943 #, python-format msgid "User '%(user)s' created" msgstr "사용자 '%(user)s'이(가) 생성됨" -#: cps/admin.py:1951 +#: cps/admin.py:1949 msgid "Oops! An account already exists for this Email. or name." msgstr "동일한 이메일 주소 또는 이름이 이미 등록되어 있습니다." -#: cps/admin.py:1981 +#: cps/admin.py:1979 #, python-format msgid "User '%(nick)s' deleted" msgstr "사용자 '%(nick)s'이(가) 삭제됨" -#: cps/admin.py:1984 +#: cps/admin.py:1982 msgid "Can't delete Guest User" msgstr "게스트 사용자는 삭제할 수 없습니다" -#: cps/admin.py:1987 +#: cps/admin.py:1985 msgid "No admin user remaining, can't delete user" msgstr "관리자 계정이 하나 뿐일 때는 관리자 권한을 삭제할 수 없음" -#: cps/admin.py:2042 cps/web.py:1469 +#: cps/admin.py:2040 cps/web.py:1469 msgid "Email can't be empty and has to be a valid Email" msgstr "이메일은 반드시 입력해야 하며 유효한 이메일이어야 합니다." -#: cps/admin.py:2068 +#: cps/admin.py:2066 #, python-format msgid "User '%(nick)s' updated" msgstr "사용자 '%(nick)s'가 업데이트 됨" @@ -518,12 +518,12 @@ msgstr "설치되지 않음" msgid "Execution permissions missing" msgstr "실행 권한 누락" -#: cps/db.py:756 cps/search.py:137 cps/web.py:747 +#: cps/db.py:768 cps/search.py:137 cps/web.py:747 #, fuzzy, python-format msgid "Custom Column No.%(column)d does not exist in calibre database" msgstr "사용자 정의 열 번호 %(column)d이(가) calibre 데이터베이스에 없습니다" -#: cps/db.py:996 cps/templates/config_edit.html:203 +#: cps/db.py:1008 cps/templates/config_edit.html:203 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 #: cps/web.py:562 cps/web.py:596 cps/web.py:641 cps/web.py:681 cps/web.py:708 #: cps/web.py:989 cps/web.py:1019 cps/web.py:1064 cps/web.py:1092 @@ -531,100 +531,105 @@ msgstr "사용자 정의 열 번호 %(column)d이(가) calibre 데이터베이 msgid "None" msgstr "None" -#: cps/editbooks.py:124 cps/editbooks.py:912 cps/web.py:529 cps/web.py:1561 -#: cps/web.py:1605 cps/web.py:1650 +#: cps/editbooks.py:108 cps/editbooks.py:929 cps/web.py:529 cps/web.py:1561 +#: cps/web.py:1606 cps/web.py:1651 msgid "Oops! Selected book is unavailable. File does not exist or is not accessible" msgstr "선택한 책 제목을 사용할 수 없습니다. 파일이 존재하지 않거나 액세스할 수 없습니다" -#: cps/editbooks.py:168 cps/editbooks.py:1263 +#: cps/editbooks.py:151 cps/editbooks.py:1263 msgid "User has no rights to upload cover" msgstr "표지를 업로드 할 수 있는 권한이 없는 사용자입니다." -#: cps/editbooks.py:188 cps/editbooks.py:733 +#: cps/editbooks.py:171 cps/editbooks.py:744 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "식별자는 대소문자를 구분하지 않으며 이전 식별자를 덮어씁니다" -#: cps/editbooks.py:230 +#: cps/editbooks.py:213 msgid "Metadata successfully updated" msgstr "메타데이터가 성공적으로 업데이트되었습니다" -#: cps/editbooks.py:248 +#: cps/editbooks.py:231 msgid "Error editing book: {}" msgstr "책 편집 중 오류 발생: {}" -#: cps/editbooks.py:305 +#: cps/editbooks.py:289 #, python-format msgid "File %(file)s uploaded" msgstr "파일 %(file)s 업로드됨" -#: cps/editbooks.py:333 +#: cps/editbooks.py:317 msgid "Source or destination format for conversion missing" msgstr "변환을 위한 소스 또는 대상 형식이 누락되었습니다" -#: cps/editbooks.py:341 +#: cps/editbooks.py:325 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "책이 %(book_format)s(으)로 변환하기 위해 대기 중입니다" -#: cps/editbooks.py:345 +#: cps/editbooks.py:329 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "이 책을 변환하는 동안 오류가 발생했습니다: %(res)s" -#: cps/editbooks.py:652 +#: cps/editbooks.py:662 msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgstr "업로드한 책이 라이브러리에 있을 수 있음. 새로 업로드하기 전에 확인 필요: " -#: cps/editbooks.py:707 cps/editbooks.py:1043 +#: cps/editbooks.py:718 cps/editbooks.py:1049 #, python-format msgid "'%(langname)s' is not a valid language" msgstr "'%(langname)s'은(는) 유효한 언어가 아닙니다" -#: cps/editbooks.py:745 cps/editbooks.py:1203 +#: cps/editbooks.py:756 cps/editbooks.py:1192 +#, fuzzy +msgid "File type isn't allowed to be uploaded to this server" +msgstr "파일 확장자 '%(ext)s'은(는) 이 서버에 업로드할 수 없습니다" + +#: cps/editbooks.py:762 cps/editbooks.py:1202 #, python-format msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgstr "파일 확장자 '%(ext)s'은(는) 이 서버에 업로드할 수 없습니다" -#: cps/editbooks.py:749 cps/editbooks.py:1207 +#: cps/editbooks.py:766 cps/editbooks.py:1206 msgid "File to be uploaded must have an extension" msgstr "업로드할 파일에는 확장자가 있어야 합니다" -#: cps/editbooks.py:757 +#: cps/editbooks.py:774 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "파일 %(filename)s을(를) 임시 디렉토리에 저장할 수 없습니다" -#: cps/editbooks.py:777 +#: cps/editbooks.py:794 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "표지 파일%(file)s를 이동하지 못했습니다.:%(error)s" -#: cps/editbooks.py:834 cps/editbooks.py:836 +#: cps/editbooks.py:851 cps/editbooks.py:853 msgid "Book Format Successfully Deleted" msgstr "책 형식이 성공적으로 삭제되었습니다" -#: cps/editbooks.py:843 cps/editbooks.py:845 +#: cps/editbooks.py:860 cps/editbooks.py:862 msgid "Book Successfully Deleted" msgstr "책이 성공적으로 삭제되었습니다" -#: cps/editbooks.py:897 +#: cps/editbooks.py:914 msgid "You are missing permissions to delete books" msgstr "책을 삭제할 수 있는 권한이 없습니다." -#: cps/editbooks.py:947 +#: cps/editbooks.py:964 msgid "edit metadata" msgstr "메타데이터 편집" -#: cps/editbooks.py:996 +#: cps/editbooks.py:1013 #, python-format msgid "%(seriesindex)s is not a valid number, skipping" msgstr "%(seriesindex)s은(는) 유효한 숫자가 아닙니다. 건너뜁니다" -#: cps/editbooks.py:1198 +#: cps/editbooks.py:1197 msgid "User has no rights to upload additional file formats" msgstr "추가 파일 유형을 업로드 할 권한이 없는 사용자입니다." -#: cps/editbooks.py:1219 +#: cps/editbooks.py:1218 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "%(path)s 경로를 생성하지 못했습니다(권한이 없음)." @@ -643,7 +648,7 @@ msgstr "파일 형식 %(ext)s이(가) %(book)s에 추가되었습니다" msgid "Google Drive setup not completed, try to deactivate and activate Google Drive again" msgstr "Google 드라이브 설정이 완료되지 않았습니다. Google 드라이브를 비활성화했다가 다시 활성화해 보세요" -#: cps/gdrive.py:95 +#: cps/gdrive.py:96 msgid "Callback domain is not verified, please follow steps to verify domain in google developer console" msgstr "콜백 도메인이 확인되지 않았습니다. 단계에 따라 Google 개발자 콘솔에서 도메인을 확인하세요" @@ -652,7 +657,7 @@ msgstr "콜백 도메인이 확인되지 않았습니다. 단계에 따라 Googl msgid "%(format)s format not found for book id: %(book)d" msgstr "책 ID에 대한 %(format)s 형식을 찾을 수 없음: %(book)d" -#: cps/helper.py:93 cps/tasks/convert.py:86 +#: cps/helper.py:93 cps/tasks/convert.py:89 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "%(format)s을(를) Google 드라이브에서 찾을 수 없음: %(fn)s" @@ -729,126 +734,122 @@ msgstr "%(id)s 도서 삭제 실패: %(message)s" msgid "Deleting book %(id)s from database only, book path in database not valid: %(path)s" msgstr "데이터베이스에서만 책 %(id)s 을(를) 삭제 중, 데이터베이스의 책 경로가 유효하지 않음: %(path)s" -#: cps/helper.py:452 +#: cps/helper.py:465 #, fuzzy, python-format msgid "Rename author from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgstr "제목 이름을 '%(src)s'에서 '%(dest)s'(으)로 변경하지 못했습니다. 오류: %(error)s" -#: cps/helper.py:524 cps/helper.py:533 +#: cps/helper.py:536 cps/helper.py:545 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "Google 드라이브에서 %(file)s 파일을 찾을 수 없습니다" -#: cps/helper.py:567 +#: cps/helper.py:587 #, python-format msgid "Rename title from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgstr "제목 이름을 '%(src)s'에서 '%(dest)s'(으)로 변경하지 못했습니다. 오류: %(error)s" -#: cps/helper.py:587 -msgid "Error in rename file in path: {}" -msgstr "경로에서 파일 이름을 바꾸는 중 오류가 발생: {}" - -#: cps/helper.py:605 +#: cps/helper.py:625 #, python-format msgid "Book path %(path)s not found on Google Drive" msgstr "Google 드라이브에서 책 경로 %(path)s을(를) 찾을 수 없습니다" -#: cps/helper.py:670 +#: cps/helper.py:685 msgid "Found an existing account for this Email address" msgstr "다른 계정에서 사용하고 있는 이메일 주소입니다." -#: cps/helper.py:678 +#: cps/helper.py:693 msgid "This username is already taken" msgstr "등록되어 있는 username입니다" -#: cps/helper.py:690 +#: cps/helper.py:705 #, fuzzy msgid "Invalid Email address format" msgstr "이메일 주소 형식이 잘못되었습니다" -#: cps/helper.py:710 +#: cps/helper.py:726 msgid "Password doesn't comply with password validation rules" msgstr "규칙에 어긋나는 비밀번호입니다." -#: cps/helper.py:859 +#: cps/helper.py:873 msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "표지 업로드에 필요한 Python 모듈 'advocate'이 설치되지 않았습니다." -#: cps/helper.py:869 +#: cps/helper.py:883 msgid "Error Downloading Cover" msgstr "표지 다운로드 중 오류 발생" -#: cps/helper.py:872 +#: cps/helper.py:886 msgid "Cover Format Error" msgstr "표지 형식 오류" -#: cps/helper.py:875 +#: cps/helper.py:889 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "표지 업로드를 위해 localhost 또는 로컬 네트워크에 액세스할 수 없습니다." -#: cps/helper.py:885 +#: cps/helper.py:899 msgid "Failed to create path for cover" msgstr "표지 경로 생성 실패" -#: cps/helper.py:901 +#: cps/helper.py:915 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "표지 파일이 유효한 이미지 파일이 아니거나 저장할 수 없습니다" -#: cps/helper.py:912 +#: cps/helper.py:926 msgid "Only jpg/jpeg/png/webp/bmp files are supported as coverfile" msgstr "표지는 jpg/jpeg/png/webp/bmp 파일만 지원됩니다" -#: cps/helper.py:924 +#: cps/helper.py:938 msgid "Invalid cover file content" msgstr "잘못된 표지 파일 콘텐츠" -#: cps/helper.py:928 +#: cps/helper.py:942 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "표지 파일로 jpg/jpeg 파일만 지원됩니다" -#: cps/helper.py:999 cps/helper.py:1156 +#: cps/helper.py:1014 cps/helper.py:1171 #, fuzzy msgid "Cover" msgstr "발견" -#: cps/helper.py:1016 +#: cps/helper.py:1031 msgid "UnRar binary file not found" msgstr "UnRar 바이너리 파일을 찾을 수 없습니다" -#: cps/helper.py:1027 +#: cps/helper.py:1042 #, fuzzy msgid "Error executing UnRar" msgstr "UnRar 실행 오류" -#: cps/helper.py:1035 +#: cps/helper.py:1050 msgid "Could not find the specified directory" msgstr "" -#: cps/helper.py:1038 +#: cps/helper.py:1053 msgid "Please specify a directory, not a file" msgstr "" -#: cps/helper.py:1052 +#: cps/helper.py:1067 #, fuzzy msgid "Calibre binaries not viable" msgstr "쓰기 권한이 없는 DB" -#: cps/helper.py:1061 +#: cps/helper.py:1076 #, python-format msgid "Missing calibre binaries: %(missing)s" msgstr "" -#: cps/helper.py:1063 +#: cps/helper.py:1078 #, fuzzy, python-format msgid "Missing executable permissions: %(missing)s" msgstr "실행 권한 누락" -#: cps/helper.py:1068 +#: cps/helper.py:1083 #, fuzzy msgid "Error executing Calibre" msgstr "UnRar 실행 오류" -#: cps/helper.py:1158 cps/templates/admin.html:216 +#: cps/helper.py:1173 cps/templates/admin.html:216 msgid "Queue all books for metadata backup" msgstr "메타데이터 백업을 위해 모든 도서를 대기열에 추가" @@ -895,35 +896,35 @@ msgstr "%(oauth)s에 연결 해제 실패" msgid "Not Linked to %(oauth)s" msgstr "%(oauth)s에 연결되지 않음" -#: cps/oauth_bb.py:261 +#: cps/oauth_bb.py:262 msgid "Failed to log in with GitHub." msgstr "GitHub에 로그인하지 못했습니다." -#: cps/oauth_bb.py:267 +#: cps/oauth_bb.py:268 msgid "Failed to fetch user info from GitHub." msgstr "GitHub에서 사용자 정보를 가져오지 못했습니다." -#: cps/oauth_bb.py:279 +#: cps/oauth_bb.py:280 msgid "Failed to log in with Google." msgstr "구글 로그인에 실패했습니다." -#: cps/oauth_bb.py:285 +#: cps/oauth_bb.py:286 msgid "Failed to fetch user info from Google." msgstr "Google에서 사용자 정보를 가져오지 못했습니다." -#: cps/oauth_bb.py:332 +#: cps/oauth_bb.py:334 msgid "GitHub Oauth error, please retry later." msgstr "GitHub Oauth 오류입니다. 나중에 다시 시도하세요." -#: cps/oauth_bb.py:335 +#: cps/oauth_bb.py:337 msgid "GitHub Oauth error: {}" msgstr "GitHub 인증 오류: {}" -#: cps/oauth_bb.py:356 +#: cps/oauth_bb.py:358 msgid "Google Oauth error, please retry later." msgstr "Google 인증 오류입니다. 나중에 다시 시도하세요." -#: cps/oauth_bb.py:359 +#: cps/oauth_bb.py:361 msgid "Google Oauth error: {}" msgstr "Google 인증 오류: {}" @@ -1282,32 +1283,32 @@ msgstr "취소됨" msgid "Unknown Status" msgstr "알 수 없는 상태" -#: cps/updater.py:431 cps/updater.py:442 cps/updater.py:543 cps/updater.py:558 +#: cps/updater.py:433 cps/updater.py:444 cps/updater.py:545 cps/updater.py:560 msgid "Unexpected data while reading update information" msgstr "업데이트 정보를 읽는 동안 예기치 않은 데이터" -#: cps/updater.py:438 cps/updater.py:550 +#: cps/updater.py:440 cps/updater.py:552 msgid "No update available. You already have the latest version installed" msgstr "업데이트가 없습니다. 이미 최신 버전이 설치되어 있습니다" -#: cps/updater.py:456 +#: cps/updater.py:458 msgid "A new update is available. Click on the button below to update to the latest version." msgstr "새로운 업데이트가 있습니다. 아래 버튼을 클릭하여 최신 버전으로 업데이트하십시오." -#: cps/updater.py:474 +#: cps/updater.py:476 msgid "Could not fetch update information" msgstr "업데이트 정보를 가져올 수 없습니다" -#: cps/updater.py:484 +#: cps/updater.py:486 msgid "Click on the button below to update to the latest stable version." msgstr "새로운 업데이트가 있습니다. 아래 버튼을 클릭하여 최신 버전으로 업데이트하십시오." -#: cps/updater.py:493 cps/updater.py:507 cps/updater.py:518 +#: cps/updater.py:495 cps/updater.py:509 cps/updater.py:520 #, python-format msgid "A new update is available. Click on the button below to update to version: %(version)s" msgstr "최신 안정 버전 %(version)s으로 업데이트하려면 아래 버튼을 클릭하세요" -#: cps/updater.py:536 +#: cps/updater.py:538 msgid "No release information available" msgstr "출시 정보가 없습니다" @@ -1486,50 +1487,50 @@ msgstr "프로필이 업데이트 됨" msgid "Oops! An account already exists for this Email." msgstr "등록되어 있는 이메일 주소입니다" -#: cps/services/gmail.py:58 +#: cps/services/gmail.py:59 msgid "Found no valid gmail.json file with OAuth information" msgstr "인증 정보가 포함된 유효한 gmail.json 파일을 찾을 수 없습니다" -#: cps/tasks/convert.py:105 +#: cps/tasks/convert.py:108 #, fuzzy, python-format msgid "%(book)s send to E-Reader" msgstr "%(book)s을 킨들로 보내기" -#: cps/tasks/convert.py:167 +#: cps/tasks/convert.py:170 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "Calibre ebook-convert %(tool)s을(를) 찾을 수 없습니다" -#: cps/tasks/convert.py:201 +#: cps/tasks/convert.py:204 #, python-format msgid "%(format)s format not found on disk" msgstr "%(format)s 형식을 찾을 수 없습니다" -#: cps/tasks/convert.py:205 +#: cps/tasks/convert.py:208 msgid "Ebook converter failed with unknown error" msgstr "알 수 없는 오류로 인해 전자책 변환이 실패했습니다" -#: cps/tasks/convert.py:224 +#: cps/tasks/convert.py:227 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "Kepubify 변환 실패: %(error)s" -#: cps/tasks/convert.py:245 +#: cps/tasks/convert.py:248 #, python-format msgid "Converted file not found or more than one file in folder %(folder)s" msgstr "변환된 파일을 찾을 수 없거나 %(folder)s 폴더에 하나 이상의 파일이 존재합니다" -#: cps/tasks/convert.py:287 +#: cps/tasks/convert.py:291 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "\"전자책 변환 실패: %(error)s" -#: cps/tasks/convert.py:310 +#: cps/tasks/convert.py:314 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "오류로 인한 Calibre 실패: %(error)s" -#: cps/tasks/convert.py:315 +#: cps/tasks/convert.py:319 msgid "Convert" msgstr "변환" @@ -1541,7 +1542,7 @@ msgstr "Calibre DB를 다시 연결합니다." msgid "E-mail" msgstr "이메일일" -#: cps/tasks/metadata_backup.py:33 +#: cps/tasks/metadata_backup.py:34 #, fuzzy msgid "Backing up Metadata" msgstr "메타데이터 편집" @@ -1555,20 +1556,20 @@ msgstr "" msgid "Generated %(count)s cover thumbnails" msgstr "%(count)개의 표지 섬네일을 생성하였습니다." -#: cps/tasks/thumbnail.py:230 cps/tasks/thumbnail.py:443 -#: cps/tasks/thumbnail.py:511 +#: cps/tasks/thumbnail.py:231 cps/tasks/thumbnail.py:444 +#: cps/tasks/thumbnail.py:512 msgid "Cover Thumbnails" msgstr "표지 섬네일" -#: cps/tasks/thumbnail.py:289 +#: cps/tasks/thumbnail.py:290 msgid "Generated {0} series thumbnails" msgstr "{0} 시리즈 섬네일을 생성하였습니다." -#: cps/tasks/thumbnail.py:454 +#: cps/tasks/thumbnail.py:455 msgid "Clearing cover thumbnail cache" msgstr "표지 섬네일 캐시를 삭제합니다." -#: cps/tasks/upload.py:38 cps/templates/admin.html:20 +#: cps/tasks/upload.py:39 cps/templates/admin.html:20 #: cps/templates/layout.html:81 cps/templates/user_table.html:145 msgid "Upload" msgstr "업로드" @@ -1816,7 +1817,7 @@ msgstr "예" #: cps/templates/admin.html:259 cps/templates/admin.html:273 #: cps/templates/book_edit.html:214 cps/templates/book_table.html:127 -#: cps/templates/config_db.html:66 cps/templates/config_edit.html:423 +#: cps/templates/config_db.html:66 cps/templates/config_edit.html:427 #: cps/templates/config_view_edit.html:175 cps/templates/detail.html:342 #: cps/templates/modal_dialogs.html:64 cps/templates/modal_dialogs.html:99 #: cps/templates/modal_dialogs.html:117 cps/templates/modal_dialogs.html:135 @@ -2002,7 +2003,7 @@ msgid "Fetch Metadata" msgstr "메타정보 가져오기" #: cps/templates/book_edit.html:213 cps/templates/config_db.html:65 -#: cps/templates/config_edit.html:422 cps/templates/config_view_edit.html:174 +#: cps/templates/config_edit.html:426 cps/templates/config_view_edit.html:174 #: cps/templates/email_edit.html:65 cps/templates/schedule_edit.html:44 #: cps/templates/shelf_edit.html:25 cps/templates/shelf_order.html:41 #: cps/templates/user_edit.html:142 @@ -2473,47 +2474,51 @@ msgid "Configure Backend for Limiter" msgstr "" #: cps/templates/config_edit.html:376 -msgid "Options for Limiter" +msgid "Options for Limiter Backend" msgstr "" -#: cps/templates/config_edit.html:381 +#: cps/templates/config_edit.html:382 +msgid "Check if file extensions matches file content on upload" +msgstr "" + +#: cps/templates/config_edit.html:385 msgid "Session protection" msgstr "세션 보호" -#: cps/templates/config_edit.html:383 +#: cps/templates/config_edit.html:387 msgid "Basic" msgstr "기본" -#: cps/templates/config_edit.html:384 +#: cps/templates/config_edit.html:388 msgid "Strong" msgstr "강함함" -#: cps/templates/config_edit.html:389 +#: cps/templates/config_edit.html:393 #, fuzzy msgid "User Password policy" msgstr "사용자 비밀번호 정책" -#: cps/templates/config_edit.html:393 +#: cps/templates/config_edit.html:397 msgid "Minimum password length" msgstr "최소 비밀번호 길이" -#: cps/templates/config_edit.html:398 +#: cps/templates/config_edit.html:402 msgid "Enforce number" msgstr "반드시 숫자 입력" -#: cps/templates/config_edit.html:402 +#: cps/templates/config_edit.html:406 msgid "Enforce lowercase characters" msgstr "반드시 소문자 입력" -#: cps/templates/config_edit.html:406 +#: cps/templates/config_edit.html:410 msgid "Enforce uppercase characters" msgstr "반드시 대문자 입력" -#: cps/templates/config_edit.html:410 +#: cps/templates/config_edit.html:414 msgid "Enforce characters (needed For Chinese/Japanese/Korean Characters)" msgstr "" -#: cps/templates/config_edit.html:414 +#: cps/templates/config_edit.html:418 msgid "Enforce special characters" msgstr "반드시 특수문자 입력력" @@ -2643,6 +2648,11 @@ msgstr "읽지 않은 상태로 표시" msgid "Mark As Read" msgstr "읽은 상태로 표시" +#: cps/templates/detail.html:254 +#, fuzzy +msgid "Mark Book as Read or Unread" +msgstr "읽지 않은 상태로 표시" + #: cps/templates/detail.html:254 cps/templates/listenmp3.html:159 msgid "Read" msgstr "읽기" @@ -2655,8 +2665,13 @@ msgstr "아카이브에서 복원" msgid "Add to archive" msgstr "아카이브에 추가" -#: cps/templates/detail.html:267 cps/templates/listenmp3.html:167 -msgid "Archived" +#: cps/templates/detail.html:267 +msgid "Mark Book as archived or not, to hide it in Calibre-Web and delete it from Kobo Reader" +msgstr "" + +#: cps/templates/detail.html:267 +#, fuzzy +msgid "Archive" msgstr "보관됨" #: cps/templates/detail.html:278 cps/templates/listenmp3.html:177 @@ -2937,6 +2952,10 @@ msgstr "책 상세정보" msgid "Grid" msgstr "그리드드" +#: cps/templates/listenmp3.html:167 +msgid "Archived" +msgstr "보관됨" + #: cps/templates/login.html:18 msgid "Remember Me" msgstr "로그인 유지" diff --git a/cps/translations/nl/LC_MESSAGES/messages.mo b/cps/translations/nl/LC_MESSAGES/messages.mo index 26332ff8..5083df86 100644 Binary files a/cps/translations/nl/LC_MESSAGES/messages.mo and b/cps/translations/nl/LC_MESSAGES/messages.mo differ diff --git a/cps/translations/nl/LC_MESSAGES/messages.po b/cps/translations/nl/LC_MESSAGES/messages.po index f17522ba..fa6dd45d 100644 --- a/cps/translations/nl/LC_MESSAGES/messages.po +++ b/cps/translations/nl/LC_MESSAGES/messages.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: Calibre-Web (GPLV3)\n" "Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n" -"POT-Creation-Date: 2024-06-09 12:26+0200\n" +"POT-Creation-Date: 2024-06-30 12:19+0200\n" "PO-Revision-Date: 2023-12-20 22:00+0100\n" "Last-Translator: Michiel Cornelissen \n" "Language: nl\n" @@ -17,7 +17,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.11.0\n" +"Generated-By: Babel 2.13.1\n" #: cps/about.py:84 msgid "Statistics" @@ -46,9 +46,9 @@ msgstr "Onbekende opdracht" msgid "Success! Books queued for Metadata Backup, please check Tasks for result" msgstr "Test E-Mail wordt verzonden naar %(email)s, controleer de taken voor het resultaat" -#: cps/admin.py:207 cps/editbooks.py:591 cps/editbooks.py:593 -#: cps/editbooks.py:631 cps/editbooks.py:648 cps/editbooks.py:1280 -#: cps/updater.py:613 cps/uploader.py:93 cps/uploader.py:102 +#: cps/admin.py:207 cps/editbooks.py:573 cps/editbooks.py:575 +#: cps/editbooks.py:615 cps/editbooks.py:658 cps/editbooks.py:1280 +#: cps/updater.py:615 cps/uploader.py:93 cps/uploader.py:102 msgid "Unknown" msgstr "Onbekend" @@ -69,12 +69,12 @@ msgstr "Uiterlijk aanpassen" msgid "Edit Users" msgstr "Systeembeheerder" -#: cps/admin.py:368 cps/opds.py:541 cps/templates/grid.html:14 +#: cps/admin.py:368 cps/opds.py:542 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "Alles" -#: cps/admin.py:395 cps/admin.py:1417 +#: cps/admin.py:395 cps/admin.py:1414 msgid "User not found" msgstr "Gebruiker niet gevonden" @@ -91,7 +91,7 @@ msgstr "Alle talen" msgid "Malformed request" msgstr "Misvormd verzoek" -#: cps/admin.py:471 cps/admin.py:2048 +#: cps/admin.py:471 cps/admin.py:2046 msgid "Guest Name can't be changed" msgstr "Gast naam kan niet worden veranderd" @@ -99,7 +99,7 @@ msgstr "Gast naam kan niet worden veranderd" msgid "Guest can't have this role" msgstr "Gast kan deze rol niet hebben" -#: cps/admin.py:495 cps/admin.py:2002 +#: cps/admin.py:495 cps/admin.py:2000 msgid "No admin user remaining, can't remove admin role" msgstr "Kan systeembeheerder rol niet verwijderen van de laatste systeembeheerder" @@ -131,7 +131,7 @@ msgstr "Geen geldige locale is opgegeven" msgid "No Valid Book Language Given" msgstr "Geen geldige boek taal is opgegeven" -#: cps/admin.py:535 cps/editbooks.py:457 +#: cps/admin.py:535 cps/editbooks.py:440 msgid "Parameter not found" msgstr "Parameter is niet gevonden" @@ -143,7 +143,7 @@ msgstr "Ongeldige gelezen kolom" msgid "Invalid Restricted Column" msgstr "Ongeldige beperkte kolom" -#: cps/admin.py:598 cps/admin.py:1873 +#: cps/admin.py:598 cps/admin.py:1871 msgid "Calibre-Web configuration updated" msgstr "Calibre-Web-configuratie bijgewerkt" @@ -227,297 +227,297 @@ msgstr "Tag niet gevonden" msgid "Invalid Action" msgstr "Ongeldige actie" -#: cps/admin.py:1123 +#: cps/admin.py:1120 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "client_secrets.json is niet geconfigureerd voor webapplicatie" -#: cps/admin.py:1168 +#: cps/admin.py:1165 msgid "Logfile Location is not Valid, Please Enter Correct Path" msgstr "De locatie van het logbestand is onjuist, voer een geldige locatie in" -#: cps/admin.py:1174 +#: cps/admin.py:1171 msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgstr "De locatie vam het toegangslog is onjuist, voer een geldige locatie in" -#: cps/admin.py:1208 +#: cps/admin.py:1205 msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgstr "Voer alsjeblieft een LDAP Provider, Port, DN en User Object Identifier in" -#: cps/admin.py:1214 +#: cps/admin.py:1211 msgid "Please Enter a LDAP Service Account and Password" msgstr "Voer een geldig LDAP Service Account en wachtwoord in" -#: cps/admin.py:1217 +#: cps/admin.py:1214 msgid "Please Enter a LDAP Service Account" msgstr "Voer een LDAP Service Account in" -#: cps/admin.py:1222 +#: cps/admin.py:1219 #, python-format msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgstr "LDAP Groep Object Filter Moet Een \"%s\" Formaat Identificiatie hebben" -#: cps/admin.py:1224 +#: cps/admin.py:1221 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "LDAP Groep Object Filter heeft een niet-gebalanceerd haakje" -#: cps/admin.py:1228 +#: cps/admin.py:1225 #, python-format msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgstr "LDAP Gebruiker Object Filter moet \"%s\" Formaat Identificatie hebben" -#: cps/admin.py:1230 +#: cps/admin.py:1227 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "LDAP Gebruiker Filter heeft een niet-gebalanceerd haakje" -#: cps/admin.py:1237 +#: cps/admin.py:1234 #, python-format msgid "LDAP Member User Filter needs to Have One \"%s\" Format Identifier" msgstr "LDAP Lid Gebruiker Filter moet een \"%s\" Formaat Identificatie hebben" -#: cps/admin.py:1239 +#: cps/admin.py:1236 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "LDAP Lid Gebruiker Filter heeft een niet-gebalanceerd haakje" -#: cps/admin.py:1246 +#: cps/admin.py:1243 msgid "LDAP CACertificate, Certificate or Key Location is not Valid, Please Enter Correct Path" msgstr "LDAP CACertficaat, Certificaat of Sleutel Locatie is ongeldig. Voer alsjeblieft een geldig pad in." -#: cps/admin.py:1277 cps/templates/admin.html:53 +#: cps/admin.py:1274 cps/templates/admin.html:53 msgid "Add New User" msgstr "Gebruiker toevoegen" -#: cps/admin.py:1286 cps/templates/admin.html:100 +#: cps/admin.py:1283 cps/templates/admin.html:100 msgid "Edit Email Server Settings" msgstr "SMTP-instellingen bewerken" -#: cps/admin.py:1305 +#: cps/admin.py:1302 msgid "Success! Gmail Account Verified." msgstr "Gelukt! Gmail account geverifieerd." -#: cps/admin.py:1325 cps/admin.py:1328 cps/admin.py:1713 cps/admin.py:1857 -#: cps/admin.py:1955 cps/admin.py:2076 cps/editbooks.py:243 -#: cps/editbooks.py:319 cps/editbooks.py:1242 cps/shelf.py:90 cps/shelf.py:150 +#: cps/admin.py:1322 cps/admin.py:1325 cps/admin.py:1710 cps/admin.py:1855 +#: cps/admin.py:1953 cps/admin.py:2074 cps/editbooks.py:226 +#: cps/editbooks.py:303 cps/editbooks.py:1242 cps/shelf.py:90 cps/shelf.py:150 #: cps/shelf.py:193 cps/shelf.py:243 cps/shelf.py:280 cps/shelf.py:354 -#: cps/shelf.py:468 cps/tasks/convert.py:150 cps/web.py:1520 +#: cps/shelf.py:468 cps/tasks/convert.py:153 cps/web.py:1520 #, python-format msgid "Oops! Database Error: %(error)s." msgstr "Database fout: %(error)s." -#: cps/admin.py:1335 +#: cps/admin.py:1332 #, python-format msgid "Test e-mail queued for sending to %(email)s, please check Tasks for result" msgstr "Test E-Mail wordt verzonden naar %(email)s, controleer de taken voor het resultaat" -#: cps/admin.py:1338 +#: cps/admin.py:1335 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "Fout opgetreden bij het versturen van de test-e-mail: %(res)s" -#: cps/admin.py:1340 +#: cps/admin.py:1337 msgid "Please configure your e-mail address first..." msgstr "Gelieve eerst je e-mail adres configureren..." -#: cps/admin.py:1342 +#: cps/admin.py:1339 msgid "Email Server Settings updated" msgstr "E-mailserver-instellingen bijgewerkt" -#: cps/admin.py:1365 cps/templates/admin.html:195 +#: cps/admin.py:1362 cps/templates/admin.html:195 msgid "Edit Scheduled Tasks Settings" msgstr "Bewerk instellingen van geplande taken" -#: cps/admin.py:1377 +#: cps/admin.py:1374 msgid "Invalid start time for task specified" msgstr "De starttijd van de taak is ongeldig" -#: cps/admin.py:1382 +#: cps/admin.py:1379 msgid "Invalid duration for task specified" msgstr "De duur van de taak is ongeldig" -#: cps/admin.py:1392 +#: cps/admin.py:1389 msgid "Scheduled tasks settings updated" msgstr "Instellingen van geplande taken bijgewerkt" -#: cps/admin.py:1402 cps/admin.py:1451 cps/admin.py:2072 cps/web.py:1316 +#: cps/admin.py:1399 cps/admin.py:1448 cps/admin.py:2070 cps/web.py:1316 msgid "Oops! An unknown error occurred. Please try again later." msgstr "Onbekende fout opgetreden. Probeer het later nog eens." -#: cps/admin.py:1406 +#: cps/admin.py:1403 msgid "Settings DB is not Writeable" msgstr "Instellingen database is niet schrijfbaar." -#: cps/admin.py:1436 cps/admin.py:2064 +#: cps/admin.py:1433 cps/admin.py:2062 #, python-format msgid "Edit User %(nick)s" msgstr "Gebruiker '%(nick)s' bewerken" -#: cps/admin.py:1448 +#: cps/admin.py:1445 #, fuzzy, python-format msgid "Success! Password for user %(user)s reset" msgstr "Wachtwoord voor gebruiker %(user)s is hersteld" -#: cps/admin.py:1454 +#: cps/admin.py:1451 #, fuzzy msgid "Oops! Please configure the SMTP mail settings." msgstr "Stel eerst SMTP-mail in..." -#: cps/admin.py:1465 +#: cps/admin.py:1462 msgid "Logfile viewer" msgstr "Logbestand lezer" -#: cps/admin.py:1531 +#: cps/admin.py:1528 msgid "Requesting update package" msgstr "Update opvragen" -#: cps/admin.py:1532 +#: cps/admin.py:1529 msgid "Downloading update package" msgstr "Update downloaden" -#: cps/admin.py:1533 +#: cps/admin.py:1530 msgid "Unzipping update package" msgstr "Update uitpakken" -#: cps/admin.py:1534 +#: cps/admin.py:1531 msgid "Replacing files" msgstr "Update toepassen" -#: cps/admin.py:1535 +#: cps/admin.py:1532 msgid "Database connections are closed" msgstr "Databaseverbindingen zijn gesloten" -#: cps/admin.py:1536 +#: cps/admin.py:1533 msgid "Stopping server" msgstr "Bezig met stoppen van Calibre-Web" -#: cps/admin.py:1537 +#: cps/admin.py:1534 msgid "Update finished, please press okay and reload page" msgstr "Update voltooid, klik op 'Oké' en vernieuw de pagina" -#: cps/admin.py:1538 cps/admin.py:1539 cps/admin.py:1540 cps/admin.py:1541 -#: cps/admin.py:1542 cps/admin.py:1543 +#: cps/admin.py:1535 cps/admin.py:1536 cps/admin.py:1537 cps/admin.py:1538 +#: cps/admin.py:1539 cps/admin.py:1540 msgid "Update failed:" msgstr "Update mislukt:" -#: cps/admin.py:1538 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 +#: cps/admin.py:1535 cps/updater.py:391 cps/updater.py:626 cps/updater.py:628 msgid "HTTP Error" msgstr "HTTP-fout" -#: cps/admin.py:1539 cps/updater.py:391 cps/updater.py:628 +#: cps/admin.py:1536 cps/updater.py:393 cps/updater.py:630 msgid "Connection error" msgstr "Verbindingsfout" -#: cps/admin.py:1540 cps/updater.py:393 cps/updater.py:630 +#: cps/admin.py:1537 cps/updater.py:395 cps/updater.py:632 msgid "Timeout while establishing connection" msgstr "Time-out tijdens maken van verbinding" -#: cps/admin.py:1541 cps/updater.py:395 cps/updater.py:632 +#: cps/admin.py:1538 cps/updater.py:397 cps/updater.py:634 msgid "General error" msgstr "Algemene fout" -#: cps/admin.py:1542 +#: cps/admin.py:1539 #, fuzzy msgid "Update file could not be saved in temp dir" msgstr "Geüpload bestand kon niet opgeslagen worden in de tijdelijke map" -#: cps/admin.py:1543 +#: cps/admin.py:1540 msgid "Files could not be replaced during update" msgstr "Bestanden kunnen niet vervangen worden tijdens een update" -#: cps/admin.py:1567 +#: cps/admin.py:1564 #, fuzzy msgid "Failed to extract at least One LDAP User" msgstr "Mislukt om minstens een LDAP gebruiker aan te maken" -#: cps/admin.py:1612 +#: cps/admin.py:1609 msgid "Failed to Create at Least One LDAP User" msgstr "Het is niet gelukt tenminste een LDAP gebruiker aan te maken" -#: cps/admin.py:1625 +#: cps/admin.py:1622 #, python-format msgid "Error: %(ldaperror)s" msgstr "Fout: %(ldaperror)s" -#: cps/admin.py:1629 +#: cps/admin.py:1626 msgid "Error: No user returned in response of LDAP server" msgstr "Fout: No user returned in response of LDAP server" -#: cps/admin.py:1665 +#: cps/admin.py:1662 msgid "At Least One LDAP User Not Found in Database" msgstr "Minstens een LDAP Gebruiker is niet gevonden in de Database" -#: cps/admin.py:1667 +#: cps/admin.py:1664 msgid "{} User Successfully Imported" msgstr "{} Gebruiker succesvol geïmporteerd" -#: cps/admin.py:1725 +#: cps/admin.py:1722 msgid "DB Location is not Valid, Please Enter Correct Path" msgstr "Database niet gevonden, voer de juiste locatie in" -#: cps/admin.py:1745 +#: cps/admin.py:1742 msgid "DB is not Writeable" msgstr "Kan niet schrijven naar database" -#: cps/admin.py:1761 +#: cps/admin.py:1758 msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgstr "SSL-sleutellocatie is niet geldig, voer een geldig pad in" -#: cps/admin.py:1765 +#: cps/admin.py:1762 msgid "Certfile Location is not Valid, Please Enter Correct Path" msgstr "SSL-certificaatlocatie is niet geldig, voer een geldig pad in" -#: cps/admin.py:1842 +#: cps/admin.py:1840 msgid "Password length has to be between 1 and 40" msgstr "Het wachtwoord moet tussen de 1 en 40 tekens lang zijn" -#: cps/admin.py:1896 +#: cps/admin.py:1894 #, fuzzy msgid "Database Settings updated" msgstr "E-mailserver-instellingen bijgewerkt" -#: cps/admin.py:1904 +#: cps/admin.py:1902 #, fuzzy msgid "Database Configuration" msgstr "Databaseconfiguratie" -#: cps/admin.py:1919 cps/web.py:1290 +#: cps/admin.py:1917 cps/web.py:1290 msgid "Oops! Please complete all fields." msgstr "Vul alle velden in!" -#: cps/admin.py:1928 +#: cps/admin.py:1926 msgid "E-mail is not from valid domain" msgstr "Het e-mailadres bevat geen geldige domeinnaam" -#: cps/admin.py:1934 +#: cps/admin.py:1932 msgid "Add new user" msgstr "Gebruiker toevoegen" -#: cps/admin.py:1945 +#: cps/admin.py:1943 #, python-format msgid "User '%(user)s' created" msgstr "Gebruiker '%(user)s' aangemaakt" -#: cps/admin.py:1951 +#: cps/admin.py:1949 #, fuzzy msgid "Oops! An account already exists for this Email. or name." msgstr "Bestaand account met dit e-mailadres of deze gebruikersnaam aangetroffen." -#: cps/admin.py:1981 +#: cps/admin.py:1979 #, python-format msgid "User '%(nick)s' deleted" msgstr "Gebruiker '%(nick)s' verwijderd" -#: cps/admin.py:1984 +#: cps/admin.py:1982 msgid "Can't delete Guest User" msgstr "Kan Gast gebruiker niet verwijderen" -#: cps/admin.py:1987 +#: cps/admin.py:1985 msgid "No admin user remaining, can't delete user" msgstr "Kan laatste systeembeheerder niet verwijderen" -#: cps/admin.py:2042 cps/web.py:1469 +#: cps/admin.py:2040 cps/web.py:1469 msgid "Email can't be empty and has to be a valid Email" msgstr "E-mail kan niet leeg zijn en moet geldig zijn" -#: cps/admin.py:2068 +#: cps/admin.py:2066 #, python-format msgid "User '%(nick)s' updated" msgstr "Gebruiker '%(nick)s' bijgewerkt" @@ -530,12 +530,12 @@ msgstr "niet geïnstalleerd" msgid "Execution permissions missing" msgstr "Kan programma niet uitvoeren" -#: cps/db.py:756 cps/search.py:137 cps/web.py:747 +#: cps/db.py:768 cps/search.py:137 cps/web.py:747 #, fuzzy, python-format msgid "Custom Column No.%(column)d does not exist in calibre database" msgstr "Aangepaste kolom Nr.%(column)d bestaat niet in de Calibre Database" -#: cps/db.py:996 cps/templates/config_edit.html:203 +#: cps/db.py:1008 cps/templates/config_edit.html:203 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 #: cps/web.py:562 cps/web.py:596 cps/web.py:641 cps/web.py:681 cps/web.py:708 #: cps/web.py:989 cps/web.py:1019 cps/web.py:1064 cps/web.py:1092 @@ -543,100 +543,105 @@ msgstr "Aangepaste kolom Nr.%(column)d bestaat niet in de Calibre Database" msgid "None" msgstr "Geen" -#: cps/editbooks.py:124 cps/editbooks.py:912 cps/web.py:529 cps/web.py:1561 -#: cps/web.py:1605 cps/web.py:1650 +#: cps/editbooks.py:108 cps/editbooks.py:929 cps/web.py:529 cps/web.py:1561 +#: cps/web.py:1606 cps/web.py:1651 msgid "Oops! Selected book is unavailable. File does not exist or is not accessible" msgstr "Oeps! Geselecteerd boek is niet beschikbaar. Bestand bestaat niet of is niet toegankelijk" -#: cps/editbooks.py:168 cps/editbooks.py:1263 +#: cps/editbooks.py:151 cps/editbooks.py:1263 msgid "User has no rights to upload cover" msgstr "Gebruiker mist rechten om de omslag te uploaden" -#: cps/editbooks.py:188 cps/editbooks.py:733 +#: cps/editbooks.py:171 cps/editbooks.py:744 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "Identificatoren zijn niet hoofdlettergevoelig, overschrijf huidige identificatoren" -#: cps/editbooks.py:230 +#: cps/editbooks.py:213 msgid "Metadata successfully updated" msgstr "De metagegevens zijn bijgewerkt" -#: cps/editbooks.py:248 +#: cps/editbooks.py:231 msgid "Error editing book: {}" msgstr "Fout tijdens bijwerken van boek: {}" -#: cps/editbooks.py:305 +#: cps/editbooks.py:289 #, python-format msgid "File %(file)s uploaded" msgstr "Bestand %(file)s geüpload" -#: cps/editbooks.py:333 +#: cps/editbooks.py:317 msgid "Source or destination format for conversion missing" msgstr "Bron- of doelformaat ontbreekt voor conversie" -#: cps/editbooks.py:341 +#: cps/editbooks.py:325 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "Het boek is in de wachtrij geplaatst voor conversie naar %(book_format)s" -#: cps/editbooks.py:345 +#: cps/editbooks.py:329 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "Er is een fout opgetreden bij het converteren van dit boek: %(res)s" -#: cps/editbooks.py:652 +#: cps/editbooks.py:662 msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgstr "Geüpload boek staat mogelijk al in de bibliotheek, controleer alvorens door te gaan: " -#: cps/editbooks.py:707 cps/editbooks.py:1043 +#: cps/editbooks.py:718 cps/editbooks.py:1049 #, fuzzy, python-format msgid "'%(langname)s' is not a valid language" msgstr "%(langname)s is geen geldige taal" -#: cps/editbooks.py:745 cps/editbooks.py:1203 +#: cps/editbooks.py:756 cps/editbooks.py:1192 +#, fuzzy +msgid "File type isn't allowed to be uploaded to this server" +msgstr "De bestandsextensie '%(ext)s' is niet toegestaan op deze server" + +#: cps/editbooks.py:762 cps/editbooks.py:1202 #, python-format msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgstr "De bestandsextensie '%(ext)s' is niet toegestaan op deze server" -#: cps/editbooks.py:749 cps/editbooks.py:1207 +#: cps/editbooks.py:766 cps/editbooks.py:1206 msgid "File to be uploaded must have an extension" msgstr "Het te uploaden bestand moet voorzien zijn van een extensie" -#: cps/editbooks.py:757 +#: cps/editbooks.py:774 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "Bestand %(filename)s kon niet opgeslagen worden in de tijdelijke map" -#: cps/editbooks.py:777 +#: cps/editbooks.py:794 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "Omslag %(file)s niet verplaatst: %(error)s" -#: cps/editbooks.py:834 cps/editbooks.py:836 +#: cps/editbooks.py:851 cps/editbooks.py:853 msgid "Book Format Successfully Deleted" msgstr "Het boekformaat is verwijderd" -#: cps/editbooks.py:843 cps/editbooks.py:845 +#: cps/editbooks.py:860 cps/editbooks.py:862 msgid "Book Successfully Deleted" msgstr "Het boek is verwijderd" -#: cps/editbooks.py:897 +#: cps/editbooks.py:914 msgid "You are missing permissions to delete books" msgstr "U mist rechten om boeken te verwijderen" -#: cps/editbooks.py:947 +#: cps/editbooks.py:964 msgid "edit metadata" msgstr "metagegevens bewerken" -#: cps/editbooks.py:996 +#: cps/editbooks.py:1013 #, python-format msgid "%(seriesindex)s is not a valid number, skipping" msgstr "%(seriesindex)s is geen geldig nummer, sla het over" -#: cps/editbooks.py:1198 +#: cps/editbooks.py:1197 msgid "User has no rights to upload additional file formats" msgstr "Gebruiker mist rechten om extra bestandsformaten te uploaden" -#: cps/editbooks.py:1219 +#: cps/editbooks.py:1218 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "Kan de locatie '%(path)s' niet aanmaken (niet gemachtigd)." @@ -655,7 +660,7 @@ msgstr "Bestandsformaat %(ext)s toegevoegd aan %(book)s" msgid "Google Drive setup not completed, try to deactivate and activate Google Drive again" msgstr "Het instellen van Google Drive is niet afgerond, heractiveer Google Drive" -#: cps/gdrive.py:95 +#: cps/gdrive.py:96 msgid "Callback domain is not verified, please follow steps to verify domain in google developer console" msgstr "Het callback-domein is niet geverifieerd. Volg de stappen in de Google-ontwikkelaarsconsole om het domein te verifiëren" @@ -664,7 +669,7 @@ msgstr "Het callback-domein is niet geverifieerd. Volg de stappen in de Google-o msgid "%(format)s format not found for book id: %(book)d" msgstr "%(format)s formaat niet gevonden voor boek met id: %(book)d" -#: cps/helper.py:93 cps/tasks/convert.py:86 +#: cps/helper.py:93 cps/tasks/convert.py:89 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "%(format)s niet aangetroffen op Google Drive: %(fn)s" @@ -741,126 +746,122 @@ msgstr "Verwijderen van boek %(id)s mislukt: %(message)s" msgid "Deleting book %(id)s from database only, book path in database not valid: %(path)s" msgstr "Verwijder boek %(id)s alleen uit database, boek pad is ongeldig: %(path)s" -#: cps/helper.py:452 +#: cps/helper.py:465 #, fuzzy, python-format msgid "Rename author from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgstr "Kan de titel '%(src)s' niet wijzigen in '%(dest)s': %(error)s" -#: cps/helper.py:524 cps/helper.py:533 +#: cps/helper.py:536 cps/helper.py:545 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "Bestand '%(file)s' niet aangetroffen op Google Drive" -#: cps/helper.py:567 +#: cps/helper.py:587 #, python-format msgid "Rename title from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgstr "Kan de titel '%(src)s' niet wijzigen in '%(dest)s': %(error)s" -#: cps/helper.py:587 -msgid "Error in rename file in path: {}" -msgstr "Fout bij hernoemen bestand op bestandslocatie: {}" - -#: cps/helper.py:605 +#: cps/helper.py:625 #, python-format msgid "Book path %(path)s not found on Google Drive" msgstr "Boeken locatie '%(path)s' niet aangetroffen op Google Drive" -#: cps/helper.py:670 +#: cps/helper.py:685 msgid "Found an existing account for this Email address" msgstr "Bestaand account gevondne met dit e-mailadres" -#: cps/helper.py:678 +#: cps/helper.py:693 msgid "This username is already taken" msgstr "Deze gebruikersnaam is al in gebruik" -#: cps/helper.py:690 +#: cps/helper.py:705 #, fuzzy msgid "Invalid Email address format" msgstr "Ongeldig E-Mail adres" -#: cps/helper.py:710 +#: cps/helper.py:726 msgid "Password doesn't comply with password validation rules" msgstr "Het wachtwoord voldoet niet aan de validatieregels" -#: cps/helper.py:859 +#: cps/helper.py:873 msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "Pythonmodule 'advocate' is niet geïnstalleerd maar is nodig omslag uploads" -#: cps/helper.py:869 +#: cps/helper.py:883 msgid "Error Downloading Cover" msgstr "Fout bij downloaden omslag" -#: cps/helper.py:872 +#: cps/helper.py:886 msgid "Cover Format Error" msgstr "Onjuist omslagformaat" -#: cps/helper.py:875 +#: cps/helper.py:889 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "Toegang tot localhost of het lokale netwerk niet toegestaant voor omslag uploaden" -#: cps/helper.py:885 +#: cps/helper.py:899 msgid "Failed to create path for cover" msgstr "Locatie aanmaken voor omslag mislukt" -#: cps/helper.py:901 +#: cps/helper.py:915 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "Omslag-bestand is geen afbeelding of kon niet opgeslagen worden" -#: cps/helper.py:912 +#: cps/helper.py:926 msgid "Only jpg/jpeg/png/webp/bmp files are supported as coverfile" msgstr "Alleen jpg/jpeg/png/webp/bmp bestanden worden ondersteund als omslag" -#: cps/helper.py:924 +#: cps/helper.py:938 msgid "Invalid cover file content" msgstr "Ongeldig omslagbestand" -#: cps/helper.py:928 +#: cps/helper.py:942 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "Alleen jpg/jpeg bestanden zijn toegestaan als omslag" -#: cps/helper.py:999 cps/helper.py:1156 +#: cps/helper.py:1014 cps/helper.py:1171 #, fuzzy msgid "Cover" msgstr "Willekeurige boeken" -#: cps/helper.py:1016 +#: cps/helper.py:1031 msgid "UnRar binary file not found" msgstr "UnRar executable niet gevonden" -#: cps/helper.py:1027 +#: cps/helper.py:1042 #, fuzzy msgid "Error executing UnRar" msgstr "Fout bij het uitvoeren van UnRar" -#: cps/helper.py:1035 +#: cps/helper.py:1050 msgid "Could not find the specified directory" msgstr "" -#: cps/helper.py:1038 +#: cps/helper.py:1053 msgid "Please specify a directory, not a file" msgstr "" -#: cps/helper.py:1052 +#: cps/helper.py:1067 #, fuzzy msgid "Calibre binaries not viable" msgstr "Kan niet schrijven naar database" -#: cps/helper.py:1061 +#: cps/helper.py:1076 #, python-format msgid "Missing calibre binaries: %(missing)s" msgstr "" -#: cps/helper.py:1063 +#: cps/helper.py:1078 #, fuzzy, python-format msgid "Missing executable permissions: %(missing)s" msgstr "Kan programma niet uitvoeren" -#: cps/helper.py:1068 +#: cps/helper.py:1083 #, fuzzy msgid "Error executing Calibre" msgstr "Fout bij het uitvoeren van UnRar" -#: cps/helper.py:1158 cps/templates/admin.html:216 +#: cps/helper.py:1173 cps/templates/admin.html:216 msgid "Queue all books for metadata backup" msgstr "Voeg alle boeken toe aan de wachtrij voor het maken van een metagegevens backup" @@ -907,35 +908,35 @@ msgstr "Ontkoppelen van %(oauth)s mislukt" msgid "Not Linked to %(oauth)s" msgstr "Niet gelinkt aan %(oauth)s" -#: cps/oauth_bb.py:261 +#: cps/oauth_bb.py:262 msgid "Failed to log in with GitHub." msgstr "Inloggen bij GitHub mislukt." -#: cps/oauth_bb.py:267 +#: cps/oauth_bb.py:268 msgid "Failed to fetch user info from GitHub." msgstr "Opvragen gebruikersinfo bij GitHub mislukt." -#: cps/oauth_bb.py:279 +#: cps/oauth_bb.py:280 msgid "Failed to log in with Google." msgstr "Inloggen bij Google mislukt." -#: cps/oauth_bb.py:285 +#: cps/oauth_bb.py:286 msgid "Failed to fetch user info from Google." msgstr "Opvragen gebruikersinfo bij Google mislukt." -#: cps/oauth_bb.py:332 +#: cps/oauth_bb.py:334 msgid "GitHub Oauth error, please retry later." msgstr "GitHub OAuth fout, probeer het later nog eens." -#: cps/oauth_bb.py:335 +#: cps/oauth_bb.py:337 msgid "GitHub Oauth error: {}" msgstr "Github OAuth foutmelding: {}" -#: cps/oauth_bb.py:356 +#: cps/oauth_bb.py:358 msgid "Google Oauth error, please retry later." msgstr "Google OAuth fout, probeer het later nog eens." -#: cps/oauth_bb.py:359 +#: cps/oauth_bb.py:361 msgid "Google Oauth error: {}" msgstr "Google OAuth foutmelding: {}" @@ -1296,32 +1297,32 @@ msgstr "Geannuleerd" msgid "Unknown Status" msgstr "Onbekende status" -#: cps/updater.py:431 cps/updater.py:442 cps/updater.py:543 cps/updater.py:558 +#: cps/updater.py:433 cps/updater.py:444 cps/updater.py:545 cps/updater.py:560 msgid "Unexpected data while reading update information" msgstr "Onverwachte gegevens tijdens het uitlezen van de update-informatie" -#: cps/updater.py:438 cps/updater.py:550 +#: cps/updater.py:440 cps/updater.py:552 msgid "No update available. You already have the latest version installed" msgstr "Er is geen update beschikbaar." -#: cps/updater.py:456 +#: cps/updater.py:458 msgid "A new update is available. Click on the button below to update to the latest version." msgstr "Er is een update beschikbaar. Klik op de knop hieronder om te updaten naar de nieuwste versie." -#: cps/updater.py:474 +#: cps/updater.py:476 msgid "Could not fetch update information" msgstr "De update-informatie kan niet worden opgehaald" -#: cps/updater.py:484 +#: cps/updater.py:486 msgid "Click on the button below to update to the latest stable version." msgstr "Klik op de onderstaande knop om de laatste stabiele versie te installeren." -#: cps/updater.py:493 cps/updater.py:507 cps/updater.py:518 +#: cps/updater.py:495 cps/updater.py:509 cps/updater.py:520 #, python-format msgid "A new update is available. Click on the button below to update to version: %(version)s" msgstr "Er is een update beschikbaar. Klik op de knop hieronder om te updaten naar versie: %(version)s" -#: cps/updater.py:536 +#: cps/updater.py:538 msgid "No release information available" msgstr "Geen update-informatie beschikbaar" @@ -1501,50 +1502,50 @@ msgstr "Profiel bijgewerkt" msgid "Oops! An account already exists for this Email." msgstr "Bestaand account met dit e-mailadres aangetroffen." -#: cps/services/gmail.py:58 +#: cps/services/gmail.py:59 msgid "Found no valid gmail.json file with OAuth information" msgstr "Geen geldig gmail.json bestand gevonden met OAuth informatie" -#: cps/tasks/convert.py:105 +#: cps/tasks/convert.py:108 #, fuzzy, python-format msgid "%(book)s send to E-Reader" msgstr "%(book)s verzonden naar Kindle" -#: cps/tasks/convert.py:167 +#: cps/tasks/convert.py:170 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "Calibre ebook-convert %(tool)s niet gevonden" -#: cps/tasks/convert.py:201 +#: cps/tasks/convert.py:204 #, python-format msgid "%(format)s format not found on disk" msgstr "%(format)s formaat is niet gevonden op de schijf" -#: cps/tasks/convert.py:205 +#: cps/tasks/convert.py:208 msgid "Ebook converter failed with unknown error" msgstr "E-Book converter mislukt met een onbekende foutmelding" -#: cps/tasks/convert.py:224 +#: cps/tasks/convert.py:227 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "Kepubify-converteerder mislukt: %(error)s" -#: cps/tasks/convert.py:245 +#: cps/tasks/convert.py:248 #, python-format msgid "Converted file not found or more than one file in folder %(folder)s" msgstr "Omgezette bestand is niet gevonden of meer dan een bestand in map %(folder)s" -#: cps/tasks/convert.py:287 +#: cps/tasks/convert.py:291 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "E-boek-conversie mislukt: %(error)s" -#: cps/tasks/convert.py:310 +#: cps/tasks/convert.py:314 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "Calibre mislukt met foutmelding: %(error)s" -#: cps/tasks/convert.py:315 +#: cps/tasks/convert.py:319 msgid "Convert" msgstr "Overzetten" @@ -1556,7 +1557,7 @@ msgstr "Opnieuw verbinding aan het maken met Calibre database" msgid "E-mail" msgstr "E-mail" -#: cps/tasks/metadata_backup.py:33 +#: cps/tasks/metadata_backup.py:34 #, fuzzy msgid "Backing up Metadata" msgstr "metagegevens bewerken" @@ -1570,20 +1571,20 @@ msgstr "" msgid "Generated %(count)s cover thumbnails" msgstr "%{count}s omslagminiaturen gegenereerd" -#: cps/tasks/thumbnail.py:230 cps/tasks/thumbnail.py:443 -#: cps/tasks/thumbnail.py:511 +#: cps/tasks/thumbnail.py:231 cps/tasks/thumbnail.py:444 +#: cps/tasks/thumbnail.py:512 msgid "Cover Thumbnails" msgstr "Omslag miniaturen" -#: cps/tasks/thumbnail.py:289 +#: cps/tasks/thumbnail.py:290 msgid "Generated {0} series thumbnails" msgstr "{0} serieminiaturen gegenereerd" -#: cps/tasks/thumbnail.py:454 +#: cps/tasks/thumbnail.py:455 msgid "Clearing cover thumbnail cache" msgstr "Cache met omslagminiaturen aan het opschonen" -#: cps/tasks/upload.py:38 cps/templates/admin.html:20 +#: cps/tasks/upload.py:39 cps/templates/admin.html:20 #: cps/templates/layout.html:81 cps/templates/user_table.html:145 msgid "Upload" msgstr "Uploaden" @@ -1832,7 +1833,7 @@ msgstr "Oké" #: cps/templates/admin.html:259 cps/templates/admin.html:273 #: cps/templates/book_edit.html:214 cps/templates/book_table.html:127 -#: cps/templates/config_db.html:66 cps/templates/config_edit.html:423 +#: cps/templates/config_db.html:66 cps/templates/config_edit.html:427 #: cps/templates/config_view_edit.html:175 cps/templates/detail.html:342 #: cps/templates/modal_dialogs.html:64 cps/templates/modal_dialogs.html:99 #: cps/templates/modal_dialogs.html:117 cps/templates/modal_dialogs.html:135 @@ -2018,7 +2019,7 @@ msgid "Fetch Metadata" msgstr "Metagegevens ophalen" #: cps/templates/book_edit.html:213 cps/templates/config_db.html:65 -#: cps/templates/config_edit.html:422 cps/templates/config_view_edit.html:174 +#: cps/templates/config_edit.html:426 cps/templates/config_view_edit.html:174 #: cps/templates/email_edit.html:65 cps/templates/schedule_edit.html:44 #: cps/templates/shelf_edit.html:25 cps/templates/shelf_order.html:41 #: cps/templates/user_edit.html:142 @@ -2493,47 +2494,51 @@ msgid "Configure Backend for Limiter" msgstr "" #: cps/templates/config_edit.html:376 -msgid "Options for Limiter" +msgid "Options for Limiter Backend" msgstr "" -#: cps/templates/config_edit.html:381 +#: cps/templates/config_edit.html:382 +msgid "Check if file extensions matches file content on upload" +msgstr "" + +#: cps/templates/config_edit.html:385 msgid "Session protection" msgstr "Sessiebescherming" -#: cps/templates/config_edit.html:383 +#: cps/templates/config_edit.html:387 msgid "Basic" msgstr "Basis" -#: cps/templates/config_edit.html:384 +#: cps/templates/config_edit.html:388 msgid "Strong" msgstr "Sterk" -#: cps/templates/config_edit.html:389 +#: cps/templates/config_edit.html:393 #, fuzzy msgid "User Password policy" msgstr "Gebruikerswachtwoord herstellen" -#: cps/templates/config_edit.html:393 +#: cps/templates/config_edit.html:397 msgid "Minimum password length" msgstr "Minimale wachtwoordlengte" -#: cps/templates/config_edit.html:398 +#: cps/templates/config_edit.html:402 msgid "Enforce number" msgstr "Forceer getal" -#: cps/templates/config_edit.html:402 +#: cps/templates/config_edit.html:406 msgid "Enforce lowercase characters" msgstr "Forceer kleine letter" -#: cps/templates/config_edit.html:406 +#: cps/templates/config_edit.html:410 msgid "Enforce uppercase characters" msgstr "Forceer hoofdletter" -#: cps/templates/config_edit.html:410 +#: cps/templates/config_edit.html:414 msgid "Enforce characters (needed For Chinese/Japanese/Korean Characters)" msgstr "" -#: cps/templates/config_edit.html:414 +#: cps/templates/config_edit.html:418 msgid "Enforce special characters" msgstr "Forceer speciaal teken" @@ -2665,6 +2670,11 @@ msgstr "Markeren als ongelezen" msgid "Mark As Read" msgstr "Markeren als gelezen" +#: cps/templates/detail.html:254 +#, fuzzy +msgid "Mark Book as Read or Unread" +msgstr "Markeren als ongelezen" + #: cps/templates/detail.html:254 cps/templates/listenmp3.html:159 msgid "Read" msgstr "Gelezen" @@ -2677,8 +2687,13 @@ msgstr "Terughalen uit archief" msgid "Add to archive" msgstr "Toevoegen aan archief" -#: cps/templates/detail.html:267 cps/templates/listenmp3.html:167 -msgid "Archived" +#: cps/templates/detail.html:267 +msgid "Mark Book as archived or not, to hide it in Calibre-Web and delete it from Kobo Reader" +msgstr "" + +#: cps/templates/detail.html:267 +#, fuzzy +msgid "Archive" msgstr "Gearchiveerd" #: cps/templates/detail.html:278 cps/templates/listenmp3.html:177 @@ -2960,6 +2975,10 @@ msgstr "Boekgegevens" msgid "Grid" msgstr "Raster" +#: cps/templates/listenmp3.html:167 +msgid "Archived" +msgstr "Gearchiveerd" + #: cps/templates/login.html:18 msgid "Remember Me" msgstr "Gegevens opslaan" diff --git a/cps/translations/no/LC_MESSAGES/messages.mo b/cps/translations/no/LC_MESSAGES/messages.mo index 4c1a9b25..1ea22abf 100644 Binary files a/cps/translations/no/LC_MESSAGES/messages.mo and b/cps/translations/no/LC_MESSAGES/messages.mo differ diff --git a/cps/translations/no/LC_MESSAGES/messages.po b/cps/translations/no/LC_MESSAGES/messages.po index 164332a9..cb17030e 100644 --- a/cps/translations/no/LC_MESSAGES/messages.po +++ b/cps/translations/no/LC_MESSAGES/messages.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Calibre-Web\n" "Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n" -"POT-Creation-Date: 2024-06-09 12:26+0200\n" +"POT-Creation-Date: 2024-06-30 12:19+0200\n" "PO-Revision-Date: 2023-01-06 11:00+0000\n" "Last-Translator: Vegard Fladby \n" "Language: no\n" @@ -16,7 +16,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.11.0\n" +"Generated-By: Babel 2.13.1\n" #: cps/about.py:84 msgid "Statistics" @@ -45,9 +45,9 @@ msgstr "Ukjent kommando" msgid "Success! Books queued for Metadata Backup, please check Tasks for result" msgstr "Test e-post i kø for sending til %(email)s, sjekk Oppgaver for resultat" -#: cps/admin.py:207 cps/editbooks.py:591 cps/editbooks.py:593 -#: cps/editbooks.py:631 cps/editbooks.py:648 cps/editbooks.py:1280 -#: cps/updater.py:613 cps/uploader.py:93 cps/uploader.py:102 +#: cps/admin.py:207 cps/editbooks.py:573 cps/editbooks.py:575 +#: cps/editbooks.py:615 cps/editbooks.py:658 cps/editbooks.py:1280 +#: cps/updater.py:615 cps/uploader.py:93 cps/uploader.py:102 msgid "Unknown" msgstr "Ukjent" @@ -67,12 +67,12 @@ msgstr "UI-konfigurasjon" msgid "Edit Users" msgstr "Rediger brukere" -#: cps/admin.py:368 cps/opds.py:541 cps/templates/grid.html:14 +#: cps/admin.py:368 cps/opds.py:542 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "Alle" -#: cps/admin.py:395 cps/admin.py:1417 +#: cps/admin.py:395 cps/admin.py:1414 msgid "User not found" msgstr "Bruker ikke funnet" @@ -89,7 +89,7 @@ msgstr "Vis alt" msgid "Malformed request" msgstr "Feil utformet forespørsel" -#: cps/admin.py:471 cps/admin.py:2048 +#: cps/admin.py:471 cps/admin.py:2046 msgid "Guest Name can't be changed" msgstr "Gjestenavn kan ikke endres" @@ -97,7 +97,7 @@ msgstr "Gjestenavn kan ikke endres" msgid "Guest can't have this role" msgstr "Gjesten kan ikke ha denne rollen" -#: cps/admin.py:495 cps/admin.py:2002 +#: cps/admin.py:495 cps/admin.py:2000 msgid "No admin user remaining, can't remove admin role" msgstr "Ingen administratorbruker igjen, kan ikke fjerne administratorrollen" @@ -129,7 +129,7 @@ msgstr "Ingen gyldig lokalitet gitt" msgid "No Valid Book Language Given" msgstr "Ikke oppgitt gyldig bokspråk" -#: cps/admin.py:535 cps/editbooks.py:457 +#: cps/admin.py:535 cps/editbooks.py:440 msgid "Parameter not found" msgstr "Parameter ikke funnet" @@ -141,7 +141,7 @@ msgstr "Ugyldig lesekolonne" msgid "Invalid Restricted Column" msgstr "Ugyldig begrenset kolonne" -#: cps/admin.py:598 cps/admin.py:1873 +#: cps/admin.py:598 cps/admin.py:1871 msgid "Calibre-Web configuration updated" msgstr "Calibre-Web-konfigurasjonen er oppdatert" @@ -221,298 +221,298 @@ msgstr "Merket ble ikke funnet" msgid "Invalid Action" msgstr "Ugyldig handling" -#: cps/admin.py:1123 +#: cps/admin.py:1120 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "client_secrets.json er ikke konfigurert for webapplikasjon" -#: cps/admin.py:1168 +#: cps/admin.py:1165 msgid "Logfile Location is not Valid, Please Enter Correct Path" msgstr "Loggfilplasseringen er ikke gyldig, skriv inn riktig bane" -#: cps/admin.py:1174 +#: cps/admin.py:1171 msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgstr "Plasseringen av tilgangsloggfilen er ikke gyldig, skriv inn riktig bane" -#: cps/admin.py:1208 +#: cps/admin.py:1205 msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgstr "Angi en LDAP-leverandør, port, DN og brukerobjektidentifikator" -#: cps/admin.py:1214 +#: cps/admin.py:1211 msgid "Please Enter a LDAP Service Account and Password" msgstr "Vennligst skriv inn en LDAP-tjenestekonto og passord" -#: cps/admin.py:1217 +#: cps/admin.py:1214 msgid "Please Enter a LDAP Service Account" msgstr "Angi en LDAP-tjenestekonto" -#: cps/admin.py:1222 +#: cps/admin.py:1219 #, python-format msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgstr "LDAP-gruppeobjektfilter må ha én \"%s\"-formatidentifikator" -#: cps/admin.py:1224 +#: cps/admin.py:1221 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "LDAP-gruppeobjektfilter har uovertruffen parentes" -#: cps/admin.py:1228 +#: cps/admin.py:1225 #, python-format msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgstr "LDAP-brukerobjektfilter må ha én \"%s\"-formatidentifikator" -#: cps/admin.py:1230 +#: cps/admin.py:1227 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "LDAP-brukerobjektfilter har uovertruffen parentes" -#: cps/admin.py:1237 +#: cps/admin.py:1234 #, python-format msgid "LDAP Member User Filter needs to Have One \"%s\" Format Identifier" msgstr "LDAP-medlemsbrukerfilter må ha én \"%s\"-formatidentifikator" -#: cps/admin.py:1239 +#: cps/admin.py:1236 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "LDAP-medlemsbrukerfilter har uovertruffen parentes" -#: cps/admin.py:1246 +#: cps/admin.py:1243 msgid "LDAP CACertificate, Certificate or Key Location is not Valid, Please Enter Correct Path" msgstr "LDAP CA-sertifikat, sertifikat eller nøkkelplassering er ikke gyldig. Angi riktig bane" -#: cps/admin.py:1277 cps/templates/admin.html:53 +#: cps/admin.py:1274 cps/templates/admin.html:53 msgid "Add New User" msgstr "Legg til ny bruker" -#: cps/admin.py:1286 cps/templates/admin.html:100 +#: cps/admin.py:1283 cps/templates/admin.html:100 #, fuzzy msgid "Edit Email Server Settings" msgstr "Rediger e-postserverinnstillinger" -#: cps/admin.py:1305 +#: cps/admin.py:1302 msgid "Success! Gmail Account Verified." msgstr "" -#: cps/admin.py:1325 cps/admin.py:1328 cps/admin.py:1713 cps/admin.py:1857 -#: cps/admin.py:1955 cps/admin.py:2076 cps/editbooks.py:243 -#: cps/editbooks.py:319 cps/editbooks.py:1242 cps/shelf.py:90 cps/shelf.py:150 +#: cps/admin.py:1322 cps/admin.py:1325 cps/admin.py:1710 cps/admin.py:1855 +#: cps/admin.py:1953 cps/admin.py:2074 cps/editbooks.py:226 +#: cps/editbooks.py:303 cps/editbooks.py:1242 cps/shelf.py:90 cps/shelf.py:150 #: cps/shelf.py:193 cps/shelf.py:243 cps/shelf.py:280 cps/shelf.py:354 -#: cps/shelf.py:468 cps/tasks/convert.py:150 cps/web.py:1520 +#: cps/shelf.py:468 cps/tasks/convert.py:153 cps/web.py:1520 #, fuzzy, python-format msgid "Oops! Database Error: %(error)s." msgstr "Databasefeil: %(error)s." -#: cps/admin.py:1335 +#: cps/admin.py:1332 #, python-format msgid "Test e-mail queued for sending to %(email)s, please check Tasks for result" msgstr "Test e-post i kø for sending til %(email)s, sjekk Oppgaver for resultat" -#: cps/admin.py:1338 +#: cps/admin.py:1335 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "Det oppsto en feil ved sending av test-e-posten: %(res)s" -#: cps/admin.py:1340 +#: cps/admin.py:1337 msgid "Please configure your e-mail address first..." msgstr "Vennligst konfigurer e-postadressen din først..." -#: cps/admin.py:1342 +#: cps/admin.py:1339 #, fuzzy msgid "Email Server Settings updated" msgstr "E-postserverinnstillinger oppdatert" -#: cps/admin.py:1365 cps/templates/admin.html:195 +#: cps/admin.py:1362 cps/templates/admin.html:195 msgid "Edit Scheduled Tasks Settings" msgstr "Rediger innstillinger for planlagte oppgaver" -#: cps/admin.py:1377 +#: cps/admin.py:1374 msgid "Invalid start time for task specified" msgstr "Ugyldig starttidspunkt for spesifisert oppgave" -#: cps/admin.py:1382 +#: cps/admin.py:1379 msgid "Invalid duration for task specified" msgstr "Ugyldig varighet for spesifisert oppgave" -#: cps/admin.py:1392 +#: cps/admin.py:1389 msgid "Scheduled tasks settings updated" msgstr "Innstillinger for planlagte oppgaver er oppdatert" -#: cps/admin.py:1402 cps/admin.py:1451 cps/admin.py:2072 cps/web.py:1316 +#: cps/admin.py:1399 cps/admin.py:1448 cps/admin.py:2070 cps/web.py:1316 #, fuzzy msgid "Oops! An unknown error occurred. Please try again later." msgstr "En ukjent feil oppstod. Prøv igjen senere." -#: cps/admin.py:1406 +#: cps/admin.py:1403 msgid "Settings DB is not Writeable" msgstr "Innstillinger DB er ikke skrivbar" -#: cps/admin.py:1436 cps/admin.py:2064 +#: cps/admin.py:1433 cps/admin.py:2062 #, python-format msgid "Edit User %(nick)s" msgstr "Rediger bruker %(nick)s" -#: cps/admin.py:1448 +#: cps/admin.py:1445 #, fuzzy, python-format msgid "Success! Password for user %(user)s reset" msgstr "Passord for bruker %(user)s tilbakestilling" -#: cps/admin.py:1454 +#: cps/admin.py:1451 #, fuzzy msgid "Oops! Please configure the SMTP mail settings." msgstr "Vennligst konfigurer SMTP-postinnstillingene først..." -#: cps/admin.py:1465 +#: cps/admin.py:1462 msgid "Logfile viewer" msgstr "Loggfilviser" -#: cps/admin.py:1531 +#: cps/admin.py:1528 msgid "Requesting update package" msgstr "Ber om oppdateringspakke" -#: cps/admin.py:1532 +#: cps/admin.py:1529 msgid "Downloading update package" msgstr "Laster ned oppdateringspakken" -#: cps/admin.py:1533 +#: cps/admin.py:1530 msgid "Unzipping update package" msgstr "Pakker ut oppdateringspakken" -#: cps/admin.py:1534 +#: cps/admin.py:1531 msgid "Replacing files" msgstr "Erstatter filer" -#: cps/admin.py:1535 +#: cps/admin.py:1532 msgid "Database connections are closed" msgstr "Databaseforbindelser er stengt" -#: cps/admin.py:1536 +#: cps/admin.py:1533 msgid "Stopping server" msgstr "Stopper server" -#: cps/admin.py:1537 +#: cps/admin.py:1534 msgid "Update finished, please press okay and reload page" msgstr "Oppdatering fullført, vennligst trykk OK og last inn siden på nytt" -#: cps/admin.py:1538 cps/admin.py:1539 cps/admin.py:1540 cps/admin.py:1541 -#: cps/admin.py:1542 cps/admin.py:1543 +#: cps/admin.py:1535 cps/admin.py:1536 cps/admin.py:1537 cps/admin.py:1538 +#: cps/admin.py:1539 cps/admin.py:1540 msgid "Update failed:" msgstr "Oppdatering mislyktes:" -#: cps/admin.py:1538 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 +#: cps/admin.py:1535 cps/updater.py:391 cps/updater.py:626 cps/updater.py:628 msgid "HTTP Error" msgstr "HTTP-feil" -#: cps/admin.py:1539 cps/updater.py:391 cps/updater.py:628 +#: cps/admin.py:1536 cps/updater.py:393 cps/updater.py:630 msgid "Connection error" msgstr "Tilkoblingsfeil" -#: cps/admin.py:1540 cps/updater.py:393 cps/updater.py:630 +#: cps/admin.py:1537 cps/updater.py:395 cps/updater.py:632 msgid "Timeout while establishing connection" msgstr "Tidsavbrudd under etablering av tilkobling" -#: cps/admin.py:1541 cps/updater.py:395 cps/updater.py:632 +#: cps/admin.py:1538 cps/updater.py:397 cps/updater.py:634 msgid "General error" msgstr "Generell feil" -#: cps/admin.py:1542 +#: cps/admin.py:1539 msgid "Update file could not be saved in temp dir" msgstr "Oppdateringsfilen kunne ikke lagres i temp dir" -#: cps/admin.py:1543 +#: cps/admin.py:1540 msgid "Files could not be replaced during update" msgstr "Filer kunne ikke erstattes under oppdatering" -#: cps/admin.py:1567 +#: cps/admin.py:1564 msgid "Failed to extract at least One LDAP User" msgstr "Kunne ikke pakke ut minst én LDAP-bruker" -#: cps/admin.py:1612 +#: cps/admin.py:1609 msgid "Failed to Create at Least One LDAP User" msgstr "Kunne ikke opprette minst én LDAP-bruker" -#: cps/admin.py:1625 +#: cps/admin.py:1622 #, python-format msgid "Error: %(ldaperror)s" msgstr "Feil: %(ldaperror)s" -#: cps/admin.py:1629 +#: cps/admin.py:1626 msgid "Error: No user returned in response of LDAP server" msgstr "Feil: Ingen bruker ble returnert som svar fra LDAP-serveren" -#: cps/admin.py:1665 +#: cps/admin.py:1662 msgid "At Least One LDAP User Not Found in Database" msgstr "Minst én LDAP-bruker ikke funnet i databasen" -#: cps/admin.py:1667 +#: cps/admin.py:1664 msgid "{} User Successfully Imported" msgstr "{} Bruker ble importert" -#: cps/admin.py:1725 +#: cps/admin.py:1722 msgid "DB Location is not Valid, Please Enter Correct Path" msgstr "DB-plassering er ikke gyldig, skriv inn riktig bane" -#: cps/admin.py:1745 +#: cps/admin.py:1742 msgid "DB is not Writeable" msgstr "DB er ikke skrivbar" -#: cps/admin.py:1761 +#: cps/admin.py:1758 msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgstr "Nøkkelfilplasseringen er ikke gyldig. Angi riktig bane" -#: cps/admin.py:1765 +#: cps/admin.py:1762 msgid "Certfile Location is not Valid, Please Enter Correct Path" msgstr "Sertifikatfilplasseringen er ikke gyldig, vennligst skriv inn riktig bane" -#: cps/admin.py:1842 +#: cps/admin.py:1840 msgid "Password length has to be between 1 and 40" msgstr "" -#: cps/admin.py:1896 +#: cps/admin.py:1894 msgid "Database Settings updated" msgstr "Databaseinnstillinger oppdatert" -#: cps/admin.py:1904 +#: cps/admin.py:1902 msgid "Database Configuration" msgstr "Databasekonfigurasjon" -#: cps/admin.py:1919 cps/web.py:1290 +#: cps/admin.py:1917 cps/web.py:1290 #, fuzzy msgid "Oops! Please complete all fields." msgstr "Vennligst fyll ut alle feltene!" -#: cps/admin.py:1928 +#: cps/admin.py:1926 msgid "E-mail is not from valid domain" msgstr "E-post er ikke fra gyldig domene" -#: cps/admin.py:1934 +#: cps/admin.py:1932 msgid "Add new user" msgstr "Legg til ny bruker" -#: cps/admin.py:1945 +#: cps/admin.py:1943 #, python-format msgid "User '%(user)s' created" msgstr "Bruker '%(user)s' opprettet" -#: cps/admin.py:1951 +#: cps/admin.py:1949 #, fuzzy msgid "Oops! An account already exists for this Email. or name." msgstr "Fant en eksisterende konto for denne e-postadressen eller navnet." -#: cps/admin.py:1981 +#: cps/admin.py:1979 #, python-format msgid "User '%(nick)s' deleted" msgstr "Brukeren '%(nick)s' slettet" -#: cps/admin.py:1984 +#: cps/admin.py:1982 msgid "Can't delete Guest User" msgstr "Kan ikke slette gjestebruker" -#: cps/admin.py:1987 +#: cps/admin.py:1985 msgid "No admin user remaining, can't delete user" msgstr "Ingen administratorbruker igjen, kan ikke slette bruker" -#: cps/admin.py:2042 cps/web.py:1469 +#: cps/admin.py:2040 cps/web.py:1469 #, fuzzy msgid "Email can't be empty and has to be a valid Email" msgstr "E-postadresse kan ikke være tom og må være en gyldig e-post" -#: cps/admin.py:2068 +#: cps/admin.py:2066 #, python-format msgid "User '%(nick)s' updated" msgstr "Bruker '%(nick)s' oppdatert" @@ -525,12 +525,12 @@ msgstr "ikke installert" msgid "Execution permissions missing" msgstr "Utførelsestillatelser mangler" -#: cps/db.py:756 cps/search.py:137 cps/web.py:747 +#: cps/db.py:768 cps/search.py:137 cps/web.py:747 #, python-format msgid "Custom Column No.%(column)d does not exist in calibre database" msgstr "Egendefinert kolonnenr.%(column)d finnes ikke i caliber-databasen" -#: cps/db.py:996 cps/templates/config_edit.html:203 +#: cps/db.py:1008 cps/templates/config_edit.html:203 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 #: cps/web.py:562 cps/web.py:596 cps/web.py:641 cps/web.py:681 cps/web.py:708 #: cps/web.py:989 cps/web.py:1019 cps/web.py:1064 cps/web.py:1092 @@ -538,101 +538,106 @@ msgstr "Egendefinert kolonnenr.%(column)d finnes ikke i caliber-databasen" msgid "None" msgstr "Ingen" -#: cps/editbooks.py:124 cps/editbooks.py:912 cps/web.py:529 cps/web.py:1561 -#: cps/web.py:1605 cps/web.py:1650 +#: cps/editbooks.py:108 cps/editbooks.py:929 cps/web.py:529 cps/web.py:1561 +#: cps/web.py:1606 cps/web.py:1651 #, fuzzy msgid "Oops! Selected book is unavailable. File does not exist or is not accessible" msgstr "Oops! Den valgte boktittelen er utilgjengelig. Filen eksisterer ikke eller er ikke tilgjengelig" -#: cps/editbooks.py:168 cps/editbooks.py:1263 +#: cps/editbooks.py:151 cps/editbooks.py:1263 msgid "User has no rights to upload cover" msgstr "Brukeren har ingen rettigheter til å laste opp cover" -#: cps/editbooks.py:188 cps/editbooks.py:733 +#: cps/editbooks.py:171 cps/editbooks.py:744 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "Identifikatorer skiller ikke mellom store og små bokstaver, overskriver gammel identifikator" -#: cps/editbooks.py:230 +#: cps/editbooks.py:213 msgid "Metadata successfully updated" msgstr "Metadata ble oppdatert" -#: cps/editbooks.py:248 +#: cps/editbooks.py:231 msgid "Error editing book: {}" msgstr "Feil ved redigering av bok: {}" -#: cps/editbooks.py:305 +#: cps/editbooks.py:289 #, python-format msgid "File %(file)s uploaded" msgstr "Fil %(file)s lastet opp" -#: cps/editbooks.py:333 +#: cps/editbooks.py:317 msgid "Source or destination format for conversion missing" msgstr "Kilde- eller målformat for konvertering mangler" -#: cps/editbooks.py:341 +#: cps/editbooks.py:325 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "Boken ble satt i kø for konvertering til %(book_format)s" -#: cps/editbooks.py:345 +#: cps/editbooks.py:329 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "Det oppsto en feil ved konvertering av denne boken: %(res)s" -#: cps/editbooks.py:652 +#: cps/editbooks.py:662 msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgstr "Opplastet bok finnes sannsynligvis i biblioteket, vurder å endre før du laster opp ny: " -#: cps/editbooks.py:707 cps/editbooks.py:1043 +#: cps/editbooks.py:718 cps/editbooks.py:1049 #, python-format msgid "'%(langname)s' is not a valid language" msgstr "'%(langname)s' er ikke et gyldig språk" -#: cps/editbooks.py:745 cps/editbooks.py:1203 +#: cps/editbooks.py:756 cps/editbooks.py:1192 +#, fuzzy +msgid "File type isn't allowed to be uploaded to this server" +msgstr "Filtypen «%(ext)s» er ikke tillatt å lastes opp til denne serveren" + +#: cps/editbooks.py:762 cps/editbooks.py:1202 #, python-format msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgstr "Filtypen «%(ext)s» er ikke tillatt å lastes opp til denne serveren" -#: cps/editbooks.py:749 cps/editbooks.py:1207 +#: cps/editbooks.py:766 cps/editbooks.py:1206 msgid "File to be uploaded must have an extension" msgstr "Filen som skal lastes opp må ha en utvidelse" -#: cps/editbooks.py:757 +#: cps/editbooks.py:774 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "Filen %(filename)s kunne ikke lagres i midlertidig dir" -#: cps/editbooks.py:777 +#: cps/editbooks.py:794 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "Kunne ikke flytte omslagsfil %(file)s: %(error)s" -#: cps/editbooks.py:834 cps/editbooks.py:836 +#: cps/editbooks.py:851 cps/editbooks.py:853 msgid "Book Format Successfully Deleted" msgstr "Bokformatet er slettet" -#: cps/editbooks.py:843 cps/editbooks.py:845 +#: cps/editbooks.py:860 cps/editbooks.py:862 msgid "Book Successfully Deleted" msgstr "Boken ble slettet" -#: cps/editbooks.py:897 +#: cps/editbooks.py:914 msgid "You are missing permissions to delete books" msgstr "Du mangler tillatelser til å slette bøker" -#: cps/editbooks.py:947 +#: cps/editbooks.py:964 msgid "edit metadata" msgstr "redigere metadata" -#: cps/editbooks.py:996 +#: cps/editbooks.py:1013 #, python-format msgid "%(seriesindex)s is not a valid number, skipping" msgstr "%(seriesindex)s er ikke et gyldig tall, hopper over" -#: cps/editbooks.py:1198 +#: cps/editbooks.py:1197 msgid "User has no rights to upload additional file formats" msgstr "Brukeren har ingen rettigheter til å laste opp flere filformater" -#: cps/editbooks.py:1219 +#: cps/editbooks.py:1218 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "Kunne ikke opprette banen %(path)s (Tillatelse nektet)." @@ -651,7 +656,7 @@ msgstr "Filformat %(ext)s lagt til %(book)s" msgid "Google Drive setup not completed, try to deactivate and activate Google Drive again" msgstr "Google Disk-konfigurasjonen er ikke fullført. Prøv å deaktivere og aktivere Google Disk på nytt" -#: cps/gdrive.py:95 +#: cps/gdrive.py:96 msgid "Callback domain is not verified, please follow steps to verify domain in google developer console" msgstr "Tilbakeringingsdomene er ikke bekreftet. Følg fremgangsmåten for å bekrefte domenet i Googles utviklerkonsoll" @@ -660,7 +665,7 @@ msgstr "Tilbakeringingsdomene er ikke bekreftet. Følg fremgangsmåten for å be msgid "%(format)s format not found for book id: %(book)d" msgstr "%(format)s format ikke funnet for bok-ID: %(book)d" -#: cps/helper.py:93 cps/tasks/convert.py:86 +#: cps/helper.py:93 cps/tasks/convert.py:89 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "%(format)s ikke funnet på Google Disk: %(fn)s" @@ -737,125 +742,121 @@ msgstr "Sletting av bok %(id)s mislyktes: %(message)s" msgid "Deleting book %(id)s from database only, book path in database not valid: %(path)s" msgstr "Sletter bok %(id)s kun fra databasen, bokbanen i databasen er ikke gyldig: %(path)s" -#: cps/helper.py:452 +#: cps/helper.py:465 #, python-format msgid "Rename author from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgstr "Endre navn på forfatter fra: '%(src)s' til '%(dest)s' mislyktes med feil: %(error)s" -#: cps/helper.py:524 cps/helper.py:533 +#: cps/helper.py:536 cps/helper.py:545 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "Fil %(file)s ikke funnet på Google Disk" -#: cps/helper.py:567 +#: cps/helper.py:587 #, python-format msgid "Rename title from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgstr "Endre navn på tittel fra: '%(src)s' til '%(dest)s' mislyktes med feil: %(error)s" -#: cps/helper.py:587 -msgid "Error in rename file in path: {}" -msgstr "Feil i endre navn på fil i banen: {}" - -#: cps/helper.py:605 +#: cps/helper.py:625 #, python-format msgid "Book path %(path)s not found on Google Drive" msgstr "Finner ikke bokbane %(path)s på Google Disk" -#: cps/helper.py:670 +#: cps/helper.py:685 #, fuzzy msgid "Found an existing account for this Email address" msgstr "Fant en eksisterende konto for denne e-postadressen" -#: cps/helper.py:678 +#: cps/helper.py:693 msgid "This username is already taken" msgstr "Dette brukernavnet er allerede tatt" -#: cps/helper.py:690 +#: cps/helper.py:705 #, fuzzy msgid "Invalid Email address format" msgstr "Ugyldig format for e-postadresse" -#: cps/helper.py:710 +#: cps/helper.py:726 msgid "Password doesn't comply with password validation rules" msgstr "" -#: cps/helper.py:859 +#: cps/helper.py:873 msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "Python-modulen 'advocate' er ikke installert, men er nødvendig for omslagsopplastinger" -#: cps/helper.py:869 +#: cps/helper.py:883 msgid "Error Downloading Cover" msgstr "Feil ved nedlasting av cover" -#: cps/helper.py:872 +#: cps/helper.py:886 msgid "Cover Format Error" msgstr "Omslagsformatfeil" -#: cps/helper.py:875 +#: cps/helper.py:889 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "Du har ikke tilgang til localhost eller det lokale nettverket for coveropplastinger" -#: cps/helper.py:885 +#: cps/helper.py:899 msgid "Failed to create path for cover" msgstr "Kunne ikke opprette bane for dekning" -#: cps/helper.py:901 +#: cps/helper.py:915 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "Cover-filen er ikke en gyldig bildefil, eller kunne ikke lagres" -#: cps/helper.py:912 +#: cps/helper.py:926 msgid "Only jpg/jpeg/png/webp/bmp files are supported as coverfile" msgstr "Bare jpg/jpeg/png/webp/bmp-filer støttes som coverfile" -#: cps/helper.py:924 +#: cps/helper.py:938 msgid "Invalid cover file content" msgstr "Ugyldig omslagsfilinnhold" -#: cps/helper.py:928 +#: cps/helper.py:942 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "Bare jpg/jpeg-filer støttes som coverfile" -#: cps/helper.py:999 cps/helper.py:1156 +#: cps/helper.py:1014 cps/helper.py:1171 msgid "Cover" msgstr "Dekke" -#: cps/helper.py:1016 +#: cps/helper.py:1031 msgid "UnRar binary file not found" msgstr "UnRar binær fil ikke funnet" -#: cps/helper.py:1027 +#: cps/helper.py:1042 msgid "Error executing UnRar" msgstr "Feil ved kjøring av UnRar" -#: cps/helper.py:1035 +#: cps/helper.py:1050 msgid "Could not find the specified directory" msgstr "" -#: cps/helper.py:1038 +#: cps/helper.py:1053 msgid "Please specify a directory, not a file" msgstr "" -#: cps/helper.py:1052 +#: cps/helper.py:1067 #, fuzzy msgid "Calibre binaries not viable" msgstr "DB er ikke skrivbar" -#: cps/helper.py:1061 +#: cps/helper.py:1076 #, python-format msgid "Missing calibre binaries: %(missing)s" msgstr "" -#: cps/helper.py:1063 +#: cps/helper.py:1078 #, fuzzy, python-format msgid "Missing executable permissions: %(missing)s" msgstr "Utførelsestillatelser mangler" -#: cps/helper.py:1068 +#: cps/helper.py:1083 #, fuzzy msgid "Error executing Calibre" msgstr "Feil ved kjøring av UnRar" -#: cps/helper.py:1158 cps/templates/admin.html:216 +#: cps/helper.py:1173 cps/templates/admin.html:216 msgid "Queue all books for metadata backup" msgstr "Sett alle bøker i kø for sikkerhetskopiering av metadata" @@ -901,35 +902,35 @@ msgstr "Fjern koblingen til %(oauth)s mislyktes" msgid "Not Linked to %(oauth)s" msgstr "Ikke koblet til %(oauth)s" -#: cps/oauth_bb.py:261 +#: cps/oauth_bb.py:262 msgid "Failed to log in with GitHub." msgstr "Kunne ikke logge på med GitHub." -#: cps/oauth_bb.py:267 +#: cps/oauth_bb.py:268 msgid "Failed to fetch user info from GitHub." msgstr "Kunne ikke hente brukerinformasjon fra GitHub." -#: cps/oauth_bb.py:279 +#: cps/oauth_bb.py:280 msgid "Failed to log in with Google." msgstr "Kunne ikke logge på med Google." -#: cps/oauth_bb.py:285 +#: cps/oauth_bb.py:286 msgid "Failed to fetch user info from Google." msgstr "Kunne ikke hente brukerinformasjon fra Google." -#: cps/oauth_bb.py:332 +#: cps/oauth_bb.py:334 msgid "GitHub Oauth error, please retry later." msgstr "GitHub Oauth-feil, prøv igjen senere." -#: cps/oauth_bb.py:335 +#: cps/oauth_bb.py:337 msgid "GitHub Oauth error: {}" msgstr "GitHub Oauth-feil: {}" -#: cps/oauth_bb.py:356 +#: cps/oauth_bb.py:358 msgid "Google Oauth error, please retry later." msgstr "Google Oauth-feil, prøv igjen senere." -#: cps/oauth_bb.py:359 +#: cps/oauth_bb.py:361 msgid "Google Oauth error: {}" msgstr "Google Oauth-feil: {}" @@ -1287,32 +1288,32 @@ msgstr "avbrutt" msgid "Unknown Status" msgstr "Ukjent status" -#: cps/updater.py:431 cps/updater.py:442 cps/updater.py:543 cps/updater.py:558 +#: cps/updater.py:433 cps/updater.py:444 cps/updater.py:545 cps/updater.py:560 msgid "Unexpected data while reading update information" msgstr "Uventede data under lesing av oppdateringsinformasjon" -#: cps/updater.py:438 cps/updater.py:550 +#: cps/updater.py:440 cps/updater.py:552 msgid "No update available. You already have the latest version installed" msgstr "Ingen oppdatering tilgjengelig. Du har allerede den nyeste versjonen installert" -#: cps/updater.py:456 +#: cps/updater.py:458 msgid "A new update is available. Click on the button below to update to the latest version." msgstr "En ny oppdatering er tilgjengelig. Klikk på knappen nedenfor for å oppdatere til siste versjon." -#: cps/updater.py:474 +#: cps/updater.py:476 msgid "Could not fetch update information" msgstr "Kunne ikke hente oppdateringsinformasjon" -#: cps/updater.py:484 +#: cps/updater.py:486 msgid "Click on the button below to update to the latest stable version." msgstr "Klikk på knappen nedenfor for å oppdatere til siste stabile versjon." -#: cps/updater.py:493 cps/updater.py:507 cps/updater.py:518 +#: cps/updater.py:495 cps/updater.py:509 cps/updater.py:520 #, python-format msgid "A new update is available. Click on the button below to update to version: %(version)s" msgstr "En ny oppdatering er tilgjengelig. Klikk på knappen nedenfor for å oppdatere til versjon: %(version)s" -#: cps/updater.py:536 +#: cps/updater.py:538 msgid "No release information available" msgstr "Ingen utgivelsesinformasjon tilgjengelig" @@ -1493,50 +1494,50 @@ msgstr "Profil oppdatert" msgid "Oops! An account already exists for this Email." msgstr "" -#: cps/services/gmail.py:58 +#: cps/services/gmail.py:59 msgid "Found no valid gmail.json file with OAuth information" msgstr "Fant ingen gyldig gmail.json-fil med OAuth-informasjon" -#: cps/tasks/convert.py:105 +#: cps/tasks/convert.py:108 #, python-format msgid "%(book)s send to E-Reader" msgstr "%(book)s sendes til E-Reader" -#: cps/tasks/convert.py:167 +#: cps/tasks/convert.py:170 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "Caliber ebook-convert %(tool)s ble ikke funnet" -#: cps/tasks/convert.py:201 +#: cps/tasks/convert.py:204 #, python-format msgid "%(format)s format not found on disk" msgstr "%(format)s format ikke funnet på disken" -#: cps/tasks/convert.py:205 +#: cps/tasks/convert.py:208 msgid "Ebook converter failed with unknown error" msgstr "Ebook-konvertering mislyktes med ukjent feil" -#: cps/tasks/convert.py:224 +#: cps/tasks/convert.py:227 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "Kepubify-konvertering mislyktes: %(error)s" -#: cps/tasks/convert.py:245 +#: cps/tasks/convert.py:248 #, python-format msgid "Converted file not found or more than one file in folder %(folder)s" msgstr "Konvertert fil ikke funnet eller mer enn én fil i mappen %(folder)s" -#: cps/tasks/convert.py:287 +#: cps/tasks/convert.py:291 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "Ebook-konvertering mislyktes: %(error)s" -#: cps/tasks/convert.py:310 +#: cps/tasks/convert.py:314 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "Caliber mislyktes med feil: %(error)s" -#: cps/tasks/convert.py:315 +#: cps/tasks/convert.py:319 msgid "Convert" msgstr "Konvertere" @@ -1548,7 +1549,7 @@ msgstr "Kobler til Caliber-databasen på nytt" msgid "E-mail" msgstr "E-post" -#: cps/tasks/metadata_backup.py:33 +#: cps/tasks/metadata_backup.py:34 msgid "Backing up Metadata" msgstr "Sikkerhetskopierer metadata" @@ -1561,20 +1562,20 @@ msgstr "" msgid "Generated %(count)s cover thumbnails" msgstr "Genererte %(count)s forsideminiatyrbilder" -#: cps/tasks/thumbnail.py:230 cps/tasks/thumbnail.py:443 -#: cps/tasks/thumbnail.py:511 +#: cps/tasks/thumbnail.py:231 cps/tasks/thumbnail.py:444 +#: cps/tasks/thumbnail.py:512 msgid "Cover Thumbnails" msgstr "Forsideminiatyrbilder" -#: cps/tasks/thumbnail.py:289 +#: cps/tasks/thumbnail.py:290 msgid "Generated {0} series thumbnails" msgstr "Genererte {0} serieminiatyrbilder" -#: cps/tasks/thumbnail.py:454 +#: cps/tasks/thumbnail.py:455 msgid "Clearing cover thumbnail cache" msgstr "Tømmer cache for miniatyrbilde for omslag" -#: cps/tasks/upload.py:38 cps/templates/admin.html:20 +#: cps/tasks/upload.py:39 cps/templates/admin.html:20 #: cps/templates/layout.html:81 cps/templates/user_table.html:145 msgid "Upload" msgstr "Laste opp" @@ -1829,7 +1830,7 @@ msgstr "OK" #: cps/templates/admin.html:259 cps/templates/admin.html:273 #: cps/templates/book_edit.html:214 cps/templates/book_table.html:127 -#: cps/templates/config_db.html:66 cps/templates/config_edit.html:423 +#: cps/templates/config_db.html:66 cps/templates/config_edit.html:427 #: cps/templates/config_view_edit.html:175 cps/templates/detail.html:342 #: cps/templates/modal_dialogs.html:64 cps/templates/modal_dialogs.html:99 #: cps/templates/modal_dialogs.html:117 cps/templates/modal_dialogs.html:135 @@ -2015,7 +2016,7 @@ msgid "Fetch Metadata" msgstr "Hent metadata" #: cps/templates/book_edit.html:213 cps/templates/config_db.html:65 -#: cps/templates/config_edit.html:422 cps/templates/config_view_edit.html:174 +#: cps/templates/config_edit.html:426 cps/templates/config_view_edit.html:174 #: cps/templates/email_edit.html:65 cps/templates/schedule_edit.html:44 #: cps/templates/shelf_edit.html:25 cps/templates/shelf_order.html:41 #: cps/templates/user_edit.html:142 @@ -2487,46 +2488,50 @@ msgid "Configure Backend for Limiter" msgstr "" #: cps/templates/config_edit.html:376 -msgid "Options for Limiter" +msgid "Options for Limiter Backend" msgstr "" -#: cps/templates/config_edit.html:381 +#: cps/templates/config_edit.html:382 +msgid "Check if file extensions matches file content on upload" +msgstr "" + +#: cps/templates/config_edit.html:385 msgid "Session protection" msgstr "" -#: cps/templates/config_edit.html:383 +#: cps/templates/config_edit.html:387 msgid "Basic" msgstr "" -#: cps/templates/config_edit.html:384 +#: cps/templates/config_edit.html:388 msgid "Strong" msgstr "" -#: cps/templates/config_edit.html:389 +#: cps/templates/config_edit.html:393 msgid "User Password policy" msgstr "" -#: cps/templates/config_edit.html:393 +#: cps/templates/config_edit.html:397 msgid "Minimum password length" msgstr "" -#: cps/templates/config_edit.html:398 +#: cps/templates/config_edit.html:402 msgid "Enforce number" msgstr "" -#: cps/templates/config_edit.html:402 +#: cps/templates/config_edit.html:406 msgid "Enforce lowercase characters" msgstr "" -#: cps/templates/config_edit.html:406 +#: cps/templates/config_edit.html:410 msgid "Enforce uppercase characters" msgstr "" -#: cps/templates/config_edit.html:410 +#: cps/templates/config_edit.html:414 msgid "Enforce characters (needed For Chinese/Japanese/Korean Characters)" msgstr "" -#: cps/templates/config_edit.html:414 +#: cps/templates/config_edit.html:418 msgid "Enforce special characters" msgstr "" @@ -2662,6 +2667,10 @@ msgstr "" msgid "Mark As Read" msgstr "" +#: cps/templates/detail.html:254 +msgid "Mark Book as Read or Unread" +msgstr "" + #: cps/templates/detail.html:254 cps/templates/listenmp3.html:159 #, fuzzy msgid "Read" @@ -2675,9 +2684,13 @@ msgstr "" msgid "Add to archive" msgstr "" -#: cps/templates/detail.html:267 cps/templates/listenmp3.html:167 +#: cps/templates/detail.html:267 +msgid "Mark Book as archived or not, to hide it in Calibre-Web and delete it from Kobo Reader" +msgstr "" + +#: cps/templates/detail.html:267 #, fuzzy -msgid "Archived" +msgid "Archive" msgstr "Arkiverte bøker" #: cps/templates/detail.html:278 cps/templates/listenmp3.html:177 @@ -2973,6 +2986,11 @@ msgstr "Detaljer" msgid "Grid" msgstr "" +#: cps/templates/listenmp3.html:167 +#, fuzzy +msgid "Archived" +msgstr "Arkiverte bøker" + #: cps/templates/login.html:18 msgid "Remember Me" msgstr "" diff --git a/cps/translations/pl/LC_MESSAGES/messages.mo b/cps/translations/pl/LC_MESSAGES/messages.mo index 2d51180c..e451e4b5 100644 Binary files a/cps/translations/pl/LC_MESSAGES/messages.mo and b/cps/translations/pl/LC_MESSAGES/messages.mo differ diff --git a/cps/translations/pl/LC_MESSAGES/messages.po b/cps/translations/pl/LC_MESSAGES/messages.po index ad137de5..cba4f5af 100644 --- a/cps/translations/pl/LC_MESSAGES/messages.po +++ b/cps/translations/pl/LC_MESSAGES/messages.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: Calibre Web - polski (POT: 2021-06-12 08:52)\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2024-06-09 12:26+0200\n" +"POT-Creation-Date: 2024-06-30 12:19+0200\n" "PO-Revision-Date: 2021-06-12 15:35+0200\n" "Last-Translator: Radosław Kierznowski \n" "Language: pl\n" @@ -17,7 +17,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.11.0\n" +"Generated-By: Babel 2.13.1\n" #: cps/about.py:84 msgid "Statistics" @@ -47,9 +47,9 @@ msgid "Success! Books queued for Metadata Backup, please check Tasks for result" msgstr "Testowy e-mail czeka w kolejce do wysłania do %(email)s, sprawdź zadania, aby uzyskać wynik" # ??? -#: cps/admin.py:207 cps/editbooks.py:591 cps/editbooks.py:593 -#: cps/editbooks.py:631 cps/editbooks.py:648 cps/editbooks.py:1280 -#: cps/updater.py:613 cps/uploader.py:93 cps/uploader.py:102 +#: cps/admin.py:207 cps/editbooks.py:573 cps/editbooks.py:575 +#: cps/editbooks.py:615 cps/editbooks.py:658 cps/editbooks.py:1280 +#: cps/updater.py:615 cps/uploader.py:93 cps/uploader.py:102 msgid "Unknown" msgstr "Nieznany" @@ -70,12 +70,12 @@ msgid "Edit Users" msgstr "Edytuj użytkowników" # ??? -#: cps/admin.py:368 cps/opds.py:541 cps/templates/grid.html:14 +#: cps/admin.py:368 cps/opds.py:542 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "Wszystko" -#: cps/admin.py:395 cps/admin.py:1417 +#: cps/admin.py:395 cps/admin.py:1414 msgid "User not found" msgstr "Nie znaleziono użytkownika" @@ -92,7 +92,7 @@ msgstr "Pokaż wszystkie" msgid "Malformed request" msgstr "Nieprawidłowo sformułowane żądanie" -#: cps/admin.py:471 cps/admin.py:2048 +#: cps/admin.py:471 cps/admin.py:2046 msgid "Guest Name can't be changed" msgstr "Nazwa gościa nie może być zmieniona" @@ -100,7 +100,7 @@ msgstr "Nazwa gościa nie może być zmieniona" msgid "Guest can't have this role" msgstr "Gość nie może pełnić tej roli" -#: cps/admin.py:495 cps/admin.py:2002 +#: cps/admin.py:495 cps/admin.py:2000 msgid "No admin user remaining, can't remove admin role" msgstr "Nie można odebrać praw administratora. Brak na serwerze innego konta z prawami administratora" @@ -132,7 +132,7 @@ msgstr "Nie podano prawidłowej lokalizacji" msgid "No Valid Book Language Given" msgstr "Nie podano obowiązującego języka książki" -#: cps/admin.py:535 cps/editbooks.py:457 +#: cps/admin.py:535 cps/editbooks.py:440 msgid "Parameter not found" msgstr "Nie znaleziono parametru" @@ -146,7 +146,7 @@ msgstr "Nieprawidłowa kolumna odczytu" msgid "Invalid Restricted Column" msgstr "Nieprawidłowa kolumna z ograniczeniami" -#: cps/admin.py:598 cps/admin.py:1873 +#: cps/admin.py:598 cps/admin.py:1871 msgid "Calibre-Web configuration updated" msgstr "Konfiguracja Calibre-Web została zaktualizowana" @@ -227,298 +227,298 @@ msgstr "Nie znaleziono znacznika" msgid "Invalid Action" msgstr "Nieprawidłowe działanie" -#: cps/admin.py:1123 +#: cps/admin.py:1120 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "client_secrets.json nie został skonfigurowany dla aplikacji webowej" -#: cps/admin.py:1168 +#: cps/admin.py:1165 msgid "Logfile Location is not Valid, Please Enter Correct Path" msgstr "Lokalizacja pliku dziennika jest nieprawidłowa, wprowadź poprawną ścieżkę" -#: cps/admin.py:1174 +#: cps/admin.py:1171 msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgstr "Lokalizacja pliku dziennika dostępu jest nieprawidłowa, wprowadź poprawną ścieżkę" -#: cps/admin.py:1208 +#: cps/admin.py:1205 msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgstr "Wprowadź dostawcę LDAP, port, nazwę wyróżniającą i identyfikator obiektu użytkownika" -#: cps/admin.py:1214 +#: cps/admin.py:1211 msgid "Please Enter a LDAP Service Account and Password" msgstr "Proszę wprowadzić konto i hasło usługi LDAP" -#: cps/admin.py:1217 +#: cps/admin.py:1214 msgid "Please Enter a LDAP Service Account" msgstr "Proszę wprowadzić konto usługi LDAP" -#: cps/admin.py:1222 +#: cps/admin.py:1219 #, python-format msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgstr "Filtr obiektów grupy LDAP musi mieć jeden identyfikator formatu \"% s\"" -#: cps/admin.py:1224 +#: cps/admin.py:1221 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "Filtr obiektów grupy LDAP ma niedopasowany nawias" -#: cps/admin.py:1228 +#: cps/admin.py:1225 #, python-format msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgstr "Filtr obiektów użytkownika LDAP musi mieć jeden identyfikator formatu \"% s\"" -#: cps/admin.py:1230 +#: cps/admin.py:1227 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "Filtr obiektów użytkownika LDAP ma niedopasowany nawias" -#: cps/admin.py:1237 +#: cps/admin.py:1234 #, python-format msgid "LDAP Member User Filter needs to Have One \"%s\" Format Identifier" msgstr "Filtr użytkownika członka LDAP musi mieć jedno \"%s\" identyfikator formatu" -#: cps/admin.py:1239 +#: cps/admin.py:1236 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "Filtr użytkownika członka LDAP ma niedopasowane nawiasy" -#: cps/admin.py:1246 +#: cps/admin.py:1243 msgid "LDAP CACertificate, Certificate or Key Location is not Valid, Please Enter Correct Path" msgstr "Główny urząd certyfikatu LDAP, Certyfikat lub Lokalizacja Klucza nie jest prawidłowa, Proszę wprowadzić poprawną ścieżkę" -#: cps/admin.py:1277 cps/templates/admin.html:53 +#: cps/admin.py:1274 cps/templates/admin.html:53 msgid "Add New User" msgstr "Dodaj nowego użytkownika" -#: cps/admin.py:1286 cps/templates/admin.html:100 +#: cps/admin.py:1283 cps/templates/admin.html:100 msgid "Edit Email Server Settings" msgstr "Zmień ustawienia SMTP" -#: cps/admin.py:1305 +#: cps/admin.py:1302 msgid "Success! Gmail Account Verified." msgstr "" -#: cps/admin.py:1325 cps/admin.py:1328 cps/admin.py:1713 cps/admin.py:1857 -#: cps/admin.py:1955 cps/admin.py:2076 cps/editbooks.py:243 -#: cps/editbooks.py:319 cps/editbooks.py:1242 cps/shelf.py:90 cps/shelf.py:150 +#: cps/admin.py:1322 cps/admin.py:1325 cps/admin.py:1710 cps/admin.py:1855 +#: cps/admin.py:1953 cps/admin.py:2074 cps/editbooks.py:226 +#: cps/editbooks.py:303 cps/editbooks.py:1242 cps/shelf.py:90 cps/shelf.py:150 #: cps/shelf.py:193 cps/shelf.py:243 cps/shelf.py:280 cps/shelf.py:354 -#: cps/shelf.py:468 cps/tasks/convert.py:150 cps/web.py:1520 +#: cps/shelf.py:468 cps/tasks/convert.py:153 cps/web.py:1520 #, python-format msgid "Oops! Database Error: %(error)s." msgstr "Błąd bazy danych: %(error)s." -#: cps/admin.py:1335 +#: cps/admin.py:1332 #, fuzzy, python-format msgid "Test e-mail queued for sending to %(email)s, please check Tasks for result" msgstr "Testowy e-mail czeka w kolejce do wysłania do %(email)s, sprawdź zadania, aby uzyskać wynik" -#: cps/admin.py:1338 +#: cps/admin.py:1335 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "Wystąpił błąd podczas wysyłania e-maila testowego: %(res)s" -#: cps/admin.py:1340 +#: cps/admin.py:1337 msgid "Please configure your e-mail address first..." msgstr "Najpierw skonfiguruj swój adres e-mail..." -#: cps/admin.py:1342 +#: cps/admin.py:1339 msgid "Email Server Settings updated" msgstr "Zaktualizowano ustawienia serwera poczty e-mail" -#: cps/admin.py:1365 cps/templates/admin.html:195 +#: cps/admin.py:1362 cps/templates/admin.html:195 msgid "Edit Scheduled Tasks Settings" msgstr "" -#: cps/admin.py:1377 +#: cps/admin.py:1374 msgid "Invalid start time for task specified" msgstr "" -#: cps/admin.py:1382 +#: cps/admin.py:1379 msgid "Invalid duration for task specified" msgstr "" -#: cps/admin.py:1392 +#: cps/admin.py:1389 msgid "Scheduled tasks settings updated" msgstr "" -#: cps/admin.py:1402 cps/admin.py:1451 cps/admin.py:2072 cps/web.py:1316 +#: cps/admin.py:1399 cps/admin.py:1448 cps/admin.py:2070 cps/web.py:1316 msgid "Oops! An unknown error occurred. Please try again later." msgstr "Wystąpił nieznany błąd. Spróbuj ponownie później." -#: cps/admin.py:1406 +#: cps/admin.py:1403 msgid "Settings DB is not Writeable" msgstr "" -#: cps/admin.py:1436 cps/admin.py:2064 +#: cps/admin.py:1433 cps/admin.py:2062 #, python-format msgid "Edit User %(nick)s" msgstr "Edytuj użytkownika %(nick)s" # ??? -#: cps/admin.py:1448 +#: cps/admin.py:1445 #, fuzzy, python-format msgid "Success! Password for user %(user)s reset" msgstr "Zrestartowano hasło użytkownika %(user)s" -#: cps/admin.py:1454 +#: cps/admin.py:1451 #, fuzzy msgid "Oops! Please configure the SMTP mail settings." msgstr "Proszę najpierw skonfigurować ustawienia SMTP poczty e-mail..." -#: cps/admin.py:1465 +#: cps/admin.py:1462 msgid "Logfile viewer" msgstr "Przeglądanie dziennika" -#: cps/admin.py:1531 +#: cps/admin.py:1528 msgid "Requesting update package" msgstr "Żądanie o pakiet aktualizacji" -#: cps/admin.py:1532 +#: cps/admin.py:1529 msgid "Downloading update package" msgstr "Pobieranie pakietu aktualizacji" -#: cps/admin.py:1533 +#: cps/admin.py:1530 msgid "Unzipping update package" msgstr "Rozpakowywanie pakietu aktualizacji" # ??? -#: cps/admin.py:1534 +#: cps/admin.py:1531 msgid "Replacing files" msgstr "Zastępowanie plików" -#: cps/admin.py:1535 +#: cps/admin.py:1532 msgid "Database connections are closed" msgstr "Połączenia z bazą danych zostały zakończone" -#: cps/admin.py:1536 +#: cps/admin.py:1533 msgid "Stopping server" msgstr "Zatrzymywanie serwera" -#: cps/admin.py:1537 +#: cps/admin.py:1534 msgid "Update finished, please press okay and reload page" msgstr "Aktualizacja zakończona, proszę nacisnąć OK i odświeżyć stronę" -#: cps/admin.py:1538 cps/admin.py:1539 cps/admin.py:1540 cps/admin.py:1541 -#: cps/admin.py:1542 cps/admin.py:1543 +#: cps/admin.py:1535 cps/admin.py:1536 cps/admin.py:1537 cps/admin.py:1538 +#: cps/admin.py:1539 cps/admin.py:1540 msgid "Update failed:" msgstr "Aktualizacja nieudana:" -#: cps/admin.py:1538 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 +#: cps/admin.py:1535 cps/updater.py:391 cps/updater.py:626 cps/updater.py:628 msgid "HTTP Error" msgstr "Błąd HTTP" -#: cps/admin.py:1539 cps/updater.py:391 cps/updater.py:628 +#: cps/admin.py:1536 cps/updater.py:393 cps/updater.py:630 msgid "Connection error" msgstr "Błąd połączenia" -#: cps/admin.py:1540 cps/updater.py:393 cps/updater.py:630 +#: cps/admin.py:1537 cps/updater.py:395 cps/updater.py:632 msgid "Timeout while establishing connection" msgstr "Przekroczono limit czasu podczas nawiązywania połączenia" -#: cps/admin.py:1541 cps/updater.py:395 cps/updater.py:632 +#: cps/admin.py:1538 cps/updater.py:397 cps/updater.py:634 msgid "General error" msgstr "Błąd ogólny" -#: cps/admin.py:1542 +#: cps/admin.py:1539 #, fuzzy msgid "Update file could not be saved in temp dir" msgstr "Plik aktualizacji nie mógł zostać zapisany w katalogu tymczasowym" -#: cps/admin.py:1543 +#: cps/admin.py:1540 msgid "Files could not be replaced during update" msgstr "" -#: cps/admin.py:1567 +#: cps/admin.py:1564 #, fuzzy msgid "Failed to extract at least One LDAP User" msgstr "Błąd przy tworzeniu przynajmniej jednego użytkownika LDAP" -#: cps/admin.py:1612 +#: cps/admin.py:1609 msgid "Failed to Create at Least One LDAP User" msgstr "Błąd przy tworzeniu przynajmniej jednego użytkownika LDAP" -#: cps/admin.py:1625 +#: cps/admin.py:1622 #, python-format msgid "Error: %(ldaperror)s" msgstr "Błąd: %(ldaperror)s" -#: cps/admin.py:1629 +#: cps/admin.py:1626 msgid "Error: No user returned in response of LDAP server" msgstr "Błąd. LDAP nie zwrócił żadnego użytkownika" -#: cps/admin.py:1665 +#: cps/admin.py:1662 msgid "At Least One LDAP User Not Found in Database" msgstr "Przynajmniej jeden użytkownik LDAP nie został znaleziony w bazie danych" -#: cps/admin.py:1667 +#: cps/admin.py:1664 msgid "{} User Successfully Imported" msgstr "{} Użytkownik pomyślnie zaimportowany" -#: cps/admin.py:1725 +#: cps/admin.py:1722 msgid "DB Location is not Valid, Please Enter Correct Path" msgstr "Lokalizacja bazy danych jest nieprawidłowa, wprowadź poprawną ścieżkę" -#: cps/admin.py:1745 +#: cps/admin.py:1742 msgid "DB is not Writeable" msgstr "Baza danych nie jest zapisywalna" -#: cps/admin.py:1761 +#: cps/admin.py:1758 msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgstr "Lokalizacja pliku klucza jest nieprawidłowa, wprowadź poprawną ścieżkę" -#: cps/admin.py:1765 +#: cps/admin.py:1762 msgid "Certfile Location is not Valid, Please Enter Correct Path" msgstr "Lokalizacja pliku certyfikatu jest nieprawidłowa, wprowadź poprawną ścieżkę" -#: cps/admin.py:1842 +#: cps/admin.py:1840 msgid "Password length has to be between 1 and 40" msgstr "" -#: cps/admin.py:1896 +#: cps/admin.py:1894 #, fuzzy msgid "Database Settings updated" msgstr "Zaktualizowano ustawienia serwera poczty e-mail" -#: cps/admin.py:1904 +#: cps/admin.py:1902 msgid "Database Configuration" msgstr "Konfiguracja bazy danych" -#: cps/admin.py:1919 cps/web.py:1290 +#: cps/admin.py:1917 cps/web.py:1290 msgid "Oops! Please complete all fields." msgstr "Proszę wypełnić wszystkie pola!" -#: cps/admin.py:1928 +#: cps/admin.py:1926 msgid "E-mail is not from valid domain" msgstr "E-mail nie pochodzi z prawidłowej domeny" -#: cps/admin.py:1934 +#: cps/admin.py:1932 msgid "Add new user" msgstr "Dodaj nowego użytkownika" -#: cps/admin.py:1945 +#: cps/admin.py:1943 #, python-format msgid "User '%(user)s' created" msgstr "Użytkownik '%(user)s' został utworzony" -#: cps/admin.py:1951 +#: cps/admin.py:1949 msgid "Oops! An account already exists for this Email. or name." msgstr "Znaleziono istniejące konto dla tego adresu e-mail lub nazwy." -#: cps/admin.py:1981 +#: cps/admin.py:1979 #, python-format msgid "User '%(nick)s' deleted" msgstr "Użytkownik '%(nick)s' został usunięty" -#: cps/admin.py:1984 +#: cps/admin.py:1982 #, fuzzy msgid "Can't delete Guest User" msgstr "Nie można usunąć użytkownika gościa" -#: cps/admin.py:1987 +#: cps/admin.py:1985 msgid "No admin user remaining, can't delete user" msgstr "Nie można usunąć użytkownika. Brak na serwerze innego konta z prawami administratora" -#: cps/admin.py:2042 cps/web.py:1469 +#: cps/admin.py:2040 cps/web.py:1469 msgid "Email can't be empty and has to be a valid Email" msgstr "" -#: cps/admin.py:2068 +#: cps/admin.py:2066 #, python-format msgid "User '%(nick)s' updated" msgstr "Użytkownik '%(nick)s' został zaktualizowany" @@ -531,12 +531,12 @@ msgstr "nie zainstalowane" msgid "Execution permissions missing" msgstr "Brak uprawnienia do wykonywania pliku" -#: cps/db.py:756 cps/search.py:137 cps/web.py:747 +#: cps/db.py:768 cps/search.py:137 cps/web.py:747 #, fuzzy, python-format msgid "Custom Column No.%(column)d does not exist in calibre database" msgstr "Niestandardowa kolumna No.%(column)d nie istnieje w bazie calibre" -#: cps/db.py:996 cps/templates/config_edit.html:203 +#: cps/db.py:1008 cps/templates/config_edit.html:203 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 #: cps/web.py:562 cps/web.py:596 cps/web.py:641 cps/web.py:681 cps/web.py:708 #: cps/web.py:989 cps/web.py:1019 cps/web.py:1064 cps/web.py:1092 @@ -544,100 +544,105 @@ msgstr "Niestandardowa kolumna No.%(column)d nie istnieje w bazie calibre" msgid "None" msgstr "Brak" -#: cps/editbooks.py:124 cps/editbooks.py:912 cps/web.py:529 cps/web.py:1561 -#: cps/web.py:1605 cps/web.py:1650 +#: cps/editbooks.py:108 cps/editbooks.py:929 cps/web.py:529 cps/web.py:1561 +#: cps/web.py:1606 cps/web.py:1651 msgid "Oops! Selected book is unavailable. File does not exist or is not accessible" msgstr "Błąd otwierania e-booka. Plik nie istnieje lub jest niedostępny" -#: cps/editbooks.py:168 cps/editbooks.py:1263 +#: cps/editbooks.py:151 cps/editbooks.py:1263 msgid "User has no rights to upload cover" msgstr "" -#: cps/editbooks.py:188 cps/editbooks.py:733 +#: cps/editbooks.py:171 cps/editbooks.py:744 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "W identyfikatorach nie jest rozróżniana wielkość liter, nadpisywanie starego identyfikatora" -#: cps/editbooks.py:230 +#: cps/editbooks.py:213 msgid "Metadata successfully updated" msgstr "Metadane zostały pomyślnie zaktualizowane" -#: cps/editbooks.py:248 +#: cps/editbooks.py:231 msgid "Error editing book: {}" msgstr "" -#: cps/editbooks.py:305 +#: cps/editbooks.py:289 #, python-format msgid "File %(file)s uploaded" msgstr "Wysłano plik %(file)s" -#: cps/editbooks.py:333 +#: cps/editbooks.py:317 msgid "Source or destination format for conversion missing" msgstr "Brak formatu źródłowego lub docelowego do konwersji" -#: cps/editbooks.py:341 +#: cps/editbooks.py:325 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "Książka została pomyślnie umieszczona w zadaniach do konwersji %(book_format)s" -#: cps/editbooks.py:345 +#: cps/editbooks.py:329 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "Podczas konwersji książki wystąpił błąd: %(res)s" -#: cps/editbooks.py:652 +#: cps/editbooks.py:662 msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgstr "Wysłana książka prawdopodobnie istnieje w bibliotece, rozważ zmianę przed przesłaniem nowej: " -#: cps/editbooks.py:707 cps/editbooks.py:1043 +#: cps/editbooks.py:718 cps/editbooks.py:1049 #, fuzzy, python-format msgid "'%(langname)s' is not a valid language" msgstr "%(langname)s nie jest prawidłowym językiem" -#: cps/editbooks.py:745 cps/editbooks.py:1203 +#: cps/editbooks.py:756 cps/editbooks.py:1192 +#, fuzzy +msgid "File type isn't allowed to be uploaded to this server" +msgstr "Rozszerzenie pliku '%(ext)s' nie jest dozwolone do wysłania na ten serwer" + +#: cps/editbooks.py:762 cps/editbooks.py:1202 #, python-format msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgstr "Rozszerzenie pliku '%(ext)s' nie jest dozwolone do wysłania na ten serwer" -#: cps/editbooks.py:749 cps/editbooks.py:1207 +#: cps/editbooks.py:766 cps/editbooks.py:1206 msgid "File to be uploaded must have an extension" msgstr "Plik do wysłania musi mieć rozszerzenie" -#: cps/editbooks.py:757 +#: cps/editbooks.py:774 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "Nie można zapisać pliku %(filename)s w katalogu tymczasowym" -#: cps/editbooks.py:777 +#: cps/editbooks.py:794 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "Nie udało się przenieść pliku okładki %(file)s:%(error)s" -#: cps/editbooks.py:834 cps/editbooks.py:836 +#: cps/editbooks.py:851 cps/editbooks.py:853 msgid "Book Format Successfully Deleted" msgstr "Plik książki w wybranym formacie został usunięty" -#: cps/editbooks.py:843 cps/editbooks.py:845 +#: cps/editbooks.py:860 cps/editbooks.py:862 msgid "Book Successfully Deleted" msgstr "Książka została usunięta" -#: cps/editbooks.py:897 +#: cps/editbooks.py:914 msgid "You are missing permissions to delete books" msgstr "" -#: cps/editbooks.py:947 +#: cps/editbooks.py:964 msgid "edit metadata" msgstr "edytuj metadane" -#: cps/editbooks.py:996 +#: cps/editbooks.py:1013 #, python-format msgid "%(seriesindex)s is not a valid number, skipping" msgstr "%(seriesindex)s nie jest poprawną liczbą, pomijanie" -#: cps/editbooks.py:1198 +#: cps/editbooks.py:1197 msgid "User has no rights to upload additional file formats" msgstr "" -#: cps/editbooks.py:1219 +#: cps/editbooks.py:1218 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "Nie udało się utworzyć łącza %(path)s (Odmowa dostępu)." @@ -656,7 +661,7 @@ msgstr "Format pliku %(ext)s dodany do %(book)s" msgid "Google Drive setup not completed, try to deactivate and activate Google Drive again" msgstr "Konfiguracja Google Drive nie została zakończona, spróbuj dezaktywować i ponownie aktywować Google Drive" -#: cps/gdrive.py:95 +#: cps/gdrive.py:96 msgid "Callback domain is not verified, please follow steps to verify domain in google developer console" msgstr "Zwrotna domena nie jest zweryfikowana, proszę zweryfikowania domenę w konsoli deweloperskiej google" @@ -665,7 +670,7 @@ msgstr "Zwrotna domena nie jest zweryfikowana, proszę zweryfikowania domenę w msgid "%(format)s format not found for book id: %(book)d" msgstr "Nie znaleziono formatu %(format)s dla id książki: %(book)d" -#: cps/helper.py:93 cps/tasks/convert.py:86 +#: cps/helper.py:93 cps/tasks/convert.py:89 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "Nie znaleziono %(format)s na Google Drive: %(fn)s" @@ -744,126 +749,122 @@ msgstr "Usuwanie książki %(id)s zakończyło się błędem: %(message)s" msgid "Deleting book %(id)s from database only, book path in database not valid: %(path)s" msgstr "Usuwanie książki %(id)s, ścieżka książki jest niepoprawna: %(path)s" -#: cps/helper.py:452 +#: cps/helper.py:465 #, fuzzy, python-format msgid "Rename author 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ę błędem: %(error)s" -#: cps/helper.py:524 cps/helper.py:533 +#: cps/helper.py:536 cps/helper.py:545 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "Nie znaleziono pliku %(file)s na Google Drive" -#: cps/helper.py:567 +#: cps/helper.py:587 #, python-format 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ę błędem: %(error)s" -#: cps/helper.py:587 -msgid "Error in rename file in path: {}" -msgstr "" - -#: cps/helper.py:605 +#: cps/helper.py:625 #, python-format msgid "Book path %(path)s not found on Google Drive" msgstr "Nie znaleziono ścieżki do książki %(path)s na Google Drive" -#: cps/helper.py:670 +#: cps/helper.py:685 msgid "Found an existing account for this Email address" msgstr "" -#: cps/helper.py:678 +#: cps/helper.py:693 msgid "This username is already taken" msgstr "Nazwa użytkownika jest już zajęta" -#: cps/helper.py:690 +#: cps/helper.py:705 #, fuzzy msgid "Invalid Email address format" msgstr "Nieprawidłowy format adresu e-mail" -#: cps/helper.py:710 +#: cps/helper.py:726 msgid "Password doesn't comply with password validation rules" msgstr "" -#: cps/helper.py:859 +#: cps/helper.py:873 msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "" -#: cps/helper.py:869 +#: cps/helper.py:883 msgid "Error Downloading Cover" msgstr "Błąd przy pobieraniu okładki" -#: cps/helper.py:872 +#: cps/helper.py:886 msgid "Cover Format Error" msgstr "Błędny format okładki" -#: cps/helper.py:875 +#: cps/helper.py:889 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "" -#: cps/helper.py:885 +#: cps/helper.py:899 msgid "Failed to create path for cover" msgstr "Nie udało się utworzyć ścieżki dla okładki" -#: cps/helper.py:901 +#: cps/helper.py:915 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "Plik okładki nie jest poprawnym plikiem obrazu lub nie mógł zostać zapisany" -#: cps/helper.py:912 +#: cps/helper.py:926 msgid "Only jpg/jpeg/png/webp/bmp files are supported as coverfile" msgstr "Jako plik okładki obsługiwane są tylko pliki jpg/jpeg/png/webp/bmp" -#: cps/helper.py:924 +#: cps/helper.py:938 msgid "Invalid cover file content" msgstr "" -#: cps/helper.py:928 +#: cps/helper.py:942 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "Jako plik okładki dopuszczalne są jedynie pliki jpg/jpeg" -#: cps/helper.py:999 cps/helper.py:1156 +#: cps/helper.py:1014 cps/helper.py:1171 #, fuzzy msgid "Cover" msgstr "Odkrywaj" -#: cps/helper.py:1016 +#: cps/helper.py:1031 msgid "UnRar binary file not found" msgstr "Plik wykonywalny programu unrar nie znaleziony" -#: cps/helper.py:1027 +#: cps/helper.py:1042 #, fuzzy msgid "Error executing UnRar" msgstr "Błąd przy wykonywaniu unrar" -#: cps/helper.py:1035 +#: cps/helper.py:1050 msgid "Could not find the specified directory" msgstr "" -#: cps/helper.py:1038 +#: cps/helper.py:1053 msgid "Please specify a directory, not a file" msgstr "" -#: cps/helper.py:1052 +#: cps/helper.py:1067 #, fuzzy msgid "Calibre binaries not viable" msgstr "Baza danych nie jest zapisywalna" -#: cps/helper.py:1061 +#: cps/helper.py:1076 #, python-format msgid "Missing calibre binaries: %(missing)s" msgstr "" -#: cps/helper.py:1063 +#: cps/helper.py:1078 #, fuzzy, python-format msgid "Missing executable permissions: %(missing)s" msgstr "Brak uprawnienia do wykonywania pliku" -#: cps/helper.py:1068 +#: cps/helper.py:1083 #, fuzzy msgid "Error executing Calibre" msgstr "Błąd przy wykonywaniu unrar" -#: cps/helper.py:1158 cps/templates/admin.html:216 +#: cps/helper.py:1173 cps/templates/admin.html:216 msgid "Queue all books for metadata backup" msgstr "" @@ -911,35 +912,35 @@ msgstr "Rozłączanie z %(oauth)s zakończono porażką" msgid "Not Linked to %(oauth)s" msgstr "Nie połączono z %(oauth)s" -#: cps/oauth_bb.py:261 +#: cps/oauth_bb.py:262 msgid "Failed to log in with GitHub." msgstr "Nie udało się zalogować za pomocą GitHub." -#: cps/oauth_bb.py:267 +#: cps/oauth_bb.py:268 msgid "Failed to fetch user info from GitHub." msgstr "Nie udało się pobrać informacji o użytkowniku z GitHub." -#: cps/oauth_bb.py:279 +#: cps/oauth_bb.py:280 msgid "Failed to log in with Google." msgstr "Nie udało się zalogować do Google." -#: cps/oauth_bb.py:285 +#: cps/oauth_bb.py:286 msgid "Failed to fetch user info from Google." msgstr "Nie udało się pobrać informacji o użytkowniku z Google." -#: cps/oauth_bb.py:332 +#: cps/oauth_bb.py:334 msgid "GitHub Oauth error, please retry later." msgstr "Błąd GitHub Oauth, proszę spróbować później." -#: cps/oauth_bb.py:335 +#: cps/oauth_bb.py:337 msgid "GitHub Oauth error: {}" msgstr "Błąd GitHub Oauth: {}" -#: cps/oauth_bb.py:356 +#: cps/oauth_bb.py:358 msgid "Google Oauth error, please retry later." msgstr "Błąd Google Oauth, proszę spróbować później." -#: cps/oauth_bb.py:359 +#: cps/oauth_bb.py:361 msgid "Google Oauth error: {}" msgstr "Błąd Google Oauth: {}" @@ -1301,32 +1302,32 @@ msgstr "" msgid "Unknown Status" msgstr "Ststus nieznany" -#: cps/updater.py:431 cps/updater.py:442 cps/updater.py:543 cps/updater.py:558 +#: cps/updater.py:433 cps/updater.py:444 cps/updater.py:545 cps/updater.py:560 msgid "Unexpected data while reading update information" msgstr "Nieoczekiwane dane podczas odczytywania informacji o aktualizacji" -#: cps/updater.py:438 cps/updater.py:550 +#: cps/updater.py:440 cps/updater.py:552 msgid "No update available. You already have the latest version installed" msgstr "Brak dostępnej aktualizacji. Masz już zainstalowaną najnowszą wersję" -#: cps/updater.py:456 +#: cps/updater.py:458 msgid "A new update is available. Click on the button below to update to the latest version." msgstr "Dostępna jest nowa aktualizacja. Kliknij przycisk poniżej, aby zaktualizować do najnowszej wersji." -#: cps/updater.py:474 +#: cps/updater.py:476 msgid "Could not fetch update information" msgstr "Nie można pobrać informacji o aktualizacji" -#: cps/updater.py:484 +#: cps/updater.py:486 msgid "Click on the button below to update to the latest stable version." msgstr "Kliknij przycisk poniżej, aby zaktualizować do najnowszej stabilnej wersji." -#: cps/updater.py:493 cps/updater.py:507 cps/updater.py:518 +#: cps/updater.py:495 cps/updater.py:509 cps/updater.py:520 #, python-format msgid "A new update is available. Click on the button below to update to version: %(version)s" msgstr "Dostępna jest nowa aktualizacja. Kliknij przycisk poniżej, aby zaktualizować do wersji: %(version)s" -#: cps/updater.py:536 +#: cps/updater.py:538 msgid "No release information available" msgstr "Brak dostępnych informacji o wersji" @@ -1505,50 +1506,50 @@ msgstr "Zaktualizowano profil" msgid "Oops! An account already exists for this Email." msgstr "Znaleziono istniejące konto dla tego adresu e-mail" -#: cps/services/gmail.py:58 +#: cps/services/gmail.py:59 msgid "Found no valid gmail.json file with OAuth information" msgstr "Nie znaleziono poprawnego pliku gmail.json z informacjami OAuth" -#: cps/tasks/convert.py:105 +#: cps/tasks/convert.py:108 #, fuzzy, python-format msgid "%(book)s send to E-Reader" msgstr "Wyślij do Kindle" -#: cps/tasks/convert.py:167 +#: cps/tasks/convert.py:170 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "Nie znaleziono narzędzia calibre %(tool)s do konwertowania" -#: cps/tasks/convert.py:201 +#: cps/tasks/convert.py:204 #, python-format msgid "%(format)s format not found on disk" msgstr "Nie znaleziono na dysku formatu %(format)s" -#: cps/tasks/convert.py:205 +#: cps/tasks/convert.py:208 msgid "Ebook converter failed with unknown error" msgstr "Konwertowanie ebooka zakończyło się niepowodzeniem z nieznanego powodu" -#: cps/tasks/convert.py:224 +#: cps/tasks/convert.py:227 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "Kepubify-converter spowodowało błąd: %(error)s" -#: cps/tasks/convert.py:245 +#: cps/tasks/convert.py:248 #, python-format msgid "Converted file not found or more than one file in folder %(folder)s" msgstr "Konwertowany plik nie został znaleziony, lub więcej niż jeden plik w folderze %(folder)s" -#: cps/tasks/convert.py:287 +#: cps/tasks/convert.py:291 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "Konwertowanie nie powiodło się: %(error)s" -#: cps/tasks/convert.py:310 +#: cps/tasks/convert.py:314 #, fuzzy, python-format msgid "Calibre failed with error: %(error)s" msgstr "Calibre nie powiodło się z błędem: %(error)s" -#: cps/tasks/convert.py:315 +#: cps/tasks/convert.py:319 msgid "Convert" msgstr "" @@ -1560,7 +1561,7 @@ msgstr "" msgid "E-mail" msgstr "" -#: cps/tasks/metadata_backup.py:33 +#: cps/tasks/metadata_backup.py:34 #, fuzzy msgid "Backing up Metadata" msgstr "edytuj metadane" @@ -1574,20 +1575,20 @@ msgstr "" msgid "Generated %(count)s cover thumbnails" msgstr "" -#: cps/tasks/thumbnail.py:230 cps/tasks/thumbnail.py:443 -#: cps/tasks/thumbnail.py:511 +#: cps/tasks/thumbnail.py:231 cps/tasks/thumbnail.py:444 +#: cps/tasks/thumbnail.py:512 msgid "Cover Thumbnails" msgstr "" -#: cps/tasks/thumbnail.py:289 +#: cps/tasks/thumbnail.py:290 msgid "Generated {0} series thumbnails" msgstr "" -#: cps/tasks/thumbnail.py:454 +#: cps/tasks/thumbnail.py:455 msgid "Clearing cover thumbnail cache" msgstr "" -#: cps/tasks/upload.py:38 cps/templates/admin.html:20 +#: cps/tasks/upload.py:39 cps/templates/admin.html:20 #: cps/templates/layout.html:81 cps/templates/user_table.html:145 msgid "Upload" msgstr "Wysyłanie" @@ -1838,7 +1839,7 @@ msgstr "OK" #: cps/templates/admin.html:259 cps/templates/admin.html:273 #: cps/templates/book_edit.html:214 cps/templates/book_table.html:127 -#: cps/templates/config_db.html:66 cps/templates/config_edit.html:423 +#: cps/templates/config_db.html:66 cps/templates/config_edit.html:427 #: cps/templates/config_view_edit.html:175 cps/templates/detail.html:342 #: cps/templates/modal_dialogs.html:64 cps/templates/modal_dialogs.html:99 #: cps/templates/modal_dialogs.html:117 cps/templates/modal_dialogs.html:135 @@ -2025,7 +2026,7 @@ msgid "Fetch Metadata" msgstr "Uzyskaj metadane" #: cps/templates/book_edit.html:213 cps/templates/config_db.html:65 -#: cps/templates/config_edit.html:422 cps/templates/config_view_edit.html:174 +#: cps/templates/config_edit.html:426 cps/templates/config_view_edit.html:174 #: cps/templates/email_edit.html:65 cps/templates/schedule_edit.html:44 #: cps/templates/shelf_edit.html:25 cps/templates/shelf_order.html:41 #: cps/templates/user_edit.html:142 @@ -2505,47 +2506,51 @@ msgid "Configure Backend for Limiter" msgstr "" #: cps/templates/config_edit.html:376 -msgid "Options for Limiter" +msgid "Options for Limiter Backend" msgstr "" -#: cps/templates/config_edit.html:381 +#: cps/templates/config_edit.html:382 +msgid "Check if file extensions matches file content on upload" +msgstr "" + +#: cps/templates/config_edit.html:385 msgid "Session protection" msgstr "" -#: cps/templates/config_edit.html:383 +#: cps/templates/config_edit.html:387 msgid "Basic" msgstr "" -#: cps/templates/config_edit.html:384 +#: cps/templates/config_edit.html:388 msgid "Strong" msgstr "" -#: cps/templates/config_edit.html:389 +#: cps/templates/config_edit.html:393 #, fuzzy msgid "User Password policy" msgstr "Zresetuj hasło użytkownika" -#: cps/templates/config_edit.html:393 +#: cps/templates/config_edit.html:397 msgid "Minimum password length" msgstr "" -#: cps/templates/config_edit.html:398 +#: cps/templates/config_edit.html:402 msgid "Enforce number" msgstr "" -#: cps/templates/config_edit.html:402 +#: cps/templates/config_edit.html:406 msgid "Enforce lowercase characters" msgstr "" -#: cps/templates/config_edit.html:406 +#: cps/templates/config_edit.html:410 msgid "Enforce uppercase characters" msgstr "" -#: cps/templates/config_edit.html:410 +#: cps/templates/config_edit.html:414 msgid "Enforce characters (needed For Chinese/Japanese/Korean Characters)" msgstr "" -#: cps/templates/config_edit.html:414 +#: cps/templates/config_edit.html:418 msgid "Enforce special characters" msgstr "" @@ -2677,6 +2682,11 @@ msgstr "Oznacz jako nieprzeczytane" msgid "Mark As Read" msgstr "Oznacz jako przeczytane" +#: cps/templates/detail.html:254 +#, fuzzy +msgid "Mark Book as Read or Unread" +msgstr "Oznacz jako nieprzeczytane" + #: cps/templates/detail.html:254 cps/templates/listenmp3.html:159 msgid "Read" msgstr "Przeczytana" @@ -2689,8 +2699,13 @@ msgstr "Przywróć z archiwum" msgid "Add to archive" msgstr "Dodaj do archiwum" -#: cps/templates/detail.html:267 cps/templates/listenmp3.html:167 -msgid "Archived" +#: cps/templates/detail.html:267 +msgid "Mark Book as archived or not, to hide it in Calibre-Web and delete it from Kobo Reader" +msgstr "" + +#: cps/templates/detail.html:267 +#, fuzzy +msgid "Archive" msgstr "Zarchiwizowane" #: cps/templates/detail.html:278 cps/templates/listenmp3.html:177 @@ -2976,6 +2991,10 @@ msgstr "Szczegóły książki" msgid "Grid" msgstr "" +#: cps/templates/listenmp3.html:167 +msgid "Archived" +msgstr "Zarchiwizowane" + #: cps/templates/login.html:18 msgid "Remember Me" msgstr "Zapamiętaj mnie" diff --git a/cps/translations/pt/LC_MESSAGES/messages.mo b/cps/translations/pt/LC_MESSAGES/messages.mo index b17e9679..02472546 100644 Binary files a/cps/translations/pt/LC_MESSAGES/messages.mo and b/cps/translations/pt/LC_MESSAGES/messages.mo differ diff --git a/cps/translations/pt/LC_MESSAGES/messages.po b/cps/translations/pt/LC_MESSAGES/messages.po index 11f0d274..cc74a07a 100644 --- a/cps/translations/pt/LC_MESSAGES/messages.po +++ b/cps/translations/pt/LC_MESSAGES/messages.po @@ -4,7 +4,7 @@ msgid "" msgstr "" "Project-Id-Version: Calibre-Web\n" "Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n" -"POT-Creation-Date: 2024-06-09 12:26+0200\n" +"POT-Creation-Date: 2024-06-30 12:19+0200\n" "PO-Revision-Date: 2023-07-25 11:30+0100\n" "Last-Translator: horus68 \n" "Language: pt\n" @@ -13,7 +13,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.11.0\n" +"Generated-By: Babel 2.13.1\n" #: cps/about.py:84 msgid "Statistics" @@ -42,9 +42,9 @@ msgstr "Comando desconhecido" msgid "Success! Books queued for Metadata Backup, please check Tasks for result" msgstr "Sucesso! Livros enviados para lista de espera para cópia de segurança de metadados. Por favor, verifique o resultado em Tarefas" -#: cps/admin.py:207 cps/editbooks.py:591 cps/editbooks.py:593 -#: cps/editbooks.py:631 cps/editbooks.py:648 cps/editbooks.py:1280 -#: cps/updater.py:613 cps/uploader.py:93 cps/uploader.py:102 +#: cps/admin.py:207 cps/editbooks.py:573 cps/editbooks.py:575 +#: cps/editbooks.py:615 cps/editbooks.py:658 cps/editbooks.py:1280 +#: cps/updater.py:615 cps/uploader.py:93 cps/uploader.py:102 msgid "Unknown" msgstr "Desconhecido" @@ -64,12 +64,12 @@ msgstr "Configuração de IU" msgid "Edit Users" msgstr "Editar utilizadores" -#: cps/admin.py:368 cps/opds.py:541 cps/templates/grid.html:14 +#: cps/admin.py:368 cps/opds.py:542 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "Tudo" -#: cps/admin.py:395 cps/admin.py:1417 +#: cps/admin.py:395 cps/admin.py:1414 msgid "User not found" msgstr "Utilizador não encontrado" @@ -86,7 +86,7 @@ msgstr "Mostrar tudo" msgid "Malformed request" msgstr "Pedido mal construído" -#: cps/admin.py:471 cps/admin.py:2048 +#: cps/admin.py:471 cps/admin.py:2046 msgid "Guest Name can't be changed" msgstr "Nome do convidado não pode ser alterado" @@ -94,7 +94,7 @@ msgstr "Nome do convidado não pode ser alterado" msgid "Guest can't have this role" msgstr "Convidado não pode ter esta função" -#: cps/admin.py:495 cps/admin.py:2002 +#: cps/admin.py:495 cps/admin.py:2000 msgid "No admin user remaining, can't remove admin role" msgstr "Nenhum utilizador administrador restante, impossível remover a função de administrador" @@ -126,7 +126,7 @@ msgstr "Nenhum idioma válido fornecido" msgid "No Valid Book Language Given" msgstr "Não foi indicado um idioma de livro válido" -#: cps/admin.py:535 cps/editbooks.py:457 +#: cps/admin.py:535 cps/editbooks.py:440 msgid "Parameter not found" msgstr "Parâmetro não encontrado" @@ -138,7 +138,7 @@ msgstr "Coluna Lido é inválida" msgid "Invalid Restricted Column" msgstr "Coluna Restrito é inválida" -#: cps/admin.py:598 cps/admin.py:1873 +#: cps/admin.py:598 cps/admin.py:1871 msgid "Calibre-Web configuration updated" msgstr "Configuração do Calibre-Web atualizada" @@ -218,292 +218,292 @@ msgstr "Etiqueta não encontrada" msgid "Invalid Action" msgstr "Ação inválida" -#: cps/admin.py:1123 +#: cps/admin.py:1120 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "client_secrets.json não está configurado para aplicação Web" -#: cps/admin.py:1168 +#: cps/admin.py:1165 msgid "Logfile Location is not Valid, Please Enter Correct Path" msgstr "A localização do ficheiro de historial não é válida. Por favor, digite um caminho correto" -#: cps/admin.py:1174 +#: cps/admin.py:1171 msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgstr "A localização do ficheiro de historial não é válida. Por favor, digite um caminho correto" -#: cps/admin.py:1208 +#: cps/admin.py:1205 msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgstr "Digite um fornecedor LDAP, porta, DN e identificador de objeto do utilizador" -#: cps/admin.py:1214 +#: cps/admin.py:1211 msgid "Please Enter a LDAP Service Account and Password" msgstr "Por favor, digite uma conta de serviço LDAP e senha" -#: cps/admin.py:1217 +#: cps/admin.py:1214 msgid "Please Enter a LDAP Service Account" msgstr "Por favor, digite uma conta de serviço LDAP" -#: cps/admin.py:1222 +#: cps/admin.py:1219 #, python-format msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgstr "O filtro de objeto de grupo LDAP precisa de ter um identificador de formato \"%s\"" -#: cps/admin.py:1224 +#: cps/admin.py:1221 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "Filtro de objeto de grupo LDAP tem parênteses não coincidentes" -#: cps/admin.py:1228 +#: cps/admin.py:1225 #, python-format msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgstr "O filtro de objeto de utilizador LDAP precisa de ter um identificador de formato \"%s\"" -#: cps/admin.py:1230 +#: cps/admin.py:1227 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "Filtro de objeto de utilizador LDAP tem parênteses não coincidentes" -#: cps/admin.py:1237 +#: cps/admin.py:1234 #, python-format msgid "LDAP Member User Filter needs to Have One \"%s\" Format Identifier" msgstr "O filtro de utilizador membro do LDAP precisa ter um identificador de formato \"%s\"" -#: cps/admin.py:1239 +#: cps/admin.py:1236 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "Filtro de utilizador de membro LDAP tem parênteses incomparáveis" -#: cps/admin.py:1246 +#: cps/admin.py:1243 msgid "LDAP CACertificate, Certificate or Key Location is not Valid, Please Enter Correct Path" msgstr "LDAP Certificado CA: Localização inválida de certificado ou chave. Por favor, digite um caminho correto" -#: cps/admin.py:1277 cps/templates/admin.html:53 +#: cps/admin.py:1274 cps/templates/admin.html:53 msgid "Add New User" msgstr "Adicionar utilizador" -#: cps/admin.py:1286 cps/templates/admin.html:100 +#: cps/admin.py:1283 cps/templates/admin.html:100 msgid "Edit Email Server Settings" msgstr "Editar configurações do servidor de email" -#: cps/admin.py:1305 +#: cps/admin.py:1302 msgid "Success! Gmail Account Verified." msgstr "Sucesso! Conta Gmail verificada" -#: cps/admin.py:1325 cps/admin.py:1328 cps/admin.py:1713 cps/admin.py:1857 -#: cps/admin.py:1955 cps/admin.py:2076 cps/editbooks.py:243 -#: cps/editbooks.py:319 cps/editbooks.py:1242 cps/shelf.py:90 cps/shelf.py:150 +#: cps/admin.py:1322 cps/admin.py:1325 cps/admin.py:1710 cps/admin.py:1855 +#: cps/admin.py:1953 cps/admin.py:2074 cps/editbooks.py:226 +#: cps/editbooks.py:303 cps/editbooks.py:1242 cps/shelf.py:90 cps/shelf.py:150 #: cps/shelf.py:193 cps/shelf.py:243 cps/shelf.py:280 cps/shelf.py:354 -#: cps/shelf.py:468 cps/tasks/convert.py:150 cps/web.py:1520 +#: cps/shelf.py:468 cps/tasks/convert.py:153 cps/web.py:1520 #, python-format msgid "Oops! Database Error: %(error)s." msgstr "Erro de base de dados: %(error)s." -#: cps/admin.py:1335 +#: cps/admin.py:1332 #, python-format msgid "Test e-mail queued for sending to %(email)s, please check Tasks for result" msgstr "Email de teste enviado para lista de espera para envio para %(email)s. Por favor, verifique o resultado em Tarefas" -#: cps/admin.py:1338 +#: cps/admin.py:1335 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "Ocorreu um erro ao enviar o email de teste: %(res)s" -#: cps/admin.py:1340 +#: cps/admin.py:1337 msgid "Please configure your e-mail address first..." msgstr "Por favor, primeiro configure seu endereço de email..." -#: cps/admin.py:1342 +#: cps/admin.py:1339 msgid "Email Server Settings updated" msgstr "Atualização das configurações do servidor de email" -#: cps/admin.py:1365 cps/templates/admin.html:195 +#: cps/admin.py:1362 cps/templates/admin.html:195 msgid "Edit Scheduled Tasks Settings" msgstr "Editar configurações de tarefas agendadas" -#: cps/admin.py:1377 +#: cps/admin.py:1374 msgid "Invalid start time for task specified" msgstr "Hora de início inválida para a tarefa especificada" -#: cps/admin.py:1382 +#: cps/admin.py:1379 msgid "Invalid duration for task specified" msgstr "Duração inválida para a tarefa especificada" -#: cps/admin.py:1392 +#: cps/admin.py:1389 msgid "Scheduled tasks settings updated" msgstr "Foram atualizadas as configurações de tarefas agendadas" -#: cps/admin.py:1402 cps/admin.py:1451 cps/admin.py:2072 cps/web.py:1316 +#: cps/admin.py:1399 cps/admin.py:1448 cps/admin.py:2070 cps/web.py:1316 msgid "Oops! An unknown error occurred. Please try again later." msgstr "Ocorreu um erro desconhecido. Por favor, tente novamente mais tarde." -#: cps/admin.py:1406 +#: cps/admin.py:1403 msgid "Settings DB is not Writeable" msgstr "Configuaração da DB não é gravável" -#: cps/admin.py:1436 cps/admin.py:2064 +#: cps/admin.py:1433 cps/admin.py:2062 #, python-format msgid "Edit User %(nick)s" msgstr "Editar utilizador %(nick)s" -#: cps/admin.py:1448 +#: cps/admin.py:1445 #, fuzzy, python-format msgid "Success! Password for user %(user)s reset" msgstr "Sucesso! Senha do utilizador %(user)s redefinida" -#: cps/admin.py:1454 +#: cps/admin.py:1451 #, fuzzy msgid "Oops! Please configure the SMTP mail settings." msgstr "Por favor, configure primeiro as configurações de correio SMTP..." -#: cps/admin.py:1465 +#: cps/admin.py:1462 msgid "Logfile viewer" msgstr "Visualizador do historial" -#: cps/admin.py:1531 +#: cps/admin.py:1528 msgid "Requesting update package" msgstr "A solicitar pacote de atualização" -#: cps/admin.py:1532 +#: cps/admin.py:1529 msgid "Downloading update package" msgstr "A descarregar pacote de atualização" -#: cps/admin.py:1533 +#: cps/admin.py:1530 msgid "Unzipping update package" msgstr "A descomprimir pacote de atualização" -#: cps/admin.py:1534 +#: cps/admin.py:1531 msgid "Replacing files" msgstr "A substituir ficheiros" -#: cps/admin.py:1535 +#: cps/admin.py:1532 msgid "Database connections are closed" msgstr "As ligações à base de dados estão fechadas" -#: cps/admin.py:1536 +#: cps/admin.py:1533 msgid "Stopping server" msgstr "A parar o servidor" -#: cps/admin.py:1537 +#: cps/admin.py:1534 msgid "Update finished, please press okay and reload page" msgstr "Atualização concluída, pressione OK e refresque a página" -#: cps/admin.py:1538 cps/admin.py:1539 cps/admin.py:1540 cps/admin.py:1541 -#: cps/admin.py:1542 cps/admin.py:1543 +#: cps/admin.py:1535 cps/admin.py:1536 cps/admin.py:1537 cps/admin.py:1538 +#: cps/admin.py:1539 cps/admin.py:1540 msgid "Update failed:" msgstr "Atualização falhou:" -#: cps/admin.py:1538 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 +#: cps/admin.py:1535 cps/updater.py:391 cps/updater.py:626 cps/updater.py:628 msgid "HTTP Error" msgstr "Erro HTTP" -#: cps/admin.py:1539 cps/updater.py:391 cps/updater.py:628 +#: cps/admin.py:1536 cps/updater.py:393 cps/updater.py:630 msgid "Connection error" msgstr "Erro de ligação" -#: cps/admin.py:1540 cps/updater.py:393 cps/updater.py:630 +#: cps/admin.py:1537 cps/updater.py:395 cps/updater.py:632 msgid "Timeout while establishing connection" msgstr "Tempo limite ao estabelecer a ligação" -#: cps/admin.py:1541 cps/updater.py:395 cps/updater.py:632 +#: cps/admin.py:1538 cps/updater.py:397 cps/updater.py:634 msgid "General error" msgstr "Erro geral" -#: cps/admin.py:1542 +#: cps/admin.py:1539 msgid "Update file could not be saved in temp dir" msgstr "Ficheiro de atualização não pode ser guardado na pasta temporária" -#: cps/admin.py:1543 +#: cps/admin.py:1540 msgid "Files could not be replaced during update" msgstr "Não foi possível substituir ficheiros durante a atualização" -#: cps/admin.py:1567 +#: cps/admin.py:1564 msgid "Failed to extract at least One LDAP User" msgstr "Falha ao extrair pelo menos um utilizador LDAP" -#: cps/admin.py:1612 +#: cps/admin.py:1609 msgid "Failed to Create at Least One LDAP User" msgstr "Falha ao criar pelo menos um utilizador LDAP" -#: cps/admin.py:1625 +#: cps/admin.py:1622 #, python-format msgid "Error: %(ldaperror)s" msgstr "Erro: %(ldaperror)s" -#: cps/admin.py:1629 +#: cps/admin.py:1626 msgid "Error: No user returned in response of LDAP server" msgstr "Erro: Nenhum utilizador devolvido na resposta do servidor LDAP" -#: cps/admin.py:1665 +#: cps/admin.py:1662 msgid "At Least One LDAP User Not Found in Database" msgstr "No mínimo um utilizador LDAP não encontrado no base de dados" -#: cps/admin.py:1667 +#: cps/admin.py:1664 msgid "{} User Successfully Imported" msgstr "{} utilizador importado com sucesso" -#: cps/admin.py:1725 +#: cps/admin.py:1722 msgid "DB Location is not Valid, Please Enter Correct Path" msgstr "A localização da base de dados não é válida. Por favor, digite o caminho correto" -#: cps/admin.py:1745 +#: cps/admin.py:1742 msgid "DB is not Writeable" msgstr "DB não é gravável" -#: cps/admin.py:1761 +#: cps/admin.py:1758 msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgstr "Localização do ficheiro de chaves não é válida. Por favor, digite o caminho correto" -#: cps/admin.py:1765 +#: cps/admin.py:1762 msgid "Certfile Location is not Valid, Please Enter Correct Path" msgstr "Localização do ficheiro de certificados não é válida. Por favor, digite o caminho correto" -#: cps/admin.py:1842 +#: cps/admin.py:1840 msgid "Password length has to be between 1 and 40" msgstr "A dimensão da senha deve estar entre 1 e 40" -#: cps/admin.py:1896 +#: cps/admin.py:1894 msgid "Database Settings updated" msgstr "Configurações da base de dados atualizadas" -#: cps/admin.py:1904 +#: cps/admin.py:1902 msgid "Database Configuration" msgstr "Configuração da base de dados" -#: cps/admin.py:1919 cps/web.py:1290 +#: cps/admin.py:1917 cps/web.py:1290 msgid "Oops! Please complete all fields." msgstr "Por favor, preencha todos os campos!" -#: cps/admin.py:1928 +#: cps/admin.py:1926 msgid "E-mail is not from valid domain" msgstr "O email não é de um domínio válido" -#: cps/admin.py:1934 +#: cps/admin.py:1932 msgid "Add new user" msgstr "Adicionar novo utilizador" -#: cps/admin.py:1945 +#: cps/admin.py:1943 #, python-format msgid "User '%(user)s' created" msgstr "Criado utilizador '%(user)s'" -#: cps/admin.py:1951 +#: cps/admin.py:1949 msgid "Oops! An account already exists for this Email. or name." msgstr "Já existe uma conta para este endereço de email ou nome." -#: cps/admin.py:1981 +#: cps/admin.py:1979 #, python-format msgid "User '%(nick)s' deleted" msgstr "Utilizador '%(nick)s' eliminado" -#: cps/admin.py:1984 +#: cps/admin.py:1982 msgid "Can't delete Guest User" msgstr "Impossível eliminar convidado" -#: cps/admin.py:1987 +#: cps/admin.py:1985 msgid "No admin user remaining, can't delete user" msgstr "Nenhum utilizador administrador restante, não é possível eliminar o utilizador" -#: cps/admin.py:2042 cps/web.py:1469 +#: cps/admin.py:2040 cps/web.py:1469 msgid "Email can't be empty and has to be a valid Email" msgstr "O email não pode estar vazio e tem de ser válido" -#: cps/admin.py:2068 +#: cps/admin.py:2066 #, python-format msgid "User '%(nick)s' updated" msgstr "Utilizador '%(nick)s' atualizado" @@ -516,12 +516,12 @@ msgstr "não instalado" msgid "Execution permissions missing" msgstr "Falta de permissões de execução" -#: cps/db.py:756 cps/search.py:137 cps/web.py:747 +#: cps/db.py:768 cps/search.py:137 cps/web.py:747 #, python-format msgid "Custom Column No.%(column)d does not exist in calibre database" msgstr "A coluna personalizada No.%(column)d não existe na base de dados do Calibre" -#: cps/db.py:996 cps/templates/config_edit.html:203 +#: cps/db.py:1008 cps/templates/config_edit.html:203 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 #: cps/web.py:562 cps/web.py:596 cps/web.py:641 cps/web.py:681 cps/web.py:708 #: cps/web.py:989 cps/web.py:1019 cps/web.py:1064 cps/web.py:1092 @@ -529,100 +529,105 @@ msgstr "A coluna personalizada No.%(column)d não existe na base de dados do Cal msgid "None" msgstr "Nenhum" -#: cps/editbooks.py:124 cps/editbooks.py:912 cps/web.py:529 cps/web.py:1561 -#: cps/web.py:1605 cps/web.py:1650 +#: cps/editbooks.py:108 cps/editbooks.py:929 cps/web.py:529 cps/web.py:1561 +#: cps/web.py:1606 cps/web.py:1651 msgid "Oops! Selected book is unavailable. File does not exist or is not accessible" msgstr "Oops! O Livro selecionado não está disponível. O ficheiro não existe ou não está acessível" -#: cps/editbooks.py:168 cps/editbooks.py:1263 +#: cps/editbooks.py:151 cps/editbooks.py:1263 msgid "User has no rights to upload cover" msgstr "Utilizador não tem permissão para carregar capas" -#: cps/editbooks.py:188 cps/editbooks.py:733 +#: cps/editbooks.py:171 cps/editbooks.py:744 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "Os identificadores não diferenciam maiúsculas de minúsculas, substituindo o identificador antigo" -#: cps/editbooks.py:230 +#: cps/editbooks.py:213 msgid "Metadata successfully updated" msgstr "Metadados atualizados com sucesso" -#: cps/editbooks.py:248 +#: cps/editbooks.py:231 msgid "Error editing book: {}" msgstr "Erro ao editar o livro: {}" -#: cps/editbooks.py:305 +#: cps/editbooks.py:289 #, python-format msgid "File %(file)s uploaded" msgstr "Ficheiro %(file)s enviado" -#: cps/editbooks.py:333 +#: cps/editbooks.py:317 msgid "Source or destination format for conversion missing" msgstr "Formato de origem ou destino para conversão está em falta" -#: cps/editbooks.py:341 +#: cps/editbooks.py:325 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "Livro enviado com sucesso para lista de espera de conversão para %(book_format)s" -#: cps/editbooks.py:345 +#: cps/editbooks.py:329 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "Ocorreu um erro ao converter este livro: %(res)s" -#: cps/editbooks.py:652 +#: cps/editbooks.py:662 msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgstr "O livro carregado provavelmente existe na biblioteca, considere alterar antes de carregar novo: " -#: cps/editbooks.py:707 cps/editbooks.py:1043 +#: cps/editbooks.py:718 cps/editbooks.py:1049 #, python-format msgid "'%(langname)s' is not a valid language" msgstr "%(langname)s não é um idioma válido" -#: cps/editbooks.py:745 cps/editbooks.py:1203 +#: cps/editbooks.py:756 cps/editbooks.py:1192 +#, fuzzy +msgid "File type isn't allowed to be uploaded to this server" +msgstr "A extensão de ficheiro '%(ext)s' não pode ser enviada para este servidor" + +#: cps/editbooks.py:762 cps/editbooks.py:1202 #, python-format msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgstr "A extensão de ficheiro '%(ext)s' não pode ser enviada para este servidor" -#: cps/editbooks.py:749 cps/editbooks.py:1207 +#: cps/editbooks.py:766 cps/editbooks.py:1206 msgid "File to be uploaded must have an extension" msgstr "O ficheiro a ser carregado deve ter uma extensão" -#: cps/editbooks.py:757 +#: cps/editbooks.py:774 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "O ficheiro %(filename)s não foi possível ser guardado na pasta temporária" -#: cps/editbooks.py:777 +#: cps/editbooks.py:794 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "Falha ao mover ficheiro de capa %(file)s: %(error)s" -#: cps/editbooks.py:834 cps/editbooks.py:836 +#: cps/editbooks.py:851 cps/editbooks.py:853 msgid "Book Format Successfully Deleted" msgstr "Formato de livro eliminado com sucesso" -#: cps/editbooks.py:843 cps/editbooks.py:845 +#: cps/editbooks.py:860 cps/editbooks.py:862 msgid "Book Successfully Deleted" msgstr "Livro eliminado com sucesso" -#: cps/editbooks.py:897 +#: cps/editbooks.py:914 msgid "You are missing permissions to delete books" msgstr "Não tem permissões para apagar livros" -#: cps/editbooks.py:947 +#: cps/editbooks.py:964 msgid "edit metadata" msgstr "editar metadados" -#: cps/editbooks.py:996 +#: cps/editbooks.py:1013 #, python-format msgid "%(seriesindex)s is not a valid number, skipping" msgstr "%(seriesindex)s não é um número válido, ignorando" -#: cps/editbooks.py:1198 +#: cps/editbooks.py:1197 msgid "User has no rights to upload additional file formats" msgstr "Utilizador não tem direitos para carregar formatos de ficheiro adicionais" -#: cps/editbooks.py:1219 +#: cps/editbooks.py:1218 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "Falha ao criar o caminho %(path)s (Permissão negada)." @@ -641,7 +646,7 @@ msgstr "Formato de ficheiro %(ext)s adicionado a %(book)s" msgid "Google Drive setup not completed, try to deactivate and activate Google Drive again" msgstr "Configuração do Google Drive não concluída, tente desativar e ativar o Google Drive novamente" -#: cps/gdrive.py:95 +#: cps/gdrive.py:96 msgid "Callback domain is not verified, please follow steps to verify domain in google developer console" msgstr "O domínio Callback não foi verificado. Por favor, siga os passos para verificar o domínio na consola de programadores do Google" @@ -650,7 +655,7 @@ msgstr "O domínio Callback não foi verificado. Por favor, siga os passos para msgid "%(format)s format not found for book id: %(book)d" msgstr "Formato %(format)s não encontrado para o ID do livro: %(book)d" -#: cps/helper.py:93 cps/tasks/convert.py:86 +#: cps/helper.py:93 cps/tasks/convert.py:89 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "%(format)s não encontrado no Google Drive: %(fn)s" @@ -726,126 +731,122 @@ msgstr "Falha ao eliminar livro %(id)s: %(message)s" msgid "Deleting book %(id)s from database only, book path in database not valid: %(path)s" msgstr "Eliminar livro %(id)s apenas da base de dados, caminho do livro inválido: %(path)s" -#: cps/helper.py:452 +#: cps/helper.py:465 #, python-format msgid "Rename author from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgstr "Renomear autor de: '%(src)s' para '%(dest)s' falhou com o erro: %(error)s" -#: cps/helper.py:524 cps/helper.py:533 +#: cps/helper.py:536 cps/helper.py:545 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "Ficheiro %(file)s não encontrado no Google Drive" -#: cps/helper.py:567 +#: cps/helper.py:587 #, python-format msgid "Rename title from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgstr "Renomear título de: '%(src)s' para '%(dest)s' falhou com o erro: %(error)s" -#: cps/helper.py:587 -msgid "Error in rename file in path: {}" -msgstr "Erro ao renomear ficheiro no caminho: {}" - -#: cps/helper.py:605 +#: cps/helper.py:625 #, python-format msgid "Book path %(path)s not found on Google Drive" msgstr "Caminho do livro %(path)s não encontrado no Google Drive" -#: cps/helper.py:670 +#: cps/helper.py:685 msgid "Found an existing account for this Email address" msgstr "Encontrada uma conta existente para este endereço de email" -#: cps/helper.py:678 +#: cps/helper.py:693 msgid "This username is already taken" msgstr "Este nome de utilizador já está registado" -#: cps/helper.py:690 +#: cps/helper.py:705 #, fuzzy msgid "Invalid Email address format" msgstr "Formato de endereço de email inválido" -#: cps/helper.py:710 +#: cps/helper.py:726 msgid "Password doesn't comply with password validation rules" msgstr "" -#: cps/helper.py:859 +#: cps/helper.py:873 msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "O módulo Python 'advocate' não está instalado, mas é necessário para carregar capas" -#: cps/helper.py:869 +#: cps/helper.py:883 msgid "Error Downloading Cover" msgstr "Erro ao descarregar a capa" -#: cps/helper.py:872 +#: cps/helper.py:886 msgid "Cover Format Error" msgstr "Erro de formato da capa" -#: cps/helper.py:875 +#: cps/helper.py:889 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "Não possui permissões para aceder a localhost ou à rede local para carregar capas" -#: cps/helper.py:885 +#: cps/helper.py:899 msgid "Failed to create path for cover" msgstr "Falha em criar um caminho para a capa" -#: cps/helper.py:901 +#: cps/helper.py:915 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "O ficheiro de capa não é um ficheiro de imagem válido, ou não foi possível ser armazenado" -#: cps/helper.py:912 +#: cps/helper.py:926 msgid "Only jpg/jpeg/png/webp/bmp files are supported as coverfile" msgstr "Apenas ficheiros jpg/jpeg/png/webp/bmp são suportados como ficheiros de capa" -#: cps/helper.py:924 +#: cps/helper.py:938 msgid "Invalid cover file content" msgstr "Conteúdo do ficheiro de capa inválido" -#: cps/helper.py:928 +#: cps/helper.py:942 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "Apenas ficheiros jpg/jpeg são suportados como ficheiros de capa" -#: cps/helper.py:999 cps/helper.py:1156 +#: cps/helper.py:1014 cps/helper.py:1171 #, fuzzy msgid "Cover" msgstr "Capa" -#: cps/helper.py:1016 +#: cps/helper.py:1031 msgid "UnRar binary file not found" msgstr "Binário UnRar não encontrado" -#: cps/helper.py:1027 +#: cps/helper.py:1042 #, fuzzy msgid "Error executing UnRar" msgstr "Erro a executar UnRar" -#: cps/helper.py:1035 +#: cps/helper.py:1050 msgid "Could not find the specified directory" msgstr "" -#: cps/helper.py:1038 +#: cps/helper.py:1053 msgid "Please specify a directory, not a file" msgstr "" -#: cps/helper.py:1052 +#: cps/helper.py:1067 #, fuzzy msgid "Calibre binaries not viable" msgstr "DB não é gravável" -#: cps/helper.py:1061 +#: cps/helper.py:1076 #, python-format msgid "Missing calibre binaries: %(missing)s" msgstr "" -#: cps/helper.py:1063 +#: cps/helper.py:1078 #, fuzzy, python-format msgid "Missing executable permissions: %(missing)s" msgstr "Falta de permissões de execução" -#: cps/helper.py:1068 +#: cps/helper.py:1083 #, fuzzy msgid "Error executing Calibre" msgstr "Erro a executar UnRar" -#: cps/helper.py:1158 cps/templates/admin.html:216 +#: cps/helper.py:1173 cps/templates/admin.html:216 msgid "Queue all books for metadata backup" msgstr "Enviar todos os livros para lista de espera para cópia de segurança de metadados" @@ -891,35 +892,35 @@ msgstr "Falha ao desvincular de %(oauth)s" msgid "Not Linked to %(oauth)s" msgstr "Não vinculado a %(oauth)s" -#: cps/oauth_bb.py:261 +#: cps/oauth_bb.py:262 msgid "Failed to log in with GitHub." msgstr "Falha na autenticação com GitHub." -#: cps/oauth_bb.py:267 +#: cps/oauth_bb.py:268 msgid "Failed to fetch user info from GitHub." msgstr "Falha na pesquisa de informações do utilizador no GitHub." -#: cps/oauth_bb.py:279 +#: cps/oauth_bb.py:280 msgid "Failed to log in with Google." msgstr "Falha na autenticação com Google." -#: cps/oauth_bb.py:285 +#: cps/oauth_bb.py:286 msgid "Failed to fetch user info from Google." msgstr "Falha na pesquisa de informações de utilizador no Google." -#: cps/oauth_bb.py:332 +#: cps/oauth_bb.py:334 msgid "GitHub Oauth error, please retry later." msgstr "Erro no Oauth do GitHub. Por favor, tente novamente mais tarde." -#: cps/oauth_bb.py:335 +#: cps/oauth_bb.py:337 msgid "GitHub Oauth error: {}" msgstr "Erro no Oauth do GitHub: {}" -#: cps/oauth_bb.py:356 +#: cps/oauth_bb.py:358 msgid "Google Oauth error, please retry later." msgstr "Erro no Google Oauth, tente novamente mais tarde." -#: cps/oauth_bb.py:359 +#: cps/oauth_bb.py:361 msgid "Google Oauth error: {}" msgstr "Erro no Oauth do Google: {}" @@ -1277,32 +1278,32 @@ msgstr "Cancelado" msgid "Unknown Status" msgstr "Estado desconhecido" -#: cps/updater.py:431 cps/updater.py:442 cps/updater.py:543 cps/updater.py:558 +#: cps/updater.py:433 cps/updater.py:444 cps/updater.py:545 cps/updater.py:560 msgid "Unexpected data while reading update information" msgstr "Dados inesperados ao ler informações de atualização" -#: cps/updater.py:438 cps/updater.py:550 +#: cps/updater.py:440 cps/updater.py:552 msgid "No update available. You already have the latest version installed" msgstr "Não existem atualizações disponíveis. Você já tem instalada a última versão" -#: cps/updater.py:456 +#: cps/updater.py:458 msgid "A new update is available. Click on the button below to update to the latest version." msgstr "Uma nova atualização está disponível. Clique no botão abaixo para atualizar para a versão mais recente." -#: cps/updater.py:474 +#: cps/updater.py:476 msgid "Could not fetch update information" msgstr "Não foi possível obter informações sobre atualizações" -#: cps/updater.py:484 +#: cps/updater.py:486 msgid "Click on the button below to update to the latest stable version." msgstr "Clique no botão abaixo para atualizar para a última versão estável." -#: cps/updater.py:493 cps/updater.py:507 cps/updater.py:518 +#: cps/updater.py:495 cps/updater.py:509 cps/updater.py:520 #, python-format msgid "A new update is available. Click on the button below to update to version: %(version)s" msgstr "Uma nova atualização está disponível. Clique no botão abaixo para atualizar para a versão: %(version)s" -#: cps/updater.py:536 +#: cps/updater.py:538 msgid "No release information available" msgstr "Não existem informações disponíveis sobre o lançamento" @@ -1481,50 +1482,50 @@ msgstr "Perfil atualizado" msgid "Oops! An account already exists for this Email." msgstr "Foi encontrada uma conta já existente com este endereço de email." -#: cps/services/gmail.py:58 +#: cps/services/gmail.py:59 msgid "Found no valid gmail.json file with OAuth information" msgstr "Não foi encontrado nenhum ficheiro gmail.json válido com informações do OAuth" -#: cps/tasks/convert.py:105 +#: cps/tasks/convert.py:108 #, python-format msgid "%(book)s send to E-Reader" msgstr "%(book)s enviado para dispositivo de leitura" -#: cps/tasks/convert.py:167 +#: cps/tasks/convert.py:170 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "Calibre ebook-convert %(tool)s não encontrado" -#: cps/tasks/convert.py:201 +#: cps/tasks/convert.py:204 #, python-format msgid "%(format)s format not found on disk" msgstr "Formato %(format)s não encontrado no disco" -#: cps/tasks/convert.py:205 +#: cps/tasks/convert.py:208 msgid "Ebook converter failed with unknown error" msgstr "O conversor de ebook falhou com erro desconhecido" -#: cps/tasks/convert.py:224 +#: cps/tasks/convert.py:227 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "Conversor Kepubify falhou: %(error)s" -#: cps/tasks/convert.py:245 +#: cps/tasks/convert.py:248 #, python-format msgid "Converted file not found or more than one file in folder %(folder)s" msgstr "Ficheiro convertido não encontrado ou mais de um ficheiro na pasta %(folder)s" -#: cps/tasks/convert.py:287 +#: cps/tasks/convert.py:291 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "Conversor de ebook falhou: %(error)s" -#: cps/tasks/convert.py:310 +#: cps/tasks/convert.py:314 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "Calibre falhou com erro: %(error)s" -#: cps/tasks/convert.py:315 +#: cps/tasks/convert.py:319 msgid "Convert" msgstr "Converter" @@ -1536,7 +1537,7 @@ msgstr "A religar base de dados Calibre" msgid "E-mail" msgstr "Email" -#: cps/tasks/metadata_backup.py:33 +#: cps/tasks/metadata_backup.py:34 #, fuzzy msgid "Backing up Metadata" msgstr "Cópia de segurança de metadados" @@ -1550,20 +1551,20 @@ msgstr "" msgid "Generated %(count)s cover thumbnails" msgstr "Geradas %(count)s miniaturas para capa" -#: cps/tasks/thumbnail.py:230 cps/tasks/thumbnail.py:443 -#: cps/tasks/thumbnail.py:511 +#: cps/tasks/thumbnail.py:231 cps/tasks/thumbnail.py:444 +#: cps/tasks/thumbnail.py:512 msgid "Cover Thumbnails" msgstr "Miniaturas de capa" -#: cps/tasks/thumbnail.py:289 +#: cps/tasks/thumbnail.py:290 msgid "Generated {0} series thumbnails" msgstr "Geradas {0} miniaturas de série" -#: cps/tasks/thumbnail.py:454 +#: cps/tasks/thumbnail.py:455 msgid "Clearing cover thumbnail cache" msgstr "A esvaziar a cache de miniaturas da capa" -#: cps/tasks/upload.py:38 cps/templates/admin.html:20 +#: cps/tasks/upload.py:39 cps/templates/admin.html:20 #: cps/templates/layout.html:81 cps/templates/user_table.html:145 msgid "Upload" msgstr "Carregar" @@ -1810,7 +1811,7 @@ msgstr "Ok" #: cps/templates/admin.html:259 cps/templates/admin.html:273 #: cps/templates/book_edit.html:214 cps/templates/book_table.html:127 -#: cps/templates/config_db.html:66 cps/templates/config_edit.html:423 +#: cps/templates/config_db.html:66 cps/templates/config_edit.html:427 #: cps/templates/config_view_edit.html:175 cps/templates/detail.html:342 #: cps/templates/modal_dialogs.html:64 cps/templates/modal_dialogs.html:99 #: cps/templates/modal_dialogs.html:117 cps/templates/modal_dialogs.html:135 @@ -1996,7 +1997,7 @@ msgid "Fetch Metadata" msgstr "Obter metadados" #: cps/templates/book_edit.html:213 cps/templates/config_db.html:65 -#: cps/templates/config_edit.html:422 cps/templates/config_view_edit.html:174 +#: cps/templates/config_edit.html:426 cps/templates/config_view_edit.html:174 #: cps/templates/email_edit.html:65 cps/templates/schedule_edit.html:44 #: cps/templates/shelf_edit.html:25 cps/templates/shelf_order.html:41 #: cps/templates/user_edit.html:142 @@ -2467,47 +2468,51 @@ msgid "Configure Backend for Limiter" msgstr "" #: cps/templates/config_edit.html:376 -msgid "Options for Limiter" +msgid "Options for Limiter Backend" msgstr "" -#: cps/templates/config_edit.html:381 +#: cps/templates/config_edit.html:382 +msgid "Check if file extensions matches file content on upload" +msgstr "" + +#: cps/templates/config_edit.html:385 msgid "Session protection" msgstr "Proteção de sessão" -#: cps/templates/config_edit.html:383 +#: cps/templates/config_edit.html:387 msgid "Basic" msgstr "Básica" -#: cps/templates/config_edit.html:384 +#: cps/templates/config_edit.html:388 msgid "Strong" msgstr "Forte" -#: cps/templates/config_edit.html:389 +#: cps/templates/config_edit.html:393 #, fuzzy msgid "User Password policy" msgstr "Política de senha do utilizador" -#: cps/templates/config_edit.html:393 +#: cps/templates/config_edit.html:397 msgid "Minimum password length" msgstr "Tamanho mínimo da senha" -#: cps/templates/config_edit.html:398 +#: cps/templates/config_edit.html:402 msgid "Enforce number" msgstr "Exigir números" -#: cps/templates/config_edit.html:402 +#: cps/templates/config_edit.html:406 msgid "Enforce lowercase characters" msgstr "Exigir letras minúsculas" -#: cps/templates/config_edit.html:406 +#: cps/templates/config_edit.html:410 msgid "Enforce uppercase characters" msgstr "Exigir letras maiúsculas" -#: cps/templates/config_edit.html:410 +#: cps/templates/config_edit.html:414 msgid "Enforce characters (needed For Chinese/Japanese/Korean Characters)" msgstr "" -#: cps/templates/config_edit.html:414 +#: cps/templates/config_edit.html:418 msgid "Enforce special characters" msgstr "Exigir caracteres especiais" @@ -2637,6 +2642,11 @@ msgstr "Marcar como não Lido" msgid "Mark As Read" msgstr "Marcar como lido" +#: cps/templates/detail.html:254 +#, fuzzy +msgid "Mark Book as Read or Unread" +msgstr "Marcar como não Lido" + #: cps/templates/detail.html:254 cps/templates/listenmp3.html:159 msgid "Read" msgstr "Lido" @@ -2649,8 +2659,13 @@ msgstr "Restaurar do ficheiro" msgid "Add to archive" msgstr "Adicionar ao ficheiro" -#: cps/templates/detail.html:267 cps/templates/listenmp3.html:167 -msgid "Archived" +#: cps/templates/detail.html:267 +msgid "Mark Book as archived or not, to hide it in Calibre-Web and delete it from Kobo Reader" +msgstr "" + +#: cps/templates/detail.html:267 +#, fuzzy +msgid "Archive" msgstr "Arquivado" #: cps/templates/detail.html:278 cps/templates/listenmp3.html:177 @@ -2930,6 +2945,10 @@ msgstr "Detalhes do livro" msgid "Grid" msgstr "Grelha" +#: cps/templates/listenmp3.html:167 +msgid "Archived" +msgstr "Arquivado" + #: cps/templates/login.html:18 msgid "Remember Me" msgstr "Memorizar-me" diff --git a/cps/translations/pt_BR/LC_MESSAGES/messages.mo b/cps/translations/pt_BR/LC_MESSAGES/messages.mo index ebe84c4d..d5bcb9d5 100644 Binary files a/cps/translations/pt_BR/LC_MESSAGES/messages.mo and b/cps/translations/pt_BR/LC_MESSAGES/messages.mo differ diff --git a/cps/translations/pt_BR/LC_MESSAGES/messages.po b/cps/translations/pt_BR/LC_MESSAGES/messages.po index 82f38db8..96374cdf 100644 --- a/cps/translations/pt_BR/LC_MESSAGES/messages.po +++ b/cps/translations/pt_BR/LC_MESSAGES/messages.po @@ -4,7 +4,7 @@ msgid "" msgstr "" "Project-Id-Version: PROJECT VERSION\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2024-06-09 12:26+0200\n" +"POT-Creation-Date: 2024-06-30 12:19+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language: br\n" @@ -13,7 +13,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.11.0\n" +"Generated-By: Babel 2.13.1\n" #: cps/about.py:84 msgid "Statistics" @@ -42,9 +42,9 @@ msgstr "Comando desconhecido" msgid "Success! Books queued for Metadata Backup, please check Tasks for result" msgstr "E-mail de teste enfileirado para envio para %(email)s, verifique o resultado em Tarefas" -#: cps/admin.py:207 cps/editbooks.py:591 cps/editbooks.py:593 -#: cps/editbooks.py:631 cps/editbooks.py:648 cps/editbooks.py:1280 -#: cps/updater.py:613 cps/uploader.py:93 cps/uploader.py:102 +#: cps/admin.py:207 cps/editbooks.py:573 cps/editbooks.py:575 +#: cps/editbooks.py:615 cps/editbooks.py:658 cps/editbooks.py:1280 +#: cps/updater.py:615 cps/uploader.py:93 cps/uploader.py:102 msgid "Unknown" msgstr "Desconhecido" @@ -64,12 +64,12 @@ msgstr "Configuração de UI" msgid "Edit Users" msgstr "Editar Usuários" -#: cps/admin.py:368 cps/opds.py:541 cps/templates/grid.html:14 +#: cps/admin.py:368 cps/opds.py:542 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "Todos" -#: cps/admin.py:395 cps/admin.py:1417 +#: cps/admin.py:395 cps/admin.py:1414 msgid "User not found" msgstr "Usuário não encontrado" @@ -86,7 +86,7 @@ msgstr "Mostrar Tudo" msgid "Malformed request" msgstr "Requisição Malformada" -#: cps/admin.py:471 cps/admin.py:2048 +#: cps/admin.py:471 cps/admin.py:2046 msgid "Guest Name can't be changed" msgstr "Nome do Convidado não pode ser alterado" @@ -94,7 +94,7 @@ msgstr "Nome do Convidado não pode ser alterado" msgid "Guest can't have this role" msgstr "Convidado não pode ter esta função" -#: cps/admin.py:495 cps/admin.py:2002 +#: cps/admin.py:495 cps/admin.py:2000 msgid "No admin user remaining, can't remove admin role" msgstr "Nenhum usuário administrador restante, impossível remover a função de administrador" @@ -126,7 +126,7 @@ msgstr "Nenhum Idioma Válido Fornecido" msgid "No Valid Book Language Given" msgstr "Nenhum Idioma do Livro Válido Fornecido" -#: cps/admin.py:535 cps/editbooks.py:457 +#: cps/admin.py:535 cps/editbooks.py:440 msgid "Parameter not found" msgstr "Parametro não encontrado" @@ -138,7 +138,7 @@ msgstr "Coluna Lido Inválida" msgid "Invalid Restricted Column" msgstr "Coluna Restrito Inválida" -#: cps/admin.py:598 cps/admin.py:1873 +#: cps/admin.py:598 cps/admin.py:1871 msgid "Calibre-Web configuration updated" msgstr "Configuração do Calibre-Web atualizada" @@ -218,292 +218,292 @@ msgstr "Tag não encontrada" msgid "Invalid Action" msgstr "Ação Inválida" -#: cps/admin.py:1123 +#: cps/admin.py:1120 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "client_secrets.json Não Está Configurado para Aplicação Web" -#: cps/admin.py:1168 +#: cps/admin.py:1165 msgid "Logfile Location is not Valid, Please Enter Correct Path" msgstr "A localização do arquivo de log não é válida, digite o caminho correto" -#: cps/admin.py:1174 +#: cps/admin.py:1171 msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgstr "A localização do arquivo de log de acesso não é válida, digite o caminho correto" -#: cps/admin.py:1208 +#: cps/admin.py:1205 msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgstr "Digite um provedor LDAP, porta, DN e identificador de objeto do usuário" -#: cps/admin.py:1214 +#: cps/admin.py:1211 msgid "Please Enter a LDAP Service Account and Password" msgstr "Por favor, digite uma Conta de Serviço LDAP e Senha" -#: cps/admin.py:1217 +#: cps/admin.py:1214 msgid "Please Enter a LDAP Service Account" msgstr "Por favor, digite uma Conta de Serviço LDAP" -#: cps/admin.py:1222 +#: cps/admin.py:1219 #, python-format msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgstr "O filtro de objeto de grupo LDAP precisa ter um identificador de formato \"%s\"" -#: cps/admin.py:1224 +#: cps/admin.py:1221 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "Filtro de objeto de grupo LDAP tem parênteses incomparáveis" -#: cps/admin.py:1228 +#: cps/admin.py:1225 #, python-format msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgstr "O filtro de objeto de usuário LDAP precisa ter um identificador de formato \"%s\"" -#: cps/admin.py:1230 +#: cps/admin.py:1227 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "Filtro de objeto de usuário LDAP tem parênteses incomparáveis" -#: cps/admin.py:1237 +#: cps/admin.py:1234 #, python-format msgid "LDAP Member User Filter needs to Have One \"%s\" Format Identifier" msgstr "O filtro de usuário membro do LDAP precisa ter um identificador de formato \"%s\"" -#: cps/admin.py:1239 +#: cps/admin.py:1236 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "Filtro de usuário de membro LDAP tem parênteses incomparáveis" -#: cps/admin.py:1246 +#: cps/admin.py:1243 msgid "LDAP CACertificate, Certificate or Key Location is not Valid, Please Enter Correct Path" msgstr "Localização de LDAP CACertificate, Certificados ou Key Inválida, Insira o Caminho Correto" -#: cps/admin.py:1277 cps/templates/admin.html:53 +#: cps/admin.py:1274 cps/templates/admin.html:53 msgid "Add New User" msgstr "Adicionar Novo Usuário" -#: cps/admin.py:1286 cps/templates/admin.html:100 +#: cps/admin.py:1283 cps/templates/admin.html:100 msgid "Edit Email Server Settings" msgstr "Editar configurações do servidor de e-mail" -#: cps/admin.py:1305 +#: cps/admin.py:1302 msgid "Success! Gmail Account Verified." msgstr "" -#: cps/admin.py:1325 cps/admin.py:1328 cps/admin.py:1713 cps/admin.py:1857 -#: cps/admin.py:1955 cps/admin.py:2076 cps/editbooks.py:243 -#: cps/editbooks.py:319 cps/editbooks.py:1242 cps/shelf.py:90 cps/shelf.py:150 +#: cps/admin.py:1322 cps/admin.py:1325 cps/admin.py:1710 cps/admin.py:1855 +#: cps/admin.py:1953 cps/admin.py:2074 cps/editbooks.py:226 +#: cps/editbooks.py:303 cps/editbooks.py:1242 cps/shelf.py:90 cps/shelf.py:150 #: cps/shelf.py:193 cps/shelf.py:243 cps/shelf.py:280 cps/shelf.py:354 -#: cps/shelf.py:468 cps/tasks/convert.py:150 cps/web.py:1520 +#: cps/shelf.py:468 cps/tasks/convert.py:153 cps/web.py:1520 #, python-format msgid "Oops! Database Error: %(error)s." msgstr "Erro de banco de dados: %(error)s." -#: cps/admin.py:1335 +#: cps/admin.py:1332 #, python-format msgid "Test e-mail queued for sending to %(email)s, please check Tasks for result" msgstr "E-mail de teste enfileirado para envio para %(email)s, verifique o resultado em Tarefas" -#: cps/admin.py:1338 +#: cps/admin.py:1335 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "Ocorreu um erro ao enviar o e-mail de teste: %(res)s" -#: cps/admin.py:1340 +#: cps/admin.py:1337 msgid "Please configure your e-mail address first..." msgstr "Por favor, configure seu endereço de e-mail primeiro..." -#: cps/admin.py:1342 +#: cps/admin.py:1339 msgid "Email Server Settings updated" msgstr "Atualização das configurações do servidor de e-mail" -#: cps/admin.py:1365 cps/templates/admin.html:195 +#: cps/admin.py:1362 cps/templates/admin.html:195 msgid "Edit Scheduled Tasks Settings" msgstr "Editar configurações de tarefas agendadas" -#: cps/admin.py:1377 +#: cps/admin.py:1374 msgid "Invalid start time for task specified" msgstr "Hora de início inválida para a tarefa especificada" -#: cps/admin.py:1382 +#: cps/admin.py:1379 msgid "Invalid duration for task specified" msgstr "Duração inválida para a tarefa especificada" -#: cps/admin.py:1392 +#: cps/admin.py:1389 msgid "Scheduled tasks settings updated" msgstr "Configurações de tarefas agendadas atualizadas" -#: cps/admin.py:1402 cps/admin.py:1451 cps/admin.py:2072 cps/web.py:1316 +#: cps/admin.py:1399 cps/admin.py:1448 cps/admin.py:2070 cps/web.py:1316 msgid "Oops! An unknown error occurred. Please try again later." msgstr "Ocorreu um erro desconhecido. Por favor, tente novamente mais tarde." -#: cps/admin.py:1406 +#: cps/admin.py:1403 msgid "Settings DB is not Writeable" msgstr "Settings DB não é gravável" -#: cps/admin.py:1436 cps/admin.py:2064 +#: cps/admin.py:1433 cps/admin.py:2062 #, python-format msgid "Edit User %(nick)s" msgstr "Editar Usuário %(nick)s" -#: cps/admin.py:1448 +#: cps/admin.py:1445 #, fuzzy, python-format msgid "Success! Password for user %(user)s reset" msgstr "Senha do usuário %(user)s redefinida" -#: cps/admin.py:1454 +#: cps/admin.py:1451 #, fuzzy msgid "Oops! Please configure the SMTP mail settings." msgstr "Por favor, configure primeiro as configurações de correio SMTP..." -#: cps/admin.py:1465 +#: cps/admin.py:1462 msgid "Logfile viewer" msgstr "Visualizador do Log" -#: cps/admin.py:1531 +#: cps/admin.py:1528 msgid "Requesting update package" msgstr "Solicitação de pacote de atualização" -#: cps/admin.py:1532 +#: cps/admin.py:1529 msgid "Downloading update package" msgstr "Baixando pacote de atualização" -#: cps/admin.py:1533 +#: cps/admin.py:1530 msgid "Unzipping update package" msgstr "Descompactando pacote de atualização" -#: cps/admin.py:1534 +#: cps/admin.py:1531 msgid "Replacing files" msgstr "Substituindo arquivos" -#: cps/admin.py:1535 +#: cps/admin.py:1532 msgid "Database connections are closed" msgstr "As conexões à base de dados estão fechadas" -#: cps/admin.py:1536 +#: cps/admin.py:1533 msgid "Stopping server" msgstr "Parando servidor" -#: cps/admin.py:1537 +#: cps/admin.py:1534 msgid "Update finished, please press okay and reload page" msgstr "Atualização concluída, pressione okay e recarregue a página" -#: cps/admin.py:1538 cps/admin.py:1539 cps/admin.py:1540 cps/admin.py:1541 -#: cps/admin.py:1542 cps/admin.py:1543 +#: cps/admin.py:1535 cps/admin.py:1536 cps/admin.py:1537 cps/admin.py:1538 +#: cps/admin.py:1539 cps/admin.py:1540 msgid "Update failed:" msgstr "Atualização falhou:" -#: cps/admin.py:1538 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 +#: cps/admin.py:1535 cps/updater.py:391 cps/updater.py:626 cps/updater.py:628 msgid "HTTP Error" msgstr "Erro HTTP" -#: cps/admin.py:1539 cps/updater.py:391 cps/updater.py:628 +#: cps/admin.py:1536 cps/updater.py:393 cps/updater.py:630 msgid "Connection error" msgstr "Erro de conexão" -#: cps/admin.py:1540 cps/updater.py:393 cps/updater.py:630 +#: cps/admin.py:1537 cps/updater.py:395 cps/updater.py:632 msgid "Timeout while establishing connection" msgstr "Tempo limite durante o estabelecimento da conexão" -#: cps/admin.py:1541 cps/updater.py:395 cps/updater.py:632 +#: cps/admin.py:1538 cps/updater.py:397 cps/updater.py:634 msgid "General error" msgstr "Erro geral" -#: cps/admin.py:1542 +#: cps/admin.py:1539 msgid "Update file could not be saved in temp dir" msgstr "Arquivo de atualização não pôde ser salvo no diretório temporário" -#: cps/admin.py:1543 +#: cps/admin.py:1540 msgid "Files could not be replaced during update" msgstr "Arquivos não puderam ser substituídos durante a atualização" -#: cps/admin.py:1567 +#: cps/admin.py:1564 msgid "Failed to extract at least One LDAP User" msgstr "Falha ao extrair pelo menos um usuário LDAP" -#: cps/admin.py:1612 +#: cps/admin.py:1609 msgid "Failed to Create at Least One LDAP User" msgstr "Falha ao criar pelo menos um usuário LDAP" -#: cps/admin.py:1625 +#: cps/admin.py:1622 #, python-format msgid "Error: %(ldaperror)s" msgstr "Erro: %(ldaperror)s" -#: cps/admin.py:1629 +#: cps/admin.py:1626 msgid "Error: No user returned in response of LDAP server" msgstr "Erro: Nenhum usuário retornado na resposta do servidor LDAP" -#: cps/admin.py:1665 +#: cps/admin.py:1662 msgid "At Least One LDAP User Not Found in Database" msgstr "No mínimo um usuário LDAP não encontrado no banco de dados" -#: cps/admin.py:1667 +#: cps/admin.py:1664 msgid "{} User Successfully Imported" msgstr "{} Usuário Importado com Sucesso" -#: cps/admin.py:1725 +#: cps/admin.py:1722 msgid "DB Location is not Valid, Please Enter Correct Path" msgstr "A localização do banco de dados não é válida, digite o caminho correto" -#: cps/admin.py:1745 +#: cps/admin.py:1742 msgid "DB is not Writeable" msgstr "DB não é gravável" -#: cps/admin.py:1761 +#: cps/admin.py:1758 msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgstr "Localização do Keyfile Inválida, Insira o Caminho Correto" -#: cps/admin.py:1765 +#: cps/admin.py:1762 msgid "Certfile Location is not Valid, Please Enter Correct Path" msgstr "Localização do Certfile Inválida, Insira o Caminho Correto" -#: cps/admin.py:1842 +#: cps/admin.py:1840 msgid "Password length has to be between 1 and 40" msgstr "" -#: cps/admin.py:1896 +#: cps/admin.py:1894 msgid "Database Settings updated" msgstr "Configurações do Banco de Dados Atualizada" -#: cps/admin.py:1904 +#: cps/admin.py:1902 msgid "Database Configuration" msgstr "Configuração do Banco de Dados" -#: cps/admin.py:1919 cps/web.py:1290 +#: cps/admin.py:1917 cps/web.py:1290 msgid "Oops! Please complete all fields." msgstr "Por favor, preencha todos os campos!" -#: cps/admin.py:1928 +#: cps/admin.py:1926 msgid "E-mail is not from valid domain" msgstr "O e-mail não é de um domínio válido" -#: cps/admin.py:1934 +#: cps/admin.py:1932 msgid "Add new user" msgstr "Adicionar novo usuário" -#: cps/admin.py:1945 +#: cps/admin.py:1943 #, python-format msgid "User '%(user)s' created" msgstr "Usuário '%(user)s' criado" -#: cps/admin.py:1951 +#: cps/admin.py:1949 msgid "Oops! An account already exists for this Email. or name." msgstr "Encontrada uma conta existente para este endereço de e-mail ou apelido." -#: cps/admin.py:1981 +#: cps/admin.py:1979 #, python-format msgid "User '%(nick)s' deleted" msgstr "Usuário '%(nick)s' excluído" -#: cps/admin.py:1984 +#: cps/admin.py:1982 msgid "Can't delete Guest User" msgstr "Impossível excluir Convidado" -#: cps/admin.py:1987 +#: cps/admin.py:1985 msgid "No admin user remaining, can't delete user" msgstr "Nenhum usuário administrador restante, não é possível apagar o usuário" -#: cps/admin.py:2042 cps/web.py:1469 +#: cps/admin.py:2040 cps/web.py:1469 msgid "Email can't be empty and has to be a valid Email" msgstr "" -#: cps/admin.py:2068 +#: cps/admin.py:2066 #, python-format msgid "User '%(nick)s' updated" msgstr "Usuário '%(nick)s' atualizado" @@ -516,12 +516,12 @@ msgstr "não instalado" msgid "Execution permissions missing" msgstr "Faltam as permissões de execução" -#: cps/db.py:756 cps/search.py:137 cps/web.py:747 +#: cps/db.py:768 cps/search.py:137 cps/web.py:747 #, python-format msgid "Custom Column No.%(column)d does not exist in calibre database" msgstr "A Coluna Personalizada No.%(column)d não existe no banco de dados do calibre" -#: cps/db.py:996 cps/templates/config_edit.html:203 +#: cps/db.py:1008 cps/templates/config_edit.html:203 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 #: cps/web.py:562 cps/web.py:596 cps/web.py:641 cps/web.py:681 cps/web.py:708 #: cps/web.py:989 cps/web.py:1019 cps/web.py:1064 cps/web.py:1092 @@ -529,100 +529,105 @@ msgstr "A Coluna Personalizada No.%(column)d não existe no banco de dados do ca msgid "None" msgstr "Nenhum" -#: cps/editbooks.py:124 cps/editbooks.py:912 cps/web.py:529 cps/web.py:1561 -#: cps/web.py:1605 cps/web.py:1650 +#: cps/editbooks.py:108 cps/editbooks.py:929 cps/web.py:529 cps/web.py:1561 +#: cps/web.py:1606 cps/web.py:1651 msgid "Oops! Selected book is unavailable. File does not exist or is not accessible" msgstr "Oops! O Livro selecionado não está disponível. O arquivo não existe ou não é acessível" -#: cps/editbooks.py:168 cps/editbooks.py:1263 +#: cps/editbooks.py:151 cps/editbooks.py:1263 msgid "User has no rights to upload cover" msgstr "Usuário não tem permissão para fazer upload da capa" -#: cps/editbooks.py:188 cps/editbooks.py:733 +#: cps/editbooks.py:171 cps/editbooks.py:744 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "Os identificadores não diferenciam maiúsculas de minúsculas, substituindo o identificador antigo" -#: cps/editbooks.py:230 +#: cps/editbooks.py:213 msgid "Metadata successfully updated" msgstr "Metadados atualizados com sucesso" -#: cps/editbooks.py:248 +#: cps/editbooks.py:231 msgid "Error editing book: {}" msgstr "Erro ao editar o livro: {}" -#: cps/editbooks.py:305 +#: cps/editbooks.py:289 #, python-format msgid "File %(file)s uploaded" msgstr "Arquivo %(file)s enviado" -#: cps/editbooks.py:333 +#: cps/editbooks.py:317 msgid "Source or destination format for conversion missing" msgstr "Formato de origem ou destino para conversão ausente" -#: cps/editbooks.py:341 +#: cps/editbooks.py:325 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "Livro enfileirado com sucesso para conversão em %(book_format)s" -#: cps/editbooks.py:345 +#: cps/editbooks.py:329 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "Ocorreu um erro ao converter este livro: %(res)s" -#: cps/editbooks.py:652 +#: cps/editbooks.py:662 msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgstr "O livro carregado provavelmente existe na biblioteca, considere alterar antes de carregar novo: " -#: cps/editbooks.py:707 cps/editbooks.py:1043 +#: cps/editbooks.py:718 cps/editbooks.py:1049 #, python-format msgid "'%(langname)s' is not a valid language" msgstr "%(langname)s não é um idioma válido" -#: cps/editbooks.py:745 cps/editbooks.py:1203 +#: cps/editbooks.py:756 cps/editbooks.py:1192 +#, fuzzy +msgid "File type isn't allowed to be uploaded to this server" +msgstr "A extensão de arquivo '%(ext)s' não pode ser enviada para este servidor" + +#: cps/editbooks.py:762 cps/editbooks.py:1202 #, python-format msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgstr "A extensão de arquivo '%(ext)s' não pode ser enviada para este servidor" -#: cps/editbooks.py:749 cps/editbooks.py:1207 +#: cps/editbooks.py:766 cps/editbooks.py:1206 msgid "File to be uploaded must have an extension" msgstr "O arquivo a ser carregado deve ter uma extensão" -#: cps/editbooks.py:757 +#: cps/editbooks.py:774 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "O arquivo %(filename)s não pôde ser salvo no diretório temporário" -#: cps/editbooks.py:777 +#: cps/editbooks.py:794 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "Falha ao mover arquivo de capa %(file)s: %(error)s" -#: cps/editbooks.py:834 cps/editbooks.py:836 +#: cps/editbooks.py:851 cps/editbooks.py:853 msgid "Book Format Successfully Deleted" msgstr "Formato do Livro Apagado com Sucesso" -#: cps/editbooks.py:843 cps/editbooks.py:845 +#: cps/editbooks.py:860 cps/editbooks.py:862 msgid "Book Successfully Deleted" msgstr "Livro Apagado com Sucesso" -#: cps/editbooks.py:897 +#: cps/editbooks.py:914 msgid "You are missing permissions to delete books" msgstr "Você não tem permissão para apagar livros" -#: cps/editbooks.py:947 +#: cps/editbooks.py:964 msgid "edit metadata" msgstr "editar metadados" -#: cps/editbooks.py:996 +#: cps/editbooks.py:1013 #, python-format msgid "%(seriesindex)s is not a valid number, skipping" msgstr "%(seriesindex)s não é um número válido, ignorando" -#: cps/editbooks.py:1198 +#: cps/editbooks.py:1197 msgid "User has no rights to upload additional file formats" msgstr "Usuário não tem direitos para fazer upload de formatos de arquivo adicionais" -#: cps/editbooks.py:1219 +#: cps/editbooks.py:1218 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "Falha ao criar o caminho %(path)s (Permission denied)." @@ -641,7 +646,7 @@ msgstr "Formato de arquivo %(ext)s adicionado a %(book)s" msgid "Google Drive setup not completed, try to deactivate and activate Google Drive again" msgstr "Configuração do Google Drive não concluída, tente desativar e ativar o Google Drive novamente" -#: cps/gdrive.py:95 +#: cps/gdrive.py:96 msgid "Callback domain is not verified, please follow steps to verify domain in google developer console" msgstr "O domínio Callback não foi verificado, por favor siga os passos para verificar o domínio no console do desenvolvedor do google" @@ -650,7 +655,7 @@ msgstr "O domínio Callback não foi verificado, por favor siga os passos para v msgid "%(format)s format not found for book id: %(book)d" msgstr "Formato %(format)s não encontrado para o id do livro: %(book)d" -#: cps/helper.py:93 cps/tasks/convert.py:86 +#: cps/helper.py:93 cps/tasks/convert.py:89 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "%(format)s não encontrado no Google Drive: %(fn)s" @@ -726,126 +731,122 @@ msgstr "Falha ao excluir livro %(id)s: %(message)s" msgid "Deleting book %(id)s from database only, book path in database not valid: %(path)s" msgstr "Excluindo livro %(id)s somente do banco de dados, caminho do livro inválido: %(path)s" -#: cps/helper.py:452 +#: cps/helper.py:465 #, python-format msgid "Rename author from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgstr "Renomear autor de: '%(src)s' para '%(dest)s' falhou com o erro: %(error)s" -#: cps/helper.py:524 cps/helper.py:533 +#: cps/helper.py:536 cps/helper.py:545 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "Arquivo %(file)s não encontrado no Google Drive" -#: cps/helper.py:567 +#: cps/helper.py:587 #, python-format msgid "Rename title from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgstr "Renomear título de: '%(src)s' para '%(dest)s' falhou com o erro: %(error)s" -#: cps/helper.py:587 -msgid "Error in rename file in path: {}" -msgstr "Erro ao renomear arquivo no caminho: {}" - -#: cps/helper.py:605 +#: cps/helper.py:625 #, python-format msgid "Book path %(path)s not found on Google Drive" msgstr "Caminho do livro %(path)s não encontrado no Google Drive" -#: cps/helper.py:670 +#: cps/helper.py:685 msgid "Found an existing account for this Email address" msgstr "" -#: cps/helper.py:678 +#: cps/helper.py:693 msgid "This username is already taken" msgstr "Este nome de usuário já está registrado" -#: cps/helper.py:690 +#: cps/helper.py:705 #, fuzzy msgid "Invalid Email address format" msgstr "Formato de endereço de e-mail inválido" -#: cps/helper.py:710 +#: cps/helper.py:726 msgid "Password doesn't comply with password validation rules" msgstr "" -#: cps/helper.py:859 +#: cps/helper.py:873 msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "O módulo Python 'advocate' não está instalado, mas é necessário para uploads de capa" -#: cps/helper.py:869 +#: cps/helper.py:883 msgid "Error Downloading Cover" msgstr "Erro ao Baixar a capa" -#: cps/helper.py:872 +#: cps/helper.py:886 msgid "Cover Format Error" msgstr "Erro de Formato da Capa" -#: cps/helper.py:875 +#: cps/helper.py:889 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "Você não tem permissão para acessar localhost ou a rede local para uploads de capa" -#: cps/helper.py:885 +#: cps/helper.py:899 msgid "Failed to create path for cover" msgstr "Falha em criar caminho para a capa" -#: cps/helper.py:901 +#: cps/helper.py:915 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "O arquivo de capa não é um arquivo de imagem válido, ou não pôde ser armazenado" -#: cps/helper.py:912 +#: cps/helper.py:926 msgid "Only jpg/jpeg/png/webp/bmp files are supported as coverfile" msgstr "Apenas arquivos jpg/jpeg/png/webp/bmp são suportados como arquivos de capa" -#: cps/helper.py:924 +#: cps/helper.py:938 msgid "Invalid cover file content" msgstr "Conteúdo do arquivo de capa inválido" -#: cps/helper.py:928 +#: cps/helper.py:942 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "Apenas arquivos jpg/jpeg são suportados como arquivos de capa" -#: cps/helper.py:999 cps/helper.py:1156 +#: cps/helper.py:1014 cps/helper.py:1171 #, fuzzy msgid "Cover" msgstr "Capa" -#: cps/helper.py:1016 +#: cps/helper.py:1031 msgid "UnRar binary file not found" msgstr "Binário UnRar não encontrado" -#: cps/helper.py:1027 +#: cps/helper.py:1042 #, fuzzy msgid "Error executing UnRar" msgstr "Erro excecutando UnRar" -#: cps/helper.py:1035 +#: cps/helper.py:1050 msgid "Could not find the specified directory" msgstr "" -#: cps/helper.py:1038 +#: cps/helper.py:1053 msgid "Please specify a directory, not a file" msgstr "" -#: cps/helper.py:1052 +#: cps/helper.py:1067 #, fuzzy msgid "Calibre binaries not viable" msgstr "DB não é gravável" -#: cps/helper.py:1061 +#: cps/helper.py:1076 #, python-format msgid "Missing calibre binaries: %(missing)s" msgstr "" -#: cps/helper.py:1063 +#: cps/helper.py:1078 #, fuzzy, python-format msgid "Missing executable permissions: %(missing)s" msgstr "Faltam as permissões de execução" -#: cps/helper.py:1068 +#: cps/helper.py:1083 #, fuzzy msgid "Error executing Calibre" msgstr "Erro excecutando UnRar" -#: cps/helper.py:1158 cps/templates/admin.html:216 +#: cps/helper.py:1173 cps/templates/admin.html:216 msgid "Queue all books for metadata backup" msgstr "" @@ -891,35 +892,35 @@ msgstr "Falha ao desvincular para %(oauth)s" msgid "Not Linked to %(oauth)s" msgstr "Não vinculado a %(oauth)s" -#: cps/oauth_bb.py:261 +#: cps/oauth_bb.py:262 msgid "Failed to log in with GitHub." msgstr "Falha no login com o GitHub." -#: cps/oauth_bb.py:267 +#: cps/oauth_bb.py:268 msgid "Failed to fetch user info from GitHub." msgstr "Falha na busca de informações do usuário no GitHub." -#: cps/oauth_bb.py:279 +#: cps/oauth_bb.py:280 msgid "Failed to log in with Google." msgstr "Falha no login com o Google." -#: cps/oauth_bb.py:285 +#: cps/oauth_bb.py:286 msgid "Failed to fetch user info from Google." msgstr "Falha na busca de informações de usuário no Google." -#: cps/oauth_bb.py:332 +#: cps/oauth_bb.py:334 msgid "GitHub Oauth error, please retry later." msgstr "Erro no Oauth do GitHub, tente novamente mais tarde." -#: cps/oauth_bb.py:335 +#: cps/oauth_bb.py:337 msgid "GitHub Oauth error: {}" msgstr "Erro no Oauth do GitHub: {}" -#: cps/oauth_bb.py:356 +#: cps/oauth_bb.py:358 msgid "Google Oauth error, please retry later." msgstr "Erro no Google Oauth, tente novamente mais tarde." -#: cps/oauth_bb.py:359 +#: cps/oauth_bb.py:361 msgid "Google Oauth error: {}" msgstr "Erro no Oauth do Google: {}" @@ -1277,32 +1278,32 @@ msgstr "Cancelado" msgid "Unknown Status" msgstr "Status Desconhecido" -#: cps/updater.py:431 cps/updater.py:442 cps/updater.py:543 cps/updater.py:558 +#: cps/updater.py:433 cps/updater.py:444 cps/updater.py:545 cps/updater.py:560 msgid "Unexpected data while reading update information" msgstr "Dados inesperados ao ler informações de atualização" -#: cps/updater.py:438 cps/updater.py:550 +#: cps/updater.py:440 cps/updater.py:552 msgid "No update available. You already have the latest version installed" msgstr "Não há atualização disponível. Você já tem a última versão instalada" -#: cps/updater.py:456 +#: cps/updater.py:458 msgid "A new update is available. Click on the button below to update to the latest version." msgstr "Uma nova atualização está disponível. Clique no botão abaixo para atualizar para a versão mais recente." -#: cps/updater.py:474 +#: cps/updater.py:476 msgid "Could not fetch update information" msgstr "Não foi possível buscar as informações de atualização" -#: cps/updater.py:484 +#: cps/updater.py:486 msgid "Click on the button below to update to the latest stable version." msgstr "Clique no botão abaixo para atualizar para a última versão estável." -#: cps/updater.py:493 cps/updater.py:507 cps/updater.py:518 +#: cps/updater.py:495 cps/updater.py:509 cps/updater.py:520 #, python-format msgid "A new update is available. Click on the button below to update to version: %(version)s" msgstr "Uma nova atualização está disponível. Clique no botão abaixo para atualizar para a versão: %(version)s" -#: cps/updater.py:536 +#: cps/updater.py:538 msgid "No release information available" msgstr "Não há informações de lançamento disponíveis" @@ -1481,50 +1482,50 @@ msgstr "Perfil atualizado" msgid "Oops! An account already exists for this Email." msgstr "Encontrada uma conta existente para este endereço de e-mail." -#: cps/services/gmail.py:58 +#: cps/services/gmail.py:59 msgid "Found no valid gmail.json file with OAuth information" msgstr "Não foi encontrado nenhum arquivo gmail.json válido com informações do OAuth" -#: cps/tasks/convert.py:105 +#: cps/tasks/convert.py:108 #, python-format msgid "%(book)s send to E-Reader" msgstr "%(book)s enviado para E-Reader" -#: cps/tasks/convert.py:167 +#: cps/tasks/convert.py:170 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "Calibre ebook-convert %(tool)s não encontrado" -#: cps/tasks/convert.py:201 +#: cps/tasks/convert.py:204 #, python-format msgid "%(format)s format not found on disk" msgstr "Formato %(format)s não encontrado no disco" -#: cps/tasks/convert.py:205 +#: cps/tasks/convert.py:208 msgid "Ebook converter failed with unknown error" msgstr "O conversor de Ebook falhou com erro desconhecido" -#: cps/tasks/convert.py:224 +#: cps/tasks/convert.py:227 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "Kepubify-converter falhou: %(error)s" -#: cps/tasks/convert.py:245 +#: cps/tasks/convert.py:248 #, python-format msgid "Converted file not found or more than one file in folder %(folder)s" msgstr "Arquivo convertido não encontrado ou mais de um arquivo na pasta %(folder)s" -#: cps/tasks/convert.py:287 +#: cps/tasks/convert.py:291 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "Ebook-converter falhou: %(error)s" -#: cps/tasks/convert.py:310 +#: cps/tasks/convert.py:314 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "Calibre falhou com erro: %(error)s" -#: cps/tasks/convert.py:315 +#: cps/tasks/convert.py:319 msgid "Convert" msgstr "Converter" @@ -1536,7 +1537,7 @@ msgstr "Reconectando banco de dados Calibre" msgid "E-mail" msgstr "E-mail" -#: cps/tasks/metadata_backup.py:33 +#: cps/tasks/metadata_backup.py:34 #, fuzzy msgid "Backing up Metadata" msgstr "Cópia de segurança de metadados" @@ -1550,20 +1551,20 @@ msgstr "" msgid "Generated %(count)s cover thumbnails" msgstr "Gerado %(count)s miniaturas de capa" -#: cps/tasks/thumbnail.py:230 cps/tasks/thumbnail.py:443 -#: cps/tasks/thumbnail.py:511 +#: cps/tasks/thumbnail.py:231 cps/tasks/thumbnail.py:444 +#: cps/tasks/thumbnail.py:512 msgid "Cover Thumbnails" msgstr "Miniatura da Capa" -#: cps/tasks/thumbnail.py:289 +#: cps/tasks/thumbnail.py:290 msgid "Generated {0} series thumbnails" msgstr "Gerado {0} miniaturas de série" -#: cps/tasks/thumbnail.py:454 +#: cps/tasks/thumbnail.py:455 msgid "Clearing cover thumbnail cache" msgstr "Limpando o cache de miniaturas da capa" -#: cps/tasks/upload.py:38 cps/templates/admin.html:20 +#: cps/tasks/upload.py:39 cps/templates/admin.html:20 #: cps/templates/layout.html:81 cps/templates/user_table.html:145 msgid "Upload" msgstr "Upload" @@ -1810,7 +1811,7 @@ msgstr "Ok" #: cps/templates/admin.html:259 cps/templates/admin.html:273 #: cps/templates/book_edit.html:214 cps/templates/book_table.html:127 -#: cps/templates/config_db.html:66 cps/templates/config_edit.html:423 +#: cps/templates/config_db.html:66 cps/templates/config_edit.html:427 #: cps/templates/config_view_edit.html:175 cps/templates/detail.html:342 #: cps/templates/modal_dialogs.html:64 cps/templates/modal_dialogs.html:99 #: cps/templates/modal_dialogs.html:117 cps/templates/modal_dialogs.html:135 @@ -1996,7 +1997,7 @@ msgid "Fetch Metadata" msgstr "Buscar Metadados" #: cps/templates/book_edit.html:213 cps/templates/config_db.html:65 -#: cps/templates/config_edit.html:422 cps/templates/config_view_edit.html:174 +#: cps/templates/config_edit.html:426 cps/templates/config_view_edit.html:174 #: cps/templates/email_edit.html:65 cps/templates/schedule_edit.html:44 #: cps/templates/shelf_edit.html:25 cps/templates/shelf_order.html:41 #: cps/templates/user_edit.html:142 @@ -2467,47 +2468,51 @@ msgid "Configure Backend for Limiter" msgstr "" #: cps/templates/config_edit.html:376 -msgid "Options for Limiter" +msgid "Options for Limiter Backend" msgstr "" -#: cps/templates/config_edit.html:381 +#: cps/templates/config_edit.html:382 +msgid "Check if file extensions matches file content on upload" +msgstr "" + +#: cps/templates/config_edit.html:385 msgid "Session protection" msgstr "" -#: cps/templates/config_edit.html:383 +#: cps/templates/config_edit.html:387 msgid "Basic" msgstr "" -#: cps/templates/config_edit.html:384 +#: cps/templates/config_edit.html:388 msgid "Strong" msgstr "" -#: cps/templates/config_edit.html:389 +#: cps/templates/config_edit.html:393 #, fuzzy msgid "User Password policy" msgstr "Política de senha do usuário" -#: cps/templates/config_edit.html:393 +#: cps/templates/config_edit.html:397 msgid "Minimum password length" msgstr "" -#: cps/templates/config_edit.html:398 +#: cps/templates/config_edit.html:402 msgid "Enforce number" msgstr "" -#: cps/templates/config_edit.html:402 +#: cps/templates/config_edit.html:406 msgid "Enforce lowercase characters" msgstr "" -#: cps/templates/config_edit.html:406 +#: cps/templates/config_edit.html:410 msgid "Enforce uppercase characters" msgstr "" -#: cps/templates/config_edit.html:410 +#: cps/templates/config_edit.html:414 msgid "Enforce characters (needed For Chinese/Japanese/Korean Characters)" msgstr "" -#: cps/templates/config_edit.html:414 +#: cps/templates/config_edit.html:418 msgid "Enforce special characters" msgstr "" @@ -2637,6 +2642,11 @@ msgstr "Marcar como Não Lido" msgid "Mark As Read" msgstr "Marcar como Lido" +#: cps/templates/detail.html:254 +#, fuzzy +msgid "Mark Book as Read or Unread" +msgstr "Marcar como Não Lido" + #: cps/templates/detail.html:254 cps/templates/listenmp3.html:159 msgid "Read" msgstr "Lido" @@ -2649,8 +2659,13 @@ msgstr "Restaurar do arquivo" msgid "Add to archive" msgstr "Adicionar ao arquivo" -#: cps/templates/detail.html:267 cps/templates/listenmp3.html:167 -msgid "Archived" +#: cps/templates/detail.html:267 +msgid "Mark Book as archived or not, to hide it in Calibre-Web and delete it from Kobo Reader" +msgstr "" + +#: cps/templates/detail.html:267 +#, fuzzy +msgid "Archive" msgstr "Arquivado" #: cps/templates/detail.html:278 cps/templates/listenmp3.html:177 @@ -2930,6 +2945,10 @@ msgstr "Detalhes do Livro" msgid "Grid" msgstr "Grade" +#: cps/templates/listenmp3.html:167 +msgid "Archived" +msgstr "Arquivado" + #: cps/templates/login.html:18 msgid "Remember Me" msgstr "Lembre-se de mim" diff --git a/cps/translations/ru/LC_MESSAGES/messages.mo b/cps/translations/ru/LC_MESSAGES/messages.mo index c169c461..829487ce 100644 Binary files a/cps/translations/ru/LC_MESSAGES/messages.mo and b/cps/translations/ru/LC_MESSAGES/messages.mo differ diff --git a/cps/translations/ru/LC_MESSAGES/messages.po b/cps/translations/ru/LC_MESSAGES/messages.po index f08475b7..04e2227e 100644 --- a/cps/translations/ru/LC_MESSAGES/messages.po +++ b/cps/translations/ru/LC_MESSAGES/messages.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: Calibre-Web\n" "Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n" -"POT-Creation-Date: 2024-06-09 12:26+0200\n" +"POT-Creation-Date: 2024-06-30 12:19+0200\n" "PO-Revision-Date: 2020-04-29 01:20+0400\n" "Last-Translator: ZIZA\n" "Language: ru\n" @@ -17,7 +17,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.11.0\n" +"Generated-By: Babel 2.13.1\n" #: cps/about.py:84 msgid "Statistics" @@ -46,9 +46,9 @@ msgstr "Неизвестная команда" msgid "Success! Books queued for Metadata Backup, please check Tasks for result" msgstr "Книга успешно поставлена в очередь для отправки на %(eReadermail)s" -#: cps/admin.py:207 cps/editbooks.py:591 cps/editbooks.py:593 -#: cps/editbooks.py:631 cps/editbooks.py:648 cps/editbooks.py:1280 -#: cps/updater.py:613 cps/uploader.py:93 cps/uploader.py:102 +#: cps/admin.py:207 cps/editbooks.py:573 cps/editbooks.py:575 +#: cps/editbooks.py:615 cps/editbooks.py:658 cps/editbooks.py:1280 +#: cps/updater.py:615 cps/uploader.py:93 cps/uploader.py:102 msgid "Unknown" msgstr "Неизвестно" @@ -69,12 +69,12 @@ msgstr "Настройка интерфейса" msgid "Edit Users" msgstr "Управление сервером" -#: cps/admin.py:368 cps/opds.py:541 cps/templates/grid.html:14 +#: cps/admin.py:368 cps/opds.py:542 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "Все" -#: cps/admin.py:395 cps/admin.py:1417 +#: cps/admin.py:395 cps/admin.py:1414 msgid "User not found" msgstr "" @@ -91,7 +91,7 @@ msgstr "Показать все" msgid "Malformed request" msgstr "" -#: cps/admin.py:471 cps/admin.py:2048 +#: cps/admin.py:471 cps/admin.py:2046 msgid "Guest Name can't be changed" msgstr "" @@ -99,7 +99,7 @@ msgstr "" msgid "Guest can't have this role" msgstr "" -#: cps/admin.py:495 cps/admin.py:2002 +#: cps/admin.py:495 cps/admin.py:2000 msgid "No admin user remaining, can't remove admin role" msgstr "" @@ -131,7 +131,7 @@ msgstr "" msgid "No Valid Book Language Given" msgstr "" -#: cps/admin.py:535 cps/editbooks.py:457 +#: cps/admin.py:535 cps/editbooks.py:440 msgid "Parameter not found" msgstr "" @@ -143,7 +143,7 @@ msgstr "" msgid "Invalid Restricted Column" msgstr "" -#: cps/admin.py:598 cps/admin.py:1873 +#: cps/admin.py:598 cps/admin.py:1871 msgid "Calibre-Web configuration updated" msgstr "Конфигурация Calibre-Web обновлена" @@ -227,298 +227,298 @@ msgstr "" msgid "Invalid Action" msgstr "" -#: cps/admin.py:1123 +#: cps/admin.py:1120 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "client_secrets.json не настроен для веб-приложения" -#: cps/admin.py:1168 +#: cps/admin.py:1165 msgid "Logfile Location is not Valid, Please Enter Correct Path" msgstr "Неправильное расположение файла журнала, пожалуйста, введите правильный путь." -#: cps/admin.py:1174 +#: cps/admin.py:1171 msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgstr "Недопустимое расположение файла журнала доступа, пожалуйста, введите правильный путь" -#: cps/admin.py:1208 +#: cps/admin.py:1205 msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgstr "Пожалуйста, введите провайдера LDAP, порт, DN и идентификатор объекта пользователя" -#: cps/admin.py:1214 +#: cps/admin.py:1211 #, fuzzy msgid "Please Enter a LDAP Service Account and Password" msgstr "Пожалуйста, введите действительное имя пользователя для сброса пароля" -#: cps/admin.py:1217 +#: cps/admin.py:1214 msgid "Please Enter a LDAP Service Account" msgstr "" -#: cps/admin.py:1222 +#: cps/admin.py:1219 #, python-format msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgstr "Фильтр объектов группы LDAP должен иметь один идентификатор формата \"%s\"" -#: cps/admin.py:1224 +#: cps/admin.py:1221 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "Фильтр объектов группы LDAP имеет незавершённые круглые скобки" -#: cps/admin.py:1228 +#: cps/admin.py:1225 #, python-format msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgstr "Фильтр объектов пользователя LDAP должен иметь один идентификатор формата \"%s\"" -#: cps/admin.py:1230 +#: cps/admin.py:1227 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "Фильтр объектов пользователя LDAP имеет незавершенную круглую скобку" -#: cps/admin.py:1237 +#: cps/admin.py:1234 #, python-format msgid "LDAP Member User Filter needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1239 +#: cps/admin.py:1236 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1246 +#: cps/admin.py:1243 msgid "LDAP CACertificate, Certificate or Key Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1277 cps/templates/admin.html:53 +#: cps/admin.py:1274 cps/templates/admin.html:53 msgid "Add New User" msgstr "Добавить нового пользователя" -#: cps/admin.py:1286 cps/templates/admin.html:100 +#: cps/admin.py:1283 cps/templates/admin.html:100 msgid "Edit Email Server Settings" msgstr "Изменить настройки SMTP" -#: cps/admin.py:1305 +#: cps/admin.py:1302 msgid "Success! Gmail Account Verified." msgstr "" -#: cps/admin.py:1325 cps/admin.py:1328 cps/admin.py:1713 cps/admin.py:1857 -#: cps/admin.py:1955 cps/admin.py:2076 cps/editbooks.py:243 -#: cps/editbooks.py:319 cps/editbooks.py:1242 cps/shelf.py:90 cps/shelf.py:150 +#: cps/admin.py:1322 cps/admin.py:1325 cps/admin.py:1710 cps/admin.py:1855 +#: cps/admin.py:1953 cps/admin.py:2074 cps/editbooks.py:226 +#: cps/editbooks.py:303 cps/editbooks.py:1242 cps/shelf.py:90 cps/shelf.py:150 #: cps/shelf.py:193 cps/shelf.py:243 cps/shelf.py:280 cps/shelf.py:354 -#: cps/shelf.py:468 cps/tasks/convert.py:150 cps/web.py:1520 +#: cps/shelf.py:468 cps/tasks/convert.py:153 cps/web.py:1520 #, python-format msgid "Oops! Database Error: %(error)s." msgstr "" -#: cps/admin.py:1335 +#: cps/admin.py:1332 #, python-format msgid "Test e-mail queued for sending to %(email)s, please check Tasks for result" msgstr "" -#: cps/admin.py:1338 +#: cps/admin.py:1335 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "Произошла ошибка при отправке тестового письма на: %(res)s" -#: cps/admin.py:1340 +#: cps/admin.py:1337 msgid "Please configure your e-mail address first..." msgstr "Пожалуйста, сначала настройте свой адрес электронной почты ..." -#: cps/admin.py:1342 +#: cps/admin.py:1339 msgid "Email Server Settings updated" msgstr "Настройки E-mail сервера обновлены" -#: cps/admin.py:1365 cps/templates/admin.html:195 +#: cps/admin.py:1362 cps/templates/admin.html:195 msgid "Edit Scheduled Tasks Settings" msgstr "" -#: cps/admin.py:1377 +#: cps/admin.py:1374 msgid "Invalid start time for task specified" msgstr "" -#: cps/admin.py:1382 +#: cps/admin.py:1379 msgid "Invalid duration for task specified" msgstr "" -#: cps/admin.py:1392 +#: cps/admin.py:1389 msgid "Scheduled tasks settings updated" msgstr "" -#: cps/admin.py:1402 cps/admin.py:1451 cps/admin.py:2072 cps/web.py:1316 +#: cps/admin.py:1399 cps/admin.py:1448 cps/admin.py:2070 cps/web.py:1316 msgid "Oops! An unknown error occurred. Please try again later." msgstr "Неизвестная ошибка. Попробуйте позже." -#: cps/admin.py:1406 +#: cps/admin.py:1403 msgid "Settings DB is not Writeable" msgstr "" -#: cps/admin.py:1436 cps/admin.py:2064 +#: cps/admin.py:1433 cps/admin.py:2062 #, python-format msgid "Edit User %(nick)s" msgstr "Изменить пользователя %(nick)s" -#: cps/admin.py:1448 +#: cps/admin.py:1445 #, fuzzy, python-format msgid "Success! Password for user %(user)s reset" msgstr "Пароль для пользователя %(user)s сброшен" -#: cps/admin.py:1454 +#: cps/admin.py:1451 #, fuzzy msgid "Oops! Please configure the SMTP mail settings." msgstr "Пожалуйста, сперва настройте параметры SMTP....." -#: cps/admin.py:1465 +#: cps/admin.py:1462 msgid "Logfile viewer" msgstr "Просмотр лога" -#: cps/admin.py:1531 +#: cps/admin.py:1528 msgid "Requesting update package" msgstr "Проверка обновлений" -#: cps/admin.py:1532 +#: cps/admin.py:1529 msgid "Downloading update package" msgstr "Загрузка обновлений" -#: cps/admin.py:1533 +#: cps/admin.py:1530 msgid "Unzipping update package" msgstr "Распаковка обновлений" -#: cps/admin.py:1534 +#: cps/admin.py:1531 msgid "Replacing files" msgstr "Замена файлов" -#: cps/admin.py:1535 +#: cps/admin.py:1532 msgid "Database connections are closed" msgstr "Соединения с базой данных закрыты" -#: cps/admin.py:1536 +#: cps/admin.py:1533 msgid "Stopping server" msgstr "Остановка сервера" -#: cps/admin.py:1537 +#: cps/admin.py:1534 msgid "Update finished, please press okay and reload page" msgstr "Обновления установлены, нажмите ок и перезагрузите страницу" -#: cps/admin.py:1538 cps/admin.py:1539 cps/admin.py:1540 cps/admin.py:1541 -#: cps/admin.py:1542 cps/admin.py:1543 +#: cps/admin.py:1535 cps/admin.py:1536 cps/admin.py:1537 cps/admin.py:1538 +#: cps/admin.py:1539 cps/admin.py:1540 msgid "Update failed:" msgstr "Ошибка обновления:" -#: cps/admin.py:1538 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 +#: cps/admin.py:1535 cps/updater.py:391 cps/updater.py:626 cps/updater.py:628 msgid "HTTP Error" msgstr "Ошибка HTTP" -#: cps/admin.py:1539 cps/updater.py:391 cps/updater.py:628 +#: cps/admin.py:1536 cps/updater.py:393 cps/updater.py:630 msgid "Connection error" msgstr "Ошибка соединения" -#: cps/admin.py:1540 cps/updater.py:393 cps/updater.py:630 +#: cps/admin.py:1537 cps/updater.py:395 cps/updater.py:632 msgid "Timeout while establishing connection" msgstr "Тайм-аут при установлении соединения" -#: cps/admin.py:1541 cps/updater.py:395 cps/updater.py:632 +#: cps/admin.py:1538 cps/updater.py:397 cps/updater.py:634 msgid "General error" msgstr "Общая ошибка" -#: cps/admin.py:1542 +#: cps/admin.py:1539 #, fuzzy msgid "Update file could not be saved in temp dir" msgstr "Не удалось сохранить файл обновления во временной папке." -#: cps/admin.py:1543 +#: cps/admin.py:1540 msgid "Files could not be replaced during update" msgstr "" -#: cps/admin.py:1567 +#: cps/admin.py:1564 #, fuzzy msgid "Failed to extract at least One LDAP User" msgstr "Не удалось создать хотя бы одного пользователя LDAP" -#: cps/admin.py:1612 +#: cps/admin.py:1609 msgid "Failed to Create at Least One LDAP User" msgstr "Не удалось создать хотя бы одного пользователя LDAP" -#: cps/admin.py:1625 +#: cps/admin.py:1622 #, python-format msgid "Error: %(ldaperror)s" msgstr "Ошибка: %(ldaperror)s" -#: cps/admin.py:1629 +#: cps/admin.py:1626 msgid "Error: No user returned in response of LDAP server" msgstr "Ошибка: ни одного пользователя не найдено в ответ на запрос сервер LDAP" -#: cps/admin.py:1665 +#: cps/admin.py:1662 msgid "At Least One LDAP User Not Found in Database" msgstr "По крайней мере, один пользователь LDAP не найден в базе данных" -#: cps/admin.py:1667 +#: cps/admin.py:1664 msgid "{} User Successfully Imported" msgstr "" -#: cps/admin.py:1725 +#: cps/admin.py:1722 msgid "DB Location is not Valid, Please Enter Correct Path" msgstr "Расположение Базы Данных неверно, пожалуйста, введите правильный путь." -#: cps/admin.py:1745 +#: cps/admin.py:1742 msgid "DB is not Writeable" msgstr "" -#: cps/admin.py:1761 +#: cps/admin.py:1758 msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgstr "Расположение ключевого файла неверно, пожалуйста, введите правильный путь" -#: cps/admin.py:1765 +#: cps/admin.py:1762 msgid "Certfile Location is not Valid, Please Enter Correct Path" msgstr "Расположение Certfile не является действительным, пожалуйста, введите правильный путь" -#: cps/admin.py:1842 +#: cps/admin.py:1840 msgid "Password length has to be between 1 and 40" msgstr "" -#: cps/admin.py:1896 +#: cps/admin.py:1894 #, fuzzy msgid "Database Settings updated" msgstr "Настройки E-mail сервера обновлены" -#: cps/admin.py:1904 +#: cps/admin.py:1902 #, fuzzy msgid "Database Configuration" msgstr "Дополнительный Настройки" -#: cps/admin.py:1919 cps/web.py:1290 +#: cps/admin.py:1917 cps/web.py:1290 msgid "Oops! Please complete all fields." msgstr "Пожалуйста, заполните все поля!" -#: cps/admin.py:1928 +#: cps/admin.py:1926 msgid "E-mail is not from valid domain" msgstr "E-mail не из существующей доменной зоны" -#: cps/admin.py:1934 +#: cps/admin.py:1932 msgid "Add new user" msgstr "Добавить пользователя" -#: cps/admin.py:1945 +#: cps/admin.py:1943 #, python-format msgid "User '%(user)s' created" msgstr "Пользователь '%(user)s' добавлен" -#: cps/admin.py:1951 +#: cps/admin.py:1949 #, fuzzy msgid "Oops! An account already exists for this Email. or name." msgstr "Для этого адреса электронной почты или логина уже есть учётная запись." -#: cps/admin.py:1981 +#: cps/admin.py:1979 #, python-format msgid "User '%(nick)s' deleted" msgstr "Пользователь '%(nick)s' удалён" -#: cps/admin.py:1984 +#: cps/admin.py:1982 msgid "Can't delete Guest User" msgstr "" -#: cps/admin.py:1987 +#: cps/admin.py:1985 msgid "No admin user remaining, can't delete user" msgstr "Это последний администратор, невозможно удалить пользователя" -#: cps/admin.py:2042 cps/web.py:1469 +#: cps/admin.py:2040 cps/web.py:1469 msgid "Email can't be empty and has to be a valid Email" msgstr "" -#: cps/admin.py:2068 +#: cps/admin.py:2066 #, python-format msgid "User '%(nick)s' updated" msgstr "Пользователь '%(nick)s' обновлён" @@ -531,12 +531,12 @@ msgstr "не установлено" msgid "Execution permissions missing" msgstr "" -#: cps/db.py:756 cps/search.py:137 cps/web.py:747 +#: cps/db.py:768 cps/search.py:137 cps/web.py:747 #, python-format msgid "Custom Column No.%(column)d does not exist in calibre database" msgstr "" -#: cps/db.py:996 cps/templates/config_edit.html:203 +#: cps/db.py:1008 cps/templates/config_edit.html:203 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 #: cps/web.py:562 cps/web.py:596 cps/web.py:641 cps/web.py:681 cps/web.py:708 #: cps/web.py:989 cps/web.py:1019 cps/web.py:1064 cps/web.py:1092 @@ -544,100 +544,105 @@ msgstr "" msgid "None" msgstr "Нет" -#: cps/editbooks.py:124 cps/editbooks.py:912 cps/web.py:529 cps/web.py:1561 -#: cps/web.py:1605 cps/web.py:1650 +#: cps/editbooks.py:108 cps/editbooks.py:929 cps/web.py:529 cps/web.py:1561 +#: cps/web.py:1606 cps/web.py:1651 msgid "Oops! Selected book is unavailable. File does not exist or is not accessible" msgstr "Невозможно открыть книгу. Файл не существует или недоступен" -#: cps/editbooks.py:168 cps/editbooks.py:1263 +#: cps/editbooks.py:151 cps/editbooks.py:1263 msgid "User has no rights to upload cover" msgstr "" -#: cps/editbooks.py:188 cps/editbooks.py:733 +#: cps/editbooks.py:171 cps/editbooks.py:744 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "" -#: cps/editbooks.py:230 +#: cps/editbooks.py:213 msgid "Metadata successfully updated" msgstr "Метаданные обновлены" -#: cps/editbooks.py:248 +#: cps/editbooks.py:231 msgid "Error editing book: {}" msgstr "" -#: cps/editbooks.py:305 +#: cps/editbooks.py:289 #, python-format msgid "File %(file)s uploaded" msgstr "Файл %(file)s загружен" -#: cps/editbooks.py:333 +#: cps/editbooks.py:317 msgid "Source or destination format for conversion missing" msgstr "Исходный или целевой формат для конвертирования отсутствует" -#: cps/editbooks.py:341 +#: cps/editbooks.py:325 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "Книга успешно поставлена в очередь для конвертирования в %(book_format)s" -#: cps/editbooks.py:345 +#: cps/editbooks.py:329 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "Произошла ошибка при конвертирования этой книги: %(res)s" -#: cps/editbooks.py:652 +#: cps/editbooks.py:662 msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgstr "Загруженная книга, вероятно, существует в библиотеке, перед тем как загрузить новую, рассмотрите возможность изменения: " -#: cps/editbooks.py:707 cps/editbooks.py:1043 +#: cps/editbooks.py:718 cps/editbooks.py:1049 #, fuzzy, python-format msgid "'%(langname)s' is not a valid language" msgstr "%(langname)s не допустимый язык" -#: cps/editbooks.py:745 cps/editbooks.py:1203 +#: cps/editbooks.py:756 cps/editbooks.py:1192 +#, fuzzy +msgid "File type isn't allowed to be uploaded to this server" +msgstr "Запрещена загрузка файлов с расширением '%(ext)s'" + +#: cps/editbooks.py:762 cps/editbooks.py:1202 #, python-format msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgstr "Запрещена загрузка файлов с расширением '%(ext)s'" -#: cps/editbooks.py:749 cps/editbooks.py:1207 +#: cps/editbooks.py:766 cps/editbooks.py:1206 msgid "File to be uploaded must have an extension" msgstr "Загружаемый файл должен иметь расширение" -#: cps/editbooks.py:757 +#: cps/editbooks.py:774 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "Файл %(filename)s не удалось сохранить во временную папку" -#: cps/editbooks.py:777 +#: cps/editbooks.py:794 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "" -#: cps/editbooks.py:834 cps/editbooks.py:836 +#: cps/editbooks.py:851 cps/editbooks.py:853 msgid "Book Format Successfully Deleted" msgstr "" -#: cps/editbooks.py:843 cps/editbooks.py:845 +#: cps/editbooks.py:860 cps/editbooks.py:862 msgid "Book Successfully Deleted" msgstr "" -#: cps/editbooks.py:897 +#: cps/editbooks.py:914 msgid "You are missing permissions to delete books" msgstr "" -#: cps/editbooks.py:947 +#: cps/editbooks.py:964 msgid "edit metadata" msgstr "изменить метаданные" -#: cps/editbooks.py:996 +#: cps/editbooks.py:1013 #, python-format msgid "%(seriesindex)s is not a valid number, skipping" msgstr "" -#: cps/editbooks.py:1198 +#: cps/editbooks.py:1197 msgid "User has no rights to upload additional file formats" msgstr "" -#: cps/editbooks.py:1219 +#: cps/editbooks.py:1218 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "Ошибка при создании пути %(path)s (Доступ запрещён)." @@ -656,7 +661,7 @@ msgstr "Формат файла %(ext)s добавлен в %(book)s" msgid "Google Drive setup not completed, try to deactivate and activate Google Drive again" msgstr "Настройка Google Drive не завершена, попробуйте деактивировать и снова активировать Google Drive" -#: cps/gdrive.py:95 +#: cps/gdrive.py:96 msgid "Callback domain is not verified, please follow steps to verify domain in google developer console" msgstr "Не удалось проверить домен обратного вызова, пожалуйста, выполните шаги для проверки домена в консоли разработчика Google." @@ -665,7 +670,7 @@ msgstr "Не удалось проверить домен обратного в msgid "%(format)s format not found for book id: %(book)d" msgstr "%(format)s форма не найден для книги с id: %(book)d" -#: cps/helper.py:93 cps/tasks/convert.py:86 +#: cps/helper.py:93 cps/tasks/convert.py:89 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "%(format)s не найден на Google Drive: %(fn)s" @@ -742,122 +747,118 @@ msgstr "" msgid "Deleting book %(id)s from database only, book path in database not valid: %(path)s" msgstr "" -#: cps/helper.py:452 +#: cps/helper.py:465 #, fuzzy, python-format msgid "Rename author from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgstr "Переименовывание заголовка с: '%(src)s' на '%(dest)s' не удалось из-за ошибки: %(error)s" -#: cps/helper.py:524 cps/helper.py:533 +#: cps/helper.py:536 cps/helper.py:545 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "Файл %(file)s не найден на Google Drive" -#: cps/helper.py:567 +#: cps/helper.py:587 #, python-format msgid "Rename title from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgstr "Переименовывание заголовка с: '%(src)s' на '%(dest)s' не удалось из-за ошибки: %(error)s" -#: cps/helper.py:587 -msgid "Error in rename file in path: {}" -msgstr "" - -#: cps/helper.py:605 +#: cps/helper.py:625 #, python-format msgid "Book path %(path)s not found on Google Drive" msgstr "Путь книги %(path)s не найден на Google Drive" -#: cps/helper.py:670 +#: cps/helper.py:685 msgid "Found an existing account for this Email address" msgstr "" -#: cps/helper.py:678 +#: cps/helper.py:693 msgid "This username is already taken" msgstr "Это имя пользователя уже занято" -#: cps/helper.py:690 +#: cps/helper.py:705 msgid "Invalid Email address format" msgstr "" -#: cps/helper.py:710 +#: cps/helper.py:726 msgid "Password doesn't comply with password validation rules" msgstr "" -#: cps/helper.py:859 +#: cps/helper.py:873 msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "" -#: cps/helper.py:869 +#: cps/helper.py:883 msgid "Error Downloading Cover" msgstr "" -#: cps/helper.py:872 +#: cps/helper.py:886 msgid "Cover Format Error" msgstr "" -#: cps/helper.py:875 +#: cps/helper.py:889 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "" -#: cps/helper.py:885 +#: cps/helper.py:899 msgid "Failed to create path for cover" msgstr "Не удалось создать путь для обложки." -#: cps/helper.py:901 +#: cps/helper.py:915 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "" -#: cps/helper.py:912 +#: cps/helper.py:926 msgid "Only jpg/jpeg/png/webp/bmp files are supported as coverfile" msgstr "" -#: cps/helper.py:924 +#: cps/helper.py:938 msgid "Invalid cover file content" msgstr "" -#: cps/helper.py:928 +#: cps/helper.py:942 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "Только файлы в формате jpg / jpeg поддерживаются как файл обложки" -#: cps/helper.py:999 cps/helper.py:1156 +#: cps/helper.py:1014 cps/helper.py:1171 #, fuzzy msgid "Cover" msgstr "Обзор" -#: cps/helper.py:1016 +#: cps/helper.py:1031 msgid "UnRar binary file not found" msgstr "" -#: cps/helper.py:1027 +#: cps/helper.py:1042 msgid "Error executing UnRar" msgstr "" -#: cps/helper.py:1035 +#: cps/helper.py:1050 msgid "Could not find the specified directory" msgstr "" -#: cps/helper.py:1038 +#: cps/helper.py:1053 msgid "Please specify a directory, not a file" msgstr "" -#: cps/helper.py:1052 +#: cps/helper.py:1067 msgid "Calibre binaries not viable" msgstr "" -#: cps/helper.py:1061 +#: cps/helper.py:1076 #, python-format msgid "Missing calibre binaries: %(missing)s" msgstr "" -#: cps/helper.py:1063 +#: cps/helper.py:1078 #, python-format msgid "Missing executable permissions: %(missing)s" msgstr "" -#: cps/helper.py:1068 +#: cps/helper.py:1083 msgid "Error executing Calibre" msgstr "" -#: cps/helper.py:1158 cps/templates/admin.html:216 +#: cps/helper.py:1173 cps/templates/admin.html:216 msgid "Queue all books for metadata backup" msgstr "" @@ -904,35 +905,35 @@ msgstr "Связь с %(oauth)s не удалось отмененить" msgid "Not Linked to %(oauth)s" msgstr "" -#: cps/oauth_bb.py:261 +#: cps/oauth_bb.py:262 msgid "Failed to log in with GitHub." msgstr "Не удалось войти в систему с помощью GitHub." -#: cps/oauth_bb.py:267 +#: cps/oauth_bb.py:268 msgid "Failed to fetch user info from GitHub." msgstr "Не удалось получить информацию о пользователе из GitHub." -#: cps/oauth_bb.py:279 +#: cps/oauth_bb.py:280 msgid "Failed to log in with Google." msgstr "Не удалось войти в систему с помощью Google." -#: cps/oauth_bb.py:285 +#: cps/oauth_bb.py:286 msgid "Failed to fetch user info from Google." msgstr "Не удалось получить информацию о пользователе из Google." -#: cps/oauth_bb.py:332 +#: cps/oauth_bb.py:334 msgid "GitHub Oauth error, please retry later." msgstr "Ошибка GitHub Oauth, пожалуйста попробуйте позже." -#: cps/oauth_bb.py:335 +#: cps/oauth_bb.py:337 msgid "GitHub Oauth error: {}" msgstr "" -#: cps/oauth_bb.py:356 +#: cps/oauth_bb.py:358 msgid "Google Oauth error, please retry later." msgstr "Ошибка Google Oauth, пожалуйста попробуйте позже." -#: cps/oauth_bb.py:359 +#: cps/oauth_bb.py:361 msgid "Google Oauth error: {}" msgstr "" @@ -1293,32 +1294,32 @@ msgstr "" msgid "Unknown Status" msgstr "Неизвестный статус" -#: cps/updater.py:431 cps/updater.py:442 cps/updater.py:543 cps/updater.py:558 +#: cps/updater.py:433 cps/updater.py:444 cps/updater.py:545 cps/updater.py:560 msgid "Unexpected data while reading update information" msgstr "Некорректные данные при чтении информации об обновлении" -#: cps/updater.py:438 cps/updater.py:550 +#: cps/updater.py:440 cps/updater.py:552 msgid "No update available. You already have the latest version installed" msgstr "Нет доступных обновлений. Вы используете последнюю версию" -#: cps/updater.py:456 +#: cps/updater.py:458 msgid "A new update is available. Click on the button below to update to the latest version." msgstr "Новое обновление доступно. Нажмите на кнопку ниже, чтобы обновить до последней версии." -#: cps/updater.py:474 +#: cps/updater.py:476 msgid "Could not fetch update information" msgstr "Не удалось получить информацию об обновлении" -#: cps/updater.py:484 +#: cps/updater.py:486 msgid "Click on the button below to update to the latest stable version." msgstr "Нажмите на кнопку ниже для обновления до последней стабильной версии." -#: cps/updater.py:493 cps/updater.py:507 cps/updater.py:518 +#: cps/updater.py:495 cps/updater.py:509 cps/updater.py:520 #, python-format msgid "A new update is available. Click on the button below to update to version: %(version)s" msgstr "Новое обновление доступно. Нажмите на кнопку ниже, чтобы обновиться до версии: %(version)s" -#: cps/updater.py:536 +#: cps/updater.py:538 msgid "No release information available" msgstr "Информация о выпуске недоступна" @@ -1498,50 +1499,50 @@ msgstr "Профиль обновлён" msgid "Oops! An account already exists for this Email." msgstr "Этот адрес электронной почты уже зарегистрирован." -#: cps/services/gmail.py:58 +#: cps/services/gmail.py:59 msgid "Found no valid gmail.json file with OAuth information" msgstr "" -#: cps/tasks/convert.py:105 +#: cps/tasks/convert.py:108 #, fuzzy, python-format msgid "%(book)s send to E-Reader" msgstr "Отправить на Kindle" -#: cps/tasks/convert.py:167 +#: cps/tasks/convert.py:170 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "" -#: cps/tasks/convert.py:201 +#: cps/tasks/convert.py:204 #, python-format msgid "%(format)s format not found on disk" msgstr "" -#: cps/tasks/convert.py:205 +#: cps/tasks/convert.py:208 msgid "Ebook converter failed with unknown error" msgstr "" -#: cps/tasks/convert.py:224 +#: cps/tasks/convert.py:227 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "" -#: cps/tasks/convert.py:245 +#: cps/tasks/convert.py:248 #, python-format msgid "Converted file not found or more than one file in folder %(folder)s" msgstr "" -#: cps/tasks/convert.py:287 +#: cps/tasks/convert.py:291 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "Ошибка Ebook-конвертора: %(error)s" -#: cps/tasks/convert.py:310 +#: cps/tasks/convert.py:314 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "" -#: cps/tasks/convert.py:315 +#: cps/tasks/convert.py:319 msgid "Convert" msgstr "" @@ -1553,7 +1554,7 @@ msgstr "" msgid "E-mail" msgstr "" -#: cps/tasks/metadata_backup.py:33 +#: cps/tasks/metadata_backup.py:34 #, fuzzy msgid "Backing up Metadata" msgstr "изменить метаданные" @@ -1567,20 +1568,20 @@ msgstr "" msgid "Generated %(count)s cover thumbnails" msgstr "" -#: cps/tasks/thumbnail.py:230 cps/tasks/thumbnail.py:443 -#: cps/tasks/thumbnail.py:511 +#: cps/tasks/thumbnail.py:231 cps/tasks/thumbnail.py:444 +#: cps/tasks/thumbnail.py:512 msgid "Cover Thumbnails" msgstr "" -#: cps/tasks/thumbnail.py:289 +#: cps/tasks/thumbnail.py:290 msgid "Generated {0} series thumbnails" msgstr "" -#: cps/tasks/thumbnail.py:454 +#: cps/tasks/thumbnail.py:455 msgid "Clearing cover thumbnail cache" msgstr "" -#: cps/tasks/upload.py:38 cps/templates/admin.html:20 +#: cps/tasks/upload.py:39 cps/templates/admin.html:20 #: cps/templates/layout.html:81 cps/templates/user_table.html:145 msgid "Upload" msgstr "Загрузить" @@ -1828,7 +1829,7 @@ msgstr "Ok" #: cps/templates/admin.html:259 cps/templates/admin.html:273 #: cps/templates/book_edit.html:214 cps/templates/book_table.html:127 -#: cps/templates/config_db.html:66 cps/templates/config_edit.html:423 +#: cps/templates/config_db.html:66 cps/templates/config_edit.html:427 #: cps/templates/config_view_edit.html:175 cps/templates/detail.html:342 #: cps/templates/modal_dialogs.html:64 cps/templates/modal_dialogs.html:99 #: cps/templates/modal_dialogs.html:117 cps/templates/modal_dialogs.html:135 @@ -2014,7 +2015,7 @@ msgid "Fetch Metadata" msgstr "Получить метаданные" #: cps/templates/book_edit.html:213 cps/templates/config_db.html:65 -#: cps/templates/config_edit.html:422 cps/templates/config_view_edit.html:174 +#: cps/templates/config_edit.html:426 cps/templates/config_view_edit.html:174 #: cps/templates/email_edit.html:65 cps/templates/schedule_edit.html:44 #: cps/templates/shelf_edit.html:25 cps/templates/shelf_order.html:41 #: cps/templates/user_edit.html:142 @@ -2488,47 +2489,51 @@ msgid "Configure Backend for Limiter" msgstr "" #: cps/templates/config_edit.html:376 -msgid "Options for Limiter" +msgid "Options for Limiter Backend" msgstr "" -#: cps/templates/config_edit.html:381 +#: cps/templates/config_edit.html:382 +msgid "Check if file extensions matches file content on upload" +msgstr "" + +#: cps/templates/config_edit.html:385 msgid "Session protection" msgstr "" -#: cps/templates/config_edit.html:383 +#: cps/templates/config_edit.html:387 msgid "Basic" msgstr "" -#: cps/templates/config_edit.html:384 +#: cps/templates/config_edit.html:388 msgid "Strong" msgstr "" -#: cps/templates/config_edit.html:389 +#: cps/templates/config_edit.html:393 #, fuzzy msgid "User Password policy" msgstr "Сбросить пароль пользователя" -#: cps/templates/config_edit.html:393 +#: cps/templates/config_edit.html:397 msgid "Minimum password length" msgstr "" -#: cps/templates/config_edit.html:398 +#: cps/templates/config_edit.html:402 msgid "Enforce number" msgstr "" -#: cps/templates/config_edit.html:402 +#: cps/templates/config_edit.html:406 msgid "Enforce lowercase characters" msgstr "" -#: cps/templates/config_edit.html:406 +#: cps/templates/config_edit.html:410 msgid "Enforce uppercase characters" msgstr "" -#: cps/templates/config_edit.html:410 +#: cps/templates/config_edit.html:414 msgid "Enforce characters (needed For Chinese/Japanese/Korean Characters)" msgstr "" -#: cps/templates/config_edit.html:414 +#: cps/templates/config_edit.html:418 msgid "Enforce special characters" msgstr "" @@ -2660,6 +2665,11 @@ msgstr "Отметить как непрочитанное" msgid "Mark As Read" msgstr "Отметить как прочитанное" +#: cps/templates/detail.html:254 +#, fuzzy +msgid "Mark Book as Read or Unread" +msgstr "Отметить как непрочитанное" + #: cps/templates/detail.html:254 cps/templates/listenmp3.html:159 msgid "Read" msgstr "Прочесть" @@ -2672,10 +2682,15 @@ msgstr "" msgid "Add to archive" msgstr "" -#: cps/templates/detail.html:267 cps/templates/listenmp3.html:167 -msgid "Archived" +#: cps/templates/detail.html:267 +msgid "Mark Book as archived or not, to hide it in Calibre-Web and delete it from Kobo Reader" msgstr "" +#: cps/templates/detail.html:267 +#, fuzzy +msgid "Archive" +msgstr "Поиск" + #: cps/templates/detail.html:278 cps/templates/listenmp3.html:177 msgid "Description:" msgstr "Описание:" @@ -2954,6 +2969,10 @@ msgstr "Подробнее о книге" msgid "Grid" msgstr "" +#: cps/templates/listenmp3.html:167 +msgid "Archived" +msgstr "" + #: cps/templates/login.html:18 msgid "Remember Me" msgstr "Запомнить меня" diff --git a/cps/translations/sk/LC_MESSAGES/messages.mo b/cps/translations/sk/LC_MESSAGES/messages.mo index 98915b93..13e0f57a 100644 Binary files a/cps/translations/sk/LC_MESSAGES/messages.mo and b/cps/translations/sk/LC_MESSAGES/messages.mo differ diff --git a/cps/translations/sk/LC_MESSAGES/messages.po b/cps/translations/sk/LC_MESSAGES/messages.po index 2c6150fb..69ac62df 100644 --- a/cps/translations/sk/LC_MESSAGES/messages.po +++ b/cps/translations/sk/LC_MESSAGES/messages.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Calibre-Web\n" "Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n" -"POT-Creation-Date: 2024-06-09 12:26+0200\n" +"POT-Creation-Date: 2024-06-30 12:19+0200\n" "PO-Revision-Date: 2023-11-01 06:12+0100\n" "Last-Translator: Branislav Hanáček \n" "Language: sk_SK\n" @@ -16,7 +16,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.11.0\n" +"Generated-By: Babel 2.13.1\n" #: cps/about.py:84 msgid "Statistics" @@ -42,9 +42,9 @@ msgstr "Neznámy príkaz" msgid "Success! Books queued for Metadata Backup, please check Tasks for result" msgstr "Úspech! Knihy boli zaradená do zálohovania metadát, skontrolujte si Úlohy na kontrolu" -#: cps/admin.py:207 cps/editbooks.py:591 cps/editbooks.py:593 -#: cps/editbooks.py:631 cps/editbooks.py:648 cps/editbooks.py:1280 -#: cps/updater.py:613 cps/uploader.py:93 cps/uploader.py:102 +#: cps/admin.py:207 cps/editbooks.py:573 cps/editbooks.py:575 +#: cps/editbooks.py:615 cps/editbooks.py:658 cps/editbooks.py:1280 +#: cps/updater.py:615 cps/uploader.py:93 cps/uploader.py:102 msgid "Unknown" msgstr "Neznámy" @@ -64,12 +64,12 @@ msgstr "Konfigurácia používateľského rozhrania" msgid "Edit Users" msgstr "Upraviť používateľov" -#: cps/admin.py:368 cps/opds.py:541 cps/templates/grid.html:14 +#: cps/admin.py:368 cps/opds.py:542 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "Všetko" -#: cps/admin.py:395 cps/admin.py:1417 +#: cps/admin.py:395 cps/admin.py:1414 msgid "User not found" msgstr "Používateľ sa nenašiel" @@ -86,7 +86,7 @@ msgstr "Zobraziť všetko" msgid "Malformed request" msgstr "Chybne vytvorená žiadosť" -#: cps/admin.py:471 cps/admin.py:2048 +#: cps/admin.py:471 cps/admin.py:2046 msgid "Guest Name can't be changed" msgstr "Meno hosťa nie je možné zmeniť" @@ -94,7 +94,7 @@ msgstr "Meno hosťa nie je možné zmeniť" msgid "Guest can't have this role" msgstr "Hosť nemôže mať túto rolu" -#: cps/admin.py:495 cps/admin.py:2002 +#: cps/admin.py:495 cps/admin.py:2000 msgid "No admin user remaining, can't remove admin role" msgstr "Nezostáva žiadny správca, nie je možné odobrať rolu správcu" @@ -126,7 +126,7 @@ msgstr "Nebolo poskytnuté platné nastavenie jazyka" msgid "No Valid Book Language Given" msgstr "Nebolo poskytnuté platné jazykové nastavenie pre knihu" -#: cps/admin.py:535 cps/editbooks.py:457 +#: cps/admin.py:535 cps/editbooks.py:440 msgid "Parameter not found" msgstr "Parameter sa nenašiel" @@ -138,7 +138,7 @@ msgstr "Neplatný stĺpec na čítanie" msgid "Invalid Restricted Column" msgstr "Neplatný stĺpec na obmedzenie" -#: cps/admin.py:598 cps/admin.py:1873 +#: cps/admin.py:598 cps/admin.py:1871 msgid "Calibre-Web configuration updated" msgstr "Konfigurácia Calibre-Web bola aktualizovaná" @@ -218,291 +218,291 @@ msgstr "Štítok sa nenašiel" msgid "Invalid Action" msgstr "Neplatná akcia" -#: cps/admin.py:1123 +#: cps/admin.py:1120 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "client_secrets.json nie je nakonfiguraovaný pre webovú aplikáciu" -#: cps/admin.py:1168 +#: cps/admin.py:1165 msgid "Logfile Location is not Valid, Please Enter Correct Path" msgstr "Umiestnenie denníkového súboru je neplatné, zadajte prosím správnu cestu" -#: cps/admin.py:1174 +#: cps/admin.py:1171 msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgstr "Umiestnenie súbor denníka prístupov nie je platné, zadajte prosím správnu cestu" -#: cps/admin.py:1208 +#: cps/admin.py:1205 msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgstr "Zadajte prosím poskytovateľa LDAP, port, DN a identifikátor používateľa" -#: cps/admin.py:1214 +#: cps/admin.py:1211 msgid "Please Enter a LDAP Service Account and Password" msgstr "Zadajte prosím konto a heslo pre LDAP službu" -#: cps/admin.py:1217 +#: cps/admin.py:1214 msgid "Please Enter a LDAP Service Account" msgstr "Zadajte prosím konto pre LDAP službu" -#: cps/admin.py:1222 +#: cps/admin.py:1219 #, python-format msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgstr "Filter pre LDAP objekt skupiny potrebuje jeden \"%s\" formátový identifikátor" -#: cps/admin.py:1224 +#: cps/admin.py:1221 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "Filter pre LDAP objekt skupiny má nezhodu v zátvorkách" -#: cps/admin.py:1228 +#: cps/admin.py:1225 #, python-format msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgstr "Filter pre LDAP objekt používateľa potrebuje jeden \"%s\" formátový identifikátor" -#: cps/admin.py:1230 +#: cps/admin.py:1227 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "Filter pre LDAP objekt používateľa má nezhodu v zátvorkách" -#: cps/admin.py:1237 +#: cps/admin.py:1234 #, python-format msgid "LDAP Member User Filter needs to Have One \"%s\" Format Identifier" msgstr "Filter pre LDAP členstvo používateľa potrebuje jeden \"%s\" formátový identifikátor" -#: cps/admin.py:1239 +#: cps/admin.py:1236 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "Filter pre LDAP členstvo používateľa má nezhodu v zátvorkách" -#: cps/admin.py:1246 +#: cps/admin.py:1243 msgid "LDAP CACertificate, Certificate or Key Location is not Valid, Please Enter Correct Path" msgstr "LDAP CA-certifikát, certifikát alebo umiestnenie kľúča nie je platné. Zadajte prosím správnu cestu" -#: cps/admin.py:1277 cps/templates/admin.html:53 +#: cps/admin.py:1274 cps/templates/admin.html:53 msgid "Add New User" msgstr "Pridať nového používateľa" -#: cps/admin.py:1286 cps/templates/admin.html:100 +#: cps/admin.py:1283 cps/templates/admin.html:100 msgid "Edit Email Server Settings" msgstr "Upraviť nastavenie pre poštový server" -#: cps/admin.py:1305 +#: cps/admin.py:1302 msgid "Success! Gmail Account Verified." msgstr "Úspech! Gmail konto bolo verifikované." -#: cps/admin.py:1325 cps/admin.py:1328 cps/admin.py:1713 cps/admin.py:1857 -#: cps/admin.py:1955 cps/admin.py:2076 cps/editbooks.py:243 -#: cps/editbooks.py:319 cps/editbooks.py:1242 cps/shelf.py:90 cps/shelf.py:150 +#: cps/admin.py:1322 cps/admin.py:1325 cps/admin.py:1710 cps/admin.py:1855 +#: cps/admin.py:1953 cps/admin.py:2074 cps/editbooks.py:226 +#: cps/editbooks.py:303 cps/editbooks.py:1242 cps/shelf.py:90 cps/shelf.py:150 #: cps/shelf.py:193 cps/shelf.py:243 cps/shelf.py:280 cps/shelf.py:354 -#: cps/shelf.py:468 cps/tasks/convert.py:150 cps/web.py:1520 +#: cps/shelf.py:468 cps/tasks/convert.py:153 cps/web.py:1520 #, python-format msgid "Oops! Database Error: %(error)s." msgstr "Chyba databázy: %(error)s." -#: cps/admin.py:1335 +#: cps/admin.py:1332 #, python-format msgid "Test e-mail queued for sending to %(email)s, please check Tasks for result" msgstr "Testovací e-mail bol zaradený na odoslanie na %(email)s, skontrolujte si výsledok v sekcii Úlohy" -#: cps/admin.py:1338 +#: cps/admin.py:1335 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "Pri odosielaní testovacieho e-mailu sa vyskytla chyba: %(res)s" -#: cps/admin.py:1340 +#: cps/admin.py:1337 msgid "Please configure your e-mail address first..." msgstr "Prosím, najskôr si nastavte e-mailovú adresu..." -#: cps/admin.py:1342 +#: cps/admin.py:1339 msgid "Email Server Settings updated" msgstr "Nastavenia poštového servera boli aktualizované" -#: cps/admin.py:1365 cps/templates/admin.html:195 +#: cps/admin.py:1362 cps/templates/admin.html:195 msgid "Edit Scheduled Tasks Settings" msgstr "Upraviť nastavenia naplánovaných úloh" -#: cps/admin.py:1377 +#: cps/admin.py:1374 msgid "Invalid start time for task specified" msgstr "Bol uvedený neplatný čas spustenia" -#: cps/admin.py:1382 +#: cps/admin.py:1379 msgid "Invalid duration for task specified" msgstr "Bol uvedený neplatný doba behu" -#: cps/admin.py:1392 +#: cps/admin.py:1389 msgid "Scheduled tasks settings updated" msgstr "Nastavenia naplánovaných úloh boli aktualizované" -#: cps/admin.py:1402 cps/admin.py:1451 cps/admin.py:2072 cps/web.py:1316 +#: cps/admin.py:1399 cps/admin.py:1448 cps/admin.py:2070 cps/web.py:1316 msgid "Oops! An unknown error occurred. Please try again later." msgstr "Vyskytla sa neočakávaná chyba. Prosím, skúste to opäť neskôr." -#: cps/admin.py:1406 +#: cps/admin.py:1403 msgid "Settings DB is not Writeable" msgstr "Nie je možné zapisovať do databázy nastavení" -#: cps/admin.py:1436 cps/admin.py:2064 +#: cps/admin.py:1433 cps/admin.py:2062 #, python-format msgid "Edit User %(nick)s" msgstr "Upraviť používateľa %(nick)s" -#: cps/admin.py:1448 +#: cps/admin.py:1445 #, python-format msgid "Success! Password for user %(user)s reset" msgstr "Úspech! Heslo pre používateľa %(user)s bolo resetované" -#: cps/admin.py:1454 +#: cps/admin.py:1451 msgid "Oops! Please configure the SMTP mail settings." msgstr "Nastavte prosím poštový server." -#: cps/admin.py:1465 +#: cps/admin.py:1462 msgid "Logfile viewer" msgstr "Prezerač denníkového súboru" -#: cps/admin.py:1531 +#: cps/admin.py:1528 msgid "Requesting update package" msgstr "Žiadosť o aktualizačný balík" -#: cps/admin.py:1532 +#: cps/admin.py:1529 msgid "Downloading update package" msgstr "Sťahuje sa aktualizačný balík" -#: cps/admin.py:1533 +#: cps/admin.py:1530 msgid "Unzipping update package" msgstr "Rozbaľuje sa aktualizačný balík" -#: cps/admin.py:1534 +#: cps/admin.py:1531 msgid "Replacing files" msgstr "Nahradzujú sa súbory" -#: cps/admin.py:1535 +#: cps/admin.py:1532 msgid "Database connections are closed" msgstr "Spojenia s databázou sú uzavreté" -#: cps/admin.py:1536 +#: cps/admin.py:1533 msgid "Stopping server" msgstr "Zastavuje sa server" -#: cps/admin.py:1537 +#: cps/admin.py:1534 msgid "Update finished, please press okay and reload page" msgstr "Aktualizácia dokončená, stlačte prosím OK a znovu načítajte stránku" -#: cps/admin.py:1538 cps/admin.py:1539 cps/admin.py:1540 cps/admin.py:1541 -#: cps/admin.py:1542 cps/admin.py:1543 +#: cps/admin.py:1535 cps/admin.py:1536 cps/admin.py:1537 cps/admin.py:1538 +#: cps/admin.py:1539 cps/admin.py:1540 msgid "Update failed:" msgstr "Aktualizácia zlyhala:" -#: cps/admin.py:1538 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 +#: cps/admin.py:1535 cps/updater.py:391 cps/updater.py:626 cps/updater.py:628 msgid "HTTP Error" msgstr "HTTP chyba" -#: cps/admin.py:1539 cps/updater.py:391 cps/updater.py:628 +#: cps/admin.py:1536 cps/updater.py:393 cps/updater.py:630 msgid "Connection error" msgstr "Chyba spojenia" -#: cps/admin.py:1540 cps/updater.py:393 cps/updater.py:630 +#: cps/admin.py:1537 cps/updater.py:395 cps/updater.py:632 msgid "Timeout while establishing connection" msgstr "Časový limit pre naviazanie spojenia vypršal" -#: cps/admin.py:1541 cps/updater.py:395 cps/updater.py:632 +#: cps/admin.py:1538 cps/updater.py:397 cps/updater.py:634 msgid "General error" msgstr "Všeobecná chyba" -#: cps/admin.py:1542 +#: cps/admin.py:1539 msgid "Update file could not be saved in temp dir" msgstr "Súbor aktualizácie nebolo možné uložiť do dočasného adresára" -#: cps/admin.py:1543 +#: cps/admin.py:1540 msgid "Files could not be replaced during update" msgstr "Nebolo možné nahradiť súbory počas aktualizácie" -#: cps/admin.py:1567 +#: cps/admin.py:1564 msgid "Failed to extract at least One LDAP User" msgstr "Extrakcia minimálne jedného LDAP používateľa zlyhala" -#: cps/admin.py:1612 +#: cps/admin.py:1609 msgid "Failed to Create at Least One LDAP User" msgstr "Vytvorenie minimálne jedného LDAP používateľa zlyhalo" -#: cps/admin.py:1625 +#: cps/admin.py:1622 #, python-format msgid "Error: %(ldaperror)s" msgstr "Chyba: %(ldaperror)s" -#: cps/admin.py:1629 +#: cps/admin.py:1626 msgid "Error: No user returned in response of LDAP server" msgstr "Chyba: Odpoveď LDAP servera neobsahuje žiadneho používateľa" -#: cps/admin.py:1665 +#: cps/admin.py:1662 msgid "At Least One LDAP User Not Found in Database" msgstr "Minimálne jeden LDAP používateľ sa nenachádza v databáze" -#: cps/admin.py:1667 +#: cps/admin.py:1664 msgid "{} User Successfully Imported" msgstr "Používateľ bol naimportovaný" -#: cps/admin.py:1725 +#: cps/admin.py:1722 msgid "DB Location is not Valid, Please Enter Correct Path" msgstr "Umiestnenie databáze nie je platné, zadajte prosím správnu cestu" -#: cps/admin.py:1745 +#: cps/admin.py:1742 msgid "DB is not Writeable" msgstr "Do databázy nie je možné zapisovať" -#: cps/admin.py:1761 +#: cps/admin.py:1758 msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgstr "Umiestnenie súboru s kľúčmi nie je platné, zadajte prosím správnu cestu" -#: cps/admin.py:1765 +#: cps/admin.py:1762 msgid "Certfile Location is not Valid, Please Enter Correct Path" msgstr "Umiestnenie súboru s certifikátmi nie je platné, zadajte prosím správnu cestu" -#: cps/admin.py:1842 +#: cps/admin.py:1840 msgid "Password length has to be between 1 and 40" msgstr "Heslo musí byť dlhé 1 až 40 znakov" -#: cps/admin.py:1896 +#: cps/admin.py:1894 msgid "Database Settings updated" msgstr "Nastavenia databáze boli aktualizované" -#: cps/admin.py:1904 +#: cps/admin.py:1902 msgid "Database Configuration" msgstr "Konfigurácia databázy" -#: cps/admin.py:1919 cps/web.py:1290 +#: cps/admin.py:1917 cps/web.py:1290 msgid "Oops! Please complete all fields." msgstr "Vyplňte prosím všetky polia." -#: cps/admin.py:1928 +#: cps/admin.py:1926 msgid "E-mail is not from valid domain" msgstr "E-mail nie je z platnej domény" -#: cps/admin.py:1934 +#: cps/admin.py:1932 msgid "Add new user" msgstr "Pridať nového používateľa" -#: cps/admin.py:1945 +#: cps/admin.py:1943 #, python-format msgid "User '%(user)s' created" msgstr "Používateľ '%(user)s' bol vytvorený" -#: cps/admin.py:1951 +#: cps/admin.py:1949 msgid "Oops! An account already exists for this Email. or name." msgstr "Účet s týmto menom alebo e-mailovou adresou už existuje." -#: cps/admin.py:1981 +#: cps/admin.py:1979 #, python-format msgid "User '%(nick)s' deleted" msgstr "Používateľ '%(nick)s' bol zmazaný" -#: cps/admin.py:1984 +#: cps/admin.py:1982 msgid "Can't delete Guest User" msgstr "Nie je možné zmazať používateľa Hosť" -#: cps/admin.py:1987 +#: cps/admin.py:1985 msgid "No admin user remaining, can't delete user" msgstr "Nezostáva žiadny používateľ, nie je možné odobrať rolu správcu" -#: cps/admin.py:2042 cps/web.py:1469 +#: cps/admin.py:2040 cps/web.py:1469 msgid "Email can't be empty and has to be a valid Email" msgstr "E-mailová adresa nemôže byť prázdna a musí byť platná" -#: cps/admin.py:2068 +#: cps/admin.py:2066 #, python-format msgid "User '%(nick)s' updated" msgstr "Používateľ '%(nick)s' bol aktualizovaný" @@ -515,12 +515,12 @@ msgstr "nie je naištalované" msgid "Execution permissions missing" msgstr "Chýba právo na vykonanie" -#: cps/db.py:756 cps/search.py:137 cps/web.py:747 +#: cps/db.py:768 cps/search.py:137 cps/web.py:747 #, python-format msgid "Custom Column No.%(column)d does not exist in calibre database" msgstr "Používateľom definovaný stĺpec č. %(column)d v Calibre databáze neexistuje" -#: cps/db.py:996 cps/templates/config_edit.html:203 +#: cps/db.py:1008 cps/templates/config_edit.html:203 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 #: cps/web.py:562 cps/web.py:596 cps/web.py:641 cps/web.py:681 cps/web.py:708 #: cps/web.py:989 cps/web.py:1019 cps/web.py:1064 cps/web.py:1092 @@ -528,100 +528,105 @@ msgstr "Používateľom definovaný stĺpec č. %(column)d v Calibre databáze n msgid "None" msgstr "Žiadne" -#: cps/editbooks.py:124 cps/editbooks.py:912 cps/web.py:529 cps/web.py:1561 -#: cps/web.py:1605 cps/web.py:1650 +#: cps/editbooks.py:108 cps/editbooks.py:929 cps/web.py:529 cps/web.py:1561 +#: cps/web.py:1606 cps/web.py:1651 msgid "Oops! Selected book is unavailable. File does not exist or is not accessible" msgstr "Vybraná kniha nie je dostupná. Súbor neexistuje alebo sa k nemu nedá pristupovať" -#: cps/editbooks.py:168 cps/editbooks.py:1263 +#: cps/editbooks.py:151 cps/editbooks.py:1263 msgid "User has no rights to upload cover" msgstr "Používateľ nemá práva nahrať obálku knihy" -#: cps/editbooks.py:188 cps/editbooks.py:733 +#: cps/editbooks.py:171 cps/editbooks.py:744 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "Identifikátory nerozlišujú malé a veľké písmená, prepisuje sa starý identifikátor" -#: cps/editbooks.py:230 +#: cps/editbooks.py:213 msgid "Metadata successfully updated" msgstr "Metadáta boli úspešne aktualizované" -#: cps/editbooks.py:248 +#: cps/editbooks.py:231 msgid "Error editing book: {}" msgstr "Chyba pri úprave knihy: {}" -#: cps/editbooks.py:305 +#: cps/editbooks.py:289 #, python-format msgid "File %(file)s uploaded" msgstr "Súbor %(file)s bol nahraný" -#: cps/editbooks.py:333 +#: cps/editbooks.py:317 msgid "Source or destination format for conversion missing" msgstr "Chýba zdrojový alebo cieľový formát pre prevod" -#: cps/editbooks.py:341 +#: cps/editbooks.py:325 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "Kniha bola úspešne zaradená na prevod do %(book_format)s" -#: cps/editbooks.py:345 +#: cps/editbooks.py:329 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "Vyskytla sa chyba pri prevode tejto knihy: %(res)s" -#: cps/editbooks.py:652 +#: cps/editbooks.py:662 msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgstr "Nahrávaná kniha pravdepodobne existuje v knižnici, zvážte zmenu pred nahraním novej: " -#: cps/editbooks.py:707 cps/editbooks.py:1043 +#: cps/editbooks.py:718 cps/editbooks.py:1049 #, python-format msgid "'%(langname)s' is not a valid language" msgstr "'%(langname)s' nie je platný jazyk" -#: cps/editbooks.py:745 cps/editbooks.py:1203 +#: cps/editbooks.py:756 cps/editbooks.py:1192 +#, fuzzy +msgid "File type isn't allowed to be uploaded to this server" +msgstr "Prípona súboru '%(ext)s' nemôže byť nahraná na tento server" + +#: cps/editbooks.py:762 cps/editbooks.py:1202 #, python-format msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgstr "Prípona súboru '%(ext)s' nemôže byť nahraná na tento server" -#: cps/editbooks.py:749 cps/editbooks.py:1207 +#: cps/editbooks.py:766 cps/editbooks.py:1206 msgid "File to be uploaded must have an extension" msgstr "Súbor ktorý sa má nahrať musí mať príponu" -#: cps/editbooks.py:757 +#: cps/editbooks.py:774 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "Súbor %(filename)s nebolo možné uložiť do dočasného adresára" -#: cps/editbooks.py:777 +#: cps/editbooks.py:794 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "Zlyhal presun súboru obalky %(file)s: %(error)s" -#: cps/editbooks.py:834 cps/editbooks.py:836 +#: cps/editbooks.py:851 cps/editbooks.py:853 msgid "Book Format Successfully Deleted" msgstr "Kniha s formátom bola úspešne zmazaná" -#: cps/editbooks.py:843 cps/editbooks.py:845 +#: cps/editbooks.py:860 cps/editbooks.py:862 msgid "Book Successfully Deleted" msgstr "Kniha bola úspešne zmazaná" -#: cps/editbooks.py:897 +#: cps/editbooks.py:914 msgid "You are missing permissions to delete books" msgstr "Nemáte oprávnenia na mazanie kníh" -#: cps/editbooks.py:947 +#: cps/editbooks.py:964 msgid "edit metadata" msgstr "upraviť metadáta" -#: cps/editbooks.py:996 +#: cps/editbooks.py:1013 #, python-format msgid "%(seriesindex)s is not a valid number, skipping" msgstr "%(seriesindex)s nie je platné číslo, preskakuje sa" -#: cps/editbooks.py:1198 +#: cps/editbooks.py:1197 msgid "User has no rights to upload additional file formats" msgstr "Používateľ nemá práva na nahranie dodatočných súborových formátov" -#: cps/editbooks.py:1219 +#: cps/editbooks.py:1218 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "Nebolo možné vytvoriť cestu %(path)s (Povolenie zamietnuté)." @@ -640,7 +645,7 @@ msgstr "Súborový formát %(ext)s bol pridaný k %(book)s" msgid "Google Drive setup not completed, try to deactivate and activate Google Drive again" msgstr "Nastavenie Google Drive nie je dokončené, skúste deaktivovať a znovu aktivovať Google Drive" -#: cps/gdrive.py:95 +#: cps/gdrive.py:96 msgid "Callback domain is not verified, please follow steps to verify domain in google developer console" msgstr "Doména spätného volania nie je verifikovaná, prosím, vykonajte kroky na verifikáciu domény v konzole Google vývojára" @@ -649,7 +654,7 @@ msgstr "Doména spätného volania nie je verifikovaná, prosím, vykonajte krok msgid "%(format)s format not found for book id: %(book)d" msgstr "Formát %(format)s sa nenašiel pre knihu s ID: %(book)d" -#: cps/helper.py:93 cps/tasks/convert.py:86 +#: cps/helper.py:93 cps/tasks/convert.py:89 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "%(format)s sa nenašiel na Google Drive: %(fn)s" @@ -722,123 +727,119 @@ msgstr "Mazanie knihy %(id)s zlyhalo: %(message)s" msgid "Deleting book %(id)s from database only, book path in database not valid: %(path)s" msgstr "Mazanie knihy %(id)s iba z databázy, cesta ku knihe v databáze nie je platná: %(path)s" -#: cps/helper.py:452 +#: cps/helper.py:465 #, python-format msgid "Rename author from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgstr "Premenovanie autora z: '%(src)s' na '%(dest)s' zlyhalo s chybou: %(error)s" -#: cps/helper.py:524 cps/helper.py:533 +#: cps/helper.py:536 cps/helper.py:545 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "Súbor %(file)s sa nenašiel na Google Drive" -#: cps/helper.py:567 +#: cps/helper.py:587 #, python-format msgid "Rename title from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgstr "Zmena názvu knihy z: '%(src)s' na '%(dest)s' zlyhalo s chybou: %(error)s" -#: cps/helper.py:587 -msgid "Error in rename file in path: {}" -msgstr "Chyba pri premenovaní v ceste: {}" - -#: cps/helper.py:605 +#: cps/helper.py:625 #, python-format msgid "Book path %(path)s not found on Google Drive" msgstr "Cesta ku knihe %(path)s sa nenašla na Google Drive" -#: cps/helper.py:670 +#: cps/helper.py:685 msgid "Found an existing account for this Email address" msgstr "Pre túto poštovú adresu sa našiel existujúci účet" -#: cps/helper.py:678 +#: cps/helper.py:693 msgid "This username is already taken" msgstr "Toto meno používateľa sa už používa" -#: cps/helper.py:690 +#: cps/helper.py:705 msgid "Invalid Email address format" msgstr "Neplatný formát poštovej adresy" -#: cps/helper.py:710 +#: cps/helper.py:726 msgid "Password doesn't comply with password validation rules" msgstr "Heslo nedodržiava pravidlá validácie" -#: cps/helper.py:859 +#: cps/helper.py:873 msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "Python modul 'advocate' nie je nainštalovaný ale je potrebný pre nahrávanie obálok kníh" -#: cps/helper.py:869 +#: cps/helper.py:883 msgid "Error Downloading Cover" msgstr "Chyba pri sťahovaní obálky knihy" -#: cps/helper.py:872 +#: cps/helper.py:886 msgid "Cover Format Error" msgstr "Chyba formátu obálky knihy" -#: cps/helper.py:875 +#: cps/helper.py:889 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "Nemáte povolené pristupovať na lokálneho hostiteľa alebo lokálnu sieť na pre nahrávanie obálok kníh" -#: cps/helper.py:885 +#: cps/helper.py:899 msgid "Failed to create path for cover" msgstr "Vytváranie cesty k obálke knihy zlyhalo" -#: cps/helper.py:901 +#: cps/helper.py:915 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "Súbor obálky knihy nie je platný súbor s obrázkom alebo nie je uložený" -#: cps/helper.py:912 +#: cps/helper.py:926 msgid "Only jpg/jpeg/png/webp/bmp files are supported as coverfile" msgstr "Ako súbor obálky knihy sú podporované iba súbory jpg/jpeg/png/webp/bmp" -#: cps/helper.py:924 +#: cps/helper.py:938 msgid "Invalid cover file content" msgstr "Neplatný obsah súboru obalky knihy" -#: cps/helper.py:928 +#: cps/helper.py:942 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "Ako súbor obálky knihy sú podporované iba súbory jpg/jpeg" -#: cps/helper.py:999 cps/helper.py:1156 +#: cps/helper.py:1014 cps/helper.py:1171 msgid "Cover" msgstr "Obálka knihy" -#: cps/helper.py:1016 +#: cps/helper.py:1031 msgid "UnRar binary file not found" msgstr "Binárny súbor pre UnRar sa nenašiel" -#: cps/helper.py:1027 +#: cps/helper.py:1042 msgid "Error executing UnRar" msgstr "Chyba pri spustení UnRar" -#: cps/helper.py:1035 +#: cps/helper.py:1050 msgid "Could not find the specified directory" msgstr "" -#: cps/helper.py:1038 +#: cps/helper.py:1053 msgid "Please specify a directory, not a file" msgstr "" -#: cps/helper.py:1052 +#: cps/helper.py:1067 #, fuzzy msgid "Calibre binaries not viable" msgstr "Do databázy nie je možné zapisovať" -#: cps/helper.py:1061 +#: cps/helper.py:1076 #, python-format msgid "Missing calibre binaries: %(missing)s" msgstr "" -#: cps/helper.py:1063 +#: cps/helper.py:1078 #, fuzzy, python-format msgid "Missing executable permissions: %(missing)s" msgstr "Chýba právo na vykonanie" -#: cps/helper.py:1068 +#: cps/helper.py:1083 #, fuzzy msgid "Error executing Calibre" msgstr "Chyba pri spustení UnRar" -#: cps/helper.py:1158 cps/templates/admin.html:216 +#: cps/helper.py:1173 cps/templates/admin.html:216 msgid "Queue all books for metadata backup" msgstr "Zaradiť všetky knihy na zálohovanie metadát" @@ -884,35 +885,35 @@ msgstr "Odpojenie z %(oauth)s zlyhalo" msgid "Not Linked to %(oauth)s" msgstr "Nie je pripojený k %(oauth)s" -#: cps/oauth_bb.py:261 +#: cps/oauth_bb.py:262 msgid "Failed to log in with GitHub." msgstr "Prihlásenie na GitHub zlyhalo." -#: cps/oauth_bb.py:267 +#: cps/oauth_bb.py:268 msgid "Failed to fetch user info from GitHub." msgstr "Získanie používateľa z GitHub-u zlyhalo." -#: cps/oauth_bb.py:279 +#: cps/oauth_bb.py:280 msgid "Failed to log in with Google." msgstr "Prihlásenie na Google zlyhalo." -#: cps/oauth_bb.py:285 +#: cps/oauth_bb.py:286 msgid "Failed to fetch user info from Google." msgstr "Získanie používateľa z Google zlyhalo." -#: cps/oauth_bb.py:332 +#: cps/oauth_bb.py:334 msgid "GitHub Oauth error, please retry later." msgstr "Chyba GitHub OAuth, skúste to prosím neskôr." -#: cps/oauth_bb.py:335 +#: cps/oauth_bb.py:337 msgid "GitHub Oauth error: {}" msgstr "Chyba GitHub OAuth: {}" -#: cps/oauth_bb.py:356 +#: cps/oauth_bb.py:358 msgid "Google Oauth error, please retry later." msgstr "Chyba Google OAuth, skúste to prosím neskôr." -#: cps/oauth_bb.py:359 +#: cps/oauth_bb.py:361 msgid "Google Oauth error: {}" msgstr "Chyba Google OAuth: {}" @@ -1261,32 +1262,32 @@ msgstr "Zrušená" msgid "Unknown Status" msgstr "Neznámy stav" -#: cps/updater.py:431 cps/updater.py:442 cps/updater.py:543 cps/updater.py:558 +#: cps/updater.py:433 cps/updater.py:444 cps/updater.py:545 cps/updater.py:560 msgid "Unexpected data while reading update information" msgstr "Čítanie aktualizačnej informácie narazilo na neočakávané údaje" -#: cps/updater.py:438 cps/updater.py:550 +#: cps/updater.py:440 cps/updater.py:552 msgid "No update available. You already have the latest version installed" msgstr "Nie je dostupná žiadna aktualizácia. Máte nainštalovanú najnovšiu verziu" -#: cps/updater.py:456 +#: cps/updater.py:458 msgid "A new update is available. Click on the button below to update to the latest version." msgstr "Je dostupná nová aktualizácia. Ak chcete aktualizovať na najnovšiu verziu, kliknite na tlačidlo dolu." -#: cps/updater.py:474 +#: cps/updater.py:476 msgid "Could not fetch update information" msgstr "Nebolo možné stiahnuť aktualizačnú informáciu" -#: cps/updater.py:484 +#: cps/updater.py:486 msgid "Click on the button below to update to the latest stable version." msgstr "Ak chcete aktualizovať na najnovšiu stabilnú verziu, kliknite na tlačidlo dolu." -#: cps/updater.py:493 cps/updater.py:507 cps/updater.py:518 +#: cps/updater.py:495 cps/updater.py:509 cps/updater.py:520 #, python-format msgid "A new update is available. Click on the button below to update to version: %(version)s" msgstr "Je dostupná nová aktualizácia. Kliknite na tlačidlo dolu, ak chcete aktualizovať na verziu: %(version)s" -#: cps/updater.py:536 +#: cps/updater.py:538 msgid "No release information available" msgstr "Nie je dostupná informácia o vydaní" @@ -1457,50 +1458,50 @@ msgstr "Úspech! Profil bol aktualizovaný" msgid "Oops! An account already exists for this Email." msgstr "Účet s touto e-mailovou adresou už existuje." -#: cps/services/gmail.py:58 +#: cps/services/gmail.py:59 msgid "Found no valid gmail.json file with OAuth information" msgstr "Nenašiel sa súbor gmail.json s OAuth informáciou" -#: cps/tasks/convert.py:105 +#: cps/tasks/convert.py:108 #, python-format msgid "%(book)s send to E-Reader" msgstr "%(book)s bol odoslaný do čítačky" -#: cps/tasks/convert.py:167 +#: cps/tasks/convert.py:170 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "Nástroj pre prevod ebook-convert %(tool)s sa nenašiel" -#: cps/tasks/convert.py:201 +#: cps/tasks/convert.py:204 #, python-format msgid "%(format)s format not found on disk" msgstr "Formát %(format)s sa nenachádza na disku" -#: cps/tasks/convert.py:205 +#: cps/tasks/convert.py:208 msgid "Ebook converter failed with unknown error" msgstr "Prevádzač e-kníh zlyhal s neznámou chybou" -#: cps/tasks/convert.py:224 +#: cps/tasks/convert.py:227 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "Prevádzač Kepubify zlyhal: %(error)s" -#: cps/tasks/convert.py:245 +#: cps/tasks/convert.py:248 #, python-format msgid "Converted file not found or more than one file in folder %(folder)s" msgstr "Prevádzaný súbor sa nenašiel alebo viac ako jeden súbor v zložke %(folder)s" -#: cps/tasks/convert.py:287 +#: cps/tasks/convert.py:291 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "Prevádzač e-kníh zlyhal: %(error)s" -#: cps/tasks/convert.py:310 +#: cps/tasks/convert.py:314 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "Calibre zlyhal s chybou: %(error)s" -#: cps/tasks/convert.py:315 +#: cps/tasks/convert.py:319 msgid "Convert" msgstr "Previesť" @@ -1512,7 +1513,7 @@ msgstr "Spojenie s databázou sa znovu naväzuje" msgid "E-mail" msgstr "E-mail" -#: cps/tasks/metadata_backup.py:33 +#: cps/tasks/metadata_backup.py:34 msgid "Backing up Metadata" msgstr "Zálohovať metadáta" @@ -1525,20 +1526,20 @@ msgstr "" msgid "Generated %(count)s cover thumbnails" msgstr "Bolo vygenerovaných %(count)s náhľadov obálok kníh" -#: cps/tasks/thumbnail.py:230 cps/tasks/thumbnail.py:443 -#: cps/tasks/thumbnail.py:511 +#: cps/tasks/thumbnail.py:231 cps/tasks/thumbnail.py:444 +#: cps/tasks/thumbnail.py:512 msgid "Cover Thumbnails" msgstr "Náhľad obálky knihy" -#: cps/tasks/thumbnail.py:289 +#: cps/tasks/thumbnail.py:290 msgid "Generated {0} series thumbnails" msgstr "Bolo vygenerovaných {0} náhľadov pre série" -#: cps/tasks/thumbnail.py:454 +#: cps/tasks/thumbnail.py:455 msgid "Clearing cover thumbnail cache" msgstr "Vyrovnávacia pamäť pre obálky kníh sa vyprázdňuje" -#: cps/tasks/upload.py:38 cps/templates/admin.html:20 +#: cps/tasks/upload.py:39 cps/templates/admin.html:20 #: cps/templates/layout.html:81 cps/templates/user_table.html:145 msgid "Upload" msgstr "Nahrať" @@ -1784,7 +1785,7 @@ msgstr "V poriadku" #: cps/templates/admin.html:259 cps/templates/admin.html:273 #: cps/templates/book_edit.html:214 cps/templates/book_table.html:127 -#: cps/templates/config_db.html:66 cps/templates/config_edit.html:423 +#: cps/templates/config_db.html:66 cps/templates/config_edit.html:427 #: cps/templates/config_view_edit.html:175 cps/templates/detail.html:342 #: cps/templates/modal_dialogs.html:64 cps/templates/modal_dialogs.html:99 #: cps/templates/modal_dialogs.html:117 cps/templates/modal_dialogs.html:135 @@ -1970,7 +1971,7 @@ msgid "Fetch Metadata" msgstr "Načítať metadáta" #: cps/templates/book_edit.html:213 cps/templates/config_db.html:65 -#: cps/templates/config_edit.html:422 cps/templates/config_view_edit.html:174 +#: cps/templates/config_edit.html:426 cps/templates/config_view_edit.html:174 #: cps/templates/email_edit.html:65 cps/templates/schedule_edit.html:44 #: cps/templates/shelf_edit.html:25 cps/templates/shelf_order.html:41 #: cps/templates/user_edit.html:142 @@ -2440,46 +2441,50 @@ msgid "Configure Backend for Limiter" msgstr "" #: cps/templates/config_edit.html:376 -msgid "Options for Limiter" +msgid "Options for Limiter Backend" msgstr "" -#: cps/templates/config_edit.html:381 +#: cps/templates/config_edit.html:382 +msgid "Check if file extensions matches file content on upload" +msgstr "" + +#: cps/templates/config_edit.html:385 msgid "Session protection" msgstr "Ochrana sedenia" -#: cps/templates/config_edit.html:383 +#: cps/templates/config_edit.html:387 msgid "Basic" msgstr "Základná" -#: cps/templates/config_edit.html:384 +#: cps/templates/config_edit.html:388 msgid "Strong" msgstr "Silná" -#: cps/templates/config_edit.html:389 +#: cps/templates/config_edit.html:393 msgid "User Password policy" msgstr "Zásady pre používateľské heslá" -#: cps/templates/config_edit.html:393 +#: cps/templates/config_edit.html:397 msgid "Minimum password length" msgstr "Minimálna dĺžka hesla" -#: cps/templates/config_edit.html:398 +#: cps/templates/config_edit.html:402 msgid "Enforce number" msgstr "Vyžadovať číslo" -#: cps/templates/config_edit.html:402 +#: cps/templates/config_edit.html:406 msgid "Enforce lowercase characters" msgstr "Vyžadovať malé písmená" -#: cps/templates/config_edit.html:406 +#: cps/templates/config_edit.html:410 msgid "Enforce uppercase characters" msgstr "Vyžadovať veľké písmená" -#: cps/templates/config_edit.html:410 +#: cps/templates/config_edit.html:414 msgid "Enforce characters (needed For Chinese/Japanese/Korean Characters)" msgstr "" -#: cps/templates/config_edit.html:414 +#: cps/templates/config_edit.html:418 msgid "Enforce special characters" msgstr "Vyžadovať špeciálne znaky" @@ -2609,6 +2614,11 @@ msgstr "Označiť ako neprečítané" msgid "Mark As Read" msgstr "Označiť ako prečítané" +#: cps/templates/detail.html:254 +#, fuzzy +msgid "Mark Book as Read or Unread" +msgstr "Označiť ako neprečítané" + #: cps/templates/detail.html:254 cps/templates/listenmp3.html:159 msgid "Read" msgstr "Čítať" @@ -2621,8 +2631,13 @@ msgstr "Obnoviť z archívu" msgid "Add to archive" msgstr "Pridať do archívu" -#: cps/templates/detail.html:267 cps/templates/listenmp3.html:167 -msgid "Archived" +#: cps/templates/detail.html:267 +msgid "Mark Book as archived or not, to hide it in Calibre-Web and delete it from Kobo Reader" +msgstr "" + +#: cps/templates/detail.html:267 +#, fuzzy +msgid "Archive" msgstr "Archivovaný" #: cps/templates/detail.html:278 cps/templates/listenmp3.html:177 @@ -2899,6 +2914,10 @@ msgstr "Detailu o knihe" msgid "Grid" msgstr "Mriežka" +#: cps/templates/listenmp3.html:167 +msgid "Archived" +msgstr "Archivovaný" + #: cps/templates/login.html:18 msgid "Remember Me" msgstr "Zapamätať si ma" diff --git a/cps/translations/sv/LC_MESSAGES/messages.mo b/cps/translations/sv/LC_MESSAGES/messages.mo index fc163779..b081d273 100644 Binary files a/cps/translations/sv/LC_MESSAGES/messages.mo and b/cps/translations/sv/LC_MESSAGES/messages.mo differ diff --git a/cps/translations/sv/LC_MESSAGES/messages.po b/cps/translations/sv/LC_MESSAGES/messages.po index 665309cf..7a4584cc 100644 --- a/cps/translations/sv/LC_MESSAGES/messages.po +++ b/cps/translations/sv/LC_MESSAGES/messages.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Calibre-Web\n" "Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n" -"POT-Creation-Date: 2024-06-09 12:26+0200\n" +"POT-Creation-Date: 2024-06-30 12:19+0200\n" "PO-Revision-Date: 2021-05-13 11:00+0000\n" "Last-Translator: Jonatan Nyberg \n" "Language: sv\n" @@ -16,7 +16,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.11.0\n" +"Generated-By: Babel 2.13.1\n" #: cps/about.py:84 msgid "Statistics" @@ -45,9 +45,9 @@ msgstr "Okänt kommando" msgid "Success! Books queued for Metadata Backup, please check Tasks for result" msgstr "Testa e-post i kö för att skicka till %(email)s, vänligen kontrollera Uppgifter för resultat" -#: cps/admin.py:207 cps/editbooks.py:591 cps/editbooks.py:593 -#: cps/editbooks.py:631 cps/editbooks.py:648 cps/editbooks.py:1280 -#: cps/updater.py:613 cps/uploader.py:93 cps/uploader.py:102 +#: cps/admin.py:207 cps/editbooks.py:573 cps/editbooks.py:575 +#: cps/editbooks.py:615 cps/editbooks.py:658 cps/editbooks.py:1280 +#: cps/updater.py:615 cps/uploader.py:93 cps/uploader.py:102 msgid "Unknown" msgstr "Okänd" @@ -67,12 +67,12 @@ msgstr "Användargränssnitt konfiguration" msgid "Edit Users" msgstr "Redigera användare" -#: cps/admin.py:368 cps/opds.py:541 cps/templates/grid.html:14 +#: cps/admin.py:368 cps/opds.py:542 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "Alla" -#: cps/admin.py:395 cps/admin.py:1417 +#: cps/admin.py:395 cps/admin.py:1414 msgid "User not found" msgstr "Användaren hittades inte" @@ -89,7 +89,7 @@ msgstr "Visa alla" msgid "Malformed request" msgstr "Felaktig begäran" -#: cps/admin.py:471 cps/admin.py:2048 +#: cps/admin.py:471 cps/admin.py:2046 msgid "Guest Name can't be changed" msgstr "Gästnamn kan inte ändras" @@ -97,7 +97,7 @@ msgstr "Gästnamn kan inte ändras" msgid "Guest can't have this role" msgstr "Gäst kan inte ha den här rollen" -#: cps/admin.py:495 cps/admin.py:2002 +#: cps/admin.py:495 cps/admin.py:2000 msgid "No admin user remaining, can't remove admin role" msgstr "Ingen administratörsanvändare kvar, kan inte ta bort administratörsrollen" @@ -129,7 +129,7 @@ msgstr "Inget giltigt språk anges" msgid "No Valid Book Language Given" msgstr "Inget giltigt bokspråk anges" -#: cps/admin.py:535 cps/editbooks.py:457 +#: cps/admin.py:535 cps/editbooks.py:440 msgid "Parameter not found" msgstr "Parameter hittades inte" @@ -142,7 +142,7 @@ msgstr "Ogiltig roll" msgid "Invalid Restricted Column" msgstr "" -#: cps/admin.py:598 cps/admin.py:1873 +#: cps/admin.py:598 cps/admin.py:1871 msgid "Calibre-Web configuration updated" msgstr "Calibre-Web konfiguration uppdaterad" @@ -224,297 +224,297 @@ msgstr "Taggen hittades inte" msgid "Invalid Action" msgstr "Ogiltig åtgärd" -#: cps/admin.py:1123 +#: cps/admin.py:1120 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "client_secrets.json är inte konfigurerad för webbapplikation" -#: cps/admin.py:1168 +#: cps/admin.py:1165 msgid "Logfile Location is not Valid, Please Enter Correct Path" msgstr "Loggfilens plats är inte giltig, vänligen ange rätt sökväg" -#: cps/admin.py:1174 +#: cps/admin.py:1171 msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgstr "Åtkomstloggplatsens plats är inte giltig, vänligen ange rätt sökväg" -#: cps/admin.py:1208 +#: cps/admin.py:1205 msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgstr "Vänligen ange en LDAP-leverantör, port, DN och användarobjektidentifierare" -#: cps/admin.py:1214 +#: cps/admin.py:1211 #, fuzzy msgid "Please Enter a LDAP Service Account and Password" msgstr "Ange giltigt användarnamn för att återställa lösenordet" -#: cps/admin.py:1217 +#: cps/admin.py:1214 msgid "Please Enter a LDAP Service Account" msgstr "" -#: cps/admin.py:1222 +#: cps/admin.py:1219 #, python-format msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgstr "LDAP-gruppobjektfilter måste ha en \"%s\"-formatidentifierare" -#: cps/admin.py:1224 +#: cps/admin.py:1221 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "LDAP-gruppobjektfilter har omatchande parentes" -#: cps/admin.py:1228 +#: cps/admin.py:1225 #, python-format msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgstr "LDAP-användarobjektfilter måste ha en \"%s\"-formatidentifierare" -#: cps/admin.py:1230 +#: cps/admin.py:1227 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "LDAP-användarobjektfilter har omatchad parentes" -#: cps/admin.py:1237 +#: cps/admin.py:1234 #, python-format msgid "LDAP Member User Filter needs to Have One \"%s\" Format Identifier" msgstr "Användarfilter för LDAP-medlemmar måste ha en \"%s\"-formatidentifierare" -#: cps/admin.py:1239 +#: cps/admin.py:1236 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "Användarfilter för LDAP-medlemmar har omatchad parentes" -#: cps/admin.py:1246 +#: cps/admin.py:1243 msgid "LDAP CACertificate, Certificate or Key Location is not Valid, Please Enter Correct Path" msgstr "LDAP-certifikat, certifikat eller nyckelplats är inte giltigt, vänligen ange rätt sökväg" -#: cps/admin.py:1277 cps/templates/admin.html:53 +#: cps/admin.py:1274 cps/templates/admin.html:53 msgid "Add New User" msgstr "Lägg till ny användare" -#: cps/admin.py:1286 cps/templates/admin.html:100 +#: cps/admin.py:1283 cps/templates/admin.html:100 msgid "Edit Email Server Settings" msgstr "Ändra SMTP-inställningar" -#: cps/admin.py:1305 +#: cps/admin.py:1302 msgid "Success! Gmail Account Verified." msgstr "" -#: cps/admin.py:1325 cps/admin.py:1328 cps/admin.py:1713 cps/admin.py:1857 -#: cps/admin.py:1955 cps/admin.py:2076 cps/editbooks.py:243 -#: cps/editbooks.py:319 cps/editbooks.py:1242 cps/shelf.py:90 cps/shelf.py:150 +#: cps/admin.py:1322 cps/admin.py:1325 cps/admin.py:1710 cps/admin.py:1855 +#: cps/admin.py:1953 cps/admin.py:2074 cps/editbooks.py:226 +#: cps/editbooks.py:303 cps/editbooks.py:1242 cps/shelf.py:90 cps/shelf.py:150 #: cps/shelf.py:193 cps/shelf.py:243 cps/shelf.py:280 cps/shelf.py:354 -#: cps/shelf.py:468 cps/tasks/convert.py:150 cps/web.py:1520 +#: cps/shelf.py:468 cps/tasks/convert.py:153 cps/web.py:1520 #, python-format msgid "Oops! Database Error: %(error)s." msgstr "Databasfel: %(error)s." -#: cps/admin.py:1335 +#: cps/admin.py:1332 #, python-format msgid "Test e-mail queued for sending to %(email)s, please check Tasks for result" msgstr "Testa e-post i kö för att skicka till %(email)s, vänligen kontrollera Uppgifter för resultat" -#: cps/admin.py:1338 +#: cps/admin.py:1335 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "Det gick inte att skicka Testmeddelandet: %(res)s" -#: cps/admin.py:1340 +#: cps/admin.py:1337 msgid "Please configure your e-mail address first..." msgstr "Vänligen konfigurera din e-postadress först..." -#: cps/admin.py:1342 +#: cps/admin.py:1339 msgid "Email Server Settings updated" msgstr "E-postserverinställningar uppdaterade" -#: cps/admin.py:1365 cps/templates/admin.html:195 +#: cps/admin.py:1362 cps/templates/admin.html:195 msgid "Edit Scheduled Tasks Settings" msgstr "" -#: cps/admin.py:1377 +#: cps/admin.py:1374 msgid "Invalid start time for task specified" msgstr "" -#: cps/admin.py:1382 +#: cps/admin.py:1379 msgid "Invalid duration for task specified" msgstr "" -#: cps/admin.py:1392 +#: cps/admin.py:1389 msgid "Scheduled tasks settings updated" msgstr "" -#: cps/admin.py:1402 cps/admin.py:1451 cps/admin.py:2072 cps/web.py:1316 +#: cps/admin.py:1399 cps/admin.py:1448 cps/admin.py:2070 cps/web.py:1316 msgid "Oops! An unknown error occurred. Please try again later." msgstr "Ett okänt fel uppstod. Försök igen senare." -#: cps/admin.py:1406 +#: cps/admin.py:1403 msgid "Settings DB is not Writeable" msgstr "" -#: cps/admin.py:1436 cps/admin.py:2064 +#: cps/admin.py:1433 cps/admin.py:2062 #, python-format msgid "Edit User %(nick)s" msgstr "Redigera användaren %(nick)s" -#: cps/admin.py:1448 +#: cps/admin.py:1445 #, fuzzy, python-format msgid "Success! Password for user %(user)s reset" msgstr "Lösenord för användaren %(user)s återställd" -#: cps/admin.py:1454 +#: cps/admin.py:1451 #, fuzzy msgid "Oops! Please configure the SMTP mail settings." msgstr "Konfigurera SMTP-postinställningarna först..." -#: cps/admin.py:1465 +#: cps/admin.py:1462 msgid "Logfile viewer" msgstr "Visaren för loggfil" -#: cps/admin.py:1531 +#: cps/admin.py:1528 msgid "Requesting update package" msgstr "Begär uppdateringspaketet" -#: cps/admin.py:1532 +#: cps/admin.py:1529 msgid "Downloading update package" msgstr "Hämtar uppdateringspaketet" -#: cps/admin.py:1533 +#: cps/admin.py:1530 msgid "Unzipping update package" msgstr "Packar upp uppdateringspaketet" -#: cps/admin.py:1534 +#: cps/admin.py:1531 msgid "Replacing files" msgstr "Ersätta filer" -#: cps/admin.py:1535 +#: cps/admin.py:1532 msgid "Database connections are closed" msgstr "Databasanslutningarna är stängda" -#: cps/admin.py:1536 +#: cps/admin.py:1533 msgid "Stopping server" msgstr "Stoppar server" -#: cps/admin.py:1537 +#: cps/admin.py:1534 msgid "Update finished, please press okay and reload page" msgstr "Uppdatering klar, tryck på okej och uppdatera sidan" -#: cps/admin.py:1538 cps/admin.py:1539 cps/admin.py:1540 cps/admin.py:1541 -#: cps/admin.py:1542 cps/admin.py:1543 +#: cps/admin.py:1535 cps/admin.py:1536 cps/admin.py:1537 cps/admin.py:1538 +#: cps/admin.py:1539 cps/admin.py:1540 msgid "Update failed:" msgstr "Uppdateringen misslyckades:" -#: cps/admin.py:1538 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 +#: cps/admin.py:1535 cps/updater.py:391 cps/updater.py:626 cps/updater.py:628 msgid "HTTP Error" msgstr "HTTP-fel" -#: cps/admin.py:1539 cps/updater.py:391 cps/updater.py:628 +#: cps/admin.py:1536 cps/updater.py:393 cps/updater.py:630 msgid "Connection error" msgstr "Anslutningsfel" -#: cps/admin.py:1540 cps/updater.py:393 cps/updater.py:630 +#: cps/admin.py:1537 cps/updater.py:395 cps/updater.py:632 msgid "Timeout while establishing connection" msgstr "Tiden ute när du etablerade anslutning" -#: cps/admin.py:1541 cps/updater.py:395 cps/updater.py:632 +#: cps/admin.py:1538 cps/updater.py:397 cps/updater.py:634 msgid "General error" msgstr "Allmänt fel" -#: cps/admin.py:1542 +#: cps/admin.py:1539 #, fuzzy msgid "Update file could not be saved in temp dir" msgstr "Uppdateringsfilen kunde inte sparas i Temp Dir" -#: cps/admin.py:1543 +#: cps/admin.py:1540 msgid "Files could not be replaced during update" msgstr "" -#: cps/admin.py:1567 +#: cps/admin.py:1564 #, fuzzy msgid "Failed to extract at least One LDAP User" msgstr "Det gick inte att skapa minst en LDAP-användare" -#: cps/admin.py:1612 +#: cps/admin.py:1609 msgid "Failed to Create at Least One LDAP User" msgstr "Det gick inte att skapa minst en LDAP-användare" -#: cps/admin.py:1625 +#: cps/admin.py:1622 #, python-format msgid "Error: %(ldaperror)s" msgstr "Fel: %(ldaperror)s" -#: cps/admin.py:1629 +#: cps/admin.py:1626 msgid "Error: No user returned in response of LDAP server" msgstr "Fel: Ingen användare återges som svar på LDAP-servern" -#: cps/admin.py:1665 +#: cps/admin.py:1662 msgid "At Least One LDAP User Not Found in Database" msgstr "Minst en LDAP-användare hittades inte i databasen" -#: cps/admin.py:1667 +#: cps/admin.py:1664 msgid "{} User Successfully Imported" msgstr "{} användare har importerats" -#: cps/admin.py:1725 +#: cps/admin.py:1722 msgid "DB Location is not Valid, Please Enter Correct Path" msgstr "DB-plats är inte giltig, vänligen ange rätt sökväg" -#: cps/admin.py:1745 +#: cps/admin.py:1742 msgid "DB is not Writeable" msgstr "DB är inte skrivbar" -#: cps/admin.py:1761 +#: cps/admin.py:1758 msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgstr "Keyfile-platsen är inte giltig, vänligen ange rätt sökväg" -#: cps/admin.py:1765 +#: cps/admin.py:1762 msgid "Certfile Location is not Valid, Please Enter Correct Path" msgstr "Certfile-platsen är inte giltig, vänligen ange rätt sökväg" -#: cps/admin.py:1842 +#: cps/admin.py:1840 msgid "Password length has to be between 1 and 40" msgstr "" -#: cps/admin.py:1896 +#: cps/admin.py:1894 #, fuzzy msgid "Database Settings updated" msgstr "E-postserverinställningar uppdaterade" -#: cps/admin.py:1904 +#: cps/admin.py:1902 #, fuzzy msgid "Database Configuration" msgstr "Funktion konfiguration" -#: cps/admin.py:1919 cps/web.py:1290 +#: cps/admin.py:1917 cps/web.py:1290 msgid "Oops! Please complete all fields." msgstr "Fyll i alla fält!" -#: cps/admin.py:1928 +#: cps/admin.py:1926 msgid "E-mail is not from valid domain" msgstr "E-posten är inte från giltig domän" -#: cps/admin.py:1934 +#: cps/admin.py:1932 msgid "Add new user" msgstr "Lägg till ny användare" -#: cps/admin.py:1945 +#: cps/admin.py:1943 #, python-format msgid "User '%(user)s' created" msgstr "Användaren '%(user)s' skapad" -#: cps/admin.py:1951 +#: cps/admin.py:1949 msgid "Oops! An account already exists for this Email. or name." msgstr "Hittade ett befintligt konto för den här e-postadressen eller namnet." -#: cps/admin.py:1981 +#: cps/admin.py:1979 #, python-format msgid "User '%(nick)s' deleted" msgstr "Användaren '%(nick)s' borttagen" -#: cps/admin.py:1984 +#: cps/admin.py:1982 msgid "Can't delete Guest User" msgstr "Det går inte att ta bort gästanvändaren" -#: cps/admin.py:1987 +#: cps/admin.py:1985 msgid "No admin user remaining, can't delete user" msgstr "Ingen adminstratörsanvändare kvar, kan inte ta bort användaren" -#: cps/admin.py:2042 cps/web.py:1469 +#: cps/admin.py:2040 cps/web.py:1469 msgid "Email can't be empty and has to be a valid Email" msgstr "" -#: cps/admin.py:2068 +#: cps/admin.py:2066 #, python-format msgid "User '%(nick)s' updated" msgstr "Användaren '%(nick)s' uppdaterad" @@ -527,12 +527,12 @@ msgstr "inte installerad" msgid "Execution permissions missing" msgstr "Körningstillstånd saknas" -#: cps/db.py:756 cps/search.py:137 cps/web.py:747 +#: cps/db.py:768 cps/search.py:137 cps/web.py:747 #, fuzzy, python-format msgid "Custom Column No.%(column)d does not exist in calibre database" msgstr "Anpassad kolumn n.%(column)d finns inte i calibre-databasen" -#: cps/db.py:996 cps/templates/config_edit.html:203 +#: cps/db.py:1008 cps/templates/config_edit.html:203 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 #: cps/web.py:562 cps/web.py:596 cps/web.py:641 cps/web.py:681 cps/web.py:708 #: cps/web.py:989 cps/web.py:1019 cps/web.py:1064 cps/web.py:1092 @@ -540,100 +540,105 @@ msgstr "Anpassad kolumn n.%(column)d finns inte i calibre-databasen" msgid "None" msgstr "Ingen" -#: cps/editbooks.py:124 cps/editbooks.py:912 cps/web.py:529 cps/web.py:1561 -#: cps/web.py:1605 cps/web.py:1650 +#: cps/editbooks.py:108 cps/editbooks.py:929 cps/web.py:529 cps/web.py:1561 +#: cps/web.py:1606 cps/web.py:1651 msgid "Oops! Selected book is unavailable. File does not exist or is not accessible" msgstr "Hoppsan! Vald boktitel är inte tillgänglig. Filen finns inte eller är inte tillgänglig" -#: cps/editbooks.py:168 cps/editbooks.py:1263 +#: cps/editbooks.py:151 cps/editbooks.py:1263 msgid "User has no rights to upload cover" msgstr "" -#: cps/editbooks.py:188 cps/editbooks.py:733 +#: cps/editbooks.py:171 cps/editbooks.py:744 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "Identifierare är inte skiftlägeskänsliga, skriver över gammal identifierare" -#: cps/editbooks.py:230 +#: cps/editbooks.py:213 msgid "Metadata successfully updated" msgstr "Metadata uppdaterades" -#: cps/editbooks.py:248 +#: cps/editbooks.py:231 msgid "Error editing book: {}" msgstr "" -#: cps/editbooks.py:305 +#: cps/editbooks.py:289 #, python-format msgid "File %(file)s uploaded" msgstr "Filen %(file)s uppladdad" -#: cps/editbooks.py:333 +#: cps/editbooks.py:317 msgid "Source or destination format for conversion missing" msgstr "Källa eller målformat för konvertering saknas" -#: cps/editbooks.py:341 +#: cps/editbooks.py:325 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "Boken är i kö för konvertering till %(book_format)s" -#: cps/editbooks.py:345 +#: cps/editbooks.py:329 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "Det gick inte att konvertera den här boken: %(res)s" -#: cps/editbooks.py:652 +#: cps/editbooks.py:662 msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgstr "Uppladdad bok finns förmodligen i biblioteket, överväg att ändra innan du laddar upp nya: " -#: cps/editbooks.py:707 cps/editbooks.py:1043 +#: cps/editbooks.py:718 cps/editbooks.py:1049 #, fuzzy, python-format msgid "'%(langname)s' is not a valid language" msgstr "%(langname)s är inte ett giltigt språk" -#: cps/editbooks.py:745 cps/editbooks.py:1203 +#: cps/editbooks.py:756 cps/editbooks.py:1192 +#, fuzzy +msgid "File type isn't allowed to be uploaded to this server" +msgstr "Filändelsen '%(ext)s' får inte laddas upp till den här servern" + +#: cps/editbooks.py:762 cps/editbooks.py:1202 #, python-format msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgstr "Filändelsen '%(ext)s' får inte laddas upp till den här servern" -#: cps/editbooks.py:749 cps/editbooks.py:1207 +#: cps/editbooks.py:766 cps/editbooks.py:1206 msgid "File to be uploaded must have an extension" msgstr "Filen som ska laddas upp måste ha en ändelse" -#: cps/editbooks.py:757 +#: cps/editbooks.py:774 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "Filen %(filename)s kunde inte sparas i temp dir" -#: cps/editbooks.py:777 +#: cps/editbooks.py:794 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "Det gick inte att flytta omslagsfil %(file)s: %(error)s" -#: cps/editbooks.py:834 cps/editbooks.py:836 +#: cps/editbooks.py:851 cps/editbooks.py:853 msgid "Book Format Successfully Deleted" msgstr "Bokformat har tagits bort" -#: cps/editbooks.py:843 cps/editbooks.py:845 +#: cps/editbooks.py:860 cps/editbooks.py:862 msgid "Book Successfully Deleted" msgstr "Boken har tagits bort" -#: cps/editbooks.py:897 +#: cps/editbooks.py:914 msgid "You are missing permissions to delete books" msgstr "" -#: cps/editbooks.py:947 +#: cps/editbooks.py:964 msgid "edit metadata" msgstr "redigera metadata" -#: cps/editbooks.py:996 +#: cps/editbooks.py:1013 #, python-format msgid "%(seriesindex)s is not a valid number, skipping" msgstr "" -#: cps/editbooks.py:1198 +#: cps/editbooks.py:1197 msgid "User has no rights to upload additional file formats" msgstr "" -#: cps/editbooks.py:1219 +#: cps/editbooks.py:1218 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "Det gick inte att skapa sökväg %(path)s (behörighet nekad)." @@ -652,7 +657,7 @@ msgstr "Filformatet %(ext)s lades till %(book)s" msgid "Google Drive setup not completed, try to deactivate and activate Google Drive again" msgstr "Installationen av Google Drive är inte klar, försök att inaktivera och aktivera Google Drive igen" -#: cps/gdrive.py:95 +#: cps/gdrive.py:96 msgid "Callback domain is not verified, please follow steps to verify domain in google developer console" msgstr "Återuppringningsdomänen är inte verifierad, följ stegen för att verifiera domänen i Google utvecklarkonsol" @@ -661,7 +666,7 @@ msgstr "Återuppringningsdomänen är inte verifierad, följ stegen för att ver msgid "%(format)s format not found for book id: %(book)d" msgstr "%(format)s formatet hittades inte för bok-id: %(book)d" -#: cps/helper.py:93 cps/tasks/convert.py:86 +#: cps/helper.py:93 cps/tasks/convert.py:89 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "%(format)s hittades inte på Google Drive: %(fn)s" @@ -738,126 +743,122 @@ msgstr "Borttagning av boken %(id)s misslyckades: %(message)s" msgid "Deleting book %(id)s from database only, book path in database not valid: %(path)s" msgstr "Borttagning av boken %(id)s, boksökväg inte giltig: %(path)s" -#: cps/helper.py:452 +#: cps/helper.py:465 #, fuzzy, python-format msgid "Rename author 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" -#: cps/helper.py:524 cps/helper.py:533 +#: cps/helper.py:536 cps/helper.py:545 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "Filen %(file)s hittades inte på Google Drive" -#: cps/helper.py:567 +#: cps/helper.py:587 #, python-format 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" -#: cps/helper.py:587 -msgid "Error in rename file in path: {}" -msgstr "" - -#: cps/helper.py:605 +#: cps/helper.py:625 #, python-format msgid "Book path %(path)s not found on Google Drive" msgstr "Boksökvägen %(path)s hittades inte på Google Drive" -#: cps/helper.py:670 +#: cps/helper.py:685 msgid "Found an existing account for this Email address" msgstr "" -#: cps/helper.py:678 +#: cps/helper.py:693 msgid "This username is already taken" msgstr "Detta användarnamn är redan taget" -#: cps/helper.py:690 +#: cps/helper.py:705 #, fuzzy msgid "Invalid Email address format" msgstr "Ogiltigt e-postadressformat" -#: cps/helper.py:710 +#: cps/helper.py:726 msgid "Password doesn't comply with password validation rules" msgstr "" -#: cps/helper.py:859 +#: cps/helper.py:873 msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "" -#: cps/helper.py:869 +#: cps/helper.py:883 msgid "Error Downloading Cover" msgstr "Fel vid hämtning av omslaget" -#: cps/helper.py:872 +#: cps/helper.py:886 msgid "Cover Format Error" msgstr "Fel på omslagsformat" -#: cps/helper.py:875 +#: cps/helper.py:889 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "" -#: cps/helper.py:885 +#: cps/helper.py:899 msgid "Failed to create path for cover" msgstr "Det gick inte att skapa sökväg för omslag" -#: cps/helper.py:901 +#: cps/helper.py:915 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "Omslagsfilen är inte en giltig bildfil eller kunde inte lagras" -#: cps/helper.py:912 +#: cps/helper.py:926 msgid "Only jpg/jpeg/png/webp/bmp files are supported as coverfile" msgstr "Endast jpg/jpeg/png/webp/bmp-filer stöds som omslagsfil" -#: cps/helper.py:924 +#: cps/helper.py:938 msgid "Invalid cover file content" msgstr "" -#: cps/helper.py:928 +#: cps/helper.py:942 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "Endast jpg/jpeg-filer stöds som omslagsfil" -#: cps/helper.py:999 cps/helper.py:1156 +#: cps/helper.py:1014 cps/helper.py:1171 #, fuzzy msgid "Cover" msgstr "Upptäck" -#: cps/helper.py:1016 +#: cps/helper.py:1031 msgid "UnRar binary file not found" msgstr "UnRar binär fil hittades inte" -#: cps/helper.py:1027 +#: cps/helper.py:1042 #, fuzzy msgid "Error executing UnRar" msgstr "Fel vid körning av UnRar" -#: cps/helper.py:1035 +#: cps/helper.py:1050 msgid "Could not find the specified directory" msgstr "" -#: cps/helper.py:1038 +#: cps/helper.py:1053 msgid "Please specify a directory, not a file" msgstr "" -#: cps/helper.py:1052 +#: cps/helper.py:1067 #, fuzzy msgid "Calibre binaries not viable" msgstr "DB är inte skrivbar" -#: cps/helper.py:1061 +#: cps/helper.py:1076 #, python-format msgid "Missing calibre binaries: %(missing)s" msgstr "" -#: cps/helper.py:1063 +#: cps/helper.py:1078 #, fuzzy, python-format msgid "Missing executable permissions: %(missing)s" msgstr "Körningstillstånd saknas" -#: cps/helper.py:1068 +#: cps/helper.py:1083 #, fuzzy msgid "Error executing Calibre" msgstr "Fel vid körning av UnRar" -#: cps/helper.py:1158 cps/templates/admin.html:216 +#: cps/helper.py:1173 cps/templates/admin.html:216 msgid "Queue all books for metadata backup" msgstr "" @@ -904,35 +905,35 @@ msgstr "Sluta länka till %(oauth)s misslyckades" msgid "Not Linked to %(oauth)s" msgstr "Inte länkad till %(oauth)s" -#: cps/oauth_bb.py:261 +#: cps/oauth_bb.py:262 msgid "Failed to log in with GitHub." msgstr "Det gick inte att logga in med GitHub." -#: cps/oauth_bb.py:267 +#: cps/oauth_bb.py:268 msgid "Failed to fetch user info from GitHub." msgstr "Det gick inte att hämta användarinformation från GitHub." -#: cps/oauth_bb.py:279 +#: cps/oauth_bb.py:280 msgid "Failed to log in with Google." msgstr "Det gick inte att logga in med Google." -#: cps/oauth_bb.py:285 +#: cps/oauth_bb.py:286 msgid "Failed to fetch user info from Google." msgstr "Det gick inte att hämta användarinformation från Google." -#: cps/oauth_bb.py:332 +#: cps/oauth_bb.py:334 msgid "GitHub Oauth error, please retry later." msgstr "GitHub Oauth-fel, försök igen senare." -#: cps/oauth_bb.py:335 +#: cps/oauth_bb.py:337 msgid "GitHub Oauth error: {}" msgstr "GitHub Oauth-fel: {}" -#: cps/oauth_bb.py:356 +#: cps/oauth_bb.py:358 msgid "Google Oauth error, please retry later." msgstr "Google Oauth-fel, försök igen senare." -#: cps/oauth_bb.py:359 +#: cps/oauth_bb.py:361 msgid "Google Oauth error: {}" msgstr "Google Oauth-fel: {}" @@ -1293,32 +1294,32 @@ msgstr "" msgid "Unknown Status" msgstr "Okänd status" -#: cps/updater.py:431 cps/updater.py:442 cps/updater.py:543 cps/updater.py:558 +#: cps/updater.py:433 cps/updater.py:444 cps/updater.py:545 cps/updater.py:560 msgid "Unexpected data while reading update information" msgstr "Oväntade data vid läsning av uppdateringsinformation" -#: cps/updater.py:438 cps/updater.py:550 +#: cps/updater.py:440 cps/updater.py:552 msgid "No update available. You already have the latest version installed" msgstr "Ingen uppdatering tillgänglig. Du har redan den senaste versionen installerad" -#: cps/updater.py:456 +#: cps/updater.py:458 msgid "A new update is available. Click on the button below to update to the latest version." msgstr "En ny uppdatering är tillgänglig. Klicka på knappen nedan för att uppdatera till den senaste versionen." -#: cps/updater.py:474 +#: cps/updater.py:476 msgid "Could not fetch update information" msgstr "Kunde inte hämta uppdateringsinformation" -#: cps/updater.py:484 +#: cps/updater.py:486 msgid "Click on the button below to update to the latest stable version." msgstr "Klicka på knappen nedan för att uppdatera till den senaste stabila versionen." -#: cps/updater.py:493 cps/updater.py:507 cps/updater.py:518 +#: cps/updater.py:495 cps/updater.py:509 cps/updater.py:520 #, python-format msgid "A new update is available. Click on the button below to update to version: %(version)s" msgstr "En ny uppdatering är tillgänglig. Klicka på knappen nedan för att uppdatera till version: %(version)s" -#: cps/updater.py:536 +#: cps/updater.py:538 msgid "No release information available" msgstr "Ingen versionsinformation tillgänglig" @@ -1497,50 +1498,50 @@ msgstr "Profilen uppdaterad" msgid "Oops! An account already exists for this Email." msgstr "Hittade ett befintligt konto för den här e-postadressen" -#: cps/services/gmail.py:58 +#: cps/services/gmail.py:59 msgid "Found no valid gmail.json file with OAuth information" msgstr "Hittade ingen giltig gmail.json-fil med OAuth-information" -#: cps/tasks/convert.py:105 +#: cps/tasks/convert.py:108 #, fuzzy, python-format msgid "%(book)s send to E-Reader" msgstr "Skicka till Kindle" -#: cps/tasks/convert.py:167 +#: cps/tasks/convert.py:170 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "calibre e-bokkonverterings %(tool)s hittades inte" -#: cps/tasks/convert.py:201 +#: cps/tasks/convert.py:204 #, python-format msgid "%(format)s format not found on disk" msgstr "%(format)s-format hittades inte på disken" -#: cps/tasks/convert.py:205 +#: cps/tasks/convert.py:208 msgid "Ebook converter failed with unknown error" msgstr "E-bokkonverteraren misslyckades med okänt fel" -#: cps/tasks/convert.py:224 +#: cps/tasks/convert.py:227 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "Kepubify-konverteraren misslyckades: %(error)s" -#: cps/tasks/convert.py:245 +#: cps/tasks/convert.py:248 #, python-format msgid "Converted file not found or more than one file in folder %(folder)s" msgstr "Konverterad fil hittades inte eller mer än en fil i mappen %(folder)s" -#: cps/tasks/convert.py:287 +#: cps/tasks/convert.py:291 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "E-bokkonverteraren misslyckades: %(error)s" -#: cps/tasks/convert.py:310 +#: cps/tasks/convert.py:314 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "calibre misslyckades med fel: %(error)s" -#: cps/tasks/convert.py:315 +#: cps/tasks/convert.py:319 msgid "Convert" msgstr "" @@ -1552,7 +1553,7 @@ msgstr "" msgid "E-mail" msgstr "" -#: cps/tasks/metadata_backup.py:33 +#: cps/tasks/metadata_backup.py:34 #, fuzzy msgid "Backing up Metadata" msgstr "redigera metadata" @@ -1566,20 +1567,20 @@ msgstr "" msgid "Generated %(count)s cover thumbnails" msgstr "" -#: cps/tasks/thumbnail.py:230 cps/tasks/thumbnail.py:443 -#: cps/tasks/thumbnail.py:511 +#: cps/tasks/thumbnail.py:231 cps/tasks/thumbnail.py:444 +#: cps/tasks/thumbnail.py:512 msgid "Cover Thumbnails" msgstr "" -#: cps/tasks/thumbnail.py:289 +#: cps/tasks/thumbnail.py:290 msgid "Generated {0} series thumbnails" msgstr "" -#: cps/tasks/thumbnail.py:454 +#: cps/tasks/thumbnail.py:455 msgid "Clearing cover thumbnail cache" msgstr "" -#: cps/tasks/upload.py:38 cps/templates/admin.html:20 +#: cps/tasks/upload.py:39 cps/templates/admin.html:20 #: cps/templates/layout.html:81 cps/templates/user_table.html:145 msgid "Upload" msgstr "Ladda upp" @@ -1828,7 +1829,7 @@ msgstr "Ok" #: cps/templates/admin.html:259 cps/templates/admin.html:273 #: cps/templates/book_edit.html:214 cps/templates/book_table.html:127 -#: cps/templates/config_db.html:66 cps/templates/config_edit.html:423 +#: cps/templates/config_db.html:66 cps/templates/config_edit.html:427 #: cps/templates/config_view_edit.html:175 cps/templates/detail.html:342 #: cps/templates/modal_dialogs.html:64 cps/templates/modal_dialogs.html:99 #: cps/templates/modal_dialogs.html:117 cps/templates/modal_dialogs.html:135 @@ -2014,7 +2015,7 @@ msgid "Fetch Metadata" msgstr "Hämta metadata" #: cps/templates/book_edit.html:213 cps/templates/config_db.html:65 -#: cps/templates/config_edit.html:422 cps/templates/config_view_edit.html:174 +#: cps/templates/config_edit.html:426 cps/templates/config_view_edit.html:174 #: cps/templates/email_edit.html:65 cps/templates/schedule_edit.html:44 #: cps/templates/shelf_edit.html:25 cps/templates/shelf_order.html:41 #: cps/templates/user_edit.html:142 @@ -2489,47 +2490,51 @@ msgid "Configure Backend for Limiter" msgstr "" #: cps/templates/config_edit.html:376 -msgid "Options for Limiter" +msgid "Options for Limiter Backend" msgstr "" -#: cps/templates/config_edit.html:381 +#: cps/templates/config_edit.html:382 +msgid "Check if file extensions matches file content on upload" +msgstr "" + +#: cps/templates/config_edit.html:385 msgid "Session protection" msgstr "" -#: cps/templates/config_edit.html:383 +#: cps/templates/config_edit.html:387 msgid "Basic" msgstr "" -#: cps/templates/config_edit.html:384 +#: cps/templates/config_edit.html:388 msgid "Strong" msgstr "" -#: cps/templates/config_edit.html:389 +#: cps/templates/config_edit.html:393 #, fuzzy msgid "User Password policy" msgstr "Återställ användarlösenordet" -#: cps/templates/config_edit.html:393 +#: cps/templates/config_edit.html:397 msgid "Minimum password length" msgstr "" -#: cps/templates/config_edit.html:398 +#: cps/templates/config_edit.html:402 msgid "Enforce number" msgstr "" -#: cps/templates/config_edit.html:402 +#: cps/templates/config_edit.html:406 msgid "Enforce lowercase characters" msgstr "" -#: cps/templates/config_edit.html:406 +#: cps/templates/config_edit.html:410 msgid "Enforce uppercase characters" msgstr "" -#: cps/templates/config_edit.html:410 +#: cps/templates/config_edit.html:414 msgid "Enforce characters (needed For Chinese/Japanese/Korean Characters)" msgstr "" -#: cps/templates/config_edit.html:414 +#: cps/templates/config_edit.html:418 msgid "Enforce special characters" msgstr "" @@ -2661,6 +2666,11 @@ msgstr "Markera som oläst" msgid "Mark As Read" msgstr "Markera som läst" +#: cps/templates/detail.html:254 +#, fuzzy +msgid "Mark Book as Read or Unread" +msgstr "Markera som oläst" + #: cps/templates/detail.html:254 cps/templates/listenmp3.html:159 msgid "Read" msgstr "Läst" @@ -2673,8 +2683,13 @@ msgstr "Återställ från arkivet" msgid "Add to archive" msgstr "Lägg till i arkivet" -#: cps/templates/detail.html:267 cps/templates/listenmp3.html:167 -msgid "Archived" +#: cps/templates/detail.html:267 +msgid "Mark Book as archived or not, to hide it in Calibre-Web and delete it from Kobo Reader" +msgstr "" + +#: cps/templates/detail.html:267 +#, fuzzy +msgid "Archive" msgstr "Arkiverad" #: cps/templates/detail.html:278 cps/templates/listenmp3.html:177 @@ -2956,6 +2971,10 @@ msgstr "Bokdetaljer" msgid "Grid" msgstr "" +#: cps/templates/listenmp3.html:167 +msgid "Archived" +msgstr "Arkiverad" + #: cps/templates/login.html:18 msgid "Remember Me" msgstr "Kom ihåg mig" diff --git a/cps/translations/tr/LC_MESSAGES/messages.mo b/cps/translations/tr/LC_MESSAGES/messages.mo index ac1e5b16..a785ea3f 100644 Binary files a/cps/translations/tr/LC_MESSAGES/messages.mo and b/cps/translations/tr/LC_MESSAGES/messages.mo differ diff --git a/cps/translations/tr/LC_MESSAGES/messages.po b/cps/translations/tr/LC_MESSAGES/messages.po index 3a7d6e46..c844da1a 100644 --- a/cps/translations/tr/LC_MESSAGES/messages.po +++ b/cps/translations/tr/LC_MESSAGES/messages.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Calibre-Web\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2024-06-09 12:26+0200\n" +"POT-Creation-Date: 2024-06-30 12:19+0200\n" "PO-Revision-Date: 2020-04-23 22:47+0300\n" "Last-Translator: iz \n" "Language: tr\n" @@ -16,7 +16,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.11.0\n" +"Generated-By: Babel 2.13.1\n" #: cps/about.py:84 msgid "Statistics" @@ -45,9 +45,9 @@ msgstr "" msgid "Success! Books queued for Metadata Backup, please check Tasks for result" msgstr "%(eReadermail)s'a gönderilmek üzere başarıyla sıraya alındı" -#: cps/admin.py:207 cps/editbooks.py:591 cps/editbooks.py:593 -#: cps/editbooks.py:631 cps/editbooks.py:648 cps/editbooks.py:1280 -#: cps/updater.py:613 cps/uploader.py:93 cps/uploader.py:102 +#: cps/admin.py:207 cps/editbooks.py:573 cps/editbooks.py:575 +#: cps/editbooks.py:615 cps/editbooks.py:658 cps/editbooks.py:1280 +#: cps/updater.py:615 cps/uploader.py:93 cps/uploader.py:102 msgid "Unknown" msgstr "Bilinmeyen" @@ -67,12 +67,12 @@ msgstr "Arayüz Ayarları" msgid "Edit Users" msgstr "" -#: cps/admin.py:368 cps/opds.py:541 cps/templates/grid.html:14 +#: cps/admin.py:368 cps/opds.py:542 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "Tümü" -#: cps/admin.py:395 cps/admin.py:1417 +#: cps/admin.py:395 cps/admin.py:1414 msgid "User not found" msgstr "" @@ -89,7 +89,7 @@ msgstr "" msgid "Malformed request" msgstr "" -#: cps/admin.py:471 cps/admin.py:2048 +#: cps/admin.py:471 cps/admin.py:2046 msgid "Guest Name can't be changed" msgstr "" @@ -97,7 +97,7 @@ msgstr "" msgid "Guest can't have this role" msgstr "" -#: cps/admin.py:495 cps/admin.py:2002 +#: cps/admin.py:495 cps/admin.py:2000 msgid "No admin user remaining, can't remove admin role" msgstr "" @@ -129,7 +129,7 @@ msgstr "" msgid "No Valid Book Language Given" msgstr "" -#: cps/admin.py:535 cps/editbooks.py:457 +#: cps/admin.py:535 cps/editbooks.py:440 msgid "Parameter not found" msgstr "" @@ -141,7 +141,7 @@ msgstr "" msgid "Invalid Restricted Column" msgstr "" -#: cps/admin.py:598 cps/admin.py:1873 +#: cps/admin.py:598 cps/admin.py:1871 msgid "Calibre-Web configuration updated" msgstr "Calibre-Web yapılandırması güncellendi" @@ -221,297 +221,297 @@ msgstr "" msgid "Invalid Action" msgstr "" -#: cps/admin.py:1123 +#: cps/admin.py:1120 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "" -#: cps/admin.py:1168 +#: cps/admin.py:1165 msgid "Logfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1174 +#: cps/admin.py:1171 msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1208 +#: cps/admin.py:1205 msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgstr "" -#: cps/admin.py:1214 +#: cps/admin.py:1211 #, fuzzy msgid "Please Enter a LDAP Service Account and Password" msgstr "Şifrenizi sıfırlayabilmek için lütfen geçerli bir kullanıcı adı giriniz" -#: cps/admin.py:1217 +#: cps/admin.py:1214 msgid "Please Enter a LDAP Service Account" msgstr "" -#: cps/admin.py:1222 +#: cps/admin.py:1219 #, python-format msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1224 +#: cps/admin.py:1221 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1228 +#: cps/admin.py:1225 #, python-format msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1230 +#: cps/admin.py:1227 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1237 +#: cps/admin.py:1234 #, python-format msgid "LDAP Member User Filter needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1239 +#: cps/admin.py:1236 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1246 +#: cps/admin.py:1243 msgid "LDAP CACertificate, Certificate or Key Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1277 cps/templates/admin.html:53 +#: cps/admin.py:1274 cps/templates/admin.html:53 msgid "Add New User" msgstr "" -#: cps/admin.py:1286 cps/templates/admin.html:100 +#: cps/admin.py:1283 cps/templates/admin.html:100 msgid "Edit Email Server Settings" msgstr "" -#: cps/admin.py:1305 +#: cps/admin.py:1302 msgid "Success! Gmail Account Verified." msgstr "" -#: cps/admin.py:1325 cps/admin.py:1328 cps/admin.py:1713 cps/admin.py:1857 -#: cps/admin.py:1955 cps/admin.py:2076 cps/editbooks.py:243 -#: cps/editbooks.py:319 cps/editbooks.py:1242 cps/shelf.py:90 cps/shelf.py:150 +#: cps/admin.py:1322 cps/admin.py:1325 cps/admin.py:1710 cps/admin.py:1855 +#: cps/admin.py:1953 cps/admin.py:2074 cps/editbooks.py:226 +#: cps/editbooks.py:303 cps/editbooks.py:1242 cps/shelf.py:90 cps/shelf.py:150 #: cps/shelf.py:193 cps/shelf.py:243 cps/shelf.py:280 cps/shelf.py:354 -#: cps/shelf.py:468 cps/tasks/convert.py:150 cps/web.py:1520 +#: cps/shelf.py:468 cps/tasks/convert.py:153 cps/web.py:1520 #, python-format msgid "Oops! Database Error: %(error)s." msgstr "" -#: cps/admin.py:1335 +#: cps/admin.py:1332 #, python-format msgid "Test e-mail queued for sending to %(email)s, please check Tasks for result" msgstr "" -#: cps/admin.py:1338 +#: cps/admin.py:1335 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "Deneme e-postası gönderilirken bir hata oluştu: %(res)s" -#: cps/admin.py:1340 +#: cps/admin.py:1337 msgid "Please configure your e-mail address first..." msgstr "Lütfen önce e-posta adresinizi ayarlayın..." -#: cps/admin.py:1342 +#: cps/admin.py:1339 msgid "Email Server Settings updated" msgstr "E-posta sunucusu ayarları güncellendi" -#: cps/admin.py:1365 cps/templates/admin.html:195 +#: cps/admin.py:1362 cps/templates/admin.html:195 msgid "Edit Scheduled Tasks Settings" msgstr "" -#: cps/admin.py:1377 +#: cps/admin.py:1374 msgid "Invalid start time for task specified" msgstr "" -#: cps/admin.py:1382 +#: cps/admin.py:1379 msgid "Invalid duration for task specified" msgstr "" -#: cps/admin.py:1392 +#: cps/admin.py:1389 msgid "Scheduled tasks settings updated" msgstr "" -#: cps/admin.py:1402 cps/admin.py:1451 cps/admin.py:2072 cps/web.py:1316 +#: cps/admin.py:1399 cps/admin.py:1448 cps/admin.py:2070 cps/web.py:1316 msgid "Oops! An unknown error occurred. Please try again later." msgstr "Bilinmeyen bir hata oluştu. Lütfen daha sonra tekrar deneyiniz." -#: cps/admin.py:1406 +#: cps/admin.py:1403 msgid "Settings DB is not Writeable" msgstr "" -#: cps/admin.py:1436 cps/admin.py:2064 +#: cps/admin.py:1433 cps/admin.py:2062 #, python-format msgid "Edit User %(nick)s" msgstr "%(nick)s kullanıcısını düzenle" -#: cps/admin.py:1448 +#: cps/admin.py:1445 #, fuzzy, python-format msgid "Success! Password for user %(user)s reset" msgstr "%(user)s kullanıcısının şifresi sıfırlandı" -#: cps/admin.py:1454 +#: cps/admin.py:1451 #, fuzzy msgid "Oops! Please configure the SMTP mail settings." msgstr "Lütfen önce SMTP e-posta ayarlarını ayarlayın..." -#: cps/admin.py:1465 +#: cps/admin.py:1462 msgid "Logfile viewer" msgstr "Log dosyası görüntüleyici" -#: cps/admin.py:1531 +#: cps/admin.py:1528 msgid "Requesting update package" msgstr "Güncelleme paketi isteniyor" -#: cps/admin.py:1532 +#: cps/admin.py:1529 msgid "Downloading update package" msgstr "Güncelleme paketi indiriliyor" -#: cps/admin.py:1533 +#: cps/admin.py:1530 msgid "Unzipping update package" msgstr "Güncelleme paketi ayıklanıyor" -#: cps/admin.py:1534 +#: cps/admin.py:1531 msgid "Replacing files" msgstr "Dosyalar değiştiriliyor" -#: cps/admin.py:1535 +#: cps/admin.py:1532 msgid "Database connections are closed" msgstr "Veritabanı bağlantıları kapalı" -#: cps/admin.py:1536 +#: cps/admin.py:1533 msgid "Stopping server" msgstr "Sunucu durduruyor" -#: cps/admin.py:1537 +#: cps/admin.py:1534 msgid "Update finished, please press okay and reload page" msgstr "Güncelleme tamamlandı, sayfayı yenilemek için lütfen Tamam'a tıklayınız" -#: cps/admin.py:1538 cps/admin.py:1539 cps/admin.py:1540 cps/admin.py:1541 -#: cps/admin.py:1542 cps/admin.py:1543 +#: cps/admin.py:1535 cps/admin.py:1536 cps/admin.py:1537 cps/admin.py:1538 +#: cps/admin.py:1539 cps/admin.py:1540 msgid "Update failed:" msgstr "Güncelleme başarısız:" -#: cps/admin.py:1538 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 +#: cps/admin.py:1535 cps/updater.py:391 cps/updater.py:626 cps/updater.py:628 msgid "HTTP Error" msgstr "HTTP Hatası" -#: cps/admin.py:1539 cps/updater.py:391 cps/updater.py:628 +#: cps/admin.py:1536 cps/updater.py:393 cps/updater.py:630 msgid "Connection error" msgstr "Bağlantı hatası" -#: cps/admin.py:1540 cps/updater.py:393 cps/updater.py:630 +#: cps/admin.py:1537 cps/updater.py:395 cps/updater.py:632 msgid "Timeout while establishing connection" msgstr "Bağlantı kurulmaya çalışırken zaman aşımına uğradı" -#: cps/admin.py:1541 cps/updater.py:395 cps/updater.py:632 +#: cps/admin.py:1538 cps/updater.py:397 cps/updater.py:634 msgid "General error" msgstr "Genel hata" -#: cps/admin.py:1542 +#: cps/admin.py:1539 #, fuzzy msgid "Update file could not be saved in temp dir" msgstr "%(filename)s dosyası geçici dizine kaydedilemedi" -#: cps/admin.py:1543 +#: cps/admin.py:1540 msgid "Files could not be replaced during update" msgstr "" -#: cps/admin.py:1567 +#: cps/admin.py:1564 msgid "Failed to extract at least One LDAP User" msgstr "" -#: cps/admin.py:1612 +#: cps/admin.py:1609 msgid "Failed to Create at Least One LDAP User" msgstr "" -#: cps/admin.py:1625 +#: cps/admin.py:1622 #, python-format msgid "Error: %(ldaperror)s" msgstr "" -#: cps/admin.py:1629 +#: cps/admin.py:1626 msgid "Error: No user returned in response of LDAP server" msgstr "" -#: cps/admin.py:1665 +#: cps/admin.py:1662 msgid "At Least One LDAP User Not Found in Database" msgstr "" -#: cps/admin.py:1667 +#: cps/admin.py:1664 msgid "{} User Successfully Imported" msgstr "" -#: cps/admin.py:1725 +#: cps/admin.py:1722 msgid "DB Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1745 +#: cps/admin.py:1742 msgid "DB is not Writeable" msgstr "" -#: cps/admin.py:1761 +#: cps/admin.py:1758 msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1765 +#: cps/admin.py:1762 msgid "Certfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1842 +#: cps/admin.py:1840 msgid "Password length has to be between 1 and 40" msgstr "" -#: cps/admin.py:1896 +#: cps/admin.py:1894 #, fuzzy msgid "Database Settings updated" msgstr "E-posta sunucusu ayarları güncellendi" -#: cps/admin.py:1904 +#: cps/admin.py:1902 #, fuzzy msgid "Database Configuration" msgstr "Özellik Yapılandırması" -#: cps/admin.py:1919 cps/web.py:1290 +#: cps/admin.py:1917 cps/web.py:1290 msgid "Oops! Please complete all fields." msgstr "Lütfen tüm alanları doldurun!" -#: cps/admin.py:1928 +#: cps/admin.py:1926 msgid "E-mail is not from valid domain" msgstr "E-posta izin verilen bir servisten değil" -#: cps/admin.py:1934 +#: cps/admin.py:1932 msgid "Add new user" msgstr "Yeni kullanıcı ekle" -#: cps/admin.py:1945 +#: cps/admin.py:1943 #, python-format msgid "User '%(user)s' created" msgstr "'%(user)s' kullanıcısı oluşturuldu" -#: cps/admin.py:1951 +#: cps/admin.py:1949 #, fuzzy msgid "Oops! An account already exists for this Email. or name." msgstr "Bu e-posta adresi veya kullanıcı adı için zaten bir hesap var." -#: cps/admin.py:1981 +#: cps/admin.py:1979 #, python-format msgid "User '%(nick)s' deleted" msgstr "Kullanıcı '%(nick)s' silindi" -#: cps/admin.py:1984 +#: cps/admin.py:1982 msgid "Can't delete Guest User" msgstr "" -#: cps/admin.py:1987 +#: cps/admin.py:1985 msgid "No admin user remaining, can't delete user" msgstr "Başka yönetici kullanıcı olmadığından silinemedi" -#: cps/admin.py:2042 cps/web.py:1469 +#: cps/admin.py:2040 cps/web.py:1469 msgid "Email can't be empty and has to be a valid Email" msgstr "" -#: cps/admin.py:2068 +#: cps/admin.py:2066 #, python-format msgid "User '%(nick)s' updated" msgstr "'%(nick)s' kullanıcısı güncellendi" @@ -524,12 +524,12 @@ msgstr "yüklü değil" msgid "Execution permissions missing" msgstr "" -#: cps/db.py:756 cps/search.py:137 cps/web.py:747 +#: cps/db.py:768 cps/search.py:137 cps/web.py:747 #, python-format msgid "Custom Column No.%(column)d does not exist in calibre database" msgstr "" -#: cps/db.py:996 cps/templates/config_edit.html:203 +#: cps/db.py:1008 cps/templates/config_edit.html:203 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 #: cps/web.py:562 cps/web.py:596 cps/web.py:641 cps/web.py:681 cps/web.py:708 #: cps/web.py:989 cps/web.py:1019 cps/web.py:1064 cps/web.py:1092 @@ -537,100 +537,105 @@ msgstr "" msgid "None" msgstr "Hiçbiri" -#: cps/editbooks.py:124 cps/editbooks.py:912 cps/web.py:529 cps/web.py:1561 -#: cps/web.py:1605 cps/web.py:1650 +#: cps/editbooks.py:108 cps/editbooks.py:929 cps/web.py:529 cps/web.py:1561 +#: cps/web.py:1606 cps/web.py:1651 msgid "Oops! Selected book is unavailable. File does not exist or is not accessible" msgstr "" -#: cps/editbooks.py:168 cps/editbooks.py:1263 +#: cps/editbooks.py:151 cps/editbooks.py:1263 msgid "User has no rights to upload cover" msgstr "" -#: cps/editbooks.py:188 cps/editbooks.py:733 +#: cps/editbooks.py:171 cps/editbooks.py:744 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "" -#: cps/editbooks.py:230 +#: cps/editbooks.py:213 msgid "Metadata successfully updated" msgstr "Metaveri başarıyla güncellendi" -#: cps/editbooks.py:248 +#: cps/editbooks.py:231 msgid "Error editing book: {}" msgstr "" -#: cps/editbooks.py:305 +#: cps/editbooks.py:289 #, python-format msgid "File %(file)s uploaded" msgstr "%(file)s dosyası yüklendi" -#: cps/editbooks.py:333 +#: cps/editbooks.py:317 msgid "Source or destination format for conversion missing" msgstr "Dönüştürme için kaynak ya da hedef biçimi eksik" -#: cps/editbooks.py:341 +#: cps/editbooks.py:325 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "eKitap %(book_format)s formatlarına dönüştürülmek üzere başarıyla sıraya alındı" -#: cps/editbooks.py:345 +#: cps/editbooks.py:329 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "Bu eKitabı dönüştürürken bir hata oluştu: %(res)s" -#: cps/editbooks.py:652 +#: cps/editbooks.py:662 msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgstr "Yüklenen eKitap muhtemelen kitaplıkta zaten var. Yenisini yüklemeden değiştirmeyi düşünün: " -#: cps/editbooks.py:707 cps/editbooks.py:1043 +#: cps/editbooks.py:718 cps/editbooks.py:1049 #, fuzzy, python-format msgid "'%(langname)s' is not a valid language" msgstr "%(langname)s geçerli bir dil değil" -#: cps/editbooks.py:745 cps/editbooks.py:1203 +#: cps/editbooks.py:756 cps/editbooks.py:1192 +#, fuzzy +msgid "File type isn't allowed to be uploaded to this server" +msgstr "'%(ext)s' uzantılı dosyaların bu sunucuya yüklenmesine izin verilmiyor" + +#: cps/editbooks.py:762 cps/editbooks.py:1202 #, python-format msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgstr "'%(ext)s' uzantılı dosyaların bu sunucuya yüklenmesine izin verilmiyor" -#: cps/editbooks.py:749 cps/editbooks.py:1207 +#: cps/editbooks.py:766 cps/editbooks.py:1206 msgid "File to be uploaded must have an extension" msgstr "Yüklenecek dosyanın mutlaka bir uzantısı olması gerekli" -#: cps/editbooks.py:757 +#: cps/editbooks.py:774 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "%(filename)s dosyası geçici dizine kaydedilemedi" -#: cps/editbooks.py:777 +#: cps/editbooks.py:794 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "" -#: cps/editbooks.py:834 cps/editbooks.py:836 +#: cps/editbooks.py:851 cps/editbooks.py:853 msgid "Book Format Successfully Deleted" msgstr "" -#: cps/editbooks.py:843 cps/editbooks.py:845 +#: cps/editbooks.py:860 cps/editbooks.py:862 msgid "Book Successfully Deleted" msgstr "" -#: cps/editbooks.py:897 +#: cps/editbooks.py:914 msgid "You are missing permissions to delete books" msgstr "" -#: cps/editbooks.py:947 +#: cps/editbooks.py:964 msgid "edit metadata" msgstr "metaveri düzenle" -#: cps/editbooks.py:996 +#: cps/editbooks.py:1013 #, python-format msgid "%(seriesindex)s is not a valid number, skipping" msgstr "" -#: cps/editbooks.py:1198 +#: cps/editbooks.py:1197 msgid "User has no rights to upload additional file formats" msgstr "" -#: cps/editbooks.py:1219 +#: cps/editbooks.py:1218 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "%(path)s dizini oluşturulamadı. (İzin reddedildi)" @@ -649,7 +654,7 @@ msgstr "%(book)s kitabına %(ext)s dosya biçimi eklendi" msgid "Google Drive setup not completed, try to deactivate and activate Google Drive again" msgstr "Google Drive kurulumu tamamlanmadı, Google Drive'ı devre dışı bırakmayı ve tekrar etkinleştirmeyi deneyin" -#: cps/gdrive.py:95 +#: cps/gdrive.py:96 msgid "Callback domain is not verified, please follow steps to verify domain in google developer console" msgstr "Geri yönlendirme alanı (callback domain) doğrulanamadı, lütfen Google geliştirici konsolunda alan adını doğrulamak için gerekli adımları izleyin." @@ -658,7 +663,7 @@ msgstr "Geri yönlendirme alanı (callback domain) doğrulanamadı, lütfen Goog msgid "%(format)s format not found for book id: %(book)d" msgstr "%(book)d nolu kitap için %(format)s biçimi bulunamadı" -#: cps/helper.py:93 cps/tasks/convert.py:86 +#: cps/helper.py:93 cps/tasks/convert.py:89 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "%(fn)s eKitabı için %(format)s biçimi Google Drive'da bulunamadı" @@ -735,122 +740,118 @@ msgstr "" msgid "Deleting book %(id)s from database only, book path in database not valid: %(path)s" msgstr "" -#: cps/helper.py:452 +#: cps/helper.py:465 #, fuzzy, python-format msgid "Rename author 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" -#: cps/helper.py:524 cps/helper.py:533 +#: cps/helper.py:536 cps/helper.py:545 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "%(file)s dosyası Google Drive'da bulunamadı" -#: cps/helper.py:567 +#: cps/helper.py:587 #, python-format 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" -#: cps/helper.py:587 -msgid "Error in rename file in path: {}" -msgstr "" - -#: cps/helper.py:605 +#: cps/helper.py:625 #, python-format msgid "Book path %(path)s not found on Google Drive" msgstr "eKitap yolu %(path)s Google Drive'da bulunamadı" -#: cps/helper.py:670 +#: cps/helper.py:685 msgid "Found an existing account for this Email address" msgstr "" -#: cps/helper.py:678 +#: cps/helper.py:693 msgid "This username is already taken" msgstr "Bu kullanıcı adı zaten alındı" -#: cps/helper.py:690 +#: cps/helper.py:705 msgid "Invalid Email address format" msgstr "" -#: cps/helper.py:710 +#: cps/helper.py:726 msgid "Password doesn't comply with password validation rules" msgstr "" -#: cps/helper.py:859 +#: cps/helper.py:873 msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "" -#: cps/helper.py:869 +#: cps/helper.py:883 msgid "Error Downloading Cover" msgstr "" -#: cps/helper.py:872 +#: cps/helper.py:886 msgid "Cover Format Error" msgstr "" -#: cps/helper.py:875 +#: cps/helper.py:889 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "" -#: cps/helper.py:885 +#: cps/helper.py:899 msgid "Failed to create path for cover" msgstr "" -#: cps/helper.py:901 +#: cps/helper.py:915 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "" -#: cps/helper.py:912 +#: cps/helper.py:926 msgid "Only jpg/jpeg/png/webp/bmp files are supported as coverfile" msgstr "" -#: cps/helper.py:924 +#: cps/helper.py:938 msgid "Invalid cover file content" msgstr "" -#: cps/helper.py:928 +#: cps/helper.py:942 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "" -#: cps/helper.py:999 cps/helper.py:1156 +#: cps/helper.py:1014 cps/helper.py:1171 #, fuzzy msgid "Cover" msgstr "Keşfet" -#: cps/helper.py:1016 +#: cps/helper.py:1031 msgid "UnRar binary file not found" msgstr "" -#: cps/helper.py:1027 +#: cps/helper.py:1042 msgid "Error executing UnRar" msgstr "" -#: cps/helper.py:1035 +#: cps/helper.py:1050 msgid "Could not find the specified directory" msgstr "" -#: cps/helper.py:1038 +#: cps/helper.py:1053 msgid "Please specify a directory, not a file" msgstr "" -#: cps/helper.py:1052 +#: cps/helper.py:1067 msgid "Calibre binaries not viable" msgstr "" -#: cps/helper.py:1061 +#: cps/helper.py:1076 #, python-format msgid "Missing calibre binaries: %(missing)s" msgstr "" -#: cps/helper.py:1063 +#: cps/helper.py:1078 #, python-format msgid "Missing executable permissions: %(missing)s" msgstr "" -#: cps/helper.py:1068 +#: cps/helper.py:1083 msgid "Error executing Calibre" msgstr "" -#: cps/helper.py:1158 cps/templates/admin.html:216 +#: cps/helper.py:1173 cps/templates/admin.html:216 msgid "Queue all books for metadata backup" msgstr "" @@ -896,35 +897,35 @@ msgstr "" msgid "Not Linked to %(oauth)s" msgstr "" -#: cps/oauth_bb.py:261 +#: cps/oauth_bb.py:262 msgid "Failed to log in with GitHub." msgstr "GitHub ile giriş yapılamadı." -#: cps/oauth_bb.py:267 +#: cps/oauth_bb.py:268 msgid "Failed to fetch user info from GitHub." msgstr "Github'dan kullanıcı bilgileri alınamadı." -#: cps/oauth_bb.py:279 +#: cps/oauth_bb.py:280 msgid "Failed to log in with Google." msgstr "Google ile giriş yapılamadı." -#: cps/oauth_bb.py:285 +#: cps/oauth_bb.py:286 msgid "Failed to fetch user info from Google." msgstr "Google'dan kullanıcı bilgileri alınamadı." -#: cps/oauth_bb.py:332 +#: cps/oauth_bb.py:334 msgid "GitHub Oauth error, please retry later." msgstr "GitHub Oauth hatası, lütfen tekrar deneyin." -#: cps/oauth_bb.py:335 +#: cps/oauth_bb.py:337 msgid "GitHub Oauth error: {}" msgstr "" -#: cps/oauth_bb.py:356 +#: cps/oauth_bb.py:358 msgid "Google Oauth error, please retry later." msgstr "Google Oauth hatası, lütfen tekrar deneyin." -#: cps/oauth_bb.py:359 +#: cps/oauth_bb.py:361 msgid "Google Oauth error: {}" msgstr "" @@ -1285,32 +1286,32 @@ msgstr "" msgid "Unknown Status" msgstr "Bilinmeyen Durum" -#: cps/updater.py:431 cps/updater.py:442 cps/updater.py:543 cps/updater.py:558 +#: cps/updater.py:433 cps/updater.py:444 cps/updater.py:545 cps/updater.py:560 msgid "Unexpected data while reading update information" msgstr "Güncelleme bilgileri okunurken beklenmeyen veri" -#: cps/updater.py:438 cps/updater.py:550 +#: cps/updater.py:440 cps/updater.py:552 msgid "No update available. You already have the latest version installed" msgstr "Yeni güncelleme mevcut değil. Zaten en son sürüme sahipsiniz." -#: cps/updater.py:456 +#: cps/updater.py:458 msgid "A new update is available. Click on the button below to update to the latest version." msgstr "Yeni bir güncelleme mevcut. Son sürüme güncellemek için aşağıdaki düğmeye tıklayın." -#: cps/updater.py:474 +#: cps/updater.py:476 msgid "Could not fetch update information" msgstr "Güncelleme bilgileri alınamadı" -#: cps/updater.py:484 +#: cps/updater.py:486 msgid "Click on the button below to update to the latest stable version." msgstr "Son kararlı sürüme güncellemek için aşağıdaki düğmeye tıklayın." -#: cps/updater.py:493 cps/updater.py:507 cps/updater.py:518 +#: cps/updater.py:495 cps/updater.py:509 cps/updater.py:520 #, python-format msgid "A new update is available. Click on the button below to update to version: %(version)s" msgstr "Yeni bir güncelleme mevcut. Son sürüme güncellemek için aşağıdaki düğmeye tıklayın: %(version)s" -#: cps/updater.py:536 +#: cps/updater.py:538 msgid "No release information available" msgstr "Sürüm bilgisi mevcut değil" @@ -1489,50 +1490,50 @@ msgstr "Profil güncellendi" msgid "Oops! An account already exists for this Email." msgstr "Bu e-posta adresi için bir hesap mevcut." -#: cps/services/gmail.py:58 +#: cps/services/gmail.py:59 msgid "Found no valid gmail.json file with OAuth information" msgstr "" -#: cps/tasks/convert.py:105 +#: cps/tasks/convert.py:108 #, fuzzy, python-format msgid "%(book)s send to E-Reader" msgstr "Kindle'a gönder" -#: cps/tasks/convert.py:167 +#: cps/tasks/convert.py:170 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "" -#: cps/tasks/convert.py:201 +#: cps/tasks/convert.py:204 #, python-format msgid "%(format)s format not found on disk" msgstr "" -#: cps/tasks/convert.py:205 +#: cps/tasks/convert.py:208 msgid "Ebook converter failed with unknown error" msgstr "" -#: cps/tasks/convert.py:224 +#: cps/tasks/convert.py:227 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "" -#: cps/tasks/convert.py:245 +#: cps/tasks/convert.py:248 #, python-format msgid "Converted file not found or more than one file in folder %(folder)s" msgstr "" -#: cps/tasks/convert.py:287 +#: cps/tasks/convert.py:291 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "eKitap-Dönüştürücü hatası: %(error)s" -#: cps/tasks/convert.py:310 +#: cps/tasks/convert.py:314 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "" -#: cps/tasks/convert.py:315 +#: cps/tasks/convert.py:319 msgid "Convert" msgstr "" @@ -1544,7 +1545,7 @@ msgstr "" msgid "E-mail" msgstr "" -#: cps/tasks/metadata_backup.py:33 +#: cps/tasks/metadata_backup.py:34 #, fuzzy msgid "Backing up Metadata" msgstr "metaveri düzenle" @@ -1558,20 +1559,20 @@ msgstr "" msgid "Generated %(count)s cover thumbnails" msgstr "" -#: cps/tasks/thumbnail.py:230 cps/tasks/thumbnail.py:443 -#: cps/tasks/thumbnail.py:511 +#: cps/tasks/thumbnail.py:231 cps/tasks/thumbnail.py:444 +#: cps/tasks/thumbnail.py:512 msgid "Cover Thumbnails" msgstr "" -#: cps/tasks/thumbnail.py:289 +#: cps/tasks/thumbnail.py:290 msgid "Generated {0} series thumbnails" msgstr "" -#: cps/tasks/thumbnail.py:454 +#: cps/tasks/thumbnail.py:455 msgid "Clearing cover thumbnail cache" msgstr "" -#: cps/tasks/upload.py:38 cps/templates/admin.html:20 +#: cps/tasks/upload.py:39 cps/templates/admin.html:20 #: cps/templates/layout.html:81 cps/templates/user_table.html:145 msgid "Upload" msgstr "Yükleme" @@ -1819,7 +1820,7 @@ msgstr "" #: cps/templates/admin.html:259 cps/templates/admin.html:273 #: cps/templates/book_edit.html:214 cps/templates/book_table.html:127 -#: cps/templates/config_db.html:66 cps/templates/config_edit.html:423 +#: cps/templates/config_db.html:66 cps/templates/config_edit.html:427 #: cps/templates/config_view_edit.html:175 cps/templates/detail.html:342 #: cps/templates/modal_dialogs.html:64 cps/templates/modal_dialogs.html:99 #: cps/templates/modal_dialogs.html:117 cps/templates/modal_dialogs.html:135 @@ -2005,7 +2006,7 @@ msgid "Fetch Metadata" msgstr "" #: cps/templates/book_edit.html:213 cps/templates/config_db.html:65 -#: cps/templates/config_edit.html:422 cps/templates/config_view_edit.html:174 +#: cps/templates/config_edit.html:426 cps/templates/config_view_edit.html:174 #: cps/templates/email_edit.html:65 cps/templates/schedule_edit.html:44 #: cps/templates/shelf_edit.html:25 cps/templates/shelf_order.html:41 #: cps/templates/user_edit.html:142 @@ -2478,47 +2479,51 @@ msgid "Configure Backend for Limiter" msgstr "" #: cps/templates/config_edit.html:376 -msgid "Options for Limiter" +msgid "Options for Limiter Backend" msgstr "" -#: cps/templates/config_edit.html:381 +#: cps/templates/config_edit.html:382 +msgid "Check if file extensions matches file content on upload" +msgstr "" + +#: cps/templates/config_edit.html:385 msgid "Session protection" msgstr "" -#: cps/templates/config_edit.html:383 +#: cps/templates/config_edit.html:387 msgid "Basic" msgstr "" -#: cps/templates/config_edit.html:384 +#: cps/templates/config_edit.html:388 msgid "Strong" msgstr "" -#: cps/templates/config_edit.html:389 +#: cps/templates/config_edit.html:393 #, fuzzy msgid "User Password policy" msgstr "Kullanıcı şifresini sıfırla" -#: cps/templates/config_edit.html:393 +#: cps/templates/config_edit.html:397 msgid "Minimum password length" msgstr "" -#: cps/templates/config_edit.html:398 +#: cps/templates/config_edit.html:402 msgid "Enforce number" msgstr "" -#: cps/templates/config_edit.html:402 +#: cps/templates/config_edit.html:406 msgid "Enforce lowercase characters" msgstr "" -#: cps/templates/config_edit.html:406 +#: cps/templates/config_edit.html:410 msgid "Enforce uppercase characters" msgstr "" -#: cps/templates/config_edit.html:410 +#: cps/templates/config_edit.html:414 msgid "Enforce characters (needed For Chinese/Japanese/Korean Characters)" msgstr "" -#: cps/templates/config_edit.html:414 +#: cps/templates/config_edit.html:418 msgid "Enforce special characters" msgstr "" @@ -2649,6 +2654,11 @@ msgstr "Okunmadı olarak işaretle" msgid "Mark As Read" msgstr "Okundu olarak işaretle" +#: cps/templates/detail.html:254 +#, fuzzy +msgid "Mark Book as Read or Unread" +msgstr "Okunmadı olarak işaretle" + #: cps/templates/detail.html:254 cps/templates/listenmp3.html:159 msgid "Read" msgstr "Okudum" @@ -2661,10 +2671,15 @@ msgstr "" msgid "Add to archive" msgstr "" -#: cps/templates/detail.html:267 cps/templates/listenmp3.html:167 -msgid "Archived" +#: cps/templates/detail.html:267 +msgid "Mark Book as archived or not, to hide it in Calibre-Web and delete it from Kobo Reader" msgstr "" +#: cps/templates/detail.html:267 +#, fuzzy +msgid "Archive" +msgstr "Ara" + #: cps/templates/detail.html:278 cps/templates/listenmp3.html:177 msgid "Description:" msgstr "Açıklama:" @@ -2941,6 +2956,10 @@ msgstr "eKitap Detayları" msgid "Grid" msgstr "" +#: cps/templates/listenmp3.html:167 +msgid "Archived" +msgstr "" + #: cps/templates/login.html:18 msgid "Remember Me" msgstr "" diff --git a/cps/translations/uk/LC_MESSAGES/messages.mo b/cps/translations/uk/LC_MESSAGES/messages.mo index 32e2fb63..191273f0 100644 Binary files a/cps/translations/uk/LC_MESSAGES/messages.mo and b/cps/translations/uk/LC_MESSAGES/messages.mo differ diff --git a/cps/translations/uk/LC_MESSAGES/messages.po b/cps/translations/uk/LC_MESSAGES/messages.po index a183975a..f3cf5e7a 100644 --- a/cps/translations/uk/LC_MESSAGES/messages.po +++ b/cps/translations/uk/LC_MESSAGES/messages.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Calibre-web\n" "Report-Msgid-Bugs-To: https://github.com/janeczku/calibre-web\n" -"POT-Creation-Date: 2024-06-09 12:26+0200\n" +"POT-Creation-Date: 2024-06-30 12:19+0200\n" "PO-Revision-Date: 2017-04-30 00:47+0300\n" "Last-Translator: ABIS Team \n" "Language: uk\n" @@ -15,7 +15,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.11.0\n" +"Generated-By: Babel 2.13.1\n" #: cps/about.py:84 msgid "Statistics" @@ -43,9 +43,9 @@ msgstr "Невідома команда" msgid "Success! Books queued for Metadata Backup, please check Tasks for result" msgstr "" -#: cps/admin.py:207 cps/editbooks.py:591 cps/editbooks.py:593 -#: cps/editbooks.py:631 cps/editbooks.py:648 cps/editbooks.py:1280 -#: cps/updater.py:613 cps/uploader.py:93 cps/uploader.py:102 +#: cps/admin.py:207 cps/editbooks.py:573 cps/editbooks.py:575 +#: cps/editbooks.py:615 cps/editbooks.py:658 cps/editbooks.py:1280 +#: cps/updater.py:615 cps/uploader.py:93 cps/uploader.py:102 msgid "Unknown" msgstr "Невідомий" @@ -66,12 +66,12 @@ msgstr "Конфігурація інтерфейсу" msgid "Edit Users" msgstr "Керування сервером" -#: cps/admin.py:368 cps/opds.py:541 cps/templates/grid.html:14 +#: cps/admin.py:368 cps/opds.py:542 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "Всі" -#: cps/admin.py:395 cps/admin.py:1417 +#: cps/admin.py:395 cps/admin.py:1414 msgid "User not found" msgstr "Користувача не знайдено" @@ -88,7 +88,7 @@ msgstr "Показати всі" msgid "Malformed request" msgstr "" -#: cps/admin.py:471 cps/admin.py:2048 +#: cps/admin.py:471 cps/admin.py:2046 msgid "Guest Name can't be changed" msgstr "" @@ -96,7 +96,7 @@ msgstr "" msgid "Guest can't have this role" msgstr "" -#: cps/admin.py:495 cps/admin.py:2002 +#: cps/admin.py:495 cps/admin.py:2000 msgid "No admin user remaining, can't remove admin role" msgstr "" @@ -128,7 +128,7 @@ msgstr "" msgid "No Valid Book Language Given" msgstr "" -#: cps/admin.py:535 cps/editbooks.py:457 +#: cps/admin.py:535 cps/editbooks.py:440 msgid "Parameter not found" msgstr "" @@ -140,7 +140,7 @@ msgstr "" msgid "Invalid Restricted Column" msgstr "" -#: cps/admin.py:598 cps/admin.py:1873 +#: cps/admin.py:598 cps/admin.py:1871 msgid "Calibre-Web configuration updated" msgstr "" @@ -224,294 +224,294 @@ msgstr "Тег не знайдено" msgid "Invalid Action" msgstr "" -#: cps/admin.py:1123 +#: cps/admin.py:1120 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "" -#: cps/admin.py:1168 +#: cps/admin.py:1165 msgid "Logfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1174 +#: cps/admin.py:1171 msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1208 +#: cps/admin.py:1205 msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgstr "" -#: cps/admin.py:1214 +#: cps/admin.py:1211 msgid "Please Enter a LDAP Service Account and Password" msgstr "" -#: cps/admin.py:1217 +#: cps/admin.py:1214 msgid "Please Enter a LDAP Service Account" msgstr "" -#: cps/admin.py:1222 +#: cps/admin.py:1219 #, python-format msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1224 +#: cps/admin.py:1221 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1228 +#: cps/admin.py:1225 #, python-format msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1230 +#: cps/admin.py:1227 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1237 +#: cps/admin.py:1234 #, python-format msgid "LDAP Member User Filter needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1239 +#: cps/admin.py:1236 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1246 +#: cps/admin.py:1243 msgid "LDAP CACertificate, Certificate or Key Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1277 cps/templates/admin.html:53 +#: cps/admin.py:1274 cps/templates/admin.html:53 msgid "Add New User" msgstr "" -#: cps/admin.py:1286 cps/templates/admin.html:100 +#: cps/admin.py:1283 cps/templates/admin.html:100 msgid "Edit Email Server Settings" msgstr "Змінити налаштування SMTP" -#: cps/admin.py:1305 +#: cps/admin.py:1302 msgid "Success! Gmail Account Verified." msgstr "" -#: cps/admin.py:1325 cps/admin.py:1328 cps/admin.py:1713 cps/admin.py:1857 -#: cps/admin.py:1955 cps/admin.py:2076 cps/editbooks.py:243 -#: cps/editbooks.py:319 cps/editbooks.py:1242 cps/shelf.py:90 cps/shelf.py:150 +#: cps/admin.py:1322 cps/admin.py:1325 cps/admin.py:1710 cps/admin.py:1855 +#: cps/admin.py:1953 cps/admin.py:2074 cps/editbooks.py:226 +#: cps/editbooks.py:303 cps/editbooks.py:1242 cps/shelf.py:90 cps/shelf.py:150 #: cps/shelf.py:193 cps/shelf.py:243 cps/shelf.py:280 cps/shelf.py:354 -#: cps/shelf.py:468 cps/tasks/convert.py:150 cps/web.py:1520 +#: cps/shelf.py:468 cps/tasks/convert.py:153 cps/web.py:1520 #, python-format msgid "Oops! Database Error: %(error)s." msgstr "" -#: cps/admin.py:1335 +#: cps/admin.py:1332 #, python-format msgid "Test e-mail queued for sending to %(email)s, please check Tasks for result" msgstr "" -#: cps/admin.py:1338 +#: cps/admin.py:1335 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "" -#: cps/admin.py:1340 +#: cps/admin.py:1337 msgid "Please configure your e-mail address first..." msgstr "" -#: cps/admin.py:1342 +#: cps/admin.py:1339 msgid "Email Server Settings updated" msgstr "" -#: cps/admin.py:1365 cps/templates/admin.html:195 +#: cps/admin.py:1362 cps/templates/admin.html:195 msgid "Edit Scheduled Tasks Settings" msgstr "" -#: cps/admin.py:1377 +#: cps/admin.py:1374 msgid "Invalid start time for task specified" msgstr "" -#: cps/admin.py:1382 +#: cps/admin.py:1379 msgid "Invalid duration for task specified" msgstr "" -#: cps/admin.py:1392 +#: cps/admin.py:1389 msgid "Scheduled tasks settings updated" msgstr "" -#: cps/admin.py:1402 cps/admin.py:1451 cps/admin.py:2072 cps/web.py:1316 +#: cps/admin.py:1399 cps/admin.py:1448 cps/admin.py:2070 cps/web.py:1316 msgid "Oops! An unknown error occurred. Please try again later." msgstr "" -#: cps/admin.py:1406 +#: cps/admin.py:1403 msgid "Settings DB is not Writeable" msgstr "" -#: cps/admin.py:1436 cps/admin.py:2064 +#: cps/admin.py:1433 cps/admin.py:2062 #, python-format msgid "Edit User %(nick)s" msgstr "Змінити користувача %(nick)s" -#: cps/admin.py:1448 +#: cps/admin.py:1445 #, python-format msgid "Success! Password for user %(user)s reset" msgstr "" -#: cps/admin.py:1454 +#: cps/admin.py:1451 #, fuzzy msgid "Oops! Please configure the SMTP mail settings." msgstr "Будь-ласка, спочатку сконфігуруйте параметри SMTP" -#: cps/admin.py:1465 +#: cps/admin.py:1462 msgid "Logfile viewer" msgstr "" -#: cps/admin.py:1531 +#: cps/admin.py:1528 msgid "Requesting update package" msgstr "Перевірка оновлень" -#: cps/admin.py:1532 +#: cps/admin.py:1529 msgid "Downloading update package" msgstr "Завантаження оновлень" -#: cps/admin.py:1533 +#: cps/admin.py:1530 msgid "Unzipping update package" msgstr "Розпакування оновлення" -#: cps/admin.py:1534 +#: cps/admin.py:1531 msgid "Replacing files" msgstr "Заміна файлів" -#: cps/admin.py:1535 +#: cps/admin.py:1532 msgid "Database connections are closed" msgstr "З'єднання з базою даних закрите" -#: cps/admin.py:1536 +#: cps/admin.py:1533 msgid "Stopping server" msgstr "Сервер зупиняється" -#: cps/admin.py:1537 +#: cps/admin.py:1534 msgid "Update finished, please press okay and reload page" msgstr "Оновлення встановлені, натисніть ok і перезавантажте сторінку" -#: cps/admin.py:1538 cps/admin.py:1539 cps/admin.py:1540 cps/admin.py:1541 -#: cps/admin.py:1542 cps/admin.py:1543 +#: cps/admin.py:1535 cps/admin.py:1536 cps/admin.py:1537 cps/admin.py:1538 +#: cps/admin.py:1539 cps/admin.py:1540 msgid "Update failed:" msgstr "Оновлення неуспішне:" -#: cps/admin.py:1538 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 +#: cps/admin.py:1535 cps/updater.py:391 cps/updater.py:626 cps/updater.py:628 msgid "HTTP Error" msgstr "HTTP помилка" -#: cps/admin.py:1539 cps/updater.py:391 cps/updater.py:628 +#: cps/admin.py:1536 cps/updater.py:393 cps/updater.py:630 msgid "Connection error" msgstr "Помилка зʼєднання" -#: cps/admin.py:1540 cps/updater.py:393 cps/updater.py:630 +#: cps/admin.py:1537 cps/updater.py:395 cps/updater.py:632 msgid "Timeout while establishing connection" msgstr "" -#: cps/admin.py:1541 cps/updater.py:395 cps/updater.py:632 +#: cps/admin.py:1538 cps/updater.py:397 cps/updater.py:634 msgid "General error" msgstr "Помилка" -#: cps/admin.py:1542 +#: cps/admin.py:1539 msgid "Update file could not be saved in temp dir" msgstr "" -#: cps/admin.py:1543 +#: cps/admin.py:1540 msgid "Files could not be replaced during update" msgstr "" -#: cps/admin.py:1567 +#: cps/admin.py:1564 msgid "Failed to extract at least One LDAP User" msgstr "" -#: cps/admin.py:1612 +#: cps/admin.py:1609 msgid "Failed to Create at Least One LDAP User" msgstr "" -#: cps/admin.py:1625 +#: cps/admin.py:1622 #, python-format msgid "Error: %(ldaperror)s" msgstr "" -#: cps/admin.py:1629 +#: cps/admin.py:1626 msgid "Error: No user returned in response of LDAP server" msgstr "" -#: cps/admin.py:1665 +#: cps/admin.py:1662 msgid "At Least One LDAP User Not Found in Database" msgstr "" -#: cps/admin.py:1667 +#: cps/admin.py:1664 msgid "{} User Successfully Imported" msgstr "" -#: cps/admin.py:1725 +#: cps/admin.py:1722 msgid "DB Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1745 +#: cps/admin.py:1742 msgid "DB is not Writeable" msgstr "" -#: cps/admin.py:1761 +#: cps/admin.py:1758 msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1765 +#: cps/admin.py:1762 msgid "Certfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1842 +#: cps/admin.py:1840 msgid "Password length has to be between 1 and 40" msgstr "" -#: cps/admin.py:1896 +#: cps/admin.py:1894 #, fuzzy msgid "Database Settings updated" msgstr "З'єднання з базою даних закрите" -#: cps/admin.py:1904 +#: cps/admin.py:1902 #, fuzzy msgid "Database Configuration" msgstr "Особливі налаштування" -#: cps/admin.py:1919 cps/web.py:1290 +#: cps/admin.py:1917 cps/web.py:1290 msgid "Oops! Please complete all fields." msgstr "Будь-ласка, заповніть всі поля!" -#: cps/admin.py:1928 +#: cps/admin.py:1926 msgid "E-mail is not from valid domain" msgstr "" -#: cps/admin.py:1934 +#: cps/admin.py:1932 msgid "Add new user" msgstr "Додати користувача" -#: cps/admin.py:1945 +#: cps/admin.py:1943 #, python-format msgid "User '%(user)s' created" msgstr "Користувач '%(user)s' додан" -#: cps/admin.py:1951 +#: cps/admin.py:1949 msgid "Oops! An account already exists for this Email. or name." msgstr "" -#: cps/admin.py:1981 +#: cps/admin.py:1979 #, python-format msgid "User '%(nick)s' deleted" msgstr "Користувача '%(nick)s' видалено" -#: cps/admin.py:1984 +#: cps/admin.py:1982 msgid "Can't delete Guest User" msgstr "" -#: cps/admin.py:1987 +#: cps/admin.py:1985 msgid "No admin user remaining, can't delete user" msgstr "" -#: cps/admin.py:2042 cps/web.py:1469 +#: cps/admin.py:2040 cps/web.py:1469 msgid "Email can't be empty and has to be a valid Email" msgstr "" -#: cps/admin.py:2068 +#: cps/admin.py:2066 #, python-format msgid "User '%(nick)s' updated" msgstr "Користувача '%(nick)s' оновлено" @@ -524,12 +524,12 @@ msgstr "не встановлено" msgid "Execution permissions missing" msgstr "" -#: cps/db.py:756 cps/search.py:137 cps/web.py:747 +#: cps/db.py:768 cps/search.py:137 cps/web.py:747 #, python-format msgid "Custom Column No.%(column)d does not exist in calibre database" msgstr "" -#: cps/db.py:996 cps/templates/config_edit.html:203 +#: cps/db.py:1008 cps/templates/config_edit.html:203 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 #: cps/web.py:562 cps/web.py:596 cps/web.py:641 cps/web.py:681 cps/web.py:708 #: cps/web.py:989 cps/web.py:1019 cps/web.py:1064 cps/web.py:1092 @@ -537,100 +537,104 @@ msgstr "" msgid "None" msgstr "Ні" -#: cps/editbooks.py:124 cps/editbooks.py:912 cps/web.py:529 cps/web.py:1561 -#: cps/web.py:1605 cps/web.py:1650 +#: cps/editbooks.py:108 cps/editbooks.py:929 cps/web.py:529 cps/web.py:1561 +#: cps/web.py:1606 cps/web.py:1651 msgid "Oops! Selected book is unavailable. File does not exist or is not accessible" msgstr "Неможливо відкрити книгу. Файл не існує або немає доступу." -#: cps/editbooks.py:168 cps/editbooks.py:1263 +#: cps/editbooks.py:151 cps/editbooks.py:1263 msgid "User has no rights to upload cover" msgstr "" -#: cps/editbooks.py:188 cps/editbooks.py:733 +#: cps/editbooks.py:171 cps/editbooks.py:744 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "" -#: cps/editbooks.py:230 +#: cps/editbooks.py:213 msgid "Metadata successfully updated" msgstr "" -#: cps/editbooks.py:248 +#: cps/editbooks.py:231 msgid "Error editing book: {}" msgstr "" -#: cps/editbooks.py:305 +#: cps/editbooks.py:289 #, python-format msgid "File %(file)s uploaded" msgstr "" -#: cps/editbooks.py:333 +#: cps/editbooks.py:317 msgid "Source or destination format for conversion missing" msgstr "" -#: cps/editbooks.py:341 +#: cps/editbooks.py:325 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "" -#: cps/editbooks.py:345 +#: cps/editbooks.py:329 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "" -#: cps/editbooks.py:652 +#: cps/editbooks.py:662 msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgstr "" -#: cps/editbooks.py:707 cps/editbooks.py:1043 +#: cps/editbooks.py:718 cps/editbooks.py:1049 #, python-format msgid "'%(langname)s' is not a valid language" msgstr "" -#: cps/editbooks.py:745 cps/editbooks.py:1203 +#: cps/editbooks.py:756 cps/editbooks.py:1192 +msgid "File type isn't allowed to be uploaded to this server" +msgstr "" + +#: cps/editbooks.py:762 cps/editbooks.py:1202 #, python-format msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgstr "" -#: cps/editbooks.py:749 cps/editbooks.py:1207 +#: cps/editbooks.py:766 cps/editbooks.py:1206 msgid "File to be uploaded must have an extension" msgstr "Завантажувальний файл повинен мати розширення" -#: cps/editbooks.py:757 +#: cps/editbooks.py:774 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "" -#: cps/editbooks.py:777 +#: cps/editbooks.py:794 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "" -#: cps/editbooks.py:834 cps/editbooks.py:836 +#: cps/editbooks.py:851 cps/editbooks.py:853 msgid "Book Format Successfully Deleted" msgstr "" -#: cps/editbooks.py:843 cps/editbooks.py:845 +#: cps/editbooks.py:860 cps/editbooks.py:862 msgid "Book Successfully Deleted" msgstr "" -#: cps/editbooks.py:897 +#: cps/editbooks.py:914 msgid "You are missing permissions to delete books" msgstr "" -#: cps/editbooks.py:947 +#: cps/editbooks.py:964 msgid "edit metadata" msgstr "змінити метадані" -#: cps/editbooks.py:996 +#: cps/editbooks.py:1013 #, python-format msgid "%(seriesindex)s is not a valid number, skipping" msgstr "" -#: cps/editbooks.py:1198 +#: cps/editbooks.py:1197 msgid "User has no rights to upload additional file formats" msgstr "" -#: cps/editbooks.py:1219 +#: cps/editbooks.py:1218 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "" @@ -649,7 +653,7 @@ msgstr "" msgid "Google Drive setup not completed, try to deactivate and activate Google Drive again" msgstr "" -#: cps/gdrive.py:95 +#: cps/gdrive.py:96 msgid "Callback domain is not verified, please follow steps to verify domain in google developer console" msgstr "Домен зворотнього зв'язку не підтверджено. Виконайте дії для підтвердження домену, будь-ласка" @@ -658,7 +662,7 @@ msgstr "Домен зворотнього зв'язку не підтвердж msgid "%(format)s format not found for book id: %(book)d" msgstr "" -#: cps/helper.py:93 cps/tasks/convert.py:86 +#: cps/helper.py:93 cps/tasks/convert.py:89 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "" @@ -732,122 +736,118 @@ msgstr "" msgid "Deleting book %(id)s from database only, book path in database not valid: %(path)s" msgstr "" -#: cps/helper.py:452 +#: cps/helper.py:465 #, python-format msgid "Rename author from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgstr "" -#: cps/helper.py:524 cps/helper.py:533 +#: cps/helper.py:536 cps/helper.py:545 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "" -#: cps/helper.py:567 +#: cps/helper.py:587 #, python-format msgid "Rename title from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgstr "" -#: cps/helper.py:587 -msgid "Error in rename file in path: {}" -msgstr "" - -#: cps/helper.py:605 +#: cps/helper.py:625 #, python-format msgid "Book path %(path)s not found on Google Drive" msgstr "" -#: cps/helper.py:670 +#: cps/helper.py:685 msgid "Found an existing account for this Email address" msgstr "" -#: cps/helper.py:678 +#: cps/helper.py:693 msgid "This username is already taken" msgstr "" -#: cps/helper.py:690 +#: cps/helper.py:705 msgid "Invalid Email address format" msgstr "" -#: cps/helper.py:710 +#: cps/helper.py:726 msgid "Password doesn't comply with password validation rules" msgstr "" -#: cps/helper.py:859 +#: cps/helper.py:873 msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "" -#: cps/helper.py:869 +#: cps/helper.py:883 msgid "Error Downloading Cover" msgstr "" -#: cps/helper.py:872 +#: cps/helper.py:886 msgid "Cover Format Error" msgstr "" -#: cps/helper.py:875 +#: cps/helper.py:889 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "" -#: cps/helper.py:885 +#: cps/helper.py:899 msgid "Failed to create path for cover" msgstr "" -#: cps/helper.py:901 +#: cps/helper.py:915 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "" -#: cps/helper.py:912 +#: cps/helper.py:926 msgid "Only jpg/jpeg/png/webp/bmp files are supported as coverfile" msgstr "" -#: cps/helper.py:924 +#: cps/helper.py:938 msgid "Invalid cover file content" msgstr "" -#: cps/helper.py:928 +#: cps/helper.py:942 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "" -#: cps/helper.py:999 cps/helper.py:1156 +#: cps/helper.py:1014 cps/helper.py:1171 #, fuzzy msgid "Cover" msgstr "Огляд" -#: cps/helper.py:1016 +#: cps/helper.py:1031 msgid "UnRar binary file not found" msgstr "" -#: cps/helper.py:1027 +#: cps/helper.py:1042 msgid "Error executing UnRar" msgstr "" -#: cps/helper.py:1035 +#: cps/helper.py:1050 msgid "Could not find the specified directory" msgstr "" -#: cps/helper.py:1038 +#: cps/helper.py:1053 msgid "Please specify a directory, not a file" msgstr "" -#: cps/helper.py:1052 +#: cps/helper.py:1067 msgid "Calibre binaries not viable" msgstr "" -#: cps/helper.py:1061 +#: cps/helper.py:1076 #, python-format msgid "Missing calibre binaries: %(missing)s" msgstr "" -#: cps/helper.py:1063 +#: cps/helper.py:1078 #, python-format msgid "Missing executable permissions: %(missing)s" msgstr "" -#: cps/helper.py:1068 +#: cps/helper.py:1083 msgid "Error executing Calibre" msgstr "" -#: cps/helper.py:1158 cps/templates/admin.html:216 +#: cps/helper.py:1173 cps/templates/admin.html:216 msgid "Queue all books for metadata backup" msgstr "" @@ -893,35 +893,35 @@ msgstr "" msgid "Not Linked to %(oauth)s" msgstr "" -#: cps/oauth_bb.py:261 +#: cps/oauth_bb.py:262 msgid "Failed to log in with GitHub." msgstr "" -#: cps/oauth_bb.py:267 +#: cps/oauth_bb.py:268 msgid "Failed to fetch user info from GitHub." msgstr "" -#: cps/oauth_bb.py:279 +#: cps/oauth_bb.py:280 msgid "Failed to log in with Google." msgstr "" -#: cps/oauth_bb.py:285 +#: cps/oauth_bb.py:286 msgid "Failed to fetch user info from Google." msgstr "" -#: cps/oauth_bb.py:332 +#: cps/oauth_bb.py:334 msgid "GitHub Oauth error, please retry later." msgstr "" -#: cps/oauth_bb.py:335 +#: cps/oauth_bb.py:337 msgid "GitHub Oauth error: {}" msgstr "" -#: cps/oauth_bb.py:356 +#: cps/oauth_bb.py:358 msgid "Google Oauth error, please retry later." msgstr "" -#: cps/oauth_bb.py:359 +#: cps/oauth_bb.py:361 msgid "Google Oauth error: {}" msgstr "" @@ -1281,32 +1281,32 @@ msgstr "Відмінено" msgid "Unknown Status" msgstr "Невідомий статус" -#: cps/updater.py:431 cps/updater.py:442 cps/updater.py:543 cps/updater.py:558 +#: cps/updater.py:433 cps/updater.py:444 cps/updater.py:545 cps/updater.py:560 msgid "Unexpected data while reading update information" msgstr "" -#: cps/updater.py:438 cps/updater.py:550 +#: cps/updater.py:440 cps/updater.py:552 msgid "No update available. You already have the latest version installed" msgstr "" -#: cps/updater.py:456 +#: cps/updater.py:458 msgid "A new update is available. Click on the button below to update to the latest version." msgstr "" -#: cps/updater.py:474 +#: cps/updater.py:476 msgid "Could not fetch update information" msgstr "" -#: cps/updater.py:484 +#: cps/updater.py:486 msgid "Click on the button below to update to the latest stable version." msgstr "" -#: cps/updater.py:493 cps/updater.py:507 cps/updater.py:518 +#: cps/updater.py:495 cps/updater.py:509 cps/updater.py:520 #, python-format msgid "A new update is available. Click on the button below to update to version: %(version)s" msgstr "" -#: cps/updater.py:536 +#: cps/updater.py:538 msgid "No release information available" msgstr "" @@ -1480,50 +1480,50 @@ msgstr "Профіль оновлено" msgid "Oops! An account already exists for this Email." msgstr "" -#: cps/services/gmail.py:58 +#: cps/services/gmail.py:59 msgid "Found no valid gmail.json file with OAuth information" msgstr "" -#: cps/tasks/convert.py:105 +#: cps/tasks/convert.py:108 #, fuzzy, python-format msgid "%(book)s send to E-Reader" msgstr "Відправити на Kindle" -#: cps/tasks/convert.py:167 +#: cps/tasks/convert.py:170 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "" -#: cps/tasks/convert.py:201 +#: cps/tasks/convert.py:204 #, python-format msgid "%(format)s format not found on disk" msgstr "" -#: cps/tasks/convert.py:205 +#: cps/tasks/convert.py:208 msgid "Ebook converter failed with unknown error" msgstr "" -#: cps/tasks/convert.py:224 +#: cps/tasks/convert.py:227 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "" -#: cps/tasks/convert.py:245 +#: cps/tasks/convert.py:248 #, python-format msgid "Converted file not found or more than one file in folder %(folder)s" msgstr "" -#: cps/tasks/convert.py:287 +#: cps/tasks/convert.py:291 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "" -#: cps/tasks/convert.py:310 +#: cps/tasks/convert.py:314 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "" -#: cps/tasks/convert.py:315 +#: cps/tasks/convert.py:319 msgid "Convert" msgstr "" @@ -1535,7 +1535,7 @@ msgstr "" msgid "E-mail" msgstr "" -#: cps/tasks/metadata_backup.py:33 +#: cps/tasks/metadata_backup.py:34 #, fuzzy msgid "Backing up Metadata" msgstr "змінити метадані" @@ -1549,20 +1549,20 @@ msgstr "" msgid "Generated %(count)s cover thumbnails" msgstr "" -#: cps/tasks/thumbnail.py:230 cps/tasks/thumbnail.py:443 -#: cps/tasks/thumbnail.py:511 +#: cps/tasks/thumbnail.py:231 cps/tasks/thumbnail.py:444 +#: cps/tasks/thumbnail.py:512 msgid "Cover Thumbnails" msgstr "" -#: cps/tasks/thumbnail.py:289 +#: cps/tasks/thumbnail.py:290 msgid "Generated {0} series thumbnails" msgstr "" -#: cps/tasks/thumbnail.py:454 +#: cps/tasks/thumbnail.py:455 msgid "Clearing cover thumbnail cache" msgstr "" -#: cps/tasks/upload.py:38 cps/templates/admin.html:20 +#: cps/tasks/upload.py:39 cps/templates/admin.html:20 #: cps/templates/layout.html:81 cps/templates/user_table.html:145 msgid "Upload" msgstr "Додати нову книгу" @@ -1810,7 +1810,7 @@ msgstr "Ok" #: cps/templates/admin.html:259 cps/templates/admin.html:273 #: cps/templates/book_edit.html:214 cps/templates/book_table.html:127 -#: cps/templates/config_db.html:66 cps/templates/config_edit.html:423 +#: cps/templates/config_db.html:66 cps/templates/config_edit.html:427 #: cps/templates/config_view_edit.html:175 cps/templates/detail.html:342 #: cps/templates/modal_dialogs.html:64 cps/templates/modal_dialogs.html:99 #: cps/templates/modal_dialogs.html:117 cps/templates/modal_dialogs.html:135 @@ -1996,7 +1996,7 @@ msgid "Fetch Metadata" msgstr "Отримати метадані" #: cps/templates/book_edit.html:213 cps/templates/config_db.html:65 -#: cps/templates/config_edit.html:422 cps/templates/config_view_edit.html:174 +#: cps/templates/config_edit.html:426 cps/templates/config_view_edit.html:174 #: cps/templates/email_edit.html:65 cps/templates/schedule_edit.html:44 #: cps/templates/shelf_edit.html:25 cps/templates/shelf_order.html:41 #: cps/templates/user_edit.html:142 @@ -2467,47 +2467,51 @@ msgid "Configure Backend for Limiter" msgstr "" #: cps/templates/config_edit.html:376 -msgid "Options for Limiter" +msgid "Options for Limiter Backend" msgstr "" -#: cps/templates/config_edit.html:381 +#: cps/templates/config_edit.html:382 +msgid "Check if file extensions matches file content on upload" +msgstr "" + +#: cps/templates/config_edit.html:385 msgid "Session protection" msgstr "" -#: cps/templates/config_edit.html:383 +#: cps/templates/config_edit.html:387 msgid "Basic" msgstr "" -#: cps/templates/config_edit.html:384 +#: cps/templates/config_edit.html:388 msgid "Strong" msgstr "" -#: cps/templates/config_edit.html:389 +#: cps/templates/config_edit.html:393 #, fuzzy msgid "User Password policy" msgstr "Скинути пароль користувача" -#: cps/templates/config_edit.html:393 +#: cps/templates/config_edit.html:397 msgid "Minimum password length" msgstr "" -#: cps/templates/config_edit.html:398 +#: cps/templates/config_edit.html:402 msgid "Enforce number" msgstr "" -#: cps/templates/config_edit.html:402 +#: cps/templates/config_edit.html:406 msgid "Enforce lowercase characters" msgstr "" -#: cps/templates/config_edit.html:406 +#: cps/templates/config_edit.html:410 msgid "Enforce uppercase characters" msgstr "" -#: cps/templates/config_edit.html:410 +#: cps/templates/config_edit.html:414 msgid "Enforce characters (needed For Chinese/Japanese/Korean Characters)" msgstr "" -#: cps/templates/config_edit.html:414 +#: cps/templates/config_edit.html:418 msgid "Enforce special characters" msgstr "" @@ -2639,6 +2643,11 @@ msgstr "Відмітити як не прочитане" msgid "Mark As Read" msgstr "Відмітити як прочитане" +#: cps/templates/detail.html:254 +#, fuzzy +msgid "Mark Book as Read or Unread" +msgstr "Відмітити як не прочитане" + #: cps/templates/detail.html:254 cps/templates/listenmp3.html:159 msgid "Read" msgstr "Прочитано" @@ -2651,8 +2660,13 @@ msgstr "Відновити з архіву" msgid "Add to archive" msgstr "Додати в архів" -#: cps/templates/detail.html:267 cps/templates/listenmp3.html:167 -msgid "Archived" +#: cps/templates/detail.html:267 +msgid "Mark Book as archived or not, to hide it in Calibre-Web and delete it from Kobo Reader" +msgstr "" + +#: cps/templates/detail.html:267 +#, fuzzy +msgid "Archive" msgstr "Заархівовано" #: cps/templates/detail.html:278 cps/templates/listenmp3.html:177 @@ -2930,6 +2944,10 @@ msgstr "Деталі" msgid "Grid" msgstr "" +#: cps/templates/listenmp3.html:167 +msgid "Archived" +msgstr "Заархівовано" + #: cps/templates/login.html:18 msgid "Remember Me" msgstr "Запам'ятати мене" diff --git a/cps/translations/vi/LC_MESSAGES/messages.mo b/cps/translations/vi/LC_MESSAGES/messages.mo index d0fdea99..9acd76d3 100644 Binary files a/cps/translations/vi/LC_MESSAGES/messages.mo and b/cps/translations/vi/LC_MESSAGES/messages.mo differ diff --git a/cps/translations/vi/LC_MESSAGES/messages.po b/cps/translations/vi/LC_MESSAGES/messages.po index 5bd729e0..121ec419 100644 --- a/cps/translations/vi/LC_MESSAGES/messages.po +++ b/cps/translations/vi/LC_MESSAGES/messages.po @@ -4,7 +4,7 @@ msgid "" msgstr "" "Project-Id-Version: Calibre-web\n" "Report-Msgid-Bugs-To: https://github.com/janeczku/calibre-web\n" -"POT-Creation-Date: 2024-06-09 12:26+0200\n" +"POT-Creation-Date: 2024-06-30 12:19+0200\n" "PO-Revision-Date: 2022-09-20 21:36+0700\n" "Last-Translator: Ha Link \n" "Language: vi\n" @@ -13,7 +13,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.11.0\n" +"Generated-By: Babel 2.13.1\n" #: cps/about.py:84 msgid "Statistics" @@ -41,9 +41,9 @@ msgstr "Lệnh không tồn tại" msgid "Success! Books queued for Metadata Backup, please check Tasks for result" msgstr "" -#: cps/admin.py:207 cps/editbooks.py:591 cps/editbooks.py:593 -#: cps/editbooks.py:631 cps/editbooks.py:648 cps/editbooks.py:1280 -#: cps/updater.py:613 cps/uploader.py:93 cps/uploader.py:102 +#: cps/admin.py:207 cps/editbooks.py:573 cps/editbooks.py:575 +#: cps/editbooks.py:615 cps/editbooks.py:658 cps/editbooks.py:1280 +#: cps/updater.py:615 cps/uploader.py:93 cps/uploader.py:102 msgid "Unknown" msgstr "Không rõ" @@ -63,12 +63,12 @@ msgstr "Thiết lập UI" msgid "Edit Users" msgstr "Chỉnh sửa người dùng" -#: cps/admin.py:368 cps/opds.py:541 cps/templates/grid.html:14 +#: cps/admin.py:368 cps/opds.py:542 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "Tất cả" -#: cps/admin.py:395 cps/admin.py:1417 +#: cps/admin.py:395 cps/admin.py:1414 msgid "User not found" msgstr "Không tìm thấy user" @@ -85,7 +85,7 @@ msgstr "Hiển thị tất cả" msgid "Malformed request" msgstr "Yêu cầu không đúng định dạng" -#: cps/admin.py:471 cps/admin.py:2048 +#: cps/admin.py:471 cps/admin.py:2046 msgid "Guest Name can't be changed" msgstr "Tên người dung khách không thể thay đổi" @@ -93,7 +93,7 @@ msgstr "Tên người dung khách không thể thay đổi" msgid "Guest can't have this role" msgstr "Khách không thể mang vai trò này" -#: cps/admin.py:495 cps/admin.py:2002 +#: cps/admin.py:495 cps/admin.py:2000 msgid "No admin user remaining, can't remove admin role" msgstr "Không còn người dùng quản trị, không thể xoá vai trò admin" @@ -125,7 +125,7 @@ msgstr "Địa chỉ cung cấp không hợp lệ" msgid "No Valid Book Language Given" msgstr "Ngôn ngữ sách không hợp lệ" -#: cps/admin.py:535 cps/editbooks.py:457 +#: cps/admin.py:535 cps/editbooks.py:440 msgid "Parameter not found" msgstr "Tham số không tồn tại" @@ -137,7 +137,7 @@ msgstr "Cột đọc không hợp lệ" msgid "Invalid Restricted Column" msgstr "Cột bị hạn chế không hợp lệ" -#: cps/admin.py:598 cps/admin.py:1873 +#: cps/admin.py:598 cps/admin.py:1871 msgid "Calibre-Web configuration updated" msgstr "Thiết lập Calibre-Web đã cập nhật" @@ -217,292 +217,292 @@ msgstr "Tag không tồn tại" msgid "Invalid Action" msgstr "Hành động không hợp lệ" -#: cps/admin.py:1123 +#: cps/admin.py:1120 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "" -#: cps/admin.py:1168 +#: cps/admin.py:1165 msgid "Logfile Location is not Valid, Please Enter Correct Path" msgstr "Vị trí tệp nhật ký không hợp lệ, vui lòng nhập đường dẫn chính xác" -#: cps/admin.py:1174 +#: cps/admin.py:1171 msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1208 +#: cps/admin.py:1205 msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgstr "" -#: cps/admin.py:1214 +#: cps/admin.py:1211 msgid "Please Enter a LDAP Service Account and Password" msgstr "" -#: cps/admin.py:1217 +#: cps/admin.py:1214 msgid "Please Enter a LDAP Service Account" msgstr "" -#: cps/admin.py:1222 +#: cps/admin.py:1219 #, python-format msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1224 +#: cps/admin.py:1221 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1228 +#: cps/admin.py:1225 #, python-format msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1230 +#: cps/admin.py:1227 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1237 +#: cps/admin.py:1234 #, python-format msgid "LDAP Member User Filter needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1239 +#: cps/admin.py:1236 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1246 +#: cps/admin.py:1243 msgid "LDAP CACertificate, Certificate or Key Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1277 cps/templates/admin.html:53 +#: cps/admin.py:1274 cps/templates/admin.html:53 msgid "Add New User" msgstr "Thêm người dùng mới" -#: cps/admin.py:1286 cps/templates/admin.html:100 +#: cps/admin.py:1283 cps/templates/admin.html:100 msgid "Edit Email Server Settings" msgstr "" -#: cps/admin.py:1305 +#: cps/admin.py:1302 msgid "Success! Gmail Account Verified." msgstr "" -#: cps/admin.py:1325 cps/admin.py:1328 cps/admin.py:1713 cps/admin.py:1857 -#: cps/admin.py:1955 cps/admin.py:2076 cps/editbooks.py:243 -#: cps/editbooks.py:319 cps/editbooks.py:1242 cps/shelf.py:90 cps/shelf.py:150 +#: cps/admin.py:1322 cps/admin.py:1325 cps/admin.py:1710 cps/admin.py:1855 +#: cps/admin.py:1953 cps/admin.py:2074 cps/editbooks.py:226 +#: cps/editbooks.py:303 cps/editbooks.py:1242 cps/shelf.py:90 cps/shelf.py:150 #: cps/shelf.py:193 cps/shelf.py:243 cps/shelf.py:280 cps/shelf.py:354 -#: cps/shelf.py:468 cps/tasks/convert.py:150 cps/web.py:1520 +#: cps/shelf.py:468 cps/tasks/convert.py:153 cps/web.py:1520 #, python-format msgid "Oops! Database Error: %(error)s." msgstr "Lỗi cơ sở dữ liệu: %(error)s." -#: cps/admin.py:1335 +#: cps/admin.py:1332 #, python-format msgid "Test e-mail queued for sending to %(email)s, please check Tasks for result" msgstr "" -#: cps/admin.py:1338 +#: cps/admin.py:1335 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "" -#: cps/admin.py:1340 +#: cps/admin.py:1337 msgid "Please configure your e-mail address first..." msgstr "" -#: cps/admin.py:1342 +#: cps/admin.py:1339 msgid "Email Server Settings updated" msgstr "" -#: cps/admin.py:1365 cps/templates/admin.html:195 +#: cps/admin.py:1362 cps/templates/admin.html:195 msgid "Edit Scheduled Tasks Settings" msgstr "" -#: cps/admin.py:1377 +#: cps/admin.py:1374 msgid "Invalid start time for task specified" msgstr "" -#: cps/admin.py:1382 +#: cps/admin.py:1379 msgid "Invalid duration for task specified" msgstr "" -#: cps/admin.py:1392 +#: cps/admin.py:1389 #, fuzzy msgid "Scheduled tasks settings updated" msgstr "Thiết lập cơ sở dữ lieu đã được cập nhật" -#: cps/admin.py:1402 cps/admin.py:1451 cps/admin.py:2072 cps/web.py:1316 +#: cps/admin.py:1399 cps/admin.py:1448 cps/admin.py:2070 cps/web.py:1316 msgid "Oops! An unknown error occurred. Please try again later." msgstr "Lỗi không xác định xảy ra. Xin hãy thử lại sau." -#: cps/admin.py:1406 +#: cps/admin.py:1403 msgid "Settings DB is not Writeable" msgstr "" -#: cps/admin.py:1436 cps/admin.py:2064 +#: cps/admin.py:1433 cps/admin.py:2062 #, python-format msgid "Edit User %(nick)s" msgstr "Chỉnh sửa người dùng %(nick)s" -#: cps/admin.py:1448 +#: cps/admin.py:1445 #, python-format msgid "Success! Password for user %(user)s reset" msgstr "" -#: cps/admin.py:1454 +#: cps/admin.py:1451 msgid "Oops! Please configure the SMTP mail settings." msgstr "" -#: cps/admin.py:1465 +#: cps/admin.py:1462 msgid "Logfile viewer" msgstr "" -#: cps/admin.py:1531 +#: cps/admin.py:1528 msgid "Requesting update package" msgstr "" -#: cps/admin.py:1532 +#: cps/admin.py:1529 msgid "Downloading update package" msgstr "" -#: cps/admin.py:1533 +#: cps/admin.py:1530 msgid "Unzipping update package" msgstr "Đang giải nén tệp cập nhật" -#: cps/admin.py:1534 +#: cps/admin.py:1531 msgid "Replacing files" msgstr "They thế tập tin" -#: cps/admin.py:1535 +#: cps/admin.py:1532 msgid "Database connections are closed" msgstr "Liên kết cơ sở dữ liệu đã được đóng" -#: cps/admin.py:1536 +#: cps/admin.py:1533 msgid "Stopping server" msgstr "Đang dừng server" -#: cps/admin.py:1537 +#: cps/admin.py:1534 msgid "Update finished, please press okay and reload page" msgstr "Cập nhật hoàn tất, ấn okay và tải lại trang" -#: cps/admin.py:1538 cps/admin.py:1539 cps/admin.py:1540 cps/admin.py:1541 -#: cps/admin.py:1542 cps/admin.py:1543 +#: cps/admin.py:1535 cps/admin.py:1536 cps/admin.py:1537 cps/admin.py:1538 +#: cps/admin.py:1539 cps/admin.py:1540 msgid "Update failed:" msgstr "Cập nhật thất bại:" -#: cps/admin.py:1538 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 +#: cps/admin.py:1535 cps/updater.py:391 cps/updater.py:626 cps/updater.py:628 msgid "HTTP Error" msgstr "Lỗi HTTP" -#: cps/admin.py:1539 cps/updater.py:391 cps/updater.py:628 +#: cps/admin.py:1536 cps/updater.py:393 cps/updater.py:630 msgid "Connection error" msgstr "Lỗi kết nối" -#: cps/admin.py:1540 cps/updater.py:393 cps/updater.py:630 +#: cps/admin.py:1537 cps/updater.py:395 cps/updater.py:632 msgid "Timeout while establishing connection" msgstr "" -#: cps/admin.py:1541 cps/updater.py:395 cps/updater.py:632 +#: cps/admin.py:1538 cps/updater.py:397 cps/updater.py:634 msgid "General error" msgstr "Lỗi chung" -#: cps/admin.py:1542 +#: cps/admin.py:1539 msgid "Update file could not be saved in temp dir" msgstr "File cập nhật không thể được lưu trong thư mục tạm thời" -#: cps/admin.py:1543 +#: cps/admin.py:1540 msgid "Files could not be replaced during update" msgstr "" -#: cps/admin.py:1567 +#: cps/admin.py:1564 msgid "Failed to extract at least One LDAP User" msgstr "" -#: cps/admin.py:1612 +#: cps/admin.py:1609 msgid "Failed to Create at Least One LDAP User" msgstr "" -#: cps/admin.py:1625 +#: cps/admin.py:1622 #, python-format msgid "Error: %(ldaperror)s" msgstr "" -#: cps/admin.py:1629 +#: cps/admin.py:1626 msgid "Error: No user returned in response of LDAP server" msgstr "" -#: cps/admin.py:1665 +#: cps/admin.py:1662 msgid "At Least One LDAP User Not Found in Database" msgstr "" -#: cps/admin.py:1667 +#: cps/admin.py:1664 msgid "{} User Successfully Imported" msgstr "" -#: cps/admin.py:1725 +#: cps/admin.py:1722 msgid "DB Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1745 +#: cps/admin.py:1742 msgid "DB is not Writeable" msgstr "" -#: cps/admin.py:1761 +#: cps/admin.py:1758 msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1765 +#: cps/admin.py:1762 msgid "Certfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1842 +#: cps/admin.py:1840 msgid "Password length has to be between 1 and 40" msgstr "" -#: cps/admin.py:1896 +#: cps/admin.py:1894 msgid "Database Settings updated" msgstr "Thiết lập cơ sở dữ lieu đã được cập nhật" -#: cps/admin.py:1904 +#: cps/admin.py:1902 msgid "Database Configuration" msgstr "Thiết lập cơ sở dữ lieu :)))" -#: cps/admin.py:1919 cps/web.py:1290 +#: cps/admin.py:1917 cps/web.py:1290 msgid "Oops! Please complete all fields." msgstr "Hãy điền hết các trường!" -#: cps/admin.py:1928 +#: cps/admin.py:1926 msgid "E-mail is not from valid domain" msgstr "Địa chỉ email không hợp lệ" -#: cps/admin.py:1934 +#: cps/admin.py:1932 msgid "Add new user" msgstr "Thêm người dùng mới" -#: cps/admin.py:1945 +#: cps/admin.py:1943 #, python-format msgid "User '%(user)s' created" msgstr "Người dùng '%(user)s' đã được tạo" -#: cps/admin.py:1951 +#: cps/admin.py:1949 msgid "Oops! An account already exists for this Email. or name." msgstr "Người dùng với địa chỉ email hoặc tên đã tồn tại." -#: cps/admin.py:1981 +#: cps/admin.py:1979 #, python-format msgid "User '%(nick)s' deleted" msgstr "Người dùng '%(nick)s' đã bị xoá" -#: cps/admin.py:1984 +#: cps/admin.py:1982 msgid "Can't delete Guest User" msgstr "Không thể xoá người dùng khách" -#: cps/admin.py:1987 +#: cps/admin.py:1985 msgid "No admin user remaining, can't delete user" msgstr "" -#: cps/admin.py:2042 cps/web.py:1469 +#: cps/admin.py:2040 cps/web.py:1469 msgid "Email can't be empty and has to be a valid Email" msgstr "" -#: cps/admin.py:2068 +#: cps/admin.py:2066 #, python-format msgid "User '%(nick)s' updated" msgstr "Người dùng '%(nick)s' đã được cập nhật" @@ -515,12 +515,12 @@ msgstr "chưa cài đặt" msgid "Execution permissions missing" msgstr "" -#: cps/db.py:756 cps/search.py:137 cps/web.py:747 +#: cps/db.py:768 cps/search.py:137 cps/web.py:747 #, python-format msgid "Custom Column No.%(column)d does not exist in calibre database" msgstr "" -#: cps/db.py:996 cps/templates/config_edit.html:203 +#: cps/db.py:1008 cps/templates/config_edit.html:203 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 #: cps/web.py:562 cps/web.py:596 cps/web.py:641 cps/web.py:681 cps/web.py:708 #: cps/web.py:989 cps/web.py:1019 cps/web.py:1064 cps/web.py:1092 @@ -528,100 +528,104 @@ msgstr "" msgid "None" msgstr "None" -#: cps/editbooks.py:124 cps/editbooks.py:912 cps/web.py:529 cps/web.py:1561 -#: cps/web.py:1605 cps/web.py:1650 +#: cps/editbooks.py:108 cps/editbooks.py:929 cps/web.py:529 cps/web.py:1561 +#: cps/web.py:1606 cps/web.py:1651 msgid "Oops! Selected book is unavailable. File does not exist or is not accessible" msgstr "" -#: cps/editbooks.py:168 cps/editbooks.py:1263 +#: cps/editbooks.py:151 cps/editbooks.py:1263 msgid "User has no rights to upload cover" msgstr "" -#: cps/editbooks.py:188 cps/editbooks.py:733 +#: cps/editbooks.py:171 cps/editbooks.py:744 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "" -#: cps/editbooks.py:230 +#: cps/editbooks.py:213 msgid "Metadata successfully updated" msgstr "Metadata đã được cập nhật thành công" -#: cps/editbooks.py:248 +#: cps/editbooks.py:231 msgid "Error editing book: {}" msgstr "" -#: cps/editbooks.py:305 +#: cps/editbooks.py:289 #, python-format msgid "File %(file)s uploaded" msgstr "File %(file)s đã được tải lên" -#: cps/editbooks.py:333 +#: cps/editbooks.py:317 msgid "Source or destination format for conversion missing" msgstr "Thiếu định dạng nguồn hoặc đích để convert" -#: cps/editbooks.py:341 +#: cps/editbooks.py:325 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "" -#: cps/editbooks.py:345 +#: cps/editbooks.py:329 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "Có lỗi xảy ra khi chuyển đổi định dạng cho sach: %(res)s" -#: cps/editbooks.py:652 +#: cps/editbooks.py:662 msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgstr "" -#: cps/editbooks.py:707 cps/editbooks.py:1043 +#: cps/editbooks.py:718 cps/editbooks.py:1049 #, python-format msgid "'%(langname)s' is not a valid language" msgstr "%(langname)s không phải là ngôn ngữ hợp lệ" -#: cps/editbooks.py:745 cps/editbooks.py:1203 +#: cps/editbooks.py:756 cps/editbooks.py:1192 +msgid "File type isn't allowed to be uploaded to this server" +msgstr "" + +#: cps/editbooks.py:762 cps/editbooks.py:1202 #, python-format msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgstr "" -#: cps/editbooks.py:749 cps/editbooks.py:1207 +#: cps/editbooks.py:766 cps/editbooks.py:1206 msgid "File to be uploaded must have an extension" msgstr "" -#: cps/editbooks.py:757 +#: cps/editbooks.py:774 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "" -#: cps/editbooks.py:777 +#: cps/editbooks.py:794 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "" -#: cps/editbooks.py:834 cps/editbooks.py:836 +#: cps/editbooks.py:851 cps/editbooks.py:853 msgid "Book Format Successfully Deleted" msgstr "" -#: cps/editbooks.py:843 cps/editbooks.py:845 +#: cps/editbooks.py:860 cps/editbooks.py:862 msgid "Book Successfully Deleted" msgstr "" -#: cps/editbooks.py:897 +#: cps/editbooks.py:914 msgid "You are missing permissions to delete books" msgstr "" -#: cps/editbooks.py:947 +#: cps/editbooks.py:964 msgid "edit metadata" msgstr "" -#: cps/editbooks.py:996 +#: cps/editbooks.py:1013 #, python-format msgid "%(seriesindex)s is not a valid number, skipping" msgstr "" -#: cps/editbooks.py:1198 +#: cps/editbooks.py:1197 msgid "User has no rights to upload additional file formats" msgstr "" -#: cps/editbooks.py:1219 +#: cps/editbooks.py:1218 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "" @@ -640,7 +644,7 @@ msgstr "" msgid "Google Drive setup not completed, try to deactivate and activate Google Drive again" msgstr "" -#: cps/gdrive.py:95 +#: cps/gdrive.py:96 msgid "Callback domain is not verified, please follow steps to verify domain in google developer console" msgstr "" @@ -649,7 +653,7 @@ msgstr "" msgid "%(format)s format not found for book id: %(book)d" msgstr "" -#: cps/helper.py:93 cps/tasks/convert.py:86 +#: cps/helper.py:93 cps/tasks/convert.py:89 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "" @@ -726,123 +730,119 @@ msgstr "Xoá sách %(id)s thất bại: %(message)s" msgid "Deleting book %(id)s from database only, book path in database not valid: %(path)s" msgstr "" -#: cps/helper.py:452 +#: cps/helper.py:465 #, python-format msgid "Rename author from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgstr "" -#: cps/helper.py:524 cps/helper.py:533 +#: cps/helper.py:536 cps/helper.py:545 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "File %(file)s không tìm thấy trẻn Google Drive" -#: cps/helper.py:567 +#: cps/helper.py:587 #, python-format msgid "Rename title from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgstr "" -#: cps/helper.py:587 -msgid "Error in rename file in path: {}" -msgstr "" - -#: cps/helper.py:605 +#: cps/helper.py:625 #, python-format msgid "Book path %(path)s not found on Google Drive" msgstr "Không tìm thấy được dẫn sách %(path)s trên Google Drive" -#: cps/helper.py:670 +#: cps/helper.py:685 msgid "Found an existing account for this Email address" msgstr "" -#: cps/helper.py:678 +#: cps/helper.py:693 msgid "This username is already taken" msgstr "Username này đã bị sử dụng" -#: cps/helper.py:690 +#: cps/helper.py:705 #, fuzzy msgid "Invalid Email address format" msgstr "Định dạng email address không hợp lệ" -#: cps/helper.py:710 +#: cps/helper.py:726 msgid "Password doesn't comply with password validation rules" msgstr "" -#: cps/helper.py:859 +#: cps/helper.py:873 msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "" -#: cps/helper.py:869 +#: cps/helper.py:883 msgid "Error Downloading Cover" msgstr "Lỗi tải xuống ảnh bìa" -#: cps/helper.py:872 +#: cps/helper.py:886 msgid "Cover Format Error" msgstr "Định dạng ảnh bìa lỗi" -#: cps/helper.py:875 +#: cps/helper.py:889 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "" -#: cps/helper.py:885 +#: cps/helper.py:899 msgid "Failed to create path for cover" msgstr "Tạo đường dẫn cho ảnh bìa thất bại" -#: cps/helper.py:901 +#: cps/helper.py:915 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "" -#: cps/helper.py:912 +#: cps/helper.py:926 msgid "Only jpg/jpeg/png/webp/bmp files are supported as coverfile" msgstr "" -#: cps/helper.py:924 +#: cps/helper.py:938 msgid "Invalid cover file content" msgstr "" -#: cps/helper.py:928 +#: cps/helper.py:942 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "" -#: cps/helper.py:999 cps/helper.py:1156 +#: cps/helper.py:1014 cps/helper.py:1171 #, fuzzy msgid "Cover" msgstr "Khám phá" -#: cps/helper.py:1016 +#: cps/helper.py:1031 msgid "UnRar binary file not found" msgstr "" -#: cps/helper.py:1027 +#: cps/helper.py:1042 msgid "Error executing UnRar" msgstr "" -#: cps/helper.py:1035 +#: cps/helper.py:1050 msgid "Could not find the specified directory" msgstr "" -#: cps/helper.py:1038 +#: cps/helper.py:1053 msgid "Please specify a directory, not a file" msgstr "" -#: cps/helper.py:1052 +#: cps/helper.py:1067 msgid "Calibre binaries not viable" msgstr "" -#: cps/helper.py:1061 +#: cps/helper.py:1076 #, python-format msgid "Missing calibre binaries: %(missing)s" msgstr "" -#: cps/helper.py:1063 +#: cps/helper.py:1078 #, python-format msgid "Missing executable permissions: %(missing)s" msgstr "" -#: cps/helper.py:1068 +#: cps/helper.py:1083 msgid "Error executing Calibre" msgstr "" -#: cps/helper.py:1158 cps/templates/admin.html:216 +#: cps/helper.py:1173 cps/templates/admin.html:216 msgid "Queue all books for metadata backup" msgstr "" @@ -888,35 +888,35 @@ msgstr "" msgid "Not Linked to %(oauth)s" msgstr "" -#: cps/oauth_bb.py:261 +#: cps/oauth_bb.py:262 msgid "Failed to log in with GitHub." msgstr "Đăng nhập với Github thất bại." -#: cps/oauth_bb.py:267 +#: cps/oauth_bb.py:268 msgid "Failed to fetch user info from GitHub." msgstr "Lấy thông tin user từ Github thất bại." -#: cps/oauth_bb.py:279 +#: cps/oauth_bb.py:280 msgid "Failed to log in with Google." msgstr "Đăng nhập với Google thất bại." -#: cps/oauth_bb.py:285 +#: cps/oauth_bb.py:286 msgid "Failed to fetch user info from Google." msgstr "Lấy thông tin người dùng từ Google thất bại." -#: cps/oauth_bb.py:332 +#: cps/oauth_bb.py:334 msgid "GitHub Oauth error, please retry later." msgstr "Oauth Github lỗi, xin thử lại sau." -#: cps/oauth_bb.py:335 +#: cps/oauth_bb.py:337 msgid "GitHub Oauth error: {}" msgstr "Github Oauth lỗi: {}" -#: cps/oauth_bb.py:356 +#: cps/oauth_bb.py:358 msgid "Google Oauth error, please retry later." msgstr "Google Oauth lỗi, làm ơn thử lại sau." -#: cps/oauth_bb.py:359 +#: cps/oauth_bb.py:361 msgid "Google Oauth error: {}" msgstr "Google Oauth lỗi: {}" @@ -1275,32 +1275,32 @@ msgstr "Huỷ bỏ" msgid "Unknown Status" msgstr "Trạng thái không xác định" -#: cps/updater.py:431 cps/updater.py:442 cps/updater.py:543 cps/updater.py:558 +#: cps/updater.py:433 cps/updater.py:444 cps/updater.py:545 cps/updater.py:560 msgid "Unexpected data while reading update information" msgstr "" -#: cps/updater.py:438 cps/updater.py:550 +#: cps/updater.py:440 cps/updater.py:552 msgid "No update available. You already have the latest version installed" msgstr "" -#: cps/updater.py:456 +#: cps/updater.py:458 msgid "A new update is available. Click on the button below to update to the latest version." msgstr "" -#: cps/updater.py:474 +#: cps/updater.py:476 msgid "Could not fetch update information" msgstr "" -#: cps/updater.py:484 +#: cps/updater.py:486 msgid "Click on the button below to update to the latest stable version." msgstr "" -#: cps/updater.py:493 cps/updater.py:507 cps/updater.py:518 +#: cps/updater.py:495 cps/updater.py:509 cps/updater.py:520 #, python-format msgid "A new update is available. Click on the button below to update to version: %(version)s" msgstr "" -#: cps/updater.py:536 +#: cps/updater.py:538 msgid "No release information available" msgstr "" @@ -1476,50 +1476,50 @@ msgstr "Metadata đã được cập nhật thành công" msgid "Oops! An account already exists for this Email." msgstr "Tìm thấy một tài khoản đã toàn tại cho địa chỉ email này" -#: cps/services/gmail.py:58 +#: cps/services/gmail.py:59 msgid "Found no valid gmail.json file with OAuth information" msgstr "" -#: cps/tasks/convert.py:105 +#: cps/tasks/convert.py:108 #, fuzzy, python-format msgid "%(book)s send to E-Reader" msgstr "%(book)s gửi tới Kindle" -#: cps/tasks/convert.py:167 +#: cps/tasks/convert.py:170 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "" -#: cps/tasks/convert.py:201 +#: cps/tasks/convert.py:204 #, python-format msgid "%(format)s format not found on disk" msgstr "" -#: cps/tasks/convert.py:205 +#: cps/tasks/convert.py:208 msgid "Ebook converter failed with unknown error" msgstr "" -#: cps/tasks/convert.py:224 +#: cps/tasks/convert.py:227 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "" -#: cps/tasks/convert.py:245 +#: cps/tasks/convert.py:248 #, python-format msgid "Converted file not found or more than one file in folder %(folder)s" msgstr "" -#: cps/tasks/convert.py:287 +#: cps/tasks/convert.py:291 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "" -#: cps/tasks/convert.py:310 +#: cps/tasks/convert.py:314 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "" -#: cps/tasks/convert.py:315 +#: cps/tasks/convert.py:319 #, fuzzy msgid "Convert" msgstr "Khám phá" @@ -1534,7 +1534,7 @@ msgstr "Kết nối lại với cơ sở dữ liệu Calibre" msgid "E-mail" msgstr "Test e-mail" -#: cps/tasks/metadata_backup.py:33 +#: cps/tasks/metadata_backup.py:34 msgid "Backing up Metadata" msgstr "" @@ -1547,20 +1547,20 @@ msgstr "" msgid "Generated %(count)s cover thumbnails" msgstr "" -#: cps/tasks/thumbnail.py:230 cps/tasks/thumbnail.py:443 -#: cps/tasks/thumbnail.py:511 +#: cps/tasks/thumbnail.py:231 cps/tasks/thumbnail.py:444 +#: cps/tasks/thumbnail.py:512 msgid "Cover Thumbnails" msgstr "" -#: cps/tasks/thumbnail.py:289 +#: cps/tasks/thumbnail.py:290 msgid "Generated {0} series thumbnails" msgstr "" -#: cps/tasks/thumbnail.py:454 +#: cps/tasks/thumbnail.py:455 msgid "Clearing cover thumbnail cache" msgstr "" -#: cps/tasks/upload.py:38 cps/templates/admin.html:20 +#: cps/tasks/upload.py:39 cps/templates/admin.html:20 #: cps/templates/layout.html:81 cps/templates/user_table.html:145 msgid "Upload" msgstr "Tải lên" @@ -1810,7 +1810,7 @@ msgstr "Ok" #: cps/templates/admin.html:259 cps/templates/admin.html:273 #: cps/templates/book_edit.html:214 cps/templates/book_table.html:127 -#: cps/templates/config_db.html:66 cps/templates/config_edit.html:423 +#: cps/templates/config_db.html:66 cps/templates/config_edit.html:427 #: cps/templates/config_view_edit.html:175 cps/templates/detail.html:342 #: cps/templates/modal_dialogs.html:64 cps/templates/modal_dialogs.html:99 #: cps/templates/modal_dialogs.html:117 cps/templates/modal_dialogs.html:135 @@ -1996,7 +1996,7 @@ msgid "Fetch Metadata" msgstr "Fetch Metadata" #: cps/templates/book_edit.html:213 cps/templates/config_db.html:65 -#: cps/templates/config_edit.html:422 cps/templates/config_view_edit.html:174 +#: cps/templates/config_edit.html:426 cps/templates/config_view_edit.html:174 #: cps/templates/email_edit.html:65 cps/templates/schedule_edit.html:44 #: cps/templates/shelf_edit.html:25 cps/templates/shelf_order.html:41 #: cps/templates/user_edit.html:142 @@ -2465,47 +2465,51 @@ msgid "Configure Backend for Limiter" msgstr "" #: cps/templates/config_edit.html:376 -msgid "Options for Limiter" +msgid "Options for Limiter Backend" msgstr "" -#: cps/templates/config_edit.html:381 +#: cps/templates/config_edit.html:382 +msgid "Check if file extensions matches file content on upload" +msgstr "" + +#: cps/templates/config_edit.html:385 msgid "Session protection" msgstr "" -#: cps/templates/config_edit.html:383 +#: cps/templates/config_edit.html:387 msgid "Basic" msgstr "" -#: cps/templates/config_edit.html:384 +#: cps/templates/config_edit.html:388 msgid "Strong" msgstr "" -#: cps/templates/config_edit.html:389 +#: cps/templates/config_edit.html:393 #, fuzzy msgid "User Password policy" msgstr "Reset mật khẩu người dùng" -#: cps/templates/config_edit.html:393 +#: cps/templates/config_edit.html:397 msgid "Minimum password length" msgstr "" -#: cps/templates/config_edit.html:398 +#: cps/templates/config_edit.html:402 msgid "Enforce number" msgstr "" -#: cps/templates/config_edit.html:402 +#: cps/templates/config_edit.html:406 msgid "Enforce lowercase characters" msgstr "" -#: cps/templates/config_edit.html:406 +#: cps/templates/config_edit.html:410 msgid "Enforce uppercase characters" msgstr "" -#: cps/templates/config_edit.html:410 +#: cps/templates/config_edit.html:414 msgid "Enforce characters (needed For Chinese/Japanese/Korean Characters)" msgstr "" -#: cps/templates/config_edit.html:414 +#: cps/templates/config_edit.html:418 msgid "Enforce special characters" msgstr "" @@ -2635,6 +2639,11 @@ msgstr "Đánh dấu chưa đọc" msgid "Mark As Read" msgstr "Đánh dấu đã đọc" +#: cps/templates/detail.html:254 +#, fuzzy +msgid "Mark Book as Read or Unread" +msgstr "Đánh dấu chưa đọc" + #: cps/templates/detail.html:254 cps/templates/listenmp3.html:159 msgid "Read" msgstr "Đọc" @@ -2647,8 +2656,13 @@ msgstr "Khôi phục từ lưu trữ" msgid "Add to archive" msgstr "Thêm vào lưu trữ" -#: cps/templates/detail.html:267 cps/templates/listenmp3.html:167 -msgid "Archived" +#: cps/templates/detail.html:267 +msgid "Mark Book as archived or not, to hide it in Calibre-Web and delete it from Kobo Reader" +msgstr "" + +#: cps/templates/detail.html:267 +#, fuzzy +msgid "Archive" msgstr "Lưu trữ" #: cps/templates/detail.html:278 cps/templates/listenmp3.html:177 @@ -2929,6 +2943,10 @@ msgstr "Chi tiết sách" msgid "Grid" msgstr "" +#: cps/templates/listenmp3.html:167 +msgid "Archived" +msgstr "Lưu trữ" + #: cps/templates/login.html:18 msgid "Remember Me" msgstr "Ghi nhớ tôi" diff --git a/cps/translations/zh_Hans_CN/LC_MESSAGES/messages.mo b/cps/translations/zh_Hans_CN/LC_MESSAGES/messages.mo index 560aa9d0..79bf6557 100644 Binary files a/cps/translations/zh_Hans_CN/LC_MESSAGES/messages.mo and b/cps/translations/zh_Hans_CN/LC_MESSAGES/messages.mo differ diff --git a/cps/translations/zh_Hans_CN/LC_MESSAGES/messages.po b/cps/translations/zh_Hans_CN/LC_MESSAGES/messages.po index 1a778c91..10c46481 100644 --- a/cps/translations/zh_Hans_CN/LC_MESSAGES/messages.po +++ b/cps/translations/zh_Hans_CN/LC_MESSAGES/messages.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Calibre-Web\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2024-06-09 12:26+0200\n" +"POT-Creation-Date: 2024-06-30 12:19+0200\n" "PO-Revision-Date: 2020-09-27 22:18+0800\n" "Last-Translator: xlivevil \n" "Language: zh_CN\n" @@ -16,7 +16,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.11.0\n" +"Generated-By: Babel 2.13.1\n" #: cps/about.py:84 msgid "Statistics" @@ -42,9 +42,9 @@ msgstr "未知命令" msgid "Success! Books queued for Metadata Backup, please check Tasks for result" msgstr "成功!书籍已排队进行元数据备份,请检查任务列表以获取结果" -#: cps/admin.py:207 cps/editbooks.py:591 cps/editbooks.py:593 -#: cps/editbooks.py:631 cps/editbooks.py:648 cps/editbooks.py:1280 -#: cps/updater.py:613 cps/uploader.py:93 cps/uploader.py:102 +#: cps/admin.py:207 cps/editbooks.py:573 cps/editbooks.py:575 +#: cps/editbooks.py:615 cps/editbooks.py:658 cps/editbooks.py:1280 +#: cps/updater.py:615 cps/uploader.py:93 cps/uploader.py:102 msgid "Unknown" msgstr "未知" @@ -64,12 +64,12 @@ msgstr "界面配置" msgid "Edit Users" msgstr "管理用户" -#: cps/admin.py:368 cps/opds.py:541 cps/templates/grid.html:14 +#: cps/admin.py:368 cps/opds.py:542 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "全部" -#: cps/admin.py:395 cps/admin.py:1417 +#: cps/admin.py:395 cps/admin.py:1414 msgid "User not found" msgstr "找不到用户" @@ -86,7 +86,7 @@ msgstr "显示全部" msgid "Malformed request" msgstr "格式错误的请求" -#: cps/admin.py:471 cps/admin.py:2048 +#: cps/admin.py:471 cps/admin.py:2046 msgid "Guest Name can't be changed" msgstr "访客名称无法更改" @@ -94,7 +94,7 @@ msgstr "访客名称无法更改" msgid "Guest can't have this role" msgstr "游客无法拥有此角色" -#: cps/admin.py:495 cps/admin.py:2002 +#: cps/admin.py:495 cps/admin.py:2000 msgid "No admin user remaining, can't remove admin role" msgstr "没有其余管理员账户,无法删除管理员角色" @@ -126,7 +126,7 @@ msgstr "无可用本地化" msgid "No Valid Book Language Given" msgstr "无有效书籍语言" -#: cps/admin.py:535 cps/editbooks.py:457 +#: cps/admin.py:535 cps/editbooks.py:440 msgid "Parameter not found" msgstr "参数未找到" @@ -138,7 +138,7 @@ msgstr "无效的阅读栏目" msgid "Invalid Restricted Column" msgstr "无效的限制栏目" -#: cps/admin.py:598 cps/admin.py:1873 +#: cps/admin.py:598 cps/admin.py:1871 msgid "Calibre-Web configuration updated" msgstr "Calibre-Web 配置已更新" @@ -218,291 +218,291 @@ msgstr "标签未找到" msgid "Invalid Action" msgstr "无效的动作" -#: cps/admin.py:1123 +#: cps/admin.py:1120 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "client_secrets.json 未为 Web 应用程序配置" -#: cps/admin.py:1168 +#: cps/admin.py:1165 msgid "Logfile Location is not Valid, Please Enter Correct Path" msgstr "日志文件路径无效,请输入正确的路径" -#: cps/admin.py:1174 +#: cps/admin.py:1171 msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgstr "访问日志路径无效,请输入正确的路径" -#: cps/admin.py:1208 +#: cps/admin.py:1205 msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgstr "请输入 LDAP 主机、端口、DN 和用户对象标识符" -#: cps/admin.py:1214 +#: cps/admin.py:1211 msgid "Please Enter a LDAP Service Account and Password" msgstr "请输入一个 LDAP 服务账号和密码 " -#: cps/admin.py:1217 +#: cps/admin.py:1214 msgid "Please Enter a LDAP Service Account" msgstr "请输入一个 LDAP 服务账号" -#: cps/admin.py:1222 +#: cps/admin.py:1219 #, python-format msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgstr "LDAP 组对象过滤器需要一个具有“%s”格式标识符" -#: cps/admin.py:1224 +#: cps/admin.py:1221 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "LDAP 组对象过滤器的括号不匹配" -#: cps/admin.py:1228 +#: cps/admin.py:1225 #, python-format msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgstr "LDAP 用户对象过滤器需要一个具有“%s”格式标识符" -#: cps/admin.py:1230 +#: cps/admin.py:1227 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "LDAP 用户对象过滤器的括号不匹配" -#: cps/admin.py:1237 +#: cps/admin.py:1234 #, python-format msgid "LDAP Member User Filter needs to Have One \"%s\" Format Identifier" msgstr "LDAP 成员用户过滤器需要有一个“%s”格式标识符" -#: cps/admin.py:1239 +#: cps/admin.py:1236 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "LDAP 成员用户过滤器中有不匹配的括号" -#: cps/admin.py:1246 +#: cps/admin.py:1243 msgid "LDAP CACertificate, Certificate or Key Location is not Valid, Please Enter Correct Path" msgstr "LDAP CA证书、证书或密钥位置无效,请输入正确的路径" -#: cps/admin.py:1277 cps/templates/admin.html:53 +#: cps/admin.py:1274 cps/templates/admin.html:53 msgid "Add New User" msgstr "添加新用户" -#: cps/admin.py:1286 cps/templates/admin.html:100 +#: cps/admin.py:1283 cps/templates/admin.html:100 msgid "Edit Email Server Settings" msgstr "编辑邮件服务器设置" -#: cps/admin.py:1305 +#: cps/admin.py:1302 msgid "Success! Gmail Account Verified." msgstr "Gmail 账户验证成功" -#: cps/admin.py:1325 cps/admin.py:1328 cps/admin.py:1713 cps/admin.py:1857 -#: cps/admin.py:1955 cps/admin.py:2076 cps/editbooks.py:243 -#: cps/editbooks.py:319 cps/editbooks.py:1242 cps/shelf.py:90 cps/shelf.py:150 +#: cps/admin.py:1322 cps/admin.py:1325 cps/admin.py:1710 cps/admin.py:1855 +#: cps/admin.py:1953 cps/admin.py:2074 cps/editbooks.py:226 +#: cps/editbooks.py:303 cps/editbooks.py:1242 cps/shelf.py:90 cps/shelf.py:150 #: cps/shelf.py:193 cps/shelf.py:243 cps/shelf.py:280 cps/shelf.py:354 -#: cps/shelf.py:468 cps/tasks/convert.py:150 cps/web.py:1520 +#: cps/shelf.py:468 cps/tasks/convert.py:153 cps/web.py:1520 #, python-format msgid "Oops! Database Error: %(error)s." msgstr "数据库错误:%(error)s" -#: cps/admin.py:1335 +#: cps/admin.py:1332 #, python-format msgid "Test e-mail queued for sending to %(email)s, please check Tasks for result" msgstr "发送给 %(email)s 的测试邮件已加入队列。请检查任务结果" -#: cps/admin.py:1338 +#: cps/admin.py:1335 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "发送测试邮件时出错:%(res)s" -#: cps/admin.py:1340 +#: cps/admin.py:1337 msgid "Please configure your e-mail address first..." msgstr "请先配置您的邮箱地址..." -#: cps/admin.py:1342 +#: cps/admin.py:1339 msgid "Email Server Settings updated" msgstr "邮件服务器设置已更新" -#: cps/admin.py:1365 cps/templates/admin.html:195 +#: cps/admin.py:1362 cps/templates/admin.html:195 msgid "Edit Scheduled Tasks Settings" msgstr "编辑计划任务设置" -#: cps/admin.py:1377 +#: cps/admin.py:1374 msgid "Invalid start time for task specified" msgstr "指定任务的开始时间无效" -#: cps/admin.py:1382 +#: cps/admin.py:1379 msgid "Invalid duration for task specified" msgstr "指定任务的持续时间无效" -#: cps/admin.py:1392 +#: cps/admin.py:1389 msgid "Scheduled tasks settings updated" msgstr "已更新计划任务设置" -#: cps/admin.py:1402 cps/admin.py:1451 cps/admin.py:2072 cps/web.py:1316 +#: cps/admin.py:1399 cps/admin.py:1448 cps/admin.py:2070 cps/web.py:1316 msgid "Oops! An unknown error occurred. Please try again later." msgstr "发生一个未知错误,请稍后再试" -#: cps/admin.py:1406 +#: cps/admin.py:1403 msgid "Settings DB is not Writeable" msgstr "设置数据库不可写" -#: cps/admin.py:1436 cps/admin.py:2064 +#: cps/admin.py:1433 cps/admin.py:2062 #, python-format msgid "Edit User %(nick)s" msgstr "编辑用户 %(nick)s" -#: cps/admin.py:1448 +#: cps/admin.py:1445 #, python-format msgid "Success! Password for user %(user)s reset" msgstr "用户 %(user)s 的密码已重置" -#: cps/admin.py:1454 +#: cps/admin.py:1451 msgid "Oops! Please configure the SMTP mail settings." msgstr "请先配置 SMTP 邮箱设置..." -#: cps/admin.py:1465 +#: cps/admin.py:1462 msgid "Logfile viewer" msgstr "日志文件查看器" -#: cps/admin.py:1531 +#: cps/admin.py:1528 msgid "Requesting update package" msgstr "正在请求更新包" -#: cps/admin.py:1532 +#: cps/admin.py:1529 msgid "Downloading update package" msgstr "正在下载更新包" -#: cps/admin.py:1533 +#: cps/admin.py:1530 msgid "Unzipping update package" msgstr "正在解压更新包" -#: cps/admin.py:1534 +#: cps/admin.py:1531 msgid "Replacing files" msgstr "正在替换文件" -#: cps/admin.py:1535 +#: cps/admin.py:1532 msgid "Database connections are closed" msgstr "数据库连接已关闭" -#: cps/admin.py:1536 +#: cps/admin.py:1533 msgid "Stopping server" msgstr "正在停止服务器" -#: cps/admin.py:1537 +#: cps/admin.py:1534 msgid "Update finished, please press okay and reload page" msgstr "更新完成,请点击确定并刷新页面" -#: cps/admin.py:1538 cps/admin.py:1539 cps/admin.py:1540 cps/admin.py:1541 -#: cps/admin.py:1542 cps/admin.py:1543 +#: cps/admin.py:1535 cps/admin.py:1536 cps/admin.py:1537 cps/admin.py:1538 +#: cps/admin.py:1539 cps/admin.py:1540 msgid "Update failed:" msgstr "更新失败:" -#: cps/admin.py:1538 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 +#: cps/admin.py:1535 cps/updater.py:391 cps/updater.py:626 cps/updater.py:628 msgid "HTTP Error" msgstr "HTTP 错误" -#: cps/admin.py:1539 cps/updater.py:391 cps/updater.py:628 +#: cps/admin.py:1536 cps/updater.py:393 cps/updater.py:630 msgid "Connection error" msgstr "连接错误" -#: cps/admin.py:1540 cps/updater.py:393 cps/updater.py:630 +#: cps/admin.py:1537 cps/updater.py:395 cps/updater.py:632 msgid "Timeout while establishing connection" msgstr "建立连接超时" -#: cps/admin.py:1541 cps/updater.py:395 cps/updater.py:632 +#: cps/admin.py:1538 cps/updater.py:397 cps/updater.py:634 msgid "General error" msgstr "一般错误" -#: cps/admin.py:1542 +#: cps/admin.py:1539 msgid "Update file could not be saved in temp dir" msgstr "更新文件无法保存在临时目录中" -#: cps/admin.py:1543 +#: cps/admin.py:1540 msgid "Files could not be replaced during update" msgstr "更新期间无法替换文件" -#: cps/admin.py:1567 +#: cps/admin.py:1564 msgid "Failed to extract at least One LDAP User" msgstr "未能获得任何 LDAP 用户" -#: cps/admin.py:1612 +#: cps/admin.py:1609 msgid "Failed to Create at Least One LDAP User" msgstr "未能创建任何 LDAP 用户" -#: cps/admin.py:1625 +#: cps/admin.py:1622 #, python-format msgid "Error: %(ldaperror)s" msgstr "错误:%(ldaperror)s" -#: cps/admin.py:1629 +#: cps/admin.py:1626 msgid "Error: No user returned in response of LDAP server" msgstr "错误:在 LDAP 服务器的响应中没有返回用户" -#: cps/admin.py:1665 +#: cps/admin.py:1662 msgid "At Least One LDAP User Not Found in Database" msgstr "数据库中没有找到任何 LDAP 用户" -#: cps/admin.py:1667 +#: cps/admin.py:1664 msgid "{} User Successfully Imported" msgstr "{} 用户被成功导入" -#: cps/admin.py:1725 +#: cps/admin.py:1722 msgid "DB Location is not Valid, Please Enter Correct Path" msgstr "数据库路径无效,请输入正确的路径" -#: cps/admin.py:1745 +#: cps/admin.py:1742 msgid "DB is not Writeable" msgstr "数据库不可写入" -#: cps/admin.py:1761 +#: cps/admin.py:1758 msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgstr "密钥文件路径无效,请输入正确的路径" -#: cps/admin.py:1765 +#: cps/admin.py:1762 msgid "Certfile Location is not Valid, Please Enter Correct Path" msgstr "证书文件路径无效,请输入正确的路径" -#: cps/admin.py:1842 +#: cps/admin.py:1840 msgid "Password length has to be between 1 and 40" msgstr "密码长度必须在1到40之间" -#: cps/admin.py:1896 +#: cps/admin.py:1894 msgid "Database Settings updated" msgstr "数据库设置已更新" -#: cps/admin.py:1904 +#: cps/admin.py:1902 msgid "Database Configuration" msgstr "数据库配置" -#: cps/admin.py:1919 cps/web.py:1290 +#: cps/admin.py:1917 cps/web.py:1290 msgid "Oops! Please complete all fields." msgstr "请填写所有字段!" -#: cps/admin.py:1928 +#: cps/admin.py:1926 msgid "E-mail is not from valid domain" msgstr "邮箱不在有效域中" -#: cps/admin.py:1934 +#: cps/admin.py:1932 msgid "Add new user" msgstr "添加新用户" -#: cps/admin.py:1945 +#: cps/admin.py:1943 #, python-format msgid "User '%(user)s' created" msgstr "用户“%(user)s”已创建" -#: cps/admin.py:1951 +#: cps/admin.py:1949 msgid "Oops! An account already exists for this Email. or name." msgstr "使用此邮箱或用户名的账号已经存在" -#: cps/admin.py:1981 +#: cps/admin.py:1979 #, python-format msgid "User '%(nick)s' deleted" msgstr "用户“%(nick)s”已删除" -#: cps/admin.py:1984 +#: cps/admin.py:1982 msgid "Can't delete Guest User" msgstr "无法删除游客用户" -#: cps/admin.py:1987 +#: cps/admin.py:1985 msgid "No admin user remaining, can't delete user" msgstr "管理员账户不存在,无法删除用户" -#: cps/admin.py:2042 cps/web.py:1469 +#: cps/admin.py:2040 cps/web.py:1469 msgid "Email can't be empty and has to be a valid Email" msgstr "电子邮件地址不能为空,并且必须是有效的电子邮件" -#: cps/admin.py:2068 +#: cps/admin.py:2066 #, python-format msgid "User '%(nick)s' updated" msgstr "用户“%(nick)s”已更新" @@ -515,12 +515,12 @@ msgstr "未安装" msgid "Execution permissions missing" msgstr "缺少执行权限" -#: cps/db.py:756 cps/search.py:137 cps/web.py:747 +#: cps/db.py:768 cps/search.py:137 cps/web.py:747 #, python-format msgid "Custom Column No.%(column)d does not exist in calibre database" msgstr "自定义列号:%(column)d 在 Calibre 数据库中不存在" -#: cps/db.py:996 cps/templates/config_edit.html:203 +#: cps/db.py:1008 cps/templates/config_edit.html:203 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 #: cps/web.py:562 cps/web.py:596 cps/web.py:641 cps/web.py:681 cps/web.py:708 #: cps/web.py:989 cps/web.py:1019 cps/web.py:1064 cps/web.py:1092 @@ -528,100 +528,105 @@ msgstr "自定义列号:%(column)d 在 Calibre 数据库中不存在" msgid "None" msgstr "无" -#: cps/editbooks.py:124 cps/editbooks.py:912 cps/web.py:529 cps/web.py:1561 -#: cps/web.py:1605 cps/web.py:1650 +#: cps/editbooks.py:108 cps/editbooks.py:929 cps/web.py:529 cps/web.py:1561 +#: cps/web.py:1606 cps/web.py:1651 msgid "Oops! Selected book is unavailable. File does not exist or is not accessible" msgstr "糟糕!选择书名无法打开。文件不存在或者文件不可访问" -#: cps/editbooks.py:168 cps/editbooks.py:1263 +#: cps/editbooks.py:151 cps/editbooks.py:1263 msgid "User has no rights to upload cover" msgstr "用户没有权限上传封面" -#: cps/editbooks.py:188 cps/editbooks.py:733 +#: cps/editbooks.py:171 cps/editbooks.py:744 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "标识符不区分大小写,覆盖旧标识符" -#: cps/editbooks.py:230 +#: cps/editbooks.py:213 msgid "Metadata successfully updated" msgstr "已成功更新元数据" -#: cps/editbooks.py:248 +#: cps/editbooks.py:231 msgid "Error editing book: {}" msgstr "编辑书籍时出错: {}" -#: cps/editbooks.py:305 +#: cps/editbooks.py:289 #, python-format msgid "File %(file)s uploaded" msgstr "文件 %(file)s 已上传" -#: cps/editbooks.py:333 +#: cps/editbooks.py:317 msgid "Source or destination format for conversion missing" msgstr "转换的源格式或目的格式缺失" -#: cps/editbooks.py:341 +#: cps/editbooks.py:325 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "书籍已经被成功加入 %(book_format)s 格式转换队列" -#: cps/editbooks.py:345 +#: cps/editbooks.py:329 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "转换此书籍时出现错误: %(res)s" -#: cps/editbooks.py:652 +#: cps/editbooks.py:662 msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgstr "上传的书籍可能已经存在,建议修改后重新上传: " -#: cps/editbooks.py:707 cps/editbooks.py:1043 +#: cps/editbooks.py:718 cps/editbooks.py:1049 #, python-format msgid "'%(langname)s' is not a valid language" msgstr "'%(langname)s' 不是一种有效语言" -#: cps/editbooks.py:745 cps/editbooks.py:1203 +#: cps/editbooks.py:756 cps/editbooks.py:1192 +#, fuzzy +msgid "File type isn't allowed to be uploaded to this server" +msgstr "不能上传文件扩展名为“%(ext)s”的文件到此服务器" + +#: cps/editbooks.py:762 cps/editbooks.py:1202 #, python-format msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgstr "不能上传文件扩展名为“%(ext)s”的文件到此服务器" -#: cps/editbooks.py:749 cps/editbooks.py:1207 +#: cps/editbooks.py:766 cps/editbooks.py:1206 msgid "File to be uploaded must have an extension" msgstr "要上传的文件必须具有扩展名" -#: cps/editbooks.py:757 +#: cps/editbooks.py:774 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "文件 %(filename)s 无法保存到临时目录" -#: cps/editbooks.py:777 +#: cps/editbooks.py:794 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "移动封面文件失败 %(file)s:%(error)s" -#: cps/editbooks.py:834 cps/editbooks.py:836 +#: cps/editbooks.py:851 cps/editbooks.py:853 msgid "Book Format Successfully Deleted" msgstr "书籍的此格式副本已成功删除" -#: cps/editbooks.py:843 cps/editbooks.py:845 +#: cps/editbooks.py:860 cps/editbooks.py:862 msgid "Book Successfully Deleted" msgstr "书籍已成功删除" -#: cps/editbooks.py:897 +#: cps/editbooks.py:914 msgid "You are missing permissions to delete books" msgstr "您没有删除书籍的权限" -#: cps/editbooks.py:947 +#: cps/editbooks.py:964 msgid "edit metadata" msgstr "编辑元数据" -#: cps/editbooks.py:996 +#: cps/editbooks.py:1013 #, python-format msgid "%(seriesindex)s is not a valid number, skipping" msgstr "%(seriesindex)s 不是一个有效的数值,忽略" -#: cps/editbooks.py:1198 +#: cps/editbooks.py:1197 msgid "User has no rights to upload additional file formats" msgstr "用户没有权限上传其他文件格式" -#: cps/editbooks.py:1219 +#: cps/editbooks.py:1218 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "创建路径 %(path)s 失败 (权限不足)" @@ -640,7 +645,7 @@ msgstr "已添加 %(ext)s 格式到 %(book)s" msgid "Google Drive setup not completed, try to deactivate and activate Google Drive again" msgstr "Google Drive 设置未完成,请尝试停用并再次激活 Google 云端硬盘" -#: cps/gdrive.py:95 +#: cps/gdrive.py:96 msgid "Callback domain is not verified, please follow steps to verify domain in google developer console" msgstr "回调域名尚未被校验,请在 Google 开发者控制台按步骤校验域名" @@ -649,7 +654,7 @@ msgstr "回调域名尚未被校验,请在 Google 开发者控制台按步骤 msgid "%(format)s format not found for book id: %(book)d" msgstr "找不到 ID 为 %(book)d 的书籍的 %(format)s 格式" -#: cps/helper.py:93 cps/tasks/convert.py:86 +#: cps/helper.py:93 cps/tasks/convert.py:89 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "Google Drive %(fn)s 上找不到 %(format)s" @@ -722,123 +727,119 @@ msgstr "删除书籍 %(id)s 失败:%(message)s" msgid "Deleting book %(id)s from database only, book path in database not valid: %(path)s" msgstr "仅从数据库中删除书籍 %(id)s,数据库中的书籍路径无效: %(path)s" -#: cps/helper.py:452 +#: cps/helper.py:465 #, python-format msgid "Rename author from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgstr "将作者从“%(src)s”改为“%(dest)s”时失败,出错信息:%(error)s" -#: cps/helper.py:524 cps/helper.py:533 +#: cps/helper.py:536 cps/helper.py:545 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "Google Drive 上找不到文件 %(file)s" -#: cps/helper.py:567 +#: cps/helper.py:587 #, python-format msgid "Rename title from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgstr "将标题从“%(src)s”改为“%(dest)s”时失败,出错信息:%(error)s" -#: cps/helper.py:587 -msgid "Error in rename file in path: {}" -msgstr "重命名此路径: {}文件时出错" - -#: cps/helper.py:605 +#: cps/helper.py:625 #, python-format msgid "Book path %(path)s not found on Google Drive" msgstr "Google Drive 上找不到书籍路径 %(path)s" -#: cps/helper.py:670 +#: cps/helper.py:685 msgid "Found an existing account for this Email address" msgstr "已存在使用此邮箱的账户" -#: cps/helper.py:678 +#: cps/helper.py:693 msgid "This username is already taken" msgstr "此用户名已被使用" -#: cps/helper.py:690 +#: cps/helper.py:705 msgid "Invalid Email address format" msgstr "无效的邮箱格式" -#: cps/helper.py:710 +#: cps/helper.py:726 msgid "Password doesn't comply with password validation rules" msgstr "密码不符合密码验证规则" -#: cps/helper.py:859 +#: cps/helper.py:873 msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "上传封面所需的 Python 模块 'advocate' 未安装" -#: cps/helper.py:869 +#: cps/helper.py:883 msgid "Error Downloading Cover" msgstr "下载封面时出错" -#: cps/helper.py:872 +#: cps/helper.py:886 msgid "Cover Format Error" msgstr "封面格式出错" -#: cps/helper.py:875 +#: cps/helper.py:889 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "您没有访问本地主机或本地网络进行封面上传" -#: cps/helper.py:885 +#: cps/helper.py:899 msgid "Failed to create path for cover" msgstr "创建封面路径失败" -#: cps/helper.py:901 +#: cps/helper.py:915 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "封面文件不是有效的图片文件,或者无法存储它" -#: cps/helper.py:912 +#: cps/helper.py:926 msgid "Only jpg/jpeg/png/webp/bmp files are supported as coverfile" msgstr "封面文件只支持 jpg、jpeg、png、webp、bmp 文件" -#: cps/helper.py:924 +#: cps/helper.py:938 msgid "Invalid cover file content" msgstr "封面文件内容无效" -#: cps/helper.py:928 +#: cps/helper.py:942 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "仅将 jpg、jpeg 文件作为封面文件" -#: cps/helper.py:999 cps/helper.py:1156 +#: cps/helper.py:1014 cps/helper.py:1171 msgid "Cover" msgstr "封面" -#: cps/helper.py:1016 +#: cps/helper.py:1031 msgid "UnRar binary file not found" msgstr "找不到 UnRar 执行文件" -#: cps/helper.py:1027 +#: cps/helper.py:1042 msgid "Error executing UnRar" msgstr "执行 UnRar 时出错" -#: cps/helper.py:1035 +#: cps/helper.py:1050 msgid "Could not find the specified directory" msgstr "" -#: cps/helper.py:1038 +#: cps/helper.py:1053 msgid "Please specify a directory, not a file" msgstr "" -#: cps/helper.py:1052 +#: cps/helper.py:1067 #, fuzzy msgid "Calibre binaries not viable" msgstr "数据库不可写入" -#: cps/helper.py:1061 +#: cps/helper.py:1076 #, python-format msgid "Missing calibre binaries: %(missing)s" msgstr "" -#: cps/helper.py:1063 +#: cps/helper.py:1078 #, fuzzy, python-format msgid "Missing executable permissions: %(missing)s" msgstr "缺少执行权限" -#: cps/helper.py:1068 +#: cps/helper.py:1083 #, fuzzy msgid "Error executing Calibre" msgstr "执行 UnRar 时出错" -#: cps/helper.py:1158 cps/templates/admin.html:216 +#: cps/helper.py:1173 cps/templates/admin.html:216 msgid "Queue all books for metadata backup" msgstr "将所有书籍加入元数据备份队列" @@ -884,35 +885,35 @@ msgstr "取消链接到 %(oauth)s 失败" msgid "Not Linked to %(oauth)s" msgstr "未连接到 %(oauth)s" -#: cps/oauth_bb.py:261 +#: cps/oauth_bb.py:262 msgid "Failed to log in with GitHub." msgstr "使用 Github 登录失败" -#: cps/oauth_bb.py:267 +#: cps/oauth_bb.py:268 msgid "Failed to fetch user info from GitHub." msgstr "从 Github 获取用户信息失败" -#: cps/oauth_bb.py:279 +#: cps/oauth_bb.py:280 msgid "Failed to log in with Google." msgstr "使用 Google 登录失败" -#: cps/oauth_bb.py:285 +#: cps/oauth_bb.py:286 msgid "Failed to fetch user info from Google." msgstr "从 Google 获取用户信息失败" -#: cps/oauth_bb.py:332 +#: cps/oauth_bb.py:334 msgid "GitHub Oauth error, please retry later." msgstr "GitHub Oauth 错误,请重试" -#: cps/oauth_bb.py:335 +#: cps/oauth_bb.py:337 msgid "GitHub Oauth error: {}" msgstr "GitHub Oauth 错误: {}" -#: cps/oauth_bb.py:356 +#: cps/oauth_bb.py:358 msgid "Google Oauth error, please retry later." msgstr "Google Oauth 错误,请重试" -#: cps/oauth_bb.py:359 +#: cps/oauth_bb.py:361 msgid "Google Oauth error: {}" msgstr "Google Oauth 错误: {}" @@ -1261,32 +1262,32 @@ msgstr "已取消" msgid "Unknown Status" msgstr "未知状态" -#: cps/updater.py:431 cps/updater.py:442 cps/updater.py:543 cps/updater.py:558 +#: cps/updater.py:433 cps/updater.py:444 cps/updater.py:545 cps/updater.py:560 msgid "Unexpected data while reading update information" msgstr "读取更新信息时出现异常数据" -#: cps/updater.py:438 cps/updater.py:550 +#: cps/updater.py:440 cps/updater.py:552 msgid "No update available. You already have the latest version installed" msgstr "无可用更新。您已经安装了最新版本" -#: cps/updater.py:456 +#: cps/updater.py:458 msgid "A new update is available. Click on the button below to update to the latest version." msgstr "有新的更新。单击下面的按钮以更新到最新版本" -#: cps/updater.py:474 +#: cps/updater.py:476 msgid "Could not fetch update information" msgstr "无法获取更新信息" -#: cps/updater.py:484 +#: cps/updater.py:486 msgid "Click on the button below to update to the latest stable version." msgstr "点击下面按钮更新到最新稳定版本" -#: cps/updater.py:493 cps/updater.py:507 cps/updater.py:518 +#: cps/updater.py:495 cps/updater.py:509 cps/updater.py:520 #, python-format msgid "A new update is available. Click on the button below to update to version: %(version)s" msgstr "有新的更新。单击下面的按钮以更新到版本: %(version)s" -#: cps/updater.py:536 +#: cps/updater.py:538 msgid "No release information available" msgstr "无可用发布信息" @@ -1457,50 +1458,50 @@ msgstr "资料已更新" msgid "Oops! An account already exists for this Email." msgstr "使用此邮箱的账号已经存在" -#: cps/services/gmail.py:58 +#: cps/services/gmail.py:59 msgid "Found no valid gmail.json file with OAuth information" msgstr "找不到包含 OAuth 信息的有效 gmail.json 文件" -#: cps/tasks/convert.py:105 +#: cps/tasks/convert.py:108 #, python-format msgid "%(book)s send to E-Reader" msgstr "%(book)s 发送到电子阅读器" -#: cps/tasks/convert.py:167 +#: cps/tasks/convert.py:170 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "Calibre 电子书转换器 %(tool)s 没有发现" -#: cps/tasks/convert.py:201 +#: cps/tasks/convert.py:204 #, python-format msgid "%(format)s format not found on disk" msgstr "硬盘上找不到 %(format)s 格式" -#: cps/tasks/convert.py:205 +#: cps/tasks/convert.py:208 msgid "Ebook converter failed with unknown error" msgstr "发生未知错误,书籍转换失败" -#: cps/tasks/convert.py:224 +#: cps/tasks/convert.py:227 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "Kepubify 转换失败:%(error)s" -#: cps/tasks/convert.py:245 +#: cps/tasks/convert.py:248 #, python-format msgid "Converted file not found or more than one file in folder %(folder)s" msgstr "找不到转换后的文件或文件夹 %(folder)s 中有多个文件" -#: cps/tasks/convert.py:287 +#: cps/tasks/convert.py:291 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "电子书转换器失败: %(error)s" -#: cps/tasks/convert.py:310 +#: cps/tasks/convert.py:314 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "Calibre 运行失败,错误信息:%(error)s" -#: cps/tasks/convert.py:315 +#: cps/tasks/convert.py:319 msgid "Convert" msgstr "转换" @@ -1512,7 +1513,7 @@ msgstr "正在重新连接到 Calibre 数据库" msgid "E-mail" msgstr "电子邮件" -#: cps/tasks/metadata_backup.py:33 +#: cps/tasks/metadata_backup.py:34 msgid "Backing up Metadata" msgstr "正在备份元数据" @@ -1525,20 +1526,20 @@ msgstr "" msgid "Generated %(count)s cover thumbnails" msgstr "生成了 %(count)s 个封面缩略图" -#: cps/tasks/thumbnail.py:230 cps/tasks/thumbnail.py:443 -#: cps/tasks/thumbnail.py:511 +#: cps/tasks/thumbnail.py:231 cps/tasks/thumbnail.py:444 +#: cps/tasks/thumbnail.py:512 msgid "Cover Thumbnails" msgstr "封面缩略图" -#: cps/tasks/thumbnail.py:289 +#: cps/tasks/thumbnail.py:290 msgid "Generated {0} series thumbnails" msgstr "生成了 %(count)s 个丛书缩略图" -#: cps/tasks/thumbnail.py:454 +#: cps/tasks/thumbnail.py:455 msgid "Clearing cover thumbnail cache" msgstr "正在清理封面缩略图缓存" -#: cps/tasks/upload.py:38 cps/templates/admin.html:20 +#: cps/tasks/upload.py:39 cps/templates/admin.html:20 #: cps/templates/layout.html:81 cps/templates/user_table.html:145 msgid "Upload" msgstr "上传书籍" @@ -1784,7 +1785,7 @@ msgstr "确定" #: cps/templates/admin.html:259 cps/templates/admin.html:273 #: cps/templates/book_edit.html:214 cps/templates/book_table.html:127 -#: cps/templates/config_db.html:66 cps/templates/config_edit.html:423 +#: cps/templates/config_db.html:66 cps/templates/config_edit.html:427 #: cps/templates/config_view_edit.html:175 cps/templates/detail.html:342 #: cps/templates/modal_dialogs.html:64 cps/templates/modal_dialogs.html:99 #: cps/templates/modal_dialogs.html:117 cps/templates/modal_dialogs.html:135 @@ -1970,7 +1971,7 @@ msgid "Fetch Metadata" msgstr "获取元数据" #: cps/templates/book_edit.html:213 cps/templates/config_db.html:65 -#: cps/templates/config_edit.html:422 cps/templates/config_view_edit.html:174 +#: cps/templates/config_edit.html:426 cps/templates/config_view_edit.html:174 #: cps/templates/email_edit.html:65 cps/templates/schedule_edit.html:44 #: cps/templates/shelf_edit.html:25 cps/templates/shelf_order.html:41 #: cps/templates/user_edit.html:142 @@ -2440,46 +2441,50 @@ msgid "Configure Backend for Limiter" msgstr "" #: cps/templates/config_edit.html:376 -msgid "Options for Limiter" +msgid "Options for Limiter Backend" msgstr "" -#: cps/templates/config_edit.html:381 +#: cps/templates/config_edit.html:382 +msgid "Check if file extensions matches file content on upload" +msgstr "" + +#: cps/templates/config_edit.html:385 msgid "Session protection" msgstr "会话保护" -#: cps/templates/config_edit.html:383 +#: cps/templates/config_edit.html:387 msgid "Basic" msgstr "基本" -#: cps/templates/config_edit.html:384 +#: cps/templates/config_edit.html:388 msgid "Strong" msgstr "强" -#: cps/templates/config_edit.html:389 +#: cps/templates/config_edit.html:393 msgid "User Password policy" msgstr "用户密码策略" -#: cps/templates/config_edit.html:393 +#: cps/templates/config_edit.html:397 msgid "Minimum password length" msgstr "最小密码长度" -#: cps/templates/config_edit.html:398 +#: cps/templates/config_edit.html:402 msgid "Enforce number" msgstr "必须使用数字" -#: cps/templates/config_edit.html:402 +#: cps/templates/config_edit.html:406 msgid "Enforce lowercase characters" msgstr "必须使用小写字符" -#: cps/templates/config_edit.html:406 +#: cps/templates/config_edit.html:410 msgid "Enforce uppercase characters" msgstr "必须使用大写字符" -#: cps/templates/config_edit.html:410 +#: cps/templates/config_edit.html:414 msgid "Enforce characters (needed For Chinese/Japanese/Korean Characters)" msgstr "" -#: cps/templates/config_edit.html:414 +#: cps/templates/config_edit.html:418 msgid "Enforce special characters" msgstr "必须使用特殊字符" @@ -2609,6 +2614,11 @@ msgstr "标为未读" msgid "Mark As Read" msgstr "标为已读" +#: cps/templates/detail.html:254 +#, fuzzy +msgid "Mark Book as Read or Unread" +msgstr "标为未读" + #: cps/templates/detail.html:254 cps/templates/listenmp3.html:159 msgid "Read" msgstr "已读" @@ -2621,8 +2631,13 @@ msgstr "从档案还原" msgid "Add to archive" msgstr "添加到归档" -#: cps/templates/detail.html:267 cps/templates/listenmp3.html:167 -msgid "Archived" +#: cps/templates/detail.html:267 +msgid "Mark Book as archived or not, to hide it in Calibre-Web and delete it from Kobo Reader" +msgstr "" + +#: cps/templates/detail.html:267 +#, fuzzy +msgid "Archive" msgstr "归档" #: cps/templates/detail.html:278 cps/templates/listenmp3.html:177 @@ -2899,6 +2914,10 @@ msgstr "书籍详情" msgid "Grid" msgstr "网格" +#: cps/templates/listenmp3.html:167 +msgid "Archived" +msgstr "归档" + #: cps/templates/login.html:18 msgid "Remember Me" msgstr "记住我" diff --git a/cps/translations/zh_Hant_TW/LC_MESSAGES/messages.mo b/cps/translations/zh_Hant_TW/LC_MESSAGES/messages.mo index 7d5fe762..c837a716 100644 Binary files a/cps/translations/zh_Hant_TW/LC_MESSAGES/messages.mo and b/cps/translations/zh_Hant_TW/LC_MESSAGES/messages.mo differ diff --git a/cps/translations/zh_Hant_TW/LC_MESSAGES/messages.po b/cps/translations/zh_Hant_TW/LC_MESSAGES/messages.po index 57958b02..e8763f1c 100644 --- a/cps/translations/zh_Hant_TW/LC_MESSAGES/messages.po +++ b/cps/translations/zh_Hant_TW/LC_MESSAGES/messages.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Calibre-Web\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2024-06-09 12:26+0200\n" +"POT-Creation-Date: 2024-06-30 12:19+0200\n" "PO-Revision-Date: 2020-09-27 22:18+0800\n" "Last-Translator: xlivevil \n" "Language: zh_TW\n" @@ -16,7 +16,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.11.0\n" +"Generated-By: Babel 2.13.1\n" #: cps/about.py:84 msgid "Statistics" @@ -45,9 +45,9 @@ msgstr "未知命令" msgid "Success! Books queued for Metadata Backup, please check Tasks for result" msgstr "發送給%(email)s的測試郵件已進入隊列。請檢查任務結果" -#: cps/admin.py:207 cps/editbooks.py:591 cps/editbooks.py:593 -#: cps/editbooks.py:631 cps/editbooks.py:648 cps/editbooks.py:1280 -#: cps/updater.py:613 cps/uploader.py:93 cps/uploader.py:102 +#: cps/admin.py:207 cps/editbooks.py:573 cps/editbooks.py:575 +#: cps/editbooks.py:615 cps/editbooks.py:658 cps/editbooks.py:1280 +#: cps/updater.py:615 cps/uploader.py:93 cps/uploader.py:102 msgid "Unknown" msgstr "未知" @@ -67,12 +67,12 @@ msgstr "界面配置" msgid "Edit Users" msgstr "管理用戶" -#: cps/admin.py:368 cps/opds.py:541 cps/templates/grid.html:14 +#: cps/admin.py:368 cps/opds.py:542 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "全部" -#: cps/admin.py:395 cps/admin.py:1417 +#: cps/admin.py:395 cps/admin.py:1414 msgid "User not found" msgstr "找不到用戶" @@ -89,7 +89,7 @@ msgstr "顯示全部" msgid "Malformed request" msgstr "格式錯誤的請求" -#: cps/admin.py:471 cps/admin.py:2048 +#: cps/admin.py:471 cps/admin.py:2046 msgid "Guest Name can't be changed" msgstr "訪客名稱無法更改" @@ -97,7 +97,7 @@ msgstr "訪客名稱無法更改" msgid "Guest can't have this role" msgstr "遊客無法擁有此角色" -#: cps/admin.py:495 cps/admin.py:2002 +#: cps/admin.py:495 cps/admin.py:2000 msgid "No admin user remaining, can't remove admin role" msgstr "管理員賬戶不存在,無法刪除管理員角色" @@ -129,7 +129,7 @@ msgstr "無可用本地化" msgid "No Valid Book Language Given" msgstr "無有效書籍語言" -#: cps/admin.py:535 cps/editbooks.py:457 +#: cps/admin.py:535 cps/editbooks.py:440 msgid "Parameter not found" msgstr "參數未找到" @@ -141,7 +141,7 @@ msgstr "無效的閱讀列" msgid "Invalid Restricted Column" msgstr "無效的限制列" -#: cps/admin.py:598 cps/admin.py:1873 +#: cps/admin.py:598 cps/admin.py:1871 msgid "Calibre-Web configuration updated" msgstr "Calibre-Web配置已更新" @@ -221,294 +221,294 @@ msgstr "標籤未找到" msgid "Invalid Action" msgstr "無效的動作" -#: cps/admin.py:1123 +#: cps/admin.py:1120 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "client_secrets.json 未為 Web 應用程序配置" -#: cps/admin.py:1168 +#: cps/admin.py:1165 msgid "Logfile Location is not Valid, Please Enter Correct Path" msgstr "日誌文件路徑無效,請輸入正確的路徑" -#: cps/admin.py:1174 +#: cps/admin.py:1171 msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgstr "訪問日誌路徑無效,請輸入正確的路徑" -#: cps/admin.py:1208 +#: cps/admin.py:1205 msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgstr "請輸入LDAP主機、端口、DN和用戶對象標識符" -#: cps/admin.py:1214 +#: cps/admin.py:1211 msgid "Please Enter a LDAP Service Account and Password" msgstr "請輸入一個LDAP服務賬號和密碼 " -#: cps/admin.py:1217 +#: cps/admin.py:1214 msgid "Please Enter a LDAP Service Account" msgstr "請輸入一個LDAP服務賬號" -#: cps/admin.py:1222 +#: cps/admin.py:1219 #, python-format msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgstr "LDAP群組對象過濾器需要一個具有“%s”格式標識符號" -#: cps/admin.py:1224 +#: cps/admin.py:1221 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "LDAP群組對象過濾器的括號不匹配" -#: cps/admin.py:1228 +#: cps/admin.py:1225 #, python-format msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgstr "LDAP用戶對象過濾器需要一個具有“%s”格式標識符" -#: cps/admin.py:1230 +#: cps/admin.py:1227 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "LDAP用戶對象過濾器的括號不匹配" -#: cps/admin.py:1237 +#: cps/admin.py:1234 #, python-format msgid "LDAP Member User Filter needs to Have One \"%s\" Format Identifier" msgstr "LDAP成員用戶過濾器需要有一個“%s”格式標識符號" -#: cps/admin.py:1239 +#: cps/admin.py:1236 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "LDAP成員用戶過濾器中有不匹配的括號" -#: cps/admin.py:1246 +#: cps/admin.py:1243 msgid "LDAP CACertificate, Certificate or Key Location is not Valid, Please Enter Correct Path" msgstr "LDAP CA證書、證書或密鑰位置無效,請輸入正確的路徑" -#: cps/admin.py:1277 cps/templates/admin.html:53 +#: cps/admin.py:1274 cps/templates/admin.html:53 msgid "Add New User" msgstr "添加新用戶" -#: cps/admin.py:1286 cps/templates/admin.html:100 +#: cps/admin.py:1283 cps/templates/admin.html:100 msgid "Edit Email Server Settings" msgstr "編輯郵件服務器設置" -#: cps/admin.py:1305 +#: cps/admin.py:1302 msgid "Success! Gmail Account Verified." msgstr "" -#: cps/admin.py:1325 cps/admin.py:1328 cps/admin.py:1713 cps/admin.py:1857 -#: cps/admin.py:1955 cps/admin.py:2076 cps/editbooks.py:243 -#: cps/editbooks.py:319 cps/editbooks.py:1242 cps/shelf.py:90 cps/shelf.py:150 +#: cps/admin.py:1322 cps/admin.py:1325 cps/admin.py:1710 cps/admin.py:1855 +#: cps/admin.py:1953 cps/admin.py:2074 cps/editbooks.py:226 +#: cps/editbooks.py:303 cps/editbooks.py:1242 cps/shelf.py:90 cps/shelf.py:150 #: cps/shelf.py:193 cps/shelf.py:243 cps/shelf.py:280 cps/shelf.py:354 -#: cps/shelf.py:468 cps/tasks/convert.py:150 cps/web.py:1520 +#: cps/shelf.py:468 cps/tasks/convert.py:153 cps/web.py:1520 #, python-format msgid "Oops! Database Error: %(error)s." msgstr "數據庫錯誤:%(error)s。" -#: cps/admin.py:1335 +#: cps/admin.py:1332 #, python-format msgid "Test e-mail queued for sending to %(email)s, please check Tasks for result" msgstr "發送給%(email)s的測試郵件已進入隊列。請檢查任務結果" -#: cps/admin.py:1338 +#: cps/admin.py:1335 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "發送測試郵件時出錯:%(res)s" -#: cps/admin.py:1340 +#: cps/admin.py:1337 msgid "Please configure your e-mail address first..." msgstr "請先配置您的郵箱地址..." -#: cps/admin.py:1342 +#: cps/admin.py:1339 msgid "Email Server Settings updated" msgstr "郵件服務器設置已更新" -#: cps/admin.py:1365 cps/templates/admin.html:195 +#: cps/admin.py:1362 cps/templates/admin.html:195 msgid "Edit Scheduled Tasks Settings" msgstr "" -#: cps/admin.py:1377 +#: cps/admin.py:1374 msgid "Invalid start time for task specified" msgstr "" -#: cps/admin.py:1382 +#: cps/admin.py:1379 msgid "Invalid duration for task specified" msgstr "" -#: cps/admin.py:1392 +#: cps/admin.py:1389 msgid "Scheduled tasks settings updated" msgstr "" -#: cps/admin.py:1402 cps/admin.py:1451 cps/admin.py:2072 cps/web.py:1316 +#: cps/admin.py:1399 cps/admin.py:1448 cps/admin.py:2070 cps/web.py:1316 msgid "Oops! An unknown error occurred. Please try again later." msgstr "發生一個未知錯誤,請稍後再試。" -#: cps/admin.py:1406 +#: cps/admin.py:1403 msgid "Settings DB is not Writeable" msgstr "" -#: cps/admin.py:1436 cps/admin.py:2064 +#: cps/admin.py:1433 cps/admin.py:2062 #, python-format msgid "Edit User %(nick)s" msgstr "編輯用戶 %(nick)s" -#: cps/admin.py:1448 +#: cps/admin.py:1445 #, fuzzy, python-format msgid "Success! Password for user %(user)s reset" msgstr "用戶 %(user)s 的密碼已重置" -#: cps/admin.py:1454 +#: cps/admin.py:1451 #, fuzzy msgid "Oops! Please configure the SMTP mail settings." msgstr "請先配置SMTP郵箱設置..." -#: cps/admin.py:1465 +#: cps/admin.py:1462 msgid "Logfile viewer" msgstr "日誌文件查看器" -#: cps/admin.py:1531 +#: cps/admin.py:1528 msgid "Requesting update package" msgstr "正在請求更新包" -#: cps/admin.py:1532 +#: cps/admin.py:1529 msgid "Downloading update package" msgstr "正在下載更新包" -#: cps/admin.py:1533 +#: cps/admin.py:1530 msgid "Unzipping update package" msgstr "正在解壓更新包" -#: cps/admin.py:1534 +#: cps/admin.py:1531 msgid "Replacing files" msgstr "正在替換文件" -#: cps/admin.py:1535 +#: cps/admin.py:1532 msgid "Database connections are closed" msgstr "數據庫連接已關閉" -#: cps/admin.py:1536 +#: cps/admin.py:1533 msgid "Stopping server" msgstr "正在停止服務器" -#: cps/admin.py:1537 +#: cps/admin.py:1534 msgid "Update finished, please press okay and reload page" msgstr "更新完成,請點擊確定並刷新頁面" -#: cps/admin.py:1538 cps/admin.py:1539 cps/admin.py:1540 cps/admin.py:1541 -#: cps/admin.py:1542 cps/admin.py:1543 +#: cps/admin.py:1535 cps/admin.py:1536 cps/admin.py:1537 cps/admin.py:1538 +#: cps/admin.py:1539 cps/admin.py:1540 msgid "Update failed:" msgstr "更新失敗:" -#: cps/admin.py:1538 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 +#: cps/admin.py:1535 cps/updater.py:391 cps/updater.py:626 cps/updater.py:628 msgid "HTTP Error" msgstr "HTTP錯誤" -#: cps/admin.py:1539 cps/updater.py:391 cps/updater.py:628 +#: cps/admin.py:1536 cps/updater.py:393 cps/updater.py:630 msgid "Connection error" msgstr "連接錯誤" -#: cps/admin.py:1540 cps/updater.py:393 cps/updater.py:630 +#: cps/admin.py:1537 cps/updater.py:395 cps/updater.py:632 msgid "Timeout while establishing connection" msgstr "建立連接超時" -#: cps/admin.py:1541 cps/updater.py:395 cps/updater.py:632 +#: cps/admin.py:1538 cps/updater.py:397 cps/updater.py:634 msgid "General error" msgstr "一般錯誤" -#: cps/admin.py:1542 +#: cps/admin.py:1539 #, fuzzy msgid "Update file could not be saved in temp dir" msgstr "更新文件無法保存在臨時目錄中" -#: cps/admin.py:1543 +#: cps/admin.py:1540 msgid "Files could not be replaced during update" msgstr "更新時檔案無法替換變更" -#: cps/admin.py:1567 +#: cps/admin.py:1564 msgid "Failed to extract at least One LDAP User" msgstr "未能提取至少一個LDAP用戶" -#: cps/admin.py:1612 +#: cps/admin.py:1609 msgid "Failed to Create at Least One LDAP User" msgstr "未能創建至少一個LDAP用戶" -#: cps/admin.py:1625 +#: cps/admin.py:1622 #, python-format msgid "Error: %(ldaperror)s" msgstr "錯誤:%(ldaperror)s" -#: cps/admin.py:1629 +#: cps/admin.py:1626 msgid "Error: No user returned in response of LDAP server" msgstr "錯誤:在LDAP服務器的響應中沒有返回用戶" -#: cps/admin.py:1665 +#: cps/admin.py:1662 msgid "At Least One LDAP User Not Found in Database" msgstr "數據庫中沒有找到至少一個LDAP用戶" -#: cps/admin.py:1667 +#: cps/admin.py:1664 msgid "{} User Successfully Imported" msgstr "{} 用戶被成功導入" -#: cps/admin.py:1725 +#: cps/admin.py:1722 msgid "DB Location is not Valid, Please Enter Correct Path" msgstr "數據庫路徑無效,請輸入正確的路徑" -#: cps/admin.py:1745 +#: cps/admin.py:1742 msgid "DB is not Writeable" msgstr "數據庫不可寫入" -#: cps/admin.py:1761 +#: cps/admin.py:1758 msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgstr "密鑰文件路徑無效,請輸入正確的路徑" -#: cps/admin.py:1765 +#: cps/admin.py:1762 msgid "Certfile Location is not Valid, Please Enter Correct Path" msgstr "證書文件路徑無效,請輸入正確的路徑" -#: cps/admin.py:1842 +#: cps/admin.py:1840 msgid "Password length has to be between 1 and 40" msgstr "" -#: cps/admin.py:1896 +#: cps/admin.py:1894 #, fuzzy msgid "Database Settings updated" msgstr "郵件服務器設置已更新" -#: cps/admin.py:1904 +#: cps/admin.py:1902 msgid "Database Configuration" msgstr "數據庫配置" -#: cps/admin.py:1919 cps/web.py:1290 +#: cps/admin.py:1917 cps/web.py:1290 msgid "Oops! Please complete all fields." msgstr "請填寫所有欄位!" -#: cps/admin.py:1928 +#: cps/admin.py:1926 msgid "E-mail is not from valid domain" msgstr "郵箱不在有效網域中" -#: cps/admin.py:1934 +#: cps/admin.py:1932 msgid "Add new user" msgstr "添加新用戶" -#: cps/admin.py:1945 +#: cps/admin.py:1943 #, python-format msgid "User '%(user)s' created" msgstr "用戶“%(user)s”已創建" -#: cps/admin.py:1951 +#: cps/admin.py:1949 msgid "Oops! An account already exists for this Email. or name." msgstr "使用此郵箱或用戶名的賬號已經存在。" -#: cps/admin.py:1981 +#: cps/admin.py:1979 #, python-format msgid "User '%(nick)s' deleted" msgstr "用戶“%(nick)s”已刪除" -#: cps/admin.py:1984 +#: cps/admin.py:1982 msgid "Can't delete Guest User" msgstr "無法刪除訪客用戶" -#: cps/admin.py:1987 +#: cps/admin.py:1985 msgid "No admin user remaining, can't delete user" msgstr "管理員賬戶不存在,無法刪除用戶" -#: cps/admin.py:2042 cps/web.py:1469 +#: cps/admin.py:2040 cps/web.py:1469 msgid "Email can't be empty and has to be a valid Email" msgstr "" -#: cps/admin.py:2068 +#: cps/admin.py:2066 #, python-format msgid "User '%(nick)s' updated" msgstr "用戶“%(nick)s”已更新" @@ -521,12 +521,12 @@ msgstr "未安裝" msgid "Execution permissions missing" msgstr "缺少執行權限" -#: cps/db.py:756 cps/search.py:137 cps/web.py:747 +#: cps/db.py:768 cps/search.py:137 cps/web.py:747 #, fuzzy, python-format msgid "Custom Column No.%(column)d does not exist in calibre database" msgstr "自定義列號:%(column)d在Calibre數據庫中不存在" -#: cps/db.py:996 cps/templates/config_edit.html:203 +#: cps/db.py:1008 cps/templates/config_edit.html:203 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 #: cps/web.py:562 cps/web.py:596 cps/web.py:641 cps/web.py:681 cps/web.py:708 #: cps/web.py:989 cps/web.py:1019 cps/web.py:1064 cps/web.py:1092 @@ -534,100 +534,105 @@ msgstr "自定義列號:%(column)d在Calibre數據庫中不存在" msgid "None" msgstr "無" -#: cps/editbooks.py:124 cps/editbooks.py:912 cps/web.py:529 cps/web.py:1561 -#: cps/web.py:1605 cps/web.py:1650 +#: cps/editbooks.py:108 cps/editbooks.py:929 cps/web.py:529 cps/web.py:1561 +#: cps/web.py:1606 cps/web.py:1651 msgid "Oops! Selected book is unavailable. File does not exist or is not accessible" msgstr "糟糕!選擇書名無法打開。文件不存在或者文件不可訪問" -#: cps/editbooks.py:168 cps/editbooks.py:1263 +#: cps/editbooks.py:151 cps/editbooks.py:1263 msgid "User has no rights to upload cover" msgstr "" -#: cps/editbooks.py:188 cps/editbooks.py:733 +#: cps/editbooks.py:171 cps/editbooks.py:744 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "標識符不區分大小寫,覆蓋舊標識符" -#: cps/editbooks.py:230 +#: cps/editbooks.py:213 msgid "Metadata successfully updated" msgstr "已成功更新元數據" -#: cps/editbooks.py:248 +#: cps/editbooks.py:231 msgid "Error editing book: {}" msgstr "" -#: cps/editbooks.py:305 +#: cps/editbooks.py:289 #, python-format msgid "File %(file)s uploaded" msgstr "文件 %(file)s 已上傳" -#: cps/editbooks.py:333 +#: cps/editbooks.py:317 msgid "Source or destination format for conversion missing" msgstr "轉換的來源或目的格式不存在" -#: cps/editbooks.py:341 +#: cps/editbooks.py:325 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "書籍已經被成功加入到 %(book_format)s 格式轉換隊列" -#: cps/editbooks.py:345 +#: cps/editbooks.py:329 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "轉換此書籍時出現錯誤: %(res)s" -#: cps/editbooks.py:652 +#: cps/editbooks.py:662 msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgstr "上傳的書籍可能已經存在,建議修改後重新上傳: " -#: cps/editbooks.py:707 cps/editbooks.py:1043 +#: cps/editbooks.py:718 cps/editbooks.py:1049 #, fuzzy, python-format msgid "'%(langname)s' is not a valid language" msgstr "%(langname)s 不是一種有效語言" -#: cps/editbooks.py:745 cps/editbooks.py:1203 +#: cps/editbooks.py:756 cps/editbooks.py:1192 +#, fuzzy +msgid "File type isn't allowed to be uploaded to this server" +msgstr "不能上傳文件附檔名為“%(ext)s”的文件到此服務器" + +#: cps/editbooks.py:762 cps/editbooks.py:1202 #, python-format msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgstr "不能上傳文件附檔名為“%(ext)s”的文件到此服務器" -#: cps/editbooks.py:749 cps/editbooks.py:1207 +#: cps/editbooks.py:766 cps/editbooks.py:1206 msgid "File to be uploaded must have an extension" msgstr "要上傳的文件必須具有附檔名" -#: cps/editbooks.py:757 +#: cps/editbooks.py:774 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "文件 %(filename)s 無法保存到臨時目錄" -#: cps/editbooks.py:777 +#: cps/editbooks.py:794 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "移動封面文件失敗 %(file)s:%(error)s" -#: cps/editbooks.py:834 cps/editbooks.py:836 +#: cps/editbooks.py:851 cps/editbooks.py:853 msgid "Book Format Successfully Deleted" msgstr "書籍格式已成功刪除" -#: cps/editbooks.py:843 cps/editbooks.py:845 +#: cps/editbooks.py:860 cps/editbooks.py:862 msgid "Book Successfully Deleted" msgstr "書籍已成功刪除" -#: cps/editbooks.py:897 +#: cps/editbooks.py:914 msgid "You are missing permissions to delete books" msgstr "" -#: cps/editbooks.py:947 +#: cps/editbooks.py:964 msgid "edit metadata" msgstr "編輯元數據" -#: cps/editbooks.py:996 +#: cps/editbooks.py:1013 #, python-format msgid "%(seriesindex)s is not a valid number, skipping" msgstr "%(seriesindex)s 不是一個有效的數值,忽略" -#: cps/editbooks.py:1198 +#: cps/editbooks.py:1197 msgid "User has no rights to upload additional file formats" msgstr "" -#: cps/editbooks.py:1219 +#: cps/editbooks.py:1218 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "創建路徑 %(path)s 失敗(權限拒絕)。" @@ -646,7 +651,7 @@ msgstr "已添加 %(ext)s 格式到 %(book)s" msgid "Google Drive setup not completed, try to deactivate and activate Google Drive again" msgstr "Google Drive 設置未完成,請嘗試停用並再次激活Google雲端硬碟" -#: cps/gdrive.py:95 +#: cps/gdrive.py:96 msgid "Callback domain is not verified, please follow steps to verify domain in google developer console" msgstr "回調網域名稱尚未被驗證,請在google開發者控制台按步驟驗證網域名稱" @@ -655,7 +660,7 @@ msgstr "回調網域名稱尚未被驗證,請在google開發者控制台按步 msgid "%(format)s format not found for book id: %(book)d" msgstr "找不到id為 %(book)d 的書籍的 %(format)s 格式" -#: cps/helper.py:93 cps/tasks/convert.py:86 +#: cps/helper.py:93 cps/tasks/convert.py:89 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "Google Drive %(fn)s 上找不到 %(format)s" @@ -732,126 +737,122 @@ msgstr "刪除書籍 %(id)s失敗:%(message)s" msgid "Deleting book %(id)s from database only, book path in database not valid: %(path)s" msgstr "僅從數據庫中刪除書籍 %(id)s,數據庫中的書籍路徑無效: %(path)s" -#: cps/helper.py:452 +#: cps/helper.py:465 #, fuzzy, python-format msgid "Rename author from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgstr "將標題從“%(src)s”改為“%(dest)s”時失敗,錯誤錯信息:%(error)s" -#: cps/helper.py:524 cps/helper.py:533 +#: cps/helper.py:536 cps/helper.py:545 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "Google Drive上找不到文件 %(file)s" -#: cps/helper.py:567 +#: cps/helper.py:587 #, python-format msgid "Rename title from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgstr "將標題從“%(src)s”改為“%(dest)s”時失敗,錯誤錯信息:%(error)s" -#: cps/helper.py:587 -msgid "Error in rename file in path: {}" -msgstr "" - -#: cps/helper.py:605 +#: cps/helper.py:625 #, python-format msgid "Book path %(path)s not found on Google Drive" msgstr "Google Drive上找不到書籍路徑 %(path)s" -#: cps/helper.py:670 +#: cps/helper.py:685 msgid "Found an existing account for this Email address" msgstr "" -#: cps/helper.py:678 +#: cps/helper.py:693 msgid "This username is already taken" msgstr "此用戶名已被使用" -#: cps/helper.py:690 +#: cps/helper.py:705 #, fuzzy msgid "Invalid Email address format" msgstr "無效的郵件地址格式" -#: cps/helper.py:710 +#: cps/helper.py:726 msgid "Password doesn't comply with password validation rules" msgstr "" -#: cps/helper.py:859 +#: cps/helper.py:873 msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "" -#: cps/helper.py:869 +#: cps/helper.py:883 msgid "Error Downloading Cover" msgstr "下載封面時出錯" -#: cps/helper.py:872 +#: cps/helper.py:886 msgid "Cover Format Error" msgstr "封面格式出錯" -#: cps/helper.py:875 +#: cps/helper.py:889 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "" -#: cps/helper.py:885 +#: cps/helper.py:899 msgid "Failed to create path for cover" msgstr "創建封面路徑失敗" -#: cps/helper.py:901 +#: cps/helper.py:915 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "封面文件不是有效的圖片文件,或者無法儲存" -#: cps/helper.py:912 +#: cps/helper.py:926 msgid "Only jpg/jpeg/png/webp/bmp files are supported as coverfile" msgstr "封面文件只支持jpg/jpeg/png/webp/bmp格式文件" -#: cps/helper.py:924 +#: cps/helper.py:938 msgid "Invalid cover file content" msgstr "" -#: cps/helper.py:928 +#: cps/helper.py:942 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "僅將jpg、jpeg文件作為封面文件" -#: cps/helper.py:999 cps/helper.py:1156 +#: cps/helper.py:1014 cps/helper.py:1171 #, fuzzy msgid "Cover" msgstr "發現" -#: cps/helper.py:1016 +#: cps/helper.py:1031 msgid "UnRar binary file not found" msgstr "找不到UnRar執行文件" -#: cps/helper.py:1027 +#: cps/helper.py:1042 #, fuzzy msgid "Error executing UnRar" msgstr "執行UnRar時出錯" -#: cps/helper.py:1035 +#: cps/helper.py:1050 msgid "Could not find the specified directory" msgstr "" -#: cps/helper.py:1038 +#: cps/helper.py:1053 msgid "Please specify a directory, not a file" msgstr "" -#: cps/helper.py:1052 +#: cps/helper.py:1067 #, fuzzy msgid "Calibre binaries not viable" msgstr "數據庫不可寫入" -#: cps/helper.py:1061 +#: cps/helper.py:1076 #, python-format msgid "Missing calibre binaries: %(missing)s" msgstr "" -#: cps/helper.py:1063 +#: cps/helper.py:1078 #, fuzzy, python-format msgid "Missing executable permissions: %(missing)s" msgstr "缺少執行權限" -#: cps/helper.py:1068 +#: cps/helper.py:1083 #, fuzzy msgid "Error executing Calibre" msgstr "執行UnRar時出錯" -#: cps/helper.py:1158 cps/templates/admin.html:216 +#: cps/helper.py:1173 cps/templates/admin.html:216 msgid "Queue all books for metadata backup" msgstr "" @@ -898,35 +899,35 @@ msgstr "取消連接到%(oauth)s失敗" msgid "Not Linked to %(oauth)s" msgstr "為連接到%(oauth)s" -#: cps/oauth_bb.py:261 +#: cps/oauth_bb.py:262 msgid "Failed to log in with GitHub." msgstr "使用Github登入失敗。" -#: cps/oauth_bb.py:267 +#: cps/oauth_bb.py:268 msgid "Failed to fetch user info from GitHub." msgstr "從Github獲取用戶信息失敗。" -#: cps/oauth_bb.py:279 +#: cps/oauth_bb.py:280 msgid "Failed to log in with Google." msgstr "使用Google登入失敗。" -#: cps/oauth_bb.py:285 +#: cps/oauth_bb.py:286 msgid "Failed to fetch user info from Google." msgstr "從Google獲取用戶信息失敗。" -#: cps/oauth_bb.py:332 +#: cps/oauth_bb.py:334 msgid "GitHub Oauth error, please retry later." msgstr "GitHub Oauth 錯誤,請重試。" -#: cps/oauth_bb.py:335 +#: cps/oauth_bb.py:337 msgid "GitHub Oauth error: {}" msgstr "GitHub Oauth 錯誤: {}" -#: cps/oauth_bb.py:356 +#: cps/oauth_bb.py:358 msgid "Google Oauth error, please retry later." msgstr "Google Oauth 錯誤,請重試。" -#: cps/oauth_bb.py:359 +#: cps/oauth_bb.py:361 msgid "Google Oauth error: {}" msgstr "Google Oauth 錯誤: {}" @@ -1285,32 +1286,32 @@ msgstr "" msgid "Unknown Status" msgstr "未知狀態" -#: cps/updater.py:431 cps/updater.py:442 cps/updater.py:543 cps/updater.py:558 +#: cps/updater.py:433 cps/updater.py:444 cps/updater.py:545 cps/updater.py:560 msgid "Unexpected data while reading update information" msgstr "讀取更新信息時出現未預期數據" -#: cps/updater.py:438 cps/updater.py:550 +#: cps/updater.py:440 cps/updater.py:552 msgid "No update available. You already have the latest version installed" msgstr "無可用更新。您已經安裝了最新版本" -#: cps/updater.py:456 +#: cps/updater.py:458 msgid "A new update is available. Click on the button below to update to the latest version." msgstr "有新的更新。單擊下面的按鈕以更新到最新版本。" -#: cps/updater.py:474 +#: cps/updater.py:476 msgid "Could not fetch update information" msgstr "無法獲取更新信息" -#: cps/updater.py:484 +#: cps/updater.py:486 msgid "Click on the button below to update to the latest stable version." msgstr "點擊下面按鈕更新到最新穩定版本。" -#: cps/updater.py:493 cps/updater.py:507 cps/updater.py:518 +#: cps/updater.py:495 cps/updater.py:509 cps/updater.py:520 #, python-format msgid "A new update is available. Click on the button below to update to version: %(version)s" msgstr "有新的更新。單擊下面的按鈕以更新到版本: %(version)s" -#: cps/updater.py:536 +#: cps/updater.py:538 msgid "No release information available" msgstr "無可用發佈信息" @@ -1489,50 +1490,50 @@ msgstr "資料已更新" msgid "Oops! An account already exists for this Email." msgstr "使用此郵箱的賬號已經存在。" -#: cps/services/gmail.py:58 +#: cps/services/gmail.py:59 msgid "Found no valid gmail.json file with OAuth information" msgstr "找不到包含 OAuth 信息的有效 gmail.json 文件" -#: cps/tasks/convert.py:105 +#: cps/tasks/convert.py:108 #, fuzzy, python-format msgid "%(book)s send to E-Reader" msgstr "%(book)s發送到Kindle" -#: cps/tasks/convert.py:167 +#: cps/tasks/convert.py:170 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "沒有發現Calibre 電子書轉換器%(tool)s" -#: cps/tasks/convert.py:201 +#: cps/tasks/convert.py:204 #, python-format msgid "%(format)s format not found on disk" msgstr "硬碟上找不到 %(format)s 格式" -#: cps/tasks/convert.py:205 +#: cps/tasks/convert.py:208 msgid "Ebook converter failed with unknown error" msgstr "發生未知錯誤,書籍轉換失敗" -#: cps/tasks/convert.py:224 +#: cps/tasks/convert.py:227 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "Kepubify 轉換失敗:%(error)s" -#: cps/tasks/convert.py:245 +#: cps/tasks/convert.py:248 #, python-format msgid "Converted file not found or more than one file in folder %(folder)s" msgstr "找不到轉換後的文件或文件夾%(folder)s中有多個文件" -#: cps/tasks/convert.py:287 +#: cps/tasks/convert.py:291 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "電子書轉換器失敗: %(error)s" -#: cps/tasks/convert.py:310 +#: cps/tasks/convert.py:314 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "Calibre 運行失敗,錯誤信息:%(error)s" -#: cps/tasks/convert.py:315 +#: cps/tasks/convert.py:319 msgid "Convert" msgstr "" @@ -1544,7 +1545,7 @@ msgstr "" msgid "E-mail" msgstr "" -#: cps/tasks/metadata_backup.py:33 +#: cps/tasks/metadata_backup.py:34 #, fuzzy msgid "Backing up Metadata" msgstr "編輯元數據" @@ -1558,20 +1559,20 @@ msgstr "" msgid "Generated %(count)s cover thumbnails" msgstr "" -#: cps/tasks/thumbnail.py:230 cps/tasks/thumbnail.py:443 -#: cps/tasks/thumbnail.py:511 +#: cps/tasks/thumbnail.py:231 cps/tasks/thumbnail.py:444 +#: cps/tasks/thumbnail.py:512 msgid "Cover Thumbnails" msgstr "" -#: cps/tasks/thumbnail.py:289 +#: cps/tasks/thumbnail.py:290 msgid "Generated {0} series thumbnails" msgstr "" -#: cps/tasks/thumbnail.py:454 +#: cps/tasks/thumbnail.py:455 msgid "Clearing cover thumbnail cache" msgstr "" -#: cps/tasks/upload.py:38 cps/templates/admin.html:20 +#: cps/tasks/upload.py:39 cps/templates/admin.html:20 #: cps/templates/layout.html:81 cps/templates/user_table.html:145 msgid "Upload" msgstr "上傳書籍" @@ -1819,7 +1820,7 @@ msgstr "確定" #: cps/templates/admin.html:259 cps/templates/admin.html:273 #: cps/templates/book_edit.html:214 cps/templates/book_table.html:127 -#: cps/templates/config_db.html:66 cps/templates/config_edit.html:423 +#: cps/templates/config_db.html:66 cps/templates/config_edit.html:427 #: cps/templates/config_view_edit.html:175 cps/templates/detail.html:342 #: cps/templates/modal_dialogs.html:64 cps/templates/modal_dialogs.html:99 #: cps/templates/modal_dialogs.html:117 cps/templates/modal_dialogs.html:135 @@ -2005,7 +2006,7 @@ msgid "Fetch Metadata" msgstr "獲取元數據" #: cps/templates/book_edit.html:213 cps/templates/config_db.html:65 -#: cps/templates/config_edit.html:422 cps/templates/config_view_edit.html:174 +#: cps/templates/config_edit.html:426 cps/templates/config_view_edit.html:174 #: cps/templates/email_edit.html:65 cps/templates/schedule_edit.html:44 #: cps/templates/shelf_edit.html:25 cps/templates/shelf_order.html:41 #: cps/templates/user_edit.html:142 @@ -2479,47 +2480,51 @@ msgid "Configure Backend for Limiter" msgstr "" #: cps/templates/config_edit.html:376 -msgid "Options for Limiter" +msgid "Options for Limiter Backend" msgstr "" -#: cps/templates/config_edit.html:381 +#: cps/templates/config_edit.html:382 +msgid "Check if file extensions matches file content on upload" +msgstr "" + +#: cps/templates/config_edit.html:385 msgid "Session protection" msgstr "" -#: cps/templates/config_edit.html:383 +#: cps/templates/config_edit.html:387 msgid "Basic" msgstr "" -#: cps/templates/config_edit.html:384 +#: cps/templates/config_edit.html:388 msgid "Strong" msgstr "" -#: cps/templates/config_edit.html:389 +#: cps/templates/config_edit.html:393 #, fuzzy msgid "User Password policy" msgstr "重置用戶密碼" -#: cps/templates/config_edit.html:393 +#: cps/templates/config_edit.html:397 msgid "Minimum password length" msgstr "" -#: cps/templates/config_edit.html:398 +#: cps/templates/config_edit.html:402 msgid "Enforce number" msgstr "" -#: cps/templates/config_edit.html:402 +#: cps/templates/config_edit.html:406 msgid "Enforce lowercase characters" msgstr "" -#: cps/templates/config_edit.html:406 +#: cps/templates/config_edit.html:410 msgid "Enforce uppercase characters" msgstr "" -#: cps/templates/config_edit.html:410 +#: cps/templates/config_edit.html:414 msgid "Enforce characters (needed For Chinese/Japanese/Korean Characters)" msgstr "" -#: cps/templates/config_edit.html:414 +#: cps/templates/config_edit.html:418 msgid "Enforce special characters" msgstr "" @@ -2651,6 +2656,11 @@ msgstr "標為未讀" msgid "Mark As Read" msgstr "標為已讀" +#: cps/templates/detail.html:254 +#, fuzzy +msgid "Mark Book as Read or Unread" +msgstr "標為未讀" + #: cps/templates/detail.html:254 cps/templates/listenmp3.html:159 msgid "Read" msgstr "已讀" @@ -2663,8 +2673,13 @@ msgstr "從歸檔檔案還原" msgid "Add to archive" msgstr "添加到歸檔" -#: cps/templates/detail.html:267 cps/templates/listenmp3.html:167 -msgid "Archived" +#: cps/templates/detail.html:267 +msgid "Mark Book as archived or not, to hide it in Calibre-Web and delete it from Kobo Reader" +msgstr "" + +#: cps/templates/detail.html:267 +#, fuzzy +msgid "Archive" msgstr "歸檔" #: cps/templates/detail.html:278 cps/templates/listenmp3.html:177 @@ -2945,6 +2960,10 @@ msgstr "書籍詳情" msgid "Grid" msgstr "" +#: cps/templates/listenmp3.html:167 +msgid "Archived" +msgstr "歸檔" + #: cps/templates/login.html:18 msgid "Remember Me" msgstr "記住我" diff --git a/messages.pot b/messages.pot index 1f3134ad..d286d793 100644 --- a/messages.pot +++ b/messages.pot @@ -8,14 +8,14 @@ msgid "" msgstr "" "Project-Id-Version: PROJECT VERSION\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2024-06-09 12:26+0200\n" +"POT-Creation-Date: 2024-06-30 12:19+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.11.0\n" +"Generated-By: Babel 2.13.1\n" #: cps/about.py:84 msgid "Statistics" @@ -41,9 +41,9 @@ msgstr "" msgid "Success! Books queued for Metadata Backup, please check Tasks for result" msgstr "" -#: cps/admin.py:207 cps/editbooks.py:591 cps/editbooks.py:593 -#: cps/editbooks.py:631 cps/editbooks.py:648 cps/editbooks.py:1280 -#: cps/updater.py:613 cps/uploader.py:93 cps/uploader.py:102 +#: cps/admin.py:207 cps/editbooks.py:573 cps/editbooks.py:575 +#: cps/editbooks.py:615 cps/editbooks.py:658 cps/editbooks.py:1280 +#: cps/updater.py:615 cps/uploader.py:93 cps/uploader.py:102 msgid "Unknown" msgstr "" @@ -63,12 +63,12 @@ msgstr "" msgid "Edit Users" msgstr "" -#: cps/admin.py:368 cps/opds.py:541 cps/templates/grid.html:14 +#: cps/admin.py:368 cps/opds.py:542 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "" -#: cps/admin.py:395 cps/admin.py:1417 +#: cps/admin.py:395 cps/admin.py:1414 msgid "User not found" msgstr "" @@ -85,7 +85,7 @@ msgstr "" msgid "Malformed request" msgstr "" -#: cps/admin.py:471 cps/admin.py:2048 +#: cps/admin.py:471 cps/admin.py:2046 msgid "Guest Name can't be changed" msgstr "" @@ -93,7 +93,7 @@ msgstr "" msgid "Guest can't have this role" msgstr "" -#: cps/admin.py:495 cps/admin.py:2002 +#: cps/admin.py:495 cps/admin.py:2000 msgid "No admin user remaining, can't remove admin role" msgstr "" @@ -125,7 +125,7 @@ msgstr "" msgid "No Valid Book Language Given" msgstr "" -#: cps/admin.py:535 cps/editbooks.py:457 +#: cps/admin.py:535 cps/editbooks.py:440 msgid "Parameter not found" msgstr "" @@ -137,7 +137,7 @@ msgstr "" msgid "Invalid Restricted Column" msgstr "" -#: cps/admin.py:598 cps/admin.py:1873 +#: cps/admin.py:598 cps/admin.py:1871 msgid "Calibre-Web configuration updated" msgstr "" @@ -217,291 +217,291 @@ msgstr "" msgid "Invalid Action" msgstr "" -#: cps/admin.py:1123 +#: cps/admin.py:1120 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "" -#: cps/admin.py:1168 +#: cps/admin.py:1165 msgid "Logfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1174 +#: cps/admin.py:1171 msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1208 +#: cps/admin.py:1205 msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgstr "" -#: cps/admin.py:1214 +#: cps/admin.py:1211 msgid "Please Enter a LDAP Service Account and Password" msgstr "" -#: cps/admin.py:1217 +#: cps/admin.py:1214 msgid "Please Enter a LDAP Service Account" msgstr "" -#: cps/admin.py:1222 +#: cps/admin.py:1219 #, python-format msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1224 +#: cps/admin.py:1221 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1228 +#: cps/admin.py:1225 #, python-format msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1230 +#: cps/admin.py:1227 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1237 +#: cps/admin.py:1234 #, python-format msgid "LDAP Member User Filter needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1239 +#: cps/admin.py:1236 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1246 +#: cps/admin.py:1243 msgid "LDAP CACertificate, Certificate or Key Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1277 cps/templates/admin.html:53 +#: cps/admin.py:1274 cps/templates/admin.html:53 msgid "Add New User" msgstr "" -#: cps/admin.py:1286 cps/templates/admin.html:100 +#: cps/admin.py:1283 cps/templates/admin.html:100 msgid "Edit Email Server Settings" msgstr "" -#: cps/admin.py:1305 +#: cps/admin.py:1302 msgid "Success! Gmail Account Verified." msgstr "" -#: cps/admin.py:1325 cps/admin.py:1328 cps/admin.py:1713 cps/admin.py:1857 -#: cps/admin.py:1955 cps/admin.py:2076 cps/editbooks.py:243 -#: cps/editbooks.py:319 cps/editbooks.py:1242 cps/shelf.py:90 cps/shelf.py:150 +#: cps/admin.py:1322 cps/admin.py:1325 cps/admin.py:1710 cps/admin.py:1855 +#: cps/admin.py:1953 cps/admin.py:2074 cps/editbooks.py:226 +#: cps/editbooks.py:303 cps/editbooks.py:1242 cps/shelf.py:90 cps/shelf.py:150 #: cps/shelf.py:193 cps/shelf.py:243 cps/shelf.py:280 cps/shelf.py:354 -#: cps/shelf.py:468 cps/tasks/convert.py:150 cps/web.py:1520 +#: cps/shelf.py:468 cps/tasks/convert.py:153 cps/web.py:1520 #, python-format msgid "Oops! Database Error: %(error)s." msgstr "" -#: cps/admin.py:1335 +#: cps/admin.py:1332 #, python-format msgid "Test e-mail queued for sending to %(email)s, please check Tasks for result" msgstr "" -#: cps/admin.py:1338 +#: cps/admin.py:1335 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "" -#: cps/admin.py:1340 +#: cps/admin.py:1337 msgid "Please configure your e-mail address first..." msgstr "" -#: cps/admin.py:1342 +#: cps/admin.py:1339 msgid "Email Server Settings updated" msgstr "" -#: cps/admin.py:1365 cps/templates/admin.html:195 +#: cps/admin.py:1362 cps/templates/admin.html:195 msgid "Edit Scheduled Tasks Settings" msgstr "" -#: cps/admin.py:1377 +#: cps/admin.py:1374 msgid "Invalid start time for task specified" msgstr "" -#: cps/admin.py:1382 +#: cps/admin.py:1379 msgid "Invalid duration for task specified" msgstr "" -#: cps/admin.py:1392 +#: cps/admin.py:1389 msgid "Scheduled tasks settings updated" msgstr "" -#: cps/admin.py:1402 cps/admin.py:1451 cps/admin.py:2072 cps/web.py:1316 +#: cps/admin.py:1399 cps/admin.py:1448 cps/admin.py:2070 cps/web.py:1316 msgid "Oops! An unknown error occurred. Please try again later." msgstr "" -#: cps/admin.py:1406 +#: cps/admin.py:1403 msgid "Settings DB is not Writeable" msgstr "" -#: cps/admin.py:1436 cps/admin.py:2064 +#: cps/admin.py:1433 cps/admin.py:2062 #, python-format msgid "Edit User %(nick)s" msgstr "" -#: cps/admin.py:1448 +#: cps/admin.py:1445 #, python-format msgid "Success! Password for user %(user)s reset" msgstr "" -#: cps/admin.py:1454 +#: cps/admin.py:1451 msgid "Oops! Please configure the SMTP mail settings." msgstr "" -#: cps/admin.py:1465 +#: cps/admin.py:1462 msgid "Logfile viewer" msgstr "" -#: cps/admin.py:1531 +#: cps/admin.py:1528 msgid "Requesting update package" msgstr "" -#: cps/admin.py:1532 +#: cps/admin.py:1529 msgid "Downloading update package" msgstr "" -#: cps/admin.py:1533 +#: cps/admin.py:1530 msgid "Unzipping update package" msgstr "" -#: cps/admin.py:1534 +#: cps/admin.py:1531 msgid "Replacing files" msgstr "" -#: cps/admin.py:1535 +#: cps/admin.py:1532 msgid "Database connections are closed" msgstr "" -#: cps/admin.py:1536 +#: cps/admin.py:1533 msgid "Stopping server" msgstr "" -#: cps/admin.py:1537 +#: cps/admin.py:1534 msgid "Update finished, please press okay and reload page" msgstr "" -#: cps/admin.py:1538 cps/admin.py:1539 cps/admin.py:1540 cps/admin.py:1541 -#: cps/admin.py:1542 cps/admin.py:1543 +#: cps/admin.py:1535 cps/admin.py:1536 cps/admin.py:1537 cps/admin.py:1538 +#: cps/admin.py:1539 cps/admin.py:1540 msgid "Update failed:" msgstr "" -#: cps/admin.py:1538 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 +#: cps/admin.py:1535 cps/updater.py:391 cps/updater.py:626 cps/updater.py:628 msgid "HTTP Error" msgstr "" -#: cps/admin.py:1539 cps/updater.py:391 cps/updater.py:628 +#: cps/admin.py:1536 cps/updater.py:393 cps/updater.py:630 msgid "Connection error" msgstr "" -#: cps/admin.py:1540 cps/updater.py:393 cps/updater.py:630 +#: cps/admin.py:1537 cps/updater.py:395 cps/updater.py:632 msgid "Timeout while establishing connection" msgstr "" -#: cps/admin.py:1541 cps/updater.py:395 cps/updater.py:632 +#: cps/admin.py:1538 cps/updater.py:397 cps/updater.py:634 msgid "General error" msgstr "" -#: cps/admin.py:1542 +#: cps/admin.py:1539 msgid "Update file could not be saved in temp dir" msgstr "" -#: cps/admin.py:1543 +#: cps/admin.py:1540 msgid "Files could not be replaced during update" msgstr "" -#: cps/admin.py:1567 +#: cps/admin.py:1564 msgid "Failed to extract at least One LDAP User" msgstr "" -#: cps/admin.py:1612 +#: cps/admin.py:1609 msgid "Failed to Create at Least One LDAP User" msgstr "" -#: cps/admin.py:1625 +#: cps/admin.py:1622 #, python-format msgid "Error: %(ldaperror)s" msgstr "" -#: cps/admin.py:1629 +#: cps/admin.py:1626 msgid "Error: No user returned in response of LDAP server" msgstr "" -#: cps/admin.py:1665 +#: cps/admin.py:1662 msgid "At Least One LDAP User Not Found in Database" msgstr "" -#: cps/admin.py:1667 +#: cps/admin.py:1664 msgid "{} User Successfully Imported" msgstr "" -#: cps/admin.py:1725 +#: cps/admin.py:1722 msgid "DB Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1745 +#: cps/admin.py:1742 msgid "DB is not Writeable" msgstr "" -#: cps/admin.py:1761 +#: cps/admin.py:1758 msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1765 +#: cps/admin.py:1762 msgid "Certfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1842 +#: cps/admin.py:1840 msgid "Password length has to be between 1 and 40" msgstr "" -#: cps/admin.py:1896 +#: cps/admin.py:1894 msgid "Database Settings updated" msgstr "" -#: cps/admin.py:1904 +#: cps/admin.py:1902 msgid "Database Configuration" msgstr "" -#: cps/admin.py:1919 cps/web.py:1290 +#: cps/admin.py:1917 cps/web.py:1290 msgid "Oops! Please complete all fields." msgstr "" -#: cps/admin.py:1928 +#: cps/admin.py:1926 msgid "E-mail is not from valid domain" msgstr "" -#: cps/admin.py:1934 +#: cps/admin.py:1932 msgid "Add new user" msgstr "" -#: cps/admin.py:1945 +#: cps/admin.py:1943 #, python-format msgid "User '%(user)s' created" msgstr "" -#: cps/admin.py:1951 +#: cps/admin.py:1949 msgid "Oops! An account already exists for this Email. or name." msgstr "" -#: cps/admin.py:1981 +#: cps/admin.py:1979 #, python-format msgid "User '%(nick)s' deleted" msgstr "" -#: cps/admin.py:1984 +#: cps/admin.py:1982 msgid "Can't delete Guest User" msgstr "" -#: cps/admin.py:1987 +#: cps/admin.py:1985 msgid "No admin user remaining, can't delete user" msgstr "" -#: cps/admin.py:2042 cps/web.py:1469 +#: cps/admin.py:2040 cps/web.py:1469 msgid "Email can't be empty and has to be a valid Email" msgstr "" -#: cps/admin.py:2068 +#: cps/admin.py:2066 #, python-format msgid "User '%(nick)s' updated" msgstr "" @@ -514,12 +514,12 @@ msgstr "" msgid "Execution permissions missing" msgstr "" -#: cps/db.py:756 cps/search.py:137 cps/web.py:747 +#: cps/db.py:768 cps/search.py:137 cps/web.py:747 #, python-format msgid "Custom Column No.%(column)d does not exist in calibre database" msgstr "" -#: cps/db.py:996 cps/templates/config_edit.html:203 +#: cps/db.py:1008 cps/templates/config_edit.html:203 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 #: cps/web.py:562 cps/web.py:596 cps/web.py:641 cps/web.py:681 cps/web.py:708 #: cps/web.py:989 cps/web.py:1019 cps/web.py:1064 cps/web.py:1092 @@ -527,100 +527,104 @@ msgstr "" msgid "None" msgstr "" -#: cps/editbooks.py:124 cps/editbooks.py:912 cps/web.py:529 cps/web.py:1561 -#: cps/web.py:1605 cps/web.py:1650 +#: cps/editbooks.py:108 cps/editbooks.py:929 cps/web.py:529 cps/web.py:1561 +#: cps/web.py:1606 cps/web.py:1651 msgid "Oops! Selected book is unavailable. File does not exist or is not accessible" msgstr "" -#: cps/editbooks.py:168 cps/editbooks.py:1263 +#: cps/editbooks.py:151 cps/editbooks.py:1263 msgid "User has no rights to upload cover" msgstr "" -#: cps/editbooks.py:188 cps/editbooks.py:733 +#: cps/editbooks.py:171 cps/editbooks.py:744 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "" -#: cps/editbooks.py:230 +#: cps/editbooks.py:213 msgid "Metadata successfully updated" msgstr "" -#: cps/editbooks.py:248 +#: cps/editbooks.py:231 msgid "Error editing book: {}" msgstr "" -#: cps/editbooks.py:305 +#: cps/editbooks.py:289 #, python-format msgid "File %(file)s uploaded" msgstr "" -#: cps/editbooks.py:333 +#: cps/editbooks.py:317 msgid "Source or destination format for conversion missing" msgstr "" -#: cps/editbooks.py:341 +#: cps/editbooks.py:325 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "" -#: cps/editbooks.py:345 +#: cps/editbooks.py:329 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "" -#: cps/editbooks.py:652 +#: cps/editbooks.py:662 msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgstr "" -#: cps/editbooks.py:707 cps/editbooks.py:1043 +#: cps/editbooks.py:718 cps/editbooks.py:1049 #, python-format msgid "'%(langname)s' is not a valid language" msgstr "" -#: cps/editbooks.py:745 cps/editbooks.py:1203 +#: cps/editbooks.py:756 cps/editbooks.py:1192 +msgid "File type isn't allowed to be uploaded to this server" +msgstr "" + +#: cps/editbooks.py:762 cps/editbooks.py:1202 #, python-format msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgstr "" -#: cps/editbooks.py:749 cps/editbooks.py:1207 +#: cps/editbooks.py:766 cps/editbooks.py:1206 msgid "File to be uploaded must have an extension" msgstr "" -#: cps/editbooks.py:757 +#: cps/editbooks.py:774 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "" -#: cps/editbooks.py:777 +#: cps/editbooks.py:794 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "" -#: cps/editbooks.py:834 cps/editbooks.py:836 +#: cps/editbooks.py:851 cps/editbooks.py:853 msgid "Book Format Successfully Deleted" msgstr "" -#: cps/editbooks.py:843 cps/editbooks.py:845 +#: cps/editbooks.py:860 cps/editbooks.py:862 msgid "Book Successfully Deleted" msgstr "" -#: cps/editbooks.py:897 +#: cps/editbooks.py:914 msgid "You are missing permissions to delete books" msgstr "" -#: cps/editbooks.py:947 +#: cps/editbooks.py:964 msgid "edit metadata" msgstr "" -#: cps/editbooks.py:996 +#: cps/editbooks.py:1013 #, python-format msgid "%(seriesindex)s is not a valid number, skipping" msgstr "" -#: cps/editbooks.py:1198 +#: cps/editbooks.py:1197 msgid "User has no rights to upload additional file formats" msgstr "" -#: cps/editbooks.py:1219 +#: cps/editbooks.py:1218 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "" @@ -639,7 +643,7 @@ msgstr "" msgid "Google Drive setup not completed, try to deactivate and activate Google Drive again" msgstr "" -#: cps/gdrive.py:95 +#: cps/gdrive.py:96 msgid "Callback domain is not verified, please follow steps to verify domain in google developer console" msgstr "" @@ -648,7 +652,7 @@ msgstr "" msgid "%(format)s format not found for book id: %(book)d" msgstr "" -#: cps/helper.py:93 cps/tasks/convert.py:86 +#: cps/helper.py:93 cps/tasks/convert.py:89 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "" @@ -721,121 +725,117 @@ msgstr "" msgid "Deleting book %(id)s from database only, book path in database not valid: %(path)s" msgstr "" -#: cps/helper.py:452 +#: cps/helper.py:465 #, python-format msgid "Rename author from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgstr "" -#: cps/helper.py:524 cps/helper.py:533 +#: cps/helper.py:536 cps/helper.py:545 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "" -#: cps/helper.py:567 +#: cps/helper.py:587 #, python-format msgid "Rename title from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgstr "" -#: cps/helper.py:587 -msgid "Error in rename file in path: {}" -msgstr "" - -#: cps/helper.py:605 +#: cps/helper.py:625 #, python-format msgid "Book path %(path)s not found on Google Drive" msgstr "" -#: cps/helper.py:670 +#: cps/helper.py:685 msgid "Found an existing account for this Email address" msgstr "" -#: cps/helper.py:678 +#: cps/helper.py:693 msgid "This username is already taken" msgstr "" -#: cps/helper.py:690 +#: cps/helper.py:705 msgid "Invalid Email address format" msgstr "" -#: cps/helper.py:710 +#: cps/helper.py:726 msgid "Password doesn't comply with password validation rules" msgstr "" -#: cps/helper.py:859 +#: cps/helper.py:873 msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "" -#: cps/helper.py:869 +#: cps/helper.py:883 msgid "Error Downloading Cover" msgstr "" -#: cps/helper.py:872 +#: cps/helper.py:886 msgid "Cover Format Error" msgstr "" -#: cps/helper.py:875 +#: cps/helper.py:889 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "" -#: cps/helper.py:885 +#: cps/helper.py:899 msgid "Failed to create path for cover" msgstr "" -#: cps/helper.py:901 +#: cps/helper.py:915 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "" -#: cps/helper.py:912 +#: cps/helper.py:926 msgid "Only jpg/jpeg/png/webp/bmp files are supported as coverfile" msgstr "" -#: cps/helper.py:924 +#: cps/helper.py:938 msgid "Invalid cover file content" msgstr "" -#: cps/helper.py:928 +#: cps/helper.py:942 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "" -#: cps/helper.py:999 cps/helper.py:1156 +#: cps/helper.py:1014 cps/helper.py:1171 msgid "Cover" msgstr "" -#: cps/helper.py:1016 +#: cps/helper.py:1031 msgid "UnRar binary file not found" msgstr "" -#: cps/helper.py:1027 +#: cps/helper.py:1042 msgid "Error executing UnRar" msgstr "" -#: cps/helper.py:1035 +#: cps/helper.py:1050 msgid "Could not find the specified directory" msgstr "" -#: cps/helper.py:1038 +#: cps/helper.py:1053 msgid "Please specify a directory, not a file" msgstr "" -#: cps/helper.py:1052 +#: cps/helper.py:1067 msgid "Calibre binaries not viable" msgstr "" -#: cps/helper.py:1061 +#: cps/helper.py:1076 #, python-format msgid "Missing calibre binaries: %(missing)s" msgstr "" -#: cps/helper.py:1063 +#: cps/helper.py:1078 #, python-format msgid "Missing executable permissions: %(missing)s" msgstr "" -#: cps/helper.py:1068 +#: cps/helper.py:1083 msgid "Error executing Calibre" msgstr "" -#: cps/helper.py:1158 cps/templates/admin.html:216 +#: cps/helper.py:1173 cps/templates/admin.html:216 msgid "Queue all books for metadata backup" msgstr "" @@ -881,35 +881,35 @@ msgstr "" msgid "Not Linked to %(oauth)s" msgstr "" -#: cps/oauth_bb.py:261 +#: cps/oauth_bb.py:262 msgid "Failed to log in with GitHub." msgstr "" -#: cps/oauth_bb.py:267 +#: cps/oauth_bb.py:268 msgid "Failed to fetch user info from GitHub." msgstr "" -#: cps/oauth_bb.py:279 +#: cps/oauth_bb.py:280 msgid "Failed to log in with Google." msgstr "" -#: cps/oauth_bb.py:285 +#: cps/oauth_bb.py:286 msgid "Failed to fetch user info from Google." msgstr "" -#: cps/oauth_bb.py:332 +#: cps/oauth_bb.py:334 msgid "GitHub Oauth error, please retry later." msgstr "" -#: cps/oauth_bb.py:335 +#: cps/oauth_bb.py:337 msgid "GitHub Oauth error: {}" msgstr "" -#: cps/oauth_bb.py:356 +#: cps/oauth_bb.py:358 msgid "Google Oauth error, please retry later." msgstr "" -#: cps/oauth_bb.py:359 +#: cps/oauth_bb.py:361 msgid "Google Oauth error: {}" msgstr "" @@ -1258,32 +1258,32 @@ msgstr "" msgid "Unknown Status" msgstr "" -#: cps/updater.py:431 cps/updater.py:442 cps/updater.py:543 cps/updater.py:558 +#: cps/updater.py:433 cps/updater.py:444 cps/updater.py:545 cps/updater.py:560 msgid "Unexpected data while reading update information" msgstr "" -#: cps/updater.py:438 cps/updater.py:550 +#: cps/updater.py:440 cps/updater.py:552 msgid "No update available. You already have the latest version installed" msgstr "" -#: cps/updater.py:456 +#: cps/updater.py:458 msgid "A new update is available. Click on the button below to update to the latest version." msgstr "" -#: cps/updater.py:474 +#: cps/updater.py:476 msgid "Could not fetch update information" msgstr "" -#: cps/updater.py:484 +#: cps/updater.py:486 msgid "Click on the button below to update to the latest stable version." msgstr "" -#: cps/updater.py:493 cps/updater.py:507 cps/updater.py:518 +#: cps/updater.py:495 cps/updater.py:509 cps/updater.py:520 #, python-format msgid "A new update is available. Click on the button below to update to version: %(version)s" msgstr "" -#: cps/updater.py:536 +#: cps/updater.py:538 msgid "No release information available" msgstr "" @@ -1453,50 +1453,50 @@ msgstr "" msgid "Oops! An account already exists for this Email." msgstr "" -#: cps/services/gmail.py:58 +#: cps/services/gmail.py:59 msgid "Found no valid gmail.json file with OAuth information" msgstr "" -#: cps/tasks/convert.py:105 +#: cps/tasks/convert.py:108 #, python-format msgid "%(book)s send to E-Reader" msgstr "" -#: cps/tasks/convert.py:167 +#: cps/tasks/convert.py:170 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "" -#: cps/tasks/convert.py:201 +#: cps/tasks/convert.py:204 #, python-format msgid "%(format)s format not found on disk" msgstr "" -#: cps/tasks/convert.py:205 +#: cps/tasks/convert.py:208 msgid "Ebook converter failed with unknown error" msgstr "" -#: cps/tasks/convert.py:224 +#: cps/tasks/convert.py:227 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "" -#: cps/tasks/convert.py:245 +#: cps/tasks/convert.py:248 #, python-format msgid "Converted file not found or more than one file in folder %(folder)s" msgstr "" -#: cps/tasks/convert.py:287 +#: cps/tasks/convert.py:291 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "" -#: cps/tasks/convert.py:310 +#: cps/tasks/convert.py:314 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "" -#: cps/tasks/convert.py:315 +#: cps/tasks/convert.py:319 msgid "Convert" msgstr "" @@ -1508,7 +1508,7 @@ msgstr "" msgid "E-mail" msgstr "" -#: cps/tasks/metadata_backup.py:33 +#: cps/tasks/metadata_backup.py:34 msgid "Backing up Metadata" msgstr "" @@ -1521,20 +1521,20 @@ msgstr "" msgid "Generated %(count)s cover thumbnails" msgstr "" -#: cps/tasks/thumbnail.py:230 cps/tasks/thumbnail.py:443 -#: cps/tasks/thumbnail.py:511 +#: cps/tasks/thumbnail.py:231 cps/tasks/thumbnail.py:444 +#: cps/tasks/thumbnail.py:512 msgid "Cover Thumbnails" msgstr "" -#: cps/tasks/thumbnail.py:289 +#: cps/tasks/thumbnail.py:290 msgid "Generated {0} series thumbnails" msgstr "" -#: cps/tasks/thumbnail.py:454 +#: cps/tasks/thumbnail.py:455 msgid "Clearing cover thumbnail cache" msgstr "" -#: cps/tasks/upload.py:38 cps/templates/admin.html:20 +#: cps/tasks/upload.py:39 cps/templates/admin.html:20 #: cps/templates/layout.html:81 cps/templates/user_table.html:145 msgid "Upload" msgstr "" @@ -1780,7 +1780,7 @@ msgstr "" #: cps/templates/admin.html:259 cps/templates/admin.html:273 #: cps/templates/book_edit.html:214 cps/templates/book_table.html:127 -#: cps/templates/config_db.html:66 cps/templates/config_edit.html:423 +#: cps/templates/config_db.html:66 cps/templates/config_edit.html:427 #: cps/templates/config_view_edit.html:175 cps/templates/detail.html:342 #: cps/templates/modal_dialogs.html:64 cps/templates/modal_dialogs.html:99 #: cps/templates/modal_dialogs.html:117 cps/templates/modal_dialogs.html:135 @@ -1966,7 +1966,7 @@ msgid "Fetch Metadata" msgstr "" #: cps/templates/book_edit.html:213 cps/templates/config_db.html:65 -#: cps/templates/config_edit.html:422 cps/templates/config_view_edit.html:174 +#: cps/templates/config_edit.html:426 cps/templates/config_view_edit.html:174 #: cps/templates/email_edit.html:65 cps/templates/schedule_edit.html:44 #: cps/templates/shelf_edit.html:25 cps/templates/shelf_order.html:41 #: cps/templates/user_edit.html:142 @@ -2434,46 +2434,50 @@ msgid "Configure Backend for Limiter" msgstr "" #: cps/templates/config_edit.html:376 -msgid "Options for Limiter" +msgid "Options for Limiter Backend" msgstr "" -#: cps/templates/config_edit.html:381 +#: cps/templates/config_edit.html:382 +msgid "Check if file extensions matches file content on upload" +msgstr "" + +#: cps/templates/config_edit.html:385 msgid "Session protection" msgstr "" -#: cps/templates/config_edit.html:383 +#: cps/templates/config_edit.html:387 msgid "Basic" msgstr "" -#: cps/templates/config_edit.html:384 +#: cps/templates/config_edit.html:388 msgid "Strong" msgstr "" -#: cps/templates/config_edit.html:389 +#: cps/templates/config_edit.html:393 msgid "User Password policy" msgstr "" -#: cps/templates/config_edit.html:393 +#: cps/templates/config_edit.html:397 msgid "Minimum password length" msgstr "" -#: cps/templates/config_edit.html:398 +#: cps/templates/config_edit.html:402 msgid "Enforce number" msgstr "" -#: cps/templates/config_edit.html:402 +#: cps/templates/config_edit.html:406 msgid "Enforce lowercase characters" msgstr "" -#: cps/templates/config_edit.html:406 +#: cps/templates/config_edit.html:410 msgid "Enforce uppercase characters" msgstr "" -#: cps/templates/config_edit.html:410 +#: cps/templates/config_edit.html:414 msgid "Enforce characters (needed For Chinese/Japanese/Korean Characters)" msgstr "" -#: cps/templates/config_edit.html:414 +#: cps/templates/config_edit.html:418 msgid "Enforce special characters" msgstr "" @@ -2603,6 +2607,10 @@ msgstr "" msgid "Mark As Read" msgstr "" +#: cps/templates/detail.html:254 +msgid "Mark Book as Read or Unread" +msgstr "" + #: cps/templates/detail.html:254 cps/templates/listenmp3.html:159 msgid "Read" msgstr "" @@ -2615,8 +2623,12 @@ msgstr "" msgid "Add to archive" msgstr "" -#: cps/templates/detail.html:267 cps/templates/listenmp3.html:167 -msgid "Archived" +#: cps/templates/detail.html:267 +msgid "Mark Book as archived or not, to hide it in Calibre-Web and delete it from Kobo Reader" +msgstr "" + +#: cps/templates/detail.html:267 +msgid "Archive" msgstr "" #: cps/templates/detail.html:278 cps/templates/listenmp3.html:177 @@ -2893,6 +2905,10 @@ msgstr "" msgid "Grid" msgstr "" +#: cps/templates/listenmp3.html:167 +msgid "Archived" +msgstr "" + #: cps/templates/login.html:18 msgid "Remember Me" msgstr ""