diff --git a/cps/translations/cs/LC_MESSAGES/messages.mo b/cps/translations/cs/LC_MESSAGES/messages.mo index 86713655..245ff696 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 cc5a051e..1096cf49 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-02-10 10:06+0100\n" +"POT-Creation-Date: 2024-04-27 07:20+0200\n" "PO-Revision-Date: 2020-06-09 21:11+0100\n" "Last-Translator: Lukas Heroudek \n" "Language: cs_CZ\n" @@ -21,502 +21,502 @@ msgstr "" msgid "Statistics" msgstr "Statistika" -#: cps/admin.py:149 +#: cps/admin.py:150 #, fuzzy msgid "Server restarted, please reload page." msgstr "Server restartován, znovu načtěte stránku" -#: cps/admin.py:151 +#: cps/admin.py:152 #, fuzzy msgid "Performing Server shutdown, please close window." msgstr "Vypínám server, zavřete okno" -#: cps/admin.py:159 +#: cps/admin.py:160 msgid "Success! Database Reconnected" msgstr "" -#: cps/admin.py:162 +#: cps/admin.py:163 msgid "Unknown command" msgstr "Neznámý příkaz" -#: cps/admin.py:173 +#: cps/admin.py:174 #, fuzzy 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:206 cps/editbooks.py:589 cps/editbooks.py:591 -#: cps/editbooks.py:629 cps/editbooks.py:646 cps/editbooks.py:1262 +#: cps/admin.py:207 cps/editbooks.py:590 cps/editbooks.py:592 +#: cps/editbooks.py:630 cps/editbooks.py:647 cps/editbooks.py:1263 #: cps/updater.py:613 cps/uploader.py:93 cps/uploader.py:102 msgid "Unknown" msgstr "Neznámý" -#: cps/admin.py:231 +#: cps/admin.py:232 msgid "Admin page" msgstr "Stránka správce" -#: cps/admin.py:251 +#: cps/admin.py:252 msgid "Basic Configuration" msgstr "Základní konfigurace" -#: cps/admin.py:289 +#: cps/admin.py:290 msgid "UI Configuration" msgstr "Konfigurace uživatelského rozhraní" -#: cps/admin.py:323 cps/templates/admin.html:51 +#: cps/admin.py:324 cps/templates/admin.html:51 #, fuzzy msgid "Edit Users" msgstr "Uživatel admin" -#: cps/admin.py:367 cps/opds.py:506 cps/templates/grid.html:14 +#: cps/admin.py:368 cps/opds.py:506 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "Vše" -#: cps/admin.py:394 cps/admin.py:1405 +#: cps/admin.py:395 cps/admin.py:1417 msgid "User not found" msgstr "Uživatel nenalezen" -#: cps/admin.py:408 +#: cps/admin.py:409 msgid "{} users deleted successfully" msgstr "" -#: cps/admin.py:431 cps/templates/config_view_edit.html:133 +#: cps/admin.py:432 cps/templates/config_view_edit.html:133 #: cps/templates/user_edit.html:45 cps/templates/user_table.html:81 msgid "Show All" msgstr "Zobrazit vše" -#: cps/admin.py:452 cps/admin.py:458 +#: cps/admin.py:453 cps/admin.py:459 msgid "Malformed request" msgstr "" -#: cps/admin.py:470 cps/admin.py:2033 +#: cps/admin.py:471 cps/admin.py:2048 msgid "Guest Name can't be changed" msgstr "" -#: cps/admin.py:482 +#: cps/admin.py:483 msgid "Guest can't have this role" msgstr "" -#: cps/admin.py:494 cps/admin.py:1987 +#: cps/admin.py:495 cps/admin.py:2002 msgid "No admin user remaining, can't remove admin role" msgstr "Nezbývá žádný správce, nelze odebrat roli správce" -#: cps/admin.py:498 cps/admin.py:512 +#: cps/admin.py:499 cps/admin.py:513 msgid "Value has to be true or false" msgstr "" -#: cps/admin.py:500 +#: cps/admin.py:501 msgid "Invalid role" msgstr "" -#: cps/admin.py:504 +#: cps/admin.py:505 msgid "Guest can't have this view" msgstr "" -#: cps/admin.py:514 +#: cps/admin.py:515 msgid "Invalid view" msgstr "" -#: cps/admin.py:517 +#: cps/admin.py:518 msgid "Guest's Locale is determined automatically and can't be set" msgstr "" -#: cps/admin.py:521 +#: cps/admin.py:522 msgid "No Valid Locale Given" msgstr "" -#: cps/admin.py:532 +#: cps/admin.py:533 msgid "No Valid Book Language Given" msgstr "" -#: cps/admin.py:534 cps/editbooks.py:455 +#: cps/admin.py:535 cps/editbooks.py:456 msgid "Parameter not found" msgstr "" -#: cps/admin.py:571 +#: cps/admin.py:572 msgid "Invalid Read Column" msgstr "" -#: cps/admin.py:577 +#: cps/admin.py:578 msgid "Invalid Restricted Column" msgstr "" -#: cps/admin.py:597 cps/admin.py:1858 +#: cps/admin.py:598 cps/admin.py:1873 msgid "Calibre-Web configuration updated" msgstr "Konfigurace Calibre-Web aktualizována" -#: cps/admin.py:609 +#: cps/admin.py:610 msgid "Do you really want to delete the Kobo Token?" msgstr "Opravdu chcete odstranit Kobo token?" -#: cps/admin.py:611 +#: cps/admin.py:612 msgid "Do you really want to delete this domain?" msgstr "" -#: cps/admin.py:613 +#: cps/admin.py:614 msgid "Do you really want to delete this user?" msgstr "" -#: cps/admin.py:615 +#: cps/admin.py:616 msgid "Are you sure you want to delete this shelf?" msgstr "Jste si jisti, že chcete odstranit tuto polici?" -#: cps/admin.py:617 +#: cps/admin.py:618 #, fuzzy msgid "Are you sure you want to change locales of selected user(s)?" msgstr "Jste si jisti, že chcete odstranit tuto polici?" -#: cps/admin.py:619 +#: cps/admin.py:620 msgid "Are you sure you want to change visible book languages for selected user(s)?" msgstr "" -#: cps/admin.py:621 +#: cps/admin.py:622 msgid "Are you sure you want to change the selected role for the selected user(s)?" msgstr "" -#: cps/admin.py:623 +#: cps/admin.py:624 #, fuzzy msgid "Are you sure you want to change the selected restrictions for the selected user(s)?" msgstr "Jste si jisti, že chcete odstranit tuto polici?" -#: cps/admin.py:625 +#: cps/admin.py:626 msgid "Are you sure you want to change the selected visibility restrictions for the selected user(s)?" msgstr "" -#: cps/admin.py:628 +#: cps/admin.py:629 #, fuzzy msgid "Are you sure you want to change shelf sync behavior for the selected user(s)?" msgstr "Jste si jisti, že chcete odstranit tuto polici?" -#: cps/admin.py:630 +#: cps/admin.py:631 #, fuzzy msgid "Are you sure you want to change Calibre library location?" msgstr "Opravdu chcete vypnout?" -#: cps/admin.py:632 +#: cps/admin.py:633 msgid "Calibre-Web will search for updated Covers and update Cover Thumbnails, this may take a while?" msgstr "" -#: cps/admin.py:635 +#: cps/admin.py:636 msgid "Are you sure you want delete Calibre-Web's sync database to force a full sync with your Kobo Reader?" msgstr "" -#: cps/admin.py:878 cps/admin.py:884 cps/admin.py:894 cps/admin.py:904 +#: cps/admin.py:879 cps/admin.py:885 cps/admin.py:895 cps/admin.py:905 #: cps/templates/modal_dialogs.html:29 cps/templates/user_table.html:41 #: cps/templates/user_table.html:58 msgid "Deny" msgstr "Zakázat" -#: cps/admin.py:880 cps/admin.py:886 cps/admin.py:896 cps/admin.py:906 +#: cps/admin.py:881 cps/admin.py:887 cps/admin.py:897 cps/admin.py:907 #: cps/templates/modal_dialogs.html:28 cps/templates/user_table.html:44 #: cps/templates/user_table.html:61 msgid "Allow" msgstr "Povolit" -#: cps/admin.py:921 +#: cps/admin.py:940 msgid "{} sync entries deleted" msgstr "" -#: cps/admin.py:969 +#: cps/admin.py:981 msgid "Tag not found" msgstr "" -#: cps/admin.py:981 +#: cps/admin.py:993 msgid "Invalid Action" msgstr "" -#: cps/admin.py:1111 +#: cps/admin.py:1123 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "client_secrets.json není nakonfigurováno pro webové aplikace" -#: cps/admin.py:1156 +#: cps/admin.py:1168 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:1162 +#: cps/admin.py:1174 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:1196 +#: cps/admin.py:1208 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:1202 +#: cps/admin.py:1214 #, fuzzy msgid "Please Enter a LDAP Service Account and Password" msgstr "Zadejte platné uživatelské jméno pro obnovení hesla" -#: cps/admin.py:1205 +#: cps/admin.py:1217 msgid "Please Enter a LDAP Service Account" msgstr "" -#: cps/admin.py:1210 +#: cps/admin.py:1222 #, 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:1212 +#: cps/admin.py:1224 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "Filtr objektů skupiny LDAP má nesrovnatelnou závorku" -#: cps/admin.py:1216 +#: cps/admin.py:1228 #, 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:1218 +#: cps/admin.py:1230 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "Filtr uživatelských objektů LDAP má nesrovnatelnou závorku" -#: cps/admin.py:1225 +#: cps/admin.py:1237 #, python-format msgid "LDAP Member User Filter needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1227 +#: cps/admin.py:1239 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1234 +#: cps/admin.py:1246 msgid "LDAP CACertificate, Certificate or Key Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1265 cps/templates/admin.html:53 +#: cps/admin.py:1277 cps/templates/admin.html:53 msgid "Add New User" msgstr "Přidat nového uživatele" -#: cps/admin.py:1274 cps/templates/admin.html:100 +#: cps/admin.py:1286 cps/templates/admin.html:100 msgid "Edit Email Server Settings" msgstr "Změnit SMTP nastavení" -#: cps/admin.py:1293 +#: cps/admin.py:1305 msgid "Success! Gmail Account Verified." msgstr "" -#: cps/admin.py:1313 cps/admin.py:1316 cps/admin.py:1698 cps/admin.py:1842 -#: cps/admin.py:1940 cps/admin.py:2061 cps/editbooks.py:241 -#: cps/editbooks.py:317 cps/editbooks.py:1224 cps/shelf.py:90 cps/shelf.py:150 +#: cps/admin.py:1325 cps/admin.py:1328 cps/admin.py:1710 cps/admin.py:1857 +#: cps/admin.py:1955 cps/admin.py:2076 cps/editbooks.py:242 +#: cps/editbooks.py:318 cps/editbooks.py:1225 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:149 cps/web.py:1496 +#: cps/shelf.py:468 cps/tasks/convert.py:150 cps/web.py:1520 #, python-format msgid "Oops! Database Error: %(error)s." msgstr "Chyba databáze: %(error)s." -#: cps/admin.py:1323 +#: cps/admin.py:1335 #, python-format msgid "Test e-mail queued for sending to %(email)s, please check Tasks for result" msgstr "" -#: cps/admin.py:1326 +#: cps/admin.py:1338 #, 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:1328 +#: cps/admin.py:1340 msgid "Please configure your e-mail address first..." msgstr "Prvně nastavte svou e-mailovou adresu..." -#: cps/admin.py:1330 +#: cps/admin.py:1342 msgid "Email Server Settings updated" msgstr "Nastavení e-mailového serveru aktualizováno" -#: cps/admin.py:1353 cps/templates/admin.html:195 +#: cps/admin.py:1365 cps/templates/admin.html:195 msgid "Edit Scheduled Tasks Settings" msgstr "" -#: cps/admin.py:1365 +#: cps/admin.py:1377 msgid "Invalid start time for task specified" msgstr "" -#: cps/admin.py:1370 +#: cps/admin.py:1382 msgid "Invalid duration for task specified" msgstr "" -#: cps/admin.py:1380 +#: cps/admin.py:1392 msgid "Scheduled tasks settings updated" msgstr "" -#: cps/admin.py:1390 cps/admin.py:1439 cps/admin.py:2057 cps/web.py:1296 +#: cps/admin.py:1402 cps/admin.py:1451 cps/admin.py:2072 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:1394 +#: cps/admin.py:1406 msgid "Settings DB is not Writeable" msgstr "" -#: cps/admin.py:1424 cps/admin.py:2049 +#: cps/admin.py:1436 cps/admin.py:2064 #, python-format msgid "Edit User %(nick)s" msgstr "Upravit uživatele %(nick)s" -#: cps/admin.py:1436 +#: cps/admin.py:1448 #, fuzzy, python-format msgid "Success! Password for user %(user)s reset" msgstr "Heslo pro uživatele %(user)s resetováno" -#: cps/admin.py:1442 +#: cps/admin.py:1454 #, fuzzy msgid "Oops! Please configure the SMTP mail settings." msgstr "Nejprve nakonfigurujte nastavení pošty SMTP..." -#: cps/admin.py:1453 +#: cps/admin.py:1465 msgid "Logfile viewer" msgstr "Prohlížeč log souborů" -#: cps/admin.py:1519 +#: cps/admin.py:1531 msgid "Requesting update package" msgstr "Požadování balíčku aktualizace" -#: cps/admin.py:1520 +#: cps/admin.py:1532 msgid "Downloading update package" msgstr "Stahování balíčku aktualizace" -#: cps/admin.py:1521 +#: cps/admin.py:1533 msgid "Unzipping update package" msgstr "Rozbalování balíčku aktualizace" -#: cps/admin.py:1522 +#: cps/admin.py:1534 msgid "Replacing files" msgstr "Nahrazování souborů" -#: cps/admin.py:1523 +#: cps/admin.py:1535 msgid "Database connections are closed" msgstr "Databázová připojení jsou uzavřena" -#: cps/admin.py:1524 +#: cps/admin.py:1536 msgid "Stopping server" msgstr "Zastavuji server" -#: cps/admin.py:1525 +#: cps/admin.py:1537 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:1526 cps/admin.py:1527 cps/admin.py:1528 cps/admin.py:1529 -#: cps/admin.py:1530 cps/admin.py:1531 +#: cps/admin.py:1538 cps/admin.py:1539 cps/admin.py:1540 cps/admin.py:1541 +#: cps/admin.py:1542 cps/admin.py:1543 msgid "Update failed:" msgstr "Aktualizace selhala:" -#: cps/admin.py:1526 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 +#: cps/admin.py:1538 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 msgid "HTTP Error" msgstr "HTTP chyba" -#: cps/admin.py:1527 cps/updater.py:391 cps/updater.py:628 +#: cps/admin.py:1539 cps/updater.py:391 cps/updater.py:628 msgid "Connection error" msgstr "Chyba připojení" -#: cps/admin.py:1528 cps/updater.py:393 cps/updater.py:630 +#: cps/admin.py:1540 cps/updater.py:393 cps/updater.py:630 msgid "Timeout while establishing connection" msgstr "Vypršel časový limit při navazování spojení" -#: cps/admin.py:1529 cps/updater.py:395 cps/updater.py:632 +#: cps/admin.py:1541 cps/updater.py:395 cps/updater.py:632 msgid "General error" msgstr "Všeobecná chyba" -#: cps/admin.py:1530 +#: cps/admin.py:1542 #, 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:1531 +#: cps/admin.py:1543 msgid "Files could not be replaced during update" msgstr "" -#: cps/admin.py:1555 +#: cps/admin.py:1567 #, 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:1600 +#: cps/admin.py:1612 msgid "Failed to Create at Least One LDAP User" msgstr "Nepodařilo se vytvořit nejméně jednoho uživatele LDAP" -#: cps/admin.py:1613 +#: cps/admin.py:1625 #, python-format msgid "Error: %(ldaperror)s" msgstr "Chyba: %(ldaperror)s" -#: cps/admin.py:1617 +#: cps/admin.py:1629 msgid "Error: No user returned in response of LDAP server" msgstr "Chyba: Žádná reakce od uživatele LDAP serveru" -#: cps/admin.py:1650 +#: 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:1652 +#: cps/admin.py:1664 msgid "{} User Successfully Imported" msgstr "" -#: cps/admin.py:1710 +#: 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:1730 +#: cps/admin.py:1742 msgid "DB is not Writeable" msgstr "Databáze není zapisovatelná" -#: cps/admin.py:1746 +#: 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:1750 +#: 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:1829 +#: cps/admin.py:1842 msgid "Password length has to be between 1 and 40" msgstr "" -#: cps/admin.py:1881 +#: cps/admin.py:1896 #, fuzzy msgid "Database Settings updated" msgstr "Nastavení e-mailového serveru aktualizováno" -#: cps/admin.py:1889 +#: cps/admin.py:1904 #, fuzzy msgid "Database Configuration" msgstr "Konfigurace funkcí" -#: cps/admin.py:1904 cps/web.py:1270 +#: cps/admin.py:1919 cps/web.py:1290 msgid "Oops! Please complete all fields." msgstr "Vyplňte všechna pole!" -#: cps/admin.py:1913 +#: cps/admin.py:1928 msgid "E-mail is not from valid domain" msgstr "E-mail není z platné domény" -#: cps/admin.py:1919 +#: cps/admin.py:1934 msgid "Add new user" msgstr "Přidat nového uživatele" -#: cps/admin.py:1930 +#: cps/admin.py:1945 #, python-format msgid "User '%(user)s' created" msgstr "Uživatel '%(user)s' vytvořen" -#: cps/admin.py:1936 +#: cps/admin.py:1951 #, 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:1966 +#: cps/admin.py:1981 #, python-format msgid "User '%(nick)s' deleted" msgstr "Uživatel '%(nick)s' smazán" -#: cps/admin.py:1969 +#: cps/admin.py:1984 msgid "Can't delete Guest User" msgstr "" -#: cps/admin.py:1972 +#: cps/admin.py:1987 msgid "No admin user remaining, can't delete user" msgstr "Nezbývá žádný správce, nemůžete jej odstranit" -#: cps/admin.py:2027 cps/web.py:1445 +#: cps/admin.py:2042 cps/web.py:1469 msgid "Email can't be empty and has to be a valid Email" msgstr "" -#: cps/admin.py:2053 +#: cps/admin.py:2068 #, python-format msgid "User '%(nick)s' updated" msgstr "Uživatel '%(nick)s' aktualizován" @@ -529,122 +529,123 @@ msgstr "není nainstalováno" msgid "Execution permissions missing" msgstr "Chybí povolení k exekuci" -#: cps/db.py:752 cps/search.py:137 cps/web.py:731 +#: cps/db.py:752 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:993 cps/templates/config_edit.html:208 +#: cps/db.py:992 cps/templates/config_edit.html:208 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 -#: cps/web.py:558 cps/web.py:592 cps/web.py:665 cps/web.py:692 cps/web.py:973 -#: cps/web.py:1003 cps/web.py:1048 cps/web.py:1076 cps/web.py:1115 +#: 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 +#: cps/web.py:1131 msgid "None" msgstr "Žádné" -#: cps/editbooks.py:122 cps/editbooks.py:910 cps/web.py:525 cps/web.py:1537 -#: cps/web.py:1581 cps/web.py:1626 +#: cps/editbooks.py:123 cps/editbooks.py:911 cps/web.py:529 cps/web.py:1561 +#: cps/web.py:1605 cps/web.py:1650 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:166 cps/editbooks.py:1245 +#: cps/editbooks.py:167 cps/editbooks.py:1246 msgid "User has no rights to upload cover" msgstr "" -#: cps/editbooks.py:186 cps/editbooks.py:731 +#: cps/editbooks.py:187 cps/editbooks.py:732 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "" -#: cps/editbooks.py:228 +#: cps/editbooks.py:229 msgid "Metadata successfully updated" msgstr "Metadata úspěšně aktualizována" -#: cps/editbooks.py:246 +#: cps/editbooks.py:247 msgid "Error editing book: {}" msgstr "" -#: cps/editbooks.py:303 +#: cps/editbooks.py:304 #, python-format msgid "File %(file)s uploaded" msgstr "Soubor %(file)s nahrán" -#: cps/editbooks.py:331 +#: cps/editbooks.py:332 msgid "Source or destination format for conversion missing" msgstr "Chybí zdrojový nebo cílový formát pro převod" -#: cps/editbooks.py:339 +#: cps/editbooks.py:340 #, 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:343 +#: cps/editbooks.py:344 #, 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:650 +#: cps/editbooks.py:651 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:705 cps/editbooks.py:1037 +#: cps/editbooks.py:706 cps/editbooks.py:1038 #, fuzzy, python-format msgid "'%(langname)s' is not a valid language" msgstr "%(langname)s není platným jazykem" -#: cps/editbooks.py:743 cps/editbooks.py:1185 +#: cps/editbooks.py:744 cps/editbooks.py:1186 #, 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:747 cps/editbooks.py:1189 +#: cps/editbooks.py:748 cps/editbooks.py:1190 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:755 +#: cps/editbooks.py:756 #, 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:775 +#: cps/editbooks.py:776 #, 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:832 cps/editbooks.py:834 +#: cps/editbooks.py:833 cps/editbooks.py:835 msgid "Book Format Successfully Deleted" msgstr "Formát knihy úspěšně smazán" -#: cps/editbooks.py:841 cps/editbooks.py:843 +#: cps/editbooks.py:842 cps/editbooks.py:844 msgid "Book Successfully Deleted" msgstr "Kniha úspěšně smazána" -#: cps/editbooks.py:895 +#: cps/editbooks.py:896 msgid "You are missing permissions to delete books" msgstr "" -#: cps/editbooks.py:945 +#: cps/editbooks.py:946 msgid "edit metadata" msgstr "upravit metadata" -#: cps/editbooks.py:994 +#: cps/editbooks.py:995 #, python-format msgid "%(seriesindex)s is not a valid number, skipping" msgstr "" -#: cps/editbooks.py:1180 +#: cps/editbooks.py:1181 msgid "User has no rights to upload additional file formats" msgstr "" -#: cps/editbooks.py:1201 +#: cps/editbooks.py:1202 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "Nepodařilo se vytvořit cestu %(path)s (oprávnění odepřeno)." -#: cps/editbooks.py:1206 +#: cps/editbooks.py:1207 #, python-format msgid "Failed to store file %(file)s." msgstr "Uložení souboru %(file)s se nezdařilo." -#: cps/editbooks.py:1230 +#: cps/editbooks.py:1231 #, python-format msgid "File format %(ext)s added to %(book)s" msgstr "Formát souboru %(ext)s přidán do %(book)s" @@ -657,207 +658,207 @@ msgstr "Google Drive nastavení nebylo dokončeno, zkuste znovu deaktivovat a a 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" -#: cps/helper.py:84 +#: cps/helper.py:86 #, python-format msgid "%(format)s format not found for book id: %(book)d" msgstr "%(format)s formát pro knihu: %(book)d nenalezen" -#: cps/helper.py:91 cps/tasks/convert.py:86 +#: cps/helper.py:93 cps/tasks/convert.py:86 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "%(format)s nenalezen na Google Drive: %(fn)s" -#: cps/helper.py:96 +#: cps/helper.py:98 #, python-format msgid "%(format)s not found: %(fn)s" msgstr "%(format)s nenalezen: %(fn)s" -#: cps/helper.py:101 cps/helper.py:226 cps/templates/detail.html:58 +#: cps/helper.py:103 cps/helper.py:228 cps/templates/detail.html:58 #, fuzzy msgid "Send to eReader" msgstr "Poslat do Kindle" -#: cps/helper.py:102 cps/helper.py:120 cps/helper.py:228 +#: cps/helper.py:104 cps/helper.py:122 cps/helper.py:230 #, fuzzy msgid "This Email has been sent via Calibre-Web." msgstr "Tento e-mail byl odeslán přes Calibre-Web." -#: cps/helper.py:118 +#: cps/helper.py:120 #, fuzzy msgid "Calibre-Web Test Email" msgstr "Calibre-Web zkušební e-mail" -#: cps/helper.py:119 +#: cps/helper.py:121 #, fuzzy msgid "Test Email" msgstr "Zkušební e-mail" -#: cps/helper.py:136 +#: cps/helper.py:138 msgid "Get Started with Calibre-Web" msgstr "Začínáme s Calibre-Web" -#: cps/helper.py:141 +#: cps/helper.py:143 #, fuzzy, python-format msgid "Registration Email for user: %(name)s" msgstr "Registrační e-mail pro uživatele: %(name)s" -#: cps/helper.py:152 cps/helper.py:158 +#: cps/helper.py:154 cps/helper.py:160 #, fuzzy, python-format msgid "Convert %(orig)s to %(format)s and send to eReader" msgstr "Převést %(orig)s do %(format)s a poslat do Kindle" -#: cps/helper.py:177 cps/helper.py:181 cps/helper.py:185 +#: cps/helper.py:179 cps/helper.py:183 cps/helper.py:187 #, fuzzy, python-format msgid "Send %(format)s to eReader" msgstr "Poslat %(format)s do Kindle" -#: cps/helper.py:225 +#: cps/helper.py:227 #, fuzzy, python-format msgid "%(book)s send to eReader" msgstr "Poslat do Kindle" -#: cps/helper.py:230 +#: cps/helper.py:232 msgid "The requested file could not be read. Maybe wrong permissions?" msgstr "Požadovaný soubor nelze přečíst. Možná nesprávná oprávnění?" -#: cps/helper.py:345 +#: cps/helper.py:347 msgid "Read status could not set: {}" msgstr "" -#: cps/helper.py:368 +#: cps/helper.py:370 #, python-format msgid "Deleting bookfolder for book %(id)s failed, path has subfolders: %(path)s" msgstr "" -#: cps/helper.py:374 +#: cps/helper.py:376 #, python-format msgid "Deleting book %(id)s failed: %(message)s" msgstr "Mazání knihy selhalo %(id)s failed: %(message)s" -#: cps/helper.py:385 +#: cps/helper.py:387 #, fuzzy, python-format 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:450 +#: cps/helper.py:452 #, 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:522 cps/helper.py:531 +#: cps/helper.py:524 cps/helper.py:533 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "Soubor %(file)s nenalezen na Google Drive" -#: cps/helper.py:565 +#: cps/helper.py:567 #, 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:585 +#: cps/helper.py:587 msgid "Error in rename file in path: {}" msgstr "" -#: cps/helper.py:603 +#: cps/helper.py:605 #, 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:668 +#: cps/helper.py:670 msgid "Found an existing account for this Email address" msgstr "" -#: cps/helper.py:676 +#: cps/helper.py:678 msgid "This username is already taken" msgstr "Zadané uživatelské jméno je již použito" -#: cps/helper.py:688 +#: cps/helper.py:690 msgid "Invalid Email address format" msgstr "" -#: cps/helper.py:706 +#: cps/helper.py:710 msgid "Password doesn't comply with password validation rules" msgstr "" -#: cps/helper.py:855 +#: cps/helper.py:859 msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "" -#: cps/helper.py:865 +#: cps/helper.py:869 msgid "Error Downloading Cover" msgstr "Chyba stahování obalu" -#: cps/helper.py:868 +#: cps/helper.py:872 msgid "Cover Format Error" msgstr "Chyba formátu obalu" -#: cps/helper.py:871 +#: cps/helper.py:875 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "" -#: cps/helper.py:881 +#: cps/helper.py:885 msgid "Failed to create path for cover" msgstr "Vytvoření cesty obalu selhalo" -#: cps/helper.py:897 +#: cps/helper.py:901 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:908 +#: cps/helper.py:912 msgid "Only jpg/jpeg/png/webp/bmp files are supported as coverfile" msgstr "" -#: cps/helper.py:920 +#: cps/helper.py:924 msgid "Invalid cover file content" msgstr "" -#: cps/helper.py:924 +#: cps/helper.py:928 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "Pouze jpg/jpeg jsou podporované soubory pro obal" -#: cps/helper.py:995 cps/helper.py:1183 +#: cps/helper.py:999 cps/helper.py:1156 #, fuzzy msgid "Cover" msgstr "Objevte" -#: cps/helper.py:1032 +#: cps/helper.py:1016 msgid "Unrar binary file not found" msgstr "Unrar binární soubor nenalezen" -#: cps/helper.py:1043 +#: cps/helper.py:1027 #, fuzzy msgid "Error executing UnRar" msgstr "Chyba provádění UnRar" -#: cps/helper.py:1051 +#: cps/helper.py:1035 msgid "Could not find the specified directory" msgstr "" -#: cps/helper.py:1054 +#: cps/helper.py:1038 msgid "Please specify a directory, not a file" msgstr "" -#: cps/helper.py:1068 +#: cps/helper.py:1052 #, fuzzy msgid "Calibre binaries not viable" msgstr "Databáze není zapisovatelná" -#: cps/helper.py:1077 +#: cps/helper.py:1061 #, python-format msgid "Missing calibre binaries: %(missing)s" msgstr "" -#: cps/helper.py:1079 +#: cps/helper.py:1063 #, fuzzy, python-format msgid "Missing executable permissions: %(missing)s" msgstr "Chybí povolení k exekuci" -#: cps/helper.py:1084 +#: cps/helper.py:1068 #, fuzzy msgid "Error excecuting Calibre" msgstr "Chyba provádění UnRar" -#: cps/helper.py:1185 cps/templates/admin.html:216 +#: cps/helper.py:1158 cps/templates/admin.html:216 msgid "Queue all books for metadata backup" msgstr "" @@ -942,7 +943,7 @@ msgstr "" #: cps/remotelogin.py:62 cps/templates/layout.html:67 #: cps/templates/layout.html:101 cps/templates/login.html:4 -#: cps/templates/login.html:21 cps/web.py:1333 +#: cps/templates/login.html:21 cps/web.py:1353 msgid "Login" msgstr "Přihlásit" @@ -958,7 +959,7 @@ msgstr "Token vypršel" msgid "Success! Please return to your device" msgstr "Úspěch! Vraťte se prosím do zařízení" -#: cps/render_template.py:42 cps/web.py:414 +#: cps/render_template.py:42 cps/web.py:418 msgid "Books" msgstr "Knihy" @@ -983,7 +984,7 @@ msgstr "" msgid "Show Downloaded Books" msgstr "" -#: cps/render_template.py:59 cps/templates/index.xml:33 cps/web.py:429 +#: cps/render_template.py:59 cps/templates/index.xml:33 cps/web.py:433 msgid "Top Rated Books" msgstr "Nejlépe hodnocené knihy" @@ -992,7 +993,7 @@ msgid "Show Top Rated Books" msgstr "Zobrazit nejlépe hodnocené knihy" #: cps/render_template.py:62 cps/templates/index.xml:55 -#: cps/templates/index.xml:59 cps/web.py:750 +#: cps/templates/index.xml:59 cps/web.py:766 msgid "Read Books" msgstr "Přečtené knihy" @@ -1002,7 +1003,7 @@ msgid "Show Read and Unread" msgstr "Zobrazit prečtené a nepřečtené" #: cps/render_template.py:66 cps/templates/index.xml:62 -#: cps/templates/index.xml:66 cps/web.py:753 +#: cps/templates/index.xml:66 cps/web.py:769 msgid "Unread Books" msgstr "Nepřečtené knihy" @@ -1020,7 +1021,7 @@ msgid "Show Random Books" msgstr "Zobrazit náhodné knihy" #: cps/render_template.py:72 cps/templates/book_table.html:67 -#: cps/templates/index.xml:84 cps/web.py:1119 +#: cps/templates/index.xml:84 cps/web.py:1135 msgid "Categories" msgstr "Kategorie" @@ -1031,7 +1032,7 @@ msgstr "Zobrazit výběr kategorie" #: cps/render_template.py:75 cps/templates/book_edit.html:91 #: cps/templates/book_table.html:68 cps/templates/index.xml:91 -#: cps/templates/search_form.html:70 cps/web.py:1009 cps/web.py:1021 +#: cps/templates/search_form.html:70 cps/web.py:1025 cps/web.py:1037 msgid "Series" msgstr "Série" @@ -1051,7 +1052,7 @@ msgid "Show Author Section" msgstr "Zobrazit výběr autora" #: cps/render_template.py:82 cps/templates/book_table.html:72 -#: cps/templates/index.xml:77 cps/web.py:977 +#: cps/templates/index.xml:77 cps/web.py:993 msgid "Publishers" msgstr "Vydavatelé" @@ -1062,7 +1063,7 @@ msgstr "Zobrazit výběr vydavatele" #: cps/render_template.py:85 cps/templates/book_table.html:70 #: cps/templates/index.xml:98 cps/templates/search_form.html:108 -#: cps/web.py:1091 +#: cps/web.py:1107 msgid "Languages" msgstr "Jazyky" @@ -1089,7 +1090,7 @@ msgstr "Formáty souborů" msgid "Show File Formats Section" msgstr "Zobrazit výběr formátů" -#: cps/render_template.py:96 cps/web.py:776 +#: cps/render_template.py:96 cps/web.py:792 msgid "Archived Books" msgstr "Archivované knihy" @@ -1098,7 +1099,7 @@ msgstr "Archivované knihy" msgid "Show Archived Books" msgstr "Zobrazit archivované knihy" -#: cps/render_template.py:101 cps/web.py:807 +#: cps/render_template.py:101 cps/web.py:823 msgid "Books List" msgstr "" @@ -1322,173 +1323,178 @@ msgstr "Nová aktualizace k dispozici. Klepnutím na tlačítko níže aktualizu msgid "No release information available" msgstr "Nejsou k dispozici žádné informace o verzi" -#: cps/templates/index.html:6 cps/web.py:441 +#: cps/templates/index.html:6 cps/web.py:445 msgid "Discover (Random Books)" msgstr "Objevte (Náhodné knihy)" -#: cps/web.py:477 +#: cps/web.py:481 msgid "Hot Books (Most Downloaded)" msgstr "Žhavé knihy (Nejstahovanější)" -#: cps/web.py:508 +#: cps/web.py:512 #, python-format msgid "Downloaded books by %(user)s" msgstr "" -#: cps/web.py:541 +#: cps/web.py:545 #, python-format msgid "Author: %(name)s" msgstr "Autoři: %(name)s" -#: cps/web.py:577 +#: cps/web.py:581 #, python-format msgid "Publisher: %(name)s" msgstr "Vydavatel: %(name)s" -#: cps/web.py:605 +#: cps/web.py:609 #, python-format msgid "Series: %(serie)s" msgstr "Série: %(serie)s" -#: cps/web.py:620 +#: cps/web.py:623 msgid "Rating: None" msgstr "" -#: cps/web.py:629 +#: cps/web.py:632 #, python-format msgid "Rating: %(rating)s stars" msgstr "Hodnocení: %(rating)s stars" -#: cps/web.py:645 +#: cps/web.py:663 #, python-format msgid "File format: %(format)s" msgstr "Soubor formátů: %(format)s" -#: cps/web.py:682 +#: cps/web.py:698 #, python-format msgid "Category: %(name)s" msgstr "Kategorie: %(name)s" -#: cps/web.py:711 +#: cps/web.py:727 #, python-format msgid "Language: %(name)s" msgstr "Jazyky: %(name)s" -#: cps/templates/admin.html:16 cps/web.py:949 +#: cps/templates/admin.html:16 cps/web.py:965 msgid "Downloads" msgstr "Stáhnutí" -#: cps/web.py:1051 +#: cps/web.py:1067 msgid "Ratings list" msgstr "Seznam hodnocení" -#: cps/web.py:1078 +#: cps/web.py:1094 msgid "File formats list" msgstr "Seznam formátů" -#: cps/web.py:1233 +#: cps/web.py:1249 #, fuzzy msgid "Please configure the SMTP mail settings first..." msgstr "Nejprve nakonfigurujte nastavení pošty SMTP..." -#: cps/web.py:1240 +#: cps/web.py:1256 #, python-format msgid "Success! Book queued for sending to %(eReadermail)s" msgstr "Kniha byla úspěšně zařazena do fronty pro odeslání na %(eReadermail)s" -#: cps/web.py:1243 +#: cps/web.py:1259 #, python-format msgid "Oops! There was an error sending book: %(res)s" msgstr "Při odesílání této knihy došlo k chybě: %(res)s" -#: cps/web.py:1245 +#: cps/web.py:1261 #, fuzzy msgid "Oops! Please update your profile with a valid eReader Email." msgstr "Nejprve nakonfigurujte vaši kindle e-mailovou adresu.." -#: cps/web.py:1261 +#: cps/web.py:1277 msgid "Please wait one minute to register next user" msgstr "" #: cps/templates/layout.html:68 cps/templates/layout.html:102 -#: cps/templates/login.html:27 cps/templates/register.html:17 cps/web.py:1262 -#: cps/web.py:1267 cps/web.py:1271 cps/web.py:1277 cps/web.py:1297 -#: cps/web.py:1301 cps/web.py:1314 cps/web.py:1317 +#: cps/templates/login.html:27 cps/templates/register.html:17 cps/web.py:1278 +#: cps/web.py:1282 cps/web.py:1287 cps/web.py:1291 cps/web.py:1297 +#: cps/web.py:1317 cps/web.py:1321 cps/web.py:1334 cps/web.py:1337 msgid "Register" msgstr "Registrovat" -#: cps/web.py:1266 cps/web.py:1313 +#: cps/web.py:1281 cps/web.py:1385 +#, fuzzy +msgid "Connection error to limiter backend, please contact your administrator" +msgstr "E-mailový server není nakonfigurován, kontaktujte svého správce!" + +#: cps/web.py:1286 cps/web.py:1333 msgid "Oops! Email server is not configured, please contact your administrator." msgstr "E-mailový server není nakonfigurován, kontaktujte svého správce!" -#: cps/web.py:1299 +#: cps/web.py:1319 msgid "Oops! Your Email is not allowed." msgstr "Váš e-mail nemá povolení k registraci" -#: cps/web.py:1302 +#: cps/web.py:1322 msgid "Success! Confirmation Email has been sent." msgstr "Potvrzovací e-mail byl odeslán na váš účet." -#: cps/web.py:1348 cps/web.py:1367 +#: cps/web.py:1368 cps/web.py:1391 #, fuzzy msgid "Cannot activate LDAP authentication" msgstr "Nelze aktivovat ověření LDAP" -#: cps/web.py:1361 +#: cps/web.py:1381 msgid "Please wait one minute before next login" msgstr "" -#: cps/web.py:1376 +#: cps/web.py:1400 #, fuzzy, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "nyní jste přihlášen jako: '%(nickname)s'" -#: cps/web.py:1383 +#: cps/web.py:1407 #, fuzzy, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgstr "Záložní přihlášení jako: ‘%(nickname)s’, server LDAP není dosažitelný nebo neznámý uživatel" -#: cps/web.py:1388 +#: cps/web.py:1412 #, fuzzy, python-format msgid "Could not login: %(message)s" msgstr "Nelze se přihlásit: %(message)s" -#: cps/web.py:1392 cps/web.py:1417 +#: cps/web.py:1416 cps/web.py:1441 #, fuzzy msgid "Wrong Username or Password" msgstr "Špatné uživatelské jméno nebo heslo" -#: cps/web.py:1399 +#: cps/web.py:1423 #, fuzzy msgid "New Password was sent to your email address" msgstr "Nové heslo bylo zasláno na vaši emailovou adresu" -#: cps/web.py:1403 +#: cps/web.py:1427 #, fuzzy msgid "An unknown error occurred. Please try again later." msgstr "Neznámá chyba. Opakujte prosím později." -#: cps/web.py:1405 +#: cps/web.py:1429 #, fuzzy msgid "Please enter valid username to reset password" msgstr "Zadejte platné uživatelské jméno pro obnovení hesla" -#: cps/web.py:1413 +#: cps/web.py:1437 #, fuzzy, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "nyní jste přihlášen jako: '%(nickname)s'" -#: cps/web.py:1471 cps/web.py:1521 +#: cps/web.py:1495 cps/web.py:1545 #, python-format msgid "%(name)s's Profile" msgstr "%(name)s profil" -#: cps/web.py:1487 +#: cps/web.py:1511 #, fuzzy msgid "Success! Profile Updated" msgstr "Profil aktualizován" -#: cps/web.py:1491 +#: cps/web.py:1515 #, fuzzy msgid "Oops! An account already exists for this Email." msgstr "Byl nalezen existující účet pro tuto e-mailovou adresu." @@ -1502,41 +1508,41 @@ msgstr "" msgid "%(book)s send to E-Reader" msgstr "Poslat do Kindle" -#: cps/tasks/convert.py:166 +#: cps/tasks/convert.py:167 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "Calibre převaděč %(tool)s nenalezen" -#: cps/tasks/convert.py:200 +#: cps/tasks/convert.py:201 #, python-format msgid "%(format)s format not found on disk" msgstr "" -#: cps/tasks/convert.py:204 +#: cps/tasks/convert.py:205 msgid "Ebook converter failed with unknown error" msgstr "" -#: cps/tasks/convert.py:223 +#: cps/tasks/convert.py:224 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "Kepubify-převaděč selhal: %(error)s" -#: cps/tasks/convert.py:244 +#: cps/tasks/convert.py:245 #, 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:279 +#: cps/tasks/convert.py:287 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "Převaděč eknih selhal: %(error)s" -#: cps/tasks/convert.py:302 +#: cps/tasks/convert.py:310 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "" -#: cps/tasks/convert.py:307 +#: cps/tasks/convert.py:315 msgid "Convert" msgstr "" @@ -1544,7 +1550,7 @@ msgstr "" msgid "Reconnecting Calibre database" msgstr "" -#: cps/tasks/mail.py:269 +#: cps/tasks/mail.py:278 msgid "E-mail" msgstr "" @@ -1823,12 +1829,12 @@ 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:414 -#: cps/templates/config_view_edit.html:175 cps/templates/modal_dialogs.html:64 -#: cps/templates/modal_dialogs.html:99 cps/templates/modal_dialogs.html:117 -#: cps/templates/modal_dialogs.html:135 cps/templates/schedule_edit.html:45 -#: cps/templates/shelf_edit.html:27 cps/templates/tasks.html:46 -#: cps/templates/user_edit.html:144 +#: cps/templates/config_db.html:66 cps/templates/config_edit.html:428 +#: 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 +#: cps/templates/schedule_edit.html:45 cps/templates/shelf_edit.html:27 +#: cps/templates/tasks.html:46 cps/templates/user_edit.html:144 msgid "Cancel" msgstr "Zrušit" @@ -2009,7 +2015,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:413 cps/templates/config_view_edit.html:174 +#: cps/templates/config_edit.html:427 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 @@ -2177,7 +2183,7 @@ msgid "Location of Calibre Database" msgstr "Umístění Calibre databáze" #: cps/templates/config_db.html:21 -msgid "Separate Book files from Library (Highly experimental, might not work at all)" +msgid "Separate Book Files from Library" msgstr "" #: cps/templates/config_db.html:34 @@ -2262,7 +2268,7 @@ msgid "Convert non-English characters in title and author while saving to disk" msgstr "" #: cps/templates/config_edit.html:108 -msgid "Embed Metadata to Ebook File on Download and Conversion (needs Calibre/Kepubify binaries)" +msgid "Embed Metadata to Ebook File on Download/Conversion/e-mail (needs Calibre/Kepubify binaries)" msgstr "" #: cps/templates/config_edit.html:112 @@ -2486,40 +2492,52 @@ msgstr "Nastavení OAuth" msgid "Limit failed login attempts" msgstr "" -#: cps/templates/config_edit.html:376 +#: cps/templates/config_edit.html:377 +msgid "Configure Backend for Limiter" +msgstr "" + +#: cps/templates/config_edit.html:381 +msgid "Options for Limiter" +msgstr "" + +#: cps/templates/config_edit.html:386 msgid "Session protection" msgstr "" -#: cps/templates/config_edit.html:378 +#: cps/templates/config_edit.html:388 msgid "Basic" msgstr "" -#: cps/templates/config_edit.html:379 +#: cps/templates/config_edit.html:389 msgid "Strong" msgstr "" -#: cps/templates/config_edit.html:384 +#: cps/templates/config_edit.html:394 #, fuzzy msgid "User Password policy" msgstr "Resetovat uživatelské heslo" -#: cps/templates/config_edit.html:388 +#: cps/templates/config_edit.html:398 msgid "Minimum password length" msgstr "" -#: cps/templates/config_edit.html:393 +#: cps/templates/config_edit.html:403 msgid "Enforce number" msgstr "" -#: cps/templates/config_edit.html:397 +#: cps/templates/config_edit.html:407 msgid "Enforce lowercase characters" msgstr "" -#: cps/templates/config_edit.html:401 +#: cps/templates/config_edit.html:411 msgid "Enforce uppercase characters" msgstr "" -#: cps/templates/config_edit.html:405 +#: cps/templates/config_edit.html:415 +msgid "Enforce characters (needed For Chinese/Japanese/Korean Characters)" +msgstr "" + +#: cps/templates/config_edit.html:419 msgid "Enforce special characters" msgstr "" @@ -2643,47 +2661,47 @@ msgstr "" msgid "Published" msgstr "Publikováno" -#: cps/templates/detail.html:250 cps/templates/listenmp3.html:158 +#: cps/templates/detail.html:251 cps/templates/listenmp3.html:158 msgid "Mark As Unread" msgstr "Označit jako nepřečtené" -#: cps/templates/detail.html:251 cps/templates/listenmp3.html:158 +#: cps/templates/detail.html:252 cps/templates/listenmp3.html:158 msgid "Mark As Read" msgstr "Označit jako přečtené" -#: cps/templates/detail.html:253 cps/templates/listenmp3.html:159 +#: cps/templates/detail.html:254 cps/templates/listenmp3.html:159 msgid "Read" msgstr "Přečteno" -#: cps/templates/detail.html:263 cps/templates/listenmp3.html:166 +#: cps/templates/detail.html:264 cps/templates/listenmp3.html:166 msgid "Restore from archive" msgstr "Obnovit z archivu" -#: cps/templates/detail.html:264 cps/templates/listenmp3.html:166 +#: cps/templates/detail.html:265 cps/templates/listenmp3.html:166 msgid "Add to archive" msgstr "Archívovat" -#: cps/templates/detail.html:266 cps/templates/listenmp3.html:167 +#: cps/templates/detail.html:267 cps/templates/listenmp3.html:167 msgid "Archived" msgstr "Archivováno" -#: cps/templates/detail.html:277 cps/templates/listenmp3.html:177 +#: cps/templates/detail.html:278 cps/templates/listenmp3.html:177 msgid "Description:" msgstr "Popis:" -#: cps/templates/detail.html:292 cps/templates/listenmp3.html:190 +#: cps/templates/detail.html:293 cps/templates/listenmp3.html:190 #: cps/templates/search.html:16 msgid "Add to shelf" msgstr "Přidat do police" -#: cps/templates/detail.html:304 cps/templates/detail.html:323 +#: cps/templates/detail.html:305 cps/templates/detail.html:324 #: cps/templates/feed.xml:81 cps/templates/layout.html:154 #: cps/templates/listenmp3.html:201 cps/templates/listenmp3.html:218 #: cps/templates/search.html:22 msgid "(Public)" msgstr "(Veřejné)" -#: cps/templates/detail.html:339 +#: cps/templates/detail.html:340 msgid "Edit Metadata" msgstr "Upravit metadata" diff --git a/cps/translations/de/LC_MESSAGES/messages.mo b/cps/translations/de/LC_MESSAGES/messages.mo index 717e8333..a34f6365 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 077a645a..2e8a96a5 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-02-10 10:06+0100\n" +"POT-Creation-Date: 2024-04-27 07:20+0200\n" "PO-Revision-Date: 2023-10-21 15:45+0200\n" "Last-Translator: Ozzie Isaacs\n" "Language: de\n" @@ -22,487 +22,487 @@ msgstr "" msgid "Statistics" msgstr "Statistiken" -#: cps/admin.py:149 +#: cps/admin.py:150 msgid "Server restarted, please reload page." msgstr "Server neu gestartet, Seite bitte neu laden." -#: cps/admin.py:151 +#: cps/admin.py:152 msgid "Performing Server shutdown, please close window." msgstr "Server wird heruntergefahren, Fenster bitte schließen." -#: cps/admin.py:159 +#: cps/admin.py:160 msgid "Success! Database Reconnected" msgstr "Datenbank wurde erneut verbunden" -#: cps/admin.py:162 +#: cps/admin.py:163 msgid "Unknown command" msgstr "Unbekannter Befehl" -#: cps/admin.py:173 +#: cps/admin.py:174 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:206 cps/editbooks.py:589 cps/editbooks.py:591 -#: cps/editbooks.py:629 cps/editbooks.py:646 cps/editbooks.py:1262 +#: cps/admin.py:207 cps/editbooks.py:590 cps/editbooks.py:592 +#: cps/editbooks.py:630 cps/editbooks.py:647 cps/editbooks.py:1263 #: cps/updater.py:613 cps/uploader.py:93 cps/uploader.py:102 msgid "Unknown" msgstr "Unbekannt" -#: cps/admin.py:231 +#: cps/admin.py:232 msgid "Admin page" msgstr "Admin Seite" -#: cps/admin.py:251 +#: cps/admin.py:252 msgid "Basic Configuration" msgstr "Basiskonfiguration" -#: cps/admin.py:289 +#: cps/admin.py:290 msgid "UI Configuration" msgstr "Benutzeroberflächenkonfiguration" -#: cps/admin.py:323 cps/templates/admin.html:51 +#: cps/admin.py:324 cps/templates/admin.html:51 msgid "Edit Users" msgstr "Benutzer bearbeiten" -#: cps/admin.py:367 cps/opds.py:506 cps/templates/grid.html:14 +#: cps/admin.py:368 cps/opds.py:506 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "Alle" -#: cps/admin.py:394 cps/admin.py:1405 +#: cps/admin.py:395 cps/admin.py:1417 msgid "User not found" msgstr "Benutzer nicht gefunden" -#: cps/admin.py:408 +#: cps/admin.py:409 msgid "{} users deleted successfully" msgstr "{} Benutzer erfolgreich gelöscht" -#: cps/admin.py:431 cps/templates/config_view_edit.html:133 +#: cps/admin.py:432 cps/templates/config_view_edit.html:133 #: cps/templates/user_edit.html:45 cps/templates/user_table.html:81 msgid "Show All" msgstr "Zeige alle" -#: cps/admin.py:452 cps/admin.py:458 +#: cps/admin.py:453 cps/admin.py:459 msgid "Malformed request" msgstr "Ungültige Anfrage" -#: cps/admin.py:470 cps/admin.py:2033 +#: cps/admin.py:471 cps/admin.py:2048 msgid "Guest Name can't be changed" msgstr "Guest Name kann nicht geändert werden" -#: cps/admin.py:482 +#: cps/admin.py:483 msgid "Guest can't have this role" msgstr "Guest Benutzer kann diese Rolle nicht haben" -#: cps/admin.py:494 cps/admin.py:1987 +#: cps/admin.py:495 cps/admin.py:2002 msgid "No admin user remaining, can't remove admin role" msgstr "Kein Admin Benutzer verblieben Admin Berechtigung kann nicht entfernt werden" -#: cps/admin.py:498 cps/admin.py:512 +#: cps/admin.py:499 cps/admin.py:513 msgid "Value has to be true or false" msgstr "Wert muss true oder false sein" -#: cps/admin.py:500 +#: cps/admin.py:501 msgid "Invalid role" msgstr "Ungültige Rolle" -#: cps/admin.py:504 +#: cps/admin.py:505 msgid "Guest can't have this view" msgstr "Guest Benutzer kann diese Sichtbarkeit nicht haben" -#: cps/admin.py:514 +#: cps/admin.py:515 msgid "Invalid view" msgstr "Ungültige Sichtbarkeit" -#: cps/admin.py:517 +#: cps/admin.py:518 msgid "Guest's Locale is determined automatically and can't be set" msgstr "Guest Sprache wird automatisch bestimmt und kann nicht eingestellt werden" -#: cps/admin.py:521 +#: cps/admin.py:522 msgid "No Valid Locale Given" msgstr "Keine gültige Sprache gewählt" -#: cps/admin.py:532 +#: cps/admin.py:533 msgid "No Valid Book Language Given" msgstr "Keine gültige Buchsprache gewählt" -#: cps/admin.py:534 cps/editbooks.py:455 +#: cps/admin.py:535 cps/editbooks.py:456 msgid "Parameter not found" msgstr "Parameter wurde nicht gefunden" -#: cps/admin.py:571 +#: cps/admin.py:572 msgid "Invalid Read Column" msgstr "Ungültige Lese Spalte" -#: cps/admin.py:577 +#: cps/admin.py:578 msgid "Invalid Restricted Column" msgstr "Ungültiger Spaltenname für Einschränkung" -#: cps/admin.py:597 cps/admin.py:1858 +#: cps/admin.py:598 cps/admin.py:1873 msgid "Calibre-Web configuration updated" msgstr "Konfiguration von Calibre-Web wurde aktualisiert" -#: cps/admin.py:609 +#: cps/admin.py:610 msgid "Do you really want to delete the Kobo Token?" msgstr "Möchten Sie wirklich den Kobo Token löschen?" -#: cps/admin.py:611 +#: cps/admin.py:612 msgid "Do you really want to delete this domain?" msgstr "Möchten Sie wirklich diese Domain löschen?" -#: cps/admin.py:613 +#: cps/admin.py:614 msgid "Do you really want to delete this user?" msgstr "Möchten Sie wirklich diesen Benutzer löschen?" -#: cps/admin.py:615 +#: cps/admin.py:616 msgid "Are you sure you want to delete this shelf?" msgstr "Möchten Sie wirklich dieses Bücherregal löschen?" -#: cps/admin.py:617 +#: cps/admin.py:618 msgid "Are you sure you want to change locales of selected user(s)?" msgstr "Möchten Sie wirklich die Anzeigesprache der ausgewählten Benutzer ändern?" -#: cps/admin.py:619 +#: cps/admin.py:620 msgid "Are you sure you want to change visible book languages for selected user(s)?" msgstr "Möchten Sie wirklich die Büchersprachen für die ausgewählten Benutzer ändern?" -#: cps/admin.py:621 +#: cps/admin.py:622 msgid "Are you sure you want to change the selected role for the selected user(s)?" msgstr "Möchten Sie wirklich die ausgewählte Rolle für die ausgewählten Benutzer verändern?" -#: cps/admin.py:623 +#: cps/admin.py:624 msgid "Are you sure you want to change the selected restrictions for the selected user(s)?" msgstr "Möchten Sie wirklich die ausgewählten Sichtbarkeitsbeschränkungen der ausgewählten Benutzer ändern?" -#: cps/admin.py:625 +#: cps/admin.py:626 msgid "Are you sure you want to change the selected visibility restrictions for the selected user(s)?" msgstr "Möchten Sie wirklich die Sichtbarkeiten für die ausgewählten Benutzer verändern?" -#: cps/admin.py:628 +#: cps/admin.py:629 msgid "Are you sure you want to change shelf sync behavior for the selected user(s)?" msgstr "Möchten Sie wirklich die Synchronisation von Bücherregalen für die ausgewählten Benutzer verändern?" -#: cps/admin.py:630 +#: cps/admin.py:631 msgid "Are you sure you want to change Calibre library location?" msgstr "Ort der Calibre Datenbank editieren?" -#: cps/admin.py:632 +#: cps/admin.py:633 msgid "Calibre-Web will search for updated Covers and update Cover Thumbnails, this may take a while?" msgstr "Calibre-Web wird nach neuen Covern suchen und Cover Miniaturansichten aktualisieren, dies kann eine Weile dauern?" -#: cps/admin.py:635 +#: cps/admin.py:636 msgid "Are you sure you want delete Calibre-Web's sync database to force a full sync with your Kobo Reader?" msgstr "Möchten Sie wirklich die Synchronisationsdatenbank von Calibre-Web löschen, um eine komplette Synchronisation zu erzwingen?" -#: cps/admin.py:878 cps/admin.py:884 cps/admin.py:894 cps/admin.py:904 +#: cps/admin.py:879 cps/admin.py:885 cps/admin.py:895 cps/admin.py:905 #: cps/templates/modal_dialogs.html:29 cps/templates/user_table.html:41 #: cps/templates/user_table.html:58 msgid "Deny" msgstr "Verbieten" -#: cps/admin.py:880 cps/admin.py:886 cps/admin.py:896 cps/admin.py:906 +#: cps/admin.py:881 cps/admin.py:887 cps/admin.py:897 cps/admin.py:907 #: cps/templates/modal_dialogs.html:28 cps/templates/user_table.html:44 #: cps/templates/user_table.html:61 msgid "Allow" msgstr "Erlauben" -#: cps/admin.py:921 +#: cps/admin.py:940 msgid "{} sync entries deleted" msgstr "{} Synchronisationseinträge gelöscht" -#: cps/admin.py:969 +#: cps/admin.py:981 msgid "Tag not found" msgstr "Tag nicht gefunden" -#: cps/admin.py:981 +#: cps/admin.py:993 msgid "Invalid Action" msgstr "Ungültige Aktion" -#: cps/admin.py:1111 +#: cps/admin.py:1123 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "client_secrets.json ist nicht für Web Anwendungen konfiguriert" -#: cps/admin.py:1156 +#: cps/admin.py:1168 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:1162 +#: cps/admin.py:1174 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:1196 +#: cps/admin.py:1208 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:1202 +#: cps/admin.py:1214 msgid "Please Enter a LDAP Service Account and Password" msgstr "Bitte einen LDAP Service Account und Password eingeben" -#: cps/admin.py:1205 +#: cps/admin.py:1217 msgid "Please Enter a LDAP Service Account" msgstr "Bitte einen LDAP Service Account eingeben" -#: cps/admin.py:1210 +#: cps/admin.py:1222 #, 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:1212 +#: cps/admin.py:1224 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "LDAP Gruppen Objekt Filter hat ungleiche Anzahl von Klammern" -#: cps/admin.py:1216 +#: cps/admin.py:1228 #, 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:1218 +#: cps/admin.py:1230 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "LDAP Benutzer Objekt Filter hat ungleiche Anzahl von Klammern" -#: cps/admin.py:1225 +#: cps/admin.py:1237 #, 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:1227 +#: cps/admin.py:1239 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:1234 +#: cps/admin.py:1246 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:1265 cps/templates/admin.html:53 +#: cps/admin.py:1277 cps/templates/admin.html:53 msgid "Add New User" msgstr "Neuen Benutzer hinzufügen" -#: cps/admin.py:1274 cps/templates/admin.html:100 +#: cps/admin.py:1286 cps/templates/admin.html:100 msgid "Edit Email Server Settings" msgstr "SMTP-Einstellungen ändern" -#: cps/admin.py:1293 +#: cps/admin.py:1305 msgid "Success! Gmail Account Verified." msgstr "G-Mail Konto verifiziert." -#: cps/admin.py:1313 cps/admin.py:1316 cps/admin.py:1698 cps/admin.py:1842 -#: cps/admin.py:1940 cps/admin.py:2061 cps/editbooks.py:241 -#: cps/editbooks.py:317 cps/editbooks.py:1224 cps/shelf.py:90 cps/shelf.py:150 +#: cps/admin.py:1325 cps/admin.py:1328 cps/admin.py:1710 cps/admin.py:1857 +#: cps/admin.py:1955 cps/admin.py:2076 cps/editbooks.py:242 +#: cps/editbooks.py:318 cps/editbooks.py:1225 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:149 cps/web.py:1496 +#: cps/shelf.py:468 cps/tasks/convert.py:150 cps/web.py:1520 #, python-format msgid "Oops! Database Error: %(error)s." msgstr "Datenbankfehler: %(error)s." -#: cps/admin.py:1323 +#: cps/admin.py:1335 #, 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:1326 +#: cps/admin.py:1338 #, 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:1328 +#: cps/admin.py:1340 msgid "Please configure your e-mail address first..." msgstr "Bitte zuerst E-Mail Adresse konfigurieren..." -#: cps/admin.py:1330 +#: cps/admin.py:1342 msgid "Email Server Settings updated" msgstr "Einstellungen des E-Mail-Servers aktualisiert" -#: cps/admin.py:1353 cps/templates/admin.html:195 +#: cps/admin.py:1365 cps/templates/admin.html:195 msgid "Edit Scheduled Tasks Settings" msgstr "Einstellungen für Geplante Aufgaben" -#: cps/admin.py:1365 +#: cps/admin.py:1377 msgid "Invalid start time for task specified" msgstr "Ungültigen Startzeitpunkt für Aufgaben spezifiziert" -#: cps/admin.py:1370 +#: cps/admin.py:1382 msgid "Invalid duration for task specified" msgstr "Ungültige Laufzeit für Aufgaben spezifiziert" -#: cps/admin.py:1380 +#: cps/admin.py:1392 msgid "Scheduled tasks settings updated" msgstr "Einstellungen für Geplante Aufgaben aktualisiert" -#: cps/admin.py:1390 cps/admin.py:1439 cps/admin.py:2057 cps/web.py:1296 +#: cps/admin.py:1402 cps/admin.py:1451 cps/admin.py:2072 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:1394 +#: cps/admin.py:1406 msgid "Settings DB is not Writeable" msgstr "Einstellungsdatenbank ist nicht schreibbar" -#: cps/admin.py:1424 cps/admin.py:2049 +#: cps/admin.py:1436 cps/admin.py:2064 #, python-format msgid "Edit User %(nick)s" msgstr "Benutzer %(nick)s bearbeiten" -#: cps/admin.py:1436 +#: cps/admin.py:1448 #, python-format msgid "Success! Password for user %(user)s reset" msgstr "Passwort für Benutzer %(user)s wurde zurückgesetzt" -#: cps/admin.py:1442 +#: cps/admin.py:1454 msgid "Oops! Please configure the SMTP mail settings." msgstr "Bitte zuerst die SMTP-Einstellung konfigurieren." -#: cps/admin.py:1453 +#: cps/admin.py:1465 msgid "Logfile viewer" msgstr "Logdatei Anzeige" -#: cps/admin.py:1519 +#: cps/admin.py:1531 msgid "Requesting update package" msgstr "Frage Update an" -#: cps/admin.py:1520 +#: cps/admin.py:1532 msgid "Downloading update package" msgstr "Lade Update herunter" -#: cps/admin.py:1521 +#: cps/admin.py:1533 msgid "Unzipping update package" msgstr "Entpacke Update" -#: cps/admin.py:1522 +#: cps/admin.py:1534 msgid "Replacing files" msgstr "Ersetze Dateien" -#: cps/admin.py:1523 +#: cps/admin.py:1535 msgid "Database connections are closed" msgstr "Schließe Datenbankverbindungen" -#: cps/admin.py:1524 +#: cps/admin.py:1536 msgid "Stopping server" msgstr "Stoppe Server" -#: cps/admin.py:1525 +#: cps/admin.py:1537 msgid "Update finished, please press okay and reload page" msgstr "Update abgeschlossen, bitte okay drücken und Seite neu laden" -#: cps/admin.py:1526 cps/admin.py:1527 cps/admin.py:1528 cps/admin.py:1529 -#: cps/admin.py:1530 cps/admin.py:1531 +#: cps/admin.py:1538 cps/admin.py:1539 cps/admin.py:1540 cps/admin.py:1541 +#: cps/admin.py:1542 cps/admin.py:1543 msgid "Update failed:" msgstr "Update fehlgeschlagen:" -#: cps/admin.py:1526 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 +#: cps/admin.py:1538 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 msgid "HTTP Error" msgstr "HTTP Fehler" -#: cps/admin.py:1527 cps/updater.py:391 cps/updater.py:628 +#: cps/admin.py:1539 cps/updater.py:391 cps/updater.py:628 msgid "Connection error" msgstr "Verbindungsfehler" -#: cps/admin.py:1528 cps/updater.py:393 cps/updater.py:630 +#: cps/admin.py:1540 cps/updater.py:393 cps/updater.py:630 msgid "Timeout while establishing connection" msgstr "Timeout beim Verbindungsaufbau" -#: cps/admin.py:1529 cps/updater.py:395 cps/updater.py:632 +#: cps/admin.py:1541 cps/updater.py:395 cps/updater.py:632 msgid "General error" msgstr "Allgemeiner Fehler" -#: cps/admin.py:1530 +#: cps/admin.py:1542 msgid "Update file could not be saved in temp dir" msgstr "Updatedatei konnte nicht in Temporärem Ordner gespeichert werden" -#: cps/admin.py:1531 +#: cps/admin.py:1543 msgid "Files could not be replaced during update" msgstr "Dateien konnten während des Updates nicht ausgetauscht werden" -#: cps/admin.py:1555 +#: cps/admin.py:1567 msgid "Failed to extract at least One LDAP User" msgstr "Mindestens ein LDAP Benutzer konnte nicht extrahiert werden" -#: cps/admin.py:1600 +#: cps/admin.py:1612 msgid "Failed to Create at Least One LDAP User" msgstr "Mindestens ein LDAP Benutzer konnte nicht erzeugt werden" -#: cps/admin.py:1613 +#: cps/admin.py:1625 #, python-format msgid "Error: %(ldaperror)s" msgstr "Fehler: %(ldaperror)s" -#: cps/admin.py:1617 +#: cps/admin.py:1629 msgid "Error: No user returned in response of LDAP server" msgstr "Fehler: Keine Benutzerinformationen von LDAP Server empfangen" -#: cps/admin.py:1650 +#: 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:1652 +#: cps/admin.py:1664 msgid "{} User Successfully Imported" msgstr "{} Benutzer erfolgreich importiert" -#: cps/admin.py:1710 +#: 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:1730 +#: cps/admin.py:1742 msgid "DB is not Writeable" msgstr "Datenbank ist nicht schreibbar" -#: cps/admin.py:1746 +#: 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:1750 +#: 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:1829 +#: cps/admin.py:1842 msgid "Password length has to be between 1 and 40" msgstr "Passwortlänge muss zwischen 1 und 40 Zeichen liegen" -#: cps/admin.py:1881 +#: cps/admin.py:1896 msgid "Database Settings updated" msgstr "Datenbankeinstellung aktualisiert" -#: cps/admin.py:1889 +#: cps/admin.py:1904 msgid "Database Configuration" msgstr "Datenbank-Konfiguration" -#: cps/admin.py:1904 cps/web.py:1270 +#: cps/admin.py:1919 cps/web.py:1290 msgid "Oops! Please complete all fields." msgstr "Bitte alle Felder ausfüllen." -#: cps/admin.py:1913 +#: cps/admin.py:1928 msgid "E-mail is not from valid domain" msgstr "E-Mail bezieht sich nicht auf eine gültige Domain" -#: cps/admin.py:1919 +#: cps/admin.py:1934 msgid "Add new user" msgstr "Neuen Benutzer hinzufügen" -#: cps/admin.py:1930 +#: cps/admin.py:1945 #, python-format msgid "User '%(user)s' created" msgstr "Benutzer '%(user)s' angelegt" -#: cps/admin.py:1936 +#: cps/admin.py:1951 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:1966 +#: cps/admin.py:1981 #, python-format msgid "User '%(nick)s' deleted" msgstr "Benutzer '%(nick)s' gelöscht" -#: cps/admin.py:1969 +#: cps/admin.py:1984 msgid "Can't delete Guest User" msgstr "Guest Benutzer kann nicht gelöscht werden" -#: cps/admin.py:1972 +#: cps/admin.py:1987 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:2027 cps/web.py:1445 +#: cps/admin.py:2042 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:2053 +#: cps/admin.py:2068 #, python-format msgid "User '%(nick)s' updated" msgstr "Benutzer '%(nick)s' aktualisiert" @@ -515,122 +515,123 @@ msgstr "Nicht installiert" msgid "Execution permissions missing" msgstr "Ausführeberechtigung fehlt" -#: cps/db.py:752 cps/search.py:137 cps/web.py:731 +#: cps/db.py:752 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:993 cps/templates/config_edit.html:208 +#: cps/db.py:992 cps/templates/config_edit.html:208 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 -#: cps/web.py:558 cps/web.py:592 cps/web.py:665 cps/web.py:692 cps/web.py:973 -#: cps/web.py:1003 cps/web.py:1048 cps/web.py:1076 cps/web.py:1115 +#: 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 +#: cps/web.py:1131 msgid "None" msgstr "Keine" -#: cps/editbooks.py:122 cps/editbooks.py:910 cps/web.py:525 cps/web.py:1537 -#: cps/web.py:1581 cps/web.py:1626 +#: cps/editbooks.py:123 cps/editbooks.py:911 cps/web.py:529 cps/web.py:1561 +#: cps/web.py:1605 cps/web.py:1650 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:166 cps/editbooks.py:1245 +#: cps/editbooks.py:167 cps/editbooks.py:1246 msgid "User has no rights to upload cover" msgstr "Benutzer hat keine Berechtigung Cover hochzuladen" -#: cps/editbooks.py:186 cps/editbooks.py:731 +#: cps/editbooks.py:187 cps/editbooks.py:732 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "IDs unterscheiden nicht Groß-Kleinschreibung, alte ID wird überschrieben" -#: cps/editbooks.py:228 +#: cps/editbooks.py:229 msgid "Metadata successfully updated" msgstr "Metadaten wurden erfolgreich aktualisiert" -#: cps/editbooks.py:246 +#: cps/editbooks.py:247 msgid "Error editing book: {}" msgstr "Fehler beim editieren des Buches: {}" -#: cps/editbooks.py:303 +#: cps/editbooks.py:304 #, python-format msgid "File %(file)s uploaded" msgstr "Datei %(file)s hochgeladen" -#: cps/editbooks.py:331 +#: cps/editbooks.py:332 msgid "Source or destination format for conversion missing" msgstr "Quell- oder Zielformat für Konvertierung fehlt" -#: cps/editbooks.py:339 +#: cps/editbooks.py:340 #, 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:343 +#: cps/editbooks.py:344 #, 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:650 +#: cps/editbooks.py:651 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:705 cps/editbooks.py:1037 +#: cps/editbooks.py:706 cps/editbooks.py:1038 #, python-format msgid "'%(langname)s' is not a valid language" msgstr "'%(langname)s' ist keine gültige Sprache" -#: cps/editbooks.py:743 cps/editbooks.py:1185 +#: cps/editbooks.py:744 cps/editbooks.py:1186 #, 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:747 cps/editbooks.py:1189 +#: cps/editbooks.py:748 cps/editbooks.py:1190 msgid "File to be uploaded must have an extension" msgstr "Dateien müssen eine Erweiterung haben, um hochgeladen zu werden" -#: cps/editbooks.py:755 +#: cps/editbooks.py:756 #, 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:775 +#: cps/editbooks.py:776 #, 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:832 cps/editbooks.py:834 +#: cps/editbooks.py:833 cps/editbooks.py:835 msgid "Book Format Successfully Deleted" msgstr "Buch Format erfolgreich gelöscht" -#: cps/editbooks.py:841 cps/editbooks.py:843 +#: cps/editbooks.py:842 cps/editbooks.py:844 msgid "Book Successfully Deleted" msgstr "Buch erfolgreich gelöscht" -#: cps/editbooks.py:895 +#: cps/editbooks.py:896 msgid "You are missing permissions to delete books" msgstr "Keine Erlaubnis zum Bücher löschen" -#: cps/editbooks.py:945 +#: cps/editbooks.py:946 msgid "edit metadata" msgstr "Metadaten editieren" -#: cps/editbooks.py:994 +#: cps/editbooks.py:995 #, 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:1180 +#: cps/editbooks.py:1181 msgid "User has no rights to upload additional file formats" msgstr "Benutzer hat kein Recht zusätzliche Dateiformate hochzuladen" -#: cps/editbooks.py:1201 +#: cps/editbooks.py:1202 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "Fehler beim Erzeugen des Pfads %(path)s (Zugriff verweigert)" -#: cps/editbooks.py:1206 +#: cps/editbooks.py:1207 #, python-format msgid "Failed to store file %(file)s." msgstr "Fehler beim Speichern der Datei %(file)s." -#: cps/editbooks.py:1230 +#: cps/editbooks.py:1231 #, python-format msgid "File format %(ext)s added to %(book)s" msgstr "Dateiformat %(ext)s zu %(book)s hinzugefügt" @@ -643,201 +644,201 @@ msgstr "Google Drive Setup is nicht komplett, bitte versuche Google Drive zu dea 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" -#: cps/helper.py:84 +#: cps/helper.py:86 #, python-format 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:91 cps/tasks/convert.py:86 +#: cps/helper.py:93 cps/tasks/convert.py:86 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "%(format)s von Buch %(fn)s nicht auf Google Drive gefunden" -#: cps/helper.py:96 +#: cps/helper.py:98 #, python-format msgid "%(format)s not found: %(fn)s" msgstr "%(format)s nicht gefunden: %(fn)s" -#: cps/helper.py:101 cps/helper.py:226 cps/templates/detail.html:58 +#: cps/helper.py:103 cps/helper.py:228 cps/templates/detail.html:58 msgid "Send to eReader" msgstr "An E-Reader senden" -#: cps/helper.py:102 cps/helper.py:120 cps/helper.py:228 +#: cps/helper.py:104 cps/helper.py:122 cps/helper.py:230 msgid "This Email has been sent via Calibre-Web." msgstr "Diese E-Mail wurde durch Calibre-Web versendet." -#: cps/helper.py:118 +#: cps/helper.py:120 msgid "Calibre-Web Test Email" msgstr "Calibre-Web Test-E-Mail" -#: cps/helper.py:119 +#: cps/helper.py:121 msgid "Test Email" msgstr "Test E-Mail" -#: cps/helper.py:136 +#: cps/helper.py:138 msgid "Get Started with Calibre-Web" msgstr "Loslegen mit Calibre-Web" -#: cps/helper.py:141 +#: cps/helper.py:143 #, python-format msgid "Registration Email for user: %(name)s" msgstr "Registrierungs-E-Mail für Benutzer: %(name)s" -#: cps/helper.py:152 cps/helper.py:158 +#: cps/helper.py:154 cps/helper.py:160 #, python-format msgid "Convert %(orig)s to %(format)s and send to eReader" msgstr "Konvertiere %(orig)s nach %(format)s und sende an E-Reader" -#: cps/helper.py:177 cps/helper.py:181 cps/helper.py:185 +#: cps/helper.py:179 cps/helper.py:183 cps/helper.py:187 #, python-format msgid "Send %(format)s to eReader" msgstr "Sende %(format)s an E-Reader" -#: cps/helper.py:225 +#: cps/helper.py:227 #, python-format msgid "%(book)s send to eReader" msgstr "%(book)s an E-Reader gesendet" -#: cps/helper.py:230 +#: cps/helper.py:232 msgid "The requested file could not be read. Maybe wrong permissions?" msgstr "Die angeforderte Datei konnte nicht gelesen werden. Evtl. falsche Zugriffsrechte?" -#: cps/helper.py:345 +#: cps/helper.py:347 msgid "Read status could not set: {}" msgstr "Gelesenen Status konnte nicht aktualisiert werden: {}" -#: cps/helper.py:368 +#: cps/helper.py:370 #, python-format msgid "Deleting bookfolder for book %(id)s failed, path has subfolders: %(path)s" msgstr "Löschen des Ordners für Buch %(id)s ist fehlgeschlagen, der Pfad hat Unterordner: %(path)s" -#: cps/helper.py:374 +#: cps/helper.py:376 #, python-format msgid "Deleting book %(id)s failed: %(message)s" msgstr "Löschen von Buch %(id)s fehlgeschlagen: %(message)s" -#: cps/helper.py:385 +#: cps/helper.py:387 #, python-format 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:450 +#: cps/helper.py:452 #, 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:522 cps/helper.py:531 +#: cps/helper.py:524 cps/helper.py:533 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "Datei %(file)s wurde nicht auf Google Drive gefunden" -#: cps/helper.py:565 +#: cps/helper.py:567 #, 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:585 +#: cps/helper.py:587 msgid "Error in rename file in path: {}" msgstr "Fehler beim umbenennen der Datei im Pfad: {}" -#: cps/helper.py:603 +#: cps/helper.py:605 #, 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:668 +#: cps/helper.py:670 msgid "Found an existing account for this Email address" msgstr "Es existiert bereits ein Benutzerkonto für diese E-Mail Adresse" -#: cps/helper.py:676 +#: cps/helper.py:678 msgid "This username is already taken" msgstr "Benutzername ist schon vorhanden" -#: cps/helper.py:688 +#: cps/helper.py:690 msgid "Invalid Email address format" msgstr "Ungültiges E-Mail Adressformat" -#: cps/helper.py:706 +#: cps/helper.py:710 msgid "Password doesn't comply with password validation rules" msgstr "Passwort stimmt nicht mit den Passwortregln überein" -#: cps/helper.py:855 +#: cps/helper.py:859 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:865 +#: cps/helper.py:869 msgid "Error Downloading Cover" msgstr "Fehler beim Herunterladen des Covers" -#: cps/helper.py:868 +#: cps/helper.py:872 msgid "Cover Format Error" msgstr "Coverdatei fehlerhaft" -#: cps/helper.py:871 +#: cps/helper.py:875 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:881 +#: cps/helper.py:885 msgid "Failed to create path for cover" msgstr "Fehler beim Erzeugen des Ordners für die Coverdatei" -#: cps/helper.py:897 +#: cps/helper.py:901 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:908 +#: cps/helper.py:912 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:920 +#: cps/helper.py:924 msgid "Invalid cover file content" msgstr "Ungültiger Cover Dateiinhalt" -#: cps/helper.py:924 +#: cps/helper.py:928 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "Es werden nur jpg/jpeg Dateien als Cover untertützt" -#: cps/helper.py:995 cps/helper.py:1183 +#: cps/helper.py:999 cps/helper.py:1156 msgid "Cover" msgstr "Titelbild" -#: cps/helper.py:1032 +#: cps/helper.py:1016 msgid "Unrar binary file not found" msgstr "UnRar Programm nicht gefunden" -#: cps/helper.py:1043 +#: cps/helper.py:1027 msgid "Error executing UnRar" msgstr "Fehler beim Ausführen von UnRar" -#: cps/helper.py:1051 +#: cps/helper.py:1035 msgid "Could not find the specified directory" msgstr "" -#: cps/helper.py:1054 +#: cps/helper.py:1038 msgid "Please specify a directory, not a file" msgstr "" -#: cps/helper.py:1068 +#: cps/helper.py:1052 #, fuzzy msgid "Calibre binaries not viable" msgstr "Datenbank ist nicht schreibbar" -#: cps/helper.py:1077 +#: cps/helper.py:1061 #, python-format msgid "Missing calibre binaries: %(missing)s" msgstr "" -#: cps/helper.py:1079 +#: cps/helper.py:1063 #, fuzzy, python-format msgid "Missing executable permissions: %(missing)s" msgstr "Ausführeberechtigung fehlt" -#: cps/helper.py:1084 +#: cps/helper.py:1068 #, fuzzy msgid "Error excecuting Calibre" msgstr "Fehler beim Ausführen von UnRar" -#: cps/helper.py:1185 cps/templates/admin.html:216 +#: cps/helper.py:1158 cps/templates/admin.html:216 msgid "Queue all books for metadata backup" msgstr "Alle Bücher für Metadaten Backup einreihen" @@ -921,7 +922,7 @@ msgstr "{} Sterne" #: cps/remotelogin.py:62 cps/templates/layout.html:67 #: cps/templates/layout.html:101 cps/templates/login.html:4 -#: cps/templates/login.html:21 cps/web.py:1333 +#: cps/templates/login.html:21 cps/web.py:1353 msgid "Login" msgstr "Login" @@ -937,7 +938,7 @@ msgstr "Token ist abgelaufen" msgid "Success! Please return to your device" msgstr "Erfolg! Bitte zum Gerät zurückkehren" -#: cps/render_template.py:42 cps/web.py:414 +#: cps/render_template.py:42 cps/web.py:418 msgid "Books" msgstr "Bücher" @@ -962,7 +963,7 @@ msgstr "Heruntergeladene Bücher" msgid "Show Downloaded Books" msgstr "Zeige heruntergeladene Bücher" -#: cps/render_template.py:59 cps/templates/index.xml:33 cps/web.py:429 +#: cps/render_template.py:59 cps/templates/index.xml:33 cps/web.py:433 msgid "Top Rated Books" msgstr "Best bewertete Bücher" @@ -971,7 +972,7 @@ msgid "Show Top Rated Books" msgstr "Bestbewertete Bücher anzeigen" #: cps/render_template.py:62 cps/templates/index.xml:55 -#: cps/templates/index.xml:59 cps/web.py:750 +#: cps/templates/index.xml:59 cps/web.py:766 msgid "Read Books" msgstr "Gelesene Bücher" @@ -980,7 +981,7 @@ msgid "Show Read and Unread" msgstr "Zeige gelesene/ungelesene Bücher" #: cps/render_template.py:66 cps/templates/index.xml:62 -#: cps/templates/index.xml:66 cps/web.py:753 +#: cps/templates/index.xml:66 cps/web.py:769 msgid "Unread Books" msgstr "Ungelesene Bücher" @@ -998,7 +999,7 @@ msgid "Show Random Books" msgstr "Zeige zufällige Bücher" #: cps/render_template.py:72 cps/templates/book_table.html:67 -#: cps/templates/index.xml:84 cps/web.py:1119 +#: cps/templates/index.xml:84 cps/web.py:1135 msgid "Categories" msgstr "Kategorien" @@ -1008,7 +1009,7 @@ msgstr "Zeige Kategorienauswahl" #: cps/render_template.py:75 cps/templates/book_edit.html:91 #: cps/templates/book_table.html:68 cps/templates/index.xml:91 -#: cps/templates/search_form.html:70 cps/web.py:1009 cps/web.py:1021 +#: cps/templates/search_form.html:70 cps/web.py:1025 cps/web.py:1037 msgid "Series" msgstr "Serien" @@ -1026,7 +1027,7 @@ msgid "Show Author Section" msgstr "Zeige Autorenauswahl" #: cps/render_template.py:82 cps/templates/book_table.html:72 -#: cps/templates/index.xml:77 cps/web.py:977 +#: cps/templates/index.xml:77 cps/web.py:993 msgid "Publishers" msgstr "Verleger" @@ -1036,7 +1037,7 @@ msgstr "Zeige Verlegerauswahl" #: cps/render_template.py:85 cps/templates/book_table.html:70 #: cps/templates/index.xml:98 cps/templates/search_form.html:108 -#: cps/web.py:1091 +#: cps/web.py:1107 msgid "Languages" msgstr "Sprachen" @@ -1060,7 +1061,7 @@ msgstr "Dateiformate" msgid "Show File Formats Section" msgstr "Zeige Dateiformatauswahl" -#: cps/render_template.py:96 cps/web.py:776 +#: cps/render_template.py:96 cps/web.py:792 msgid "Archived Books" msgstr "Archivierte Bücher" @@ -1068,7 +1069,7 @@ msgstr "Archivierte Bücher" msgid "Show Archived Books" msgstr "Zeige archivierte Bücher" -#: cps/render_template.py:101 cps/web.py:807 +#: cps/render_template.py:101 cps/web.py:823 msgid "Books List" msgstr "Bücherliste" @@ -1289,165 +1290,170 @@ msgstr "Ein neues Update ist verfügbar. Klicke auf den Button unten, um auf Ver msgid "No release information available" msgstr "Keine Releaseinformationen verfügbar" -#: cps/templates/index.html:6 cps/web.py:441 +#: cps/templates/index.html:6 cps/web.py:445 msgid "Discover (Random Books)" msgstr "Entdecke (Zufällige Bücher)" -#: cps/web.py:477 +#: cps/web.py:481 msgid "Hot Books (Most Downloaded)" msgstr "Beliebte Bücher (am meisten Downloads)" -#: cps/web.py:508 +#: cps/web.py:512 #, python-format msgid "Downloaded books by %(user)s" msgstr "Von %(user)s heruntergeladene Bücher" -#: cps/web.py:541 +#: cps/web.py:545 #, python-format msgid "Author: %(name)s" msgstr "Author: %(name)s" -#: cps/web.py:577 +#: cps/web.py:581 #, python-format msgid "Publisher: %(name)s" msgstr "Verleger: %(name)s" -#: cps/web.py:605 +#: cps/web.py:609 #, python-format msgid "Series: %(serie)s" msgstr "Serie: %(serie)s" -#: cps/web.py:620 +#: cps/web.py:623 msgid "Rating: None" msgstr "Bewertung: Keine" -#: cps/web.py:629 +#: cps/web.py:632 #, python-format msgid "Rating: %(rating)s stars" msgstr "Bewertung: %(rating)s Sterne" -#: cps/web.py:645 +#: cps/web.py:663 #, python-format msgid "File format: %(format)s" msgstr "Dateiformat: %(format)s" -#: cps/web.py:682 +#: cps/web.py:698 #, python-format msgid "Category: %(name)s" msgstr "Kategorie: %(name)s" -#: cps/web.py:711 +#: cps/web.py:727 #, python-format msgid "Language: %(name)s" msgstr "Sprache: %(name)s" -#: cps/templates/admin.html:16 cps/web.py:949 +#: cps/templates/admin.html:16 cps/web.py:965 msgid "Downloads" msgstr "Downloads" -#: cps/web.py:1051 +#: cps/web.py:1067 msgid "Ratings list" msgstr "Bewertungsliste" -#: cps/web.py:1078 +#: cps/web.py:1094 msgid "File formats list" msgstr "Liste der Dateiformate" -#: cps/web.py:1233 +#: cps/web.py:1249 msgid "Please configure the SMTP mail settings first..." msgstr "Bitte zuerst die SMTP-Einstellung konfigurieren..." -#: cps/web.py:1240 +#: cps/web.py:1256 #, python-format msgid "Success! Book queued for sending to %(eReadermail)s" msgstr "Buch erfolgreich zum Senden an %(eReadermail)s eingereiht" -#: cps/web.py:1243 +#: cps/web.py:1259 #, python-format msgid "Oops! There was an error sending book: %(res)s" msgstr "Beim Senden des Buchs trat ein Fehler auf: %(res)s" -#: cps/web.py:1245 +#: cps/web.py:1261 msgid "Oops! Please update your profile with a valid eReader Email." msgstr "Bitte zuerst die E-Reader E-Mailadresse konfigurieren." -#: cps/web.py:1261 +#: cps/web.py:1277 msgid "Please wait one minute to register next user" msgstr "Bitte eine Minute warten vor der Registrierung des nächsten Benutzers " #: cps/templates/layout.html:68 cps/templates/layout.html:102 -#: cps/templates/login.html:27 cps/templates/register.html:17 cps/web.py:1262 -#: cps/web.py:1267 cps/web.py:1271 cps/web.py:1277 cps/web.py:1297 -#: cps/web.py:1301 cps/web.py:1314 cps/web.py:1317 +#: cps/templates/login.html:27 cps/templates/register.html:17 cps/web.py:1278 +#: cps/web.py:1282 cps/web.py:1287 cps/web.py:1291 cps/web.py:1297 +#: cps/web.py:1317 cps/web.py:1321 cps/web.py:1334 cps/web.py:1337 msgid "Register" msgstr "Registrieren" -#: cps/web.py:1266 cps/web.py:1313 +#: cps/web.py:1281 cps/web.py:1385 +#, fuzzy +msgid "Connection error to limiter backend, please contact your administrator" +msgstr "Der E-Mail Server ist nicht konfigurierte, bitte den Administrator kontaktieren." + +#: cps/web.py:1286 cps/web.py:1333 msgid "Oops! Email server is not configured, please contact your administrator." msgstr "Der E-Mail Server ist nicht konfigurierte, bitte den Administrator kontaktieren." -#: cps/web.py:1299 +#: cps/web.py:1319 msgid "Oops! Your Email is not allowed." msgstr "Diese E-Mail ist nicht für die Registrierung zugelassen." -#: cps/web.py:1302 +#: cps/web.py:1322 msgid "Success! Confirmation Email has been sent." msgstr "Eine Bestätigungs-E-Mail wurde an deinen E-Mail Account versendet." -#: cps/web.py:1348 cps/web.py:1367 +#: cps/web.py:1368 cps/web.py:1391 msgid "Cannot activate LDAP authentication" msgstr "LDAP-Authentifizierung kann nicht aktiviert werden" -#: cps/web.py:1361 +#: cps/web.py:1381 msgid "Please wait one minute before next login" msgstr "Bitte eine Minute vor dem nächsten Loginversuche warten " -#: cps/web.py:1376 +#: cps/web.py:1400 #, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "Du bist nun eingeloggt als '%(nickname)s'" -#: cps/web.py:1383 +#: cps/web.py:1407 #, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgstr "Rückfall Login als: '%(nickname)s', LDAP Server ist nicht erreichbar, oder der Nutzer ist unbekannt" -#: cps/web.py:1388 +#: cps/web.py:1412 #, python-format msgid "Could not login: %(message)s" msgstr "Login nicht erfolgreich: %(message)s" -#: cps/web.py:1392 cps/web.py:1417 +#: cps/web.py:1416 cps/web.py:1441 msgid "Wrong Username or Password" msgstr "Falscher Benutzername oder Passwort" -#: cps/web.py:1399 +#: cps/web.py:1423 msgid "New Password was sent to your email address" msgstr "Das neue Passwort wurde an die E-Mail Adresse verschickt" -#: cps/web.py:1403 +#: cps/web.py:1427 msgid "An unknown error occurred. Please try again later." msgstr "Es ist ein unbekannter Fehler aufgetreten. Bitte später erneut versuchen." -#: cps/web.py:1405 +#: cps/web.py:1429 msgid "Please enter valid username to reset password" msgstr "Bitte einen gültigen Benutzernamen zum Zurücksetzen des Passworts angeben" -#: cps/web.py:1413 +#: cps/web.py:1437 #, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "Du bist nun eingeloggt als: '%(nickname)s'" -#: cps/web.py:1471 cps/web.py:1521 +#: cps/web.py:1495 cps/web.py:1545 #, python-format msgid "%(name)s's Profile" msgstr "%(name)s's Profil" -#: cps/web.py:1487 +#: cps/web.py:1511 msgid "Success! Profile Updated" msgstr "Profil aktualisiert" -#: cps/web.py:1491 +#: cps/web.py:1515 msgid "Oops! An account already exists for this Email." msgstr "Es existiert bereits ein Benutzer für diese E-Mailadresse." @@ -1460,41 +1466,41 @@ msgstr "Keine gültige gmail.json Datei mit Oauth informationen gefunden" msgid "%(book)s send to E-Reader" msgstr "%(book)s an E-Reader gesendet" -#: cps/tasks/convert.py:166 +#: cps/tasks/convert.py:167 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "Calibre E-Book Konverter %(tool)s nicht gefunden" -#: cps/tasks/convert.py:200 +#: cps/tasks/convert.py:201 #, python-format msgid "%(format)s format not found on disk" msgstr "%(format)s Format nicht gefunden" -#: cps/tasks/convert.py:204 +#: cps/tasks/convert.py:205 msgid "Ebook converter failed with unknown error" msgstr "EBook Converter mit unbekanntem Fehler fehlgeschlagen" -#: cps/tasks/convert.py:223 +#: cps/tasks/convert.py:224 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "Kepubify Konverter Aufruf fehlgeschlagen: %(error)s" -#: cps/tasks/convert.py:244 +#: cps/tasks/convert.py:245 #, 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:279 +#: cps/tasks/convert.py:287 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "Fehler des EBook-Converters: %(error)s" -#: cps/tasks/convert.py:302 +#: cps/tasks/convert.py:310 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "Calibre fehlgeschlagen mit Fehler: %(error)s" -#: cps/tasks/convert.py:307 +#: cps/tasks/convert.py:315 msgid "Convert" msgstr "Konvertiere" @@ -1502,7 +1508,7 @@ msgstr "Konvertiere" msgid "Reconnecting Calibre database" msgstr "Calibre Datenbank wird neu verbunden" -#: cps/tasks/mail.py:269 +#: cps/tasks/mail.py:278 msgid "E-mail" msgstr "E-Mail" @@ -1778,12 +1784,12 @@ 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:414 -#: cps/templates/config_view_edit.html:175 cps/templates/modal_dialogs.html:64 -#: cps/templates/modal_dialogs.html:99 cps/templates/modal_dialogs.html:117 -#: cps/templates/modal_dialogs.html:135 cps/templates/schedule_edit.html:45 -#: cps/templates/shelf_edit.html:27 cps/templates/tasks.html:46 -#: cps/templates/user_edit.html:144 +#: cps/templates/config_db.html:66 cps/templates/config_edit.html:428 +#: 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 +#: cps/templates/schedule_edit.html:45 cps/templates/shelf_edit.html:27 +#: cps/templates/tasks.html:46 cps/templates/user_edit.html:144 msgid "Cancel" msgstr "Abbruch" @@ -1964,7 +1970,7 @@ msgid "Fetch Metadata" msgstr "Metadaten laden" #: cps/templates/book_edit.html:213 cps/templates/config_db.html:65 -#: cps/templates/config_edit.html:413 cps/templates/config_view_edit.html:174 +#: cps/templates/config_edit.html:427 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 @@ -2129,7 +2135,7 @@ msgid "Location of Calibre Database" msgstr "Speicherort der Calibre-Datenbank" #: cps/templates/config_db.html:21 -msgid "Separate Book files from Library (Highly experimental, might not work at all)" +msgid "Separate Book Files from Library" msgstr "" #: cps/templates/config_db.html:34 @@ -2213,7 +2219,7 @@ msgid "Convert non-English characters in title and author while saving to disk" msgstr "Nicht-englische Zeichen in Titel und Autor beim Speichern auf Festplatte ersetzen" #: cps/templates/config_edit.html:108 -msgid "Embed Metadata to Ebook File on Download and Conversion (needs Calibre/Kepubify binaries)" +msgid "Embed Metadata to Ebook File on Download/Conversion/e-mail (needs Calibre/Kepubify binaries)" msgstr "" #: cps/templates/config_edit.html:112 @@ -2436,39 +2442,51 @@ msgstr "Sicherheitseinstellungen" msgid "Limit failed login attempts" msgstr "Login Fehlversuche begrenzen" -#: cps/templates/config_edit.html:376 +#: cps/templates/config_edit.html:377 +msgid "Configure Backend for Limiter" +msgstr "" + +#: cps/templates/config_edit.html:381 +msgid "Options for Limiter" +msgstr "" + +#: cps/templates/config_edit.html:386 msgid "Session protection" msgstr "Sessionschutz" -#: cps/templates/config_edit.html:378 +#: cps/templates/config_edit.html:388 msgid "Basic" msgstr "Einfach" -#: cps/templates/config_edit.html:379 +#: cps/templates/config_edit.html:389 msgid "Strong" msgstr "Stark" -#: cps/templates/config_edit.html:384 +#: cps/templates/config_edit.html:394 msgid "User Password policy" msgstr "Passwort Regeln" -#: cps/templates/config_edit.html:388 +#: cps/templates/config_edit.html:398 msgid "Minimum password length" msgstr "Minimale Passwortlänge" -#: cps/templates/config_edit.html:393 +#: cps/templates/config_edit.html:403 msgid "Enforce number" msgstr "Erzwinge Nummer" -#: cps/templates/config_edit.html:397 +#: cps/templates/config_edit.html:407 msgid "Enforce lowercase characters" msgstr "Erzwinge Kleinbuchstaben" -#: cps/templates/config_edit.html:401 +#: cps/templates/config_edit.html:411 msgid "Enforce uppercase characters" msgstr "Erzwinge Großbuchstaben" -#: cps/templates/config_edit.html:405 +#: cps/templates/config_edit.html:415 +msgid "Enforce characters (needed For Chinese/Japanese/Korean Characters)" +msgstr "" + +#: cps/templates/config_edit.html:419 msgid "Enforce special characters" msgstr "Erzwinge Spezialzeichen" @@ -2590,47 +2608,47 @@ msgstr "Buch %(index)s von %(range)s" msgid "Published" msgstr "Herausgabedatum" -#: cps/templates/detail.html:250 cps/templates/listenmp3.html:158 +#: cps/templates/detail.html:251 cps/templates/listenmp3.html:158 msgid "Mark As Unread" msgstr "Als ungelesen markieren" -#: cps/templates/detail.html:251 cps/templates/listenmp3.html:158 +#: cps/templates/detail.html:252 cps/templates/listenmp3.html:158 msgid "Mark As Read" msgstr "Als gelesen markieren" -#: cps/templates/detail.html:253 cps/templates/listenmp3.html:159 +#: cps/templates/detail.html:254 cps/templates/listenmp3.html:159 msgid "Read" msgstr "Gelesen" -#: cps/templates/detail.html:263 cps/templates/listenmp3.html:166 +#: cps/templates/detail.html:264 cps/templates/listenmp3.html:166 msgid "Restore from archive" msgstr "Vom Archiv wiederherstellen" -#: cps/templates/detail.html:264 cps/templates/listenmp3.html:166 +#: cps/templates/detail.html:265 cps/templates/listenmp3.html:166 msgid "Add to archive" msgstr "Zum Archiv hinzufügen" -#: cps/templates/detail.html:266 cps/templates/listenmp3.html:167 +#: cps/templates/detail.html:267 cps/templates/listenmp3.html:167 msgid "Archived" msgstr "Archiviert" -#: cps/templates/detail.html:277 cps/templates/listenmp3.html:177 +#: cps/templates/detail.html:278 cps/templates/listenmp3.html:177 msgid "Description:" msgstr "Beschreibung:" -#: cps/templates/detail.html:292 cps/templates/listenmp3.html:190 +#: cps/templates/detail.html:293 cps/templates/listenmp3.html:190 #: cps/templates/search.html:16 msgid "Add to shelf" msgstr "Zu Bücherregal hinzufügen" -#: cps/templates/detail.html:304 cps/templates/detail.html:323 +#: cps/templates/detail.html:305 cps/templates/detail.html:324 #: cps/templates/feed.xml:81 cps/templates/layout.html:154 #: cps/templates/listenmp3.html:201 cps/templates/listenmp3.html:218 #: cps/templates/search.html:22 msgid "(Public)" msgstr "(Öffentlich)" -#: cps/templates/detail.html:339 +#: cps/templates/detail.html:340 msgid "Edit Metadata" msgstr "Metadaten bearbeiten" diff --git a/cps/translations/el/LC_MESSAGES/messages.mo b/cps/translations/el/LC_MESSAGES/messages.mo index ce727961..b440ef26 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 9677fc60..677bf97d 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-02-10 10:06+0100\n" +"POT-Creation-Date: 2024-04-27 07:20+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: Depountis Georgios\n" "Language: el\n" @@ -21,502 +21,502 @@ msgstr "" msgid "Statistics" msgstr "Στατιστικά" -#: cps/admin.py:149 +#: cps/admin.py:150 #, fuzzy msgid "Server restarted, please reload page." msgstr "Ο διακομιστής επανεκκίνησε, παρακαλούμε φόρτωσε ξανά τη σελίδα" -#: cps/admin.py:151 +#: cps/admin.py:152 #, fuzzy msgid "Performing Server shutdown, please close window." msgstr "Πραγματοποιείται κλείσιμο του διακομιστή, παρακαλούμε κλείσε το παράθυρο" -#: cps/admin.py:159 +#: cps/admin.py:160 msgid "Success! Database Reconnected" msgstr "" -#: cps/admin.py:162 +#: cps/admin.py:163 msgid "Unknown command" msgstr "Άγνωστη εντολή" -#: cps/admin.py:173 +#: cps/admin.py:174 #, fuzzy msgid "Success! Books queued for Metadata Backup, please check Tasks for result" msgstr "Το βιβλίο έχει επιτυχώς μπει σε σειρά για αποστολή στο %(eReadermail)s" -#: cps/admin.py:206 cps/editbooks.py:589 cps/editbooks.py:591 -#: cps/editbooks.py:629 cps/editbooks.py:646 cps/editbooks.py:1262 +#: cps/admin.py:207 cps/editbooks.py:590 cps/editbooks.py:592 +#: cps/editbooks.py:630 cps/editbooks.py:647 cps/editbooks.py:1263 #: cps/updater.py:613 cps/uploader.py:93 cps/uploader.py:102 msgid "Unknown" msgstr "ʼΑγνωστο" -#: cps/admin.py:231 +#: cps/admin.py:232 msgid "Admin page" msgstr "Σελίδα διαχειριστή" -#: cps/admin.py:251 +#: cps/admin.py:252 msgid "Basic Configuration" msgstr "Βασική Διαμόρφωση" -#: cps/admin.py:289 +#: cps/admin.py:290 msgid "UI Configuration" msgstr "UI Διαμόρφωση" -#: cps/admin.py:323 cps/templates/admin.html:51 +#: cps/admin.py:324 cps/templates/admin.html:51 #, fuzzy msgid "Edit Users" msgstr "Χρήστης Διαχειριστής" -#: cps/admin.py:367 cps/opds.py:506 cps/templates/grid.html:14 +#: cps/admin.py:368 cps/opds.py:506 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "Όλα" -#: cps/admin.py:394 cps/admin.py:1405 +#: cps/admin.py:395 cps/admin.py:1417 msgid "User not found" msgstr "Δεν βρέθηκε χρήστης" -#: cps/admin.py:408 +#: cps/admin.py:409 msgid "{} users deleted successfully" msgstr "" -#: cps/admin.py:431 cps/templates/config_view_edit.html:133 +#: cps/admin.py:432 cps/templates/config_view_edit.html:133 #: cps/templates/user_edit.html:45 cps/templates/user_table.html:81 msgid "Show All" msgstr "Προβολή Όλων" -#: cps/admin.py:452 cps/admin.py:458 +#: cps/admin.py:453 cps/admin.py:459 msgid "Malformed request" msgstr "" -#: cps/admin.py:470 cps/admin.py:2033 +#: cps/admin.py:471 cps/admin.py:2048 msgid "Guest Name can't be changed" msgstr "" -#: cps/admin.py:482 +#: cps/admin.py:483 msgid "Guest can't have this role" msgstr "" -#: cps/admin.py:494 cps/admin.py:1987 +#: cps/admin.py:495 cps/admin.py:2002 msgid "No admin user remaining, can't remove admin role" msgstr "Δεν έχει απομείνει χρήστης διαχειριστής, δεν μπορεί να αφαιρεθεί ο ρόλος διαχειριστή" -#: cps/admin.py:498 cps/admin.py:512 +#: cps/admin.py:499 cps/admin.py:513 msgid "Value has to be true or false" msgstr "" -#: cps/admin.py:500 +#: cps/admin.py:501 msgid "Invalid role" msgstr "" -#: cps/admin.py:504 +#: cps/admin.py:505 msgid "Guest can't have this view" msgstr "" -#: cps/admin.py:514 +#: cps/admin.py:515 msgid "Invalid view" msgstr "" -#: cps/admin.py:517 +#: cps/admin.py:518 msgid "Guest's Locale is determined automatically and can't be set" msgstr "" -#: cps/admin.py:521 +#: cps/admin.py:522 msgid "No Valid Locale Given" msgstr "" -#: cps/admin.py:532 +#: cps/admin.py:533 msgid "No Valid Book Language Given" msgstr "" -#: cps/admin.py:534 cps/editbooks.py:455 +#: cps/admin.py:535 cps/editbooks.py:456 msgid "Parameter not found" msgstr "" -#: cps/admin.py:571 +#: cps/admin.py:572 msgid "Invalid Read Column" msgstr "" -#: cps/admin.py:577 +#: cps/admin.py:578 msgid "Invalid Restricted Column" msgstr "" -#: cps/admin.py:597 cps/admin.py:1858 +#: cps/admin.py:598 cps/admin.py:1873 msgid "Calibre-Web configuration updated" msgstr "Ενημερώθηκε η διαμόρφωση Calibre-Web" -#: cps/admin.py:609 +#: cps/admin.py:610 msgid "Do you really want to delete the Kobo Token?" msgstr "Θέλεις πραγματικά να διαγράψεις τη Μονάδα Kobo;" -#: cps/admin.py:611 +#: cps/admin.py:612 msgid "Do you really want to delete this domain?" msgstr "" -#: cps/admin.py:613 +#: cps/admin.py:614 msgid "Do you really want to delete this user?" msgstr "" -#: cps/admin.py:615 +#: cps/admin.py:616 msgid "Are you sure you want to delete this shelf?" msgstr "Είσαι σίγουρος/η πως θέλεις να διαγράψεις αυτό το ράφι;" -#: cps/admin.py:617 +#: cps/admin.py:618 #, fuzzy msgid "Are you sure you want to change locales of selected user(s)?" msgstr "Είσαι σίγουρος/η πως θέλεις να διαγράψεις αυτό το ράφι;" -#: cps/admin.py:619 +#: cps/admin.py:620 msgid "Are you sure you want to change visible book languages for selected user(s)?" msgstr "" -#: cps/admin.py:621 +#: cps/admin.py:622 msgid "Are you sure you want to change the selected role for the selected user(s)?" msgstr "" -#: cps/admin.py:623 +#: cps/admin.py:624 #, fuzzy msgid "Are you sure you want to change the selected restrictions for the selected user(s)?" msgstr "Είσαι σίγουρος/η πως θέλεις να διαγράψεις αυτό το ράφι;" -#: cps/admin.py:625 +#: cps/admin.py:626 msgid "Are you sure you want to change the selected visibility restrictions for the selected user(s)?" msgstr "" -#: cps/admin.py:628 +#: cps/admin.py:629 #, fuzzy msgid "Are you sure you want to change shelf sync behavior for the selected user(s)?" msgstr "Είσαι σίγουρος/η πως θέλεις να διαγράψεις αυτό το ράφι;" -#: cps/admin.py:630 +#: cps/admin.py:631 #, fuzzy msgid "Are you sure you want to change Calibre library location?" msgstr "Είσαι σίγουρος/η πως θέλεις να κάνεις κλείσιμο;" -#: cps/admin.py:632 +#: cps/admin.py:633 msgid "Calibre-Web will search for updated Covers and update Cover Thumbnails, this may take a while?" msgstr "" -#: cps/admin.py:635 +#: cps/admin.py:636 msgid "Are you sure you want delete Calibre-Web's sync database to force a full sync with your Kobo Reader?" msgstr "" -#: cps/admin.py:878 cps/admin.py:884 cps/admin.py:894 cps/admin.py:904 +#: cps/admin.py:879 cps/admin.py:885 cps/admin.py:895 cps/admin.py:905 #: cps/templates/modal_dialogs.html:29 cps/templates/user_table.html:41 #: cps/templates/user_table.html:58 msgid "Deny" msgstr "Απόρριψη" -#: cps/admin.py:880 cps/admin.py:886 cps/admin.py:896 cps/admin.py:906 +#: cps/admin.py:881 cps/admin.py:887 cps/admin.py:897 cps/admin.py:907 #: cps/templates/modal_dialogs.html:28 cps/templates/user_table.html:44 #: cps/templates/user_table.html:61 msgid "Allow" msgstr "Επιτρέπεται" -#: cps/admin.py:921 +#: cps/admin.py:940 msgid "{} sync entries deleted" msgstr "" -#: cps/admin.py:969 +#: cps/admin.py:981 msgid "Tag not found" msgstr "" -#: cps/admin.py:981 +#: cps/admin.py:993 msgid "Invalid Action" msgstr "" -#: cps/admin.py:1111 +#: cps/admin.py:1123 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "client_secrets.json Δεν Έχει Διαμορφωθεί Για Διαδικτυακή Εφαρμογή" -#: cps/admin.py:1156 +#: cps/admin.py:1168 msgid "Logfile Location is not Valid, Please Enter Correct Path" msgstr "Το Φύλλο Καταγραφής Τοποθεσίας δεν είναι Έγκυρο, Παρακαλούμε Συμπλήρωσε Τη Σωστή Πορεία" -#: cps/admin.py:1162 +#: cps/admin.py:1174 msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgstr "Η Πρόσβαση Φύλλου Καταγραφης Τοποθεσίας δεν είναι έγκυρη, Παρακαλούμε Συμπλήρωσε Τη Σωστή Πορεία" -#: cps/admin.py:1196 +#: cps/admin.py:1208 msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgstr "Παρακαλούμε Συμπλήρωσε ένα Πάροχο LDAP, Θύρα, DN και Αντικείμενο Αναγνώρισης Χρήστη" -#: cps/admin.py:1202 +#: cps/admin.py:1214 #, fuzzy msgid "Please Enter a LDAP Service Account and Password" msgstr "Παρακαλούμε συμπλήρωσε ένα έγκυρο όνομα χρήστη για επαναφορά του κωδικού" -#: cps/admin.py:1205 +#: cps/admin.py:1217 msgid "Please Enter a LDAP Service Account" msgstr "" -#: cps/admin.py:1210 +#: cps/admin.py:1222 #, python-format msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgstr "Το Αντικείμενο Φίλτρου Ομάδας LDAP Πρέπει να Έχει Μια \"%s\" Αναγνώριση Μορφής" -#: cps/admin.py:1212 +#: cps/admin.py:1224 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "Το Αντικείμενο Φίλτρου Ομάδας LDAP Έχει Παρενθέσεις Που Δεν Ταιριάζουν" -#: cps/admin.py:1216 +#: cps/admin.py:1228 #, python-format msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgstr "Το Αντικείμενο Φίλτρου Χρήστη LDAP πρέπει να Έχει Μια \"%s\" Αναγνώριση Μορφής" -#: cps/admin.py:1218 +#: cps/admin.py:1230 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "Το Αντικείμενο Φίλτρου Χρήστη LDAP Έχει Παρενθέσεις Που Δεν Ταιριάζουν" -#: cps/admin.py:1225 +#: cps/admin.py:1237 #, python-format msgid "LDAP Member User Filter needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1227 +#: cps/admin.py:1239 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1234 +#: cps/admin.py:1246 msgid "LDAP CACertificate, Certificate or Key Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1265 cps/templates/admin.html:53 +#: cps/admin.py:1277 cps/templates/admin.html:53 msgid "Add New User" msgstr "Προσθήκη Νέου Χρήστη" -#: cps/admin.py:1274 cps/templates/admin.html:100 +#: cps/admin.py:1286 cps/templates/admin.html:100 msgid "Edit Email Server Settings" msgstr "Επεξεργασία Ρυθμίσεων E-mail Διακομιστή" -#: cps/admin.py:1293 +#: cps/admin.py:1305 msgid "Success! Gmail Account Verified." msgstr "" -#: cps/admin.py:1313 cps/admin.py:1316 cps/admin.py:1698 cps/admin.py:1842 -#: cps/admin.py:1940 cps/admin.py:2061 cps/editbooks.py:241 -#: cps/editbooks.py:317 cps/editbooks.py:1224 cps/shelf.py:90 cps/shelf.py:150 +#: cps/admin.py:1325 cps/admin.py:1328 cps/admin.py:1710 cps/admin.py:1857 +#: cps/admin.py:1955 cps/admin.py:2076 cps/editbooks.py:242 +#: cps/editbooks.py:318 cps/editbooks.py:1225 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:149 cps/web.py:1496 +#: cps/shelf.py:468 cps/tasks/convert.py:150 cps/web.py:1520 #, python-format msgid "Oops! Database Error: %(error)s." msgstr "Σφάλμα βάσης δεδομένων: %(error)s." -#: cps/admin.py:1323 +#: cps/admin.py:1335 #, python-format msgid "Test e-mail queued for sending to %(email)s, please check Tasks for result" msgstr "" -#: cps/admin.py:1326 +#: cps/admin.py:1338 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "Παρουσιάστηκε σφάλμα κατά την αποστολή του δοκιμαστικού e-mail:% (res)s" -#: cps/admin.py:1328 +#: cps/admin.py:1340 msgid "Please configure your e-mail address first..." msgstr "Παρακαλούμε ρύθμισε πρώτα τη διεύθυνση e-mail σου..." -#: cps/admin.py:1330 +#: cps/admin.py:1342 msgid "Email Server Settings updated" msgstr "Ενημερώθηκαν οι ρυθμίσεις E-mail διακομιστή" -#: cps/admin.py:1353 cps/templates/admin.html:195 +#: cps/admin.py:1365 cps/templates/admin.html:195 msgid "Edit Scheduled Tasks Settings" msgstr "" -#: cps/admin.py:1365 +#: cps/admin.py:1377 msgid "Invalid start time for task specified" msgstr "" -#: cps/admin.py:1370 +#: cps/admin.py:1382 msgid "Invalid duration for task specified" msgstr "" -#: cps/admin.py:1380 +#: cps/admin.py:1392 msgid "Scheduled tasks settings updated" msgstr "" -#: cps/admin.py:1390 cps/admin.py:1439 cps/admin.py:2057 cps/web.py:1296 +#: cps/admin.py:1402 cps/admin.py:1451 cps/admin.py:2072 cps/web.py:1316 msgid "Oops! An unknown error occurred. Please try again later." msgstr "Προέκυψε ένα άγνωστο σφάλμα. Παρακαλούμε δοκίμασε ξανά αργότερα." -#: cps/admin.py:1394 +#: cps/admin.py:1406 msgid "Settings DB is not Writeable" msgstr "" -#: cps/admin.py:1424 cps/admin.py:2049 +#: cps/admin.py:1436 cps/admin.py:2064 #, python-format msgid "Edit User %(nick)s" msgstr "Επεξεργασία χρήστη %(nick)s" -#: cps/admin.py:1436 +#: cps/admin.py:1448 #, fuzzy, python-format msgid "Success! Password for user %(user)s reset" msgstr "Κωδικός για επαναφορά %(user) χρήστη/ών" -#: cps/admin.py:1442 +#: cps/admin.py:1454 #, fuzzy msgid "Oops! Please configure the SMTP mail settings." msgstr "Παρακαλούμε διαμόρφωσε πρώτα τις ρυθμίσεις ταχυδρομείου SMTP..." -#: cps/admin.py:1453 +#: cps/admin.py:1465 msgid "Logfile viewer" msgstr "Προβολέας αρχείου φύλλου καταγραφής" -#: cps/admin.py:1519 +#: cps/admin.py:1531 msgid "Requesting update package" msgstr "Αίτημα πακέτου ενημέρωσης" -#: cps/admin.py:1520 +#: cps/admin.py:1532 msgid "Downloading update package" msgstr "Κατεβάζει πακέτο ενημέρωσης" -#: cps/admin.py:1521 +#: cps/admin.py:1533 msgid "Unzipping update package" msgstr "Ανοίγει πακέτο ενημέρωσης" -#: cps/admin.py:1522 +#: cps/admin.py:1534 msgid "Replacing files" msgstr "Αντικατάσταση αρχείων" -#: cps/admin.py:1523 +#: cps/admin.py:1535 msgid "Database connections are closed" msgstr "Οι συνδέσεις βάσης δεδομένων είναι κλειστές" -#: cps/admin.py:1524 +#: cps/admin.py:1536 msgid "Stopping server" msgstr "Σταματάει το διακομιστή" -#: cps/admin.py:1525 +#: cps/admin.py:1537 msgid "Update finished, please press okay and reload page" msgstr "Η ενημέρωση τελειώσε, παρακαλούμε πιέστε το εντάξει και φορτώστε ξανά τη σελίδα" -#: cps/admin.py:1526 cps/admin.py:1527 cps/admin.py:1528 cps/admin.py:1529 -#: cps/admin.py:1530 cps/admin.py:1531 +#: cps/admin.py:1538 cps/admin.py:1539 cps/admin.py:1540 cps/admin.py:1541 +#: cps/admin.py:1542 cps/admin.py:1543 msgid "Update failed:" msgstr "Η ενημέρωση απέτυχε:" -#: cps/admin.py:1526 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 +#: cps/admin.py:1538 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 msgid "HTTP Error" msgstr "HTTP Σφάλμα" -#: cps/admin.py:1527 cps/updater.py:391 cps/updater.py:628 +#: cps/admin.py:1539 cps/updater.py:391 cps/updater.py:628 msgid "Connection error" msgstr "Σφάλμα σύνδεσης" -#: cps/admin.py:1528 cps/updater.py:393 cps/updater.py:630 +#: cps/admin.py:1540 cps/updater.py:393 cps/updater.py:630 msgid "Timeout while establishing connection" msgstr "Τελείωσε ο χρόνος κατά την προσπάθεια δημιουργίας σύνδεσης" -#: cps/admin.py:1529 cps/updater.py:395 cps/updater.py:632 +#: cps/admin.py:1541 cps/updater.py:395 cps/updater.py:632 msgid "General error" msgstr "Γενικό σφάλμα" -#: cps/admin.py:1530 +#: cps/admin.py:1542 #, fuzzy msgid "Update file could not be saved in temp dir" msgstr "Το Αρχείο Ενημέρωσης Δεν Μπόρεσε Να Αποθηκευτεί σε" -#: cps/admin.py:1531 +#: cps/admin.py:1543 msgid "Files could not be replaced during update" msgstr "" -#: cps/admin.py:1555 +#: cps/admin.py:1567 #, fuzzy msgid "Failed to extract at least One LDAP User" msgstr "Αποτυχία Δημιουργίας Τουλάχιστον Ενός Χρήστη LDAP" -#: cps/admin.py:1600 +#: cps/admin.py:1612 msgid "Failed to Create at Least One LDAP User" msgstr "Αποτυχία Δημιουργίας Τουλάχιστον Ενός Χρήστη LDAP" -#: cps/admin.py:1613 +#: cps/admin.py:1625 #, python-format msgid "Error: %(ldaperror)s" msgstr "Σφάλμα: %(ldaperror)s" -#: cps/admin.py:1617 +#: cps/admin.py:1629 msgid "Error: No user returned in response of LDAP server" msgstr "Σφάλμα: Δεν επιστράφηκε χρήστης σε απάντηση του διακομιστή LDAP" -#: cps/admin.py:1650 +#: cps/admin.py:1662 msgid "At Least One LDAP User Not Found in Database" msgstr "Τουλάχιστον Ένας Χρήστης LDAP Δεν Βρέθηκε Στη Βάση Δεδομένων" -#: cps/admin.py:1652 +#: cps/admin.py:1664 msgid "{} User Successfully Imported" msgstr "" -#: cps/admin.py:1710 +#: cps/admin.py:1722 msgid "DB Location is not Valid, Please Enter Correct Path" msgstr "Η Τοποθεσία DB δεν είναι Έγκυρη, Παρακαλούμε Συμπληρώστε Τη Σωστή Πορεία" -#: cps/admin.py:1730 +#: cps/admin.py:1742 msgid "DB is not Writeable" msgstr "Η DB δεν μπορεί να Γραφτεί" -#: cps/admin.py:1746 +#: cps/admin.py:1758 msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgstr "Το Αρχειο Κλειδί Τοποθεσίας δεν είναι Έγκυρο, Παρακαλούμε Συμπληρώστε Τη Σωστή Πορεία" -#: cps/admin.py:1750 +#: cps/admin.py:1762 msgid "Certfile Location is not Valid, Please Enter Correct Path" msgstr "Η Τοποθεσία Certfile δεν είναι Έγκυρη, Παρακαλούμε Συμπληρώστε Τη Σωστή Πορεία" -#: cps/admin.py:1829 +#: cps/admin.py:1842 msgid "Password length has to be between 1 and 40" msgstr "" -#: cps/admin.py:1881 +#: cps/admin.py:1896 #, fuzzy msgid "Database Settings updated" msgstr "Ενημερώθηκαν οι ρυθμίσεις E-mail διακομιστή" -#: cps/admin.py:1889 +#: cps/admin.py:1904 #, fuzzy msgid "Database Configuration" msgstr "Διαμόρφωση Λειτουργίας" -#: cps/admin.py:1904 cps/web.py:1270 +#: cps/admin.py:1919 cps/web.py:1290 msgid "Oops! Please complete all fields." msgstr "Παρακαλούμε συμπλήρωσε όλα τα πεδία!" -#: cps/admin.py:1913 +#: cps/admin.py:1928 msgid "E-mail is not from valid domain" msgstr "Το E-mail δεν είναι από έγκυρο domain" -#: cps/admin.py:1919 +#: cps/admin.py:1934 msgid "Add new user" msgstr "Προσθήκη νέου χρήστη" -#: cps/admin.py:1930 +#: cps/admin.py:1945 #, python-format msgid "User '%(user)s' created" msgstr "Χρήστης/ες '%(user)s' δημιουργήθηκαν" -#: cps/admin.py:1936 +#: cps/admin.py:1951 #, fuzzy msgid "Oops! An account already exists for this Email. or name." msgstr "Βρέθηκε ένας ήδη υπάρχον λογαριασμός για αυτή τη διεύθυνση e-mail ή όνομα χρήστη." -#: cps/admin.py:1966 +#: cps/admin.py:1981 #, python-format msgid "User '%(nick)s' deleted" msgstr "Χρήστης/ες '%(nick)s' διαγράφηκαν" -#: cps/admin.py:1969 +#: cps/admin.py:1984 msgid "Can't delete Guest User" msgstr "" -#: cps/admin.py:1972 +#: cps/admin.py:1987 msgid "No admin user remaining, can't delete user" msgstr "Δεν έχει απομείνει χρήστης διαχειριστής, δεν μπορεί να διαγραφεί ο χρήστης" -#: cps/admin.py:2027 cps/web.py:1445 +#: cps/admin.py:2042 cps/web.py:1469 msgid "Email can't be empty and has to be a valid Email" msgstr "" -#: cps/admin.py:2053 +#: cps/admin.py:2068 #, python-format msgid "User '%(nick)s' updated" msgstr "Χρήστης/ες '%(nick)s' ενημερώθηκαν" @@ -529,122 +529,123 @@ msgstr "δεν εγκαταστάθηκε" msgid "Execution permissions missing" msgstr "Λείπουν άδειες εκτέλεσης" -#: cps/db.py:752 cps/search.py:137 cps/web.py:731 +#: cps/db.py:752 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:993 cps/templates/config_edit.html:208 +#: cps/db.py:992 cps/templates/config_edit.html:208 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 -#: cps/web.py:558 cps/web.py:592 cps/web.py:665 cps/web.py:692 cps/web.py:973 -#: cps/web.py:1003 cps/web.py:1048 cps/web.py:1076 cps/web.py:1115 +#: 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 +#: cps/web.py:1131 msgid "None" msgstr "Κανένα" -#: cps/editbooks.py:122 cps/editbooks.py:910 cps/web.py:525 cps/web.py:1537 -#: cps/web.py:1581 cps/web.py:1626 +#: cps/editbooks.py:123 cps/editbooks.py:911 cps/web.py:529 cps/web.py:1561 +#: cps/web.py:1605 cps/web.py:1650 msgid "Oops! Selected book is unavailable. File does not exist or is not accessible" msgstr "Oυπς! Ο επιλεγμένος τίτλος βιβλίου δεν είναι διαθέσιμος. Το αρχείο δεν υπάρχει ή δεν είναι προσβάσιμο" -#: cps/editbooks.py:166 cps/editbooks.py:1245 +#: cps/editbooks.py:167 cps/editbooks.py:1246 msgid "User has no rights to upload cover" msgstr "" -#: cps/editbooks.py:186 cps/editbooks.py:731 +#: cps/editbooks.py:187 cps/editbooks.py:732 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "Τα αναγνωριστικά δεν έχουν Διάκριση Πεζών-Κεφαλαίων Γραμμάτων, Αντικατάσταση Παλιού Αναγνωριστικού" -#: cps/editbooks.py:228 +#: cps/editbooks.py:229 msgid "Metadata successfully updated" msgstr "Τα μεταδεδομένα ενημερώθηκαν επιτυχώς" -#: cps/editbooks.py:246 +#: cps/editbooks.py:247 msgid "Error editing book: {}" msgstr "" -#: cps/editbooks.py:303 +#: cps/editbooks.py:304 #, python-format msgid "File %(file)s uploaded" msgstr "Το αρχείο %(file)s ανέβηκε" -#: cps/editbooks.py:331 +#: cps/editbooks.py:332 msgid "Source or destination format for conversion missing" msgstr "Η δομή πηγής ή προορισμού για μετατροπή λείπει" -#: cps/editbooks.py:339 +#: cps/editbooks.py:340 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "Το βιβλίο είναι σε σειρά επιτυχώς για μετατροπή σε %(book_format)s" -#: cps/editbooks.py:343 +#: cps/editbooks.py:344 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "Υπήρξε ένα σφάλμα στη μετατροπή αυτού του βιβλίου: %(res)s" -#: cps/editbooks.py:650 +#: cps/editbooks.py:651 msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgstr "Το βιβλίο που ανέβηκε πιθανόν να υπάρχει στη βιβλιοθήκη, σκέψου να το αλλάξεις πριν ανεβάσεις νέο: " -#: cps/editbooks.py:705 cps/editbooks.py:1037 +#: cps/editbooks.py:706 cps/editbooks.py:1038 #, fuzzy, python-format msgid "'%(langname)s' is not a valid language" msgstr "%(langname)s δεν είναι μια έγκυρη γλώσσα" -#: cps/editbooks.py:743 cps/editbooks.py:1185 +#: cps/editbooks.py:744 cps/editbooks.py:1186 #, python-format msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgstr "Η επέκταση αρχείου '%(ext)s' δεν επιτρέπεται να ανέβει σε αυτό το διακομιστή" -#: cps/editbooks.py:747 cps/editbooks.py:1189 +#: cps/editbooks.py:748 cps/editbooks.py:1190 msgid "File to be uploaded must have an extension" msgstr "Το αρχείο προς ανέβασμα πρέπει να έχει μια επέκταση" -#: cps/editbooks.py:755 +#: cps/editbooks.py:756 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "Το αρχείο %(filename)s δεν μπόρεσε να αποθηκευτεί σε temp dir" -#: cps/editbooks.py:775 +#: cps/editbooks.py:776 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "Αποτυχία Μετακίνησης Αρχείου Φόντου %(file)s: %(error)s" -#: cps/editbooks.py:832 cps/editbooks.py:834 +#: cps/editbooks.py:833 cps/editbooks.py:835 msgid "Book Format Successfully Deleted" msgstr "Η μορφή βιβλίου Διαγράφηκε Επιτυχώς" -#: cps/editbooks.py:841 cps/editbooks.py:843 +#: cps/editbooks.py:842 cps/editbooks.py:844 msgid "Book Successfully Deleted" msgstr "Το Βιβλίο Διαγράφηκε Επιτυχώς" -#: cps/editbooks.py:895 +#: cps/editbooks.py:896 msgid "You are missing permissions to delete books" msgstr "" -#: cps/editbooks.py:945 +#: cps/editbooks.py:946 msgid "edit metadata" msgstr "επεξεργασία μεταδεδομένων" -#: cps/editbooks.py:994 +#: cps/editbooks.py:995 #, python-format msgid "%(seriesindex)s is not a valid number, skipping" msgstr "" -#: cps/editbooks.py:1180 +#: cps/editbooks.py:1181 msgid "User has no rights to upload additional file formats" msgstr "" -#: cps/editbooks.py:1201 +#: cps/editbooks.py:1202 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "Αποτυχεία δημιουργίας πορείας %(path)s (Η άδεια απορρήφθηκε)." -#: cps/editbooks.py:1206 +#: cps/editbooks.py:1207 #, python-format msgid "Failed to store file %(file)s." msgstr "Αποτυχία αποθήκευσης αρχείου %(file)s." -#: cps/editbooks.py:1230 +#: cps/editbooks.py:1231 #, python-format msgid "File format %(ext)s added to %(book)s" msgstr "Μορφή αρχείου %(ext)s προστέθηκε σε %(book)s" @@ -657,207 +658,207 @@ msgstr "Η ρύθμιση του Google Drive δεν ολοκληρώθηκε, msgid "Callback domain is not verified, please follow steps to verify domain in google developer console" msgstr "Η ανάκληση ονόματος δεν έχει επαληθευτεί, παρακαλούμε ακολούθησε τα βήματα για την επαλήθευση ονόματος στην κονσόλα προγραμματιστή google" -#: cps/helper.py:84 +#: cps/helper.py:86 #, python-format msgid "%(format)s format not found for book id: %(book)d" msgstr "%(format)s η δομή δεν βρέθηκε για την ταυτότητα βιβλίου: %(book)d" -#: cps/helper.py:91 cps/tasks/convert.py:86 +#: cps/helper.py:93 cps/tasks/convert.py:86 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "%(format)s δεν βρέθηκε στο Google Drive: %(fn)s" -#: cps/helper.py:96 +#: cps/helper.py:98 #, python-format msgid "%(format)s not found: %(fn)s" msgstr "%(format)s δεν βρέθηκε: %(fn)s" -#: cps/helper.py:101 cps/helper.py:226 cps/templates/detail.html:58 +#: cps/helper.py:103 cps/helper.py:228 cps/templates/detail.html:58 #, fuzzy msgid "Send to eReader" msgstr "Αποστολή στο Kindle" -#: cps/helper.py:102 cps/helper.py:120 cps/helper.py:228 +#: cps/helper.py:104 cps/helper.py:122 cps/helper.py:230 #, fuzzy msgid "This Email has been sent via Calibre-Web." msgstr "Αυτό το e-mail έχει σταλεί μέσω Calibre-Web." -#: cps/helper.py:118 +#: cps/helper.py:120 #, fuzzy msgid "Calibre-Web Test Email" msgstr "Calibre-Web δοκιμαστικό e-mail" -#: cps/helper.py:119 +#: cps/helper.py:121 #, fuzzy msgid "Test Email" msgstr "Δοκιμαστικό e-mail" -#: cps/helper.py:136 +#: cps/helper.py:138 msgid "Get Started with Calibre-Web" msgstr "Ξεκινήστε με το Calibre-Web" -#: cps/helper.py:141 +#: cps/helper.py:143 #, fuzzy, python-format msgid "Registration Email for user: %(name)s" msgstr "e-mail εγγραφής για χρήστη: %(name)s" -#: cps/helper.py:152 cps/helper.py:158 +#: cps/helper.py:154 cps/helper.py:160 #, fuzzy, python-format msgid "Convert %(orig)s to %(format)s and send to eReader" msgstr "Μετατροπή %(orig)s σε %(format)s και αποστολή στο Kindle" -#: cps/helper.py:177 cps/helper.py:181 cps/helper.py:185 +#: cps/helper.py:179 cps/helper.py:183 cps/helper.py:187 #, fuzzy, python-format msgid "Send %(format)s to eReader" msgstr "Αποστολή %(format)s στο Kindle" -#: cps/helper.py:225 +#: cps/helper.py:227 #, fuzzy, python-format msgid "%(book)s send to eReader" msgstr "Αποστολή στο Kindle" -#: cps/helper.py:230 +#: cps/helper.py:232 msgid "The requested file could not be read. Maybe wrong permissions?" msgstr "Το αρχείου που χητήθηκε δεν μπορεί να διαβαστεί. Μπορεί να υπάρχουν λαθασμένες άδειες;" -#: cps/helper.py:345 +#: cps/helper.py:347 msgid "Read status could not set: {}" msgstr "" -#: cps/helper.py:368 +#: cps/helper.py:370 #, python-format msgid "Deleting bookfolder for book %(id)s failed, path has subfolders: %(path)s" msgstr "Η διαγραφή φακέλου βιβλίου για το βιβλίο %(id)s απέτυχε, η πορεία έχει υπό-φακέλους: %(path)s" -#: cps/helper.py:374 +#: cps/helper.py:376 #, python-format msgid "Deleting book %(id)s failed: %(message)s" msgstr "Η διαγραφή βιβλίου %(id)s απέτυχε: %(message)s" -#: cps/helper.py:385 +#: cps/helper.py:387 #, fuzzy, python-format msgid "Deleting book %(id)s from database only, book path in database not valid: %(path)s" msgstr "Διαγραφή βιβλίου %(id)s, η πορεία βιβλίου δεν είναι έγκυρη: %(path)s" -#: cps/helper.py:450 +#: cps/helper.py:452 #, 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:522 cps/helper.py:531 +#: cps/helper.py:524 cps/helper.py:533 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "Το αρχείο %(file)s δεν βρέθηκε στο Google Drive" -#: cps/helper.py:565 +#: cps/helper.py:567 #, 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:585 +#: cps/helper.py:587 msgid "Error in rename file in path: {}" msgstr "" -#: cps/helper.py:603 +#: cps/helper.py:605 #, python-format msgid "Book path %(path)s not found on Google Drive" msgstr "Η πορεία βιβλίου %(path)s δεν βρέθηκε στο Google Drive" -#: cps/helper.py:668 +#: cps/helper.py:670 msgid "Found an existing account for this Email address" msgstr "" -#: cps/helper.py:676 +#: cps/helper.py:678 msgid "This username is already taken" msgstr "Αυτό το όνομα χρήστη έχει ήδη παρθεί" -#: cps/helper.py:688 +#: cps/helper.py:690 msgid "Invalid Email address format" msgstr "" -#: cps/helper.py:706 +#: cps/helper.py:710 msgid "Password doesn't comply with password validation rules" msgstr "" -#: cps/helper.py:855 +#: cps/helper.py:859 msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "" -#: cps/helper.py:865 +#: cps/helper.py:869 msgid "Error Downloading Cover" msgstr "Σφάλμα Κατεβάσματος Φόντου" -#: cps/helper.py:868 +#: cps/helper.py:872 msgid "Cover Format Error" msgstr "Σφάλμα Μορφής Φόντου" -#: cps/helper.py:871 +#: cps/helper.py:875 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "" -#: cps/helper.py:881 +#: cps/helper.py:885 msgid "Failed to create path for cover" msgstr "Αποτυχία δημιουργίας πορείας για φόντο" -#: cps/helper.py:897 +#: cps/helper.py:901 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "Το αρχείο φόντου δεν είναι ένα έγκυρο αρχείο εικόνας, ή δεν μπόρεσε να αποθηκευτεί" -#: cps/helper.py:908 +#: cps/helper.py:912 msgid "Only jpg/jpeg/png/webp/bmp files are supported as coverfile" msgstr "" -#: cps/helper.py:920 +#: cps/helper.py:924 msgid "Invalid cover file content" msgstr "" -#: cps/helper.py:924 +#: cps/helper.py:928 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "Μόνο jpg/jpeg αρχεία υποστηρίζονται ως αρχεία φόντου" -#: cps/helper.py:995 cps/helper.py:1183 +#: cps/helper.py:999 cps/helper.py:1156 #, fuzzy msgid "Cover" msgstr "Ανακάλυψε" -#: cps/helper.py:1032 +#: cps/helper.py:1016 msgid "Unrar binary file not found" msgstr "Δεν βρέθηκε δυαδικό αρχείο Unrar" -#: cps/helper.py:1043 +#: cps/helper.py:1027 #, fuzzy msgid "Error executing UnRar" msgstr "Σφάλμα εκτέλεσης UnRar" -#: cps/helper.py:1051 +#: cps/helper.py:1035 msgid "Could not find the specified directory" msgstr "" -#: cps/helper.py:1054 +#: cps/helper.py:1038 msgid "Please specify a directory, not a file" msgstr "" -#: cps/helper.py:1068 +#: cps/helper.py:1052 #, fuzzy msgid "Calibre binaries not viable" msgstr "Η DB δεν μπορεί να Γραφτεί" -#: cps/helper.py:1077 +#: cps/helper.py:1061 #, python-format msgid "Missing calibre binaries: %(missing)s" msgstr "" -#: cps/helper.py:1079 +#: cps/helper.py:1063 #, fuzzy, python-format msgid "Missing executable permissions: %(missing)s" msgstr "Λείπουν άδειες εκτέλεσης" -#: cps/helper.py:1084 +#: cps/helper.py:1068 #, fuzzy msgid "Error excecuting Calibre" msgstr "Σφάλμα εκτέλεσης UnRar" -#: cps/helper.py:1185 cps/templates/admin.html:216 +#: cps/helper.py:1158 cps/templates/admin.html:216 msgid "Queue all books for metadata backup" msgstr "" @@ -942,7 +943,7 @@ msgstr "" #: cps/remotelogin.py:62 cps/templates/layout.html:67 #: cps/templates/layout.html:101 cps/templates/login.html:4 -#: cps/templates/login.html:21 cps/web.py:1333 +#: cps/templates/login.html:21 cps/web.py:1353 msgid "Login" msgstr "Σύνδεση" @@ -958,7 +959,7 @@ msgstr "Η μάρκα έχει λήξει" msgid "Success! Please return to your device" msgstr "Επιτυχία! Παρακαλούμε επέστρεψε στη συσκευή σου" -#: cps/render_template.py:42 cps/web.py:414 +#: cps/render_template.py:42 cps/web.py:418 msgid "Books" msgstr "Βιβλία" @@ -983,7 +984,7 @@ msgstr "Κατεβασμένα Βιβλία" msgid "Show Downloaded Books" msgstr "Προβολή Κατεβασμένων Βιβλίων" -#: cps/render_template.py:59 cps/templates/index.xml:33 cps/web.py:429 +#: cps/render_template.py:59 cps/templates/index.xml:33 cps/web.py:433 msgid "Top Rated Books" msgstr "Βιβλία με Κορυφαία Αξιολόγηση" @@ -992,7 +993,7 @@ msgid "Show Top Rated Books" msgstr "Προβολή Βιβλίων με Κορυφαία Αξιολόγηση" #: cps/render_template.py:62 cps/templates/index.xml:55 -#: cps/templates/index.xml:59 cps/web.py:750 +#: cps/templates/index.xml:59 cps/web.py:766 msgid "Read Books" msgstr "Βιβλία που Διαβάστηκαν" @@ -1002,7 +1003,7 @@ msgid "Show Read and Unread" msgstr "Προβολή διαβασμένων και αδιάβαστων" #: cps/render_template.py:66 cps/templates/index.xml:62 -#: cps/templates/index.xml:66 cps/web.py:753 +#: cps/templates/index.xml:66 cps/web.py:769 msgid "Unread Books" msgstr "Βιβλία που δεν Διαβάστηκαν" @@ -1020,7 +1021,7 @@ msgid "Show Random Books" msgstr "Προβολή Τυχαίων Βιβλίων" #: cps/render_template.py:72 cps/templates/book_table.html:67 -#: cps/templates/index.xml:84 cps/web.py:1119 +#: cps/templates/index.xml:84 cps/web.py:1135 msgid "Categories" msgstr "Κατηγορίες" @@ -1031,7 +1032,7 @@ msgstr "Προβολή επιλογών κατηγορίας" #: cps/render_template.py:75 cps/templates/book_edit.html:91 #: cps/templates/book_table.html:68 cps/templates/index.xml:91 -#: cps/templates/search_form.html:70 cps/web.py:1009 cps/web.py:1021 +#: cps/templates/search_form.html:70 cps/web.py:1025 cps/web.py:1037 msgid "Series" msgstr "Σειρές" @@ -1051,7 +1052,7 @@ msgid "Show Author Section" msgstr "Προβολή επιλογών συγγραφέα" #: cps/render_template.py:82 cps/templates/book_table.html:72 -#: cps/templates/index.xml:77 cps/web.py:977 +#: cps/templates/index.xml:77 cps/web.py:993 msgid "Publishers" msgstr "Εκδότες" @@ -1062,7 +1063,7 @@ msgstr "Προβολή επιλογών εκδότη" #: cps/render_template.py:85 cps/templates/book_table.html:70 #: cps/templates/index.xml:98 cps/templates/search_form.html:108 -#: cps/web.py:1091 +#: cps/web.py:1107 msgid "Languages" msgstr "Γλώσσες" @@ -1089,7 +1090,7 @@ msgstr "Μορφές αρχείου" msgid "Show File Formats Section" msgstr "Προβολή επιλογών μορφής αρχείου" -#: cps/render_template.py:96 cps/web.py:776 +#: cps/render_template.py:96 cps/web.py:792 msgid "Archived Books" msgstr "Αρχειοθετημένα Βιβλία" @@ -1098,7 +1099,7 @@ msgstr "Αρχειοθετημένα Βιβλία" msgid "Show Archived Books" msgstr "Προβολή αρχειοθετημένων βιβλίων" -#: cps/render_template.py:101 cps/web.py:807 +#: cps/render_template.py:101 cps/web.py:823 msgid "Books List" msgstr "Λίστα Βιβλίων" @@ -1322,173 +1323,178 @@ msgstr "Μια νέα ενημέρωση είναι διαθέσιμη. Κάνε msgid "No release information available" msgstr "Δεν υπάρχουν διαθέσιμες πληροφορίες αποδέσμευσης" -#: cps/templates/index.html:6 cps/web.py:441 +#: cps/templates/index.html:6 cps/web.py:445 msgid "Discover (Random Books)" msgstr "Ανακάλυψε (Τυχαία Βιβλία)" -#: cps/web.py:477 +#: cps/web.py:481 msgid "Hot Books (Most Downloaded)" msgstr "Βιβλία στη Μόδα (Με τα περισσότερα κατεβάσματα)" -#: cps/web.py:508 +#: cps/web.py:512 #, python-format msgid "Downloaded books by %(user)s" msgstr "Κατεβασμένα βιβλία από %(user)s" -#: cps/web.py:541 +#: cps/web.py:545 #, python-format msgid "Author: %(name)s" msgstr "Συγγραφέας: %(name)s" -#: cps/web.py:577 +#: cps/web.py:581 #, python-format msgid "Publisher: %(name)s" msgstr "Εκδότης: %(name)s" -#: cps/web.py:605 +#: cps/web.py:609 #, python-format msgid "Series: %(serie)s" msgstr "Σειρές: %(serie)s" -#: cps/web.py:620 +#: cps/web.py:623 msgid "Rating: None" msgstr "" -#: cps/web.py:629 +#: cps/web.py:632 #, python-format msgid "Rating: %(rating)s stars" msgstr "Αξιολόγηση: %(rating)s stars" -#: cps/web.py:645 +#: cps/web.py:663 #, python-format msgid "File format: %(format)s" msgstr "Μορφή αρχείου: %(format)s" -#: cps/web.py:682 +#: cps/web.py:698 #, python-format msgid "Category: %(name)s" msgstr "Κατηγορία: %(name)s" -#: cps/web.py:711 +#: cps/web.py:727 #, python-format msgid "Language: %(name)s" msgstr "Γλώσσα: %(name)s" -#: cps/templates/admin.html:16 cps/web.py:949 +#: cps/templates/admin.html:16 cps/web.py:965 msgid "Downloads" msgstr "Κατεβασμένα" -#: cps/web.py:1051 +#: cps/web.py:1067 msgid "Ratings list" msgstr "Λίστα αξιολογήσεων" -#: cps/web.py:1078 +#: cps/web.py:1094 msgid "File formats list" msgstr "Λίστα μορφών αρχείου" -#: cps/web.py:1233 +#: cps/web.py:1249 #, fuzzy msgid "Please configure the SMTP mail settings first..." msgstr "Παρακαλούμε διαμόρφωσε πρώτα τις ρυθμίσεις ταχυδρομείου SMTP..." -#: cps/web.py:1240 +#: cps/web.py:1256 #, python-format msgid "Success! Book queued for sending to %(eReadermail)s" msgstr "Το βιβλίο έχει επιτυχώς μπει σε σειρά για αποστολή στο %(eReadermail)s" -#: cps/web.py:1243 +#: cps/web.py:1259 #, python-format msgid "Oops! There was an error sending book: %(res)s" msgstr "Oυπς! Υπήρξε ένα σφάλμα κατά την αποστολή αυτού του βιβλίου: %(res)s" -#: cps/web.py:1245 +#: cps/web.py:1261 #, fuzzy msgid "Oops! Please update your profile with a valid eReader Email." msgstr "Παρακαλούμε ενημέρωσε το προφίλ σου με μια έγκυρη Διεύθυνση E-mail Αποστολής στο Kindle." -#: cps/web.py:1261 +#: cps/web.py:1277 msgid "Please wait one minute to register next user" msgstr "" #: cps/templates/layout.html:68 cps/templates/layout.html:102 -#: cps/templates/login.html:27 cps/templates/register.html:17 cps/web.py:1262 -#: cps/web.py:1267 cps/web.py:1271 cps/web.py:1277 cps/web.py:1297 -#: cps/web.py:1301 cps/web.py:1314 cps/web.py:1317 +#: cps/templates/login.html:27 cps/templates/register.html:17 cps/web.py:1278 +#: cps/web.py:1282 cps/web.py:1287 cps/web.py:1291 cps/web.py:1297 +#: cps/web.py:1317 cps/web.py:1321 cps/web.py:1334 cps/web.py:1337 msgid "Register" msgstr "Εγγραφή" -#: cps/web.py:1266 cps/web.py:1313 +#: cps/web.py:1281 cps/web.py:1385 +#, fuzzy +msgid "Connection error to limiter backend, please contact your administrator" +msgstr "Ο διακομιστής E-Mail δεν έχει διαμορφωθεί, παρακαλούμε επικοινώνησε με το διαχειριστή σου!" + +#: cps/web.py:1286 cps/web.py:1333 msgid "Oops! Email server is not configured, please contact your administrator." msgstr "Ο διακομιστής E-Mail δεν έχει διαμορφωθεί, παρακαλούμε επικοινώνησε με το διαχειριστή σου!" -#: cps/web.py:1299 +#: cps/web.py:1319 msgid "Oops! Your Email is not allowed." msgstr "Η διεύθυνση e-mail σου δεν επιτρέπεται να εγγραφεί" -#: cps/web.py:1302 +#: cps/web.py:1322 msgid "Success! Confirmation Email has been sent." msgstr "Το e-mail επιβεβαίωσης έχει σταλεί στον e-mail λογαριασμό σου." -#: cps/web.py:1348 cps/web.py:1367 +#: cps/web.py:1368 cps/web.py:1391 #, fuzzy msgid "Cannot activate LDAP authentication" msgstr "Δεν μπόρεσε να ενεργοποιηθεί η επαλήθευση LDAP" -#: cps/web.py:1361 +#: cps/web.py:1381 msgid "Please wait one minute before next login" msgstr "" -#: cps/web.py:1376 +#: cps/web.py:1400 #, fuzzy, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "τώρα έχεις συνδεθεί ως: '%(nickname)s'" -#: cps/web.py:1383 +#: cps/web.py:1407 #, fuzzy, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgstr "Εναλλακτική Σύνδεση ως: '%(nickname)s', Ο Διακομιστής LDAP δεν είναι προσβάσιμος, ή ο χρήστης δεν είναι γνωστός" -#: cps/web.py:1388 +#: cps/web.py:1412 #, fuzzy, python-format msgid "Could not login: %(message)s" msgstr "Δεν μπόρεσε να συνδεθεί: %(message)s" -#: cps/web.py:1392 cps/web.py:1417 +#: cps/web.py:1416 cps/web.py:1441 #, fuzzy msgid "Wrong Username or Password" msgstr "Λανθασμένο Όνομα Χρήστη ή Κωδικός" -#: cps/web.py:1399 +#: cps/web.py:1423 #, fuzzy msgid "New Password was sent to your email address" msgstr "Ο Νέος Κωδικός έχει σταλεί στη διεύθυνση email σου" -#: cps/web.py:1403 +#: cps/web.py:1427 #, fuzzy msgid "An unknown error occurred. Please try again later." msgstr "Προέκυψε ένα άγνωστο σφάλμα. Παρακαλούμε δοκίμασε ξανά αργότερα." -#: cps/web.py:1405 +#: cps/web.py:1429 #, fuzzy msgid "Please enter valid username to reset password" msgstr "Παρακαλούμε συμπλήρωσε ένα έγκυρο όνομα χρήστη για επαναφορά του κωδικού" -#: cps/web.py:1413 +#: cps/web.py:1437 #, fuzzy, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "τώρα έχεις συνδεθεί ως: '%(nickname)s'" -#: cps/web.py:1471 cps/web.py:1521 +#: cps/web.py:1495 cps/web.py:1545 #, python-format msgid "%(name)s's Profile" msgstr "%(name)s's προφίλ" -#: cps/web.py:1487 +#: cps/web.py:1511 #, fuzzy msgid "Success! Profile Updated" msgstr "Το προφίλ ενημερώθηκε" -#: cps/web.py:1491 +#: cps/web.py:1515 #, fuzzy msgid "Oops! An account already exists for this Email." msgstr "Βρέθηκε ένας ήδη υπάρχον λογαριασμός για αυτή τη διεύθυνση e-mail." @@ -1502,41 +1508,41 @@ msgstr "" msgid "%(book)s send to E-Reader" msgstr "Αποστολή στο Kindle" -#: cps/tasks/convert.py:166 +#: cps/tasks/convert.py:167 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "Το εργαλείο μετατροπής Calibre ebook %(tool)s δεν βρέθηκε" -#: cps/tasks/convert.py:200 +#: cps/tasks/convert.py:201 #, python-format msgid "%(format)s format not found on disk" msgstr "%(format)s μορφή δεν βρέθηκε σε δίσκο" -#: cps/tasks/convert.py:204 +#: cps/tasks/convert.py:205 msgid "Ebook converter failed with unknown error" msgstr "Ο μετατροπέας Ebook απέτυχε με άγνωστο σφάλμα" -#: cps/tasks/convert.py:223 +#: cps/tasks/convert.py:224 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "Ο μετατροπέας Kepubify απέτυχε: %(error)s" -#: cps/tasks/convert.py:244 +#: cps/tasks/convert.py:245 #, python-format msgid "Converted file not found or more than one file in folder %(folder)s" msgstr "Το τροποποιημένο αρχείο δεν βρέθηκε ή υπάρχουν περισσότερα από ένα αρχεία στο φάκελο %(folder)s" -#: cps/tasks/convert.py:279 +#: cps/tasks/convert.py:287 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "Ο μετατροπέας Ebook απέτυχε: %(error)s" -#: cps/tasks/convert.py:302 +#: cps/tasks/convert.py:310 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "Το Calibre απέτυχε με σφάλμα: %(error)s" -#: cps/tasks/convert.py:307 +#: cps/tasks/convert.py:315 msgid "Convert" msgstr "" @@ -1544,7 +1550,7 @@ msgstr "" msgid "Reconnecting Calibre database" msgstr "" -#: cps/tasks/mail.py:269 +#: cps/tasks/mail.py:278 msgid "E-mail" msgstr "" @@ -1823,12 +1829,12 @@ 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:414 -#: cps/templates/config_view_edit.html:175 cps/templates/modal_dialogs.html:64 -#: cps/templates/modal_dialogs.html:99 cps/templates/modal_dialogs.html:117 -#: cps/templates/modal_dialogs.html:135 cps/templates/schedule_edit.html:45 -#: cps/templates/shelf_edit.html:27 cps/templates/tasks.html:46 -#: cps/templates/user_edit.html:144 +#: cps/templates/config_db.html:66 cps/templates/config_edit.html:428 +#: 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 +#: cps/templates/schedule_edit.html:45 cps/templates/shelf_edit.html:27 +#: cps/templates/tasks.html:46 cps/templates/user_edit.html:144 msgid "Cancel" msgstr "Ακύρωση" @@ -2009,7 +2015,7 @@ msgid "Fetch Metadata" msgstr "Συγκέντρωση Μεταδεδομένων" #: cps/templates/book_edit.html:213 cps/templates/config_db.html:65 -#: cps/templates/config_edit.html:413 cps/templates/config_view_edit.html:174 +#: cps/templates/config_edit.html:427 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 @@ -2177,7 +2183,7 @@ msgid "Location of Calibre Database" msgstr "Τοποθεσία Βάσης Δεδομένων Calibre" #: cps/templates/config_db.html:21 -msgid "Separate Book files from Library (Highly experimental, might not work at all)" +msgid "Separate Book Files from Library" msgstr "" #: cps/templates/config_db.html:34 @@ -2262,7 +2268,7 @@ msgid "Convert non-English characters in title and author while saving to disk" msgstr "" #: cps/templates/config_edit.html:108 -msgid "Embed Metadata to Ebook File on Download and Conversion (needs Calibre/Kepubify binaries)" +msgid "Embed Metadata to Ebook File on Download/Conversion/e-mail (needs Calibre/Kepubify binaries)" msgstr "" #: cps/templates/config_edit.html:112 @@ -2486,40 +2492,52 @@ msgstr "OAuth Ρυθμίσεις" msgid "Limit failed login attempts" msgstr "" -#: cps/templates/config_edit.html:376 +#: cps/templates/config_edit.html:377 +msgid "Configure Backend for Limiter" +msgstr "" + +#: cps/templates/config_edit.html:381 +msgid "Options for Limiter" +msgstr "" + +#: cps/templates/config_edit.html:386 msgid "Session protection" msgstr "" -#: cps/templates/config_edit.html:378 +#: cps/templates/config_edit.html:388 msgid "Basic" msgstr "" -#: cps/templates/config_edit.html:379 +#: cps/templates/config_edit.html:389 msgid "Strong" msgstr "" -#: cps/templates/config_edit.html:384 +#: cps/templates/config_edit.html:394 #, fuzzy msgid "User Password policy" msgstr "Επαναφορά Κωδικού χρήστη" -#: cps/templates/config_edit.html:388 +#: cps/templates/config_edit.html:398 msgid "Minimum password length" msgstr "" -#: cps/templates/config_edit.html:393 +#: cps/templates/config_edit.html:403 msgid "Enforce number" msgstr "" -#: cps/templates/config_edit.html:397 +#: cps/templates/config_edit.html:407 msgid "Enforce lowercase characters" msgstr "" -#: cps/templates/config_edit.html:401 +#: cps/templates/config_edit.html:411 msgid "Enforce uppercase characters" msgstr "" -#: cps/templates/config_edit.html:405 +#: cps/templates/config_edit.html:415 +msgid "Enforce characters (needed For Chinese/Japanese/Korean Characters)" +msgstr "" + +#: cps/templates/config_edit.html:419 msgid "Enforce special characters" msgstr "" @@ -2643,47 +2661,47 @@ msgstr "" msgid "Published" msgstr "Εκδόθηκε" -#: cps/templates/detail.html:250 cps/templates/listenmp3.html:158 +#: cps/templates/detail.html:251 cps/templates/listenmp3.html:158 msgid "Mark As Unread" msgstr "Σήμανση ως Αδιάβαστο" -#: cps/templates/detail.html:251 cps/templates/listenmp3.html:158 +#: cps/templates/detail.html:252 cps/templates/listenmp3.html:158 msgid "Mark As Read" msgstr "Σήμανση ως Διαβασμένο" -#: cps/templates/detail.html:253 cps/templates/listenmp3.html:159 +#: cps/templates/detail.html:254 cps/templates/listenmp3.html:159 msgid "Read" msgstr "Διαβάστηκε" -#: cps/templates/detail.html:263 cps/templates/listenmp3.html:166 +#: cps/templates/detail.html:264 cps/templates/listenmp3.html:166 msgid "Restore from archive" msgstr "Επαναφορά από το αρχείο" -#: cps/templates/detail.html:264 cps/templates/listenmp3.html:166 +#: cps/templates/detail.html:265 cps/templates/listenmp3.html:166 msgid "Add to archive" msgstr "Προσθήκη στο αρχείο" -#: cps/templates/detail.html:266 cps/templates/listenmp3.html:167 +#: cps/templates/detail.html:267 cps/templates/listenmp3.html:167 msgid "Archived" msgstr "Αρχειοθετήθηκε" -#: cps/templates/detail.html:277 cps/templates/listenmp3.html:177 +#: cps/templates/detail.html:278 cps/templates/listenmp3.html:177 msgid "Description:" msgstr "Περιγραφή" -#: cps/templates/detail.html:292 cps/templates/listenmp3.html:190 +#: cps/templates/detail.html:293 cps/templates/listenmp3.html:190 #: cps/templates/search.html:16 msgid "Add to shelf" msgstr "Προσθήκη στο ράφι" -#: cps/templates/detail.html:304 cps/templates/detail.html:323 +#: cps/templates/detail.html:305 cps/templates/detail.html:324 #: cps/templates/feed.xml:81 cps/templates/layout.html:154 #: cps/templates/listenmp3.html:201 cps/templates/listenmp3.html:218 #: cps/templates/search.html:22 msgid "(Public)" msgstr "(Δημόσιο)" -#: cps/templates/detail.html:339 +#: cps/templates/detail.html:340 msgid "Edit Metadata" msgstr "Επεξεργασία Μεταδεδομένων" diff --git a/cps/translations/es/LC_MESSAGES/messages.mo b/cps/translations/es/LC_MESSAGES/messages.mo index 45a52cbf..ccb9109a 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 f223b23e..156ba9ec 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-02-10 10:06+0100\n" +"POT-Creation-Date: 2024-04-27 07:20+0200\n" "PO-Revision-Date: 2020-05-25 17:22+0200\n" "Last-Translator: minakmostoles \n" "Language: es\n" @@ -25,502 +25,502 @@ msgstr "" msgid "Statistics" msgstr "Estadísticas" -#: cps/admin.py:149 +#: cps/admin.py:150 #, fuzzy msgid "Server restarted, please reload page." msgstr "Servidor reiniciado. Por favor, recargue la página" -#: cps/admin.py:151 +#: cps/admin.py:152 #, fuzzy msgid "Performing Server shutdown, please close window." msgstr "El servidor se está apagando. Por favor, cierre la ventana" -#: cps/admin.py:159 +#: cps/admin.py:160 msgid "Success! Database Reconnected" msgstr "" -#: cps/admin.py:162 +#: cps/admin.py:163 msgid "Unknown command" msgstr "Comando desconocido" -#: cps/admin.py:173 +#: cps/admin.py:174 #, fuzzy 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:206 cps/editbooks.py:589 cps/editbooks.py:591 -#: cps/editbooks.py:629 cps/editbooks.py:646 cps/editbooks.py:1262 +#: cps/admin.py:207 cps/editbooks.py:590 cps/editbooks.py:592 +#: cps/editbooks.py:630 cps/editbooks.py:647 cps/editbooks.py:1263 #: cps/updater.py:613 cps/uploader.py:93 cps/uploader.py:102 msgid "Unknown" msgstr "Desconocido" -#: cps/admin.py:231 +#: cps/admin.py:232 msgid "Admin page" msgstr "Página de administración" -#: cps/admin.py:251 +#: cps/admin.py:252 msgid "Basic Configuration" msgstr "Configuración básica" -#: cps/admin.py:289 +#: cps/admin.py:290 msgid "UI Configuration" msgstr "Configuración de la interfaz de usuario" -#: cps/admin.py:323 cps/templates/admin.html:51 +#: cps/admin.py:324 cps/templates/admin.html:51 #, fuzzy msgid "Edit Users" msgstr "Editar usuarios" -#: cps/admin.py:367 cps/opds.py:506 cps/templates/grid.html:14 +#: cps/admin.py:368 cps/opds.py:506 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "Todo" -#: cps/admin.py:394 cps/admin.py:1405 +#: cps/admin.py:395 cps/admin.py:1417 msgid "User not found" msgstr "Usuario no encontrado" -#: cps/admin.py:408 +#: cps/admin.py:409 msgid "{} users deleted successfully" msgstr "{} usuarios eliminados con éxito" -#: cps/admin.py:431 cps/templates/config_view_edit.html:133 +#: cps/admin.py:432 cps/templates/config_view_edit.html:133 #: cps/templates/user_edit.html:45 cps/templates/user_table.html:81 msgid "Show All" msgstr "Mostrar todo" -#: cps/admin.py:452 cps/admin.py:458 +#: cps/admin.py:453 cps/admin.py:459 msgid "Malformed request" msgstr "Petición mal formulada" -#: cps/admin.py:470 cps/admin.py:2033 +#: cps/admin.py:471 cps/admin.py:2048 msgid "Guest Name can't be changed" msgstr "El nombre de invitado no se puede cambiar" -#: cps/admin.py:482 +#: cps/admin.py:483 msgid "Guest can't have this role" msgstr "El invitado no puede tener ese rol" -#: cps/admin.py:494 cps/admin.py:1987 +#: cps/admin.py:495 cps/admin.py:2002 msgid "No admin user remaining, can't remove admin role" msgstr "No queda ningún usuario administrador, no se puede eliminar al usuario" -#: cps/admin.py:498 cps/admin.py:512 +#: cps/admin.py:499 cps/admin.py:513 msgid "Value has to be true or false" msgstr "Valor tiene que ser verdadero o falso" -#: cps/admin.py:500 +#: cps/admin.py:501 msgid "Invalid role" msgstr "Rol inválido" -#: cps/admin.py:504 +#: cps/admin.py:505 msgid "Guest can't have this view" msgstr "El invitado no puede tener esta vista" -#: cps/admin.py:514 +#: cps/admin.py:515 msgid "Invalid view" msgstr "Vista no válida" -#: cps/admin.py:517 +#: cps/admin.py:518 msgid "Guest's Locale is determined automatically and can't be set" msgstr "El sitio del invitado se determina automáticamente y no puede ser cambiado" -#: cps/admin.py:521 +#: cps/admin.py:522 msgid "No Valid Locale Given" msgstr "No hay un sitio válido" -#: cps/admin.py:532 +#: cps/admin.py:533 msgid "No Valid Book Language Given" msgstr "No se ha indicado un idioma válido para el libro" -#: cps/admin.py:534 cps/editbooks.py:455 +#: cps/admin.py:535 cps/editbooks.py:456 msgid "Parameter not found" msgstr "Parámetro no encontrado" -#: cps/admin.py:571 +#: cps/admin.py:572 msgid "Invalid Read Column" msgstr "Columna de lectura no válida" -#: cps/admin.py:577 +#: cps/admin.py:578 msgid "Invalid Restricted Column" msgstr "Columna restringida no válida" -#: cps/admin.py:597 cps/admin.py:1858 +#: cps/admin.py:598 cps/admin.py:1873 msgid "Calibre-Web configuration updated" msgstr "Configuración de Calibre-Web actualizada" -#: cps/admin.py:609 +#: cps/admin.py:610 msgid "Do you really want to delete the Kobo Token?" msgstr "¿Realmente quieres borrar el Token de Kobo?" -#: cps/admin.py:611 +#: cps/admin.py:612 msgid "Do you really want to delete this domain?" msgstr "¿Realmente deseas borrar este dominio?" -#: cps/admin.py:613 +#: cps/admin.py:614 msgid "Do you really want to delete this user?" msgstr "¿Realmente quieres borrar este usuario?" -#: cps/admin.py:615 +#: cps/admin.py:616 msgid "Are you sure you want to delete this shelf?" msgstr "¿Realmente quieres eliminar este estante?" -#: cps/admin.py:617 +#: cps/admin.py:618 #, fuzzy msgid "Are you sure you want to change locales of selected user(s)?" msgstr "¿Realmente quieres cambiar el idioma de los usuarios seleccionados?" -#: cps/admin.py:619 +#: cps/admin.py:620 msgid "Are you sure you want to change visible book languages for selected user(s)?" msgstr "¿Realmente quieres cambiar los idiomas visibles del libro de los usuarios seleccionados?" -#: cps/admin.py:621 +#: cps/admin.py:622 msgid "Are you sure you want to change the selected role for the selected user(s)?" msgstr "¿Realmente quieres cambiar el rol seleccionado de el usuario seleccionado?" -#: cps/admin.py:623 +#: cps/admin.py:624 #, fuzzy msgid "Are you sure you want to change the selected restrictions for the selected user(s)?" msgstr "¿Realmente quieres cambiar las restricciones de los usuarios seleccionados?" -#: cps/admin.py:625 +#: cps/admin.py:626 msgid "Are you sure you want to change the selected visibility restrictions for the selected user(s)?" msgstr "¿Realmente quieres cambiar las restricciones de visibilidad de los usuarios seleccionados?" -#: cps/admin.py:628 +#: cps/admin.py:629 #, fuzzy msgid "Are you sure you want to change shelf sync behavior for the selected user(s)?" msgstr "¿Realmente quieres cambiar el comportamiento de sincronización de estante del usuario seleccionado?" -#: cps/admin.py:630 +#: cps/admin.py:631 #, fuzzy msgid "Are you sure you want to change Calibre library location?" msgstr "¿Realmente quieres cambiar la ubicación de la biblioteca Calibre?" -#: cps/admin.py:632 +#: cps/admin.py:633 msgid "Calibre-Web will search for updated Covers and update Cover Thumbnails, this may take a while?" msgstr "" -#: cps/admin.py:635 +#: cps/admin.py:636 msgid "Are you sure you want delete Calibre-Web's sync database to force a full sync with your Kobo Reader?" msgstr "" -#: cps/admin.py:878 cps/admin.py:884 cps/admin.py:894 cps/admin.py:904 +#: cps/admin.py:879 cps/admin.py:885 cps/admin.py:895 cps/admin.py:905 #: cps/templates/modal_dialogs.html:29 cps/templates/user_table.html:41 #: cps/templates/user_table.html:58 msgid "Deny" msgstr "Denegar" -#: cps/admin.py:880 cps/admin.py:886 cps/admin.py:896 cps/admin.py:906 +#: cps/admin.py:881 cps/admin.py:887 cps/admin.py:897 cps/admin.py:907 #: cps/templates/modal_dialogs.html:28 cps/templates/user_table.html:44 #: cps/templates/user_table.html:61 msgid "Allow" msgstr "Permitir" -#: cps/admin.py:921 +#: cps/admin.py:940 msgid "{} sync entries deleted" msgstr "" -#: cps/admin.py:969 +#: cps/admin.py:981 msgid "Tag not found" msgstr "Etiqueta no encontrada" -#: cps/admin.py:981 +#: cps/admin.py:993 msgid "Invalid Action" msgstr "Acción no válida" -#: cps/admin.py:1111 +#: cps/admin.py:1123 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:1156 +#: cps/admin.py:1168 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:1162 +#: cps/admin.py:1174 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:1196 +#: cps/admin.py:1208 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:1202 +#: cps/admin.py:1214 #, 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:1205 +#: cps/admin.py:1217 msgid "Please Enter a LDAP Service Account" msgstr "Por favor, introduce una cuenta de servicio LDAP" -#: cps/admin.py:1210 +#: cps/admin.py:1222 #, 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:1212 +#: cps/admin.py:1224 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "El LDAP Group Object Filter tiene un paréntesis diferente" -#: cps/admin.py:1216 +#: cps/admin.py:1228 #, 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:1218 +#: cps/admin.py:1230 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "El LDAP Group Object Filter tiene un paréntesis diferente" -#: cps/admin.py:1225 +#: cps/admin.py:1237 #, 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:1227 +#: cps/admin.py:1239 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "El filtro de LDAP \"Member User\" tiene paréntesis no coincidentes" -#: cps/admin.py:1234 +#: cps/admin.py:1246 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:1265 cps/templates/admin.html:53 +#: cps/admin.py:1277 cps/templates/admin.html:53 msgid "Add New User" msgstr "Añadir nuevo usuario" -#: cps/admin.py:1274 cps/templates/admin.html:100 +#: cps/admin.py:1286 cps/templates/admin.html:100 msgid "Edit Email Server Settings" msgstr "Cambiar parámetros de correo" -#: cps/admin.py:1293 +#: cps/admin.py:1305 msgid "Success! Gmail Account Verified." msgstr "" -#: cps/admin.py:1313 cps/admin.py:1316 cps/admin.py:1698 cps/admin.py:1842 -#: cps/admin.py:1940 cps/admin.py:2061 cps/editbooks.py:241 -#: cps/editbooks.py:317 cps/editbooks.py:1224 cps/shelf.py:90 cps/shelf.py:150 +#: cps/admin.py:1325 cps/admin.py:1328 cps/admin.py:1710 cps/admin.py:1857 +#: cps/admin.py:1955 cps/admin.py:2076 cps/editbooks.py:242 +#: cps/editbooks.py:318 cps/editbooks.py:1225 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:149 cps/web.py:1496 +#: cps/shelf.py:468 cps/tasks/convert.py:150 cps/web.py:1520 #, python-format msgid "Oops! Database Error: %(error)s." msgstr "Error en la base de datos: %(error)s." -#: cps/admin.py:1323 +#: cps/admin.py:1335 #, 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:1326 +#: cps/admin.py:1338 #, 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:1328 +#: cps/admin.py:1340 msgid "Please configure your e-mail address first..." msgstr "Por favor, configure su correo electrónico primero..." -#: cps/admin.py:1330 +#: cps/admin.py:1342 msgid "Email Server Settings updated" msgstr "Actualizados los ajustes del servidor de correo electrónico" -#: cps/admin.py:1353 cps/templates/admin.html:195 +#: cps/admin.py:1365 cps/templates/admin.html:195 msgid "Edit Scheduled Tasks Settings" msgstr "" -#: cps/admin.py:1365 +#: cps/admin.py:1377 msgid "Invalid start time for task specified" msgstr "" -#: cps/admin.py:1370 +#: cps/admin.py:1382 msgid "Invalid duration for task specified" msgstr "" -#: cps/admin.py:1380 +#: cps/admin.py:1392 msgid "Scheduled tasks settings updated" msgstr "" -#: cps/admin.py:1390 cps/admin.py:1439 cps/admin.py:2057 cps/web.py:1296 +#: cps/admin.py:1402 cps/admin.py:1451 cps/admin.py:2072 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:1394 +#: cps/admin.py:1406 msgid "Settings DB is not Writeable" msgstr "" -#: cps/admin.py:1424 cps/admin.py:2049 +#: cps/admin.py:1436 cps/admin.py:2064 #, python-format msgid "Edit User %(nick)s" msgstr "Editar Usuario %(nick)s" -#: cps/admin.py:1436 +#: cps/admin.py:1448 #, fuzzy, python-format msgid "Success! Password for user %(user)s reset" msgstr "Contraseña para el usuario %(user)s reinicializada" -#: cps/admin.py:1442 +#: cps/admin.py:1454 #, fuzzy msgid "Oops! Please configure the SMTP mail settings." msgstr "Configura primero los parámetros del servidor SMTP..." -#: cps/admin.py:1453 +#: cps/admin.py:1465 msgid "Logfile viewer" msgstr "Visor del fichero de log" -#: cps/admin.py:1519 +#: cps/admin.py:1531 msgid "Requesting update package" msgstr "Solicitando paquete de actualización" -#: cps/admin.py:1520 +#: cps/admin.py:1532 msgid "Downloading update package" msgstr "Descargando paquete de actualización" -#: cps/admin.py:1521 +#: cps/admin.py:1533 msgid "Unzipping update package" msgstr "Descomprimiendo paquete de actualización" -#: cps/admin.py:1522 +#: cps/admin.py:1534 msgid "Replacing files" msgstr "Remplazando archivos" -#: cps/admin.py:1523 +#: cps/admin.py:1535 msgid "Database connections are closed" msgstr "Los conexiones con la base datos están cerradas" -#: cps/admin.py:1524 +#: cps/admin.py:1536 msgid "Stopping server" msgstr "Parando el servidor" -#: cps/admin.py:1525 +#: cps/admin.py:1537 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:1526 cps/admin.py:1527 cps/admin.py:1528 cps/admin.py:1529 -#: cps/admin.py:1530 cps/admin.py:1531 +#: cps/admin.py:1538 cps/admin.py:1539 cps/admin.py:1540 cps/admin.py:1541 +#: cps/admin.py:1542 cps/admin.py:1543 msgid "Update failed:" msgstr "Falló la actualización:" -#: cps/admin.py:1526 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 +#: cps/admin.py:1538 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 msgid "HTTP Error" msgstr "Error HTTP" -#: cps/admin.py:1527 cps/updater.py:391 cps/updater.py:628 +#: cps/admin.py:1539 cps/updater.py:391 cps/updater.py:628 msgid "Connection error" msgstr "Error de conexión" -#: cps/admin.py:1528 cps/updater.py:393 cps/updater.py:630 +#: cps/admin.py:1540 cps/updater.py:393 cps/updater.py:630 msgid "Timeout while establishing connection" msgstr "Tiempo agotado mientras se trataba de establecer la conexión" -#: cps/admin.py:1529 cps/updater.py:395 cps/updater.py:632 +#: cps/admin.py:1541 cps/updater.py:395 cps/updater.py:632 msgid "General error" msgstr "Error general" -#: cps/admin.py:1530 +#: cps/admin.py:1542 #, 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:1531 +#: cps/admin.py:1543 msgid "Files could not be replaced during update" msgstr "" -#: cps/admin.py:1555 +#: cps/admin.py:1567 #, fuzzy msgid "Failed to extract at least One LDAP User" msgstr "Error al crear al menos un usuario LDAP" -#: cps/admin.py:1600 +#: cps/admin.py:1612 msgid "Failed to Create at Least One LDAP User" msgstr "Error al crear al menos un usuario LDAP" -#: cps/admin.py:1613 +#: cps/admin.py:1625 #, python-format msgid "Error: %(ldaperror)s" msgstr "Error: %(ldaperror)s" -#: cps/admin.py:1617 +#: cps/admin.py:1629 msgid "Error: No user returned in response of LDAP server" msgstr "Error: el servidor LDAP no ha devuelto ningún usuario" -#: cps/admin.py:1650 +#: 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:1652 +#: cps/admin.py:1664 msgid "{} User Successfully Imported" msgstr "{} Usuario importado con éxito" -#: cps/admin.py:1710 +#: 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:1730 +#: cps/admin.py:1742 msgid "DB is not Writeable" msgstr "La base de datos no es modificable" -#: cps/admin.py:1746 +#: 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:1750 +#: 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:1829 +#: cps/admin.py:1842 msgid "Password length has to be between 1 and 40" msgstr "" -#: cps/admin.py:1881 +#: cps/admin.py:1896 #, fuzzy msgid "Database Settings updated" msgstr "Actualizados los ajustes del servidor de correo electrónico" -#: cps/admin.py:1889 +#: cps/admin.py:1904 #, fuzzy msgid "Database Configuration" msgstr "Configuración de la base de datos" -#: cps/admin.py:1904 cps/web.py:1270 +#: cps/admin.py:1919 cps/web.py:1290 msgid "Oops! Please complete all fields." msgstr "¡Por favor, rellena todos los campos!" -#: cps/admin.py:1913 +#: cps/admin.py:1928 msgid "E-mail is not from valid domain" msgstr "El correo electrónico no tiene un dominio válido" -#: cps/admin.py:1919 +#: cps/admin.py:1934 msgid "Add new user" msgstr "Añadir un nuevo usuario" -#: cps/admin.py:1930 +#: cps/admin.py:1945 #, python-format msgid "User '%(user)s' created" msgstr "Usuario '%(user)s' creado" -#: cps/admin.py:1936 +#: cps/admin.py:1951 #, 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:1966 +#: cps/admin.py:1981 #, python-format msgid "User '%(nick)s' deleted" msgstr "Usuario '%(nick)s' eliminado" -#: cps/admin.py:1969 +#: cps/admin.py:1984 msgid "Can't delete Guest User" msgstr "No puedes borrar al Usuario Invitado" -#: cps/admin.py:1972 +#: cps/admin.py:1987 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:2027 cps/web.py:1445 +#: cps/admin.py:2042 cps/web.py:1469 msgid "Email can't be empty and has to be a valid Email" msgstr "" -#: cps/admin.py:2053 +#: cps/admin.py:2068 #, python-format msgid "User '%(nick)s' updated" msgstr "Usuario '%(nick)s' actualizado" @@ -533,122 +533,123 @@ msgstr "no instalado" msgid "Execution permissions missing" msgstr "Faltan permisos de ejecución" -#: cps/db.py:752 cps/search.py:137 cps/web.py:731 +#: cps/db.py:752 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:993 cps/templates/config_edit.html:208 +#: cps/db.py:992 cps/templates/config_edit.html:208 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 -#: cps/web.py:558 cps/web.py:592 cps/web.py:665 cps/web.py:692 cps/web.py:973 -#: cps/web.py:1003 cps/web.py:1048 cps/web.py:1076 cps/web.py:1115 +#: 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 +#: cps/web.py:1131 msgid "None" msgstr "Ninguno" -#: cps/editbooks.py:122 cps/editbooks.py:910 cps/web.py:525 cps/web.py:1537 -#: cps/web.py:1581 cps/web.py:1626 +#: cps/editbooks.py:123 cps/editbooks.py:911 cps/web.py:529 cps/web.py:1561 +#: cps/web.py:1605 cps/web.py:1650 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:166 cps/editbooks.py:1245 +#: cps/editbooks.py:167 cps/editbooks.py:1246 msgid "User has no rights to upload cover" msgstr "" -#: cps/editbooks.py:186 cps/editbooks.py:731 +#: cps/editbooks.py:187 cps/editbooks.py:732 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:228 +#: cps/editbooks.py:229 msgid "Metadata successfully updated" msgstr "Metadatos actualizados con éxito" -#: cps/editbooks.py:246 +#: cps/editbooks.py:247 msgid "Error editing book: {}" msgstr "" -#: cps/editbooks.py:303 +#: cps/editbooks.py:304 #, python-format msgid "File %(file)s uploaded" msgstr "El fichero %(file)s ha sido subido" -#: cps/editbooks.py:331 +#: cps/editbooks.py:332 msgid "Source or destination format for conversion missing" msgstr "Falta la fuente o el formato de destino para la conversión" -#: cps/editbooks.py:339 +#: cps/editbooks.py:340 #, 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:343 +#: cps/editbooks.py:344 #, 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:650 +#: cps/editbooks.py:651 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:705 cps/editbooks.py:1037 +#: cps/editbooks.py:706 cps/editbooks.py:1038 #, fuzzy, python-format msgid "'%(langname)s' is not a valid language" msgstr "%(langname)s no es un idioma válido" -#: cps/editbooks.py:743 cps/editbooks.py:1185 +#: cps/editbooks.py:744 cps/editbooks.py:1186 #, 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:747 cps/editbooks.py:1189 +#: cps/editbooks.py:748 cps/editbooks.py:1190 msgid "File to be uploaded must have an extension" msgstr "El archivo a subir debe tener una extensión" -#: cps/editbooks.py:755 +#: cps/editbooks.py:756 #, 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:775 +#: cps/editbooks.py:776 #, 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:832 cps/editbooks.py:834 +#: cps/editbooks.py:833 cps/editbooks.py:835 msgid "Book Format Successfully Deleted" msgstr "Formato de libro eliminado con éxito" -#: cps/editbooks.py:841 cps/editbooks.py:843 +#: cps/editbooks.py:842 cps/editbooks.py:844 msgid "Book Successfully Deleted" msgstr "Libro eliminado con éxito" -#: cps/editbooks.py:895 +#: cps/editbooks.py:896 msgid "You are missing permissions to delete books" msgstr "" -#: cps/editbooks.py:945 +#: cps/editbooks.py:946 msgid "edit metadata" msgstr "editar metadatos" -#: cps/editbooks.py:994 +#: cps/editbooks.py:995 #, python-format msgid "%(seriesindex)s is not a valid number, skipping" msgstr "%(seriesindex) no es un número válido, saltando" -#: cps/editbooks.py:1180 +#: cps/editbooks.py:1181 msgid "User has no rights to upload additional file formats" msgstr "" -#: cps/editbooks.py:1201 +#: cps/editbooks.py:1202 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "Fallo al crear la ruta %(path)s (permiso denegado)" -#: cps/editbooks.py:1206 +#: cps/editbooks.py:1207 #, python-format msgid "Failed to store file %(file)s." msgstr "Fallo al guardar el archivo %(file)s." -#: cps/editbooks.py:1230 +#: cps/editbooks.py:1231 #, python-format msgid "File format %(ext)s added to %(book)s" msgstr "Archivo con formato %(ext)s añadido a %(book)s" @@ -661,208 +662,208 @@ msgstr "La configuración de Google Drive no se ha completado, intente desactiva 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" -#: cps/helper.py:84 +#: cps/helper.py:86 #, python-format 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:91 cps/tasks/convert.py:86 +#: cps/helper.py:93 cps/tasks/convert.py:86 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "%(format)s no encontrado en Google Drive: %(fn)s" -#: cps/helper.py:96 +#: cps/helper.py:98 #, python-format msgid "%(format)s not found: %(fn)s" msgstr "%(format)s no encontrado: %(fn)s" -#: cps/helper.py:101 cps/helper.py:226 cps/templates/detail.html:58 +#: cps/helper.py:103 cps/helper.py:228 cps/templates/detail.html:58 #, fuzzy msgid "Send to eReader" msgstr "Enviar al Kindle" -#: cps/helper.py:102 cps/helper.py:120 cps/helper.py:228 +#: cps/helper.py:104 cps/helper.py:122 cps/helper.py:230 #, fuzzy msgid "This Email has been sent via Calibre-Web." msgstr "Este correo electrónico ha sido enviado usando Calibre-Web." -#: cps/helper.py:118 +#: cps/helper.py:120 #, fuzzy msgid "Calibre-Web Test Email" msgstr "Correo de prueba de Calibre-Web" -#: cps/helper.py:119 +#: cps/helper.py:121 #, fuzzy msgid "Test Email" msgstr "Comprobar correo electrónico" -#: cps/helper.py:136 +#: cps/helper.py:138 msgid "Get Started with Calibre-Web" msgstr "Primeros pasos con Calibre-Web" -#: cps/helper.py:141 +#: cps/helper.py:143 #, fuzzy, python-format msgid "Registration Email for user: %(name)s" msgstr "Correo electrónico de registro para el usuario: %(name)s" -#: cps/helper.py:152 cps/helper.py:158 +#: cps/helper.py:154 cps/helper.py:160 #, fuzzy, python-format msgid "Convert %(orig)s to %(format)s and send to eReader" msgstr "Convertir %(orig)s a %(format)s y enviar al Kindle" -#: cps/helper.py:177 cps/helper.py:181 cps/helper.py:185 +#: cps/helper.py:179 cps/helper.py:183 cps/helper.py:187 #, fuzzy, python-format msgid "Send %(format)s to eReader" msgstr "Enviado %(format)s al Kindle" -#: cps/helper.py:225 +#: cps/helper.py:227 #, fuzzy, python-format msgid "%(book)s send to eReader" msgstr "Enviar al Kindle" -#: cps/helper.py:230 +#: cps/helper.py:232 msgid "The requested file could not be read. Maybe wrong permissions?" msgstr "El archivo solicitado no puede ser leído. ¿Quizás existen problemas con los permisos?" -#: cps/helper.py:345 +#: cps/helper.py:347 msgid "Read status could not set: {}" msgstr "" -#: cps/helper.py:368 +#: cps/helper.py:370 #, python-format msgid "Deleting bookfolder for book %(id)s failed, path has subfolders: %(path)s" msgstr "Fallo al intentar borrar la carpeta del libro %(id)s, la ruta tiene subcarpetas: %(path)s" -#: cps/helper.py:374 +#: cps/helper.py:376 #, python-format msgid "Deleting book %(id)s failed: %(message)s" msgstr "El eliminado del libro %(id)s falló: %(message)s" -#: cps/helper.py:385 +#: cps/helper.py:387 #, fuzzy, python-format 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:450 +#: cps/helper.py:452 #, 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:522 cps/helper.py:531 +#: cps/helper.py:524 cps/helper.py:533 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "Fichero %(file)s no encontrado en Google Drive" -#: cps/helper.py:565 +#: cps/helper.py:567 #, 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:585 +#: cps/helper.py:587 msgid "Error in rename file in path: {}" msgstr "" -#: cps/helper.py:603 +#: cps/helper.py:605 #, 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:668 +#: cps/helper.py:670 msgid "Found an existing account for this Email address" msgstr "" -#: cps/helper.py:676 +#: cps/helper.py:678 msgid "This username is already taken" msgstr "Este nombre de usuario ya está en uso" -#: cps/helper.py:688 +#: cps/helper.py:690 #, fuzzy msgid "Invalid Email address format" msgstr "Dirección de correo no válida" -#: cps/helper.py:706 +#: cps/helper.py:710 msgid "Password doesn't comply with password validation rules" msgstr "" -#: cps/helper.py:855 +#: cps/helper.py:859 msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "" -#: cps/helper.py:865 +#: cps/helper.py:869 msgid "Error Downloading Cover" msgstr "Error al descargar la cubierta" -#: cps/helper.py:868 +#: cps/helper.py:872 msgid "Cover Format Error" msgstr "Error en el formato de la cubierta" -#: cps/helper.py:871 +#: cps/helper.py:875 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "" -#: cps/helper.py:881 +#: cps/helper.py:885 msgid "Failed to create path for cover" msgstr "Error al crear una ruta para la cubierta" -#: cps/helper.py:897 +#: cps/helper.py:901 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:908 +#: cps/helper.py:912 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:920 +#: cps/helper.py:924 msgid "Invalid cover file content" msgstr "" -#: cps/helper.py:924 +#: cps/helper.py:928 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "Sólo se admiten como portada los archivos jpg/jpeg" -#: cps/helper.py:995 cps/helper.py:1183 +#: cps/helper.py:999 cps/helper.py:1156 #, fuzzy msgid "Cover" msgstr "Descubrir" -#: cps/helper.py:1032 +#: cps/helper.py:1016 msgid "Unrar binary file not found" msgstr "No se encuentra el archivo binario UnRar" -#: cps/helper.py:1043 +#: cps/helper.py:1027 #, fuzzy msgid "Error executing UnRar" msgstr "Error ejecutando UnRar" -#: cps/helper.py:1051 +#: cps/helper.py:1035 msgid "Could not find the specified directory" msgstr "" -#: cps/helper.py:1054 +#: cps/helper.py:1038 msgid "Please specify a directory, not a file" msgstr "" -#: cps/helper.py:1068 +#: cps/helper.py:1052 #, fuzzy msgid "Calibre binaries not viable" msgstr "La base de datos no es modificable" -#: cps/helper.py:1077 +#: cps/helper.py:1061 #, python-format msgid "Missing calibre binaries: %(missing)s" msgstr "" -#: cps/helper.py:1079 +#: cps/helper.py:1063 #, fuzzy, python-format msgid "Missing executable permissions: %(missing)s" msgstr "Faltan permisos de ejecución" -#: cps/helper.py:1084 +#: cps/helper.py:1068 #, fuzzy msgid "Error excecuting Calibre" msgstr "Error ejecutando UnRar" -#: cps/helper.py:1185 cps/templates/admin.html:216 +#: cps/helper.py:1158 cps/templates/admin.html:216 msgid "Queue all books for metadata backup" msgstr "" @@ -947,7 +948,7 @@ msgstr "{} Estrellas" #: cps/remotelogin.py:62 cps/templates/layout.html:67 #: cps/templates/layout.html:101 cps/templates/login.html:4 -#: cps/templates/login.html:21 cps/web.py:1333 +#: cps/templates/login.html:21 cps/web.py:1353 msgid "Login" msgstr "Inicio de sesión" @@ -963,7 +964,7 @@ msgstr "El token ha expirado" msgid "Success! Please return to your device" msgstr "¡Correcto! Por favor regrese a su dispositivo" -#: cps/render_template.py:42 cps/web.py:414 +#: cps/render_template.py:42 cps/web.py:418 msgid "Books" msgstr "Libros" @@ -988,7 +989,7 @@ msgstr "Libros Descargados" msgid "Show Downloaded Books" msgstr "Mostrar Libros Descargados" -#: cps/render_template.py:59 cps/templates/index.xml:33 cps/web.py:429 +#: cps/render_template.py:59 cps/templates/index.xml:33 cps/web.py:433 msgid "Top Rated Books" msgstr "Libros mejor valorados" @@ -997,7 +998,7 @@ msgid "Show Top Rated Books" msgstr "Mostrar libros mejor valorados" #: cps/render_template.py:62 cps/templates/index.xml:55 -#: cps/templates/index.xml:59 cps/web.py:750 +#: cps/templates/index.xml:59 cps/web.py:766 msgid "Read Books" msgstr "Libros leídos" @@ -1007,7 +1008,7 @@ msgid "Show Read and Unread" msgstr "Mostrar leídos y no leídos" #: cps/render_template.py:66 cps/templates/index.xml:62 -#: cps/templates/index.xml:66 cps/web.py:753 +#: cps/templates/index.xml:66 cps/web.py:769 msgid "Unread Books" msgstr "Libros no leídos" @@ -1025,7 +1026,7 @@ msgid "Show Random Books" msgstr "Mostrar libros al azar" #: cps/render_template.py:72 cps/templates/book_table.html:67 -#: cps/templates/index.xml:84 cps/web.py:1119 +#: cps/templates/index.xml:84 cps/web.py:1135 msgid "Categories" msgstr "Categorías" @@ -1036,7 +1037,7 @@ msgstr "Mostrar selección de categorías" #: cps/render_template.py:75 cps/templates/book_edit.html:91 #: cps/templates/book_table.html:68 cps/templates/index.xml:91 -#: cps/templates/search_form.html:70 cps/web.py:1009 cps/web.py:1021 +#: cps/templates/search_form.html:70 cps/web.py:1025 cps/web.py:1037 msgid "Series" msgstr "Series" @@ -1056,7 +1057,7 @@ msgid "Show Author Section" msgstr "Mostrar selección de autores" #: cps/render_template.py:82 cps/templates/book_table.html:72 -#: cps/templates/index.xml:77 cps/web.py:977 +#: cps/templates/index.xml:77 cps/web.py:993 msgid "Publishers" msgstr "Editores" @@ -1067,7 +1068,7 @@ msgstr "Mostrar selección de editores" #: cps/render_template.py:85 cps/templates/book_table.html:70 #: cps/templates/index.xml:98 cps/templates/search_form.html:108 -#: cps/web.py:1091 +#: cps/web.py:1107 msgid "Languages" msgstr "Idiomas" @@ -1094,7 +1095,7 @@ msgstr "Formatos de archivo" msgid "Show File Formats Section" msgstr "Mostrar selección de formatos de archivo" -#: cps/render_template.py:96 cps/web.py:776 +#: cps/render_template.py:96 cps/web.py:792 msgid "Archived Books" msgstr "Libros archivados" @@ -1103,7 +1104,7 @@ msgstr "Libros archivados" msgid "Show Archived Books" msgstr "Mostrar libros archivados" -#: cps/render_template.py:101 cps/web.py:807 +#: cps/render_template.py:101 cps/web.py:823 msgid "Books List" msgstr "Lista de Libros" @@ -1327,173 +1328,178 @@ msgstr "Hay una nueva actualización disponible. Haz clic en el botón de abajo msgid "No release information available" msgstr "No hay información del lanzamiento disponible" -#: cps/templates/index.html:6 cps/web.py:441 +#: cps/templates/index.html:6 cps/web.py:445 msgid "Discover (Random Books)" msgstr "Descubrir (Libros al azar)" -#: cps/web.py:477 +#: cps/web.py:481 msgid "Hot Books (Most Downloaded)" msgstr "Libros populares (los más descargados)" -#: cps/web.py:508 +#: cps/web.py:512 #, python-format msgid "Downloaded books by %(user)s" msgstr "Libros descargados por %(user)s" -#: cps/web.py:541 +#: cps/web.py:545 #, python-format msgid "Author: %(name)s" msgstr "Autor/es: %(name)s" -#: cps/web.py:577 +#: cps/web.py:581 #, python-format msgid "Publisher: %(name)s" msgstr "Editor/es: %(name)s" -#: cps/web.py:605 +#: cps/web.py:609 #, python-format msgid "Series: %(serie)s" msgstr "Series: %(serie)s" -#: cps/web.py:620 +#: cps/web.py:623 msgid "Rating: None" msgstr "" -#: cps/web.py:629 +#: cps/web.py:632 #, python-format msgid "Rating: %(rating)s stars" msgstr "Calificación: %(rating)s estrellas" -#: cps/web.py:645 +#: cps/web.py:663 #, python-format msgid "File format: %(format)s" msgstr "Formato del archivo: %(format)s" -#: cps/web.py:682 +#: cps/web.py:698 #, python-format msgid "Category: %(name)s" msgstr "Categoría : %(name)s" -#: cps/web.py:711 +#: cps/web.py:727 #, python-format msgid "Language: %(name)s" msgstr "Idioma: %(name)s" -#: cps/templates/admin.html:16 cps/web.py:949 +#: cps/templates/admin.html:16 cps/web.py:965 msgid "Downloads" msgstr "Descargas" -#: cps/web.py:1051 +#: cps/web.py:1067 msgid "Ratings list" msgstr "Lista de calificaciones" -#: cps/web.py:1078 +#: cps/web.py:1094 msgid "File formats list" msgstr "Lista de formatos" -#: cps/web.py:1233 +#: cps/web.py:1249 #, fuzzy msgid "Please configure the SMTP mail settings first..." msgstr "Configura primero los parámetros del servidor SMTP..." -#: cps/web.py:1240 +#: cps/web.py:1256 #, python-format msgid "Success! Book queued for sending to %(eReadermail)s" msgstr "Libro puesto en la cola de envío a %(eReadermail)s" -#: cps/web.py:1243 +#: cps/web.py:1259 #, python-format msgid "Oops! There was an error sending book: %(res)s" msgstr "Ha sucedido un error en el envío del libro: %(res)s" -#: cps/web.py:1245 +#: cps/web.py:1261 #, fuzzy msgid "Oops! Please update your profile with a valid eReader Email." msgstr "Por favor actualiza tu perfil con la dirección de correo de su kindle..." -#: cps/web.py:1261 +#: cps/web.py:1277 msgid "Please wait one minute to register next user" msgstr "" #: cps/templates/layout.html:68 cps/templates/layout.html:102 -#: cps/templates/login.html:27 cps/templates/register.html:17 cps/web.py:1262 -#: cps/web.py:1267 cps/web.py:1271 cps/web.py:1277 cps/web.py:1297 -#: cps/web.py:1301 cps/web.py:1314 cps/web.py:1317 +#: cps/templates/login.html:27 cps/templates/register.html:17 cps/web.py:1278 +#: cps/web.py:1282 cps/web.py:1287 cps/web.py:1291 cps/web.py:1297 +#: cps/web.py:1317 cps/web.py:1321 cps/web.py:1334 cps/web.py:1337 msgid "Register" msgstr "Registro" -#: cps/web.py:1266 cps/web.py:1313 +#: cps/web.py:1281 cps/web.py:1385 +#, fuzzy +msgid "Connection error to limiter backend, please contact your administrator" +msgstr "El servidor de correo no está configurado, por favor, ¡avisa a tu administrador!" + +#: cps/web.py:1286 cps/web.py:1333 msgid "Oops! Email server is not configured, please contact your administrator." msgstr "El servidor de correo no está configurado, por favor, ¡avisa a tu administrador!" -#: cps/web.py:1299 +#: cps/web.py:1319 msgid "Oops! Your Email is not allowed." msgstr "Su correo electrónico no está permitido para registrarse" -#: cps/web.py:1302 +#: cps/web.py:1322 msgid "Success! Confirmation Email has been sent." msgstr "Se ha enviado un correo electrónico de verificación a su cuenta de correo." -#: cps/web.py:1348 cps/web.py:1367 +#: cps/web.py:1368 cps/web.py:1391 #, fuzzy msgid "Cannot activate LDAP authentication" msgstr "No se puede activar la autenticación LDAP" -#: cps/web.py:1361 +#: cps/web.py:1381 msgid "Please wait one minute before next login" msgstr "" -#: cps/web.py:1376 +#: cps/web.py:1400 #, fuzzy, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "has iniciado sesión como : '%(nickname)s'" -#: cps/web.py:1383 +#: cps/web.py:1407 #, fuzzy, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgstr "Fallback login como: '%(nickname)s', no se puede acceder al servidor LDAP o usuario desconocido" -#: cps/web.py:1388 +#: cps/web.py:1412 #, fuzzy, python-format msgid "Could not login: %(message)s" msgstr "No se pudo entrar: %(message)s" -#: cps/web.py:1392 cps/web.py:1417 +#: cps/web.py:1416 cps/web.py:1441 #, fuzzy msgid "Wrong Username or Password" msgstr "Usuario o contraseña inválido" -#: cps/web.py:1399 +#: cps/web.py:1423 #, fuzzy msgid "New Password was sent to your email address" msgstr "Una nueva contraseña se ha enviado a su cuenta de correo electrónico" -#: cps/web.py:1403 +#: cps/web.py:1427 #, fuzzy msgid "An unknown error occurred. Please try again later." msgstr "Ha ocurrido un error desconocido. Por favor vuelva a intentarlo más tarde." -#: cps/web.py:1405 +#: cps/web.py:1429 #, fuzzy msgid "Please enter valid username to reset password" msgstr "Por favor, introduce un usuario válido para restablecer la contraseña" -#: cps/web.py:1413 +#: cps/web.py:1437 #, fuzzy, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "has iniciado sesión como : '%(nickname)s'" -#: cps/web.py:1471 cps/web.py:1521 +#: cps/web.py:1495 cps/web.py:1545 #, python-format msgid "%(name)s's Profile" msgstr "Perfil de %(name)s" -#: cps/web.py:1487 +#: cps/web.py:1511 #, fuzzy msgid "Success! Profile Updated" msgstr "Perfil actualizado" -#: cps/web.py:1491 +#: cps/web.py:1515 #, fuzzy msgid "Oops! An account already exists for this Email." msgstr "Encontrada una cuenta existente para esa dirección de correo electrónico" @@ -1507,41 +1513,41 @@ msgstr "No se ha encontrado ningún archivo gmail.json válido con información msgid "%(book)s send to E-Reader" msgstr "Enviar al Kindle" -#: cps/tasks/convert.py:166 +#: cps/tasks/convert.py:167 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "Calibre ebook-convert %(tool)s no encontrado" -#: cps/tasks/convert.py:200 +#: cps/tasks/convert.py:201 #, python-format msgid "%(format)s format not found on disk" msgstr "%(format)s format no encontrado en disco" -#: cps/tasks/convert.py:204 +#: cps/tasks/convert.py:205 msgid "Ebook converter failed with unknown error" msgstr "El conversor de Ebook falló con un error desconocido" -#: cps/tasks/convert.py:223 +#: cps/tasks/convert.py:224 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "Kepubify-converter falló: %(error)s" -#: cps/tasks/convert.py:244 +#: cps/tasks/convert.py:245 #, 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:279 +#: cps/tasks/convert.py:287 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "Falló Ebook-converter: %(error)s" -#: cps/tasks/convert.py:302 +#: cps/tasks/convert.py:310 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "Calibre falló con el error: %(error)s" -#: cps/tasks/convert.py:307 +#: cps/tasks/convert.py:315 msgid "Convert" msgstr "" @@ -1549,7 +1555,7 @@ msgstr "" msgid "Reconnecting Calibre database" msgstr "" -#: cps/tasks/mail.py:269 +#: cps/tasks/mail.py:278 msgid "E-mail" msgstr "" @@ -1829,12 +1835,12 @@ 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:414 -#: cps/templates/config_view_edit.html:175 cps/templates/modal_dialogs.html:64 -#: cps/templates/modal_dialogs.html:99 cps/templates/modal_dialogs.html:117 -#: cps/templates/modal_dialogs.html:135 cps/templates/schedule_edit.html:45 -#: cps/templates/shelf_edit.html:27 cps/templates/tasks.html:46 -#: cps/templates/user_edit.html:144 +#: cps/templates/config_db.html:66 cps/templates/config_edit.html:428 +#: 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 +#: cps/templates/schedule_edit.html:45 cps/templates/shelf_edit.html:27 +#: cps/templates/tasks.html:46 cps/templates/user_edit.html:144 msgid "Cancel" msgstr "Cancelar" @@ -2015,7 +2021,7 @@ msgid "Fetch Metadata" msgstr "Obtener metadatos" #: cps/templates/book_edit.html:213 cps/templates/config_db.html:65 -#: cps/templates/config_edit.html:413 cps/templates/config_view_edit.html:174 +#: cps/templates/config_edit.html:427 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 @@ -2183,7 +2189,7 @@ msgid "Location of Calibre Database" msgstr "Ubicación de la base de datos Calibre" #: cps/templates/config_db.html:21 -msgid "Separate Book files from Library (Highly experimental, might not work at all)" +msgid "Separate Book Files from Library" msgstr "" #: cps/templates/config_db.html:34 @@ -2268,7 +2274,7 @@ msgid "Convert non-English characters in title and author while saving to disk" msgstr "" #: cps/templates/config_edit.html:108 -msgid "Embed Metadata to Ebook File on Download and Conversion (needs Calibre/Kepubify binaries)" +msgid "Embed Metadata to Ebook File on Download/Conversion/e-mail (needs Calibre/Kepubify binaries)" msgstr "" #: cps/templates/config_edit.html:112 @@ -2492,40 +2498,52 @@ msgstr "Ajustes OAuth" msgid "Limit failed login attempts" msgstr "" -#: cps/templates/config_edit.html:376 +#: cps/templates/config_edit.html:377 +msgid "Configure Backend for Limiter" +msgstr "" + +#: cps/templates/config_edit.html:381 +msgid "Options for Limiter" +msgstr "" + +#: cps/templates/config_edit.html:386 msgid "Session protection" msgstr "" -#: cps/templates/config_edit.html:378 +#: cps/templates/config_edit.html:388 msgid "Basic" msgstr "" -#: cps/templates/config_edit.html:379 +#: cps/templates/config_edit.html:389 msgid "Strong" msgstr "" -#: cps/templates/config_edit.html:384 +#: cps/templates/config_edit.html:394 #, fuzzy msgid "User Password policy" msgstr "Resetear contraseña de usuario" -#: cps/templates/config_edit.html:388 +#: cps/templates/config_edit.html:398 msgid "Minimum password length" msgstr "" -#: cps/templates/config_edit.html:393 +#: cps/templates/config_edit.html:403 msgid "Enforce number" msgstr "" -#: cps/templates/config_edit.html:397 +#: cps/templates/config_edit.html:407 msgid "Enforce lowercase characters" msgstr "" -#: cps/templates/config_edit.html:401 +#: cps/templates/config_edit.html:411 msgid "Enforce uppercase characters" msgstr "" -#: cps/templates/config_edit.html:405 +#: cps/templates/config_edit.html:415 +msgid "Enforce characters (needed For Chinese/Japanese/Korean Characters)" +msgstr "" + +#: cps/templates/config_edit.html:419 msgid "Enforce special characters" msgstr "" @@ -2649,47 +2667,47 @@ msgstr "" msgid "Published" msgstr "Publicado" -#: cps/templates/detail.html:250 cps/templates/listenmp3.html:158 +#: cps/templates/detail.html:251 cps/templates/listenmp3.html:158 msgid "Mark As Unread" msgstr "Marcar como no leido" -#: cps/templates/detail.html:251 cps/templates/listenmp3.html:158 +#: cps/templates/detail.html:252 cps/templates/listenmp3.html:158 msgid "Mark As Read" msgstr "Marcar como leido" -#: cps/templates/detail.html:253 cps/templates/listenmp3.html:159 +#: cps/templates/detail.html:254 cps/templates/listenmp3.html:159 msgid "Read" msgstr "Leído" -#: cps/templates/detail.html:263 cps/templates/listenmp3.html:166 +#: cps/templates/detail.html:264 cps/templates/listenmp3.html:166 msgid "Restore from archive" msgstr "Restarurar desde el archivo" -#: cps/templates/detail.html:264 cps/templates/listenmp3.html:166 +#: cps/templates/detail.html:265 cps/templates/listenmp3.html:166 msgid "Add to archive" msgstr "Añadir a archivación" -#: cps/templates/detail.html:266 cps/templates/listenmp3.html:167 +#: cps/templates/detail.html:267 cps/templates/listenmp3.html:167 msgid "Archived" msgstr "Archivado" -#: cps/templates/detail.html:277 cps/templates/listenmp3.html:177 +#: cps/templates/detail.html:278 cps/templates/listenmp3.html:177 msgid "Description:" msgstr "Descripción:" -#: cps/templates/detail.html:292 cps/templates/listenmp3.html:190 +#: cps/templates/detail.html:293 cps/templates/listenmp3.html:190 #: cps/templates/search.html:16 msgid "Add to shelf" msgstr "Agregar al estante" -#: cps/templates/detail.html:304 cps/templates/detail.html:323 +#: cps/templates/detail.html:305 cps/templates/detail.html:324 #: cps/templates/feed.xml:81 cps/templates/layout.html:154 #: cps/templates/listenmp3.html:201 cps/templates/listenmp3.html:218 #: cps/templates/search.html:22 msgid "(Public)" msgstr "(Público)" -#: cps/templates/detail.html:339 +#: cps/templates/detail.html:340 msgid "Edit Metadata" msgstr "Editar metadatos" diff --git a/cps/translations/fi/LC_MESSAGES/messages.mo b/cps/translations/fi/LC_MESSAGES/messages.mo index 47fb8c97..687a1212 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 9c3322b8..83d29607 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-02-10 10:06+0100\n" +"POT-Creation-Date: 2024-04-27 07:20+0200\n" "PO-Revision-Date: 2020-01-12 13:56+0100\n" "Last-Translator: Samuli Valavuo \n" "Language: fi\n" @@ -22,499 +22,499 @@ msgstr "" msgid "Statistics" msgstr "Tilastot" -#: cps/admin.py:149 +#: cps/admin.py:150 #, fuzzy msgid "Server restarted, please reload page." msgstr "Palvelin uudelleenkäynnistetty, ole hyvä ja päivitä sivu" -#: cps/admin.py:151 +#: cps/admin.py:152 #, fuzzy msgid "Performing Server shutdown, please close window." msgstr "Palvelinta sammutetaan, ole hyvä ja sulje sivu" -#: cps/admin.py:159 +#: cps/admin.py:160 msgid "Success! Database Reconnected" msgstr "" -#: cps/admin.py:162 +#: cps/admin.py:163 msgid "Unknown command" msgstr "" -#: cps/admin.py:173 +#: cps/admin.py:174 #, fuzzy 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:206 cps/editbooks.py:589 cps/editbooks.py:591 -#: cps/editbooks.py:629 cps/editbooks.py:646 cps/editbooks.py:1262 +#: cps/admin.py:207 cps/editbooks.py:590 cps/editbooks.py:592 +#: cps/editbooks.py:630 cps/editbooks.py:647 cps/editbooks.py:1263 #: cps/updater.py:613 cps/uploader.py:93 cps/uploader.py:102 msgid "Unknown" msgstr "Tuntematon" -#: cps/admin.py:231 +#: cps/admin.py:232 msgid "Admin page" msgstr "Ylläpitosivu" -#: cps/admin.py:251 +#: cps/admin.py:252 msgid "Basic Configuration" msgstr "Perusasetukset" -#: cps/admin.py:289 +#: cps/admin.py:290 msgid "UI Configuration" msgstr "Käyttöliittymän asetukset" -#: cps/admin.py:323 cps/templates/admin.html:51 +#: cps/admin.py:324 cps/templates/admin.html:51 #, fuzzy msgid "Edit Users" msgstr "Pääkäyttäjä" -#: cps/admin.py:367 cps/opds.py:506 cps/templates/grid.html:14 +#: cps/admin.py:368 cps/opds.py:506 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "Kaikki" -#: cps/admin.py:394 cps/admin.py:1405 +#: cps/admin.py:395 cps/admin.py:1417 msgid "User not found" msgstr "" -#: cps/admin.py:408 +#: cps/admin.py:409 msgid "{} users deleted successfully" msgstr "" -#: cps/admin.py:431 cps/templates/config_view_edit.html:133 +#: cps/admin.py:432 cps/templates/config_view_edit.html:133 #: cps/templates/user_edit.html:45 cps/templates/user_table.html:81 msgid "Show All" msgstr "Näytä kaikki" -#: cps/admin.py:452 cps/admin.py:458 +#: cps/admin.py:453 cps/admin.py:459 msgid "Malformed request" msgstr "" -#: cps/admin.py:470 cps/admin.py:2033 +#: cps/admin.py:471 cps/admin.py:2048 msgid "Guest Name can't be changed" msgstr "" -#: cps/admin.py:482 +#: cps/admin.py:483 msgid "Guest can't have this role" msgstr "" -#: cps/admin.py:494 cps/admin.py:1987 +#: cps/admin.py:495 cps/admin.py:2002 msgid "No admin user remaining, can't remove admin role" msgstr "" -#: cps/admin.py:498 cps/admin.py:512 +#: cps/admin.py:499 cps/admin.py:513 msgid "Value has to be true or false" msgstr "" -#: cps/admin.py:500 +#: cps/admin.py:501 msgid "Invalid role" msgstr "" -#: cps/admin.py:504 +#: cps/admin.py:505 msgid "Guest can't have this view" msgstr "" -#: cps/admin.py:514 +#: cps/admin.py:515 msgid "Invalid view" msgstr "" -#: cps/admin.py:517 +#: cps/admin.py:518 msgid "Guest's Locale is determined automatically and can't be set" msgstr "" -#: cps/admin.py:521 +#: cps/admin.py:522 msgid "No Valid Locale Given" msgstr "" -#: cps/admin.py:532 +#: cps/admin.py:533 msgid "No Valid Book Language Given" msgstr "" -#: cps/admin.py:534 cps/editbooks.py:455 +#: cps/admin.py:535 cps/editbooks.py:456 msgid "Parameter not found" msgstr "" -#: cps/admin.py:571 +#: cps/admin.py:572 msgid "Invalid Read Column" msgstr "" -#: cps/admin.py:577 +#: cps/admin.py:578 msgid "Invalid Restricted Column" msgstr "" -#: cps/admin.py:597 cps/admin.py:1858 +#: cps/admin.py:598 cps/admin.py:1873 msgid "Calibre-Web configuration updated" msgstr "Calibre-Web asetukset päivitetty" -#: cps/admin.py:609 +#: cps/admin.py:610 msgid "Do you really want to delete the Kobo Token?" msgstr "" -#: cps/admin.py:611 +#: cps/admin.py:612 msgid "Do you really want to delete this domain?" msgstr "" -#: cps/admin.py:613 +#: cps/admin.py:614 msgid "Do you really want to delete this user?" msgstr "" -#: cps/admin.py:615 +#: cps/admin.py:616 msgid "Are you sure you want to delete this shelf?" msgstr "Oletko varma, että haluat poistaa hyllyn?" -#: cps/admin.py:617 +#: cps/admin.py:618 #, fuzzy msgid "Are you sure you want to change locales of selected user(s)?" msgstr "Oletko varma, että haluat poistaa hyllyn?" -#: cps/admin.py:619 +#: cps/admin.py:620 msgid "Are you sure you want to change visible book languages for selected user(s)?" msgstr "" -#: cps/admin.py:621 +#: cps/admin.py:622 msgid "Are you sure you want to change the selected role for the selected user(s)?" msgstr "" -#: cps/admin.py:623 +#: cps/admin.py:624 #, fuzzy msgid "Are you sure you want to change the selected restrictions for the selected user(s)?" msgstr "Oletko varma, että haluat poistaa hyllyn?" -#: cps/admin.py:625 +#: cps/admin.py:626 msgid "Are you sure you want to change the selected visibility restrictions for the selected user(s)?" msgstr "" -#: cps/admin.py:628 +#: cps/admin.py:629 #, fuzzy msgid "Are you sure you want to change shelf sync behavior for the selected user(s)?" msgstr "Oletko varma, että haluat poistaa hyllyn?" -#: cps/admin.py:630 +#: cps/admin.py:631 #, fuzzy msgid "Are you sure you want to change Calibre library location?" msgstr "Haluatko varmasti pysäyttää Calibre-Webin?" -#: cps/admin.py:632 +#: cps/admin.py:633 msgid "Calibre-Web will search for updated Covers and update Cover Thumbnails, this may take a while?" msgstr "" -#: cps/admin.py:635 +#: cps/admin.py:636 msgid "Are you sure you want delete Calibre-Web's sync database to force a full sync with your Kobo Reader?" msgstr "" -#: cps/admin.py:878 cps/admin.py:884 cps/admin.py:894 cps/admin.py:904 +#: cps/admin.py:879 cps/admin.py:885 cps/admin.py:895 cps/admin.py:905 #: cps/templates/modal_dialogs.html:29 cps/templates/user_table.html:41 #: cps/templates/user_table.html:58 msgid "Deny" msgstr "" -#: cps/admin.py:880 cps/admin.py:886 cps/admin.py:896 cps/admin.py:906 +#: cps/admin.py:881 cps/admin.py:887 cps/admin.py:897 cps/admin.py:907 #: cps/templates/modal_dialogs.html:28 cps/templates/user_table.html:44 #: cps/templates/user_table.html:61 msgid "Allow" msgstr "" -#: cps/admin.py:921 +#: cps/admin.py:940 msgid "{} sync entries deleted" msgstr "" -#: cps/admin.py:969 +#: cps/admin.py:981 msgid "Tag not found" msgstr "" -#: cps/admin.py:981 +#: cps/admin.py:993 msgid "Invalid Action" msgstr "" -#: cps/admin.py:1111 +#: cps/admin.py:1123 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "" -#: cps/admin.py:1156 +#: cps/admin.py:1168 msgid "Logfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1162 +#: cps/admin.py:1174 msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1196 +#: cps/admin.py:1208 msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgstr "" -#: cps/admin.py:1202 +#: cps/admin.py:1214 msgid "Please Enter a LDAP Service Account and Password" msgstr "" -#: cps/admin.py:1205 +#: cps/admin.py:1217 msgid "Please Enter a LDAP Service Account" msgstr "" -#: cps/admin.py:1210 +#: cps/admin.py:1222 #, python-format msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1212 +#: cps/admin.py:1224 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1216 +#: cps/admin.py:1228 #, python-format msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1218 +#: cps/admin.py:1230 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1225 +#: cps/admin.py:1237 #, python-format msgid "LDAP Member User Filter needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1227 +#: cps/admin.py:1239 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1234 +#: cps/admin.py:1246 msgid "LDAP CACertificate, Certificate or Key Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1265 cps/templates/admin.html:53 +#: cps/admin.py:1277 cps/templates/admin.html:53 msgid "Add New User" msgstr "" -#: cps/admin.py:1274 cps/templates/admin.html:100 +#: cps/admin.py:1286 cps/templates/admin.html:100 msgid "Edit Email Server Settings" msgstr "Muuta SMTP asetuksia" -#: cps/admin.py:1293 +#: cps/admin.py:1305 msgid "Success! Gmail Account Verified." msgstr "" -#: cps/admin.py:1313 cps/admin.py:1316 cps/admin.py:1698 cps/admin.py:1842 -#: cps/admin.py:1940 cps/admin.py:2061 cps/editbooks.py:241 -#: cps/editbooks.py:317 cps/editbooks.py:1224 cps/shelf.py:90 cps/shelf.py:150 +#: cps/admin.py:1325 cps/admin.py:1328 cps/admin.py:1710 cps/admin.py:1857 +#: cps/admin.py:1955 cps/admin.py:2076 cps/editbooks.py:242 +#: cps/editbooks.py:318 cps/editbooks.py:1225 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:149 cps/web.py:1496 +#: cps/shelf.py:468 cps/tasks/convert.py:150 cps/web.py:1520 #, python-format msgid "Oops! Database Error: %(error)s." msgstr "" -#: cps/admin.py:1323 +#: cps/admin.py:1335 #, python-format msgid "Test e-mail queued for sending to %(email)s, please check Tasks for result" msgstr "" -#: cps/admin.py:1326 +#: cps/admin.py:1338 #, 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:1328 +#: cps/admin.py:1340 msgid "Please configure your e-mail address first..." msgstr "" -#: cps/admin.py:1330 +#: cps/admin.py:1342 msgid "Email Server Settings updated" msgstr "Sähköpostipalvelimen tiedot päivitetty" -#: cps/admin.py:1353 cps/templates/admin.html:195 +#: cps/admin.py:1365 cps/templates/admin.html:195 msgid "Edit Scheduled Tasks Settings" msgstr "" -#: cps/admin.py:1365 +#: cps/admin.py:1377 msgid "Invalid start time for task specified" msgstr "" -#: cps/admin.py:1370 +#: cps/admin.py:1382 msgid "Invalid duration for task specified" msgstr "" -#: cps/admin.py:1380 +#: cps/admin.py:1392 msgid "Scheduled tasks settings updated" msgstr "" -#: cps/admin.py:1390 cps/admin.py:1439 cps/admin.py:2057 cps/web.py:1296 +#: cps/admin.py:1402 cps/admin.py:1451 cps/admin.py:2072 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:1394 +#: cps/admin.py:1406 msgid "Settings DB is not Writeable" msgstr "" -#: cps/admin.py:1424 cps/admin.py:2049 +#: cps/admin.py:1436 cps/admin.py:2064 #, python-format msgid "Edit User %(nick)s" msgstr "Muokkaa käyttäjää %(nick)s" -#: cps/admin.py:1436 +#: cps/admin.py:1448 #, fuzzy, python-format msgid "Success! Password for user %(user)s reset" msgstr "Käyttäjän %(user)s salasana palautettu" -#: cps/admin.py:1442 +#: cps/admin.py:1454 #, fuzzy msgid "Oops! Please configure the SMTP mail settings." msgstr "Ole hyvä ja aseta SMTP postiasetukset ensin..." -#: cps/admin.py:1453 +#: cps/admin.py:1465 msgid "Logfile viewer" msgstr "Lokitiedoston katselin" -#: cps/admin.py:1519 +#: cps/admin.py:1531 msgid "Requesting update package" msgstr "Haetaan päivitystiedostoa" -#: cps/admin.py:1520 +#: cps/admin.py:1532 msgid "Downloading update package" msgstr "Ladataan päivitystiedostoa" -#: cps/admin.py:1521 +#: cps/admin.py:1533 msgid "Unzipping update package" msgstr "Puretaan päivitystiedostoa" -#: cps/admin.py:1522 +#: cps/admin.py:1534 msgid "Replacing files" msgstr "Korvataan tiedostoja" -#: cps/admin.py:1523 +#: cps/admin.py:1535 msgid "Database connections are closed" msgstr "Tietokantayhteydet on katkaistu" -#: cps/admin.py:1524 +#: cps/admin.py:1536 msgid "Stopping server" msgstr "Sammutetaan palvelin" -#: cps/admin.py:1525 +#: cps/admin.py:1537 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:1526 cps/admin.py:1527 cps/admin.py:1528 cps/admin.py:1529 -#: cps/admin.py:1530 cps/admin.py:1531 +#: cps/admin.py:1538 cps/admin.py:1539 cps/admin.py:1540 cps/admin.py:1541 +#: cps/admin.py:1542 cps/admin.py:1543 msgid "Update failed:" msgstr "Päivitys epäonnistui:" -#: cps/admin.py:1526 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 +#: cps/admin.py:1538 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 msgid "HTTP Error" msgstr "HTTP virhe" -#: cps/admin.py:1527 cps/updater.py:391 cps/updater.py:628 +#: cps/admin.py:1539 cps/updater.py:391 cps/updater.py:628 msgid "Connection error" msgstr "Yhteysvirhe" -#: cps/admin.py:1528 cps/updater.py:393 cps/updater.py:630 +#: cps/admin.py:1540 cps/updater.py:393 cps/updater.py:630 msgid "Timeout while establishing connection" msgstr "Aikakatkaisu yhteyttä luotaessa" -#: cps/admin.py:1529 cps/updater.py:395 cps/updater.py:632 +#: cps/admin.py:1541 cps/updater.py:395 cps/updater.py:632 msgid "General error" msgstr "Yleinen virhe" -#: cps/admin.py:1530 +#: cps/admin.py:1542 msgid "Update file could not be saved in temp dir" msgstr "" -#: cps/admin.py:1531 +#: cps/admin.py:1543 msgid "Files could not be replaced during update" msgstr "" -#: cps/admin.py:1555 +#: cps/admin.py:1567 msgid "Failed to extract at least One LDAP User" msgstr "" -#: cps/admin.py:1600 +#: cps/admin.py:1612 msgid "Failed to Create at Least One LDAP User" msgstr "" -#: cps/admin.py:1613 +#: cps/admin.py:1625 #, python-format msgid "Error: %(ldaperror)s" msgstr "" -#: cps/admin.py:1617 +#: cps/admin.py:1629 msgid "Error: No user returned in response of LDAP server" msgstr "" -#: cps/admin.py:1650 +#: cps/admin.py:1662 msgid "At Least One LDAP User Not Found in Database" msgstr "" -#: cps/admin.py:1652 +#: cps/admin.py:1664 msgid "{} User Successfully Imported" msgstr "" -#: cps/admin.py:1710 +#: cps/admin.py:1722 msgid "DB Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1730 +#: cps/admin.py:1742 msgid "DB is not Writeable" msgstr "" -#: cps/admin.py:1746 +#: cps/admin.py:1758 msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1750 +#: cps/admin.py:1762 msgid "Certfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1829 +#: cps/admin.py:1842 msgid "Password length has to be between 1 and 40" msgstr "" -#: cps/admin.py:1881 +#: cps/admin.py:1896 #, fuzzy msgid "Database Settings updated" msgstr "Sähköpostipalvelimen tiedot päivitetty" -#: cps/admin.py:1889 +#: cps/admin.py:1904 #, fuzzy msgid "Database Configuration" msgstr "Ominaisuuksien asetukset" -#: cps/admin.py:1904 cps/web.py:1270 +#: cps/admin.py:1919 cps/web.py:1290 msgid "Oops! Please complete all fields." msgstr "Ole hyvä ja täytä kaikki kentät!" -#: cps/admin.py:1913 +#: cps/admin.py:1928 msgid "E-mail is not from valid domain" msgstr "Sähköpostiosoite ei ole toimivasta domainista" -#: cps/admin.py:1919 +#: cps/admin.py:1934 msgid "Add new user" msgstr "Lisää uusi käyttäjä" -#: cps/admin.py:1930 +#: cps/admin.py:1945 #, python-format msgid "User '%(user)s' created" msgstr "Käyttäjä '%(user)s' lisätty" -#: cps/admin.py:1936 +#: cps/admin.py:1951 #, 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:1966 +#: cps/admin.py:1981 #, python-format msgid "User '%(nick)s' deleted" msgstr "Käyttäjä '%(nick)s' poistettu" -#: cps/admin.py:1969 +#: cps/admin.py:1984 msgid "Can't delete Guest User" msgstr "" -#: cps/admin.py:1972 +#: cps/admin.py:1987 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:2027 cps/web.py:1445 +#: cps/admin.py:2042 cps/web.py:1469 msgid "Email can't be empty and has to be a valid Email" msgstr "" -#: cps/admin.py:2053 +#: cps/admin.py:2068 #, python-format msgid "User '%(nick)s' updated" msgstr "Käyttäjä '%(nick)s' päivitetty" @@ -527,122 +527,123 @@ msgstr "ei asennettu" msgid "Execution permissions missing" msgstr "" -#: cps/db.py:752 cps/search.py:137 cps/web.py:731 +#: cps/db.py:752 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:993 cps/templates/config_edit.html:208 +#: cps/db.py:992 cps/templates/config_edit.html:208 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 -#: cps/web.py:558 cps/web.py:592 cps/web.py:665 cps/web.py:692 cps/web.py:973 -#: cps/web.py:1003 cps/web.py:1048 cps/web.py:1076 cps/web.py:1115 +#: 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 +#: cps/web.py:1131 msgid "None" msgstr "Ei mitään" -#: cps/editbooks.py:122 cps/editbooks.py:910 cps/web.py:525 cps/web.py:1537 -#: cps/web.py:1581 cps/web.py:1626 +#: cps/editbooks.py:123 cps/editbooks.py:911 cps/web.py:529 cps/web.py:1561 +#: cps/web.py:1605 cps/web.py:1650 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:166 cps/editbooks.py:1245 +#: cps/editbooks.py:167 cps/editbooks.py:1246 msgid "User has no rights to upload cover" msgstr "" -#: cps/editbooks.py:186 cps/editbooks.py:731 +#: cps/editbooks.py:187 cps/editbooks.py:732 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "" -#: cps/editbooks.py:228 +#: cps/editbooks.py:229 msgid "Metadata successfully updated" msgstr "Metadata päivitetty onnistuneesti" -#: cps/editbooks.py:246 +#: cps/editbooks.py:247 msgid "Error editing book: {}" msgstr "" -#: cps/editbooks.py:303 +#: cps/editbooks.py:304 #, python-format msgid "File %(file)s uploaded" msgstr "Tiedosto %(file)s tallennettu" -#: cps/editbooks.py:331 +#: cps/editbooks.py:332 msgid "Source or destination format for conversion missing" msgstr "Lähteen tai kohteen tiedostomuoto puuttuu" -#: cps/editbooks.py:339 +#: cps/editbooks.py:340 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "Kirja lisätty muutosjonoon muotoon %(book_format)s" -#: cps/editbooks.py:343 +#: cps/editbooks.py:344 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "Kirjan muunnoksessa tapahtui virhe: %(res)s" -#: cps/editbooks.py:650 +#: cps/editbooks.py:651 msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgstr "" -#: cps/editbooks.py:705 cps/editbooks.py:1037 +#: cps/editbooks.py:706 cps/editbooks.py:1038 #, fuzzy, python-format msgid "'%(langname)s' is not a valid language" msgstr "%(langname)s ei ole kelvollinen kieli" -#: cps/editbooks.py:743 cps/editbooks.py:1185 +#: cps/editbooks.py:744 cps/editbooks.py:1186 #, 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:747 cps/editbooks.py:1189 +#: cps/editbooks.py:748 cps/editbooks.py:1190 msgid "File to be uploaded must have an extension" msgstr "Ladattavalla tiedostolla on oltava tiedostopääte" -#: cps/editbooks.py:755 +#: cps/editbooks.py:756 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "" -#: cps/editbooks.py:775 +#: cps/editbooks.py:776 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "" -#: cps/editbooks.py:832 cps/editbooks.py:834 +#: cps/editbooks.py:833 cps/editbooks.py:835 msgid "Book Format Successfully Deleted" msgstr "" -#: cps/editbooks.py:841 cps/editbooks.py:843 +#: cps/editbooks.py:842 cps/editbooks.py:844 msgid "Book Successfully Deleted" msgstr "" -#: cps/editbooks.py:895 +#: cps/editbooks.py:896 msgid "You are missing permissions to delete books" msgstr "" -#: cps/editbooks.py:945 +#: cps/editbooks.py:946 msgid "edit metadata" msgstr "muokkaa metadataa" -#: cps/editbooks.py:994 +#: cps/editbooks.py:995 #, python-format msgid "%(seriesindex)s is not a valid number, skipping" msgstr "" -#: cps/editbooks.py:1180 +#: cps/editbooks.py:1181 msgid "User has no rights to upload additional file formats" msgstr "" -#: cps/editbooks.py:1201 +#: cps/editbooks.py:1202 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "Polun %(path)s luonti epäonnistui (Ei oikeutta)." -#: cps/editbooks.py:1206 +#: cps/editbooks.py:1207 #, python-format msgid "Failed to store file %(file)s." msgstr "Tiedoston %(file)s tallennus epäonnistui." -#: cps/editbooks.py:1230 +#: cps/editbooks.py:1231 #, python-format msgid "File format %(ext)s added to %(book)s" msgstr "Tiedostoformaatti %(ext)s lisätty %(book)s" @@ -655,204 +656,204 @@ msgstr "Google Drive asetukset ei ole valmiit. Koita poistaa Google Drive käyt 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" -#: cps/helper.py:84 +#: cps/helper.py:86 #, python-format msgid "%(format)s format not found for book id: %(book)d" msgstr "%(format)s tiedostomuotoa ei löytynyt kirjalle: %(book)d" -#: cps/helper.py:91 cps/tasks/convert.py:86 +#: cps/helper.py:93 cps/tasks/convert.py:86 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "%(format)s ei löytynyt Google Drivesta: %(fn)s" -#: cps/helper.py:96 +#: cps/helper.py:98 #, python-format msgid "%(format)s not found: %(fn)s" msgstr "%(format)s ei löydy: %(fn)s" -#: cps/helper.py:101 cps/helper.py:226 cps/templates/detail.html:58 +#: cps/helper.py:103 cps/helper.py:228 cps/templates/detail.html:58 #, fuzzy msgid "Send to eReader" msgstr "Lähetä Kindleen" -#: cps/helper.py:102 cps/helper.py:120 cps/helper.py:228 +#: cps/helper.py:104 cps/helper.py:122 cps/helper.py:230 #, fuzzy msgid "This Email has been sent via Calibre-Web." msgstr "Tämä sähköposti on lähetetty Calibre-Web:sta." -#: cps/helper.py:118 +#: cps/helper.py:120 #, fuzzy msgid "Calibre-Web Test Email" msgstr "Calibre-Web testisähköposti" -#: cps/helper.py:119 +#: cps/helper.py:121 #, fuzzy msgid "Test Email" msgstr "Testi sähköposti" -#: cps/helper.py:136 +#: cps/helper.py:138 msgid "Get Started with Calibre-Web" msgstr "Aloita Calibre-Web:in käyttö" -#: cps/helper.py:141 +#: cps/helper.py:143 #, fuzzy, python-format msgid "Registration Email for user: %(name)s" msgstr "Rekiströintisähköposti käyttäjälle: %(name)s" -#: cps/helper.py:152 cps/helper.py:158 +#: cps/helper.py:154 cps/helper.py:160 #, fuzzy, python-format msgid "Convert %(orig)s to %(format)s and send to eReader" msgstr "Muunna %(orig)s muotoon %(format)s ja lähetä Kindleen" -#: cps/helper.py:177 cps/helper.py:181 cps/helper.py:185 +#: cps/helper.py:179 cps/helper.py:183 cps/helper.py:187 #, fuzzy, python-format msgid "Send %(format)s to eReader" msgstr "Lähetä %(format)s Kindleen" -#: cps/helper.py:225 +#: cps/helper.py:227 #, fuzzy, python-format msgid "%(book)s send to eReader" msgstr "Lähetä Kindleen" -#: cps/helper.py:230 +#: cps/helper.py:232 msgid "The requested file could not be read. Maybe wrong permissions?" msgstr "Haettua tiedostoa ei pystytty lukemaan. Ehkä vaäärät oikeudet?" -#: cps/helper.py:345 +#: cps/helper.py:347 msgid "Read status could not set: {}" msgstr "" -#: cps/helper.py:368 +#: cps/helper.py:370 #, python-format msgid "Deleting bookfolder for book %(id)s failed, path has subfolders: %(path)s" msgstr "" -#: cps/helper.py:374 +#: cps/helper.py:376 #, python-format msgid "Deleting book %(id)s failed: %(message)s" msgstr "" -#: cps/helper.py:385 +#: cps/helper.py:387 #, python-format msgid "Deleting book %(id)s from database only, book path in database not valid: %(path)s" msgstr "" -#: cps/helper.py:450 +#: cps/helper.py:452 #, 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:522 cps/helper.py:531 +#: cps/helper.py:524 cps/helper.py:533 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "Tiedostoa %(file)s ei löytynyt Google Drivesta" -#: cps/helper.py:565 +#: cps/helper.py:567 #, 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:585 +#: cps/helper.py:587 msgid "Error in rename file in path: {}" msgstr "" -#: cps/helper.py:603 +#: cps/helper.py:605 #, 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:668 +#: cps/helper.py:670 msgid "Found an existing account for this Email address" msgstr "" -#: cps/helper.py:676 +#: cps/helper.py:678 msgid "This username is already taken" msgstr "" -#: cps/helper.py:688 +#: cps/helper.py:690 msgid "Invalid Email address format" msgstr "" -#: cps/helper.py:706 +#: cps/helper.py:710 msgid "Password doesn't comply with password validation rules" msgstr "" -#: cps/helper.py:855 +#: cps/helper.py:859 msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "" -#: cps/helper.py:865 +#: cps/helper.py:869 msgid "Error Downloading Cover" msgstr "" -#: cps/helper.py:868 +#: cps/helper.py:872 msgid "Cover Format Error" msgstr "" -#: cps/helper.py:871 +#: cps/helper.py:875 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "" -#: cps/helper.py:881 +#: cps/helper.py:885 msgid "Failed to create path for cover" msgstr "" -#: cps/helper.py:897 +#: cps/helper.py:901 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "" -#: cps/helper.py:908 +#: cps/helper.py:912 msgid "Only jpg/jpeg/png/webp/bmp files are supported as coverfile" msgstr "" -#: cps/helper.py:920 +#: cps/helper.py:924 msgid "Invalid cover file content" msgstr "" -#: cps/helper.py:924 +#: cps/helper.py:928 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "" -#: cps/helper.py:995 cps/helper.py:1183 +#: cps/helper.py:999 cps/helper.py:1156 #, fuzzy msgid "Cover" msgstr "Löydä" -#: cps/helper.py:1032 +#: cps/helper.py:1016 msgid "Unrar binary file not found" msgstr "" -#: cps/helper.py:1043 +#: cps/helper.py:1027 msgid "Error executing UnRar" msgstr "" -#: cps/helper.py:1051 +#: cps/helper.py:1035 msgid "Could not find the specified directory" msgstr "" -#: cps/helper.py:1054 +#: cps/helper.py:1038 msgid "Please specify a directory, not a file" msgstr "" -#: cps/helper.py:1068 +#: cps/helper.py:1052 msgid "Calibre binaries not viable" msgstr "" -#: cps/helper.py:1077 +#: cps/helper.py:1061 #, python-format msgid "Missing calibre binaries: %(missing)s" msgstr "" -#: cps/helper.py:1079 +#: cps/helper.py:1063 #, python-format msgid "Missing executable permissions: %(missing)s" msgstr "" -#: cps/helper.py:1084 +#: cps/helper.py:1068 msgid "Error excecuting Calibre" msgstr "" -#: cps/helper.py:1185 cps/templates/admin.html:216 +#: cps/helper.py:1158 cps/templates/admin.html:216 msgid "Queue all books for metadata backup" msgstr "" @@ -936,7 +937,7 @@ msgstr "" #: cps/remotelogin.py:62 cps/templates/layout.html:67 #: cps/templates/layout.html:101 cps/templates/login.html:4 -#: cps/templates/login.html:21 cps/web.py:1333 +#: cps/templates/login.html:21 cps/web.py:1353 msgid "Login" msgstr "Kirjaudu sisään" @@ -952,7 +953,7 @@ msgstr "Valtuutus vanhentunut" msgid "Success! Please return to your device" msgstr "Onnistui! Ole hyvä ja palaa laitteellesi" -#: cps/render_template.py:42 cps/web.py:414 +#: cps/render_template.py:42 cps/web.py:418 msgid "Books" msgstr "Kirjat" @@ -977,7 +978,7 @@ msgstr "" msgid "Show Downloaded Books" msgstr "" -#: cps/render_template.py:59 cps/templates/index.xml:33 cps/web.py:429 +#: cps/render_template.py:59 cps/templates/index.xml:33 cps/web.py:433 msgid "Top Rated Books" msgstr "Parhaiten arvioidut kirjat" @@ -986,7 +987,7 @@ msgid "Show Top Rated Books" msgstr "Näytä parhaiten arvioidut kirjat" #: cps/render_template.py:62 cps/templates/index.xml:55 -#: cps/templates/index.xml:59 cps/web.py:750 +#: cps/templates/index.xml:59 cps/web.py:766 msgid "Read Books" msgstr "Luetut kirjat" @@ -996,7 +997,7 @@ msgid "Show Read and Unread" msgstr "Näytä luetut ja lukemattomat" #: cps/render_template.py:66 cps/templates/index.xml:62 -#: cps/templates/index.xml:66 cps/web.py:753 +#: cps/templates/index.xml:66 cps/web.py:769 msgid "Unread Books" msgstr "Lukemattomat kirjat" @@ -1014,7 +1015,7 @@ msgid "Show Random Books" msgstr "Näytä satunnausia kirjoja" #: cps/render_template.py:72 cps/templates/book_table.html:67 -#: cps/templates/index.xml:84 cps/web.py:1119 +#: cps/templates/index.xml:84 cps/web.py:1135 msgid "Categories" msgstr "Kategoriat" @@ -1025,7 +1026,7 @@ msgstr "Näytä kategoriavalinta" #: cps/render_template.py:75 cps/templates/book_edit.html:91 #: cps/templates/book_table.html:68 cps/templates/index.xml:91 -#: cps/templates/search_form.html:70 cps/web.py:1009 cps/web.py:1021 +#: cps/templates/search_form.html:70 cps/web.py:1025 cps/web.py:1037 msgid "Series" msgstr "Sarjat" @@ -1045,7 +1046,7 @@ msgid "Show Author Section" msgstr "Näytä kirjailijavalinta" #: cps/render_template.py:82 cps/templates/book_table.html:72 -#: cps/templates/index.xml:77 cps/web.py:977 +#: cps/templates/index.xml:77 cps/web.py:993 msgid "Publishers" msgstr "Julkaisijat" @@ -1056,7 +1057,7 @@ msgstr "Näytä julkaisijavalinta" #: cps/render_template.py:85 cps/templates/book_table.html:70 #: cps/templates/index.xml:98 cps/templates/search_form.html:108 -#: cps/web.py:1091 +#: cps/web.py:1107 msgid "Languages" msgstr "Kielet" @@ -1083,7 +1084,7 @@ msgstr "Tiedotomuodot" msgid "Show File Formats Section" msgstr "Näytä tiedostomuotovalinta" -#: cps/render_template.py:96 cps/web.py:776 +#: cps/render_template.py:96 cps/web.py:792 msgid "Archived Books" msgstr "" @@ -1092,7 +1093,7 @@ msgstr "" msgid "Show Archived Books" msgstr "Näytä viimeisimmät kirjat" -#: cps/render_template.py:101 cps/web.py:807 +#: cps/render_template.py:101 cps/web.py:823 msgid "Books List" msgstr "" @@ -1316,172 +1317,176 @@ msgstr "Uusi päivitys saatavilla. Paina alla olevaa nappia päivittääksesi ve msgid "No release information available" msgstr "Ei päivitystietoa saatavilla" -#: cps/templates/index.html:6 cps/web.py:441 +#: cps/templates/index.html:6 cps/web.py:445 msgid "Discover (Random Books)" msgstr "Löydä (satunnaiset kirjat)" -#: cps/web.py:477 +#: cps/web.py:481 msgid "Hot Books (Most Downloaded)" msgstr "Kuumat kirjat (ladatuimmat)" -#: cps/web.py:508 +#: cps/web.py:512 #, python-format msgid "Downloaded books by %(user)s" msgstr "" -#: cps/web.py:541 +#: cps/web.py:545 #, python-format msgid "Author: %(name)s" msgstr "Kirjailija: %(name)s" -#: cps/web.py:577 +#: cps/web.py:581 #, python-format msgid "Publisher: %(name)s" msgstr "Julkaisija: %(name)s" -#: cps/web.py:605 +#: cps/web.py:609 #, python-format msgid "Series: %(serie)s" msgstr "Sarja: %(serie)s" -#: cps/web.py:620 +#: cps/web.py:623 msgid "Rating: None" msgstr "" -#: cps/web.py:629 +#: cps/web.py:632 #, python-format msgid "Rating: %(rating)s stars" msgstr "Arvostelu: %(rating)s tähteä" -#: cps/web.py:645 +#: cps/web.py:663 #, python-format msgid "File format: %(format)s" msgstr "Tiedostomuoto: %(format)s" -#: cps/web.py:682 +#: cps/web.py:698 #, python-format msgid "Category: %(name)s" msgstr "Kategoria: %(name)s" -#: cps/web.py:711 +#: cps/web.py:727 #, python-format msgid "Language: %(name)s" msgstr "Kieli: %(name)s" -#: cps/templates/admin.html:16 cps/web.py:949 +#: cps/templates/admin.html:16 cps/web.py:965 msgid "Downloads" msgstr "DLS" -#: cps/web.py:1051 +#: cps/web.py:1067 msgid "Ratings list" msgstr "Arvostelulistaus" -#: cps/web.py:1078 +#: cps/web.py:1094 msgid "File formats list" msgstr "Tiedostomuotolistaus" -#: cps/web.py:1233 +#: cps/web.py:1249 #, fuzzy msgid "Please configure the SMTP mail settings first..." msgstr "Ole hyvä ja aseta SMTP postiasetukset ensin..." -#: cps/web.py:1240 +#: cps/web.py:1256 #, python-format msgid "Success! Book queued for sending to %(eReadermail)s" msgstr "Kirja lisätty onnistuneeksi lähetettäväksi osoitteeseen %(eReadermail)s" -#: cps/web.py:1243 +#: cps/web.py:1259 #, python-format msgid "Oops! There was an error sending book: %(res)s" msgstr "Kirjan: %(res)s lähettämisessa tapahtui virhe" -#: cps/web.py:1245 +#: cps/web.py:1261 #, fuzzy msgid "Oops! Please update your profile with a valid eReader Email." msgstr "Ole hyvä ja aseta Kindle sähköpostiosoite ensin..." -#: cps/web.py:1261 +#: cps/web.py:1277 msgid "Please wait one minute to register next user" msgstr "" #: cps/templates/layout.html:68 cps/templates/layout.html:102 -#: cps/templates/login.html:27 cps/templates/register.html:17 cps/web.py:1262 -#: cps/web.py:1267 cps/web.py:1271 cps/web.py:1277 cps/web.py:1297 -#: cps/web.py:1301 cps/web.py:1314 cps/web.py:1317 +#: cps/templates/login.html:27 cps/templates/register.html:17 cps/web.py:1278 +#: cps/web.py:1282 cps/web.py:1287 cps/web.py:1291 cps/web.py:1297 +#: cps/web.py:1317 cps/web.py:1321 cps/web.py:1334 cps/web.py:1337 msgid "Register" msgstr "Rekisteröi" -#: cps/web.py:1266 cps/web.py:1313 +#: cps/web.py:1281 cps/web.py:1385 +msgid "Connection error to limiter backend, please contact your administrator" +msgstr "" + +#: cps/web.py:1286 cps/web.py:1333 msgid "Oops! Email server is not configured, please contact your administrator." msgstr "" -#: cps/web.py:1299 +#: cps/web.py:1319 msgid "Oops! Your Email is not allowed." msgstr "Sähköpostiosoitteellasi ei ole sallittua rekisteröityä" -#: cps/web.py:1302 +#: cps/web.py:1322 msgid "Success! Confirmation Email has been sent." msgstr "Vahvistusviesti on lähetetty sähköpostiosoitteeseesi." -#: cps/web.py:1348 cps/web.py:1367 +#: cps/web.py:1368 cps/web.py:1391 #, fuzzy msgid "Cannot activate LDAP authentication" msgstr "LDAP autnetikoinnin aktivointi ei onnistu" -#: cps/web.py:1361 +#: cps/web.py:1381 msgid "Please wait one minute before next login" msgstr "" -#: cps/web.py:1376 +#: cps/web.py:1400 #, fuzzy, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "olet nyt kirjautunut tunnuksella: \"%(nickname)s\"" -#: cps/web.py:1383 +#: cps/web.py:1407 #, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgstr "" -#: cps/web.py:1388 +#: cps/web.py:1412 #, python-format msgid "Could not login: %(message)s" msgstr "" -#: cps/web.py:1392 cps/web.py:1417 +#: cps/web.py:1416 cps/web.py:1441 #, fuzzy msgid "Wrong Username or Password" msgstr "Väärä käyttäjätunnus tai salasana" -#: cps/web.py:1399 +#: cps/web.py:1423 msgid "New Password was sent to your email address" msgstr "" -#: cps/web.py:1403 +#: cps/web.py:1427 #, fuzzy msgid "An unknown error occurred. Please try again later." msgstr "Tapahtui tuntematon virhe. Yritä myöhemmin uudelleen." -#: cps/web.py:1405 +#: cps/web.py:1429 #, fuzzy msgid "Please enter valid username to reset password" msgstr "Väärä käyttäjätunnus tai salasana" -#: cps/web.py:1413 +#: cps/web.py:1437 #, fuzzy, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "olet nyt kirjautunut tunnuksella: \"%(nickname)s\"" -#: cps/web.py:1471 cps/web.py:1521 +#: cps/web.py:1495 cps/web.py:1545 #, python-format msgid "%(name)s's Profile" msgstr "%(name)sn profiili" -#: cps/web.py:1487 +#: cps/web.py:1511 #, fuzzy msgid "Success! Profile Updated" msgstr "Profiili päivitetty" -#: cps/web.py:1491 +#: cps/web.py:1515 #, fuzzy msgid "Oops! An account already exists for this Email." msgstr "Tälle sähköpostiosoitteelle läytyi jo käyttäjätunnus." @@ -1495,41 +1500,41 @@ msgstr "" msgid "%(book)s send to E-Reader" msgstr "Lähetä Kindleen" -#: cps/tasks/convert.py:166 +#: cps/tasks/convert.py:167 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "" -#: cps/tasks/convert.py:200 +#: cps/tasks/convert.py:201 #, python-format msgid "%(format)s format not found on disk" msgstr "" -#: cps/tasks/convert.py:204 +#: cps/tasks/convert.py:205 msgid "Ebook converter failed with unknown error" msgstr "" -#: cps/tasks/convert.py:223 +#: cps/tasks/convert.py:224 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "" -#: cps/tasks/convert.py:244 +#: cps/tasks/convert.py:245 #, python-format msgid "Converted file not found or more than one file in folder %(folder)s" msgstr "" -#: cps/tasks/convert.py:279 +#: cps/tasks/convert.py:287 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "E-kirjan muunnos epäonnistui: %(error)s" -#: cps/tasks/convert.py:302 +#: cps/tasks/convert.py:310 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "" -#: cps/tasks/convert.py:307 +#: cps/tasks/convert.py:315 msgid "Convert" msgstr "" @@ -1537,7 +1542,7 @@ msgstr "" msgid "Reconnecting Calibre database" msgstr "" -#: cps/tasks/mail.py:269 +#: cps/tasks/mail.py:278 msgid "E-mail" msgstr "" @@ -1816,12 +1821,12 @@ 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:414 -#: cps/templates/config_view_edit.html:175 cps/templates/modal_dialogs.html:64 -#: cps/templates/modal_dialogs.html:99 cps/templates/modal_dialogs.html:117 -#: cps/templates/modal_dialogs.html:135 cps/templates/schedule_edit.html:45 -#: cps/templates/shelf_edit.html:27 cps/templates/tasks.html:46 -#: cps/templates/user_edit.html:144 +#: cps/templates/config_db.html:66 cps/templates/config_edit.html:428 +#: 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 +#: cps/templates/schedule_edit.html:45 cps/templates/shelf_edit.html:27 +#: cps/templates/tasks.html:46 cps/templates/user_edit.html:144 msgid "Cancel" msgstr "" @@ -2002,7 +2007,7 @@ msgid "Fetch Metadata" msgstr "Hae metadata" #: cps/templates/book_edit.html:213 cps/templates/config_db.html:65 -#: cps/templates/config_edit.html:413 cps/templates/config_view_edit.html:174 +#: cps/templates/config_edit.html:427 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 @@ -2170,7 +2175,7 @@ msgid "Location of Calibre Database" msgstr "Calibre -tietokannan paikka" #: cps/templates/config_db.html:21 -msgid "Separate Book files from Library (Highly experimental, might not work at all)" +msgid "Separate Book Files from Library" msgstr "" #: cps/templates/config_db.html:34 @@ -2254,7 +2259,7 @@ msgid "Convert non-English characters in title and author while saving to disk" msgstr "" #: cps/templates/config_edit.html:108 -msgid "Embed Metadata to Ebook File on Download and Conversion (needs Calibre/Kepubify binaries)" +msgid "Embed Metadata to Ebook File on Download/Conversion/e-mail (needs Calibre/Kepubify binaries)" msgstr "" #: cps/templates/config_edit.html:112 @@ -2477,40 +2482,52 @@ msgstr "OAuth asetukset" msgid "Limit failed login attempts" msgstr "" -#: cps/templates/config_edit.html:376 +#: cps/templates/config_edit.html:377 +msgid "Configure Backend for Limiter" +msgstr "" + +#: cps/templates/config_edit.html:381 +msgid "Options for Limiter" +msgstr "" + +#: cps/templates/config_edit.html:386 msgid "Session protection" msgstr "" -#: cps/templates/config_edit.html:378 +#: cps/templates/config_edit.html:388 msgid "Basic" msgstr "" -#: cps/templates/config_edit.html:379 +#: cps/templates/config_edit.html:389 msgid "Strong" msgstr "" -#: cps/templates/config_edit.html:384 +#: cps/templates/config_edit.html:394 #, fuzzy msgid "User Password policy" msgstr "Nollaa käyttäjän salasana" -#: cps/templates/config_edit.html:388 +#: cps/templates/config_edit.html:398 msgid "Minimum password length" msgstr "" -#: cps/templates/config_edit.html:393 +#: cps/templates/config_edit.html:403 msgid "Enforce number" msgstr "" -#: cps/templates/config_edit.html:397 +#: cps/templates/config_edit.html:407 msgid "Enforce lowercase characters" msgstr "" -#: cps/templates/config_edit.html:401 +#: cps/templates/config_edit.html:411 msgid "Enforce uppercase characters" msgstr "" -#: cps/templates/config_edit.html:405 +#: cps/templates/config_edit.html:415 +msgid "Enforce characters (needed For Chinese/Japanese/Korean Characters)" +msgstr "" + +#: cps/templates/config_edit.html:419 msgid "Enforce special characters" msgstr "" @@ -2634,47 +2651,47 @@ msgstr "" msgid "Published" msgstr "" -#: cps/templates/detail.html:250 cps/templates/listenmp3.html:158 +#: cps/templates/detail.html:251 cps/templates/listenmp3.html:158 msgid "Mark As Unread" msgstr "Merkitse lukemattomaksi" -#: cps/templates/detail.html:251 cps/templates/listenmp3.html:158 +#: cps/templates/detail.html:252 cps/templates/listenmp3.html:158 msgid "Mark As Read" msgstr "Merkitse luetuksi" -#: cps/templates/detail.html:253 cps/templates/listenmp3.html:159 +#: cps/templates/detail.html:254 cps/templates/listenmp3.html:159 msgid "Read" msgstr "Luettu" -#: cps/templates/detail.html:263 cps/templates/listenmp3.html:166 +#: cps/templates/detail.html:264 cps/templates/listenmp3.html:166 msgid "Restore from archive" msgstr "" -#: cps/templates/detail.html:264 cps/templates/listenmp3.html:166 +#: cps/templates/detail.html:265 cps/templates/listenmp3.html:166 msgid "Add to archive" msgstr "" -#: cps/templates/detail.html:266 cps/templates/listenmp3.html:167 +#: cps/templates/detail.html:267 cps/templates/listenmp3.html:167 msgid "Archived" msgstr "" -#: cps/templates/detail.html:277 cps/templates/listenmp3.html:177 +#: cps/templates/detail.html:278 cps/templates/listenmp3.html:177 msgid "Description:" msgstr "Kuvaus:" -#: cps/templates/detail.html:292 cps/templates/listenmp3.html:190 +#: cps/templates/detail.html:293 cps/templates/listenmp3.html:190 #: cps/templates/search.html:16 msgid "Add to shelf" msgstr "Lisää hyllyyn" -#: cps/templates/detail.html:304 cps/templates/detail.html:323 +#: cps/templates/detail.html:305 cps/templates/detail.html:324 #: cps/templates/feed.xml:81 cps/templates/layout.html:154 #: cps/templates/listenmp3.html:201 cps/templates/listenmp3.html:218 #: cps/templates/search.html:22 msgid "(Public)" msgstr "" -#: cps/templates/detail.html:339 +#: cps/templates/detail.html:340 msgid "Edit Metadata" msgstr "Muokkaa metadataa" diff --git a/cps/translations/fr/LC_MESSAGES/messages.mo b/cps/translations/fr/LC_MESSAGES/messages.mo index 9583247c..01216899 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 18542c3c..0d937772 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-02-10 10:06+0100\n" +"POT-Creation-Date: 2024-04-27 07:20+0200\n" "PO-Revision-Date: 2020-06-07 06:47+0200\n" "Last-Translator: \n" "Language: fr\n" @@ -37,502 +37,502 @@ msgstr "" msgid "Statistics" msgstr "Statistiques" -#: cps/admin.py:149 +#: cps/admin.py:150 #, fuzzy msgid "Server restarted, please reload page." msgstr "Serveur redémarré, merci de rafraîchir la page" -#: cps/admin.py:151 +#: cps/admin.py:152 #, fuzzy msgid "Performing Server shutdown, please close window." msgstr "Arrêt du serveur en cours, merci de fermer la fenêtre" -#: cps/admin.py:159 +#: cps/admin.py:160 msgid "Success! Database Reconnected" msgstr "" -#: cps/admin.py:162 +#: cps/admin.py:163 msgid "Unknown command" msgstr "Commande inconnue" -#: cps/admin.py:173 +#: cps/admin.py:174 #, fuzzy 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:206 cps/editbooks.py:589 cps/editbooks.py:591 -#: cps/editbooks.py:629 cps/editbooks.py:646 cps/editbooks.py:1262 +#: cps/admin.py:207 cps/editbooks.py:590 cps/editbooks.py:592 +#: cps/editbooks.py:630 cps/editbooks.py:647 cps/editbooks.py:1263 #: cps/updater.py:613 cps/uploader.py:93 cps/uploader.py:102 msgid "Unknown" msgstr "Inconnu" -#: cps/admin.py:231 +#: cps/admin.py:232 msgid "Admin page" msgstr "Page admin" -#: cps/admin.py:251 +#: cps/admin.py:252 msgid "Basic Configuration" msgstr "Configuration principale" -#: cps/admin.py:289 +#: cps/admin.py:290 msgid "UI Configuration" msgstr "Configuration de l’interface utilisateur" -#: cps/admin.py:323 cps/templates/admin.html:51 +#: cps/admin.py:324 cps/templates/admin.html:51 #, fuzzy msgid "Edit Users" msgstr "Éditer les utilisateurs" -#: cps/admin.py:367 cps/opds.py:506 cps/templates/grid.html:14 +#: cps/admin.py:368 cps/opds.py:506 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "Tout" -#: cps/admin.py:394 cps/admin.py:1405 +#: cps/admin.py:395 cps/admin.py:1417 msgid "User not found" msgstr "L'utilisateur n'a pas été trouvé" -#: cps/admin.py:408 +#: cps/admin.py:409 msgid "{} users deleted successfully" msgstr "{} utilisateurs supprimés avec succès" -#: cps/admin.py:431 cps/templates/config_view_edit.html:133 +#: cps/admin.py:432 cps/templates/config_view_edit.html:133 #: cps/templates/user_edit.html:45 cps/templates/user_table.html:81 msgid "Show All" msgstr "Montrer tout" -#: cps/admin.py:452 cps/admin.py:458 +#: cps/admin.py:453 cps/admin.py:459 msgid "Malformed request" msgstr "Demande malformée" -#: cps/admin.py:470 cps/admin.py:2033 +#: cps/admin.py:471 cps/admin.py:2048 msgid "Guest Name can't be changed" msgstr "Le nom de l’invité ne peut pas être modifié" -#: cps/admin.py:482 +#: cps/admin.py:483 msgid "Guest can't have this role" msgstr "L’invité ne peut pas avoir ce rôle" -#: cps/admin.py:494 cps/admin.py:1987 +#: cps/admin.py:495 cps/admin.py:2002 msgid "No admin user remaining, can't remove admin role" msgstr "Aucun utilisateur admin restant, impossible de supprimer le rôle admin" -#: cps/admin.py:498 cps/admin.py:512 +#: cps/admin.py:499 cps/admin.py:513 msgid "Value has to be true or false" msgstr "La valeur doit être vraie ou fausse" -#: cps/admin.py:500 +#: cps/admin.py:501 msgid "Invalid role" msgstr "Rôle invalide" -#: cps/admin.py:504 +#: cps/admin.py:505 msgid "Guest can't have this view" msgstr "L’invité ne peut pas avoir cette vue" -#: cps/admin.py:514 +#: cps/admin.py:515 msgid "Invalid view" msgstr "Vue invalide" -#: cps/admin.py:517 +#: cps/admin.py:518 msgid "Guest's Locale is determined automatically and can't be set" msgstr "Les paramètres régionaux de l’invité sont déterminés automatiquement et ne peuvent pas être définis" -#: cps/admin.py:521 +#: cps/admin.py:522 msgid "No Valid Locale Given" msgstr "Aucun paramètre régional valide n’est donné" -#: cps/admin.py:532 +#: cps/admin.py:533 msgid "No Valid Book Language Given" msgstr "Aucune langue de livre valide donnée" -#: cps/admin.py:534 cps/editbooks.py:455 +#: cps/admin.py:535 cps/editbooks.py:456 msgid "Parameter not found" msgstr "Paramètre non trouvé" -#: cps/admin.py:571 +#: cps/admin.py:572 msgid "Invalid Read Column" msgstr "Colonne de lecture non valide" -#: cps/admin.py:577 +#: cps/admin.py:578 msgid "Invalid Restricted Column" msgstr "Colonne restreinte non valide" -#: cps/admin.py:597 cps/admin.py:1858 +#: cps/admin.py:598 cps/admin.py:1873 msgid "Calibre-Web configuration updated" msgstr "Configuration de Calibre-Web mise à jour" -#: cps/admin.py:609 +#: cps/admin.py:610 msgid "Do you really want to delete the Kobo Token?" msgstr "Voulez-vous vraiment supprimer le jeton Kobo ?" -#: cps/admin.py:611 +#: cps/admin.py:612 msgid "Do you really want to delete this domain?" msgstr "Voulez-vous vraiment supprimer ce domaine ?" -#: cps/admin.py:613 +#: cps/admin.py:614 msgid "Do you really want to delete this user?" msgstr "Voulez-vous vraiment supprimer cet utilisateur ?" -#: cps/admin.py:615 +#: cps/admin.py:616 msgid "Are you sure you want to delete this shelf?" msgstr "Voulez-vous vraiment supprimer l’étagère ?" -#: cps/admin.py:617 +#: cps/admin.py:618 #, fuzzy msgid "Are you sure you want to change locales of selected user(s)?" msgstr "Voulez-vous vraiment supprimer l’étagère ?" -#: cps/admin.py:619 +#: cps/admin.py:620 msgid "Are you sure you want to change visible book languages for selected user(s)?" msgstr "Voulez-vous vraiment modifier les langues de livre visibles pour le ou les utilisateurs sélectionnés ?" -#: cps/admin.py:621 +#: cps/admin.py:622 msgid "Are you sure you want to change the selected role for the selected user(s)?" msgstr "Voulez-vous vraiment modifier le rôle sélectionné pour le ou les utilisateurs sélectionnés ?" -#: cps/admin.py:623 +#: cps/admin.py:624 #, fuzzy msgid "Are you sure you want to change the selected restrictions for the selected user(s)?" msgstr "Voulez-vous vraiment modifier les restrictions sélectionnées pour le ou les utilisateurs sélectionnés ?" -#: cps/admin.py:625 +#: cps/admin.py:626 msgid "Are you sure you want to change the selected visibility restrictions for the selected user(s)?" msgstr "Voulez-vous vraiment modifier les restrictions de visibilité sélectionnées pour le ou les utilisateurs sélectionnés ?" -#: cps/admin.py:628 +#: cps/admin.py:629 #, fuzzy msgid "Are you sure you want to change shelf sync behavior for the selected user(s)?" msgstr "Voulez-vous vraiment supprimer l’étagère?" -#: cps/admin.py:630 +#: cps/admin.py:631 #, fuzzy msgid "Are you sure you want to change Calibre library location?" msgstr "Voulez-vous vraiment arrêter Calibre-Web ?" -#: cps/admin.py:632 +#: cps/admin.py:633 msgid "Calibre-Web will search for updated Covers and update Cover Thumbnails, this may take a while?" msgstr "" -#: cps/admin.py:635 +#: cps/admin.py:636 msgid "Are you sure you want delete Calibre-Web's sync database to force a full sync with your Kobo Reader?" msgstr "Êtes-vous certain de vouloir supprimer la base de données de synchronisation de Calibre-Web pour forcer une synchronisation complète avec votre liseuse Kobo ?" -#: cps/admin.py:878 cps/admin.py:884 cps/admin.py:894 cps/admin.py:904 +#: cps/admin.py:879 cps/admin.py:885 cps/admin.py:895 cps/admin.py:905 #: cps/templates/modal_dialogs.html:29 cps/templates/user_table.html:41 #: cps/templates/user_table.html:58 msgid "Deny" msgstr "Refuser" -#: cps/admin.py:880 cps/admin.py:886 cps/admin.py:896 cps/admin.py:906 +#: cps/admin.py:881 cps/admin.py:887 cps/admin.py:897 cps/admin.py:907 #: cps/templates/modal_dialogs.html:28 cps/templates/user_table.html:44 #: cps/templates/user_table.html:61 msgid "Allow" msgstr "Autoriser" -#: cps/admin.py:921 +#: cps/admin.py:940 msgid "{} sync entries deleted" msgstr "{} entrées de synchronisation supprimées" -#: cps/admin.py:969 +#: cps/admin.py:981 msgid "Tag not found" msgstr "Étiquette introuvable" -#: cps/admin.py:981 +#: cps/admin.py:993 msgid "Invalid Action" msgstr "Action invalide" -#: cps/admin.py:1111 +#: cps/admin.py:1123 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:1156 +#: cps/admin.py:1168 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:1162 +#: cps/admin.py:1174 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:1196 +#: cps/admin.py:1208 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:1202 +#: cps/admin.py:1214 #, 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:1205 +#: cps/admin.py:1217 msgid "Please Enter a LDAP Service Account" msgstr "Veuillez entrer un compte de service LDAP" -#: cps/admin.py:1210 +#: cps/admin.py:1222 #, 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:1212 +#: cps/admin.py:1224 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:1216 +#: cps/admin.py:1228 #, 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:1218 +#: cps/admin.py:1230 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:1225 +#: cps/admin.py:1237 #, 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:1227 +#: cps/admin.py:1239 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:1234 +#: cps/admin.py:1246 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:1265 cps/templates/admin.html:53 +#: cps/admin.py:1277 cps/templates/admin.html:53 msgid "Add New User" msgstr "Ajouter un nouvel utilisateur" -#: cps/admin.py:1274 cps/templates/admin.html:100 +#: cps/admin.py:1286 cps/templates/admin.html:100 msgid "Edit Email Server Settings" msgstr "Modifier les paramètres du serveur de courriels" -#: cps/admin.py:1293 +#: cps/admin.py:1305 msgid "Success! Gmail Account Verified." msgstr "" -#: cps/admin.py:1313 cps/admin.py:1316 cps/admin.py:1698 cps/admin.py:1842 -#: cps/admin.py:1940 cps/admin.py:2061 cps/editbooks.py:241 -#: cps/editbooks.py:317 cps/editbooks.py:1224 cps/shelf.py:90 cps/shelf.py:150 +#: cps/admin.py:1325 cps/admin.py:1328 cps/admin.py:1710 cps/admin.py:1857 +#: cps/admin.py:1955 cps/admin.py:2076 cps/editbooks.py:242 +#: cps/editbooks.py:318 cps/editbooks.py:1225 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:149 cps/web.py:1496 +#: cps/shelf.py:468 cps/tasks/convert.py:150 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:1323 +#: cps/admin.py:1335 #, 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:1326 +#: cps/admin.py:1338 #, 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:1328 +#: cps/admin.py:1340 msgid "Please configure your e-mail address first..." msgstr "Veuillez d'abord configurer votre adresse de courriel..." -#: cps/admin.py:1330 +#: cps/admin.py:1342 msgid "Email Server Settings updated" msgstr "Les paramètres du serveur de courriels ont été mis à jour" -#: cps/admin.py:1353 cps/templates/admin.html:195 +#: cps/admin.py:1365 cps/templates/admin.html:195 msgid "Edit Scheduled Tasks Settings" msgstr "" -#: cps/admin.py:1365 +#: cps/admin.py:1377 msgid "Invalid start time for task specified" msgstr "" -#: cps/admin.py:1370 +#: cps/admin.py:1382 msgid "Invalid duration for task specified" msgstr "" -#: cps/admin.py:1380 +#: cps/admin.py:1392 msgid "Scheduled tasks settings updated" msgstr "" -#: cps/admin.py:1390 cps/admin.py:1439 cps/admin.py:2057 cps/web.py:1296 +#: cps/admin.py:1402 cps/admin.py:1451 cps/admin.py:2072 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:1394 +#: cps/admin.py:1406 msgid "Settings DB is not Writeable" msgstr "" -#: cps/admin.py:1424 cps/admin.py:2049 +#: cps/admin.py:1436 cps/admin.py:2064 #, python-format msgid "Edit User %(nick)s" msgstr "Éditer l'utilisateur %(nick)s" -#: cps/admin.py:1436 +#: cps/admin.py:1448 #, 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:1442 +#: cps/admin.py:1454 #, fuzzy msgid "Oops! Please configure the SMTP mail settings." msgstr "Veuillez configurer les paramètres SMTP au préalable..." -#: cps/admin.py:1453 +#: cps/admin.py:1465 msgid "Logfile viewer" msgstr "Visualiseur de fichier journal" -#: cps/admin.py:1519 +#: cps/admin.py:1531 msgid "Requesting update package" msgstr "Demande de mise à jour" -#: cps/admin.py:1520 +#: cps/admin.py:1532 msgid "Downloading update package" msgstr "Téléchargement de la mise à jour" -#: cps/admin.py:1521 +#: cps/admin.py:1533 msgid "Unzipping update package" msgstr "Décompression de la mise à jour" -#: cps/admin.py:1522 +#: cps/admin.py:1534 msgid "Replacing files" msgstr "Remplacement des fichiers" -#: cps/admin.py:1523 +#: cps/admin.py:1535 msgid "Database connections are closed" msgstr "Les connexions à la base de données ont été fermées" -#: cps/admin.py:1524 +#: cps/admin.py:1536 msgid "Stopping server" msgstr "Arrêt du serveur" -#: cps/admin.py:1525 +#: cps/admin.py:1537 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:1526 cps/admin.py:1527 cps/admin.py:1528 cps/admin.py:1529 -#: cps/admin.py:1530 cps/admin.py:1531 +#: cps/admin.py:1538 cps/admin.py:1539 cps/admin.py:1540 cps/admin.py:1541 +#: cps/admin.py:1542 cps/admin.py:1543 msgid "Update failed:" msgstr "La mise à jour a échoué :" -#: cps/admin.py:1526 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 +#: cps/admin.py:1538 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 msgid "HTTP Error" msgstr "Erreur HTTP" -#: cps/admin.py:1527 cps/updater.py:391 cps/updater.py:628 +#: cps/admin.py:1539 cps/updater.py:391 cps/updater.py:628 msgid "Connection error" msgstr "Erreur de connexion" -#: cps/admin.py:1528 cps/updater.py:393 cps/updater.py:630 +#: cps/admin.py:1540 cps/updater.py:393 cps/updater.py:630 msgid "Timeout while establishing connection" msgstr "Délai d'attente dépassé lors de l'établissement de connexion" -#: cps/admin.py:1529 cps/updater.py:395 cps/updater.py:632 +#: cps/admin.py:1541 cps/updater.py:395 cps/updater.py:632 msgid "General error" msgstr "Erreur générale" -#: cps/admin.py:1530 +#: cps/admin.py:1542 #, 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:1531 +#: cps/admin.py:1543 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:1555 +#: cps/admin.py:1567 #, fuzzy msgid "Failed to extract at least One LDAP User" msgstr "Impossible de créer au moins un utilisateur LDAP" -#: cps/admin.py:1600 +#: cps/admin.py:1612 msgid "Failed to Create at Least One LDAP User" msgstr "Impossible de créer au moins un utilisateur LDAP" -#: cps/admin.py:1613 +#: cps/admin.py:1625 #, python-format msgid "Error: %(ldaperror)s" msgstr "Erreur : %(ldaperror)s" -#: cps/admin.py:1617 +#: cps/admin.py:1629 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:1650 +#: 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:1652 +#: cps/admin.py:1664 msgid "{} User Successfully Imported" msgstr "{} utilisateur importé avec succès" -#: cps/admin.py:1710 +#: 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:1730 +#: cps/admin.py:1742 msgid "DB is not Writeable" msgstr "La base de données n'est pas accessible en écriture" -#: cps/admin.py:1746 +#: 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:1750 +#: 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:1829 +#: cps/admin.py:1842 msgid "Password length has to be between 1 and 40" msgstr "" -#: cps/admin.py:1881 +#: cps/admin.py:1896 #, fuzzy msgid "Database Settings updated" msgstr "Les paramètres du serveur de courriels ont été mis à jour" -#: cps/admin.py:1889 +#: cps/admin.py:1904 #, fuzzy msgid "Database Configuration" msgstr "Configuration des options" -#: cps/admin.py:1904 cps/web.py:1270 +#: cps/admin.py:1919 cps/web.py:1290 msgid "Oops! Please complete all fields." msgstr "Veuillez compléter tous les champs !" -#: cps/admin.py:1913 +#: cps/admin.py:1928 msgid "E-mail is not from valid domain" msgstr "Cette adresse de courriel n’appartient pas à un domaine valide" -#: cps/admin.py:1919 +#: cps/admin.py:1934 msgid "Add new user" msgstr "Ajouter un nouvel utilisateur" -#: cps/admin.py:1930 +#: cps/admin.py:1945 #, python-format msgid "User '%(user)s' created" msgstr "Utilisateur '%(user)s' créé" -#: cps/admin.py:1936 +#: cps/admin.py:1951 #, 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:1966 +#: cps/admin.py:1981 #, python-format msgid "User '%(nick)s' deleted" msgstr "Utilisateur '%(nick)s' supprimé" -#: cps/admin.py:1969 +#: cps/admin.py:1984 msgid "Can't delete Guest User" msgstr "Impossible de supprimer l’utilisateur Invité" -#: cps/admin.py:1972 +#: cps/admin.py:1987 msgid "No admin user remaining, can't delete user" msgstr "Aucun utilisateur admin restant, impossible de supprimer l’utilisateur" -#: cps/admin.py:2027 cps/web.py:1445 +#: cps/admin.py:2042 cps/web.py:1469 msgid "Email can't be empty and has to be a valid Email" msgstr "" -#: cps/admin.py:2053 +#: cps/admin.py:2068 #, python-format msgid "User '%(nick)s' updated" msgstr "Utilisateur '%(nick)s' mis à jour" @@ -545,122 +545,123 @@ msgstr "non installé" msgid "Execution permissions missing" msgstr "Les permissions d'exécutions manquantes" -#: cps/db.py:752 cps/search.py:137 cps/web.py:731 +#: cps/db.py:752 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:993 cps/templates/config_edit.html:208 +#: cps/db.py:992 cps/templates/config_edit.html:208 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 -#: cps/web.py:558 cps/web.py:592 cps/web.py:665 cps/web.py:692 cps/web.py:973 -#: cps/web.py:1003 cps/web.py:1048 cps/web.py:1076 cps/web.py:1115 +#: 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 +#: cps/web.py:1131 msgid "None" msgstr "Aucun" -#: cps/editbooks.py:122 cps/editbooks.py:910 cps/web.py:525 cps/web.py:1537 -#: cps/web.py:1581 cps/web.py:1626 +#: cps/editbooks.py:123 cps/editbooks.py:911 cps/web.py:529 cps/web.py:1561 +#: cps/web.py:1605 cps/web.py:1650 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:166 cps/editbooks.py:1245 +#: cps/editbooks.py:167 cps/editbooks.py:1246 msgid "User has no rights to upload cover" msgstr "" -#: cps/editbooks.py:186 cps/editbooks.py:731 +#: cps/editbooks.py:187 cps/editbooks.py:732 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:228 +#: cps/editbooks.py:229 msgid "Metadata successfully updated" msgstr "Les métadonnées ont bien été mises à jour" -#: cps/editbooks.py:246 +#: cps/editbooks.py:247 msgid "Error editing book: {}" msgstr "" -#: cps/editbooks.py:303 +#: cps/editbooks.py:304 #, python-format msgid "File %(file)s uploaded" msgstr "Le fichier %(file)s a été téléchargé" -#: cps/editbooks.py:331 +#: cps/editbooks.py:332 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:339 +#: cps/editbooks.py:340 #, 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:343 +#: cps/editbooks.py:344 #, 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:650 +#: cps/editbooks.py:651 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:705 cps/editbooks.py:1037 +#: cps/editbooks.py:706 cps/editbooks.py:1038 #, fuzzy, python-format msgid "'%(langname)s' is not a valid language" msgstr "%(langname)s n'est pas une langue valide" -#: cps/editbooks.py:743 cps/editbooks.py:1185 +#: cps/editbooks.py:744 cps/editbooks.py:1186 #, 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:747 cps/editbooks.py:1189 +#: cps/editbooks.py:748 cps/editbooks.py:1190 msgid "File to be uploaded must have an extension" msgstr "Pour être déposé le fichier doit avoir une extension" -#: cps/editbooks.py:755 +#: cps/editbooks.py:756 #, 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:775 +#: cps/editbooks.py:776 #, 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:832 cps/editbooks.py:834 +#: cps/editbooks.py:833 cps/editbooks.py:835 msgid "Book Format Successfully Deleted" msgstr "Le format du livre a été supprimé avec succès" -#: cps/editbooks.py:841 cps/editbooks.py:843 +#: cps/editbooks.py:842 cps/editbooks.py:844 msgid "Book Successfully Deleted" msgstr "Le livre a été supprimé avec succès" -#: cps/editbooks.py:895 +#: cps/editbooks.py:896 msgid "You are missing permissions to delete books" msgstr "Vous n’avez par les permissions pour supprimer les livres" -#: cps/editbooks.py:945 +#: cps/editbooks.py:946 msgid "edit metadata" msgstr "modifier les métadonnées" -#: cps/editbooks.py:994 +#: cps/editbooks.py:995 #, python-format msgid "%(seriesindex)s is not a valid number, skipping" msgstr "%(seriesindex)s n’est pas un nombre valide, ignoré" -#: cps/editbooks.py:1180 +#: cps/editbooks.py:1181 msgid "User has no rights to upload additional file formats" msgstr "" -#: cps/editbooks.py:1201 +#: cps/editbooks.py:1202 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "Impossible de créer le chemin %(path)s (Permission refusée)." -#: cps/editbooks.py:1206 +#: cps/editbooks.py:1207 #, python-format msgid "Failed to store file %(file)s." msgstr "Échec de la sauvegarde du fichier %(file)s." -#: cps/editbooks.py:1230 +#: cps/editbooks.py:1231 #, python-format msgid "File format %(ext)s added to %(book)s" msgstr "Le format de fichier %(ext)s a été ajouté à %(book)s" @@ -673,208 +674,208 @@ msgstr "La configuration de Google Drive n’est pas terminée, essayez de désa 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" -#: cps/helper.py:84 +#: cps/helper.py:86 #, python-format 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:91 cps/tasks/convert.py:86 +#: cps/helper.py:93 cps/tasks/convert.py:86 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "le %(format)s est introuvable sur Google Drive : %(fn)s" -#: cps/helper.py:96 +#: cps/helper.py:98 #, python-format msgid "%(format)s not found: %(fn)s" msgstr "%(format)s introuvable : %(fn)s" -#: cps/helper.py:101 cps/helper.py:226 cps/templates/detail.html:58 +#: cps/helper.py:103 cps/helper.py:228 cps/templates/detail.html:58 #, fuzzy msgid "Send to eReader" msgstr "Envoyer vers Kindle" -#: cps/helper.py:102 cps/helper.py:120 cps/helper.py:228 +#: cps/helper.py:104 cps/helper.py:122 cps/helper.py:230 #, fuzzy msgid "This Email has been sent via Calibre-Web." msgstr "Ce courriel a été envoyé depuis Calibre-Web." -#: cps/helper.py:118 +#: cps/helper.py:120 #, fuzzy msgid "Calibre-Web Test Email" msgstr "Courriel de test de Calibre-Web" -#: cps/helper.py:119 +#: cps/helper.py:121 #, fuzzy msgid "Test Email" msgstr "Courriel de test" -#: cps/helper.py:136 +#: cps/helper.py:138 msgid "Get Started with Calibre-Web" msgstr "Bien démarrer avec Calibre-Web" -#: cps/helper.py:141 +#: cps/helper.py:143 #, fuzzy, python-format msgid "Registration Email for user: %(name)s" msgstr "Courriel d’inscription pour l’utilisateur : %(name)s" -#: cps/helper.py:152 cps/helper.py:158 +#: cps/helper.py:154 cps/helper.py:160 #, fuzzy, python-format msgid "Convert %(orig)s to %(format)s and send to eReader" msgstr "Convertir de %(orig)s vers %(format)s et envoyer au Kindle" -#: cps/helper.py:177 cps/helper.py:181 cps/helper.py:185 +#: cps/helper.py:179 cps/helper.py:183 cps/helper.py:187 #, fuzzy, python-format msgid "Send %(format)s to eReader" msgstr "Envoyer %(format)s vers le Kindle" -#: cps/helper.py:225 +#: cps/helper.py:227 #, fuzzy, python-format msgid "%(book)s send to eReader" msgstr "Envoyer vers Kindle" -#: cps/helper.py:230 +#: cps/helper.py:232 msgid "The requested file could not be read. Maybe wrong permissions?" msgstr "Le fichier demandé n’a pu être lu. Problème de permission d’accès ?" -#: cps/helper.py:345 +#: cps/helper.py:347 msgid "Read status could not set: {}" msgstr "" -#: cps/helper.py:368 +#: cps/helper.py:370 #, python-format msgid "Deleting bookfolder for book %(id)s failed, path has subfolders: %(path)s" msgstr "Échec de la suppression du dossier de livre pour le livre %(id)s, le chemin d’accès comporte des sous-dossiers : %(path)s" -#: cps/helper.py:374 +#: cps/helper.py:376 #, python-format msgid "Deleting book %(id)s failed: %(message)s" msgstr "La suppression du livre %(id)s a échoué: %(message)s" -#: cps/helper.py:385 +#: cps/helper.py:387 #, fuzzy, python-format 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:450 +#: cps/helper.py:452 #, 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:522 cps/helper.py:531 +#: cps/helper.py:524 cps/helper.py:533 #, 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:565 +#: cps/helper.py:567 #, 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:585 +#: cps/helper.py:587 msgid "Error in rename file in path: {}" msgstr "" -#: cps/helper.py:603 +#: cps/helper.py:605 #, 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:668 +#: cps/helper.py:670 msgid "Found an existing account for this Email address" msgstr "" -#: cps/helper.py:676 +#: cps/helper.py:678 msgid "This username is already taken" msgstr "Cet utilisateur est déjà pris" -#: cps/helper.py:688 +#: cps/helper.py:690 #, fuzzy msgid "Invalid Email address format" msgstr "Format de l’adresse courriel invalide" -#: cps/helper.py:706 +#: cps/helper.py:710 msgid "Password doesn't comply with password validation rules" msgstr "" -#: cps/helper.py:855 +#: cps/helper.py:859 msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "" -#: cps/helper.py:865 +#: cps/helper.py:869 msgid "Error Downloading Cover" msgstr "Erreur lors du téléchargement de la couverture" -#: cps/helper.py:868 +#: cps/helper.py:872 msgid "Cover Format Error" msgstr "Erreur de format de couverture" -#: cps/helper.py:871 +#: cps/helper.py:875 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "" -#: cps/helper.py:881 +#: cps/helper.py:885 msgid "Failed to create path for cover" msgstr "Impossible de créer le chemin pour la couverture" -#: cps/helper.py:897 +#: cps/helper.py:901 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:908 +#: cps/helper.py:912 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:920 +#: cps/helper.py:924 msgid "Invalid cover file content" msgstr "Contenu du fichier de couverture invalide" -#: cps/helper.py:924 +#: cps/helper.py:928 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:995 cps/helper.py:1183 +#: cps/helper.py:999 cps/helper.py:1156 #, fuzzy msgid "Cover" msgstr "Découvrir" -#: cps/helper.py:1032 +#: cps/helper.py:1016 msgid "Unrar binary file not found" msgstr "Fichier binaire Unrar non trouvé" -#: cps/helper.py:1043 +#: cps/helper.py:1027 #, fuzzy msgid "Error executing UnRar" msgstr "Une erreur est survenue lors de l'exécution d'UnRar" -#: cps/helper.py:1051 +#: cps/helper.py:1035 msgid "Could not find the specified directory" msgstr "" -#: cps/helper.py:1054 +#: cps/helper.py:1038 msgid "Please specify a directory, not a file" msgstr "" -#: cps/helper.py:1068 +#: cps/helper.py:1052 #, fuzzy msgid "Calibre binaries not viable" msgstr "La base de données n'est pas accessible en écriture" -#: cps/helper.py:1077 +#: cps/helper.py:1061 #, python-format msgid "Missing calibre binaries: %(missing)s" msgstr "" -#: cps/helper.py:1079 +#: cps/helper.py:1063 #, fuzzy, python-format msgid "Missing executable permissions: %(missing)s" msgstr "Les permissions d'exécutions manquantes" -#: cps/helper.py:1084 +#: cps/helper.py:1068 #, fuzzy msgid "Error excecuting Calibre" msgstr "Une erreur est survenue lors de l'exécution d'UnRar" -#: cps/helper.py:1185 cps/templates/admin.html:216 +#: cps/helper.py:1158 cps/templates/admin.html:216 msgid "Queue all books for metadata backup" msgstr "" @@ -959,7 +960,7 @@ msgstr "{} Étoiles" #: cps/remotelogin.py:62 cps/templates/layout.html:67 #: cps/templates/layout.html:101 cps/templates/login.html:4 -#: cps/templates/login.html:21 cps/web.py:1333 +#: cps/templates/login.html:21 cps/web.py:1353 msgid "Login" msgstr "Connexion" @@ -975,7 +976,7 @@ msgstr "Jeton expiré" msgid "Success! Please return to your device" msgstr "Réussite! Merci de vous tourner vers votre appareil" -#: cps/render_template.py:42 cps/web.py:414 +#: cps/render_template.py:42 cps/web.py:418 msgid "Books" msgstr "Livres" @@ -1000,7 +1001,7 @@ msgstr "Livres téléchargés" msgid "Show Downloaded Books" msgstr "Montrer les livres téléchargés" -#: cps/render_template.py:59 cps/templates/index.xml:33 cps/web.py:429 +#: cps/render_template.py:59 cps/templates/index.xml:33 cps/web.py:433 msgid "Top Rated Books" msgstr "Livres les mieux notés" @@ -1009,7 +1010,7 @@ msgid "Show Top Rated Books" msgstr "Montrer les livres les mieux notés" #: cps/render_template.py:62 cps/templates/index.xml:55 -#: cps/templates/index.xml:59 cps/web.py:750 +#: cps/templates/index.xml:59 cps/web.py:766 msgid "Read Books" msgstr "Livres lus" @@ -1019,7 +1020,7 @@ msgid "Show Read and Unread" msgstr "Montrer lus et non-lus" #: cps/render_template.py:66 cps/templates/index.xml:62 -#: cps/templates/index.xml:66 cps/web.py:753 +#: cps/templates/index.xml:66 cps/web.py:769 msgid "Unread Books" msgstr "Livres non-lus" @@ -1037,7 +1038,7 @@ msgid "Show Random Books" msgstr "Montrer des livres au hasard" #: cps/render_template.py:72 cps/templates/book_table.html:67 -#: cps/templates/index.xml:84 cps/web.py:1119 +#: cps/templates/index.xml:84 cps/web.py:1135 msgid "Categories" msgstr "Catégories" @@ -1048,7 +1049,7 @@ msgstr "Montrer la sélection par catégories" #: cps/render_template.py:75 cps/templates/book_edit.html:91 #: cps/templates/book_table.html:68 cps/templates/index.xml:91 -#: cps/templates/search_form.html:70 cps/web.py:1009 cps/web.py:1021 +#: cps/templates/search_form.html:70 cps/web.py:1025 cps/web.py:1037 msgid "Series" msgstr "Séries" @@ -1068,7 +1069,7 @@ msgid "Show Author Section" msgstr "Montrer la sélection par auteur" #: cps/render_template.py:82 cps/templates/book_table.html:72 -#: cps/templates/index.xml:77 cps/web.py:977 +#: cps/templates/index.xml:77 cps/web.py:993 msgid "Publishers" msgstr "Éditeurs" @@ -1079,7 +1080,7 @@ msgstr "Montrer la sélection par éditeur" #: cps/render_template.py:85 cps/templates/book_table.html:70 #: cps/templates/index.xml:98 cps/templates/search_form.html:108 -#: cps/web.py:1091 +#: cps/web.py:1107 msgid "Languages" msgstr "Langues" @@ -1106,7 +1107,7 @@ msgstr "Formats de fichier" msgid "Show File Formats Section" msgstr "Afficher la sélection des formats de fichiers" -#: cps/render_template.py:96 cps/web.py:776 +#: cps/render_template.py:96 cps/web.py:792 msgid "Archived Books" msgstr "Livres archivés" @@ -1115,7 +1116,7 @@ msgstr "Livres archivés" msgid "Show Archived Books" msgstr "Afficher les livres archivés" -#: cps/render_template.py:101 cps/web.py:807 +#: cps/render_template.py:101 cps/web.py:823 msgid "Books List" msgstr "Liste des livres" @@ -1339,173 +1340,178 @@ msgstr "Une nouvelle mise à jour est disponible. Cliquez sur le bouton ci-desso msgid "No release information available" msgstr "Aucune information concernant cette version n’est disponible" -#: cps/templates/index.html:6 cps/web.py:441 +#: cps/templates/index.html:6 cps/web.py:445 msgid "Discover (Random Books)" msgstr "Découvrir (Livres au hasard)" -#: cps/web.py:477 +#: cps/web.py:481 msgid "Hot Books (Most Downloaded)" msgstr "Livres populaires (les plus téléchargés)" -#: cps/web.py:508 +#: cps/web.py:512 #, python-format msgid "Downloaded books by %(user)s" msgstr "Livres téléchargés par %(user)s" -#: cps/web.py:541 +#: cps/web.py:545 #, python-format msgid "Author: %(name)s" msgstr "Auteur : %(name)s" -#: cps/web.py:577 +#: cps/web.py:581 #, python-format msgid "Publisher: %(name)s" msgstr "Éditeur : '%(name)s'" -#: cps/web.py:605 +#: cps/web.py:609 #, python-format msgid "Series: %(serie)s" msgstr "Séries : %(serie)s" -#: cps/web.py:620 +#: cps/web.py:623 msgid "Rating: None" msgstr "" -#: cps/web.py:629 +#: cps/web.py:632 #, python-format msgid "Rating: %(rating)s stars" msgstr "Évaluation : %(rating)s étoiles" -#: cps/web.py:645 +#: cps/web.py:663 #, python-format msgid "File format: %(format)s" msgstr "Format de fichier : %(format)s" -#: cps/web.py:682 +#: cps/web.py:698 #, python-format msgid "Category: %(name)s" msgstr "Catégorie : %(name)s" -#: cps/web.py:711 +#: cps/web.py:727 #, python-format msgid "Language: %(name)s" msgstr "Langue : %(name)s" -#: cps/templates/admin.html:16 cps/web.py:949 +#: cps/templates/admin.html:16 cps/web.py:965 msgid "Downloads" msgstr "Téléchargements" -#: cps/web.py:1051 +#: cps/web.py:1067 msgid "Ratings list" msgstr "Liste des évaluations" -#: cps/web.py:1078 +#: cps/web.py:1094 msgid "File formats list" msgstr "Liste de formats de fichiers" -#: cps/web.py:1233 +#: cps/web.py:1249 #, fuzzy msgid "Please configure the SMTP mail settings first..." msgstr "Veuillez configurer les paramètres SMTP au préalable..." -#: cps/web.py:1240 +#: cps/web.py:1256 #, python-format msgid "Success! Book queued for sending to %(eReadermail)s" msgstr "Le livre a été mis en file de traitement avec succès pour un envoi vers %(eReadermail)s" -#: cps/web.py:1243 +#: cps/web.py:1259 #, python-format msgid "Oops! There was an error sending book: %(res)s" msgstr "Il y a eu une erreur en envoyant ce livre : %(res)s" -#: cps/web.py:1245 +#: cps/web.py:1261 #, fuzzy msgid "Oops! Please update your profile with a valid eReader Email." msgstr "Veuillez mettre à jour votre profil avec une adresse de courriel Kindle valide." -#: cps/web.py:1261 +#: cps/web.py:1277 msgid "Please wait one minute to register next user" msgstr "" #: cps/templates/layout.html:68 cps/templates/layout.html:102 -#: cps/templates/login.html:27 cps/templates/register.html:17 cps/web.py:1262 -#: cps/web.py:1267 cps/web.py:1271 cps/web.py:1277 cps/web.py:1297 -#: cps/web.py:1301 cps/web.py:1314 cps/web.py:1317 +#: cps/templates/login.html:27 cps/templates/register.html:17 cps/web.py:1278 +#: cps/web.py:1282 cps/web.py:1287 cps/web.py:1291 cps/web.py:1297 +#: cps/web.py:1317 cps/web.py:1321 cps/web.py:1334 cps/web.py:1337 msgid "Register" msgstr "Créer un compte" -#: cps/web.py:1266 cps/web.py:1313 +#: cps/web.py:1281 cps/web.py:1385 +#, fuzzy +msgid "Connection error to limiter backend, please contact your administrator" +msgstr "Le serveur de courriel n'est pas configuré, veuillez contacter votre administrateur!" + +#: cps/web.py:1286 cps/web.py:1333 msgid "Oops! Email server is not configured, please contact your administrator." msgstr "Le serveur de courriel n'est pas configuré, veuillez contacter votre administrateur!" -#: cps/web.py:1299 +#: cps/web.py:1319 msgid "Oops! Your Email is not allowed." msgstr "Votre adresse de courriel n’est pas autorisé pour une inscription" -#: cps/web.py:1302 +#: cps/web.py:1322 msgid "Success! Confirmation Email has been sent." msgstr "Le courriel de confirmation a été envoyé à votre adresse." -#: cps/web.py:1348 cps/web.py:1367 +#: cps/web.py:1368 cps/web.py:1391 #, fuzzy msgid "Cannot activate LDAP authentication" msgstr "Impossible d’activer l’authentification LDAP" -#: cps/web.py:1361 +#: cps/web.py:1381 msgid "Please wait one minute before next login" msgstr "" -#: cps/web.py:1376 +#: cps/web.py:1400 #, fuzzy, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "vous êtes maintenant connecté comme : '%(nickname)s'" -#: cps/web.py:1383 +#: cps/web.py:1407 #, fuzzy, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgstr "Connexion de secours comme: '%(nickname)s', le serveur LDAP est indisponible, ou l'utilisateur est inconnu" -#: cps/web.py:1388 +#: cps/web.py:1412 #, fuzzy, python-format msgid "Could not login: %(message)s" msgstr "Impossible de se connecter: %(message)s" -#: cps/web.py:1392 cps/web.py:1417 +#: cps/web.py:1416 cps/web.py:1441 #, fuzzy msgid "Wrong Username or Password" msgstr "Mauvais nom d'utilisateur ou mot de passe" -#: cps/web.py:1399 +#: cps/web.py:1423 #, fuzzy msgid "New Password was sent to your email address" msgstr "Le nouveau mot de passe a été envoyé vers votre adresse de courriel" -#: cps/web.py:1403 +#: cps/web.py:1427 #, fuzzy msgid "An unknown error occurred. Please try again later." msgstr "Une erreur inconnue est survenue. Veuillez réessayer plus tard." -#: cps/web.py:1405 +#: cps/web.py:1429 #, fuzzy msgid "Please enter valid username to reset password" msgstr "Veuillez entrer un nom d'utilisateur valide pour réinitialiser le mot de passe" -#: cps/web.py:1413 +#: cps/web.py:1437 #, fuzzy, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "vous êtes maintenant connecté comme : '%(nickname)s'" -#: cps/web.py:1471 cps/web.py:1521 +#: cps/web.py:1495 cps/web.py:1545 #, python-format msgid "%(name)s's Profile" msgstr "Profil de %(name)s" -#: cps/web.py:1487 +#: cps/web.py:1511 #, fuzzy msgid "Success! Profile Updated" msgstr "Profil mis à jour" -#: cps/web.py:1491 +#: cps/web.py:1515 #, fuzzy msgid "Oops! An account already exists for this Email." msgstr "Un compte existant a été trouvé pour cette adresse de courriel." @@ -1519,41 +1525,41 @@ msgstr "Aucun fichier gmail.json avec information OAuth valide trouvé" msgid "%(book)s send to E-Reader" msgstr "Envoyer vers Kindle" -#: cps/tasks/convert.py:166 +#: cps/tasks/convert.py:167 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "ebook-convert calibre %(tool)s non trouvé" -#: cps/tasks/convert.py:200 +#: cps/tasks/convert.py:201 #, python-format msgid "%(format)s format not found on disk" msgstr "Format %(format)s non trouvé sur le disque" -#: cps/tasks/convert.py:204 +#: cps/tasks/convert.py:205 msgid "Ebook converter failed with unknown error" msgstr "Le convertisseur Ebook a échoué avec une erreur inconnue" -#: cps/tasks/convert.py:223 +#: cps/tasks/convert.py:224 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "La commande Kepubify-converter a échouée : %(error)s" -#: cps/tasks/convert.py:244 +#: cps/tasks/convert.py:245 #, 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:279 +#: cps/tasks/convert.py:287 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "La commande ebook-convert a échouée : %(error)s" -#: cps/tasks/convert.py:302 +#: cps/tasks/convert.py:310 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "Calibre a échoué avec l’erreur : %(error)s" -#: cps/tasks/convert.py:307 +#: cps/tasks/convert.py:315 msgid "Convert" msgstr "" @@ -1561,7 +1567,7 @@ msgstr "" msgid "Reconnecting Calibre database" msgstr "" -#: cps/tasks/mail.py:269 +#: cps/tasks/mail.py:278 msgid "E-mail" msgstr "" @@ -1841,12 +1847,12 @@ 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:414 -#: cps/templates/config_view_edit.html:175 cps/templates/modal_dialogs.html:64 -#: cps/templates/modal_dialogs.html:99 cps/templates/modal_dialogs.html:117 -#: cps/templates/modal_dialogs.html:135 cps/templates/schedule_edit.html:45 -#: cps/templates/shelf_edit.html:27 cps/templates/tasks.html:46 -#: cps/templates/user_edit.html:144 +#: cps/templates/config_db.html:66 cps/templates/config_edit.html:428 +#: 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 +#: cps/templates/schedule_edit.html:45 cps/templates/shelf_edit.html:27 +#: cps/templates/tasks.html:46 cps/templates/user_edit.html:144 msgid "Cancel" msgstr "Annuler" @@ -2027,7 +2033,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:413 cps/templates/config_view_edit.html:174 +#: cps/templates/config_edit.html:427 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 @@ -2195,7 +2201,7 @@ msgid "Location of Calibre Database" msgstr "Emplacement de la base de données Calibre" #: cps/templates/config_db.html:21 -msgid "Separate Book files from Library (Highly experimental, might not work at all)" +msgid "Separate Book Files from Library" msgstr "" #: cps/templates/config_db.html:34 @@ -2280,7 +2286,7 @@ msgid "Convert non-English characters in title and author while saving to disk" msgstr "Convertir les caractères non-anglais des titre et auteur lors de l’enregistrement sur le disque" #: cps/templates/config_edit.html:108 -msgid "Embed Metadata to Ebook File on Download and Conversion (needs Calibre/Kepubify binaries)" +msgid "Embed Metadata to Ebook File on Download/Conversion/e-mail (needs Calibre/Kepubify binaries)" msgstr "" #: cps/templates/config_edit.html:112 @@ -2504,40 +2510,52 @@ msgstr "Réglages OAuth" msgid "Limit failed login attempts" msgstr "" -#: cps/templates/config_edit.html:376 +#: cps/templates/config_edit.html:377 +msgid "Configure Backend for Limiter" +msgstr "" + +#: cps/templates/config_edit.html:381 +msgid "Options for Limiter" +msgstr "" + +#: cps/templates/config_edit.html:386 msgid "Session protection" msgstr "" -#: cps/templates/config_edit.html:378 +#: cps/templates/config_edit.html:388 msgid "Basic" msgstr "" -#: cps/templates/config_edit.html:379 +#: cps/templates/config_edit.html:389 msgid "Strong" msgstr "" -#: cps/templates/config_edit.html:384 +#: cps/templates/config_edit.html:394 #, fuzzy msgid "User Password policy" msgstr "Réinitialiser le mot de passe de l’utilisateur" -#: cps/templates/config_edit.html:388 +#: cps/templates/config_edit.html:398 msgid "Minimum password length" msgstr "" -#: cps/templates/config_edit.html:393 +#: cps/templates/config_edit.html:403 msgid "Enforce number" msgstr "" -#: cps/templates/config_edit.html:397 +#: cps/templates/config_edit.html:407 msgid "Enforce lowercase characters" msgstr "" -#: cps/templates/config_edit.html:401 +#: cps/templates/config_edit.html:411 msgid "Enforce uppercase characters" msgstr "" -#: cps/templates/config_edit.html:405 +#: cps/templates/config_edit.html:415 +msgid "Enforce characters (needed For Chinese/Japanese/Korean Characters)" +msgstr "" + +#: cps/templates/config_edit.html:419 msgid "Enforce special characters" msgstr "" @@ -2661,47 +2679,47 @@ msgstr "Livre %(index)s sur %(range)s" msgid "Published" msgstr "Publié" -#: cps/templates/detail.html:250 cps/templates/listenmp3.html:158 +#: cps/templates/detail.html:251 cps/templates/listenmp3.html:158 msgid "Mark As Unread" msgstr "Marquer comme non lu" -#: cps/templates/detail.html:251 cps/templates/listenmp3.html:158 +#: cps/templates/detail.html:252 cps/templates/listenmp3.html:158 msgid "Mark As Read" msgstr "Marquer comme lu" -#: cps/templates/detail.html:253 cps/templates/listenmp3.html:159 +#: cps/templates/detail.html:254 cps/templates/listenmp3.html:159 msgid "Read" msgstr "Lu" -#: cps/templates/detail.html:263 cps/templates/listenmp3.html:166 +#: cps/templates/detail.html:264 cps/templates/listenmp3.html:166 msgid "Restore from archive" msgstr "Restaurer à partir de l'archive" -#: cps/templates/detail.html:264 cps/templates/listenmp3.html:166 +#: cps/templates/detail.html:265 cps/templates/listenmp3.html:166 msgid "Add to archive" msgstr "Ajouter comme archive" -#: cps/templates/detail.html:266 cps/templates/listenmp3.html:167 +#: cps/templates/detail.html:267 cps/templates/listenmp3.html:167 msgid "Archived" msgstr "Archivé" -#: cps/templates/detail.html:277 cps/templates/listenmp3.html:177 +#: cps/templates/detail.html:278 cps/templates/listenmp3.html:177 msgid "Description:" msgstr "Description :" -#: cps/templates/detail.html:292 cps/templates/listenmp3.html:190 +#: cps/templates/detail.html:293 cps/templates/listenmp3.html:190 #: cps/templates/search.html:16 msgid "Add to shelf" msgstr "Ajouter à l'étagère" -#: cps/templates/detail.html:304 cps/templates/detail.html:323 +#: cps/templates/detail.html:305 cps/templates/detail.html:324 #: cps/templates/feed.xml:81 cps/templates/layout.html:154 #: cps/templates/listenmp3.html:201 cps/templates/listenmp3.html:218 #: cps/templates/search.html:22 msgid "(Public)" msgstr "(Public)" -#: cps/templates/detail.html:339 +#: cps/templates/detail.html:340 msgid "Edit Metadata" msgstr "Éditer les métadonnées" diff --git a/cps/translations/gl/LC_MESSAGES/messages.mo b/cps/translations/gl/LC_MESSAGES/messages.mo index ce4969cf..9bba2fa5 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 4df398ed..f7b707a0 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-02-10 10:06+0100\n" +"POT-Creation-Date: 2024-04-27 07:20+0200\n" "PO-Revision-Date: 2022-08-11 16:46+0200\n" "Last-Translator: pollitor \n" "Language: gl\n" @@ -20,491 +20,491 @@ msgstr "" msgid "Statistics" msgstr "Estatísticas" -#: cps/admin.py:149 +#: cps/admin.py:150 #, fuzzy msgid "Server restarted, please reload page." msgstr "Servidor reiniciado. Por favor, recargue a páxina" -#: cps/admin.py:151 +#: cps/admin.py:152 #, fuzzy msgid "Performing Server shutdown, please close window." msgstr "O servidor estase apagando. Por favor, peche a xanela" -#: cps/admin.py:159 +#: cps/admin.py:160 msgid "Success! Database Reconnected" msgstr "" -#: cps/admin.py:162 +#: cps/admin.py:163 msgid "Unknown command" msgstr "Orde descoñecida" -#: cps/admin.py:173 +#: cps/admin.py:174 #, fuzzy 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:206 cps/editbooks.py:589 cps/editbooks.py:591 -#: cps/editbooks.py:629 cps/editbooks.py:646 cps/editbooks.py:1262 +#: cps/admin.py:207 cps/editbooks.py:590 cps/editbooks.py:592 +#: cps/editbooks.py:630 cps/editbooks.py:647 cps/editbooks.py:1263 #: cps/updater.py:613 cps/uploader.py:93 cps/uploader.py:102 msgid "Unknown" msgstr "Descoñecido" -#: cps/admin.py:231 +#: cps/admin.py:232 msgid "Admin page" msgstr "Páxina de administración" -#: cps/admin.py:251 +#: cps/admin.py:252 msgid "Basic Configuration" msgstr "Configuración Básica" -#: cps/admin.py:289 +#: cps/admin.py:290 msgid "UI Configuration" msgstr "Configuración da Interface de Usuario" -#: cps/admin.py:323 cps/templates/admin.html:51 +#: cps/admin.py:324 cps/templates/admin.html:51 msgid "Edit Users" msgstr "Editar Usuarios" -#: cps/admin.py:367 cps/opds.py:506 cps/templates/grid.html:14 +#: cps/admin.py:368 cps/opds.py:506 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "Todo" -#: cps/admin.py:394 cps/admin.py:1405 +#: cps/admin.py:395 cps/admin.py:1417 msgid "User not found" msgstr "Usuario non atopado" -#: cps/admin.py:408 +#: cps/admin.py:409 msgid "{} users deleted successfully" msgstr "{} usuarios borrados con éxito" -#: cps/admin.py:431 cps/templates/config_view_edit.html:133 +#: cps/admin.py:432 cps/templates/config_view_edit.html:133 #: cps/templates/user_edit.html:45 cps/templates/user_table.html:81 msgid "Show All" msgstr "Mostrar Todo" -#: cps/admin.py:452 cps/admin.py:458 +#: cps/admin.py:453 cps/admin.py:459 msgid "Malformed request" msgstr "Petición mal formada" -#: cps/admin.py:470 cps/admin.py:2033 +#: cps/admin.py:471 cps/admin.py:2048 msgid "Guest Name can't be changed" msgstr "O nome do convidado non se pode cambiar" -#: cps/admin.py:482 +#: cps/admin.py:483 msgid "Guest can't have this role" msgstr "O convidado non pode ter este rol" -#: cps/admin.py:494 cps/admin.py:1987 +#: cps/admin.py:495 cps/admin.py:2002 msgid "No admin user remaining, can't remove admin role" msgstr "Non queda ningún usuario administrador, non se pode eliminar ao usuario" -#: cps/admin.py:498 cps/admin.py:512 +#: cps/admin.py:499 cps/admin.py:513 msgid "Value has to be true or false" msgstr "O Valor ten que ser verdadeiro ou falso" -#: cps/admin.py:500 +#: cps/admin.py:501 msgid "Invalid role" msgstr "Rol non válido" -#: cps/admin.py:504 +#: cps/admin.py:505 msgid "Guest can't have this view" msgstr "O convidado non pode ter esta vista" -#: cps/admin.py:514 +#: cps/admin.py:515 msgid "Invalid view" msgstr "Vista non válida" -#: cps/admin.py:517 +#: cps/admin.py:518 msgid "Guest's Locale is determined automatically and can't be set" msgstr "O sitio do convidado determínase automáticamente e non se pode cambiar" -#: cps/admin.py:521 +#: cps/admin.py:522 msgid "No Valid Locale Given" msgstr "Non hai unha localización válida" -#: cps/admin.py:532 +#: cps/admin.py:533 msgid "No Valid Book Language Given" msgstr "Non se indicou unha lingua válida para o libro" -#: cps/admin.py:534 cps/editbooks.py:455 +#: cps/admin.py:535 cps/editbooks.py:456 msgid "Parameter not found" msgstr "Parámetro non atopado" -#: cps/admin.py:571 +#: cps/admin.py:572 msgid "Invalid Read Column" msgstr "Columna de lectura non válida" -#: cps/admin.py:577 +#: cps/admin.py:578 msgid "Invalid Restricted Column" msgstr "Columna restrinxida non válida" -#: cps/admin.py:597 cps/admin.py:1858 +#: cps/admin.py:598 cps/admin.py:1873 msgid "Calibre-Web configuration updated" msgstr "Configuración de Calibre-Web actualizada" -#: cps/admin.py:609 +#: cps/admin.py:610 msgid "Do you really want to delete the Kobo Token?" msgstr "De verdade queres borrar o Token de Kobo?" -#: cps/admin.py:611 +#: cps/admin.py:612 msgid "Do you really want to delete this domain?" msgstr "De verdade desexas borrar este dominio?" -#: cps/admin.py:613 +#: cps/admin.py:614 msgid "Do you really want to delete this user?" msgstr "De verdade queres borrar este usuario?" -#: cps/admin.py:615 +#: cps/admin.py:616 msgid "Are you sure you want to delete this shelf?" msgstr "De verdade queres eliminar este andel?" -#: cps/admin.py:617 +#: cps/admin.py:618 msgid "Are you sure you want to change locales of selected user(s)?" msgstr "De verdade queres cambiar a linguaxe dos usuarios seleccionados?" -#: cps/admin.py:619 +#: cps/admin.py:620 msgid "Are you sure you want to change visible book languages for selected user(s)?" msgstr "De verdade queres cambiar as linguas visibles do libro dos usuarios seleccionados?" -#: cps/admin.py:621 +#: cps/admin.py:622 msgid "Are you sure you want to change the selected role for the selected user(s)?" msgstr "De verdade queres cambiar o rol seleccionado do usuario seleccionado?" -#: cps/admin.py:623 +#: cps/admin.py:624 msgid "Are you sure you want to change the selected restrictions for the selected user(s)?" msgstr "De verdade queres cambiar as restricións escollidas dos usuarios seleccionados?" -#: cps/admin.py:625 +#: cps/admin.py:626 msgid "Are you sure you want to change the selected visibility restrictions for the selected user(s)?" msgstr "De verdade queres cambiar as restricións de visibilidade dos usuarios seleccionados?" -#: cps/admin.py:628 +#: cps/admin.py:629 msgid "Are you sure you want to change shelf sync behavior for the selected user(s)?" msgstr "De verdade queres cambiar o comportamento da sincronización do andel para o usuario seleccionado?" -#: cps/admin.py:630 +#: cps/admin.py:631 msgid "Are you sure you want to change Calibre library location?" msgstr "De verdade queres cambiar a localización da biblioteca Calibre?" -#: cps/admin.py:632 +#: cps/admin.py:633 msgid "Calibre-Web will search for updated Covers and update Cover Thumbnails, this may take a while?" msgstr "Calibre-web buscará cubertas actualizadas e miniaturas de cubertas actualizadas, isto pode levar un intre?" -#: cps/admin.py:635 +#: cps/admin.py:636 msgid "Are you sure you want delete Calibre-Web's sync database to force a full sync with your Kobo Reader?" msgstr "Está seguro que quere borrar a base de datos de sincronización de Calibre-Web para forzar unha sincronización completa co seu lector Kobo?" -#: cps/admin.py:878 cps/admin.py:884 cps/admin.py:894 cps/admin.py:904 +#: cps/admin.py:879 cps/admin.py:885 cps/admin.py:895 cps/admin.py:905 #: cps/templates/modal_dialogs.html:29 cps/templates/user_table.html:41 #: cps/templates/user_table.html:58 msgid "Deny" msgstr "Denegar" -#: cps/admin.py:880 cps/admin.py:886 cps/admin.py:896 cps/admin.py:906 +#: cps/admin.py:881 cps/admin.py:887 cps/admin.py:897 cps/admin.py:907 #: cps/templates/modal_dialogs.html:28 cps/templates/user_table.html:44 #: cps/templates/user_table.html:61 msgid "Allow" msgstr "Permitir" -#: cps/admin.py:921 +#: cps/admin.py:940 msgid "{} sync entries deleted" msgstr "Elimináronse {} entradas de sincronización" -#: cps/admin.py:969 +#: cps/admin.py:981 msgid "Tag not found" msgstr "Etiqueta non atopada" -#: cps/admin.py:981 +#: cps/admin.py:993 msgid "Invalid Action" msgstr "Acción non válida" -#: cps/admin.py:1111 +#: cps/admin.py:1123 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:1156 +#: cps/admin.py:1168 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:1162 +#: cps/admin.py:1174 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:1196 +#: cps/admin.py:1208 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:1202 +#: cps/admin.py:1214 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:1205 +#: cps/admin.py:1217 msgid "Please Enter a LDAP Service Account" msgstr "Por favor, introduce unha conta de servizo LDAP" -#: cps/admin.py:1210 +#: cps/admin.py:1222 #, 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:1212 +#: cps/admin.py:1224 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "O LDAP Group Object Filter ten parénteses que non casan" -#: cps/admin.py:1216 +#: cps/admin.py:1228 #, 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:1218 +#: cps/admin.py:1230 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "O LDAP Group Object Filter ten parénteses que non casan" -#: cps/admin.py:1225 +#: cps/admin.py:1237 #, 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:1227 +#: cps/admin.py:1239 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "O filtro de LDAP \"Member User\" ten parénteses que non casan" -#: cps/admin.py:1234 +#: cps/admin.py:1246 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:1265 cps/templates/admin.html:53 +#: cps/admin.py:1277 cps/templates/admin.html:53 msgid "Add New User" msgstr "Engadir novo usuario" -#: cps/admin.py:1274 cps/templates/admin.html:100 +#: cps/admin.py:1286 cps/templates/admin.html:100 msgid "Edit Email Server Settings" msgstr "Cambiar os parámetros do correo" -#: cps/admin.py:1293 +#: cps/admin.py:1305 msgid "Success! Gmail Account Verified." msgstr "" -#: cps/admin.py:1313 cps/admin.py:1316 cps/admin.py:1698 cps/admin.py:1842 -#: cps/admin.py:1940 cps/admin.py:2061 cps/editbooks.py:241 -#: cps/editbooks.py:317 cps/editbooks.py:1224 cps/shelf.py:90 cps/shelf.py:150 +#: cps/admin.py:1325 cps/admin.py:1328 cps/admin.py:1710 cps/admin.py:1857 +#: cps/admin.py:1955 cps/admin.py:2076 cps/editbooks.py:242 +#: cps/editbooks.py:318 cps/editbooks.py:1225 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:149 cps/web.py:1496 +#: cps/shelf.py:468 cps/tasks/convert.py:150 cps/web.py:1520 #, python-format msgid "Oops! Database Error: %(error)s." msgstr "Error na base de datos: %(error)s." -#: cps/admin.py:1323 +#: cps/admin.py:1335 #, 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:1326 +#: cps/admin.py:1338 #, 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:1328 +#: cps/admin.py:1340 msgid "Please configure your e-mail address first..." msgstr "Por favor, configure o seu correo electrónico primeiro..." -#: cps/admin.py:1330 +#: cps/admin.py:1342 msgid "Email Server Settings updated" msgstr "Actualizáronse os axustes do servidor de correo electrónico" -#: cps/admin.py:1353 cps/templates/admin.html:195 +#: cps/admin.py:1365 cps/templates/admin.html:195 msgid "Edit Scheduled Tasks Settings" msgstr "Editar a Configuración das Tarefas Programadas" -#: cps/admin.py:1365 +#: cps/admin.py:1377 msgid "Invalid start time for task specified" msgstr "Indicada unha hora incorrecta de comezo de tarefa" -#: cps/admin.py:1370 +#: cps/admin.py:1382 msgid "Invalid duration for task specified" msgstr "Indicada unha duracción incorrecta para a tarefa" -#: cps/admin.py:1380 +#: cps/admin.py:1392 msgid "Scheduled tasks settings updated" msgstr "Actualizouse a configuración das tarefas programadas" -#: cps/admin.py:1390 cps/admin.py:1439 cps/admin.py:2057 cps/web.py:1296 +#: cps/admin.py:1402 cps/admin.py:1451 cps/admin.py:2072 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:1394 +#: cps/admin.py:1406 msgid "Settings DB is not Writeable" msgstr "A configuración da DB non se pode escribir" -#: cps/admin.py:1424 cps/admin.py:2049 +#: cps/admin.py:1436 cps/admin.py:2064 #, python-format msgid "Edit User %(nick)s" msgstr "Editar o Usuario %(nick)s" -#: cps/admin.py:1436 +#: cps/admin.py:1448 #, fuzzy, python-format msgid "Success! Password for user %(user)s reset" msgstr "Reiniciada a contrasinal para o usuario %(user)s" -#: cps/admin.py:1442 +#: cps/admin.py:1454 #, fuzzy msgid "Oops! Please configure the SMTP mail settings." msgstr "Configura primeiro os parámetros do servidor SMTP..." -#: cps/admin.py:1453 +#: cps/admin.py:1465 msgid "Logfile viewer" msgstr "Visor do ficheiro de rexistro" -#: cps/admin.py:1519 +#: cps/admin.py:1531 msgid "Requesting update package" msgstr "Solicitando paquete de actualización" -#: cps/admin.py:1520 +#: cps/admin.py:1532 msgid "Downloading update package" msgstr "Descargando paquete de actualización" -#: cps/admin.py:1521 +#: cps/admin.py:1533 msgid "Unzipping update package" msgstr "Descomprimendo paquete de actualización" -#: cps/admin.py:1522 +#: cps/admin.py:1534 msgid "Replacing files" msgstr "Remplazando archivos" -#: cps/admin.py:1523 +#: cps/admin.py:1535 msgid "Database connections are closed" msgstr "As conexións coa base datos están pechadas" -#: cps/admin.py:1524 +#: cps/admin.py:1536 msgid "Stopping server" msgstr "Detendo o servidor" -#: cps/admin.py:1525 +#: cps/admin.py:1537 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:1526 cps/admin.py:1527 cps/admin.py:1528 cps/admin.py:1529 -#: cps/admin.py:1530 cps/admin.py:1531 +#: cps/admin.py:1538 cps/admin.py:1539 cps/admin.py:1540 cps/admin.py:1541 +#: cps/admin.py:1542 cps/admin.py:1543 msgid "Update failed:" msgstr "A actualización fallou:" -#: cps/admin.py:1526 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 +#: cps/admin.py:1538 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 msgid "HTTP Error" msgstr "Erro HTTP" -#: cps/admin.py:1527 cps/updater.py:391 cps/updater.py:628 +#: cps/admin.py:1539 cps/updater.py:391 cps/updater.py:628 msgid "Connection error" msgstr "Erro de conexión" -#: cps/admin.py:1528 cps/updater.py:393 cps/updater.py:630 +#: cps/admin.py:1540 cps/updater.py:393 cps/updater.py:630 msgid "Timeout while establishing connection" msgstr "Tempo esgotado mentras se trataba de establecer a conexión" -#: cps/admin.py:1529 cps/updater.py:395 cps/updater.py:632 +#: cps/admin.py:1541 cps/updater.py:395 cps/updater.py:632 msgid "General error" msgstr "Erro xeral" -#: cps/admin.py:1530 +#: cps/admin.py:1542 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:1531 +#: cps/admin.py:1543 msgid "Files could not be replaced during update" msgstr "Non se puideron substituír os ficheiros durante a actualización" -#: cps/admin.py:1555 +#: cps/admin.py:1567 msgid "Failed to extract at least One LDAP User" msgstr "Erro ao extraer polo menos un usuario LDAP" -#: cps/admin.py:1600 +#: cps/admin.py:1612 msgid "Failed to Create at Least One LDAP User" msgstr "Erro ao crear polo menos un usuario LDAP" -#: cps/admin.py:1613 +#: cps/admin.py:1625 #, python-format msgid "Error: %(ldaperror)s" msgstr "Erro: %(ldaperror)s" -#: cps/admin.py:1617 +#: cps/admin.py:1629 msgid "Error: No user returned in response of LDAP server" msgstr "Erro: o servidor LDAP non devolveu ningún usuario" -#: cps/admin.py:1650 +#: 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:1652 +#: cps/admin.py:1664 msgid "{} User Successfully Imported" msgstr "Usuario {} importado con éxito" -#: cps/admin.py:1710 +#: 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:1730 +#: cps/admin.py:1742 msgid "DB is not Writeable" msgstr "A base de datos non é modificable" -#: cps/admin.py:1746 +#: 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:1750 +#: 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:1829 +#: cps/admin.py:1842 msgid "Password length has to be between 1 and 40" msgstr "" -#: cps/admin.py:1881 +#: cps/admin.py:1896 msgid "Database Settings updated" msgstr "Actualizados os axustes da base de datos" -#: cps/admin.py:1889 +#: cps/admin.py:1904 msgid "Database Configuration" msgstr "Configuración da base de datos" -#: cps/admin.py:1904 cps/web.py:1270 +#: cps/admin.py:1919 cps/web.py:1290 msgid "Oops! Please complete all fields." msgstr "Por favor, cubra todos os campos!" -#: cps/admin.py:1913 +#: cps/admin.py:1928 msgid "E-mail is not from valid domain" msgstr "O correo electrónico non ven dun dominio válido" -#: cps/admin.py:1919 +#: cps/admin.py:1934 msgid "Add new user" msgstr "Engadir un usuario novo" -#: cps/admin.py:1930 +#: cps/admin.py:1945 #, python-format msgid "User '%(user)s' created" msgstr "Usuario '%(user)s' creado" -#: cps/admin.py:1936 +#: cps/admin.py:1951 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:1966 +#: cps/admin.py:1981 #, python-format msgid "User '%(nick)s' deleted" msgstr "Usuario '%(nick)s' eliminado" -#: cps/admin.py:1969 +#: cps/admin.py:1984 msgid "Can't delete Guest User" msgstr "Non se pode borrar ao Usuario Invitado" -#: cps/admin.py:1972 +#: cps/admin.py:1987 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:2027 cps/web.py:1445 +#: cps/admin.py:2042 cps/web.py:1469 msgid "Email can't be empty and has to be a valid Email" msgstr "" -#: cps/admin.py:2053 +#: cps/admin.py:2068 #, python-format msgid "User '%(nick)s' updated" msgstr "Usuario '%(nick)s' actualizado" @@ -517,122 +517,123 @@ msgstr "non instalado" msgid "Execution permissions missing" msgstr "Faltan permisos de execución" -#: cps/db.py:752 cps/search.py:137 cps/web.py:731 +#: cps/db.py:752 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:993 cps/templates/config_edit.html:208 +#: cps/db.py:992 cps/templates/config_edit.html:208 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 -#: cps/web.py:558 cps/web.py:592 cps/web.py:665 cps/web.py:692 cps/web.py:973 -#: cps/web.py:1003 cps/web.py:1048 cps/web.py:1076 cps/web.py:1115 +#: 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 +#: cps/web.py:1131 msgid "None" msgstr "Ningún" -#: cps/editbooks.py:122 cps/editbooks.py:910 cps/web.py:525 cps/web.py:1537 -#: cps/web.py:1581 cps/web.py:1626 +#: cps/editbooks.py:123 cps/editbooks.py:911 cps/web.py:529 cps/web.py:1561 +#: cps/web.py:1605 cps/web.py:1650 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:166 cps/editbooks.py:1245 +#: cps/editbooks.py:167 cps/editbooks.py:1246 msgid "User has no rights to upload cover" msgstr "O usuario non ten permisos para subir a cuberta" -#: cps/editbooks.py:186 cps/editbooks.py:731 +#: cps/editbooks.py:187 cps/editbooks.py:732 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:228 +#: cps/editbooks.py:229 msgid "Metadata successfully updated" msgstr "Metadatos actualizados con éxito" -#: cps/editbooks.py:246 +#: cps/editbooks.py:247 msgid "Error editing book: {}" msgstr "Erro editando libro: {}" -#: cps/editbooks.py:303 +#: cps/editbooks.py:304 #, python-format msgid "File %(file)s uploaded" msgstr "O ficheiro %(file)s subiuse" -#: cps/editbooks.py:331 +#: cps/editbooks.py:332 msgid "Source or destination format for conversion missing" msgstr "Falta a fonte ou o formato de destino para a conversión" -#: cps/editbooks.py:339 +#: cps/editbooks.py:340 #, 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:343 +#: cps/editbooks.py:344 #, 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:650 +#: cps/editbooks.py:651 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:705 cps/editbooks.py:1037 +#: cps/editbooks.py:706 cps/editbooks.py:1038 #, python-format msgid "'%(langname)s' is not a valid language" msgstr "%(langname)s non é unha lingua válida" -#: cps/editbooks.py:743 cps/editbooks.py:1185 +#: cps/editbooks.py:744 cps/editbooks.py:1186 #, 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:747 cps/editbooks.py:1189 +#: cps/editbooks.py:748 cps/editbooks.py:1190 msgid "File to be uploaded must have an extension" msgstr "O arquivo que se vai cargar debe ter unha extensión" -#: cps/editbooks.py:755 +#: cps/editbooks.py:756 #, 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:775 +#: cps/editbooks.py:776 #, 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:832 cps/editbooks.py:834 +#: cps/editbooks.py:833 cps/editbooks.py:835 msgid "Book Format Successfully Deleted" msgstr "Formato de libro eliminado con éxito" -#: cps/editbooks.py:841 cps/editbooks.py:843 +#: cps/editbooks.py:842 cps/editbooks.py:844 msgid "Book Successfully Deleted" msgstr "Libro eliminado con éxito" -#: cps/editbooks.py:895 +#: cps/editbooks.py:896 msgid "You are missing permissions to delete books" msgstr "Vostede non ten permisos para borrar libros" -#: cps/editbooks.py:945 +#: cps/editbooks.py:946 msgid "edit metadata" msgstr "editar metadatos" -#: cps/editbooks.py:994 +#: cps/editbooks.py:995 #, python-format msgid "%(seriesindex)s is not a valid number, skipping" msgstr "%(seriesindex)s non é un número válido, saltando" -#: cps/editbooks.py:1180 +#: cps/editbooks.py:1181 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:1201 +#: cps/editbooks.py:1202 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "Fallo ao crear a ruta %(path)s (permiso denegado)" -#: cps/editbooks.py:1206 +#: cps/editbooks.py:1207 #, python-format msgid "Failed to store file %(file)s." msgstr "Fallo ao gardar o arquivo %(file)s." -#: cps/editbooks.py:1230 +#: cps/editbooks.py:1231 #, python-format msgid "File format %(ext)s added to %(book)s" msgstr "Arquivo con formato %(ext)s engadido a %(book)s" @@ -645,206 +646,206 @@ msgstr "A configuración de Google Drive non se completou, intente desactivar e 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" -#: cps/helper.py:84 +#: cps/helper.py:86 #, python-format 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:91 cps/tasks/convert.py:86 +#: cps/helper.py:93 cps/tasks/convert.py:86 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "%(format)s non atopado en Google Drive: %(fn)s" -#: cps/helper.py:96 +#: cps/helper.py:98 #, python-format msgid "%(format)s not found: %(fn)s" msgstr "%(format)s non atopado: %(fn)s" -#: cps/helper.py:101 cps/helper.py:226 cps/templates/detail.html:58 +#: cps/helper.py:103 cps/helper.py:228 cps/templates/detail.html:58 msgid "Send to eReader" msgstr "Enviar ao Kindle" -#: cps/helper.py:102 cps/helper.py:120 cps/helper.py:228 +#: cps/helper.py:104 cps/helper.py:122 cps/helper.py:230 #, fuzzy msgid "This Email has been sent via Calibre-Web." msgstr "Este correo electrónico enviouse empregando Calibre-Web." -#: cps/helper.py:118 +#: cps/helper.py:120 #, fuzzy msgid "Calibre-Web Test Email" msgstr "Correo de proba de Calibre-Web" -#: cps/helper.py:119 +#: cps/helper.py:121 #, fuzzy msgid "Test Email" msgstr "Comprobar correo electrónico" -#: cps/helper.py:136 +#: cps/helper.py:138 msgid "Get Started with Calibre-Web" msgstr "Primeiros pasos con Calibre-Web" -#: cps/helper.py:141 +#: cps/helper.py:143 #, fuzzy, python-format msgid "Registration Email for user: %(name)s" msgstr "Correo electrónico de rexistro para o usuario: %(name)s" -#: cps/helper.py:152 cps/helper.py:158 +#: cps/helper.py:154 cps/helper.py:160 #, fuzzy, python-format msgid "Convert %(orig)s to %(format)s and send to eReader" msgstr "Convertir %(orig)s a %(format)s e enviar ao Kindle" -#: cps/helper.py:177 cps/helper.py:181 cps/helper.py:185 +#: cps/helper.py:179 cps/helper.py:183 cps/helper.py:187 #, fuzzy, python-format msgid "Send %(format)s to eReader" msgstr "Enviado %(format)s ao Kindle" -#: cps/helper.py:225 +#: cps/helper.py:227 #, fuzzy, python-format msgid "%(book)s send to eReader" msgstr "Enviar ao Kindle %(book)s" -#: cps/helper.py:230 +#: cps/helper.py:232 msgid "The requested file could not be read. Maybe wrong permissions?" msgstr "O arquivo solicitado non pode lerse. Quizais existen problemas cos permisos?" -#: cps/helper.py:345 +#: cps/helper.py:347 msgid "Read status could not set: {}" msgstr "O estado de lectura non pode fixarse: {}" -#: cps/helper.py:368 +#: cps/helper.py:370 #, python-format msgid "Deleting bookfolder for book %(id)s failed, path has subfolders: %(path)s" msgstr "Fallo ao intentar borrar a carpeta do libro %(id)s, a ruta ten subcarpetas: %(path)s" -#: cps/helper.py:374 +#: cps/helper.py:376 #, python-format msgid "Deleting book %(id)s failed: %(message)s" msgstr "O borrado do libro %(id)s fallou: %(message)s" -#: cps/helper.py:385 +#: cps/helper.py:387 #, python-format 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:450 +#: cps/helper.py:452 #, 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:522 cps/helper.py:531 +#: cps/helper.py:524 cps/helper.py:533 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "Ficheiro %(file)s non atopado en Google Drive" -#: cps/helper.py:565 +#: cps/helper.py:567 #, 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:585 +#: cps/helper.py:587 msgid "Error in rename file in path: {}" msgstr "Erro ao renomear o ficheiro na ruta: {}" -#: cps/helper.py:603 +#: cps/helper.py:605 #, 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:668 +#: cps/helper.py:670 msgid "Found an existing account for this Email address" msgstr "" -#: cps/helper.py:676 +#: cps/helper.py:678 msgid "This username is already taken" msgstr "Este nome de usuario xa está en uso" -#: cps/helper.py:688 +#: cps/helper.py:690 #, fuzzy msgid "Invalid Email address format" msgstr "Enderezo de correo non válido" -#: cps/helper.py:706 +#: cps/helper.py:710 msgid "Password doesn't comply with password validation rules" msgstr "" -#: cps/helper.py:855 +#: cps/helper.py:859 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:865 +#: cps/helper.py:869 msgid "Error Downloading Cover" msgstr "Erro ao descargar a cuberta" -#: cps/helper.py:868 +#: cps/helper.py:872 msgid "Cover Format Error" msgstr "Erro no formato da cuberta" -#: cps/helper.py:871 +#: cps/helper.py:875 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:881 +#: cps/helper.py:885 msgid "Failed to create path for cover" msgstr "Erro ao crear unha ruta para a cuberta" -#: cps/helper.py:897 +#: cps/helper.py:901 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:908 +#: cps/helper.py:912 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:920 +#: cps/helper.py:924 msgid "Invalid cover file content" msgstr "Contido do arquivo de cuberta non válido" -#: cps/helper.py:924 +#: cps/helper.py:928 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "Soamente se admiten como cuberta os arquivos jpg/jpeg" -#: cps/helper.py:995 cps/helper.py:1183 +#: cps/helper.py:999 cps/helper.py:1156 #, fuzzy msgid "Cover" msgstr "Descubrir" -#: cps/helper.py:1032 +#: cps/helper.py:1016 msgid "Unrar binary file not found" msgstr "Non se atopa o arquivo binario de UnRar" -#: cps/helper.py:1043 +#: cps/helper.py:1027 msgid "Error executing UnRar" msgstr "Erro executando UnRar" -#: cps/helper.py:1051 +#: cps/helper.py:1035 msgid "Could not find the specified directory" msgstr "" -#: cps/helper.py:1054 +#: cps/helper.py:1038 msgid "Please specify a directory, not a file" msgstr "" -#: cps/helper.py:1068 +#: cps/helper.py:1052 #, fuzzy msgid "Calibre binaries not viable" msgstr "A base de datos non é modificable" -#: cps/helper.py:1077 +#: cps/helper.py:1061 #, python-format msgid "Missing calibre binaries: %(missing)s" msgstr "" -#: cps/helper.py:1079 +#: cps/helper.py:1063 #, fuzzy, python-format msgid "Missing executable permissions: %(missing)s" msgstr "Faltan permisos de execución" -#: cps/helper.py:1084 +#: cps/helper.py:1068 #, fuzzy msgid "Error excecuting Calibre" msgstr "Erro executando UnRar" -#: cps/helper.py:1185 cps/templates/admin.html:216 +#: cps/helper.py:1158 cps/templates/admin.html:216 msgid "Queue all books for metadata backup" msgstr "" @@ -928,7 +929,7 @@ msgstr "{} Estrelas" #: cps/remotelogin.py:62 cps/templates/layout.html:67 #: cps/templates/layout.html:101 cps/templates/login.html:4 -#: cps/templates/login.html:21 cps/web.py:1333 +#: cps/templates/login.html:21 cps/web.py:1353 msgid "Login" msgstr "Inicio de sesión" @@ -944,7 +945,7 @@ msgstr "O token expirou" msgid "Success! Please return to your device" msgstr "Correcto! Por favor volte ao seu dispositivo" -#: cps/render_template.py:42 cps/web.py:414 +#: cps/render_template.py:42 cps/web.py:418 msgid "Books" msgstr "Libros" @@ -969,7 +970,7 @@ msgstr "Libros descargados" msgid "Show Downloaded Books" msgstr "Mostrar libros descargados" -#: cps/render_template.py:59 cps/templates/index.xml:33 cps/web.py:429 +#: cps/render_template.py:59 cps/templates/index.xml:33 cps/web.py:433 msgid "Top Rated Books" msgstr "Libros mellor valorados" @@ -978,7 +979,7 @@ msgid "Show Top Rated Books" msgstr "Mostrar libros mellor valorados" #: cps/render_template.py:62 cps/templates/index.xml:55 -#: cps/templates/index.xml:59 cps/web.py:750 +#: cps/templates/index.xml:59 cps/web.py:766 msgid "Read Books" msgstr "Libros lidos" @@ -988,7 +989,7 @@ msgid "Show Read and Unread" msgstr "Mostrar lidos e non lidos" #: cps/render_template.py:66 cps/templates/index.xml:62 -#: cps/templates/index.xml:66 cps/web.py:753 +#: cps/templates/index.xml:66 cps/web.py:769 msgid "Unread Books" msgstr "Libros non lidos" @@ -1006,7 +1007,7 @@ msgid "Show Random Books" msgstr "Mostrar libros ao chou" #: cps/render_template.py:72 cps/templates/book_table.html:67 -#: cps/templates/index.xml:84 cps/web.py:1119 +#: cps/templates/index.xml:84 cps/web.py:1135 msgid "Categories" msgstr "Categorías" @@ -1017,7 +1018,7 @@ msgstr "Mostrar selección de categorías" #: cps/render_template.py:75 cps/templates/book_edit.html:91 #: cps/templates/book_table.html:68 cps/templates/index.xml:91 -#: cps/templates/search_form.html:70 cps/web.py:1009 cps/web.py:1021 +#: cps/templates/search_form.html:70 cps/web.py:1025 cps/web.py:1037 msgid "Series" msgstr "Series" @@ -1037,7 +1038,7 @@ msgid "Show Author Section" msgstr "Mostrar selección de autores" #: cps/render_template.py:82 cps/templates/book_table.html:72 -#: cps/templates/index.xml:77 cps/web.py:977 +#: cps/templates/index.xml:77 cps/web.py:993 msgid "Publishers" msgstr "Editores" @@ -1048,7 +1049,7 @@ msgstr "Mostrar selección de editores" #: cps/render_template.py:85 cps/templates/book_table.html:70 #: cps/templates/index.xml:98 cps/templates/search_form.html:108 -#: cps/web.py:1091 +#: cps/web.py:1107 msgid "Languages" msgstr "Linguas" @@ -1075,7 +1076,7 @@ msgstr "Formatos de arquivo" msgid "Show File Formats Section" msgstr "Mostrar selección de formatos de arquivo" -#: cps/render_template.py:96 cps/web.py:776 +#: cps/render_template.py:96 cps/web.py:792 msgid "Archived Books" msgstr "Libros arquivados" @@ -1084,7 +1085,7 @@ msgstr "Libros arquivados" msgid "Show Archived Books" msgstr "Mostrar libros arquivados" -#: cps/render_template.py:101 cps/web.py:807 +#: cps/render_template.py:101 cps/web.py:823 msgid "Books List" msgstr "Lista de libros" @@ -1305,173 +1306,178 @@ msgstr "Hai unha nova actualización dispoñible. Preme no botón de abaixo para msgid "No release information available" msgstr "Non hai información do lanzamento dispoñible" -#: cps/templates/index.html:6 cps/web.py:441 +#: cps/templates/index.html:6 cps/web.py:445 msgid "Discover (Random Books)" msgstr "Descubrir (Libros ao chou)" -#: cps/web.py:477 +#: cps/web.py:481 msgid "Hot Books (Most Downloaded)" msgstr "Libros populares (os máis descargados)" -#: cps/web.py:508 +#: cps/web.py:512 #, python-format msgid "Downloaded books by %(user)s" msgstr "Libros descargados por %(user)s" -#: cps/web.py:541 +#: cps/web.py:545 #, python-format msgid "Author: %(name)s" msgstr "Autor/es: %(name)s" -#: cps/web.py:577 +#: cps/web.py:581 #, python-format msgid "Publisher: %(name)s" msgstr "Editor/es: %(name)s" -#: cps/web.py:605 +#: cps/web.py:609 #, python-format msgid "Series: %(serie)s" msgstr "Series: %(serie)s" -#: cps/web.py:620 +#: cps/web.py:623 msgid "Rating: None" msgstr "Valoración: Ningunha" -#: cps/web.py:629 +#: cps/web.py:632 #, python-format msgid "Rating: %(rating)s stars" msgstr "Valoración: %(rating)s estrelas" -#: cps/web.py:645 +#: cps/web.py:663 #, python-format msgid "File format: %(format)s" msgstr "Formato do arquivo: %(format)s" -#: cps/web.py:682 +#: cps/web.py:698 #, python-format msgid "Category: %(name)s" msgstr "Categoría: %(name)s" -#: cps/web.py:711 +#: cps/web.py:727 #, python-format msgid "Language: %(name)s" msgstr "Lingua: %(name)s" -#: cps/templates/admin.html:16 cps/web.py:949 +#: cps/templates/admin.html:16 cps/web.py:965 msgid "Downloads" msgstr "Descargas" -#: cps/web.py:1051 +#: cps/web.py:1067 msgid "Ratings list" msgstr "Lista de valoracións" -#: cps/web.py:1078 +#: cps/web.py:1094 msgid "File formats list" msgstr "Lista de formatos" -#: cps/web.py:1233 +#: cps/web.py:1249 #, fuzzy msgid "Please configure the SMTP mail settings first..." msgstr "Configura primeiro os parámetros do servidor SMTP..." -#: cps/web.py:1240 +#: cps/web.py:1256 #, python-format msgid "Success! Book queued for sending to %(eReadermail)s" msgstr "Libro posto na cola de envío a %(eReadermail)s" -#: cps/web.py:1243 +#: cps/web.py:1259 #, python-format msgid "Oops! There was an error sending book: %(res)s" msgstr "Oh, oh! Houbo un erro no envío do libro: %(res)s" -#: cps/web.py:1245 +#: cps/web.py:1261 #, fuzzy msgid "Oops! Please update your profile with a valid eReader Email." msgstr "Por favor actualiza o teu perfil co enderezo de correo do teu kindle..." -#: cps/web.py:1261 +#: cps/web.py:1277 msgid "Please wait one minute to register next user" msgstr "" #: cps/templates/layout.html:68 cps/templates/layout.html:102 -#: cps/templates/login.html:27 cps/templates/register.html:17 cps/web.py:1262 -#: cps/web.py:1267 cps/web.py:1271 cps/web.py:1277 cps/web.py:1297 -#: cps/web.py:1301 cps/web.py:1314 cps/web.py:1317 +#: cps/templates/login.html:27 cps/templates/register.html:17 cps/web.py:1278 +#: cps/web.py:1282 cps/web.py:1287 cps/web.py:1291 cps/web.py:1297 +#: cps/web.py:1317 cps/web.py:1321 cps/web.py:1334 cps/web.py:1337 msgid "Register" msgstr "Rexistro" -#: cps/web.py:1266 cps/web.py:1313 +#: cps/web.py:1281 cps/web.py:1385 +#, fuzzy +msgid "Connection error to limiter backend, please contact your administrator" +msgstr "O servidor de correo non está configurado, por favor, avisa ao teu administrador!" + +#: cps/web.py:1286 cps/web.py:1333 msgid "Oops! Email server is not configured, please contact your administrator." msgstr "O servidor de correo non está configurado, por favor, avisa ao teu administrador!" -#: cps/web.py:1299 +#: cps/web.py:1319 msgid "Oops! Your Email is not allowed." msgstr "O seu correo electrónico non está permitido para rexistrarse" -#: cps/web.py:1302 +#: cps/web.py:1322 msgid "Success! Confirmation Email has been sent." msgstr "Mandouse un correo electrónico de verificación á súa conta de correo." -#: cps/web.py:1348 cps/web.py:1367 +#: cps/web.py:1368 cps/web.py:1391 #, fuzzy msgid "Cannot activate LDAP authentication" msgstr "Non se pode activar a autenticación LDAP" -#: cps/web.py:1361 +#: cps/web.py:1381 msgid "Please wait one minute before next login" msgstr "" -#: cps/web.py:1376 +#: cps/web.py:1400 #, fuzzy, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "Iniciou sesión como : '%(nickname)s'" -#: cps/web.py:1383 +#: cps/web.py:1407 #, fuzzy, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgstr "Fallback login como: '%(nickname)s', non se pode acceder ao servidor LDAP ou usuario descoñecido" -#: cps/web.py:1388 +#: cps/web.py:1412 #, fuzzy, python-format msgid "Could not login: %(message)s" msgstr "Non se puido entrar: %(message)s" -#: cps/web.py:1392 cps/web.py:1417 +#: cps/web.py:1416 cps/web.py:1441 #, fuzzy msgid "Wrong Username or Password" msgstr "Usuario ou contrasinal no válido" -#: cps/web.py:1399 +#: cps/web.py:1423 #, fuzzy msgid "New Password was sent to your email address" msgstr "Unha nova contrasinal enviouse ao seu enderezo de correo electrónico" -#: cps/web.py:1403 +#: cps/web.py:1427 #, fuzzy msgid "An unknown error occurred. Please try again later." msgstr "Sucedeu un erro descoñecido. Por favor volva a intentalo máis tarde." -#: cps/web.py:1405 +#: cps/web.py:1429 #, fuzzy msgid "Please enter valid username to reset password" msgstr "Por favor, introduce un usuario válido para restablecer a contrasinal" -#: cps/web.py:1413 +#: cps/web.py:1437 #, fuzzy, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "Iniciou sesión como : '%(nickname)s'" -#: cps/web.py:1471 cps/web.py:1521 +#: cps/web.py:1495 cps/web.py:1545 #, python-format msgid "%(name)s's Profile" msgstr "Perfil de %(name)s" -#: cps/web.py:1487 +#: cps/web.py:1511 #, fuzzy msgid "Success! Profile Updated" msgstr "Perfil actualizado" -#: cps/web.py:1491 +#: cps/web.py:1515 msgid "Oops! An account already exists for this Email." msgstr "Atopada unha conta existente para ese enderezo de correo electrónico" @@ -1484,41 +1490,41 @@ msgstr "Non se atopou ningún arquivo gmail.json válido con información OAuth" msgid "%(book)s send to E-Reader" msgstr "Enviar ao Kindle %(book)s" -#: cps/tasks/convert.py:166 +#: cps/tasks/convert.py:167 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "Non se atopou Calibre ebook-convert %(tool)s" -#: cps/tasks/convert.py:200 +#: cps/tasks/convert.py:201 #, python-format msgid "%(format)s format not found on disk" msgstr "O formato %(format)s non se atopou no disco" -#: cps/tasks/convert.py:204 +#: cps/tasks/convert.py:205 msgid "Ebook converter failed with unknown error" msgstr "O conversor de Ebook fallou cun erro descoñecido" -#: cps/tasks/convert.py:223 +#: cps/tasks/convert.py:224 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "Kepubify-converter fallou: %(error)s" -#: cps/tasks/convert.py:244 +#: cps/tasks/convert.py:245 #, 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:279 +#: cps/tasks/convert.py:287 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "Fallou Ebook-converter: %(error)s" -#: cps/tasks/convert.py:302 +#: cps/tasks/convert.py:310 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "Calibre fallou co erro: %(error)s" -#: cps/tasks/convert.py:307 +#: cps/tasks/convert.py:315 msgid "Convert" msgstr "Convertir" @@ -1526,7 +1532,7 @@ msgstr "Convertir" msgid "Reconnecting Calibre database" msgstr "Reconectando a base de datos de Calibre" -#: cps/tasks/mail.py:269 +#: cps/tasks/mail.py:278 msgid "E-mail" msgstr "Correo electrónico" @@ -1804,12 +1810,12 @@ 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:414 -#: cps/templates/config_view_edit.html:175 cps/templates/modal_dialogs.html:64 -#: cps/templates/modal_dialogs.html:99 cps/templates/modal_dialogs.html:117 -#: cps/templates/modal_dialogs.html:135 cps/templates/schedule_edit.html:45 -#: cps/templates/shelf_edit.html:27 cps/templates/tasks.html:46 -#: cps/templates/user_edit.html:144 +#: cps/templates/config_db.html:66 cps/templates/config_edit.html:428 +#: 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 +#: cps/templates/schedule_edit.html:45 cps/templates/shelf_edit.html:27 +#: cps/templates/tasks.html:46 cps/templates/user_edit.html:144 msgid "Cancel" msgstr "Cancelar" @@ -1990,7 +1996,7 @@ msgid "Fetch Metadata" msgstr "Obter metadatos" #: cps/templates/book_edit.html:213 cps/templates/config_db.html:65 -#: cps/templates/config_edit.html:413 cps/templates/config_view_edit.html:174 +#: cps/templates/config_edit.html:427 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 @@ -2155,7 +2161,7 @@ msgid "Location of Calibre Database" msgstr "Localización da base de datos Calibre" #: cps/templates/config_db.html:21 -msgid "Separate Book files from Library (Highly experimental, might not work at all)" +msgid "Separate Book Files from Library" msgstr "" #: cps/templates/config_db.html:34 @@ -2239,7 +2245,7 @@ msgid "Convert non-English characters in title and author while saving to disk" msgstr "Convertir caracteres non ingleses no título e no autor mentres se graba no disco" #: cps/templates/config_edit.html:108 -msgid "Embed Metadata to Ebook File on Download and Conversion (needs Calibre/Kepubify binaries)" +msgid "Embed Metadata to Ebook File on Download/Conversion/e-mail (needs Calibre/Kepubify binaries)" msgstr "" #: cps/templates/config_edit.html:112 @@ -2463,40 +2469,52 @@ msgstr "Axustes OAuth" msgid "Limit failed login attempts" msgstr "" -#: cps/templates/config_edit.html:376 +#: cps/templates/config_edit.html:377 +msgid "Configure Backend for Limiter" +msgstr "" + +#: cps/templates/config_edit.html:381 +msgid "Options for Limiter" +msgstr "" + +#: cps/templates/config_edit.html:386 msgid "Session protection" msgstr "" -#: cps/templates/config_edit.html:378 +#: cps/templates/config_edit.html:388 msgid "Basic" msgstr "" -#: cps/templates/config_edit.html:379 +#: cps/templates/config_edit.html:389 msgid "Strong" msgstr "" -#: cps/templates/config_edit.html:384 +#: cps/templates/config_edit.html:394 #, fuzzy msgid "User Password policy" msgstr "Restablecer contrasinal de usuario" -#: cps/templates/config_edit.html:388 +#: cps/templates/config_edit.html:398 msgid "Minimum password length" msgstr "" -#: cps/templates/config_edit.html:393 +#: cps/templates/config_edit.html:403 msgid "Enforce number" msgstr "" -#: cps/templates/config_edit.html:397 +#: cps/templates/config_edit.html:407 msgid "Enforce lowercase characters" msgstr "" -#: cps/templates/config_edit.html:401 +#: cps/templates/config_edit.html:411 msgid "Enforce uppercase characters" msgstr "" -#: cps/templates/config_edit.html:405 +#: cps/templates/config_edit.html:415 +msgid "Enforce characters (needed For Chinese/Japanese/Korean Characters)" +msgstr "" + +#: cps/templates/config_edit.html:419 msgid "Enforce special characters" msgstr "" @@ -2618,47 +2636,47 @@ msgstr "Libro %(index)s de %(range)s" msgid "Published" msgstr "Publicado" -#: cps/templates/detail.html:250 cps/templates/listenmp3.html:158 +#: cps/templates/detail.html:251 cps/templates/listenmp3.html:158 msgid "Mark As Unread" msgstr "Marcar como non lido" -#: cps/templates/detail.html:251 cps/templates/listenmp3.html:158 +#: cps/templates/detail.html:252 cps/templates/listenmp3.html:158 msgid "Mark As Read" msgstr "Marcar como lido" -#: cps/templates/detail.html:253 cps/templates/listenmp3.html:159 +#: cps/templates/detail.html:254 cps/templates/listenmp3.html:159 msgid "Read" msgstr "Lido" -#: cps/templates/detail.html:263 cps/templates/listenmp3.html:166 +#: cps/templates/detail.html:264 cps/templates/listenmp3.html:166 msgid "Restore from archive" msgstr "Restaurar dende o arquivo" -#: cps/templates/detail.html:264 cps/templates/listenmp3.html:166 +#: cps/templates/detail.html:265 cps/templates/listenmp3.html:166 msgid "Add to archive" msgstr "Engadir a arquivo" -#: cps/templates/detail.html:266 cps/templates/listenmp3.html:167 +#: cps/templates/detail.html:267 cps/templates/listenmp3.html:167 msgid "Archived" msgstr "Arquivado" -#: cps/templates/detail.html:277 cps/templates/listenmp3.html:177 +#: cps/templates/detail.html:278 cps/templates/listenmp3.html:177 msgid "Description:" msgstr "Descrición:" -#: cps/templates/detail.html:292 cps/templates/listenmp3.html:190 +#: cps/templates/detail.html:293 cps/templates/listenmp3.html:190 #: cps/templates/search.html:16 msgid "Add to shelf" msgstr "Engadir ao andel" -#: cps/templates/detail.html:304 cps/templates/detail.html:323 +#: cps/templates/detail.html:305 cps/templates/detail.html:324 #: cps/templates/feed.xml:81 cps/templates/layout.html:154 #: cps/templates/listenmp3.html:201 cps/templates/listenmp3.html:218 #: cps/templates/search.html:22 msgid "(Public)" msgstr "(Público)" -#: cps/templates/detail.html:339 +#: cps/templates/detail.html:340 msgid "Edit Metadata" msgstr "Editar metadatos" diff --git a/cps/translations/hu/LC_MESSAGES/messages.mo b/cps/translations/hu/LC_MESSAGES/messages.mo index abea5cb8..c5a4a055 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 9ba7fce0..cf510615 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-02-10 10:06+0100\n" +"POT-Creation-Date: 2024-04-27 07:20+0200\n" "PO-Revision-Date: 2019-04-06 23:36+0200\n" "Last-Translator: \n" "Language: hu\n" @@ -22,498 +22,498 @@ msgstr "" msgid "Statistics" msgstr "Statisztika" -#: cps/admin.py:149 +#: cps/admin.py:150 #, fuzzy msgid "Server restarted, please reload page." msgstr "A kiszolgáló újraindult, tölts be újra az oldalt!" -#: cps/admin.py:151 +#: cps/admin.py:152 #, fuzzy msgid "Performing Server shutdown, please close window." msgstr "A kiszolgáló leállítása folyamatban, zárd be ezt az ablakot" -#: cps/admin.py:159 +#: cps/admin.py:160 msgid "Success! Database Reconnected" msgstr "" -#: cps/admin.py:162 +#: cps/admin.py:163 msgid "Unknown command" msgstr "" -#: cps/admin.py:173 +#: cps/admin.py:174 msgid "Success! Books queued for Metadata Backup, please check Tasks for result" msgstr "" -#: cps/admin.py:206 cps/editbooks.py:589 cps/editbooks.py:591 -#: cps/editbooks.py:629 cps/editbooks.py:646 cps/editbooks.py:1262 +#: cps/admin.py:207 cps/editbooks.py:590 cps/editbooks.py:592 +#: cps/editbooks.py:630 cps/editbooks.py:647 cps/editbooks.py:1263 #: cps/updater.py:613 cps/uploader.py:93 cps/uploader.py:102 msgid "Unknown" msgstr "Ismeretlen" -#: cps/admin.py:231 +#: cps/admin.py:232 msgid "Admin page" msgstr "Rendszergazda oldala" -#: cps/admin.py:251 +#: cps/admin.py:252 msgid "Basic Configuration" msgstr "Alapvető beállítások" -#: cps/admin.py:289 +#: cps/admin.py:290 msgid "UI Configuration" msgstr "Felhasználói felület beállításai" -#: cps/admin.py:323 cps/templates/admin.html:51 +#: cps/admin.py:324 cps/templates/admin.html:51 #, fuzzy msgid "Edit Users" msgstr "Rendszergazda felhasználó" -#: cps/admin.py:367 cps/opds.py:506 cps/templates/grid.html:14 +#: cps/admin.py:368 cps/opds.py:506 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "" -#: cps/admin.py:394 cps/admin.py:1405 +#: cps/admin.py:395 cps/admin.py:1417 msgid "User not found" msgstr "" -#: cps/admin.py:408 +#: cps/admin.py:409 msgid "{} users deleted successfully" msgstr "" -#: cps/admin.py:431 cps/templates/config_view_edit.html:133 +#: cps/admin.py:432 cps/templates/config_view_edit.html:133 #: cps/templates/user_edit.html:45 cps/templates/user_table.html:81 msgid "Show All" msgstr "Mindent mutass" -#: cps/admin.py:452 cps/admin.py:458 +#: cps/admin.py:453 cps/admin.py:459 msgid "Malformed request" msgstr "" -#: cps/admin.py:470 cps/admin.py:2033 +#: cps/admin.py:471 cps/admin.py:2048 msgid "Guest Name can't be changed" msgstr "" -#: cps/admin.py:482 +#: cps/admin.py:483 msgid "Guest can't have this role" msgstr "" -#: cps/admin.py:494 cps/admin.py:1987 +#: cps/admin.py:495 cps/admin.py:2002 msgid "No admin user remaining, can't remove admin role" msgstr "" -#: cps/admin.py:498 cps/admin.py:512 +#: cps/admin.py:499 cps/admin.py:513 msgid "Value has to be true or false" msgstr "" -#: cps/admin.py:500 +#: cps/admin.py:501 msgid "Invalid role" msgstr "" -#: cps/admin.py:504 +#: cps/admin.py:505 msgid "Guest can't have this view" msgstr "" -#: cps/admin.py:514 +#: cps/admin.py:515 msgid "Invalid view" msgstr "" -#: cps/admin.py:517 +#: cps/admin.py:518 msgid "Guest's Locale is determined automatically and can't be set" msgstr "" -#: cps/admin.py:521 +#: cps/admin.py:522 msgid "No Valid Locale Given" msgstr "" -#: cps/admin.py:532 +#: cps/admin.py:533 msgid "No Valid Book Language Given" msgstr "" -#: cps/admin.py:534 cps/editbooks.py:455 +#: cps/admin.py:535 cps/editbooks.py:456 msgid "Parameter not found" msgstr "" -#: cps/admin.py:571 +#: cps/admin.py:572 msgid "Invalid Read Column" msgstr "" -#: cps/admin.py:577 +#: cps/admin.py:578 msgid "Invalid Restricted Column" msgstr "" -#: cps/admin.py:597 cps/admin.py:1858 +#: cps/admin.py:598 cps/admin.py:1873 msgid "Calibre-Web configuration updated" msgstr "A Calibre-Web konfigurációja frissítve." -#: cps/admin.py:609 +#: cps/admin.py:610 msgid "Do you really want to delete the Kobo Token?" msgstr "" -#: cps/admin.py:611 +#: cps/admin.py:612 msgid "Do you really want to delete this domain?" msgstr "" -#: cps/admin.py:613 +#: cps/admin.py:614 msgid "Do you really want to delete this user?" msgstr "" -#: cps/admin.py:615 +#: cps/admin.py:616 msgid "Are you sure you want to delete this shelf?" msgstr "Valóban törölni akarod a polcot?" -#: cps/admin.py:617 +#: cps/admin.py:618 #, fuzzy msgid "Are you sure you want to change locales of selected user(s)?" msgstr "Valóban törölni akarod a polcot?" -#: cps/admin.py:619 +#: cps/admin.py:620 msgid "Are you sure you want to change visible book languages for selected user(s)?" msgstr "" -#: cps/admin.py:621 +#: cps/admin.py:622 msgid "Are you sure you want to change the selected role for the selected user(s)?" msgstr "" -#: cps/admin.py:623 +#: cps/admin.py:624 #, fuzzy msgid "Are you sure you want to change the selected restrictions for the selected user(s)?" msgstr "Valóban törölni akarod a polcot?" -#: cps/admin.py:625 +#: cps/admin.py:626 msgid "Are you sure you want to change the selected visibility restrictions for the selected user(s)?" msgstr "" -#: cps/admin.py:628 +#: cps/admin.py:629 #, fuzzy msgid "Are you sure you want to change shelf sync behavior for the selected user(s)?" msgstr "Valóban törölni akarod a polcot?" -#: cps/admin.py:630 +#: cps/admin.py:631 #, fuzzy msgid "Are you sure you want to change Calibre library location?" msgstr "Valóban le akarod állítani a Calibre-Web-et?" -#: cps/admin.py:632 +#: cps/admin.py:633 msgid "Calibre-Web will search for updated Covers and update Cover Thumbnails, this may take a while?" msgstr "" -#: cps/admin.py:635 +#: cps/admin.py:636 msgid "Are you sure you want delete Calibre-Web's sync database to force a full sync with your Kobo Reader?" msgstr "" -#: cps/admin.py:878 cps/admin.py:884 cps/admin.py:894 cps/admin.py:904 +#: cps/admin.py:879 cps/admin.py:885 cps/admin.py:895 cps/admin.py:905 #: cps/templates/modal_dialogs.html:29 cps/templates/user_table.html:41 #: cps/templates/user_table.html:58 msgid "Deny" msgstr "" -#: cps/admin.py:880 cps/admin.py:886 cps/admin.py:896 cps/admin.py:906 +#: cps/admin.py:881 cps/admin.py:887 cps/admin.py:897 cps/admin.py:907 #: cps/templates/modal_dialogs.html:28 cps/templates/user_table.html:44 #: cps/templates/user_table.html:61 msgid "Allow" msgstr "" -#: cps/admin.py:921 +#: cps/admin.py:940 msgid "{} sync entries deleted" msgstr "" -#: cps/admin.py:969 +#: cps/admin.py:981 msgid "Tag not found" msgstr "" -#: cps/admin.py:981 +#: cps/admin.py:993 msgid "Invalid Action" msgstr "" -#: cps/admin.py:1111 +#: cps/admin.py:1123 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "" -#: cps/admin.py:1156 +#: cps/admin.py:1168 msgid "Logfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1162 +#: cps/admin.py:1174 msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1196 +#: cps/admin.py:1208 msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgstr "" -#: cps/admin.py:1202 +#: cps/admin.py:1214 msgid "Please Enter a LDAP Service Account and Password" msgstr "" -#: cps/admin.py:1205 +#: cps/admin.py:1217 msgid "Please Enter a LDAP Service Account" msgstr "" -#: cps/admin.py:1210 +#: cps/admin.py:1222 #, python-format msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1212 +#: cps/admin.py:1224 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1216 +#: cps/admin.py:1228 #, python-format msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1218 +#: cps/admin.py:1230 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1225 +#: cps/admin.py:1237 #, python-format msgid "LDAP Member User Filter needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1227 +#: cps/admin.py:1239 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1234 +#: cps/admin.py:1246 msgid "LDAP CACertificate, Certificate or Key Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1265 cps/templates/admin.html:53 +#: cps/admin.py:1277 cps/templates/admin.html:53 msgid "Add New User" msgstr "" -#: cps/admin.py:1274 cps/templates/admin.html:100 +#: cps/admin.py:1286 cps/templates/admin.html:100 msgid "Edit Email Server Settings" msgstr "SMTP beállítások változtatása" -#: cps/admin.py:1293 +#: cps/admin.py:1305 msgid "Success! Gmail Account Verified." msgstr "" -#: cps/admin.py:1313 cps/admin.py:1316 cps/admin.py:1698 cps/admin.py:1842 -#: cps/admin.py:1940 cps/admin.py:2061 cps/editbooks.py:241 -#: cps/editbooks.py:317 cps/editbooks.py:1224 cps/shelf.py:90 cps/shelf.py:150 +#: cps/admin.py:1325 cps/admin.py:1328 cps/admin.py:1710 cps/admin.py:1857 +#: cps/admin.py:1955 cps/admin.py:2076 cps/editbooks.py:242 +#: cps/editbooks.py:318 cps/editbooks.py:1225 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:149 cps/web.py:1496 +#: cps/shelf.py:468 cps/tasks/convert.py:150 cps/web.py:1520 #, python-format msgid "Oops! Database Error: %(error)s." msgstr "" -#: cps/admin.py:1323 +#: cps/admin.py:1335 #, python-format msgid "Test e-mail queued for sending to %(email)s, please check Tasks for result" msgstr "" -#: cps/admin.py:1326 +#: cps/admin.py:1338 #, 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:1328 +#: cps/admin.py:1340 msgid "Please configure your e-mail address first..." msgstr "" -#: cps/admin.py:1330 +#: cps/admin.py:1342 msgid "Email Server Settings updated" msgstr "Az e-mail kiszolgáló beállításai frissítve." -#: cps/admin.py:1353 cps/templates/admin.html:195 +#: cps/admin.py:1365 cps/templates/admin.html:195 msgid "Edit Scheduled Tasks Settings" msgstr "" -#: cps/admin.py:1365 +#: cps/admin.py:1377 msgid "Invalid start time for task specified" msgstr "" -#: cps/admin.py:1370 +#: cps/admin.py:1382 msgid "Invalid duration for task specified" msgstr "" -#: cps/admin.py:1380 +#: cps/admin.py:1392 msgid "Scheduled tasks settings updated" msgstr "" -#: cps/admin.py:1390 cps/admin.py:1439 cps/admin.py:2057 cps/web.py:1296 +#: cps/admin.py:1402 cps/admin.py:1451 cps/admin.py:2072 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:1394 +#: cps/admin.py:1406 msgid "Settings DB is not Writeable" msgstr "" -#: cps/admin.py:1424 cps/admin.py:2049 +#: cps/admin.py:1436 cps/admin.py:2064 #, python-format msgid "Edit User %(nick)s" msgstr " A felhasználó szerkesztése: %(nick)s" -#: cps/admin.py:1436 +#: cps/admin.py:1448 #, 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:1442 +#: cps/admin.py:1454 #, 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:1453 +#: cps/admin.py:1465 msgid "Logfile viewer" msgstr "" -#: cps/admin.py:1519 +#: cps/admin.py:1531 msgid "Requesting update package" msgstr "Frissítési csomag kérése" -#: cps/admin.py:1520 +#: cps/admin.py:1532 msgid "Downloading update package" msgstr "Frissítési csomag letöltése" -#: cps/admin.py:1521 +#: cps/admin.py:1533 msgid "Unzipping update package" msgstr "Frissítési csomag kitömörítése" -#: cps/admin.py:1522 +#: cps/admin.py:1534 msgid "Replacing files" msgstr "Fájlok cserélése" -#: cps/admin.py:1523 +#: cps/admin.py:1535 msgid "Database connections are closed" msgstr "Adatbázis kapcsolatok lezárva" -#: cps/admin.py:1524 +#: cps/admin.py:1536 msgid "Stopping server" msgstr "Szerver leállítása" -#: cps/admin.py:1525 +#: cps/admin.py:1537 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:1526 cps/admin.py:1527 cps/admin.py:1528 cps/admin.py:1529 -#: cps/admin.py:1530 cps/admin.py:1531 +#: cps/admin.py:1538 cps/admin.py:1539 cps/admin.py:1540 cps/admin.py:1541 +#: cps/admin.py:1542 cps/admin.py:1543 msgid "Update failed:" msgstr "A frissítés nem sikerült:" -#: cps/admin.py:1526 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 +#: cps/admin.py:1538 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 msgid "HTTP Error" msgstr "HTTP hiba" -#: cps/admin.py:1527 cps/updater.py:391 cps/updater.py:628 +#: cps/admin.py:1539 cps/updater.py:391 cps/updater.py:628 msgid "Connection error" msgstr "Kapcsolódási hiba" -#: cps/admin.py:1528 cps/updater.py:393 cps/updater.py:630 +#: cps/admin.py:1540 cps/updater.py:393 cps/updater.py:630 msgid "Timeout while establishing connection" msgstr "Időtúllépés a kapcsolódás során" -#: cps/admin.py:1529 cps/updater.py:395 cps/updater.py:632 +#: cps/admin.py:1541 cps/updater.py:395 cps/updater.py:632 msgid "General error" msgstr "Általános hiba" -#: cps/admin.py:1530 +#: cps/admin.py:1542 msgid "Update file could not be saved in temp dir" msgstr "" -#: cps/admin.py:1531 +#: cps/admin.py:1543 msgid "Files could not be replaced during update" msgstr "" -#: cps/admin.py:1555 +#: cps/admin.py:1567 msgid "Failed to extract at least One LDAP User" msgstr "" -#: cps/admin.py:1600 +#: cps/admin.py:1612 msgid "Failed to Create at Least One LDAP User" msgstr "" -#: cps/admin.py:1613 +#: cps/admin.py:1625 #, python-format msgid "Error: %(ldaperror)s" msgstr "" -#: cps/admin.py:1617 +#: cps/admin.py:1629 msgid "Error: No user returned in response of LDAP server" msgstr "" -#: cps/admin.py:1650 +#: cps/admin.py:1662 msgid "At Least One LDAP User Not Found in Database" msgstr "" -#: cps/admin.py:1652 +#: cps/admin.py:1664 msgid "{} User Successfully Imported" msgstr "" -#: cps/admin.py:1710 +#: cps/admin.py:1722 msgid "DB Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1730 +#: cps/admin.py:1742 msgid "DB is not Writeable" msgstr "" -#: cps/admin.py:1746 +#: cps/admin.py:1758 msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1750 +#: cps/admin.py:1762 msgid "Certfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1829 +#: cps/admin.py:1842 msgid "Password length has to be between 1 and 40" msgstr "" -#: cps/admin.py:1881 +#: cps/admin.py:1896 #, fuzzy msgid "Database Settings updated" msgstr "Az e-mail kiszolgáló beállításai frissítve." -#: cps/admin.py:1889 +#: cps/admin.py:1904 #, fuzzy msgid "Database Configuration" msgstr "Funkciók beállítása" -#: cps/admin.py:1904 cps/web.py:1270 +#: cps/admin.py:1919 cps/web.py:1290 msgid "Oops! Please complete all fields." msgstr "Az összes mezőt ki kell tölteni!" -#: cps/admin.py:1913 +#: cps/admin.py:1928 msgid "E-mail is not from valid domain" msgstr "Az e-mail tartománya nem érvényes." -#: cps/admin.py:1919 +#: cps/admin.py:1934 msgid "Add new user" msgstr "Új felhasználó hozzáadása" -#: cps/admin.py:1930 +#: cps/admin.py:1945 #, python-format msgid "User '%(user)s' created" msgstr "A következő felhasználó létrehozva: %(user)s" -#: cps/admin.py:1936 +#: cps/admin.py:1951 #, 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:1966 +#: cps/admin.py:1981 #, python-format msgid "User '%(nick)s' deleted" msgstr "A felhasználó törölve: %(nick)s" -#: cps/admin.py:1969 +#: cps/admin.py:1984 msgid "Can't delete Guest User" msgstr "" -#: cps/admin.py:1972 +#: cps/admin.py:1987 msgid "No admin user remaining, can't delete user" msgstr "" -#: cps/admin.py:2027 cps/web.py:1445 +#: cps/admin.py:2042 cps/web.py:1469 msgid "Email can't be empty and has to be a valid Email" msgstr "" -#: cps/admin.py:2053 +#: cps/admin.py:2068 #, python-format msgid "User '%(nick)s' updated" msgstr "A felhasználó frissítve: %(nick)s" @@ -526,122 +526,123 @@ msgstr "nincs telepítve" msgid "Execution permissions missing" msgstr "" -#: cps/db.py:752 cps/search.py:137 cps/web.py:731 +#: cps/db.py:752 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:993 cps/templates/config_edit.html:208 +#: cps/db.py:992 cps/templates/config_edit.html:208 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 -#: cps/web.py:558 cps/web.py:592 cps/web.py:665 cps/web.py:692 cps/web.py:973 -#: cps/web.py:1003 cps/web.py:1048 cps/web.py:1076 cps/web.py:1115 +#: 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 +#: cps/web.py:1131 msgid "None" msgstr "Nincs" -#: cps/editbooks.py:122 cps/editbooks.py:910 cps/web.py:525 cps/web.py:1537 -#: cps/web.py:1581 cps/web.py:1626 +#: cps/editbooks.py:123 cps/editbooks.py:911 cps/web.py:529 cps/web.py:1561 +#: cps/web.py:1605 cps/web.py:1650 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:166 cps/editbooks.py:1245 +#: cps/editbooks.py:167 cps/editbooks.py:1246 msgid "User has no rights to upload cover" msgstr "" -#: cps/editbooks.py:186 cps/editbooks.py:731 +#: cps/editbooks.py:187 cps/editbooks.py:732 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "" -#: cps/editbooks.py:228 +#: cps/editbooks.py:229 msgid "Metadata successfully updated" msgstr "A metaadatok sikeresen frissültek" -#: cps/editbooks.py:246 +#: cps/editbooks.py:247 msgid "Error editing book: {}" msgstr "" -#: cps/editbooks.py:303 +#: cps/editbooks.py:304 #, python-format msgid "File %(file)s uploaded" msgstr "" -#: cps/editbooks.py:331 +#: cps/editbooks.py:332 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:339 +#: cps/editbooks.py:340 #, 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:343 +#: cps/editbooks.py:344 #, 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:650 +#: cps/editbooks.py:651 msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgstr "" -#: cps/editbooks.py:705 cps/editbooks.py:1037 +#: cps/editbooks.py:706 cps/editbooks.py:1038 #, fuzzy, python-format msgid "'%(langname)s' is not a valid language" msgstr "A(z) %(langname)s nem érvényes nyelv" -#: cps/editbooks.py:743 cps/editbooks.py:1185 +#: cps/editbooks.py:744 cps/editbooks.py:1186 #, 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:747 cps/editbooks.py:1189 +#: cps/editbooks.py:748 cps/editbooks.py:1190 msgid "File to be uploaded must have an extension" msgstr "A feltöltendő fájlnak kiterjesztéssel kell rendelkeznie!" -#: cps/editbooks.py:755 +#: cps/editbooks.py:756 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "" -#: cps/editbooks.py:775 +#: cps/editbooks.py:776 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "" -#: cps/editbooks.py:832 cps/editbooks.py:834 +#: cps/editbooks.py:833 cps/editbooks.py:835 msgid "Book Format Successfully Deleted" msgstr "" -#: cps/editbooks.py:841 cps/editbooks.py:843 +#: cps/editbooks.py:842 cps/editbooks.py:844 msgid "Book Successfully Deleted" msgstr "" -#: cps/editbooks.py:895 +#: cps/editbooks.py:896 msgid "You are missing permissions to delete books" msgstr "" -#: cps/editbooks.py:945 +#: cps/editbooks.py:946 msgid "edit metadata" msgstr "Metaadatok szerkesztése" -#: cps/editbooks.py:994 +#: cps/editbooks.py:995 #, python-format msgid "%(seriesindex)s is not a valid number, skipping" msgstr "" -#: cps/editbooks.py:1180 +#: cps/editbooks.py:1181 msgid "User has no rights to upload additional file formats" msgstr "" -#: cps/editbooks.py:1201 +#: cps/editbooks.py:1202 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "Nem sikerült létrehozni az elérési utat (engedély megtagadva): %(path)s." -#: cps/editbooks.py:1206 +#: cps/editbooks.py:1207 #, python-format msgid "Failed to store file %(file)s." msgstr "Nem sikerült elmenteni a %(file)s fájlt." -#: cps/editbooks.py:1230 +#: cps/editbooks.py:1231 #, python-format msgid "File format %(ext)s added to %(book)s" msgstr "A(z) %(ext)s fájlformátum hozzáadva a könyvhez: %(book)s." @@ -654,204 +655,204 @@ msgstr "A Google Drive beállítása nem fejeződött be, próbáld kikapcsolni 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:" -#: cps/helper.py:84 +#: cps/helper.py:86 #, python-format 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:91 cps/tasks/convert.py:86 +#: cps/helper.py:93 cps/tasks/convert.py:86 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "%(format)s nem található a Google Drive-on: %(fn)s" -#: cps/helper.py:96 +#: cps/helper.py:98 #, python-format msgid "%(format)s not found: %(fn)s" msgstr "%(format)s nem található: %(fn)s" -#: cps/helper.py:101 cps/helper.py:226 cps/templates/detail.html:58 +#: cps/helper.py:103 cps/helper.py:228 cps/templates/detail.html:58 #, fuzzy msgid "Send to eReader" msgstr "Küldés Kindle-re" -#: cps/helper.py:102 cps/helper.py:120 cps/helper.py:228 +#: cps/helper.py:104 cps/helper.py:122 cps/helper.py:230 #, fuzzy msgid "This Email has been sent via Calibre-Web." msgstr "Ez az e-mail a Calibre-Web-en keresztül lett küldve." -#: cps/helper.py:118 +#: cps/helper.py:120 #, fuzzy msgid "Calibre-Web Test Email" msgstr "Calibre-Web teszt e-mail" -#: cps/helper.py:119 +#: cps/helper.py:121 #, fuzzy msgid "Test Email" msgstr "Teszt e-mail" -#: cps/helper.py:136 +#: cps/helper.py:138 msgid "Get Started with Calibre-Web" msgstr "Kezdő lépések a Calibre-Web-bel" -#: cps/helper.py:141 +#: cps/helper.py:143 #, fuzzy, python-format msgid "Registration Email for user: %(name)s" msgstr "Regisztrációs e-mail a következő felhasználóhoz: %(name)s" -#: cps/helper.py:152 cps/helper.py:158 +#: cps/helper.py:154 cps/helper.py:160 #, fuzzy, python-format msgid "Convert %(orig)s to %(format)s and send to eReader" msgstr "%(orig)s konvertálása %(format)s-ra és küldés Kindle-re" -#: cps/helper.py:177 cps/helper.py:181 cps/helper.py:185 +#: cps/helper.py:179 cps/helper.py:183 cps/helper.py:187 #, fuzzy, python-format msgid "Send %(format)s to eReader" msgstr "%(format)s küldése Kindle-re" -#: cps/helper.py:225 +#: cps/helper.py:227 #, fuzzy, python-format msgid "%(book)s send to eReader" msgstr "Küldés Kindle-re" -#: cps/helper.py:230 +#: cps/helper.py:232 msgid "The requested file could not be read. Maybe wrong permissions?" msgstr "A kért fájl nem olvasható. Esetleg jogosultsági probléma lenne?" -#: cps/helper.py:345 +#: cps/helper.py:347 msgid "Read status could not set: {}" msgstr "" -#: cps/helper.py:368 +#: cps/helper.py:370 #, python-format msgid "Deleting bookfolder for book %(id)s failed, path has subfolders: %(path)s" msgstr "" -#: cps/helper.py:374 +#: cps/helper.py:376 #, python-format msgid "Deleting book %(id)s failed: %(message)s" msgstr "" -#: cps/helper.py:385 +#: cps/helper.py:387 #, python-format msgid "Deleting book %(id)s from database only, book path in database not valid: %(path)s" msgstr "" -#: cps/helper.py:450 +#: cps/helper.py:452 #, 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:522 cps/helper.py:531 +#: cps/helper.py:524 cps/helper.py:533 #, 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:565 +#: cps/helper.py:567 #, 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:585 +#: cps/helper.py:587 msgid "Error in rename file in path: {}" msgstr "" -#: cps/helper.py:603 +#: cps/helper.py:605 #, 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:668 +#: cps/helper.py:670 msgid "Found an existing account for this Email address" msgstr "" -#: cps/helper.py:676 +#: cps/helper.py:678 msgid "This username is already taken" msgstr "" -#: cps/helper.py:688 +#: cps/helper.py:690 msgid "Invalid Email address format" msgstr "" -#: cps/helper.py:706 +#: cps/helper.py:710 msgid "Password doesn't comply with password validation rules" msgstr "" -#: cps/helper.py:855 +#: cps/helper.py:859 msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "" -#: cps/helper.py:865 +#: cps/helper.py:869 msgid "Error Downloading Cover" msgstr "" -#: cps/helper.py:868 +#: cps/helper.py:872 msgid "Cover Format Error" msgstr "" -#: cps/helper.py:871 +#: cps/helper.py:875 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "" -#: cps/helper.py:881 +#: cps/helper.py:885 msgid "Failed to create path for cover" msgstr "" -#: cps/helper.py:897 +#: cps/helper.py:901 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "" -#: cps/helper.py:908 +#: cps/helper.py:912 msgid "Only jpg/jpeg/png/webp/bmp files are supported as coverfile" msgstr "" -#: cps/helper.py:920 +#: cps/helper.py:924 msgid "Invalid cover file content" msgstr "" -#: cps/helper.py:924 +#: cps/helper.py:928 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "" -#: cps/helper.py:995 cps/helper.py:1183 +#: cps/helper.py:999 cps/helper.py:1156 #, fuzzy msgid "Cover" msgstr "Felfedezés" -#: cps/helper.py:1032 +#: cps/helper.py:1016 msgid "Unrar binary file not found" msgstr "" -#: cps/helper.py:1043 +#: cps/helper.py:1027 msgid "Error executing UnRar" msgstr "" -#: cps/helper.py:1051 +#: cps/helper.py:1035 msgid "Could not find the specified directory" msgstr "" -#: cps/helper.py:1054 +#: cps/helper.py:1038 msgid "Please specify a directory, not a file" msgstr "" -#: cps/helper.py:1068 +#: cps/helper.py:1052 msgid "Calibre binaries not viable" msgstr "" -#: cps/helper.py:1077 +#: cps/helper.py:1061 #, python-format msgid "Missing calibre binaries: %(missing)s" msgstr "" -#: cps/helper.py:1079 +#: cps/helper.py:1063 #, python-format msgid "Missing executable permissions: %(missing)s" msgstr "" -#: cps/helper.py:1084 +#: cps/helper.py:1068 msgid "Error excecuting Calibre" msgstr "" -#: cps/helper.py:1185 cps/templates/admin.html:216 +#: cps/helper.py:1158 cps/templates/admin.html:216 msgid "Queue all books for metadata backup" msgstr "" @@ -935,7 +936,7 @@ msgstr "" #: cps/remotelogin.py:62 cps/templates/layout.html:67 #: cps/templates/layout.html:101 cps/templates/login.html:4 -#: cps/templates/login.html:21 cps/web.py:1333 +#: cps/templates/login.html:21 cps/web.py:1353 msgid "Login" msgstr "Belépés" @@ -951,7 +952,7 @@ msgstr "A token érvényessége lejárt." msgid "Success! Please return to your device" msgstr "Sikerült! Újra használható az eszköz." -#: cps/render_template.py:42 cps/web.py:414 +#: cps/render_template.py:42 cps/web.py:418 msgid "Books" msgstr "" @@ -976,7 +977,7 @@ msgstr "" msgid "Show Downloaded Books" msgstr "" -#: cps/render_template.py:59 cps/templates/index.xml:33 cps/web.py:429 +#: cps/render_template.py:59 cps/templates/index.xml:33 cps/web.py:433 msgid "Top Rated Books" msgstr "Legjobb könyvek" @@ -985,7 +986,7 @@ msgid "Show Top Rated Books" msgstr "Legjobbra értékelt könyvek mutatása" #: cps/render_template.py:62 cps/templates/index.xml:55 -#: cps/templates/index.xml:59 cps/web.py:750 +#: cps/templates/index.xml:59 cps/web.py:766 msgid "Read Books" msgstr "Olvasott könyvek" @@ -995,7 +996,7 @@ msgid "Show Read and Unread" msgstr "Mutassa az olvasva/olvasatlan állapotot" #: cps/render_template.py:66 cps/templates/index.xml:62 -#: cps/templates/index.xml:66 cps/web.py:753 +#: cps/templates/index.xml:66 cps/web.py:769 msgid "Unread Books" msgstr "Olvasatlan könyvek" @@ -1013,7 +1014,7 @@ msgid "Show Random Books" msgstr "Mutass könyveket találomra" #: cps/render_template.py:72 cps/templates/book_table.html:67 -#: cps/templates/index.xml:84 cps/web.py:1119 +#: cps/templates/index.xml:84 cps/web.py:1135 msgid "Categories" msgstr "Címkék" @@ -1024,7 +1025,7 @@ msgstr "Címke választó mutatása" #: cps/render_template.py:75 cps/templates/book_edit.html:91 #: cps/templates/book_table.html:68 cps/templates/index.xml:91 -#: cps/templates/search_form.html:70 cps/web.py:1009 cps/web.py:1021 +#: cps/templates/search_form.html:70 cps/web.py:1025 cps/web.py:1037 msgid "Series" msgstr "Sorozatok" @@ -1044,7 +1045,7 @@ msgid "Show Author Section" msgstr "Szerző választó mutatása" #: cps/render_template.py:82 cps/templates/book_table.html:72 -#: cps/templates/index.xml:77 cps/web.py:977 +#: cps/templates/index.xml:77 cps/web.py:993 msgid "Publishers" msgstr "Kiadók" @@ -1055,7 +1056,7 @@ msgstr "Kiadó választó mutatása" #: cps/render_template.py:85 cps/templates/book_table.html:70 #: cps/templates/index.xml:98 cps/templates/search_form.html:108 -#: cps/web.py:1091 +#: cps/web.py:1107 msgid "Languages" msgstr "Nyelvek" @@ -1082,7 +1083,7 @@ msgstr "" msgid "Show File Formats Section" msgstr "Sorozat választó mutatása" -#: cps/render_template.py:96 cps/web.py:776 +#: cps/render_template.py:96 cps/web.py:792 msgid "Archived Books" msgstr "" @@ -1091,7 +1092,7 @@ msgstr "" msgid "Show Archived Books" msgstr "Legutóbbi könyvek mutatása" -#: cps/render_template.py:101 cps/web.py:807 +#: cps/render_template.py:101 cps/web.py:823 msgid "Books List" msgstr "" @@ -1315,171 +1316,175 @@ msgstr "Új frissítés érhető el. Kattints az alábbi gombra a frissítéshez msgid "No release information available" msgstr "Nincs információ a kiadásról." -#: cps/templates/index.html:6 cps/web.py:441 +#: cps/templates/index.html:6 cps/web.py:445 msgid "Discover (Random Books)" msgstr "Felfedezés (könyvek találomra)" -#: cps/web.py:477 +#: cps/web.py:481 msgid "Hot Books (Most Downloaded)" msgstr "Kelendő könyvek (legtöbbet letöltöttek)" -#: cps/web.py:508 +#: cps/web.py:512 #, python-format msgid "Downloaded books by %(user)s" msgstr "" -#: cps/web.py:541 +#: cps/web.py:545 #, python-format msgid "Author: %(name)s" msgstr "" -#: cps/web.py:577 +#: cps/web.py:581 #, python-format msgid "Publisher: %(name)s" msgstr "Kiadó: %(name)s" -#: cps/web.py:605 +#: cps/web.py:609 #, python-format msgid "Series: %(serie)s" msgstr "Sorozat: %(serie)s" -#: cps/web.py:620 +#: cps/web.py:623 msgid "Rating: None" msgstr "" -#: cps/web.py:629 +#: cps/web.py:632 #, python-format msgid "Rating: %(rating)s stars" msgstr "" -#: cps/web.py:645 +#: cps/web.py:663 #, python-format msgid "File format: %(format)s" msgstr "" -#: cps/web.py:682 +#: cps/web.py:698 #, python-format msgid "Category: %(name)s" msgstr "Címke: %(name)s" -#: cps/web.py:711 +#: cps/web.py:727 #, python-format msgid "Language: %(name)s" msgstr "Nyelv: %(name)s" -#: cps/templates/admin.html:16 cps/web.py:949 +#: cps/templates/admin.html:16 cps/web.py:965 msgid "Downloads" msgstr "Letöltések" -#: cps/web.py:1051 +#: cps/web.py:1067 msgid "Ratings list" msgstr "" -#: cps/web.py:1078 +#: cps/web.py:1094 msgid "File formats list" msgstr "" -#: cps/web.py:1233 +#: cps/web.py:1249 #, fuzzy msgid "Please configure the SMTP mail settings first..." msgstr "Először be kell állítani az SMTP levelező beállításokat..." -#: cps/web.py:1240 +#: cps/web.py:1256 #, python-format msgid "Success! Book queued for sending to %(eReadermail)s" msgstr "A könyv sikeresen küldésre lett jelölve a következő címre: %(eReadermail)s" -#: cps/web.py:1243 +#: cps/web.py:1259 #, python-format msgid "Oops! There was an error sending book: %(res)s" msgstr "Hiba történt a könyv küldésekor: %(res)s" -#: cps/web.py:1245 +#: cps/web.py:1261 #, fuzzy msgid "Oops! Please update your profile with a valid eReader Email." msgstr "Először be kell állítani a kindle e-mail címet..." -#: cps/web.py:1261 +#: cps/web.py:1277 msgid "Please wait one minute to register next user" msgstr "" #: cps/templates/layout.html:68 cps/templates/layout.html:102 -#: cps/templates/login.html:27 cps/templates/register.html:17 cps/web.py:1262 -#: cps/web.py:1267 cps/web.py:1271 cps/web.py:1277 cps/web.py:1297 -#: cps/web.py:1301 cps/web.py:1314 cps/web.py:1317 +#: cps/templates/login.html:27 cps/templates/register.html:17 cps/web.py:1278 +#: cps/web.py:1282 cps/web.py:1287 cps/web.py:1291 cps/web.py:1297 +#: cps/web.py:1317 cps/web.py:1321 cps/web.py:1334 cps/web.py:1337 msgid "Register" msgstr "Regisztrálás" -#: cps/web.py:1266 cps/web.py:1313 +#: cps/web.py:1281 cps/web.py:1385 +msgid "Connection error to limiter backend, please contact your administrator" +msgstr "" + +#: cps/web.py:1286 cps/web.py:1333 msgid "Oops! Email server is not configured, please contact your administrator." msgstr "" -#: cps/web.py:1299 +#: cps/web.py:1319 msgid "Oops! Your Email is not allowed." msgstr "Nem engedélyezett a megadott e-mail cím bejegyzése" -#: cps/web.py:1302 +#: cps/web.py:1322 msgid "Success! Confirmation Email has been sent." msgstr "Jóváhagyó levél elküldve az email címedre." -#: cps/web.py:1348 cps/web.py:1367 +#: cps/web.py:1368 cps/web.py:1391 msgid "Cannot activate LDAP authentication" msgstr "" -#: cps/web.py:1361 +#: cps/web.py:1381 msgid "Please wait one minute before next login" msgstr "" -#: cps/web.py:1376 +#: cps/web.py:1400 #, fuzzy, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "Be vagy jelentkezve mint: %(nickname)s" -#: cps/web.py:1383 +#: cps/web.py:1407 #, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgstr "" -#: cps/web.py:1388 +#: cps/web.py:1412 #, python-format msgid "Could not login: %(message)s" msgstr "" -#: cps/web.py:1392 cps/web.py:1417 +#: cps/web.py:1416 cps/web.py:1441 #, fuzzy msgid "Wrong Username or Password" msgstr "Rossz felhasználó név vagy jelszó!" -#: cps/web.py:1399 +#: cps/web.py:1423 msgid "New Password was sent to your email address" msgstr "" -#: cps/web.py:1403 +#: cps/web.py:1427 #, fuzzy msgid "An unknown error occurred. Please try again later." msgstr "Ismeretlen hiba történt. Próbáld újra később!" -#: cps/web.py:1405 +#: cps/web.py:1429 #, fuzzy msgid "Please enter valid username to reset password" msgstr "Rossz felhasználó név vagy jelszó!" -#: cps/web.py:1413 +#: cps/web.py:1437 #, fuzzy, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "Be vagy jelentkezve mint: %(nickname)s" -#: cps/web.py:1471 cps/web.py:1521 +#: cps/web.py:1495 cps/web.py:1545 #, python-format msgid "%(name)s's Profile" msgstr "%(name)s profilja" -#: cps/web.py:1487 +#: cps/web.py:1511 #, fuzzy msgid "Success! Profile Updated" msgstr "A profil frissítve." -#: cps/web.py:1491 +#: cps/web.py:1515 #, fuzzy msgid "Oops! An account already exists for this Email." msgstr "Már létezik felhasználó ehhez az e-mail címhez." @@ -1493,41 +1498,41 @@ msgstr "" msgid "%(book)s send to E-Reader" msgstr "Küldés Kindle-re" -#: cps/tasks/convert.py:166 +#: cps/tasks/convert.py:167 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "" -#: cps/tasks/convert.py:200 +#: cps/tasks/convert.py:201 #, python-format msgid "%(format)s format not found on disk" msgstr "" -#: cps/tasks/convert.py:204 +#: cps/tasks/convert.py:205 msgid "Ebook converter failed with unknown error" msgstr "" -#: cps/tasks/convert.py:223 +#: cps/tasks/convert.py:224 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "" -#: cps/tasks/convert.py:244 +#: cps/tasks/convert.py:245 #, python-format msgid "Converted file not found or more than one file in folder %(folder)s" msgstr "" -#: cps/tasks/convert.py:279 +#: cps/tasks/convert.py:287 #, 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:302 +#: cps/tasks/convert.py:310 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "" -#: cps/tasks/convert.py:307 +#: cps/tasks/convert.py:315 msgid "Convert" msgstr "" @@ -1535,7 +1540,7 @@ msgstr "" msgid "Reconnecting Calibre database" msgstr "" -#: cps/tasks/mail.py:269 +#: cps/tasks/mail.py:278 msgid "E-mail" msgstr "" @@ -1814,12 +1819,12 @@ 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:414 -#: cps/templates/config_view_edit.html:175 cps/templates/modal_dialogs.html:64 -#: cps/templates/modal_dialogs.html:99 cps/templates/modal_dialogs.html:117 -#: cps/templates/modal_dialogs.html:135 cps/templates/schedule_edit.html:45 -#: cps/templates/shelf_edit.html:27 cps/templates/tasks.html:46 -#: cps/templates/user_edit.html:144 +#: cps/templates/config_db.html:66 cps/templates/config_edit.html:428 +#: 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 +#: cps/templates/schedule_edit.html:45 cps/templates/shelf_edit.html:27 +#: cps/templates/tasks.html:46 cps/templates/user_edit.html:144 msgid "Cancel" msgstr "" @@ -2000,7 +2005,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:413 cps/templates/config_view_edit.html:174 +#: cps/templates/config_edit.html:427 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 @@ -2168,7 +2173,7 @@ msgid "Location of Calibre Database" msgstr "Calibra adatbázis helye" #: cps/templates/config_db.html:21 -msgid "Separate Book files from Library (Highly experimental, might not work at all)" +msgid "Separate Book Files from Library" msgstr "" #: cps/templates/config_db.html:34 @@ -2252,7 +2257,7 @@ msgid "Convert non-English characters in title and author while saving to disk" msgstr "" #: cps/templates/config_edit.html:108 -msgid "Embed Metadata to Ebook File on Download and Conversion (needs Calibre/Kepubify binaries)" +msgid "Embed Metadata to Ebook File on Download/Conversion/e-mail (needs Calibre/Kepubify binaries)" msgstr "" #: cps/templates/config_edit.html:112 @@ -2474,40 +2479,52 @@ msgstr "" msgid "Limit failed login attempts" msgstr "" -#: cps/templates/config_edit.html:376 +#: cps/templates/config_edit.html:377 +msgid "Configure Backend for Limiter" +msgstr "" + +#: cps/templates/config_edit.html:381 +msgid "Options for Limiter" +msgstr "" + +#: cps/templates/config_edit.html:386 msgid "Session protection" msgstr "" -#: cps/templates/config_edit.html:378 +#: cps/templates/config_edit.html:388 msgid "Basic" msgstr "" -#: cps/templates/config_edit.html:379 +#: cps/templates/config_edit.html:389 msgid "Strong" msgstr "" -#: cps/templates/config_edit.html:384 +#: cps/templates/config_edit.html:394 #, fuzzy msgid "User Password policy" msgstr "Felhasználó jelszavának alaphelyzetbe állítása" -#: cps/templates/config_edit.html:388 +#: cps/templates/config_edit.html:398 msgid "Minimum password length" msgstr "" -#: cps/templates/config_edit.html:393 +#: cps/templates/config_edit.html:403 msgid "Enforce number" msgstr "" -#: cps/templates/config_edit.html:397 +#: cps/templates/config_edit.html:407 msgid "Enforce lowercase characters" msgstr "" -#: cps/templates/config_edit.html:401 +#: cps/templates/config_edit.html:411 msgid "Enforce uppercase characters" msgstr "" -#: cps/templates/config_edit.html:405 +#: cps/templates/config_edit.html:415 +msgid "Enforce characters (needed For Chinese/Japanese/Korean Characters)" +msgstr "" + +#: cps/templates/config_edit.html:419 msgid "Enforce special characters" msgstr "" @@ -2631,47 +2648,47 @@ msgstr "" msgid "Published" msgstr "" -#: cps/templates/detail.html:250 cps/templates/listenmp3.html:158 +#: cps/templates/detail.html:251 cps/templates/listenmp3.html:158 msgid "Mark As Unread" msgstr "Legyen olvasatlan" -#: cps/templates/detail.html:251 cps/templates/listenmp3.html:158 +#: cps/templates/detail.html:252 cps/templates/listenmp3.html:158 msgid "Mark As Read" msgstr "Legyen olvasott" -#: cps/templates/detail.html:253 cps/templates/listenmp3.html:159 +#: cps/templates/detail.html:254 cps/templates/listenmp3.html:159 msgid "Read" msgstr "Olvasva" -#: cps/templates/detail.html:263 cps/templates/listenmp3.html:166 +#: cps/templates/detail.html:264 cps/templates/listenmp3.html:166 msgid "Restore from archive" msgstr "" -#: cps/templates/detail.html:264 cps/templates/listenmp3.html:166 +#: cps/templates/detail.html:265 cps/templates/listenmp3.html:166 msgid "Add to archive" msgstr "" -#: cps/templates/detail.html:266 cps/templates/listenmp3.html:167 +#: cps/templates/detail.html:267 cps/templates/listenmp3.html:167 msgid "Archived" msgstr "" -#: cps/templates/detail.html:277 cps/templates/listenmp3.html:177 +#: cps/templates/detail.html:278 cps/templates/listenmp3.html:177 msgid "Description:" msgstr "Ismertető:" -#: cps/templates/detail.html:292 cps/templates/listenmp3.html:190 +#: cps/templates/detail.html:293 cps/templates/listenmp3.html:190 #: cps/templates/search.html:16 msgid "Add to shelf" msgstr "Hozzáadás polchoz" -#: cps/templates/detail.html:304 cps/templates/detail.html:323 +#: cps/templates/detail.html:305 cps/templates/detail.html:324 #: cps/templates/feed.xml:81 cps/templates/layout.html:154 #: cps/templates/listenmp3.html:201 cps/templates/listenmp3.html:218 #: cps/templates/search.html:22 msgid "(Public)" msgstr "" -#: cps/templates/detail.html:339 +#: cps/templates/detail.html:340 msgid "Edit Metadata" msgstr "Metaadatok szerkesztése" diff --git a/cps/translations/id/LC_MESSAGES/messages.mo b/cps/translations/id/LC_MESSAGES/messages.mo index cc8dcd93..97ca014d 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 26daadd0..67a3256e 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-02-10 10:06+0100\n" +"POT-Creation-Date: 2024-04-27 07:20+0200\n" "PO-Revision-Date: 2023-01-21 10:00+0700\n" "Last-Translator: Arief Hidayat\n" "Language: id\n" @@ -22,491 +22,491 @@ msgstr "" msgid "Statistics" msgstr "Statistik" -#: cps/admin.py:149 +#: cps/admin.py:150 #, fuzzy msgid "Server restarted, please reload page." msgstr "Server dimulai ulang, harap muat ulang halaman" -#: cps/admin.py:151 +#: cps/admin.py:152 #, fuzzy msgid "Performing Server shutdown, please close window." msgstr "Mematikan server, silakan tutup jendela" -#: cps/admin.py:159 +#: cps/admin.py:160 msgid "Success! Database Reconnected" msgstr "" -#: cps/admin.py:162 +#: cps/admin.py:163 msgid "Unknown command" msgstr "Perintah tidak diketahui" -#: cps/admin.py:173 +#: cps/admin.py:174 #, fuzzy 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:206 cps/editbooks.py:589 cps/editbooks.py:591 -#: cps/editbooks.py:629 cps/editbooks.py:646 cps/editbooks.py:1262 +#: cps/admin.py:207 cps/editbooks.py:590 cps/editbooks.py:592 +#: cps/editbooks.py:630 cps/editbooks.py:647 cps/editbooks.py:1263 #: cps/updater.py:613 cps/uploader.py:93 cps/uploader.py:102 msgid "Unknown" msgstr "Tidak diketahui" -#: cps/admin.py:231 +#: cps/admin.py:232 msgid "Admin page" msgstr "Halaman Admin" -#: cps/admin.py:251 +#: cps/admin.py:252 msgid "Basic Configuration" msgstr "Pengaturan Dasar" -#: cps/admin.py:289 +#: cps/admin.py:290 msgid "UI Configuration" msgstr "Pengaturan Antarmuka" -#: cps/admin.py:323 cps/templates/admin.html:51 +#: cps/admin.py:324 cps/templates/admin.html:51 msgid "Edit Users" msgstr "Edit pengguna" -#: cps/admin.py:367 cps/opds.py:506 cps/templates/grid.html:14 +#: cps/admin.py:368 cps/opds.py:506 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "Semua" -#: cps/admin.py:394 cps/admin.py:1405 +#: cps/admin.py:395 cps/admin.py:1417 msgid "User not found" msgstr "Pengguna tidak ditemukan" -#: cps/admin.py:408 +#: cps/admin.py:409 msgid "{} users deleted successfully" msgstr "{} pengguna berhasil dihapus" -#: cps/admin.py:431 cps/templates/config_view_edit.html:133 +#: cps/admin.py:432 cps/templates/config_view_edit.html:133 #: cps/templates/user_edit.html:45 cps/templates/user_table.html:81 msgid "Show All" msgstr "Tampilkan semua" -#: cps/admin.py:452 cps/admin.py:458 +#: cps/admin.py:453 cps/admin.py:459 msgid "Malformed request" msgstr "Permintaan salah" -#: cps/admin.py:470 cps/admin.py:2033 +#: cps/admin.py:471 cps/admin.py:2048 msgid "Guest Name can't be changed" msgstr "Nama Tamu tidak dapat diganti" -#: cps/admin.py:482 +#: cps/admin.py:483 msgid "Guest can't have this role" msgstr "Tamu tidak dapat memiliki peran ini" -#: cps/admin.py:494 cps/admin.py:1987 +#: cps/admin.py:495 cps/admin.py:2002 msgid "No admin user remaining, can't remove admin role" msgstr "Tidak ada pengguna admin yang tersisa, tidak dapat menghapus peran admin" -#: cps/admin.py:498 cps/admin.py:512 +#: cps/admin.py:499 cps/admin.py:513 msgid "Value has to be true or false" msgstr "Nilai harus benar atau salah" -#: cps/admin.py:500 +#: cps/admin.py:501 msgid "Invalid role" msgstr "Peran tidak valid" -#: cps/admin.py:504 +#: cps/admin.py:505 msgid "Guest can't have this view" msgstr " Tamu tidak dapat mengakses tampilan ini" -#: cps/admin.py:514 +#: cps/admin.py:515 msgid "Invalid view" msgstr " Tampilan tidak valid" -#: cps/admin.py:517 +#: cps/admin.py:518 msgid "Guest's Locale is determined automatically and can't be set" msgstr "Lokal Tamu ditentukan secara otomatis dan tidak dapat disetel" -#: cps/admin.py:521 +#: cps/admin.py:522 msgid "No Valid Locale Given" msgstr "Tidak Ada Lokal yang Valid Diberikan" -#: cps/admin.py:532 +#: cps/admin.py:533 msgid "No Valid Book Language Given" msgstr "Tidak Ada Bahasa Buku yang Valid Diberikan" -#: cps/admin.py:534 cps/editbooks.py:455 +#: cps/admin.py:535 cps/editbooks.py:456 msgid "Parameter not found" msgstr "Parameter tidak ditemukan" -#: cps/admin.py:571 +#: cps/admin.py:572 msgid "Invalid Read Column" msgstr "Kolom Baca Tidak Valid" -#: cps/admin.py:577 +#: cps/admin.py:578 msgid "Invalid Restricted Column" msgstr "Kolom Dibatasi Tidak Valid" -#: cps/admin.py:597 cps/admin.py:1858 +#: cps/admin.py:598 cps/admin.py:1873 msgid "Calibre-Web configuration updated" msgstr "Pengaturan Calibre-Web telah diperbarui" -#: cps/admin.py:609 +#: cps/admin.py:610 msgid "Do you really want to delete the Kobo Token?" msgstr "Apakah Anda yakin ingin menghapus Token Kobo?" -#: cps/admin.py:611 +#: cps/admin.py:612 msgid "Do you really want to delete this domain?" msgstr "Apakah Anda yakin ingin menghapus domain ini?" -#: cps/admin.py:613 +#: cps/admin.py:614 msgid "Do you really want to delete this user?" msgstr "Apakah Anda yakin ingin menghapus pengguna ini?" -#: cps/admin.py:615 +#: cps/admin.py:616 msgid "Are you sure you want to delete this shelf?" msgstr "Apakah Anda yakin ingin menghapus rak ini?" -#: cps/admin.py:617 +#: cps/admin.py:618 msgid "Are you sure you want to change locales of selected user(s)?" msgstr "Apakah Anda yakin ingin merubah lokalisasi untuk pengguna yang dipilih?" -#: cps/admin.py:619 +#: cps/admin.py:620 msgid "Are you sure you want to change visible book languages for selected user(s)?" msgstr "Apakah Anda yakin ingin merubah bahasa buku yang terlihat untuk pengguna yang dipilih?" -#: cps/admin.py:621 +#: cps/admin.py:622 msgid "Are you sure you want to change the selected role for the selected user(s)?" msgstr "Apakah Anda yakin ingin merubah peran untuk pengguna yang dipilih?" -#: cps/admin.py:623 +#: cps/admin.py:624 msgid "Are you sure you want to change the selected restrictions for the selected user(s)?" msgstr "Apakah Anda yakin ingin mengubah batasan yang dipilih untuk pengguna yang dipilih?" -#: cps/admin.py:625 +#: cps/admin.py:626 msgid "Are you sure you want to change the selected visibility restrictions for the selected user(s)?" msgstr "Apakah Anda yakin ingin merubah batasan visibilitas untuk pengguna yang dipilih?" -#: cps/admin.py:628 +#: cps/admin.py:629 msgid "Are you sure you want to change shelf sync behavior for the selected user(s)?" msgstr "Apakah Anda yakin ingin mengubah perilaku sinkronisasi rak untuk pengguna yang dipilih?" -#: cps/admin.py:630 +#: cps/admin.py:631 msgid "Are you sure you want to change Calibre library location?" msgstr "Apakah Anda yakin ingin mengubah lokasi perpustakaan Calibre?" -#: cps/admin.py:632 +#: cps/admin.py:633 msgid "Calibre-Web will search for updated Covers and update Cover Thumbnails, this may take a while?" msgstr "Calibre-Web akan mencari Sampul yang diperbarui dan memperbarui Thumbnail Sampul, ini mungkin memakan waktu cukup lama?" -#: cps/admin.py:635 +#: cps/admin.py:636 msgid "Are you sure you want delete Calibre-Web's sync database to force a full sync with your Kobo Reader?" msgstr "Apakah Anda yakin ingin menghapus database sinkronisasi Calibre-Web untuk memaksakan sinkronisasi penuh dengan Kobo Reader Anda?" -#: cps/admin.py:878 cps/admin.py:884 cps/admin.py:894 cps/admin.py:904 +#: cps/admin.py:879 cps/admin.py:885 cps/admin.py:895 cps/admin.py:905 #: cps/templates/modal_dialogs.html:29 cps/templates/user_table.html:41 #: cps/templates/user_table.html:58 msgid "Deny" msgstr "Tolak" -#: cps/admin.py:880 cps/admin.py:886 cps/admin.py:896 cps/admin.py:906 +#: cps/admin.py:881 cps/admin.py:887 cps/admin.py:897 cps/admin.py:907 #: cps/templates/modal_dialogs.html:28 cps/templates/user_table.html:44 #: cps/templates/user_table.html:61 msgid "Allow" msgstr "Izinkan" -#: cps/admin.py:921 +#: cps/admin.py:940 msgid "{} sync entries deleted" msgstr "{} entri sinkronisasi dihapus" -#: cps/admin.py:969 +#: cps/admin.py:981 msgid "Tag not found" msgstr "Tag tidak ditemukan" -#: cps/admin.py:981 +#: cps/admin.py:993 msgid "Invalid Action" msgstr "Tindakan Tidak Valid" -#: cps/admin.py:1111 +#: cps/admin.py:1123 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "client_secrets.json Tidak Diatur Untuk Aplikasi Web" -#: cps/admin.py:1156 +#: cps/admin.py:1168 msgid "Logfile Location is not Valid, Please Enter Correct Path" msgstr "Lokasi Logfile tidak Valid, Harap Masukkan Jalur yang Benar" -#: cps/admin.py:1162 +#: cps/admin.py:1174 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:1196 +#: cps/admin.py:1208 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:1202 +#: cps/admin.py:1214 msgid "Please Enter a LDAP Service Account and Password" msgstr "Masukkan Akun Layanan LDAP dan Kata Sandi" -#: cps/admin.py:1205 +#: cps/admin.py:1217 msgid "Please Enter a LDAP Service Account" msgstr "Masukkan Akun Layanan LDAP" -#: cps/admin.py:1210 +#: cps/admin.py:1222 #, 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:1212 +#: cps/admin.py:1224 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "Filter Objek Grup LDAP Memiliki Tanda kurung yang Tak Berpasangan" -#: cps/admin.py:1216 +#: cps/admin.py:1228 #, 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:1218 +#: cps/admin.py:1230 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "Filter Objek Pengguna LDAP Memiliki Tanda kurung yang Tak Berpasangan" -#: cps/admin.py:1225 +#: cps/admin.py:1237 #, 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:1227 +#: cps/admin.py:1239 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "Filter Pengguna Anggota LDAP Memiliki Tanda Kurung yang Tak Berpasangan" -#: cps/admin.py:1234 +#: cps/admin.py:1246 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:1265 cps/templates/admin.html:53 +#: cps/admin.py:1277 cps/templates/admin.html:53 msgid "Add New User" msgstr "Tambah Pengguna Baru" -#: cps/admin.py:1274 cps/templates/admin.html:100 +#: cps/admin.py:1286 cps/templates/admin.html:100 msgid "Edit Email Server Settings" msgstr "Edit Pengaturan Server Email" -#: cps/admin.py:1293 +#: cps/admin.py:1305 msgid "Success! Gmail Account Verified." msgstr "" -#: cps/admin.py:1313 cps/admin.py:1316 cps/admin.py:1698 cps/admin.py:1842 -#: cps/admin.py:1940 cps/admin.py:2061 cps/editbooks.py:241 -#: cps/editbooks.py:317 cps/editbooks.py:1224 cps/shelf.py:90 cps/shelf.py:150 +#: cps/admin.py:1325 cps/admin.py:1328 cps/admin.py:1710 cps/admin.py:1857 +#: cps/admin.py:1955 cps/admin.py:2076 cps/editbooks.py:242 +#: cps/editbooks.py:318 cps/editbooks.py:1225 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:149 cps/web.py:1496 +#: cps/shelf.py:468 cps/tasks/convert.py:150 cps/web.py:1520 #, python-format msgid "Oops! Database Error: %(error)s." msgstr "Kesalahan basis data: %(error)s" -#: cps/admin.py:1323 +#: cps/admin.py:1335 #, 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:1326 +#: cps/admin.py:1338 #, 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:1328 +#: cps/admin.py:1340 msgid "Please configure your e-mail address first..." msgstr "Harap atur alamat email Anda terlebih dahulu.." -#: cps/admin.py:1330 +#: cps/admin.py:1342 msgid "Email Server Settings updated" msgstr "Setelan server email diperbarui" -#: cps/admin.py:1353 cps/templates/admin.html:195 +#: cps/admin.py:1365 cps/templates/admin.html:195 msgid "Edit Scheduled Tasks Settings" msgstr "Edit Pengaturan Tugas Terjadwal" -#: cps/admin.py:1365 +#: cps/admin.py:1377 msgid "Invalid start time for task specified" msgstr "Waktu mulai tidak valid untuk tugas yang ditentukan" -#: cps/admin.py:1370 +#: cps/admin.py:1382 msgid "Invalid duration for task specified" msgstr "Durasi tidak valid untuk tugas yang ditentukan" -#: cps/admin.py:1380 +#: cps/admin.py:1392 msgid "Scheduled tasks settings updated" msgstr "Pengaturan tugas terjadwal diperbarui" -#: cps/admin.py:1390 cps/admin.py:1439 cps/admin.py:2057 cps/web.py:1296 +#: cps/admin.py:1402 cps/admin.py:1451 cps/admin.py:2072 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:1394 +#: cps/admin.py:1406 msgid "Settings DB is not Writeable" msgstr "Pengaturan DB tidak dapat ditulisi" -#: cps/admin.py:1424 cps/admin.py:2049 +#: cps/admin.py:1436 cps/admin.py:2064 #, python-format msgid "Edit User %(nick)s" msgstr "Edit pengguna %(nick)s" -#: cps/admin.py:1436 +#: cps/admin.py:1448 #, fuzzy, python-format msgid "Success! Password for user %(user)s reset" msgstr "Kata sandi untuk pengaturan ulang pengguna %(user) " -#: cps/admin.py:1442 +#: cps/admin.py:1454 #, fuzzy msgid "Oops! Please configure the SMTP mail settings." msgstr "Harap atur pengaturan email SMTP terlebih dahulu..." -#: cps/admin.py:1453 +#: cps/admin.py:1465 msgid "Logfile viewer" msgstr "Penampil berkas log" -#: cps/admin.py:1519 +#: cps/admin.py:1531 msgid "Requesting update package" msgstr "Meminta paket pembaruan" -#: cps/admin.py:1520 +#: cps/admin.py:1532 msgid "Downloading update package" msgstr "Mengunduh paket pembaruan" -#: cps/admin.py:1521 +#: cps/admin.py:1533 msgid "Unzipping update package" msgstr "Mengekstrak paket pembaruan" -#: cps/admin.py:1522 +#: cps/admin.py:1534 msgid "Replacing files" msgstr "Mengganti berkas" -#: cps/admin.py:1523 +#: cps/admin.py:1535 msgid "Database connections are closed" msgstr "Koneksi basis data ditutup" -#: cps/admin.py:1524 +#: cps/admin.py:1536 msgid "Stopping server" msgstr "Menghentikan server" -#: cps/admin.py:1525 +#: cps/admin.py:1537 msgid "Update finished, please press okay and reload page" msgstr "Pembaruan selesai, silakan tekan OK dan muat ulang halaman" -#: cps/admin.py:1526 cps/admin.py:1527 cps/admin.py:1528 cps/admin.py:1529 -#: cps/admin.py:1530 cps/admin.py:1531 +#: cps/admin.py:1538 cps/admin.py:1539 cps/admin.py:1540 cps/admin.py:1541 +#: cps/admin.py:1542 cps/admin.py:1543 msgid "Update failed:" msgstr "Pembaruan gagal:" -#: cps/admin.py:1526 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 +#: cps/admin.py:1538 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 msgid "HTTP Error" msgstr "Kesalahan HTTP" -#: cps/admin.py:1527 cps/updater.py:391 cps/updater.py:628 +#: cps/admin.py:1539 cps/updater.py:391 cps/updater.py:628 msgid "Connection error" msgstr "Kesalahan koneksi" -#: cps/admin.py:1528 cps/updater.py:393 cps/updater.py:630 +#: cps/admin.py:1540 cps/updater.py:393 cps/updater.py:630 msgid "Timeout while establishing connection" msgstr "Batas waktu saat membuat koneksi" -#: cps/admin.py:1529 cps/updater.py:395 cps/updater.py:632 +#: cps/admin.py:1541 cps/updater.py:395 cps/updater.py:632 msgid "General error" msgstr "Kesalahan umum" -#: cps/admin.py:1530 +#: cps/admin.py:1542 msgid "Update file could not be saved in temp dir" msgstr "Berkas pembaruan tidak dapat disimpan di direktori temp" -#: cps/admin.py:1531 +#: cps/admin.py:1543 msgid "Files could not be replaced during update" msgstr "Berkas tidak dapat diganti selama pembaruan" -#: cps/admin.py:1555 +#: cps/admin.py:1567 msgid "Failed to extract at least One LDAP User" msgstr "Gagal mengekstrak setidaknya Satu Pengguna LDAP" -#: cps/admin.py:1600 +#: cps/admin.py:1612 msgid "Failed to Create at Least One LDAP User" msgstr "Gagal Membuat Sedikitnya Satu Pengguna LDAP" -#: cps/admin.py:1613 +#: cps/admin.py:1625 #, python-format msgid "Error: %(ldaperror)s" msgstr "Kesalahan: %(ldaperror)s" -#: cps/admin.py:1617 +#: cps/admin.py:1629 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:1650 +#: 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:1652 +#: cps/admin.py:1664 msgid "{} User Successfully Imported" msgstr "{} Pengguna Berhasil Diimpor" -#: cps/admin.py:1710 +#: 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:1730 +#: cps/admin.py:1742 msgid "DB is not Writeable" msgstr "Basis Data tidak dapat ditulisi" -#: cps/admin.py:1746 +#: 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:1750 +#: 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:1829 +#: cps/admin.py:1842 msgid "Password length has to be between 1 and 40" msgstr "" -#: cps/admin.py:1881 +#: cps/admin.py:1896 msgid "Database Settings updated" msgstr "Pengaturan Basis Data diperbarui" -#: cps/admin.py:1889 +#: cps/admin.py:1904 msgid "Database Configuration" msgstr "Pengaturan Basis Data" -#: cps/admin.py:1904 cps/web.py:1270 +#: cps/admin.py:1919 cps/web.py:1290 msgid "Oops! Please complete all fields." msgstr "Harap masukkan seluruh isian!" -#: cps/admin.py:1913 +#: cps/admin.py:1928 msgid "E-mail is not from valid domain" msgstr "Email bukan dari domain yang valid" -#: cps/admin.py:1919 +#: cps/admin.py:1934 msgid "Add new user" msgstr "Tambahkan pengguna baru" -#: cps/admin.py:1930 +#: cps/admin.py:1945 #, python-format msgid "User '%(user)s' created" msgstr "Pengguna '%(user)s' telah dibuat" -#: cps/admin.py:1936 +#: cps/admin.py:1951 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:1966 +#: cps/admin.py:1981 #, python-format msgid "User '%(nick)s' deleted" msgstr "Pengguna '%(nick)s' telah dihapus" -#: cps/admin.py:1969 +#: cps/admin.py:1984 msgid "Can't delete Guest User" msgstr "Tidak dapat menghapus Pengguna Tamu" -#: cps/admin.py:1972 +#: cps/admin.py:1987 msgid "No admin user remaining, can't delete user" msgstr "Tidak ada pengguna admin tersisa, tidak dapat menghapus pengguna" -#: cps/admin.py:2027 cps/web.py:1445 +#: cps/admin.py:2042 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:2053 +#: cps/admin.py:2068 #, python-format msgid "User '%(nick)s' updated" msgstr "Pengguna '%(nick)s' diperbarui" @@ -519,122 +519,123 @@ msgstr "belum dipasang" msgid "Execution permissions missing" msgstr "Izin eksekusi hilang" -#: cps/db.py:752 cps/search.py:137 cps/web.py:731 +#: cps/db.py:752 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:993 cps/templates/config_edit.html:208 +#: cps/db.py:992 cps/templates/config_edit.html:208 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 -#: cps/web.py:558 cps/web.py:592 cps/web.py:665 cps/web.py:692 cps/web.py:973 -#: cps/web.py:1003 cps/web.py:1048 cps/web.py:1076 cps/web.py:1115 +#: 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 +#: cps/web.py:1131 msgid "None" msgstr "Tidak ada" -#: cps/editbooks.py:122 cps/editbooks.py:910 cps/web.py:525 cps/web.py:1537 -#: cps/web.py:1581 cps/web.py:1626 +#: cps/editbooks.py:123 cps/editbooks.py:911 cps/web.py:529 cps/web.py:1561 +#: cps/web.py:1605 cps/web.py:1650 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:166 cps/editbooks.py:1245 +#: cps/editbooks.py:167 cps/editbooks.py:1246 msgid "User has no rights to upload cover" msgstr "Pengguna tidak berhak mengganti sampul" -#: cps/editbooks.py:186 cps/editbooks.py:731 +#: cps/editbooks.py:187 cps/editbooks.py:732 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "IDは大文字小文字を区別しません。元のIDを上書きします" -#: cps/editbooks.py:228 +#: cps/editbooks.py:229 msgid "Metadata successfully updated" msgstr "Metadata berhasil diperbarui" -#: cps/editbooks.py:246 +#: cps/editbooks.py:247 msgid "Error editing book: {}" msgstr "Kesalahan pengeditan buku: {}" -#: cps/editbooks.py:303 +#: cps/editbooks.py:304 #, python-format msgid "File %(file)s uploaded" msgstr "Berkas %(file)s telah diunggah" -#: cps/editbooks.py:331 +#: cps/editbooks.py:332 msgid "Source or destination format for conversion missing" msgstr "Format sumber atau tujuan untuk konversi tidak ada" -#: cps/editbooks.py:339 +#: cps/editbooks.py:340 #, 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:343 +#: cps/editbooks.py:344 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "Terjadi kesalahan saat mengonversi buku ini: %(res)s" -#: cps/editbooks.py:650 +#: cps/editbooks.py:651 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:705 cps/editbooks.py:1037 +#: cps/editbooks.py:706 cps/editbooks.py:1038 #, python-format msgid "'%(langname)s' is not a valid language" msgstr "'%(langname)s' bukan bahasa yang valid" -#: cps/editbooks.py:743 cps/editbooks.py:1185 +#: cps/editbooks.py:744 cps/editbooks.py:1186 #, 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:747 cps/editbooks.py:1189 +#: cps/editbooks.py:748 cps/editbooks.py:1190 msgid "File to be uploaded must have an extension" msgstr "Berkas yang akan diunggah harus memiliki ekstensi" -#: cps/editbooks.py:755 +#: cps/editbooks.py:756 #, 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:775 +#: cps/editbooks.py:776 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "Gagal Memindahkan Berkas Sampul %(file)s: %(error)s" -#: cps/editbooks.py:832 cps/editbooks.py:834 +#: cps/editbooks.py:833 cps/editbooks.py:835 msgid "Book Format Successfully Deleted" msgstr "Format Buku Berhasil Dihapus" -#: cps/editbooks.py:841 cps/editbooks.py:843 +#: cps/editbooks.py:842 cps/editbooks.py:844 msgid "Book Successfully Deleted" msgstr "Buku Berhasil Dihapus" -#: cps/editbooks.py:895 +#: cps/editbooks.py:896 msgid "You are missing permissions to delete books" msgstr "Anda tidak memiliki izin untuk menghapus buku" -#: cps/editbooks.py:945 +#: cps/editbooks.py:946 msgid "edit metadata" msgstr "edit metadata" -#: cps/editbooks.py:994 +#: cps/editbooks.py:995 #, python-format msgid "%(seriesindex)s is not a valid number, skipping" msgstr "%(seriesindex)s dilewati karena bukan angka yang valid" -#: cps/editbooks.py:1180 +#: cps/editbooks.py:1181 msgid "User has no rights to upload additional file formats" msgstr "Pengguna tidak memiliki izin untuk mengunggah format berkas tambahan" -#: cps/editbooks.py:1201 +#: cps/editbooks.py:1202 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "Gagal membuat jalur %(path)s (Izin ditolak)." -#: cps/editbooks.py:1206 +#: cps/editbooks.py:1207 #, python-format msgid "Failed to store file %(file)s." msgstr "Gagal menyimpan berkas %(file)s." -#: cps/editbooks.py:1230 +#: cps/editbooks.py:1231 #, python-format msgid "File format %(ext)s added to %(book)s" msgstr "Format berkas %(ext)s ditambahkan ke %(book)s" @@ -647,207 +648,207 @@ msgstr "Pengaturan Google Drive belum selesai, coba nonaktifkan dan aktifkan kem 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" -#: cps/helper.py:84 +#: cps/helper.py:86 #, python-format 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:91 cps/tasks/convert.py:86 +#: cps/helper.py:93 cps/tasks/convert.py:86 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "%(format)s tidak ditemukan di Google Drive: %(fn)s" -#: cps/helper.py:96 +#: cps/helper.py:98 #, python-format msgid "%(format)s not found: %(fn)s" msgstr "%(format)s tidak ditemukan: %(fn)s" -#: cps/helper.py:101 cps/helper.py:226 cps/templates/detail.html:58 +#: cps/helper.py:103 cps/helper.py:228 cps/templates/detail.html:58 msgid "Send to eReader" msgstr "Kirim ke E-Reader" -#: cps/helper.py:102 cps/helper.py:120 cps/helper.py:228 +#: cps/helper.py:104 cps/helper.py:122 cps/helper.py:230 #, fuzzy msgid "This Email has been sent via Calibre-Web." msgstr "Email ini telah dikirim melalui Calibre-Web." -#: cps/helper.py:118 +#: cps/helper.py:120 #, fuzzy msgid "Calibre-Web Test Email" msgstr "Email tes Calibre-Web" -#: cps/helper.py:119 +#: cps/helper.py:121 #, fuzzy msgid "Test Email" msgstr "Email tes" -#: cps/helper.py:136 +#: cps/helper.py:138 msgid "Get Started with Calibre-Web" msgstr "Memulai dengan Calibre-Web" -#: cps/helper.py:141 +#: cps/helper.py:143 #, fuzzy, python-format msgid "Registration Email for user: %(name)s" msgstr "Email pendaftaran untuk pengguna: %(name)s" -#: cps/helper.py:152 cps/helper.py:158 +#: cps/helper.py:154 cps/helper.py:160 #, fuzzy, python-format msgid "Convert %(orig)s to %(format)s and send to eReader" msgstr "Ubah %(orig)s menjadi %(format)s dan kirim ke E-Reader" -#: cps/helper.py:177 cps/helper.py:181 cps/helper.py:185 +#: cps/helper.py:179 cps/helper.py:183 cps/helper.py:187 #, fuzzy, python-format msgid "Send %(format)s to eReader" msgstr "Kirim %(format)s ke E-Reader" -#: cps/helper.py:225 +#: cps/helper.py:227 #, fuzzy, python-format msgid "%(book)s send to eReader" msgstr "%%(buku)s telah dikirim ke E-Reader" -#: cps/helper.py:230 +#: cps/helper.py:232 msgid "The requested file could not be read. Maybe wrong permissions?" msgstr "Berkas yang diminta tidak dapat dibaca. Mungkin izinnya salah?" -#: cps/helper.py:345 +#: cps/helper.py:347 msgid "Read status could not set: {}" msgstr "Status baca tidak bisa disetel: {}" -#: cps/helper.py:368 +#: cps/helper.py:370 #, python-format msgid "Deleting bookfolder for book %(id)s failed, path has subfolders: %(path)s" msgstr "Menghapus folder buku untuk buku %(id)s gagal, jalur memiliki subfolder: %(path)s" -#: cps/helper.py:374 +#: cps/helper.py:376 #, python-format msgid "Deleting book %(id)s failed: %(message)s" msgstr "Gagal menghapus buku %(id)s: %(message)s" -#: cps/helper.py:385 +#: cps/helper.py:387 #, python-format 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:450 +#: cps/helper.py:452 #, 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:522 cps/helper.py:531 +#: cps/helper.py:524 cps/helper.py:533 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "Berkas %(file)s tidak ditemukan di Google Drive" -#: cps/helper.py:565 +#: cps/helper.py:567 #, 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:585 +#: cps/helper.py:587 msgid "Error in rename file in path: {}" msgstr "Kesalahan dalam mengganti nama berkas di jalur: {}" -#: cps/helper.py:603 +#: cps/helper.py:605 #, 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:668 +#: cps/helper.py:670 msgid "Found an existing account for this Email address" msgstr "" -#: cps/helper.py:676 +#: cps/helper.py:678 msgid "This username is already taken" msgstr "Nama pengguna ini sudah digunakan" -#: cps/helper.py:688 +#: cps/helper.py:690 #, fuzzy msgid "Invalid Email address format" msgstr "Format alamat email tidak valid" -#: cps/helper.py:706 +#: cps/helper.py:710 msgid "Password doesn't comply with password validation rules" msgstr "" -#: cps/helper.py:855 +#: cps/helper.py:859 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:865 +#: cps/helper.py:869 msgid "Error Downloading Cover" msgstr "Kesalahan Mengunduh Sampul" -#: cps/helper.py:868 +#: cps/helper.py:872 msgid "Cover Format Error" msgstr "Kesalahan Format Sampul" -#: cps/helper.py:871 +#: cps/helper.py:875 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:881 +#: cps/helper.py:885 msgid "Failed to create path for cover" msgstr "Gagal membuat jalur untuk sampul" -#: cps/helper.py:897 +#: cps/helper.py:901 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:908 +#: cps/helper.py:912 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:920 +#: cps/helper.py:924 msgid "Invalid cover file content" msgstr "Konten berkas sampul tidak valid" -#: cps/helper.py:924 +#: cps/helper.py:928 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "Hanya berkas jpg/jpeg yang didukung sebagai berkas sampul" -#: cps/helper.py:995 cps/helper.py:1183 +#: cps/helper.py:999 cps/helper.py:1156 #, fuzzy msgid "Cover" msgstr "Sampul" -#: cps/helper.py:1032 +#: cps/helper.py:1016 msgid "Unrar binary file not found" msgstr "Berkas biner unrar tidak ditemukan" -#: cps/helper.py:1043 +#: cps/helper.py:1027 #, fuzzy msgid "Error executing UnRar" msgstr "Kesalahan saat menjalankan UnRar" -#: cps/helper.py:1051 +#: cps/helper.py:1035 msgid "Could not find the specified directory" msgstr "" -#: cps/helper.py:1054 +#: cps/helper.py:1038 msgid "Please specify a directory, not a file" msgstr "" -#: cps/helper.py:1068 +#: cps/helper.py:1052 #, fuzzy msgid "Calibre binaries not viable" msgstr "Basis Data tidak dapat ditulisi" -#: cps/helper.py:1077 +#: cps/helper.py:1061 #, python-format msgid "Missing calibre binaries: %(missing)s" msgstr "" -#: cps/helper.py:1079 +#: cps/helper.py:1063 #, fuzzy, python-format msgid "Missing executable permissions: %(missing)s" msgstr "Izin eksekusi hilang" -#: cps/helper.py:1084 +#: cps/helper.py:1068 #, fuzzy msgid "Error excecuting Calibre" msgstr "Kesalahan saat menjalankan UnRar" -#: cps/helper.py:1185 cps/templates/admin.html:216 +#: cps/helper.py:1158 cps/templates/admin.html:216 msgid "Queue all books for metadata backup" msgstr "Antrian semua buku untuk cadangan metadata" @@ -931,7 +932,7 @@ msgstr "{}★" #: cps/remotelogin.py:62 cps/templates/layout.html:67 #: cps/templates/layout.html:101 cps/templates/login.html:4 -#: cps/templates/login.html:21 cps/web.py:1333 +#: cps/templates/login.html:21 cps/web.py:1353 msgid "Login" msgstr "Masuk" @@ -947,7 +948,7 @@ msgstr "Token telah kedaluwarsa" msgid "Success! Please return to your device" msgstr "Berhasil! Silakan kembali ke perangkat Anda" -#: cps/render_template.py:42 cps/web.py:414 +#: cps/render_template.py:42 cps/web.py:418 msgid "Books" msgstr "Buku" @@ -972,7 +973,7 @@ msgstr "Buku yang Diunduh" msgid "Show Downloaded Books" msgstr "Tampilkan Buku yang Diunduh" -#: cps/render_template.py:59 cps/templates/index.xml:33 cps/web.py:429 +#: cps/render_template.py:59 cps/templates/index.xml:33 cps/web.py:433 msgid "Top Rated Books" msgstr "Buku Berperingkat Teratas" @@ -981,7 +982,7 @@ msgid "Show Top Rated Books" msgstr "Tampilkan Buku Berperingkat Teratas" #: cps/render_template.py:62 cps/templates/index.xml:55 -#: cps/templates/index.xml:59 cps/web.py:750 +#: cps/templates/index.xml:59 cps/web.py:766 msgid "Read Books" msgstr "Buku Telah Dibaca" @@ -991,7 +992,7 @@ msgid "Show Read and Unread" msgstr "Tampilkan sudah dibaca dan belum dibaca" #: cps/render_template.py:66 cps/templates/index.xml:62 -#: cps/templates/index.xml:66 cps/web.py:753 +#: cps/templates/index.xml:66 cps/web.py:769 msgid "Unread Books" msgstr "Buku yang Belum Dibaca" @@ -1009,7 +1010,7 @@ msgid "Show Random Books" msgstr "Tampilkan Buku Acak" #: cps/render_template.py:72 cps/templates/book_table.html:67 -#: cps/templates/index.xml:84 cps/web.py:1119 +#: cps/templates/index.xml:84 cps/web.py:1135 msgid "Categories" msgstr "Kategori" @@ -1020,7 +1021,7 @@ msgstr "Tampilkan pilihan kategori" #: cps/render_template.py:75 cps/templates/book_edit.html:91 #: cps/templates/book_table.html:68 cps/templates/index.xml:91 -#: cps/templates/search_form.html:70 cps/web.py:1009 cps/web.py:1021 +#: cps/templates/search_form.html:70 cps/web.py:1025 cps/web.py:1037 msgid "Series" msgstr "Seri" @@ -1040,7 +1041,7 @@ msgid "Show Author Section" msgstr "Tampilkan pilihan penulis" #: cps/render_template.py:82 cps/templates/book_table.html:72 -#: cps/templates/index.xml:77 cps/web.py:977 +#: cps/templates/index.xml:77 cps/web.py:993 msgid "Publishers" msgstr "Penerbit" @@ -1051,7 +1052,7 @@ msgstr "Tampilkan pilihan penerbit" #: cps/render_template.py:85 cps/templates/book_table.html:70 #: cps/templates/index.xml:98 cps/templates/search_form.html:108 -#: cps/web.py:1091 +#: cps/web.py:1107 msgid "Languages" msgstr "Bahasa" @@ -1078,7 +1079,7 @@ msgstr "Format berkas" msgid "Show File Formats Section" msgstr "Tampilkan pilihan format berkas" -#: cps/render_template.py:96 cps/web.py:776 +#: cps/render_template.py:96 cps/web.py:792 msgid "Archived Books" msgstr "Buku yang Diarsipkan" @@ -1087,7 +1088,7 @@ msgstr "Buku yang Diarsipkan" msgid "Show Archived Books" msgstr "Tampilkan buku yang diarsipkan" -#: cps/render_template.py:101 cps/web.py:807 +#: cps/render_template.py:101 cps/web.py:823 msgid "Books List" msgstr "Daftar Buku" @@ -1308,173 +1309,178 @@ msgstr "Pembaruan tersedia. Klik tombol di bawah untuk memperbarui ke versi: %(v msgid "No release information available" msgstr "Tidak ada informasi rilis yang tersedia" -#: cps/templates/index.html:6 cps/web.py:441 +#: cps/templates/index.html:6 cps/web.py:445 msgid "Discover (Random Books)" msgstr "Temukan (Buku Acak)" -#: cps/web.py:477 +#: cps/web.py:481 msgid "Hot Books (Most Downloaded)" msgstr "Buku Populer (Paling Banyak Diunduh)" -#: cps/web.py:508 +#: cps/web.py:512 #, python-format msgid "Downloaded books by %(user)s" msgstr "Buku telah diunduh oleh %(user)s" -#: cps/web.py:541 +#: cps/web.py:545 #, python-format msgid "Author: %(name)s" msgstr "Penulis: %(name)s" -#: cps/web.py:577 +#: cps/web.py:581 #, python-format msgid "Publisher: %(name)s" msgstr "Penerbit: %(name)s" -#: cps/web.py:605 +#: cps/web.py:609 #, python-format msgid "Series: %(serie)s" msgstr "Seri: %(serie)s" -#: cps/web.py:620 +#: cps/web.py:623 msgid "Rating: None" msgstr "Peringkat: Tidak ada" -#: cps/web.py:629 +#: cps/web.py:632 #, python-format msgid "Rating: %(rating)s stars" msgstr "Peringkat: %(rating)s★" -#: cps/web.py:645 +#: cps/web.py:663 #, python-format msgid "File format: %(format)s" msgstr "Format berkas: %(format)s" -#: cps/web.py:682 +#: cps/web.py:698 #, python-format msgid "Category: %(name)s" msgstr "Kategori: %(name)s" -#: cps/web.py:711 +#: cps/web.py:727 #, python-format msgid "Language: %(name)s" msgstr "Bahasa: %(name)s" -#: cps/templates/admin.html:16 cps/web.py:949 +#: cps/templates/admin.html:16 cps/web.py:965 msgid "Downloads" msgstr "Unduhan" -#: cps/web.py:1051 +#: cps/web.py:1067 msgid "Ratings list" msgstr "Daftar peringkat" -#: cps/web.py:1078 +#: cps/web.py:1094 msgid "File formats list" msgstr "Daftar format berkas" -#: cps/web.py:1233 +#: cps/web.py:1249 #, fuzzy msgid "Please configure the SMTP mail settings first..." msgstr "Harap atur pengaturan email SMTP terlebih dahulu..." -#: cps/web.py:1240 +#: cps/web.py:1256 #, python-format msgid "Success! Book queued for sending to %(eReadermail)s" msgstr "Buku telah diantrikan untuk dikirim ke %(eReadermail)s" -#: cps/web.py:1243 +#: cps/web.py:1259 #, python-format msgid "Oops! There was an error sending book: %(res)s" msgstr "Oops! Terjadi kesalahan saat mengirim buku: %(res)s" -#: cps/web.py:1245 +#: cps/web.py:1261 #, fuzzy msgid "Oops! Please update your profile with a valid eReader Email." msgstr "Harap perbarui profil Anda dengan alamat e-mail Kirim ke Kindle yang valid." -#: cps/web.py:1261 +#: cps/web.py:1277 msgid "Please wait one minute to register next user" msgstr "" #: cps/templates/layout.html:68 cps/templates/layout.html:102 -#: cps/templates/login.html:27 cps/templates/register.html:17 cps/web.py:1262 -#: cps/web.py:1267 cps/web.py:1271 cps/web.py:1277 cps/web.py:1297 -#: cps/web.py:1301 cps/web.py:1314 cps/web.py:1317 +#: cps/templates/login.html:27 cps/templates/register.html:17 cps/web.py:1278 +#: cps/web.py:1282 cps/web.py:1287 cps/web.py:1291 cps/web.py:1297 +#: cps/web.py:1317 cps/web.py:1321 cps/web.py:1334 cps/web.py:1337 msgid "Register" msgstr "Daftar" -#: cps/web.py:1266 cps/web.py:1313 +#: cps/web.py:1281 cps/web.py:1385 +#, fuzzy +msgid "Connection error to limiter backend, please contact your administrator" +msgstr "Server email belum diatur, silakan hubungi administrator!" + +#: cps/web.py:1286 cps/web.py:1333 msgid "Oops! Email server is not configured, please contact your administrator." msgstr "Server email belum diatur, silakan hubungi administrator!" -#: cps/web.py:1299 +#: cps/web.py:1319 msgid "Oops! Your Email is not allowed." msgstr "Alamat email Anda tidak diizinkan untuk mendaftar" -#: cps/web.py:1302 +#: cps/web.py:1322 msgid "Success! Confirmation Email has been sent." msgstr "E-mail konfirmasi telah dikirimkan ke alamat email Anda." -#: cps/web.py:1348 cps/web.py:1367 +#: cps/web.py:1368 cps/web.py:1391 #, fuzzy msgid "Cannot activate LDAP authentication" msgstr "Tidak dapat mengaktifkan autentikasi LDAP." -#: cps/web.py:1361 +#: cps/web.py:1381 msgid "Please wait one minute before next login" msgstr "" -#: cps/web.py:1376 +#: cps/web.py:1400 #, fuzzy, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "Anda sekarang login sebagai: %(nickname)s" -#: cps/web.py:1383 +#: cps/web.py:1407 #, fuzzy, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgstr "Login Pengganti sebagai: '%(nickname)s', Server LDAP tidak dapat dijangkau, atau pengguna tidak diketahui." -#: cps/web.py:1388 +#: cps/web.py:1412 #, fuzzy, python-format msgid "Could not login: %(message)s" msgstr "Tidak dapat login: %(message)s" -#: cps/web.py:1392 cps/web.py:1417 +#: cps/web.py:1416 cps/web.py:1441 #, fuzzy msgid "Wrong Username or Password" msgstr "Pengguna atau Kata Sandi salah" -#: cps/web.py:1399 +#: cps/web.py:1423 #, fuzzy msgid "New Password was sent to your email address" msgstr "Kata Sandi baru telah dikirimkan ke alamat email Anda" -#: cps/web.py:1403 +#: cps/web.py:1427 #, fuzzy msgid "An unknown error occurred. Please try again later." msgstr "Terjadi kesalahan yang tidak diketahui. Coba lagi nanti." -#: cps/web.py:1405 +#: cps/web.py:1429 #, fuzzy msgid "Please enter valid username to reset password" msgstr "Harap masukkan pengguna valid untuk mengatur ulang kata sandi" -#: cps/web.py:1413 +#: cps/web.py:1437 #, fuzzy, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "Anda sekarang login sebagai: %(nickname)s" -#: cps/web.py:1471 cps/web.py:1521 +#: cps/web.py:1495 cps/web.py:1545 #, python-format msgid "%(name)s's Profile" msgstr "Profil %(name)s" -#: cps/web.py:1487 +#: cps/web.py:1511 #, fuzzy msgid "Success! Profile Updated" msgstr "Profil diperbarui" -#: cps/web.py:1491 +#: cps/web.py:1515 msgid "Oops! An account already exists for this Email." msgstr "Ditemukan akun yang ada untuk alamat email ini" @@ -1487,41 +1493,41 @@ msgstr "Tidak ditemukan berkas gmail.json yang valid dengan informasi OAuth" msgid "%(book)s send to E-Reader" msgstr "%%(buku)s telah dikirim ke E-Reader" -#: cps/tasks/convert.py:166 +#: cps/tasks/convert.py:167 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "Calibre ebook-convert %(tool)s tidak ditemukan" -#: cps/tasks/convert.py:200 +#: cps/tasks/convert.py:201 #, python-format msgid "%(format)s format not found on disk" msgstr "%(format)s format tidak ditemukan dalam disk" -#: cps/tasks/convert.py:204 +#: cps/tasks/convert.py:205 msgid "Ebook converter failed with unknown error" msgstr "Konverter ebook gagal dengan kesalahan yang tidak diketahui." -#: cps/tasks/convert.py:223 +#: cps/tasks/convert.py:224 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "Kebupify-converter gagal: %(error)s" -#: cps/tasks/convert.py:244 +#: cps/tasks/convert.py:245 #, 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:279 +#: cps/tasks/convert.py:287 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "Ebook-converter gagal: %(error)s" -#: cps/tasks/convert.py:302 +#: cps/tasks/convert.py:310 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "Calibre gagal dengan kesalahan: %(error)s" -#: cps/tasks/convert.py:307 +#: cps/tasks/convert.py:315 msgid "Convert" msgstr "Konversi" @@ -1529,7 +1535,7 @@ msgstr "Konversi" msgid "Reconnecting Calibre database" msgstr "Menghubungkan kembali basis data Calibre" -#: cps/tasks/mail.py:269 +#: cps/tasks/mail.py:278 msgid "E-mail" msgstr "Email" @@ -1807,12 +1813,12 @@ 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:414 -#: cps/templates/config_view_edit.html:175 cps/templates/modal_dialogs.html:64 -#: cps/templates/modal_dialogs.html:99 cps/templates/modal_dialogs.html:117 -#: cps/templates/modal_dialogs.html:135 cps/templates/schedule_edit.html:45 -#: cps/templates/shelf_edit.html:27 cps/templates/tasks.html:46 -#: cps/templates/user_edit.html:144 +#: cps/templates/config_db.html:66 cps/templates/config_edit.html:428 +#: 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 +#: cps/templates/schedule_edit.html:45 cps/templates/shelf_edit.html:27 +#: cps/templates/tasks.html:46 cps/templates/user_edit.html:144 msgid "Cancel" msgstr "Batal" @@ -1993,7 +1999,7 @@ msgid "Fetch Metadata" msgstr "Ambil Metadata" #: cps/templates/book_edit.html:213 cps/templates/config_db.html:65 -#: cps/templates/config_edit.html:413 cps/templates/config_view_edit.html:174 +#: cps/templates/config_edit.html:427 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 @@ -2158,7 +2164,7 @@ msgid "Location of Calibre Database" msgstr "Lokasi Database Calibre" #: cps/templates/config_db.html:21 -msgid "Separate Book files from Library (Highly experimental, might not work at all)" +msgid "Separate Book Files from Library" msgstr "" #: cps/templates/config_db.html:34 @@ -2242,7 +2248,7 @@ msgid "Convert non-English characters in title and author while saving to disk" msgstr "Konversikan karakter non-Inggris dalam judul dan penulis saat menyimpan ke disk" #: cps/templates/config_edit.html:108 -msgid "Embed Metadata to Ebook File on Download and Conversion (needs Calibre/Kepubify binaries)" +msgid "Embed Metadata to Ebook File on Download/Conversion/e-mail (needs Calibre/Kepubify binaries)" msgstr "" #: cps/templates/config_edit.html:112 @@ -2466,40 +2472,52 @@ msgstr "Pengaturan OAuth" msgid "Limit failed login attempts" msgstr "" -#: cps/templates/config_edit.html:376 +#: cps/templates/config_edit.html:377 +msgid "Configure Backend for Limiter" +msgstr "" + +#: cps/templates/config_edit.html:381 +msgid "Options for Limiter" +msgstr "" + +#: cps/templates/config_edit.html:386 msgid "Session protection" msgstr "" -#: cps/templates/config_edit.html:378 +#: cps/templates/config_edit.html:388 msgid "Basic" msgstr "" -#: cps/templates/config_edit.html:379 +#: cps/templates/config_edit.html:389 msgid "Strong" msgstr "" -#: cps/templates/config_edit.html:384 +#: cps/templates/config_edit.html:394 #, fuzzy msgid "User Password policy" msgstr "Atur ulang kata sandi pengguna" -#: cps/templates/config_edit.html:388 +#: cps/templates/config_edit.html:398 msgid "Minimum password length" msgstr "" -#: cps/templates/config_edit.html:393 +#: cps/templates/config_edit.html:403 msgid "Enforce number" msgstr "" -#: cps/templates/config_edit.html:397 +#: cps/templates/config_edit.html:407 msgid "Enforce lowercase characters" msgstr "" -#: cps/templates/config_edit.html:401 +#: cps/templates/config_edit.html:411 msgid "Enforce uppercase characters" msgstr "" -#: cps/templates/config_edit.html:405 +#: cps/templates/config_edit.html:415 +msgid "Enforce characters (needed For Chinese/Japanese/Korean Characters)" +msgstr "" + +#: cps/templates/config_edit.html:419 msgid "Enforce special characters" msgstr "" @@ -2621,47 +2639,47 @@ msgstr "Buku" msgid "Published" msgstr "Diterbitkan" -#: cps/templates/detail.html:250 cps/templates/listenmp3.html:158 +#: cps/templates/detail.html:251 cps/templates/listenmp3.html:158 msgid "Mark As Unread" msgstr "Tandai sebagai Belum dibaca" -#: cps/templates/detail.html:251 cps/templates/listenmp3.html:158 +#: cps/templates/detail.html:252 cps/templates/listenmp3.html:158 msgid "Mark As Read" msgstr "Tandai sebagai dibaca" -#: cps/templates/detail.html:253 cps/templates/listenmp3.html:159 +#: cps/templates/detail.html:254 cps/templates/listenmp3.html:159 msgid "Read" msgstr "Baca" -#: cps/templates/detail.html:263 cps/templates/listenmp3.html:166 +#: cps/templates/detail.html:264 cps/templates/listenmp3.html:166 msgid "Restore from archive" msgstr "Pulihkan dari arsip" -#: cps/templates/detail.html:264 cps/templates/listenmp3.html:166 +#: cps/templates/detail.html:265 cps/templates/listenmp3.html:166 msgid "Add to archive" msgstr "Tambahkan ke Arsip" -#: cps/templates/detail.html:266 cps/templates/listenmp3.html:167 +#: cps/templates/detail.html:267 cps/templates/listenmp3.html:167 msgid "Archived" msgstr "Diarsipkan" -#: cps/templates/detail.html:277 cps/templates/listenmp3.html:177 +#: cps/templates/detail.html:278 cps/templates/listenmp3.html:177 msgid "Description:" msgstr "Deskripsi:" -#: cps/templates/detail.html:292 cps/templates/listenmp3.html:190 +#: cps/templates/detail.html:293 cps/templates/listenmp3.html:190 #: cps/templates/search.html:16 msgid "Add to shelf" msgstr "Tambah ke rak" -#: cps/templates/detail.html:304 cps/templates/detail.html:323 +#: cps/templates/detail.html:305 cps/templates/detail.html:324 #: cps/templates/feed.xml:81 cps/templates/layout.html:154 #: cps/templates/listenmp3.html:201 cps/templates/listenmp3.html:218 #: cps/templates/search.html:22 msgid "(Public)" msgstr "(Publik)" -#: cps/templates/detail.html:339 +#: cps/templates/detail.html:340 msgid "Edit Metadata" msgstr "Edit Metadata" diff --git a/cps/translations/it/LC_MESSAGES/messages.mo b/cps/translations/it/LC_MESSAGES/messages.mo index 06eb3de2..41ad9b1c 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 df963dbb..02443726 100644 --- a/cps/translations/it/LC_MESSAGES/messages.po +++ b/cps/translations/it/LC_MESSAGES/messages.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: Calibre-Web\n" "Report-Msgid-Bugs-To: https://github.com/janeczku/Calibre-Web\n" -"POT-Creation-Date: 2024-02-10 10:06+0100\n" -"PO-Revision-Date: 2024-01-25 07:44+0100\n" +"POT-Creation-Date: 2024-04-27 07:20+0200\n" +"PO-Revision-Date: 2024-04-17 06:19+0200\n" "Last-Translator: Massimo Pissarello \n" "Language: it\n" "Language-Team: Italian <>\n" @@ -22,487 +22,487 @@ msgstr "" msgid "Statistics" msgstr "Statistiche" -#: cps/admin.py:149 +#: cps/admin.py:150 msgid "Server restarted, please reload page." msgstr "Server riavviato, per favore ricarica la pagina" -#: cps/admin.py:151 +#: cps/admin.py:152 msgid "Performing Server shutdown, please close window." msgstr "Eseguo l'arresto del server, per favore chiudi la finestra" -#: cps/admin.py:159 +#: cps/admin.py:160 msgid "Success! Database Reconnected" msgstr "Tutto OK! Database riconnesso" -#: cps/admin.py:162 +#: cps/admin.py:163 msgid "Unknown command" msgstr "Comando sconosciuto" -#: cps/admin.py:173 +#: cps/admin.py:174 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:206 cps/editbooks.py:589 cps/editbooks.py:591 -#: cps/editbooks.py:629 cps/editbooks.py:646 cps/editbooks.py:1262 +#: cps/admin.py:207 cps/editbooks.py:590 cps/editbooks.py:592 +#: cps/editbooks.py:630 cps/editbooks.py:647 cps/editbooks.py:1263 #: cps/updater.py:613 cps/uploader.py:93 cps/uploader.py:102 msgid "Unknown" msgstr "Sconosciuto" -#: cps/admin.py:231 +#: cps/admin.py:232 msgid "Admin page" msgstr "Pagina di amministrazione" -#: cps/admin.py:251 +#: cps/admin.py:252 msgid "Basic Configuration" msgstr "Configurazione di base" -#: cps/admin.py:289 +#: cps/admin.py:290 msgid "UI Configuration" msgstr "Configurazione dell'interfaccia utente" -#: cps/admin.py:323 cps/templates/admin.html:51 +#: cps/admin.py:324 cps/templates/admin.html:51 msgid "Edit Users" msgstr "Modifica gli utenti" -#: cps/admin.py:367 cps/opds.py:506 cps/templates/grid.html:14 +#: cps/admin.py:368 cps/opds.py:506 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "Tutti" -#: cps/admin.py:394 cps/admin.py:1405 +#: cps/admin.py:395 cps/admin.py:1417 msgid "User not found" msgstr "Utente non trovato" -#: cps/admin.py:408 +#: cps/admin.py:409 msgid "{} users deleted successfully" msgstr "{} utenti eliminati con successo" -#: cps/admin.py:431 cps/templates/config_view_edit.html:133 +#: cps/admin.py:432 cps/templates/config_view_edit.html:133 #: cps/templates/user_edit.html:45 cps/templates/user_table.html:81 msgid "Show All" msgstr "Mostra tutto" -#: cps/admin.py:452 cps/admin.py:458 +#: cps/admin.py:453 cps/admin.py:459 msgid "Malformed request" msgstr "Richiesta non formulata correttamente" -#: cps/admin.py:470 cps/admin.py:2033 +#: cps/admin.py:471 cps/admin.py:2048 msgid "Guest Name can't be changed" msgstr "Il nome dell'utente Guest (ospite) non può essere modificato" -#: cps/admin.py:482 +#: cps/admin.py:483 msgid "Guest can't have this role" msgstr "L'utente Guest (ospite) non può avere questo ruolo" -#: cps/admin.py:494 cps/admin.py:1987 +#: cps/admin.py:495 cps/admin.py:2002 msgid "No admin user remaining, can't remove admin role" msgstr "Non rimarrebbe nessun utente amministratore, non posso rimuovere il ruolo di amministratore" -#: cps/admin.py:498 cps/admin.py:512 +#: cps/admin.py:499 cps/admin.py:513 msgid "Value has to be true or false" msgstr "Il valore deve essere o vero o falso" -#: cps/admin.py:500 +#: cps/admin.py:501 msgid "Invalid role" msgstr "Ruolo non valido" -#: cps/admin.py:504 +#: cps/admin.py:505 msgid "Guest can't have this view" msgstr "L'utente Guest (ospite) non può visualizzare questa schermata" -#: cps/admin.py:514 +#: cps/admin.py:515 msgid "Invalid view" msgstr "Visualizzazione non valida" -#: cps/admin.py:517 +#: cps/admin.py:518 msgid "Guest's Locale is determined automatically and can't be set" msgstr "Le impostazioni locali dell'utente Guest (ospite) sono determinate automaticamente e non possono essere configurate" -#: cps/admin.py:521 +#: cps/admin.py:522 msgid "No Valid Locale Given" msgstr "Nessuna lingua valida indicata" -#: cps/admin.py:532 +#: cps/admin.py:533 msgid "No Valid Book Language Given" msgstr "Nessuna lingua valida per il libro" -#: cps/admin.py:534 cps/editbooks.py:455 +#: cps/admin.py:535 cps/editbooks.py:456 msgid "Parameter not found" msgstr "Parametro non trovato" -#: cps/admin.py:571 +#: cps/admin.py:572 msgid "Invalid Read Column" msgstr "Colonna di lettura non valida" -#: cps/admin.py:577 +#: cps/admin.py:578 msgid "Invalid Restricted Column" msgstr "Colonna con restrizioni non valida" -#: cps/admin.py:597 cps/admin.py:1858 +#: cps/admin.py:598 cps/admin.py:1873 msgid "Calibre-Web configuration updated" msgstr "La configurazione di Calibre-Web è stata aggiornata" -#: cps/admin.py:609 +#: cps/admin.py:610 msgid "Do you really want to delete the Kobo Token?" msgstr "Vuoi veramente eliminare il token di Kobo?" -#: cps/admin.py:611 +#: cps/admin.py:612 msgid "Do you really want to delete this domain?" msgstr "Vuoi veramente eliminare questo dominio?" -#: cps/admin.py:613 +#: cps/admin.py:614 msgid "Do you really want to delete this user?" msgstr "Vuoi veramente eliminare questo utente?" -#: cps/admin.py:615 +#: cps/admin.py:616 msgid "Are you sure you want to delete this shelf?" -msgstr "Vuoi veramente eliminare questo scaffale?" +msgstr "Sei sicuro di voler eliminare questo scaffale?" -#: cps/admin.py:617 +#: cps/admin.py:618 msgid "Are you sure you want to change locales of selected user(s)?" msgstr "Sei sicuro di voler modificare le impostazioni locali del/degli utente/i selezionato/i?" -#: cps/admin.py:619 +#: cps/admin.py:620 msgid "Are you sure you want to change visible book languages for selected user(s)?" msgstr "Sei sicuro di voler modificare le impostazioni delle lingue visualizzabili dall'/dagli utente/i selezionato/i?" -#: cps/admin.py:621 +#: cps/admin.py:622 msgid "Are you sure you want to change the selected role for the selected user(s)?" msgstr "Sei sicuro di voler modificare il ruolo evidenziato del/degli utente/i selezionato/i?" -#: cps/admin.py:623 +#: cps/admin.py:624 msgid "Are you sure you want to change the selected restrictions for the selected user(s)?" msgstr "Sei sicuro di voler modificare le restrizioni selezionate del/degli utente/i selezionato/i?" -#: cps/admin.py:625 +#: cps/admin.py:626 msgid "Are you sure you want to change the selected visibility restrictions for the selected user(s)?" msgstr "Sei sicuro di voler modificare le restrizioni di visibilità selezionate per l'utente(i) selezionato(i)?" -#: cps/admin.py:628 +#: cps/admin.py:629 msgid "Are you sure you want to change shelf sync behavior for the selected user(s)?" msgstr "Sei sicuro di voler modificare il comportamento di sincronizzazione dello scaffale per l'/gli utente/i selezionato/i?" -#: cps/admin.py:630 +#: cps/admin.py:631 msgid "Are you sure you want to change Calibre library location?" msgstr "Sei sicuro di voler modificare la posizione della libreria di Calibre?" -#: cps/admin.py:632 +#: cps/admin.py:633 msgid "Calibre-Web will search for updated Covers and update Cover Thumbnails, this may take a while?" msgstr "Calibre-Web cercherà le copertine aggiornate e aggiornerà le miniature delle copertine, questo richiederà un po' di tempo." -#: cps/admin.py:635 +#: cps/admin.py:636 msgid "Are you sure you want delete Calibre-Web's sync database to force a full sync with your Kobo Reader?" msgstr "Sei sicuro di voler eliminare il database sincronizzato di Calibre-Web e forzare una sincronizzazione completa con il tuo lettore Kobo?" -#: cps/admin.py:878 cps/admin.py:884 cps/admin.py:894 cps/admin.py:904 +#: cps/admin.py:879 cps/admin.py:885 cps/admin.py:895 cps/admin.py:905 #: cps/templates/modal_dialogs.html:29 cps/templates/user_table.html:41 #: cps/templates/user_table.html:58 msgid "Deny" msgstr "Nega" -#: cps/admin.py:880 cps/admin.py:886 cps/admin.py:896 cps/admin.py:906 +#: cps/admin.py:881 cps/admin.py:887 cps/admin.py:897 cps/admin.py:907 #: cps/templates/modal_dialogs.html:28 cps/templates/user_table.html:44 #: cps/templates/user_table.html:61 msgid "Allow" msgstr "Permetti" -#: cps/admin.py:921 +#: cps/admin.py:940 msgid "{} sync entries deleted" msgstr "{} voci di sincronizzazione eliminate" -#: cps/admin.py:969 +#: cps/admin.py:981 msgid "Tag not found" msgstr "Etichetta non trovata" -#: cps/admin.py:981 +#: cps/admin.py:993 msgid "Invalid Action" msgstr "Azione non valida" -#: cps/admin.py:1111 +#: cps/admin.py:1123 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "client_secrets.json non è configurato per Web Application" -#: cps/admin.py:1156 +#: cps/admin.py:1168 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:1162 +#: cps/admin.py:1174 msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgstr "La posizione del file di log di accesso non è valida, per favore indica il percorso corretto" -#: cps/admin.py:1196 +#: cps/admin.py:1208 msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgstr "Per favore digita un Provider LDAP, porta, DN e User Object Identifier" -#: cps/admin.py:1202 +#: cps/admin.py:1214 msgid "Please Enter a LDAP Service Account and Password" msgstr "Per favore digita nome di utente e password del servizio LDAP" -#: cps/admin.py:1205 +#: cps/admin.py:1217 msgid "Please Enter a LDAP Service Account" msgstr "Per favore indica un account di servizio LDAP" -#: cps/admin.py:1210 +#: cps/admin.py:1222 #, python-format msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgstr "LDAP Group Object Filter deve avere un \"%s\" Format Identifier" -#: cps/admin.py:1212 +#: cps/admin.py:1224 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "LDAP Group Object Filter contiene una parentesi senza la corrispondenza" -#: cps/admin.py:1216 +#: cps/admin.py:1228 #, python-format msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgstr "LDAP User Object Filter deve avere un \"%s\" Format Identifier" -#: cps/admin.py:1218 +#: cps/admin.py:1230 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "LDAP User Object Filter contiene una parentesi senza la corrispondenza" -#: cps/admin.py:1225 +#: cps/admin.py:1237 #, python-format msgid "LDAP Member User Filter needs to Have One \"%s\" Format Identifier" msgstr "LDAP Member User Filter deve avere un \"%s\" Format Identifier" -#: cps/admin.py:1227 +#: cps/admin.py:1239 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "LDAP Member User Filter contiene una parentesi senza la corrispondenza" -#: cps/admin.py:1234 +#: cps/admin.py:1246 msgid "LDAP CACertificate, Certificate or Key Location is not Valid, Please Enter Correct Path" msgstr "LDAP CACertificate, il certificato o la posizione della chiave non sono corretti, per favore indica il percorso corretto" -#: cps/admin.py:1265 cps/templates/admin.html:53 +#: cps/admin.py:1277 cps/templates/admin.html:53 msgid "Add New User" msgstr "Aggiungi un nuovo utente" -#: cps/admin.py:1274 cps/templates/admin.html:100 +#: cps/admin.py:1286 cps/templates/admin.html:100 msgid "Edit Email Server Settings" msgstr "Modifica le impostazioni del server e-mail" -#: cps/admin.py:1293 +#: cps/admin.py:1305 msgid "Success! Gmail Account Verified." msgstr "Tutto OK! Account Gmail verificato." -#: cps/admin.py:1313 cps/admin.py:1316 cps/admin.py:1698 cps/admin.py:1842 -#: cps/admin.py:1940 cps/admin.py:2061 cps/editbooks.py:241 -#: cps/editbooks.py:317 cps/editbooks.py:1224 cps/shelf.py:90 cps/shelf.py:150 +#: cps/admin.py:1325 cps/admin.py:1328 cps/admin.py:1710 cps/admin.py:1857 +#: cps/admin.py:1955 cps/admin.py:2076 cps/editbooks.py:242 +#: cps/editbooks.py:318 cps/editbooks.py:1225 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:149 cps/web.py:1496 +#: cps/shelf.py:468 cps/tasks/convert.py:150 cps/web.py:1520 #, python-format msgid "Oops! Database Error: %(error)s." msgstr "Errore nel database: %(error)s." -#: cps/admin.py:1323 +#: cps/admin.py:1335 #, python-format msgid "Test e-mail queued for sending to %(email)s, please check Tasks for result" msgstr "L'e-mail di test è stato accodata con successo per essere spedita a %(email)s, per favore controlla le attività per il risultato" -#: cps/admin.py:1326 +#: cps/admin.py:1338 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "Si è verificato un errore nell'invio dell'e-mail di test: %(res)s" -#: cps/admin.py:1328 +#: cps/admin.py:1340 msgid "Please configure your e-mail address first..." msgstr "Per favore prima configura il tuo indirizzo e-mail..." -#: cps/admin.py:1330 +#: cps/admin.py:1342 msgid "Email Server Settings updated" msgstr "Le impostazioni del server e-mail sono state aggiornate" -#: cps/admin.py:1353 cps/templates/admin.html:195 +#: cps/admin.py:1365 cps/templates/admin.html:195 msgid "Edit Scheduled Tasks Settings" msgstr "Modifica le impostazioni delle attività pianificate" -#: cps/admin.py:1365 +#: cps/admin.py:1377 msgid "Invalid start time for task specified" msgstr "Ora di inizio non valida per l'attività specificata" -#: cps/admin.py:1370 +#: cps/admin.py:1382 msgid "Invalid duration for task specified" msgstr "Durata non valida per l'attività specificata" -#: cps/admin.py:1380 +#: cps/admin.py:1392 msgid "Scheduled tasks settings updated" msgstr "Impostazioni delle attività pianificate aggiornate" -#: cps/admin.py:1390 cps/admin.py:1439 cps/admin.py:2057 cps/web.py:1296 +#: cps/admin.py:1402 cps/admin.py:1451 cps/admin.py:2072 cps/web.py:1316 msgid "Oops! An unknown error occurred. Please try again later." msgstr "Si è verificato un errore sconosciuto: per favore riprova." -#: cps/admin.py:1394 +#: cps/admin.py:1406 msgid "Settings DB is not Writeable" msgstr "Il DB delle impostazioni non è scrivibile" -#: cps/admin.py:1424 cps/admin.py:2049 +#: cps/admin.py:1436 cps/admin.py:2064 #, python-format msgid "Edit User %(nick)s" msgstr "Modifica l'utente %(nick)s" -#: cps/admin.py:1436 +#: cps/admin.py:1448 #, python-format msgid "Success! Password for user %(user)s reset" msgstr "Tutto OK! Reimpostazione della password per l'utente %(user)s" -#: cps/admin.py:1442 +#: cps/admin.py:1454 msgid "Oops! Please configure the SMTP mail settings." msgstr "Configura prima le impostazioni del server SMTP." -#: cps/admin.py:1453 +#: cps/admin.py:1465 msgid "Logfile viewer" msgstr "Visualizzatore del file di log" -#: cps/admin.py:1519 +#: cps/admin.py:1531 msgid "Requesting update package" msgstr "Richiesta del pacchetto di aggiornamento" -#: cps/admin.py:1520 +#: cps/admin.py:1532 msgid "Downloading update package" msgstr "Download del pacchetto di aggiornamento" -#: cps/admin.py:1521 +#: cps/admin.py:1533 msgid "Unzipping update package" msgstr "Decompressione del pacchetto di aggiornamento" -#: cps/admin.py:1522 +#: cps/admin.py:1534 msgid "Replacing files" msgstr "Sostituzione dei file" -#: cps/admin.py:1523 +#: cps/admin.py:1535 msgid "Database connections are closed" msgstr "Le connessioni al database sono chiuse" -#: cps/admin.py:1524 +#: cps/admin.py:1536 msgid "Stopping server" msgstr "Arresto del server" -#: cps/admin.py:1525 +#: cps/admin.py:1537 msgid "Update finished, please press okay and reload page" msgstr "Aggiornamento completato, per favore premi ok e ricarica la pagina" -#: cps/admin.py:1526 cps/admin.py:1527 cps/admin.py:1528 cps/admin.py:1529 -#: cps/admin.py:1530 cps/admin.py:1531 +#: cps/admin.py:1538 cps/admin.py:1539 cps/admin.py:1540 cps/admin.py:1541 +#: cps/admin.py:1542 cps/admin.py:1543 msgid "Update failed:" msgstr "Aggiornamento non riuscito:" -#: cps/admin.py:1526 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 +#: cps/admin.py:1538 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 msgid "HTTP Error" msgstr "Errore HTTP" -#: cps/admin.py:1527 cps/updater.py:391 cps/updater.py:628 +#: cps/admin.py:1539 cps/updater.py:391 cps/updater.py:628 msgid "Connection error" msgstr "Errore di connessione" -#: cps/admin.py:1528 cps/updater.py:393 cps/updater.py:630 +#: cps/admin.py:1540 cps/updater.py:393 cps/updater.py:630 msgid "Timeout while establishing connection" msgstr "Tempo scaduto nello stabilire la connessione" -#: cps/admin.py:1529 cps/updater.py:395 cps/updater.py:632 +#: cps/admin.py:1541 cps/updater.py:395 cps/updater.py:632 msgid "General error" msgstr "Errore generale" -#: cps/admin.py:1530 +#: cps/admin.py:1542 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:1531 +#: cps/admin.py:1543 msgid "Files could not be replaced during update" msgstr "Durante l'aggiornamento non è stato possibile sostituire alcuni file" -#: cps/admin.py:1555 +#: cps/admin.py:1567 msgid "Failed to extract at least One LDAP User" msgstr "Impossibile estrarre almeno un utente LDAP" -#: cps/admin.py:1600 +#: cps/admin.py:1612 msgid "Failed to Create at Least One LDAP User" msgstr "Impossibile creare almeno un utente LDAP" -#: cps/admin.py:1613 +#: cps/admin.py:1625 #, python-format msgid "Error: %(ldaperror)s" msgstr "Errore: %(ldaperror)s" -#: cps/admin.py:1617 +#: cps/admin.py:1629 msgid "Error: No user returned in response of LDAP server" msgstr "Errore: nessun utente restituito in risposta dal server LDAP" -#: cps/admin.py:1650 +#: cps/admin.py:1662 msgid "At Least One LDAP User Not Found in Database" msgstr "Non è stato trovato nessun utente LDAP nel database" -#: cps/admin.py:1652 +#: cps/admin.py:1664 msgid "{} User Successfully Imported" msgstr "{} utente importato con successo" -#: cps/admin.py:1710 +#: 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:1730 +#: cps/admin.py:1742 msgid "DB is not Writeable" msgstr "Il DB non è scrivibile" -#: cps/admin.py:1746 +#: cps/admin.py:1758 msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgstr "La posizione del Keyfile non è valida, per favore indica il percorso corretto" -#: cps/admin.py:1750 +#: cps/admin.py:1762 msgid "Certfile Location is not Valid, Please Enter Correct Path" msgstr "La posizione del Certfile non è valida, per favore indica il percorso corretto" -#: cps/admin.py:1829 +#: cps/admin.py:1842 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:1881 +#: cps/admin.py:1896 msgid "Database Settings updated" msgstr "Impostazioni database aggiornate" -#: cps/admin.py:1889 +#: cps/admin.py:1904 msgid "Database Configuration" msgstr "Configurazione del database" -#: cps/admin.py:1904 cps/web.py:1270 +#: cps/admin.py:1919 cps/web.py:1290 msgid "Oops! Please complete all fields." msgstr "Per favore compila tutti i campi!" -#: cps/admin.py:1913 +#: cps/admin.py:1928 msgid "E-mail is not from valid domain" msgstr "L'e-mail non proviene da un dominio valido" -#: cps/admin.py:1919 +#: cps/admin.py:1934 msgid "Add new user" msgstr "Aggiungi un nuovo utente" -#: cps/admin.py:1930 +#: cps/admin.py:1945 #, python-format msgid "User '%(user)s' created" msgstr "L'utente '%(user)s' è stato creato" -#: cps/admin.py:1936 +#: cps/admin.py:1951 msgid "Oops! An account already exists for this Email. or name." msgstr "Trovato un account esistente con questa e-mail o nome utente" -#: cps/admin.py:1966 +#: cps/admin.py:1981 #, python-format msgid "User '%(nick)s' deleted" msgstr "L'utente '%(nick)s' è stato eliminato" -#: cps/admin.py:1969 +#: cps/admin.py:1984 msgid "Can't delete Guest User" msgstr "Non posso eliminare l'utente Guest (ospite)" -#: cps/admin.py:1972 +#: cps/admin.py:1987 msgid "No admin user remaining, can't delete user" msgstr "Non rimarrebbe nessun utente amministratore, non posso eliminare l'utente" -#: cps/admin.py:2027 cps/web.py:1445 +#: cps/admin.py:2042 cps/web.py:1469 msgid "Email can't be empty and has to be a valid Email" msgstr "L'indirizzo e-mail non può essere vuoto e deve essere un recapito valido" -#: cps/admin.py:2053 +#: cps/admin.py:2068 #, python-format msgid "User '%(nick)s' updated" msgstr "L'utente '%(nick)s' è stato aggiornato" @@ -515,122 +515,123 @@ msgstr "non installato" msgid "Execution permissions missing" msgstr "Mancano i permessi di esecuzione" -#: cps/db.py:752 cps/search.py:137 cps/web.py:731 +#: cps/db.py:752 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:993 cps/templates/config_edit.html:208 +#: cps/db.py:992 cps/templates/config_edit.html:208 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 -#: cps/web.py:558 cps/web.py:592 cps/web.py:665 cps/web.py:692 cps/web.py:973 -#: cps/web.py:1003 cps/web.py:1048 cps/web.py:1076 cps/web.py:1115 +#: 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 +#: cps/web.py:1131 msgid "None" msgstr "Nessuna" -#: cps/editbooks.py:122 cps/editbooks.py:910 cps/web.py:525 cps/web.py:1537 -#: cps/web.py:1581 cps/web.py:1626 +#: cps/editbooks.py:123 cps/editbooks.py:911 cps/web.py:529 cps/web.py:1561 +#: cps/web.py:1605 cps/web.py:1650 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:166 cps/editbooks.py:1245 +#: cps/editbooks.py:167 cps/editbooks.py:1246 msgid "User has no rights to upload cover" msgstr "L'utente non ha i permessi per caricare le copertine" -#: cps/editbooks.py:186 cps/editbooks.py:731 +#: cps/editbooks.py:187 cps/editbooks.py:732 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "Gli identificatori non fanno distinzione tra maiuscole e minuscole, sovrascrivendo il vecchio identificatore" -#: cps/editbooks.py:228 +#: cps/editbooks.py:229 msgid "Metadata successfully updated" msgstr "I metadati sono stati aggiornati con successo" -#: cps/editbooks.py:246 +#: cps/editbooks.py:247 msgid "Error editing book: {}" msgstr "Errore durante la modifica del libro: {}" -#: cps/editbooks.py:303 +#: cps/editbooks.py:304 #, python-format msgid "File %(file)s uploaded" msgstr "Il file %(file)s è stato caricato" -#: cps/editbooks.py:331 +#: cps/editbooks.py:332 msgid "Source or destination format for conversion missing" msgstr "Mancano o il formato sorgente o quello di destinazione, entrambi necessari alla conversione" -#: cps/editbooks.py:339 +#: cps/editbooks.py:340 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "Libro accodato con successo per essere convertito in %(book_format)s" -#: cps/editbooks.py:343 +#: cps/editbooks.py:344 #, 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:650 +#: cps/editbooks.py:651 msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgstr "Probabilmente il libro caricato esiste già nella libreria, cambialo prima di caricarlo nuovamente:" -#: cps/editbooks.py:705 cps/editbooks.py:1037 +#: cps/editbooks.py:706 cps/editbooks.py:1038 #, python-format msgid "'%(langname)s' is not a valid language" msgstr "%(langname)s non è una lingua valida" -#: cps/editbooks.py:743 cps/editbooks.py:1185 +#: cps/editbooks.py:744 cps/editbooks.py:1186 #, python-format msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgstr "Non è consentito caricare file con l'estensione '%(ext)s' su questo server" -#: cps/editbooks.py:747 cps/editbooks.py:1189 +#: cps/editbooks.py:748 cps/editbooks.py:1190 msgid "File to be uploaded must have an extension" msgstr "Il file da caricare deve avere un'estensione" -#: cps/editbooks.py:755 +#: cps/editbooks.py:756 #, 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:775 +#: cps/editbooks.py:776 #, 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:832 cps/editbooks.py:834 +#: cps/editbooks.py:833 cps/editbooks.py:835 msgid "Book Format Successfully Deleted" msgstr "Il formato del libro è stato eliminato con successo" -#: cps/editbooks.py:841 cps/editbooks.py:843 +#: cps/editbooks.py:842 cps/editbooks.py:844 msgid "Book Successfully Deleted" msgstr "Il libro è stato eliminato con successo" -#: cps/editbooks.py:895 +#: cps/editbooks.py:896 msgid "You are missing permissions to delete books" msgstr "Mancano le autorizzazioni per eliminare i libri" -#: cps/editbooks.py:945 +#: cps/editbooks.py:946 msgid "edit metadata" msgstr "modifica i metadati" -#: cps/editbooks.py:994 +#: cps/editbooks.py:995 #, python-format msgid "%(seriesindex)s is not a valid number, skipping" msgstr "%(seriesindex)s non è un numero valido, lo salto" -#: cps/editbooks.py:1180 +#: cps/editbooks.py:1181 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:1201 +#: cps/editbooks.py:1202 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "Impossibile creare il percorso %(path)s (autorizzazione negata)." -#: cps/editbooks.py:1206 +#: cps/editbooks.py:1207 #, python-format msgid "Failed to store file %(file)s." msgstr "Il salvataggio del file %(file)s non è riuscito." -#: cps/editbooks.py:1230 +#: cps/editbooks.py:1231 #, python-format msgid "File format %(ext)s added to %(book)s" msgstr "Ho aggiunto il formato %(ext)s al libro %(book)s" @@ -643,201 +644,199 @@ msgstr "La configurazione di Google Drive non è stata completata correttamente. msgid "Callback domain is not verified, please follow steps to verify domain in google developer console" msgstr "Il dominio di callback non è stato verificato. Per favore segui i passaggi per verificare il dominio nella console per sviluppatori di Google" -#: cps/helper.py:84 +#: cps/helper.py:86 #, python-format msgid "%(format)s format not found for book id: %(book)d" msgstr "Formato %(format)s non trovato per il libro: %(book)d" -#: cps/helper.py:91 cps/tasks/convert.py:86 +#: cps/helper.py:93 cps/tasks/convert.py:86 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "%(format)s non trovato su Google Drive: %(fn)s" -#: cps/helper.py:96 +#: cps/helper.py:98 #, python-format msgid "%(format)s not found: %(fn)s" msgstr "%(format)s non trovato: %(fn)s" -#: cps/helper.py:101 cps/helper.py:226 cps/templates/detail.html:58 +#: cps/helper.py:103 cps/helper.py:228 cps/templates/detail.html:58 msgid "Send to eReader" msgstr "Invia all'eReader" -#: cps/helper.py:102 cps/helper.py:120 cps/helper.py:228 +#: cps/helper.py:104 cps/helper.py:122 cps/helper.py:230 msgid "This Email has been sent via Calibre-Web." msgstr "Questa e-mail è stata inviata tramite Calibre-Web." -#: cps/helper.py:118 +#: cps/helper.py:120 msgid "Calibre-Web Test Email" msgstr "E-mail di prova di Calibre-Web" -#: cps/helper.py:119 +#: cps/helper.py:121 msgid "Test Email" msgstr "E-mail di prova" -#: cps/helper.py:136 +#: cps/helper.py:138 msgid "Get Started with Calibre-Web" msgstr "Inizia con Calibre-Web" -#: cps/helper.py:141 +#: cps/helper.py:143 #, python-format msgid "Registration Email for user: %(name)s" msgstr "E-mail di registrazione per l'utente: %(name)s" -#: cps/helper.py:152 cps/helper.py:158 +#: cps/helper.py:154 cps/helper.py:160 #, python-format msgid "Convert %(orig)s to %(format)s and send to eReader" msgstr "Converti %(orig)s in %(format)s e invia all'eReader" -#: cps/helper.py:177 cps/helper.py:181 cps/helper.py:185 +#: cps/helper.py:179 cps/helper.py:183 cps/helper.py:187 #, python-format msgid "Send %(format)s to eReader" msgstr "Invia %(format)s all'eReader" -#: cps/helper.py:225 +#: cps/helper.py:227 #, python-format msgid "%(book)s send to eReader" msgstr "%(book)s inviato all'eReader" -#: cps/helper.py:230 +#: cps/helper.py:232 msgid "The requested file could not be read. Maybe wrong permissions?" msgstr "Il file richiesto non può essere letto. I permessi sono corretti?" -#: cps/helper.py:345 +#: cps/helper.py:347 msgid "Read status could not set: {}" msgstr "Impossibile impostare lo stato di lettura: {}" -#: cps/helper.py:368 +#: cps/helper.py:370 #, python-format msgid "Deleting bookfolder for book %(id)s failed, path has subfolders: %(path)s" msgstr "L'eliminazione della cartella del libro %(id)s non è riuscita, il percorso ha delle sottocartelle: %(path)s" -#: cps/helper.py:374 +#: cps/helper.py:376 #, python-format msgid "Deleting book %(id)s failed: %(message)s" msgstr "L'eliminazione del libro %(id)s non è riuscita: %(message)s" -#: cps/helper.py:385 +#: cps/helper.py:387 #, python-format msgid "Deleting book %(id)s from database only, book path in database not valid: %(path)s" msgstr "Eliminazione del libro %(id)s unicamente dal database. Il percorso del libro nel database non è valido: %(path)s" -#: cps/helper.py:450 +#: cps/helper.py:452 #, 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:522 cps/helper.py:531 +#: cps/helper.py:524 cps/helper.py:533 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "File %(file)s non trovato su Google Drive" -#: cps/helper.py:565 +#: cps/helper.py:567 #, 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:585 +#: cps/helper.py:587 msgid "Error in rename file in path: {}" msgstr "Errore nel rinominare il file nel percorso: {}" -#: cps/helper.py:603 +#: cps/helper.py:605 #, python-format msgid "Book path %(path)s not found on Google Drive" msgstr "Percorso del libro %(path)s non trovato su Google Drive" -#: cps/helper.py:668 +#: cps/helper.py:670 msgid "Found an existing account for this Email address" msgstr "Trovato un account esistente per questo indirizzo e-mail" -#: cps/helper.py:676 +#: cps/helper.py:678 msgid "This username is already taken" msgstr "Questo nome di utente è già utilizzato" -#: cps/helper.py:688 +#: cps/helper.py:690 msgid "Invalid Email address format" msgstr "Formato dell'indirizzo e-mail non valido" -#: cps/helper.py:706 +#: cps/helper.py:710 msgid "Password doesn't comply with password validation rules" msgstr "La password non è conforme alle regole di convalida della password" -#: cps/helper.py:855 +#: cps/helper.py:859 msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "Il modulo Python 'advocate' non è installato, ma è necessario per caricare le copertine" -#: cps/helper.py:865 +#: cps/helper.py:869 msgid "Error Downloading Cover" msgstr "Errore nello scaricare la copertina" -#: cps/helper.py:868 +#: cps/helper.py:872 msgid "Cover Format Error" msgstr "Errore nel formato della copertina" -#: cps/helper.py:871 +#: cps/helper.py:875 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "Non sei autorizzato ad accedere a localhost o alla rete locale per caricare le copertine" -#: cps/helper.py:881 +#: cps/helper.py:885 msgid "Failed to create path for cover" msgstr "Errore nel creare il percorso per la copertina" -#: cps/helper.py:897 +#: cps/helper.py:901 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "Il file della copertina non è in un formato immagine valido o non può essere salvato" -#: cps/helper.py:908 +#: cps/helper.py:912 msgid "Only jpg/jpeg/png/webp/bmp files are supported as coverfile" msgstr "Solamente i file nei formati jpg/jpeg/png/webp/bmp sono supportati per le copertine" -#: cps/helper.py:920 +#: cps/helper.py:924 msgid "Invalid cover file content" msgstr "Contenuto del file di copertina non valido" -#: cps/helper.py:924 +#: cps/helper.py:928 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "Solamente i file nei formati jpg/jpeg sono supportati per le copertine" -#: cps/helper.py:995 cps/helper.py:1183 +#: cps/helper.py:999 cps/helper.py:1156 msgid "Cover" msgstr "Copertina" -#: cps/helper.py:1032 +#: cps/helper.py:1016 msgid "Unrar binary file not found" msgstr "Non ho trovato il file binario di UnRar" -#: cps/helper.py:1043 +#: cps/helper.py:1027 msgid "Error executing UnRar" msgstr "Errore nell'eseguire UnRar" -#: cps/helper.py:1051 +#: cps/helper.py:1035 msgid "Could not find the specified directory" -msgstr "" +msgstr "Impossibile trovare la cartella specificata" -#: cps/helper.py:1054 +#: cps/helper.py:1038 msgid "Please specify a directory, not a file" -msgstr "" +msgstr "Specifica una cartella, non un file" -#: cps/helper.py:1068 -#, fuzzy +#: cps/helper.py:1052 msgid "Calibre binaries not viable" -msgstr "Il DB non è scrivibile" +msgstr "Eseguibili di Calibre non validi" -#: cps/helper.py:1077 +#: cps/helper.py:1061 #, python-format msgid "Missing calibre binaries: %(missing)s" -msgstr "" +msgstr "File eseguibili di Calibre mancanti: %(missing)s" -#: cps/helper.py:1079 -#, fuzzy, python-format +#: cps/helper.py:1063 +#, python-format msgid "Missing executable permissions: %(missing)s" -msgstr "Mancano i permessi di esecuzione" +msgstr "Permessi di esecuzione mancanti: %(missing)s" -#: cps/helper.py:1084 -#, fuzzy +#: cps/helper.py:1068 msgid "Error excecuting Calibre" -msgstr "Errore nell'eseguire UnRar" +msgstr "Errore durante l'esecuzione di Calibre" -#: cps/helper.py:1185 cps/templates/admin.html:216 +#: cps/helper.py:1158 cps/templates/admin.html:216 msgid "Queue all books for metadata backup" msgstr "Metti in coda tutti i libri per il backup dei metadati" @@ -921,7 +920,7 @@ msgstr "{} Stelle" #: cps/remotelogin.py:62 cps/templates/layout.html:67 #: cps/templates/layout.html:101 cps/templates/login.html:4 -#: cps/templates/login.html:21 cps/web.py:1333 +#: cps/templates/login.html:21 cps/web.py:1353 msgid "Login" msgstr "Accesso" @@ -937,7 +936,7 @@ msgstr "Il token è scaduto" msgid "Success! Please return to your device" msgstr "Tutto OK! Torna al tuo dispositivo" -#: cps/render_template.py:42 cps/web.py:414 +#: cps/render_template.py:42 cps/web.py:418 msgid "Books" msgstr "Libri" @@ -962,7 +961,7 @@ msgstr "Libri scaricati" msgid "Show Downloaded Books" msgstr "Mostra i libri scaricati" -#: cps/render_template.py:59 cps/templates/index.xml:33 cps/web.py:429 +#: cps/render_template.py:59 cps/templates/index.xml:33 cps/web.py:433 msgid "Top Rated Books" msgstr "Libri più votati" @@ -971,7 +970,7 @@ msgid "Show Top Rated Books" msgstr "Mostra i libri più votati" #: cps/render_template.py:62 cps/templates/index.xml:55 -#: cps/templates/index.xml:59 cps/web.py:750 +#: cps/templates/index.xml:59 cps/web.py:766 msgid "Read Books" msgstr "Libri letti" @@ -980,7 +979,7 @@ msgid "Show Read and Unread" msgstr "Mostra i libri letti e da leggere" #: cps/render_template.py:66 cps/templates/index.xml:62 -#: cps/templates/index.xml:66 cps/web.py:753 +#: cps/templates/index.xml:66 cps/web.py:769 msgid "Unread Books" msgstr "Libri da leggere" @@ -998,7 +997,7 @@ msgid "Show Random Books" msgstr "Mostra i libri casualmente" #: cps/render_template.py:72 cps/templates/book_table.html:67 -#: cps/templates/index.xml:84 cps/web.py:1119 +#: cps/templates/index.xml:84 cps/web.py:1135 msgid "Categories" msgstr "Categorie" @@ -1008,7 +1007,7 @@ msgstr "Mostra la sezione delle categorie" #: cps/render_template.py:75 cps/templates/book_edit.html:91 #: cps/templates/book_table.html:68 cps/templates/index.xml:91 -#: cps/templates/search_form.html:70 cps/web.py:1009 cps/web.py:1021 +#: cps/templates/search_form.html:70 cps/web.py:1025 cps/web.py:1037 msgid "Series" msgstr "Serie" @@ -1026,7 +1025,7 @@ msgid "Show Author Section" msgstr "Mostra la sezione degli autori" #: cps/render_template.py:82 cps/templates/book_table.html:72 -#: cps/templates/index.xml:77 cps/web.py:977 +#: cps/templates/index.xml:77 cps/web.py:993 msgid "Publishers" msgstr "Editori" @@ -1036,7 +1035,7 @@ msgstr "Mostra la sezione degli editori" #: cps/render_template.py:85 cps/templates/book_table.html:70 #: cps/templates/index.xml:98 cps/templates/search_form.html:108 -#: cps/web.py:1091 +#: cps/web.py:1107 msgid "Languages" msgstr "Lingue" @@ -1060,7 +1059,7 @@ msgstr "Formati file" msgid "Show File Formats Section" msgstr "Mostra la sezione dei formati dei file" -#: cps/render_template.py:96 cps/web.py:776 +#: cps/render_template.py:96 cps/web.py:792 msgid "Archived Books" msgstr "Libri archiviati" @@ -1068,7 +1067,7 @@ msgstr "Libri archiviati" msgid "Show Archived Books" msgstr "Mostra i libri archiviati" -#: cps/render_template.py:101 cps/web.py:807 +#: cps/render_template.py:101 cps/web.py:823 msgid "Books List" msgstr "Elenco libri" @@ -1130,7 +1129,7 @@ msgstr "Il libro è gia presente nello scaffale: %(shelfname)s" #: cps/shelf.py:77 #, python-format msgid "%(book_id)s is a invalid Book Id. Could not be added to Shelf" -msgstr "" +msgstr "%(book_id)s è un ID libro non valido. Impossibile aggiungerlo allo scaffale" #: cps/shelf.py:97 #, python-format @@ -1289,165 +1288,170 @@ msgstr "È disponibile un nuovo aggiornamento. Fai clic sul pulsante in basso pe msgid "No release information available" msgstr "Nessuna informazione disponibile sulla versione" -#: cps/templates/index.html:6 cps/web.py:441 +#: cps/templates/index.html:6 cps/web.py:445 msgid "Discover (Random Books)" msgstr "Scopri (libri casuali)" -#: cps/web.py:477 +#: cps/web.py:481 msgid "Hot Books (Most Downloaded)" msgstr "Libri hot (i più scaricati)" -#: cps/web.py:508 +#: cps/web.py:512 #, python-format msgid "Downloaded books by %(user)s" msgstr "Libri scaricati da %(user)s" -#: cps/web.py:541 +#: cps/web.py:545 #, python-format msgid "Author: %(name)s" msgstr "Autore: %(name)s" -#: cps/web.py:577 +#: cps/web.py:581 #, python-format msgid "Publisher: %(name)s" msgstr "Editore: %(name)s" -#: cps/web.py:605 +#: cps/web.py:609 #, python-format msgid "Series: %(serie)s" msgstr "Serie: %(serie)s" -#: cps/web.py:620 +#: cps/web.py:623 msgid "Rating: None" msgstr "Valutazione: nessuna" -#: cps/web.py:629 +#: cps/web.py:632 #, python-format msgid "Rating: %(rating)s stars" msgstr "Valutazione: %(rating)s stelle" -#: cps/web.py:645 +#: cps/web.py:663 #, python-format msgid "File format: %(format)s" msgstr "Formato del file: %(format)s" -#: cps/web.py:682 +#: cps/web.py:698 #, python-format msgid "Category: %(name)s" msgstr "Categoria: %(name)s" -#: cps/web.py:711 +#: cps/web.py:727 #, python-format msgid "Language: %(name)s" msgstr "Lingua: %(name)s" -#: cps/templates/admin.html:16 cps/web.py:949 +#: cps/templates/admin.html:16 cps/web.py:965 msgid "Downloads" msgstr "Scaricati" -#: cps/web.py:1051 +#: cps/web.py:1067 msgid "Ratings list" msgstr "Elenco delle valutazioni" -#: cps/web.py:1078 +#: cps/web.py:1094 msgid "File formats list" msgstr "Elenco dei formati" -#: cps/web.py:1233 +#: cps/web.py:1249 msgid "Please configure the SMTP mail settings first..." msgstr "Prima configura le impostazioni del server SMTP..." -#: cps/web.py:1240 +#: cps/web.py:1256 #, python-format msgid "Success! Book queued for sending to %(eReadermail)s" msgstr "Tutto OK! Libro in coda per l'invio a %(eReadermail)s" -#: cps/web.py:1243 +#: cps/web.py:1259 #, python-format msgid "Oops! There was an error sending book: %(res)s" msgstr "Si è verificato un errore durante l'invio del libro: %(res)s" -#: cps/web.py:1245 +#: cps/web.py:1261 msgid "Oops! Please update your profile with a valid eReader Email." msgstr "Per favore aggiorna il tuo profilo con un'e-mail eReader valida." -#: cps/web.py:1261 +#: cps/web.py:1277 msgid "Please wait one minute to register next user" msgstr "Attendi un minuto per registrare l'utente successivo" #: cps/templates/layout.html:68 cps/templates/layout.html:102 -#: cps/templates/login.html:27 cps/templates/register.html:17 cps/web.py:1262 -#: cps/web.py:1267 cps/web.py:1271 cps/web.py:1277 cps/web.py:1297 -#: cps/web.py:1301 cps/web.py:1314 cps/web.py:1317 +#: cps/templates/login.html:27 cps/templates/register.html:17 cps/web.py:1278 +#: cps/web.py:1282 cps/web.py:1287 cps/web.py:1291 cps/web.py:1297 +#: cps/web.py:1317 cps/web.py:1321 cps/web.py:1334 cps/web.py:1337 msgid "Register" msgstr "Registrati" -#: cps/web.py:1266 cps/web.py:1313 +#: cps/web.py:1281 cps/web.py:1385 +#, fuzzy +msgid "Connection error to limiter backend, please contact your administrator" +msgstr "Il server e-mail non è configurato, per favore contatta l'amministratore" + +#: cps/web.py:1286 cps/web.py:1333 msgid "Oops! Email server is not configured, please contact your administrator." msgstr "Il server e-mail non è configurato, per favore contatta l'amministratore" -#: cps/web.py:1299 +#: cps/web.py:1319 msgid "Oops! Your Email is not allowed." msgstr "La tua e-mail non è consentita." -#: cps/web.py:1302 +#: cps/web.py:1322 msgid "Success! Confirmation Email has been sent." msgstr "Tutto OK! L'e-mail di conferma è stata inviata." -#: cps/web.py:1348 cps/web.py:1367 +#: cps/web.py:1368 cps/web.py:1391 msgid "Cannot activate LDAP authentication" msgstr "Impossibile attivare l'autenticazione LDAP" -#: cps/web.py:1361 +#: cps/web.py:1381 msgid "Please wait one minute before next login" msgstr "Attendi un minuto prima dell'accesso successivo" -#: cps/web.py:1376 +#: cps/web.py:1400 #, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "ora sei connesso come: '%(nickname)s'" -#: cps/web.py:1383 +#: cps/web.py:1407 #, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgstr "Accesso di riserva come: '%(nickname)s', il server LDAP non è raggiungibile o l'utente è sconosciuto" -#: cps/web.py:1388 +#: cps/web.py:1412 #, python-format msgid "Could not login: %(message)s" msgstr "Impossibile accedere: %(message)s" -#: cps/web.py:1392 cps/web.py:1417 +#: cps/web.py:1416 cps/web.py:1441 msgid "Wrong Username or Password" msgstr "Nome utente o password errati" -#: cps/web.py:1399 +#: cps/web.py:1423 msgid "New Password was sent to your email address" msgstr "La nuova password è stata inviata al tuo indirizzo email" -#: cps/web.py:1403 +#: cps/web.py:1427 msgid "An unknown error occurred. Please try again later." msgstr "Si è verificato un errore sconosciuto. Per favore riprova più tardi." -#: cps/web.py:1405 +#: cps/web.py:1429 msgid "Please enter valid username to reset password" msgstr "Inserisci un nome utente valido per reimpostare la password" -#: cps/web.py:1413 +#: cps/web.py:1437 #, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "Ora sei connesso come: '%(nickname)s'" -#: cps/web.py:1471 cps/web.py:1521 +#: cps/web.py:1495 cps/web.py:1545 #, python-format msgid "%(name)s's Profile" msgstr "Profilo di %(name)s" -#: cps/web.py:1487 +#: cps/web.py:1511 msgid "Success! Profile Updated" msgstr "Tutto OK! Profilo aggiornato" -#: cps/web.py:1491 +#: cps/web.py:1515 msgid "Oops! An account already exists for this Email." msgstr "Esiste già un account per questa e-mail." @@ -1460,41 +1464,41 @@ msgstr "Ho trovato un gmail.json file senza informazione OAuth" msgid "%(book)s send to E-Reader" msgstr "%(book)s inviato all'E-Reader" -#: cps/tasks/convert.py:166 +#: cps/tasks/convert.py:167 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "Non ho trovato il convertitore %(tool)s di libri di Calibre" -#: cps/tasks/convert.py:200 +#: cps/tasks/convert.py:201 #, python-format msgid "%(format)s format not found on disk" msgstr "Non ho trovato il formato %(format)s nel disco" -#: cps/tasks/convert.py:204 +#: cps/tasks/convert.py:205 msgid "Ebook converter failed with unknown error" msgstr "La conversione del libro è terminata con un errore sconosciuto" -#: cps/tasks/convert.py:223 +#: cps/tasks/convert.py:224 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "Si è verificato un errore con il convertitore Kepubify: %(error)s" -#: cps/tasks/convert.py:244 +#: cps/tasks/convert.py:245 #, python-format msgid "Converted file not found or more than one file in folder %(folder)s" msgstr "Non ho trovato il file convertito o c'è più di un file nella cartella %(folder)s" -#: cps/tasks/convert.py:279 +#: cps/tasks/convert.py:287 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "Errore nel convertitore: %(error)s" -#: cps/tasks/convert.py:302 +#: cps/tasks/convert.py:310 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "Si è verificato un errore con Calibre: %(error)s" -#: cps/tasks/convert.py:307 +#: cps/tasks/convert.py:315 msgid "Convert" msgstr "Convertire" @@ -1502,7 +1506,7 @@ msgstr "Convertire" msgid "Reconnecting Calibre database" msgstr "Riconessione al database di Calibre" -#: cps/tasks/mail.py:269 +#: cps/tasks/mail.py:278 msgid "E-mail" msgstr "E-mail" @@ -1512,7 +1516,7 @@ msgstr "Backup dei metadati" #: cps/tasks/tempFolder.py:28 msgid "Delete temp folder contents" -msgstr "" +msgstr "Elimina il contenuto della cartella temporanea" #: cps/tasks/thumbnail.py:96 #, python-format @@ -1769,7 +1773,7 @@ msgstr "Esegui l'aggiornamento" #: cps/templates/admin.html:253 msgid "Are you sure you want to restart?" -msgstr "Vuoi veramente riavviare Calibre-Web?" +msgstr "Sei sicuro di voler riavviare Calibre-Web?" #: cps/templates/admin.html:258 cps/templates/admin.html:272 #: cps/templates/admin.html:292 cps/templates/config_db.html:82 @@ -1778,18 +1782,18 @@ 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:414 -#: cps/templates/config_view_edit.html:175 cps/templates/modal_dialogs.html:64 -#: cps/templates/modal_dialogs.html:99 cps/templates/modal_dialogs.html:117 -#: cps/templates/modal_dialogs.html:135 cps/templates/schedule_edit.html:45 -#: cps/templates/shelf_edit.html:27 cps/templates/tasks.html:46 -#: cps/templates/user_edit.html:144 +#: cps/templates/config_db.html:66 cps/templates/config_edit.html:428 +#: 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 +#: cps/templates/schedule_edit.html:45 cps/templates/shelf_edit.html:27 +#: cps/templates/tasks.html:46 cps/templates/user_edit.html:144 msgid "Cancel" msgstr "Annulla" #: cps/templates/admin.html:271 msgid "Are you sure you want to shutdown?" -msgstr "Vuoi veramente arrestare Calibre-Web?" +msgstr "Sei sicuro di voler fermare Calibre-Web?" #: cps/templates/admin.html:283 msgid "Updating, please do not reload this page" @@ -1964,7 +1968,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:413 cps/templates/config_view_edit.html:174 +#: cps/templates/config_edit.html:427 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 @@ -2129,7 +2133,7 @@ msgid "Location of Calibre Database" msgstr "Posizione del database di Calibre" #: cps/templates/config_db.html:21 -msgid "Separate Book files from Library (Highly experimental, might not work at all)" +msgid "Separate Book Files from Library" msgstr "" #: cps/templates/config_db.html:34 @@ -2213,8 +2217,9 @@ msgid "Convert non-English characters in title and author while saving to disk" msgstr "Converti caratteri non inglesi del titolo e dell'autore durante il salvataggio su disco" #: cps/templates/config_edit.html:108 -msgid "Embed Metadata to Ebook File on Download and Conversion (needs Calibre/Kepubify binaries)" -msgstr "" +#, fuzzy +msgid "Embed Metadata to Ebook File on Download/Conversion/e-mail (needs Calibre/Kepubify binaries)" +msgstr "Incorpora metadati nel file ebook al momento del download e della conversione (sono necessari gli eseguibili Calibre/Kepubify)" #: cps/templates/config_edit.html:112 msgid "Enable Uploads" @@ -2409,12 +2414,11 @@ msgstr "Secret client OAuth %(provider)s" #: cps/templates/config_edit.html:324 msgid "External binaries" -msgstr "File binari esterni" +msgstr "File eseguibili esterni" #: cps/templates/config_edit.html:330 -#, fuzzy msgid "Path to Calibre Binaries" -msgstr "Percorso del convertitore di libri di Calibre" +msgstr "Percorso dei file eseguibili di Calibre" #: cps/templates/config_edit.html:338 msgid "Calibre E-Book Converter Settings" @@ -2436,39 +2440,51 @@ msgstr "Impostazioni sicurezza" msgid "Limit failed login attempts" msgstr "Limita i tentativi di accesso falliti" -#: cps/templates/config_edit.html:376 +#: cps/templates/config_edit.html:377 +msgid "Configure Backend for Limiter" +msgstr "" + +#: cps/templates/config_edit.html:381 +msgid "Options for Limiter" +msgstr "" + +#: cps/templates/config_edit.html:386 msgid "Session protection" msgstr "Protezione sessione" -#: cps/templates/config_edit.html:378 +#: cps/templates/config_edit.html:388 msgid "Basic" msgstr "Di base" -#: cps/templates/config_edit.html:379 +#: cps/templates/config_edit.html:389 msgid "Strong" msgstr "Forte" -#: cps/templates/config_edit.html:384 +#: cps/templates/config_edit.html:394 msgid "User Password policy" msgstr "Politica password utente" -#: cps/templates/config_edit.html:388 +#: cps/templates/config_edit.html:398 msgid "Minimum password length" msgstr "Lunghezza minima password" -#: cps/templates/config_edit.html:393 +#: cps/templates/config_edit.html:403 msgid "Enforce number" msgstr "Obbliga numero" -#: cps/templates/config_edit.html:397 +#: cps/templates/config_edit.html:407 msgid "Enforce lowercase characters" msgstr "Obbliga caratteri minuscoli" -#: cps/templates/config_edit.html:401 +#: cps/templates/config_edit.html:411 msgid "Enforce uppercase characters" msgstr "Obbliga caratteri maiuscoli" -#: cps/templates/config_edit.html:405 +#: cps/templates/config_edit.html:415 +msgid "Enforce characters (needed For Chinese/Japanese/Korean Characters)" +msgstr "" + +#: cps/templates/config_edit.html:419 msgid "Enforce special characters" msgstr "Obbliga caratteri speciali" @@ -2590,47 +2606,47 @@ msgstr "Libro %(index)s di %(range)s" msgid "Published" msgstr "Pubblicato" -#: cps/templates/detail.html:250 cps/templates/listenmp3.html:158 +#: cps/templates/detail.html:251 cps/templates/listenmp3.html:158 msgid "Mark As Unread" msgstr "Contrassegna come da leggere" -#: cps/templates/detail.html:251 cps/templates/listenmp3.html:158 +#: cps/templates/detail.html:252 cps/templates/listenmp3.html:158 msgid "Mark As Read" msgstr "Contrassegna come letto" -#: cps/templates/detail.html:253 cps/templates/listenmp3.html:159 +#: cps/templates/detail.html:254 cps/templates/listenmp3.html:159 msgid "Read" msgstr "Letto" -#: cps/templates/detail.html:263 cps/templates/listenmp3.html:166 +#: cps/templates/detail.html:264 cps/templates/listenmp3.html:166 msgid "Restore from archive" msgstr "Ripristina dall'archivio" -#: cps/templates/detail.html:264 cps/templates/listenmp3.html:166 +#: cps/templates/detail.html:265 cps/templates/listenmp3.html:166 msgid "Add to archive" msgstr "Aggiungi all'archivio" -#: cps/templates/detail.html:266 cps/templates/listenmp3.html:167 +#: cps/templates/detail.html:267 cps/templates/listenmp3.html:167 msgid "Archived" msgstr "Archiviato" -#: cps/templates/detail.html:277 cps/templates/listenmp3.html:177 +#: cps/templates/detail.html:278 cps/templates/listenmp3.html:177 msgid "Description:" msgstr "Descrizione:" -#: cps/templates/detail.html:292 cps/templates/listenmp3.html:190 +#: cps/templates/detail.html:293 cps/templates/listenmp3.html:190 #: cps/templates/search.html:16 msgid "Add to shelf" msgstr "Aggiungi allo scaffale" -#: cps/templates/detail.html:304 cps/templates/detail.html:323 +#: cps/templates/detail.html:305 cps/templates/detail.html:324 #: cps/templates/feed.xml:81 cps/templates/layout.html:154 #: cps/templates/listenmp3.html:201 cps/templates/listenmp3.html:218 #: cps/templates/search.html:22 msgid "(Public)" msgstr "(Pubblico)" -#: cps/templates/detail.html:339 +#: cps/templates/detail.html:340 msgid "Edit Metadata" msgstr "Modifica metadati" diff --git a/cps/translations/ja/LC_MESSAGES/messages.mo b/cps/translations/ja/LC_MESSAGES/messages.mo index 86d39127..76a73d13 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 3368b9cb..29418c3e 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-02-10 10:06+0100\n" +"POT-Creation-Date: 2024-04-27 07:20+0200\n" "PO-Revision-Date: 2018-02-07 02:20-0500\n" "Last-Translator: subdiox \n" "Language: ja\n" @@ -22,491 +22,491 @@ msgstr "" msgid "Statistics" msgstr "統計" -#: cps/admin.py:149 +#: cps/admin.py:150 #, fuzzy msgid "Server restarted, please reload page." msgstr "サーバーを再起動しました。ページを再読み込みしてください" -#: cps/admin.py:151 +#: cps/admin.py:152 #, fuzzy msgid "Performing Server shutdown, please close window." msgstr "サーバーをシャットダウンしています。ページを閉じてください" -#: cps/admin.py:159 +#: cps/admin.py:160 msgid "Success! Database Reconnected" msgstr "" -#: cps/admin.py:162 +#: cps/admin.py:163 msgid "Unknown command" msgstr "不明なコマンド" -#: cps/admin.py:173 +#: cps/admin.py:174 #, fuzzy msgid "Success! Books queued for Metadata Backup, please check Tasks for result" msgstr "%(email)s へのテストメール送信がキューに追加されました。結果を見るにはタスクを確認してください" -#: cps/admin.py:206 cps/editbooks.py:589 cps/editbooks.py:591 -#: cps/editbooks.py:629 cps/editbooks.py:646 cps/editbooks.py:1262 +#: cps/admin.py:207 cps/editbooks.py:590 cps/editbooks.py:592 +#: cps/editbooks.py:630 cps/editbooks.py:647 cps/editbooks.py:1263 #: cps/updater.py:613 cps/uploader.py:93 cps/uploader.py:102 msgid "Unknown" msgstr "不明" -#: cps/admin.py:231 +#: cps/admin.py:232 msgid "Admin page" msgstr "管理者ページ" -#: cps/admin.py:251 +#: cps/admin.py:252 msgid "Basic Configuration" msgstr "基本設定" -#: cps/admin.py:289 +#: cps/admin.py:290 msgid "UI Configuration" msgstr "UI設定" -#: cps/admin.py:323 cps/templates/admin.html:51 +#: cps/admin.py:324 cps/templates/admin.html:51 msgid "Edit Users" msgstr "ユーザーを編集" -#: cps/admin.py:367 cps/opds.py:506 cps/templates/grid.html:14 +#: cps/admin.py:368 cps/opds.py:506 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "全て" -#: cps/admin.py:394 cps/admin.py:1405 +#: cps/admin.py:395 cps/admin.py:1417 msgid "User not found" msgstr "ユーザーが見つかりません" -#: cps/admin.py:408 +#: cps/admin.py:409 msgid "{} users deleted successfully" msgstr "{}人のユーザーが削除されました" -#: cps/admin.py:431 cps/templates/config_view_edit.html:133 +#: cps/admin.py:432 cps/templates/config_view_edit.html:133 #: cps/templates/user_edit.html:45 cps/templates/user_table.html:81 msgid "Show All" msgstr "全て表示" -#: cps/admin.py:452 cps/admin.py:458 +#: cps/admin.py:453 cps/admin.py:459 msgid "Malformed request" msgstr "不正なリクエスト" -#: cps/admin.py:470 cps/admin.py:2033 +#: cps/admin.py:471 cps/admin.py:2048 msgid "Guest Name can't be changed" msgstr "ゲストユーザーの名前は変更できません" -#: cps/admin.py:482 +#: cps/admin.py:483 msgid "Guest can't have this role" msgstr "ゲストユーザーはこのロールを持つことができません" -#: cps/admin.py:494 cps/admin.py:1987 +#: cps/admin.py:495 cps/admin.py:2002 msgid "No admin user remaining, can't remove admin role" msgstr "管理者ユーザーが残っておらず、管理者ロールを削除できません" -#: cps/admin.py:498 cps/admin.py:512 +#: cps/admin.py:499 cps/admin.py:513 msgid "Value has to be true or false" msgstr "値はtrueかfalseのどちらかでなければなりません" -#: cps/admin.py:500 +#: cps/admin.py:501 msgid "Invalid role" msgstr "無効なロール" -#: cps/admin.py:504 +#: cps/admin.py:505 msgid "Guest can't have this view" msgstr "ゲストユーザーはこの画面を表示できません" -#: cps/admin.py:514 +#: cps/admin.py:515 msgid "Invalid view" msgstr "無効な表示" -#: cps/admin.py:517 +#: cps/admin.py:518 msgid "Guest's Locale is determined automatically and can't be set" msgstr "ゲストユーザーの言語設定は自動的に決定されるため、固定することはできません" -#: cps/admin.py:521 +#: cps/admin.py:522 msgid "No Valid Locale Given" msgstr "有効な言語設定がありません" -#: cps/admin.py:532 +#: cps/admin.py:533 msgid "No Valid Book Language Given" msgstr "有効な本の言語がありません" -#: cps/admin.py:534 cps/editbooks.py:455 +#: cps/admin.py:535 cps/editbooks.py:456 msgid "Parameter not found" msgstr "パラメータが見つかりません" -#: cps/admin.py:571 +#: cps/admin.py:572 msgid "Invalid Read Column" msgstr "無効な読み取り列" -#: cps/admin.py:577 +#: cps/admin.py:578 msgid "Invalid Restricted Column" msgstr "無効な制限列" -#: cps/admin.py:597 cps/admin.py:1858 +#: cps/admin.py:598 cps/admin.py:1873 msgid "Calibre-Web configuration updated" msgstr "Calibre-Webの設定を更新しました" -#: cps/admin.py:609 +#: cps/admin.py:610 msgid "Do you really want to delete the Kobo Token?" msgstr "Koboのトークンを削除してもよろしいですか?" -#: cps/admin.py:611 +#: cps/admin.py:612 msgid "Do you really want to delete this domain?" msgstr "このドメインを削除してもよろしいですか?" -#: cps/admin.py:613 +#: cps/admin.py:614 msgid "Do you really want to delete this user?" msgstr "このユーザーを削除してもよろしいですか?" -#: cps/admin.py:615 +#: cps/admin.py:616 msgid "Are you sure you want to delete this shelf?" msgstr "この本棚を削除してもよろしいですか?" -#: cps/admin.py:617 +#: cps/admin.py:618 msgid "Are you sure you want to change locales of selected user(s)?" msgstr "選択したユーザーの言語設定を変更してもよろしいですか?" -#: cps/admin.py:619 +#: cps/admin.py:620 msgid "Are you sure you want to change visible book languages for selected user(s)?" msgstr "選択したユーザーが表示できる本の言語を変更してもよろしいですか?" -#: cps/admin.py:621 +#: cps/admin.py:622 msgid "Are you sure you want to change the selected role for the selected user(s)?" msgstr "選択したユーザーの選択したロールを変更してもよろしいですか?" -#: cps/admin.py:623 +#: cps/admin.py:624 msgid "Are you sure you want to change the selected restrictions for the selected user(s)?" msgstr "選択したユーザーの選択した制限を変更してもよろしいですか?" -#: cps/admin.py:625 +#: cps/admin.py:626 msgid "Are you sure you want to change the selected visibility restrictions for the selected user(s)?" msgstr "選択したユーザーの選択した表示制限を変更してもよろしいですか?" -#: cps/admin.py:628 +#: cps/admin.py:629 msgid "Are you sure you want to change shelf sync behavior for the selected user(s)?" msgstr "選択したユーザーの本棚同期の動作を変更してもよろしいですか?" -#: cps/admin.py:630 +#: cps/admin.py:631 msgid "Are you sure you want to change Calibre library location?" msgstr "Calibreライブラリのパスを変更してもよろしいですか?" -#: cps/admin.py:632 +#: cps/admin.py:633 msgid "Calibre-Web will search for updated Covers and update Cover Thumbnails, this may take a while?" msgstr "Calibre-Webは新しい表紙を検索してそのサムネイルを更新しますが、これにはしばらく時間がかかるかもしれません" -#: cps/admin.py:635 +#: cps/admin.py:636 msgid "Are you sure you want delete Calibre-Web's sync database to force a full sync with your Kobo Reader?" msgstr "Calibre-Webの同期DBを削除して強制的にKoboリーダーと同期してもよろしいですか?" -#: cps/admin.py:878 cps/admin.py:884 cps/admin.py:894 cps/admin.py:904 +#: cps/admin.py:879 cps/admin.py:885 cps/admin.py:895 cps/admin.py:905 #: cps/templates/modal_dialogs.html:29 cps/templates/user_table.html:41 #: cps/templates/user_table.html:58 msgid "Deny" msgstr "拒否" -#: cps/admin.py:880 cps/admin.py:886 cps/admin.py:896 cps/admin.py:906 +#: cps/admin.py:881 cps/admin.py:887 cps/admin.py:897 cps/admin.py:907 #: cps/templates/modal_dialogs.html:28 cps/templates/user_table.html:44 #: cps/templates/user_table.html:61 msgid "Allow" msgstr "許可" -#: cps/admin.py:921 +#: cps/admin.py:940 msgid "{} sync entries deleted" msgstr "{}件の同期項目を削除しました" -#: cps/admin.py:969 +#: cps/admin.py:981 msgid "Tag not found" msgstr "タグが見つかりません" -#: cps/admin.py:981 +#: cps/admin.py:993 msgid "Invalid Action" msgstr "無効なアクションです" -#: cps/admin.py:1111 +#: cps/admin.py:1123 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "client_secrets.jsonがWebアプリケーション用に設定されていません" -#: cps/admin.py:1156 +#: cps/admin.py:1168 msgid "Logfile Location is not Valid, Please Enter Correct Path" msgstr "ログファイルの場所が無効です。正しいパスを入力してください" -#: cps/admin.py:1162 +#: cps/admin.py:1174 msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgstr "アクセスログファイルの場所が無効です。正しいパスを入力してください" -#: cps/admin.py:1196 +#: cps/admin.py:1208 msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgstr "LDAPのプロバイダ、ポート番号、DN、ユーザーIDを入力してください" -#: cps/admin.py:1202 +#: cps/admin.py:1214 msgid "Please Enter a LDAP Service Account and Password" msgstr "LDAPのサービスアカウント名とパスワードを入力してください" -#: cps/admin.py:1205 +#: cps/admin.py:1217 msgid "Please Enter a LDAP Service Account" msgstr "LDAPのサービスアカウント名を入力してください" -#: cps/admin.py:1210 +#: cps/admin.py:1222 #, python-format msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgstr "LDAPのグループフィルタには \"%s\" というフォーマットのIDが一つ必要です" -#: cps/admin.py:1212 +#: cps/admin.py:1224 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "LDAPのグループフィルタ内の括弧が一致しません" -#: cps/admin.py:1216 +#: cps/admin.py:1228 #, python-format msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgstr "LDAPのユーザーフィルタには \"%s\" というフォーマットのIDが一つ必要です" -#: cps/admin.py:1218 +#: cps/admin.py:1230 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "LDAPのユーザーフィルタ内の括弧が一致しません" -#: cps/admin.py:1225 +#: cps/admin.py:1237 #, python-format msgid "LDAP Member User Filter needs to Have One \"%s\" Format Identifier" msgstr "LDAPのメンバーフィルタには \"%s\" というフォーマットのIDが一つ必要です" -#: cps/admin.py:1227 +#: cps/admin.py:1239 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "LDAPのメンバーフィルタ内の括弧が一致しません" -#: cps/admin.py:1234 +#: cps/admin.py:1246 msgid "LDAP CACertificate, Certificate or Key Location is not Valid, Please Enter Correct Path" msgstr "LDAPのCA証明書、証明書、キーの場所が無効です。正しいパスを入力してください" -#: cps/admin.py:1265 cps/templates/admin.html:53 +#: cps/admin.py:1277 cps/templates/admin.html:53 msgid "Add New User" msgstr "新規ユーザーを追加" -#: cps/admin.py:1274 cps/templates/admin.html:100 +#: cps/admin.py:1286 cps/templates/admin.html:100 msgid "Edit Email Server Settings" msgstr "メールサーバー設定を編集" -#: cps/admin.py:1293 +#: cps/admin.py:1305 msgid "Success! Gmail Account Verified." msgstr "" -#: cps/admin.py:1313 cps/admin.py:1316 cps/admin.py:1698 cps/admin.py:1842 -#: cps/admin.py:1940 cps/admin.py:2061 cps/editbooks.py:241 -#: cps/editbooks.py:317 cps/editbooks.py:1224 cps/shelf.py:90 cps/shelf.py:150 +#: cps/admin.py:1325 cps/admin.py:1328 cps/admin.py:1710 cps/admin.py:1857 +#: cps/admin.py:1955 cps/admin.py:2076 cps/editbooks.py:242 +#: cps/editbooks.py:318 cps/editbooks.py:1225 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:149 cps/web.py:1496 +#: cps/shelf.py:468 cps/tasks/convert.py:150 cps/web.py:1520 #, python-format msgid "Oops! Database Error: %(error)s." msgstr "DBエラー: %(error)s" -#: cps/admin.py:1323 +#: cps/admin.py:1335 #, python-format msgid "Test e-mail queued for sending to %(email)s, please check Tasks for result" msgstr "%(email)s へのテストメール送信がキューに追加されました。結果を見るにはタスクを確認してください" -#: cps/admin.py:1326 +#: cps/admin.py:1338 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "%(res)s へのテストメール送信中にエラーが発生しました" -#: cps/admin.py:1328 +#: cps/admin.py:1340 msgid "Please configure your e-mail address first..." msgstr "初めにメールアドレスを設定してください" -#: cps/admin.py:1330 +#: cps/admin.py:1342 msgid "Email Server Settings updated" msgstr "メールサーバーの設定を更新しました" -#: cps/admin.py:1353 cps/templates/admin.html:195 +#: cps/admin.py:1365 cps/templates/admin.html:195 msgid "Edit Scheduled Tasks Settings" msgstr "スケジュールタスク設定を編集" -#: cps/admin.py:1365 +#: cps/admin.py:1377 msgid "Invalid start time for task specified" msgstr "指定したタスクの開始時刻が無効です" -#: cps/admin.py:1370 +#: cps/admin.py:1382 msgid "Invalid duration for task specified" msgstr "指定したタスクの期間が無効です" -#: cps/admin.py:1380 +#: cps/admin.py:1392 msgid "Scheduled tasks settings updated" msgstr "スケジュールタスクの設定を更新しました" -#: cps/admin.py:1390 cps/admin.py:1439 cps/admin.py:2057 cps/web.py:1296 +#: cps/admin.py:1402 cps/admin.py:1451 cps/admin.py:2072 cps/web.py:1316 msgid "Oops! An unknown error occurred. Please try again later." msgstr "不明なエラーが発生しました。あとで再試行してください。" -#: cps/admin.py:1394 +#: cps/admin.py:1406 msgid "Settings DB is not Writeable" msgstr "設定DBが書き込みできません" -#: cps/admin.py:1424 cps/admin.py:2049 +#: cps/admin.py:1436 cps/admin.py:2064 #, python-format msgid "Edit User %(nick)s" msgstr "ユーザー %(nick)s を編集" -#: cps/admin.py:1436 +#: cps/admin.py:1448 #, fuzzy, python-format msgid "Success! Password for user %(user)s reset" msgstr "ユーザー %(user)s のパスワードをリセット" -#: cps/admin.py:1442 +#: cps/admin.py:1454 #, fuzzy msgid "Oops! Please configure the SMTP mail settings." msgstr "初めにSMTPメールの設定をしてください" -#: cps/admin.py:1453 +#: cps/admin.py:1465 msgid "Logfile viewer" msgstr "ログファイルビューア" -#: cps/admin.py:1519 +#: cps/admin.py:1531 msgid "Requesting update package" msgstr "更新データを要求中" -#: cps/admin.py:1520 +#: cps/admin.py:1532 msgid "Downloading update package" msgstr "更新データをダウンロード中" -#: cps/admin.py:1521 +#: cps/admin.py:1533 msgid "Unzipping update package" msgstr "更新データを展開中" -#: cps/admin.py:1522 +#: cps/admin.py:1534 msgid "Replacing files" msgstr "ファイルを置換中" -#: cps/admin.py:1523 +#: cps/admin.py:1535 msgid "Database connections are closed" msgstr "DB接続を切断" -#: cps/admin.py:1524 +#: cps/admin.py:1536 msgid "Stopping server" msgstr "サーバー停止中" -#: cps/admin.py:1525 +#: cps/admin.py:1537 msgid "Update finished, please press okay and reload page" msgstr "アップデート完了、OKを押してページを再読み込みしてください" -#: cps/admin.py:1526 cps/admin.py:1527 cps/admin.py:1528 cps/admin.py:1529 -#: cps/admin.py:1530 cps/admin.py:1531 +#: cps/admin.py:1538 cps/admin.py:1539 cps/admin.py:1540 cps/admin.py:1541 +#: cps/admin.py:1542 cps/admin.py:1543 msgid "Update failed:" msgstr "アップデート失敗:" -#: cps/admin.py:1526 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 +#: cps/admin.py:1538 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 msgid "HTTP Error" msgstr "HTTPエラー" -#: cps/admin.py:1527 cps/updater.py:391 cps/updater.py:628 +#: cps/admin.py:1539 cps/updater.py:391 cps/updater.py:628 msgid "Connection error" msgstr "接続エラー" -#: cps/admin.py:1528 cps/updater.py:393 cps/updater.py:630 +#: cps/admin.py:1540 cps/updater.py:393 cps/updater.py:630 msgid "Timeout while establishing connection" msgstr "接続確立中にタイムアウトしました" -#: cps/admin.py:1529 cps/updater.py:395 cps/updater.py:632 +#: cps/admin.py:1541 cps/updater.py:395 cps/updater.py:632 msgid "General error" msgstr "エラー発生" -#: cps/admin.py:1530 +#: cps/admin.py:1542 msgid "Update file could not be saved in temp dir" msgstr "更新データを一時フォルダに保存できませんでした" -#: cps/admin.py:1531 +#: cps/admin.py:1543 msgid "Files could not be replaced during update" msgstr "更新中にファイルを置換できませんでした" -#: cps/admin.py:1555 +#: cps/admin.py:1567 msgid "Failed to extract at least One LDAP User" msgstr "少なくとも1人のLDAPユーザーの抽出に失敗しました" -#: cps/admin.py:1600 +#: cps/admin.py:1612 msgid "Failed to Create at Least One LDAP User" msgstr "少なくとも1人のLDAPユーザーの作成に失敗しました" -#: cps/admin.py:1613 +#: cps/admin.py:1625 #, python-format msgid "Error: %(ldaperror)s" msgstr "エラー: %(ldaperror)s" -#: cps/admin.py:1617 +#: cps/admin.py:1629 msgid "Error: No user returned in response of LDAP server" msgstr "エラー: LDAPサーバーのレスポンスでユーザーが返されません" -#: cps/admin.py:1650 +#: cps/admin.py:1662 msgid "At Least One LDAP User Not Found in Database" msgstr "DB内にLDAPユーザーが1人も見つかりません" -#: cps/admin.py:1652 +#: cps/admin.py:1664 msgid "{} User Successfully Imported" msgstr "{}人のユーザーをインポートしました" -#: cps/admin.py:1710 +#: cps/admin.py:1722 msgid "DB Location is not Valid, Please Enter Correct Path" msgstr "DBの場所が無効です。正しいパスを入力してください" -#: cps/admin.py:1730 +#: cps/admin.py:1742 msgid "DB is not Writeable" msgstr "DBへの書き込みができません" -#: cps/admin.py:1746 +#: cps/admin.py:1758 msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgstr "キーファイルの場所が無効です。正しいパスを入力してください" -#: cps/admin.py:1750 +#: cps/admin.py:1762 msgid "Certfile Location is not Valid, Please Enter Correct Path" msgstr "証明書ファイルの場所が無効です。正しいパスを入力してください" -#: cps/admin.py:1829 +#: cps/admin.py:1842 msgid "Password length has to be between 1 and 40" msgstr "" -#: cps/admin.py:1881 +#: cps/admin.py:1896 msgid "Database Settings updated" msgstr "DB設定を更新しました" -#: cps/admin.py:1889 +#: cps/admin.py:1904 msgid "Database Configuration" msgstr "DB設定" -#: cps/admin.py:1904 cps/web.py:1270 +#: cps/admin.py:1919 cps/web.py:1290 msgid "Oops! Please complete all fields." msgstr "全ての項目を入力してください" -#: cps/admin.py:1913 +#: cps/admin.py:1928 msgid "E-mail is not from valid domain" msgstr "このメールは有効なドメインからのものではありません" -#: cps/admin.py:1919 +#: cps/admin.py:1934 msgid "Add new user" msgstr "新規ユーザー追加" -#: cps/admin.py:1930 +#: cps/admin.py:1945 #, python-format msgid "User '%(user)s' created" msgstr "ユーザー '%(user)s' を作成しました" -#: cps/admin.py:1936 +#: cps/admin.py:1951 msgid "Oops! An account already exists for this Email. or name." msgstr "このメールアドレスかニックネームで登録されたアカウントがすでに存在します。" -#: cps/admin.py:1966 +#: cps/admin.py:1981 #, python-format msgid "User '%(nick)s' deleted" msgstr "ユーザー '%(nick)s' を削除しました" -#: cps/admin.py:1969 +#: cps/admin.py:1984 msgid "Can't delete Guest User" msgstr "ゲストユーザーは削除できません" -#: cps/admin.py:1972 +#: cps/admin.py:1987 msgid "No admin user remaining, can't delete user" msgstr "管理者ユーザーが残っておらず、ユーザーを削除できません" -#: cps/admin.py:2027 cps/web.py:1445 +#: cps/admin.py:2042 cps/web.py:1469 msgid "Email can't be empty and has to be a valid Email" msgstr "" -#: cps/admin.py:2053 +#: cps/admin.py:2068 #, python-format msgid "User '%(nick)s' updated" msgstr "ユーザー '%(nick)s' を更新しました" @@ -519,122 +519,123 @@ msgstr "インストールされていません" msgid "Execution permissions missing" msgstr "実行権限がありません" -#: cps/db.py:752 cps/search.py:137 cps/web.py:731 +#: cps/db.py:752 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:993 cps/templates/config_edit.html:208 +#: cps/db.py:992 cps/templates/config_edit.html:208 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 -#: cps/web.py:558 cps/web.py:592 cps/web.py:665 cps/web.py:692 cps/web.py:973 -#: cps/web.py:1003 cps/web.py:1048 cps/web.py:1076 cps/web.py:1115 +#: 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 +#: cps/web.py:1131 msgid "None" msgstr "なし" -#: cps/editbooks.py:122 cps/editbooks.py:910 cps/web.py:525 cps/web.py:1537 -#: cps/web.py:1581 cps/web.py:1626 +#: cps/editbooks.py:123 cps/editbooks.py:911 cps/web.py:529 cps/web.py:1561 +#: cps/web.py:1605 cps/web.py:1650 msgid "Oops! Selected book is unavailable. File does not exist or is not accessible" msgstr "選択した本は利用できません。ファイルが存在しないか、アクセスできません" -#: cps/editbooks.py:166 cps/editbooks.py:1245 +#: cps/editbooks.py:167 cps/editbooks.py:1246 msgid "User has no rights to upload cover" msgstr "ユーザーは表紙をアップロードする権限がありません" -#: cps/editbooks.py:186 cps/editbooks.py:731 +#: cps/editbooks.py:187 cps/editbooks.py:732 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "IDは大文字小文字を区別しません。元のIDを上書きします" -#: cps/editbooks.py:228 +#: cps/editbooks.py:229 msgid "Metadata successfully updated" msgstr "メタデータを更新しました" -#: cps/editbooks.py:246 +#: cps/editbooks.py:247 msgid "Error editing book: {}" msgstr "本編集中のエラー: {}" -#: cps/editbooks.py:303 +#: cps/editbooks.py:304 #, python-format msgid "File %(file)s uploaded" msgstr "ファイル %(file)s をアップロードしました" -#: cps/editbooks.py:331 +#: cps/editbooks.py:332 msgid "Source or destination format for conversion missing" msgstr "変換元の形式または変換後の形式が指定されていません" -#: cps/editbooks.py:339 +#: cps/editbooks.py:340 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "本の %(book_format)s への変換がキューに追加されました" -#: cps/editbooks.py:343 +#: cps/editbooks.py:344 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "この本の変換中にエラーが発生しました: %(res)s" -#: cps/editbooks.py:650 +#: cps/editbooks.py:651 msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgstr "アップロードした本はすでにライブラリに存在します。新しくアップロードする前に変更を加えてください: " -#: cps/editbooks.py:705 cps/editbooks.py:1037 +#: cps/editbooks.py:706 cps/editbooks.py:1038 #, python-format msgid "'%(langname)s' is not a valid language" msgstr "'%(langname)s' は有効な言語ではありません" -#: cps/editbooks.py:743 cps/editbooks.py:1185 +#: cps/editbooks.py:744 cps/editbooks.py:1186 #, python-format msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgstr "ファイル拡張子 '%(ext)s' をこのサーバーにアップロードすることは許可されていません" -#: cps/editbooks.py:747 cps/editbooks.py:1189 +#: cps/editbooks.py:748 cps/editbooks.py:1190 msgid "File to be uploaded must have an extension" msgstr "アップロードするファイルには拡張子が必要です" -#: cps/editbooks.py:755 +#: cps/editbooks.py:756 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "ファイル %(filename)s は一時フォルダに保存できませんでした" -#: cps/editbooks.py:775 +#: cps/editbooks.py:776 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "表紙ファイル %(file)s の移動に失敗しました: %(error)s" -#: cps/editbooks.py:832 cps/editbooks.py:834 +#: cps/editbooks.py:833 cps/editbooks.py:835 msgid "Book Format Successfully Deleted" msgstr "本の形式を削除しました" -#: cps/editbooks.py:841 cps/editbooks.py:843 +#: cps/editbooks.py:842 cps/editbooks.py:844 msgid "Book Successfully Deleted" msgstr "本を削除しました" -#: cps/editbooks.py:895 +#: cps/editbooks.py:896 msgid "You are missing permissions to delete books" msgstr "本を削除する権限がありません" -#: cps/editbooks.py:945 +#: cps/editbooks.py:946 msgid "edit metadata" msgstr "メタデータを編集" -#: cps/editbooks.py:994 +#: cps/editbooks.py:995 #, python-format msgid "%(seriesindex)s is not a valid number, skipping" msgstr "%(seriesindex)s は有効な数字ではありません。スキップします" -#: cps/editbooks.py:1180 +#: cps/editbooks.py:1181 msgid "User has no rights to upload additional file formats" msgstr "新たなファイル形式をアップロードする権限がありません" -#: cps/editbooks.py:1201 +#: cps/editbooks.py:1202 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "%(path)s の作成に失敗しました (Permission denied)。" -#: cps/editbooks.py:1206 +#: cps/editbooks.py:1207 #, python-format msgid "Failed to store file %(file)s." msgstr "ファイル %(file)s を保存できません。" -#: cps/editbooks.py:1230 +#: cps/editbooks.py:1231 #, python-format msgid "File format %(ext)s added to %(book)s" msgstr "ファイル形式 %(ext)s が %(book)s に追加されました" @@ -647,207 +648,207 @@ msgstr "Googleドライブの設定が完了していません。Googleドライ msgid "Callback domain is not verified, please follow steps to verify domain in google developer console" msgstr "コールバックドメインが認証されていません。Google Developer Consoleでドメインを認証してください" -#: cps/helper.py:84 +#: cps/helper.py:86 #, python-format msgid "%(format)s format not found for book id: %(book)d" msgstr "ID: %(book)d の本に %(format)s フォーマットはありません" -#: cps/helper.py:91 cps/tasks/convert.py:86 +#: cps/helper.py:93 cps/tasks/convert.py:86 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "Googleドライブ: %(fn)s に %(format)s はありません" -#: cps/helper.py:96 +#: cps/helper.py:98 #, python-format msgid "%(format)s not found: %(fn)s" msgstr "%(format)s がありません: %(fn)s" -#: cps/helper.py:101 cps/helper.py:226 cps/templates/detail.html:58 +#: cps/helper.py:103 cps/helper.py:228 cps/templates/detail.html:58 msgid "Send to eReader" msgstr "E-Readerに送信" -#: cps/helper.py:102 cps/helper.py:120 cps/helper.py:228 +#: cps/helper.py:104 cps/helper.py:122 cps/helper.py:230 #, fuzzy msgid "This Email has been sent via Calibre-Web." msgstr "このメールはCalibre-Web経由で送信されました。" -#: cps/helper.py:118 +#: cps/helper.py:120 #, fuzzy msgid "Calibre-Web Test Email" msgstr "Calibre-Web テストメール" -#: cps/helper.py:119 +#: cps/helper.py:121 #, fuzzy msgid "Test Email" msgstr "テストメール" -#: cps/helper.py:136 +#: cps/helper.py:138 msgid "Get Started with Calibre-Web" msgstr "Calibre-Webを始める" -#: cps/helper.py:141 +#: cps/helper.py:143 #, fuzzy, python-format msgid "Registration Email for user: %(name)s" msgstr "ユーザー: %(name)s 用の登録メール" -#: cps/helper.py:152 cps/helper.py:158 +#: cps/helper.py:154 cps/helper.py:160 #, fuzzy, python-format msgid "Convert %(orig)s to %(format)s and send to eReader" msgstr "%(orig)s を %(format)s に変換してからE-Readerに送信" -#: cps/helper.py:177 cps/helper.py:181 cps/helper.py:185 +#: cps/helper.py:179 cps/helper.py:183 cps/helper.py:187 #, fuzzy, python-format msgid "Send %(format)s to eReader" msgstr "E-Readerに %(format)s を送信" -#: cps/helper.py:225 +#: cps/helper.py:227 #, fuzzy, python-format msgid "%(book)s send to eReader" msgstr "%(book)s をE-Readerに送信" -#: cps/helper.py:230 +#: cps/helper.py:232 msgid "The requested file could not be read. Maybe wrong permissions?" msgstr "要求されたファイルを読み込めませんでした。権限設定が正しいか確認してください。" -#: cps/helper.py:345 +#: cps/helper.py:347 msgid "Read status could not set: {}" msgstr "読み込みステータスを設定できません: {}" -#: cps/helper.py:368 +#: cps/helper.py:370 #, python-format msgid "Deleting bookfolder for book %(id)s failed, path has subfolders: %(path)s" msgstr "%(id)s の本フォルダの削除に失敗しました。そこにはサブフォルダがあります: %(path)s" -#: cps/helper.py:374 +#: cps/helper.py:376 #, python-format msgid "Deleting book %(id)s failed: %(message)s" msgstr "本 %(id)s の削除に失敗しました: %(message)s" -#: cps/helper.py:385 +#: cps/helper.py:387 #, python-format 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:450 +#: cps/helper.py:452 #, 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:522 cps/helper.py:531 +#: cps/helper.py:524 cps/helper.py:533 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "ファイル %(file)s はGoogleドライブ上にありません" -#: cps/helper.py:565 +#: cps/helper.py:567 #, 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:585 +#: cps/helper.py:587 msgid "Error in rename file in path: {}" msgstr "ファイル名の変更でエラーが発生しました: {}" -#: cps/helper.py:603 +#: cps/helper.py:605 #, python-format msgid "Book path %(path)s not found on Google Drive" msgstr "本のパス %(path)s はGoogleドライブ上にありません" -#: cps/helper.py:668 +#: cps/helper.py:670 msgid "Found an existing account for this Email address" msgstr "" -#: cps/helper.py:676 +#: cps/helper.py:678 msgid "This username is already taken" msgstr "このユーザー名はすでに使われています" -#: cps/helper.py:688 +#: cps/helper.py:690 #, fuzzy msgid "Invalid Email address format" msgstr "メールアドレスの形式が無効" -#: cps/helper.py:706 +#: cps/helper.py:710 msgid "Password doesn't comply with password validation rules" msgstr "" -#: cps/helper.py:855 +#: cps/helper.py:859 msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "表紙のアップロードに必要なPythonモジュール 'advocate' がインストールされていません" -#: cps/helper.py:865 +#: cps/helper.py:869 msgid "Error Downloading Cover" msgstr "表紙のダウンロードに失敗しました" -#: cps/helper.py:868 +#: cps/helper.py:872 msgid "Cover Format Error" msgstr "表紙形式エラー" -#: cps/helper.py:871 +#: cps/helper.py:875 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "表紙アップロードのためにlocalhostやローカルネットワークにアクセスすることは許可されていません" -#: cps/helper.py:881 +#: cps/helper.py:885 msgid "Failed to create path for cover" msgstr "表紙ファイルの作成に失敗しました" -#: cps/helper.py:897 +#: cps/helper.py:901 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "表紙ファイルが有効な画像ファイルでないか、または保存できませんでした" -#: cps/helper.py:908 +#: cps/helper.py:912 msgid "Only jpg/jpeg/png/webp/bmp files are supported as coverfile" msgstr "表紙ファイルは jpg/jpeg/png/webp/bmp のみ対応しています" -#: cps/helper.py:920 +#: cps/helper.py:924 msgid "Invalid cover file content" msgstr "表紙ファイルの内容が無効です" -#: cps/helper.py:924 +#: cps/helper.py:928 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "表紙ファイルは jpg/jpeg のみ対応しています" -#: cps/helper.py:995 cps/helper.py:1183 +#: cps/helper.py:999 cps/helper.py:1156 #, fuzzy msgid "Cover" msgstr "見つける" -#: cps/helper.py:1032 +#: cps/helper.py:1016 msgid "Unrar binary file not found" msgstr "Unrarのバイナリファイルが見つかりません" -#: cps/helper.py:1043 +#: cps/helper.py:1027 #, fuzzy msgid "Error executing UnRar" msgstr "Unrarの実行中にエラーが発生しました" -#: cps/helper.py:1051 +#: cps/helper.py:1035 msgid "Could not find the specified directory" msgstr "" -#: cps/helper.py:1054 +#: cps/helper.py:1038 msgid "Please specify a directory, not a file" msgstr "" -#: cps/helper.py:1068 +#: cps/helper.py:1052 #, fuzzy msgid "Calibre binaries not viable" msgstr "DBへの書き込みができません" -#: cps/helper.py:1077 +#: cps/helper.py:1061 #, python-format msgid "Missing calibre binaries: %(missing)s" msgstr "" -#: cps/helper.py:1079 +#: cps/helper.py:1063 #, fuzzy, python-format msgid "Missing executable permissions: %(missing)s" msgstr "実行権限がありません" -#: cps/helper.py:1084 +#: cps/helper.py:1068 #, fuzzy msgid "Error excecuting Calibre" msgstr "Unrarの実行中にエラーが発生しました" -#: cps/helper.py:1185 cps/templates/admin.html:216 +#: cps/helper.py:1158 cps/templates/admin.html:216 msgid "Queue all books for metadata backup" msgstr "" @@ -931,7 +932,7 @@ msgstr "星{}" #: cps/remotelogin.py:62 cps/templates/layout.html:67 #: cps/templates/layout.html:101 cps/templates/login.html:4 -#: cps/templates/login.html:21 cps/web.py:1333 +#: cps/templates/login.html:21 cps/web.py:1353 msgid "Login" msgstr "ログイン" @@ -947,7 +948,7 @@ msgstr "トークンが無効です" msgid "Success! Please return to your device" msgstr "成功です!端末に戻ってください" -#: cps/render_template.py:42 cps/web.py:414 +#: cps/render_template.py:42 cps/web.py:418 msgid "Books" msgstr "本" @@ -972,7 +973,7 @@ msgstr "ダウンロードされた本" msgid "Show Downloaded Books" msgstr "ダウンロードされた本を表示" -#: cps/render_template.py:59 cps/templates/index.xml:33 cps/web.py:429 +#: cps/render_template.py:59 cps/templates/index.xml:33 cps/web.py:433 msgid "Top Rated Books" msgstr "高評価の本" @@ -981,7 +982,7 @@ msgid "Show Top Rated Books" msgstr "高評価の本を表示" #: cps/render_template.py:62 cps/templates/index.xml:55 -#: cps/templates/index.xml:59 cps/web.py:750 +#: cps/templates/index.xml:59 cps/web.py:766 msgid "Read Books" msgstr "既読の本" @@ -991,7 +992,7 @@ msgid "Show Read and Unread" msgstr "既読の本と未読の本を表示" #: cps/render_template.py:66 cps/templates/index.xml:62 -#: cps/templates/index.xml:66 cps/web.py:753 +#: cps/templates/index.xml:66 cps/web.py:769 msgid "Unread Books" msgstr "未読の本" @@ -1009,7 +1010,7 @@ msgid "Show Random Books" msgstr "ランダムに本を表示" #: cps/render_template.py:72 cps/templates/book_table.html:67 -#: cps/templates/index.xml:84 cps/web.py:1119 +#: cps/templates/index.xml:84 cps/web.py:1135 msgid "Categories" msgstr "カテゴリ" @@ -1020,7 +1021,7 @@ msgstr "カテゴリ選択を表示" #: cps/render_template.py:75 cps/templates/book_edit.html:91 #: cps/templates/book_table.html:68 cps/templates/index.xml:91 -#: cps/templates/search_form.html:70 cps/web.py:1009 cps/web.py:1021 +#: cps/templates/search_form.html:70 cps/web.py:1025 cps/web.py:1037 msgid "Series" msgstr "シリーズ" @@ -1040,7 +1041,7 @@ msgid "Show Author Section" msgstr "著者選択を表示" #: cps/render_template.py:82 cps/templates/book_table.html:72 -#: cps/templates/index.xml:77 cps/web.py:977 +#: cps/templates/index.xml:77 cps/web.py:993 msgid "Publishers" msgstr "出版社" @@ -1051,7 +1052,7 @@ msgstr "出版社選択を表示" #: cps/render_template.py:85 cps/templates/book_table.html:70 #: cps/templates/index.xml:98 cps/templates/search_form.html:108 -#: cps/web.py:1091 +#: cps/web.py:1107 msgid "Languages" msgstr "言語" @@ -1078,7 +1079,7 @@ msgstr "ファイル形式" msgid "Show File Formats Section" msgstr "ファイル形式選択を表示" -#: cps/render_template.py:96 cps/web.py:776 +#: cps/render_template.py:96 cps/web.py:792 msgid "Archived Books" msgstr "アーカイブされた本" @@ -1087,7 +1088,7 @@ msgstr "アーカイブされた本" msgid "Show Archived Books" msgstr "アーカイブされた本を表示" -#: cps/render_template.py:101 cps/web.py:807 +#: cps/render_template.py:101 cps/web.py:823 msgid "Books List" msgstr "本の一覧" @@ -1308,173 +1309,178 @@ msgstr "アップデートが利用可能です。下のボタンをクリック msgid "No release information available" msgstr "リリース情報がありません" -#: cps/templates/index.html:6 cps/web.py:441 +#: cps/templates/index.html:6 cps/web.py:445 msgid "Discover (Random Books)" msgstr "本を見つける (ランダムに表示)" -#: cps/web.py:477 +#: cps/web.py:481 msgid "Hot Books (Most Downloaded)" msgstr "人気の本 (最もダウンロードされた本)" -#: cps/web.py:508 +#: cps/web.py:512 #, python-format msgid "Downloaded books by %(user)s" msgstr "%(user)s がダウンロードした本" -#: cps/web.py:541 +#: cps/web.py:545 #, python-format msgid "Author: %(name)s" msgstr "著者: %(name)s" -#: cps/web.py:577 +#: cps/web.py:581 #, python-format msgid "Publisher: %(name)s" msgstr "出版社: %(name)s" -#: cps/web.py:605 +#: cps/web.py:609 #, python-format msgid "Series: %(serie)s" msgstr "シリーズ: %(serie)s" -#: cps/web.py:620 +#: cps/web.py:623 msgid "Rating: None" msgstr "評価: なし" -#: cps/web.py:629 +#: cps/web.py:632 #, python-format msgid "Rating: %(rating)s stars" msgstr "評価: 星%(rating)s" -#: cps/web.py:645 +#: cps/web.py:663 #, python-format msgid "File format: %(format)s" msgstr "ファイル形式: %(format)s" -#: cps/web.py:682 +#: cps/web.py:698 #, python-format msgid "Category: %(name)s" msgstr "カテゴリ: %(name)s" -#: cps/web.py:711 +#: cps/web.py:727 #, python-format msgid "Language: %(name)s" msgstr "言語: %(name)s" -#: cps/templates/admin.html:16 cps/web.py:949 +#: cps/templates/admin.html:16 cps/web.py:965 msgid "Downloads" msgstr "ダウンロード数" -#: cps/web.py:1051 +#: cps/web.py:1067 msgid "Ratings list" msgstr "評価一覧" -#: cps/web.py:1078 +#: cps/web.py:1094 msgid "File formats list" msgstr "ファイル形式一覧" -#: cps/web.py:1233 +#: cps/web.py:1249 #, fuzzy msgid "Please configure the SMTP mail settings first..." msgstr "初めにSMTPメールの設定をしてください" -#: cps/web.py:1240 +#: cps/web.py:1256 #, python-format msgid "Success! Book queued for sending to %(eReadermail)s" msgstr "本の %(eReadermail)s への送信がキューに追加されました" -#: cps/web.py:1243 +#: cps/web.py:1259 #, python-format msgid "Oops! There was an error sending book: %(res)s" msgstr "%(res)s を送信中にエラーが発生しました" -#: cps/web.py:1245 +#: cps/web.py:1261 #, fuzzy msgid "Oops! Please update your profile with a valid eReader Email." msgstr "初めにKindleのメールアドレスを設定してください" -#: cps/web.py:1261 +#: cps/web.py:1277 msgid "Please wait one minute to register next user" msgstr "" #: cps/templates/layout.html:68 cps/templates/layout.html:102 -#: cps/templates/login.html:27 cps/templates/register.html:17 cps/web.py:1262 -#: cps/web.py:1267 cps/web.py:1271 cps/web.py:1277 cps/web.py:1297 -#: cps/web.py:1301 cps/web.py:1314 cps/web.py:1317 +#: cps/templates/login.html:27 cps/templates/register.html:17 cps/web.py:1278 +#: cps/web.py:1282 cps/web.py:1287 cps/web.py:1291 cps/web.py:1297 +#: cps/web.py:1317 cps/web.py:1321 cps/web.py:1334 cps/web.py:1337 msgid "Register" msgstr "登録" -#: cps/web.py:1266 cps/web.py:1313 +#: cps/web.py:1281 cps/web.py:1385 +#, fuzzy +msgid "Connection error to limiter backend, please contact your administrator" +msgstr "メールサーバーが設定されていません。管理者に連絡してください" + +#: cps/web.py:1286 cps/web.py:1333 msgid "Oops! Email server is not configured, please contact your administrator." msgstr "メールサーバーが設定されていません。管理者に連絡してください" -#: cps/web.py:1299 +#: cps/web.py:1319 msgid "Oops! Your Email is not allowed." msgstr "このメールアドレスは登録が許可されていません" -#: cps/web.py:1302 +#: cps/web.py:1322 msgid "Success! Confirmation Email has been sent." msgstr "確認メールがこのメールアドレスに送信されました。" -#: cps/web.py:1348 cps/web.py:1367 +#: cps/web.py:1368 cps/web.py:1391 #, fuzzy msgid "Cannot activate LDAP authentication" msgstr "LDAP認証を有効化できません" -#: cps/web.py:1361 +#: cps/web.py:1381 msgid "Please wait one minute before next login" msgstr "" -#: cps/web.py:1376 +#: cps/web.py:1400 #, fuzzy, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "%(nickname)s としてログイン中" -#: cps/web.py:1383 +#: cps/web.py:1407 #, fuzzy, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgstr "代わりに '%(nickname)s' としてログインします。LDAPサーバーにアクセスできないか、ユーザーが存在しません" -#: cps/web.py:1388 +#: cps/web.py:1412 #, fuzzy, python-format msgid "Could not login: %(message)s" msgstr "ログインできません: %(message)s" -#: cps/web.py:1392 cps/web.py:1417 +#: cps/web.py:1416 cps/web.py:1441 #, fuzzy msgid "Wrong Username or Password" msgstr "ユーザー名またはパスワードが違います" -#: cps/web.py:1399 +#: cps/web.py:1423 #, fuzzy msgid "New Password was sent to your email address" msgstr "新しいパスワードがあなたのメールアドレスに送信されました" -#: cps/web.py:1403 +#: cps/web.py:1427 #, fuzzy msgid "An unknown error occurred. Please try again later." msgstr "不明なエラーが発生しました。あとで再試行してください。" -#: cps/web.py:1405 +#: cps/web.py:1429 #, fuzzy msgid "Please enter valid username to reset password" msgstr "パスワードをリセットするには、有効なユーザー名を入力してください" -#: cps/web.py:1413 +#: cps/web.py:1437 #, fuzzy, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "%(nickname)s としてログイン中" -#: cps/web.py:1471 cps/web.py:1521 +#: cps/web.py:1495 cps/web.py:1545 #, python-format msgid "%(name)s's Profile" msgstr "%(name)s のプロフィール" -#: cps/web.py:1487 +#: cps/web.py:1511 #, fuzzy msgid "Success! Profile Updated" msgstr "プロフィールを更新しました" -#: cps/web.py:1491 +#: cps/web.py:1515 msgid "Oops! An account already exists for this Email." msgstr "このメールアドレスで登録されたアカウントがすでに存在します" @@ -1487,41 +1493,41 @@ msgstr "OAuth情報を含んだ有効なgmail.jsonファイルが見つかりま msgid "%(book)s send to E-Reader" msgstr "%(book)s をE-Readerに送信" -#: cps/tasks/convert.py:166 +#: cps/tasks/convert.py:167 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "Calibre ebook-convert %(tool)s が見つかりません" -#: cps/tasks/convert.py:200 +#: cps/tasks/convert.py:201 #, python-format msgid "%(format)s format not found on disk" msgstr "%(format)s 形式は存在しません" -#: cps/tasks/convert.py:204 +#: cps/tasks/convert.py:205 msgid "Ebook converter failed with unknown error" msgstr "Ebook converter が不明なエラーで失敗しました" -#: cps/tasks/convert.py:223 +#: cps/tasks/convert.py:224 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "Kepubify-converter が失敗しました: %(error)s" -#: cps/tasks/convert.py:244 +#: cps/tasks/convert.py:245 #, python-format msgid "Converted file not found or more than one file in folder %(folder)s" msgstr "変換されたファイルが見つからないか、またはフォルダー %(folder)s 内に複数存在します" -#: cps/tasks/convert.py:279 +#: cps/tasks/convert.py:287 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "Ebook-converter が失敗しました: %(error)s" -#: cps/tasks/convert.py:302 +#: cps/tasks/convert.py:310 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "Calibre が失敗しました: %(error)s" -#: cps/tasks/convert.py:307 +#: cps/tasks/convert.py:315 msgid "Convert" msgstr "変換" @@ -1529,7 +1535,7 @@ msgstr "変換" msgid "Reconnecting Calibre database" msgstr "Calibre DBと再接続中" -#: cps/tasks/mail.py:269 +#: cps/tasks/mail.py:278 msgid "E-mail" msgstr "メール" @@ -1807,12 +1813,12 @@ 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:414 -#: cps/templates/config_view_edit.html:175 cps/templates/modal_dialogs.html:64 -#: cps/templates/modal_dialogs.html:99 cps/templates/modal_dialogs.html:117 -#: cps/templates/modal_dialogs.html:135 cps/templates/schedule_edit.html:45 -#: cps/templates/shelf_edit.html:27 cps/templates/tasks.html:46 -#: cps/templates/user_edit.html:144 +#: cps/templates/config_db.html:66 cps/templates/config_edit.html:428 +#: 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 +#: cps/templates/schedule_edit.html:45 cps/templates/shelf_edit.html:27 +#: cps/templates/tasks.html:46 cps/templates/user_edit.html:144 msgid "Cancel" msgstr "キャンセル" @@ -1993,7 +1999,7 @@ msgid "Fetch Metadata" msgstr "メタデータを取得" #: cps/templates/book_edit.html:213 cps/templates/config_db.html:65 -#: cps/templates/config_edit.html:413 cps/templates/config_view_edit.html:174 +#: cps/templates/config_edit.html:427 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 @@ -2158,7 +2164,7 @@ msgid "Location of Calibre Database" msgstr "Calibre DBの場所" #: cps/templates/config_db.html:21 -msgid "Separate Book files from Library (Highly experimental, might not work at all)" +msgid "Separate Book Files from Library" msgstr "" #: cps/templates/config_db.html:34 @@ -2242,7 +2248,7 @@ msgid "Convert non-English characters in title and author while saving to disk" msgstr "ダウンロード時にタイトルと著者名の中にある2バイト文字を変換する" #: cps/templates/config_edit.html:108 -msgid "Embed Metadata to Ebook File on Download and Conversion (needs Calibre/Kepubify binaries)" +msgid "Embed Metadata to Ebook File on Download/Conversion/e-mail (needs Calibre/Kepubify binaries)" msgstr "" #: cps/templates/config_edit.html:112 @@ -2466,40 +2472,52 @@ msgstr "OAuth設定" msgid "Limit failed login attempts" msgstr "" -#: cps/templates/config_edit.html:376 +#: cps/templates/config_edit.html:377 +msgid "Configure Backend for Limiter" +msgstr "" + +#: cps/templates/config_edit.html:381 +msgid "Options for Limiter" +msgstr "" + +#: cps/templates/config_edit.html:386 msgid "Session protection" msgstr "" -#: cps/templates/config_edit.html:378 +#: cps/templates/config_edit.html:388 msgid "Basic" msgstr "" -#: cps/templates/config_edit.html:379 +#: cps/templates/config_edit.html:389 msgid "Strong" msgstr "" -#: cps/templates/config_edit.html:384 +#: cps/templates/config_edit.html:394 #, fuzzy msgid "User Password policy" msgstr "パスワードをリセット" -#: cps/templates/config_edit.html:388 +#: cps/templates/config_edit.html:398 msgid "Minimum password length" msgstr "" -#: cps/templates/config_edit.html:393 +#: cps/templates/config_edit.html:403 msgid "Enforce number" msgstr "" -#: cps/templates/config_edit.html:397 +#: cps/templates/config_edit.html:407 msgid "Enforce lowercase characters" msgstr "" -#: cps/templates/config_edit.html:401 +#: cps/templates/config_edit.html:411 msgid "Enforce uppercase characters" msgstr "" -#: cps/templates/config_edit.html:405 +#: cps/templates/config_edit.html:415 +msgid "Enforce characters (needed For Chinese/Japanese/Korean Characters)" +msgstr "" + +#: cps/templates/config_edit.html:419 msgid "Enforce special characters" msgstr "" @@ -2621,47 +2639,47 @@ msgstr "%(range)s 第%(index)s巻" msgid "Published" msgstr "発売日" -#: cps/templates/detail.html:250 cps/templates/listenmp3.html:158 +#: cps/templates/detail.html:251 cps/templates/listenmp3.html:158 msgid "Mark As Unread" msgstr "未読に設定" -#: cps/templates/detail.html:251 cps/templates/listenmp3.html:158 +#: cps/templates/detail.html:252 cps/templates/listenmp3.html:158 msgid "Mark As Read" msgstr "既読に設定" -#: cps/templates/detail.html:253 cps/templates/listenmp3.html:159 +#: cps/templates/detail.html:254 cps/templates/listenmp3.html:159 msgid "Read" msgstr "既読" -#: cps/templates/detail.html:263 cps/templates/listenmp3.html:166 +#: cps/templates/detail.html:264 cps/templates/listenmp3.html:166 msgid "Restore from archive" msgstr "アーカイブから復元" -#: cps/templates/detail.html:264 cps/templates/listenmp3.html:166 +#: cps/templates/detail.html:265 cps/templates/listenmp3.html:166 msgid "Add to archive" msgstr "アーカイブに追加" -#: cps/templates/detail.html:266 cps/templates/listenmp3.html:167 +#: cps/templates/detail.html:267 cps/templates/listenmp3.html:167 msgid "Archived" msgstr "アーカイブ済み" -#: cps/templates/detail.html:277 cps/templates/listenmp3.html:177 +#: cps/templates/detail.html:278 cps/templates/listenmp3.html:177 msgid "Description:" msgstr "詳細:" -#: cps/templates/detail.html:292 cps/templates/listenmp3.html:190 +#: cps/templates/detail.html:293 cps/templates/listenmp3.html:190 #: cps/templates/search.html:16 msgid "Add to shelf" msgstr "本棚に追加" -#: cps/templates/detail.html:304 cps/templates/detail.html:323 +#: cps/templates/detail.html:305 cps/templates/detail.html:324 #: cps/templates/feed.xml:81 cps/templates/layout.html:154 #: cps/templates/listenmp3.html:201 cps/templates/listenmp3.html:218 #: cps/templates/search.html:22 msgid "(Public)" msgstr "(公開)" -#: cps/templates/detail.html:339 +#: cps/templates/detail.html:340 msgid "Edit Metadata" msgstr "メタデータを編集" diff --git a/cps/translations/km/LC_MESSAGES/messages.mo b/cps/translations/km/LC_MESSAGES/messages.mo index 355f43df..c73652cc 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 a0a46ff4..cfb250c9 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-02-10 10:06+0100\n" +"POT-Creation-Date: 2024-04-27 07:20+0200\n" "PO-Revision-Date: 2018-08-27 17:06+0700\n" "Last-Translator: \n" "Language: km_KH\n" @@ -23,498 +23,498 @@ msgstr "" msgid "Statistics" msgstr "ស្ថិតិ" -#: cps/admin.py:149 +#: cps/admin.py:150 #, fuzzy msgid "Server restarted, please reload page." msgstr "ម៉ាស៊ីន server បានដំណើរការម្តងទៀត សូមបើកទំព័រជាថ្មី" -#: cps/admin.py:151 +#: cps/admin.py:152 #, fuzzy msgid "Performing Server shutdown, please close window." msgstr "កំពុងបិទម៉ាស៊ីន server សូមបិទផ្ទាំងនេះ" -#: cps/admin.py:159 +#: cps/admin.py:160 msgid "Success! Database Reconnected" msgstr "" -#: cps/admin.py:162 +#: cps/admin.py:163 msgid "Unknown command" msgstr "" -#: cps/admin.py:173 +#: cps/admin.py:174 #, fuzzy msgid "Success! Books queued for Metadata Backup, please check Tasks for result" msgstr "សៀវភៅបានចូលជួរសម្រាប់ផ្ញើទៅ %(eReadermail)s ដោយជោគជ័យ" -#: cps/admin.py:206 cps/editbooks.py:589 cps/editbooks.py:591 -#: cps/editbooks.py:629 cps/editbooks.py:646 cps/editbooks.py:1262 +#: cps/admin.py:207 cps/editbooks.py:590 cps/editbooks.py:592 +#: cps/editbooks.py:630 cps/editbooks.py:647 cps/editbooks.py:1263 #: cps/updater.py:613 cps/uploader.py:93 cps/uploader.py:102 msgid "Unknown" msgstr "មិនដឹង" -#: cps/admin.py:231 +#: cps/admin.py:232 msgid "Admin page" msgstr "ទំព័ររដ្ឋបាល" -#: cps/admin.py:251 +#: cps/admin.py:252 msgid "Basic Configuration" msgstr "ការកំណត់សាមញ្ញ" -#: cps/admin.py:289 +#: cps/admin.py:290 msgid "UI Configuration" msgstr "ការកំណត់ផ្ទាំងប្រើប្រាស់" -#: cps/admin.py:323 cps/templates/admin.html:51 +#: cps/admin.py:324 cps/templates/admin.html:51 #, fuzzy msgid "Edit Users" msgstr "អ្នកប្រើប្រាស់រដ្ឋបាល" -#: cps/admin.py:367 cps/opds.py:506 cps/templates/grid.html:14 +#: cps/admin.py:368 cps/opds.py:506 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "" -#: cps/admin.py:394 cps/admin.py:1405 +#: cps/admin.py:395 cps/admin.py:1417 msgid "User not found" msgstr "" -#: cps/admin.py:408 +#: cps/admin.py:409 msgid "{} users deleted successfully" msgstr "" -#: cps/admin.py:431 cps/templates/config_view_edit.html:133 +#: cps/admin.py:432 cps/templates/config_view_edit.html:133 #: cps/templates/user_edit.html:45 cps/templates/user_table.html:81 msgid "Show All" msgstr "បង្ហាញទាំងអស់" -#: cps/admin.py:452 cps/admin.py:458 +#: cps/admin.py:453 cps/admin.py:459 msgid "Malformed request" msgstr "" -#: cps/admin.py:470 cps/admin.py:2033 +#: cps/admin.py:471 cps/admin.py:2048 msgid "Guest Name can't be changed" msgstr "" -#: cps/admin.py:482 +#: cps/admin.py:483 msgid "Guest can't have this role" msgstr "" -#: cps/admin.py:494 cps/admin.py:1987 +#: cps/admin.py:495 cps/admin.py:2002 msgid "No admin user remaining, can't remove admin role" msgstr "" -#: cps/admin.py:498 cps/admin.py:512 +#: cps/admin.py:499 cps/admin.py:513 msgid "Value has to be true or false" msgstr "" -#: cps/admin.py:500 +#: cps/admin.py:501 msgid "Invalid role" msgstr "" -#: cps/admin.py:504 +#: cps/admin.py:505 msgid "Guest can't have this view" msgstr "" -#: cps/admin.py:514 +#: cps/admin.py:515 msgid "Invalid view" msgstr "" -#: cps/admin.py:517 +#: cps/admin.py:518 msgid "Guest's Locale is determined automatically and can't be set" msgstr "" -#: cps/admin.py:521 +#: cps/admin.py:522 msgid "No Valid Locale Given" msgstr "" -#: cps/admin.py:532 +#: cps/admin.py:533 msgid "No Valid Book Language Given" msgstr "" -#: cps/admin.py:534 cps/editbooks.py:455 +#: cps/admin.py:535 cps/editbooks.py:456 msgid "Parameter not found" msgstr "" -#: cps/admin.py:571 +#: cps/admin.py:572 msgid "Invalid Read Column" msgstr "" -#: cps/admin.py:577 +#: cps/admin.py:578 msgid "Invalid Restricted Column" msgstr "" -#: cps/admin.py:597 cps/admin.py:1858 +#: cps/admin.py:598 cps/admin.py:1873 msgid "Calibre-Web configuration updated" msgstr "" -#: cps/admin.py:609 +#: cps/admin.py:610 msgid "Do you really want to delete the Kobo Token?" msgstr "" -#: cps/admin.py:611 +#: cps/admin.py:612 msgid "Do you really want to delete this domain?" msgstr "" -#: cps/admin.py:613 +#: cps/admin.py:614 msgid "Do you really want to delete this user?" msgstr "" -#: cps/admin.py:615 +#: cps/admin.py:616 msgid "Are you sure you want to delete this shelf?" msgstr "តើអ្នកពិតជាចង់លុបធ្នើនេះមែនទេ?" -#: cps/admin.py:617 +#: cps/admin.py:618 #, fuzzy msgid "Are you sure you want to change locales of selected user(s)?" msgstr "តើអ្នកពិតជាចង់លុបធ្នើនេះមែនទេ?" -#: cps/admin.py:619 +#: cps/admin.py:620 msgid "Are you sure you want to change visible book languages for selected user(s)?" msgstr "" -#: cps/admin.py:621 +#: cps/admin.py:622 msgid "Are you sure you want to change the selected role for the selected user(s)?" msgstr "" -#: cps/admin.py:623 +#: cps/admin.py:624 #, fuzzy msgid "Are you sure you want to change the selected restrictions for the selected user(s)?" msgstr "តើអ្នកពិតជាចង់លុបធ្នើនេះមែនទេ?" -#: cps/admin.py:625 +#: cps/admin.py:626 msgid "Are you sure you want to change the selected visibility restrictions for the selected user(s)?" msgstr "" -#: cps/admin.py:628 +#: cps/admin.py:629 #, fuzzy msgid "Are you sure you want to change shelf sync behavior for the selected user(s)?" msgstr "តើអ្នកពិតជាចង់លុបធ្នើនេះមែនទេ?" -#: cps/admin.py:630 +#: cps/admin.py:631 #, fuzzy msgid "Are you sure you want to change Calibre library location?" msgstr "តើអ្នកពិតជាចង់លុបធ្នើនេះមែនទេ?" -#: cps/admin.py:632 +#: cps/admin.py:633 msgid "Calibre-Web will search for updated Covers and update Cover Thumbnails, this may take a while?" msgstr "" -#: cps/admin.py:635 +#: cps/admin.py:636 msgid "Are you sure you want delete Calibre-Web's sync database to force a full sync with your Kobo Reader?" msgstr "" -#: cps/admin.py:878 cps/admin.py:884 cps/admin.py:894 cps/admin.py:904 +#: cps/admin.py:879 cps/admin.py:885 cps/admin.py:895 cps/admin.py:905 #: cps/templates/modal_dialogs.html:29 cps/templates/user_table.html:41 #: cps/templates/user_table.html:58 msgid "Deny" msgstr "" -#: cps/admin.py:880 cps/admin.py:886 cps/admin.py:896 cps/admin.py:906 +#: cps/admin.py:881 cps/admin.py:887 cps/admin.py:897 cps/admin.py:907 #: cps/templates/modal_dialogs.html:28 cps/templates/user_table.html:44 #: cps/templates/user_table.html:61 msgid "Allow" msgstr "" -#: cps/admin.py:921 +#: cps/admin.py:940 msgid "{} sync entries deleted" msgstr "" -#: cps/admin.py:969 +#: cps/admin.py:981 msgid "Tag not found" msgstr "" -#: cps/admin.py:981 +#: cps/admin.py:993 msgid "Invalid Action" msgstr "" -#: cps/admin.py:1111 +#: cps/admin.py:1123 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "" -#: cps/admin.py:1156 +#: cps/admin.py:1168 msgid "Logfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1162 +#: cps/admin.py:1174 msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1196 +#: cps/admin.py:1208 msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgstr "" -#: cps/admin.py:1202 +#: cps/admin.py:1214 msgid "Please Enter a LDAP Service Account and Password" msgstr "" -#: cps/admin.py:1205 +#: cps/admin.py:1217 msgid "Please Enter a LDAP Service Account" msgstr "" -#: cps/admin.py:1210 +#: cps/admin.py:1222 #, python-format msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1212 +#: cps/admin.py:1224 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1216 +#: cps/admin.py:1228 #, python-format msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1218 +#: cps/admin.py:1230 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1225 +#: cps/admin.py:1237 #, python-format msgid "LDAP Member User Filter needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1227 +#: cps/admin.py:1239 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1234 +#: cps/admin.py:1246 msgid "LDAP CACertificate, Certificate or Key Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1265 cps/templates/admin.html:53 +#: cps/admin.py:1277 cps/templates/admin.html:53 msgid "Add New User" msgstr "" -#: cps/admin.py:1274 cps/templates/admin.html:100 +#: cps/admin.py:1286 cps/templates/admin.html:100 msgid "Edit Email Server Settings" msgstr "ប្តូរការកំណត់ SMTP" -#: cps/admin.py:1293 +#: cps/admin.py:1305 msgid "Success! Gmail Account Verified." msgstr "" -#: cps/admin.py:1313 cps/admin.py:1316 cps/admin.py:1698 cps/admin.py:1842 -#: cps/admin.py:1940 cps/admin.py:2061 cps/editbooks.py:241 -#: cps/editbooks.py:317 cps/editbooks.py:1224 cps/shelf.py:90 cps/shelf.py:150 +#: cps/admin.py:1325 cps/admin.py:1328 cps/admin.py:1710 cps/admin.py:1857 +#: cps/admin.py:1955 cps/admin.py:2076 cps/editbooks.py:242 +#: cps/editbooks.py:318 cps/editbooks.py:1225 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:149 cps/web.py:1496 +#: cps/shelf.py:468 cps/tasks/convert.py:150 cps/web.py:1520 #, python-format msgid "Oops! Database Error: %(error)s." msgstr "" -#: cps/admin.py:1323 +#: cps/admin.py:1335 #, python-format msgid "Test e-mail queued for sending to %(email)s, please check Tasks for result" msgstr "" -#: cps/admin.py:1326 +#: cps/admin.py:1338 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "" -#: cps/admin.py:1328 +#: cps/admin.py:1340 msgid "Please configure your e-mail address first..." msgstr "" -#: cps/admin.py:1330 +#: cps/admin.py:1342 msgid "Email Server Settings updated" msgstr "" -#: cps/admin.py:1353 cps/templates/admin.html:195 +#: cps/admin.py:1365 cps/templates/admin.html:195 msgid "Edit Scheduled Tasks Settings" msgstr "" -#: cps/admin.py:1365 +#: cps/admin.py:1377 msgid "Invalid start time for task specified" msgstr "" -#: cps/admin.py:1370 +#: cps/admin.py:1382 msgid "Invalid duration for task specified" msgstr "" -#: cps/admin.py:1380 +#: cps/admin.py:1392 msgid "Scheduled tasks settings updated" msgstr "" -#: cps/admin.py:1390 cps/admin.py:1439 cps/admin.py:2057 cps/web.py:1296 +#: cps/admin.py:1402 cps/admin.py:1451 cps/admin.py:2072 cps/web.py:1316 msgid "Oops! An unknown error occurred. Please try again later." msgstr "" -#: cps/admin.py:1394 +#: cps/admin.py:1406 msgid "Settings DB is not Writeable" msgstr "" -#: cps/admin.py:1424 cps/admin.py:2049 +#: cps/admin.py:1436 cps/admin.py:2064 #, python-format msgid "Edit User %(nick)s" msgstr "កែប្រែអ្នកប្រើប្រាស់ %(nick)s" -#: cps/admin.py:1436 +#: cps/admin.py:1448 #, python-format msgid "Success! Password for user %(user)s reset" msgstr "" -#: cps/admin.py:1442 +#: cps/admin.py:1454 #, fuzzy msgid "Oops! Please configure the SMTP mail settings." msgstr "សូមកំណត់អ៊ីមែល SMTP ជាមុនសិន" -#: cps/admin.py:1453 +#: cps/admin.py:1465 msgid "Logfile viewer" msgstr "" -#: cps/admin.py:1519 +#: cps/admin.py:1531 msgid "Requesting update package" msgstr "កំពុងស្នើសុំឯកសារបច្ចុប្បន្នភាព" -#: cps/admin.py:1520 +#: cps/admin.py:1532 msgid "Downloading update package" msgstr "កំពុងទាញយកឯកសារបច្ចុប្បន្នភាព" -#: cps/admin.py:1521 +#: cps/admin.py:1533 msgid "Unzipping update package" msgstr "កំពុងពន្លាឯកសារបច្ចុប្បន្នភាព" -#: cps/admin.py:1522 +#: cps/admin.py:1534 msgid "Replacing files" msgstr "" -#: cps/admin.py:1523 +#: cps/admin.py:1535 msgid "Database connections are closed" msgstr "ទំនាក់ទំនងទៅមូលដ្ឋានទិន្នន័យត្រូវបានផ្តាច់" -#: cps/admin.py:1524 +#: cps/admin.py:1536 msgid "Stopping server" msgstr "" -#: cps/admin.py:1525 +#: cps/admin.py:1537 msgid "Update finished, please press okay and reload page" msgstr "ការធ្វើបច្ចុប្បន្នភាពបានបញ្ចប់ សូមចុច okay រួចបើកទំព័រជាថ្មី" -#: cps/admin.py:1526 cps/admin.py:1527 cps/admin.py:1528 cps/admin.py:1529 -#: cps/admin.py:1530 cps/admin.py:1531 +#: cps/admin.py:1538 cps/admin.py:1539 cps/admin.py:1540 cps/admin.py:1541 +#: cps/admin.py:1542 cps/admin.py:1543 msgid "Update failed:" msgstr "" -#: cps/admin.py:1526 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 +#: cps/admin.py:1538 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 msgid "HTTP Error" msgstr "" -#: cps/admin.py:1527 cps/updater.py:391 cps/updater.py:628 +#: cps/admin.py:1539 cps/updater.py:391 cps/updater.py:628 msgid "Connection error" msgstr "" -#: cps/admin.py:1528 cps/updater.py:393 cps/updater.py:630 +#: cps/admin.py:1540 cps/updater.py:393 cps/updater.py:630 msgid "Timeout while establishing connection" msgstr "" -#: cps/admin.py:1529 cps/updater.py:395 cps/updater.py:632 +#: cps/admin.py:1541 cps/updater.py:395 cps/updater.py:632 msgid "General error" msgstr "" -#: cps/admin.py:1530 +#: cps/admin.py:1542 msgid "Update file could not be saved in temp dir" msgstr "" -#: cps/admin.py:1531 +#: cps/admin.py:1543 msgid "Files could not be replaced during update" msgstr "" -#: cps/admin.py:1555 +#: cps/admin.py:1567 msgid "Failed to extract at least One LDAP User" msgstr "" -#: cps/admin.py:1600 +#: cps/admin.py:1612 msgid "Failed to Create at Least One LDAP User" msgstr "" -#: cps/admin.py:1613 +#: cps/admin.py:1625 #, python-format msgid "Error: %(ldaperror)s" msgstr "" -#: cps/admin.py:1617 +#: cps/admin.py:1629 msgid "Error: No user returned in response of LDAP server" msgstr "" -#: cps/admin.py:1650 +#: cps/admin.py:1662 msgid "At Least One LDAP User Not Found in Database" msgstr "" -#: cps/admin.py:1652 +#: cps/admin.py:1664 msgid "{} User Successfully Imported" msgstr "" -#: cps/admin.py:1710 +#: cps/admin.py:1722 msgid "DB Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1730 +#: cps/admin.py:1742 msgid "DB is not Writeable" msgstr "" -#: cps/admin.py:1746 +#: cps/admin.py:1758 msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1750 +#: cps/admin.py:1762 msgid "Certfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1829 +#: cps/admin.py:1842 msgid "Password length has to be between 1 and 40" msgstr "" -#: cps/admin.py:1881 +#: cps/admin.py:1896 #, fuzzy msgid "Database Settings updated" msgstr "ទំនាក់ទំនងទៅមូលដ្ឋានទិន្នន័យត្រូវបានផ្តាច់" -#: cps/admin.py:1889 +#: cps/admin.py:1904 #, fuzzy msgid "Database Configuration" msgstr "ការកំណត់មុខងារ" -#: cps/admin.py:1904 cps/web.py:1270 +#: cps/admin.py:1919 cps/web.py:1290 msgid "Oops! Please complete all fields." msgstr "សូមបំពេញចន្លោះទាំងអស់!" -#: cps/admin.py:1913 +#: cps/admin.py:1928 msgid "E-mail is not from valid domain" msgstr "" -#: cps/admin.py:1919 +#: cps/admin.py:1934 msgid "Add new user" msgstr "បន្ថែមអ្នកប្រើប្រាស់ថ្មី" -#: cps/admin.py:1930 +#: cps/admin.py:1945 #, python-format msgid "User '%(user)s' created" msgstr "បានបង្កើតអ្នកប្រើប្រាស់ ‘%(user)s’" -#: cps/admin.py:1936 +#: cps/admin.py:1951 msgid "Oops! An account already exists for this Email. or name." msgstr "" -#: cps/admin.py:1966 +#: cps/admin.py:1981 #, python-format msgid "User '%(nick)s' deleted" msgstr "អ្នកប្រើប្រាស់ ‘%(nick)s’ ត្រូវបានលុប" -#: cps/admin.py:1969 +#: cps/admin.py:1984 msgid "Can't delete Guest User" msgstr "" -#: cps/admin.py:1972 +#: cps/admin.py:1987 msgid "No admin user remaining, can't delete user" msgstr "" -#: cps/admin.py:2027 cps/web.py:1445 +#: cps/admin.py:2042 cps/web.py:1469 msgid "Email can't be empty and has to be a valid Email" msgstr "" -#: cps/admin.py:2053 +#: cps/admin.py:2068 #, python-format msgid "User '%(nick)s' updated" msgstr "អ្នកប្រើប្រាស់ ‘%(nick)s’ ត្រូវបានកែប្រែ" @@ -527,122 +527,123 @@ msgstr "មិនបានតម្លើង" msgid "Execution permissions missing" msgstr "" -#: cps/db.py:752 cps/search.py:137 cps/web.py:731 +#: cps/db.py:752 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:993 cps/templates/config_edit.html:208 +#: cps/db.py:992 cps/templates/config_edit.html:208 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 -#: cps/web.py:558 cps/web.py:592 cps/web.py:665 cps/web.py:692 cps/web.py:973 -#: cps/web.py:1003 cps/web.py:1048 cps/web.py:1076 cps/web.py:1115 +#: 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 +#: cps/web.py:1131 msgid "None" msgstr "គ្មាន" -#: cps/editbooks.py:122 cps/editbooks.py:910 cps/web.py:525 cps/web.py:1537 -#: cps/web.py:1581 cps/web.py:1626 +#: cps/editbooks.py:123 cps/editbooks.py:911 cps/web.py:529 cps/web.py:1561 +#: cps/web.py:1605 cps/web.py:1650 msgid "Oops! Selected book is unavailable. File does not exist or is not accessible" msgstr "" -#: cps/editbooks.py:166 cps/editbooks.py:1245 +#: cps/editbooks.py:167 cps/editbooks.py:1246 msgid "User has no rights to upload cover" msgstr "" -#: cps/editbooks.py:186 cps/editbooks.py:731 +#: cps/editbooks.py:187 cps/editbooks.py:732 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "" -#: cps/editbooks.py:228 +#: cps/editbooks.py:229 msgid "Metadata successfully updated" msgstr "" -#: cps/editbooks.py:246 +#: cps/editbooks.py:247 msgid "Error editing book: {}" msgstr "" -#: cps/editbooks.py:303 +#: cps/editbooks.py:304 #, python-format msgid "File %(file)s uploaded" msgstr "" -#: cps/editbooks.py:331 +#: cps/editbooks.py:332 msgid "Source or destination format for conversion missing" msgstr "" -#: cps/editbooks.py:339 +#: cps/editbooks.py:340 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "" -#: cps/editbooks.py:343 +#: cps/editbooks.py:344 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "" -#: cps/editbooks.py:650 +#: cps/editbooks.py:651 msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgstr "" -#: cps/editbooks.py:705 cps/editbooks.py:1037 +#: cps/editbooks.py:706 cps/editbooks.py:1038 #, python-format msgid "'%(langname)s' is not a valid language" msgstr "" -#: cps/editbooks.py:743 cps/editbooks.py:1185 +#: cps/editbooks.py:744 cps/editbooks.py:1186 #, python-format msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgstr "ឯកសារប្រភេទ '%(ext)s' មិនត្រូវបានអនុញ្ញាតឲអាប់ឡូដទៅម៉ាស៊ីន server នេះទេ" -#: cps/editbooks.py:747 cps/editbooks.py:1189 +#: cps/editbooks.py:748 cps/editbooks.py:1190 msgid "File to be uploaded must have an extension" msgstr "ឯកសារដែលត្រូវអាប់ឡូដត្រូវមានកន្ទុយឯកសារ" -#: cps/editbooks.py:755 +#: cps/editbooks.py:756 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "" -#: cps/editbooks.py:775 +#: cps/editbooks.py:776 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "" -#: cps/editbooks.py:832 cps/editbooks.py:834 +#: cps/editbooks.py:833 cps/editbooks.py:835 msgid "Book Format Successfully Deleted" msgstr "" -#: cps/editbooks.py:841 cps/editbooks.py:843 +#: cps/editbooks.py:842 cps/editbooks.py:844 msgid "Book Successfully Deleted" msgstr "" -#: cps/editbooks.py:895 +#: cps/editbooks.py:896 msgid "You are missing permissions to delete books" msgstr "" -#: cps/editbooks.py:945 +#: cps/editbooks.py:946 msgid "edit metadata" msgstr "កែប្រែទិន្នន័យមេតា" -#: cps/editbooks.py:994 +#: cps/editbooks.py:995 #, python-format msgid "%(seriesindex)s is not a valid number, skipping" msgstr "" -#: cps/editbooks.py:1180 +#: cps/editbooks.py:1181 msgid "User has no rights to upload additional file formats" msgstr "" -#: cps/editbooks.py:1201 +#: cps/editbooks.py:1202 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "មិនអាចបង្កើតទីតាំង %(path)s (ពុំមានសិទ្ធិ)។" -#: cps/editbooks.py:1206 +#: cps/editbooks.py:1207 #, python-format msgid "Failed to store file %(file)s." msgstr "មិនអាចរក្សាទុកឯកសារ %(file)s ។" -#: cps/editbooks.py:1230 +#: cps/editbooks.py:1231 #, python-format msgid "File format %(ext)s added to %(book)s" msgstr "ឯកសារទម្រង់ %(ext)s ត្រូវបានបន្ថែមទៅ %(book)s" @@ -655,201 +656,201 @@ msgstr "" msgid "Callback domain is not verified, please follow steps to verify domain in google developer console" msgstr "Callback domain មិនទាន់បានផ្ទៀងផ្ទាត់ឲប្រើទេ សូមធ្វើតាមជំហានដើម្បីផ្ទៀងផ្ទាត់ domain នៅក្នុង Google Developer Console" -#: cps/helper.py:84 +#: cps/helper.py:86 #, python-format msgid "%(format)s format not found for book id: %(book)d" msgstr "" -#: cps/helper.py:91 cps/tasks/convert.py:86 +#: cps/helper.py:93 cps/tasks/convert.py:86 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "" -#: cps/helper.py:96 +#: cps/helper.py:98 #, python-format msgid "%(format)s not found: %(fn)s" msgstr "" -#: cps/helper.py:101 cps/helper.py:226 cps/templates/detail.html:58 +#: cps/helper.py:103 cps/helper.py:228 cps/templates/detail.html:58 #, fuzzy msgid "Send to eReader" msgstr "ផ្ញើទៅ Kindle" -#: cps/helper.py:102 cps/helper.py:120 cps/helper.py:228 +#: cps/helper.py:104 cps/helper.py:122 cps/helper.py:230 msgid "This Email has been sent via Calibre-Web." msgstr "" -#: cps/helper.py:118 +#: cps/helper.py:120 msgid "Calibre-Web Test Email" msgstr "" -#: cps/helper.py:119 +#: cps/helper.py:121 msgid "Test Email" msgstr "" -#: cps/helper.py:136 +#: cps/helper.py:138 msgid "Get Started with Calibre-Web" msgstr "" -#: cps/helper.py:141 +#: cps/helper.py:143 #, python-format msgid "Registration Email for user: %(name)s" msgstr "" -#: cps/helper.py:152 cps/helper.py:158 +#: cps/helper.py:154 cps/helper.py:160 #, python-format msgid "Convert %(orig)s to %(format)s and send to eReader" msgstr "" -#: cps/helper.py:177 cps/helper.py:181 cps/helper.py:185 +#: cps/helper.py:179 cps/helper.py:183 cps/helper.py:187 #, fuzzy, python-format msgid "Send %(format)s to eReader" msgstr "ផ្ញើទៅ Kindle" -#: cps/helper.py:225 +#: cps/helper.py:227 #, fuzzy, python-format msgid "%(book)s send to eReader" msgstr "ផ្ញើទៅ Kindle" -#: cps/helper.py:230 +#: cps/helper.py:232 msgid "The requested file could not be read. Maybe wrong permissions?" msgstr "ឯកសារដែលបានស្នើសុំមិនអាចបើកបានទេ។ អាចនឹងខុសសិទ្ធិប្រើប្រាស់ទេដឹង?" -#: cps/helper.py:345 +#: cps/helper.py:347 msgid "Read status could not set: {}" msgstr "" -#: cps/helper.py:368 +#: cps/helper.py:370 #, python-format msgid "Deleting bookfolder for book %(id)s failed, path has subfolders: %(path)s" msgstr "" -#: cps/helper.py:374 +#: cps/helper.py:376 #, python-format msgid "Deleting book %(id)s failed: %(message)s" msgstr "" -#: cps/helper.py:385 +#: cps/helper.py:387 #, python-format msgid "Deleting book %(id)s from database only, book path in database not valid: %(path)s" msgstr "" -#: cps/helper.py:450 +#: cps/helper.py:452 #, 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:522 cps/helper.py:531 +#: cps/helper.py:524 cps/helper.py:533 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "ឯកសារ %(file)s រកមិនឃើញក្នុង Google Drive" -#: cps/helper.py:565 +#: cps/helper.py:567 #, 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:585 +#: cps/helper.py:587 msgid "Error in rename file in path: {}" msgstr "" -#: cps/helper.py:603 +#: cps/helper.py:605 #, python-format msgid "Book path %(path)s not found on Google Drive" msgstr "ទីតាំងសៀវភៅ %(path)s រកមិនឃើញក្នុង Google Drive" -#: cps/helper.py:668 +#: cps/helper.py:670 msgid "Found an existing account for this Email address" msgstr "" -#: cps/helper.py:676 +#: cps/helper.py:678 msgid "This username is already taken" msgstr "" -#: cps/helper.py:688 +#: cps/helper.py:690 msgid "Invalid Email address format" msgstr "" -#: cps/helper.py:706 +#: cps/helper.py:710 msgid "Password doesn't comply with password validation rules" msgstr "" -#: cps/helper.py:855 +#: cps/helper.py:859 msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "" -#: cps/helper.py:865 +#: cps/helper.py:869 msgid "Error Downloading Cover" msgstr "" -#: cps/helper.py:868 +#: cps/helper.py:872 msgid "Cover Format Error" msgstr "" -#: cps/helper.py:871 +#: cps/helper.py:875 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "" -#: cps/helper.py:881 +#: cps/helper.py:885 msgid "Failed to create path for cover" msgstr "" -#: cps/helper.py:897 +#: cps/helper.py:901 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "" -#: cps/helper.py:908 +#: cps/helper.py:912 msgid "Only jpg/jpeg/png/webp/bmp files are supported as coverfile" msgstr "" -#: cps/helper.py:920 +#: cps/helper.py:924 msgid "Invalid cover file content" msgstr "" -#: cps/helper.py:924 +#: cps/helper.py:928 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "" -#: cps/helper.py:995 cps/helper.py:1183 +#: cps/helper.py:999 cps/helper.py:1156 #, fuzzy msgid "Cover" msgstr "ស្រាវជ្រាវ" -#: cps/helper.py:1032 +#: cps/helper.py:1016 msgid "Unrar binary file not found" msgstr "" -#: cps/helper.py:1043 +#: cps/helper.py:1027 msgid "Error executing UnRar" msgstr "" -#: cps/helper.py:1051 +#: cps/helper.py:1035 msgid "Could not find the specified directory" msgstr "" -#: cps/helper.py:1054 +#: cps/helper.py:1038 msgid "Please specify a directory, not a file" msgstr "" -#: cps/helper.py:1068 +#: cps/helper.py:1052 msgid "Calibre binaries not viable" msgstr "" -#: cps/helper.py:1077 +#: cps/helper.py:1061 #, python-format msgid "Missing calibre binaries: %(missing)s" msgstr "" -#: cps/helper.py:1079 +#: cps/helper.py:1063 #, python-format msgid "Missing executable permissions: %(missing)s" msgstr "" -#: cps/helper.py:1084 +#: cps/helper.py:1068 msgid "Error excecuting Calibre" msgstr "" -#: cps/helper.py:1185 cps/templates/admin.html:216 +#: cps/helper.py:1158 cps/templates/admin.html:216 msgid "Queue all books for metadata backup" msgstr "" @@ -933,7 +934,7 @@ msgstr "" #: cps/remotelogin.py:62 cps/templates/layout.html:67 #: cps/templates/layout.html:101 cps/templates/login.html:4 -#: cps/templates/login.html:21 cps/web.py:1333 +#: cps/templates/login.html:21 cps/web.py:1353 msgid "Login" msgstr "ចូលប្រើប្រាស់" @@ -949,7 +950,7 @@ msgstr "វត្ថុតាងហួសពេលកំណត់" msgid "Success! Please return to your device" msgstr "ជោគជ័យ! សូមវិលមកឧបករណ៍អ្នកវិញ" -#: cps/render_template.py:42 cps/web.py:414 +#: cps/render_template.py:42 cps/web.py:418 msgid "Books" msgstr "" @@ -974,7 +975,7 @@ msgstr "" msgid "Show Downloaded Books" msgstr "" -#: cps/render_template.py:59 cps/templates/index.xml:33 cps/web.py:429 +#: cps/render_template.py:59 cps/templates/index.xml:33 cps/web.py:433 msgid "Top Rated Books" msgstr "សៀវភៅដែលមានការវាយតម្លៃល្អជាងគេ" @@ -983,7 +984,7 @@ msgid "Show Top Rated Books" msgstr "បង្ហាញសៀវភៅដែលមានការវាយតម្លៃល្អជាងគេ" #: cps/render_template.py:62 cps/templates/index.xml:55 -#: cps/templates/index.xml:59 cps/web.py:750 +#: cps/templates/index.xml:59 cps/web.py:766 msgid "Read Books" msgstr "សៀវភៅដែលបានអានរួច" @@ -993,7 +994,7 @@ msgid "Show Read and Unread" msgstr "បង្ហាញអានរួច និងមិនទាន់អាន" #: cps/render_template.py:66 cps/templates/index.xml:62 -#: cps/templates/index.xml:66 cps/web.py:753 +#: cps/templates/index.xml:66 cps/web.py:769 msgid "Unread Books" msgstr "សៀវភៅដែលមិនទាន់បានអាន" @@ -1011,7 +1012,7 @@ msgid "Show Random Books" msgstr "បង្ហាញសៀវភៅចៃដន្យ" #: cps/render_template.py:72 cps/templates/book_table.html:67 -#: cps/templates/index.xml:84 cps/web.py:1119 +#: cps/templates/index.xml:84 cps/web.py:1135 msgid "Categories" msgstr "ប្រភេទនានា" @@ -1022,7 +1023,7 @@ msgstr "បង្ហាញជម្រើសប្រភេទ" #: cps/render_template.py:75 cps/templates/book_edit.html:91 #: cps/templates/book_table.html:68 cps/templates/index.xml:91 -#: cps/templates/search_form.html:70 cps/web.py:1009 cps/web.py:1021 +#: cps/templates/search_form.html:70 cps/web.py:1025 cps/web.py:1037 msgid "Series" msgstr "ស៊េរី" @@ -1042,7 +1043,7 @@ msgid "Show Author Section" msgstr "បង្ហាញជម្រើសអ្នកនិពន្ធ" #: cps/render_template.py:82 cps/templates/book_table.html:72 -#: cps/templates/index.xml:77 cps/web.py:977 +#: cps/templates/index.xml:77 cps/web.py:993 msgid "Publishers" msgstr "" @@ -1053,7 +1054,7 @@ msgstr "បង្ហាញជម្រើសស៊េរី" #: cps/render_template.py:85 cps/templates/book_table.html:70 #: cps/templates/index.xml:98 cps/templates/search_form.html:108 -#: cps/web.py:1091 +#: cps/web.py:1107 msgid "Languages" msgstr "ភាសានានា" @@ -1080,7 +1081,7 @@ msgstr "" msgid "Show File Formats Section" msgstr "បង្ហាញជម្រើសស៊េរី" -#: cps/render_template.py:96 cps/web.py:776 +#: cps/render_template.py:96 cps/web.py:792 msgid "Archived Books" msgstr "" @@ -1089,7 +1090,7 @@ msgstr "" msgid "Show Archived Books" msgstr "បង្ហាញសៀវភៅមកថ្មី" -#: cps/render_template.py:101 cps/web.py:807 +#: cps/render_template.py:101 cps/web.py:823 msgid "Books List" msgstr "" @@ -1312,169 +1313,173 @@ msgstr "" msgid "No release information available" msgstr "" -#: cps/templates/index.html:6 cps/web.py:441 +#: cps/templates/index.html:6 cps/web.py:445 msgid "Discover (Random Books)" msgstr "ស្រាវជ្រាវ (សៀវភៅចៃដន្យ)" -#: cps/web.py:477 +#: cps/web.py:481 msgid "Hot Books (Most Downloaded)" msgstr "សៀវភៅដែលត្រូវបានទាញយកច្រើនជាងគេ" -#: cps/web.py:508 +#: cps/web.py:512 #, python-format msgid "Downloaded books by %(user)s" msgstr "" -#: cps/web.py:541 +#: cps/web.py:545 #, python-format msgid "Author: %(name)s" msgstr "" -#: cps/web.py:577 +#: cps/web.py:581 #, python-format msgid "Publisher: %(name)s" msgstr "" -#: cps/web.py:605 +#: cps/web.py:609 #, python-format msgid "Series: %(serie)s" msgstr "ស៊េរី៖ %(serie)s" -#: cps/web.py:620 +#: cps/web.py:623 msgid "Rating: None" msgstr "" -#: cps/web.py:629 +#: cps/web.py:632 #, python-format msgid "Rating: %(rating)s stars" msgstr "" -#: cps/web.py:645 +#: cps/web.py:663 #, python-format msgid "File format: %(format)s" msgstr "" -#: cps/web.py:682 +#: cps/web.py:698 #, python-format msgid "Category: %(name)s" msgstr "ប្រភេទ៖ %(name)s" -#: cps/web.py:711 +#: cps/web.py:727 #, python-format msgid "Language: %(name)s" msgstr "ភាសា៖ %(name)s" -#: cps/templates/admin.html:16 cps/web.py:949 +#: cps/templates/admin.html:16 cps/web.py:965 msgid "Downloads" msgstr "ឯកសារ DLS" -#: cps/web.py:1051 +#: cps/web.py:1067 msgid "Ratings list" msgstr "" -#: cps/web.py:1078 +#: cps/web.py:1094 msgid "File formats list" msgstr "" -#: cps/web.py:1233 +#: cps/web.py:1249 #, fuzzy msgid "Please configure the SMTP mail settings first..." msgstr "សូមកំណត់អ៊ីមែល SMTP ជាមុនសិន" -#: cps/web.py:1240 +#: cps/web.py:1256 #, python-format msgid "Success! Book queued for sending to %(eReadermail)s" msgstr "សៀវភៅបានចូលជួរសម្រាប់ផ្ញើទៅ %(eReadermail)s ដោយជោគជ័យ" -#: cps/web.py:1243 +#: cps/web.py:1259 #, python-format msgid "Oops! There was an error sending book: %(res)s" msgstr "មានបញ្ហានៅពេលផ្ញើសៀវភៅនេះ៖ %(res)s" -#: cps/web.py:1245 +#: cps/web.py:1261 msgid "Oops! Please update your profile with a valid eReader Email." msgstr "" -#: cps/web.py:1261 +#: cps/web.py:1277 msgid "Please wait one minute to register next user" msgstr "" #: cps/templates/layout.html:68 cps/templates/layout.html:102 -#: cps/templates/login.html:27 cps/templates/register.html:17 cps/web.py:1262 -#: cps/web.py:1267 cps/web.py:1271 cps/web.py:1277 cps/web.py:1297 -#: cps/web.py:1301 cps/web.py:1314 cps/web.py:1317 +#: cps/templates/login.html:27 cps/templates/register.html:17 cps/web.py:1278 +#: cps/web.py:1282 cps/web.py:1287 cps/web.py:1291 cps/web.py:1297 +#: cps/web.py:1317 cps/web.py:1321 cps/web.py:1334 cps/web.py:1337 msgid "Register" msgstr "ចុះឈ្មោះ" -#: cps/web.py:1266 cps/web.py:1313 +#: cps/web.py:1281 cps/web.py:1385 +msgid "Connection error to limiter backend, please contact your administrator" +msgstr "" + +#: cps/web.py:1286 cps/web.py:1333 msgid "Oops! Email server is not configured, please contact your administrator." msgstr "" -#: cps/web.py:1299 +#: cps/web.py:1319 msgid "Oops! Your Email is not allowed." msgstr "" -#: cps/web.py:1302 +#: cps/web.py:1322 msgid "Success! Confirmation Email has been sent." msgstr "" -#: cps/web.py:1348 cps/web.py:1367 +#: cps/web.py:1368 cps/web.py:1391 msgid "Cannot activate LDAP authentication" msgstr "" -#: cps/web.py:1361 +#: cps/web.py:1381 msgid "Please wait one minute before next login" msgstr "" -#: cps/web.py:1376 +#: cps/web.py:1400 #, fuzzy, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "ឥឡូវអ្នកបានចូលដោយមានឈ្មោះថា៖ ‘%(nickname)s’" -#: cps/web.py:1383 +#: cps/web.py:1407 #, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgstr "" -#: cps/web.py:1388 +#: cps/web.py:1412 #, python-format msgid "Could not login: %(message)s" msgstr "" -#: cps/web.py:1392 cps/web.py:1417 +#: cps/web.py:1416 cps/web.py:1441 #, fuzzy msgid "Wrong Username or Password" msgstr "ខុសឈ្មោះអ្នកប្រើប្រាស់ ឬលេខសម្ងាត់" -#: cps/web.py:1399 +#: cps/web.py:1423 msgid "New Password was sent to your email address" msgstr "" -#: cps/web.py:1403 +#: cps/web.py:1427 msgid "An unknown error occurred. Please try again later." msgstr "" -#: cps/web.py:1405 +#: cps/web.py:1429 #, fuzzy msgid "Please enter valid username to reset password" msgstr "ខុសឈ្មោះអ្នកប្រើប្រាស់ ឬលេខសម្ងាត់" -#: cps/web.py:1413 +#: cps/web.py:1437 #, fuzzy, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "ឥឡូវអ្នកបានចូលដោយមានឈ្មោះថា៖ ‘%(nickname)s’" -#: cps/web.py:1471 cps/web.py:1521 +#: cps/web.py:1495 cps/web.py:1545 #, python-format msgid "%(name)s's Profile" msgstr "ព័ត៌មានសង្ខេបរបស់ %(name)s" -#: cps/web.py:1487 +#: cps/web.py:1511 #, fuzzy msgid "Success! Profile Updated" msgstr "ព័ត៌មានសង្ខេបបានកែប្រែ" -#: cps/web.py:1491 +#: cps/web.py:1515 msgid "Oops! An account already exists for this Email." msgstr "" @@ -1487,41 +1492,41 @@ msgstr "" msgid "%(book)s send to E-Reader" msgstr "ផ្ញើទៅ Kindle" -#: cps/tasks/convert.py:166 +#: cps/tasks/convert.py:167 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "" -#: cps/tasks/convert.py:200 +#: cps/tasks/convert.py:201 #, python-format msgid "%(format)s format not found on disk" msgstr "" -#: cps/tasks/convert.py:204 +#: cps/tasks/convert.py:205 msgid "Ebook converter failed with unknown error" msgstr "" -#: cps/tasks/convert.py:223 +#: cps/tasks/convert.py:224 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "" -#: cps/tasks/convert.py:244 +#: cps/tasks/convert.py:245 #, python-format msgid "Converted file not found or more than one file in folder %(folder)s" msgstr "" -#: cps/tasks/convert.py:279 +#: cps/tasks/convert.py:287 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "Ebook-converter បានបរាជ័យ៖ %(error)s" -#: cps/tasks/convert.py:302 +#: cps/tasks/convert.py:310 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "" -#: cps/tasks/convert.py:307 +#: cps/tasks/convert.py:315 msgid "Convert" msgstr "" @@ -1529,7 +1534,7 @@ msgstr "" msgid "Reconnecting Calibre database" msgstr "" -#: cps/tasks/mail.py:269 +#: cps/tasks/mail.py:278 msgid "E-mail" msgstr "" @@ -1808,12 +1813,12 @@ 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:414 -#: cps/templates/config_view_edit.html:175 cps/templates/modal_dialogs.html:64 -#: cps/templates/modal_dialogs.html:99 cps/templates/modal_dialogs.html:117 -#: cps/templates/modal_dialogs.html:135 cps/templates/schedule_edit.html:45 -#: cps/templates/shelf_edit.html:27 cps/templates/tasks.html:46 -#: cps/templates/user_edit.html:144 +#: cps/templates/config_db.html:66 cps/templates/config_edit.html:428 +#: 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 +#: cps/templates/schedule_edit.html:45 cps/templates/shelf_edit.html:27 +#: cps/templates/tasks.html:46 cps/templates/user_edit.html:144 msgid "Cancel" msgstr "" @@ -1994,7 +1999,7 @@ msgid "Fetch Metadata" msgstr "មើលទិន្នន័យមេតា" #: cps/templates/book_edit.html:213 cps/templates/config_db.html:65 -#: cps/templates/config_edit.html:413 cps/templates/config_view_edit.html:174 +#: cps/templates/config_edit.html:427 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 @@ -2161,7 +2166,7 @@ msgid "Location of Calibre Database" msgstr "ទីតាំង database របស់ Calibre" #: cps/templates/config_db.html:21 -msgid "Separate Book files from Library (Highly experimental, might not work at all)" +msgid "Separate Book Files from Library" msgstr "" #: cps/templates/config_db.html:34 @@ -2245,7 +2250,7 @@ msgid "Convert non-English characters in title and author while saving to disk" msgstr "" #: cps/templates/config_edit.html:108 -msgid "Embed Metadata to Ebook File on Download and Conversion (needs Calibre/Kepubify binaries)" +msgid "Embed Metadata to Ebook File on Download/Conversion/e-mail (needs Calibre/Kepubify binaries)" msgstr "" #: cps/templates/config_edit.html:112 @@ -2467,39 +2472,51 @@ msgstr "" msgid "Limit failed login attempts" msgstr "" -#: cps/templates/config_edit.html:376 +#: cps/templates/config_edit.html:377 +msgid "Configure Backend for Limiter" +msgstr "" + +#: cps/templates/config_edit.html:381 +msgid "Options for Limiter" +msgstr "" + +#: cps/templates/config_edit.html:386 msgid "Session protection" msgstr "" -#: cps/templates/config_edit.html:378 +#: cps/templates/config_edit.html:388 msgid "Basic" msgstr "" -#: cps/templates/config_edit.html:379 +#: cps/templates/config_edit.html:389 msgid "Strong" msgstr "" -#: cps/templates/config_edit.html:384 +#: cps/templates/config_edit.html:394 msgid "User Password policy" msgstr "" -#: cps/templates/config_edit.html:388 +#: cps/templates/config_edit.html:398 msgid "Minimum password length" msgstr "" -#: cps/templates/config_edit.html:393 +#: cps/templates/config_edit.html:403 msgid "Enforce number" msgstr "" -#: cps/templates/config_edit.html:397 +#: cps/templates/config_edit.html:407 msgid "Enforce lowercase characters" msgstr "" -#: cps/templates/config_edit.html:401 +#: cps/templates/config_edit.html:411 msgid "Enforce uppercase characters" msgstr "" -#: cps/templates/config_edit.html:405 +#: cps/templates/config_edit.html:415 +msgid "Enforce characters (needed For Chinese/Japanese/Korean Characters)" +msgstr "" + +#: cps/templates/config_edit.html:419 msgid "Enforce special characters" msgstr "" @@ -2623,47 +2640,47 @@ msgstr "" msgid "Published" msgstr "" -#: cps/templates/detail.html:250 cps/templates/listenmp3.html:158 +#: cps/templates/detail.html:251 cps/templates/listenmp3.html:158 msgid "Mark As Unread" msgstr "" -#: cps/templates/detail.html:251 cps/templates/listenmp3.html:158 +#: cps/templates/detail.html:252 cps/templates/listenmp3.html:158 msgid "Mark As Read" msgstr "" -#: cps/templates/detail.html:253 cps/templates/listenmp3.html:159 +#: cps/templates/detail.html:254 cps/templates/listenmp3.html:159 msgid "Read" msgstr "អាន" -#: cps/templates/detail.html:263 cps/templates/listenmp3.html:166 +#: cps/templates/detail.html:264 cps/templates/listenmp3.html:166 msgid "Restore from archive" msgstr "" -#: cps/templates/detail.html:264 cps/templates/listenmp3.html:166 +#: cps/templates/detail.html:265 cps/templates/listenmp3.html:166 msgid "Add to archive" msgstr "" -#: cps/templates/detail.html:266 cps/templates/listenmp3.html:167 +#: cps/templates/detail.html:267 cps/templates/listenmp3.html:167 msgid "Archived" msgstr "" -#: cps/templates/detail.html:277 cps/templates/listenmp3.html:177 +#: cps/templates/detail.html:278 cps/templates/listenmp3.html:177 msgid "Description:" msgstr "ពិពណ៌នា" -#: cps/templates/detail.html:292 cps/templates/listenmp3.html:190 +#: cps/templates/detail.html:293 cps/templates/listenmp3.html:190 #: cps/templates/search.html:16 msgid "Add to shelf" msgstr "បន្ថែមទៅធ្នើ" -#: cps/templates/detail.html:304 cps/templates/detail.html:323 +#: cps/templates/detail.html:305 cps/templates/detail.html:324 #: cps/templates/feed.xml:81 cps/templates/layout.html:154 #: cps/templates/listenmp3.html:201 cps/templates/listenmp3.html:218 #: cps/templates/search.html:22 msgid "(Public)" msgstr "" -#: cps/templates/detail.html:339 +#: cps/templates/detail.html:340 msgid "Edit Metadata" msgstr "កែប្រែទិន្នន័យមេតា" diff --git a/cps/translations/ko/LC_MESSAGES/messages.mo b/cps/translations/ko/LC_MESSAGES/messages.mo index e16513f4..05d2736f 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 075f41ea..6d2e96a3 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-02-10 10:06+0100\n" +"POT-Creation-Date: 2024-04-27 07:20+0200\n" "PO-Revision-Date: 2022-01-10 11:30+0900\n" "Last-Translator: 내맘대로의 EPUBGUIDE.NET \n" "Language: ko\n" @@ -21,491 +21,491 @@ msgstr "" msgid "Statistics" msgstr "통계" -#: cps/admin.py:149 +#: cps/admin.py:150 #, fuzzy msgid "Server restarted, please reload page." msgstr "서버 다시 시작으로 새로고침 필요" -#: cps/admin.py:151 +#: cps/admin.py:152 #, fuzzy msgid "Performing Server shutdown, please close window." msgstr "서버를 종료하는 중, 창을 닫아야 함" -#: cps/admin.py:159 +#: cps/admin.py:160 msgid "Success! Database Reconnected" msgstr "성공적으로 DB를 다시 연결하였습니다." -#: cps/admin.py:162 +#: cps/admin.py:163 msgid "Unknown command" msgstr "알 수 없는 명령" -#: cps/admin.py:173 +#: cps/admin.py:174 #, fuzzy msgid "Success! Books queued for Metadata Backup, please check Tasks for result" msgstr "%(email)s에 테스트를 위한 이메일을 보냄. 결과 확인 필요" -#: cps/admin.py:206 cps/editbooks.py:589 cps/editbooks.py:591 -#: cps/editbooks.py:629 cps/editbooks.py:646 cps/editbooks.py:1262 +#: cps/admin.py:207 cps/editbooks.py:590 cps/editbooks.py:592 +#: cps/editbooks.py:630 cps/editbooks.py:647 cps/editbooks.py:1263 #: cps/updater.py:613 cps/uploader.py:93 cps/uploader.py:102 msgid "Unknown" msgstr "알 수 없음" -#: cps/admin.py:231 +#: cps/admin.py:232 msgid "Admin page" msgstr "관리자 페이지" -#: cps/admin.py:251 +#: cps/admin.py:252 msgid "Basic Configuration" msgstr "기본 설정" -#: cps/admin.py:289 +#: cps/admin.py:290 msgid "UI Configuration" msgstr "UI 설정" -#: cps/admin.py:323 cps/templates/admin.html:51 +#: cps/admin.py:324 cps/templates/admin.html:51 msgid "Edit Users" msgstr "사용자 관리" -#: cps/admin.py:367 cps/opds.py:506 cps/templates/grid.html:14 +#: cps/admin.py:368 cps/opds.py:506 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "모두" -#: cps/admin.py:394 cps/admin.py:1405 +#: cps/admin.py:395 cps/admin.py:1417 msgid "User not found" msgstr "사용자를 찾을 수 없음" -#: cps/admin.py:408 +#: cps/admin.py:409 msgid "{} users deleted successfully" msgstr "{} 사용자를 성공적으로 삭제함" -#: cps/admin.py:431 cps/templates/config_view_edit.html:133 +#: cps/admin.py:432 cps/templates/config_view_edit.html:133 #: cps/templates/user_edit.html:45 cps/templates/user_table.html:81 msgid "Show All" msgstr "모두 보기" -#: cps/admin.py:452 cps/admin.py:458 +#: cps/admin.py:453 cps/admin.py:459 msgid "Malformed request" msgstr "잘못된 요청" -#: cps/admin.py:470 cps/admin.py:2033 +#: cps/admin.py:471 cps/admin.py:2048 msgid "Guest Name can't be changed" msgstr "Guest 이름은 수정할 수 없음" -#: cps/admin.py:482 +#: cps/admin.py:483 msgid "Guest can't have this role" msgstr "Guest는 이 권한을 사용할 수 없음" -#: cps/admin.py:494 cps/admin.py:1987 +#: cps/admin.py:495 cps/admin.py:2002 msgid "No admin user remaining, can't remove admin role" msgstr "관리자 계정이 하나 뿐일 때는 관리자를 삭제할 수 없음" -#: cps/admin.py:498 cps/admin.py:512 +#: cps/admin.py:499 cps/admin.py:513 msgid "Value has to be true or false" msgstr "값으로 rue 또는 false만 설정 가능" -#: cps/admin.py:500 +#: cps/admin.py:501 msgid "Invalid role" msgstr "잘못된 권한" -#: cps/admin.py:504 +#: cps/admin.py:505 msgid "Guest can't have this view" msgstr "Guest는 이 view를 사용할 수 없음" -#: cps/admin.py:514 +#: cps/admin.py:515 msgid "Invalid view" msgstr "잘못된 view" -#: cps/admin.py:517 +#: cps/admin.py:518 msgid "Guest's Locale is determined automatically and can't be set" msgstr "Guest의 로케일은 자동으로 결정되며 설정할 수 없음" -#: cps/admin.py:521 +#: cps/admin.py:522 msgid "No Valid Locale Given" msgstr "유효한 로케일이 아님" -#: cps/admin.py:532 +#: cps/admin.py:533 msgid "No Valid Book Language Given" msgstr "제공된 책의 언어가 유효하지 않음" -#: cps/admin.py:534 cps/editbooks.py:455 +#: cps/admin.py:535 cps/editbooks.py:456 msgid "Parameter not found" msgstr "매개변수를 찾을 수 없음" -#: cps/admin.py:571 +#: cps/admin.py:572 msgid "Invalid Read Column" msgstr "잘못된 읽기 열" -#: cps/admin.py:577 +#: cps/admin.py:578 msgid "Invalid Restricted Column" msgstr "잘못된 제한된 열" -#: cps/admin.py:597 cps/admin.py:1858 +#: cps/admin.py:598 cps/admin.py:1873 msgid "Calibre-Web configuration updated" msgstr "Calibre-Web 설정이 업데이트 됨" -#: cps/admin.py:609 +#: cps/admin.py:610 msgid "Do you really want to delete the Kobo Token?" msgstr "Kobo Token을 삭제하시겠습니까?" -#: cps/admin.py:611 +#: cps/admin.py:612 msgid "Do you really want to delete this domain?" msgstr "이 도메인을 삭제하시겠습니까?" -#: cps/admin.py:613 +#: cps/admin.py:614 msgid "Do you really want to delete this user?" msgstr "이 사용자를 삭제하시겠습니까?" -#: cps/admin.py:615 +#: cps/admin.py:616 msgid "Are you sure you want to delete this shelf?" msgstr "이 서재를 삭제하시겠습니까?" -#: cps/admin.py:617 +#: cps/admin.py:618 msgid "Are you sure you want to change locales of selected user(s)?" msgstr "선택한 사용자의 언어를 변경하시겠습니까?" -#: cps/admin.py:619 +#: cps/admin.py:620 msgid "Are you sure you want to change visible book languages for selected user(s)?" msgstr "선택한 사용자에 대해 표시되는 책 언어를 변경하시겠습니까?" -#: cps/admin.py:621 +#: cps/admin.py:622 msgid "Are you sure you want to change the selected role for the selected user(s)?" msgstr "선택한 사용자에 대해 선택한 권한을 변경하시겠습니까?" -#: cps/admin.py:623 +#: cps/admin.py:624 msgid "Are you sure you want to change the selected restrictions for the selected user(s)?" msgstr "선택한 사용자에 대해 선택한 제한을 변경하시겠습니까?" -#: cps/admin.py:625 +#: cps/admin.py:626 msgid "Are you sure you want to change the selected visibility restrictions for the selected user(s)?" msgstr "선택한 사용자에 대해 선택한 가시성 제한을 변경하시겠습니까?" -#: cps/admin.py:628 +#: cps/admin.py:629 msgid "Are you sure you want to change shelf sync behavior for the selected user(s)?" msgstr "선택한 사용자의 실행기 동기화 동작을 변경하시겠습니까?" -#: cps/admin.py:630 +#: cps/admin.py:631 msgid "Are you sure you want to change Calibre library location?" msgstr "캘리버 서재의 언어를 변경하시겠습니까?" -#: cps/admin.py:632 +#: cps/admin.py:633 msgid "Calibre-Web will search for updated Covers and update Cover Thumbnails, this may take a while?" msgstr "Calibre-Web은 업데이트된 표지를 검색하고 표지 섬네일 업데이트합니다. 시간이 오래 걸릴 수 있습니다." -#: cps/admin.py:635 +#: cps/admin.py:636 msgid "Are you sure you want delete Calibre-Web's sync database to force a full sync with your Kobo Reader?" msgstr "Kobo Reader와 전체 동기화를 강제 실행하기 위해 Calibre-Web의 동기화 데이터베이스를 삭제하시겠습니까?" -#: cps/admin.py:878 cps/admin.py:884 cps/admin.py:894 cps/admin.py:904 +#: cps/admin.py:879 cps/admin.py:885 cps/admin.py:895 cps/admin.py:905 #: cps/templates/modal_dialogs.html:29 cps/templates/user_table.html:41 #: cps/templates/user_table.html:58 msgid "Deny" msgstr "거부됨" -#: cps/admin.py:880 cps/admin.py:886 cps/admin.py:896 cps/admin.py:906 +#: cps/admin.py:881 cps/admin.py:887 cps/admin.py:897 cps/admin.py:907 #: cps/templates/modal_dialogs.html:28 cps/templates/user_table.html:44 #: cps/templates/user_table.html:61 msgid "Allow" msgstr "허용됨" -#: cps/admin.py:921 +#: cps/admin.py:940 msgid "{} sync entries deleted" msgstr "{} 동기화 항목이 삭제됨" -#: cps/admin.py:969 +#: cps/admin.py:981 msgid "Tag not found" msgstr "태그를 찾을 수 없음" -#: cps/admin.py:981 +#: cps/admin.py:993 msgid "Invalid Action" msgstr "잘못된 액션" -#: cps/admin.py:1111 +#: cps/admin.py:1123 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "client_secrets.json이 Web 응용프로그램에 대해 설정되지 않음" -#: cps/admin.py:1156 +#: cps/admin.py:1168 msgid "Logfile Location is not Valid, Please Enter Correct Path" msgstr "로그 파일 위치가 오류. 올바른 경로 입력 필요" -#: cps/admin.py:1162 +#: cps/admin.py:1174 msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgstr "액세스 로그 파일 위치가 올바르지 않음. 올바른 경로 입력 필요" -#: cps/admin.py:1196 +#: cps/admin.py:1208 msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgstr "LDAP 공급자, 포트, DN 및 사용자 개체 식별자를 입력" -#: cps/admin.py:1202 +#: cps/admin.py:1214 msgid "Please Enter a LDAP Service Account and Password" msgstr "LDAP 서비스 계정 및 비밀번호를 입력하십시오" -#: cps/admin.py:1205 +#: cps/admin.py:1217 msgid "Please Enter a LDAP Service Account" msgstr "LDAP 서비스 계정을 입력하십시오" -#: cps/admin.py:1210 +#: cps/admin.py:1222 #, python-format msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgstr "LDAP 그룹 개체 필터에는 하나의 \"%s\" 형식 식별자가 필요함" -#: cps/admin.py:1212 +#: cps/admin.py:1224 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "LDAP 그룹 개체 필터에 일치하지 않는 괄호가 있음" -#: cps/admin.py:1216 +#: cps/admin.py:1228 #, python-format msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgstr "LDAP 사용자 개체 필터에는 하나의 \"%s\" 형식 식별자 필요" -#: cps/admin.py:1218 +#: cps/admin.py:1230 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "LDAP 사용자 개체 필터에 일치하지 않는 괄호가 있음" -#: cps/admin.py:1225 +#: cps/admin.py:1237 #, python-format msgid "LDAP Member User Filter needs to Have One \"%s\" Format Identifier" msgstr "LDAP 구성원 사용자 필터에는 하나의 \"%s\" 형식 식별자 필요" -#: cps/admin.py:1227 +#: cps/admin.py:1239 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "LDAP 구성원 사용자 필터에 일치하지 않는 괄호가 있음" -#: cps/admin.py:1234 +#: cps/admin.py:1246 msgid "LDAP CACertificate, Certificate or Key Location is not Valid, Please Enter Correct Path" msgstr "유요하지 않은 LDAP CACertificate, 인증서 또는 키 위치. 올바른 경로를 입력 필요" -#: cps/admin.py:1265 cps/templates/admin.html:53 +#: cps/admin.py:1277 cps/templates/admin.html:53 msgid "Add New User" msgstr "사용자 추가" -#: cps/admin.py:1274 cps/templates/admin.html:100 +#: cps/admin.py:1286 cps/templates/admin.html:100 msgid "Edit Email Server Settings" msgstr "이메일 서버 설정 편집" -#: cps/admin.py:1293 +#: cps/admin.py:1305 msgid "Success! Gmail Account Verified." msgstr "Gmail 계정 인증에 성공하였습니다." -#: cps/admin.py:1313 cps/admin.py:1316 cps/admin.py:1698 cps/admin.py:1842 -#: cps/admin.py:1940 cps/admin.py:2061 cps/editbooks.py:241 -#: cps/editbooks.py:317 cps/editbooks.py:1224 cps/shelf.py:90 cps/shelf.py:150 +#: cps/admin.py:1325 cps/admin.py:1328 cps/admin.py:1710 cps/admin.py:1857 +#: cps/admin.py:1955 cps/admin.py:2076 cps/editbooks.py:242 +#: cps/editbooks.py:318 cps/editbooks.py:1225 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:149 cps/web.py:1496 +#: cps/shelf.py:468 cps/tasks/convert.py:150 cps/web.py:1520 #, python-format msgid "Oops! Database Error: %(error)s." msgstr "데이터베이스 오류: %(error)s." -#: cps/admin.py:1323 +#: cps/admin.py:1335 #, python-format msgid "Test e-mail queued for sending to %(email)s, please check Tasks for result" msgstr "%(email)s에 테스트를 위한 이메일을 보냄. 결과 확인 필요" -#: cps/admin.py:1326 +#: cps/admin.py:1338 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "테스트 이메일을 보내는 동안 오류가 발생했습니다: %(res)s" -#: cps/admin.py:1328 +#: cps/admin.py:1340 msgid "Please configure your e-mail address first..." msgstr "먼저 이메일 주소를 구성하십시오..." -#: cps/admin.py:1330 +#: cps/admin.py:1342 msgid "Email Server Settings updated" msgstr "이메일 서버 설정 업데이트됨" -#: cps/admin.py:1353 cps/templates/admin.html:195 +#: cps/admin.py:1365 cps/templates/admin.html:195 msgid "Edit Scheduled Tasks Settings" msgstr "예약 작업 설정 편집" -#: cps/admin.py:1365 +#: cps/admin.py:1377 msgid "Invalid start time for task specified" msgstr "지정된 작업의 시작 시간이 잘못 설정되었습니다." -#: cps/admin.py:1370 +#: cps/admin.py:1382 msgid "Invalid duration for task specified" msgstr "지정된 작업의 기간이 잘못 설정되었습니다." -#: cps/admin.py:1380 +#: cps/admin.py:1392 msgid "Scheduled tasks settings updated" msgstr "예약된 작업 설정을 업데이트 하였습니다." -#: cps/admin.py:1390 cps/admin.py:1439 cps/admin.py:2057 cps/web.py:1296 +#: cps/admin.py:1402 cps/admin.py:1451 cps/admin.py:2072 cps/web.py:1316 msgid "Oops! An unknown error occurred. Please try again later." msgstr "알 수없는 오류가 발생했습니다. 나중에 다시 시도 해주십시오." -#: cps/admin.py:1394 +#: cps/admin.py:1406 msgid "Settings DB is not Writeable" msgstr "저장할 수 없는 설정 DB입니다." -#: cps/admin.py:1424 cps/admin.py:2049 +#: cps/admin.py:1436 cps/admin.py:2064 #, python-format msgid "Edit User %(nick)s" msgstr "사용자 %(nick)s 편집" -#: cps/admin.py:1436 +#: cps/admin.py:1448 #, fuzzy, python-format msgid "Success! Password for user %(user)s reset" msgstr "사용자 %(user)s의 비밀번호 재설정" -#: cps/admin.py:1442 +#: cps/admin.py:1454 #, fuzzy msgid "Oops! Please configure the SMTP mail settings." msgstr "먼저 SMTP 메일 설정을 구성하십시오..." -#: cps/admin.py:1453 +#: cps/admin.py:1465 msgid "Logfile viewer" msgstr "로그 파일 뷰어" -#: cps/admin.py:1519 +#: cps/admin.py:1531 msgid "Requesting update package" msgstr "업데이트 패키지 요청" -#: cps/admin.py:1520 +#: cps/admin.py:1532 msgid "Downloading update package" msgstr "업데이트 패키지 다운로드" -#: cps/admin.py:1521 +#: cps/admin.py:1533 msgid "Unzipping update package" msgstr "업데이트 패키지 압축 풀기" -#: cps/admin.py:1522 +#: cps/admin.py:1534 msgid "Replacing files" msgstr "파일 교체" -#: cps/admin.py:1523 +#: cps/admin.py:1535 msgid "Database connections are closed" msgstr "데이터베이스 연결이 닫힙니다" -#: cps/admin.py:1524 +#: cps/admin.py:1536 msgid "Stopping server" msgstr "서버 중지" -#: cps/admin.py:1525 +#: cps/admin.py:1537 msgid "Update finished, please press okay and reload page" msgstr "업데이트가 완료되었습니다. 확인을 누르고 페이지를 새로고침하세요" -#: cps/admin.py:1526 cps/admin.py:1527 cps/admin.py:1528 cps/admin.py:1529 -#: cps/admin.py:1530 cps/admin.py:1531 +#: cps/admin.py:1538 cps/admin.py:1539 cps/admin.py:1540 cps/admin.py:1541 +#: cps/admin.py:1542 cps/admin.py:1543 msgid "Update failed:" msgstr "업데이트 실패:" -#: cps/admin.py:1526 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 +#: cps/admin.py:1538 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 msgid "HTTP Error" msgstr "HTTP 오류" -#: cps/admin.py:1527 cps/updater.py:391 cps/updater.py:628 +#: cps/admin.py:1539 cps/updater.py:391 cps/updater.py:628 msgid "Connection error" msgstr "연결 오류" -#: cps/admin.py:1528 cps/updater.py:393 cps/updater.py:630 +#: cps/admin.py:1540 cps/updater.py:393 cps/updater.py:630 msgid "Timeout while establishing connection" msgstr "연결 설정 중 시간 초과" -#: cps/admin.py:1529 cps/updater.py:395 cps/updater.py:632 +#: cps/admin.py:1541 cps/updater.py:395 cps/updater.py:632 msgid "General error" msgstr "일반 오류" -#: cps/admin.py:1530 +#: cps/admin.py:1542 msgid "Update file could not be saved in temp dir" msgstr "임시 디렉토리에 업데이트 파일을 저장할 수 없습니다" -#: cps/admin.py:1531 +#: cps/admin.py:1543 msgid "Files could not be replaced during update" msgstr "업데이트하는 동안 파일을 교체할 수 없습니다" -#: cps/admin.py:1555 +#: cps/admin.py:1567 msgid "Failed to extract at least One LDAP User" msgstr "하나 이상의 LDAP 사용자를 추출하지 못했습니다" -#: cps/admin.py:1600 +#: cps/admin.py:1612 msgid "Failed to Create at Least One LDAP User" msgstr "하나 이상의 LDAP 사용자를 생성하지 못했습니다" -#: cps/admin.py:1613 +#: cps/admin.py:1625 #, python-format msgid "Error: %(ldaperror)s" msgstr "오류: %(ldaperror)s" -#: cps/admin.py:1617 +#: cps/admin.py:1629 msgid "Error: No user returned in response of LDAP server" msgstr "오류: LDAP 서버의 응답으로 사용자가 반환되지 않았습니다" -#: cps/admin.py:1650 +#: cps/admin.py:1662 msgid "At Least One LDAP User Not Found in Database" msgstr "데이터베이스에서 하나 이상의 LDAP 사용자를 찾을 수 없습니다" -#: cps/admin.py:1652 +#: cps/admin.py:1664 msgid "{} User Successfully Imported" msgstr "{} 사용자 가져오기 성공" -#: cps/admin.py:1710 +#: cps/admin.py:1722 msgid "DB Location is not Valid, Please Enter Correct Path" msgstr "올바르지 않은 DB 위치. 올바른 경로 입력 필요" -#: cps/admin.py:1730 +#: cps/admin.py:1742 msgid "DB is not Writeable" msgstr "쓰기 권한이 없는 DB" -#: cps/admin.py:1746 +#: cps/admin.py:1758 msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgstr "올바르지 않은 키 파일 위치. 올바른 경로 입력 필요" -#: cps/admin.py:1750 +#: cps/admin.py:1762 msgid "Certfile Location is not Valid, Please Enter Correct Path" msgstr "올바르지 않은 인증서 파일 위치. 올바른 경로 입력 필요" -#: cps/admin.py:1829 +#: cps/admin.py:1842 msgid "Password length has to be between 1 and 40" msgstr "비밀번호 길이는 1에서 40 사이여야 합니다." -#: cps/admin.py:1881 +#: cps/admin.py:1896 msgid "Database Settings updated" msgstr "데이터베이스 설정이 업데이트 되었습니다" -#: cps/admin.py:1889 +#: cps/admin.py:1904 msgid "Database Configuration" msgstr "데이터베이스 구성" -#: cps/admin.py:1904 cps/web.py:1270 +#: cps/admin.py:1919 cps/web.py:1290 msgid "Oops! Please complete all fields." msgstr "모든 필드를 채워주십시오!" -#: cps/admin.py:1913 +#: cps/admin.py:1928 msgid "E-mail is not from valid domain" msgstr "유효한 도메인에서 온 이메일이 아니" -#: cps/admin.py:1919 +#: cps/admin.py:1934 msgid "Add new user" msgstr "새 사용자 추가" -#: cps/admin.py:1930 +#: cps/admin.py:1945 #, python-format msgid "User '%(user)s' created" msgstr "사용자 '%(user)s'이(가) 생성됨" -#: cps/admin.py:1936 +#: cps/admin.py:1951 msgid "Oops! An account already exists for this Email. or name." msgstr "동일한 이메일 주소 또는 이름이 이미 등록되어 있습니다." -#: cps/admin.py:1966 +#: cps/admin.py:1981 #, python-format msgid "User '%(nick)s' deleted" msgstr "사용자 '%(nick)s'이(가) 삭제됨" -#: cps/admin.py:1969 +#: cps/admin.py:1984 msgid "Can't delete Guest User" msgstr "게스트 사용자는 삭제할 수 없습니다" -#: cps/admin.py:1972 +#: cps/admin.py:1987 msgid "No admin user remaining, can't delete user" msgstr "관리자 계정이 하나 뿐일 때는 관리자 권한을 삭제할 수 없음" -#: cps/admin.py:2027 cps/web.py:1445 +#: cps/admin.py:2042 cps/web.py:1469 msgid "Email can't be empty and has to be a valid Email" msgstr "이메일은 반드시 입력해야 하며 유효한 이메일이어야 합니다." -#: cps/admin.py:2053 +#: cps/admin.py:2068 #, python-format msgid "User '%(nick)s' updated" msgstr "사용자 '%(nick)s'가 업데이트 됨" @@ -518,122 +518,123 @@ msgstr "설치되지 않음" msgid "Execution permissions missing" msgstr "실행 권한 누락" -#: cps/db.py:752 cps/search.py:137 cps/web.py:731 +#: cps/db.py:752 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:993 cps/templates/config_edit.html:208 +#: cps/db.py:992 cps/templates/config_edit.html:208 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 -#: cps/web.py:558 cps/web.py:592 cps/web.py:665 cps/web.py:692 cps/web.py:973 -#: cps/web.py:1003 cps/web.py:1048 cps/web.py:1076 cps/web.py:1115 +#: 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 +#: cps/web.py:1131 msgid "None" msgstr "None" -#: cps/editbooks.py:122 cps/editbooks.py:910 cps/web.py:525 cps/web.py:1537 -#: cps/web.py:1581 cps/web.py:1626 +#: cps/editbooks.py:123 cps/editbooks.py:911 cps/web.py:529 cps/web.py:1561 +#: cps/web.py:1605 cps/web.py:1650 msgid "Oops! Selected book is unavailable. File does not exist or is not accessible" msgstr "선택한 책 제목을 사용할 수 없습니다. 파일이 존재하지 않거나 액세스할 수 없습니다" -#: cps/editbooks.py:166 cps/editbooks.py:1245 +#: cps/editbooks.py:167 cps/editbooks.py:1246 msgid "User has no rights to upload cover" msgstr "표지를 업로드 할 수 있는 권한이 없는 사용자입니다." -#: cps/editbooks.py:186 cps/editbooks.py:731 +#: cps/editbooks.py:187 cps/editbooks.py:732 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "식별자는 대소문자를 구분하지 않으며 이전 식별자를 덮어씁니다" -#: cps/editbooks.py:228 +#: cps/editbooks.py:229 msgid "Metadata successfully updated" msgstr "메타데이터가 성공적으로 업데이트되었습니다" -#: cps/editbooks.py:246 +#: cps/editbooks.py:247 msgid "Error editing book: {}" msgstr "책 편집 중 오류 발생: {}" -#: cps/editbooks.py:303 +#: cps/editbooks.py:304 #, python-format msgid "File %(file)s uploaded" msgstr "파일 %(file)s 업로드됨" -#: cps/editbooks.py:331 +#: cps/editbooks.py:332 msgid "Source or destination format for conversion missing" msgstr "변환을 위한 소스 또는 대상 형식이 누락되었습니다" -#: cps/editbooks.py:339 +#: cps/editbooks.py:340 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "책이 %(book_format)s(으)로 변환하기 위해 대기 중입니다" -#: cps/editbooks.py:343 +#: cps/editbooks.py:344 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "이 책을 변환하는 동안 오류가 발생했습니다: %(res)s" -#: cps/editbooks.py:650 +#: cps/editbooks.py:651 msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgstr "업로드한 책이 라이브러리에 있을 수 있음. 새로 업로드하기 전에 확인 필요: " -#: cps/editbooks.py:705 cps/editbooks.py:1037 +#: cps/editbooks.py:706 cps/editbooks.py:1038 #, python-format msgid "'%(langname)s' is not a valid language" msgstr "'%(langname)s'은(는) 유효한 언어가 아닙니다" -#: cps/editbooks.py:743 cps/editbooks.py:1185 +#: cps/editbooks.py:744 cps/editbooks.py:1186 #, python-format msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgstr "파일 확장자 '%(ext)s'은(는) 이 서버에 업로드할 수 없습니다" -#: cps/editbooks.py:747 cps/editbooks.py:1189 +#: cps/editbooks.py:748 cps/editbooks.py:1190 msgid "File to be uploaded must have an extension" msgstr "업로드할 파일에는 확장자가 있어야 합니다" -#: cps/editbooks.py:755 +#: cps/editbooks.py:756 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "파일 %(filename)s을(를) 임시 디렉토리에 저장할 수 없습니다" -#: cps/editbooks.py:775 +#: cps/editbooks.py:776 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "표지 파일%(file)s를 이동하지 못했습니다.:%(error)s" -#: cps/editbooks.py:832 cps/editbooks.py:834 +#: cps/editbooks.py:833 cps/editbooks.py:835 msgid "Book Format Successfully Deleted" msgstr "책 형식이 성공적으로 삭제되었습니다" -#: cps/editbooks.py:841 cps/editbooks.py:843 +#: cps/editbooks.py:842 cps/editbooks.py:844 msgid "Book Successfully Deleted" msgstr "책이 성공적으로 삭제되었습니다" -#: cps/editbooks.py:895 +#: cps/editbooks.py:896 msgid "You are missing permissions to delete books" msgstr "책을 삭제할 수 있는 권한이 없습니다." -#: cps/editbooks.py:945 +#: cps/editbooks.py:946 msgid "edit metadata" msgstr "메타데이터 편집" -#: cps/editbooks.py:994 +#: cps/editbooks.py:995 #, python-format msgid "%(seriesindex)s is not a valid number, skipping" msgstr "%(seriesindex)s은(는) 유효한 숫자가 아닙니다. 건너뜁니다" -#: cps/editbooks.py:1180 +#: cps/editbooks.py:1181 msgid "User has no rights to upload additional file formats" msgstr "추가 파일 유형을 업로드 할 권한이 없는 사용자입니다." -#: cps/editbooks.py:1201 +#: cps/editbooks.py:1202 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "%(path)s 경로를 생성하지 못했습니다(권한이 없음)." -#: cps/editbooks.py:1206 +#: cps/editbooks.py:1207 #, python-format msgid "Failed to store file %(file)s." msgstr "%(file)s 파일을 저장하지 못했습니다." -#: cps/editbooks.py:1230 +#: cps/editbooks.py:1231 #, python-format msgid "File format %(ext)s added to %(book)s" msgstr "파일 형식 %(ext)s이(가) %(book)s에 추가되었습니다" @@ -646,208 +647,208 @@ msgstr "Google 드라이브 설정이 완료되지 않았습니다. Google 드 msgid "Callback domain is not verified, please follow steps to verify domain in google developer console" msgstr "콜백 도메인이 확인되지 않았습니다. 단계에 따라 Google 개발자 콘솔에서 도메인을 확인하세요" -#: cps/helper.py:84 +#: cps/helper.py:86 #, python-format msgid "%(format)s format not found for book id: %(book)d" msgstr "책 ID에 대한 %(format)s 형식을 찾을 수 없음: %(book)d" -#: cps/helper.py:91 cps/tasks/convert.py:86 +#: cps/helper.py:93 cps/tasks/convert.py:86 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "%(format)s을(를) Google 드라이브에서 찾을 수 없음: %(fn)s" -#: cps/helper.py:96 +#: cps/helper.py:98 #, python-format msgid "%(format)s not found: %(fn)s" msgstr "%(format)s을(를) 찾을 수 없음: %(fn)s" -#: cps/helper.py:101 cps/helper.py:226 cps/templates/detail.html:58 +#: cps/helper.py:103 cps/helper.py:228 cps/templates/detail.html:58 #, fuzzy msgid "Send to eReader" msgstr "킨들로 보내기" -#: cps/helper.py:102 cps/helper.py:120 cps/helper.py:228 +#: cps/helper.py:104 cps/helper.py:122 cps/helper.py:230 #, fuzzy msgid "This Email has been sent via Calibre-Web." msgstr "이 이메일은 Calibre Web을 통해 전송되었습니다." -#: cps/helper.py:118 +#: cps/helper.py:120 #, fuzzy msgid "Calibre-Web Test Email" msgstr "Calibre-Web 테스트 이메일" -#: cps/helper.py:119 +#: cps/helper.py:121 #, fuzzy msgid "Test Email" msgstr "테스트 이메일" -#: cps/helper.py:136 +#: cps/helper.py:138 msgid "Get Started with Calibre-Web" msgstr "Calibre-Web 시작하기" -#: cps/helper.py:141 +#: cps/helper.py:143 #, fuzzy, python-format msgid "Registration Email for user: %(name)s" msgstr "사용자 등록 이메일: %(name)s" -#: cps/helper.py:152 cps/helper.py:158 +#: cps/helper.py:154 cps/helper.py:160 #, fuzzy, python-format msgid "Convert %(orig)s to %(format)s and send to eReader" msgstr "%(orig)s를 %(format)s로 변환하고 킨들로 보내기" -#: cps/helper.py:177 cps/helper.py:181 cps/helper.py:185 +#: cps/helper.py:179 cps/helper.py:183 cps/helper.py:187 #, fuzzy, python-format msgid "Send %(format)s to eReader" msgstr "킨들에 %(format)s 보내기" -#: cps/helper.py:225 +#: cps/helper.py:227 #, fuzzy, python-format msgid "%(book)s send to eReader" msgstr "%(book)s을 킨들로 보내기" -#: cps/helper.py:230 +#: cps/helper.py:232 msgid "The requested file could not be read. Maybe wrong permissions?" msgstr "요청한 파일을 읽을 수 없습니다. 올바른 권한인가요?" -#: cps/helper.py:345 +#: cps/helper.py:347 msgid "Read status could not set: {}" msgstr "읽기 상태를 설정할 수 없음: {}" -#: cps/helper.py:368 +#: cps/helper.py:370 #, python-format msgid "Deleting bookfolder for book %(id)s failed, path has subfolders: %(path)s" msgstr "책 %(id)s에 대한 책 폴더를 삭제하지 못했습니다. 경로에 하위 폴더가 있습니다: %(path)s" -#: cps/helper.py:374 +#: cps/helper.py:376 #, python-format msgid "Deleting book %(id)s failed: %(message)s" msgstr "%(id)s 도서 삭제 실패: %(message)s" -#: cps/helper.py:385 +#: cps/helper.py:387 #, python-format msgid "Deleting book %(id)s from database only, book path in database not valid: %(path)s" msgstr "데이터베이스에서만 책 %(id)s 을(를) 삭제 중, 데이터베이스의 책 경로가 유효하지 않음: %(path)s" -#: cps/helper.py:450 +#: cps/helper.py:452 #, 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:522 cps/helper.py:531 +#: cps/helper.py:524 cps/helper.py:533 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "Google 드라이브에서 %(file)s 파일을 찾을 수 없습니다" -#: cps/helper.py:565 +#: cps/helper.py:567 #, 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:585 +#: cps/helper.py:587 msgid "Error in rename file in path: {}" msgstr "경로에서 파일 이름을 바꾸는 중 오류가 발생: {}" -#: cps/helper.py:603 +#: cps/helper.py:605 #, python-format msgid "Book path %(path)s not found on Google Drive" msgstr "Google 드라이브에서 책 경로 %(path)s을(를) 찾을 수 없습니다" -#: cps/helper.py:668 +#: cps/helper.py:670 msgid "Found an existing account for this Email address" msgstr "다른 계정에서 사용하고 있는 이메일 주소입니다." -#: cps/helper.py:676 +#: cps/helper.py:678 msgid "This username is already taken" msgstr "등록되어 있는 username입니다" -#: cps/helper.py:688 +#: cps/helper.py:690 #, fuzzy msgid "Invalid Email address format" msgstr "이메일 주소 형식이 잘못되었습니다" -#: cps/helper.py:706 +#: cps/helper.py:710 msgid "Password doesn't comply with password validation rules" msgstr "규칙에 어긋나는 비밀번호입니다." -#: cps/helper.py:855 +#: cps/helper.py:859 msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "표지 업로드에 필요한 Python 모듈 'advocate'이 설치되지 않았습니다." -#: cps/helper.py:865 +#: cps/helper.py:869 msgid "Error Downloading Cover" msgstr "표지 다운로드 중 오류 발생" -#: cps/helper.py:868 +#: cps/helper.py:872 msgid "Cover Format Error" msgstr "표지 형식 오류" -#: cps/helper.py:871 +#: cps/helper.py:875 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "표지 업로드를 위해 localhost 또는 로컬 네트워크에 액세스할 수 없습니다." -#: cps/helper.py:881 +#: cps/helper.py:885 msgid "Failed to create path for cover" msgstr "표지 경로 생성 실패" -#: cps/helper.py:897 +#: cps/helper.py:901 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "표지 파일이 유효한 이미지 파일이 아니거나 저장할 수 없습니다" -#: cps/helper.py:908 +#: cps/helper.py:912 msgid "Only jpg/jpeg/png/webp/bmp files are supported as coverfile" msgstr "표지는 jpg/jpeg/png/webp/bmp 파일만 지원됩니다" -#: cps/helper.py:920 +#: cps/helper.py:924 msgid "Invalid cover file content" msgstr "잘못된 표지 파일 콘텐츠" -#: cps/helper.py:924 +#: cps/helper.py:928 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "표지 파일로 jpg/jpeg 파일만 지원됩니다" -#: cps/helper.py:995 cps/helper.py:1183 +#: cps/helper.py:999 cps/helper.py:1156 #, fuzzy msgid "Cover" msgstr "발견" -#: cps/helper.py:1032 +#: cps/helper.py:1016 msgid "Unrar binary file not found" msgstr "Unrar 바이너리 파일을 찾을 수 없습니다" -#: cps/helper.py:1043 +#: cps/helper.py:1027 #, fuzzy msgid "Error executing UnRar" msgstr "UnRar 실행 오류" -#: cps/helper.py:1051 +#: cps/helper.py:1035 msgid "Could not find the specified directory" msgstr "" -#: cps/helper.py:1054 +#: cps/helper.py:1038 msgid "Please specify a directory, not a file" msgstr "" -#: cps/helper.py:1068 +#: cps/helper.py:1052 #, fuzzy msgid "Calibre binaries not viable" msgstr "쓰기 권한이 없는 DB" -#: cps/helper.py:1077 +#: cps/helper.py:1061 #, python-format msgid "Missing calibre binaries: %(missing)s" msgstr "" -#: cps/helper.py:1079 +#: cps/helper.py:1063 #, fuzzy, python-format msgid "Missing executable permissions: %(missing)s" msgstr "실행 권한 누락" -#: cps/helper.py:1084 +#: cps/helper.py:1068 #, fuzzy msgid "Error excecuting Calibre" msgstr "UnRar 실행 오류" -#: cps/helper.py:1185 cps/templates/admin.html:216 +#: cps/helper.py:1158 cps/templates/admin.html:216 msgid "Queue all books for metadata backup" msgstr "메타데이터 백업을 위해 모든 도서를 대기열에 추가" @@ -932,7 +933,7 @@ msgstr "{} Stars" #: cps/remotelogin.py:62 cps/templates/layout.html:67 #: cps/templates/layout.html:101 cps/templates/login.html:4 -#: cps/templates/login.html:21 cps/web.py:1333 +#: cps/templates/login.html:21 cps/web.py:1353 msgid "Login" msgstr "로그인" @@ -948,7 +949,7 @@ msgstr "토큰이 만료되었습니다" msgid "Success! Please return to your device" msgstr "성공! 기기로 돌아가주세요" -#: cps/render_template.py:42 cps/web.py:414 +#: cps/render_template.py:42 cps/web.py:418 msgid "Books" msgstr "책" @@ -973,7 +974,7 @@ msgstr "다운로드된 책" msgid "Show Downloaded Books" msgstr "다운로드된 책 보기" -#: cps/render_template.py:59 cps/templates/index.xml:33 cps/web.py:429 +#: cps/render_template.py:59 cps/templates/index.xml:33 cps/web.py:433 msgid "Top Rated Books" msgstr "평점이 높은 책" @@ -982,7 +983,7 @@ msgid "Show Top Rated Books" msgstr "평점이 높은 책 보기" #: cps/render_template.py:62 cps/templates/index.xml:55 -#: cps/templates/index.xml:59 cps/web.py:750 +#: cps/templates/index.xml:59 cps/web.py:766 msgid "Read Books" msgstr "읽은 책" @@ -992,7 +993,7 @@ msgid "Show Read and Unread" msgstr "읽은 책과 읽지 않은 책 보기" #: cps/render_template.py:66 cps/templates/index.xml:62 -#: cps/templates/index.xml:66 cps/web.py:753 +#: cps/templates/index.xml:66 cps/web.py:769 msgid "Unread Books" msgstr "읽지 않은 책" @@ -1010,7 +1011,7 @@ msgid "Show Random Books" msgstr "무작위 추천" #: cps/render_template.py:72 cps/templates/book_table.html:67 -#: cps/templates/index.xml:84 cps/web.py:1119 +#: cps/templates/index.xml:84 cps/web.py:1135 msgid "Categories" msgstr "카테고리" @@ -1021,7 +1022,7 @@ msgstr "카테고리별 보기" #: cps/render_template.py:75 cps/templates/book_edit.html:91 #: cps/templates/book_table.html:68 cps/templates/index.xml:91 -#: cps/templates/search_form.html:70 cps/web.py:1009 cps/web.py:1021 +#: cps/templates/search_form.html:70 cps/web.py:1025 cps/web.py:1037 msgid "Series" msgstr "시리즈" @@ -1041,7 +1042,7 @@ msgid "Show Author Section" msgstr "저자별 보기" #: cps/render_template.py:82 cps/templates/book_table.html:72 -#: cps/templates/index.xml:77 cps/web.py:977 +#: cps/templates/index.xml:77 cps/web.py:993 msgid "Publishers" msgstr "출판사" @@ -1052,7 +1053,7 @@ msgstr "출판사별 보기" #: cps/render_template.py:85 cps/templates/book_table.html:70 #: cps/templates/index.xml:98 cps/templates/search_form.html:108 -#: cps/web.py:1091 +#: cps/web.py:1107 msgid "Languages" msgstr "언어" @@ -1079,7 +1080,7 @@ msgstr "파일 유형" msgid "Show File Formats Section" msgstr "파일 유형별 보기" -#: cps/render_template.py:96 cps/web.py:776 +#: cps/render_template.py:96 cps/web.py:792 msgid "Archived Books" msgstr "보관된 책" @@ -1088,7 +1089,7 @@ msgstr "보관된 책" msgid "Show Archived Books" msgstr "보관된 책 보기" -#: cps/render_template.py:101 cps/web.py:807 +#: cps/render_template.py:101 cps/web.py:823 msgid "Books List" msgstr "책 목록" @@ -1310,173 +1311,178 @@ msgstr "최신 안정 버전 %(version)s으로 업데이트하려면 아래 버 msgid "No release information available" msgstr "출시 정보가 없습니다" -#: cps/templates/index.html:6 cps/web.py:441 +#: cps/templates/index.html:6 cps/web.py:445 msgid "Discover (Random Books)" msgstr "발견(무작위 도서)" -#: cps/web.py:477 +#: cps/web.py:481 msgid "Hot Books (Most Downloaded)" msgstr "인기있는 책(가장 많이 다운로드됨)" -#: cps/web.py:508 +#: cps/web.py:512 #, python-format msgid "Downloaded books by %(user)s" msgstr "%(user)s이(가) 다운로드한 책" -#: cps/web.py:541 +#: cps/web.py:545 #, python-format msgid "Author: %(name)s" msgstr "저자: %(name)s" -#: cps/web.py:577 +#: cps/web.py:581 #, python-format msgid "Publisher: %(name)s" msgstr "출판사: %(name)s" -#: cps/web.py:605 +#: cps/web.py:609 #, python-format msgid "Series: %(serie)s" msgstr "시리즈: %(serie)s" -#: cps/web.py:620 +#: cps/web.py:623 msgid "Rating: None" msgstr "평가: 없음음" -#: cps/web.py:629 +#: cps/web.py:632 #, python-format msgid "Rating: %(rating)s stars" msgstr "평가: %(rating)s 별" -#: cps/web.py:645 +#: cps/web.py:663 #, python-format msgid "File format: %(format)s" msgstr "파일 유형: %(format)s" -#: cps/web.py:682 +#: cps/web.py:698 #, python-format msgid "Category: %(name)s" msgstr "카테고리: %(name)s" -#: cps/web.py:711 +#: cps/web.py:727 #, python-format msgid "Language: %(name)s" msgstr "언어: %(name)s" -#: cps/templates/admin.html:16 cps/web.py:949 +#: cps/templates/admin.html:16 cps/web.py:965 msgid "Downloads" msgstr "다운로드" -#: cps/web.py:1051 +#: cps/web.py:1067 msgid "Ratings list" msgstr "평점 목록" -#: cps/web.py:1078 +#: cps/web.py:1094 msgid "File formats list" msgstr "파일 유형 목록" -#: cps/web.py:1233 +#: cps/web.py:1249 #, fuzzy msgid "Please configure the SMTP mail settings first..." msgstr "먼저 SMTP 메일 설정을 구성하십시오..." -#: cps/web.py:1240 +#: cps/web.py:1256 #, python-format msgid "Success! Book queued for sending to %(eReadermail)s" msgstr "성공적으로 %(eReadermail)s에 보내기 예약이 되었습니다" -#: cps/web.py:1243 +#: cps/web.py:1259 #, python-format msgid "Oops! There was an error sending book: %(res)s" msgstr "책을 보내는 중에 오류 발생: %(res)s" -#: cps/web.py:1245 +#: cps/web.py:1261 #, fuzzy msgid "Oops! Please update your profile with a valid eReader Email." msgstr "Kindle로 보내는 유효한 이메일 주소로 프로필을 업데이트하십시오." -#: cps/web.py:1261 +#: cps/web.py:1277 msgid "Please wait one minute to register next user" msgstr "1분 이상 지난 후 다음 사용자를 등록하세요." #: cps/templates/layout.html:68 cps/templates/layout.html:102 -#: cps/templates/login.html:27 cps/templates/register.html:17 cps/web.py:1262 -#: cps/web.py:1267 cps/web.py:1271 cps/web.py:1277 cps/web.py:1297 -#: cps/web.py:1301 cps/web.py:1314 cps/web.py:1317 +#: cps/templates/login.html:27 cps/templates/register.html:17 cps/web.py:1278 +#: cps/web.py:1282 cps/web.py:1287 cps/web.py:1291 cps/web.py:1297 +#: cps/web.py:1317 cps/web.py:1321 cps/web.py:1334 cps/web.py:1337 msgid "Register" msgstr "등록" -#: cps/web.py:1266 cps/web.py:1313 +#: cps/web.py:1281 cps/web.py:1385 +#, fuzzy +msgid "Connection error to limiter backend, please contact your administrator" +msgstr "이메일 서버가 구성되지 않았습니다. 관리자에게 문의하십시오!" + +#: cps/web.py:1286 cps/web.py:1333 msgid "Oops! Email server is not configured, please contact your administrator." msgstr "이메일 서버가 구성되지 않았습니다. 관리자에게 문의하십시오!" -#: cps/web.py:1299 +#: cps/web.py:1319 msgid "Oops! Your Email is not allowed." msgstr "이메일을 등록할 수 없습니다" -#: cps/web.py:1302 +#: cps/web.py:1322 msgid "Success! Confirmation Email has been sent." msgstr "확인을 위한 이메일이 발송되었습니다." -#: cps/web.py:1348 cps/web.py:1367 +#: cps/web.py:1368 cps/web.py:1391 #, fuzzy msgid "Cannot activate LDAP authentication" msgstr "LDAP 인증을 활성화할 수 없습니다" -#: cps/web.py:1361 +#: cps/web.py:1381 msgid "Please wait one minute before next login" msgstr "1분 이상 지난 후 로그인을 하세요." -#: cps/web.py:1376 +#: cps/web.py:1400 #, fuzzy, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "다음 사용자로 로그인했습니다: '%(nickname)s'" -#: cps/web.py:1383 +#: cps/web.py:1407 #, fuzzy, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgstr "대체 로그인: '%(nickname)s', LDAP 서버에 연결할 수 없음 또는 사용자를 알 수 없음" -#: cps/web.py:1388 +#: cps/web.py:1412 #, fuzzy, python-format msgid "Could not login: %(message)s" msgstr "로그인 실패: %(message)s" -#: cps/web.py:1392 cps/web.py:1417 +#: cps/web.py:1416 cps/web.py:1441 #, fuzzy msgid "Wrong Username or Password" msgstr "잘못된 사용자명 또는 비밀번호" -#: cps/web.py:1399 +#: cps/web.py:1423 #, fuzzy msgid "New Password was sent to your email address" msgstr "새 비밀번호가 이메일로 전송되었습니다" -#: cps/web.py:1403 +#: cps/web.py:1427 #, fuzzy msgid "An unknown error occurred. Please try again later." msgstr "알 수없는 오류가 발생했습니다. 나중에 다시 시도 해주십시오." -#: cps/web.py:1405 +#: cps/web.py:1429 #, fuzzy msgid "Please enter valid username to reset password" msgstr "비밀번호를 재설정하려면 유효한 사용자 이름을 입력하십시오" -#: cps/web.py:1413 +#: cps/web.py:1437 #, fuzzy, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "다음 사용자로 로그인했습니다: '%(nickname)s'" -#: cps/web.py:1471 cps/web.py:1521 +#: cps/web.py:1495 cps/web.py:1545 #, python-format msgid "%(name)s's Profile" msgstr "%(name)s 프로필" -#: cps/web.py:1487 +#: cps/web.py:1511 #, fuzzy msgid "Success! Profile Updated" msgstr "프로필이 업데이트 됨" -#: cps/web.py:1491 +#: cps/web.py:1515 msgid "Oops! An account already exists for this Email." msgstr "등록되어 있는 이메일 주소입니다" @@ -1489,41 +1495,41 @@ msgstr "인증 정보가 포함된 유효한 gmail.json 파일을 찾을 수 없 msgid "%(book)s send to E-Reader" msgstr "%(book)s을 킨들로 보내기" -#: cps/tasks/convert.py:166 +#: cps/tasks/convert.py:167 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "Calibre ebook-convert %(tool)s을(를) 찾을 수 없습니다" -#: cps/tasks/convert.py:200 +#: cps/tasks/convert.py:201 #, python-format msgid "%(format)s format not found on disk" msgstr "%(format)s 형식을 찾을 수 없습니다" -#: cps/tasks/convert.py:204 +#: cps/tasks/convert.py:205 msgid "Ebook converter failed with unknown error" msgstr "알 수 없는 오류로 인해 전자책 변환이 실패했습니다" -#: cps/tasks/convert.py:223 +#: cps/tasks/convert.py:224 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "Kepubify 변환 실패: %(error)s" -#: cps/tasks/convert.py:244 +#: cps/tasks/convert.py:245 #, python-format msgid "Converted file not found or more than one file in folder %(folder)s" msgstr "변환된 파일을 찾을 수 없거나 %(folder)s 폴더에 하나 이상의 파일이 존재합니다" -#: cps/tasks/convert.py:279 +#: cps/tasks/convert.py:287 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "\"전자책 변환 실패: %(error)s" -#: cps/tasks/convert.py:302 +#: cps/tasks/convert.py:310 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "오류로 인한 Calibre 실패: %(error)s" -#: cps/tasks/convert.py:307 +#: cps/tasks/convert.py:315 msgid "Convert" msgstr "변환" @@ -1531,7 +1537,7 @@ msgstr "변환" msgid "Reconnecting Calibre database" msgstr "Calibre DB를 다시 연결합니다." -#: cps/tasks/mail.py:269 +#: cps/tasks/mail.py:278 msgid "E-mail" msgstr "이메일일" @@ -1810,12 +1816,12 @@ 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:414 -#: cps/templates/config_view_edit.html:175 cps/templates/modal_dialogs.html:64 -#: cps/templates/modal_dialogs.html:99 cps/templates/modal_dialogs.html:117 -#: cps/templates/modal_dialogs.html:135 cps/templates/schedule_edit.html:45 -#: cps/templates/shelf_edit.html:27 cps/templates/tasks.html:46 -#: cps/templates/user_edit.html:144 +#: cps/templates/config_db.html:66 cps/templates/config_edit.html:428 +#: 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 +#: cps/templates/schedule_edit.html:45 cps/templates/shelf_edit.html:27 +#: cps/templates/tasks.html:46 cps/templates/user_edit.html:144 msgid "Cancel" msgstr "취소" @@ -1996,7 +2002,7 @@ msgid "Fetch Metadata" msgstr "메타정보 가져오기" #: cps/templates/book_edit.html:213 cps/templates/config_db.html:65 -#: cps/templates/config_edit.html:413 cps/templates/config_view_edit.html:174 +#: cps/templates/config_edit.html:427 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 @@ -2161,7 +2167,7 @@ msgid "Location of Calibre Database" msgstr "Calibre Database 위치" #: cps/templates/config_db.html:21 -msgid "Separate Book files from Library (Highly experimental, might not work at all)" +msgid "Separate Book Files from Library" msgstr "" #: cps/templates/config_db.html:34 @@ -2245,7 +2251,7 @@ msgid "Convert non-English characters in title and author while saving to disk" msgstr "제목과 저자가 영어가 아닌 경우 원어로 저장하기" #: cps/templates/config_edit.html:108 -msgid "Embed Metadata to Ebook File on Download and Conversion (needs Calibre/Kepubify binaries)" +msgid "Embed Metadata to Ebook File on Download/Conversion/e-mail (needs Calibre/Kepubify binaries)" msgstr "" #: cps/templates/config_edit.html:112 @@ -2469,40 +2475,52 @@ msgstr "OAuth 설정" msgid "Limit failed login attempts" msgstr "로그인 시도 제한" -#: cps/templates/config_edit.html:376 +#: cps/templates/config_edit.html:377 +msgid "Configure Backend for Limiter" +msgstr "" + +#: cps/templates/config_edit.html:381 +msgid "Options for Limiter" +msgstr "" + +#: cps/templates/config_edit.html:386 msgid "Session protection" msgstr "세션 보호" -#: cps/templates/config_edit.html:378 +#: cps/templates/config_edit.html:388 msgid "Basic" msgstr "기본" -#: cps/templates/config_edit.html:379 +#: cps/templates/config_edit.html:389 msgid "Strong" msgstr "강함함" -#: cps/templates/config_edit.html:384 +#: cps/templates/config_edit.html:394 #, fuzzy msgid "User Password policy" msgstr "사용자 비밀번호 정책" -#: cps/templates/config_edit.html:388 +#: cps/templates/config_edit.html:398 msgid "Minimum password length" msgstr "최소 비밀번호 길이" -#: cps/templates/config_edit.html:393 +#: cps/templates/config_edit.html:403 msgid "Enforce number" msgstr "반드시 숫자 입력" -#: cps/templates/config_edit.html:397 +#: cps/templates/config_edit.html:407 msgid "Enforce lowercase characters" msgstr "반드시 소문자 입력" -#: cps/templates/config_edit.html:401 +#: cps/templates/config_edit.html:411 msgid "Enforce uppercase characters" msgstr "반드시 대문자 입력" -#: cps/templates/config_edit.html:405 +#: cps/templates/config_edit.html:415 +msgid "Enforce characters (needed For Chinese/Japanese/Korean Characters)" +msgstr "" + +#: cps/templates/config_edit.html:419 msgid "Enforce special characters" msgstr "반드시 특수문자 입력력" @@ -2624,47 +2642,47 @@ msgstr "책 %(index)s의 %(range)s" msgid "Published" msgstr "출간일" -#: cps/templates/detail.html:250 cps/templates/listenmp3.html:158 +#: cps/templates/detail.html:251 cps/templates/listenmp3.html:158 msgid "Mark As Unread" msgstr "읽지 않은 상태로 표시" -#: cps/templates/detail.html:251 cps/templates/listenmp3.html:158 +#: cps/templates/detail.html:252 cps/templates/listenmp3.html:158 msgid "Mark As Read" msgstr "읽은 상태로 표시" -#: cps/templates/detail.html:253 cps/templates/listenmp3.html:159 +#: cps/templates/detail.html:254 cps/templates/listenmp3.html:159 msgid "Read" msgstr "읽기" -#: cps/templates/detail.html:263 cps/templates/listenmp3.html:166 +#: cps/templates/detail.html:264 cps/templates/listenmp3.html:166 msgid "Restore from archive" msgstr "아카이브에서 복원" -#: cps/templates/detail.html:264 cps/templates/listenmp3.html:166 +#: cps/templates/detail.html:265 cps/templates/listenmp3.html:166 msgid "Add to archive" msgstr "아카이브에 추가" -#: cps/templates/detail.html:266 cps/templates/listenmp3.html:167 +#: cps/templates/detail.html:267 cps/templates/listenmp3.html:167 msgid "Archived" msgstr "보관됨" -#: cps/templates/detail.html:277 cps/templates/listenmp3.html:177 +#: cps/templates/detail.html:278 cps/templates/listenmp3.html:177 msgid "Description:" msgstr "설명:" -#: cps/templates/detail.html:292 cps/templates/listenmp3.html:190 +#: cps/templates/detail.html:293 cps/templates/listenmp3.html:190 #: cps/templates/search.html:16 msgid "Add to shelf" msgstr "서재에 추가" -#: cps/templates/detail.html:304 cps/templates/detail.html:323 +#: cps/templates/detail.html:305 cps/templates/detail.html:324 #: cps/templates/feed.xml:81 cps/templates/layout.html:154 #: cps/templates/listenmp3.html:201 cps/templates/listenmp3.html:218 #: cps/templates/search.html:22 msgid "(Public)" msgstr "(공개)" -#: cps/templates/detail.html:339 +#: cps/templates/detail.html:340 msgid "Edit Metadata" msgstr "메타정보보 편집" diff --git a/cps/translations/nl/LC_MESSAGES/messages.mo b/cps/translations/nl/LC_MESSAGES/messages.mo index 0337ffb2..a40333f4 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 3b12e5a7..7e0ec4e6 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-02-10 10:06+0100\n" +"POT-Creation-Date: 2024-04-27 07:20+0200\n" "PO-Revision-Date: 2023-12-20 22:00+0100\n" "Last-Translator: Michiel Cornelissen \n" "Language: nl\n" @@ -23,501 +23,501 @@ msgstr "" msgid "Statistics" msgstr "Statistieken" -#: cps/admin.py:149 +#: cps/admin.py:150 #, fuzzy msgid "Server restarted, please reload page." msgstr "De server is herstart, vernieuw de pagina" -#: cps/admin.py:151 +#: cps/admin.py:152 #, fuzzy msgid "Performing Server shutdown, please close window." msgstr "Bezig met het afsluiten van de server, sluit het venster" -#: cps/admin.py:159 +#: cps/admin.py:160 msgid "Success! Database Reconnected" msgstr "Gelukt! Database opnieuw verbonden" -#: cps/admin.py:162 +#: cps/admin.py:163 msgid "Unknown command" msgstr "Onbekende opdracht" -#: cps/admin.py:173 +#: cps/admin.py:174 #, fuzzy 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:206 cps/editbooks.py:589 cps/editbooks.py:591 -#: cps/editbooks.py:629 cps/editbooks.py:646 cps/editbooks.py:1262 +#: cps/admin.py:207 cps/editbooks.py:590 cps/editbooks.py:592 +#: cps/editbooks.py:630 cps/editbooks.py:647 cps/editbooks.py:1263 #: cps/updater.py:613 cps/uploader.py:93 cps/uploader.py:102 msgid "Unknown" msgstr "Onbekend" -#: cps/admin.py:231 +#: cps/admin.py:232 msgid "Admin page" msgstr "Systeembeheer" -#: cps/admin.py:251 +#: cps/admin.py:252 msgid "Basic Configuration" msgstr "Basisconfiguratie" -#: cps/admin.py:289 +#: cps/admin.py:290 msgid "UI Configuration" msgstr "Uiterlijk aanpassen" -#: cps/admin.py:323 cps/templates/admin.html:51 +#: cps/admin.py:324 cps/templates/admin.html:51 #, fuzzy msgid "Edit Users" msgstr "Systeembeheerder" -#: cps/admin.py:367 cps/opds.py:506 cps/templates/grid.html:14 +#: cps/admin.py:368 cps/opds.py:506 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "Alles" -#: cps/admin.py:394 cps/admin.py:1405 +#: cps/admin.py:395 cps/admin.py:1417 msgid "User not found" msgstr "Gebruiker niet gevonden" -#: cps/admin.py:408 +#: cps/admin.py:409 msgid "{} users deleted successfully" msgstr "{} gebruikers succesvol verwijderd" -#: cps/admin.py:431 cps/templates/config_view_edit.html:133 +#: cps/admin.py:432 cps/templates/config_view_edit.html:133 #: cps/templates/user_edit.html:45 cps/templates/user_table.html:81 msgid "Show All" msgstr "Alle talen" -#: cps/admin.py:452 cps/admin.py:458 +#: cps/admin.py:453 cps/admin.py:459 msgid "Malformed request" msgstr "Misvormd verzoek" -#: cps/admin.py:470 cps/admin.py:2033 +#: cps/admin.py:471 cps/admin.py:2048 msgid "Guest Name can't be changed" msgstr "Gast naam kan niet worden veranderd" -#: cps/admin.py:482 +#: cps/admin.py:483 msgid "Guest can't have this role" msgstr "Gast kan deze rol niet hebben" -#: cps/admin.py:494 cps/admin.py:1987 +#: cps/admin.py:495 cps/admin.py:2002 msgid "No admin user remaining, can't remove admin role" msgstr "Kan systeembeheerder rol niet verwijderen van de laatste systeembeheerder" -#: cps/admin.py:498 cps/admin.py:512 +#: cps/admin.py:499 cps/admin.py:513 msgid "Value has to be true or false" msgstr "Waarde moet Waar of Onwaar zijn" -#: cps/admin.py:500 +#: cps/admin.py:501 msgid "Invalid role" msgstr "Ongeldige rol" -#: cps/admin.py:504 +#: cps/admin.py:505 msgid "Guest can't have this view" msgstr "Gast kan dit niet bekijken" -#: cps/admin.py:514 +#: cps/admin.py:515 msgid "Invalid view" msgstr "Ongeldige waarde" -#: cps/admin.py:517 +#: cps/admin.py:518 msgid "Guest's Locale is determined automatically and can't be set" msgstr "Gasts locale is automatisch bepaald en kan niet handmatig worden ingesteld" -#: cps/admin.py:521 +#: cps/admin.py:522 msgid "No Valid Locale Given" msgstr "Geen geldige locale is opgegeven" -#: cps/admin.py:532 +#: cps/admin.py:533 msgid "No Valid Book Language Given" msgstr "Geen geldige boek taal is opgegeven" -#: cps/admin.py:534 cps/editbooks.py:455 +#: cps/admin.py:535 cps/editbooks.py:456 msgid "Parameter not found" msgstr "Parameter is niet gevonden" -#: cps/admin.py:571 +#: cps/admin.py:572 msgid "Invalid Read Column" msgstr "Ongeldige gelezen kolom" -#: cps/admin.py:577 +#: cps/admin.py:578 msgid "Invalid Restricted Column" msgstr "Ongeldige beperkte kolom" -#: cps/admin.py:597 cps/admin.py:1858 +#: cps/admin.py:598 cps/admin.py:1873 msgid "Calibre-Web configuration updated" msgstr "Calibre-Web-configuratie bijgewerkt" -#: cps/admin.py:609 +#: cps/admin.py:610 msgid "Do you really want to delete the Kobo Token?" msgstr "Wil je je Kobo Token echt verwijderen?" -#: cps/admin.py:611 +#: cps/admin.py:612 msgid "Do you really want to delete this domain?" msgstr "Wil je dit domein echt verwijderen?" -#: cps/admin.py:613 +#: cps/admin.py:614 msgid "Do you really want to delete this user?" msgstr "Wil je deze gebruiker echt verwijderen?" -#: cps/admin.py:615 +#: cps/admin.py:616 msgid "Are you sure you want to delete this shelf?" msgstr "Weet je zeker dat je deze boekenplank wilt verwijderen?" -#: cps/admin.py:617 +#: cps/admin.py:618 #, fuzzy msgid "Are you sure you want to change locales of selected user(s)?" msgstr "Weet je zeker dat je de locales van de geselecteerde gebruiker(s) wil veranderen?" -#: cps/admin.py:619 +#: cps/admin.py:620 msgid "Are you sure you want to change visible book languages for selected user(s)?" msgstr "Weet je zeker dat je de zichtbare talen voor de geselecteerde gebruiker(s) wil veranderen?" -#: cps/admin.py:621 +#: cps/admin.py:622 msgid "Are you sure you want to change the selected role for the selected user(s)?" msgstr "Weet je zeker dat je de geselecteerde rol van de geselecteerde gebruiker(s) wil veranderen?" -#: cps/admin.py:623 +#: cps/admin.py:624 #, fuzzy msgid "Are you sure you want to change the selected restrictions for the selected user(s)?" msgstr "Weet je zeker dat je de geselecteerde beperkingen voor de geselecteerde gebruikers(s) wil verwijderen?" -#: cps/admin.py:625 +#: cps/admin.py:626 msgid "Are you sure you want to change the selected visibility restrictions for the selected user(s)?" msgstr "Weet je zeker dat je de geselecteerde zichtbaarheidsbeperkingen voor de geselecteerde gebruiker(s) wil veranderen?" -#: cps/admin.py:628 +#: cps/admin.py:629 #, fuzzy msgid "Are you sure you want to change shelf sync behavior for the selected user(s)?" msgstr "Weet je zeker dat je de synchronisatiegedrag van boekenplanken voor de geselecteerde gebruiker(s) wil veranderen?" -#: cps/admin.py:630 +#: cps/admin.py:631 #, fuzzy msgid "Are you sure you want to change Calibre library location?" msgstr "Weet je zeker dat je de locatie van de Calibre-bibliotheek wil veranderen?" -#: cps/admin.py:632 +#: cps/admin.py:633 msgid "Calibre-Web will search for updated Covers and update Cover Thumbnails, this may take a while?" msgstr "Calibre-web gaat zoeken naar bijgewerkte omslagen en miniaturen bijwerken, dit kan even duren?" -#: cps/admin.py:635 +#: cps/admin.py:636 msgid "Are you sure you want delete Calibre-Web's sync database to force a full sync with your Kobo Reader?" msgstr "Weet u zeker dat u de volledige Calibre-Web synchronisatiedatabase wilt verwijderen om een volledige synchronisatie met uw Kobo Reader te forceren?" -#: cps/admin.py:878 cps/admin.py:884 cps/admin.py:894 cps/admin.py:904 +#: cps/admin.py:879 cps/admin.py:885 cps/admin.py:895 cps/admin.py:905 #: cps/templates/modal_dialogs.html:29 cps/templates/user_table.html:41 #: cps/templates/user_table.html:58 msgid "Deny" msgstr "Weigeren" -#: cps/admin.py:880 cps/admin.py:886 cps/admin.py:896 cps/admin.py:906 +#: cps/admin.py:881 cps/admin.py:887 cps/admin.py:897 cps/admin.py:907 #: cps/templates/modal_dialogs.html:28 cps/templates/user_table.html:44 #: cps/templates/user_table.html:61 msgid "Allow" msgstr "Toestaan" -#: cps/admin.py:921 +#: cps/admin.py:940 msgid "{} sync entries deleted" msgstr "{} synchronisatie objecten verwijderd" -#: cps/admin.py:969 +#: cps/admin.py:981 msgid "Tag not found" msgstr "Tag niet gevonden" -#: cps/admin.py:981 +#: cps/admin.py:993 msgid "Invalid Action" msgstr "Ongeldige actie" -#: cps/admin.py:1111 +#: cps/admin.py:1123 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "client_secrets.json is niet geconfigureerd voor webapplicatie" -#: cps/admin.py:1156 +#: cps/admin.py:1168 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:1162 +#: cps/admin.py:1174 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:1196 +#: cps/admin.py:1208 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:1202 +#: cps/admin.py:1214 msgid "Please Enter a LDAP Service Account and Password" msgstr "Voer een geldig LDAP Service Account en wachtwoord in" -#: cps/admin.py:1205 +#: cps/admin.py:1217 msgid "Please Enter a LDAP Service Account" msgstr "Voer een LDAP Service Account in" -#: cps/admin.py:1210 +#: cps/admin.py:1222 #, 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:1212 +#: cps/admin.py:1224 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "LDAP Groep Object Filter heeft een niet-gebalanceerd haakje" -#: cps/admin.py:1216 +#: cps/admin.py:1228 #, 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:1218 +#: cps/admin.py:1230 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "LDAP Gebruiker Filter heeft een niet-gebalanceerd haakje" -#: cps/admin.py:1225 +#: cps/admin.py:1237 #, 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:1227 +#: cps/admin.py:1239 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "LDAP Lid Gebruiker Filter heeft een niet-gebalanceerd haakje" -#: cps/admin.py:1234 +#: cps/admin.py:1246 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:1265 cps/templates/admin.html:53 +#: cps/admin.py:1277 cps/templates/admin.html:53 msgid "Add New User" msgstr "Gebruiker toevoegen" -#: cps/admin.py:1274 cps/templates/admin.html:100 +#: cps/admin.py:1286 cps/templates/admin.html:100 msgid "Edit Email Server Settings" msgstr "SMTP-instellingen bewerken" -#: cps/admin.py:1293 +#: cps/admin.py:1305 msgid "Success! Gmail Account Verified." msgstr "Gelukt! Gmail account geverifieerd." -#: cps/admin.py:1313 cps/admin.py:1316 cps/admin.py:1698 cps/admin.py:1842 -#: cps/admin.py:1940 cps/admin.py:2061 cps/editbooks.py:241 -#: cps/editbooks.py:317 cps/editbooks.py:1224 cps/shelf.py:90 cps/shelf.py:150 +#: cps/admin.py:1325 cps/admin.py:1328 cps/admin.py:1710 cps/admin.py:1857 +#: cps/admin.py:1955 cps/admin.py:2076 cps/editbooks.py:242 +#: cps/editbooks.py:318 cps/editbooks.py:1225 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:149 cps/web.py:1496 +#: cps/shelf.py:468 cps/tasks/convert.py:150 cps/web.py:1520 #, python-format msgid "Oops! Database Error: %(error)s." msgstr "Database fout: %(error)s." -#: cps/admin.py:1323 +#: cps/admin.py:1335 #, 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:1326 +#: cps/admin.py:1338 #, 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:1328 +#: cps/admin.py:1340 msgid "Please configure your e-mail address first..." msgstr "Gelieve eerst je e-mail adres configureren..." -#: cps/admin.py:1330 +#: cps/admin.py:1342 msgid "Email Server Settings updated" msgstr "E-mailserver-instellingen bijgewerkt" -#: cps/admin.py:1353 cps/templates/admin.html:195 +#: cps/admin.py:1365 cps/templates/admin.html:195 msgid "Edit Scheduled Tasks Settings" msgstr "Bewerk instellingen van geplande taken" -#: cps/admin.py:1365 +#: cps/admin.py:1377 msgid "Invalid start time for task specified" msgstr "De starttijd van de taak is ongeldig" -#: cps/admin.py:1370 +#: cps/admin.py:1382 msgid "Invalid duration for task specified" msgstr "De duur van de taak is ongeldig" -#: cps/admin.py:1380 +#: cps/admin.py:1392 msgid "Scheduled tasks settings updated" msgstr "Instellingen van geplande taken bijgewerkt" -#: cps/admin.py:1390 cps/admin.py:1439 cps/admin.py:2057 cps/web.py:1296 +#: cps/admin.py:1402 cps/admin.py:1451 cps/admin.py:2072 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:1394 +#: cps/admin.py:1406 msgid "Settings DB is not Writeable" msgstr "Instellingen database is niet schrijfbaar." -#: cps/admin.py:1424 cps/admin.py:2049 +#: cps/admin.py:1436 cps/admin.py:2064 #, python-format msgid "Edit User %(nick)s" msgstr "Gebruiker '%(nick)s' bewerken" -#: cps/admin.py:1436 +#: cps/admin.py:1448 #, fuzzy, python-format msgid "Success! Password for user %(user)s reset" msgstr "Wachtwoord voor gebruiker %(user)s is hersteld" -#: cps/admin.py:1442 +#: cps/admin.py:1454 #, fuzzy msgid "Oops! Please configure the SMTP mail settings." msgstr "Stel eerst SMTP-mail in..." -#: cps/admin.py:1453 +#: cps/admin.py:1465 msgid "Logfile viewer" msgstr "Logbestand lezer" -#: cps/admin.py:1519 +#: cps/admin.py:1531 msgid "Requesting update package" msgstr "Update opvragen" -#: cps/admin.py:1520 +#: cps/admin.py:1532 msgid "Downloading update package" msgstr "Update downloaden" -#: cps/admin.py:1521 +#: cps/admin.py:1533 msgid "Unzipping update package" msgstr "Update uitpakken" -#: cps/admin.py:1522 +#: cps/admin.py:1534 msgid "Replacing files" msgstr "Update toepassen" -#: cps/admin.py:1523 +#: cps/admin.py:1535 msgid "Database connections are closed" msgstr "Databaseverbindingen zijn gesloten" -#: cps/admin.py:1524 +#: cps/admin.py:1536 msgid "Stopping server" msgstr "Bezig met stoppen van Calibre-Web" -#: cps/admin.py:1525 +#: cps/admin.py:1537 msgid "Update finished, please press okay and reload page" msgstr "Update voltooid, klik op 'Oké' en vernieuw de pagina" -#: cps/admin.py:1526 cps/admin.py:1527 cps/admin.py:1528 cps/admin.py:1529 -#: cps/admin.py:1530 cps/admin.py:1531 +#: cps/admin.py:1538 cps/admin.py:1539 cps/admin.py:1540 cps/admin.py:1541 +#: cps/admin.py:1542 cps/admin.py:1543 msgid "Update failed:" msgstr "Update mislukt:" -#: cps/admin.py:1526 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 +#: cps/admin.py:1538 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 msgid "HTTP Error" msgstr "HTTP-fout" -#: cps/admin.py:1527 cps/updater.py:391 cps/updater.py:628 +#: cps/admin.py:1539 cps/updater.py:391 cps/updater.py:628 msgid "Connection error" msgstr "Verbindingsfout" -#: cps/admin.py:1528 cps/updater.py:393 cps/updater.py:630 +#: cps/admin.py:1540 cps/updater.py:393 cps/updater.py:630 msgid "Timeout while establishing connection" msgstr "Time-out tijdens maken van verbinding" -#: cps/admin.py:1529 cps/updater.py:395 cps/updater.py:632 +#: cps/admin.py:1541 cps/updater.py:395 cps/updater.py:632 msgid "General error" msgstr "Algemene fout" -#: cps/admin.py:1530 +#: cps/admin.py:1542 #, 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:1531 +#: cps/admin.py:1543 msgid "Files could not be replaced during update" msgstr "Bestanden kunnen niet vervangen worden tijdens een update" -#: cps/admin.py:1555 +#: cps/admin.py:1567 #, fuzzy msgid "Failed to extract at least One LDAP User" msgstr "Mislukt om minstens een LDAP gebruiker aan te maken" -#: cps/admin.py:1600 +#: cps/admin.py:1612 msgid "Failed to Create at Least One LDAP User" msgstr "Het is niet gelukt tenminste een LDAP gebruiker aan te maken" -#: cps/admin.py:1613 +#: cps/admin.py:1625 #, python-format msgid "Error: %(ldaperror)s" msgstr "Fout: %(ldaperror)s" -#: cps/admin.py:1617 +#: cps/admin.py:1629 msgid "Error: No user returned in response of LDAP server" msgstr "Fout: No user returned in response of LDAP server" -#: cps/admin.py:1650 +#: 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:1652 +#: cps/admin.py:1664 msgid "{} User Successfully Imported" msgstr "{} Gebruiker succesvol geïmporteerd" -#: cps/admin.py:1710 +#: 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:1730 +#: cps/admin.py:1742 msgid "DB is not Writeable" msgstr "Kan niet schrijven naar database" -#: cps/admin.py:1746 +#: 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:1750 +#: 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:1829 +#: cps/admin.py:1842 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:1881 +#: cps/admin.py:1896 #, fuzzy msgid "Database Settings updated" msgstr "E-mailserver-instellingen bijgewerkt" -#: cps/admin.py:1889 +#: cps/admin.py:1904 #, fuzzy msgid "Database Configuration" msgstr "Databaseconfiguratie" -#: cps/admin.py:1904 cps/web.py:1270 +#: cps/admin.py:1919 cps/web.py:1290 msgid "Oops! Please complete all fields." msgstr "Vul alle velden in!" -#: cps/admin.py:1913 +#: cps/admin.py:1928 msgid "E-mail is not from valid domain" msgstr "Het e-mailadres bevat geen geldige domeinnaam" -#: cps/admin.py:1919 +#: cps/admin.py:1934 msgid "Add new user" msgstr "Gebruiker toevoegen" -#: cps/admin.py:1930 +#: cps/admin.py:1945 #, python-format msgid "User '%(user)s' created" msgstr "Gebruiker '%(user)s' aangemaakt" -#: cps/admin.py:1936 +#: cps/admin.py:1951 #, 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:1966 +#: cps/admin.py:1981 #, python-format msgid "User '%(nick)s' deleted" msgstr "Gebruiker '%(nick)s' verwijderd" -#: cps/admin.py:1969 +#: cps/admin.py:1984 msgid "Can't delete Guest User" msgstr "Kan Gast gebruiker niet verwijderen" -#: cps/admin.py:1972 +#: cps/admin.py:1987 msgid "No admin user remaining, can't delete user" msgstr "Kan laatste systeembeheerder niet verwijderen" -#: cps/admin.py:2027 cps/web.py:1445 +#: cps/admin.py:2042 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:2053 +#: cps/admin.py:2068 #, python-format msgid "User '%(nick)s' updated" msgstr "Gebruiker '%(nick)s' bijgewerkt" @@ -530,122 +530,123 @@ msgstr "niet geïnstalleerd" msgid "Execution permissions missing" msgstr "Kan programma niet uitvoeren" -#: cps/db.py:752 cps/search.py:137 cps/web.py:731 +#: cps/db.py:752 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:993 cps/templates/config_edit.html:208 +#: cps/db.py:992 cps/templates/config_edit.html:208 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 -#: cps/web.py:558 cps/web.py:592 cps/web.py:665 cps/web.py:692 cps/web.py:973 -#: cps/web.py:1003 cps/web.py:1048 cps/web.py:1076 cps/web.py:1115 +#: 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 +#: cps/web.py:1131 msgid "None" msgstr "Geen" -#: cps/editbooks.py:122 cps/editbooks.py:910 cps/web.py:525 cps/web.py:1537 -#: cps/web.py:1581 cps/web.py:1626 +#: cps/editbooks.py:123 cps/editbooks.py:911 cps/web.py:529 cps/web.py:1561 +#: cps/web.py:1605 cps/web.py:1650 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:166 cps/editbooks.py:1245 +#: cps/editbooks.py:167 cps/editbooks.py:1246 msgid "User has no rights to upload cover" msgstr "Gebruiker mist rechten om de omslag te uploaden" -#: cps/editbooks.py:186 cps/editbooks.py:731 +#: cps/editbooks.py:187 cps/editbooks.py:732 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "Identificatoren zijn niet hoofdlettergevoelig, overschrijf huidige identificatoren" -#: cps/editbooks.py:228 +#: cps/editbooks.py:229 msgid "Metadata successfully updated" msgstr "De metagegevens zijn bijgewerkt" -#: cps/editbooks.py:246 +#: cps/editbooks.py:247 msgid "Error editing book: {}" msgstr "Fout tijdens bijwerken van boek: {}" -#: cps/editbooks.py:303 +#: cps/editbooks.py:304 #, python-format msgid "File %(file)s uploaded" msgstr "Bestand %(file)s geüpload" -#: cps/editbooks.py:331 +#: cps/editbooks.py:332 msgid "Source or destination format for conversion missing" msgstr "Bron- of doelformaat ontbreekt voor conversie" -#: cps/editbooks.py:339 +#: cps/editbooks.py:340 #, 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:343 +#: cps/editbooks.py:344 #, 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:650 +#: cps/editbooks.py:651 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:705 cps/editbooks.py:1037 +#: cps/editbooks.py:706 cps/editbooks.py:1038 #, fuzzy, python-format msgid "'%(langname)s' is not a valid language" msgstr "%(langname)s is geen geldige taal" -#: cps/editbooks.py:743 cps/editbooks.py:1185 +#: cps/editbooks.py:744 cps/editbooks.py:1186 #, 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:747 cps/editbooks.py:1189 +#: cps/editbooks.py:748 cps/editbooks.py:1190 msgid "File to be uploaded must have an extension" msgstr "Het te uploaden bestand moet voorzien zijn van een extensie" -#: cps/editbooks.py:755 +#: cps/editbooks.py:756 #, 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:775 +#: cps/editbooks.py:776 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "Omslag %(file)s niet verplaatst: %(error)s" -#: cps/editbooks.py:832 cps/editbooks.py:834 +#: cps/editbooks.py:833 cps/editbooks.py:835 msgid "Book Format Successfully Deleted" msgstr "Het boekformaat is verwijderd" -#: cps/editbooks.py:841 cps/editbooks.py:843 +#: cps/editbooks.py:842 cps/editbooks.py:844 msgid "Book Successfully Deleted" msgstr "Het boek is verwijderd" -#: cps/editbooks.py:895 +#: cps/editbooks.py:896 msgid "You are missing permissions to delete books" msgstr "U mist rechten om boeken te verwijderen" -#: cps/editbooks.py:945 +#: cps/editbooks.py:946 msgid "edit metadata" msgstr "metagegevens bewerken" -#: cps/editbooks.py:994 +#: cps/editbooks.py:995 #, python-format msgid "%(seriesindex)s is not a valid number, skipping" msgstr "%(seriesindex)s is geen geldig nummer, sla het over" -#: cps/editbooks.py:1180 +#: cps/editbooks.py:1181 msgid "User has no rights to upload additional file formats" msgstr "Gebruiker mist rechten om extra bestandsformaten te uploaden" -#: cps/editbooks.py:1201 +#: cps/editbooks.py:1202 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "Kan de locatie '%(path)s' niet aanmaken (niet gemachtigd)." -#: cps/editbooks.py:1206 +#: cps/editbooks.py:1207 #, python-format msgid "Failed to store file %(file)s." msgstr "Kan %(file)s niet opslaan." -#: cps/editbooks.py:1230 +#: cps/editbooks.py:1231 #, python-format msgid "File format %(ext)s added to %(book)s" msgstr "Bestandsformaat %(ext)s toegevoegd aan %(book)s" @@ -658,208 +659,208 @@ msgstr "Het instellen van Google Drive is niet afgerond, heractiveer Google Driv 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" -#: cps/helper.py:84 +#: cps/helper.py:86 #, python-format 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:91 cps/tasks/convert.py:86 +#: cps/helper.py:93 cps/tasks/convert.py:86 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "%(format)s niet aangetroffen op Google Drive: %(fn)s" -#: cps/helper.py:96 +#: cps/helper.py:98 #, python-format msgid "%(format)s not found: %(fn)s" msgstr "%(format)s niet gevonden %(fn)s" -#: cps/helper.py:101 cps/helper.py:226 cps/templates/detail.html:58 +#: cps/helper.py:103 cps/helper.py:228 cps/templates/detail.html:58 #, fuzzy msgid "Send to eReader" msgstr "Versturen naar Kindle" -#: cps/helper.py:102 cps/helper.py:120 cps/helper.py:228 +#: cps/helper.py:104 cps/helper.py:122 cps/helper.py:230 #, fuzzy msgid "This Email has been sent via Calibre-Web." msgstr "Deze e-mail is verstuurd via Calibre-Web." -#: cps/helper.py:118 +#: cps/helper.py:120 #, fuzzy msgid "Calibre-Web Test Email" msgstr "Calibre-Web - test-e-mail" -#: cps/helper.py:119 +#: cps/helper.py:121 #, fuzzy msgid "Test Email" msgstr "Test-e-mail" -#: cps/helper.py:136 +#: cps/helper.py:138 msgid "Get Started with Calibre-Web" msgstr "Aan de slag met Calibre-Web" -#: cps/helper.py:141 +#: cps/helper.py:143 #, fuzzy, python-format msgid "Registration Email for user: %(name)s" msgstr "Registratie-e-mailadres van gebruiker: %(name)s" -#: cps/helper.py:152 cps/helper.py:158 +#: cps/helper.py:154 cps/helper.py:160 #, fuzzy, python-format msgid "Convert %(orig)s to %(format)s and send to eReader" msgstr "%(orig)s converteren naar %(format)s en versturen naar Kindle" -#: cps/helper.py:177 cps/helper.py:181 cps/helper.py:185 +#: cps/helper.py:179 cps/helper.py:183 cps/helper.py:187 #, fuzzy, python-format msgid "Send %(format)s to eReader" msgstr "%(format)s versturen naar Kindle" -#: cps/helper.py:225 +#: cps/helper.py:227 #, fuzzy, python-format msgid "%(book)s send to eReader" msgstr "%(book)s verzonden naar Kindle" -#: cps/helper.py:230 +#: cps/helper.py:232 msgid "The requested file could not be read. Maybe wrong permissions?" msgstr "Het opgevraagde bestand kan niet worden gelezen. Ben je hiertoe gemachtigd?" -#: cps/helper.py:345 +#: cps/helper.py:347 msgid "Read status could not set: {}" msgstr "Gelezen/ongelezen status kan niet aangepast worden: {}" -#: cps/helper.py:368 +#: cps/helper.py:370 #, python-format msgid "Deleting bookfolder for book %(id)s failed, path has subfolders: %(path)s" msgstr "Het verwijderen van de boekenmap voor boek %(id)s is mislukt, het pad heeft submappen: %(path)s" -#: cps/helper.py:374 +#: cps/helper.py:376 #, python-format msgid "Deleting book %(id)s failed: %(message)s" msgstr "Verwijderen van boek %(id)s mislukt: %(message)s" -#: cps/helper.py:385 +#: cps/helper.py:387 #, fuzzy, python-format 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:450 +#: cps/helper.py:452 #, 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:522 cps/helper.py:531 +#: cps/helper.py:524 cps/helper.py:533 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "Bestand '%(file)s' niet aangetroffen op Google Drive" -#: cps/helper.py:565 +#: cps/helper.py:567 #, 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:585 +#: cps/helper.py:587 msgid "Error in rename file in path: {}" msgstr "Fout bij hernoemen bestand op bestandslocatie: {}" -#: cps/helper.py:603 +#: cps/helper.py:605 #, 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:668 +#: cps/helper.py:670 msgid "Found an existing account for this Email address" msgstr "Bestaand account gevondne met dit e-mailadres" -#: cps/helper.py:676 +#: cps/helper.py:678 msgid "This username is already taken" msgstr "Deze gebruikersnaam is al in gebruik" -#: cps/helper.py:688 +#: cps/helper.py:690 #, fuzzy msgid "Invalid Email address format" msgstr "Ongeldig E-Mail adres" -#: cps/helper.py:706 +#: cps/helper.py:710 msgid "Password doesn't comply with password validation rules" msgstr "Het wachtwoord voldoet niet aan de validatieregels" -#: cps/helper.py:855 +#: cps/helper.py:859 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:865 +#: cps/helper.py:869 msgid "Error Downloading Cover" msgstr "Fout bij downloaden omslag" -#: cps/helper.py:868 +#: cps/helper.py:872 msgid "Cover Format Error" msgstr "Onjuist omslagformaat" -#: cps/helper.py:871 +#: cps/helper.py:875 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:881 +#: cps/helper.py:885 msgid "Failed to create path for cover" msgstr "Locatie aanmaken voor omslag mislukt" -#: cps/helper.py:897 +#: cps/helper.py:901 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:908 +#: cps/helper.py:912 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:920 +#: cps/helper.py:924 msgid "Invalid cover file content" msgstr "Ongeldig omslagbestand" -#: cps/helper.py:924 +#: cps/helper.py:928 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "Alleen jpg/jpeg bestanden zijn toegestaan als omslag" -#: cps/helper.py:995 cps/helper.py:1183 +#: cps/helper.py:999 cps/helper.py:1156 #, fuzzy msgid "Cover" msgstr "Willekeurige boeken" -#: cps/helper.py:1032 +#: cps/helper.py:1016 msgid "Unrar binary file not found" msgstr "Unrar executable niet gevonden" -#: cps/helper.py:1043 +#: cps/helper.py:1027 #, fuzzy msgid "Error executing UnRar" msgstr "Fout bij het uitvoeren van Unrar" -#: cps/helper.py:1051 +#: cps/helper.py:1035 msgid "Could not find the specified directory" msgstr "" -#: cps/helper.py:1054 +#: cps/helper.py:1038 msgid "Please specify a directory, not a file" msgstr "" -#: cps/helper.py:1068 +#: cps/helper.py:1052 #, fuzzy msgid "Calibre binaries not viable" msgstr "Kan niet schrijven naar database" -#: cps/helper.py:1077 +#: cps/helper.py:1061 #, python-format msgid "Missing calibre binaries: %(missing)s" msgstr "" -#: cps/helper.py:1079 +#: cps/helper.py:1063 #, fuzzy, python-format msgid "Missing executable permissions: %(missing)s" msgstr "Kan programma niet uitvoeren" -#: cps/helper.py:1084 +#: cps/helper.py:1068 #, fuzzy msgid "Error excecuting Calibre" msgstr "Fout bij het uitvoeren van Unrar" -#: cps/helper.py:1185 cps/templates/admin.html:216 +#: cps/helper.py:1158 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" @@ -944,7 +945,7 @@ msgstr "{} sterren" #: cps/remotelogin.py:62 cps/templates/layout.html:67 #: cps/templates/layout.html:101 cps/templates/login.html:4 -#: cps/templates/login.html:21 cps/web.py:1333 +#: cps/templates/login.html:21 cps/web.py:1353 msgid "Login" msgstr "Inloggen" @@ -960,7 +961,7 @@ msgstr "Toegangssleutel is verlopen" msgid "Success! Please return to your device" msgstr "Gelukt! Ga terug naar je apparaat" -#: cps/render_template.py:42 cps/web.py:414 +#: cps/render_template.py:42 cps/web.py:418 msgid "Books" msgstr "Boeken" @@ -985,7 +986,7 @@ msgstr "Gedownloade boeken" msgid "Show Downloaded Books" msgstr "Gedownloade boeken tonen" -#: cps/render_template.py:59 cps/templates/index.xml:33 cps/web.py:429 +#: cps/render_template.py:59 cps/templates/index.xml:33 cps/web.py:433 msgid "Top Rated Books" msgstr "Best beoordeelde boeken" @@ -994,7 +995,7 @@ msgid "Show Top Rated Books" msgstr "Best beoordeelde boeken tonen" #: cps/render_template.py:62 cps/templates/index.xml:55 -#: cps/templates/index.xml:59 cps/web.py:750 +#: cps/templates/index.xml:59 cps/web.py:766 msgid "Read Books" msgstr "Gelezen boeken" @@ -1004,7 +1005,7 @@ msgid "Show Read and Unread" msgstr "Gelezen/Ongelezen boeken tonen" #: cps/render_template.py:66 cps/templates/index.xml:62 -#: cps/templates/index.xml:66 cps/web.py:753 +#: cps/templates/index.xml:66 cps/web.py:769 msgid "Unread Books" msgstr "Ongelezen boeken" @@ -1022,7 +1023,7 @@ msgid "Show Random Books" msgstr "Willekeurige boeken tonen" #: cps/render_template.py:72 cps/templates/book_table.html:67 -#: cps/templates/index.xml:84 cps/web.py:1119 +#: cps/templates/index.xml:84 cps/web.py:1135 msgid "Categories" msgstr "Categorieën" @@ -1033,7 +1034,7 @@ msgstr "Categoriekeuze tonen" #: cps/render_template.py:75 cps/templates/book_edit.html:91 #: cps/templates/book_table.html:68 cps/templates/index.xml:91 -#: cps/templates/search_form.html:70 cps/web.py:1009 cps/web.py:1021 +#: cps/templates/search_form.html:70 cps/web.py:1025 cps/web.py:1037 msgid "Series" msgstr "Boekenreeksen" @@ -1053,7 +1054,7 @@ msgid "Show Author Section" msgstr "Auteurkeuze tonen" #: cps/render_template.py:82 cps/templates/book_table.html:72 -#: cps/templates/index.xml:77 cps/web.py:977 +#: cps/templates/index.xml:77 cps/web.py:993 msgid "Publishers" msgstr "Uitgevers" @@ -1064,7 +1065,7 @@ msgstr "Uitgeverskeuze tonen" #: cps/render_template.py:85 cps/templates/book_table.html:70 #: cps/templates/index.xml:98 cps/templates/search_form.html:108 -#: cps/web.py:1091 +#: cps/web.py:1107 msgid "Languages" msgstr "Talen" @@ -1091,7 +1092,7 @@ msgstr "Bestandsformaten" msgid "Show File Formats Section" msgstr "Bestandsformaten tonen" -#: cps/render_template.py:96 cps/web.py:776 +#: cps/render_template.py:96 cps/web.py:792 msgid "Archived Books" msgstr "Gearchiveerde boeken" @@ -1100,7 +1101,7 @@ msgstr "Gearchiveerde boeken" msgid "Show Archived Books" msgstr "Gearchiveerde boeken tonen" -#: cps/render_template.py:101 cps/web.py:807 +#: cps/render_template.py:101 cps/web.py:823 msgid "Books List" msgstr "Boekenlijst" @@ -1324,173 +1325,178 @@ msgstr "Er is een update beschikbaar. Klik op de knop hieronder om te updaten na msgid "No release information available" msgstr "Geen update-informatie beschikbaar" -#: cps/templates/index.html:6 cps/web.py:441 +#: cps/templates/index.html:6 cps/web.py:445 msgid "Discover (Random Books)" msgstr "Verkennen (willekeurige boeken)" -#: cps/web.py:477 +#: cps/web.py:481 msgid "Hot Books (Most Downloaded)" msgstr "Populaire boeken (meest gedownload)" -#: cps/web.py:508 +#: cps/web.py:512 #, python-format msgid "Downloaded books by %(user)s" msgstr "Gedownloade boeken door %(user)s" -#: cps/web.py:541 +#: cps/web.py:545 #, python-format msgid "Author: %(name)s" msgstr "Auteur: %(name)s" -#: cps/web.py:577 +#: cps/web.py:581 #, python-format msgid "Publisher: %(name)s" msgstr "Uitgever: %(name)s" -#: cps/web.py:605 +#: cps/web.py:609 #, python-format msgid "Series: %(serie)s" msgstr "Reeks: %(serie)s" -#: cps/web.py:620 +#: cps/web.py:623 msgid "Rating: None" msgstr "Beoordeling: geen" -#: cps/web.py:629 +#: cps/web.py:632 #, python-format msgid "Rating: %(rating)s stars" msgstr "Beoordeling: %(rating)s sterren" -#: cps/web.py:645 +#: cps/web.py:663 #, python-format msgid "File format: %(format)s" msgstr "Bestandsformaat: %(format)s" -#: cps/web.py:682 +#: cps/web.py:698 #, python-format msgid "Category: %(name)s" msgstr "Categorie: %(name)s" -#: cps/web.py:711 +#: cps/web.py:727 #, python-format msgid "Language: %(name)s" msgstr "Taal: %(name)s" -#: cps/templates/admin.html:16 cps/web.py:949 +#: cps/templates/admin.html:16 cps/web.py:965 msgid "Downloads" msgstr "Downloads" -#: cps/web.py:1051 +#: cps/web.py:1067 msgid "Ratings list" msgstr "Beoordelingen" -#: cps/web.py:1078 +#: cps/web.py:1094 msgid "File formats list" msgstr "Alle bestandsformaten" -#: cps/web.py:1233 +#: cps/web.py:1249 #, fuzzy msgid "Please configure the SMTP mail settings first..." msgstr "Stel eerst SMTP-mail in..." -#: cps/web.py:1240 +#: cps/web.py:1256 #, python-format msgid "Success! Book queued for sending to %(eReadermail)s" msgstr "Het boek is in de wachtrij geplaatst om te worden verstuurd aan %(eReadermail)s" -#: cps/web.py:1243 +#: cps/web.py:1259 #, python-format msgid "Oops! There was an error sending book: %(res)s" msgstr "Fout opgetreden bij het versturen van dit boek: %(res)s" -#: cps/web.py:1245 +#: cps/web.py:1261 #, fuzzy msgid "Oops! Please update your profile with a valid eReader Email." msgstr "Stel je kindle-e-mailadres in..." -#: cps/web.py:1261 +#: cps/web.py:1277 msgid "Please wait one minute to register next user" msgstr "Wacht alstublieft één minuut voor het registreren van de volgende gebruiker" #: cps/templates/layout.html:68 cps/templates/layout.html:102 -#: cps/templates/login.html:27 cps/templates/register.html:17 cps/web.py:1262 -#: cps/web.py:1267 cps/web.py:1271 cps/web.py:1277 cps/web.py:1297 -#: cps/web.py:1301 cps/web.py:1314 cps/web.py:1317 +#: cps/templates/login.html:27 cps/templates/register.html:17 cps/web.py:1278 +#: cps/web.py:1282 cps/web.py:1287 cps/web.py:1291 cps/web.py:1297 +#: cps/web.py:1317 cps/web.py:1321 cps/web.py:1334 cps/web.py:1337 msgid "Register" msgstr "Registreren" -#: cps/web.py:1266 cps/web.py:1313 +#: cps/web.py:1281 cps/web.py:1385 +#, fuzzy +msgid "Connection error to limiter backend, please contact your administrator" +msgstr "E-mailserver is niet geconfigureerd, neem contact op met de beheerder!" + +#: cps/web.py:1286 cps/web.py:1333 msgid "Oops! Email server is not configured, please contact your administrator." msgstr "E-mailserver is niet geconfigureerd, neem contact op met de beheerder!" -#: cps/web.py:1299 +#: cps/web.py:1319 msgid "Oops! Your Email is not allowed." msgstr "Dit e-mailadres mag niet worden gebruikt voor registratie" -#: cps/web.py:1302 +#: cps/web.py:1322 msgid "Success! Confirmation Email has been sent." msgstr "Er is een bevestigings-e-mail verstuurd naar je e-mailadres." -#: cps/web.py:1348 cps/web.py:1367 +#: cps/web.py:1368 cps/web.py:1391 #, fuzzy msgid "Cannot activate LDAP authentication" msgstr "Kan de LDAP authenticatie niet activeren" -#: cps/web.py:1361 +#: cps/web.py:1381 msgid "Please wait one minute before next login" msgstr "Wacht alstublieft één minuut voor de volgende inlogpoging" -#: cps/web.py:1376 +#: cps/web.py:1400 #, fuzzy, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "je bent ingelogd als: '%(nickname)s'" -#: cps/web.py:1383 +#: cps/web.py:1407 #, fuzzy, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgstr "Terugvallen op login: '%(nickname)s', LDAP Server is onbereikbaar, of de gebruiker is onbekend" -#: cps/web.py:1388 +#: cps/web.py:1412 #, fuzzy, python-format msgid "Could not login: %(message)s" msgstr "Inloggen mislukt: %(message)s" -#: cps/web.py:1392 cps/web.py:1417 +#: cps/web.py:1416 cps/web.py:1441 #, fuzzy msgid "Wrong Username or Password" msgstr "Verkeerde gebruikersnaam of wachtwoord" -#: cps/web.py:1399 +#: cps/web.py:1423 #, fuzzy msgid "New Password was sent to your email address" msgstr "Een nieuw wachtwoord is verzonden naar je e-mailadres" -#: cps/web.py:1403 +#: cps/web.py:1427 #, fuzzy msgid "An unknown error occurred. Please try again later." msgstr "Onbekende fout opgetreden. Probeer het later nog eens." -#: cps/web.py:1405 +#: cps/web.py:1429 #, fuzzy msgid "Please enter valid username to reset password" msgstr "Geef een geldige gebruikersnaam op om je wachtwoord te herstellen" -#: cps/web.py:1413 +#: cps/web.py:1437 #, fuzzy, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "je bent ingelogd als: '%(nickname)s'" -#: cps/web.py:1471 cps/web.py:1521 +#: cps/web.py:1495 cps/web.py:1545 #, python-format msgid "%(name)s's Profile" msgstr "%(name)ss profiel" -#: cps/web.py:1487 +#: cps/web.py:1511 #, fuzzy msgid "Success! Profile Updated" msgstr "Profiel bijgewerkt" -#: cps/web.py:1491 +#: cps/web.py:1515 #, fuzzy msgid "Oops! An account already exists for this Email." msgstr "Bestaand account met dit e-mailadres aangetroffen." @@ -1504,41 +1510,41 @@ msgstr "Geen geldig gmail.json bestand gevonden met OAuth informatie" msgid "%(book)s send to E-Reader" msgstr "%(book)s verzonden naar Kindle" -#: cps/tasks/convert.py:166 +#: cps/tasks/convert.py:167 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "Calibre ebook-convert %(tool)s niet gevonden" -#: cps/tasks/convert.py:200 +#: cps/tasks/convert.py:201 #, python-format msgid "%(format)s format not found on disk" msgstr "%(format)s formaat is niet gevonden op de schijf" -#: cps/tasks/convert.py:204 +#: cps/tasks/convert.py:205 msgid "Ebook converter failed with unknown error" msgstr "E-Book converter mislukt met een onbekende foutmelding" -#: cps/tasks/convert.py:223 +#: cps/tasks/convert.py:224 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "Kepubify-converteerder mislukt: %(error)s" -#: cps/tasks/convert.py:244 +#: cps/tasks/convert.py:245 #, 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:279 +#: cps/tasks/convert.py:287 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "E-boek-conversie mislukt: %(error)s" -#: cps/tasks/convert.py:302 +#: cps/tasks/convert.py:310 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "Calibre mislukt met foutmelding: %(error)s" -#: cps/tasks/convert.py:307 +#: cps/tasks/convert.py:315 msgid "Convert" msgstr "Overzetten" @@ -1546,7 +1552,7 @@ msgstr "Overzetten" msgid "Reconnecting Calibre database" msgstr "Opnieuw verbinding aan het maken met Calibre database" -#: cps/tasks/mail.py:269 +#: cps/tasks/mail.py:278 msgid "E-mail" msgstr "E-mail" @@ -1826,12 +1832,12 @@ 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:414 -#: cps/templates/config_view_edit.html:175 cps/templates/modal_dialogs.html:64 -#: cps/templates/modal_dialogs.html:99 cps/templates/modal_dialogs.html:117 -#: cps/templates/modal_dialogs.html:135 cps/templates/schedule_edit.html:45 -#: cps/templates/shelf_edit.html:27 cps/templates/tasks.html:46 -#: cps/templates/user_edit.html:144 +#: cps/templates/config_db.html:66 cps/templates/config_edit.html:428 +#: 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 +#: cps/templates/schedule_edit.html:45 cps/templates/shelf_edit.html:27 +#: cps/templates/tasks.html:46 cps/templates/user_edit.html:144 msgid "Cancel" msgstr "Annuleren" @@ -2012,7 +2018,7 @@ msgid "Fetch Metadata" msgstr "Metagegevens ophalen" #: cps/templates/book_edit.html:213 cps/templates/config_db.html:65 -#: cps/templates/config_edit.html:413 cps/templates/config_view_edit.html:174 +#: cps/templates/config_edit.html:427 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 @@ -2180,7 +2186,7 @@ msgid "Location of Calibre Database" msgstr "Locatie van de Calibre-database" #: cps/templates/config_db.html:21 -msgid "Separate Book files from Library (Highly experimental, might not work at all)" +msgid "Separate Book Files from Library" msgstr "" #: cps/templates/config_db.html:34 @@ -2265,7 +2271,7 @@ msgid "Convert non-English characters in title and author while saving to disk" msgstr "Zet niet Engelse tekens in titel en auteur om tijdens het opslaan" #: cps/templates/config_edit.html:108 -msgid "Embed Metadata to Ebook File on Download and Conversion (needs Calibre/Kepubify binaries)" +msgid "Embed Metadata to Ebook File on Download/Conversion/e-mail (needs Calibre/Kepubify binaries)" msgstr "" #: cps/templates/config_edit.html:112 @@ -2489,40 +2495,52 @@ msgstr "OAuth Instellingen" msgid "Limit failed login attempts" msgstr "Beperk aantal mislukte inlogpogingen" -#: cps/templates/config_edit.html:376 +#: cps/templates/config_edit.html:377 +msgid "Configure Backend for Limiter" +msgstr "" + +#: cps/templates/config_edit.html:381 +msgid "Options for Limiter" +msgstr "" + +#: cps/templates/config_edit.html:386 msgid "Session protection" msgstr "Sessiebescherming" -#: cps/templates/config_edit.html:378 +#: cps/templates/config_edit.html:388 msgid "Basic" msgstr "Basis" -#: cps/templates/config_edit.html:379 +#: cps/templates/config_edit.html:389 msgid "Strong" msgstr "Sterk" -#: cps/templates/config_edit.html:384 +#: cps/templates/config_edit.html:394 #, fuzzy msgid "User Password policy" msgstr "Gebruikerswachtwoord herstellen" -#: cps/templates/config_edit.html:388 +#: cps/templates/config_edit.html:398 msgid "Minimum password length" msgstr "Minimale wachtwoordlengte" -#: cps/templates/config_edit.html:393 +#: cps/templates/config_edit.html:403 msgid "Enforce number" msgstr "Forceer getal" -#: cps/templates/config_edit.html:397 +#: cps/templates/config_edit.html:407 msgid "Enforce lowercase characters" msgstr "Forceer kleine letter" -#: cps/templates/config_edit.html:401 +#: cps/templates/config_edit.html:411 msgid "Enforce uppercase characters" msgstr "Forceer hoofdletter" -#: cps/templates/config_edit.html:405 +#: cps/templates/config_edit.html:415 +msgid "Enforce characters (needed For Chinese/Japanese/Korean Characters)" +msgstr "" + +#: cps/templates/config_edit.html:419 msgid "Enforce special characters" msgstr "Forceer speciaal teken" @@ -2646,47 +2664,47 @@ msgstr "Boek %(index)s van %(range)s" msgid "Published" msgstr "Gepubliceerd" -#: cps/templates/detail.html:250 cps/templates/listenmp3.html:158 +#: cps/templates/detail.html:251 cps/templates/listenmp3.html:158 msgid "Mark As Unread" msgstr "Markeren als ongelezen" -#: cps/templates/detail.html:251 cps/templates/listenmp3.html:158 +#: cps/templates/detail.html:252 cps/templates/listenmp3.html:158 msgid "Mark As Read" msgstr "Markeren als gelezen" -#: cps/templates/detail.html:253 cps/templates/listenmp3.html:159 +#: cps/templates/detail.html:254 cps/templates/listenmp3.html:159 msgid "Read" msgstr "Gelezen" -#: cps/templates/detail.html:263 cps/templates/listenmp3.html:166 +#: cps/templates/detail.html:264 cps/templates/listenmp3.html:166 msgid "Restore from archive" msgstr "Terughalen uit archief" -#: cps/templates/detail.html:264 cps/templates/listenmp3.html:166 +#: cps/templates/detail.html:265 cps/templates/listenmp3.html:166 msgid "Add to archive" msgstr "Toevoegen aan archief" -#: cps/templates/detail.html:266 cps/templates/listenmp3.html:167 +#: cps/templates/detail.html:267 cps/templates/listenmp3.html:167 msgid "Archived" msgstr "Gearchiveerd" -#: cps/templates/detail.html:277 cps/templates/listenmp3.html:177 +#: cps/templates/detail.html:278 cps/templates/listenmp3.html:177 msgid "Description:" msgstr "Beschrijving:" -#: cps/templates/detail.html:292 cps/templates/listenmp3.html:190 +#: cps/templates/detail.html:293 cps/templates/listenmp3.html:190 #: cps/templates/search.html:16 msgid "Add to shelf" msgstr "Toevoegen aan boekenplank" -#: cps/templates/detail.html:304 cps/templates/detail.html:323 +#: cps/templates/detail.html:305 cps/templates/detail.html:324 #: cps/templates/feed.xml:81 cps/templates/layout.html:154 #: cps/templates/listenmp3.html:201 cps/templates/listenmp3.html:218 #: cps/templates/search.html:22 msgid "(Public)" msgstr "(Openbaar)" -#: cps/templates/detail.html:339 +#: cps/templates/detail.html:340 msgid "Edit Metadata" msgstr "Metagegevens bewerken" diff --git a/cps/translations/no/LC_MESSAGES/messages.mo b/cps/translations/no/LC_MESSAGES/messages.mo index 3086b19e..dd79790d 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 d01c3e5e..b96ee3da 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-02-10 10:06+0100\n" +"POT-Creation-Date: 2024-04-27 07:20+0200\n" "PO-Revision-Date: 2023-01-06 11:00+0000\n" "Last-Translator: Vegard Fladby \n" "Language: no\n" @@ -22,497 +22,497 @@ msgstr "" msgid "Statistics" msgstr "Statistikk" -#: cps/admin.py:149 +#: cps/admin.py:150 #, fuzzy msgid "Server restarted, please reload page." msgstr "Server startet på nytt. Last inn siden på nytt" -#: cps/admin.py:151 +#: cps/admin.py:152 #, fuzzy msgid "Performing Server shutdown, please close window." msgstr "Utfører avslutning av server, vennligst lukk vinduet" -#: cps/admin.py:159 +#: cps/admin.py:160 msgid "Success! Database Reconnected" msgstr "" -#: cps/admin.py:162 +#: cps/admin.py:163 msgid "Unknown command" msgstr "Ukjent kommando" -#: cps/admin.py:173 +#: cps/admin.py:174 #, fuzzy 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:206 cps/editbooks.py:589 cps/editbooks.py:591 -#: cps/editbooks.py:629 cps/editbooks.py:646 cps/editbooks.py:1262 +#: cps/admin.py:207 cps/editbooks.py:590 cps/editbooks.py:592 +#: cps/editbooks.py:630 cps/editbooks.py:647 cps/editbooks.py:1263 #: cps/updater.py:613 cps/uploader.py:93 cps/uploader.py:102 msgid "Unknown" msgstr "Ukjent" -#: cps/admin.py:231 +#: cps/admin.py:232 msgid "Admin page" msgstr "Admin side" -#: cps/admin.py:251 +#: cps/admin.py:252 msgid "Basic Configuration" msgstr "Grunnleggende konfigurasjon" -#: cps/admin.py:289 +#: cps/admin.py:290 msgid "UI Configuration" msgstr "UI-konfigurasjon" -#: cps/admin.py:323 cps/templates/admin.html:51 +#: cps/admin.py:324 cps/templates/admin.html:51 msgid "Edit Users" msgstr "Rediger brukere" -#: cps/admin.py:367 cps/opds.py:506 cps/templates/grid.html:14 +#: cps/admin.py:368 cps/opds.py:506 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "Alle" -#: cps/admin.py:394 cps/admin.py:1405 +#: cps/admin.py:395 cps/admin.py:1417 msgid "User not found" msgstr "Bruker ikke funnet" -#: cps/admin.py:408 +#: cps/admin.py:409 msgid "{} users deleted successfully" msgstr "{} brukere ble slettet" -#: cps/admin.py:431 cps/templates/config_view_edit.html:133 +#: cps/admin.py:432 cps/templates/config_view_edit.html:133 #: cps/templates/user_edit.html:45 cps/templates/user_table.html:81 msgid "Show All" msgstr "Vis alt" -#: cps/admin.py:452 cps/admin.py:458 +#: cps/admin.py:453 cps/admin.py:459 msgid "Malformed request" msgstr "Feil utformet forespørsel" -#: cps/admin.py:470 cps/admin.py:2033 +#: cps/admin.py:471 cps/admin.py:2048 msgid "Guest Name can't be changed" msgstr "Gjestenavn kan ikke endres" -#: cps/admin.py:482 +#: cps/admin.py:483 msgid "Guest can't have this role" msgstr "Gjesten kan ikke ha denne rollen" -#: cps/admin.py:494 cps/admin.py:1987 +#: cps/admin.py:495 cps/admin.py:2002 msgid "No admin user remaining, can't remove admin role" msgstr "Ingen administratorbruker igjen, kan ikke fjerne administratorrollen" -#: cps/admin.py:498 cps/admin.py:512 +#: cps/admin.py:499 cps/admin.py:513 msgid "Value has to be true or false" msgstr "Verdien må være sann eller usann" -#: cps/admin.py:500 +#: cps/admin.py:501 msgid "Invalid role" msgstr "Ugyldig rolle" -#: cps/admin.py:504 +#: cps/admin.py:505 msgid "Guest can't have this view" msgstr "Gjestene kan ikke ha denne utsikten" -#: cps/admin.py:514 +#: cps/admin.py:515 msgid "Invalid view" msgstr "Ugyldig visning" -#: cps/admin.py:517 +#: cps/admin.py:518 msgid "Guest's Locale is determined automatically and can't be set" msgstr "Gjestenes lokalitet bestemmes automatisk og kan ikke angis" -#: cps/admin.py:521 +#: cps/admin.py:522 msgid "No Valid Locale Given" msgstr "Ingen gyldig lokalitet gitt" -#: cps/admin.py:532 +#: cps/admin.py:533 msgid "No Valid Book Language Given" msgstr "Ikke oppgitt gyldig bokspråk" -#: cps/admin.py:534 cps/editbooks.py:455 +#: cps/admin.py:535 cps/editbooks.py:456 msgid "Parameter not found" msgstr "Parameter ikke funnet" -#: cps/admin.py:571 +#: cps/admin.py:572 msgid "Invalid Read Column" msgstr "Ugyldig lesekolonne" -#: cps/admin.py:577 +#: cps/admin.py:578 msgid "Invalid Restricted Column" msgstr "Ugyldig begrenset kolonne" -#: cps/admin.py:597 cps/admin.py:1858 +#: cps/admin.py:598 cps/admin.py:1873 msgid "Calibre-Web configuration updated" msgstr "Calibre-Web-konfigurasjonen er oppdatert" -#: cps/admin.py:609 +#: cps/admin.py:610 msgid "Do you really want to delete the Kobo Token?" msgstr "Vil du virkelig slette Kobo-tokenet?" -#: cps/admin.py:611 +#: cps/admin.py:612 msgid "Do you really want to delete this domain?" msgstr "Vil du virkelig slette dette domenet?" -#: cps/admin.py:613 +#: cps/admin.py:614 msgid "Do you really want to delete this user?" msgstr "Vil du virkelig slette denne brukeren?" -#: cps/admin.py:615 +#: cps/admin.py:616 msgid "Are you sure you want to delete this shelf?" msgstr "Er du sikker på at du vil slette denne hyllen?" -#: cps/admin.py:617 +#: cps/admin.py:618 msgid "Are you sure you want to change locales of selected user(s)?" msgstr "Er du sikker på at du vil endre lokaliteter for valgte bruker(e)?" -#: cps/admin.py:619 +#: cps/admin.py:620 msgid "Are you sure you want to change visible book languages for selected user(s)?" msgstr "Er du sikker på at du vil endre synlige bokspråk for valgte bruker(e)?" -#: cps/admin.py:621 +#: cps/admin.py:622 msgid "Are you sure you want to change the selected role for the selected user(s)?" msgstr "Er du sikker på at du vil endre den valgte rollen for den(e) valgte brukeren?" -#: cps/admin.py:623 +#: cps/admin.py:624 msgid "Are you sure you want to change the selected restrictions for the selected user(s)?" msgstr "Er du sikker på at du vil endre de valgte begrensningene for den(e) valgte brukeren?" -#: cps/admin.py:625 +#: cps/admin.py:626 msgid "Are you sure you want to change the selected visibility restrictions for the selected user(s)?" msgstr "Er du sikker på at du vil endre de valgte synlighetsbegrensningene for valgte bruker(e)?" -#: cps/admin.py:628 +#: cps/admin.py:629 msgid "Are you sure you want to change shelf sync behavior for the selected user(s)?" msgstr "Er du sikker på at du vil endre atferden for hyllesynkronisering for de(n) valgte brukeren(e)?" -#: cps/admin.py:630 +#: cps/admin.py:631 msgid "Are you sure you want to change Calibre library location?" msgstr "Er du sikker på at du vil endre plassering av Caliber-biblioteket?" -#: cps/admin.py:632 +#: cps/admin.py:633 msgid "Calibre-Web will search for updated Covers and update Cover Thumbnails, this may take a while?" msgstr "Calibre-Web vil søke etter oppdaterte omslag og oppdatere omslagsminiatyrbilder, kan dette ta litt tid?" -#: cps/admin.py:635 +#: cps/admin.py:636 msgid "Are you sure you want delete Calibre-Web's sync database to force a full sync with your Kobo Reader?" msgstr "Er du sikker på at du vil slette Calibre-Webs synkroniseringsdatabase for å tvinge frem en full synkronisering med Kobo Reader?" -#: cps/admin.py:878 cps/admin.py:884 cps/admin.py:894 cps/admin.py:904 +#: cps/admin.py:879 cps/admin.py:885 cps/admin.py:895 cps/admin.py:905 #: cps/templates/modal_dialogs.html:29 cps/templates/user_table.html:41 #: cps/templates/user_table.html:58 msgid "Deny" msgstr "Benekte" -#: cps/admin.py:880 cps/admin.py:886 cps/admin.py:896 cps/admin.py:906 +#: cps/admin.py:881 cps/admin.py:887 cps/admin.py:897 cps/admin.py:907 #: cps/templates/modal_dialogs.html:28 cps/templates/user_table.html:44 #: cps/templates/user_table.html:61 msgid "Allow" msgstr "Tillate" -#: cps/admin.py:921 +#: cps/admin.py:940 msgid "{} sync entries deleted" msgstr "{} synkroniseringsoppføringer slettet" -#: cps/admin.py:969 +#: cps/admin.py:981 msgid "Tag not found" msgstr "Merket ble ikke funnet" -#: cps/admin.py:981 +#: cps/admin.py:993 msgid "Invalid Action" msgstr "Ugyldig handling" -#: cps/admin.py:1111 +#: cps/admin.py:1123 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "client_secrets.json er ikke konfigurert for webapplikasjon" -#: cps/admin.py:1156 +#: cps/admin.py:1168 msgid "Logfile Location is not Valid, Please Enter Correct Path" msgstr "Loggfilplasseringen er ikke gyldig, skriv inn riktig bane" -#: cps/admin.py:1162 +#: cps/admin.py:1174 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:1196 +#: cps/admin.py:1208 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:1202 +#: cps/admin.py:1214 msgid "Please Enter a LDAP Service Account and Password" msgstr "Vennligst skriv inn en LDAP-tjenestekonto og passord" -#: cps/admin.py:1205 +#: cps/admin.py:1217 msgid "Please Enter a LDAP Service Account" msgstr "Angi en LDAP-tjenestekonto" -#: cps/admin.py:1210 +#: cps/admin.py:1222 #, 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:1212 +#: cps/admin.py:1224 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "LDAP-gruppeobjektfilter har uovertruffen parentes" -#: cps/admin.py:1216 +#: cps/admin.py:1228 #, 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:1218 +#: cps/admin.py:1230 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "LDAP-brukerobjektfilter har uovertruffen parentes" -#: cps/admin.py:1225 +#: cps/admin.py:1237 #, 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:1227 +#: cps/admin.py:1239 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "LDAP-medlemsbrukerfilter har uovertruffen parentes" -#: cps/admin.py:1234 +#: cps/admin.py:1246 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:1265 cps/templates/admin.html:53 +#: cps/admin.py:1277 cps/templates/admin.html:53 msgid "Add New User" msgstr "Legg til ny bruker" -#: cps/admin.py:1274 cps/templates/admin.html:100 +#: cps/admin.py:1286 cps/templates/admin.html:100 #, fuzzy msgid "Edit Email Server Settings" msgstr "Rediger e-postserverinnstillinger" -#: cps/admin.py:1293 +#: cps/admin.py:1305 msgid "Success! Gmail Account Verified." msgstr "" -#: cps/admin.py:1313 cps/admin.py:1316 cps/admin.py:1698 cps/admin.py:1842 -#: cps/admin.py:1940 cps/admin.py:2061 cps/editbooks.py:241 -#: cps/editbooks.py:317 cps/editbooks.py:1224 cps/shelf.py:90 cps/shelf.py:150 +#: cps/admin.py:1325 cps/admin.py:1328 cps/admin.py:1710 cps/admin.py:1857 +#: cps/admin.py:1955 cps/admin.py:2076 cps/editbooks.py:242 +#: cps/editbooks.py:318 cps/editbooks.py:1225 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:149 cps/web.py:1496 +#: cps/shelf.py:468 cps/tasks/convert.py:150 cps/web.py:1520 #, fuzzy, python-format msgid "Oops! Database Error: %(error)s." msgstr "Databasefeil: %(error)s." -#: cps/admin.py:1323 +#: cps/admin.py:1335 #, 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:1326 +#: cps/admin.py:1338 #, 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:1328 +#: cps/admin.py:1340 msgid "Please configure your e-mail address first..." msgstr "Vennligst konfigurer e-postadressen din først..." -#: cps/admin.py:1330 +#: cps/admin.py:1342 #, fuzzy msgid "Email Server Settings updated" msgstr "E-postserverinnstillinger oppdatert" -#: cps/admin.py:1353 cps/templates/admin.html:195 +#: cps/admin.py:1365 cps/templates/admin.html:195 msgid "Edit Scheduled Tasks Settings" msgstr "Rediger innstillinger for planlagte oppgaver" -#: cps/admin.py:1365 +#: cps/admin.py:1377 msgid "Invalid start time for task specified" msgstr "Ugyldig starttidspunkt for spesifisert oppgave" -#: cps/admin.py:1370 +#: cps/admin.py:1382 msgid "Invalid duration for task specified" msgstr "Ugyldig varighet for spesifisert oppgave" -#: cps/admin.py:1380 +#: cps/admin.py:1392 msgid "Scheduled tasks settings updated" msgstr "Innstillinger for planlagte oppgaver er oppdatert" -#: cps/admin.py:1390 cps/admin.py:1439 cps/admin.py:2057 cps/web.py:1296 +#: cps/admin.py:1402 cps/admin.py:1451 cps/admin.py:2072 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:1394 +#: cps/admin.py:1406 msgid "Settings DB is not Writeable" msgstr "Innstillinger DB er ikke skrivbar" -#: cps/admin.py:1424 cps/admin.py:2049 +#: cps/admin.py:1436 cps/admin.py:2064 #, python-format msgid "Edit User %(nick)s" msgstr "Rediger bruker %(nick)s" -#: cps/admin.py:1436 +#: cps/admin.py:1448 #, fuzzy, python-format msgid "Success! Password for user %(user)s reset" msgstr "Passord for bruker %(user)s tilbakestilling" -#: cps/admin.py:1442 +#: cps/admin.py:1454 #, fuzzy msgid "Oops! Please configure the SMTP mail settings." msgstr "Vennligst konfigurer SMTP-postinnstillingene først..." -#: cps/admin.py:1453 +#: cps/admin.py:1465 msgid "Logfile viewer" msgstr "Loggfilviser" -#: cps/admin.py:1519 +#: cps/admin.py:1531 msgid "Requesting update package" msgstr "Ber om oppdateringspakke" -#: cps/admin.py:1520 +#: cps/admin.py:1532 msgid "Downloading update package" msgstr "Laster ned oppdateringspakken" -#: cps/admin.py:1521 +#: cps/admin.py:1533 msgid "Unzipping update package" msgstr "Pakker ut oppdateringspakken" -#: cps/admin.py:1522 +#: cps/admin.py:1534 msgid "Replacing files" msgstr "Erstatter filer" -#: cps/admin.py:1523 +#: cps/admin.py:1535 msgid "Database connections are closed" msgstr "Databaseforbindelser er stengt" -#: cps/admin.py:1524 +#: cps/admin.py:1536 msgid "Stopping server" msgstr "Stopper server" -#: cps/admin.py:1525 +#: cps/admin.py:1537 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:1526 cps/admin.py:1527 cps/admin.py:1528 cps/admin.py:1529 -#: cps/admin.py:1530 cps/admin.py:1531 +#: cps/admin.py:1538 cps/admin.py:1539 cps/admin.py:1540 cps/admin.py:1541 +#: cps/admin.py:1542 cps/admin.py:1543 msgid "Update failed:" msgstr "Oppdatering mislyktes:" -#: cps/admin.py:1526 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 +#: cps/admin.py:1538 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 msgid "HTTP Error" msgstr "HTTP-feil" -#: cps/admin.py:1527 cps/updater.py:391 cps/updater.py:628 +#: cps/admin.py:1539 cps/updater.py:391 cps/updater.py:628 msgid "Connection error" msgstr "Tilkoblingsfeil" -#: cps/admin.py:1528 cps/updater.py:393 cps/updater.py:630 +#: cps/admin.py:1540 cps/updater.py:393 cps/updater.py:630 msgid "Timeout while establishing connection" msgstr "Tidsavbrudd under etablering av tilkobling" -#: cps/admin.py:1529 cps/updater.py:395 cps/updater.py:632 +#: cps/admin.py:1541 cps/updater.py:395 cps/updater.py:632 msgid "General error" msgstr "Generell feil" -#: cps/admin.py:1530 +#: cps/admin.py:1542 msgid "Update file could not be saved in temp dir" msgstr "Oppdateringsfilen kunne ikke lagres i temp dir" -#: cps/admin.py:1531 +#: cps/admin.py:1543 msgid "Files could not be replaced during update" msgstr "Filer kunne ikke erstattes under oppdatering" -#: cps/admin.py:1555 +#: cps/admin.py:1567 msgid "Failed to extract at least One LDAP User" msgstr "Kunne ikke pakke ut minst én LDAP-bruker" -#: cps/admin.py:1600 +#: cps/admin.py:1612 msgid "Failed to Create at Least One LDAP User" msgstr "Kunne ikke opprette minst én LDAP-bruker" -#: cps/admin.py:1613 +#: cps/admin.py:1625 #, python-format msgid "Error: %(ldaperror)s" msgstr "Feil: %(ldaperror)s" -#: cps/admin.py:1617 +#: cps/admin.py:1629 msgid "Error: No user returned in response of LDAP server" msgstr "Feil: Ingen bruker ble returnert som svar fra LDAP-serveren" -#: cps/admin.py:1650 +#: 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:1652 +#: cps/admin.py:1664 msgid "{} User Successfully Imported" msgstr "{} Bruker ble importert" -#: cps/admin.py:1710 +#: 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:1730 +#: cps/admin.py:1742 msgid "DB is not Writeable" msgstr "DB er ikke skrivbar" -#: cps/admin.py:1746 +#: 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:1750 +#: 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:1829 +#: cps/admin.py:1842 msgid "Password length has to be between 1 and 40" msgstr "" -#: cps/admin.py:1881 +#: cps/admin.py:1896 msgid "Database Settings updated" msgstr "Databaseinnstillinger oppdatert" -#: cps/admin.py:1889 +#: cps/admin.py:1904 msgid "Database Configuration" msgstr "Databasekonfigurasjon" -#: cps/admin.py:1904 cps/web.py:1270 +#: cps/admin.py:1919 cps/web.py:1290 #, fuzzy msgid "Oops! Please complete all fields." msgstr "Vennligst fyll ut alle feltene!" -#: cps/admin.py:1913 +#: cps/admin.py:1928 msgid "E-mail is not from valid domain" msgstr "E-post er ikke fra gyldig domene" -#: cps/admin.py:1919 +#: cps/admin.py:1934 msgid "Add new user" msgstr "Legg til ny bruker" -#: cps/admin.py:1930 +#: cps/admin.py:1945 #, python-format msgid "User '%(user)s' created" msgstr "Bruker '%(user)s' opprettet" -#: cps/admin.py:1936 +#: cps/admin.py:1951 #, 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:1966 +#: cps/admin.py:1981 #, python-format msgid "User '%(nick)s' deleted" msgstr "Brukeren '%(nick)s' slettet" -#: cps/admin.py:1969 +#: cps/admin.py:1984 msgid "Can't delete Guest User" msgstr "Kan ikke slette gjestebruker" -#: cps/admin.py:1972 +#: cps/admin.py:1987 msgid "No admin user remaining, can't delete user" msgstr "Ingen administratorbruker igjen, kan ikke slette bruker" -#: cps/admin.py:2027 cps/web.py:1445 +#: cps/admin.py:2042 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:2053 +#: cps/admin.py:2068 #, python-format msgid "User '%(nick)s' updated" msgstr "Bruker '%(nick)s' oppdatert" @@ -525,123 +525,124 @@ msgstr "ikke installert" msgid "Execution permissions missing" msgstr "Utførelsestillatelser mangler" -#: cps/db.py:752 cps/search.py:137 cps/web.py:731 +#: cps/db.py:752 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:993 cps/templates/config_edit.html:208 +#: cps/db.py:992 cps/templates/config_edit.html:208 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 -#: cps/web.py:558 cps/web.py:592 cps/web.py:665 cps/web.py:692 cps/web.py:973 -#: cps/web.py:1003 cps/web.py:1048 cps/web.py:1076 cps/web.py:1115 +#: 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 +#: cps/web.py:1131 msgid "None" msgstr "Ingen" -#: cps/editbooks.py:122 cps/editbooks.py:910 cps/web.py:525 cps/web.py:1537 -#: cps/web.py:1581 cps/web.py:1626 +#: cps/editbooks.py:123 cps/editbooks.py:911 cps/web.py:529 cps/web.py:1561 +#: cps/web.py:1605 cps/web.py:1650 #, 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:166 cps/editbooks.py:1245 +#: cps/editbooks.py:167 cps/editbooks.py:1246 msgid "User has no rights to upload cover" msgstr "Brukeren har ingen rettigheter til å laste opp cover" -#: cps/editbooks.py:186 cps/editbooks.py:731 +#: cps/editbooks.py:187 cps/editbooks.py:732 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "Identifikatorer skiller ikke mellom store og små bokstaver, overskriver gammel identifikator" -#: cps/editbooks.py:228 +#: cps/editbooks.py:229 msgid "Metadata successfully updated" msgstr "Metadata ble oppdatert" -#: cps/editbooks.py:246 +#: cps/editbooks.py:247 msgid "Error editing book: {}" msgstr "Feil ved redigering av bok: {}" -#: cps/editbooks.py:303 +#: cps/editbooks.py:304 #, python-format msgid "File %(file)s uploaded" msgstr "Fil %(file)s lastet opp" -#: cps/editbooks.py:331 +#: cps/editbooks.py:332 msgid "Source or destination format for conversion missing" msgstr "Kilde- eller målformat for konvertering mangler" -#: cps/editbooks.py:339 +#: cps/editbooks.py:340 #, 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:343 +#: cps/editbooks.py:344 #, 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:650 +#: cps/editbooks.py:651 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:705 cps/editbooks.py:1037 +#: cps/editbooks.py:706 cps/editbooks.py:1038 #, python-format msgid "'%(langname)s' is not a valid language" msgstr "'%(langname)s' er ikke et gyldig språk" -#: cps/editbooks.py:743 cps/editbooks.py:1185 +#: cps/editbooks.py:744 cps/editbooks.py:1186 #, 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:747 cps/editbooks.py:1189 +#: cps/editbooks.py:748 cps/editbooks.py:1190 msgid "File to be uploaded must have an extension" msgstr "Filen som skal lastes opp må ha en utvidelse" -#: cps/editbooks.py:755 +#: cps/editbooks.py:756 #, 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:775 +#: cps/editbooks.py:776 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "Kunne ikke flytte omslagsfil %(file)s: %(error)s" -#: cps/editbooks.py:832 cps/editbooks.py:834 +#: cps/editbooks.py:833 cps/editbooks.py:835 msgid "Book Format Successfully Deleted" msgstr "Bokformatet er slettet" -#: cps/editbooks.py:841 cps/editbooks.py:843 +#: cps/editbooks.py:842 cps/editbooks.py:844 msgid "Book Successfully Deleted" msgstr "Boken ble slettet" -#: cps/editbooks.py:895 +#: cps/editbooks.py:896 msgid "You are missing permissions to delete books" msgstr "Du mangler tillatelser til å slette bøker" -#: cps/editbooks.py:945 +#: cps/editbooks.py:946 msgid "edit metadata" msgstr "redigere metadata" -#: cps/editbooks.py:994 +#: cps/editbooks.py:995 #, python-format msgid "%(seriesindex)s is not a valid number, skipping" msgstr "%(seriesindex)s er ikke et gyldig tall, hopper over" -#: cps/editbooks.py:1180 +#: cps/editbooks.py:1181 msgid "User has no rights to upload additional file formats" msgstr "Brukeren har ingen rettigheter til å laste opp flere filformater" -#: cps/editbooks.py:1201 +#: cps/editbooks.py:1202 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "Kunne ikke opprette banen %(path)s (Tillatelse nektet)." -#: cps/editbooks.py:1206 +#: cps/editbooks.py:1207 #, python-format msgid "Failed to store file %(file)s." msgstr "Kunne ikke lagre filen %(file)s." -#: cps/editbooks.py:1230 +#: cps/editbooks.py:1231 #, python-format msgid "File format %(ext)s added to %(book)s" msgstr "Filformat %(ext)s lagt til %(book)s" @@ -654,207 +655,207 @@ msgstr "Google Disk-konfigurasjonen er ikke fullført. Prøv å deaktivere og ak 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" -#: cps/helper.py:84 +#: cps/helper.py:86 #, python-format 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:91 cps/tasks/convert.py:86 +#: cps/helper.py:93 cps/tasks/convert.py:86 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "%(format)s ikke funnet på Google Disk: %(fn)s" -#: cps/helper.py:96 +#: cps/helper.py:98 #, python-format msgid "%(format)s not found: %(fn)s" msgstr "%(format)s ikke funnet: %(fn)s" -#: cps/helper.py:101 cps/helper.py:226 cps/templates/detail.html:58 +#: cps/helper.py:103 cps/helper.py:228 cps/templates/detail.html:58 #, fuzzy msgid "Send to eReader" msgstr "Send til E-Reader" -#: cps/helper.py:102 cps/helper.py:120 cps/helper.py:228 +#: cps/helper.py:104 cps/helper.py:122 cps/helper.py:230 #, fuzzy msgid "This Email has been sent via Calibre-Web." msgstr "Denne e-posten er sendt via Calibre-Web." -#: cps/helper.py:118 +#: cps/helper.py:120 #, fuzzy msgid "Calibre-Web Test Email" msgstr "Calibre-Web test e-post" -#: cps/helper.py:119 +#: cps/helper.py:121 #, fuzzy msgid "Test Email" msgstr "Test e-post" -#: cps/helper.py:136 +#: cps/helper.py:138 msgid "Get Started with Calibre-Web" msgstr "Kom i gang med Calibre-Web" -#: cps/helper.py:141 +#: cps/helper.py:143 #, fuzzy, python-format msgid "Registration Email for user: %(name)s" msgstr "Registrerings-e-post for bruker: %(name)s" -#: cps/helper.py:152 cps/helper.py:158 +#: cps/helper.py:154 cps/helper.py:160 #, fuzzy, python-format msgid "Convert %(orig)s to %(format)s and send to eReader" msgstr "Konverter %(orig)s til %(format)s og send til E-Reader" -#: cps/helper.py:177 cps/helper.py:181 cps/helper.py:185 +#: cps/helper.py:179 cps/helper.py:183 cps/helper.py:187 #, fuzzy, python-format msgid "Send %(format)s to eReader" msgstr "Send %(format)s til E-Reader" -#: cps/helper.py:225 +#: cps/helper.py:227 #, fuzzy, python-format msgid "%(book)s send to eReader" msgstr "%(book)s sendes til E-Reader" -#: cps/helper.py:230 +#: cps/helper.py:232 msgid "The requested file could not be read. Maybe wrong permissions?" msgstr "Den forespurte filen kunne ikke leses. Kanskje feil tillatelser?" -#: cps/helper.py:345 +#: cps/helper.py:347 msgid "Read status could not set: {}" msgstr "Lesestatus kunne ikke angis: {}" -#: cps/helper.py:368 +#: cps/helper.py:370 #, python-format msgid "Deleting bookfolder for book %(id)s failed, path has subfolders: %(path)s" msgstr "Sletting av bokmappe for bok %(id)s mislyktes, banen har undermapper: %(path)s" -#: cps/helper.py:374 +#: cps/helper.py:376 #, python-format msgid "Deleting book %(id)s failed: %(message)s" msgstr "Sletting av bok %(id)s mislyktes: %(message)s" -#: cps/helper.py:385 +#: cps/helper.py:387 #, python-format 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:450 +#: cps/helper.py:452 #, 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:522 cps/helper.py:531 +#: cps/helper.py:524 cps/helper.py:533 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "Fil %(file)s ikke funnet på Google Disk" -#: cps/helper.py:565 +#: cps/helper.py:567 #, 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:585 +#: cps/helper.py:587 msgid "Error in rename file in path: {}" msgstr "Feil i endre navn på fil i banen: {}" -#: cps/helper.py:603 +#: cps/helper.py:605 #, python-format msgid "Book path %(path)s not found on Google Drive" msgstr "Finner ikke bokbane %(path)s på Google Disk" -#: cps/helper.py:668 +#: cps/helper.py:670 #, fuzzy msgid "Found an existing account for this Email address" msgstr "Fant en eksisterende konto for denne e-postadressen" -#: cps/helper.py:676 +#: cps/helper.py:678 msgid "This username is already taken" msgstr "Dette brukernavnet er allerede tatt" -#: cps/helper.py:688 +#: cps/helper.py:690 #, fuzzy msgid "Invalid Email address format" msgstr "Ugyldig format for e-postadresse" -#: cps/helper.py:706 +#: cps/helper.py:710 msgid "Password doesn't comply with password validation rules" msgstr "" -#: cps/helper.py:855 +#: cps/helper.py:859 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:865 +#: cps/helper.py:869 msgid "Error Downloading Cover" msgstr "Feil ved nedlasting av cover" -#: cps/helper.py:868 +#: cps/helper.py:872 msgid "Cover Format Error" msgstr "Omslagsformatfeil" -#: cps/helper.py:871 +#: cps/helper.py:875 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:881 +#: cps/helper.py:885 msgid "Failed to create path for cover" msgstr "Kunne ikke opprette bane for dekning" -#: cps/helper.py:897 +#: cps/helper.py:901 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:908 +#: cps/helper.py:912 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:920 +#: cps/helper.py:924 msgid "Invalid cover file content" msgstr "Ugyldig omslagsfilinnhold" -#: cps/helper.py:924 +#: cps/helper.py:928 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "Bare jpg/jpeg-filer støttes som coverfile" -#: cps/helper.py:995 cps/helper.py:1183 +#: cps/helper.py:999 cps/helper.py:1156 msgid "Cover" msgstr "Dekke" -#: cps/helper.py:1032 +#: cps/helper.py:1016 msgid "Unrar binary file not found" msgstr "Unrar binær fil ikke funnet" -#: cps/helper.py:1043 +#: cps/helper.py:1027 msgid "Error executing UnRar" msgstr "Feil ved kjøring av UnRar" -#: cps/helper.py:1051 +#: cps/helper.py:1035 msgid "Could not find the specified directory" msgstr "" -#: cps/helper.py:1054 +#: cps/helper.py:1038 msgid "Please specify a directory, not a file" msgstr "" -#: cps/helper.py:1068 +#: cps/helper.py:1052 #, fuzzy msgid "Calibre binaries not viable" msgstr "DB er ikke skrivbar" -#: cps/helper.py:1077 +#: cps/helper.py:1061 #, python-format msgid "Missing calibre binaries: %(missing)s" msgstr "" -#: cps/helper.py:1079 +#: cps/helper.py:1063 #, fuzzy, python-format msgid "Missing executable permissions: %(missing)s" msgstr "Utførelsestillatelser mangler" -#: cps/helper.py:1084 +#: cps/helper.py:1068 #, fuzzy msgid "Error excecuting Calibre" msgstr "Feil ved kjøring av UnRar" -#: cps/helper.py:1185 cps/templates/admin.html:216 +#: cps/helper.py:1158 cps/templates/admin.html:216 msgid "Queue all books for metadata backup" msgstr "Sett alle bøker i kø for sikkerhetskopiering av metadata" @@ -938,7 +939,7 @@ msgstr "{} Stjerner" #: cps/remotelogin.py:62 cps/templates/layout.html:67 #: cps/templates/layout.html:101 cps/templates/login.html:4 -#: cps/templates/login.html:21 cps/web.py:1333 +#: cps/templates/login.html:21 cps/web.py:1353 msgid "Login" msgstr "Logg Inn" @@ -954,7 +955,7 @@ msgstr "Token har utløpt" msgid "Success! Please return to your device" msgstr "Suksess! Gå tilbake til enheten din" -#: cps/render_template.py:42 cps/web.py:414 +#: cps/render_template.py:42 cps/web.py:418 msgid "Books" msgstr "Bøker" @@ -979,7 +980,7 @@ msgstr "Nedlastede bøker" msgid "Show Downloaded Books" msgstr "Vis nedlastede bøker" -#: cps/render_template.py:59 cps/templates/index.xml:33 cps/web.py:429 +#: cps/render_template.py:59 cps/templates/index.xml:33 cps/web.py:433 msgid "Top Rated Books" msgstr "Topprangerte bøker" @@ -988,7 +989,7 @@ msgid "Show Top Rated Books" msgstr "Vis best rangerte bøker" #: cps/render_template.py:62 cps/templates/index.xml:55 -#: cps/templates/index.xml:59 cps/web.py:750 +#: cps/templates/index.xml:59 cps/web.py:766 msgid "Read Books" msgstr "Lese bøker" @@ -998,7 +999,7 @@ msgid "Show Read and Unread" msgstr "Vis lest og ulest" #: cps/render_template.py:66 cps/templates/index.xml:62 -#: cps/templates/index.xml:66 cps/web.py:753 +#: cps/templates/index.xml:66 cps/web.py:769 msgid "Unread Books" msgstr "Uleste bøker" @@ -1016,7 +1017,7 @@ msgid "Show Random Books" msgstr "Vis tilfeldige bøker" #: cps/render_template.py:72 cps/templates/book_table.html:67 -#: cps/templates/index.xml:84 cps/web.py:1119 +#: cps/templates/index.xml:84 cps/web.py:1135 msgid "Categories" msgstr "Kategorier" @@ -1027,7 +1028,7 @@ msgstr "Vis kategorivalg" #: cps/render_template.py:75 cps/templates/book_edit.html:91 #: cps/templates/book_table.html:68 cps/templates/index.xml:91 -#: cps/templates/search_form.html:70 cps/web.py:1009 cps/web.py:1021 +#: cps/templates/search_form.html:70 cps/web.py:1025 cps/web.py:1037 msgid "Series" msgstr "Serie" @@ -1047,7 +1048,7 @@ msgid "Show Author Section" msgstr "Vis forfattervalg" #: cps/render_template.py:82 cps/templates/book_table.html:72 -#: cps/templates/index.xml:77 cps/web.py:977 +#: cps/templates/index.xml:77 cps/web.py:993 msgid "Publishers" msgstr "Forlag" @@ -1058,7 +1059,7 @@ msgstr "Vis utgivervalg" #: cps/render_template.py:85 cps/templates/book_table.html:70 #: cps/templates/index.xml:98 cps/templates/search_form.html:108 -#: cps/web.py:1091 +#: cps/web.py:1107 msgid "Languages" msgstr "Språk" @@ -1085,7 +1086,7 @@ msgstr "Filformater" msgid "Show File Formats Section" msgstr "Vis valg av filformater" -#: cps/render_template.py:96 cps/web.py:776 +#: cps/render_template.py:96 cps/web.py:792 msgid "Archived Books" msgstr "Arkiverte bøker" @@ -1094,7 +1095,7 @@ msgstr "Arkiverte bøker" msgid "Show Archived Books" msgstr "Vis arkiverte bøker" -#: cps/render_template.py:101 cps/web.py:807 +#: cps/render_template.py:101 cps/web.py:823 msgid "Books List" msgstr "Bøker Liste" @@ -1315,175 +1316,180 @@ msgstr "En ny oppdatering er tilgjengelig. Klikk på knappen nedenfor for å opp msgid "No release information available" msgstr "Ingen utgivelsesinformasjon tilgjengelig" -#: cps/templates/index.html:6 cps/web.py:441 +#: cps/templates/index.html:6 cps/web.py:445 msgid "Discover (Random Books)" msgstr "Discover (tilfeldige bøker)" -#: cps/web.py:477 +#: cps/web.py:481 msgid "Hot Books (Most Downloaded)" msgstr "Hot Books (mest nedlastede)" -#: cps/web.py:508 +#: cps/web.py:512 #, python-format msgid "Downloaded books by %(user)s" msgstr "Lastet ned bøker av %(user)s" -#: cps/web.py:541 +#: cps/web.py:545 #, python-format msgid "Author: %(name)s" msgstr "Forfatter: %(name)s" -#: cps/web.py:577 +#: cps/web.py:581 #, python-format msgid "Publisher: %(name)s" msgstr "Utgiver: %(name)s" -#: cps/web.py:605 +#: cps/web.py:609 #, python-format msgid "Series: %(serie)s" msgstr "Serie: %(serie)s" -#: cps/web.py:620 +#: cps/web.py:623 msgid "Rating: None" msgstr "Vurdering: Ingen" -#: cps/web.py:629 +#: cps/web.py:632 #, python-format msgid "Rating: %(rating)s stars" msgstr "Rangering: %(rating)s stjerner" -#: cps/web.py:645 +#: cps/web.py:663 #, python-format msgid "File format: %(format)s" msgstr "Filformat: %(format)s" -#: cps/web.py:682 +#: cps/web.py:698 #, python-format msgid "Category: %(name)s" msgstr "Kategori: %(name)s" -#: cps/web.py:711 +#: cps/web.py:727 #, python-format msgid "Language: %(name)s" msgstr "Språk: %(name)s" -#: cps/templates/admin.html:16 cps/web.py:949 +#: cps/templates/admin.html:16 cps/web.py:965 msgid "Downloads" msgstr "Nedlastinger" -#: cps/web.py:1051 +#: cps/web.py:1067 msgid "Ratings list" msgstr "Rangeringsliste" -#: cps/web.py:1078 +#: cps/web.py:1094 msgid "File formats list" msgstr "Liste over filformater" -#: cps/web.py:1233 +#: cps/web.py:1249 #, fuzzy msgid "Please configure the SMTP mail settings first..." msgstr "Vennligst konfigurer SMTP-postinnstillingene først..." -#: cps/web.py:1240 +#: cps/web.py:1256 #, fuzzy, python-format msgid "Success! Book queued for sending to %(eReadermail)s" msgstr "Boken ble satt i kø for sending til %(eReadermail)s" -#: cps/web.py:1243 +#: cps/web.py:1259 #, fuzzy, python-format msgid "Oops! There was an error sending book: %(res)s" msgstr "Oops! Det oppsto en feil ved sending av denne boken: %(res)s" -#: cps/web.py:1245 +#: cps/web.py:1261 #, fuzzy msgid "Oops! Please update your profile with a valid eReader Email." msgstr "Vennligst oppdater profilen din med en gyldig Send til Kindle-e-postadresse." -#: cps/web.py:1261 +#: cps/web.py:1277 msgid "Please wait one minute to register next user" msgstr "" #: cps/templates/layout.html:68 cps/templates/layout.html:102 -#: cps/templates/login.html:27 cps/templates/register.html:17 cps/web.py:1262 -#: cps/web.py:1267 cps/web.py:1271 cps/web.py:1277 cps/web.py:1297 -#: cps/web.py:1301 cps/web.py:1314 cps/web.py:1317 +#: cps/templates/login.html:27 cps/templates/register.html:17 cps/web.py:1278 +#: cps/web.py:1282 cps/web.py:1287 cps/web.py:1291 cps/web.py:1297 +#: cps/web.py:1317 cps/web.py:1321 cps/web.py:1334 cps/web.py:1337 msgid "Register" msgstr "Registrere" -#: cps/web.py:1266 cps/web.py:1313 +#: cps/web.py:1281 cps/web.py:1385 +#, fuzzy +msgid "Connection error to limiter backend, please contact your administrator" +msgstr "E-postserveren er ikke konfigurert, kontakt administratoren din!" + +#: cps/web.py:1286 cps/web.py:1333 #, fuzzy msgid "Oops! Email server is not configured, please contact your administrator." msgstr "E-postserveren er ikke konfigurert, kontakt administratoren din!" -#: cps/web.py:1299 +#: cps/web.py:1319 #, fuzzy msgid "Oops! Your Email is not allowed." msgstr "Din e-post kan ikke registreres" -#: cps/web.py:1302 +#: cps/web.py:1322 msgid "Success! Confirmation Email has been sent." msgstr "" -#: cps/web.py:1348 cps/web.py:1367 +#: cps/web.py:1368 cps/web.py:1391 #, fuzzy msgid "Cannot activate LDAP authentication" msgstr "Kan ikke aktivere LDAP-autentisering" -#: cps/web.py:1361 +#: cps/web.py:1381 msgid "Please wait one minute before next login" msgstr "" -#: cps/web.py:1376 +#: cps/web.py:1400 #, fuzzy, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "du er nå logget på som: '%(nickname)s'" -#: cps/web.py:1383 +#: cps/web.py:1407 #, fuzzy, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgstr "Reservepålogging som: '%(nickname)s', LDAP-serveren er ikke tilgjengelig, eller brukeren er ukjent" -#: cps/web.py:1388 +#: cps/web.py:1412 #, fuzzy, python-format msgid "Could not login: %(message)s" msgstr "Kunne ikke logge på: %(message)s" -#: cps/web.py:1392 cps/web.py:1417 +#: cps/web.py:1416 cps/web.py:1441 #, fuzzy msgid "Wrong Username or Password" msgstr "Vennligst skriv inn gyldig brukernavn for å tilbakestille passordet" -#: cps/web.py:1399 +#: cps/web.py:1423 #, fuzzy msgid "New Password was sent to your email address" msgstr "Nytt passord ble sendt til e-postadressen din" -#: cps/web.py:1403 +#: cps/web.py:1427 #, fuzzy msgid "An unknown error occurred. Please try again later." msgstr "En ukjent feil oppstod. Prøv igjen senere." -#: cps/web.py:1405 +#: cps/web.py:1429 #, fuzzy msgid "Please enter valid username to reset password" msgstr "Vennligst skriv inn gyldig brukernavn for å tilbakestille passordet" -#: cps/web.py:1413 +#: cps/web.py:1437 #, fuzzy, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "du er nå logget på som: '%(nickname)s'" -#: cps/web.py:1471 cps/web.py:1521 +#: cps/web.py:1495 cps/web.py:1545 #, fuzzy, python-format msgid "%(name)s's Profile" msgstr "%(name)s sin profil" -#: cps/web.py:1487 +#: cps/web.py:1511 #, fuzzy msgid "Success! Profile Updated" msgstr "Profil oppdatert" -#: cps/web.py:1491 +#: cps/web.py:1515 msgid "Oops! An account already exists for this Email." msgstr "" @@ -1496,41 +1502,41 @@ msgstr "Fant ingen gyldig gmail.json-fil med OAuth-informasjon" msgid "%(book)s send to E-Reader" msgstr "%(book)s sendes til E-Reader" -#: cps/tasks/convert.py:166 +#: cps/tasks/convert.py:167 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "Caliber ebook-convert %(tool)s ble ikke funnet" -#: cps/tasks/convert.py:200 +#: cps/tasks/convert.py:201 #, python-format msgid "%(format)s format not found on disk" msgstr "%(format)s format ikke funnet på disken" -#: cps/tasks/convert.py:204 +#: cps/tasks/convert.py:205 msgid "Ebook converter failed with unknown error" msgstr "Ebook-konvertering mislyktes med ukjent feil" -#: cps/tasks/convert.py:223 +#: cps/tasks/convert.py:224 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "Kepubify-konvertering mislyktes: %(error)s" -#: cps/tasks/convert.py:244 +#: cps/tasks/convert.py:245 #, 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:279 +#: cps/tasks/convert.py:287 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "Ebook-konvertering mislyktes: %(error)s" -#: cps/tasks/convert.py:302 +#: cps/tasks/convert.py:310 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "Caliber mislyktes med feil: %(error)s" -#: cps/tasks/convert.py:307 +#: cps/tasks/convert.py:315 msgid "Convert" msgstr "Konvertere" @@ -1538,7 +1544,7 @@ msgstr "Konvertere" msgid "Reconnecting Calibre database" msgstr "Kobler til Caliber-databasen på nytt" -#: cps/tasks/mail.py:269 +#: cps/tasks/mail.py:278 msgid "E-mail" msgstr "E-post" @@ -1823,12 +1829,12 @@ 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:414 -#: cps/templates/config_view_edit.html:175 cps/templates/modal_dialogs.html:64 -#: cps/templates/modal_dialogs.html:99 cps/templates/modal_dialogs.html:117 -#: cps/templates/modal_dialogs.html:135 cps/templates/schedule_edit.html:45 -#: cps/templates/shelf_edit.html:27 cps/templates/tasks.html:46 -#: cps/templates/user_edit.html:144 +#: cps/templates/config_db.html:66 cps/templates/config_edit.html:428 +#: 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 +#: cps/templates/schedule_edit.html:45 cps/templates/shelf_edit.html:27 +#: cps/templates/tasks.html:46 cps/templates/user_edit.html:144 msgid "Cancel" msgstr "Avbryt" @@ -2009,7 +2015,7 @@ msgid "Fetch Metadata" msgstr "Hent metadata" #: cps/templates/book_edit.html:213 cps/templates/config_db.html:65 -#: cps/templates/config_edit.html:413 cps/templates/config_view_edit.html:174 +#: cps/templates/config_edit.html:427 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 @@ -2174,7 +2180,7 @@ msgid "Location of Calibre Database" msgstr "Plassering av Caliber-databasen" #: cps/templates/config_db.html:21 -msgid "Separate Book files from Library (Highly experimental, might not work at all)" +msgid "Separate Book Files from Library" msgstr "" #: cps/templates/config_db.html:34 @@ -2258,7 +2264,7 @@ msgid "Convert non-English characters in title and author while saving to disk" msgstr "Konverter ikke-engelske tegn i tittel og forfatter mens du lagrer på disk" #: cps/templates/config_edit.html:108 -msgid "Embed Metadata to Ebook File on Download and Conversion (needs Calibre/Kepubify binaries)" +msgid "Embed Metadata to Ebook File on Download/Conversion/e-mail (needs Calibre/Kepubify binaries)" msgstr "" #: cps/templates/config_edit.html:112 @@ -2484,39 +2490,51 @@ msgstr "Vis forfattervalg" msgid "Limit failed login attempts" msgstr "" -#: cps/templates/config_edit.html:376 +#: cps/templates/config_edit.html:377 +msgid "Configure Backend for Limiter" +msgstr "" + +#: cps/templates/config_edit.html:381 +msgid "Options for Limiter" +msgstr "" + +#: cps/templates/config_edit.html:386 msgid "Session protection" msgstr "" -#: cps/templates/config_edit.html:378 +#: cps/templates/config_edit.html:388 msgid "Basic" msgstr "" -#: cps/templates/config_edit.html:379 +#: cps/templates/config_edit.html:389 msgid "Strong" msgstr "" -#: cps/templates/config_edit.html:384 +#: cps/templates/config_edit.html:394 msgid "User Password policy" msgstr "" -#: cps/templates/config_edit.html:388 +#: cps/templates/config_edit.html:398 msgid "Minimum password length" msgstr "" -#: cps/templates/config_edit.html:393 +#: cps/templates/config_edit.html:403 msgid "Enforce number" msgstr "" -#: cps/templates/config_edit.html:397 +#: cps/templates/config_edit.html:407 msgid "Enforce lowercase characters" msgstr "" -#: cps/templates/config_edit.html:401 +#: cps/templates/config_edit.html:411 msgid "Enforce uppercase characters" msgstr "" -#: cps/templates/config_edit.html:405 +#: cps/templates/config_edit.html:415 +msgid "Enforce characters (needed For Chinese/Japanese/Korean Characters)" +msgstr "" + +#: cps/templates/config_edit.html:419 msgid "Enforce special characters" msgstr "" @@ -2644,51 +2662,51 @@ msgstr "Sletting av bok %(index)s mislyktes: %(range)s" msgid "Published" msgstr "Forlegger" -#: cps/templates/detail.html:250 cps/templates/listenmp3.html:158 +#: cps/templates/detail.html:251 cps/templates/listenmp3.html:158 msgid "Mark As Unread" msgstr "" -#: cps/templates/detail.html:251 cps/templates/listenmp3.html:158 +#: cps/templates/detail.html:252 cps/templates/listenmp3.html:158 msgid "Mark As Read" msgstr "" -#: cps/templates/detail.html:253 cps/templates/listenmp3.html:159 +#: cps/templates/detail.html:254 cps/templates/listenmp3.html:159 #, fuzzy msgid "Read" msgstr "redusere" -#: cps/templates/detail.html:263 cps/templates/listenmp3.html:166 +#: cps/templates/detail.html:264 cps/templates/listenmp3.html:166 msgid "Restore from archive" msgstr "" -#: cps/templates/detail.html:264 cps/templates/listenmp3.html:166 +#: cps/templates/detail.html:265 cps/templates/listenmp3.html:166 msgid "Add to archive" msgstr "" -#: cps/templates/detail.html:266 cps/templates/listenmp3.html:167 +#: cps/templates/detail.html:267 cps/templates/listenmp3.html:167 #, fuzzy msgid "Archived" msgstr "Arkiverte bøker" -#: cps/templates/detail.html:277 cps/templates/listenmp3.html:177 +#: cps/templates/detail.html:278 cps/templates/listenmp3.html:177 #, fuzzy msgid "Description:" msgstr "Beskrivelse" -#: cps/templates/detail.html:292 cps/templates/listenmp3.html:190 +#: cps/templates/detail.html:293 cps/templates/listenmp3.html:190 #: cps/templates/search.html:16 #, fuzzy msgid "Add to shelf" msgstr "Rediger en hylle" -#: cps/templates/detail.html:304 cps/templates/detail.html:323 +#: cps/templates/detail.html:305 cps/templates/detail.html:324 #: cps/templates/feed.xml:81 cps/templates/layout.html:154 #: cps/templates/listenmp3.html:201 cps/templates/listenmp3.html:218 #: cps/templates/search.html:22 msgid "(Public)" msgstr "" -#: cps/templates/detail.html:339 +#: cps/templates/detail.html:340 #, fuzzy msgid "Edit Metadata" msgstr "redigere metadata" diff --git a/cps/translations/pl/LC_MESSAGES/messages.mo b/cps/translations/pl/LC_MESSAGES/messages.mo index 247b9548..4902f582 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 22232528..9f77aa7f 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-02-10 10:06+0100\n" +"POT-Creation-Date: 2024-04-27 07:20+0200\n" "PO-Revision-Date: 2021-06-12 15:35+0200\n" "Last-Translator: Radosław Kierznowski \n" "Language: pl\n" @@ -23,502 +23,502 @@ msgstr "" msgid "Statistics" msgstr "Statystyki" -#: cps/admin.py:149 +#: cps/admin.py:150 #, fuzzy msgid "Server restarted, please reload page." msgstr "Serwer uruchomiony ponownie, proszę odświeżyć stronę" -#: cps/admin.py:151 +#: cps/admin.py:152 #, fuzzy msgid "Performing Server shutdown, please close window." msgstr "Wykonano wyłączenie serwera, proszę zamknąć okno" -#: cps/admin.py:159 +#: cps/admin.py:160 msgid "Success! Database Reconnected" msgstr "" -#: cps/admin.py:162 +#: cps/admin.py:163 msgid "Unknown command" msgstr "Nieznane polecenie" -#: cps/admin.py:173 +#: cps/admin.py:174 #, fuzzy 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:206 cps/editbooks.py:589 cps/editbooks.py:591 -#: cps/editbooks.py:629 cps/editbooks.py:646 cps/editbooks.py:1262 +#: cps/admin.py:207 cps/editbooks.py:590 cps/editbooks.py:592 +#: cps/editbooks.py:630 cps/editbooks.py:647 cps/editbooks.py:1263 #: cps/updater.py:613 cps/uploader.py:93 cps/uploader.py:102 msgid "Unknown" msgstr "Nieznany" -#: cps/admin.py:231 +#: cps/admin.py:232 msgid "Admin page" msgstr "Panel administratora" -#: cps/admin.py:251 +#: cps/admin.py:252 msgid "Basic Configuration" msgstr "Konfiguracja podstawowa" -#: cps/admin.py:289 +#: cps/admin.py:290 msgid "UI Configuration" msgstr "Konfiguracja Interfejsu" -#: cps/admin.py:323 cps/templates/admin.html:51 +#: cps/admin.py:324 cps/templates/admin.html:51 msgid "Edit Users" msgstr "Edytuj użytkowników" # ??? -#: cps/admin.py:367 cps/opds.py:506 cps/templates/grid.html:14 +#: cps/admin.py:368 cps/opds.py:506 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "Wszystko" -#: cps/admin.py:394 cps/admin.py:1405 +#: cps/admin.py:395 cps/admin.py:1417 msgid "User not found" msgstr "Nie znaleziono użytkownika" -#: cps/admin.py:408 +#: cps/admin.py:409 msgid "{} users deleted successfully" msgstr "{} użytkowników usuniętych pomyślnie" -#: cps/admin.py:431 cps/templates/config_view_edit.html:133 +#: cps/admin.py:432 cps/templates/config_view_edit.html:133 #: cps/templates/user_edit.html:45 cps/templates/user_table.html:81 msgid "Show All" msgstr "Pokaż wszystkie" -#: cps/admin.py:452 cps/admin.py:458 +#: cps/admin.py:453 cps/admin.py:459 msgid "Malformed request" msgstr "Nieprawidłowo sformułowane żądanie" -#: cps/admin.py:470 cps/admin.py:2033 +#: cps/admin.py:471 cps/admin.py:2048 msgid "Guest Name can't be changed" msgstr "Nazwa gościa nie może być zmieniona" -#: cps/admin.py:482 +#: cps/admin.py:483 msgid "Guest can't have this role" msgstr "Gość nie może pełnić tej roli" -#: cps/admin.py:494 cps/admin.py:1987 +#: cps/admin.py:495 cps/admin.py:2002 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" -#: cps/admin.py:498 cps/admin.py:512 +#: cps/admin.py:499 cps/admin.py:513 msgid "Value has to be true or false" msgstr "Wartość musi być prawdziwa lub fałszywa" -#: cps/admin.py:500 +#: cps/admin.py:501 msgid "Invalid role" msgstr "Nieprawidłowa rola" -#: cps/admin.py:504 +#: cps/admin.py:505 msgid "Guest can't have this view" msgstr "Gość nie może tego zobaczyć" -#: cps/admin.py:514 +#: cps/admin.py:515 msgid "Invalid view" msgstr "Nieprawidłowy widok" -#: cps/admin.py:517 +#: cps/admin.py:518 msgid "Guest's Locale is determined automatically and can't be set" msgstr "Lokalizacja gościa jest określana automatycznie i nie można jej ustawić" -#: cps/admin.py:521 +#: cps/admin.py:522 msgid "No Valid Locale Given" msgstr "Nie podano prawidłowej lokalizacji" -#: cps/admin.py:532 +#: cps/admin.py:533 msgid "No Valid Book Language Given" msgstr "Nie podano obowiązującego języka książki" -#: cps/admin.py:534 cps/editbooks.py:455 +#: cps/admin.py:535 cps/editbooks.py:456 msgid "Parameter not found" msgstr "Nie znaleziono parametru" -#: cps/admin.py:571 +#: cps/admin.py:572 #, fuzzy msgid "Invalid Read Column" msgstr "Nieprawidłowa kolumna odczytu" -#: cps/admin.py:577 +#: cps/admin.py:578 #, fuzzy msgid "Invalid Restricted Column" msgstr "Nieprawidłowa kolumna z ograniczeniami" -#: cps/admin.py:597 cps/admin.py:1858 +#: cps/admin.py:598 cps/admin.py:1873 msgid "Calibre-Web configuration updated" msgstr "Konfiguracja Calibre-Web została zaktualizowana" -#: cps/admin.py:609 +#: cps/admin.py:610 msgid "Do you really want to delete the Kobo Token?" msgstr "Czy na pewno chcesz usunąć Token Kobo?" -#: cps/admin.py:611 +#: cps/admin.py:612 msgid "Do you really want to delete this domain?" msgstr "Czy naprawdę chcesz usunąć tę domenę?" -#: cps/admin.py:613 +#: cps/admin.py:614 msgid "Do you really want to delete this user?" msgstr "Czy naprawdę chcesz usunąć tego użytkownika?" -#: cps/admin.py:615 +#: cps/admin.py:616 msgid "Are you sure you want to delete this shelf?" msgstr "Czy na pewno chcesz usunąć półkę?" -#: cps/admin.py:617 +#: cps/admin.py:618 msgid "Are you sure you want to change locales of selected user(s)?" msgstr "Czy na pewno chcesz zmienić ustawienia lokalne wybranego użytkownika(ów)?" -#: cps/admin.py:619 +#: cps/admin.py:620 msgid "Are you sure you want to change visible book languages for selected user(s)?" msgstr "Czy na pewno chcesz zmienić widoczne języki książek dla wybranego użytkownika (użytkowników)?" -#: cps/admin.py:621 +#: cps/admin.py:622 msgid "Are you sure you want to change the selected role for the selected user(s)?" msgstr "Czy na pewno chcesz zmienić wybraną rolę dla wybranego użytkownika (użytkowników)?" -#: cps/admin.py:623 +#: cps/admin.py:624 msgid "Are you sure you want to change the selected restrictions for the selected user(s)?" msgstr "Czy na pewno chcesz zmienić wybrane ograniczenia dla wybranego użytkownika(ów)?" -#: cps/admin.py:625 +#: cps/admin.py:626 msgid "Are you sure you want to change the selected visibility restrictions for the selected user(s)?" msgstr "Czy na pewno chcesz zmienić wybrane ograniczenia widoczności dla wybranego użytkownika(ów)?" -#: cps/admin.py:628 +#: cps/admin.py:629 msgid "Are you sure you want to change shelf sync behavior for the selected user(s)?" msgstr "Czy na pewno chcesz zmienić zachowanie synchronizacji półek dla wybranego użytkownika(ów)?" -#: cps/admin.py:630 +#: cps/admin.py:631 msgid "Are you sure you want to change Calibre library location?" msgstr "Czy na pewno chcesz zmienić lokalizację biblioteki Calibre?" -#: cps/admin.py:632 +#: cps/admin.py:633 msgid "Calibre-Web will search for updated Covers and update Cover Thumbnails, this may take a while?" msgstr "" -#: cps/admin.py:635 +#: cps/admin.py:636 msgid "Are you sure you want delete Calibre-Web's sync database to force a full sync with your Kobo Reader?" msgstr "" -#: cps/admin.py:878 cps/admin.py:884 cps/admin.py:894 cps/admin.py:904 +#: cps/admin.py:879 cps/admin.py:885 cps/admin.py:895 cps/admin.py:905 #: cps/templates/modal_dialogs.html:29 cps/templates/user_table.html:41 #: cps/templates/user_table.html:58 msgid "Deny" msgstr "Zabroń" -#: cps/admin.py:880 cps/admin.py:886 cps/admin.py:896 cps/admin.py:906 +#: cps/admin.py:881 cps/admin.py:887 cps/admin.py:897 cps/admin.py:907 #: cps/templates/modal_dialogs.html:28 cps/templates/user_table.html:44 #: cps/templates/user_table.html:61 msgid "Allow" msgstr "Zezwalaj" -#: cps/admin.py:921 +#: cps/admin.py:940 msgid "{} sync entries deleted" msgstr "" -#: cps/admin.py:969 +#: cps/admin.py:981 #, fuzzy msgid "Tag not found" msgstr "Nie znaleziono znacznika" -#: cps/admin.py:981 +#: cps/admin.py:993 msgid "Invalid Action" msgstr "Nieprawidłowe działanie" -#: cps/admin.py:1111 +#: cps/admin.py:1123 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "client_secrets.json nie został skonfigurowany dla aplikacji webowej" -#: cps/admin.py:1156 +#: cps/admin.py:1168 msgid "Logfile Location is not Valid, Please Enter Correct Path" msgstr "Lokalizacja pliku dziennika jest nieprawidłowa, wprowadź poprawną ścieżkę" -#: cps/admin.py:1162 +#: cps/admin.py:1174 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:1196 +#: cps/admin.py:1208 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:1202 +#: cps/admin.py:1214 msgid "Please Enter a LDAP Service Account and Password" msgstr "Proszę wprowadzić konto i hasło usługi LDAP" -#: cps/admin.py:1205 +#: cps/admin.py:1217 msgid "Please Enter a LDAP Service Account" msgstr "Proszę wprowadzić konto usługi LDAP" -#: cps/admin.py:1210 +#: cps/admin.py:1222 #, 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:1212 +#: cps/admin.py:1224 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "Filtr obiektów grupy LDAP ma niedopasowany nawias" -#: cps/admin.py:1216 +#: cps/admin.py:1228 #, 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:1218 +#: cps/admin.py:1230 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "Filtr obiektów użytkownika LDAP ma niedopasowany nawias" -#: cps/admin.py:1225 +#: cps/admin.py:1237 #, 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:1227 +#: cps/admin.py:1239 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "Filtr użytkownika członka LDAP ma niedopasowane nawiasy" -#: cps/admin.py:1234 +#: cps/admin.py:1246 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:1265 cps/templates/admin.html:53 +#: cps/admin.py:1277 cps/templates/admin.html:53 msgid "Add New User" msgstr "Dodaj nowego użytkownika" -#: cps/admin.py:1274 cps/templates/admin.html:100 +#: cps/admin.py:1286 cps/templates/admin.html:100 msgid "Edit Email Server Settings" msgstr "Zmień ustawienia SMTP" -#: cps/admin.py:1293 +#: cps/admin.py:1305 msgid "Success! Gmail Account Verified." msgstr "" -#: cps/admin.py:1313 cps/admin.py:1316 cps/admin.py:1698 cps/admin.py:1842 -#: cps/admin.py:1940 cps/admin.py:2061 cps/editbooks.py:241 -#: cps/editbooks.py:317 cps/editbooks.py:1224 cps/shelf.py:90 cps/shelf.py:150 +#: cps/admin.py:1325 cps/admin.py:1328 cps/admin.py:1710 cps/admin.py:1857 +#: cps/admin.py:1955 cps/admin.py:2076 cps/editbooks.py:242 +#: cps/editbooks.py:318 cps/editbooks.py:1225 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:149 cps/web.py:1496 +#: cps/shelf.py:468 cps/tasks/convert.py:150 cps/web.py:1520 #, python-format msgid "Oops! Database Error: %(error)s." msgstr "Błąd bazy danych: %(error)s." -#: cps/admin.py:1323 +#: cps/admin.py:1335 #, 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:1326 +#: cps/admin.py:1338 #, 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:1328 +#: cps/admin.py:1340 msgid "Please configure your e-mail address first..." msgstr "Najpierw skonfiguruj swój adres e-mail..." -#: cps/admin.py:1330 +#: cps/admin.py:1342 msgid "Email Server Settings updated" msgstr "Zaktualizowano ustawienia serwera poczty e-mail" -#: cps/admin.py:1353 cps/templates/admin.html:195 +#: cps/admin.py:1365 cps/templates/admin.html:195 msgid "Edit Scheduled Tasks Settings" msgstr "" -#: cps/admin.py:1365 +#: cps/admin.py:1377 msgid "Invalid start time for task specified" msgstr "" -#: cps/admin.py:1370 +#: cps/admin.py:1382 msgid "Invalid duration for task specified" msgstr "" -#: cps/admin.py:1380 +#: cps/admin.py:1392 msgid "Scheduled tasks settings updated" msgstr "" -#: cps/admin.py:1390 cps/admin.py:1439 cps/admin.py:2057 cps/web.py:1296 +#: cps/admin.py:1402 cps/admin.py:1451 cps/admin.py:2072 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:1394 +#: cps/admin.py:1406 msgid "Settings DB is not Writeable" msgstr "" -#: cps/admin.py:1424 cps/admin.py:2049 +#: cps/admin.py:1436 cps/admin.py:2064 #, python-format msgid "Edit User %(nick)s" msgstr "Edytuj użytkownika %(nick)s" # ??? -#: cps/admin.py:1436 +#: cps/admin.py:1448 #, fuzzy, python-format msgid "Success! Password for user %(user)s reset" msgstr "Zrestartowano hasło użytkownika %(user)s" -#: cps/admin.py:1442 +#: cps/admin.py:1454 #, fuzzy msgid "Oops! Please configure the SMTP mail settings." msgstr "Proszę najpierw skonfigurować ustawienia SMTP poczty e-mail..." -#: cps/admin.py:1453 +#: cps/admin.py:1465 msgid "Logfile viewer" msgstr "Przeglądanie dziennika" -#: cps/admin.py:1519 +#: cps/admin.py:1531 msgid "Requesting update package" msgstr "Żądanie o pakiet aktualizacji" -#: cps/admin.py:1520 +#: cps/admin.py:1532 msgid "Downloading update package" msgstr "Pobieranie pakietu aktualizacji" -#: cps/admin.py:1521 +#: cps/admin.py:1533 msgid "Unzipping update package" msgstr "Rozpakowywanie pakietu aktualizacji" # ??? -#: cps/admin.py:1522 +#: cps/admin.py:1534 msgid "Replacing files" msgstr "Zastępowanie plików" -#: cps/admin.py:1523 +#: cps/admin.py:1535 msgid "Database connections are closed" msgstr "Połączenia z bazą danych zostały zakończone" -#: cps/admin.py:1524 +#: cps/admin.py:1536 msgid "Stopping server" msgstr "Zatrzymywanie serwera" -#: cps/admin.py:1525 +#: cps/admin.py:1537 msgid "Update finished, please press okay and reload page" msgstr "Aktualizacja zakończona, proszę nacisnąć OK i odświeżyć stronę" -#: cps/admin.py:1526 cps/admin.py:1527 cps/admin.py:1528 cps/admin.py:1529 -#: cps/admin.py:1530 cps/admin.py:1531 +#: cps/admin.py:1538 cps/admin.py:1539 cps/admin.py:1540 cps/admin.py:1541 +#: cps/admin.py:1542 cps/admin.py:1543 msgid "Update failed:" msgstr "Aktualizacja nieudana:" -#: cps/admin.py:1526 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 +#: cps/admin.py:1538 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 msgid "HTTP Error" msgstr "Błąd HTTP" -#: cps/admin.py:1527 cps/updater.py:391 cps/updater.py:628 +#: cps/admin.py:1539 cps/updater.py:391 cps/updater.py:628 msgid "Connection error" msgstr "Błąd połączenia" -#: cps/admin.py:1528 cps/updater.py:393 cps/updater.py:630 +#: cps/admin.py:1540 cps/updater.py:393 cps/updater.py:630 msgid "Timeout while establishing connection" msgstr "Przekroczono limit czasu podczas nawiązywania połączenia" -#: cps/admin.py:1529 cps/updater.py:395 cps/updater.py:632 +#: cps/admin.py:1541 cps/updater.py:395 cps/updater.py:632 msgid "General error" msgstr "Błąd ogólny" -#: cps/admin.py:1530 +#: cps/admin.py:1542 #, 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:1531 +#: cps/admin.py:1543 msgid "Files could not be replaced during update" msgstr "" -#: cps/admin.py:1555 +#: cps/admin.py:1567 #, fuzzy msgid "Failed to extract at least One LDAP User" msgstr "Błąd przy tworzeniu przynajmniej jednego użytkownika LDAP" -#: cps/admin.py:1600 +#: cps/admin.py:1612 msgid "Failed to Create at Least One LDAP User" msgstr "Błąd przy tworzeniu przynajmniej jednego użytkownika LDAP" -#: cps/admin.py:1613 +#: cps/admin.py:1625 #, python-format msgid "Error: %(ldaperror)s" msgstr "Błąd: %(ldaperror)s" -#: cps/admin.py:1617 +#: cps/admin.py:1629 msgid "Error: No user returned in response of LDAP server" msgstr "Błąd. LDAP nie zwrócił żadnego użytkownika" -#: cps/admin.py:1650 +#: 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:1652 +#: cps/admin.py:1664 msgid "{} User Successfully Imported" msgstr "{} Użytkownik pomyślnie zaimportowany" -#: cps/admin.py:1710 +#: 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:1730 +#: cps/admin.py:1742 msgid "DB is not Writeable" msgstr "Baza danych nie jest zapisywalna" -#: cps/admin.py:1746 +#: 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:1750 +#: 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:1829 +#: cps/admin.py:1842 msgid "Password length has to be between 1 and 40" msgstr "" -#: cps/admin.py:1881 +#: cps/admin.py:1896 #, fuzzy msgid "Database Settings updated" msgstr "Zaktualizowano ustawienia serwera poczty e-mail" -#: cps/admin.py:1889 +#: cps/admin.py:1904 msgid "Database Configuration" msgstr "Konfiguracja bazy danych" -#: cps/admin.py:1904 cps/web.py:1270 +#: cps/admin.py:1919 cps/web.py:1290 msgid "Oops! Please complete all fields." msgstr "Proszę wypełnić wszystkie pola!" -#: cps/admin.py:1913 +#: cps/admin.py:1928 msgid "E-mail is not from valid domain" msgstr "E-mail nie pochodzi z prawidłowej domeny" -#: cps/admin.py:1919 +#: cps/admin.py:1934 msgid "Add new user" msgstr "Dodaj nowego użytkownika" -#: cps/admin.py:1930 +#: cps/admin.py:1945 #, python-format msgid "User '%(user)s' created" msgstr "Użytkownik '%(user)s' został utworzony" -#: cps/admin.py:1936 +#: cps/admin.py:1951 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:1966 +#: cps/admin.py:1981 #, python-format msgid "User '%(nick)s' deleted" msgstr "Użytkownik '%(nick)s' został usunięty" -#: cps/admin.py:1969 +#: cps/admin.py:1984 #, fuzzy msgid "Can't delete Guest User" msgstr "Nie można usunąć użytkownika gościa" -#: cps/admin.py:1972 +#: cps/admin.py:1987 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:2027 cps/web.py:1445 +#: cps/admin.py:2042 cps/web.py:1469 msgid "Email can't be empty and has to be a valid Email" msgstr "" -#: cps/admin.py:2053 +#: cps/admin.py:2068 #, python-format msgid "User '%(nick)s' updated" msgstr "Użytkownik '%(nick)s' został zaktualizowany" @@ -531,122 +531,123 @@ msgstr "nie zainstalowane" msgid "Execution permissions missing" msgstr "Brak uprawnienia do wykonywania pliku" -#: cps/db.py:752 cps/search.py:137 cps/web.py:731 +#: cps/db.py:752 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:993 cps/templates/config_edit.html:208 +#: cps/db.py:992 cps/templates/config_edit.html:208 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 -#: cps/web.py:558 cps/web.py:592 cps/web.py:665 cps/web.py:692 cps/web.py:973 -#: cps/web.py:1003 cps/web.py:1048 cps/web.py:1076 cps/web.py:1115 +#: 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 +#: cps/web.py:1131 msgid "None" msgstr "Brak" -#: cps/editbooks.py:122 cps/editbooks.py:910 cps/web.py:525 cps/web.py:1537 -#: cps/web.py:1581 cps/web.py:1626 +#: cps/editbooks.py:123 cps/editbooks.py:911 cps/web.py:529 cps/web.py:1561 +#: cps/web.py:1605 cps/web.py:1650 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:166 cps/editbooks.py:1245 +#: cps/editbooks.py:167 cps/editbooks.py:1246 msgid "User has no rights to upload cover" msgstr "" -#: cps/editbooks.py:186 cps/editbooks.py:731 +#: cps/editbooks.py:187 cps/editbooks.py:732 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "W identyfikatorach nie jest rozróżniana wielkość liter, nadpisywanie starego identyfikatora" -#: cps/editbooks.py:228 +#: cps/editbooks.py:229 msgid "Metadata successfully updated" msgstr "Metadane zostały pomyślnie zaktualizowane" -#: cps/editbooks.py:246 +#: cps/editbooks.py:247 msgid "Error editing book: {}" msgstr "" -#: cps/editbooks.py:303 +#: cps/editbooks.py:304 #, python-format msgid "File %(file)s uploaded" msgstr "Wysłano plik %(file)s" -#: cps/editbooks.py:331 +#: cps/editbooks.py:332 msgid "Source or destination format for conversion missing" msgstr "Brak formatu źródłowego lub docelowego do konwersji" -#: cps/editbooks.py:339 +#: cps/editbooks.py:340 #, 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:343 +#: cps/editbooks.py:344 #, 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:650 +#: cps/editbooks.py:651 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:705 cps/editbooks.py:1037 +#: cps/editbooks.py:706 cps/editbooks.py:1038 #, fuzzy, python-format msgid "'%(langname)s' is not a valid language" msgstr "%(langname)s nie jest prawidłowym językiem" -#: cps/editbooks.py:743 cps/editbooks.py:1185 +#: cps/editbooks.py:744 cps/editbooks.py:1186 #, 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:747 cps/editbooks.py:1189 +#: cps/editbooks.py:748 cps/editbooks.py:1190 msgid "File to be uploaded must have an extension" msgstr "Plik do wysłania musi mieć rozszerzenie" -#: cps/editbooks.py:755 +#: cps/editbooks.py:756 #, 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:775 +#: cps/editbooks.py:776 #, 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:832 cps/editbooks.py:834 +#: cps/editbooks.py:833 cps/editbooks.py:835 msgid "Book Format Successfully Deleted" msgstr "Plik książki w wybranym formacie został usunięty" -#: cps/editbooks.py:841 cps/editbooks.py:843 +#: cps/editbooks.py:842 cps/editbooks.py:844 msgid "Book Successfully Deleted" msgstr "Książka została usunięta" -#: cps/editbooks.py:895 +#: cps/editbooks.py:896 msgid "You are missing permissions to delete books" msgstr "" -#: cps/editbooks.py:945 +#: cps/editbooks.py:946 msgid "edit metadata" msgstr "edytuj metadane" -#: cps/editbooks.py:994 +#: cps/editbooks.py:995 #, python-format msgid "%(seriesindex)s is not a valid number, skipping" msgstr "%(seriesindex)s nie jest poprawną liczbą, pomijanie" -#: cps/editbooks.py:1180 +#: cps/editbooks.py:1181 msgid "User has no rights to upload additional file formats" msgstr "" -#: cps/editbooks.py:1201 +#: cps/editbooks.py:1202 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "Nie udało się utworzyć łącza %(path)s (Odmowa dostępu)." -#: cps/editbooks.py:1206 +#: cps/editbooks.py:1207 #, python-format msgid "Failed to store file %(file)s." msgstr "Nie można zapisać pliku %(file)s." -#: cps/editbooks.py:1230 +#: cps/editbooks.py:1231 #, python-format msgid "File format %(ext)s added to %(book)s" msgstr "Format pliku %(ext)s dodany do %(book)s" @@ -659,210 +660,210 @@ msgstr "Konfiguracja Google Drive nie została zakończona, spróbuj dezaktywowa 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" -#: cps/helper.py:84 +#: cps/helper.py:86 #, python-format 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:91 cps/tasks/convert.py:86 +#: cps/helper.py:93 cps/tasks/convert.py:86 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "Nie znaleziono %(format)s na Google Drive: %(fn)s" -#: cps/helper.py:96 +#: cps/helper.py:98 #, python-format msgid "%(format)s not found: %(fn)s" msgstr "%(format)s nie znaleziono: %(fn)s" -#: cps/helper.py:101 cps/helper.py:226 cps/templates/detail.html:58 +#: cps/helper.py:103 cps/helper.py:228 cps/templates/detail.html:58 #, fuzzy msgid "Send to eReader" msgstr "Wyślij do Kindle" -#: cps/helper.py:102 cps/helper.py:120 cps/helper.py:228 +#: cps/helper.py:104 cps/helper.py:122 cps/helper.py:230 #, fuzzy msgid "This Email has been sent via Calibre-Web." msgstr "Ten e-mail został wysłany za pośrednictwem Calibre-Web." -#: cps/helper.py:118 +#: cps/helper.py:120 #, fuzzy msgid "Calibre-Web Test Email" msgstr "Testowy e-mail Calibre-Web" -#: cps/helper.py:119 +#: cps/helper.py:121 #, fuzzy msgid "Test Email" msgstr "Testowy e-mail" # ??? -#: cps/helper.py:136 +#: cps/helper.py:138 msgid "Get Started with Calibre-Web" msgstr "Zacznij korzystać z Calibre-Web" -#: cps/helper.py:141 +#: cps/helper.py:143 #, fuzzy, python-format msgid "Registration Email for user: %(name)s" msgstr "Rejestracja e-mail dla użytkownika: %(name)s" -#: cps/helper.py:152 cps/helper.py:158 +#: cps/helper.py:154 cps/helper.py:160 #, fuzzy, python-format msgid "Convert %(orig)s to %(format)s and send to eReader" msgstr "Konwertuj %(orig)s do %(format)s i wyślij do Kindle" -#: cps/helper.py:177 cps/helper.py:181 cps/helper.py:185 +#: cps/helper.py:179 cps/helper.py:183 cps/helper.py:187 #, fuzzy, python-format msgid "Send %(format)s to eReader" msgstr "Wyślij %(format)s do Kindle" -#: cps/helper.py:225 +#: cps/helper.py:227 #, fuzzy, python-format msgid "%(book)s send to eReader" msgstr "Wyślij do Kindle" # ??? -#: cps/helper.py:230 +#: cps/helper.py:232 msgid "The requested file could not be read. Maybe wrong permissions?" msgstr "Żądany plik nie mógł zostać odczytany. Może brakuje uprawnień?" -#: cps/helper.py:345 +#: cps/helper.py:347 msgid "Read status could not set: {}" msgstr "" -#: cps/helper.py:368 +#: cps/helper.py:370 #, python-format msgid "Deleting bookfolder for book %(id)s failed, path has subfolders: %(path)s" msgstr "Usuwanie folderu książki dla książki %(id)s nie powiodło się, ścieżka ma podfoldery: %(path)s" -#: cps/helper.py:374 +#: cps/helper.py:376 #, python-format msgid "Deleting book %(id)s failed: %(message)s" msgstr "Usuwanie książki %(id)s zakończyło się błędem: %(message)s" -#: cps/helper.py:385 +#: cps/helper.py:387 #, fuzzy, python-format 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:450 +#: cps/helper.py:452 #, 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:522 cps/helper.py:531 +#: cps/helper.py:524 cps/helper.py:533 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "Nie znaleziono pliku %(file)s na Google Drive" -#: cps/helper.py:565 +#: cps/helper.py:567 #, 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:585 +#: cps/helper.py:587 msgid "Error in rename file in path: {}" msgstr "" -#: cps/helper.py:603 +#: cps/helper.py:605 #, 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:668 +#: cps/helper.py:670 msgid "Found an existing account for this Email address" msgstr "" -#: cps/helper.py:676 +#: cps/helper.py:678 msgid "This username is already taken" msgstr "Nazwa użytkownika jest już zajęta" -#: cps/helper.py:688 +#: cps/helper.py:690 #, fuzzy msgid "Invalid Email address format" msgstr "Nieprawidłowy format adresu e-mail" -#: cps/helper.py:706 +#: cps/helper.py:710 msgid "Password doesn't comply with password validation rules" msgstr "" -#: cps/helper.py:855 +#: cps/helper.py:859 msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "" -#: cps/helper.py:865 +#: cps/helper.py:869 msgid "Error Downloading Cover" msgstr "Błąd przy pobieraniu okładki" -#: cps/helper.py:868 +#: cps/helper.py:872 msgid "Cover Format Error" msgstr "Błędny format okładki" -#: cps/helper.py:871 +#: cps/helper.py:875 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "" -#: cps/helper.py:881 +#: cps/helper.py:885 msgid "Failed to create path for cover" msgstr "Nie udało się utworzyć ścieżki dla okładki" -#: cps/helper.py:897 +#: cps/helper.py:901 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:908 +#: cps/helper.py:912 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:920 +#: cps/helper.py:924 msgid "Invalid cover file content" msgstr "" -#: cps/helper.py:924 +#: cps/helper.py:928 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "Jako plik okładki dopuszczalne są jedynie pliki jpg/jpeg" -#: cps/helper.py:995 cps/helper.py:1183 +#: cps/helper.py:999 cps/helper.py:1156 #, fuzzy msgid "Cover" msgstr "Odkrywaj" -#: cps/helper.py:1032 +#: cps/helper.py:1016 msgid "Unrar binary file not found" msgstr "Plik wykonywalny programu unrar nie znaleziony" -#: cps/helper.py:1043 +#: cps/helper.py:1027 #, fuzzy msgid "Error executing UnRar" msgstr "Błąd przy wykonywaniu unrar" -#: cps/helper.py:1051 +#: cps/helper.py:1035 msgid "Could not find the specified directory" msgstr "" -#: cps/helper.py:1054 +#: cps/helper.py:1038 msgid "Please specify a directory, not a file" msgstr "" -#: cps/helper.py:1068 +#: cps/helper.py:1052 #, fuzzy msgid "Calibre binaries not viable" msgstr "Baza danych nie jest zapisywalna" -#: cps/helper.py:1077 +#: cps/helper.py:1061 #, python-format msgid "Missing calibre binaries: %(missing)s" msgstr "" -#: cps/helper.py:1079 +#: cps/helper.py:1063 #, fuzzy, python-format msgid "Missing executable permissions: %(missing)s" msgstr "Brak uprawnienia do wykonywania pliku" -#: cps/helper.py:1084 +#: cps/helper.py:1068 #, fuzzy msgid "Error excecuting Calibre" msgstr "Błąd przy wykonywaniu unrar" -#: cps/helper.py:1185 cps/templates/admin.html:216 +#: cps/helper.py:1158 cps/templates/admin.html:216 msgid "Queue all books for metadata backup" msgstr "" @@ -948,7 +949,7 @@ msgstr "{} Gwiazdek" #: cps/remotelogin.py:62 cps/templates/layout.html:67 #: cps/templates/layout.html:101 cps/templates/login.html:4 -#: cps/templates/login.html:21 cps/web.py:1333 +#: cps/templates/login.html:21 cps/web.py:1353 msgid "Login" msgstr "Zaloguj się" @@ -964,7 +965,7 @@ msgstr "Token wygasł" msgid "Success! Please return to your device" msgstr "Powodzenie! Wróć do swojego urządzenia" -#: cps/render_template.py:42 cps/web.py:414 +#: cps/render_template.py:42 cps/web.py:418 msgid "Books" msgstr "Książki" @@ -989,7 +990,7 @@ msgstr "Pobrane książki" msgid "Show Downloaded Books" msgstr "Pokaż pobrane książki" -#: cps/render_template.py:59 cps/templates/index.xml:33 cps/web.py:429 +#: cps/render_template.py:59 cps/templates/index.xml:33 cps/web.py:433 msgid "Top Rated Books" msgstr "Najwyżej ocenione" @@ -998,7 +999,7 @@ msgid "Show Top Rated Books" msgstr "Pokaż menu najwyżej ocenionych książek" #: cps/render_template.py:62 cps/templates/index.xml:55 -#: cps/templates/index.xml:59 cps/web.py:750 +#: cps/templates/index.xml:59 cps/web.py:766 msgid "Read Books" msgstr "Przeczytane" @@ -1008,7 +1009,7 @@ msgid "Show Read and Unread" msgstr "Pokaż menu przeczytane i nieprzeczytane" #: cps/render_template.py:66 cps/templates/index.xml:62 -#: cps/templates/index.xml:66 cps/web.py:753 +#: cps/templates/index.xml:66 cps/web.py:769 msgid "Unread Books" msgstr "Nieprzeczytane" @@ -1026,7 +1027,7 @@ msgid "Show Random Books" msgstr "Pokazuj losowe książki" #: cps/render_template.py:72 cps/templates/book_table.html:67 -#: cps/templates/index.xml:84 cps/web.py:1119 +#: cps/templates/index.xml:84 cps/web.py:1135 msgid "Categories" msgstr "Kategorie" @@ -1037,7 +1038,7 @@ msgstr "Pokaż menu wyboru kategorii" #: cps/render_template.py:75 cps/templates/book_edit.html:91 #: cps/templates/book_table.html:68 cps/templates/index.xml:91 -#: cps/templates/search_form.html:70 cps/web.py:1009 cps/web.py:1021 +#: cps/templates/search_form.html:70 cps/web.py:1025 cps/web.py:1037 msgid "Series" msgstr "Cykle" @@ -1057,7 +1058,7 @@ msgid "Show Author Section" msgstr "Pokaż menu wyboru autora" #: cps/render_template.py:82 cps/templates/book_table.html:72 -#: cps/templates/index.xml:77 cps/web.py:977 +#: cps/templates/index.xml:77 cps/web.py:993 msgid "Publishers" msgstr "Wydawcy" @@ -1068,7 +1069,7 @@ msgstr "Pokaż menu wyboru wydawcy" #: cps/render_template.py:85 cps/templates/book_table.html:70 #: cps/templates/index.xml:98 cps/templates/search_form.html:108 -#: cps/web.py:1091 +#: cps/web.py:1107 msgid "Languages" msgstr "Języki" @@ -1095,7 +1096,7 @@ msgstr "Formaty plików" msgid "Show File Formats Section" msgstr "Pokaż menu formatu plików" -#: cps/render_template.py:96 cps/web.py:776 +#: cps/render_template.py:96 cps/web.py:792 msgid "Archived Books" msgstr "Zarchiwizowane książki" @@ -1104,7 +1105,7 @@ msgstr "Zarchiwizowane książki" msgid "Show Archived Books" msgstr "Pokaż zarchiwizowane książki" -#: cps/render_template.py:101 cps/web.py:807 +#: cps/render_template.py:101 cps/web.py:823 msgid "Books List" msgstr "Lista książek" @@ -1329,173 +1330,178 @@ msgstr "Dostępna jest nowa aktualizacja. Kliknij przycisk poniżej, aby zaktual msgid "No release information available" msgstr "Brak dostępnych informacji o wersji" -#: cps/templates/index.html:6 cps/web.py:441 +#: cps/templates/index.html:6 cps/web.py:445 msgid "Discover (Random Books)" msgstr "Odkrywaj (losowe książki)" -#: cps/web.py:477 +#: cps/web.py:481 msgid "Hot Books (Most Downloaded)" msgstr "Najpopularniejsze książki (najczęściej pobierane)" -#: cps/web.py:508 +#: cps/web.py:512 #, python-format msgid "Downloaded books by %(user)s" msgstr "Książki pobrane przez %(user)s" -#: cps/web.py:541 +#: cps/web.py:545 #, python-format msgid "Author: %(name)s" msgstr "Autor: %(name)s" -#: cps/web.py:577 +#: cps/web.py:581 #, python-format msgid "Publisher: %(name)s" msgstr "Wydawca: %(name)s" -#: cps/web.py:605 +#: cps/web.py:609 #, python-format msgid "Series: %(serie)s" msgstr "Cykl: %(serie)s" -#: cps/web.py:620 +#: cps/web.py:623 msgid "Rating: None" msgstr "" -#: cps/web.py:629 +#: cps/web.py:632 #, python-format msgid "Rating: %(rating)s stars" msgstr "Ocena: %(rating)s gwiazdek" -#: cps/web.py:645 +#: cps/web.py:663 #, python-format msgid "File format: %(format)s" msgstr "Format pliku: %(format)s" -#: cps/web.py:682 +#: cps/web.py:698 #, python-format msgid "Category: %(name)s" msgstr "Kategoria: %(name)s" -#: cps/web.py:711 +#: cps/web.py:727 #, python-format msgid "Language: %(name)s" msgstr "Język: %(name)s" -#: cps/templates/admin.html:16 cps/web.py:949 +#: cps/templates/admin.html:16 cps/web.py:965 msgid "Downloads" msgstr "DLS" -#: cps/web.py:1051 +#: cps/web.py:1067 msgid "Ratings list" msgstr "Lista z ocenami" -#: cps/web.py:1078 +#: cps/web.py:1094 msgid "File formats list" msgstr "Lista formatów" -#: cps/web.py:1233 +#: cps/web.py:1249 #, fuzzy msgid "Please configure the SMTP mail settings first..." msgstr "Proszę najpierw skonfigurować ustawienia SMTP poczty e-mail..." -#: cps/web.py:1240 +#: cps/web.py:1256 #, python-format msgid "Success! Book queued for sending to %(eReadermail)s" msgstr "Książka została umieszczona w kolejce do wysłania do %(eReadermail)s" -#: cps/web.py:1243 +#: cps/web.py:1259 #, python-format msgid "Oops! There was an error sending book: %(res)s" msgstr "Wystąpił błąd podczas wysyłania tej książki: %(res)s" -#: cps/web.py:1245 +#: cps/web.py:1261 #, fuzzy msgid "Oops! Please update your profile with a valid eReader Email." msgstr "Najpierw skonfiguruj adres e-mail Kindle..." -#: cps/web.py:1261 +#: cps/web.py:1277 msgid "Please wait one minute to register next user" msgstr "" #: cps/templates/layout.html:68 cps/templates/layout.html:102 -#: cps/templates/login.html:27 cps/templates/register.html:17 cps/web.py:1262 -#: cps/web.py:1267 cps/web.py:1271 cps/web.py:1277 cps/web.py:1297 -#: cps/web.py:1301 cps/web.py:1314 cps/web.py:1317 +#: cps/templates/login.html:27 cps/templates/register.html:17 cps/web.py:1278 +#: cps/web.py:1282 cps/web.py:1287 cps/web.py:1291 cps/web.py:1297 +#: cps/web.py:1317 cps/web.py:1321 cps/web.py:1334 cps/web.py:1337 msgid "Register" msgstr "Zarejestruj się" -#: cps/web.py:1266 cps/web.py:1313 +#: cps/web.py:1281 cps/web.py:1385 +#, fuzzy +msgid "Connection error to limiter backend, please contact your administrator" +msgstr "Serwer e-mail nie jest skonfigurowany, skontaktuj się z administratorem!" + +#: cps/web.py:1286 cps/web.py:1333 msgid "Oops! Email server is not configured, please contact your administrator." msgstr "Serwer e-mail nie jest skonfigurowany, skontaktuj się z administratorem!" -#: cps/web.py:1299 +#: cps/web.py:1319 msgid "Oops! Your Email is not allowed." msgstr "Twój e-mail nie może się zarejestrować" -#: cps/web.py:1302 +#: cps/web.py:1322 msgid "Success! Confirmation Email has been sent." msgstr "Wiadomość e-mail z potwierdzeniem została wysłana na Twoje konto e-mail." -#: cps/web.py:1348 cps/web.py:1367 +#: cps/web.py:1368 cps/web.py:1391 #, fuzzy msgid "Cannot activate LDAP authentication" msgstr "Nie można aktywować uwierzytelniania LDAP" -#: cps/web.py:1361 +#: cps/web.py:1381 msgid "Please wait one minute before next login" msgstr "" -#: cps/web.py:1376 +#: cps/web.py:1400 #, fuzzy, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "zalogowałeś się jako: '%(nickname)s'" -#: cps/web.py:1383 +#: cps/web.py:1407 #, fuzzy, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgstr "Fallback Login as: %(nickname)s, LDAP Server not reachable, or user not known" -#: cps/web.py:1388 +#: cps/web.py:1412 #, fuzzy, python-format msgid "Could not login: %(message)s" msgstr "Nie można zalogować: %(message)s" -#: cps/web.py:1392 cps/web.py:1417 +#: cps/web.py:1416 cps/web.py:1441 #, fuzzy msgid "Wrong Username or Password" msgstr "Błędna nazwa użytkownika lub hasło" -#: cps/web.py:1399 +#: cps/web.py:1423 #, fuzzy msgid "New Password was sent to your email address" msgstr "Nowe hasło zostało wysłane na Twój adres e-mail" -#: cps/web.py:1403 +#: cps/web.py:1427 #, fuzzy msgid "An unknown error occurred. Please try again later." msgstr "Wystąpił nieznany błąd. Spróbuj ponownie później." -#: cps/web.py:1405 +#: cps/web.py:1429 #, fuzzy msgid "Please enter valid username to reset password" msgstr "Wprowadź prawidłową nazwę użytkownika, aby zresetować hasło" -#: cps/web.py:1413 +#: cps/web.py:1437 #, fuzzy, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "zalogowałeś się jako: '%(nickname)s'" -#: cps/web.py:1471 cps/web.py:1521 +#: cps/web.py:1495 cps/web.py:1545 #, python-format msgid "%(name)s's Profile" msgstr "Profil użytkownika %(name)s" -#: cps/web.py:1487 +#: cps/web.py:1511 #, fuzzy msgid "Success! Profile Updated" msgstr "Zaktualizowano profil" -#: cps/web.py:1491 +#: cps/web.py:1515 msgid "Oops! An account already exists for this Email." msgstr "Znaleziono istniejące konto dla tego adresu e-mail" @@ -1508,41 +1514,41 @@ msgstr "Nie znaleziono poprawnego pliku gmail.json z informacjami OAuth" msgid "%(book)s send to E-Reader" msgstr "Wyślij do Kindle" -#: cps/tasks/convert.py:166 +#: cps/tasks/convert.py:167 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "Nie znaleziono narzędzia calibre %(tool)s do konwertowania" -#: cps/tasks/convert.py:200 +#: cps/tasks/convert.py:201 #, python-format msgid "%(format)s format not found on disk" msgstr "Nie znaleziono na dysku formatu %(format)s" -#: cps/tasks/convert.py:204 +#: cps/tasks/convert.py:205 msgid "Ebook converter failed with unknown error" msgstr "Konwertowanie ebooka zakończyło się niepowodzeniem z nieznanego powodu" -#: cps/tasks/convert.py:223 +#: cps/tasks/convert.py:224 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "Kepubify-converter spowodowało błąd: %(error)s" -#: cps/tasks/convert.py:244 +#: cps/tasks/convert.py:245 #, 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:279 +#: cps/tasks/convert.py:287 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "Konwertowanie nie powiodło się: %(error)s" -#: cps/tasks/convert.py:302 +#: cps/tasks/convert.py:310 #, 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:307 +#: cps/tasks/convert.py:315 msgid "Convert" msgstr "" @@ -1550,7 +1556,7 @@ msgstr "" msgid "Reconnecting Calibre database" msgstr "" -#: cps/tasks/mail.py:269 +#: cps/tasks/mail.py:278 msgid "E-mail" msgstr "" @@ -1832,12 +1838,12 @@ 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:414 -#: cps/templates/config_view_edit.html:175 cps/templates/modal_dialogs.html:64 -#: cps/templates/modal_dialogs.html:99 cps/templates/modal_dialogs.html:117 -#: cps/templates/modal_dialogs.html:135 cps/templates/schedule_edit.html:45 -#: cps/templates/shelf_edit.html:27 cps/templates/tasks.html:46 -#: cps/templates/user_edit.html:144 +#: cps/templates/config_db.html:66 cps/templates/config_edit.html:428 +#: 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 +#: cps/templates/schedule_edit.html:45 cps/templates/shelf_edit.html:27 +#: cps/templates/tasks.html:46 cps/templates/user_edit.html:144 msgid "Cancel" msgstr "Anuluj" @@ -2019,7 +2025,7 @@ msgid "Fetch Metadata" msgstr "Uzyskaj metadane" #: cps/templates/book_edit.html:213 cps/templates/config_db.html:65 -#: cps/templates/config_edit.html:413 cps/templates/config_view_edit.html:174 +#: cps/templates/config_edit.html:427 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 @@ -2191,7 +2197,7 @@ msgid "Location of Calibre Database" msgstr "Lokalizacja bazy danych Calibre" #: cps/templates/config_db.html:21 -msgid "Separate Book files from Library (Highly experimental, might not work at all)" +msgid "Separate Book Files from Library" msgstr "" #: cps/templates/config_db.html:34 @@ -2277,7 +2283,7 @@ msgid "Convert non-English characters in title and author while saving to disk" msgstr "" #: cps/templates/config_edit.html:108 -msgid "Embed Metadata to Ebook File on Download and Conversion (needs Calibre/Kepubify binaries)" +msgid "Embed Metadata to Ebook File on Download/Conversion/e-mail (needs Calibre/Kepubify binaries)" msgstr "" #: cps/templates/config_edit.html:112 @@ -2501,40 +2507,52 @@ msgstr "Ustawienia OAuth" msgid "Limit failed login attempts" msgstr "" -#: cps/templates/config_edit.html:376 +#: cps/templates/config_edit.html:377 +msgid "Configure Backend for Limiter" +msgstr "" + +#: cps/templates/config_edit.html:381 +msgid "Options for Limiter" +msgstr "" + +#: cps/templates/config_edit.html:386 msgid "Session protection" msgstr "" -#: cps/templates/config_edit.html:378 +#: cps/templates/config_edit.html:388 msgid "Basic" msgstr "" -#: cps/templates/config_edit.html:379 +#: cps/templates/config_edit.html:389 msgid "Strong" msgstr "" -#: cps/templates/config_edit.html:384 +#: cps/templates/config_edit.html:394 #, fuzzy msgid "User Password policy" msgstr "Zresetuj hasło użytkownika" -#: cps/templates/config_edit.html:388 +#: cps/templates/config_edit.html:398 msgid "Minimum password length" msgstr "" -#: cps/templates/config_edit.html:393 +#: cps/templates/config_edit.html:403 msgid "Enforce number" msgstr "" -#: cps/templates/config_edit.html:397 +#: cps/templates/config_edit.html:407 msgid "Enforce lowercase characters" msgstr "" -#: cps/templates/config_edit.html:401 +#: cps/templates/config_edit.html:411 msgid "Enforce uppercase characters" msgstr "" -#: cps/templates/config_edit.html:405 +#: cps/templates/config_edit.html:415 +msgid "Enforce characters (needed For Chinese/Japanese/Korean Characters)" +msgstr "" + +#: cps/templates/config_edit.html:419 msgid "Enforce special characters" msgstr "" @@ -2658,47 +2676,47 @@ msgstr "" msgid "Published" msgstr "Data publikacji" -#: cps/templates/detail.html:250 cps/templates/listenmp3.html:158 +#: cps/templates/detail.html:251 cps/templates/listenmp3.html:158 msgid "Mark As Unread" msgstr "Oznacz jako nieprzeczytane" -#: cps/templates/detail.html:251 cps/templates/listenmp3.html:158 +#: cps/templates/detail.html:252 cps/templates/listenmp3.html:158 msgid "Mark As Read" msgstr "Oznacz jako przeczytane" -#: cps/templates/detail.html:253 cps/templates/listenmp3.html:159 +#: cps/templates/detail.html:254 cps/templates/listenmp3.html:159 msgid "Read" msgstr "Przeczytana" -#: cps/templates/detail.html:263 cps/templates/listenmp3.html:166 +#: cps/templates/detail.html:264 cps/templates/listenmp3.html:166 msgid "Restore from archive" msgstr "Przywróć z archiwum" -#: cps/templates/detail.html:264 cps/templates/listenmp3.html:166 +#: cps/templates/detail.html:265 cps/templates/listenmp3.html:166 msgid "Add to archive" msgstr "Dodaj do archiwum" -#: cps/templates/detail.html:266 cps/templates/listenmp3.html:167 +#: cps/templates/detail.html:267 cps/templates/listenmp3.html:167 msgid "Archived" msgstr "Zarchiwizowane" -#: cps/templates/detail.html:277 cps/templates/listenmp3.html:177 +#: cps/templates/detail.html:278 cps/templates/listenmp3.html:177 msgid "Description:" msgstr "Opis:" -#: cps/templates/detail.html:292 cps/templates/listenmp3.html:190 +#: cps/templates/detail.html:293 cps/templates/listenmp3.html:190 #: cps/templates/search.html:16 msgid "Add to shelf" msgstr "Dodaj do półki" -#: cps/templates/detail.html:304 cps/templates/detail.html:323 +#: cps/templates/detail.html:305 cps/templates/detail.html:324 #: cps/templates/feed.xml:81 cps/templates/layout.html:154 #: cps/templates/listenmp3.html:201 cps/templates/listenmp3.html:218 #: cps/templates/search.html:22 msgid "(Public)" msgstr "(publiczna)" -#: cps/templates/detail.html:339 +#: cps/templates/detail.html:340 msgid "Edit Metadata" msgstr "Edytuj metadane" diff --git a/cps/translations/pt/LC_MESSAGES/messages.mo b/cps/translations/pt/LC_MESSAGES/messages.mo index bf885566..d6dfb1aa 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 e214ad41..5d8ef462 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-02-10 10:06+0100\n" +"POT-Creation-Date: 2024-04-27 07:20+0200\n" "PO-Revision-Date: 2023-07-25 11:30+0100\n" "Last-Translator: horus68 \n" "Language: pt\n" @@ -19,491 +19,491 @@ msgstr "" msgid "Statistics" msgstr "Estatísticas" -#: cps/admin.py:149 +#: cps/admin.py:150 #, fuzzy msgid "Server restarted, please reload page." msgstr "Servidor reiniciado, por favor, refresque a página" -#: cps/admin.py:151 +#: cps/admin.py:152 #, fuzzy msgid "Performing Server shutdown, please close window." msgstr "A encerrar o servidor, por favor, feche a janela" -#: cps/admin.py:159 +#: cps/admin.py:160 msgid "Success! Database Reconnected" msgstr "Sucesso! Base de dados religada" -#: cps/admin.py:162 +#: cps/admin.py:163 msgid "Unknown command" msgstr "Comando desconhecido" -#: cps/admin.py:173 +#: cps/admin.py:174 #, fuzzy 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:206 cps/editbooks.py:589 cps/editbooks.py:591 -#: cps/editbooks.py:629 cps/editbooks.py:646 cps/editbooks.py:1262 +#: cps/admin.py:207 cps/editbooks.py:590 cps/editbooks.py:592 +#: cps/editbooks.py:630 cps/editbooks.py:647 cps/editbooks.py:1263 #: cps/updater.py:613 cps/uploader.py:93 cps/uploader.py:102 msgid "Unknown" msgstr "Desconhecido" -#: cps/admin.py:231 +#: cps/admin.py:232 msgid "Admin page" msgstr "Página de administração" -#: cps/admin.py:251 +#: cps/admin.py:252 msgid "Basic Configuration" msgstr "Configuração básica" -#: cps/admin.py:289 +#: cps/admin.py:290 msgid "UI Configuration" msgstr "Configuração de IU" -#: cps/admin.py:323 cps/templates/admin.html:51 +#: cps/admin.py:324 cps/templates/admin.html:51 msgid "Edit Users" msgstr "Editar utilizadores" -#: cps/admin.py:367 cps/opds.py:506 cps/templates/grid.html:14 +#: cps/admin.py:368 cps/opds.py:506 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "Tudo" -#: cps/admin.py:394 cps/admin.py:1405 +#: cps/admin.py:395 cps/admin.py:1417 msgid "User not found" msgstr "Utilizador não encontrado" -#: cps/admin.py:408 +#: cps/admin.py:409 msgid "{} users deleted successfully" msgstr "{} utilizadores eliminados com sucesso" -#: cps/admin.py:431 cps/templates/config_view_edit.html:133 +#: cps/admin.py:432 cps/templates/config_view_edit.html:133 #: cps/templates/user_edit.html:45 cps/templates/user_table.html:81 msgid "Show All" msgstr "Mostrar tudo" -#: cps/admin.py:452 cps/admin.py:458 +#: cps/admin.py:453 cps/admin.py:459 msgid "Malformed request" msgstr "Pedido mal construído" -#: cps/admin.py:470 cps/admin.py:2033 +#: cps/admin.py:471 cps/admin.py:2048 msgid "Guest Name can't be changed" msgstr "Nome do convidado não pode ser alterado" -#: cps/admin.py:482 +#: cps/admin.py:483 msgid "Guest can't have this role" msgstr "Convidado não pode ter esta função" -#: cps/admin.py:494 cps/admin.py:1987 +#: cps/admin.py:495 cps/admin.py:2002 msgid "No admin user remaining, can't remove admin role" msgstr "Nenhum utilizador administrador restante, impossível remover a função de administrador" -#: cps/admin.py:498 cps/admin.py:512 +#: cps/admin.py:499 cps/admin.py:513 msgid "Value has to be true or false" msgstr "Valor tem de ser verdadeiro ou falso" -#: cps/admin.py:500 +#: cps/admin.py:501 msgid "Invalid role" msgstr "Função inválida" -#: cps/admin.py:504 +#: cps/admin.py:505 msgid "Guest can't have this view" msgstr "O convidado não podr ter esta vista" -#: cps/admin.py:514 +#: cps/admin.py:515 msgid "Invalid view" msgstr "Vista inválida" -#: cps/admin.py:517 +#: cps/admin.py:518 msgid "Guest's Locale is determined automatically and can't be set" msgstr "O idioma do convidado é detetado automaticamente e não pode ser alterado" -#: cps/admin.py:521 +#: cps/admin.py:522 msgid "No Valid Locale Given" msgstr "Nenhum idioma válido fornecido" -#: cps/admin.py:532 +#: cps/admin.py:533 msgid "No Valid Book Language Given" msgstr "Não foi indicado um idioma de livro válido" -#: cps/admin.py:534 cps/editbooks.py:455 +#: cps/admin.py:535 cps/editbooks.py:456 msgid "Parameter not found" msgstr "Parâmetro não encontrado" -#: cps/admin.py:571 +#: cps/admin.py:572 msgid "Invalid Read Column" msgstr "Coluna Lido é inválida" -#: cps/admin.py:577 +#: cps/admin.py:578 msgid "Invalid Restricted Column" msgstr "Coluna Restrito é inválida" -#: cps/admin.py:597 cps/admin.py:1858 +#: cps/admin.py:598 cps/admin.py:1873 msgid "Calibre-Web configuration updated" msgstr "Configuração do Calibre-Web atualizada" -#: cps/admin.py:609 +#: cps/admin.py:610 msgid "Do you really want to delete the Kobo Token?" msgstr "Quer realmente apagar a Kobo Token?" -#: cps/admin.py:611 +#: cps/admin.py:612 msgid "Do you really want to delete this domain?" msgstr "Quer realmente eliminar este domínio?" -#: cps/admin.py:613 +#: cps/admin.py:614 msgid "Do you really want to delete this user?" msgstr "Quer realmente apagar este utilizador?" -#: cps/admin.py:615 +#: cps/admin.py:616 msgid "Are you sure you want to delete this shelf?" msgstr "Tem a certeza de que quer apagar essa estante?" -#: cps/admin.py:617 +#: cps/admin.py:618 msgid "Are you sure you want to change locales of selected user(s)?" msgstr "Tem a certeza de que quer alterar o idioma dos utilizadores selecionados?" -#: cps/admin.py:619 +#: cps/admin.py:620 msgid "Are you sure you want to change visible book languages for selected user(s)?" msgstr "Tem a certeza de que quer alterar os idiomas de livros visíveis para os utilizadores selecionados?" -#: cps/admin.py:621 +#: cps/admin.py:622 msgid "Are you sure you want to change the selected role for the selected user(s)?" msgstr "Tem a certeza de que quer alterar a função selecionada para os utilizadores selecionados?" -#: cps/admin.py:623 +#: cps/admin.py:624 msgid "Are you sure you want to change the selected restrictions for the selected user(s)?" msgstr "Tem a certeza de que quer alterar as restrições selecionadas para os utilizadores selecionados?" -#: cps/admin.py:625 +#: cps/admin.py:626 msgid "Are you sure you want to change the selected visibility restrictions for the selected user(s)?" msgstr "Tem a certeza de de que quer alterar as restrições de visibilidade selecionadas para os utilizadores selecionados?" -#: cps/admin.py:628 +#: cps/admin.py:629 msgid "Are you sure you want to change shelf sync behavior for the selected user(s)?" msgstr "Tem a certeza de que quer alterar o comportamento de sincronização da estante para os utilizadores selecionados?" -#: cps/admin.py:630 +#: cps/admin.py:631 msgid "Are you sure you want to change Calibre library location?" msgstr "Tem a certeza de que quer alterar a localização da biblioteca Calibre?" -#: cps/admin.py:632 +#: cps/admin.py:633 msgid "Calibre-Web will search for updated Covers and update Cover Thumbnails, this may take a while?" msgstr "O Calibre-Web irá procurar por capas atualizadas e atualizará as miniaturas das capas. Isto poderá demorar um pouco" -#: cps/admin.py:635 +#: cps/admin.py:636 msgid "Are you sure you want delete Calibre-Web's sync database to force a full sync with your Kobo Reader?" msgstr "Tem a certeza de que deseja apagar a base de dados de sincronização do Calibre-Web para forçar uma sincronização completa com seu Kobo Reader?" -#: cps/admin.py:878 cps/admin.py:884 cps/admin.py:894 cps/admin.py:904 +#: cps/admin.py:879 cps/admin.py:885 cps/admin.py:895 cps/admin.py:905 #: cps/templates/modal_dialogs.html:29 cps/templates/user_table.html:41 #: cps/templates/user_table.html:58 msgid "Deny" msgstr "Negar" -#: cps/admin.py:880 cps/admin.py:886 cps/admin.py:896 cps/admin.py:906 +#: cps/admin.py:881 cps/admin.py:887 cps/admin.py:897 cps/admin.py:907 #: cps/templates/modal_dialogs.html:28 cps/templates/user_table.html:44 #: cps/templates/user_table.html:61 msgid "Allow" msgstr "Permitir" -#: cps/admin.py:921 +#: cps/admin.py:940 msgid "{} sync entries deleted" msgstr "{} entradas de sincronização eliminadas" -#: cps/admin.py:969 +#: cps/admin.py:981 msgid "Tag not found" msgstr "Etiqueta não encontrada" -#: cps/admin.py:981 +#: cps/admin.py:993 msgid "Invalid Action" msgstr "Ação inválida" -#: cps/admin.py:1111 +#: cps/admin.py:1123 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:1156 +#: cps/admin.py:1168 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:1162 +#: cps/admin.py:1174 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:1196 +#: cps/admin.py:1208 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:1202 +#: cps/admin.py:1214 msgid "Please Enter a LDAP Service Account and Password" msgstr "Por favor, digite uma conta de serviço LDAP e senha" -#: cps/admin.py:1205 +#: cps/admin.py:1217 msgid "Please Enter a LDAP Service Account" msgstr "Por favor, digite uma conta de serviço LDAP" -#: cps/admin.py:1210 +#: cps/admin.py:1222 #, 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:1212 +#: cps/admin.py:1224 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "Filtro de objeto de grupo LDAP tem parênteses não coincidentes" -#: cps/admin.py:1216 +#: cps/admin.py:1228 #, 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:1218 +#: cps/admin.py:1230 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "Filtro de objeto de utilizador LDAP tem parênteses não coincidentes" -#: cps/admin.py:1225 +#: cps/admin.py:1237 #, 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:1227 +#: cps/admin.py:1239 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "Filtro de utilizador de membro LDAP tem parênteses incomparáveis" -#: cps/admin.py:1234 +#: cps/admin.py:1246 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:1265 cps/templates/admin.html:53 +#: cps/admin.py:1277 cps/templates/admin.html:53 msgid "Add New User" msgstr "Adicionar utilizador" -#: cps/admin.py:1274 cps/templates/admin.html:100 +#: cps/admin.py:1286 cps/templates/admin.html:100 msgid "Edit Email Server Settings" msgstr "Editar configurações do servidor de email" -#: cps/admin.py:1293 +#: cps/admin.py:1305 msgid "Success! Gmail Account Verified." msgstr "Sucesso! Conta Gmail verificada" -#: cps/admin.py:1313 cps/admin.py:1316 cps/admin.py:1698 cps/admin.py:1842 -#: cps/admin.py:1940 cps/admin.py:2061 cps/editbooks.py:241 -#: cps/editbooks.py:317 cps/editbooks.py:1224 cps/shelf.py:90 cps/shelf.py:150 +#: cps/admin.py:1325 cps/admin.py:1328 cps/admin.py:1710 cps/admin.py:1857 +#: cps/admin.py:1955 cps/admin.py:2076 cps/editbooks.py:242 +#: cps/editbooks.py:318 cps/editbooks.py:1225 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:149 cps/web.py:1496 +#: cps/shelf.py:468 cps/tasks/convert.py:150 cps/web.py:1520 #, python-format msgid "Oops! Database Error: %(error)s." msgstr "Erro de base de dados: %(error)s." -#: cps/admin.py:1323 +#: cps/admin.py:1335 #, 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:1326 +#: cps/admin.py:1338 #, 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:1328 +#: cps/admin.py:1340 msgid "Please configure your e-mail address first..." msgstr "Por favor, primeiro configure seu endereço de email..." -#: cps/admin.py:1330 +#: cps/admin.py:1342 msgid "Email Server Settings updated" msgstr "Atualização das configurações do servidor de email" -#: cps/admin.py:1353 cps/templates/admin.html:195 +#: cps/admin.py:1365 cps/templates/admin.html:195 msgid "Edit Scheduled Tasks Settings" msgstr "Editar configurações de tarefas agendadas" -#: cps/admin.py:1365 +#: cps/admin.py:1377 msgid "Invalid start time for task specified" msgstr "Hora de início inválida para a tarefa especificada" -#: cps/admin.py:1370 +#: cps/admin.py:1382 msgid "Invalid duration for task specified" msgstr "Duração inválida para a tarefa especificada" -#: cps/admin.py:1380 +#: cps/admin.py:1392 msgid "Scheduled tasks settings updated" msgstr "Foram atualizadas as configurações de tarefas agendadas" -#: cps/admin.py:1390 cps/admin.py:1439 cps/admin.py:2057 cps/web.py:1296 +#: cps/admin.py:1402 cps/admin.py:1451 cps/admin.py:2072 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:1394 +#: cps/admin.py:1406 msgid "Settings DB is not Writeable" msgstr "Configuaração da DB não é gravável" -#: cps/admin.py:1424 cps/admin.py:2049 +#: cps/admin.py:1436 cps/admin.py:2064 #, python-format msgid "Edit User %(nick)s" msgstr "Editar utilizador %(nick)s" -#: cps/admin.py:1436 +#: cps/admin.py:1448 #, fuzzy, python-format msgid "Success! Password for user %(user)s reset" msgstr "Sucesso! Senha do utilizador %(user)s redefinida" -#: cps/admin.py:1442 +#: cps/admin.py:1454 #, fuzzy msgid "Oops! Please configure the SMTP mail settings." msgstr "Por favor, configure primeiro as configurações de correio SMTP..." -#: cps/admin.py:1453 +#: cps/admin.py:1465 msgid "Logfile viewer" msgstr "Visualizador do historial" -#: cps/admin.py:1519 +#: cps/admin.py:1531 msgid "Requesting update package" msgstr "A solicitar pacote de atualização" -#: cps/admin.py:1520 +#: cps/admin.py:1532 msgid "Downloading update package" msgstr "A descarregar pacote de atualização" -#: cps/admin.py:1521 +#: cps/admin.py:1533 msgid "Unzipping update package" msgstr "A descomprimir pacote de atualização" -#: cps/admin.py:1522 +#: cps/admin.py:1534 msgid "Replacing files" msgstr "A substituir ficheiros" -#: cps/admin.py:1523 +#: cps/admin.py:1535 msgid "Database connections are closed" msgstr "As ligações à base de dados estão fechadas" -#: cps/admin.py:1524 +#: cps/admin.py:1536 msgid "Stopping server" msgstr "A parar o servidor" -#: cps/admin.py:1525 +#: cps/admin.py:1537 msgid "Update finished, please press okay and reload page" msgstr "Atualização concluída, pressione OK e refresque a página" -#: cps/admin.py:1526 cps/admin.py:1527 cps/admin.py:1528 cps/admin.py:1529 -#: cps/admin.py:1530 cps/admin.py:1531 +#: cps/admin.py:1538 cps/admin.py:1539 cps/admin.py:1540 cps/admin.py:1541 +#: cps/admin.py:1542 cps/admin.py:1543 msgid "Update failed:" msgstr "Atualização falhou:" -#: cps/admin.py:1526 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 +#: cps/admin.py:1538 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 msgid "HTTP Error" msgstr "Erro HTTP" -#: cps/admin.py:1527 cps/updater.py:391 cps/updater.py:628 +#: cps/admin.py:1539 cps/updater.py:391 cps/updater.py:628 msgid "Connection error" msgstr "Erro de ligação" -#: cps/admin.py:1528 cps/updater.py:393 cps/updater.py:630 +#: cps/admin.py:1540 cps/updater.py:393 cps/updater.py:630 msgid "Timeout while establishing connection" msgstr "Tempo limite ao estabelecer a ligação" -#: cps/admin.py:1529 cps/updater.py:395 cps/updater.py:632 +#: cps/admin.py:1541 cps/updater.py:395 cps/updater.py:632 msgid "General error" msgstr "Erro geral" -#: cps/admin.py:1530 +#: cps/admin.py:1542 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:1531 +#: cps/admin.py:1543 msgid "Files could not be replaced during update" msgstr "Não foi possível substituir ficheiros durante a atualização" -#: cps/admin.py:1555 +#: cps/admin.py:1567 msgid "Failed to extract at least One LDAP User" msgstr "Falha ao extrair pelo menos um utilizador LDAP" -#: cps/admin.py:1600 +#: cps/admin.py:1612 msgid "Failed to Create at Least One LDAP User" msgstr "Falha ao criar pelo menos um utilizador LDAP" -#: cps/admin.py:1613 +#: cps/admin.py:1625 #, python-format msgid "Error: %(ldaperror)s" msgstr "Erro: %(ldaperror)s" -#: cps/admin.py:1617 +#: cps/admin.py:1629 msgid "Error: No user returned in response of LDAP server" msgstr "Erro: Nenhum utilizador devolvido na resposta do servidor LDAP" -#: cps/admin.py:1650 +#: 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:1652 +#: cps/admin.py:1664 msgid "{} User Successfully Imported" msgstr "{} utilizador importado com sucesso" -#: cps/admin.py:1710 +#: 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:1730 +#: cps/admin.py:1742 msgid "DB is not Writeable" msgstr "DB não é gravável" -#: cps/admin.py:1746 +#: 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:1750 +#: 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:1829 +#: cps/admin.py:1842 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:1881 +#: cps/admin.py:1896 msgid "Database Settings updated" msgstr "Configurações da base de dados atualizadas" -#: cps/admin.py:1889 +#: cps/admin.py:1904 msgid "Database Configuration" msgstr "Configuração da base de dados" -#: cps/admin.py:1904 cps/web.py:1270 +#: cps/admin.py:1919 cps/web.py:1290 msgid "Oops! Please complete all fields." msgstr "Por favor, preencha todos os campos!" -#: cps/admin.py:1913 +#: cps/admin.py:1928 msgid "E-mail is not from valid domain" msgstr "O email não é de um domínio válido" -#: cps/admin.py:1919 +#: cps/admin.py:1934 msgid "Add new user" msgstr "Adicionar novo utilizador" -#: cps/admin.py:1930 +#: cps/admin.py:1945 #, python-format msgid "User '%(user)s' created" msgstr "Criado utilizador '%(user)s'" -#: cps/admin.py:1936 +#: cps/admin.py:1951 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:1966 +#: cps/admin.py:1981 #, python-format msgid "User '%(nick)s' deleted" msgstr "Utilizador '%(nick)s' eliminado" -#: cps/admin.py:1969 +#: cps/admin.py:1984 msgid "Can't delete Guest User" msgstr "Impossível eliminar convidado" -#: cps/admin.py:1972 +#: cps/admin.py:1987 msgid "No admin user remaining, can't delete user" msgstr "Nenhum utilizador administrador restante, não é possível eliminar o utilizador" -#: cps/admin.py:2027 cps/web.py:1445 +#: cps/admin.py:2042 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:2053 +#: cps/admin.py:2068 #, python-format msgid "User '%(nick)s' updated" msgstr "Utilizador '%(nick)s' atualizado" @@ -516,122 +516,123 @@ msgstr "não instalado" msgid "Execution permissions missing" msgstr "Falta de permissões de execução" -#: cps/db.py:752 cps/search.py:137 cps/web.py:731 +#: cps/db.py:752 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:993 cps/templates/config_edit.html:208 +#: cps/db.py:992 cps/templates/config_edit.html:208 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 -#: cps/web.py:558 cps/web.py:592 cps/web.py:665 cps/web.py:692 cps/web.py:973 -#: cps/web.py:1003 cps/web.py:1048 cps/web.py:1076 cps/web.py:1115 +#: 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 +#: cps/web.py:1131 msgid "None" msgstr "Nenhum" -#: cps/editbooks.py:122 cps/editbooks.py:910 cps/web.py:525 cps/web.py:1537 -#: cps/web.py:1581 cps/web.py:1626 +#: cps/editbooks.py:123 cps/editbooks.py:911 cps/web.py:529 cps/web.py:1561 +#: cps/web.py:1605 cps/web.py:1650 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:166 cps/editbooks.py:1245 +#: cps/editbooks.py:167 cps/editbooks.py:1246 msgid "User has no rights to upload cover" msgstr "Utilizador não tem permissão para carregar capas" -#: cps/editbooks.py:186 cps/editbooks.py:731 +#: cps/editbooks.py:187 cps/editbooks.py:732 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:228 +#: cps/editbooks.py:229 msgid "Metadata successfully updated" msgstr "Metadados atualizados com sucesso" -#: cps/editbooks.py:246 +#: cps/editbooks.py:247 msgid "Error editing book: {}" msgstr "Erro ao editar o livro: {}" -#: cps/editbooks.py:303 +#: cps/editbooks.py:304 #, python-format msgid "File %(file)s uploaded" msgstr "Ficheiro %(file)s enviado" -#: cps/editbooks.py:331 +#: cps/editbooks.py:332 msgid "Source or destination format for conversion missing" msgstr "Formato de origem ou destino para conversão está em falta" -#: cps/editbooks.py:339 +#: cps/editbooks.py:340 #, 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:343 +#: cps/editbooks.py:344 #, 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:650 +#: cps/editbooks.py:651 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:705 cps/editbooks.py:1037 +#: cps/editbooks.py:706 cps/editbooks.py:1038 #, python-format msgid "'%(langname)s' is not a valid language" msgstr "%(langname)s não é um idioma válido" -#: cps/editbooks.py:743 cps/editbooks.py:1185 +#: cps/editbooks.py:744 cps/editbooks.py:1186 #, 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:747 cps/editbooks.py:1189 +#: cps/editbooks.py:748 cps/editbooks.py:1190 msgid "File to be uploaded must have an extension" msgstr "O ficheiro a ser carregado deve ter uma extensão" -#: cps/editbooks.py:755 +#: cps/editbooks.py:756 #, 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:775 +#: cps/editbooks.py:776 #, 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:832 cps/editbooks.py:834 +#: cps/editbooks.py:833 cps/editbooks.py:835 msgid "Book Format Successfully Deleted" msgstr "Formato de livro eliminado com sucesso" -#: cps/editbooks.py:841 cps/editbooks.py:843 +#: cps/editbooks.py:842 cps/editbooks.py:844 msgid "Book Successfully Deleted" msgstr "Livro eliminado com sucesso" -#: cps/editbooks.py:895 +#: cps/editbooks.py:896 msgid "You are missing permissions to delete books" msgstr "Não tem permissões para apagar livros" -#: cps/editbooks.py:945 +#: cps/editbooks.py:946 msgid "edit metadata" msgstr "editar metadados" -#: cps/editbooks.py:994 +#: cps/editbooks.py:995 #, 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:1180 +#: cps/editbooks.py:1181 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:1201 +#: cps/editbooks.py:1202 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "Falha ao criar o caminho %(path)s (Permissão negada)." -#: cps/editbooks.py:1206 +#: cps/editbooks.py:1207 #, python-format msgid "Failed to store file %(file)s." msgstr "Falha ao armazenar o ficheiro %(file)s." -#: cps/editbooks.py:1230 +#: cps/editbooks.py:1231 #, python-format msgid "File format %(ext)s added to %(book)s" msgstr "Formato de ficheiro %(ext)s adicionado a %(book)s" @@ -644,207 +645,207 @@ msgstr "Configuração do Google Drive não concluída, tente desativar e ativar 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" -#: cps/helper.py:84 +#: cps/helper.py:86 #, python-format 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:91 cps/tasks/convert.py:86 +#: cps/helper.py:93 cps/tasks/convert.py:86 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "%(format)s não encontrado no Google Drive: %(fn)s" -#: cps/helper.py:96 +#: cps/helper.py:98 #, python-format msgid "%(format)s not found: %(fn)s" msgstr "%(format)s não encontrado: %(fn)s" -#: cps/helper.py:101 cps/helper.py:226 cps/templates/detail.html:58 +#: cps/helper.py:103 cps/helper.py:228 cps/templates/detail.html:58 msgid "Send to eReader" msgstr "Enviar para dispositivo de leitura" -#: cps/helper.py:102 cps/helper.py:120 cps/helper.py:228 +#: cps/helper.py:104 cps/helper.py:122 cps/helper.py:230 #, fuzzy msgid "This Email has been sent via Calibre-Web." msgstr "Este email foi enviado via Calibre-Web." -#: cps/helper.py:118 +#: cps/helper.py:120 #, fuzzy msgid "Calibre-Web Test Email" msgstr "Email de teste do Calibre-Web" -#: cps/helper.py:119 +#: cps/helper.py:121 #, fuzzy msgid "Test Email" msgstr "Email de teste" -#: cps/helper.py:136 +#: cps/helper.py:138 msgid "Get Started with Calibre-Web" msgstr "Comece a usar o Calibre-Web" -#: cps/helper.py:141 +#: cps/helper.py:143 #, fuzzy, python-format msgid "Registration Email for user: %(name)s" msgstr "Email de registo do utilizador: %(name)s" -#: cps/helper.py:152 cps/helper.py:158 +#: cps/helper.py:154 cps/helper.py:160 #, fuzzy, python-format msgid "Convert %(orig)s to %(format)s and send to eReader" msgstr "Converter %(orig)s em %(format)s e enviar para dispositivo de leitura" -#: cps/helper.py:177 cps/helper.py:181 cps/helper.py:185 +#: cps/helper.py:179 cps/helper.py:183 cps/helper.py:187 #, fuzzy, python-format msgid "Send %(format)s to eReader" msgstr "Enviar %(format)s para o dispositivo de leitura" -#: cps/helper.py:225 +#: cps/helper.py:227 #, fuzzy, python-format msgid "%(book)s send to eReader" msgstr "%(book)s enviado para o dispositivo de leitura" -#: cps/helper.py:230 +#: cps/helper.py:232 msgid "The requested file could not be read. Maybe wrong permissions?" msgstr "Não foi possível ler o ficheiro solicitado. Talvez permissões erradas?" -#: cps/helper.py:345 +#: cps/helper.py:347 msgid "Read status could not set: {}" msgstr "Estatuto de Lido não pode ser alterado: {}" -#: cps/helper.py:368 +#: cps/helper.py:370 #, python-format msgid "Deleting bookfolder for book %(id)s failed, path has subfolders: %(path)s" msgstr "A eliminação da pasta de livros do livro %(id)s falhou, o caminho tem subpastas: %(path)s" -#: cps/helper.py:374 +#: cps/helper.py:376 #, python-format msgid "Deleting book %(id)s failed: %(message)s" msgstr "Falha ao eliminar livro %(id)s: %(message)s" -#: cps/helper.py:385 +#: cps/helper.py:387 #, python-format 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:450 +#: cps/helper.py:452 #, 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:522 cps/helper.py:531 +#: cps/helper.py:524 cps/helper.py:533 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "Ficheiro %(file)s não encontrado no Google Drive" -#: cps/helper.py:565 +#: cps/helper.py:567 #, 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:585 +#: cps/helper.py:587 msgid "Error in rename file in path: {}" msgstr "Erro ao renomear ficheiro no caminho: {}" -#: cps/helper.py:603 +#: cps/helper.py:605 #, 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:668 +#: cps/helper.py:670 msgid "Found an existing account for this Email address" msgstr "Encontrada uma conta existente para este endereço de email" -#: cps/helper.py:676 +#: cps/helper.py:678 msgid "This username is already taken" msgstr "Este nome de utilizador já está registado" -#: cps/helper.py:688 +#: cps/helper.py:690 #, fuzzy msgid "Invalid Email address format" msgstr "Formato de endereço de email inválido" -#: cps/helper.py:706 +#: cps/helper.py:710 msgid "Password doesn't comply with password validation rules" msgstr "" -#: cps/helper.py:855 +#: cps/helper.py:859 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:865 +#: cps/helper.py:869 msgid "Error Downloading Cover" msgstr "Erro ao descarregar a capa" -#: cps/helper.py:868 +#: cps/helper.py:872 msgid "Cover Format Error" msgstr "Erro de formato da capa" -#: cps/helper.py:871 +#: cps/helper.py:875 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:881 +#: cps/helper.py:885 msgid "Failed to create path for cover" msgstr "Falha em criar um caminho para a capa" -#: cps/helper.py:897 +#: cps/helper.py:901 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:908 +#: cps/helper.py:912 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:920 +#: cps/helper.py:924 msgid "Invalid cover file content" msgstr "Conteúdo do ficheiro de capa inválido" -#: cps/helper.py:924 +#: cps/helper.py:928 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "Apenas ficheiros jpg/jpeg são suportados como ficheiros de capa" -#: cps/helper.py:995 cps/helper.py:1183 +#: cps/helper.py:999 cps/helper.py:1156 #, fuzzy msgid "Cover" msgstr "Capa" -#: cps/helper.py:1032 +#: cps/helper.py:1016 msgid "Unrar binary file not found" msgstr "Binário Unrar não encontrado" -#: cps/helper.py:1043 +#: cps/helper.py:1027 #, fuzzy msgid "Error executing UnRar" msgstr "Erro a executar UnRar" -#: cps/helper.py:1051 +#: cps/helper.py:1035 msgid "Could not find the specified directory" msgstr "" -#: cps/helper.py:1054 +#: cps/helper.py:1038 msgid "Please specify a directory, not a file" msgstr "" -#: cps/helper.py:1068 +#: cps/helper.py:1052 #, fuzzy msgid "Calibre binaries not viable" msgstr "DB não é gravável" -#: cps/helper.py:1077 +#: cps/helper.py:1061 #, python-format msgid "Missing calibre binaries: %(missing)s" msgstr "" -#: cps/helper.py:1079 +#: cps/helper.py:1063 #, fuzzy, python-format msgid "Missing executable permissions: %(missing)s" msgstr "Falta de permissões de execução" -#: cps/helper.py:1084 +#: cps/helper.py:1068 #, fuzzy msgid "Error excecuting Calibre" msgstr "Erro a executar UnRar" -#: cps/helper.py:1185 cps/templates/admin.html:216 +#: cps/helper.py:1158 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" @@ -928,7 +929,7 @@ msgstr "{} Estrelas" #: cps/remotelogin.py:62 cps/templates/layout.html:67 #: cps/templates/layout.html:101 cps/templates/login.html:4 -#: cps/templates/login.html:21 cps/web.py:1333 +#: cps/templates/login.html:21 cps/web.py:1353 msgid "Login" msgstr "Autenticar" @@ -944,7 +945,7 @@ msgstr "O Token expirou" msgid "Success! Please return to your device" msgstr "Sucesso! Por favor, volte ao seu dispositivo" -#: cps/render_template.py:42 cps/web.py:414 +#: cps/render_template.py:42 cps/web.py:418 msgid "Books" msgstr "Livros" @@ -969,7 +970,7 @@ msgstr "Livros descarregados" msgid "Show Downloaded Books" msgstr "Mostrar livros descarregados" -#: cps/render_template.py:59 cps/templates/index.xml:33 cps/web.py:429 +#: cps/render_template.py:59 cps/templates/index.xml:33 cps/web.py:433 msgid "Top Rated Books" msgstr "Top de pontuação de livros" @@ -978,7 +979,7 @@ msgid "Show Top Rated Books" msgstr "Mostrar livros mais bem pontuados" #: cps/render_template.py:62 cps/templates/index.xml:55 -#: cps/templates/index.xml:59 cps/web.py:750 +#: cps/templates/index.xml:59 cps/web.py:766 msgid "Read Books" msgstr "Livros lidos" @@ -988,7 +989,7 @@ msgid "Show Read and Unread" msgstr "Mostrar lido e não lido" #: cps/render_template.py:66 cps/templates/index.xml:62 -#: cps/templates/index.xml:66 cps/web.py:753 +#: cps/templates/index.xml:66 cps/web.py:769 msgid "Unread Books" msgstr "Livros não lidos" @@ -1006,7 +1007,7 @@ msgid "Show Random Books" msgstr "Mostrar livros aleatoriamente" #: cps/render_template.py:72 cps/templates/book_table.html:67 -#: cps/templates/index.xml:84 cps/web.py:1119 +#: cps/templates/index.xml:84 cps/web.py:1135 msgid "Categories" msgstr "Categorias" @@ -1017,7 +1018,7 @@ msgstr "Mostrar secção da categoria" #: cps/render_template.py:75 cps/templates/book_edit.html:91 #: cps/templates/book_table.html:68 cps/templates/index.xml:91 -#: cps/templates/search_form.html:70 cps/web.py:1009 cps/web.py:1021 +#: cps/templates/search_form.html:70 cps/web.py:1025 cps/web.py:1037 msgid "Series" msgstr "Séries" @@ -1037,7 +1038,7 @@ msgid "Show Author Section" msgstr "Mostrar secção de autor" #: cps/render_template.py:82 cps/templates/book_table.html:72 -#: cps/templates/index.xml:77 cps/web.py:977 +#: cps/templates/index.xml:77 cps/web.py:993 msgid "Publishers" msgstr "Editoras" @@ -1048,7 +1049,7 @@ msgstr "Mostrar seleção de editoras" #: cps/render_template.py:85 cps/templates/book_table.html:70 #: cps/templates/index.xml:98 cps/templates/search_form.html:108 -#: cps/web.py:1091 +#: cps/web.py:1107 msgid "Languages" msgstr "Idiomas" @@ -1075,7 +1076,7 @@ msgstr "Formatos de ficheiro" msgid "Show File Formats Section" msgstr "Mostrar secção de formatos de ficheiro" -#: cps/render_template.py:96 cps/web.py:776 +#: cps/render_template.py:96 cps/web.py:792 msgid "Archived Books" msgstr "Livros arquivados" @@ -1084,7 +1085,7 @@ msgstr "Livros arquivados" msgid "Show Archived Books" msgstr "Mostrar livros arquivados" -#: cps/render_template.py:101 cps/web.py:807 +#: cps/render_template.py:101 cps/web.py:823 msgid "Books List" msgstr "Lista de livros" @@ -1305,173 +1306,178 @@ msgstr "Uma nova atualização está disponível. Clique no botão abaixo para a msgid "No release information available" msgstr "Não existem informações disponíveis sobre o lançamento" -#: cps/templates/index.html:6 cps/web.py:441 +#: cps/templates/index.html:6 cps/web.py:445 msgid "Discover (Random Books)" msgstr "Descobrir (Livros aleatórios)" -#: cps/web.py:477 +#: cps/web.py:481 msgid "Hot Books (Most Downloaded)" msgstr "Livros quentes (Mais descarregados)" -#: cps/web.py:508 +#: cps/web.py:512 #, python-format msgid "Downloaded books by %(user)s" msgstr "Livros descarregados por %(user)s" -#: cps/web.py:541 +#: cps/web.py:545 #, python-format msgid "Author: %(name)s" msgstr "Autor: %(name)s" -#: cps/web.py:577 +#: cps/web.py:581 #, python-format msgid "Publisher: %(name)s" msgstr "Editora: %(name)s" -#: cps/web.py:605 +#: cps/web.py:609 #, python-format msgid "Series: %(serie)s" msgstr "Séries: %(serie)s" -#: cps/web.py:620 +#: cps/web.py:623 msgid "Rating: None" msgstr "Pontuação: Nenhuma" -#: cps/web.py:629 +#: cps/web.py:632 #, python-format msgid "Rating: %(rating)s stars" msgstr "Pontuação: %(rating)s estrelas" -#: cps/web.py:645 +#: cps/web.py:663 #, python-format msgid "File format: %(format)s" msgstr "Formato do ficheiro: %(format)s" -#: cps/web.py:682 +#: cps/web.py:698 #, python-format msgid "Category: %(name)s" msgstr "Categoria: %(name)s" -#: cps/web.py:711 +#: cps/web.py:727 #, python-format msgid "Language: %(name)s" msgstr "Idioma: %(name)s" -#: cps/templates/admin.html:16 cps/web.py:949 +#: cps/templates/admin.html:16 cps/web.py:965 msgid "Downloads" msgstr "Descarregamentos" -#: cps/web.py:1051 +#: cps/web.py:1067 msgid "Ratings list" msgstr "Lista de pontuações" -#: cps/web.py:1078 +#: cps/web.py:1094 msgid "File formats list" msgstr "Lista de formatos de ficheiro" -#: cps/web.py:1233 +#: cps/web.py:1249 #, fuzzy msgid "Please configure the SMTP mail settings first..." msgstr "Por favor, configure primeiro as configurações de correio SMTP..." -#: cps/web.py:1240 +#: cps/web.py:1256 #, python-format msgid "Success! Book queued for sending to %(eReadermail)s" msgstr "Sucesso! Livro enviado para lista de espera para envio a %(eReadermail)s" -#: cps/web.py:1243 +#: cps/web.py:1259 #, python-format msgid "Oops! There was an error sending book: %(res)s" msgstr "Ops! Ocorreu um erro ao enviar este livro: %(res)s" -#: cps/web.py:1245 +#: cps/web.py:1261 #, fuzzy msgid "Oops! Please update your profile with a valid eReader Email." msgstr "Ops! Por favor, atualize o seu perfil com um endereço de email válido para envio ao Kindle." -#: cps/web.py:1261 +#: cps/web.py:1277 msgid "Please wait one minute to register next user" msgstr "Por favor, aguarde um minuto para registar o próximo utilizador" #: cps/templates/layout.html:68 cps/templates/layout.html:102 -#: cps/templates/login.html:27 cps/templates/register.html:17 cps/web.py:1262 -#: cps/web.py:1267 cps/web.py:1271 cps/web.py:1277 cps/web.py:1297 -#: cps/web.py:1301 cps/web.py:1314 cps/web.py:1317 +#: cps/templates/login.html:27 cps/templates/register.html:17 cps/web.py:1278 +#: cps/web.py:1282 cps/web.py:1287 cps/web.py:1291 cps/web.py:1297 +#: cps/web.py:1317 cps/web.py:1321 cps/web.py:1334 cps/web.py:1337 msgid "Register" msgstr "Registar" -#: cps/web.py:1266 cps/web.py:1313 +#: cps/web.py:1281 cps/web.py:1385 +#, fuzzy +msgid "Connection error to limiter backend, please contact your administrator" +msgstr "Ops! O servidor de email não está configurado. Por favor, contacte o seu administrador!" + +#: cps/web.py:1286 cps/web.py:1333 msgid "Oops! Email server is not configured, please contact your administrator." msgstr "Ops! O servidor de email não está configurado. Por favor, contacte o seu administrador!" -#: cps/web.py:1299 +#: cps/web.py:1319 msgid "Oops! Your Email is not allowed." msgstr "Ops! O seu email não é permitido para registo" -#: cps/web.py:1302 +#: cps/web.py:1322 msgid "Success! Confirmation Email has been sent." msgstr "Sucesso! O email de confirmação foi enviado para a sua conta de email." -#: cps/web.py:1348 cps/web.py:1367 +#: cps/web.py:1368 cps/web.py:1391 #, fuzzy msgid "Cannot activate LDAP authentication" msgstr "Não é possível ativar a autenticação LDAP" -#: cps/web.py:1361 +#: cps/web.py:1381 msgid "Please wait one minute before next login" msgstr "Por favor, aguarde um minuto antes de nova autenticação" -#: cps/web.py:1376 +#: cps/web.py:1400 #, fuzzy, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "agora você está autenticado como: '%(nickname)s'" -#: cps/web.py:1383 +#: cps/web.py:1407 #, fuzzy, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgstr "Autenticação recurso como:'%(nickname)s', servidor LDAP não acessível ou utilizador desconhecido" -#: cps/web.py:1388 +#: cps/web.py:1412 #, fuzzy, python-format msgid "Could not login: %(message)s" msgstr "Não foi possível autenticar-se: %(message)s" -#: cps/web.py:1392 cps/web.py:1417 +#: cps/web.py:1416 cps/web.py:1441 #, fuzzy msgid "Wrong Username or Password" msgstr "Nome de utilizador ou senha incorretos" -#: cps/web.py:1399 +#: cps/web.py:1423 #, fuzzy msgid "New Password was sent to your email address" msgstr "Nova senha foi enviada para seu endereço de email" -#: cps/web.py:1403 +#: cps/web.py:1427 #, fuzzy msgid "An unknown error occurred. Please try again later." msgstr "Ocorreu um erro desconhecido. Por favor, tente novamente mais tarde." -#: cps/web.py:1405 +#: cps/web.py:1429 #, fuzzy msgid "Please enter valid username to reset password" msgstr "Por favor, digite um nome de utilizador válido para poder redefinir a senha" -#: cps/web.py:1413 +#: cps/web.py:1437 #, fuzzy, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "Agora você está autenticado como: '%(nickname)s'" -#: cps/web.py:1471 cps/web.py:1521 +#: cps/web.py:1495 cps/web.py:1545 #, python-format msgid "%(name)s's Profile" msgstr "Perfil de %(name)s" -#: cps/web.py:1487 +#: cps/web.py:1511 #, fuzzy msgid "Success! Profile Updated" msgstr "Perfil atualizado" -#: cps/web.py:1491 +#: cps/web.py:1515 msgid "Oops! An account already exists for this Email." msgstr "Foi encontrada uma conta já existente com este endereço de email." @@ -1484,41 +1490,41 @@ msgstr "Não foi encontrado nenhum ficheiro gmail.json válido com informações msgid "%(book)s send to E-Reader" msgstr "%(book)s enviado para dispositivo de leitura" -#: cps/tasks/convert.py:166 +#: cps/tasks/convert.py:167 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "Calibre ebook-convert %(tool)s não encontrado" -#: cps/tasks/convert.py:200 +#: cps/tasks/convert.py:201 #, python-format msgid "%(format)s format not found on disk" msgstr "Formato %(format)s não encontrado no disco" -#: cps/tasks/convert.py:204 +#: cps/tasks/convert.py:205 msgid "Ebook converter failed with unknown error" msgstr "O conversor de ebook falhou com erro desconhecido" -#: cps/tasks/convert.py:223 +#: cps/tasks/convert.py:224 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "Conversor Kepubify falhou: %(error)s" -#: cps/tasks/convert.py:244 +#: cps/tasks/convert.py:245 #, 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:279 +#: cps/tasks/convert.py:287 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "Conversor de ebook falhou: %(error)s" -#: cps/tasks/convert.py:302 +#: cps/tasks/convert.py:310 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "Calibre falhou com erro: %(error)s" -#: cps/tasks/convert.py:307 +#: cps/tasks/convert.py:315 msgid "Convert" msgstr "Converter" @@ -1526,7 +1532,7 @@ msgstr "Converter" msgid "Reconnecting Calibre database" msgstr "A religar base de dados Calibre" -#: cps/tasks/mail.py:269 +#: cps/tasks/mail.py:278 msgid "E-mail" msgstr "Email" @@ -1804,12 +1810,12 @@ 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:414 -#: cps/templates/config_view_edit.html:175 cps/templates/modal_dialogs.html:64 -#: cps/templates/modal_dialogs.html:99 cps/templates/modal_dialogs.html:117 -#: cps/templates/modal_dialogs.html:135 cps/templates/schedule_edit.html:45 -#: cps/templates/shelf_edit.html:27 cps/templates/tasks.html:46 -#: cps/templates/user_edit.html:144 +#: cps/templates/config_db.html:66 cps/templates/config_edit.html:428 +#: 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 +#: cps/templates/schedule_edit.html:45 cps/templates/shelf_edit.html:27 +#: cps/templates/tasks.html:46 cps/templates/user_edit.html:144 msgid "Cancel" msgstr "Cancelar" @@ -1990,7 +1996,7 @@ msgid "Fetch Metadata" msgstr "Obter metadados" #: cps/templates/book_edit.html:213 cps/templates/config_db.html:65 -#: cps/templates/config_edit.html:413 cps/templates/config_view_edit.html:174 +#: cps/templates/config_edit.html:427 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 @@ -2155,7 +2161,7 @@ msgid "Location of Calibre Database" msgstr "Localização da base de dados Calibre" #: cps/templates/config_db.html:21 -msgid "Separate Book files from Library (Highly experimental, might not work at all)" +msgid "Separate Book Files from Library" msgstr "" #: cps/templates/config_db.html:34 @@ -2239,7 +2245,7 @@ msgid "Convert non-English characters in title and author while saving to disk" msgstr "Converter caracteres não latinos nos títulos e autores enquanto guarda em disco" #: cps/templates/config_edit.html:108 -msgid "Embed Metadata to Ebook File on Download and Conversion (needs Calibre/Kepubify binaries)" +msgid "Embed Metadata to Ebook File on Download/Conversion/e-mail (needs Calibre/Kepubify binaries)" msgstr "" #: cps/templates/config_edit.html:112 @@ -2463,40 +2469,52 @@ msgstr "Configurações do OAuth" msgid "Limit failed login attempts" msgstr "Limitar tentativas de autenticação falhada" -#: cps/templates/config_edit.html:376 +#: cps/templates/config_edit.html:377 +msgid "Configure Backend for Limiter" +msgstr "" + +#: cps/templates/config_edit.html:381 +msgid "Options for Limiter" +msgstr "" + +#: cps/templates/config_edit.html:386 msgid "Session protection" msgstr "Proteção de sessão" -#: cps/templates/config_edit.html:378 +#: cps/templates/config_edit.html:388 msgid "Basic" msgstr "Básica" -#: cps/templates/config_edit.html:379 +#: cps/templates/config_edit.html:389 msgid "Strong" msgstr "Forte" -#: cps/templates/config_edit.html:384 +#: cps/templates/config_edit.html:394 #, fuzzy msgid "User Password policy" msgstr "Política de senha do utilizador" -#: cps/templates/config_edit.html:388 +#: cps/templates/config_edit.html:398 msgid "Minimum password length" msgstr "Tamanho mínimo da senha" -#: cps/templates/config_edit.html:393 +#: cps/templates/config_edit.html:403 msgid "Enforce number" msgstr "Exigir números" -#: cps/templates/config_edit.html:397 +#: cps/templates/config_edit.html:407 msgid "Enforce lowercase characters" msgstr "Exigir letras minúsculas" -#: cps/templates/config_edit.html:401 +#: cps/templates/config_edit.html:411 msgid "Enforce uppercase characters" msgstr "Exigir letras maiúsculas" -#: cps/templates/config_edit.html:405 +#: cps/templates/config_edit.html:415 +msgid "Enforce characters (needed For Chinese/Japanese/Korean Characters)" +msgstr "" + +#: cps/templates/config_edit.html:419 msgid "Enforce special characters" msgstr "Exigir caracteres especiais" @@ -2618,47 +2636,47 @@ msgstr "Livro %(index)s de %(range)s" msgid "Published" msgstr "Publicado em" -#: cps/templates/detail.html:250 cps/templates/listenmp3.html:158 +#: cps/templates/detail.html:251 cps/templates/listenmp3.html:158 msgid "Mark As Unread" msgstr "Marcar como não Lido" -#: cps/templates/detail.html:251 cps/templates/listenmp3.html:158 +#: cps/templates/detail.html:252 cps/templates/listenmp3.html:158 msgid "Mark As Read" msgstr "Marcar como lido" -#: cps/templates/detail.html:253 cps/templates/listenmp3.html:159 +#: cps/templates/detail.html:254 cps/templates/listenmp3.html:159 msgid "Read" msgstr "Lido" -#: cps/templates/detail.html:263 cps/templates/listenmp3.html:166 +#: cps/templates/detail.html:264 cps/templates/listenmp3.html:166 msgid "Restore from archive" msgstr "Restaurar do ficheiro" -#: cps/templates/detail.html:264 cps/templates/listenmp3.html:166 +#: cps/templates/detail.html:265 cps/templates/listenmp3.html:166 msgid "Add to archive" msgstr "Adicionar ao ficheiro" -#: cps/templates/detail.html:266 cps/templates/listenmp3.html:167 +#: cps/templates/detail.html:267 cps/templates/listenmp3.html:167 msgid "Archived" msgstr "Arquivado" -#: cps/templates/detail.html:277 cps/templates/listenmp3.html:177 +#: cps/templates/detail.html:278 cps/templates/listenmp3.html:177 msgid "Description:" msgstr "Descrição:" -#: cps/templates/detail.html:292 cps/templates/listenmp3.html:190 +#: cps/templates/detail.html:293 cps/templates/listenmp3.html:190 #: cps/templates/search.html:16 msgid "Add to shelf" msgstr "Adicionar à estante" -#: cps/templates/detail.html:304 cps/templates/detail.html:323 +#: cps/templates/detail.html:305 cps/templates/detail.html:324 #: cps/templates/feed.xml:81 cps/templates/layout.html:154 #: cps/templates/listenmp3.html:201 cps/templates/listenmp3.html:218 #: cps/templates/search.html:22 msgid "(Public)" msgstr "(Público)" -#: cps/templates/detail.html:339 +#: cps/templates/detail.html:340 msgid "Edit Metadata" msgstr "Editar metadados" diff --git a/cps/translations/pt_BR/LC_MESSAGES/messages.mo b/cps/translations/pt_BR/LC_MESSAGES/messages.mo index 08b2fe93..e12793c4 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 623b2a92..f103f994 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-02-10 10:06+0100\n" +"POT-Creation-Date: 2024-04-27 07:20+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language: br\n" @@ -19,491 +19,491 @@ msgstr "" msgid "Statistics" msgstr "Estatísticas" -#: cps/admin.py:149 +#: cps/admin.py:150 #, fuzzy msgid "Server restarted, please reload page." msgstr "Servidor reiniciado, por favor recarregue a página" -#: cps/admin.py:151 +#: cps/admin.py:152 #, fuzzy msgid "Performing Server shutdown, please close window." msgstr "Executando o desligamento do servidor, por favor feche a janela" -#: cps/admin.py:159 +#: cps/admin.py:160 msgid "Success! Database Reconnected" msgstr "" -#: cps/admin.py:162 +#: cps/admin.py:163 msgid "Unknown command" msgstr "Comando desconhecido" -#: cps/admin.py:173 +#: cps/admin.py:174 #, fuzzy 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:206 cps/editbooks.py:589 cps/editbooks.py:591 -#: cps/editbooks.py:629 cps/editbooks.py:646 cps/editbooks.py:1262 +#: cps/admin.py:207 cps/editbooks.py:590 cps/editbooks.py:592 +#: cps/editbooks.py:630 cps/editbooks.py:647 cps/editbooks.py:1263 #: cps/updater.py:613 cps/uploader.py:93 cps/uploader.py:102 msgid "Unknown" msgstr "Desconhecido" -#: cps/admin.py:231 +#: cps/admin.py:232 msgid "Admin page" msgstr "Página de Administração" -#: cps/admin.py:251 +#: cps/admin.py:252 msgid "Basic Configuration" msgstr "Configuração Básica" -#: cps/admin.py:289 +#: cps/admin.py:290 msgid "UI Configuration" msgstr "Configuração de UI" -#: cps/admin.py:323 cps/templates/admin.html:51 +#: cps/admin.py:324 cps/templates/admin.html:51 msgid "Edit Users" msgstr "Editar Usuários" -#: cps/admin.py:367 cps/opds.py:506 cps/templates/grid.html:14 +#: cps/admin.py:368 cps/opds.py:506 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "Todos" -#: cps/admin.py:394 cps/admin.py:1405 +#: cps/admin.py:395 cps/admin.py:1417 msgid "User not found" msgstr "Usuário não encontrado" -#: cps/admin.py:408 +#: cps/admin.py:409 msgid "{} users deleted successfully" msgstr "{} usuário(s) deletedos com sucesso" -#: cps/admin.py:431 cps/templates/config_view_edit.html:133 +#: cps/admin.py:432 cps/templates/config_view_edit.html:133 #: cps/templates/user_edit.html:45 cps/templates/user_table.html:81 msgid "Show All" msgstr "Mostrar Tudo" -#: cps/admin.py:452 cps/admin.py:458 +#: cps/admin.py:453 cps/admin.py:459 msgid "Malformed request" msgstr "Requisição Malformada" -#: cps/admin.py:470 cps/admin.py:2033 +#: cps/admin.py:471 cps/admin.py:2048 msgid "Guest Name can't be changed" msgstr "Nome do Convidado não pode ser alterado" -#: cps/admin.py:482 +#: cps/admin.py:483 msgid "Guest can't have this role" msgstr "Convidado não pode ter esta função" -#: cps/admin.py:494 cps/admin.py:1987 +#: cps/admin.py:495 cps/admin.py:2002 msgid "No admin user remaining, can't remove admin role" msgstr "Nenhum usuário administrador restante, impossível remover a função de administrador" -#: cps/admin.py:498 cps/admin.py:512 +#: cps/admin.py:499 cps/admin.py:513 msgid "Value has to be true or false" msgstr "Valor tem de ser Verdadeiro ou Falso" -#: cps/admin.py:500 +#: cps/admin.py:501 msgid "Invalid role" msgstr "Função Inválida" -#: cps/admin.py:504 +#: cps/admin.py:505 msgid "Guest can't have this view" msgstr "Convidado não pode ter esta visão" -#: cps/admin.py:514 +#: cps/admin.py:515 msgid "Invalid view" msgstr "Visão Inválida" -#: cps/admin.py:517 +#: cps/admin.py:518 msgid "Guest's Locale is determined automatically and can't be set" msgstr "O idioma do Convidado é detectado automaticamente e não pode ser alterado" -#: cps/admin.py:521 +#: cps/admin.py:522 msgid "No Valid Locale Given" msgstr "Nenhum Idioma Válido Fornecido" -#: cps/admin.py:532 +#: cps/admin.py:533 msgid "No Valid Book Language Given" msgstr "Nenhum Idioma do Livro Válido Fornecido" -#: cps/admin.py:534 cps/editbooks.py:455 +#: cps/admin.py:535 cps/editbooks.py:456 msgid "Parameter not found" msgstr "Parametro não encontrado" -#: cps/admin.py:571 +#: cps/admin.py:572 msgid "Invalid Read Column" msgstr "Coluna Lido Inválida" -#: cps/admin.py:577 +#: cps/admin.py:578 msgid "Invalid Restricted Column" msgstr "Coluna Restrito Inválida" -#: cps/admin.py:597 cps/admin.py:1858 +#: cps/admin.py:598 cps/admin.py:1873 msgid "Calibre-Web configuration updated" msgstr "Configuração do Calibre-Web atualizada" -#: cps/admin.py:609 +#: cps/admin.py:610 msgid "Do you really want to delete the Kobo Token?" msgstr "Você realmente quer apagar a Kobo Token?" -#: cps/admin.py:611 +#: cps/admin.py:612 msgid "Do you really want to delete this domain?" msgstr "Você realmente quer apagar este domínio?" -#: cps/admin.py:613 +#: cps/admin.py:614 msgid "Do you really want to delete this user?" msgstr "Você realmente quer apagar este usuário?" -#: cps/admin.py:615 +#: cps/admin.py:616 msgid "Are you sure you want to delete this shelf?" msgstr "Tem certeza que quer apagar essa estante?" -#: cps/admin.py:617 +#: cps/admin.py:618 msgid "Are you sure you want to change locales of selected user(s)?" msgstr "Tem certeza que quer alterar o idioma do(s) usuário(s) selecionados?" -#: cps/admin.py:619 +#: cps/admin.py:620 msgid "Are you sure you want to change visible book languages for selected user(s)?" msgstr "Tem certeza que quer alterar os idiomas de livros visíveis par o usuário(s) selecionado(s)?" -#: cps/admin.py:621 +#: cps/admin.py:622 msgid "Are you sure you want to change the selected role for the selected user(s)?" msgstr "Tem certeza que quer alterar a função selecionada para o(s) usuário(s) selecionado(s)?" -#: cps/admin.py:623 +#: cps/admin.py:624 msgid "Are you sure you want to change the selected restrictions for the selected user(s)?" msgstr "Tem certeza que quer alterar as restriçõeo selecionada para o(s) usuário(s) selecionado(s)?" -#: cps/admin.py:625 +#: cps/admin.py:626 msgid "Are you sure you want to change the selected visibility restrictions for the selected user(s)?" msgstr "Tem certeza de que quer alterar as restrições de visibilidade selecionadas para os usuários selecionados?" -#: cps/admin.py:628 +#: cps/admin.py:629 msgid "Are you sure you want to change shelf sync behavior for the selected user(s)?" msgstr "Tem certeza de que quer alterar o comportamento de sincronização da estante para o usuário selecionado?" -#: cps/admin.py:630 +#: cps/admin.py:631 msgid "Are you sure you want to change Calibre library location?" msgstr "Tem certeza que queres alterar a localização da biblioteca Calibre?" -#: cps/admin.py:632 +#: cps/admin.py:633 msgid "Calibre-Web will search for updated Covers and update Cover Thumbnails, this may take a while?" msgstr "O Calibre-Web buscará por Capas atualizadas e atualizará as Miniaturas de Capas, isso pode demorar um pouco" -#: cps/admin.py:635 +#: cps/admin.py:636 msgid "Are you sure you want delete Calibre-Web's sync database to force a full sync with your Kobo Reader?" msgstr "Tem certeza de que deseja apagar o banco de dados de sincronização do Calibre-Web para forçar uma sincronização completa com seu Kobo Reader?" -#: cps/admin.py:878 cps/admin.py:884 cps/admin.py:894 cps/admin.py:904 +#: cps/admin.py:879 cps/admin.py:885 cps/admin.py:895 cps/admin.py:905 #: cps/templates/modal_dialogs.html:29 cps/templates/user_table.html:41 #: cps/templates/user_table.html:58 msgid "Deny" msgstr "Negar" -#: cps/admin.py:880 cps/admin.py:886 cps/admin.py:896 cps/admin.py:906 +#: cps/admin.py:881 cps/admin.py:887 cps/admin.py:897 cps/admin.py:907 #: cps/templates/modal_dialogs.html:28 cps/templates/user_table.html:44 #: cps/templates/user_table.html:61 msgid "Allow" msgstr "Permitir" -#: cps/admin.py:921 +#: cps/admin.py:940 msgid "{} sync entries deleted" msgstr "{} entradas de sincronização deletadas" -#: cps/admin.py:969 +#: cps/admin.py:981 msgid "Tag not found" msgstr "Tag não encontrada" -#: cps/admin.py:981 +#: cps/admin.py:993 msgid "Invalid Action" msgstr "Ação Inválida" -#: cps/admin.py:1111 +#: cps/admin.py:1123 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:1156 +#: cps/admin.py:1168 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:1162 +#: cps/admin.py:1174 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:1196 +#: cps/admin.py:1208 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:1202 +#: cps/admin.py:1214 msgid "Please Enter a LDAP Service Account and Password" msgstr "Por favor, digite uma Conta de Serviço LDAP e Senha" -#: cps/admin.py:1205 +#: cps/admin.py:1217 msgid "Please Enter a LDAP Service Account" msgstr "Por favor, digite uma Conta de Serviço LDAP" -#: cps/admin.py:1210 +#: cps/admin.py:1222 #, 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:1212 +#: cps/admin.py:1224 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "Filtro de objeto de grupo LDAP tem parênteses incomparáveis" -#: cps/admin.py:1216 +#: cps/admin.py:1228 #, 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:1218 +#: cps/admin.py:1230 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "Filtro de objeto de usuário LDAP tem parênteses incomparáveis" -#: cps/admin.py:1225 +#: cps/admin.py:1237 #, 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:1227 +#: cps/admin.py:1239 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "Filtro de usuário de membro LDAP tem parênteses incomparáveis" -#: cps/admin.py:1234 +#: cps/admin.py:1246 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:1265 cps/templates/admin.html:53 +#: cps/admin.py:1277 cps/templates/admin.html:53 msgid "Add New User" msgstr "Adicionar Novo Usuário" -#: cps/admin.py:1274 cps/templates/admin.html:100 +#: cps/admin.py:1286 cps/templates/admin.html:100 msgid "Edit Email Server Settings" msgstr "Editar configurações do servidor de e-mail" -#: cps/admin.py:1293 +#: cps/admin.py:1305 msgid "Success! Gmail Account Verified." msgstr "" -#: cps/admin.py:1313 cps/admin.py:1316 cps/admin.py:1698 cps/admin.py:1842 -#: cps/admin.py:1940 cps/admin.py:2061 cps/editbooks.py:241 -#: cps/editbooks.py:317 cps/editbooks.py:1224 cps/shelf.py:90 cps/shelf.py:150 +#: cps/admin.py:1325 cps/admin.py:1328 cps/admin.py:1710 cps/admin.py:1857 +#: cps/admin.py:1955 cps/admin.py:2076 cps/editbooks.py:242 +#: cps/editbooks.py:318 cps/editbooks.py:1225 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:149 cps/web.py:1496 +#: cps/shelf.py:468 cps/tasks/convert.py:150 cps/web.py:1520 #, python-format msgid "Oops! Database Error: %(error)s." msgstr "Erro de banco de dados: %(error)s." -#: cps/admin.py:1323 +#: cps/admin.py:1335 #, 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:1326 +#: cps/admin.py:1338 #, 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:1328 +#: cps/admin.py:1340 msgid "Please configure your e-mail address first..." msgstr "Por favor, configure seu endereço de e-mail primeiro..." -#: cps/admin.py:1330 +#: cps/admin.py:1342 msgid "Email Server Settings updated" msgstr "Atualização das configurações do servidor de e-mail" -#: cps/admin.py:1353 cps/templates/admin.html:195 +#: cps/admin.py:1365 cps/templates/admin.html:195 msgid "Edit Scheduled Tasks Settings" msgstr "Editar configurações de tarefas agendadas" -#: cps/admin.py:1365 +#: cps/admin.py:1377 msgid "Invalid start time for task specified" msgstr "Hora de início inválida para a tarefa especificada" -#: cps/admin.py:1370 +#: cps/admin.py:1382 msgid "Invalid duration for task specified" msgstr "Duração inválida para a tarefa especificada" -#: cps/admin.py:1380 +#: cps/admin.py:1392 msgid "Scheduled tasks settings updated" msgstr "Configurações de tarefas agendadas atualizadas" -#: cps/admin.py:1390 cps/admin.py:1439 cps/admin.py:2057 cps/web.py:1296 +#: cps/admin.py:1402 cps/admin.py:1451 cps/admin.py:2072 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:1394 +#: cps/admin.py:1406 msgid "Settings DB is not Writeable" msgstr "Settings DB não é gravável" -#: cps/admin.py:1424 cps/admin.py:2049 +#: cps/admin.py:1436 cps/admin.py:2064 #, python-format msgid "Edit User %(nick)s" msgstr "Editar Usuário %(nick)s" -#: cps/admin.py:1436 +#: cps/admin.py:1448 #, fuzzy, python-format msgid "Success! Password for user %(user)s reset" msgstr "Senha do usuário %(user)s redefinida" -#: cps/admin.py:1442 +#: cps/admin.py:1454 #, fuzzy msgid "Oops! Please configure the SMTP mail settings." msgstr "Por favor, configure primeiro as configurações de correio SMTP..." -#: cps/admin.py:1453 +#: cps/admin.py:1465 msgid "Logfile viewer" msgstr "Visualizador do Log" -#: cps/admin.py:1519 +#: cps/admin.py:1531 msgid "Requesting update package" msgstr "Solicitação de pacote de atualização" -#: cps/admin.py:1520 +#: cps/admin.py:1532 msgid "Downloading update package" msgstr "Baixando pacote de atualização" -#: cps/admin.py:1521 +#: cps/admin.py:1533 msgid "Unzipping update package" msgstr "Descompactando pacote de atualização" -#: cps/admin.py:1522 +#: cps/admin.py:1534 msgid "Replacing files" msgstr "Substituindo arquivos" -#: cps/admin.py:1523 +#: cps/admin.py:1535 msgid "Database connections are closed" msgstr "As conexões à base de dados estão fechadas" -#: cps/admin.py:1524 +#: cps/admin.py:1536 msgid "Stopping server" msgstr "Parando servidor" -#: cps/admin.py:1525 +#: cps/admin.py:1537 msgid "Update finished, please press okay and reload page" msgstr "Atualização concluída, pressione okay e recarregue a página" -#: cps/admin.py:1526 cps/admin.py:1527 cps/admin.py:1528 cps/admin.py:1529 -#: cps/admin.py:1530 cps/admin.py:1531 +#: cps/admin.py:1538 cps/admin.py:1539 cps/admin.py:1540 cps/admin.py:1541 +#: cps/admin.py:1542 cps/admin.py:1543 msgid "Update failed:" msgstr "Atualização falhou:" -#: cps/admin.py:1526 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 +#: cps/admin.py:1538 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 msgid "HTTP Error" msgstr "Erro HTTP" -#: cps/admin.py:1527 cps/updater.py:391 cps/updater.py:628 +#: cps/admin.py:1539 cps/updater.py:391 cps/updater.py:628 msgid "Connection error" msgstr "Erro de conexão" -#: cps/admin.py:1528 cps/updater.py:393 cps/updater.py:630 +#: cps/admin.py:1540 cps/updater.py:393 cps/updater.py:630 msgid "Timeout while establishing connection" msgstr "Tempo limite durante o estabelecimento da conexão" -#: cps/admin.py:1529 cps/updater.py:395 cps/updater.py:632 +#: cps/admin.py:1541 cps/updater.py:395 cps/updater.py:632 msgid "General error" msgstr "Erro geral" -#: cps/admin.py:1530 +#: cps/admin.py:1542 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:1531 +#: cps/admin.py:1543 msgid "Files could not be replaced during update" msgstr "Arquivos não puderam ser substituídos durante a atualização" -#: cps/admin.py:1555 +#: cps/admin.py:1567 msgid "Failed to extract at least One LDAP User" msgstr "Falha ao extrair pelo menos um usuário LDAP" -#: cps/admin.py:1600 +#: cps/admin.py:1612 msgid "Failed to Create at Least One LDAP User" msgstr "Falha ao criar pelo menos um usuário LDAP" -#: cps/admin.py:1613 +#: cps/admin.py:1625 #, python-format msgid "Error: %(ldaperror)s" msgstr "Erro: %(ldaperror)s" -#: cps/admin.py:1617 +#: cps/admin.py:1629 msgid "Error: No user returned in response of LDAP server" msgstr "Erro: Nenhum usuário retornado na resposta do servidor LDAP" -#: cps/admin.py:1650 +#: 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:1652 +#: cps/admin.py:1664 msgid "{} User Successfully Imported" msgstr "{} Usuário Importado com Sucesso" -#: cps/admin.py:1710 +#: 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:1730 +#: cps/admin.py:1742 msgid "DB is not Writeable" msgstr "DB não é gravável" -#: cps/admin.py:1746 +#: 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:1750 +#: 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:1829 +#: cps/admin.py:1842 msgid "Password length has to be between 1 and 40" msgstr "" -#: cps/admin.py:1881 +#: cps/admin.py:1896 msgid "Database Settings updated" msgstr "Configurações do Banco de Dados Atualizada" -#: cps/admin.py:1889 +#: cps/admin.py:1904 msgid "Database Configuration" msgstr "Configuração do Banco de Dados" -#: cps/admin.py:1904 cps/web.py:1270 +#: cps/admin.py:1919 cps/web.py:1290 msgid "Oops! Please complete all fields." msgstr "Por favor, preencha todos os campos!" -#: cps/admin.py:1913 +#: cps/admin.py:1928 msgid "E-mail is not from valid domain" msgstr "O e-mail não é de um domínio válido" -#: cps/admin.py:1919 +#: cps/admin.py:1934 msgid "Add new user" msgstr "Adicionar novo usuário" -#: cps/admin.py:1930 +#: cps/admin.py:1945 #, python-format msgid "User '%(user)s' created" msgstr "Usuário '%(user)s' criado" -#: cps/admin.py:1936 +#: cps/admin.py:1951 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:1966 +#: cps/admin.py:1981 #, python-format msgid "User '%(nick)s' deleted" msgstr "Usuário '%(nick)s' excluído" -#: cps/admin.py:1969 +#: cps/admin.py:1984 msgid "Can't delete Guest User" msgstr "Impossível excluir Convidado" -#: cps/admin.py:1972 +#: cps/admin.py:1987 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:2027 cps/web.py:1445 +#: cps/admin.py:2042 cps/web.py:1469 msgid "Email can't be empty and has to be a valid Email" msgstr "" -#: cps/admin.py:2053 +#: cps/admin.py:2068 #, python-format msgid "User '%(nick)s' updated" msgstr "Usuário '%(nick)s' atualizado" @@ -516,122 +516,123 @@ msgstr "não instalado" msgid "Execution permissions missing" msgstr "Faltam as permissões de execução" -#: cps/db.py:752 cps/search.py:137 cps/web.py:731 +#: cps/db.py:752 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:993 cps/templates/config_edit.html:208 +#: cps/db.py:992 cps/templates/config_edit.html:208 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 -#: cps/web.py:558 cps/web.py:592 cps/web.py:665 cps/web.py:692 cps/web.py:973 -#: cps/web.py:1003 cps/web.py:1048 cps/web.py:1076 cps/web.py:1115 +#: 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 +#: cps/web.py:1131 msgid "None" msgstr "Nenhum" -#: cps/editbooks.py:122 cps/editbooks.py:910 cps/web.py:525 cps/web.py:1537 -#: cps/web.py:1581 cps/web.py:1626 +#: cps/editbooks.py:123 cps/editbooks.py:911 cps/web.py:529 cps/web.py:1561 +#: cps/web.py:1605 cps/web.py:1650 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:166 cps/editbooks.py:1245 +#: cps/editbooks.py:167 cps/editbooks.py:1246 msgid "User has no rights to upload cover" msgstr "Usuário não tem permissão para fazer upload da capa" -#: cps/editbooks.py:186 cps/editbooks.py:731 +#: cps/editbooks.py:187 cps/editbooks.py:732 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:228 +#: cps/editbooks.py:229 msgid "Metadata successfully updated" msgstr "Metadados atualizados com sucesso" -#: cps/editbooks.py:246 +#: cps/editbooks.py:247 msgid "Error editing book: {}" msgstr "Erro ao editar o livro: {}" -#: cps/editbooks.py:303 +#: cps/editbooks.py:304 #, python-format msgid "File %(file)s uploaded" msgstr "Arquivo %(file)s enviado" -#: cps/editbooks.py:331 +#: cps/editbooks.py:332 msgid "Source or destination format for conversion missing" msgstr "Formato de origem ou destino para conversão ausente" -#: cps/editbooks.py:339 +#: cps/editbooks.py:340 #, 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:343 +#: cps/editbooks.py:344 #, 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:650 +#: cps/editbooks.py:651 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:705 cps/editbooks.py:1037 +#: cps/editbooks.py:706 cps/editbooks.py:1038 #, python-format msgid "'%(langname)s' is not a valid language" msgstr "%(langname)s não é um idioma válido" -#: cps/editbooks.py:743 cps/editbooks.py:1185 +#: cps/editbooks.py:744 cps/editbooks.py:1186 #, 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:747 cps/editbooks.py:1189 +#: cps/editbooks.py:748 cps/editbooks.py:1190 msgid "File to be uploaded must have an extension" msgstr "O arquivo a ser carregado deve ter uma extensão" -#: cps/editbooks.py:755 +#: cps/editbooks.py:756 #, 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:775 +#: cps/editbooks.py:776 #, 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:832 cps/editbooks.py:834 +#: cps/editbooks.py:833 cps/editbooks.py:835 msgid "Book Format Successfully Deleted" msgstr "Formato do Livro Apagado com Sucesso" -#: cps/editbooks.py:841 cps/editbooks.py:843 +#: cps/editbooks.py:842 cps/editbooks.py:844 msgid "Book Successfully Deleted" msgstr "Livro Apagado com Sucesso" -#: cps/editbooks.py:895 +#: cps/editbooks.py:896 msgid "You are missing permissions to delete books" msgstr "Você não tem permissão para apagar livros" -#: cps/editbooks.py:945 +#: cps/editbooks.py:946 msgid "edit metadata" msgstr "editar metadados" -#: cps/editbooks.py:994 +#: cps/editbooks.py:995 #, 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:1180 +#: cps/editbooks.py:1181 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:1201 +#: cps/editbooks.py:1202 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "Falha ao criar o caminho %(path)s (Permission denied)." -#: cps/editbooks.py:1206 +#: cps/editbooks.py:1207 #, python-format msgid "Failed to store file %(file)s." msgstr "Falha ao armazenar o arquivo %(file)s." -#: cps/editbooks.py:1230 +#: cps/editbooks.py:1231 #, python-format msgid "File format %(ext)s added to %(book)s" msgstr "Formato de arquivo %(ext)s adicionado a %(book)s" @@ -644,207 +645,207 @@ msgstr "Configuração do Google Drive não concluída, tente desativar e ativar 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" -#: cps/helper.py:84 +#: cps/helper.py:86 #, python-format 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:91 cps/tasks/convert.py:86 +#: cps/helper.py:93 cps/tasks/convert.py:86 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "%(format)s não encontrado no Google Drive: %(fn)s" -#: cps/helper.py:96 +#: cps/helper.py:98 #, python-format msgid "%(format)s not found: %(fn)s" msgstr "%(format)s não encontrado: %(fn)s" -#: cps/helper.py:101 cps/helper.py:226 cps/templates/detail.html:58 +#: cps/helper.py:103 cps/helper.py:228 cps/templates/detail.html:58 msgid "Send to eReader" msgstr "Enviar para E-Reader" -#: cps/helper.py:102 cps/helper.py:120 cps/helper.py:228 +#: cps/helper.py:104 cps/helper.py:122 cps/helper.py:230 #, fuzzy msgid "This Email has been sent via Calibre-Web." msgstr "Este e-mail foi enviado via Calibre-Web." -#: cps/helper.py:118 +#: cps/helper.py:120 #, fuzzy msgid "Calibre-Web Test Email" msgstr "E-mail de teste do Calibre-Web" -#: cps/helper.py:119 +#: cps/helper.py:121 #, fuzzy msgid "Test Email" msgstr "E-mail de teste" -#: cps/helper.py:136 +#: cps/helper.py:138 msgid "Get Started with Calibre-Web" msgstr "Comece a usar o calibre-web" -#: cps/helper.py:141 +#: cps/helper.py:143 #, fuzzy, python-format msgid "Registration Email for user: %(name)s" msgstr "E-mail de registro do usuário: %(name)s" -#: cps/helper.py:152 cps/helper.py:158 +#: cps/helper.py:154 cps/helper.py:160 #, fuzzy, python-format msgid "Convert %(orig)s to %(format)s and send to eReader" msgstr "Converter %(orig)s em %(format)s e enviar para E-Reader" -#: cps/helper.py:177 cps/helper.py:181 cps/helper.py:185 +#: cps/helper.py:179 cps/helper.py:183 cps/helper.py:187 #, fuzzy, python-format msgid "Send %(format)s to eReader" msgstr "Enviar %(format)s para o E-Reader" -#: cps/helper.py:225 +#: cps/helper.py:227 #, fuzzy, python-format msgid "%(book)s send to eReader" msgstr "%(book)s enviado para E-Reader" -#: cps/helper.py:230 +#: cps/helper.py:232 msgid "The requested file could not be read. Maybe wrong permissions?" msgstr "O arquivo solicitado não pôde ser lido. Talvez permissões erradas?" -#: cps/helper.py:345 +#: cps/helper.py:347 msgid "Read status could not set: {}" msgstr "Status Lido não pode ser alterado: {}" -#: cps/helper.py:368 +#: cps/helper.py:370 #, python-format msgid "Deleting bookfolder for book %(id)s failed, path has subfolders: %(path)s" msgstr "A exclusão da pasta de livros do livro %(id)s falhou, o caminho tem subpastas: %(path)s" -#: cps/helper.py:374 +#: cps/helper.py:376 #, python-format msgid "Deleting book %(id)s failed: %(message)s" msgstr "Falha ao excluir livro %(id)s: %(message)s" -#: cps/helper.py:385 +#: cps/helper.py:387 #, python-format 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:450 +#: cps/helper.py:452 #, 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:522 cps/helper.py:531 +#: cps/helper.py:524 cps/helper.py:533 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "Arquivo %(file)s não encontrado no Google Drive" -#: cps/helper.py:565 +#: cps/helper.py:567 #, 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:585 +#: cps/helper.py:587 msgid "Error in rename file in path: {}" msgstr "Erro ao renomear arquivo no caminho: {}" -#: cps/helper.py:603 +#: cps/helper.py:605 #, 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:668 +#: cps/helper.py:670 msgid "Found an existing account for this Email address" msgstr "" -#: cps/helper.py:676 +#: cps/helper.py:678 msgid "This username is already taken" msgstr "Este nome de usuário já está registrado" -#: cps/helper.py:688 +#: cps/helper.py:690 #, fuzzy msgid "Invalid Email address format" msgstr "Formato de endereço de e-mail inválido" -#: cps/helper.py:706 +#: cps/helper.py:710 msgid "Password doesn't comply with password validation rules" msgstr "" -#: cps/helper.py:855 +#: cps/helper.py:859 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:865 +#: cps/helper.py:869 msgid "Error Downloading Cover" msgstr "Erro ao Baixar a capa" -#: cps/helper.py:868 +#: cps/helper.py:872 msgid "Cover Format Error" msgstr "Erro de Formato da Capa" -#: cps/helper.py:871 +#: cps/helper.py:875 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:881 +#: cps/helper.py:885 msgid "Failed to create path for cover" msgstr "Falha em criar caminho para a capa" -#: cps/helper.py:897 +#: cps/helper.py:901 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:908 +#: cps/helper.py:912 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:920 +#: cps/helper.py:924 msgid "Invalid cover file content" msgstr "Conteúdo do arquivo de capa inválido" -#: cps/helper.py:924 +#: cps/helper.py:928 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "Apenas arquivos jpg/jpeg são suportados como arquivos de capa" -#: cps/helper.py:995 cps/helper.py:1183 +#: cps/helper.py:999 cps/helper.py:1156 #, fuzzy msgid "Cover" msgstr "Capa" -#: cps/helper.py:1032 +#: cps/helper.py:1016 msgid "Unrar binary file not found" msgstr "Binário Unrar não encontrado" -#: cps/helper.py:1043 +#: cps/helper.py:1027 #, fuzzy msgid "Error executing UnRar" msgstr "Erro excecutando UnRar" -#: cps/helper.py:1051 +#: cps/helper.py:1035 msgid "Could not find the specified directory" msgstr "" -#: cps/helper.py:1054 +#: cps/helper.py:1038 msgid "Please specify a directory, not a file" msgstr "" -#: cps/helper.py:1068 +#: cps/helper.py:1052 #, fuzzy msgid "Calibre binaries not viable" msgstr "DB não é gravável" -#: cps/helper.py:1077 +#: cps/helper.py:1061 #, python-format msgid "Missing calibre binaries: %(missing)s" msgstr "" -#: cps/helper.py:1079 +#: cps/helper.py:1063 #, fuzzy, python-format msgid "Missing executable permissions: %(missing)s" msgstr "Faltam as permissões de execução" -#: cps/helper.py:1084 +#: cps/helper.py:1068 #, fuzzy msgid "Error excecuting Calibre" msgstr "Erro excecutando UnRar" -#: cps/helper.py:1185 cps/templates/admin.html:216 +#: cps/helper.py:1158 cps/templates/admin.html:216 msgid "Queue all books for metadata backup" msgstr "" @@ -928,7 +929,7 @@ msgstr "{} Estrelas" #: cps/remotelogin.py:62 cps/templates/layout.html:67 #: cps/templates/layout.html:101 cps/templates/login.html:4 -#: cps/templates/login.html:21 cps/web.py:1333 +#: cps/templates/login.html:21 cps/web.py:1353 msgid "Login" msgstr "Login" @@ -944,7 +945,7 @@ msgstr "O Token expirou" msgid "Success! Please return to your device" msgstr "Sucesso! Por favor, volte ao seu aparelho" -#: cps/render_template.py:42 cps/web.py:414 +#: cps/render_template.py:42 cps/web.py:418 msgid "Books" msgstr "Livros" @@ -969,7 +970,7 @@ msgstr "Livros Baixados" msgid "Show Downloaded Books" msgstr "Mostrar Livros Baixados" -#: cps/render_template.py:59 cps/templates/index.xml:33 cps/web.py:429 +#: cps/render_template.py:59 cps/templates/index.xml:33 cps/web.py:433 msgid "Top Rated Books" msgstr "Livros Mais Bem Avaliados" @@ -978,7 +979,7 @@ msgid "Show Top Rated Books" msgstr "Mostrar Livros Mais Bem Avaliados" #: cps/render_template.py:62 cps/templates/index.xml:55 -#: cps/templates/index.xml:59 cps/web.py:750 +#: cps/templates/index.xml:59 cps/web.py:766 msgid "Read Books" msgstr "Livros Lidos" @@ -988,7 +989,7 @@ msgid "Show Read and Unread" msgstr "Mostrar lido e não lido" #: cps/render_template.py:66 cps/templates/index.xml:62 -#: cps/templates/index.xml:66 cps/web.py:753 +#: cps/templates/index.xml:66 cps/web.py:769 msgid "Unread Books" msgstr "Livros Não Lidos" @@ -1006,7 +1007,7 @@ msgid "Show Random Books" msgstr "Mostrar Livros Aleatórios" #: cps/render_template.py:72 cps/templates/book_table.html:67 -#: cps/templates/index.xml:84 cps/web.py:1119 +#: cps/templates/index.xml:84 cps/web.py:1135 msgid "Categories" msgstr "Categorias" @@ -1017,7 +1018,7 @@ msgstr "Mostrar seção de categoria" #: cps/render_template.py:75 cps/templates/book_edit.html:91 #: cps/templates/book_table.html:68 cps/templates/index.xml:91 -#: cps/templates/search_form.html:70 cps/web.py:1009 cps/web.py:1021 +#: cps/templates/search_form.html:70 cps/web.py:1025 cps/web.py:1037 msgid "Series" msgstr "Série" @@ -1037,7 +1038,7 @@ msgid "Show Author Section" msgstr "Mostrar seção de autor" #: cps/render_template.py:82 cps/templates/book_table.html:72 -#: cps/templates/index.xml:77 cps/web.py:977 +#: cps/templates/index.xml:77 cps/web.py:993 msgid "Publishers" msgstr "Editoras" @@ -1048,7 +1049,7 @@ msgstr "Mostrar seção de editoras" #: cps/render_template.py:85 cps/templates/book_table.html:70 #: cps/templates/index.xml:98 cps/templates/search_form.html:108 -#: cps/web.py:1091 +#: cps/web.py:1107 msgid "Languages" msgstr "Idiomas" @@ -1075,7 +1076,7 @@ msgstr "Formatos de arquivo" msgid "Show File Formats Section" msgstr "Mostrar seção de formatos de arquivo" -#: cps/render_template.py:96 cps/web.py:776 +#: cps/render_template.py:96 cps/web.py:792 msgid "Archived Books" msgstr "Livros Arquivados" @@ -1084,7 +1085,7 @@ msgstr "Livros Arquivados" msgid "Show Archived Books" msgstr "Mostrar livros arquivados" -#: cps/render_template.py:101 cps/web.py:807 +#: cps/render_template.py:101 cps/web.py:823 msgid "Books List" msgstr "Lista de Livros" @@ -1305,173 +1306,178 @@ msgstr "Uma nova atualização está disponível. Clique no botão abaixo para a msgid "No release information available" msgstr "Não há informações de lançamento disponíveis" -#: cps/templates/index.html:6 cps/web.py:441 +#: cps/templates/index.html:6 cps/web.py:445 msgid "Discover (Random Books)" msgstr "Descobrir (Livros Aleatórios)" -#: cps/web.py:477 +#: cps/web.py:481 msgid "Hot Books (Most Downloaded)" msgstr "Livros Quentess (Mais Baixados)" -#: cps/web.py:508 +#: cps/web.py:512 #, python-format msgid "Downloaded books by %(user)s" msgstr "Livros baixados por %(user)s" -#: cps/web.py:541 +#: cps/web.py:545 #, python-format msgid "Author: %(name)s" msgstr "Autor: %(name)s" -#: cps/web.py:577 +#: cps/web.py:581 #, python-format msgid "Publisher: %(name)s" msgstr "Editora: %(name)s" -#: cps/web.py:605 +#: cps/web.py:609 #, python-format msgid "Series: %(serie)s" msgstr "Série: %(serie)s" -#: cps/web.py:620 +#: cps/web.py:623 msgid "Rating: None" msgstr "Avaliação: Nenhuma" -#: cps/web.py:629 +#: cps/web.py:632 #, python-format msgid "Rating: %(rating)s stars" msgstr "Avaliação: %(rating)s estrelas" -#: cps/web.py:645 +#: cps/web.py:663 #, python-format msgid "File format: %(format)s" msgstr "Formato do arquivo: %(format)s" -#: cps/web.py:682 +#: cps/web.py:698 #, python-format msgid "Category: %(name)s" msgstr "Categoria: %(name)s" -#: cps/web.py:711 +#: cps/web.py:727 #, python-format msgid "Language: %(name)s" msgstr "Idioma: %(name)s" -#: cps/templates/admin.html:16 cps/web.py:949 +#: cps/templates/admin.html:16 cps/web.py:965 msgid "Downloads" msgstr "Downloads" -#: cps/web.py:1051 +#: cps/web.py:1067 msgid "Ratings list" msgstr "Lista de Avaliações" -#: cps/web.py:1078 +#: cps/web.py:1094 msgid "File formats list" msgstr "Lista de formatos de arquivo" -#: cps/web.py:1233 +#: cps/web.py:1249 #, fuzzy msgid "Please configure the SMTP mail settings first..." msgstr "Por favor, configure primeiro as configurações de correio SMTP..." -#: cps/web.py:1240 +#: cps/web.py:1256 #, python-format msgid "Success! Book queued for sending to %(eReadermail)s" msgstr "Livro enfileirado com sucesso para envio para %(eReadermail)s" -#: cps/web.py:1243 +#: cps/web.py:1259 #, python-format msgid "Oops! There was an error sending book: %(res)s" msgstr "Ops! Ocorreu um erro ao enviar este livro: %(res)s" -#: cps/web.py:1245 +#: cps/web.py:1261 #, fuzzy msgid "Oops! Please update your profile with a valid eReader Email." msgstr "Por favor, atualize seu perfil com um endereço de e-mail Envie Para o Kindle válido." -#: cps/web.py:1261 +#: cps/web.py:1277 msgid "Please wait one minute to register next user" msgstr "" #: cps/templates/layout.html:68 cps/templates/layout.html:102 -#: cps/templates/login.html:27 cps/templates/register.html:17 cps/web.py:1262 -#: cps/web.py:1267 cps/web.py:1271 cps/web.py:1277 cps/web.py:1297 -#: cps/web.py:1301 cps/web.py:1314 cps/web.py:1317 +#: cps/templates/login.html:27 cps/templates/register.html:17 cps/web.py:1278 +#: cps/web.py:1282 cps/web.py:1287 cps/web.py:1291 cps/web.py:1297 +#: cps/web.py:1317 cps/web.py:1321 cps/web.py:1334 cps/web.py:1337 msgid "Register" msgstr "Registe-se" -#: cps/web.py:1266 cps/web.py:1313 +#: cps/web.py:1281 cps/web.py:1385 +#, fuzzy +msgid "Connection error to limiter backend, please contact your administrator" +msgstr "O servidor de E-Mail não está configurado, por favor contacte o seu administrador!" + +#: cps/web.py:1286 cps/web.py:1333 msgid "Oops! Email server is not configured, please contact your administrator." msgstr "O servidor de E-Mail não está configurado, por favor contacte o seu administrador!" -#: cps/web.py:1299 +#: cps/web.py:1319 msgid "Oops! Your Email is not allowed." msgstr "Seu e-mail não tem permissão para registrar" -#: cps/web.py:1302 +#: cps/web.py:1322 msgid "Success! Confirmation Email has been sent." msgstr "O e-mail de confirmação foi enviado para a sua conta de e-mail." -#: cps/web.py:1348 cps/web.py:1367 +#: cps/web.py:1368 cps/web.py:1391 #, fuzzy msgid "Cannot activate LDAP authentication" msgstr "Não é possível ativar a autenticação LDAP" -#: cps/web.py:1361 +#: cps/web.py:1381 msgid "Please wait one minute before next login" msgstr "" -#: cps/web.py:1376 +#: cps/web.py:1400 #, fuzzy, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "agora você está logado como: '%(nickname)s'" -#: cps/web.py:1383 +#: cps/web.py:1407 #, fuzzy, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgstr "Login de reserva como:'%(nickname)s', servidor LDAP não acessível ou usuário desconhecido" -#: cps/web.py:1388 +#: cps/web.py:1412 #, fuzzy, python-format msgid "Could not login: %(message)s" msgstr "Não foi possível fazer o login: %(message)s" -#: cps/web.py:1392 cps/web.py:1417 +#: cps/web.py:1416 cps/web.py:1441 #, fuzzy msgid "Wrong Username or Password" msgstr "Nome de Usuário ou Senha incorretos" -#: cps/web.py:1399 +#: cps/web.py:1423 #, fuzzy msgid "New Password was sent to your email address" msgstr "Nova Senha foi enviada para seu endereço de e-mail" -#: cps/web.py:1403 +#: cps/web.py:1427 #, fuzzy msgid "An unknown error occurred. Please try again later." msgstr "Ocorreu um erro desconhecido. Por favor, tente novamente mais tarde." -#: cps/web.py:1405 +#: cps/web.py:1429 #, fuzzy msgid "Please enter valid username to reset password" msgstr "Por favor, digite um nome de usuário válido para redefinir a senha" -#: cps/web.py:1413 +#: cps/web.py:1437 #, fuzzy, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "agora você está logado como: '%(nickname)s'" -#: cps/web.py:1471 cps/web.py:1521 +#: cps/web.py:1495 cps/web.py:1545 #, python-format msgid "%(name)s's Profile" msgstr "Perfil de %(name)s" -#: cps/web.py:1487 +#: cps/web.py:1511 #, fuzzy msgid "Success! Profile Updated" msgstr "Perfil atualizado" -#: cps/web.py:1491 +#: cps/web.py:1515 msgid "Oops! An account already exists for this Email." msgstr "Encontrada uma conta existente para este endereço de e-mail." @@ -1484,41 +1490,41 @@ msgstr "Não foi encontrado nenhum arquivo gmail.json válido com informações msgid "%(book)s send to E-Reader" msgstr "%(book)s enviado para E-Reader" -#: cps/tasks/convert.py:166 +#: cps/tasks/convert.py:167 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "Calibre ebook-convert %(tool)s não encontrado" -#: cps/tasks/convert.py:200 +#: cps/tasks/convert.py:201 #, python-format msgid "%(format)s format not found on disk" msgstr "Formato %(format)s não encontrado no disco" -#: cps/tasks/convert.py:204 +#: cps/tasks/convert.py:205 msgid "Ebook converter failed with unknown error" msgstr "O conversor de Ebook falhou com erro desconhecido" -#: cps/tasks/convert.py:223 +#: cps/tasks/convert.py:224 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "Kepubify-converter falhou: %(error)s" -#: cps/tasks/convert.py:244 +#: cps/tasks/convert.py:245 #, 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:279 +#: cps/tasks/convert.py:287 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "Ebook-converter falhou: %(error)s" -#: cps/tasks/convert.py:302 +#: cps/tasks/convert.py:310 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "Calibre falhou com erro: %(error)s" -#: cps/tasks/convert.py:307 +#: cps/tasks/convert.py:315 msgid "Convert" msgstr "Converter" @@ -1526,7 +1532,7 @@ msgstr "Converter" msgid "Reconnecting Calibre database" msgstr "Reconectando banco de dados Calibre" -#: cps/tasks/mail.py:269 +#: cps/tasks/mail.py:278 msgid "E-mail" msgstr "E-mail" @@ -1804,12 +1810,12 @@ 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:414 -#: cps/templates/config_view_edit.html:175 cps/templates/modal_dialogs.html:64 -#: cps/templates/modal_dialogs.html:99 cps/templates/modal_dialogs.html:117 -#: cps/templates/modal_dialogs.html:135 cps/templates/schedule_edit.html:45 -#: cps/templates/shelf_edit.html:27 cps/templates/tasks.html:46 -#: cps/templates/user_edit.html:144 +#: cps/templates/config_db.html:66 cps/templates/config_edit.html:428 +#: 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 +#: cps/templates/schedule_edit.html:45 cps/templates/shelf_edit.html:27 +#: cps/templates/tasks.html:46 cps/templates/user_edit.html:144 msgid "Cancel" msgstr "Cancelar" @@ -1990,7 +1996,7 @@ msgid "Fetch Metadata" msgstr "Buscar Metadados" #: cps/templates/book_edit.html:213 cps/templates/config_db.html:65 -#: cps/templates/config_edit.html:413 cps/templates/config_view_edit.html:174 +#: cps/templates/config_edit.html:427 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 @@ -2155,7 +2161,7 @@ msgid "Location of Calibre Database" msgstr "Localização da Base de Dados Calibre" #: cps/templates/config_db.html:21 -msgid "Separate Book files from Library (Highly experimental, might not work at all)" +msgid "Separate Book Files from Library" msgstr "" #: cps/templates/config_db.html:34 @@ -2239,7 +2245,7 @@ msgid "Convert non-English characters in title and author while saving to disk" msgstr "Converta caracteres não ingleses em título e autor enquanto salva em disco" #: cps/templates/config_edit.html:108 -msgid "Embed Metadata to Ebook File on Download and Conversion (needs Calibre/Kepubify binaries)" +msgid "Embed Metadata to Ebook File on Download/Conversion/e-mail (needs Calibre/Kepubify binaries)" msgstr "" #: cps/templates/config_edit.html:112 @@ -2463,40 +2469,52 @@ msgstr "Configurações do OAuth" msgid "Limit failed login attempts" msgstr "" -#: cps/templates/config_edit.html:376 +#: cps/templates/config_edit.html:377 +msgid "Configure Backend for Limiter" +msgstr "" + +#: cps/templates/config_edit.html:381 +msgid "Options for Limiter" +msgstr "" + +#: cps/templates/config_edit.html:386 msgid "Session protection" msgstr "" -#: cps/templates/config_edit.html:378 +#: cps/templates/config_edit.html:388 msgid "Basic" msgstr "" -#: cps/templates/config_edit.html:379 +#: cps/templates/config_edit.html:389 msgid "Strong" msgstr "" -#: cps/templates/config_edit.html:384 +#: cps/templates/config_edit.html:394 #, fuzzy msgid "User Password policy" msgstr "Política de senha do usuário" -#: cps/templates/config_edit.html:388 +#: cps/templates/config_edit.html:398 msgid "Minimum password length" msgstr "" -#: cps/templates/config_edit.html:393 +#: cps/templates/config_edit.html:403 msgid "Enforce number" msgstr "" -#: cps/templates/config_edit.html:397 +#: cps/templates/config_edit.html:407 msgid "Enforce lowercase characters" msgstr "" -#: cps/templates/config_edit.html:401 +#: cps/templates/config_edit.html:411 msgid "Enforce uppercase characters" msgstr "" -#: cps/templates/config_edit.html:405 +#: cps/templates/config_edit.html:415 +msgid "Enforce characters (needed For Chinese/Japanese/Korean Characters)" +msgstr "" + +#: cps/templates/config_edit.html:419 msgid "Enforce special characters" msgstr "" @@ -2618,47 +2636,47 @@ msgstr "Livro %(index)s de %(range)s" msgid "Published" msgstr "Publicado em" -#: cps/templates/detail.html:250 cps/templates/listenmp3.html:158 +#: cps/templates/detail.html:251 cps/templates/listenmp3.html:158 msgid "Mark As Unread" msgstr "Marcar como Não Lido" -#: cps/templates/detail.html:251 cps/templates/listenmp3.html:158 +#: cps/templates/detail.html:252 cps/templates/listenmp3.html:158 msgid "Mark As Read" msgstr "Marcar como Lido" -#: cps/templates/detail.html:253 cps/templates/listenmp3.html:159 +#: cps/templates/detail.html:254 cps/templates/listenmp3.html:159 msgid "Read" msgstr "Lido" -#: cps/templates/detail.html:263 cps/templates/listenmp3.html:166 +#: cps/templates/detail.html:264 cps/templates/listenmp3.html:166 msgid "Restore from archive" msgstr "Restaurar do arquivo" -#: cps/templates/detail.html:264 cps/templates/listenmp3.html:166 +#: cps/templates/detail.html:265 cps/templates/listenmp3.html:166 msgid "Add to archive" msgstr "Adicionar ao arquivo" -#: cps/templates/detail.html:266 cps/templates/listenmp3.html:167 +#: cps/templates/detail.html:267 cps/templates/listenmp3.html:167 msgid "Archived" msgstr "Arquivado" -#: cps/templates/detail.html:277 cps/templates/listenmp3.html:177 +#: cps/templates/detail.html:278 cps/templates/listenmp3.html:177 msgid "Description:" msgstr "Descrição:" -#: cps/templates/detail.html:292 cps/templates/listenmp3.html:190 +#: cps/templates/detail.html:293 cps/templates/listenmp3.html:190 #: cps/templates/search.html:16 msgid "Add to shelf" msgstr "Adicionar à estante" -#: cps/templates/detail.html:304 cps/templates/detail.html:323 +#: cps/templates/detail.html:305 cps/templates/detail.html:324 #: cps/templates/feed.xml:81 cps/templates/layout.html:154 #: cps/templates/listenmp3.html:201 cps/templates/listenmp3.html:218 #: cps/templates/search.html:22 msgid "(Public)" msgstr "(Público)" -#: cps/templates/detail.html:339 +#: cps/templates/detail.html:340 msgid "Edit Metadata" msgstr "Editar Metadados" diff --git a/cps/translations/ru/LC_MESSAGES/messages.mo b/cps/translations/ru/LC_MESSAGES/messages.mo index 474eee6b..4197af64 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 d0f2801d..68054c1a 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-02-10 10:06+0100\n" +"POT-Creation-Date: 2024-04-27 07:20+0200\n" "PO-Revision-Date: 2020-04-29 01:20+0400\n" "Last-Translator: ZIZA\n" "Language: ru\n" @@ -23,502 +23,502 @@ msgstr "" msgid "Statistics" msgstr "Статистика" -#: cps/admin.py:149 +#: cps/admin.py:150 #, fuzzy msgid "Server restarted, please reload page." msgstr "Сервер перезагружен, пожалуйста, обновите страницу" -#: cps/admin.py:151 +#: cps/admin.py:152 #, fuzzy msgid "Performing Server shutdown, please close window." msgstr "Производится остановка сервера, пожалуйста, закройте окно" -#: cps/admin.py:159 +#: cps/admin.py:160 msgid "Success! Database Reconnected" msgstr "" -#: cps/admin.py:162 +#: cps/admin.py:163 msgid "Unknown command" msgstr "Неизвестная команда" -#: cps/admin.py:173 +#: cps/admin.py:174 #, fuzzy msgid "Success! Books queued for Metadata Backup, please check Tasks for result" msgstr "Книга успешно поставлена в очередь для отправки на %(eReadermail)s" -#: cps/admin.py:206 cps/editbooks.py:589 cps/editbooks.py:591 -#: cps/editbooks.py:629 cps/editbooks.py:646 cps/editbooks.py:1262 +#: cps/admin.py:207 cps/editbooks.py:590 cps/editbooks.py:592 +#: cps/editbooks.py:630 cps/editbooks.py:647 cps/editbooks.py:1263 #: cps/updater.py:613 cps/uploader.py:93 cps/uploader.py:102 msgid "Unknown" msgstr "Неизвестно" -#: cps/admin.py:231 +#: cps/admin.py:232 msgid "Admin page" msgstr "Администрирование" -#: cps/admin.py:251 +#: cps/admin.py:252 msgid "Basic Configuration" msgstr "Настройки сервера" -#: cps/admin.py:289 +#: cps/admin.py:290 msgid "UI Configuration" msgstr "Настройка интерфейса" -#: cps/admin.py:323 cps/templates/admin.html:51 +#: cps/admin.py:324 cps/templates/admin.html:51 #, fuzzy msgid "Edit Users" msgstr "Управление сервером" -#: cps/admin.py:367 cps/opds.py:506 cps/templates/grid.html:14 +#: cps/admin.py:368 cps/opds.py:506 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "Все" -#: cps/admin.py:394 cps/admin.py:1405 +#: cps/admin.py:395 cps/admin.py:1417 msgid "User not found" msgstr "" -#: cps/admin.py:408 +#: cps/admin.py:409 msgid "{} users deleted successfully" msgstr "" -#: cps/admin.py:431 cps/templates/config_view_edit.html:133 +#: cps/admin.py:432 cps/templates/config_view_edit.html:133 #: cps/templates/user_edit.html:45 cps/templates/user_table.html:81 msgid "Show All" msgstr "Показать все" -#: cps/admin.py:452 cps/admin.py:458 +#: cps/admin.py:453 cps/admin.py:459 msgid "Malformed request" msgstr "" -#: cps/admin.py:470 cps/admin.py:2033 +#: cps/admin.py:471 cps/admin.py:2048 msgid "Guest Name can't be changed" msgstr "" -#: cps/admin.py:482 +#: cps/admin.py:483 msgid "Guest can't have this role" msgstr "" -#: cps/admin.py:494 cps/admin.py:1987 +#: cps/admin.py:495 cps/admin.py:2002 msgid "No admin user remaining, can't remove admin role" msgstr "" -#: cps/admin.py:498 cps/admin.py:512 +#: cps/admin.py:499 cps/admin.py:513 msgid "Value has to be true or false" msgstr "" -#: cps/admin.py:500 +#: cps/admin.py:501 msgid "Invalid role" msgstr "" -#: cps/admin.py:504 +#: cps/admin.py:505 msgid "Guest can't have this view" msgstr "" -#: cps/admin.py:514 +#: cps/admin.py:515 msgid "Invalid view" msgstr "" -#: cps/admin.py:517 +#: cps/admin.py:518 msgid "Guest's Locale is determined automatically and can't be set" msgstr "" -#: cps/admin.py:521 +#: cps/admin.py:522 msgid "No Valid Locale Given" msgstr "" -#: cps/admin.py:532 +#: cps/admin.py:533 msgid "No Valid Book Language Given" msgstr "" -#: cps/admin.py:534 cps/editbooks.py:455 +#: cps/admin.py:535 cps/editbooks.py:456 msgid "Parameter not found" msgstr "" -#: cps/admin.py:571 +#: cps/admin.py:572 msgid "Invalid Read Column" msgstr "" -#: cps/admin.py:577 +#: cps/admin.py:578 msgid "Invalid Restricted Column" msgstr "" -#: cps/admin.py:597 cps/admin.py:1858 +#: cps/admin.py:598 cps/admin.py:1873 msgid "Calibre-Web configuration updated" msgstr "Конфигурация Calibre-Web обновлена" -#: cps/admin.py:609 +#: cps/admin.py:610 msgid "Do you really want to delete the Kobo Token?" msgstr "Вы действительно хотите удалить Kobo Token ?" -#: cps/admin.py:611 +#: cps/admin.py:612 msgid "Do you really want to delete this domain?" msgstr "" -#: cps/admin.py:613 +#: cps/admin.py:614 msgid "Do you really want to delete this user?" msgstr "" -#: cps/admin.py:615 +#: cps/admin.py:616 msgid "Are you sure you want to delete this shelf?" msgstr "Вы действительно хотите удалить эту книжную полку?" -#: cps/admin.py:617 +#: cps/admin.py:618 #, fuzzy msgid "Are you sure you want to change locales of selected user(s)?" msgstr "Вы действительно хотите удалить эту книжную полку?" -#: cps/admin.py:619 +#: cps/admin.py:620 msgid "Are you sure you want to change visible book languages for selected user(s)?" msgstr "" -#: cps/admin.py:621 +#: cps/admin.py:622 msgid "Are you sure you want to change the selected role for the selected user(s)?" msgstr "" -#: cps/admin.py:623 +#: cps/admin.py:624 #, fuzzy msgid "Are you sure you want to change the selected restrictions for the selected user(s)?" msgstr "Вы действительно хотите удалить эту книжную полку?" -#: cps/admin.py:625 +#: cps/admin.py:626 msgid "Are you sure you want to change the selected visibility restrictions for the selected user(s)?" msgstr "" -#: cps/admin.py:628 +#: cps/admin.py:629 #, fuzzy msgid "Are you sure you want to change shelf sync behavior for the selected user(s)?" msgstr "Вы действительно хотите удалить эту книжную полку?" -#: cps/admin.py:630 +#: cps/admin.py:631 #, fuzzy msgid "Are you sure you want to change Calibre library location?" msgstr "Вы действительно хотите остановить Calibre-Web?" -#: cps/admin.py:632 +#: cps/admin.py:633 msgid "Calibre-Web will search for updated Covers and update Cover Thumbnails, this may take a while?" msgstr "" -#: cps/admin.py:635 +#: cps/admin.py:636 msgid "Are you sure you want delete Calibre-Web's sync database to force a full sync with your Kobo Reader?" msgstr "" -#: cps/admin.py:878 cps/admin.py:884 cps/admin.py:894 cps/admin.py:904 +#: cps/admin.py:879 cps/admin.py:885 cps/admin.py:895 cps/admin.py:905 #: cps/templates/modal_dialogs.html:29 cps/templates/user_table.html:41 #: cps/templates/user_table.html:58 msgid "Deny" msgstr "Запретить" -#: cps/admin.py:880 cps/admin.py:886 cps/admin.py:896 cps/admin.py:906 +#: cps/admin.py:881 cps/admin.py:887 cps/admin.py:897 cps/admin.py:907 #: cps/templates/modal_dialogs.html:28 cps/templates/user_table.html:44 #: cps/templates/user_table.html:61 msgid "Allow" msgstr "Разрешить" -#: cps/admin.py:921 +#: cps/admin.py:940 msgid "{} sync entries deleted" msgstr "" -#: cps/admin.py:969 +#: cps/admin.py:981 msgid "Tag not found" msgstr "" -#: cps/admin.py:981 +#: cps/admin.py:993 msgid "Invalid Action" msgstr "" -#: cps/admin.py:1111 +#: cps/admin.py:1123 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "client_secrets.json не настроен для веб-приложения" -#: cps/admin.py:1156 +#: cps/admin.py:1168 msgid "Logfile Location is not Valid, Please Enter Correct Path" msgstr "Неправильное расположение файла журнала, пожалуйста, введите правильный путь." -#: cps/admin.py:1162 +#: cps/admin.py:1174 msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgstr "Недопустимое расположение файла журнала доступа, пожалуйста, введите правильный путь" -#: cps/admin.py:1196 +#: cps/admin.py:1208 msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgstr "Пожалуйста, введите провайдера LDAP, порт, DN и идентификатор объекта пользователя" -#: cps/admin.py:1202 +#: cps/admin.py:1214 #, fuzzy msgid "Please Enter a LDAP Service Account and Password" msgstr "Пожалуйста, введите действительное имя пользователя для сброса пароля" -#: cps/admin.py:1205 +#: cps/admin.py:1217 msgid "Please Enter a LDAP Service Account" msgstr "" -#: cps/admin.py:1210 +#: cps/admin.py:1222 #, python-format msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgstr "Фильтр объектов группы LDAP должен иметь один идентификатор формата \"%s\"" -#: cps/admin.py:1212 +#: cps/admin.py:1224 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "Фильтр объектов группы LDAP имеет незавершённые круглые скобки" -#: cps/admin.py:1216 +#: cps/admin.py:1228 #, python-format msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgstr "Фильтр объектов пользователя LDAP должен иметь один идентификатор формата \"%s\"" -#: cps/admin.py:1218 +#: cps/admin.py:1230 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "Фильтр объектов пользователя LDAP имеет незавершенную круглую скобку" -#: cps/admin.py:1225 +#: cps/admin.py:1237 #, python-format msgid "LDAP Member User Filter needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1227 +#: cps/admin.py:1239 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1234 +#: cps/admin.py:1246 msgid "LDAP CACertificate, Certificate or Key Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1265 cps/templates/admin.html:53 +#: cps/admin.py:1277 cps/templates/admin.html:53 msgid "Add New User" msgstr "Добавить нового пользователя" -#: cps/admin.py:1274 cps/templates/admin.html:100 +#: cps/admin.py:1286 cps/templates/admin.html:100 msgid "Edit Email Server Settings" msgstr "Изменить настройки SMTP" -#: cps/admin.py:1293 +#: cps/admin.py:1305 msgid "Success! Gmail Account Verified." msgstr "" -#: cps/admin.py:1313 cps/admin.py:1316 cps/admin.py:1698 cps/admin.py:1842 -#: cps/admin.py:1940 cps/admin.py:2061 cps/editbooks.py:241 -#: cps/editbooks.py:317 cps/editbooks.py:1224 cps/shelf.py:90 cps/shelf.py:150 +#: cps/admin.py:1325 cps/admin.py:1328 cps/admin.py:1710 cps/admin.py:1857 +#: cps/admin.py:1955 cps/admin.py:2076 cps/editbooks.py:242 +#: cps/editbooks.py:318 cps/editbooks.py:1225 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:149 cps/web.py:1496 +#: cps/shelf.py:468 cps/tasks/convert.py:150 cps/web.py:1520 #, python-format msgid "Oops! Database Error: %(error)s." msgstr "" -#: cps/admin.py:1323 +#: cps/admin.py:1335 #, python-format msgid "Test e-mail queued for sending to %(email)s, please check Tasks for result" msgstr "" -#: cps/admin.py:1326 +#: cps/admin.py:1338 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "Произошла ошибка при отправке тестового письма на: %(res)s" -#: cps/admin.py:1328 +#: cps/admin.py:1340 msgid "Please configure your e-mail address first..." msgstr "Пожалуйста, сначала настройте свой адрес электронной почты ..." -#: cps/admin.py:1330 +#: cps/admin.py:1342 msgid "Email Server Settings updated" msgstr "Настройки E-mail сервера обновлены" -#: cps/admin.py:1353 cps/templates/admin.html:195 +#: cps/admin.py:1365 cps/templates/admin.html:195 msgid "Edit Scheduled Tasks Settings" msgstr "" -#: cps/admin.py:1365 +#: cps/admin.py:1377 msgid "Invalid start time for task specified" msgstr "" -#: cps/admin.py:1370 +#: cps/admin.py:1382 msgid "Invalid duration for task specified" msgstr "" -#: cps/admin.py:1380 +#: cps/admin.py:1392 msgid "Scheduled tasks settings updated" msgstr "" -#: cps/admin.py:1390 cps/admin.py:1439 cps/admin.py:2057 cps/web.py:1296 +#: cps/admin.py:1402 cps/admin.py:1451 cps/admin.py:2072 cps/web.py:1316 msgid "Oops! An unknown error occurred. Please try again later." msgstr "Неизвестная ошибка. Попробуйте позже." -#: cps/admin.py:1394 +#: cps/admin.py:1406 msgid "Settings DB is not Writeable" msgstr "" -#: cps/admin.py:1424 cps/admin.py:2049 +#: cps/admin.py:1436 cps/admin.py:2064 #, python-format msgid "Edit User %(nick)s" msgstr "Изменить пользователя %(nick)s" -#: cps/admin.py:1436 +#: cps/admin.py:1448 #, fuzzy, python-format msgid "Success! Password for user %(user)s reset" msgstr "Пароль для пользователя %(user)s сброшен" -#: cps/admin.py:1442 +#: cps/admin.py:1454 #, fuzzy msgid "Oops! Please configure the SMTP mail settings." msgstr "Пожалуйста, сперва настройте параметры SMTP....." -#: cps/admin.py:1453 +#: cps/admin.py:1465 msgid "Logfile viewer" msgstr "Просмотр лога" -#: cps/admin.py:1519 +#: cps/admin.py:1531 msgid "Requesting update package" msgstr "Проверка обновлений" -#: cps/admin.py:1520 +#: cps/admin.py:1532 msgid "Downloading update package" msgstr "Загрузка обновлений" -#: cps/admin.py:1521 +#: cps/admin.py:1533 msgid "Unzipping update package" msgstr "Распаковка обновлений" -#: cps/admin.py:1522 +#: cps/admin.py:1534 msgid "Replacing files" msgstr "Замена файлов" -#: cps/admin.py:1523 +#: cps/admin.py:1535 msgid "Database connections are closed" msgstr "Соединения с базой данных закрыты" -#: cps/admin.py:1524 +#: cps/admin.py:1536 msgid "Stopping server" msgstr "Остановка сервера" -#: cps/admin.py:1525 +#: cps/admin.py:1537 msgid "Update finished, please press okay and reload page" msgstr "Обновления установлены, нажмите ок и перезагрузите страницу" -#: cps/admin.py:1526 cps/admin.py:1527 cps/admin.py:1528 cps/admin.py:1529 -#: cps/admin.py:1530 cps/admin.py:1531 +#: cps/admin.py:1538 cps/admin.py:1539 cps/admin.py:1540 cps/admin.py:1541 +#: cps/admin.py:1542 cps/admin.py:1543 msgid "Update failed:" msgstr "Ошибка обновления:" -#: cps/admin.py:1526 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 +#: cps/admin.py:1538 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 msgid "HTTP Error" msgstr "Ошибка HTTP" -#: cps/admin.py:1527 cps/updater.py:391 cps/updater.py:628 +#: cps/admin.py:1539 cps/updater.py:391 cps/updater.py:628 msgid "Connection error" msgstr "Ошибка соединения" -#: cps/admin.py:1528 cps/updater.py:393 cps/updater.py:630 +#: cps/admin.py:1540 cps/updater.py:393 cps/updater.py:630 msgid "Timeout while establishing connection" msgstr "Тайм-аут при установлении соединения" -#: cps/admin.py:1529 cps/updater.py:395 cps/updater.py:632 +#: cps/admin.py:1541 cps/updater.py:395 cps/updater.py:632 msgid "General error" msgstr "Общая ошибка" -#: cps/admin.py:1530 +#: cps/admin.py:1542 #, fuzzy msgid "Update file could not be saved in temp dir" msgstr "Не удалось сохранить файл обновления во временной папке." -#: cps/admin.py:1531 +#: cps/admin.py:1543 msgid "Files could not be replaced during update" msgstr "" -#: cps/admin.py:1555 +#: cps/admin.py:1567 #, fuzzy msgid "Failed to extract at least One LDAP User" msgstr "Не удалось создать хотя бы одного пользователя LDAP" -#: cps/admin.py:1600 +#: cps/admin.py:1612 msgid "Failed to Create at Least One LDAP User" msgstr "Не удалось создать хотя бы одного пользователя LDAP" -#: cps/admin.py:1613 +#: cps/admin.py:1625 #, python-format msgid "Error: %(ldaperror)s" msgstr "Ошибка: %(ldaperror)s" -#: cps/admin.py:1617 +#: cps/admin.py:1629 msgid "Error: No user returned in response of LDAP server" msgstr "Ошибка: ни одного пользователя не найдено в ответ на запрос сервер LDAP" -#: cps/admin.py:1650 +#: cps/admin.py:1662 msgid "At Least One LDAP User Not Found in Database" msgstr "По крайней мере, один пользователь LDAP не найден в базе данных" -#: cps/admin.py:1652 +#: cps/admin.py:1664 msgid "{} User Successfully Imported" msgstr "" -#: cps/admin.py:1710 +#: cps/admin.py:1722 msgid "DB Location is not Valid, Please Enter Correct Path" msgstr "Расположение Базы Данных неверно, пожалуйста, введите правильный путь." -#: cps/admin.py:1730 +#: cps/admin.py:1742 msgid "DB is not Writeable" msgstr "" -#: cps/admin.py:1746 +#: cps/admin.py:1758 msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgstr "Расположение ключевого файла неверно, пожалуйста, введите правильный путь" -#: cps/admin.py:1750 +#: cps/admin.py:1762 msgid "Certfile Location is not Valid, Please Enter Correct Path" msgstr "Расположение Certfile не является действительным, пожалуйста, введите правильный путь" -#: cps/admin.py:1829 +#: cps/admin.py:1842 msgid "Password length has to be between 1 and 40" msgstr "" -#: cps/admin.py:1881 +#: cps/admin.py:1896 #, fuzzy msgid "Database Settings updated" msgstr "Настройки E-mail сервера обновлены" -#: cps/admin.py:1889 +#: cps/admin.py:1904 #, fuzzy msgid "Database Configuration" msgstr "Дополнительный Настройки" -#: cps/admin.py:1904 cps/web.py:1270 +#: cps/admin.py:1919 cps/web.py:1290 msgid "Oops! Please complete all fields." msgstr "Пожалуйста, заполните все поля!" -#: cps/admin.py:1913 +#: cps/admin.py:1928 msgid "E-mail is not from valid domain" msgstr "E-mail не из существующей доменной зоны" -#: cps/admin.py:1919 +#: cps/admin.py:1934 msgid "Add new user" msgstr "Добавить пользователя" -#: cps/admin.py:1930 +#: cps/admin.py:1945 #, python-format msgid "User '%(user)s' created" msgstr "Пользователь '%(user)s' добавлен" -#: cps/admin.py:1936 +#: cps/admin.py:1951 #, fuzzy msgid "Oops! An account already exists for this Email. or name." msgstr "Для этого адреса электронной почты или логина уже есть учётная запись." -#: cps/admin.py:1966 +#: cps/admin.py:1981 #, python-format msgid "User '%(nick)s' deleted" msgstr "Пользователь '%(nick)s' удалён" -#: cps/admin.py:1969 +#: cps/admin.py:1984 msgid "Can't delete Guest User" msgstr "" -#: cps/admin.py:1972 +#: cps/admin.py:1987 msgid "No admin user remaining, can't delete user" msgstr "Это последний администратор, невозможно удалить пользователя" -#: cps/admin.py:2027 cps/web.py:1445 +#: cps/admin.py:2042 cps/web.py:1469 msgid "Email can't be empty and has to be a valid Email" msgstr "" -#: cps/admin.py:2053 +#: cps/admin.py:2068 #, python-format msgid "User '%(nick)s' updated" msgstr "Пользователь '%(nick)s' обновлён" @@ -531,122 +531,123 @@ msgstr "не установлено" msgid "Execution permissions missing" msgstr "" -#: cps/db.py:752 cps/search.py:137 cps/web.py:731 +#: cps/db.py:752 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:993 cps/templates/config_edit.html:208 +#: cps/db.py:992 cps/templates/config_edit.html:208 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 -#: cps/web.py:558 cps/web.py:592 cps/web.py:665 cps/web.py:692 cps/web.py:973 -#: cps/web.py:1003 cps/web.py:1048 cps/web.py:1076 cps/web.py:1115 +#: 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 +#: cps/web.py:1131 msgid "None" msgstr "Нет" -#: cps/editbooks.py:122 cps/editbooks.py:910 cps/web.py:525 cps/web.py:1537 -#: cps/web.py:1581 cps/web.py:1626 +#: cps/editbooks.py:123 cps/editbooks.py:911 cps/web.py:529 cps/web.py:1561 +#: cps/web.py:1605 cps/web.py:1650 msgid "Oops! Selected book is unavailable. File does not exist or is not accessible" msgstr "Невозможно открыть книгу. Файл не существует или недоступен" -#: cps/editbooks.py:166 cps/editbooks.py:1245 +#: cps/editbooks.py:167 cps/editbooks.py:1246 msgid "User has no rights to upload cover" msgstr "" -#: cps/editbooks.py:186 cps/editbooks.py:731 +#: cps/editbooks.py:187 cps/editbooks.py:732 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "" -#: cps/editbooks.py:228 +#: cps/editbooks.py:229 msgid "Metadata successfully updated" msgstr "Метаданные обновлены" -#: cps/editbooks.py:246 +#: cps/editbooks.py:247 msgid "Error editing book: {}" msgstr "" -#: cps/editbooks.py:303 +#: cps/editbooks.py:304 #, python-format msgid "File %(file)s uploaded" msgstr "Файл %(file)s загружен" -#: cps/editbooks.py:331 +#: cps/editbooks.py:332 msgid "Source or destination format for conversion missing" msgstr "Исходный или целевой формат для конвертирования отсутствует" -#: cps/editbooks.py:339 +#: cps/editbooks.py:340 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "Книга успешно поставлена в очередь для конвертирования в %(book_format)s" -#: cps/editbooks.py:343 +#: cps/editbooks.py:344 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "Произошла ошибка при конвертирования этой книги: %(res)s" -#: cps/editbooks.py:650 +#: cps/editbooks.py:651 msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgstr "Загруженная книга, вероятно, существует в библиотеке, перед тем как загрузить новую, рассмотрите возможность изменения: " -#: cps/editbooks.py:705 cps/editbooks.py:1037 +#: cps/editbooks.py:706 cps/editbooks.py:1038 #, fuzzy, python-format msgid "'%(langname)s' is not a valid language" msgstr "%(langname)s не допустимый язык" -#: cps/editbooks.py:743 cps/editbooks.py:1185 +#: cps/editbooks.py:744 cps/editbooks.py:1186 #, python-format msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgstr "Запрещена загрузка файлов с расширением '%(ext)s'" -#: cps/editbooks.py:747 cps/editbooks.py:1189 +#: cps/editbooks.py:748 cps/editbooks.py:1190 msgid "File to be uploaded must have an extension" msgstr "Загружаемый файл должен иметь расширение" -#: cps/editbooks.py:755 +#: cps/editbooks.py:756 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "Файл %(filename)s не удалось сохранить во временную папку" -#: cps/editbooks.py:775 +#: cps/editbooks.py:776 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "" -#: cps/editbooks.py:832 cps/editbooks.py:834 +#: cps/editbooks.py:833 cps/editbooks.py:835 msgid "Book Format Successfully Deleted" msgstr "" -#: cps/editbooks.py:841 cps/editbooks.py:843 +#: cps/editbooks.py:842 cps/editbooks.py:844 msgid "Book Successfully Deleted" msgstr "" -#: cps/editbooks.py:895 +#: cps/editbooks.py:896 msgid "You are missing permissions to delete books" msgstr "" -#: cps/editbooks.py:945 +#: cps/editbooks.py:946 msgid "edit metadata" msgstr "изменить метаданные" -#: cps/editbooks.py:994 +#: cps/editbooks.py:995 #, python-format msgid "%(seriesindex)s is not a valid number, skipping" msgstr "" -#: cps/editbooks.py:1180 +#: cps/editbooks.py:1181 msgid "User has no rights to upload additional file formats" msgstr "" -#: cps/editbooks.py:1201 +#: cps/editbooks.py:1202 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "Ошибка при создании пути %(path)s (Доступ запрещён)." -#: cps/editbooks.py:1206 +#: cps/editbooks.py:1207 #, python-format msgid "Failed to store file %(file)s." msgstr "Не удалось сохранить файл %(file)s." -#: cps/editbooks.py:1230 +#: cps/editbooks.py:1231 #, python-format msgid "File format %(ext)s added to %(book)s" msgstr "Формат файла %(ext)s добавлен в %(book)s" @@ -659,204 +660,204 @@ msgstr "Настройка Google Drive не завершена, попробу msgid "Callback domain is not verified, please follow steps to verify domain in google developer console" msgstr "Не удалось проверить домен обратного вызова, пожалуйста, выполните шаги для проверки домена в консоли разработчика Google." -#: cps/helper.py:84 +#: cps/helper.py:86 #, python-format msgid "%(format)s format not found for book id: %(book)d" msgstr "%(format)s форма не найден для книги с id: %(book)d" -#: cps/helper.py:91 cps/tasks/convert.py:86 +#: cps/helper.py:93 cps/tasks/convert.py:86 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "%(format)s не найден на Google Drive: %(fn)s" -#: cps/helper.py:96 +#: cps/helper.py:98 #, python-format msgid "%(format)s not found: %(fn)s" msgstr "%(format)s не найден: %(fn)s" -#: cps/helper.py:101 cps/helper.py:226 cps/templates/detail.html:58 +#: cps/helper.py:103 cps/helper.py:228 cps/templates/detail.html:58 #, fuzzy msgid "Send to eReader" msgstr "Отправить на Kindle" -#: cps/helper.py:102 cps/helper.py:120 cps/helper.py:228 +#: cps/helper.py:104 cps/helper.py:122 cps/helper.py:230 #, fuzzy msgid "This Email has been sent via Calibre-Web." msgstr "Это электронное письмо было отправлено через Caliber-Web." -#: cps/helper.py:118 +#: cps/helper.py:120 #, fuzzy msgid "Calibre-Web Test Email" msgstr "Тестовый e-mail для Calibre-Web" -#: cps/helper.py:119 +#: cps/helper.py:121 #, fuzzy msgid "Test Email" msgstr "Тестовый e-mail" -#: cps/helper.py:136 +#: cps/helper.py:138 msgid "Get Started with Calibre-Web" msgstr "Начать работу с Calibre-Web" -#: cps/helper.py:141 +#: cps/helper.py:143 #, fuzzy, python-format msgid "Registration Email for user: %(name)s" msgstr "Регистрационный e-mail для пользователя: %(name)s" -#: cps/helper.py:152 cps/helper.py:158 +#: cps/helper.py:154 cps/helper.py:160 #, fuzzy, python-format msgid "Convert %(orig)s to %(format)s and send to eReader" msgstr "Преобразовать %(orig)s в %(format)s и отправить в Kindle" -#: cps/helper.py:177 cps/helper.py:181 cps/helper.py:185 +#: cps/helper.py:179 cps/helper.py:183 cps/helper.py:187 #, fuzzy, python-format msgid "Send %(format)s to eReader" msgstr "Отправить %(format)s в Kindle" -#: cps/helper.py:225 +#: cps/helper.py:227 #, fuzzy, python-format msgid "%(book)s send to eReader" msgstr "Отправить на Kindle" -#: cps/helper.py:230 +#: cps/helper.py:232 msgid "The requested file could not be read. Maybe wrong permissions?" msgstr "Запрашиваемый файл не может быть прочитан. Возможно у вас нет разрешения?" -#: cps/helper.py:345 +#: cps/helper.py:347 msgid "Read status could not set: {}" msgstr "" -#: cps/helper.py:368 +#: cps/helper.py:370 #, python-format msgid "Deleting bookfolder for book %(id)s failed, path has subfolders: %(path)s" msgstr "" -#: cps/helper.py:374 +#: cps/helper.py:376 #, python-format msgid "Deleting book %(id)s failed: %(message)s" msgstr "" -#: cps/helper.py:385 +#: cps/helper.py:387 #, python-format msgid "Deleting book %(id)s from database only, book path in database not valid: %(path)s" msgstr "" -#: cps/helper.py:450 +#: cps/helper.py:452 #, 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:522 cps/helper.py:531 +#: cps/helper.py:524 cps/helper.py:533 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "Файл %(file)s не найден на Google Drive" -#: cps/helper.py:565 +#: cps/helper.py:567 #, 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:585 +#: cps/helper.py:587 msgid "Error in rename file in path: {}" msgstr "" -#: cps/helper.py:603 +#: cps/helper.py:605 #, python-format msgid "Book path %(path)s not found on Google Drive" msgstr "Путь книги %(path)s не найден на Google Drive" -#: cps/helper.py:668 +#: cps/helper.py:670 msgid "Found an existing account for this Email address" msgstr "" -#: cps/helper.py:676 +#: cps/helper.py:678 msgid "This username is already taken" msgstr "Это имя пользователя уже занято" -#: cps/helper.py:688 +#: cps/helper.py:690 msgid "Invalid Email address format" msgstr "" -#: cps/helper.py:706 +#: cps/helper.py:710 msgid "Password doesn't comply with password validation rules" msgstr "" -#: cps/helper.py:855 +#: cps/helper.py:859 msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "" -#: cps/helper.py:865 +#: cps/helper.py:869 msgid "Error Downloading Cover" msgstr "" -#: cps/helper.py:868 +#: cps/helper.py:872 msgid "Cover Format Error" msgstr "" -#: cps/helper.py:871 +#: cps/helper.py:875 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "" -#: cps/helper.py:881 +#: cps/helper.py:885 msgid "Failed to create path for cover" msgstr "Не удалось создать путь для обложки." -#: cps/helper.py:897 +#: cps/helper.py:901 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "" -#: cps/helper.py:908 +#: cps/helper.py:912 msgid "Only jpg/jpeg/png/webp/bmp files are supported as coverfile" msgstr "" -#: cps/helper.py:920 +#: cps/helper.py:924 msgid "Invalid cover file content" msgstr "" -#: cps/helper.py:924 +#: cps/helper.py:928 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "Только файлы в формате jpg / jpeg поддерживаются как файл обложки" -#: cps/helper.py:995 cps/helper.py:1183 +#: cps/helper.py:999 cps/helper.py:1156 #, fuzzy msgid "Cover" msgstr "Обзор" -#: cps/helper.py:1032 +#: cps/helper.py:1016 msgid "Unrar binary file not found" msgstr "" -#: cps/helper.py:1043 +#: cps/helper.py:1027 msgid "Error executing UnRar" msgstr "" -#: cps/helper.py:1051 +#: cps/helper.py:1035 msgid "Could not find the specified directory" msgstr "" -#: cps/helper.py:1054 +#: cps/helper.py:1038 msgid "Please specify a directory, not a file" msgstr "" -#: cps/helper.py:1068 +#: cps/helper.py:1052 msgid "Calibre binaries not viable" msgstr "" -#: cps/helper.py:1077 +#: cps/helper.py:1061 #, python-format msgid "Missing calibre binaries: %(missing)s" msgstr "" -#: cps/helper.py:1079 +#: cps/helper.py:1063 #, python-format msgid "Missing executable permissions: %(missing)s" msgstr "" -#: cps/helper.py:1084 +#: cps/helper.py:1068 msgid "Error excecuting Calibre" msgstr "" -#: cps/helper.py:1185 cps/templates/admin.html:216 +#: cps/helper.py:1158 cps/templates/admin.html:216 msgid "Queue all books for metadata backup" msgstr "" @@ -941,7 +942,7 @@ msgstr "" #: cps/remotelogin.py:62 cps/templates/layout.html:67 #: cps/templates/layout.html:101 cps/templates/login.html:4 -#: cps/templates/login.html:21 cps/web.py:1333 +#: cps/templates/login.html:21 cps/web.py:1353 msgid "Login" msgstr "Логин" @@ -957,7 +958,7 @@ msgstr "Ключ просрочен" msgid "Success! Please return to your device" msgstr "Успешно! Пожалуйста, проверьте свое устройство" -#: cps/render_template.py:42 cps/web.py:414 +#: cps/render_template.py:42 cps/web.py:418 msgid "Books" msgstr "Книги" @@ -982,7 +983,7 @@ msgstr "" msgid "Show Downloaded Books" msgstr "" -#: cps/render_template.py:59 cps/templates/index.xml:33 cps/web.py:429 +#: cps/render_template.py:59 cps/templates/index.xml:33 cps/web.py:433 msgid "Top Rated Books" msgstr "Книги с наилучшим рейтингом" @@ -991,7 +992,7 @@ msgid "Show Top Rated Books" msgstr "Показывать книги с наивысшим рейтингом" #: cps/render_template.py:62 cps/templates/index.xml:55 -#: cps/templates/index.xml:59 cps/web.py:750 +#: cps/templates/index.xml:59 cps/web.py:766 msgid "Read Books" msgstr "Прочитанные Книги" @@ -1001,7 +1002,7 @@ msgid "Show Read and Unread" msgstr "Показывать прочитанные и непрочитанные" #: cps/render_template.py:66 cps/templates/index.xml:62 -#: cps/templates/index.xml:66 cps/web.py:753 +#: cps/templates/index.xml:66 cps/web.py:769 msgid "Unread Books" msgstr "Непрочитанные Книги" @@ -1019,7 +1020,7 @@ msgid "Show Random Books" msgstr "Показывать Случайные Книги" #: cps/render_template.py:72 cps/templates/book_table.html:67 -#: cps/templates/index.xml:84 cps/web.py:1119 +#: cps/templates/index.xml:84 cps/web.py:1135 msgid "Categories" msgstr "Категории" @@ -1030,7 +1031,7 @@ msgstr "Показывать выбор категории" #: cps/render_template.py:75 cps/templates/book_edit.html:91 #: cps/templates/book_table.html:68 cps/templates/index.xml:91 -#: cps/templates/search_form.html:70 cps/web.py:1009 cps/web.py:1021 +#: cps/templates/search_form.html:70 cps/web.py:1025 cps/web.py:1037 msgid "Series" msgstr "Серии" @@ -1050,7 +1051,7 @@ msgid "Show Author Section" msgstr "Показывать выбор автора" #: cps/render_template.py:82 cps/templates/book_table.html:72 -#: cps/templates/index.xml:77 cps/web.py:977 +#: cps/templates/index.xml:77 cps/web.py:993 msgid "Publishers" msgstr "Издатели" @@ -1061,7 +1062,7 @@ msgstr "Показать выбор издателя" #: cps/render_template.py:85 cps/templates/book_table.html:70 #: cps/templates/index.xml:98 cps/templates/search_form.html:108 -#: cps/web.py:1091 +#: cps/web.py:1107 msgid "Languages" msgstr "Языки" @@ -1088,7 +1089,7 @@ msgstr "Форматы файлов" msgid "Show File Formats Section" msgstr "Показать выбор форматов файлов" -#: cps/render_template.py:96 cps/web.py:776 +#: cps/render_template.py:96 cps/web.py:792 msgid "Archived Books" msgstr "" @@ -1097,7 +1098,7 @@ msgstr "" msgid "Show Archived Books" msgstr "Показывать недавние книги" -#: cps/render_template.py:101 cps/web.py:807 +#: cps/render_template.py:101 cps/web.py:823 msgid "Books List" msgstr "" @@ -1321,173 +1322,178 @@ msgstr "Новое обновление доступно. Нажмите на к msgid "No release information available" msgstr "Информация о выпуске недоступна" -#: cps/templates/index.html:6 cps/web.py:441 +#: cps/templates/index.html:6 cps/web.py:445 msgid "Discover (Random Books)" msgstr "Обзор (Случайные Книги)" -#: cps/web.py:477 +#: cps/web.py:481 msgid "Hot Books (Most Downloaded)" msgstr "Популярные книги (часто загружаемые)" -#: cps/web.py:508 +#: cps/web.py:512 #, python-format msgid "Downloaded books by %(user)s" msgstr "" -#: cps/web.py:541 +#: cps/web.py:545 #, python-format msgid "Author: %(name)s" msgstr "Автор: %(name)s" -#: cps/web.py:577 +#: cps/web.py:581 #, python-format msgid "Publisher: %(name)s" msgstr "Издатель: %(name)s" -#: cps/web.py:605 +#: cps/web.py:609 #, python-format msgid "Series: %(serie)s" msgstr "Серии: %(serie)s" -#: cps/web.py:620 +#: cps/web.py:623 msgid "Rating: None" msgstr "" -#: cps/web.py:629 +#: cps/web.py:632 #, python-format msgid "Rating: %(rating)s stars" msgstr "Оценка: %(rating)s звезды(а)" -#: cps/web.py:645 +#: cps/web.py:663 #, python-format msgid "File format: %(format)s" msgstr "Формат файла: %(format)s" -#: cps/web.py:682 +#: cps/web.py:698 #, python-format msgid "Category: %(name)s" msgstr "Категория: %(name)s" -#: cps/web.py:711 +#: cps/web.py:727 #, python-format msgid "Language: %(name)s" msgstr "Язык: %(name)s" -#: cps/templates/admin.html:16 cps/web.py:949 +#: cps/templates/admin.html:16 cps/web.py:965 msgid "Downloads" msgstr "Скачать" -#: cps/web.py:1051 +#: cps/web.py:1067 msgid "Ratings list" msgstr "Список рейтингов" -#: cps/web.py:1078 +#: cps/web.py:1094 msgid "File formats list" msgstr "Список форматов файлов" -#: cps/web.py:1233 +#: cps/web.py:1249 #, fuzzy msgid "Please configure the SMTP mail settings first..." msgstr "Пожалуйста, сперва настройте параметры SMTP....." -#: cps/web.py:1240 +#: cps/web.py:1256 #, python-format msgid "Success! Book queued for sending to %(eReadermail)s" msgstr "Книга успешно поставлена в очередь для отправки на %(eReadermail)s" -#: cps/web.py:1243 +#: cps/web.py:1259 #, python-format msgid "Oops! There was an error sending book: %(res)s" msgstr "При отправке этой книги произошла ошибка: %(res)s" -#: cps/web.py:1245 +#: cps/web.py:1261 #, fuzzy msgid "Oops! Please update your profile with a valid eReader Email." msgstr "Пожалуйста, сначала настройте e-mail на вашем kindle..." -#: cps/web.py:1261 +#: cps/web.py:1277 msgid "Please wait one minute to register next user" msgstr "" #: cps/templates/layout.html:68 cps/templates/layout.html:102 -#: cps/templates/login.html:27 cps/templates/register.html:17 cps/web.py:1262 -#: cps/web.py:1267 cps/web.py:1271 cps/web.py:1277 cps/web.py:1297 -#: cps/web.py:1301 cps/web.py:1314 cps/web.py:1317 +#: cps/templates/login.html:27 cps/templates/register.html:17 cps/web.py:1278 +#: cps/web.py:1282 cps/web.py:1287 cps/web.py:1291 cps/web.py:1297 +#: cps/web.py:1317 cps/web.py:1321 cps/web.py:1334 cps/web.py:1337 msgid "Register" msgstr "Зарегистрироваться" -#: cps/web.py:1266 cps/web.py:1313 +#: cps/web.py:1281 cps/web.py:1385 +#, fuzzy +msgid "Connection error to limiter backend, please contact your administrator" +msgstr "Сервер электронной почты не настроен, обратитесь к администратору !" + +#: cps/web.py:1286 cps/web.py:1333 msgid "Oops! Email server is not configured, please contact your administrator." msgstr "Сервер электронной почты не настроен, обратитесь к администратору !" -#: cps/web.py:1299 +#: cps/web.py:1319 msgid "Oops! Your Email is not allowed." msgstr "Ваш e-mail не подходит для регистрации" -#: cps/web.py:1302 +#: cps/web.py:1322 msgid "Success! Confirmation Email has been sent." msgstr "Письмо с подтверждением отправлено вам на e-mail." -#: cps/web.py:1348 cps/web.py:1367 +#: cps/web.py:1368 cps/web.py:1391 #, fuzzy msgid "Cannot activate LDAP authentication" msgstr "Не удается активировать LDAP аутентификацию" -#: cps/web.py:1361 +#: cps/web.py:1381 msgid "Please wait one minute before next login" msgstr "" -#: cps/web.py:1376 +#: cps/web.py:1400 #, fuzzy, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "вы вошли как пользователь '%(nickname)s'" -#: cps/web.py:1383 +#: cps/web.py:1407 #, fuzzy, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgstr "Резервный вход в систему как: '%(nickname)s', LDAP-сервер недоступен или пользователь не известен" -#: cps/web.py:1388 +#: cps/web.py:1412 #, fuzzy, python-format msgid "Could not login: %(message)s" msgstr "Не удалось войти: %(message)s" -#: cps/web.py:1392 cps/web.py:1417 +#: cps/web.py:1416 cps/web.py:1441 #, fuzzy msgid "Wrong Username or Password" msgstr "Ошибка в имени пользователя или пароле" -#: cps/web.py:1399 +#: cps/web.py:1423 #, fuzzy msgid "New Password was sent to your email address" msgstr "Новый пароль был отправлен на ваш адрес электронной почты" -#: cps/web.py:1403 +#: cps/web.py:1427 #, fuzzy msgid "An unknown error occurred. Please try again later." msgstr "Неизвестная ошибка. Попробуйте позже." -#: cps/web.py:1405 +#: cps/web.py:1429 #, fuzzy msgid "Please enter valid username to reset password" msgstr "Пожалуйста, введите действительное имя пользователя для сброса пароля" -#: cps/web.py:1413 +#: cps/web.py:1437 #, fuzzy, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "вы вошли как пользователь '%(nickname)s'" -#: cps/web.py:1471 cps/web.py:1521 +#: cps/web.py:1495 cps/web.py:1545 #, python-format msgid "%(name)s's Profile" msgstr "Профиль %(name)s's" -#: cps/web.py:1487 +#: cps/web.py:1511 #, fuzzy msgid "Success! Profile Updated" msgstr "Профиль обновлён" -#: cps/web.py:1491 +#: cps/web.py:1515 #, fuzzy msgid "Oops! An account already exists for this Email." msgstr "Этот адрес электронной почты уже зарегистрирован." @@ -1501,41 +1507,41 @@ msgstr "" msgid "%(book)s send to E-Reader" msgstr "Отправить на Kindle" -#: cps/tasks/convert.py:166 +#: cps/tasks/convert.py:167 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "" -#: cps/tasks/convert.py:200 +#: cps/tasks/convert.py:201 #, python-format msgid "%(format)s format not found on disk" msgstr "" -#: cps/tasks/convert.py:204 +#: cps/tasks/convert.py:205 msgid "Ebook converter failed with unknown error" msgstr "" -#: cps/tasks/convert.py:223 +#: cps/tasks/convert.py:224 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "" -#: cps/tasks/convert.py:244 +#: cps/tasks/convert.py:245 #, python-format msgid "Converted file not found or more than one file in folder %(folder)s" msgstr "" -#: cps/tasks/convert.py:279 +#: cps/tasks/convert.py:287 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "Ошибка Ebook-конвертора: %(error)s" -#: cps/tasks/convert.py:302 +#: cps/tasks/convert.py:310 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "" -#: cps/tasks/convert.py:307 +#: cps/tasks/convert.py:315 msgid "Convert" msgstr "" @@ -1543,7 +1549,7 @@ msgstr "" msgid "Reconnecting Calibre database" msgstr "" -#: cps/tasks/mail.py:269 +#: cps/tasks/mail.py:278 msgid "E-mail" msgstr "" @@ -1822,12 +1828,12 @@ 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:414 -#: cps/templates/config_view_edit.html:175 cps/templates/modal_dialogs.html:64 -#: cps/templates/modal_dialogs.html:99 cps/templates/modal_dialogs.html:117 -#: cps/templates/modal_dialogs.html:135 cps/templates/schedule_edit.html:45 -#: cps/templates/shelf_edit.html:27 cps/templates/tasks.html:46 -#: cps/templates/user_edit.html:144 +#: cps/templates/config_db.html:66 cps/templates/config_edit.html:428 +#: 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 +#: cps/templates/schedule_edit.html:45 cps/templates/shelf_edit.html:27 +#: cps/templates/tasks.html:46 cps/templates/user_edit.html:144 msgid "Cancel" msgstr "Отмена" @@ -2008,7 +2014,7 @@ msgid "Fetch Metadata" msgstr "Получить метаданные" #: cps/templates/book_edit.html:213 cps/templates/config_db.html:65 -#: cps/templates/config_edit.html:413 cps/templates/config_view_edit.html:174 +#: cps/templates/config_edit.html:427 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 @@ -2176,7 +2182,7 @@ msgid "Location of Calibre Database" msgstr "Расположение базы данных Calibre" #: cps/templates/config_db.html:21 -msgid "Separate Book files from Library (Highly experimental, might not work at all)" +msgid "Separate Book Files from Library" msgstr "" #: cps/templates/config_db.html:34 @@ -2261,7 +2267,7 @@ msgid "Convert non-English characters in title and author while saving to disk" msgstr "" #: cps/templates/config_edit.html:108 -msgid "Embed Metadata to Ebook File on Download and Conversion (needs Calibre/Kepubify binaries)" +msgid "Embed Metadata to Ebook File on Download/Conversion/e-mail (needs Calibre/Kepubify binaries)" msgstr "" #: cps/templates/config_edit.html:112 @@ -2484,40 +2490,52 @@ msgstr "Настройки OAuth" msgid "Limit failed login attempts" msgstr "" -#: cps/templates/config_edit.html:376 +#: cps/templates/config_edit.html:377 +msgid "Configure Backend for Limiter" +msgstr "" + +#: cps/templates/config_edit.html:381 +msgid "Options for Limiter" +msgstr "" + +#: cps/templates/config_edit.html:386 msgid "Session protection" msgstr "" -#: cps/templates/config_edit.html:378 +#: cps/templates/config_edit.html:388 msgid "Basic" msgstr "" -#: cps/templates/config_edit.html:379 +#: cps/templates/config_edit.html:389 msgid "Strong" msgstr "" -#: cps/templates/config_edit.html:384 +#: cps/templates/config_edit.html:394 #, fuzzy msgid "User Password policy" msgstr "Сбросить пароль пользователя" -#: cps/templates/config_edit.html:388 +#: cps/templates/config_edit.html:398 msgid "Minimum password length" msgstr "" -#: cps/templates/config_edit.html:393 +#: cps/templates/config_edit.html:403 msgid "Enforce number" msgstr "" -#: cps/templates/config_edit.html:397 +#: cps/templates/config_edit.html:407 msgid "Enforce lowercase characters" msgstr "" -#: cps/templates/config_edit.html:401 +#: cps/templates/config_edit.html:411 msgid "Enforce uppercase characters" msgstr "" -#: cps/templates/config_edit.html:405 +#: cps/templates/config_edit.html:415 +msgid "Enforce characters (needed For Chinese/Japanese/Korean Characters)" +msgstr "" + +#: cps/templates/config_edit.html:419 msgid "Enforce special characters" msgstr "" @@ -2641,47 +2659,47 @@ msgstr "" msgid "Published" msgstr "Опубликованный" -#: cps/templates/detail.html:250 cps/templates/listenmp3.html:158 +#: cps/templates/detail.html:251 cps/templates/listenmp3.html:158 msgid "Mark As Unread" msgstr "Отметить как непрочитанное" -#: cps/templates/detail.html:251 cps/templates/listenmp3.html:158 +#: cps/templates/detail.html:252 cps/templates/listenmp3.html:158 msgid "Mark As Read" msgstr "Отметить как прочитанное" -#: cps/templates/detail.html:253 cps/templates/listenmp3.html:159 +#: cps/templates/detail.html:254 cps/templates/listenmp3.html:159 msgid "Read" msgstr "Прочесть" -#: cps/templates/detail.html:263 cps/templates/listenmp3.html:166 +#: cps/templates/detail.html:264 cps/templates/listenmp3.html:166 msgid "Restore from archive" msgstr "" -#: cps/templates/detail.html:264 cps/templates/listenmp3.html:166 +#: cps/templates/detail.html:265 cps/templates/listenmp3.html:166 msgid "Add to archive" msgstr "" -#: cps/templates/detail.html:266 cps/templates/listenmp3.html:167 +#: cps/templates/detail.html:267 cps/templates/listenmp3.html:167 msgid "Archived" msgstr "" -#: cps/templates/detail.html:277 cps/templates/listenmp3.html:177 +#: cps/templates/detail.html:278 cps/templates/listenmp3.html:177 msgid "Description:" msgstr "Описание:" -#: cps/templates/detail.html:292 cps/templates/listenmp3.html:190 +#: cps/templates/detail.html:293 cps/templates/listenmp3.html:190 #: cps/templates/search.html:16 msgid "Add to shelf" msgstr "Добавить на книжную полку" -#: cps/templates/detail.html:304 cps/templates/detail.html:323 +#: cps/templates/detail.html:305 cps/templates/detail.html:324 #: cps/templates/feed.xml:81 cps/templates/layout.html:154 #: cps/templates/listenmp3.html:201 cps/templates/listenmp3.html:218 #: cps/templates/search.html:22 msgid "(Public)" msgstr "(Публичная)" -#: cps/templates/detail.html:339 +#: cps/templates/detail.html:340 msgid "Edit Metadata" msgstr "Редактировать метаданные" diff --git a/cps/translations/sk/LC_MESSAGES/messages.mo b/cps/translations/sk/LC_MESSAGES/messages.mo index 39318898..876fe4b7 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 4ac197b4..759214b3 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-02-10 10:06+0100\n" +"POT-Creation-Date: 2024-04-27 07:20+0200\n" "PO-Revision-Date: 2023-11-01 06:12+0100\n" "Last-Translator: Branislav Hanáček \n" "Language: sk_SK\n" @@ -22,487 +22,487 @@ msgstr "" msgid "Statistics" msgstr "Štatistika" -#: cps/admin.py:149 +#: cps/admin.py:150 msgid "Server restarted, please reload page." msgstr "Server bol reštartovaný, znovu načítajte stránku." -#: cps/admin.py:151 +#: cps/admin.py:152 msgid "Performing Server shutdown, please close window." msgstr "Vypínam server, zavrite prosím okno." -#: cps/admin.py:159 +#: cps/admin.py:160 msgid "Success! Database Reconnected" msgstr "Spojenie s databázovo bolo úspešne znovu naviazané" -#: cps/admin.py:162 +#: cps/admin.py:163 msgid "Unknown command" msgstr "Neznámy príkaz" -#: cps/admin.py:173 +#: cps/admin.py:174 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:206 cps/editbooks.py:589 cps/editbooks.py:591 -#: cps/editbooks.py:629 cps/editbooks.py:646 cps/editbooks.py:1262 +#: cps/admin.py:207 cps/editbooks.py:590 cps/editbooks.py:592 +#: cps/editbooks.py:630 cps/editbooks.py:647 cps/editbooks.py:1263 #: cps/updater.py:613 cps/uploader.py:93 cps/uploader.py:102 msgid "Unknown" msgstr "Neznámy" -#: cps/admin.py:231 +#: cps/admin.py:232 msgid "Admin page" msgstr "Stránka správcu" -#: cps/admin.py:251 +#: cps/admin.py:252 msgid "Basic Configuration" msgstr "Základná konfigurácia" -#: cps/admin.py:289 +#: cps/admin.py:290 msgid "UI Configuration" msgstr "Konfigurácia používateľského rozhrania" -#: cps/admin.py:323 cps/templates/admin.html:51 +#: cps/admin.py:324 cps/templates/admin.html:51 msgid "Edit Users" msgstr "Upraviť používateľov" -#: cps/admin.py:367 cps/opds.py:506 cps/templates/grid.html:14 +#: cps/admin.py:368 cps/opds.py:506 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "Všetko" -#: cps/admin.py:394 cps/admin.py:1405 +#: cps/admin.py:395 cps/admin.py:1417 msgid "User not found" msgstr "Používateľ sa nenašiel" -#: cps/admin.py:408 +#: cps/admin.py:409 msgid "{} users deleted successfully" msgstr "Zmazaných {} používateľov" -#: cps/admin.py:431 cps/templates/config_view_edit.html:133 +#: cps/admin.py:432 cps/templates/config_view_edit.html:133 #: cps/templates/user_edit.html:45 cps/templates/user_table.html:81 msgid "Show All" msgstr "Zobraziť všetko" -#: cps/admin.py:452 cps/admin.py:458 +#: cps/admin.py:453 cps/admin.py:459 msgid "Malformed request" msgstr "Chybne vytvorená žiadosť" -#: cps/admin.py:470 cps/admin.py:2033 +#: cps/admin.py:471 cps/admin.py:2048 msgid "Guest Name can't be changed" msgstr "Meno hosťa nie je možné zmeniť" -#: cps/admin.py:482 +#: cps/admin.py:483 msgid "Guest can't have this role" msgstr "Hosť nemôže mať túto rolu" -#: cps/admin.py:494 cps/admin.py:1987 +#: cps/admin.py:495 cps/admin.py:2002 msgid "No admin user remaining, can't remove admin role" msgstr "Nezostáva žiadny správca, nie je možné odobrať rolu správcu" -#: cps/admin.py:498 cps/admin.py:512 +#: cps/admin.py:499 cps/admin.py:513 msgid "Value has to be true or false" msgstr "Hodnota musí byť pravda alebo nepravda" -#: cps/admin.py:500 +#: cps/admin.py:501 msgid "Invalid role" msgstr "Neplatná rola" -#: cps/admin.py:504 +#: cps/admin.py:505 msgid "Guest can't have this view" msgstr "Hosť nemôže mať toto zobrazenie" -#: cps/admin.py:514 +#: cps/admin.py:515 msgid "Invalid view" msgstr "Neplatné zobrazenie" -#: cps/admin.py:517 +#: cps/admin.py:518 msgid "Guest's Locale is determined automatically and can't be set" msgstr "Nastavenie jazyka pre hosťa sa určí automaticky a nie je možné ho nastaviť" -#: cps/admin.py:521 +#: cps/admin.py:522 msgid "No Valid Locale Given" msgstr "Nebolo poskytnuté platné nastavenie jazyka" -#: cps/admin.py:532 +#: cps/admin.py:533 msgid "No Valid Book Language Given" msgstr "Nebolo poskytnuté platné jazykové nastavenie pre knihu" -#: cps/admin.py:534 cps/editbooks.py:455 +#: cps/admin.py:535 cps/editbooks.py:456 msgid "Parameter not found" msgstr "Parameter sa nenašiel" -#: cps/admin.py:571 +#: cps/admin.py:572 msgid "Invalid Read Column" msgstr "Neplatný stĺpec na čítanie" -#: cps/admin.py:577 +#: cps/admin.py:578 msgid "Invalid Restricted Column" msgstr "Neplatný stĺpec na obmedzenie" -#: cps/admin.py:597 cps/admin.py:1858 +#: cps/admin.py:598 cps/admin.py:1873 msgid "Calibre-Web configuration updated" msgstr "Konfigurácia Calibre-Web bola aktualizovaná" -#: cps/admin.py:609 +#: cps/admin.py:610 msgid "Do you really want to delete the Kobo Token?" msgstr "Naozaj chcete zmazať Kobo-žetón?" -#: cps/admin.py:611 +#: cps/admin.py:612 msgid "Do you really want to delete this domain?" msgstr "Naozaj chcete zmazať túto doménu?" -#: cps/admin.py:613 +#: cps/admin.py:614 msgid "Do you really want to delete this user?" msgstr "Naozaj chcete zmazať tohot používateľa?" -#: cps/admin.py:615 +#: cps/admin.py:616 msgid "Are you sure you want to delete this shelf?" msgstr "Naozaj chcete zmazať túto poličku?" -#: cps/admin.py:617 +#: cps/admin.py:618 msgid "Are you sure you want to change locales of selected user(s)?" msgstr "Naozaj chcete zmeniť nastavenia jazykov pre vybraných používateľov?" -#: cps/admin.py:619 +#: cps/admin.py:620 msgid "Are you sure you want to change visible book languages for selected user(s)?" msgstr "Naozaj chcete zmeniť viditeľné jazkyky pre knihy pre vybraných používateľov?" -#: cps/admin.py:621 +#: cps/admin.py:622 msgid "Are you sure you want to change the selected role for the selected user(s)?" msgstr "Naozaj chcete zmeniť vybrané role pre vybraných používateľov?" -#: cps/admin.py:623 +#: cps/admin.py:624 msgid "Are you sure you want to change the selected restrictions for the selected user(s)?" msgstr "Naozaj chcete zmeniť vybrané obmedzenia pre vybraných používateľov?" -#: cps/admin.py:625 +#: cps/admin.py:626 msgid "Are you sure you want to change the selected visibility restrictions for the selected user(s)?" msgstr "Naozaj chcete zmeniť vybrané obmedzenia viditeľnosti pre vybraných používateľov?" -#: cps/admin.py:628 +#: cps/admin.py:629 msgid "Are you sure you want to change shelf sync behavior for the selected user(s)?" msgstr "Naozaj chcete zmeniť synchronizačné správanie sa police pre vybraných používateľov?" -#: cps/admin.py:630 +#: cps/admin.py:631 msgid "Are you sure you want to change Calibre library location?" msgstr "Naozaj chcete zmenit umiestnenie pre knižnicu Calibre?" -#: cps/admin.py:632 +#: cps/admin.py:633 msgid "Calibre-Web will search for updated Covers and update Cover Thumbnails, this may take a while?" msgstr "Calilbre-Web vyhľadá aktualizované obálky a aktualizuje ich náhľady, môže to chvíľu trvať?" -#: cps/admin.py:635 +#: cps/admin.py:636 msgid "Are you sure you want delete Calibre-Web's sync database to force a full sync with your Kobo Reader?" msgstr "Naozaj chcete zmazať synchronizačnú databázu Calibre-Web aby ste vynútili úplnú synchronizáciu s vašou Kobo čítačkou?" -#: cps/admin.py:878 cps/admin.py:884 cps/admin.py:894 cps/admin.py:904 +#: cps/admin.py:879 cps/admin.py:885 cps/admin.py:895 cps/admin.py:905 #: cps/templates/modal_dialogs.html:29 cps/templates/user_table.html:41 #: cps/templates/user_table.html:58 msgid "Deny" msgstr "Odmietnuť" -#: cps/admin.py:880 cps/admin.py:886 cps/admin.py:896 cps/admin.py:906 +#: cps/admin.py:881 cps/admin.py:887 cps/admin.py:897 cps/admin.py:907 #: cps/templates/modal_dialogs.html:28 cps/templates/user_table.html:44 #: cps/templates/user_table.html:61 msgid "Allow" msgstr "Povoliť" -#: cps/admin.py:921 +#: cps/admin.py:940 msgid "{} sync entries deleted" msgstr "Zmazalo sa {} synchronizačných položiek" -#: cps/admin.py:969 +#: cps/admin.py:981 msgid "Tag not found" msgstr "Štítok sa nenašiel" -#: cps/admin.py:981 +#: cps/admin.py:993 msgid "Invalid Action" msgstr "Neplatná akcia" -#: cps/admin.py:1111 +#: cps/admin.py:1123 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "client_secrets.json nie je nakonfiguraovaný pre webovú aplikáciu" -#: cps/admin.py:1156 +#: cps/admin.py:1168 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:1162 +#: cps/admin.py:1174 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:1196 +#: cps/admin.py:1208 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:1202 +#: cps/admin.py:1214 msgid "Please Enter a LDAP Service Account and Password" msgstr "Zadajte prosím konto a heslo pre LDAP službu" -#: cps/admin.py:1205 +#: cps/admin.py:1217 msgid "Please Enter a LDAP Service Account" msgstr "Zadajte prosím konto pre LDAP službu" -#: cps/admin.py:1210 +#: cps/admin.py:1222 #, 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:1212 +#: cps/admin.py:1224 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "Filter pre LDAP objekt skupiny má nezhodu v zátvorkách" -#: cps/admin.py:1216 +#: cps/admin.py:1228 #, 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:1218 +#: cps/admin.py:1230 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:1225 +#: cps/admin.py:1237 #, 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:1227 +#: cps/admin.py:1239 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:1234 +#: cps/admin.py:1246 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:1265 cps/templates/admin.html:53 +#: cps/admin.py:1277 cps/templates/admin.html:53 msgid "Add New User" msgstr "Pridať nového používateľa" -#: cps/admin.py:1274 cps/templates/admin.html:100 +#: cps/admin.py:1286 cps/templates/admin.html:100 msgid "Edit Email Server Settings" msgstr "Upraviť nastavenie pre poštový server" -#: cps/admin.py:1293 +#: cps/admin.py:1305 msgid "Success! Gmail Account Verified." msgstr "Úspech! Gmail konto bolo verifikované." -#: cps/admin.py:1313 cps/admin.py:1316 cps/admin.py:1698 cps/admin.py:1842 -#: cps/admin.py:1940 cps/admin.py:2061 cps/editbooks.py:241 -#: cps/editbooks.py:317 cps/editbooks.py:1224 cps/shelf.py:90 cps/shelf.py:150 +#: cps/admin.py:1325 cps/admin.py:1328 cps/admin.py:1710 cps/admin.py:1857 +#: cps/admin.py:1955 cps/admin.py:2076 cps/editbooks.py:242 +#: cps/editbooks.py:318 cps/editbooks.py:1225 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:149 cps/web.py:1496 +#: cps/shelf.py:468 cps/tasks/convert.py:150 cps/web.py:1520 #, python-format msgid "Oops! Database Error: %(error)s." msgstr "Chyba databázy: %(error)s." -#: cps/admin.py:1323 +#: cps/admin.py:1335 #, 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:1326 +#: cps/admin.py:1338 #, 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:1328 +#: cps/admin.py:1340 msgid "Please configure your e-mail address first..." msgstr "Prosím, najskôr si nastavte e-mailovú adresu..." -#: cps/admin.py:1330 +#: cps/admin.py:1342 msgid "Email Server Settings updated" msgstr "Nastavenia poštového servera boli aktualizované" -#: cps/admin.py:1353 cps/templates/admin.html:195 +#: cps/admin.py:1365 cps/templates/admin.html:195 msgid "Edit Scheduled Tasks Settings" msgstr "Upraviť nastavenia naplánovaných úloh" -#: cps/admin.py:1365 +#: cps/admin.py:1377 msgid "Invalid start time for task specified" msgstr "Bol uvedený neplatný čas spustenia" -#: cps/admin.py:1370 +#: cps/admin.py:1382 msgid "Invalid duration for task specified" msgstr "Bol uvedený neplatný doba behu" -#: cps/admin.py:1380 +#: cps/admin.py:1392 msgid "Scheduled tasks settings updated" msgstr "Nastavenia naplánovaných úloh boli aktualizované" -#: cps/admin.py:1390 cps/admin.py:1439 cps/admin.py:2057 cps/web.py:1296 +#: cps/admin.py:1402 cps/admin.py:1451 cps/admin.py:2072 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:1394 +#: cps/admin.py:1406 msgid "Settings DB is not Writeable" msgstr "Nie je možné zapisovať do databázy nastavení" -#: cps/admin.py:1424 cps/admin.py:2049 +#: cps/admin.py:1436 cps/admin.py:2064 #, python-format msgid "Edit User %(nick)s" msgstr "Upraviť používateľa %(nick)s" -#: cps/admin.py:1436 +#: cps/admin.py:1448 #, python-format msgid "Success! Password for user %(user)s reset" msgstr "Úspech! Heslo pre používateľa %(user)s bolo resetované" -#: cps/admin.py:1442 +#: cps/admin.py:1454 msgid "Oops! Please configure the SMTP mail settings." msgstr "Nastavte prosím poštový server." -#: cps/admin.py:1453 +#: cps/admin.py:1465 msgid "Logfile viewer" msgstr "Prezerač denníkového súboru" -#: cps/admin.py:1519 +#: cps/admin.py:1531 msgid "Requesting update package" msgstr "Žiadosť o aktualizačný balík" -#: cps/admin.py:1520 +#: cps/admin.py:1532 msgid "Downloading update package" msgstr "Sťahuje sa aktualizačný balík" -#: cps/admin.py:1521 +#: cps/admin.py:1533 msgid "Unzipping update package" msgstr "Rozbaľuje sa aktualizačný balík" -#: cps/admin.py:1522 +#: cps/admin.py:1534 msgid "Replacing files" msgstr "Nahradzujú sa súbory" -#: cps/admin.py:1523 +#: cps/admin.py:1535 msgid "Database connections are closed" msgstr "Spojenia s databázou sú uzavreté" -#: cps/admin.py:1524 +#: cps/admin.py:1536 msgid "Stopping server" msgstr "Zastavuje sa server" -#: cps/admin.py:1525 +#: cps/admin.py:1537 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:1526 cps/admin.py:1527 cps/admin.py:1528 cps/admin.py:1529 -#: cps/admin.py:1530 cps/admin.py:1531 +#: cps/admin.py:1538 cps/admin.py:1539 cps/admin.py:1540 cps/admin.py:1541 +#: cps/admin.py:1542 cps/admin.py:1543 msgid "Update failed:" msgstr "Aktualizácia zlyhala:" -#: cps/admin.py:1526 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 +#: cps/admin.py:1538 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 msgid "HTTP Error" msgstr "HTTP chyba" -#: cps/admin.py:1527 cps/updater.py:391 cps/updater.py:628 +#: cps/admin.py:1539 cps/updater.py:391 cps/updater.py:628 msgid "Connection error" msgstr "Chyba spojenia" -#: cps/admin.py:1528 cps/updater.py:393 cps/updater.py:630 +#: cps/admin.py:1540 cps/updater.py:393 cps/updater.py:630 msgid "Timeout while establishing connection" msgstr "Časový limit pre naviazanie spojenia vypršal" -#: cps/admin.py:1529 cps/updater.py:395 cps/updater.py:632 +#: cps/admin.py:1541 cps/updater.py:395 cps/updater.py:632 msgid "General error" msgstr "Všeobecná chyba" -#: cps/admin.py:1530 +#: cps/admin.py:1542 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:1531 +#: cps/admin.py:1543 msgid "Files could not be replaced during update" msgstr "Nebolo možné nahradiť súbory počas aktualizácie" -#: cps/admin.py:1555 +#: cps/admin.py:1567 msgid "Failed to extract at least One LDAP User" msgstr "Extrakcia minimálne jedného LDAP používateľa zlyhala" -#: cps/admin.py:1600 +#: cps/admin.py:1612 msgid "Failed to Create at Least One LDAP User" msgstr "Vytvorenie minimálne jedného LDAP používateľa zlyhalo" -#: cps/admin.py:1613 +#: cps/admin.py:1625 #, python-format msgid "Error: %(ldaperror)s" msgstr "Chyba: %(ldaperror)s" -#: cps/admin.py:1617 +#: cps/admin.py:1629 msgid "Error: No user returned in response of LDAP server" msgstr "Chyba: Odpoveď LDAP servera neobsahuje žiadneho používateľa" -#: cps/admin.py:1650 +#: 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:1652 +#: cps/admin.py:1664 msgid "{} User Successfully Imported" msgstr "Používateľ bol naimportovaný" -#: cps/admin.py:1710 +#: 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:1730 +#: cps/admin.py:1742 msgid "DB is not Writeable" msgstr "Do databázy nie je možné zapisovať" -#: cps/admin.py:1746 +#: 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:1750 +#: 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:1829 +#: cps/admin.py:1842 msgid "Password length has to be between 1 and 40" msgstr "Heslo musí byť dlhé 1 až 40 znakov" -#: cps/admin.py:1881 +#: cps/admin.py:1896 msgid "Database Settings updated" msgstr "Nastavenia databáze boli aktualizované" -#: cps/admin.py:1889 +#: cps/admin.py:1904 msgid "Database Configuration" msgstr "Konfigurácia databázy" -#: cps/admin.py:1904 cps/web.py:1270 +#: cps/admin.py:1919 cps/web.py:1290 msgid "Oops! Please complete all fields." msgstr "Vyplňte prosím všetky polia." -#: cps/admin.py:1913 +#: cps/admin.py:1928 msgid "E-mail is not from valid domain" msgstr "E-mail nie je z platnej domény" -#: cps/admin.py:1919 +#: cps/admin.py:1934 msgid "Add new user" msgstr "Pridať nového používateľa" -#: cps/admin.py:1930 +#: cps/admin.py:1945 #, python-format msgid "User '%(user)s' created" msgstr "Používateľ '%(user)s' bol vytvorený" -#: cps/admin.py:1936 +#: cps/admin.py:1951 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:1966 +#: cps/admin.py:1981 #, python-format msgid "User '%(nick)s' deleted" msgstr "Používateľ '%(nick)s' bol zmazaný" -#: cps/admin.py:1969 +#: cps/admin.py:1984 msgid "Can't delete Guest User" msgstr "Nie je možné zmazať používateľa Hosť" -#: cps/admin.py:1972 +#: cps/admin.py:1987 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:2027 cps/web.py:1445 +#: cps/admin.py:2042 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:2053 +#: cps/admin.py:2068 #, python-format msgid "User '%(nick)s' updated" msgstr "Používateľ '%(nick)s' bol aktualizovaný" @@ -515,122 +515,123 @@ msgstr "nie je naištalované" msgid "Execution permissions missing" msgstr "Chýba právo na vykonanie" -#: cps/db.py:752 cps/search.py:137 cps/web.py:731 +#: cps/db.py:752 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:993 cps/templates/config_edit.html:208 +#: cps/db.py:992 cps/templates/config_edit.html:208 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 -#: cps/web.py:558 cps/web.py:592 cps/web.py:665 cps/web.py:692 cps/web.py:973 -#: cps/web.py:1003 cps/web.py:1048 cps/web.py:1076 cps/web.py:1115 +#: 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 +#: cps/web.py:1131 msgid "None" msgstr "Žiadne" -#: cps/editbooks.py:122 cps/editbooks.py:910 cps/web.py:525 cps/web.py:1537 -#: cps/web.py:1581 cps/web.py:1626 +#: cps/editbooks.py:123 cps/editbooks.py:911 cps/web.py:529 cps/web.py:1561 +#: cps/web.py:1605 cps/web.py:1650 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:166 cps/editbooks.py:1245 +#: cps/editbooks.py:167 cps/editbooks.py:1246 msgid "User has no rights to upload cover" msgstr "Používateľ nemá práva nahrať obálku knihy" -#: cps/editbooks.py:186 cps/editbooks.py:731 +#: cps/editbooks.py:187 cps/editbooks.py:732 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:228 +#: cps/editbooks.py:229 msgid "Metadata successfully updated" msgstr "Metadáta boli úspešne aktualizované" -#: cps/editbooks.py:246 +#: cps/editbooks.py:247 msgid "Error editing book: {}" msgstr "Chyba pri úprave knihy: {}" -#: cps/editbooks.py:303 +#: cps/editbooks.py:304 #, python-format msgid "File %(file)s uploaded" msgstr "Súbor %(file)s bol nahraný" -#: cps/editbooks.py:331 +#: cps/editbooks.py:332 msgid "Source or destination format for conversion missing" msgstr "Chýba zdrojový alebo cieľový formát pre prevod" -#: cps/editbooks.py:339 +#: cps/editbooks.py:340 #, 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:343 +#: cps/editbooks.py:344 #, 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:650 +#: cps/editbooks.py:651 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:705 cps/editbooks.py:1037 +#: cps/editbooks.py:706 cps/editbooks.py:1038 #, python-format msgid "'%(langname)s' is not a valid language" msgstr "'%(langname)s' nie je platný jazyk" -#: cps/editbooks.py:743 cps/editbooks.py:1185 +#: cps/editbooks.py:744 cps/editbooks.py:1186 #, 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:747 cps/editbooks.py:1189 +#: cps/editbooks.py:748 cps/editbooks.py:1190 msgid "File to be uploaded must have an extension" msgstr "Súbor ktorý sa má nahrať musí mať príponu" -#: cps/editbooks.py:755 +#: cps/editbooks.py:756 #, 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:775 +#: cps/editbooks.py:776 #, 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:832 cps/editbooks.py:834 +#: cps/editbooks.py:833 cps/editbooks.py:835 msgid "Book Format Successfully Deleted" msgstr "Kniha s formátom bola úspešne zmazaná" -#: cps/editbooks.py:841 cps/editbooks.py:843 +#: cps/editbooks.py:842 cps/editbooks.py:844 msgid "Book Successfully Deleted" msgstr "Kniha bola úspešne zmazaná" -#: cps/editbooks.py:895 +#: cps/editbooks.py:896 msgid "You are missing permissions to delete books" msgstr "Nemáte oprávnenia na mazanie kníh" -#: cps/editbooks.py:945 +#: cps/editbooks.py:946 msgid "edit metadata" msgstr "upraviť metadáta" -#: cps/editbooks.py:994 +#: cps/editbooks.py:995 #, python-format msgid "%(seriesindex)s is not a valid number, skipping" msgstr "%(seriesindex)s nie je platné číslo, preskakuje sa" -#: cps/editbooks.py:1180 +#: cps/editbooks.py:1181 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:1201 +#: cps/editbooks.py:1202 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "Nebolo možné vytvoriť cestu %(path)s (Povolenie zamietnuté)." -#: cps/editbooks.py:1206 +#: cps/editbooks.py:1207 #, python-format msgid "Failed to store file %(file)s." msgstr "Zlyhalo uloženie súboru: %(file)s." -#: cps/editbooks.py:1230 +#: cps/editbooks.py:1231 #, python-format msgid "File format %(ext)s added to %(book)s" msgstr "Súborový formát %(ext)s bol pridaný k %(book)s" @@ -643,201 +644,201 @@ msgstr "Nastavenie Google Drive nie je dokončené, skúste deaktivovať a znovu 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" -#: cps/helper.py:84 +#: cps/helper.py:86 #, python-format 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:91 cps/tasks/convert.py:86 +#: cps/helper.py:93 cps/tasks/convert.py:86 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "%(format)s sa nenašiel na Google Drive: %(fn)s" -#: cps/helper.py:96 +#: cps/helper.py:98 #, python-format msgid "%(format)s not found: %(fn)s" msgstr "%(format)s sa nenašiel: %(fn)s" -#: cps/helper.py:101 cps/helper.py:226 cps/templates/detail.html:58 +#: cps/helper.py:103 cps/helper.py:228 cps/templates/detail.html:58 msgid "Send to eReader" msgstr "Poslať do čítačky" -#: cps/helper.py:102 cps/helper.py:120 cps/helper.py:228 +#: cps/helper.py:104 cps/helper.py:122 cps/helper.py:230 msgid "This Email has been sent via Calibre-Web." msgstr "Tento e-mail bol odoslaný skrz Calibre-Web." -#: cps/helper.py:118 +#: cps/helper.py:120 msgid "Calibre-Web Test Email" msgstr "Testovací e-mail Calibre-Web" -#: cps/helper.py:119 +#: cps/helper.py:121 msgid "Test Email" msgstr "Testovací e-mail" -#: cps/helper.py:136 +#: cps/helper.py:138 msgid "Get Started with Calibre-Web" msgstr "Začnite s aplikáciu Calibre-Web" -#: cps/helper.py:141 +#: cps/helper.py:143 #, python-format msgid "Registration Email for user: %(name)s" msgstr "Registračný e-mail pre používateľa: %(name)s" -#: cps/helper.py:152 cps/helper.py:158 +#: cps/helper.py:154 cps/helper.py:160 #, python-format msgid "Convert %(orig)s to %(format)s and send to eReader" msgstr "Previesť %(orig)s na %(format)s a odoslať do čítačky" -#: cps/helper.py:177 cps/helper.py:181 cps/helper.py:185 +#: cps/helper.py:179 cps/helper.py:183 cps/helper.py:187 #, python-format msgid "Send %(format)s to eReader" msgstr "Odoslať %(format)s do čítačky" -#: cps/helper.py:225 +#: cps/helper.py:227 #, python-format msgid "%(book)s send to eReader" msgstr "%(book)s odoslaná do čítačky" -#: cps/helper.py:230 +#: cps/helper.py:232 msgid "The requested file could not be read. Maybe wrong permissions?" msgstr "Požadovaný súbor sa nedá čítať. Možne zlé oprávnenia?" -#: cps/helper.py:345 +#: cps/helper.py:347 msgid "Read status could not set: {}" msgstr "Status čítania nie je možné nastaviť: {}" -#: cps/helper.py:368 +#: cps/helper.py:370 #, python-format msgid "Deleting bookfolder for book %(id)s failed, path has subfolders: %(path)s" msgstr "Mazanie zložky pre knihu %(id)s zlyhalo, cesta má vnorené adresáre: %(path)s" -#: cps/helper.py:374 +#: cps/helper.py:376 #, python-format msgid "Deleting book %(id)s failed: %(message)s" msgstr "Mazanie knihy %(id)s zlyhalo: %(message)s" -#: cps/helper.py:385 +#: cps/helper.py:387 #, python-format 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:450 +#: cps/helper.py:452 #, 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:522 cps/helper.py:531 +#: cps/helper.py:524 cps/helper.py:533 #, 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:565 +#: cps/helper.py:567 #, 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:585 +#: cps/helper.py:587 msgid "Error in rename file in path: {}" msgstr "Chyba pri premenovaní v ceste: {}" -#: cps/helper.py:603 +#: cps/helper.py:605 #, 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:668 +#: cps/helper.py:670 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:676 +#: cps/helper.py:678 msgid "This username is already taken" msgstr "Toto meno používateľa sa už používa" -#: cps/helper.py:688 +#: cps/helper.py:690 msgid "Invalid Email address format" msgstr "Neplatný formát poštovej adresy" -#: cps/helper.py:706 +#: cps/helper.py:710 msgid "Password doesn't comply with password validation rules" msgstr "Heslo nedodržiava pravidlá validácie" -#: cps/helper.py:855 +#: cps/helper.py:859 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:865 +#: cps/helper.py:869 msgid "Error Downloading Cover" msgstr "Chyba pri sťahovaní obálky knihy" -#: cps/helper.py:868 +#: cps/helper.py:872 msgid "Cover Format Error" msgstr "Chyba formátu obálky knihy" -#: cps/helper.py:871 +#: cps/helper.py:875 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:881 +#: cps/helper.py:885 msgid "Failed to create path for cover" msgstr "Vytváranie cesty k obálke knihy zlyhalo" -#: cps/helper.py:897 +#: cps/helper.py:901 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:908 +#: cps/helper.py:912 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:920 +#: cps/helper.py:924 msgid "Invalid cover file content" msgstr "Neplatný obsah súboru obalky knihy" -#: cps/helper.py:924 +#: cps/helper.py:928 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:995 cps/helper.py:1183 +#: cps/helper.py:999 cps/helper.py:1156 msgid "Cover" msgstr "Obálka knihy" -#: cps/helper.py:1032 +#: cps/helper.py:1016 msgid "Unrar binary file not found" msgstr "Binárny súbor pre Unrar sa nenašiel" -#: cps/helper.py:1043 +#: cps/helper.py:1027 msgid "Error executing UnRar" msgstr "Chyba pri spustení Unrar" -#: cps/helper.py:1051 +#: cps/helper.py:1035 msgid "Could not find the specified directory" msgstr "" -#: cps/helper.py:1054 +#: cps/helper.py:1038 msgid "Please specify a directory, not a file" msgstr "" -#: cps/helper.py:1068 +#: cps/helper.py:1052 #, fuzzy msgid "Calibre binaries not viable" msgstr "Do databázy nie je možné zapisovať" -#: cps/helper.py:1077 +#: cps/helper.py:1061 #, python-format msgid "Missing calibre binaries: %(missing)s" msgstr "" -#: cps/helper.py:1079 +#: cps/helper.py:1063 #, fuzzy, python-format msgid "Missing executable permissions: %(missing)s" msgstr "Chýba právo na vykonanie" -#: cps/helper.py:1084 +#: cps/helper.py:1068 #, fuzzy msgid "Error excecuting Calibre" msgstr "Chyba pri spustení Unrar" -#: cps/helper.py:1185 cps/templates/admin.html:216 +#: cps/helper.py:1158 cps/templates/admin.html:216 msgid "Queue all books for metadata backup" msgstr "Zaradiť všetky knihy na zálohovanie metadát" @@ -921,7 +922,7 @@ msgstr "{} Hviezdičiek" #: cps/remotelogin.py:62 cps/templates/layout.html:67 #: cps/templates/layout.html:101 cps/templates/login.html:4 -#: cps/templates/login.html:21 cps/web.py:1333 +#: cps/templates/login.html:21 cps/web.py:1353 msgid "Login" msgstr "Prihlásiť sa" @@ -937,7 +938,7 @@ msgstr "Žetón expiroval" msgid "Success! Please return to your device" msgstr "Úspech! Vráťte sa k vašemu zariadeniu" -#: cps/render_template.py:42 cps/web.py:414 +#: cps/render_template.py:42 cps/web.py:418 msgid "Books" msgstr "Knihy" @@ -962,7 +963,7 @@ msgstr "Stiahnuté knihy" msgid "Show Downloaded Books" msgstr "Zobraziť stiahnuté knihy" -#: cps/render_template.py:59 cps/templates/index.xml:33 cps/web.py:429 +#: cps/render_template.py:59 cps/templates/index.xml:33 cps/web.py:433 msgid "Top Rated Books" msgstr "Najlepšie hodnotené knihy" @@ -971,7 +972,7 @@ msgid "Show Top Rated Books" msgstr "Zobraziť najlepšie hodnotené knihy" #: cps/render_template.py:62 cps/templates/index.xml:55 -#: cps/templates/index.xml:59 cps/web.py:750 +#: cps/templates/index.xml:59 cps/web.py:766 msgid "Read Books" msgstr "Prečítané knihy" @@ -980,7 +981,7 @@ msgid "Show Read and Unread" msgstr "Zobraziť prečítané a neprečítané" #: cps/render_template.py:66 cps/templates/index.xml:62 -#: cps/templates/index.xml:66 cps/web.py:753 +#: cps/templates/index.xml:66 cps/web.py:769 msgid "Unread Books" msgstr "Neprečítané knihy" @@ -998,7 +999,7 @@ msgid "Show Random Books" msgstr "Zobraziť náhodné knihy" #: cps/render_template.py:72 cps/templates/book_table.html:67 -#: cps/templates/index.xml:84 cps/web.py:1119 +#: cps/templates/index.xml:84 cps/web.py:1135 msgid "Categories" msgstr "Kategórie" @@ -1008,7 +1009,7 @@ msgstr "Zobraziť časť Kategórie" #: cps/render_template.py:75 cps/templates/book_edit.html:91 #: cps/templates/book_table.html:68 cps/templates/index.xml:91 -#: cps/templates/search_form.html:70 cps/web.py:1009 cps/web.py:1021 +#: cps/templates/search_form.html:70 cps/web.py:1025 cps/web.py:1037 msgid "Series" msgstr "Série" @@ -1026,7 +1027,7 @@ msgid "Show Author Section" msgstr "Zobraziť časť Autori" #: cps/render_template.py:82 cps/templates/book_table.html:72 -#: cps/templates/index.xml:77 cps/web.py:977 +#: cps/templates/index.xml:77 cps/web.py:993 msgid "Publishers" msgstr "Vydavatelia" @@ -1036,7 +1037,7 @@ msgstr "Zobraziť časť vydavatelia" #: cps/render_template.py:85 cps/templates/book_table.html:70 #: cps/templates/index.xml:98 cps/templates/search_form.html:108 -#: cps/web.py:1091 +#: cps/web.py:1107 msgid "Languages" msgstr "Jazyky" @@ -1060,7 +1061,7 @@ msgstr "Súborové formáty" msgid "Show File Formats Section" msgstr "Zobraziť časť Súborové formáty" -#: cps/render_template.py:96 cps/web.py:776 +#: cps/render_template.py:96 cps/web.py:792 msgid "Archived Books" msgstr "Archivované knihy" @@ -1068,7 +1069,7 @@ msgstr "Archivované knihy" msgid "Show Archived Books" msgstr "Zobraziť archivované knihy" -#: cps/render_template.py:101 cps/web.py:807 +#: cps/render_template.py:101 cps/web.py:823 msgid "Books List" msgstr "Zoznam kníh" @@ -1289,165 +1290,170 @@ msgstr "Je dostupná nová aktualizácia. Kliknite na tlačidlo dolu, ak chcete msgid "No release information available" msgstr "Nie je dostupná informácia o vydaní" -#: cps/templates/index.html:6 cps/web.py:441 +#: cps/templates/index.html:6 cps/web.py:445 msgid "Discover (Random Books)" msgstr "Objaviť (Náhodné knihy)" -#: cps/web.py:477 +#: cps/web.py:481 msgid "Hot Books (Most Downloaded)" msgstr "Horúce knihy (Najviac sťahované)" -#: cps/web.py:508 +#: cps/web.py:512 #, python-format msgid "Downloaded books by %(user)s" msgstr "Knihy stiahnuté: %(user)s" -#: cps/web.py:541 +#: cps/web.py:545 #, python-format msgid "Author: %(name)s" msgstr "Author: %(name)s" -#: cps/web.py:577 +#: cps/web.py:581 #, python-format msgid "Publisher: %(name)s" msgstr "Vydavateľ: %(name)s" -#: cps/web.py:605 +#: cps/web.py:609 #, python-format msgid "Series: %(serie)s" msgstr "Série: %(serie)s" -#: cps/web.py:620 +#: cps/web.py:623 msgid "Rating: None" msgstr "Hodnotenie: Žiadne" -#: cps/web.py:629 +#: cps/web.py:632 #, python-format msgid "Rating: %(rating)s stars" msgstr "Hodnotenie: %(rating)s hviezdičiek" -#: cps/web.py:645 +#: cps/web.py:663 #, python-format msgid "File format: %(format)s" msgstr "Súborový formát: %(format)s" -#: cps/web.py:682 +#: cps/web.py:698 #, python-format msgid "Category: %(name)s" msgstr "Kategória: %(name)s" -#: cps/web.py:711 +#: cps/web.py:727 #, python-format msgid "Language: %(name)s" msgstr "Jazyk: %(name)s" -#: cps/templates/admin.html:16 cps/web.py:949 +#: cps/templates/admin.html:16 cps/web.py:965 msgid "Downloads" msgstr "Stiahnutia" -#: cps/web.py:1051 +#: cps/web.py:1067 msgid "Ratings list" msgstr "Zoznam hodnotení" -#: cps/web.py:1078 +#: cps/web.py:1094 msgid "File formats list" msgstr "Zoznam súborových formátov" -#: cps/web.py:1233 +#: cps/web.py:1249 msgid "Please configure the SMTP mail settings first..." msgstr "Najskôr nastavte poštový server, prosím..." -#: cps/web.py:1240 +#: cps/web.py:1256 #, python-format msgid "Success! Book queued for sending to %(eReadermail)s" msgstr "Úspech! Kniha bola zaradená na odoslanie do %(eReadermail)s" -#: cps/web.py:1243 +#: cps/web.py:1259 #, python-format msgid "Oops! There was an error sending book: %(res)s" msgstr "Vyskytla sa chyba pri posielaní knihy: %(res)s" -#: cps/web.py:1245 +#: cps/web.py:1261 msgid "Oops! Please update your profile with a valid eReader Email." msgstr "Nastavte vo vašom profile platnú e-mailovú adresu pre vašu čítačku." -#: cps/web.py:1261 +#: cps/web.py:1277 msgid "Please wait one minute to register next user" msgstr "Počkajte, prosím minútku pred registráciou ďalšieho používateľa" #: cps/templates/layout.html:68 cps/templates/layout.html:102 -#: cps/templates/login.html:27 cps/templates/register.html:17 cps/web.py:1262 -#: cps/web.py:1267 cps/web.py:1271 cps/web.py:1277 cps/web.py:1297 -#: cps/web.py:1301 cps/web.py:1314 cps/web.py:1317 +#: cps/templates/login.html:27 cps/templates/register.html:17 cps/web.py:1278 +#: cps/web.py:1282 cps/web.py:1287 cps/web.py:1291 cps/web.py:1297 +#: cps/web.py:1317 cps/web.py:1321 cps/web.py:1334 cps/web.py:1337 msgid "Register" msgstr "Registrovať" -#: cps/web.py:1266 cps/web.py:1313 +#: cps/web.py:1281 cps/web.py:1385 +#, fuzzy +msgid "Connection error to limiter backend, please contact your administrator" +msgstr "Poštový server nie je nastavený, kontaktujte prosím správcu." + +#: cps/web.py:1286 cps/web.py:1333 msgid "Oops! Email server is not configured, please contact your administrator." msgstr "Poštový server nie je nastavený, kontaktujte prosím správcu." -#: cps/web.py:1299 +#: cps/web.py:1319 msgid "Oops! Your Email is not allowed." msgstr "Vaša e-mailová adresa nie je povolená." -#: cps/web.py:1302 +#: cps/web.py:1322 msgid "Success! Confirmation Email has been sent." msgstr "Úspech! Potvrdzujúci e-mail bol odoslaný." -#: cps/web.py:1348 cps/web.py:1367 +#: cps/web.py:1368 cps/web.py:1391 msgid "Cannot activate LDAP authentication" msgstr "Nie je možné aktivovať LDAP autentifikáciu" -#: cps/web.py:1361 +#: cps/web.py:1381 msgid "Please wait one minute before next login" msgstr "Počkajte, prosím minútku pred opätovným prihlásením" -#: cps/web.py:1376 +#: cps/web.py:1400 #, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "ste prihlásený ako: '%(nickname)s'" -#: cps/web.py:1383 +#: cps/web.py:1407 #, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgstr "Záložné prihlásenie ako: '%(nickname)s', LDAP server je nedostupný alebo používateľ je neznámy" -#: cps/web.py:1388 +#: cps/web.py:1412 #, python-format msgid "Could not login: %(message)s" msgstr "Nemôžem prihlásiť: %(message)s" -#: cps/web.py:1392 cps/web.py:1417 +#: cps/web.py:1416 cps/web.py:1441 msgid "Wrong Username or Password" msgstr "Nesprávne používateľské meno alebo heslo" -#: cps/web.py:1399 +#: cps/web.py:1423 msgid "New Password was sent to your email address" msgstr "Na vašu e-mailovú adresu bolo odoslané nové heslo" -#: cps/web.py:1403 +#: cps/web.py:1427 msgid "An unknown error occurred. Please try again later." msgstr "Vyskytla sa neočakávaná chyba. Prosím, skúste to opäť neskôr." -#: cps/web.py:1405 +#: cps/web.py:1429 msgid "Please enter valid username to reset password" msgstr "Na resetovanie hesla zadajte platné používateľské meno" -#: cps/web.py:1413 +#: cps/web.py:1437 #, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "Teraz ste prihlásený ako: '%(nickname)s'" -#: cps/web.py:1471 cps/web.py:1521 +#: cps/web.py:1495 cps/web.py:1545 #, python-format msgid "%(name)s's Profile" msgstr "Profil pre %(name)s" -#: cps/web.py:1487 +#: cps/web.py:1511 msgid "Success! Profile Updated" msgstr "Úspech! Profil bol aktualizovaný" -#: cps/web.py:1491 +#: cps/web.py:1515 msgid "Oops! An account already exists for this Email." msgstr "Účet s touto e-mailovou adresou už existuje." @@ -1460,41 +1466,41 @@ msgstr "Nenašiel sa súbor gmail.json s OAuth informáciou" msgid "%(book)s send to E-Reader" msgstr "%(book)s bol odoslaný do čítačky" -#: cps/tasks/convert.py:166 +#: cps/tasks/convert.py:167 #, 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:200 +#: cps/tasks/convert.py:201 #, python-format msgid "%(format)s format not found on disk" msgstr "Formát %(format)s sa nenachádza na disku" -#: cps/tasks/convert.py:204 +#: cps/tasks/convert.py:205 msgid "Ebook converter failed with unknown error" msgstr "Prevádzač e-kníh zlyhal s neznámou chybou" -#: cps/tasks/convert.py:223 +#: cps/tasks/convert.py:224 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "Prevádzač Kepubify zlyhal: %(error)s" -#: cps/tasks/convert.py:244 +#: cps/tasks/convert.py:245 #, 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:279 +#: cps/tasks/convert.py:287 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "Prevádzač e-kníh zlyhal: %(error)s" -#: cps/tasks/convert.py:302 +#: cps/tasks/convert.py:310 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "Calibre zlyhal s chybou: %(error)s" -#: cps/tasks/convert.py:307 +#: cps/tasks/convert.py:315 msgid "Convert" msgstr "Previesť" @@ -1502,7 +1508,7 @@ msgstr "Previesť" msgid "Reconnecting Calibre database" msgstr "Spojenie s databázou sa znovu naväzuje" -#: cps/tasks/mail.py:269 +#: cps/tasks/mail.py:278 msgid "E-mail" msgstr "E-mail" @@ -1778,12 +1784,12 @@ 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:414 -#: cps/templates/config_view_edit.html:175 cps/templates/modal_dialogs.html:64 -#: cps/templates/modal_dialogs.html:99 cps/templates/modal_dialogs.html:117 -#: cps/templates/modal_dialogs.html:135 cps/templates/schedule_edit.html:45 -#: cps/templates/shelf_edit.html:27 cps/templates/tasks.html:46 -#: cps/templates/user_edit.html:144 +#: cps/templates/config_db.html:66 cps/templates/config_edit.html:428 +#: 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 +#: cps/templates/schedule_edit.html:45 cps/templates/shelf_edit.html:27 +#: cps/templates/tasks.html:46 cps/templates/user_edit.html:144 msgid "Cancel" msgstr "Zrušiť" @@ -1964,7 +1970,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:413 cps/templates/config_view_edit.html:174 +#: cps/templates/config_edit.html:427 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 @@ -2129,7 +2135,7 @@ msgid "Location of Calibre Database" msgstr "Umiestnenie databázy Calibre" #: cps/templates/config_db.html:21 -msgid "Separate Book files from Library (Highly experimental, might not work at all)" +msgid "Separate Book Files from Library" msgstr "" #: cps/templates/config_db.html:34 @@ -2213,7 +2219,7 @@ msgid "Convert non-English characters in title and author while saving to disk" msgstr "Previesť neanglické znaky v názve a mene autora počas ukladania na disk" #: cps/templates/config_edit.html:108 -msgid "Embed Metadata to Ebook File on Download and Conversion (needs Calibre/Kepubify binaries)" +msgid "Embed Metadata to Ebook File on Download/Conversion/e-mail (needs Calibre/Kepubify binaries)" msgstr "" #: cps/templates/config_edit.html:112 @@ -2436,39 +2442,51 @@ msgstr "Bezpečnostné nastavenia" msgid "Limit failed login attempts" msgstr "Obmedziť neúspešné pokusy o prihlásenie" -#: cps/templates/config_edit.html:376 +#: cps/templates/config_edit.html:377 +msgid "Configure Backend for Limiter" +msgstr "" + +#: cps/templates/config_edit.html:381 +msgid "Options for Limiter" +msgstr "" + +#: cps/templates/config_edit.html:386 msgid "Session protection" msgstr "Ochrana sedenia" -#: cps/templates/config_edit.html:378 +#: cps/templates/config_edit.html:388 msgid "Basic" msgstr "Základná" -#: cps/templates/config_edit.html:379 +#: cps/templates/config_edit.html:389 msgid "Strong" msgstr "Silná" -#: cps/templates/config_edit.html:384 +#: cps/templates/config_edit.html:394 msgid "User Password policy" msgstr "Zásady pre používateľské heslá" -#: cps/templates/config_edit.html:388 +#: cps/templates/config_edit.html:398 msgid "Minimum password length" msgstr "Minimálna dĺžka hesla" -#: cps/templates/config_edit.html:393 +#: cps/templates/config_edit.html:403 msgid "Enforce number" msgstr "Vyžadovať číslo" -#: cps/templates/config_edit.html:397 +#: cps/templates/config_edit.html:407 msgid "Enforce lowercase characters" msgstr "Vyžadovať malé písmená" -#: cps/templates/config_edit.html:401 +#: cps/templates/config_edit.html:411 msgid "Enforce uppercase characters" msgstr "Vyžadovať veľké písmená" -#: cps/templates/config_edit.html:405 +#: cps/templates/config_edit.html:415 +msgid "Enforce characters (needed For Chinese/Japanese/Korean Characters)" +msgstr "" + +#: cps/templates/config_edit.html:419 msgid "Enforce special characters" msgstr "Vyžadovať špeciálne znaky" @@ -2590,47 +2608,47 @@ msgstr "Kniha %(index)s z %(range)s" msgid "Published" msgstr "Vydané" -#: cps/templates/detail.html:250 cps/templates/listenmp3.html:158 +#: cps/templates/detail.html:251 cps/templates/listenmp3.html:158 msgid "Mark As Unread" msgstr "Označiť ako neprečítané" -#: cps/templates/detail.html:251 cps/templates/listenmp3.html:158 +#: cps/templates/detail.html:252 cps/templates/listenmp3.html:158 msgid "Mark As Read" msgstr "Označiť ako prečítané" -#: cps/templates/detail.html:253 cps/templates/listenmp3.html:159 +#: cps/templates/detail.html:254 cps/templates/listenmp3.html:159 msgid "Read" msgstr "Čítať" -#: cps/templates/detail.html:263 cps/templates/listenmp3.html:166 +#: cps/templates/detail.html:264 cps/templates/listenmp3.html:166 msgid "Restore from archive" msgstr "Obnoviť z archívu" -#: cps/templates/detail.html:264 cps/templates/listenmp3.html:166 +#: cps/templates/detail.html:265 cps/templates/listenmp3.html:166 msgid "Add to archive" msgstr "Pridať do archívu" -#: cps/templates/detail.html:266 cps/templates/listenmp3.html:167 +#: cps/templates/detail.html:267 cps/templates/listenmp3.html:167 msgid "Archived" msgstr "Archivovaný" -#: cps/templates/detail.html:277 cps/templates/listenmp3.html:177 +#: cps/templates/detail.html:278 cps/templates/listenmp3.html:177 msgid "Description:" msgstr "Popis:" -#: cps/templates/detail.html:292 cps/templates/listenmp3.html:190 +#: cps/templates/detail.html:293 cps/templates/listenmp3.html:190 #: cps/templates/search.html:16 msgid "Add to shelf" msgstr "Pridať do police" -#: cps/templates/detail.html:304 cps/templates/detail.html:323 +#: cps/templates/detail.html:305 cps/templates/detail.html:324 #: cps/templates/feed.xml:81 cps/templates/layout.html:154 #: cps/templates/listenmp3.html:201 cps/templates/listenmp3.html:218 #: cps/templates/search.html:22 msgid "(Public)" msgstr "(Verejné)" -#: cps/templates/detail.html:339 +#: cps/templates/detail.html:340 msgid "Edit Metadata" msgstr "Upraviť metadáta" diff --git a/cps/translations/sv/LC_MESSAGES/messages.mo b/cps/translations/sv/LC_MESSAGES/messages.mo index a22b2d70..6dc91f87 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 90b979d9..d006cd1e 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-02-10 10:06+0100\n" +"POT-Creation-Date: 2024-04-27 07:20+0200\n" "PO-Revision-Date: 2021-05-13 11:00+0000\n" "Last-Translator: Jonatan Nyberg \n" "Language: sv\n" @@ -22,499 +22,499 @@ msgstr "" msgid "Statistics" msgstr "Statistik" -#: cps/admin.py:149 +#: cps/admin.py:150 #, fuzzy msgid "Server restarted, please reload page." msgstr "Server startas om, vänligen uppdatera sidan" -#: cps/admin.py:151 +#: cps/admin.py:152 #, fuzzy msgid "Performing Server shutdown, please close window." msgstr "Stänger servern, vänligen stäng fönstret" -#: cps/admin.py:159 +#: cps/admin.py:160 msgid "Success! Database Reconnected" msgstr "" -#: cps/admin.py:162 +#: cps/admin.py:163 msgid "Unknown command" msgstr "Okänt kommando" -#: cps/admin.py:173 +#: cps/admin.py:174 #, fuzzy 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:206 cps/editbooks.py:589 cps/editbooks.py:591 -#: cps/editbooks.py:629 cps/editbooks.py:646 cps/editbooks.py:1262 +#: cps/admin.py:207 cps/editbooks.py:590 cps/editbooks.py:592 +#: cps/editbooks.py:630 cps/editbooks.py:647 cps/editbooks.py:1263 #: cps/updater.py:613 cps/uploader.py:93 cps/uploader.py:102 msgid "Unknown" msgstr "Okänd" -#: cps/admin.py:231 +#: cps/admin.py:232 msgid "Admin page" msgstr "Administrationssida" -#: cps/admin.py:251 +#: cps/admin.py:252 msgid "Basic Configuration" msgstr "Grundläggande konfiguration" -#: cps/admin.py:289 +#: cps/admin.py:290 msgid "UI Configuration" msgstr "Användargränssnitt konfiguration" -#: cps/admin.py:323 cps/templates/admin.html:51 +#: cps/admin.py:324 cps/templates/admin.html:51 msgid "Edit Users" msgstr "Redigera användare" -#: cps/admin.py:367 cps/opds.py:506 cps/templates/grid.html:14 +#: cps/admin.py:368 cps/opds.py:506 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "Alla" -#: cps/admin.py:394 cps/admin.py:1405 +#: cps/admin.py:395 cps/admin.py:1417 msgid "User not found" msgstr "Användaren hittades inte" -#: cps/admin.py:408 +#: cps/admin.py:409 msgid "{} users deleted successfully" msgstr "{} användare har tagits bort" -#: cps/admin.py:431 cps/templates/config_view_edit.html:133 +#: cps/admin.py:432 cps/templates/config_view_edit.html:133 #: cps/templates/user_edit.html:45 cps/templates/user_table.html:81 msgid "Show All" msgstr "Visa alla" -#: cps/admin.py:452 cps/admin.py:458 +#: cps/admin.py:453 cps/admin.py:459 msgid "Malformed request" msgstr "Felaktig begäran" -#: cps/admin.py:470 cps/admin.py:2033 +#: cps/admin.py:471 cps/admin.py:2048 msgid "Guest Name can't be changed" msgstr "Gästnamn kan inte ändras" -#: cps/admin.py:482 +#: cps/admin.py:483 msgid "Guest can't have this role" msgstr "Gäst kan inte ha den här rollen" -#: cps/admin.py:494 cps/admin.py:1987 +#: cps/admin.py:495 cps/admin.py:2002 msgid "No admin user remaining, can't remove admin role" msgstr "Ingen administratörsanvändare kvar, kan inte ta bort administratörsrollen" -#: cps/admin.py:498 cps/admin.py:512 +#: cps/admin.py:499 cps/admin.py:513 msgid "Value has to be true or false" msgstr "Värdet måste vara sant eller falskt" -#: cps/admin.py:500 +#: cps/admin.py:501 msgid "Invalid role" msgstr "Ogiltig roll" -#: cps/admin.py:504 +#: cps/admin.py:505 msgid "Guest can't have this view" msgstr "Gästen kan inte ha den här vyn" -#: cps/admin.py:514 +#: cps/admin.py:515 msgid "Invalid view" msgstr "Ogiltig vy" -#: cps/admin.py:517 +#: cps/admin.py:518 msgid "Guest's Locale is determined automatically and can't be set" msgstr "Gästens språk bestäms automatiskt och kan inte ställas in" -#: cps/admin.py:521 +#: cps/admin.py:522 msgid "No Valid Locale Given" msgstr "Inget giltigt språk anges" -#: cps/admin.py:532 +#: cps/admin.py:533 msgid "No Valid Book Language Given" msgstr "Inget giltigt bokspråk anges" -#: cps/admin.py:534 cps/editbooks.py:455 +#: cps/admin.py:535 cps/editbooks.py:456 msgid "Parameter not found" msgstr "Parameter hittades inte" -#: cps/admin.py:571 +#: cps/admin.py:572 #, fuzzy msgid "Invalid Read Column" msgstr "Ogiltig roll" -#: cps/admin.py:577 +#: cps/admin.py:578 msgid "Invalid Restricted Column" msgstr "" -#: cps/admin.py:597 cps/admin.py:1858 +#: cps/admin.py:598 cps/admin.py:1873 msgid "Calibre-Web configuration updated" msgstr "Calibre-Web konfiguration uppdaterad" -#: cps/admin.py:609 +#: cps/admin.py:610 msgid "Do you really want to delete the Kobo Token?" msgstr "Vill du verkligen ta bort Kobo-token?" -#: cps/admin.py:611 +#: cps/admin.py:612 msgid "Do you really want to delete this domain?" msgstr "Vill du verkligen ta bort den här domänen?" -#: cps/admin.py:613 +#: cps/admin.py:614 msgid "Do you really want to delete this user?" msgstr "Vill du verkligen ta bort den här användaren?" -#: cps/admin.py:615 +#: cps/admin.py:616 msgid "Are you sure you want to delete this shelf?" msgstr "Är du säker på att du vill ta bort hyllan?" -#: cps/admin.py:617 +#: cps/admin.py:618 msgid "Are you sure you want to change locales of selected user(s)?" msgstr "Är du säker på att du vill ändra språk för valda användare?" -#: cps/admin.py:619 +#: cps/admin.py:620 msgid "Are you sure you want to change visible book languages for selected user(s)?" msgstr "Är du säker på att du vill ändra synliga bokspråk för valda användare?" -#: cps/admin.py:621 +#: cps/admin.py:622 msgid "Are you sure you want to change the selected role for the selected user(s)?" msgstr "Är du säker på att du vill ändra den valda rollen för de valda användarna?" -#: cps/admin.py:623 +#: cps/admin.py:624 msgid "Are you sure you want to change the selected restrictions for the selected user(s)?" msgstr "Är du säker på att du vill ändra de valda begränsningarna för de valda användarna?" -#: cps/admin.py:625 +#: cps/admin.py:626 msgid "Are you sure you want to change the selected visibility restrictions for the selected user(s)?" msgstr "Är du säker på att du vill ändra de valda synlighetsbegränsningarna för de valda användarna?" -#: cps/admin.py:628 +#: cps/admin.py:629 #, fuzzy msgid "Are you sure you want to change shelf sync behavior for the selected user(s)?" msgstr "Är du säker på att du vill ändra den valda rollen för de valda användarna?" -#: cps/admin.py:630 +#: cps/admin.py:631 #, fuzzy msgid "Are you sure you want to change Calibre library location?" msgstr "Är du säker på att du vill stoppa Calibre-Web?" -#: cps/admin.py:632 +#: cps/admin.py:633 msgid "Calibre-Web will search for updated Covers and update Cover Thumbnails, this may take a while?" msgstr "" -#: cps/admin.py:635 +#: cps/admin.py:636 msgid "Are you sure you want delete Calibre-Web's sync database to force a full sync with your Kobo Reader?" msgstr "" -#: cps/admin.py:878 cps/admin.py:884 cps/admin.py:894 cps/admin.py:904 +#: cps/admin.py:879 cps/admin.py:885 cps/admin.py:895 cps/admin.py:905 #: cps/templates/modal_dialogs.html:29 cps/templates/user_table.html:41 #: cps/templates/user_table.html:58 msgid "Deny" msgstr "Förneka" -#: cps/admin.py:880 cps/admin.py:886 cps/admin.py:896 cps/admin.py:906 +#: cps/admin.py:881 cps/admin.py:887 cps/admin.py:897 cps/admin.py:907 #: cps/templates/modal_dialogs.html:28 cps/templates/user_table.html:44 #: cps/templates/user_table.html:61 msgid "Allow" msgstr "Tillåt" -#: cps/admin.py:921 +#: cps/admin.py:940 msgid "{} sync entries deleted" msgstr "" -#: cps/admin.py:969 +#: cps/admin.py:981 msgid "Tag not found" msgstr "Taggen hittades inte" -#: cps/admin.py:981 +#: cps/admin.py:993 msgid "Invalid Action" msgstr "Ogiltig åtgärd" -#: cps/admin.py:1111 +#: cps/admin.py:1123 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "client_secrets.json är inte konfigurerad för webbapplikation" -#: cps/admin.py:1156 +#: cps/admin.py:1168 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:1162 +#: cps/admin.py:1174 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:1196 +#: cps/admin.py:1208 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:1202 +#: cps/admin.py:1214 #, 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:1205 +#: cps/admin.py:1217 msgid "Please Enter a LDAP Service Account" msgstr "" -#: cps/admin.py:1210 +#: cps/admin.py:1222 #, 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:1212 +#: cps/admin.py:1224 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "LDAP-gruppobjektfilter har omatchande parentes" -#: cps/admin.py:1216 +#: cps/admin.py:1228 #, 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:1218 +#: cps/admin.py:1230 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "LDAP-användarobjektfilter har omatchad parentes" -#: cps/admin.py:1225 +#: cps/admin.py:1237 #, 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:1227 +#: cps/admin.py:1239 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "Användarfilter för LDAP-medlemmar har omatchad parentes" -#: cps/admin.py:1234 +#: cps/admin.py:1246 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:1265 cps/templates/admin.html:53 +#: cps/admin.py:1277 cps/templates/admin.html:53 msgid "Add New User" msgstr "Lägg till ny användare" -#: cps/admin.py:1274 cps/templates/admin.html:100 +#: cps/admin.py:1286 cps/templates/admin.html:100 msgid "Edit Email Server Settings" msgstr "Ändra SMTP-inställningar" -#: cps/admin.py:1293 +#: cps/admin.py:1305 msgid "Success! Gmail Account Verified." msgstr "" -#: cps/admin.py:1313 cps/admin.py:1316 cps/admin.py:1698 cps/admin.py:1842 -#: cps/admin.py:1940 cps/admin.py:2061 cps/editbooks.py:241 -#: cps/editbooks.py:317 cps/editbooks.py:1224 cps/shelf.py:90 cps/shelf.py:150 +#: cps/admin.py:1325 cps/admin.py:1328 cps/admin.py:1710 cps/admin.py:1857 +#: cps/admin.py:1955 cps/admin.py:2076 cps/editbooks.py:242 +#: cps/editbooks.py:318 cps/editbooks.py:1225 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:149 cps/web.py:1496 +#: cps/shelf.py:468 cps/tasks/convert.py:150 cps/web.py:1520 #, python-format msgid "Oops! Database Error: %(error)s." msgstr "Databasfel: %(error)s." -#: cps/admin.py:1323 +#: cps/admin.py:1335 #, 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:1326 +#: cps/admin.py:1338 #, 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:1328 +#: cps/admin.py:1340 msgid "Please configure your e-mail address first..." msgstr "Vänligen konfigurera din e-postadress först..." -#: cps/admin.py:1330 +#: cps/admin.py:1342 msgid "Email Server Settings updated" msgstr "E-postserverinställningar uppdaterade" -#: cps/admin.py:1353 cps/templates/admin.html:195 +#: cps/admin.py:1365 cps/templates/admin.html:195 msgid "Edit Scheduled Tasks Settings" msgstr "" -#: cps/admin.py:1365 +#: cps/admin.py:1377 msgid "Invalid start time for task specified" msgstr "" -#: cps/admin.py:1370 +#: cps/admin.py:1382 msgid "Invalid duration for task specified" msgstr "" -#: cps/admin.py:1380 +#: cps/admin.py:1392 msgid "Scheduled tasks settings updated" msgstr "" -#: cps/admin.py:1390 cps/admin.py:1439 cps/admin.py:2057 cps/web.py:1296 +#: cps/admin.py:1402 cps/admin.py:1451 cps/admin.py:2072 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:1394 +#: cps/admin.py:1406 msgid "Settings DB is not Writeable" msgstr "" -#: cps/admin.py:1424 cps/admin.py:2049 +#: cps/admin.py:1436 cps/admin.py:2064 #, python-format msgid "Edit User %(nick)s" msgstr "Redigera användaren %(nick)s" -#: cps/admin.py:1436 +#: cps/admin.py:1448 #, 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:1442 +#: cps/admin.py:1454 #, fuzzy msgid "Oops! Please configure the SMTP mail settings." msgstr "Konfigurera SMTP-postinställningarna först..." -#: cps/admin.py:1453 +#: cps/admin.py:1465 msgid "Logfile viewer" msgstr "Visaren för loggfil" -#: cps/admin.py:1519 +#: cps/admin.py:1531 msgid "Requesting update package" msgstr "Begär uppdateringspaketet" -#: cps/admin.py:1520 +#: cps/admin.py:1532 msgid "Downloading update package" msgstr "Hämtar uppdateringspaketet" -#: cps/admin.py:1521 +#: cps/admin.py:1533 msgid "Unzipping update package" msgstr "Packar upp uppdateringspaketet" -#: cps/admin.py:1522 +#: cps/admin.py:1534 msgid "Replacing files" msgstr "Ersätta filer" -#: cps/admin.py:1523 +#: cps/admin.py:1535 msgid "Database connections are closed" msgstr "Databasanslutningarna är stängda" -#: cps/admin.py:1524 +#: cps/admin.py:1536 msgid "Stopping server" msgstr "Stoppar server" -#: cps/admin.py:1525 +#: cps/admin.py:1537 msgid "Update finished, please press okay and reload page" msgstr "Uppdatering klar, tryck på okej och uppdatera sidan" -#: cps/admin.py:1526 cps/admin.py:1527 cps/admin.py:1528 cps/admin.py:1529 -#: cps/admin.py:1530 cps/admin.py:1531 +#: cps/admin.py:1538 cps/admin.py:1539 cps/admin.py:1540 cps/admin.py:1541 +#: cps/admin.py:1542 cps/admin.py:1543 msgid "Update failed:" msgstr "Uppdateringen misslyckades:" -#: cps/admin.py:1526 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 +#: cps/admin.py:1538 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 msgid "HTTP Error" msgstr "HTTP-fel" -#: cps/admin.py:1527 cps/updater.py:391 cps/updater.py:628 +#: cps/admin.py:1539 cps/updater.py:391 cps/updater.py:628 msgid "Connection error" msgstr "Anslutningsfel" -#: cps/admin.py:1528 cps/updater.py:393 cps/updater.py:630 +#: cps/admin.py:1540 cps/updater.py:393 cps/updater.py:630 msgid "Timeout while establishing connection" msgstr "Tiden ute när du etablerade anslutning" -#: cps/admin.py:1529 cps/updater.py:395 cps/updater.py:632 +#: cps/admin.py:1541 cps/updater.py:395 cps/updater.py:632 msgid "General error" msgstr "Allmänt fel" -#: cps/admin.py:1530 +#: cps/admin.py:1542 #, fuzzy msgid "Update file could not be saved in temp dir" msgstr "Uppdateringsfilen kunde inte sparas i Temp Dir" -#: cps/admin.py:1531 +#: cps/admin.py:1543 msgid "Files could not be replaced during update" msgstr "" -#: cps/admin.py:1555 +#: cps/admin.py:1567 #, fuzzy msgid "Failed to extract at least One LDAP User" msgstr "Det gick inte att skapa minst en LDAP-användare" -#: cps/admin.py:1600 +#: cps/admin.py:1612 msgid "Failed to Create at Least One LDAP User" msgstr "Det gick inte att skapa minst en LDAP-användare" -#: cps/admin.py:1613 +#: cps/admin.py:1625 #, python-format msgid "Error: %(ldaperror)s" msgstr "Fel: %(ldaperror)s" -#: cps/admin.py:1617 +#: cps/admin.py:1629 msgid "Error: No user returned in response of LDAP server" msgstr "Fel: Ingen användare återges som svar på LDAP-servern" -#: cps/admin.py:1650 +#: 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:1652 +#: cps/admin.py:1664 msgid "{} User Successfully Imported" msgstr "{} användare har importerats" -#: cps/admin.py:1710 +#: 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:1730 +#: cps/admin.py:1742 msgid "DB is not Writeable" msgstr "DB är inte skrivbar" -#: cps/admin.py:1746 +#: 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:1750 +#: 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:1829 +#: cps/admin.py:1842 msgid "Password length has to be between 1 and 40" msgstr "" -#: cps/admin.py:1881 +#: cps/admin.py:1896 #, fuzzy msgid "Database Settings updated" msgstr "E-postserverinställningar uppdaterade" -#: cps/admin.py:1889 +#: cps/admin.py:1904 #, fuzzy msgid "Database Configuration" msgstr "Funktion konfiguration" -#: cps/admin.py:1904 cps/web.py:1270 +#: cps/admin.py:1919 cps/web.py:1290 msgid "Oops! Please complete all fields." msgstr "Fyll i alla fält!" -#: cps/admin.py:1913 +#: cps/admin.py:1928 msgid "E-mail is not from valid domain" msgstr "E-posten är inte från giltig domän" -#: cps/admin.py:1919 +#: cps/admin.py:1934 msgid "Add new user" msgstr "Lägg till ny användare" -#: cps/admin.py:1930 +#: cps/admin.py:1945 #, python-format msgid "User '%(user)s' created" msgstr "Användaren '%(user)s' skapad" -#: cps/admin.py:1936 +#: cps/admin.py:1951 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:1966 +#: cps/admin.py:1981 #, python-format msgid "User '%(nick)s' deleted" msgstr "Användaren '%(nick)s' borttagen" -#: cps/admin.py:1969 +#: cps/admin.py:1984 msgid "Can't delete Guest User" msgstr "Det går inte att ta bort gästanvändaren" -#: cps/admin.py:1972 +#: cps/admin.py:1987 msgid "No admin user remaining, can't delete user" msgstr "Ingen adminstratörsanvändare kvar, kan inte ta bort användaren" -#: cps/admin.py:2027 cps/web.py:1445 +#: cps/admin.py:2042 cps/web.py:1469 msgid "Email can't be empty and has to be a valid Email" msgstr "" -#: cps/admin.py:2053 +#: cps/admin.py:2068 #, python-format msgid "User '%(nick)s' updated" msgstr "Användaren '%(nick)s' uppdaterad" @@ -527,122 +527,123 @@ msgstr "inte installerad" msgid "Execution permissions missing" msgstr "Körningstillstånd saknas" -#: cps/db.py:752 cps/search.py:137 cps/web.py:731 +#: cps/db.py:752 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:993 cps/templates/config_edit.html:208 +#: cps/db.py:992 cps/templates/config_edit.html:208 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 -#: cps/web.py:558 cps/web.py:592 cps/web.py:665 cps/web.py:692 cps/web.py:973 -#: cps/web.py:1003 cps/web.py:1048 cps/web.py:1076 cps/web.py:1115 +#: 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 +#: cps/web.py:1131 msgid "None" msgstr "Ingen" -#: cps/editbooks.py:122 cps/editbooks.py:910 cps/web.py:525 cps/web.py:1537 -#: cps/web.py:1581 cps/web.py:1626 +#: cps/editbooks.py:123 cps/editbooks.py:911 cps/web.py:529 cps/web.py:1561 +#: cps/web.py:1605 cps/web.py:1650 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:166 cps/editbooks.py:1245 +#: cps/editbooks.py:167 cps/editbooks.py:1246 msgid "User has no rights to upload cover" msgstr "" -#: cps/editbooks.py:186 cps/editbooks.py:731 +#: cps/editbooks.py:187 cps/editbooks.py:732 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "Identifierare är inte skiftlägeskänsliga, skriver över gammal identifierare" -#: cps/editbooks.py:228 +#: cps/editbooks.py:229 msgid "Metadata successfully updated" msgstr "Metadata uppdaterades" -#: cps/editbooks.py:246 +#: cps/editbooks.py:247 msgid "Error editing book: {}" msgstr "" -#: cps/editbooks.py:303 +#: cps/editbooks.py:304 #, python-format msgid "File %(file)s uploaded" msgstr "Filen %(file)s uppladdad" -#: cps/editbooks.py:331 +#: cps/editbooks.py:332 msgid "Source or destination format for conversion missing" msgstr "Källa eller målformat för konvertering saknas" -#: cps/editbooks.py:339 +#: cps/editbooks.py:340 #, 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:343 +#: cps/editbooks.py:344 #, 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:650 +#: cps/editbooks.py:651 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:705 cps/editbooks.py:1037 +#: cps/editbooks.py:706 cps/editbooks.py:1038 #, fuzzy, python-format msgid "'%(langname)s' is not a valid language" msgstr "%(langname)s är inte ett giltigt språk" -#: cps/editbooks.py:743 cps/editbooks.py:1185 +#: cps/editbooks.py:744 cps/editbooks.py:1186 #, 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:747 cps/editbooks.py:1189 +#: cps/editbooks.py:748 cps/editbooks.py:1190 msgid "File to be uploaded must have an extension" msgstr "Filen som ska laddas upp måste ha en ändelse" -#: cps/editbooks.py:755 +#: cps/editbooks.py:756 #, 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:775 +#: cps/editbooks.py:776 #, 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:832 cps/editbooks.py:834 +#: cps/editbooks.py:833 cps/editbooks.py:835 msgid "Book Format Successfully Deleted" msgstr "Bokformat har tagits bort" -#: cps/editbooks.py:841 cps/editbooks.py:843 +#: cps/editbooks.py:842 cps/editbooks.py:844 msgid "Book Successfully Deleted" msgstr "Boken har tagits bort" -#: cps/editbooks.py:895 +#: cps/editbooks.py:896 msgid "You are missing permissions to delete books" msgstr "" -#: cps/editbooks.py:945 +#: cps/editbooks.py:946 msgid "edit metadata" msgstr "redigera metadata" -#: cps/editbooks.py:994 +#: cps/editbooks.py:995 #, python-format msgid "%(seriesindex)s is not a valid number, skipping" msgstr "" -#: cps/editbooks.py:1180 +#: cps/editbooks.py:1181 msgid "User has no rights to upload additional file formats" msgstr "" -#: cps/editbooks.py:1201 +#: cps/editbooks.py:1202 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "Det gick inte att skapa sökväg %(path)s (behörighet nekad)." -#: cps/editbooks.py:1206 +#: cps/editbooks.py:1207 #, python-format msgid "Failed to store file %(file)s." msgstr "Det gick inte att lagra filen %(file)s." -#: cps/editbooks.py:1230 +#: cps/editbooks.py:1231 #, python-format msgid "File format %(ext)s added to %(book)s" msgstr "Filformatet %(ext)s lades till %(book)s" @@ -655,208 +656,208 @@ msgstr "Installationen av Google Drive är inte klar, försök att inaktivera oc 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" -#: cps/helper.py:84 +#: cps/helper.py:86 #, python-format 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:91 cps/tasks/convert.py:86 +#: cps/helper.py:93 cps/tasks/convert.py:86 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "%(format)s hittades inte på Google Drive: %(fn)s" -#: cps/helper.py:96 +#: cps/helper.py:98 #, python-format msgid "%(format)s not found: %(fn)s" msgstr "%(format)s hittades inte: %(fn)s" -#: cps/helper.py:101 cps/helper.py:226 cps/templates/detail.html:58 +#: cps/helper.py:103 cps/helper.py:228 cps/templates/detail.html:58 #, fuzzy msgid "Send to eReader" msgstr "Skicka till Kindle" -#: cps/helper.py:102 cps/helper.py:120 cps/helper.py:228 +#: cps/helper.py:104 cps/helper.py:122 cps/helper.py:230 #, fuzzy msgid "This Email has been sent via Calibre-Web." msgstr "Detta e-postmeddelande har skickats via Calibre-Web." -#: cps/helper.py:118 +#: cps/helper.py:120 #, fuzzy msgid "Calibre-Web Test Email" msgstr "Calibre-Web test e-post" -#: cps/helper.py:119 +#: cps/helper.py:121 #, fuzzy msgid "Test Email" msgstr "Test e-post" -#: cps/helper.py:136 +#: cps/helper.py:138 msgid "Get Started with Calibre-Web" msgstr "Kom igång med Calibre-Web" -#: cps/helper.py:141 +#: cps/helper.py:143 #, fuzzy, python-format msgid "Registration Email for user: %(name)s" msgstr "Registrera e-post för användare: %(name)s" -#: cps/helper.py:152 cps/helper.py:158 +#: cps/helper.py:154 cps/helper.py:160 #, fuzzy, python-format msgid "Convert %(orig)s to %(format)s and send to eReader" msgstr "Konvertera %(orig)s till %(format)s och skicka till Kindle" -#: cps/helper.py:177 cps/helper.py:181 cps/helper.py:185 +#: cps/helper.py:179 cps/helper.py:183 cps/helper.py:187 #, fuzzy, python-format msgid "Send %(format)s to eReader" msgstr "Skicka %(format)s till Kindle" -#: cps/helper.py:225 +#: cps/helper.py:227 #, fuzzy, python-format msgid "%(book)s send to eReader" msgstr "Skicka till Kindle" -#: cps/helper.py:230 +#: cps/helper.py:232 msgid "The requested file could not be read. Maybe wrong permissions?" msgstr "Den begärda filen kunde inte läsas. Kanske fel behörigheter?" -#: cps/helper.py:345 +#: cps/helper.py:347 msgid "Read status could not set: {}" msgstr "" -#: cps/helper.py:368 +#: cps/helper.py:370 #, python-format msgid "Deleting bookfolder for book %(id)s failed, path has subfolders: %(path)s" msgstr "Borttagning av bokmapp för boken %(id)s misslyckades, sökvägen har undermappar: %(path)s" -#: cps/helper.py:374 +#: cps/helper.py:376 #, python-format msgid "Deleting book %(id)s failed: %(message)s" msgstr "Borttagning av boken %(id)s misslyckades: %(message)s" -#: cps/helper.py:385 +#: cps/helper.py:387 #, fuzzy, python-format 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:450 +#: cps/helper.py:452 #, 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:522 cps/helper.py:531 +#: cps/helper.py:524 cps/helper.py:533 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "Filen %(file)s hittades inte på Google Drive" -#: cps/helper.py:565 +#: cps/helper.py:567 #, 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:585 +#: cps/helper.py:587 msgid "Error in rename file in path: {}" msgstr "" -#: cps/helper.py:603 +#: cps/helper.py:605 #, 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:668 +#: cps/helper.py:670 msgid "Found an existing account for this Email address" msgstr "" -#: cps/helper.py:676 +#: cps/helper.py:678 msgid "This username is already taken" msgstr "Detta användarnamn är redan taget" -#: cps/helper.py:688 +#: cps/helper.py:690 #, fuzzy msgid "Invalid Email address format" msgstr "Ogiltigt e-postadressformat" -#: cps/helper.py:706 +#: cps/helper.py:710 msgid "Password doesn't comply with password validation rules" msgstr "" -#: cps/helper.py:855 +#: cps/helper.py:859 msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "" -#: cps/helper.py:865 +#: cps/helper.py:869 msgid "Error Downloading Cover" msgstr "Fel vid hämtning av omslaget" -#: cps/helper.py:868 +#: cps/helper.py:872 msgid "Cover Format Error" msgstr "Fel på omslagsformat" -#: cps/helper.py:871 +#: cps/helper.py:875 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "" -#: cps/helper.py:881 +#: cps/helper.py:885 msgid "Failed to create path for cover" msgstr "Det gick inte att skapa sökväg för omslag" -#: cps/helper.py:897 +#: cps/helper.py:901 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:908 +#: cps/helper.py:912 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:920 +#: cps/helper.py:924 msgid "Invalid cover file content" msgstr "" -#: cps/helper.py:924 +#: cps/helper.py:928 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "Endast jpg/jpeg-filer stöds som omslagsfil" -#: cps/helper.py:995 cps/helper.py:1183 +#: cps/helper.py:999 cps/helper.py:1156 #, fuzzy msgid "Cover" msgstr "Upptäck" -#: cps/helper.py:1032 +#: cps/helper.py:1016 msgid "Unrar binary file not found" msgstr "Unrar binär fil hittades inte" -#: cps/helper.py:1043 +#: cps/helper.py:1027 #, fuzzy msgid "Error executing UnRar" msgstr "Fel vid körning av UnRar" -#: cps/helper.py:1051 +#: cps/helper.py:1035 msgid "Could not find the specified directory" msgstr "" -#: cps/helper.py:1054 +#: cps/helper.py:1038 msgid "Please specify a directory, not a file" msgstr "" -#: cps/helper.py:1068 +#: cps/helper.py:1052 #, fuzzy msgid "Calibre binaries not viable" msgstr "DB är inte skrivbar" -#: cps/helper.py:1077 +#: cps/helper.py:1061 #, python-format msgid "Missing calibre binaries: %(missing)s" msgstr "" -#: cps/helper.py:1079 +#: cps/helper.py:1063 #, fuzzy, python-format msgid "Missing executable permissions: %(missing)s" msgstr "Körningstillstånd saknas" -#: cps/helper.py:1084 +#: cps/helper.py:1068 #, fuzzy msgid "Error excecuting Calibre" msgstr "Fel vid körning av UnRar" -#: cps/helper.py:1185 cps/templates/admin.html:216 +#: cps/helper.py:1158 cps/templates/admin.html:216 msgid "Queue all books for metadata backup" msgstr "" @@ -941,7 +942,7 @@ msgstr "{} stjärnor" #: cps/remotelogin.py:62 cps/templates/layout.html:67 #: cps/templates/layout.html:101 cps/templates/login.html:4 -#: cps/templates/login.html:21 cps/web.py:1333 +#: cps/templates/login.html:21 cps/web.py:1353 msgid "Login" msgstr "Logga in" @@ -957,7 +958,7 @@ msgstr "Token har löpt ut" msgid "Success! Please return to your device" msgstr "Lyckades! Vänligen återvänd till din enhet" -#: cps/render_template.py:42 cps/web.py:414 +#: cps/render_template.py:42 cps/web.py:418 msgid "Books" msgstr "Böcker" @@ -982,7 +983,7 @@ msgstr "Hämtade böcker" msgid "Show Downloaded Books" msgstr "Visa hämtade böcker" -#: cps/render_template.py:59 cps/templates/index.xml:33 cps/web.py:429 +#: cps/render_template.py:59 cps/templates/index.xml:33 cps/web.py:433 msgid "Top Rated Books" msgstr "Bäst rankade böcker" @@ -991,7 +992,7 @@ msgid "Show Top Rated Books" msgstr "Visa böcker med bästa betyg" #: cps/render_template.py:62 cps/templates/index.xml:55 -#: cps/templates/index.xml:59 cps/web.py:750 +#: cps/templates/index.xml:59 cps/web.py:766 msgid "Read Books" msgstr "Lästa böcker" @@ -1001,7 +1002,7 @@ msgid "Show Read and Unread" msgstr "Visa lästa och olästa" #: cps/render_template.py:66 cps/templates/index.xml:62 -#: cps/templates/index.xml:66 cps/web.py:753 +#: cps/templates/index.xml:66 cps/web.py:769 msgid "Unread Books" msgstr "Olästa böcker" @@ -1019,7 +1020,7 @@ msgid "Show Random Books" msgstr "Visa slumpmässiga böcker" #: cps/render_template.py:72 cps/templates/book_table.html:67 -#: cps/templates/index.xml:84 cps/web.py:1119 +#: cps/templates/index.xml:84 cps/web.py:1135 msgid "Categories" msgstr "Kategorier" @@ -1030,7 +1031,7 @@ msgstr "Visa kategorival" #: cps/render_template.py:75 cps/templates/book_edit.html:91 #: cps/templates/book_table.html:68 cps/templates/index.xml:91 -#: cps/templates/search_form.html:70 cps/web.py:1009 cps/web.py:1021 +#: cps/templates/search_form.html:70 cps/web.py:1025 cps/web.py:1037 msgid "Series" msgstr "Serier" @@ -1050,7 +1051,7 @@ msgid "Show Author Section" msgstr "Visa författarval" #: cps/render_template.py:82 cps/templates/book_table.html:72 -#: cps/templates/index.xml:77 cps/web.py:977 +#: cps/templates/index.xml:77 cps/web.py:993 msgid "Publishers" msgstr "Förlag" @@ -1061,7 +1062,7 @@ msgstr "Visa urval av förlag" #: cps/render_template.py:85 cps/templates/book_table.html:70 #: cps/templates/index.xml:98 cps/templates/search_form.html:108 -#: cps/web.py:1091 +#: cps/web.py:1107 msgid "Languages" msgstr "Språk" @@ -1088,7 +1089,7 @@ msgstr "Filformat" msgid "Show File Formats Section" msgstr "Visa val av filformat" -#: cps/render_template.py:96 cps/web.py:776 +#: cps/render_template.py:96 cps/web.py:792 msgid "Archived Books" msgstr "Arkiverade böcker" @@ -1097,7 +1098,7 @@ msgstr "Arkiverade böcker" msgid "Show Archived Books" msgstr "Visa arkiverade böcker" -#: cps/render_template.py:101 cps/web.py:807 +#: cps/render_template.py:101 cps/web.py:823 msgid "Books List" msgstr "Boklista" @@ -1321,173 +1322,178 @@ msgstr "En ny uppdatering är tillgänglig. Klicka på knappen nedan för att up msgid "No release information available" msgstr "Ingen versionsinformation tillgänglig" -#: cps/templates/index.html:6 cps/web.py:441 +#: cps/templates/index.html:6 cps/web.py:445 msgid "Discover (Random Books)" msgstr "Upptäck (slumpmässiga böcker)" -#: cps/web.py:477 +#: cps/web.py:481 msgid "Hot Books (Most Downloaded)" msgstr "Heta böcker (mest hämtade)" -#: cps/web.py:508 +#: cps/web.py:512 #, python-format msgid "Downloaded books by %(user)s" msgstr "Hämtade böcker av %(user)s" -#: cps/web.py:541 +#: cps/web.py:545 #, python-format msgid "Author: %(name)s" msgstr "Författare: %(name)s" -#: cps/web.py:577 +#: cps/web.py:581 #, python-format msgid "Publisher: %(name)s" msgstr "Förlag: %(name)s" -#: cps/web.py:605 +#: cps/web.py:609 #, python-format msgid "Series: %(serie)s" msgstr "Serier: %(serie)s" -#: cps/web.py:620 +#: cps/web.py:623 msgid "Rating: None" msgstr "" -#: cps/web.py:629 +#: cps/web.py:632 #, python-format msgid "Rating: %(rating)s stars" msgstr "Betyg: %(rating)s stars" -#: cps/web.py:645 +#: cps/web.py:663 #, python-format msgid "File format: %(format)s" msgstr "Filformat: %(format)s" -#: cps/web.py:682 +#: cps/web.py:698 #, python-format msgid "Category: %(name)s" msgstr "Kategori: %(name)s" -#: cps/web.py:711 +#: cps/web.py:727 #, python-format msgid "Language: %(name)s" msgstr "Språk: %(name)s" -#: cps/templates/admin.html:16 cps/web.py:949 +#: cps/templates/admin.html:16 cps/web.py:965 msgid "Downloads" msgstr "Hämtningar" -#: cps/web.py:1051 +#: cps/web.py:1067 msgid "Ratings list" msgstr "Betygslista" -#: cps/web.py:1078 +#: cps/web.py:1094 msgid "File formats list" msgstr "Lista över filformat" -#: cps/web.py:1233 +#: cps/web.py:1249 #, fuzzy msgid "Please configure the SMTP mail settings first..." msgstr "Konfigurera SMTP-postinställningarna först..." -#: cps/web.py:1240 +#: cps/web.py:1256 #, python-format msgid "Success! Book queued for sending to %(eReadermail)s" msgstr "Boken är i kö för att skicka till %(eReadermail)s" -#: cps/web.py:1243 +#: cps/web.py:1259 #, python-format msgid "Oops! There was an error sending book: %(res)s" msgstr "Det gick inte att skicka den här boken: %(res)s" -#: cps/web.py:1245 +#: cps/web.py:1261 #, fuzzy msgid "Oops! Please update your profile with a valid eReader Email." msgstr "Konfigurera din kindle-e-postadress först..." -#: cps/web.py:1261 +#: cps/web.py:1277 msgid "Please wait one minute to register next user" msgstr "" #: cps/templates/layout.html:68 cps/templates/layout.html:102 -#: cps/templates/login.html:27 cps/templates/register.html:17 cps/web.py:1262 -#: cps/web.py:1267 cps/web.py:1271 cps/web.py:1277 cps/web.py:1297 -#: cps/web.py:1301 cps/web.py:1314 cps/web.py:1317 +#: cps/templates/login.html:27 cps/templates/register.html:17 cps/web.py:1278 +#: cps/web.py:1282 cps/web.py:1287 cps/web.py:1291 cps/web.py:1297 +#: cps/web.py:1317 cps/web.py:1321 cps/web.py:1334 cps/web.py:1337 msgid "Register" msgstr "Registrera" -#: cps/web.py:1266 cps/web.py:1313 +#: cps/web.py:1281 cps/web.py:1385 +#, fuzzy +msgid "Connection error to limiter backend, please contact your administrator" +msgstr "E-postservern är inte konfigurerad, kontakta din administratör!" + +#: cps/web.py:1286 cps/web.py:1333 msgid "Oops! Email server is not configured, please contact your administrator." msgstr "E-postservern är inte konfigurerad, kontakta din administratör!" -#: cps/web.py:1299 +#: cps/web.py:1319 msgid "Oops! Your Email is not allowed." msgstr "Din e-post är inte tillåten att registrera" -#: cps/web.py:1302 +#: cps/web.py:1322 msgid "Success! Confirmation Email has been sent." msgstr "Bekräftelsemail skickades till ditt e-postkonto." -#: cps/web.py:1348 cps/web.py:1367 +#: cps/web.py:1368 cps/web.py:1391 #, fuzzy msgid "Cannot activate LDAP authentication" msgstr "Det går inte att aktivera LDAP-autentisering" -#: cps/web.py:1361 +#: cps/web.py:1381 msgid "Please wait one minute before next login" msgstr "" -#: cps/web.py:1376 +#: cps/web.py:1400 #, fuzzy, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "du är nu inloggad som: \"%(nickname)s\"" -#: cps/web.py:1383 +#: cps/web.py:1407 #, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgstr "" -#: cps/web.py:1388 +#: cps/web.py:1412 #, fuzzy, python-format msgid "Could not login: %(message)s" msgstr "Det gick inte att logga in: %(message)s" -#: cps/web.py:1392 cps/web.py:1417 +#: cps/web.py:1416 cps/web.py:1441 #, fuzzy msgid "Wrong Username or Password" msgstr "Fel användarnamn eller lösenord" -#: cps/web.py:1399 +#: cps/web.py:1423 #, fuzzy msgid "New Password was sent to your email address" msgstr "Nytt lösenord skickades till din e-postadress" -#: cps/web.py:1403 +#: cps/web.py:1427 #, fuzzy msgid "An unknown error occurred. Please try again later." msgstr "Ett okänt fel uppstod. Försök igen senare." -#: cps/web.py:1405 +#: cps/web.py:1429 #, fuzzy msgid "Please enter valid username to reset password" msgstr "Ange giltigt användarnamn för att återställa lösenordet" -#: cps/web.py:1413 +#: cps/web.py:1437 #, fuzzy, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "du är nu inloggad som: \"%(nickname)s\"" -#: cps/web.py:1471 cps/web.py:1521 +#: cps/web.py:1495 cps/web.py:1545 #, python-format msgid "%(name)s's Profile" msgstr "%(name)ss profil" -#: cps/web.py:1487 +#: cps/web.py:1511 #, fuzzy msgid "Success! Profile Updated" msgstr "Profilen uppdaterad" -#: cps/web.py:1491 +#: cps/web.py:1515 msgid "Oops! An account already exists for this Email." msgstr "Hittade ett befintligt konto för den här e-postadressen" @@ -1500,41 +1506,41 @@ msgstr "Hittade ingen giltig gmail.json-fil med OAuth-information" msgid "%(book)s send to E-Reader" msgstr "Skicka till Kindle" -#: cps/tasks/convert.py:166 +#: cps/tasks/convert.py:167 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "calibre e-bokkonverterings %(tool)s hittades inte" -#: cps/tasks/convert.py:200 +#: cps/tasks/convert.py:201 #, python-format msgid "%(format)s format not found on disk" msgstr "%(format)s-format hittades inte på disken" -#: cps/tasks/convert.py:204 +#: cps/tasks/convert.py:205 msgid "Ebook converter failed with unknown error" msgstr "E-bokkonverteraren misslyckades med okänt fel" -#: cps/tasks/convert.py:223 +#: cps/tasks/convert.py:224 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "Kepubify-konverteraren misslyckades: %(error)s" -#: cps/tasks/convert.py:244 +#: cps/tasks/convert.py:245 #, 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:279 +#: cps/tasks/convert.py:287 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "E-bokkonverteraren misslyckades: %(error)s" -#: cps/tasks/convert.py:302 +#: cps/tasks/convert.py:310 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "calibre misslyckades med fel: %(error)s" -#: cps/tasks/convert.py:307 +#: cps/tasks/convert.py:315 msgid "Convert" msgstr "" @@ -1542,7 +1548,7 @@ msgstr "" msgid "Reconnecting Calibre database" msgstr "" -#: cps/tasks/mail.py:269 +#: cps/tasks/mail.py:278 msgid "E-mail" msgstr "" @@ -1822,12 +1828,12 @@ 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:414 -#: cps/templates/config_view_edit.html:175 cps/templates/modal_dialogs.html:64 -#: cps/templates/modal_dialogs.html:99 cps/templates/modal_dialogs.html:117 -#: cps/templates/modal_dialogs.html:135 cps/templates/schedule_edit.html:45 -#: cps/templates/shelf_edit.html:27 cps/templates/tasks.html:46 -#: cps/templates/user_edit.html:144 +#: cps/templates/config_db.html:66 cps/templates/config_edit.html:428 +#: 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 +#: cps/templates/schedule_edit.html:45 cps/templates/shelf_edit.html:27 +#: cps/templates/tasks.html:46 cps/templates/user_edit.html:144 msgid "Cancel" msgstr "Avbryt" @@ -2008,7 +2014,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:413 cps/templates/config_view_edit.html:174 +#: cps/templates/config_edit.html:427 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 @@ -2176,7 +2182,7 @@ msgid "Location of Calibre Database" msgstr "Plats för Calibre-databasen" #: cps/templates/config_db.html:21 -msgid "Separate Book files from Library (Highly experimental, might not work at all)" +msgid "Separate Book Files from Library" msgstr "" #: cps/templates/config_db.html:34 @@ -2261,7 +2267,7 @@ msgid "Convert non-English characters in title and author while saving to disk" msgstr "" #: cps/templates/config_edit.html:108 -msgid "Embed Metadata to Ebook File on Download and Conversion (needs Calibre/Kepubify binaries)" +msgid "Embed Metadata to Ebook File on Download/Conversion/e-mail (needs Calibre/Kepubify binaries)" msgstr "" #: cps/templates/config_edit.html:112 @@ -2485,40 +2491,52 @@ msgstr "OAuth-inställningar" msgid "Limit failed login attempts" msgstr "" -#: cps/templates/config_edit.html:376 +#: cps/templates/config_edit.html:377 +msgid "Configure Backend for Limiter" +msgstr "" + +#: cps/templates/config_edit.html:381 +msgid "Options for Limiter" +msgstr "" + +#: cps/templates/config_edit.html:386 msgid "Session protection" msgstr "" -#: cps/templates/config_edit.html:378 +#: cps/templates/config_edit.html:388 msgid "Basic" msgstr "" -#: cps/templates/config_edit.html:379 +#: cps/templates/config_edit.html:389 msgid "Strong" msgstr "" -#: cps/templates/config_edit.html:384 +#: cps/templates/config_edit.html:394 #, fuzzy msgid "User Password policy" msgstr "Återställ användarlösenordet" -#: cps/templates/config_edit.html:388 +#: cps/templates/config_edit.html:398 msgid "Minimum password length" msgstr "" -#: cps/templates/config_edit.html:393 +#: cps/templates/config_edit.html:403 msgid "Enforce number" msgstr "" -#: cps/templates/config_edit.html:397 +#: cps/templates/config_edit.html:407 msgid "Enforce lowercase characters" msgstr "" -#: cps/templates/config_edit.html:401 +#: cps/templates/config_edit.html:411 msgid "Enforce uppercase characters" msgstr "" -#: cps/templates/config_edit.html:405 +#: cps/templates/config_edit.html:415 +msgid "Enforce characters (needed For Chinese/Japanese/Korean Characters)" +msgstr "" + +#: cps/templates/config_edit.html:419 msgid "Enforce special characters" msgstr "" @@ -2642,47 +2660,47 @@ msgstr "" msgid "Published" msgstr "Publicerad" -#: cps/templates/detail.html:250 cps/templates/listenmp3.html:158 +#: cps/templates/detail.html:251 cps/templates/listenmp3.html:158 msgid "Mark As Unread" msgstr "Markera som oläst" -#: cps/templates/detail.html:251 cps/templates/listenmp3.html:158 +#: cps/templates/detail.html:252 cps/templates/listenmp3.html:158 msgid "Mark As Read" msgstr "Markera som läst" -#: cps/templates/detail.html:253 cps/templates/listenmp3.html:159 +#: cps/templates/detail.html:254 cps/templates/listenmp3.html:159 msgid "Read" msgstr "Läst" -#: cps/templates/detail.html:263 cps/templates/listenmp3.html:166 +#: cps/templates/detail.html:264 cps/templates/listenmp3.html:166 msgid "Restore from archive" msgstr "Återställ från arkivet" -#: cps/templates/detail.html:264 cps/templates/listenmp3.html:166 +#: cps/templates/detail.html:265 cps/templates/listenmp3.html:166 msgid "Add to archive" msgstr "Lägg till i arkivet" -#: cps/templates/detail.html:266 cps/templates/listenmp3.html:167 +#: cps/templates/detail.html:267 cps/templates/listenmp3.html:167 msgid "Archived" msgstr "Arkiverad" -#: cps/templates/detail.html:277 cps/templates/listenmp3.html:177 +#: cps/templates/detail.html:278 cps/templates/listenmp3.html:177 msgid "Description:" msgstr "Beskrivning:" -#: cps/templates/detail.html:292 cps/templates/listenmp3.html:190 +#: cps/templates/detail.html:293 cps/templates/listenmp3.html:190 #: cps/templates/search.html:16 msgid "Add to shelf" msgstr "Lägg till hyllan" -#: cps/templates/detail.html:304 cps/templates/detail.html:323 +#: cps/templates/detail.html:305 cps/templates/detail.html:324 #: cps/templates/feed.xml:81 cps/templates/layout.html:154 #: cps/templates/listenmp3.html:201 cps/templates/listenmp3.html:218 #: cps/templates/search.html:22 msgid "(Public)" msgstr "(Publik)" -#: cps/templates/detail.html:339 +#: cps/templates/detail.html:340 msgid "Edit Metadata" msgstr "Redigera metadata" diff --git a/cps/translations/tr/LC_MESSAGES/messages.mo b/cps/translations/tr/LC_MESSAGES/messages.mo index a3594e9d..3ba4a0e8 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 9a4cd536..43c1d1fb 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-02-10 10:06+0100\n" +"POT-Creation-Date: 2024-04-27 07:20+0200\n" "PO-Revision-Date: 2020-04-23 22:47+0300\n" "Last-Translator: iz \n" "Language: tr\n" @@ -22,496 +22,496 @@ msgstr "" msgid "Statistics" msgstr "İstatistikler" -#: cps/admin.py:149 +#: cps/admin.py:150 #, fuzzy msgid "Server restarted, please reload page." msgstr "Sunucu yeniden başlatıldı, lütfen sayfayı yeniden yükleyin" -#: cps/admin.py:151 +#: cps/admin.py:152 #, fuzzy msgid "Performing Server shutdown, please close window." msgstr "Sunucu kapatıyor, lütfen pencereyi kapatın" -#: cps/admin.py:159 +#: cps/admin.py:160 msgid "Success! Database Reconnected" msgstr "" -#: cps/admin.py:162 +#: cps/admin.py:163 msgid "Unknown command" msgstr "" -#: cps/admin.py:173 +#: cps/admin.py:174 #, fuzzy 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:206 cps/editbooks.py:589 cps/editbooks.py:591 -#: cps/editbooks.py:629 cps/editbooks.py:646 cps/editbooks.py:1262 +#: cps/admin.py:207 cps/editbooks.py:590 cps/editbooks.py:592 +#: cps/editbooks.py:630 cps/editbooks.py:647 cps/editbooks.py:1263 #: cps/updater.py:613 cps/uploader.py:93 cps/uploader.py:102 msgid "Unknown" msgstr "Bilinmeyen" -#: cps/admin.py:231 +#: cps/admin.py:232 msgid "Admin page" msgstr "Yönetim sayfası" -#: cps/admin.py:251 +#: cps/admin.py:252 msgid "Basic Configuration" msgstr "Temel Ayarlar" -#: cps/admin.py:289 +#: cps/admin.py:290 msgid "UI Configuration" msgstr "Arayüz Ayarları" -#: cps/admin.py:323 cps/templates/admin.html:51 +#: cps/admin.py:324 cps/templates/admin.html:51 msgid "Edit Users" msgstr "" -#: cps/admin.py:367 cps/opds.py:506 cps/templates/grid.html:14 +#: cps/admin.py:368 cps/opds.py:506 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "Tümü" -#: cps/admin.py:394 cps/admin.py:1405 +#: cps/admin.py:395 cps/admin.py:1417 msgid "User not found" msgstr "" -#: cps/admin.py:408 +#: cps/admin.py:409 msgid "{} users deleted successfully" msgstr "" -#: cps/admin.py:431 cps/templates/config_view_edit.html:133 +#: cps/admin.py:432 cps/templates/config_view_edit.html:133 #: cps/templates/user_edit.html:45 cps/templates/user_table.html:81 msgid "Show All" msgstr "" -#: cps/admin.py:452 cps/admin.py:458 +#: cps/admin.py:453 cps/admin.py:459 msgid "Malformed request" msgstr "" -#: cps/admin.py:470 cps/admin.py:2033 +#: cps/admin.py:471 cps/admin.py:2048 msgid "Guest Name can't be changed" msgstr "" -#: cps/admin.py:482 +#: cps/admin.py:483 msgid "Guest can't have this role" msgstr "" -#: cps/admin.py:494 cps/admin.py:1987 +#: cps/admin.py:495 cps/admin.py:2002 msgid "No admin user remaining, can't remove admin role" msgstr "" -#: cps/admin.py:498 cps/admin.py:512 +#: cps/admin.py:499 cps/admin.py:513 msgid "Value has to be true or false" msgstr "" -#: cps/admin.py:500 +#: cps/admin.py:501 msgid "Invalid role" msgstr "" -#: cps/admin.py:504 +#: cps/admin.py:505 msgid "Guest can't have this view" msgstr "" -#: cps/admin.py:514 +#: cps/admin.py:515 msgid "Invalid view" msgstr "" -#: cps/admin.py:517 +#: cps/admin.py:518 msgid "Guest's Locale is determined automatically and can't be set" msgstr "" -#: cps/admin.py:521 +#: cps/admin.py:522 msgid "No Valid Locale Given" msgstr "" -#: cps/admin.py:532 +#: cps/admin.py:533 msgid "No Valid Book Language Given" msgstr "" -#: cps/admin.py:534 cps/editbooks.py:455 +#: cps/admin.py:535 cps/editbooks.py:456 msgid "Parameter not found" msgstr "" -#: cps/admin.py:571 +#: cps/admin.py:572 msgid "Invalid Read Column" msgstr "" -#: cps/admin.py:577 +#: cps/admin.py:578 msgid "Invalid Restricted Column" msgstr "" -#: cps/admin.py:597 cps/admin.py:1858 +#: cps/admin.py:598 cps/admin.py:1873 msgid "Calibre-Web configuration updated" msgstr "Calibre-Web yapılandırması güncellendi" -#: cps/admin.py:609 +#: cps/admin.py:610 msgid "Do you really want to delete the Kobo Token?" msgstr "" -#: cps/admin.py:611 +#: cps/admin.py:612 msgid "Do you really want to delete this domain?" msgstr "" -#: cps/admin.py:613 +#: cps/admin.py:614 msgid "Do you really want to delete this user?" msgstr "" -#: cps/admin.py:615 +#: cps/admin.py:616 msgid "Are you sure you want to delete this shelf?" msgstr "" -#: cps/admin.py:617 +#: cps/admin.py:618 msgid "Are you sure you want to change locales of selected user(s)?" msgstr "" -#: cps/admin.py:619 +#: cps/admin.py:620 msgid "Are you sure you want to change visible book languages for selected user(s)?" msgstr "" -#: cps/admin.py:621 +#: cps/admin.py:622 msgid "Are you sure you want to change the selected role for the selected user(s)?" msgstr "" -#: cps/admin.py:623 +#: cps/admin.py:624 msgid "Are you sure you want to change the selected restrictions for the selected user(s)?" msgstr "" -#: cps/admin.py:625 +#: cps/admin.py:626 msgid "Are you sure you want to change the selected visibility restrictions for the selected user(s)?" msgstr "" -#: cps/admin.py:628 +#: cps/admin.py:629 msgid "Are you sure you want to change shelf sync behavior for the selected user(s)?" msgstr "" -#: cps/admin.py:630 +#: cps/admin.py:631 msgid "Are you sure you want to change Calibre library location?" msgstr "" -#: cps/admin.py:632 +#: cps/admin.py:633 msgid "Calibre-Web will search for updated Covers and update Cover Thumbnails, this may take a while?" msgstr "" -#: cps/admin.py:635 +#: cps/admin.py:636 msgid "Are you sure you want delete Calibre-Web's sync database to force a full sync with your Kobo Reader?" msgstr "" -#: cps/admin.py:878 cps/admin.py:884 cps/admin.py:894 cps/admin.py:904 +#: cps/admin.py:879 cps/admin.py:885 cps/admin.py:895 cps/admin.py:905 #: cps/templates/modal_dialogs.html:29 cps/templates/user_table.html:41 #: cps/templates/user_table.html:58 msgid "Deny" msgstr "" -#: cps/admin.py:880 cps/admin.py:886 cps/admin.py:896 cps/admin.py:906 +#: cps/admin.py:881 cps/admin.py:887 cps/admin.py:897 cps/admin.py:907 #: cps/templates/modal_dialogs.html:28 cps/templates/user_table.html:44 #: cps/templates/user_table.html:61 msgid "Allow" msgstr "" -#: cps/admin.py:921 +#: cps/admin.py:940 msgid "{} sync entries deleted" msgstr "" -#: cps/admin.py:969 +#: cps/admin.py:981 msgid "Tag not found" msgstr "" -#: cps/admin.py:981 +#: cps/admin.py:993 msgid "Invalid Action" msgstr "" -#: cps/admin.py:1111 +#: cps/admin.py:1123 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "" -#: cps/admin.py:1156 +#: cps/admin.py:1168 msgid "Logfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1162 +#: cps/admin.py:1174 msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1196 +#: cps/admin.py:1208 msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgstr "" -#: cps/admin.py:1202 +#: cps/admin.py:1214 #, 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:1205 +#: cps/admin.py:1217 msgid "Please Enter a LDAP Service Account" msgstr "" -#: cps/admin.py:1210 +#: cps/admin.py:1222 #, python-format msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1212 +#: cps/admin.py:1224 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1216 +#: cps/admin.py:1228 #, python-format msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1218 +#: cps/admin.py:1230 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1225 +#: cps/admin.py:1237 #, python-format msgid "LDAP Member User Filter needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1227 +#: cps/admin.py:1239 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1234 +#: cps/admin.py:1246 msgid "LDAP CACertificate, Certificate or Key Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1265 cps/templates/admin.html:53 +#: cps/admin.py:1277 cps/templates/admin.html:53 msgid "Add New User" msgstr "" -#: cps/admin.py:1274 cps/templates/admin.html:100 +#: cps/admin.py:1286 cps/templates/admin.html:100 msgid "Edit Email Server Settings" msgstr "" -#: cps/admin.py:1293 +#: cps/admin.py:1305 msgid "Success! Gmail Account Verified." msgstr "" -#: cps/admin.py:1313 cps/admin.py:1316 cps/admin.py:1698 cps/admin.py:1842 -#: cps/admin.py:1940 cps/admin.py:2061 cps/editbooks.py:241 -#: cps/editbooks.py:317 cps/editbooks.py:1224 cps/shelf.py:90 cps/shelf.py:150 +#: cps/admin.py:1325 cps/admin.py:1328 cps/admin.py:1710 cps/admin.py:1857 +#: cps/admin.py:1955 cps/admin.py:2076 cps/editbooks.py:242 +#: cps/editbooks.py:318 cps/editbooks.py:1225 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:149 cps/web.py:1496 +#: cps/shelf.py:468 cps/tasks/convert.py:150 cps/web.py:1520 #, python-format msgid "Oops! Database Error: %(error)s." msgstr "" -#: cps/admin.py:1323 +#: cps/admin.py:1335 #, python-format msgid "Test e-mail queued for sending to %(email)s, please check Tasks for result" msgstr "" -#: cps/admin.py:1326 +#: cps/admin.py:1338 #, 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:1328 +#: cps/admin.py:1340 msgid "Please configure your e-mail address first..." msgstr "Lütfen önce e-posta adresinizi ayarlayın..." -#: cps/admin.py:1330 +#: cps/admin.py:1342 msgid "Email Server Settings updated" msgstr "E-posta sunucusu ayarları güncellendi" -#: cps/admin.py:1353 cps/templates/admin.html:195 +#: cps/admin.py:1365 cps/templates/admin.html:195 msgid "Edit Scheduled Tasks Settings" msgstr "" -#: cps/admin.py:1365 +#: cps/admin.py:1377 msgid "Invalid start time for task specified" msgstr "" -#: cps/admin.py:1370 +#: cps/admin.py:1382 msgid "Invalid duration for task specified" msgstr "" -#: cps/admin.py:1380 +#: cps/admin.py:1392 msgid "Scheduled tasks settings updated" msgstr "" -#: cps/admin.py:1390 cps/admin.py:1439 cps/admin.py:2057 cps/web.py:1296 +#: cps/admin.py:1402 cps/admin.py:1451 cps/admin.py:2072 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:1394 +#: cps/admin.py:1406 msgid "Settings DB is not Writeable" msgstr "" -#: cps/admin.py:1424 cps/admin.py:2049 +#: cps/admin.py:1436 cps/admin.py:2064 #, python-format msgid "Edit User %(nick)s" msgstr "%(nick)s kullanıcısını düzenle" -#: cps/admin.py:1436 +#: cps/admin.py:1448 #, 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:1442 +#: cps/admin.py:1454 #, fuzzy msgid "Oops! Please configure the SMTP mail settings." msgstr "Lütfen önce SMTP e-posta ayarlarını ayarlayın..." -#: cps/admin.py:1453 +#: cps/admin.py:1465 msgid "Logfile viewer" msgstr "Log dosyası görüntüleyici" -#: cps/admin.py:1519 +#: cps/admin.py:1531 msgid "Requesting update package" msgstr "Güncelleme paketi isteniyor" -#: cps/admin.py:1520 +#: cps/admin.py:1532 msgid "Downloading update package" msgstr "Güncelleme paketi indiriliyor" -#: cps/admin.py:1521 +#: cps/admin.py:1533 msgid "Unzipping update package" msgstr "Güncelleme paketi ayıklanıyor" -#: cps/admin.py:1522 +#: cps/admin.py:1534 msgid "Replacing files" msgstr "Dosyalar değiştiriliyor" -#: cps/admin.py:1523 +#: cps/admin.py:1535 msgid "Database connections are closed" msgstr "Veritabanı bağlantıları kapalı" -#: cps/admin.py:1524 +#: cps/admin.py:1536 msgid "Stopping server" msgstr "Sunucu durduruyor" -#: cps/admin.py:1525 +#: cps/admin.py:1537 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:1526 cps/admin.py:1527 cps/admin.py:1528 cps/admin.py:1529 -#: cps/admin.py:1530 cps/admin.py:1531 +#: cps/admin.py:1538 cps/admin.py:1539 cps/admin.py:1540 cps/admin.py:1541 +#: cps/admin.py:1542 cps/admin.py:1543 msgid "Update failed:" msgstr "Güncelleme başarısız:" -#: cps/admin.py:1526 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 +#: cps/admin.py:1538 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 msgid "HTTP Error" msgstr "HTTP Hatası" -#: cps/admin.py:1527 cps/updater.py:391 cps/updater.py:628 +#: cps/admin.py:1539 cps/updater.py:391 cps/updater.py:628 msgid "Connection error" msgstr "Bağlantı hatası" -#: cps/admin.py:1528 cps/updater.py:393 cps/updater.py:630 +#: cps/admin.py:1540 cps/updater.py:393 cps/updater.py:630 msgid "Timeout while establishing connection" msgstr "Bağlantı kurulmaya çalışırken zaman aşımına uğradı" -#: cps/admin.py:1529 cps/updater.py:395 cps/updater.py:632 +#: cps/admin.py:1541 cps/updater.py:395 cps/updater.py:632 msgid "General error" msgstr "Genel hata" -#: cps/admin.py:1530 +#: cps/admin.py:1542 #, fuzzy msgid "Update file could not be saved in temp dir" msgstr "%(filename)s dosyası geçici dizine kaydedilemedi" -#: cps/admin.py:1531 +#: cps/admin.py:1543 msgid "Files could not be replaced during update" msgstr "" -#: cps/admin.py:1555 +#: cps/admin.py:1567 msgid "Failed to extract at least One LDAP User" msgstr "" -#: cps/admin.py:1600 +#: cps/admin.py:1612 msgid "Failed to Create at Least One LDAP User" msgstr "" -#: cps/admin.py:1613 +#: cps/admin.py:1625 #, python-format msgid "Error: %(ldaperror)s" msgstr "" -#: cps/admin.py:1617 +#: cps/admin.py:1629 msgid "Error: No user returned in response of LDAP server" msgstr "" -#: cps/admin.py:1650 +#: cps/admin.py:1662 msgid "At Least One LDAP User Not Found in Database" msgstr "" -#: cps/admin.py:1652 +#: cps/admin.py:1664 msgid "{} User Successfully Imported" msgstr "" -#: cps/admin.py:1710 +#: cps/admin.py:1722 msgid "DB Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1730 +#: cps/admin.py:1742 msgid "DB is not Writeable" msgstr "" -#: cps/admin.py:1746 +#: cps/admin.py:1758 msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1750 +#: cps/admin.py:1762 msgid "Certfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1829 +#: cps/admin.py:1842 msgid "Password length has to be between 1 and 40" msgstr "" -#: cps/admin.py:1881 +#: cps/admin.py:1896 #, fuzzy msgid "Database Settings updated" msgstr "E-posta sunucusu ayarları güncellendi" -#: cps/admin.py:1889 +#: cps/admin.py:1904 #, fuzzy msgid "Database Configuration" msgstr "Özellik Yapılandırması" -#: cps/admin.py:1904 cps/web.py:1270 +#: cps/admin.py:1919 cps/web.py:1290 msgid "Oops! Please complete all fields." msgstr "Lütfen tüm alanları doldurun!" -#: cps/admin.py:1913 +#: cps/admin.py:1928 msgid "E-mail is not from valid domain" msgstr "E-posta izin verilen bir servisten değil" -#: cps/admin.py:1919 +#: cps/admin.py:1934 msgid "Add new user" msgstr "Yeni kullanıcı ekle" -#: cps/admin.py:1930 +#: cps/admin.py:1945 #, python-format msgid "User '%(user)s' created" msgstr "'%(user)s' kullanıcısı oluşturuldu" -#: cps/admin.py:1936 +#: cps/admin.py:1951 #, 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:1966 +#: cps/admin.py:1981 #, python-format msgid "User '%(nick)s' deleted" msgstr "Kullanıcı '%(nick)s' silindi" -#: cps/admin.py:1969 +#: cps/admin.py:1984 msgid "Can't delete Guest User" msgstr "" -#: cps/admin.py:1972 +#: cps/admin.py:1987 msgid "No admin user remaining, can't delete user" msgstr "Başka yönetici kullanıcı olmadığından silinemedi" -#: cps/admin.py:2027 cps/web.py:1445 +#: cps/admin.py:2042 cps/web.py:1469 msgid "Email can't be empty and has to be a valid Email" msgstr "" -#: cps/admin.py:2053 +#: cps/admin.py:2068 #, python-format msgid "User '%(nick)s' updated" msgstr "'%(nick)s' kullanıcısı güncellendi" @@ -524,122 +524,123 @@ msgstr "yüklü değil" msgid "Execution permissions missing" msgstr "" -#: cps/db.py:752 cps/search.py:137 cps/web.py:731 +#: cps/db.py:752 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:993 cps/templates/config_edit.html:208 +#: cps/db.py:992 cps/templates/config_edit.html:208 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 -#: cps/web.py:558 cps/web.py:592 cps/web.py:665 cps/web.py:692 cps/web.py:973 -#: cps/web.py:1003 cps/web.py:1048 cps/web.py:1076 cps/web.py:1115 +#: 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 +#: cps/web.py:1131 msgid "None" msgstr "Hiçbiri" -#: cps/editbooks.py:122 cps/editbooks.py:910 cps/web.py:525 cps/web.py:1537 -#: cps/web.py:1581 cps/web.py:1626 +#: cps/editbooks.py:123 cps/editbooks.py:911 cps/web.py:529 cps/web.py:1561 +#: cps/web.py:1605 cps/web.py:1650 msgid "Oops! Selected book is unavailable. File does not exist or is not accessible" msgstr "" -#: cps/editbooks.py:166 cps/editbooks.py:1245 +#: cps/editbooks.py:167 cps/editbooks.py:1246 msgid "User has no rights to upload cover" msgstr "" -#: cps/editbooks.py:186 cps/editbooks.py:731 +#: cps/editbooks.py:187 cps/editbooks.py:732 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "" -#: cps/editbooks.py:228 +#: cps/editbooks.py:229 msgid "Metadata successfully updated" msgstr "Metaveri başarıyla güncellendi" -#: cps/editbooks.py:246 +#: cps/editbooks.py:247 msgid "Error editing book: {}" msgstr "" -#: cps/editbooks.py:303 +#: cps/editbooks.py:304 #, python-format msgid "File %(file)s uploaded" msgstr "%(file)s dosyası yüklendi" -#: cps/editbooks.py:331 +#: cps/editbooks.py:332 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:339 +#: cps/editbooks.py:340 #, 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:343 +#: cps/editbooks.py:344 #, 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:650 +#: cps/editbooks.py:651 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:705 cps/editbooks.py:1037 +#: cps/editbooks.py:706 cps/editbooks.py:1038 #, fuzzy, python-format msgid "'%(langname)s' is not a valid language" msgstr "%(langname)s geçerli bir dil değil" -#: cps/editbooks.py:743 cps/editbooks.py:1185 +#: cps/editbooks.py:744 cps/editbooks.py:1186 #, 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:747 cps/editbooks.py:1189 +#: cps/editbooks.py:748 cps/editbooks.py:1190 msgid "File to be uploaded must have an extension" msgstr "Yüklenecek dosyanın mutlaka bir uzantısı olması gerekli" -#: cps/editbooks.py:755 +#: cps/editbooks.py:756 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "%(filename)s dosyası geçici dizine kaydedilemedi" -#: cps/editbooks.py:775 +#: cps/editbooks.py:776 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "" -#: cps/editbooks.py:832 cps/editbooks.py:834 +#: cps/editbooks.py:833 cps/editbooks.py:835 msgid "Book Format Successfully Deleted" msgstr "" -#: cps/editbooks.py:841 cps/editbooks.py:843 +#: cps/editbooks.py:842 cps/editbooks.py:844 msgid "Book Successfully Deleted" msgstr "" -#: cps/editbooks.py:895 +#: cps/editbooks.py:896 msgid "You are missing permissions to delete books" msgstr "" -#: cps/editbooks.py:945 +#: cps/editbooks.py:946 msgid "edit metadata" msgstr "metaveri düzenle" -#: cps/editbooks.py:994 +#: cps/editbooks.py:995 #, python-format msgid "%(seriesindex)s is not a valid number, skipping" msgstr "" -#: cps/editbooks.py:1180 +#: cps/editbooks.py:1181 msgid "User has no rights to upload additional file formats" msgstr "" -#: cps/editbooks.py:1201 +#: cps/editbooks.py:1202 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "%(path)s dizini oluşturulamadı. (İzin reddedildi)" -#: cps/editbooks.py:1206 +#: cps/editbooks.py:1207 #, python-format msgid "Failed to store file %(file)s." msgstr "%(file)s dosyası kaydedilemedi." -#: cps/editbooks.py:1230 +#: cps/editbooks.py:1231 #, python-format msgid "File format %(ext)s added to %(book)s" msgstr "%(book)s kitabına %(ext)s dosya biçimi eklendi" @@ -652,204 +653,204 @@ msgstr "Google Drive kurulumu tamamlanmadı, Google Drive'ı devre dışı bıra 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." -#: cps/helper.py:84 +#: cps/helper.py:86 #, python-format 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:91 cps/tasks/convert.py:86 +#: cps/helper.py:93 cps/tasks/convert.py:86 #, 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ı" -#: cps/helper.py:96 +#: cps/helper.py:98 #, python-format msgid "%(format)s not found: %(fn)s" msgstr "%(format)s bulunamadı: %(fn)s" -#: cps/helper.py:101 cps/helper.py:226 cps/templates/detail.html:58 +#: cps/helper.py:103 cps/helper.py:228 cps/templates/detail.html:58 #, fuzzy msgid "Send to eReader" msgstr "Kindle'a gönder" -#: cps/helper.py:102 cps/helper.py:120 cps/helper.py:228 +#: cps/helper.py:104 cps/helper.py:122 cps/helper.py:230 #, fuzzy msgid "This Email has been sent via Calibre-Web." msgstr "Bu e-Posta Calibre-Web ile gönderilmiştir." -#: cps/helper.py:118 +#: cps/helper.py:120 #, fuzzy msgid "Calibre-Web Test Email" msgstr "Calibre-Web deneme e-Postası" -#: cps/helper.py:119 +#: cps/helper.py:121 #, fuzzy msgid "Test Email" msgstr "Deneme e-Postası" -#: cps/helper.py:136 +#: cps/helper.py:138 msgid "Get Started with Calibre-Web" msgstr "Calibre-Web'i Kullanmaya Başlayın" -#: cps/helper.py:141 +#: cps/helper.py:143 #, fuzzy, python-format msgid "Registration Email for user: %(name)s" msgstr "Kullanıcı Kayıt e-Postası: %(name)s" -#: cps/helper.py:152 cps/helper.py:158 +#: cps/helper.py:154 cps/helper.py:160 #, fuzzy, python-format msgid "Convert %(orig)s to %(format)s and send to eReader" msgstr "%(orig)s'dan %(format)s biçimine çevir ve Kindle'a gönder" -#: cps/helper.py:177 cps/helper.py:181 cps/helper.py:185 +#: cps/helper.py:179 cps/helper.py:183 cps/helper.py:187 #, fuzzy, python-format msgid "Send %(format)s to eReader" msgstr "%(format)s biçimlerini Kindle'a gönder" -#: cps/helper.py:225 +#: cps/helper.py:227 #, fuzzy, python-format msgid "%(book)s send to eReader" msgstr "Kindle'a gönder" -#: cps/helper.py:230 +#: cps/helper.py:232 msgid "The requested file could not be read. Maybe wrong permissions?" msgstr "İstenilen dosya okunamadı. Yanlış izinlerden kaynaklanabilir?" -#: cps/helper.py:345 +#: cps/helper.py:347 msgid "Read status could not set: {}" msgstr "" -#: cps/helper.py:368 +#: cps/helper.py:370 #, python-format msgid "Deleting bookfolder for book %(id)s failed, path has subfolders: %(path)s" msgstr "" -#: cps/helper.py:374 +#: cps/helper.py:376 #, python-format msgid "Deleting book %(id)s failed: %(message)s" msgstr "" -#: cps/helper.py:385 +#: cps/helper.py:387 #, python-format msgid "Deleting book %(id)s from database only, book path in database not valid: %(path)s" msgstr "" -#: cps/helper.py:450 +#: cps/helper.py:452 #, 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:522 cps/helper.py:531 +#: cps/helper.py:524 cps/helper.py:533 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "%(file)s dosyası Google Drive'da bulunamadı" -#: cps/helper.py:565 +#: cps/helper.py:567 #, 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:585 +#: cps/helper.py:587 msgid "Error in rename file in path: {}" msgstr "" -#: cps/helper.py:603 +#: cps/helper.py:605 #, python-format msgid "Book path %(path)s not found on Google Drive" msgstr "eKitap yolu %(path)s Google Drive'da bulunamadı" -#: cps/helper.py:668 +#: cps/helper.py:670 msgid "Found an existing account for this Email address" msgstr "" -#: cps/helper.py:676 +#: cps/helper.py:678 msgid "This username is already taken" msgstr "Bu kullanıcı adı zaten alındı" -#: cps/helper.py:688 +#: cps/helper.py:690 msgid "Invalid Email address format" msgstr "" -#: cps/helper.py:706 +#: cps/helper.py:710 msgid "Password doesn't comply with password validation rules" msgstr "" -#: cps/helper.py:855 +#: cps/helper.py:859 msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "" -#: cps/helper.py:865 +#: cps/helper.py:869 msgid "Error Downloading Cover" msgstr "" -#: cps/helper.py:868 +#: cps/helper.py:872 msgid "Cover Format Error" msgstr "" -#: cps/helper.py:871 +#: cps/helper.py:875 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "" -#: cps/helper.py:881 +#: cps/helper.py:885 msgid "Failed to create path for cover" msgstr "" -#: cps/helper.py:897 +#: cps/helper.py:901 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "" -#: cps/helper.py:908 +#: cps/helper.py:912 msgid "Only jpg/jpeg/png/webp/bmp files are supported as coverfile" msgstr "" -#: cps/helper.py:920 +#: cps/helper.py:924 msgid "Invalid cover file content" msgstr "" -#: cps/helper.py:924 +#: cps/helper.py:928 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "" -#: cps/helper.py:995 cps/helper.py:1183 +#: cps/helper.py:999 cps/helper.py:1156 #, fuzzy msgid "Cover" msgstr "Keşfet" -#: cps/helper.py:1032 +#: cps/helper.py:1016 msgid "Unrar binary file not found" msgstr "" -#: cps/helper.py:1043 +#: cps/helper.py:1027 msgid "Error executing UnRar" msgstr "" -#: cps/helper.py:1051 +#: cps/helper.py:1035 msgid "Could not find the specified directory" msgstr "" -#: cps/helper.py:1054 +#: cps/helper.py:1038 msgid "Please specify a directory, not a file" msgstr "" -#: cps/helper.py:1068 +#: cps/helper.py:1052 msgid "Calibre binaries not viable" msgstr "" -#: cps/helper.py:1077 +#: cps/helper.py:1061 #, python-format msgid "Missing calibre binaries: %(missing)s" msgstr "" -#: cps/helper.py:1079 +#: cps/helper.py:1063 #, python-format msgid "Missing executable permissions: %(missing)s" msgstr "" -#: cps/helper.py:1084 +#: cps/helper.py:1068 msgid "Error excecuting Calibre" msgstr "" -#: cps/helper.py:1185 cps/templates/admin.html:216 +#: cps/helper.py:1158 cps/templates/admin.html:216 msgid "Queue all books for metadata backup" msgstr "" @@ -933,7 +934,7 @@ msgstr "" #: cps/remotelogin.py:62 cps/templates/layout.html:67 #: cps/templates/layout.html:101 cps/templates/login.html:4 -#: cps/templates/login.html:21 cps/web.py:1333 +#: cps/templates/login.html:21 cps/web.py:1353 msgid "Login" msgstr "Giriş" @@ -949,7 +950,7 @@ msgstr "Token süresi doldu" msgid "Success! Please return to your device" msgstr "Başarılı! Lütfen cihazınıza dönün" -#: cps/render_template.py:42 cps/web.py:414 +#: cps/render_template.py:42 cps/web.py:418 msgid "Books" msgstr "eKitaplar" @@ -974,7 +975,7 @@ msgstr "" msgid "Show Downloaded Books" msgstr "" -#: cps/render_template.py:59 cps/templates/index.xml:33 cps/web.py:429 +#: cps/render_template.py:59 cps/templates/index.xml:33 cps/web.py:433 msgid "Top Rated Books" msgstr "" @@ -983,7 +984,7 @@ msgid "Show Top Rated Books" msgstr "" #: cps/render_template.py:62 cps/templates/index.xml:55 -#: cps/templates/index.xml:59 cps/web.py:750 +#: cps/templates/index.xml:59 cps/web.py:766 msgid "Read Books" msgstr "Okunanlar" @@ -993,7 +994,7 @@ msgid "Show Read and Unread" msgstr "Okunan ve okunmayanları göster" #: cps/render_template.py:66 cps/templates/index.xml:62 -#: cps/templates/index.xml:66 cps/web.py:753 +#: cps/templates/index.xml:66 cps/web.py:769 msgid "Unread Books" msgstr "Okunmamışlar" @@ -1011,7 +1012,7 @@ msgid "Show Random Books" msgstr "Rastgele Kitap Göster" #: cps/render_template.py:72 cps/templates/book_table.html:67 -#: cps/templates/index.xml:84 cps/web.py:1119 +#: cps/templates/index.xml:84 cps/web.py:1135 msgid "Categories" msgstr "Kategoriler" @@ -1022,7 +1023,7 @@ msgstr "Kategori seçimini göster" #: cps/render_template.py:75 cps/templates/book_edit.html:91 #: cps/templates/book_table.html:68 cps/templates/index.xml:91 -#: cps/templates/search_form.html:70 cps/web.py:1009 cps/web.py:1021 +#: cps/templates/search_form.html:70 cps/web.py:1025 cps/web.py:1037 msgid "Series" msgstr "Seriler" @@ -1042,7 +1043,7 @@ msgid "Show Author Section" msgstr "Yazar seçimini göster" #: cps/render_template.py:82 cps/templates/book_table.html:72 -#: cps/templates/index.xml:77 cps/web.py:977 +#: cps/templates/index.xml:77 cps/web.py:993 msgid "Publishers" msgstr "Yayıncılar" @@ -1053,7 +1054,7 @@ msgstr "Yayıncı seçimini göster" #: cps/render_template.py:85 cps/templates/book_table.html:70 #: cps/templates/index.xml:98 cps/templates/search_form.html:108 -#: cps/web.py:1091 +#: cps/web.py:1107 msgid "Languages" msgstr "Diller" @@ -1080,7 +1081,7 @@ msgstr "Biçimler" msgid "Show File Formats Section" msgstr "Dosya biçimi seçimini göster" -#: cps/render_template.py:96 cps/web.py:776 +#: cps/render_template.py:96 cps/web.py:792 msgid "Archived Books" msgstr "" @@ -1089,7 +1090,7 @@ msgstr "" msgid "Show Archived Books" msgstr "Son eKitapları göster" -#: cps/render_template.py:101 cps/web.py:807 +#: cps/render_template.py:101 cps/web.py:823 msgid "Books List" msgstr "" @@ -1313,172 +1314,177 @@ msgstr "Yeni bir güncelleme mevcut. Son sürüme güncellemek için aşağıdak msgid "No release information available" msgstr "Sürüm bilgisi mevcut değil" -#: cps/templates/index.html:6 cps/web.py:441 +#: cps/templates/index.html:6 cps/web.py:445 msgid "Discover (Random Books)" msgstr "Keşfet (Rastgele)" -#: cps/web.py:477 +#: cps/web.py:481 msgid "Hot Books (Most Downloaded)" msgstr "" -#: cps/web.py:508 +#: cps/web.py:512 #, python-format msgid "Downloaded books by %(user)s" msgstr "" -#: cps/web.py:541 +#: cps/web.py:545 #, python-format msgid "Author: %(name)s" msgstr "Yazar: %(name)s" -#: cps/web.py:577 +#: cps/web.py:581 #, python-format msgid "Publisher: %(name)s" msgstr "Yayınevi: %(name)s" -#: cps/web.py:605 +#: cps/web.py:609 #, python-format msgid "Series: %(serie)s" msgstr "Seri: %(serie)s" -#: cps/web.py:620 +#: cps/web.py:623 msgid "Rating: None" msgstr "" -#: cps/web.py:629 +#: cps/web.py:632 #, python-format msgid "Rating: %(rating)s stars" msgstr "Değerlendirme: %(rating)s yıldız" -#: cps/web.py:645 +#: cps/web.py:663 #, python-format msgid "File format: %(format)s" msgstr "Biçim: %(format)s" -#: cps/web.py:682 +#: cps/web.py:698 #, python-format msgid "Category: %(name)s" msgstr "Kategori: %(name)s" -#: cps/web.py:711 +#: cps/web.py:727 #, python-format msgid "Language: %(name)s" msgstr "Dil: %(name)s" -#: cps/templates/admin.html:16 cps/web.py:949 +#: cps/templates/admin.html:16 cps/web.py:965 msgid "Downloads" msgstr "" -#: cps/web.py:1051 +#: cps/web.py:1067 msgid "Ratings list" msgstr "Değerlendirme listesi" -#: cps/web.py:1078 +#: cps/web.py:1094 msgid "File formats list" msgstr "Biçim listesi" -#: cps/web.py:1233 +#: cps/web.py:1249 #, fuzzy msgid "Please configure the SMTP mail settings first..." msgstr "Lütfen önce SMTP e-posta ayarlarını ayarlayın..." -#: cps/web.py:1240 +#: cps/web.py:1256 #, python-format msgid "Success! Book queued for sending to %(eReadermail)s" msgstr "%(eReadermail)s'a gönderilmek üzere başarıyla sıraya alındı" -#: cps/web.py:1243 +#: cps/web.py:1259 #, python-format msgid "Oops! There was an error sending book: %(res)s" msgstr "" -#: cps/web.py:1245 +#: cps/web.py:1261 msgid "Oops! Please update your profile with a valid eReader Email." msgstr "" -#: cps/web.py:1261 +#: cps/web.py:1277 msgid "Please wait one minute to register next user" msgstr "" #: cps/templates/layout.html:68 cps/templates/layout.html:102 -#: cps/templates/login.html:27 cps/templates/register.html:17 cps/web.py:1262 -#: cps/web.py:1267 cps/web.py:1271 cps/web.py:1277 cps/web.py:1297 -#: cps/web.py:1301 cps/web.py:1314 cps/web.py:1317 +#: cps/templates/login.html:27 cps/templates/register.html:17 cps/web.py:1278 +#: cps/web.py:1282 cps/web.py:1287 cps/web.py:1291 cps/web.py:1297 +#: cps/web.py:1317 cps/web.py:1321 cps/web.py:1334 cps/web.py:1337 msgid "Register" msgstr "Kayıt ol" -#: cps/web.py:1266 cps/web.py:1313 +#: cps/web.py:1281 cps/web.py:1385 +#, fuzzy +msgid "Connection error to limiter backend, please contact your administrator" +msgstr "E-Posta sunucusu ayarlanmadı, lütfen yöneticinizle iletişime geçin!" + +#: cps/web.py:1286 cps/web.py:1333 msgid "Oops! Email server is not configured, please contact your administrator." msgstr "E-Posta sunucusu ayarlanmadı, lütfen yöneticinizle iletişime geçin!" -#: cps/web.py:1299 +#: cps/web.py:1319 msgid "Oops! Your Email is not allowed." msgstr "E-posta adresinizle kaydolunmasına izin verilmiyor" -#: cps/web.py:1302 +#: cps/web.py:1322 msgid "Success! Confirmation Email has been sent." msgstr "Onay e-Postası hesabınıza gönderildi." -#: cps/web.py:1348 cps/web.py:1367 +#: cps/web.py:1368 cps/web.py:1391 #, fuzzy msgid "Cannot activate LDAP authentication" msgstr "LDAP Kimlik Doğrulaması etkinleştirilemiyor" -#: cps/web.py:1361 +#: cps/web.py:1381 msgid "Please wait one minute before next login" msgstr "" -#: cps/web.py:1376 +#: cps/web.py:1400 #, fuzzy, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "giriş yaptınız: '%(nickname)s'" -#: cps/web.py:1383 +#: cps/web.py:1407 #, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgstr "" -#: cps/web.py:1388 +#: cps/web.py:1412 #, python-format msgid "Could not login: %(message)s" msgstr "" -#: cps/web.py:1392 cps/web.py:1417 +#: cps/web.py:1416 cps/web.py:1441 #, fuzzy msgid "Wrong Username or Password" msgstr "Yanlış Kullanıcı adı ya da Şifre" -#: cps/web.py:1399 +#: cps/web.py:1423 #, fuzzy msgid "New Password was sent to your email address" msgstr "Yeni şifre e-Posta adresinize gönderildi" -#: cps/web.py:1403 +#: cps/web.py:1427 #, fuzzy msgid "An unknown error occurred. Please try again later." msgstr "Bilinmeyen bir hata oluştu. Lütfen daha sonra tekrar deneyiniz." -#: cps/web.py:1405 +#: cps/web.py:1429 #, fuzzy msgid "Please enter valid username to reset password" msgstr "Şifrenizi sıfırlayabilmek için lütfen geçerli bir kullanıcı adı giriniz" -#: cps/web.py:1413 +#: cps/web.py:1437 #, fuzzy, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "giriş yaptınız: '%(nickname)s'" -#: cps/web.py:1471 cps/web.py:1521 +#: cps/web.py:1495 cps/web.py:1545 #, python-format msgid "%(name)s's Profile" msgstr "%(name)s Profili" -#: cps/web.py:1487 +#: cps/web.py:1511 #, fuzzy msgid "Success! Profile Updated" msgstr "Profil güncellendi" -#: cps/web.py:1491 +#: cps/web.py:1515 #, fuzzy msgid "Oops! An account already exists for this Email." msgstr "Bu e-posta adresi için bir hesap mevcut." @@ -1492,41 +1498,41 @@ msgstr "" msgid "%(book)s send to E-Reader" msgstr "Kindle'a gönder" -#: cps/tasks/convert.py:166 +#: cps/tasks/convert.py:167 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "" -#: cps/tasks/convert.py:200 +#: cps/tasks/convert.py:201 #, python-format msgid "%(format)s format not found on disk" msgstr "" -#: cps/tasks/convert.py:204 +#: cps/tasks/convert.py:205 msgid "Ebook converter failed with unknown error" msgstr "" -#: cps/tasks/convert.py:223 +#: cps/tasks/convert.py:224 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "" -#: cps/tasks/convert.py:244 +#: cps/tasks/convert.py:245 #, python-format msgid "Converted file not found or more than one file in folder %(folder)s" msgstr "" -#: cps/tasks/convert.py:279 +#: cps/tasks/convert.py:287 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "eKitap-Dönüştürücü hatası: %(error)s" -#: cps/tasks/convert.py:302 +#: cps/tasks/convert.py:310 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "" -#: cps/tasks/convert.py:307 +#: cps/tasks/convert.py:315 msgid "Convert" msgstr "" @@ -1534,7 +1540,7 @@ msgstr "" msgid "Reconnecting Calibre database" msgstr "" -#: cps/tasks/mail.py:269 +#: cps/tasks/mail.py:278 msgid "E-mail" msgstr "" @@ -1813,12 +1819,12 @@ 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:414 -#: cps/templates/config_view_edit.html:175 cps/templates/modal_dialogs.html:64 -#: cps/templates/modal_dialogs.html:99 cps/templates/modal_dialogs.html:117 -#: cps/templates/modal_dialogs.html:135 cps/templates/schedule_edit.html:45 -#: cps/templates/shelf_edit.html:27 cps/templates/tasks.html:46 -#: cps/templates/user_edit.html:144 +#: cps/templates/config_db.html:66 cps/templates/config_edit.html:428 +#: 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 +#: cps/templates/schedule_edit.html:45 cps/templates/shelf_edit.html:27 +#: cps/templates/tasks.html:46 cps/templates/user_edit.html:144 msgid "Cancel" msgstr "" @@ -1999,7 +2005,7 @@ msgid "Fetch Metadata" msgstr "" #: cps/templates/book_edit.html:213 cps/templates/config_db.html:65 -#: cps/templates/config_edit.html:413 cps/templates/config_view_edit.html:174 +#: cps/templates/config_edit.html:427 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 @@ -2167,7 +2173,7 @@ msgid "Location of Calibre Database" msgstr "" #: cps/templates/config_db.html:21 -msgid "Separate Book files from Library (Highly experimental, might not work at all)" +msgid "Separate Book Files from Library" msgstr "" #: cps/templates/config_db.html:34 @@ -2251,7 +2257,7 @@ msgid "Convert non-English characters in title and author while saving to disk" msgstr "" #: cps/templates/config_edit.html:108 -msgid "Embed Metadata to Ebook File on Download and Conversion (needs Calibre/Kepubify binaries)" +msgid "Embed Metadata to Ebook File on Download/Conversion/e-mail (needs Calibre/Kepubify binaries)" msgstr "" #: cps/templates/config_edit.html:112 @@ -2474,40 +2480,52 @@ msgstr "OAuth Ayarları" msgid "Limit failed login attempts" msgstr "" -#: cps/templates/config_edit.html:376 +#: cps/templates/config_edit.html:377 +msgid "Configure Backend for Limiter" +msgstr "" + +#: cps/templates/config_edit.html:381 +msgid "Options for Limiter" +msgstr "" + +#: cps/templates/config_edit.html:386 msgid "Session protection" msgstr "" -#: cps/templates/config_edit.html:378 +#: cps/templates/config_edit.html:388 msgid "Basic" msgstr "" -#: cps/templates/config_edit.html:379 +#: cps/templates/config_edit.html:389 msgid "Strong" msgstr "" -#: cps/templates/config_edit.html:384 +#: cps/templates/config_edit.html:394 #, fuzzy msgid "User Password policy" msgstr "Kullanıcı şifresini sıfırla" -#: cps/templates/config_edit.html:388 +#: cps/templates/config_edit.html:398 msgid "Minimum password length" msgstr "" -#: cps/templates/config_edit.html:393 +#: cps/templates/config_edit.html:403 msgid "Enforce number" msgstr "" -#: cps/templates/config_edit.html:397 +#: cps/templates/config_edit.html:407 msgid "Enforce lowercase characters" msgstr "" -#: cps/templates/config_edit.html:401 +#: cps/templates/config_edit.html:411 msgid "Enforce uppercase characters" msgstr "" -#: cps/templates/config_edit.html:405 +#: cps/templates/config_edit.html:415 +msgid "Enforce characters (needed For Chinese/Japanese/Korean Characters)" +msgstr "" + +#: cps/templates/config_edit.html:419 msgid "Enforce special characters" msgstr "" @@ -2630,47 +2648,47 @@ msgstr "" msgid "Published" msgstr "" -#: cps/templates/detail.html:250 cps/templates/listenmp3.html:158 +#: cps/templates/detail.html:251 cps/templates/listenmp3.html:158 msgid "Mark As Unread" msgstr "Okunmadı olarak işaretle" -#: cps/templates/detail.html:251 cps/templates/listenmp3.html:158 +#: cps/templates/detail.html:252 cps/templates/listenmp3.html:158 msgid "Mark As Read" msgstr "Okundu olarak işaretle" -#: cps/templates/detail.html:253 cps/templates/listenmp3.html:159 +#: cps/templates/detail.html:254 cps/templates/listenmp3.html:159 msgid "Read" msgstr "Okudum" -#: cps/templates/detail.html:263 cps/templates/listenmp3.html:166 +#: cps/templates/detail.html:264 cps/templates/listenmp3.html:166 msgid "Restore from archive" msgstr "" -#: cps/templates/detail.html:264 cps/templates/listenmp3.html:166 +#: cps/templates/detail.html:265 cps/templates/listenmp3.html:166 msgid "Add to archive" msgstr "" -#: cps/templates/detail.html:266 cps/templates/listenmp3.html:167 +#: cps/templates/detail.html:267 cps/templates/listenmp3.html:167 msgid "Archived" msgstr "" -#: cps/templates/detail.html:277 cps/templates/listenmp3.html:177 +#: cps/templates/detail.html:278 cps/templates/listenmp3.html:177 msgid "Description:" msgstr "Açıklama:" -#: cps/templates/detail.html:292 cps/templates/listenmp3.html:190 +#: cps/templates/detail.html:293 cps/templates/listenmp3.html:190 #: cps/templates/search.html:16 msgid "Add to shelf" msgstr "Kitaplığa ekle" -#: cps/templates/detail.html:304 cps/templates/detail.html:323 +#: cps/templates/detail.html:305 cps/templates/detail.html:324 #: cps/templates/feed.xml:81 cps/templates/layout.html:154 #: cps/templates/listenmp3.html:201 cps/templates/listenmp3.html:218 #: cps/templates/search.html:22 msgid "(Public)" msgstr "" -#: cps/templates/detail.html:339 +#: cps/templates/detail.html:340 msgid "Edit Metadata" msgstr "" diff --git a/cps/translations/uk/LC_MESSAGES/messages.mo b/cps/translations/uk/LC_MESSAGES/messages.mo index 1f873fc1..7fa98ee3 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 ddd15d3d..fa0ee5c0 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-02-10 10:06+0100\n" +"POT-Creation-Date: 2024-04-27 07:20+0200\n" "PO-Revision-Date: 2017-04-30 00:47+0300\n" "Last-Translator: ABIS Team \n" "Language: uk\n" @@ -21,497 +21,497 @@ msgstr "" msgid "Statistics" msgstr "Статистика" -#: cps/admin.py:149 +#: cps/admin.py:150 #, fuzzy msgid "Server restarted, please reload page." msgstr "Сервер перезавантажено, будь-ласка, перезавантажте сторінку" -#: cps/admin.py:151 +#: cps/admin.py:152 #, fuzzy msgid "Performing Server shutdown, please close window." msgstr "Виконується зупинка серверу, будь-ласка, закрийте вікно" -#: cps/admin.py:159 +#: cps/admin.py:160 msgid "Success! Database Reconnected" msgstr "" -#: cps/admin.py:162 +#: cps/admin.py:163 msgid "Unknown command" msgstr "Невідома команда" -#: cps/admin.py:173 +#: cps/admin.py:174 msgid "Success! Books queued for Metadata Backup, please check Tasks for result" msgstr "" -#: cps/admin.py:206 cps/editbooks.py:589 cps/editbooks.py:591 -#: cps/editbooks.py:629 cps/editbooks.py:646 cps/editbooks.py:1262 +#: cps/admin.py:207 cps/editbooks.py:590 cps/editbooks.py:592 +#: cps/editbooks.py:630 cps/editbooks.py:647 cps/editbooks.py:1263 #: cps/updater.py:613 cps/uploader.py:93 cps/uploader.py:102 msgid "Unknown" msgstr "Невідомий" -#: cps/admin.py:231 +#: cps/admin.py:232 msgid "Admin page" msgstr "Сторінка адміністратора" -#: cps/admin.py:251 +#: cps/admin.py:252 msgid "Basic Configuration" msgstr "Настройки сервера" -#: cps/admin.py:289 +#: cps/admin.py:290 msgid "UI Configuration" msgstr "Конфігурація інтерфейсу" -#: cps/admin.py:323 cps/templates/admin.html:51 +#: cps/admin.py:324 cps/templates/admin.html:51 #, fuzzy msgid "Edit Users" msgstr "Керування сервером" -#: cps/admin.py:367 cps/opds.py:506 cps/templates/grid.html:14 +#: cps/admin.py:368 cps/opds.py:506 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "Всі" -#: cps/admin.py:394 cps/admin.py:1405 +#: cps/admin.py:395 cps/admin.py:1417 msgid "User not found" msgstr "Користувача не знайдено" -#: cps/admin.py:408 +#: cps/admin.py:409 msgid "{} users deleted successfully" msgstr "{} користувачі видалені успішно" -#: cps/admin.py:431 cps/templates/config_view_edit.html:133 +#: cps/admin.py:432 cps/templates/config_view_edit.html:133 #: cps/templates/user_edit.html:45 cps/templates/user_table.html:81 msgid "Show All" msgstr "Показати всі" -#: cps/admin.py:452 cps/admin.py:458 +#: cps/admin.py:453 cps/admin.py:459 msgid "Malformed request" msgstr "" -#: cps/admin.py:470 cps/admin.py:2033 +#: cps/admin.py:471 cps/admin.py:2048 msgid "Guest Name can't be changed" msgstr "" -#: cps/admin.py:482 +#: cps/admin.py:483 msgid "Guest can't have this role" msgstr "" -#: cps/admin.py:494 cps/admin.py:1987 +#: cps/admin.py:495 cps/admin.py:2002 msgid "No admin user remaining, can't remove admin role" msgstr "" -#: cps/admin.py:498 cps/admin.py:512 +#: cps/admin.py:499 cps/admin.py:513 msgid "Value has to be true or false" msgstr "" -#: cps/admin.py:500 +#: cps/admin.py:501 msgid "Invalid role" msgstr "Не правильна роль" -#: cps/admin.py:504 +#: cps/admin.py:505 msgid "Guest can't have this view" msgstr "" -#: cps/admin.py:514 +#: cps/admin.py:515 msgid "Invalid view" msgstr "" -#: cps/admin.py:517 +#: cps/admin.py:518 msgid "Guest's Locale is determined automatically and can't be set" msgstr "" -#: cps/admin.py:521 +#: cps/admin.py:522 msgid "No Valid Locale Given" msgstr "" -#: cps/admin.py:532 +#: cps/admin.py:533 msgid "No Valid Book Language Given" msgstr "" -#: cps/admin.py:534 cps/editbooks.py:455 +#: cps/admin.py:535 cps/editbooks.py:456 msgid "Parameter not found" msgstr "" -#: cps/admin.py:571 +#: cps/admin.py:572 msgid "Invalid Read Column" msgstr "" -#: cps/admin.py:577 +#: cps/admin.py:578 msgid "Invalid Restricted Column" msgstr "" -#: cps/admin.py:597 cps/admin.py:1858 +#: cps/admin.py:598 cps/admin.py:1873 msgid "Calibre-Web configuration updated" msgstr "" -#: cps/admin.py:609 +#: cps/admin.py:610 msgid "Do you really want to delete the Kobo Token?" msgstr "" -#: cps/admin.py:611 +#: cps/admin.py:612 msgid "Do you really want to delete this domain?" msgstr "" -#: cps/admin.py:613 +#: cps/admin.py:614 msgid "Do you really want to delete this user?" msgstr "" -#: cps/admin.py:615 +#: cps/admin.py:616 msgid "Are you sure you want to delete this shelf?" msgstr "Ви справді хочете видалити книжкову полицю?" -#: cps/admin.py:617 +#: cps/admin.py:618 #, fuzzy msgid "Are you sure you want to change locales of selected user(s)?" msgstr "Ви справді хочете видалити книжкову полицю?" -#: cps/admin.py:619 +#: cps/admin.py:620 msgid "Are you sure you want to change visible book languages for selected user(s)?" msgstr "" -#: cps/admin.py:621 +#: cps/admin.py:622 msgid "Are you sure you want to change the selected role for the selected user(s)?" msgstr "" -#: cps/admin.py:623 +#: cps/admin.py:624 #, fuzzy msgid "Are you sure you want to change the selected restrictions for the selected user(s)?" msgstr "Ви справді хочете видалити книжкову полицю?" -#: cps/admin.py:625 +#: cps/admin.py:626 msgid "Are you sure you want to change the selected visibility restrictions for the selected user(s)?" msgstr "" -#: cps/admin.py:628 +#: cps/admin.py:629 #, fuzzy msgid "Are you sure you want to change shelf sync behavior for the selected user(s)?" msgstr "Ви справді хочете видалити книжкову полицю?" -#: cps/admin.py:630 +#: cps/admin.py:631 #, fuzzy msgid "Are you sure you want to change Calibre library location?" msgstr "Ви справді хочете видалити книжкову полицю?" -#: cps/admin.py:632 +#: cps/admin.py:633 msgid "Calibre-Web will search for updated Covers and update Cover Thumbnails, this may take a while?" msgstr "" -#: cps/admin.py:635 +#: cps/admin.py:636 msgid "Are you sure you want delete Calibre-Web's sync database to force a full sync with your Kobo Reader?" msgstr "" -#: cps/admin.py:878 cps/admin.py:884 cps/admin.py:894 cps/admin.py:904 +#: cps/admin.py:879 cps/admin.py:885 cps/admin.py:895 cps/admin.py:905 #: cps/templates/modal_dialogs.html:29 cps/templates/user_table.html:41 #: cps/templates/user_table.html:58 msgid "Deny" msgstr "Заборонити" -#: cps/admin.py:880 cps/admin.py:886 cps/admin.py:896 cps/admin.py:906 +#: cps/admin.py:881 cps/admin.py:887 cps/admin.py:897 cps/admin.py:907 #: cps/templates/modal_dialogs.html:28 cps/templates/user_table.html:44 #: cps/templates/user_table.html:61 msgid "Allow" msgstr "Дозволити" -#: cps/admin.py:921 +#: cps/admin.py:940 msgid "{} sync entries deleted" msgstr "" -#: cps/admin.py:969 +#: cps/admin.py:981 msgid "Tag not found" msgstr "Тег не знайдено" -#: cps/admin.py:981 +#: cps/admin.py:993 msgid "Invalid Action" msgstr "" -#: cps/admin.py:1111 +#: cps/admin.py:1123 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "" -#: cps/admin.py:1156 +#: cps/admin.py:1168 msgid "Logfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1162 +#: cps/admin.py:1174 msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1196 +#: cps/admin.py:1208 msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgstr "" -#: cps/admin.py:1202 +#: cps/admin.py:1214 msgid "Please Enter a LDAP Service Account and Password" msgstr "" -#: cps/admin.py:1205 +#: cps/admin.py:1217 msgid "Please Enter a LDAP Service Account" msgstr "" -#: cps/admin.py:1210 +#: cps/admin.py:1222 #, python-format msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1212 +#: cps/admin.py:1224 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1216 +#: cps/admin.py:1228 #, python-format msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1218 +#: cps/admin.py:1230 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1225 +#: cps/admin.py:1237 #, python-format msgid "LDAP Member User Filter needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1227 +#: cps/admin.py:1239 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1234 +#: cps/admin.py:1246 msgid "LDAP CACertificate, Certificate or Key Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1265 cps/templates/admin.html:53 +#: cps/admin.py:1277 cps/templates/admin.html:53 msgid "Add New User" msgstr "" -#: cps/admin.py:1274 cps/templates/admin.html:100 +#: cps/admin.py:1286 cps/templates/admin.html:100 msgid "Edit Email Server Settings" msgstr "Змінити налаштування SMTP" -#: cps/admin.py:1293 +#: cps/admin.py:1305 msgid "Success! Gmail Account Verified." msgstr "" -#: cps/admin.py:1313 cps/admin.py:1316 cps/admin.py:1698 cps/admin.py:1842 -#: cps/admin.py:1940 cps/admin.py:2061 cps/editbooks.py:241 -#: cps/editbooks.py:317 cps/editbooks.py:1224 cps/shelf.py:90 cps/shelf.py:150 +#: cps/admin.py:1325 cps/admin.py:1328 cps/admin.py:1710 cps/admin.py:1857 +#: cps/admin.py:1955 cps/admin.py:2076 cps/editbooks.py:242 +#: cps/editbooks.py:318 cps/editbooks.py:1225 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:149 cps/web.py:1496 +#: cps/shelf.py:468 cps/tasks/convert.py:150 cps/web.py:1520 #, python-format msgid "Oops! Database Error: %(error)s." msgstr "" -#: cps/admin.py:1323 +#: cps/admin.py:1335 #, python-format msgid "Test e-mail queued for sending to %(email)s, please check Tasks for result" msgstr "" -#: cps/admin.py:1326 +#: cps/admin.py:1338 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "" -#: cps/admin.py:1328 +#: cps/admin.py:1340 msgid "Please configure your e-mail address first..." msgstr "" -#: cps/admin.py:1330 +#: cps/admin.py:1342 msgid "Email Server Settings updated" msgstr "" -#: cps/admin.py:1353 cps/templates/admin.html:195 +#: cps/admin.py:1365 cps/templates/admin.html:195 msgid "Edit Scheduled Tasks Settings" msgstr "" -#: cps/admin.py:1365 +#: cps/admin.py:1377 msgid "Invalid start time for task specified" msgstr "" -#: cps/admin.py:1370 +#: cps/admin.py:1382 msgid "Invalid duration for task specified" msgstr "" -#: cps/admin.py:1380 +#: cps/admin.py:1392 msgid "Scheduled tasks settings updated" msgstr "" -#: cps/admin.py:1390 cps/admin.py:1439 cps/admin.py:2057 cps/web.py:1296 +#: cps/admin.py:1402 cps/admin.py:1451 cps/admin.py:2072 cps/web.py:1316 msgid "Oops! An unknown error occurred. Please try again later." msgstr "" -#: cps/admin.py:1394 +#: cps/admin.py:1406 msgid "Settings DB is not Writeable" msgstr "" -#: cps/admin.py:1424 cps/admin.py:2049 +#: cps/admin.py:1436 cps/admin.py:2064 #, python-format msgid "Edit User %(nick)s" msgstr "Змінити користувача %(nick)s" -#: cps/admin.py:1436 +#: cps/admin.py:1448 #, python-format msgid "Success! Password for user %(user)s reset" msgstr "" -#: cps/admin.py:1442 +#: cps/admin.py:1454 #, fuzzy msgid "Oops! Please configure the SMTP mail settings." msgstr "Будь-ласка, спочатку сконфігуруйте параметри SMTP" -#: cps/admin.py:1453 +#: cps/admin.py:1465 msgid "Logfile viewer" msgstr "" -#: cps/admin.py:1519 +#: cps/admin.py:1531 msgid "Requesting update package" msgstr "Перевірка оновлень" -#: cps/admin.py:1520 +#: cps/admin.py:1532 msgid "Downloading update package" msgstr "Завантаження оновлень" -#: cps/admin.py:1521 +#: cps/admin.py:1533 msgid "Unzipping update package" msgstr "Розпакування оновлення" -#: cps/admin.py:1522 +#: cps/admin.py:1534 msgid "Replacing files" msgstr "Заміна файлів" -#: cps/admin.py:1523 +#: cps/admin.py:1535 msgid "Database connections are closed" msgstr "З'єднання з базою даних закрите" -#: cps/admin.py:1524 +#: cps/admin.py:1536 msgid "Stopping server" msgstr "Сервер зупиняється" -#: cps/admin.py:1525 +#: cps/admin.py:1537 msgid "Update finished, please press okay and reload page" msgstr "Оновлення встановлені, натисніть ok і перезавантажте сторінку" -#: cps/admin.py:1526 cps/admin.py:1527 cps/admin.py:1528 cps/admin.py:1529 -#: cps/admin.py:1530 cps/admin.py:1531 +#: cps/admin.py:1538 cps/admin.py:1539 cps/admin.py:1540 cps/admin.py:1541 +#: cps/admin.py:1542 cps/admin.py:1543 msgid "Update failed:" msgstr "Оновлення неуспішне:" -#: cps/admin.py:1526 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 +#: cps/admin.py:1538 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 msgid "HTTP Error" msgstr "HTTP помилка" -#: cps/admin.py:1527 cps/updater.py:391 cps/updater.py:628 +#: cps/admin.py:1539 cps/updater.py:391 cps/updater.py:628 msgid "Connection error" msgstr "Помилка зʼєднання" -#: cps/admin.py:1528 cps/updater.py:393 cps/updater.py:630 +#: cps/admin.py:1540 cps/updater.py:393 cps/updater.py:630 msgid "Timeout while establishing connection" msgstr "" -#: cps/admin.py:1529 cps/updater.py:395 cps/updater.py:632 +#: cps/admin.py:1541 cps/updater.py:395 cps/updater.py:632 msgid "General error" msgstr "Помилка" -#: cps/admin.py:1530 +#: cps/admin.py:1542 msgid "Update file could not be saved in temp dir" msgstr "" -#: cps/admin.py:1531 +#: cps/admin.py:1543 msgid "Files could not be replaced during update" msgstr "" -#: cps/admin.py:1555 +#: cps/admin.py:1567 msgid "Failed to extract at least One LDAP User" msgstr "" -#: cps/admin.py:1600 +#: cps/admin.py:1612 msgid "Failed to Create at Least One LDAP User" msgstr "" -#: cps/admin.py:1613 +#: cps/admin.py:1625 #, python-format msgid "Error: %(ldaperror)s" msgstr "" -#: cps/admin.py:1617 +#: cps/admin.py:1629 msgid "Error: No user returned in response of LDAP server" msgstr "" -#: cps/admin.py:1650 +#: cps/admin.py:1662 msgid "At Least One LDAP User Not Found in Database" msgstr "" -#: cps/admin.py:1652 +#: cps/admin.py:1664 msgid "{} User Successfully Imported" msgstr "" -#: cps/admin.py:1710 +#: cps/admin.py:1722 msgid "DB Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1730 +#: cps/admin.py:1742 msgid "DB is not Writeable" msgstr "" -#: cps/admin.py:1746 +#: cps/admin.py:1758 msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1750 +#: cps/admin.py:1762 msgid "Certfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1829 +#: cps/admin.py:1842 msgid "Password length has to be between 1 and 40" msgstr "" -#: cps/admin.py:1881 +#: cps/admin.py:1896 #, fuzzy msgid "Database Settings updated" msgstr "З'єднання з базою даних закрите" -#: cps/admin.py:1889 +#: cps/admin.py:1904 #, fuzzy msgid "Database Configuration" msgstr "Особливі налаштування" -#: cps/admin.py:1904 cps/web.py:1270 +#: cps/admin.py:1919 cps/web.py:1290 msgid "Oops! Please complete all fields." msgstr "Будь-ласка, заповніть всі поля!" -#: cps/admin.py:1913 +#: cps/admin.py:1928 msgid "E-mail is not from valid domain" msgstr "" -#: cps/admin.py:1919 +#: cps/admin.py:1934 msgid "Add new user" msgstr "Додати користувача" -#: cps/admin.py:1930 +#: cps/admin.py:1945 #, python-format msgid "User '%(user)s' created" msgstr "Користувач '%(user)s' додан" -#: cps/admin.py:1936 +#: cps/admin.py:1951 msgid "Oops! An account already exists for this Email. or name." msgstr "" -#: cps/admin.py:1966 +#: cps/admin.py:1981 #, python-format msgid "User '%(nick)s' deleted" msgstr "Користувача '%(nick)s' видалено" -#: cps/admin.py:1969 +#: cps/admin.py:1984 msgid "Can't delete Guest User" msgstr "" -#: cps/admin.py:1972 +#: cps/admin.py:1987 msgid "No admin user remaining, can't delete user" msgstr "" -#: cps/admin.py:2027 cps/web.py:1445 +#: cps/admin.py:2042 cps/web.py:1469 msgid "Email can't be empty and has to be a valid Email" msgstr "" -#: cps/admin.py:2053 +#: cps/admin.py:2068 #, python-format msgid "User '%(nick)s' updated" msgstr "Користувача '%(nick)s' оновлено" @@ -524,122 +524,123 @@ msgstr "не встановлено" msgid "Execution permissions missing" msgstr "" -#: cps/db.py:752 cps/search.py:137 cps/web.py:731 +#: cps/db.py:752 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:993 cps/templates/config_edit.html:208 +#: cps/db.py:992 cps/templates/config_edit.html:208 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 -#: cps/web.py:558 cps/web.py:592 cps/web.py:665 cps/web.py:692 cps/web.py:973 -#: cps/web.py:1003 cps/web.py:1048 cps/web.py:1076 cps/web.py:1115 +#: 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 +#: cps/web.py:1131 msgid "None" msgstr "Ні" -#: cps/editbooks.py:122 cps/editbooks.py:910 cps/web.py:525 cps/web.py:1537 -#: cps/web.py:1581 cps/web.py:1626 +#: cps/editbooks.py:123 cps/editbooks.py:911 cps/web.py:529 cps/web.py:1561 +#: cps/web.py:1605 cps/web.py:1650 msgid "Oops! Selected book is unavailable. File does not exist or is not accessible" msgstr "Неможливо відкрити книгу. Файл не існує або немає доступу." -#: cps/editbooks.py:166 cps/editbooks.py:1245 +#: cps/editbooks.py:167 cps/editbooks.py:1246 msgid "User has no rights to upload cover" msgstr "" -#: cps/editbooks.py:186 cps/editbooks.py:731 +#: cps/editbooks.py:187 cps/editbooks.py:732 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "" -#: cps/editbooks.py:228 +#: cps/editbooks.py:229 msgid "Metadata successfully updated" msgstr "" -#: cps/editbooks.py:246 +#: cps/editbooks.py:247 msgid "Error editing book: {}" msgstr "" -#: cps/editbooks.py:303 +#: cps/editbooks.py:304 #, python-format msgid "File %(file)s uploaded" msgstr "" -#: cps/editbooks.py:331 +#: cps/editbooks.py:332 msgid "Source or destination format for conversion missing" msgstr "" -#: cps/editbooks.py:339 +#: cps/editbooks.py:340 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "" -#: cps/editbooks.py:343 +#: cps/editbooks.py:344 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "" -#: cps/editbooks.py:650 +#: cps/editbooks.py:651 msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgstr "" -#: cps/editbooks.py:705 cps/editbooks.py:1037 +#: cps/editbooks.py:706 cps/editbooks.py:1038 #, python-format msgid "'%(langname)s' is not a valid language" msgstr "" -#: cps/editbooks.py:743 cps/editbooks.py:1185 +#: cps/editbooks.py:744 cps/editbooks.py:1186 #, python-format msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgstr "" -#: cps/editbooks.py:747 cps/editbooks.py:1189 +#: cps/editbooks.py:748 cps/editbooks.py:1190 msgid "File to be uploaded must have an extension" msgstr "Завантажувальний файл повинен мати розширення" -#: cps/editbooks.py:755 +#: cps/editbooks.py:756 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "" -#: cps/editbooks.py:775 +#: cps/editbooks.py:776 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "" -#: cps/editbooks.py:832 cps/editbooks.py:834 +#: cps/editbooks.py:833 cps/editbooks.py:835 msgid "Book Format Successfully Deleted" msgstr "" -#: cps/editbooks.py:841 cps/editbooks.py:843 +#: cps/editbooks.py:842 cps/editbooks.py:844 msgid "Book Successfully Deleted" msgstr "" -#: cps/editbooks.py:895 +#: cps/editbooks.py:896 msgid "You are missing permissions to delete books" msgstr "" -#: cps/editbooks.py:945 +#: cps/editbooks.py:946 msgid "edit metadata" msgstr "змінити метадані" -#: cps/editbooks.py:994 +#: cps/editbooks.py:995 #, python-format msgid "%(seriesindex)s is not a valid number, skipping" msgstr "" -#: cps/editbooks.py:1180 +#: cps/editbooks.py:1181 msgid "User has no rights to upload additional file formats" msgstr "" -#: cps/editbooks.py:1201 +#: cps/editbooks.py:1202 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "" -#: cps/editbooks.py:1206 +#: cps/editbooks.py:1207 #, python-format msgid "Failed to store file %(file)s." msgstr "" -#: cps/editbooks.py:1230 +#: cps/editbooks.py:1231 #, python-format msgid "File format %(ext)s added to %(book)s" msgstr "" @@ -652,201 +653,201 @@ msgstr "" msgid "Callback domain is not verified, please follow steps to verify domain in google developer console" msgstr "Домен зворотнього зв'язку не підтверджено. Виконайте дії для підтвердження домену, будь-ласка" -#: cps/helper.py:84 +#: cps/helper.py:86 #, python-format msgid "%(format)s format not found for book id: %(book)d" msgstr "" -#: cps/helper.py:91 cps/tasks/convert.py:86 +#: cps/helper.py:93 cps/tasks/convert.py:86 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "" -#: cps/helper.py:96 +#: cps/helper.py:98 #, python-format msgid "%(format)s not found: %(fn)s" msgstr "" -#: cps/helper.py:101 cps/helper.py:226 cps/templates/detail.html:58 +#: cps/helper.py:103 cps/helper.py:228 cps/templates/detail.html:58 #, fuzzy msgid "Send to eReader" msgstr "Відправити на Kindle" -#: cps/helper.py:102 cps/helper.py:120 cps/helper.py:228 +#: cps/helper.py:104 cps/helper.py:122 cps/helper.py:230 msgid "This Email has been sent via Calibre-Web." msgstr "" -#: cps/helper.py:118 +#: cps/helper.py:120 msgid "Calibre-Web Test Email" msgstr "" -#: cps/helper.py:119 +#: cps/helper.py:121 msgid "Test Email" msgstr "" -#: cps/helper.py:136 +#: cps/helper.py:138 msgid "Get Started with Calibre-Web" msgstr "" -#: cps/helper.py:141 +#: cps/helper.py:143 #, python-format msgid "Registration Email for user: %(name)s" msgstr "" -#: cps/helper.py:152 cps/helper.py:158 +#: cps/helper.py:154 cps/helper.py:160 #, python-format msgid "Convert %(orig)s to %(format)s and send to eReader" msgstr "" -#: cps/helper.py:177 cps/helper.py:181 cps/helper.py:185 +#: cps/helper.py:179 cps/helper.py:183 cps/helper.py:187 #, fuzzy, python-format msgid "Send %(format)s to eReader" msgstr "Надіслати %(format)s до E-Reader" -#: cps/helper.py:225 +#: cps/helper.py:227 #, fuzzy, python-format msgid "%(book)s send to eReader" msgstr "Відправити на Kindle" -#: cps/helper.py:230 +#: cps/helper.py:232 msgid "The requested file could not be read. Maybe wrong permissions?" msgstr "" -#: cps/helper.py:345 +#: cps/helper.py:347 msgid "Read status could not set: {}" msgstr "" -#: cps/helper.py:368 +#: cps/helper.py:370 #, python-format msgid "Deleting bookfolder for book %(id)s failed, path has subfolders: %(path)s" msgstr "" -#: cps/helper.py:374 +#: cps/helper.py:376 #, python-format msgid "Deleting book %(id)s failed: %(message)s" msgstr "" -#: cps/helper.py:385 +#: cps/helper.py:387 #, python-format msgid "Deleting book %(id)s from database only, book path in database not valid: %(path)s" msgstr "" -#: cps/helper.py:450 +#: cps/helper.py:452 #, python-format msgid "Rename author from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgstr "" -#: cps/helper.py:522 cps/helper.py:531 +#: cps/helper.py:524 cps/helper.py:533 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "" -#: cps/helper.py:565 +#: cps/helper.py:567 #, python-format msgid "Rename title from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgstr "" -#: cps/helper.py:585 +#: cps/helper.py:587 msgid "Error in rename file in path: {}" msgstr "" -#: cps/helper.py:603 +#: cps/helper.py:605 #, python-format msgid "Book path %(path)s not found on Google Drive" msgstr "" -#: cps/helper.py:668 +#: cps/helper.py:670 msgid "Found an existing account for this Email address" msgstr "" -#: cps/helper.py:676 +#: cps/helper.py:678 msgid "This username is already taken" msgstr "" -#: cps/helper.py:688 +#: cps/helper.py:690 msgid "Invalid Email address format" msgstr "" -#: cps/helper.py:706 +#: cps/helper.py:710 msgid "Password doesn't comply with password validation rules" msgstr "" -#: cps/helper.py:855 +#: cps/helper.py:859 msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "" -#: cps/helper.py:865 +#: cps/helper.py:869 msgid "Error Downloading Cover" msgstr "" -#: cps/helper.py:868 +#: cps/helper.py:872 msgid "Cover Format Error" msgstr "" -#: cps/helper.py:871 +#: cps/helper.py:875 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "" -#: cps/helper.py:881 +#: cps/helper.py:885 msgid "Failed to create path for cover" msgstr "" -#: cps/helper.py:897 +#: cps/helper.py:901 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "" -#: cps/helper.py:908 +#: cps/helper.py:912 msgid "Only jpg/jpeg/png/webp/bmp files are supported as coverfile" msgstr "" -#: cps/helper.py:920 +#: cps/helper.py:924 msgid "Invalid cover file content" msgstr "" -#: cps/helper.py:924 +#: cps/helper.py:928 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "" -#: cps/helper.py:995 cps/helper.py:1183 +#: cps/helper.py:999 cps/helper.py:1156 #, fuzzy msgid "Cover" msgstr "Огляд" -#: cps/helper.py:1032 +#: cps/helper.py:1016 msgid "Unrar binary file not found" msgstr "" -#: cps/helper.py:1043 +#: cps/helper.py:1027 msgid "Error executing UnRar" msgstr "" -#: cps/helper.py:1051 +#: cps/helper.py:1035 msgid "Could not find the specified directory" msgstr "" -#: cps/helper.py:1054 +#: cps/helper.py:1038 msgid "Please specify a directory, not a file" msgstr "" -#: cps/helper.py:1068 +#: cps/helper.py:1052 msgid "Calibre binaries not viable" msgstr "" -#: cps/helper.py:1077 +#: cps/helper.py:1061 #, python-format msgid "Missing calibre binaries: %(missing)s" msgstr "" -#: cps/helper.py:1079 +#: cps/helper.py:1063 #, python-format msgid "Missing executable permissions: %(missing)s" msgstr "" -#: cps/helper.py:1084 +#: cps/helper.py:1068 msgid "Error excecuting Calibre" msgstr "" -#: cps/helper.py:1185 cps/templates/admin.html:216 +#: cps/helper.py:1158 cps/templates/admin.html:216 msgid "Queue all books for metadata backup" msgstr "" @@ -930,7 +931,7 @@ msgstr "{} зірок" #: cps/remotelogin.py:62 cps/templates/layout.html:67 #: cps/templates/layout.html:101 cps/templates/login.html:4 -#: cps/templates/login.html:21 cps/web.py:1333 +#: cps/templates/login.html:21 cps/web.py:1353 msgid "Login" msgstr "Ім'я користувача" @@ -946,7 +947,7 @@ msgstr "Час дії токено вичерпано" msgid "Success! Please return to your device" msgstr "Вдалося! Будь-ласка, поверніться до вашого пристрою" -#: cps/render_template.py:42 cps/web.py:414 +#: cps/render_template.py:42 cps/web.py:418 msgid "Books" msgstr "Книжки" @@ -971,7 +972,7 @@ msgstr "" msgid "Show Downloaded Books" msgstr "" -#: cps/render_template.py:59 cps/templates/index.xml:33 cps/web.py:429 +#: cps/render_template.py:59 cps/templates/index.xml:33 cps/web.py:433 msgid "Top Rated Books" msgstr "Книги з найкращим рейтингом" @@ -980,7 +981,7 @@ msgid "Show Top Rated Books" msgstr "Показувати книги з найвищим рейтингом" #: cps/render_template.py:62 cps/templates/index.xml:55 -#: cps/templates/index.xml:59 cps/web.py:750 +#: cps/templates/index.xml:59 cps/web.py:766 msgid "Read Books" msgstr "Прочитані книги" @@ -990,7 +991,7 @@ msgid "Show Read and Unread" msgstr "Показувати прочитані та непрочитані книги" #: cps/render_template.py:66 cps/templates/index.xml:62 -#: cps/templates/index.xml:66 cps/web.py:753 +#: cps/templates/index.xml:66 cps/web.py:769 msgid "Unread Books" msgstr "Непрочитані книги" @@ -1008,7 +1009,7 @@ msgid "Show Random Books" msgstr "Показувати випадкові книги" #: cps/render_template.py:72 cps/templates/book_table.html:67 -#: cps/templates/index.xml:84 cps/web.py:1119 +#: cps/templates/index.xml:84 cps/web.py:1135 msgid "Categories" msgstr "Категорії" @@ -1019,7 +1020,7 @@ msgstr "Показувати вибір категорії" #: cps/render_template.py:75 cps/templates/book_edit.html:91 #: cps/templates/book_table.html:68 cps/templates/index.xml:91 -#: cps/templates/search_form.html:70 cps/web.py:1009 cps/web.py:1021 +#: cps/templates/search_form.html:70 cps/web.py:1025 cps/web.py:1037 msgid "Series" msgstr "Серії" @@ -1039,7 +1040,7 @@ msgid "Show Author Section" msgstr "Показувати вибір автора" #: cps/render_template.py:82 cps/templates/book_table.html:72 -#: cps/templates/index.xml:77 cps/web.py:977 +#: cps/templates/index.xml:77 cps/web.py:993 msgid "Publishers" msgstr "Видавництва" @@ -1050,7 +1051,7 @@ msgstr "Показувати вибір серії" #: cps/render_template.py:85 cps/templates/book_table.html:70 #: cps/templates/index.xml:98 cps/templates/search_form.html:108 -#: cps/web.py:1091 +#: cps/web.py:1107 msgid "Languages" msgstr "Мови" @@ -1077,7 +1078,7 @@ msgstr "Формати файлів" msgid "Show File Formats Section" msgstr "Показувати вибір серії" -#: cps/render_template.py:96 cps/web.py:776 +#: cps/render_template.py:96 cps/web.py:792 msgid "Archived Books" msgstr "Архівні книжки" @@ -1086,7 +1087,7 @@ msgstr "Архівні книжки" msgid "Show Archived Books" msgstr "Архівні книжки" -#: cps/render_template.py:101 cps/web.py:807 +#: cps/render_template.py:101 cps/web.py:823 msgid "Books List" msgstr "Список книжок" @@ -1309,169 +1310,173 @@ msgstr "" msgid "No release information available" msgstr "" -#: cps/templates/index.html:6 cps/web.py:441 +#: cps/templates/index.html:6 cps/web.py:445 msgid "Discover (Random Books)" msgstr "Огляд (випадкові книги)" -#: cps/web.py:477 +#: cps/web.py:481 msgid "Hot Books (Most Downloaded)" msgstr "Популярні книги (найбільш завантажувані)" -#: cps/web.py:508 +#: cps/web.py:512 #, python-format msgid "Downloaded books by %(user)s" msgstr "" -#: cps/web.py:541 +#: cps/web.py:545 #, python-format msgid "Author: %(name)s" msgstr "" -#: cps/web.py:577 +#: cps/web.py:581 #, python-format msgid "Publisher: %(name)s" msgstr "Видавництво: %(name)s" -#: cps/web.py:605 +#: cps/web.py:609 #, python-format msgid "Series: %(serie)s" msgstr "Серії: %(serie)s" -#: cps/web.py:620 +#: cps/web.py:623 msgid "Rating: None" msgstr "Рейтинг: Відсутній" -#: cps/web.py:629 +#: cps/web.py:632 #, python-format msgid "Rating: %(rating)s stars" msgstr "Рейтинг: %(rating)s зірок" -#: cps/web.py:645 +#: cps/web.py:663 #, python-format msgid "File format: %(format)s" msgstr "Формат файлу: %(format)s" -#: cps/web.py:682 +#: cps/web.py:698 #, python-format msgid "Category: %(name)s" msgstr "Категорія: %(name)s" -#: cps/web.py:711 +#: cps/web.py:727 #, python-format msgid "Language: %(name)s" msgstr "Мова: %(name)s" -#: cps/templates/admin.html:16 cps/web.py:949 +#: cps/templates/admin.html:16 cps/web.py:965 msgid "Downloads" msgstr "Завантаження" -#: cps/web.py:1051 +#: cps/web.py:1067 msgid "Ratings list" msgstr "Список рейтингів" -#: cps/web.py:1078 +#: cps/web.py:1094 msgid "File formats list" msgstr "Список форматів файлу" -#: cps/web.py:1233 +#: cps/web.py:1249 #, fuzzy msgid "Please configure the SMTP mail settings first..." msgstr "Будь-ласка, спочатку сконфігуруйте параметри SMTP" -#: cps/web.py:1240 +#: cps/web.py:1256 #, python-format msgid "Success! Book queued for sending to %(eReadermail)s" msgstr "" -#: cps/web.py:1243 +#: cps/web.py:1259 #, python-format msgid "Oops! There was an error sending book: %(res)s" msgstr "Помилка при відправці книги: %(res)s" -#: cps/web.py:1245 +#: cps/web.py:1261 msgid "Oops! Please update your profile with a valid eReader Email." msgstr "" -#: cps/web.py:1261 +#: cps/web.py:1277 msgid "Please wait one minute to register next user" msgstr "" #: cps/templates/layout.html:68 cps/templates/layout.html:102 -#: cps/templates/login.html:27 cps/templates/register.html:17 cps/web.py:1262 -#: cps/web.py:1267 cps/web.py:1271 cps/web.py:1277 cps/web.py:1297 -#: cps/web.py:1301 cps/web.py:1314 cps/web.py:1317 +#: cps/templates/login.html:27 cps/templates/register.html:17 cps/web.py:1278 +#: cps/web.py:1282 cps/web.py:1287 cps/web.py:1291 cps/web.py:1297 +#: cps/web.py:1317 cps/web.py:1321 cps/web.py:1334 cps/web.py:1337 msgid "Register" msgstr "Зареєструватись" -#: cps/web.py:1266 cps/web.py:1313 +#: cps/web.py:1281 cps/web.py:1385 +msgid "Connection error to limiter backend, please contact your administrator" +msgstr "" + +#: cps/web.py:1286 cps/web.py:1333 msgid "Oops! Email server is not configured, please contact your administrator." msgstr "" -#: cps/web.py:1299 +#: cps/web.py:1319 msgid "Oops! Your Email is not allowed." msgstr "" -#: cps/web.py:1302 +#: cps/web.py:1322 msgid "Success! Confirmation Email has been sent." msgstr "" -#: cps/web.py:1348 cps/web.py:1367 +#: cps/web.py:1368 cps/web.py:1391 msgid "Cannot activate LDAP authentication" msgstr "" -#: cps/web.py:1361 +#: cps/web.py:1381 msgid "Please wait one minute before next login" msgstr "" -#: cps/web.py:1376 +#: cps/web.py:1400 #, fuzzy, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "Ви увійшли як користувач: '%(nickname)s'" -#: cps/web.py:1383 +#: cps/web.py:1407 #, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgstr "" -#: cps/web.py:1388 +#: cps/web.py:1412 #, python-format msgid "Could not login: %(message)s" msgstr "" -#: cps/web.py:1392 cps/web.py:1417 +#: cps/web.py:1416 cps/web.py:1441 #, fuzzy msgid "Wrong Username or Password" msgstr "Помилка в імені користувача або паролі" -#: cps/web.py:1399 +#: cps/web.py:1423 msgid "New Password was sent to your email address" msgstr "" -#: cps/web.py:1403 +#: cps/web.py:1427 msgid "An unknown error occurred. Please try again later." msgstr "" -#: cps/web.py:1405 +#: cps/web.py:1429 #, fuzzy msgid "Please enter valid username to reset password" msgstr "Помилка в імені користувача або паролі" -#: cps/web.py:1413 +#: cps/web.py:1437 #, fuzzy, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "Ви увійшли як користувач: '%(nickname)s'" -#: cps/web.py:1471 cps/web.py:1521 +#: cps/web.py:1495 cps/web.py:1545 #, python-format msgid "%(name)s's Profile" msgstr "Профіль %(name)s" -#: cps/web.py:1487 +#: cps/web.py:1511 #, fuzzy msgid "Success! Profile Updated" msgstr "Профіль оновлено" -#: cps/web.py:1491 +#: cps/web.py:1515 msgid "Oops! An account already exists for this Email." msgstr "" @@ -1484,41 +1489,41 @@ msgstr "" msgid "%(book)s send to E-Reader" msgstr "Відправити на Kindle" -#: cps/tasks/convert.py:166 +#: cps/tasks/convert.py:167 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "" -#: cps/tasks/convert.py:200 +#: cps/tasks/convert.py:201 #, python-format msgid "%(format)s format not found on disk" msgstr "" -#: cps/tasks/convert.py:204 +#: cps/tasks/convert.py:205 msgid "Ebook converter failed with unknown error" msgstr "" -#: cps/tasks/convert.py:223 +#: cps/tasks/convert.py:224 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "" -#: cps/tasks/convert.py:244 +#: cps/tasks/convert.py:245 #, python-format msgid "Converted file not found or more than one file in folder %(folder)s" msgstr "" -#: cps/tasks/convert.py:279 +#: cps/tasks/convert.py:287 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "" -#: cps/tasks/convert.py:302 +#: cps/tasks/convert.py:310 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "" -#: cps/tasks/convert.py:307 +#: cps/tasks/convert.py:315 msgid "Convert" msgstr "" @@ -1526,7 +1531,7 @@ msgstr "" msgid "Reconnecting Calibre database" msgstr "" -#: cps/tasks/mail.py:269 +#: cps/tasks/mail.py:278 msgid "E-mail" msgstr "" @@ -1805,12 +1810,12 @@ 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:414 -#: cps/templates/config_view_edit.html:175 cps/templates/modal_dialogs.html:64 -#: cps/templates/modal_dialogs.html:99 cps/templates/modal_dialogs.html:117 -#: cps/templates/modal_dialogs.html:135 cps/templates/schedule_edit.html:45 -#: cps/templates/shelf_edit.html:27 cps/templates/tasks.html:46 -#: cps/templates/user_edit.html:144 +#: cps/templates/config_db.html:66 cps/templates/config_edit.html:428 +#: 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 +#: cps/templates/schedule_edit.html:45 cps/templates/shelf_edit.html:27 +#: cps/templates/tasks.html:46 cps/templates/user_edit.html:144 msgid "Cancel" msgstr "Скасувати" @@ -1991,7 +1996,7 @@ msgid "Fetch Metadata" msgstr "Отримати метадані" #: cps/templates/book_edit.html:213 cps/templates/config_db.html:65 -#: cps/templates/config_edit.html:413 cps/templates/config_view_edit.html:174 +#: cps/templates/config_edit.html:427 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 @@ -2158,7 +2163,7 @@ msgid "Location of Calibre Database" msgstr "Розташування БД Calibre" #: cps/templates/config_db.html:21 -msgid "Separate Book files from Library (Highly experimental, might not work at all)" +msgid "Separate Book Files from Library" msgstr "" #: cps/templates/config_db.html:34 @@ -2242,7 +2247,7 @@ msgid "Convert non-English characters in title and author while saving to disk" msgstr "" #: cps/templates/config_edit.html:108 -msgid "Embed Metadata to Ebook File on Download and Conversion (needs Calibre/Kepubify binaries)" +msgid "Embed Metadata to Ebook File on Download/Conversion/e-mail (needs Calibre/Kepubify binaries)" msgstr "" #: cps/templates/config_edit.html:112 @@ -2465,40 +2470,52 @@ msgstr "Налаштування OAuth" msgid "Limit failed login attempts" msgstr "" -#: cps/templates/config_edit.html:376 +#: cps/templates/config_edit.html:377 +msgid "Configure Backend for Limiter" +msgstr "" + +#: cps/templates/config_edit.html:381 +msgid "Options for Limiter" +msgstr "" + +#: cps/templates/config_edit.html:386 msgid "Session protection" msgstr "" -#: cps/templates/config_edit.html:378 +#: cps/templates/config_edit.html:388 msgid "Basic" msgstr "" -#: cps/templates/config_edit.html:379 +#: cps/templates/config_edit.html:389 msgid "Strong" msgstr "" -#: cps/templates/config_edit.html:384 +#: cps/templates/config_edit.html:394 #, fuzzy msgid "User Password policy" msgstr "Скинути пароль користувача" -#: cps/templates/config_edit.html:388 +#: cps/templates/config_edit.html:398 msgid "Minimum password length" msgstr "" -#: cps/templates/config_edit.html:393 +#: cps/templates/config_edit.html:403 msgid "Enforce number" msgstr "" -#: cps/templates/config_edit.html:397 +#: cps/templates/config_edit.html:407 msgid "Enforce lowercase characters" msgstr "" -#: cps/templates/config_edit.html:401 +#: cps/templates/config_edit.html:411 msgid "Enforce uppercase characters" msgstr "" -#: cps/templates/config_edit.html:405 +#: cps/templates/config_edit.html:415 +msgid "Enforce characters (needed For Chinese/Japanese/Korean Characters)" +msgstr "" + +#: cps/templates/config_edit.html:419 msgid "Enforce special characters" msgstr "" @@ -2622,47 +2639,47 @@ msgstr "" msgid "Published" msgstr "Опубліковано" -#: cps/templates/detail.html:250 cps/templates/listenmp3.html:158 +#: cps/templates/detail.html:251 cps/templates/listenmp3.html:158 msgid "Mark As Unread" msgstr "Відмітити як не прочитане" -#: cps/templates/detail.html:251 cps/templates/listenmp3.html:158 +#: cps/templates/detail.html:252 cps/templates/listenmp3.html:158 msgid "Mark As Read" msgstr "Відмітити як прочитане" -#: cps/templates/detail.html:253 cps/templates/listenmp3.html:159 +#: cps/templates/detail.html:254 cps/templates/listenmp3.html:159 msgid "Read" msgstr "Прочитано" -#: cps/templates/detail.html:263 cps/templates/listenmp3.html:166 +#: cps/templates/detail.html:264 cps/templates/listenmp3.html:166 msgid "Restore from archive" msgstr "Відновити з архіву" -#: cps/templates/detail.html:264 cps/templates/listenmp3.html:166 +#: cps/templates/detail.html:265 cps/templates/listenmp3.html:166 msgid "Add to archive" msgstr "Додати в архів" -#: cps/templates/detail.html:266 cps/templates/listenmp3.html:167 +#: cps/templates/detail.html:267 cps/templates/listenmp3.html:167 msgid "Archived" msgstr "Заархівовано" -#: cps/templates/detail.html:277 cps/templates/listenmp3.html:177 +#: cps/templates/detail.html:278 cps/templates/listenmp3.html:177 msgid "Description:" msgstr "Опис:" -#: cps/templates/detail.html:292 cps/templates/listenmp3.html:190 +#: cps/templates/detail.html:293 cps/templates/listenmp3.html:190 #: cps/templates/search.html:16 msgid "Add to shelf" msgstr "Додати на книжкову полицю" -#: cps/templates/detail.html:304 cps/templates/detail.html:323 +#: cps/templates/detail.html:305 cps/templates/detail.html:324 #: cps/templates/feed.xml:81 cps/templates/layout.html:154 #: cps/templates/listenmp3.html:201 cps/templates/listenmp3.html:218 #: cps/templates/search.html:22 msgid "(Public)" msgstr "(Публічно)" -#: cps/templates/detail.html:339 +#: cps/templates/detail.html:340 msgid "Edit Metadata" msgstr "Редагувати метадані" diff --git a/cps/translations/vi/LC_MESSAGES/messages.mo b/cps/translations/vi/LC_MESSAGES/messages.mo index e26e3e55..0ff42a68 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 5819ebeb..c1d72a7e 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-02-10 10:06+0100\n" +"POT-Creation-Date: 2024-04-27 07:20+0200\n" "PO-Revision-Date: 2022-09-20 21:36+0700\n" "Last-Translator: Ha Link \n" "Language: vi\n" @@ -19,490 +19,490 @@ msgstr "" msgid "Statistics" msgstr "Thống kê" -#: cps/admin.py:149 +#: cps/admin.py:150 #, fuzzy msgid "Server restarted, please reload page." msgstr "Máy chủ đã khởi động lại,hãy tải lại trang" -#: cps/admin.py:151 +#: cps/admin.py:152 #, fuzzy msgid "Performing Server shutdown, please close window." msgstr "Máy chủ đang được tắt, hãy đóng cửa sổ này" -#: cps/admin.py:159 +#: cps/admin.py:160 msgid "Success! Database Reconnected" msgstr "" -#: cps/admin.py:162 +#: cps/admin.py:163 msgid "Unknown command" msgstr "Lệnh không tồn tại" -#: cps/admin.py:173 +#: cps/admin.py:174 msgid "Success! Books queued for Metadata Backup, please check Tasks for result" msgstr "" -#: cps/admin.py:206 cps/editbooks.py:589 cps/editbooks.py:591 -#: cps/editbooks.py:629 cps/editbooks.py:646 cps/editbooks.py:1262 +#: cps/admin.py:207 cps/editbooks.py:590 cps/editbooks.py:592 +#: cps/editbooks.py:630 cps/editbooks.py:647 cps/editbooks.py:1263 #: cps/updater.py:613 cps/uploader.py:93 cps/uploader.py:102 msgid "Unknown" msgstr "Không rõ" -#: cps/admin.py:231 +#: cps/admin.py:232 msgid "Admin page" msgstr "Trang admin" -#: cps/admin.py:251 +#: cps/admin.py:252 msgid "Basic Configuration" msgstr "Thiết lập cơ bản" -#: cps/admin.py:289 +#: cps/admin.py:290 msgid "UI Configuration" msgstr "Thiết lập UI" -#: cps/admin.py:323 cps/templates/admin.html:51 +#: cps/admin.py:324 cps/templates/admin.html:51 msgid "Edit Users" msgstr "Chỉnh sửa người dùng" -#: cps/admin.py:367 cps/opds.py:506 cps/templates/grid.html:14 +#: cps/admin.py:368 cps/opds.py:506 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "Tất cả" -#: cps/admin.py:394 cps/admin.py:1405 +#: cps/admin.py:395 cps/admin.py:1417 msgid "User not found" msgstr "Không tìm thấy user" -#: cps/admin.py:408 +#: cps/admin.py:409 msgid "{} users deleted successfully" msgstr "{} người dung đã đươc xoá thành công" -#: cps/admin.py:431 cps/templates/config_view_edit.html:133 +#: cps/admin.py:432 cps/templates/config_view_edit.html:133 #: cps/templates/user_edit.html:45 cps/templates/user_table.html:81 msgid "Show All" msgstr "Hiển thị tất cả" -#: cps/admin.py:452 cps/admin.py:458 +#: cps/admin.py:453 cps/admin.py:459 msgid "Malformed request" msgstr "Yêu cầu không đúng định dạng" -#: cps/admin.py:470 cps/admin.py:2033 +#: cps/admin.py:471 cps/admin.py:2048 msgid "Guest Name can't be changed" msgstr "Tên người dung khách không thể thay đổi" -#: cps/admin.py:482 +#: cps/admin.py:483 msgid "Guest can't have this role" msgstr "Khách không thể mang vai trò này" -#: cps/admin.py:494 cps/admin.py:1987 +#: cps/admin.py:495 cps/admin.py:2002 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" -#: cps/admin.py:498 cps/admin.py:512 +#: cps/admin.py:499 cps/admin.py:513 msgid "Value has to be true or false" msgstr "Giá trị phải là true hoặc false" -#: cps/admin.py:500 +#: cps/admin.py:501 msgid "Invalid role" msgstr "Vai trò không hợp lệ" -#: cps/admin.py:504 +#: cps/admin.py:505 msgid "Guest can't have this view" msgstr "Tài khoản khách không có màn hình này" -#: cps/admin.py:514 +#: cps/admin.py:515 msgid "Invalid view" msgstr "View không hợp lệ" -#: cps/admin.py:517 +#: cps/admin.py:518 msgid "Guest's Locale is determined automatically and can't be set" msgstr "Ngôn ngữ của khách được xác định tự động và không thể đặt được" -#: cps/admin.py:521 +#: cps/admin.py:522 msgid "No Valid Locale Given" msgstr "Địa chỉ cung cấp không hợp lệ" -#: cps/admin.py:532 +#: cps/admin.py:533 msgid "No Valid Book Language Given" msgstr "Ngôn ngữ sách không hợp lệ" -#: cps/admin.py:534 cps/editbooks.py:455 +#: cps/admin.py:535 cps/editbooks.py:456 msgid "Parameter not found" msgstr "Tham số không tồn tại" -#: cps/admin.py:571 +#: cps/admin.py:572 msgid "Invalid Read Column" msgstr "Cột đọc không hợp lệ" -#: cps/admin.py:577 +#: cps/admin.py:578 msgid "Invalid Restricted Column" msgstr "Cột bị hạn chế không hợp lệ" -#: cps/admin.py:597 cps/admin.py:1858 +#: cps/admin.py:598 cps/admin.py:1873 msgid "Calibre-Web configuration updated" msgstr "Thiết lập Calibre-Web đã cập nhật" -#: cps/admin.py:609 +#: cps/admin.py:610 msgid "Do you really want to delete the Kobo Token?" msgstr "Bạn có thực sự muốn xóa Kobo Token không?" -#: cps/admin.py:611 +#: cps/admin.py:612 msgid "Do you really want to delete this domain?" msgstr "Bạn có thực sự muốn xóa miền này không?" -#: cps/admin.py:613 +#: cps/admin.py:614 msgid "Do you really want to delete this user?" msgstr "Bạn có thực sự muốn xóa người dùng này không?" -#: cps/admin.py:615 +#: cps/admin.py:616 msgid "Are you sure you want to delete this shelf?" msgstr "Bạn có chắc chắn muốn xóa giá này không?" -#: cps/admin.py:617 +#: cps/admin.py:618 msgid "Are you sure you want to change locales of selected user(s)?" msgstr "Bạn có chắc chắn muốn thay đổi ngôn ngữ của những người dùng đã chọn?" -#: cps/admin.py:619 +#: cps/admin.py:620 msgid "Are you sure you want to change visible book languages for selected user(s)?" msgstr "Bạn có chắc chắn muốn thay đổi ngôn ngữ sách hiển thị cho (những) người dùng đã chọn không?" -#: cps/admin.py:621 +#: cps/admin.py:622 msgid "Are you sure you want to change the selected role for the selected user(s)?" msgstr "Bạn có chắc chắn muốn thay đổi vai trò đã chọn cho (những) người dùng đã chọn không?" -#: cps/admin.py:623 +#: cps/admin.py:624 msgid "Are you sure you want to change the selected restrictions for the selected user(s)?" msgstr "Bạn có chắc chắn muốn thay đổi những giới hạn đã chọn cho người dung?" -#: cps/admin.py:625 +#: cps/admin.py:626 msgid "Are you sure you want to change the selected visibility restrictions for the selected user(s)?" msgstr "Bạn có chắc chắn muốn thay đổi các giới hạn hiển thị đã chọn cho (những) người dùng đã chọn không?" -#: cps/admin.py:628 +#: cps/admin.py:629 msgid "Are you sure you want to change shelf sync behavior for the selected user(s)?" msgstr "Bạn có chắc chắn muốn thay đổi hành vi đồng bộ hóa giá cho (những) người dùng đã chọn không?" -#: cps/admin.py:630 +#: cps/admin.py:631 msgid "Are you sure you want to change Calibre library location?" msgstr "Bạn có chắc chắn muốn thay đổi vị trí thư viện Calibre không?" -#: cps/admin.py:632 +#: cps/admin.py:633 msgid "Calibre-Web will search for updated Covers and update Cover Thumbnails, this may take a while?" msgstr "" -#: cps/admin.py:635 +#: cps/admin.py:636 msgid "Are you sure you want delete Calibre-Web's sync database to force a full sync with your Kobo Reader?" msgstr "Bạn có chắc chắn muốn xóa cơ sở dữ liệu đồng bộ của Calibre-Web để bắt buộc đồng bộ hóa hoàn toàn với Kobo Reader của mình không?" -#: cps/admin.py:878 cps/admin.py:884 cps/admin.py:894 cps/admin.py:904 +#: cps/admin.py:879 cps/admin.py:885 cps/admin.py:895 cps/admin.py:905 #: cps/templates/modal_dialogs.html:29 cps/templates/user_table.html:41 #: cps/templates/user_table.html:58 msgid "Deny" msgstr "Từ chối" -#: cps/admin.py:880 cps/admin.py:886 cps/admin.py:896 cps/admin.py:906 +#: cps/admin.py:881 cps/admin.py:887 cps/admin.py:897 cps/admin.py:907 #: cps/templates/modal_dialogs.html:28 cps/templates/user_table.html:44 #: cps/templates/user_table.html:61 msgid "Allow" msgstr "Cho phép" -#: cps/admin.py:921 +#: cps/admin.py:940 msgid "{} sync entries deleted" msgstr "{} mục nhập đồng bộ hóa đã bị xóa" -#: cps/admin.py:969 +#: cps/admin.py:981 msgid "Tag not found" msgstr "Tag không tồn tại" -#: cps/admin.py:981 +#: cps/admin.py:993 msgid "Invalid Action" msgstr "Hành động không hợp lệ" -#: cps/admin.py:1111 +#: cps/admin.py:1123 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "" -#: cps/admin.py:1156 +#: cps/admin.py:1168 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:1162 +#: cps/admin.py:1174 msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1196 +#: cps/admin.py:1208 msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgstr "" -#: cps/admin.py:1202 +#: cps/admin.py:1214 msgid "Please Enter a LDAP Service Account and Password" msgstr "" -#: cps/admin.py:1205 +#: cps/admin.py:1217 msgid "Please Enter a LDAP Service Account" msgstr "" -#: cps/admin.py:1210 +#: cps/admin.py:1222 #, python-format msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1212 +#: cps/admin.py:1224 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1216 +#: cps/admin.py:1228 #, python-format msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1218 +#: cps/admin.py:1230 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1225 +#: cps/admin.py:1237 #, python-format msgid "LDAP Member User Filter needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1227 +#: cps/admin.py:1239 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1234 +#: cps/admin.py:1246 msgid "LDAP CACertificate, Certificate or Key Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1265 cps/templates/admin.html:53 +#: cps/admin.py:1277 cps/templates/admin.html:53 msgid "Add New User" msgstr "Thêm người dùng mới" -#: cps/admin.py:1274 cps/templates/admin.html:100 +#: cps/admin.py:1286 cps/templates/admin.html:100 msgid "Edit Email Server Settings" msgstr "" -#: cps/admin.py:1293 +#: cps/admin.py:1305 msgid "Success! Gmail Account Verified." msgstr "" -#: cps/admin.py:1313 cps/admin.py:1316 cps/admin.py:1698 cps/admin.py:1842 -#: cps/admin.py:1940 cps/admin.py:2061 cps/editbooks.py:241 -#: cps/editbooks.py:317 cps/editbooks.py:1224 cps/shelf.py:90 cps/shelf.py:150 +#: cps/admin.py:1325 cps/admin.py:1328 cps/admin.py:1710 cps/admin.py:1857 +#: cps/admin.py:1955 cps/admin.py:2076 cps/editbooks.py:242 +#: cps/editbooks.py:318 cps/editbooks.py:1225 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:149 cps/web.py:1496 +#: cps/shelf.py:468 cps/tasks/convert.py:150 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:1323 +#: cps/admin.py:1335 #, python-format msgid "Test e-mail queued for sending to %(email)s, please check Tasks for result" msgstr "" -#: cps/admin.py:1326 +#: cps/admin.py:1338 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "" -#: cps/admin.py:1328 +#: cps/admin.py:1340 msgid "Please configure your e-mail address first..." msgstr "" -#: cps/admin.py:1330 +#: cps/admin.py:1342 msgid "Email Server Settings updated" msgstr "" -#: cps/admin.py:1353 cps/templates/admin.html:195 +#: cps/admin.py:1365 cps/templates/admin.html:195 msgid "Edit Scheduled Tasks Settings" msgstr "" -#: cps/admin.py:1365 +#: cps/admin.py:1377 msgid "Invalid start time for task specified" msgstr "" -#: cps/admin.py:1370 +#: cps/admin.py:1382 msgid "Invalid duration for task specified" msgstr "" -#: cps/admin.py:1380 +#: cps/admin.py:1392 #, fuzzy msgid "Scheduled tasks settings updated" msgstr "Thiết lập cơ sở dữ lieu đã được cập nhật" -#: cps/admin.py:1390 cps/admin.py:1439 cps/admin.py:2057 cps/web.py:1296 +#: cps/admin.py:1402 cps/admin.py:1451 cps/admin.py:2072 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:1394 +#: cps/admin.py:1406 msgid "Settings DB is not Writeable" msgstr "" -#: cps/admin.py:1424 cps/admin.py:2049 +#: cps/admin.py:1436 cps/admin.py:2064 #, python-format msgid "Edit User %(nick)s" msgstr "Chỉnh sửa người dùng %(nick)s" -#: cps/admin.py:1436 +#: cps/admin.py:1448 #, python-format msgid "Success! Password for user %(user)s reset" msgstr "" -#: cps/admin.py:1442 +#: cps/admin.py:1454 msgid "Oops! Please configure the SMTP mail settings." msgstr "" -#: cps/admin.py:1453 +#: cps/admin.py:1465 msgid "Logfile viewer" msgstr "" -#: cps/admin.py:1519 +#: cps/admin.py:1531 msgid "Requesting update package" msgstr "" -#: cps/admin.py:1520 +#: cps/admin.py:1532 msgid "Downloading update package" msgstr "" -#: cps/admin.py:1521 +#: cps/admin.py:1533 msgid "Unzipping update package" msgstr "Đang giải nén tệp cập nhật" -#: cps/admin.py:1522 +#: cps/admin.py:1534 msgid "Replacing files" msgstr "They thế tập tin" -#: cps/admin.py:1523 +#: cps/admin.py:1535 msgid "Database connections are closed" msgstr "Liên kết cơ sở dữ liệu đã được đóng" -#: cps/admin.py:1524 +#: cps/admin.py:1536 msgid "Stopping server" msgstr "Đang dừng server" -#: cps/admin.py:1525 +#: cps/admin.py:1537 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:1526 cps/admin.py:1527 cps/admin.py:1528 cps/admin.py:1529 -#: cps/admin.py:1530 cps/admin.py:1531 +#: cps/admin.py:1538 cps/admin.py:1539 cps/admin.py:1540 cps/admin.py:1541 +#: cps/admin.py:1542 cps/admin.py:1543 msgid "Update failed:" msgstr "Cập nhật thất bại:" -#: cps/admin.py:1526 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 +#: cps/admin.py:1538 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 msgid "HTTP Error" msgstr "Lỗi HTTP" -#: cps/admin.py:1527 cps/updater.py:391 cps/updater.py:628 +#: cps/admin.py:1539 cps/updater.py:391 cps/updater.py:628 msgid "Connection error" msgstr "Lỗi kết nối" -#: cps/admin.py:1528 cps/updater.py:393 cps/updater.py:630 +#: cps/admin.py:1540 cps/updater.py:393 cps/updater.py:630 msgid "Timeout while establishing connection" msgstr "" -#: cps/admin.py:1529 cps/updater.py:395 cps/updater.py:632 +#: cps/admin.py:1541 cps/updater.py:395 cps/updater.py:632 msgid "General error" msgstr "Lỗi chung" -#: cps/admin.py:1530 +#: cps/admin.py:1542 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:1531 +#: cps/admin.py:1543 msgid "Files could not be replaced during update" msgstr "" -#: cps/admin.py:1555 +#: cps/admin.py:1567 msgid "Failed to extract at least One LDAP User" msgstr "" -#: cps/admin.py:1600 +#: cps/admin.py:1612 msgid "Failed to Create at Least One LDAP User" msgstr "" -#: cps/admin.py:1613 +#: cps/admin.py:1625 #, python-format msgid "Error: %(ldaperror)s" msgstr "" -#: cps/admin.py:1617 +#: cps/admin.py:1629 msgid "Error: No user returned in response of LDAP server" msgstr "" -#: cps/admin.py:1650 +#: cps/admin.py:1662 msgid "At Least One LDAP User Not Found in Database" msgstr "" -#: cps/admin.py:1652 +#: cps/admin.py:1664 msgid "{} User Successfully Imported" msgstr "" -#: cps/admin.py:1710 +#: cps/admin.py:1722 msgid "DB Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1730 +#: cps/admin.py:1742 msgid "DB is not Writeable" msgstr "" -#: cps/admin.py:1746 +#: cps/admin.py:1758 msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1750 +#: cps/admin.py:1762 msgid "Certfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1829 +#: cps/admin.py:1842 msgid "Password length has to be between 1 and 40" msgstr "" -#: cps/admin.py:1881 +#: cps/admin.py:1896 msgid "Database Settings updated" msgstr "Thiết lập cơ sở dữ lieu đã được cập nhật" -#: cps/admin.py:1889 +#: cps/admin.py:1904 msgid "Database Configuration" msgstr "Thiết lập cơ sở dữ lieu :)))" -#: cps/admin.py:1904 cps/web.py:1270 +#: cps/admin.py:1919 cps/web.py:1290 msgid "Oops! Please complete all fields." msgstr "Hãy điền hết các trường!" -#: cps/admin.py:1913 +#: cps/admin.py:1928 msgid "E-mail is not from valid domain" msgstr "Địa chỉ email không hợp lệ" -#: cps/admin.py:1919 +#: cps/admin.py:1934 msgid "Add new user" msgstr "Thêm người dùng mới" -#: cps/admin.py:1930 +#: cps/admin.py:1945 #, python-format msgid "User '%(user)s' created" msgstr "Người dùng '%(user)s' đã được tạo" -#: cps/admin.py:1936 +#: cps/admin.py:1951 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:1966 +#: cps/admin.py:1981 #, python-format msgid "User '%(nick)s' deleted" msgstr "Người dùng '%(nick)s' đã bị xoá" -#: cps/admin.py:1969 +#: cps/admin.py:1984 msgid "Can't delete Guest User" msgstr "Không thể xoá người dùng khách" -#: cps/admin.py:1972 +#: cps/admin.py:1987 msgid "No admin user remaining, can't delete user" msgstr "" -#: cps/admin.py:2027 cps/web.py:1445 +#: cps/admin.py:2042 cps/web.py:1469 msgid "Email can't be empty and has to be a valid Email" msgstr "" -#: cps/admin.py:2053 +#: cps/admin.py:2068 #, python-format msgid "User '%(nick)s' updated" msgstr "Người dùng '%(nick)s' đã được cập nhật" @@ -515,122 +515,123 @@ msgstr "chưa cài đặt" msgid "Execution permissions missing" msgstr "" -#: cps/db.py:752 cps/search.py:137 cps/web.py:731 +#: cps/db.py:752 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:993 cps/templates/config_edit.html:208 +#: cps/db.py:992 cps/templates/config_edit.html:208 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 -#: cps/web.py:558 cps/web.py:592 cps/web.py:665 cps/web.py:692 cps/web.py:973 -#: cps/web.py:1003 cps/web.py:1048 cps/web.py:1076 cps/web.py:1115 +#: 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 +#: cps/web.py:1131 msgid "None" msgstr "None" -#: cps/editbooks.py:122 cps/editbooks.py:910 cps/web.py:525 cps/web.py:1537 -#: cps/web.py:1581 cps/web.py:1626 +#: cps/editbooks.py:123 cps/editbooks.py:911 cps/web.py:529 cps/web.py:1561 +#: cps/web.py:1605 cps/web.py:1650 msgid "Oops! Selected book is unavailable. File does not exist or is not accessible" msgstr "" -#: cps/editbooks.py:166 cps/editbooks.py:1245 +#: cps/editbooks.py:167 cps/editbooks.py:1246 msgid "User has no rights to upload cover" msgstr "" -#: cps/editbooks.py:186 cps/editbooks.py:731 +#: cps/editbooks.py:187 cps/editbooks.py:732 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "" -#: cps/editbooks.py:228 +#: cps/editbooks.py:229 msgid "Metadata successfully updated" msgstr "Metadata đã được cập nhật thành công" -#: cps/editbooks.py:246 +#: cps/editbooks.py:247 msgid "Error editing book: {}" msgstr "" -#: cps/editbooks.py:303 +#: cps/editbooks.py:304 #, python-format msgid "File %(file)s uploaded" msgstr "File %(file)s đã được tải lên" -#: cps/editbooks.py:331 +#: cps/editbooks.py:332 msgid "Source or destination format for conversion missing" msgstr "Thiếu định dạng nguồn hoặc đích để convert" -#: cps/editbooks.py:339 +#: cps/editbooks.py:340 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "" -#: cps/editbooks.py:343 +#: cps/editbooks.py:344 #, 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:650 +#: cps/editbooks.py:651 msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgstr "" -#: cps/editbooks.py:705 cps/editbooks.py:1037 +#: cps/editbooks.py:706 cps/editbooks.py:1038 #, 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:743 cps/editbooks.py:1185 +#: cps/editbooks.py:744 cps/editbooks.py:1186 #, python-format msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgstr "" -#: cps/editbooks.py:747 cps/editbooks.py:1189 +#: cps/editbooks.py:748 cps/editbooks.py:1190 msgid "File to be uploaded must have an extension" msgstr "" -#: cps/editbooks.py:755 +#: cps/editbooks.py:756 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "" -#: cps/editbooks.py:775 +#: cps/editbooks.py:776 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "" -#: cps/editbooks.py:832 cps/editbooks.py:834 +#: cps/editbooks.py:833 cps/editbooks.py:835 msgid "Book Format Successfully Deleted" msgstr "" -#: cps/editbooks.py:841 cps/editbooks.py:843 +#: cps/editbooks.py:842 cps/editbooks.py:844 msgid "Book Successfully Deleted" msgstr "" -#: cps/editbooks.py:895 +#: cps/editbooks.py:896 msgid "You are missing permissions to delete books" msgstr "" -#: cps/editbooks.py:945 +#: cps/editbooks.py:946 msgid "edit metadata" msgstr "" -#: cps/editbooks.py:994 +#: cps/editbooks.py:995 #, python-format msgid "%(seriesindex)s is not a valid number, skipping" msgstr "" -#: cps/editbooks.py:1180 +#: cps/editbooks.py:1181 msgid "User has no rights to upload additional file formats" msgstr "" -#: cps/editbooks.py:1201 +#: cps/editbooks.py:1202 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "" -#: cps/editbooks.py:1206 +#: cps/editbooks.py:1207 #, python-format msgid "Failed to store file %(file)s." msgstr "Lưu file thất bại %(file)s." -#: cps/editbooks.py:1230 +#: cps/editbooks.py:1231 #, python-format msgid "File format %(ext)s added to %(book)s" msgstr "" @@ -643,205 +644,205 @@ msgstr "" msgid "Callback domain is not verified, please follow steps to verify domain in google developer console" msgstr "" -#: cps/helper.py:84 +#: cps/helper.py:86 #, python-format msgid "%(format)s format not found for book id: %(book)d" msgstr "" -#: cps/helper.py:91 cps/tasks/convert.py:86 +#: cps/helper.py:93 cps/tasks/convert.py:86 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "" -#: cps/helper.py:96 +#: cps/helper.py:98 #, python-format msgid "%(format)s not found: %(fn)s" msgstr "%(format)s không tìm thấy: %(fn)s" -#: cps/helper.py:101 cps/helper.py:226 cps/templates/detail.html:58 +#: cps/helper.py:103 cps/helper.py:228 cps/templates/detail.html:58 #, fuzzy msgid "Send to eReader" msgstr "Gửi tới Kindle" -#: cps/helper.py:102 cps/helper.py:120 cps/helper.py:228 +#: cps/helper.py:104 cps/helper.py:122 cps/helper.py:230 #, fuzzy msgid "This Email has been sent via Calibre-Web." msgstr "E-mail này được gửi từ Calibre-Web." -#: cps/helper.py:118 +#: cps/helper.py:120 #, fuzzy msgid "Calibre-Web Test Email" msgstr "Calibre-Web test e-mail" -#: cps/helper.py:119 +#: cps/helper.py:121 #, fuzzy msgid "Test Email" msgstr "Test e-mail" -#: cps/helper.py:136 +#: cps/helper.py:138 msgid "Get Started with Calibre-Web" msgstr "Bắt đầu với Calibre-Web" -#: cps/helper.py:141 +#: cps/helper.py:143 #, fuzzy, python-format msgid "Registration Email for user: %(name)s" msgstr "Email đăng ký cho người dùng: %(name)s" -#: cps/helper.py:152 cps/helper.py:158 +#: cps/helper.py:154 cps/helper.py:160 #, fuzzy, python-format msgid "Convert %(orig)s to %(format)s and send to eReader" msgstr "Chuyển đổi %(orig)s thành %(format)s và chuyển tới Kindle" -#: cps/helper.py:177 cps/helper.py:181 cps/helper.py:185 +#: cps/helper.py:179 cps/helper.py:183 cps/helper.py:187 #, fuzzy, python-format msgid "Send %(format)s to eReader" msgstr "Gửi %(format)s tới Kindle" -#: cps/helper.py:225 +#: cps/helper.py:227 #, fuzzy, python-format msgid "%(book)s send to eReader" msgstr "%(book)s gửi tới Kindle" -#: cps/helper.py:230 +#: cps/helper.py:232 msgid "The requested file could not be read. Maybe wrong permissions?" msgstr "File được yêu cầu không thể đọc. Có thể do phân quyền bị sai?" -#: cps/helper.py:345 +#: cps/helper.py:347 msgid "Read status could not set: {}" msgstr "" -#: cps/helper.py:368 +#: cps/helper.py:370 #, python-format msgid "Deleting bookfolder for book %(id)s failed, path has subfolders: %(path)s" msgstr "Xoá thư mục cho sách %(id)s thất bại, đường dẫn có subfolders: %(path)s" -#: cps/helper.py:374 +#: cps/helper.py:376 #, python-format msgid "Deleting book %(id)s failed: %(message)s" msgstr "Xoá sách %(id)s thất bại: %(message)s" -#: cps/helper.py:385 +#: cps/helper.py:387 #, python-format msgid "Deleting book %(id)s from database only, book path in database not valid: %(path)s" msgstr "" -#: cps/helper.py:450 +#: cps/helper.py:452 #, python-format msgid "Rename author from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgstr "" -#: cps/helper.py:522 cps/helper.py:531 +#: cps/helper.py:524 cps/helper.py:533 #, 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:565 +#: cps/helper.py:567 #, python-format msgid "Rename title from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgstr "" -#: cps/helper.py:585 +#: cps/helper.py:587 msgid "Error in rename file in path: {}" msgstr "" -#: cps/helper.py:603 +#: cps/helper.py:605 #, 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:668 +#: cps/helper.py:670 msgid "Found an existing account for this Email address" msgstr "" -#: cps/helper.py:676 +#: cps/helper.py:678 msgid "This username is already taken" msgstr "Username này đã bị sử dụng" -#: cps/helper.py:688 +#: cps/helper.py:690 #, fuzzy msgid "Invalid Email address format" msgstr "Định dạng email address không hợp lệ" -#: cps/helper.py:706 +#: cps/helper.py:710 msgid "Password doesn't comply with password validation rules" msgstr "" -#: cps/helper.py:855 +#: cps/helper.py:859 msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "" -#: cps/helper.py:865 +#: cps/helper.py:869 msgid "Error Downloading Cover" msgstr "Lỗi tải xuống ảnh bìa" -#: cps/helper.py:868 +#: cps/helper.py:872 msgid "Cover Format Error" msgstr "Định dạng ảnh bìa lỗi" -#: cps/helper.py:871 +#: cps/helper.py:875 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "" -#: cps/helper.py:881 +#: cps/helper.py:885 msgid "Failed to create path for cover" msgstr "Tạo đường dẫn cho ảnh bìa thất bại" -#: cps/helper.py:897 +#: cps/helper.py:901 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "" -#: cps/helper.py:908 +#: cps/helper.py:912 msgid "Only jpg/jpeg/png/webp/bmp files are supported as coverfile" msgstr "" -#: cps/helper.py:920 +#: cps/helper.py:924 msgid "Invalid cover file content" msgstr "" -#: cps/helper.py:924 +#: cps/helper.py:928 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "" -#: cps/helper.py:995 cps/helper.py:1183 +#: cps/helper.py:999 cps/helper.py:1156 #, fuzzy msgid "Cover" msgstr "Khám phá" -#: cps/helper.py:1032 +#: cps/helper.py:1016 msgid "Unrar binary file not found" msgstr "" -#: cps/helper.py:1043 +#: cps/helper.py:1027 msgid "Error executing UnRar" msgstr "" -#: cps/helper.py:1051 +#: cps/helper.py:1035 msgid "Could not find the specified directory" msgstr "" -#: cps/helper.py:1054 +#: cps/helper.py:1038 msgid "Please specify a directory, not a file" msgstr "" -#: cps/helper.py:1068 +#: cps/helper.py:1052 msgid "Calibre binaries not viable" msgstr "" -#: cps/helper.py:1077 +#: cps/helper.py:1061 #, python-format msgid "Missing calibre binaries: %(missing)s" msgstr "" -#: cps/helper.py:1079 +#: cps/helper.py:1063 #, python-format msgid "Missing executable permissions: %(missing)s" msgstr "" -#: cps/helper.py:1084 +#: cps/helper.py:1068 msgid "Error excecuting Calibre" msgstr "" -#: cps/helper.py:1185 cps/templates/admin.html:216 +#: cps/helper.py:1158 cps/templates/admin.html:216 msgid "Queue all books for metadata backup" msgstr "" @@ -925,7 +926,7 @@ msgstr "{} sao" #: cps/remotelogin.py:62 cps/templates/layout.html:67 #: cps/templates/layout.html:101 cps/templates/login.html:4 -#: cps/templates/login.html:21 cps/web.py:1333 +#: cps/templates/login.html:21 cps/web.py:1353 msgid "Login" msgstr "Đăng nhập" @@ -941,7 +942,7 @@ msgstr "Token đã hết hạn" msgid "Success! Please return to your device" msgstr "Thành công! Hãy quay lại thiết bị của bạn" -#: cps/render_template.py:42 cps/web.py:414 +#: cps/render_template.py:42 cps/web.py:418 msgid "Books" msgstr "Sách" @@ -966,7 +967,7 @@ msgstr "Sách đã tải" msgid "Show Downloaded Books" msgstr "Hiển thị sách đã tải" -#: cps/render_template.py:59 cps/templates/index.xml:33 cps/web.py:429 +#: cps/render_template.py:59 cps/templates/index.xml:33 cps/web.py:433 msgid "Top Rated Books" msgstr "Top sách được đánh giá cao" @@ -975,7 +976,7 @@ msgid "Show Top Rated Books" msgstr "Hiện thị top những sách được đánh giá cao" #: cps/render_template.py:62 cps/templates/index.xml:55 -#: cps/templates/index.xml:59 cps/web.py:750 +#: cps/templates/index.xml:59 cps/web.py:766 msgid "Read Books" msgstr "Sách đã đọc" @@ -985,7 +986,7 @@ msgid "Show Read and Unread" msgstr "Hiển thị đã đọc và chưa đọc" #: cps/render_template.py:66 cps/templates/index.xml:62 -#: cps/templates/index.xml:66 cps/web.py:753 +#: cps/templates/index.xml:66 cps/web.py:769 msgid "Unread Books" msgstr "Sách chưa đọc" @@ -1003,7 +1004,7 @@ msgid "Show Random Books" msgstr "Hiển thị sách ngẫu nhiên" #: cps/render_template.py:72 cps/templates/book_table.html:67 -#: cps/templates/index.xml:84 cps/web.py:1119 +#: cps/templates/index.xml:84 cps/web.py:1135 msgid "Categories" msgstr "Chủ đề" @@ -1014,7 +1015,7 @@ msgstr "Hiển thị chọn chủ đề" #: cps/render_template.py:75 cps/templates/book_edit.html:91 #: cps/templates/book_table.html:68 cps/templates/index.xml:91 -#: cps/templates/search_form.html:70 cps/web.py:1009 cps/web.py:1021 +#: cps/templates/search_form.html:70 cps/web.py:1025 cps/web.py:1037 msgid "Series" msgstr "Series" @@ -1034,7 +1035,7 @@ msgid "Show Author Section" msgstr "Hiển thị chọn tác giả" #: cps/render_template.py:82 cps/templates/book_table.html:72 -#: cps/templates/index.xml:77 cps/web.py:977 +#: cps/templates/index.xml:77 cps/web.py:993 msgid "Publishers" msgstr "Nhà phát hành" @@ -1045,7 +1046,7 @@ msgstr "Hiển thị chọn nhà phát hành" #: cps/render_template.py:85 cps/templates/book_table.html:70 #: cps/templates/index.xml:98 cps/templates/search_form.html:108 -#: cps/web.py:1091 +#: cps/web.py:1107 msgid "Languages" msgstr "Ngôn ngữ" @@ -1072,7 +1073,7 @@ msgstr "Định dạng file" msgid "Show File Formats Section" msgstr "Hiển thị lựa chọn định dạng file" -#: cps/render_template.py:96 cps/web.py:776 +#: cps/render_template.py:96 cps/web.py:792 msgid "Archived Books" msgstr "Sách đã lưu trữ" @@ -1081,7 +1082,7 @@ msgstr "Sách đã lưu trữ" msgid "Show Archived Books" msgstr "Hiện thị sách trong kho" -#: cps/render_template.py:101 cps/web.py:807 +#: cps/render_template.py:101 cps/web.py:823 msgid "Books List" msgstr "Danh sách sách" @@ -1303,171 +1304,175 @@ msgstr "" msgid "No release information available" msgstr "" -#: cps/templates/index.html:6 cps/web.py:441 +#: cps/templates/index.html:6 cps/web.py:445 msgid "Discover (Random Books)" msgstr "" -#: cps/web.py:477 +#: cps/web.py:481 msgid "Hot Books (Most Downloaded)" msgstr "" -#: cps/web.py:508 +#: cps/web.py:512 #, python-format msgid "Downloaded books by %(user)s" msgstr "" -#: cps/web.py:541 +#: cps/web.py:545 #, python-format msgid "Author: %(name)s" msgstr "" -#: cps/web.py:577 +#: cps/web.py:581 #, python-format msgid "Publisher: %(name)s" msgstr "" -#: cps/web.py:605 +#: cps/web.py:609 #, python-format msgid "Series: %(serie)s" msgstr "" -#: cps/web.py:620 +#: cps/web.py:623 #, fuzzy msgid "Rating: None" msgstr "Đánh giá cao hơn" -#: cps/web.py:629 +#: cps/web.py:632 #, python-format msgid "Rating: %(rating)s stars" msgstr "" -#: cps/web.py:645 +#: cps/web.py:663 #, python-format msgid "File format: %(format)s" msgstr "" -#: cps/web.py:682 +#: cps/web.py:698 #, python-format msgid "Category: %(name)s" msgstr "" -#: cps/web.py:711 +#: cps/web.py:727 #, python-format msgid "Language: %(name)s" msgstr "" -#: cps/templates/admin.html:16 cps/web.py:949 +#: cps/templates/admin.html:16 cps/web.py:965 msgid "Downloads" msgstr "Tải xuống" -#: cps/web.py:1051 +#: cps/web.py:1067 msgid "Ratings list" msgstr "Danh sách đánh giá" -#: cps/web.py:1078 +#: cps/web.py:1094 msgid "File formats list" msgstr "Danh sách định dạng file" -#: cps/web.py:1233 +#: cps/web.py:1249 msgid "Please configure the SMTP mail settings first..." msgstr "" -#: cps/web.py:1240 +#: cps/web.py:1256 #, python-format msgid "Success! Book queued for sending to %(eReadermail)s" msgstr "" -#: cps/web.py:1243 +#: cps/web.py:1259 #, python-format msgid "Oops! There was an error sending book: %(res)s" msgstr "" -#: cps/web.py:1245 +#: cps/web.py:1261 msgid "Oops! Please update your profile with a valid eReader Email." msgstr "" -#: cps/web.py:1261 +#: cps/web.py:1277 msgid "Please wait one minute to register next user" msgstr "" #: cps/templates/layout.html:68 cps/templates/layout.html:102 -#: cps/templates/login.html:27 cps/templates/register.html:17 cps/web.py:1262 -#: cps/web.py:1267 cps/web.py:1271 cps/web.py:1277 cps/web.py:1297 -#: cps/web.py:1301 cps/web.py:1314 cps/web.py:1317 +#: cps/templates/login.html:27 cps/templates/register.html:17 cps/web.py:1278 +#: cps/web.py:1282 cps/web.py:1287 cps/web.py:1291 cps/web.py:1297 +#: cps/web.py:1317 cps/web.py:1321 cps/web.py:1334 cps/web.py:1337 msgid "Register" msgstr "Đăng ký" -#: cps/web.py:1266 cps/web.py:1313 +#: cps/web.py:1281 cps/web.py:1385 +msgid "Connection error to limiter backend, please contact your administrator" +msgstr "" + +#: cps/web.py:1286 cps/web.py:1333 msgid "Oops! Email server is not configured, please contact your administrator." msgstr "" -#: cps/web.py:1299 +#: cps/web.py:1319 msgid "Oops! Your Email is not allowed." msgstr "Email của bạn không được cho phép để đăng ký" -#: cps/web.py:1302 +#: cps/web.py:1322 msgid "Success! Confirmation Email has been sent." msgstr "" -#: cps/web.py:1348 cps/web.py:1367 +#: cps/web.py:1368 cps/web.py:1391 msgid "Cannot activate LDAP authentication" msgstr "" -#: cps/web.py:1361 +#: cps/web.py:1381 msgid "Please wait one minute before next login" msgstr "" -#: cps/web.py:1376 +#: cps/web.py:1400 #, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "" -#: cps/web.py:1383 +#: cps/web.py:1407 #, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgstr "" -#: cps/web.py:1388 +#: cps/web.py:1412 #, fuzzy, python-format msgid "Could not login: %(message)s" msgstr "Không thể đăng nhập: %(message)s" -#: cps/web.py:1392 cps/web.py:1417 +#: cps/web.py:1416 cps/web.py:1441 #, fuzzy msgid "Wrong Username or Password" msgstr "Tên đăng nhập hoặc mật khẩu không đúng" -#: cps/web.py:1399 +#: cps/web.py:1423 #, fuzzy msgid "New Password was sent to your email address" msgstr "Mật khẩu mới đã được gửi đến email của bạn" -#: cps/web.py:1403 +#: cps/web.py:1427 #, fuzzy msgid "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/web.py:1405 +#: cps/web.py:1429 #, fuzzy msgid "Please enter valid username to reset password" msgstr "Tên đăng nhập hoặc mật khẩu không đúng" -#: cps/web.py:1413 +#: cps/web.py:1437 #, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "" -#: cps/web.py:1471 cps/web.py:1521 +#: cps/web.py:1495 cps/web.py:1545 #, python-format msgid "%(name)s's Profile" msgstr "" -#: cps/web.py:1487 +#: cps/web.py:1511 #, fuzzy msgid "Success! Profile Updated" msgstr "Metadata đã được cập nhật thành công" -#: cps/web.py:1491 +#: cps/web.py:1515 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" @@ -1480,41 +1485,41 @@ msgstr "" msgid "%(book)s send to E-Reader" msgstr "%(book)s gửi tới Kindle" -#: cps/tasks/convert.py:166 +#: cps/tasks/convert.py:167 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "" -#: cps/tasks/convert.py:200 +#: cps/tasks/convert.py:201 #, python-format msgid "%(format)s format not found on disk" msgstr "" -#: cps/tasks/convert.py:204 +#: cps/tasks/convert.py:205 msgid "Ebook converter failed with unknown error" msgstr "" -#: cps/tasks/convert.py:223 +#: cps/tasks/convert.py:224 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "" -#: cps/tasks/convert.py:244 +#: cps/tasks/convert.py:245 #, python-format msgid "Converted file not found or more than one file in folder %(folder)s" msgstr "" -#: cps/tasks/convert.py:279 +#: cps/tasks/convert.py:287 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "" -#: cps/tasks/convert.py:302 +#: cps/tasks/convert.py:310 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "" -#: cps/tasks/convert.py:307 +#: cps/tasks/convert.py:315 #, fuzzy msgid "Convert" msgstr "Khám phá" @@ -1524,7 +1529,7 @@ msgstr "Khám phá" msgid "Reconnecting Calibre database" msgstr "Kết nối lại với cơ sở dữ liệu Calibre" -#: cps/tasks/mail.py:269 +#: cps/tasks/mail.py:278 #, fuzzy msgid "E-mail" msgstr "Test e-mail" @@ -1805,12 +1810,12 @@ 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:414 -#: cps/templates/config_view_edit.html:175 cps/templates/modal_dialogs.html:64 -#: cps/templates/modal_dialogs.html:99 cps/templates/modal_dialogs.html:117 -#: cps/templates/modal_dialogs.html:135 cps/templates/schedule_edit.html:45 -#: cps/templates/shelf_edit.html:27 cps/templates/tasks.html:46 -#: cps/templates/user_edit.html:144 +#: cps/templates/config_db.html:66 cps/templates/config_edit.html:428 +#: 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 +#: cps/templates/schedule_edit.html:45 cps/templates/shelf_edit.html:27 +#: cps/templates/tasks.html:46 cps/templates/user_edit.html:144 msgid "Cancel" msgstr "Huỷ bỏ" @@ -1991,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:413 cps/templates/config_view_edit.html:174 +#: cps/templates/config_edit.html:427 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 @@ -2156,7 +2161,7 @@ msgid "Location of Calibre Database" msgstr "Vị trí cơ sở dữ liệu của Calibre" #: cps/templates/config_db.html:21 -msgid "Separate Book files from Library (Highly experimental, might not work at all)" +msgid "Separate Book Files from Library" msgstr "" #: cps/templates/config_db.html:34 @@ -2240,7 +2245,7 @@ msgid "Convert non-English characters in title and author while saving to disk" msgstr "" #: cps/templates/config_edit.html:108 -msgid "Embed Metadata to Ebook File on Download and Conversion (needs Calibre/Kepubify binaries)" +msgid "Embed Metadata to Ebook File on Download/Conversion/e-mail (needs Calibre/Kepubify binaries)" msgstr "" #: cps/templates/config_edit.html:112 @@ -2463,40 +2468,52 @@ msgstr "Thiết lập OAuth" msgid "Limit failed login attempts" msgstr "" -#: cps/templates/config_edit.html:376 +#: cps/templates/config_edit.html:377 +msgid "Configure Backend for Limiter" +msgstr "" + +#: cps/templates/config_edit.html:381 +msgid "Options for Limiter" +msgstr "" + +#: cps/templates/config_edit.html:386 msgid "Session protection" msgstr "" -#: cps/templates/config_edit.html:378 +#: cps/templates/config_edit.html:388 msgid "Basic" msgstr "" -#: cps/templates/config_edit.html:379 +#: cps/templates/config_edit.html:389 msgid "Strong" msgstr "" -#: cps/templates/config_edit.html:384 +#: cps/templates/config_edit.html:394 #, fuzzy msgid "User Password policy" msgstr "Reset mật khẩu người dùng" -#: cps/templates/config_edit.html:388 +#: cps/templates/config_edit.html:398 msgid "Minimum password length" msgstr "" -#: cps/templates/config_edit.html:393 +#: cps/templates/config_edit.html:403 msgid "Enforce number" msgstr "" -#: cps/templates/config_edit.html:397 +#: cps/templates/config_edit.html:407 msgid "Enforce lowercase characters" msgstr "" -#: cps/templates/config_edit.html:401 +#: cps/templates/config_edit.html:411 msgid "Enforce uppercase characters" msgstr "" -#: cps/templates/config_edit.html:405 +#: cps/templates/config_edit.html:415 +msgid "Enforce characters (needed For Chinese/Japanese/Korean Characters)" +msgstr "" + +#: cps/templates/config_edit.html:419 msgid "Enforce special characters" msgstr "" @@ -2618,47 +2635,47 @@ msgstr "Sách %(index)s của %(range)s" msgid "Published" msgstr "Đã phát hành" -#: cps/templates/detail.html:250 cps/templates/listenmp3.html:158 +#: cps/templates/detail.html:251 cps/templates/listenmp3.html:158 msgid "Mark As Unread" msgstr "Đánh dấu chưa đọc" -#: cps/templates/detail.html:251 cps/templates/listenmp3.html:158 +#: cps/templates/detail.html:252 cps/templates/listenmp3.html:158 msgid "Mark As Read" msgstr "Đánh dấu đã đọc" -#: cps/templates/detail.html:253 cps/templates/listenmp3.html:159 +#: cps/templates/detail.html:254 cps/templates/listenmp3.html:159 msgid "Read" msgstr "Đọc" -#: cps/templates/detail.html:263 cps/templates/listenmp3.html:166 +#: cps/templates/detail.html:264 cps/templates/listenmp3.html:166 msgid "Restore from archive" msgstr "Khôi phục từ lưu trữ" -#: cps/templates/detail.html:264 cps/templates/listenmp3.html:166 +#: cps/templates/detail.html:265 cps/templates/listenmp3.html:166 msgid "Add to archive" msgstr "Thêm vào lưu trữ" -#: cps/templates/detail.html:266 cps/templates/listenmp3.html:167 +#: cps/templates/detail.html:267 cps/templates/listenmp3.html:167 msgid "Archived" msgstr "Lưu trữ" -#: cps/templates/detail.html:277 cps/templates/listenmp3.html:177 +#: cps/templates/detail.html:278 cps/templates/listenmp3.html:177 msgid "Description:" msgstr "Mô tả:" -#: cps/templates/detail.html:292 cps/templates/listenmp3.html:190 +#: cps/templates/detail.html:293 cps/templates/listenmp3.html:190 #: cps/templates/search.html:16 msgid "Add to shelf" msgstr "Thêm vào giá sách" -#: cps/templates/detail.html:304 cps/templates/detail.html:323 +#: cps/templates/detail.html:305 cps/templates/detail.html:324 #: cps/templates/feed.xml:81 cps/templates/layout.html:154 #: cps/templates/listenmp3.html:201 cps/templates/listenmp3.html:218 #: cps/templates/search.html:22 msgid "(Public)" msgstr "(Công khai)" -#: cps/templates/detail.html:339 +#: cps/templates/detail.html:340 msgid "Edit Metadata" msgstr "Chỉnh sửa Metadata" diff --git a/cps/translations/zh_Hans_CN/LC_MESSAGES/messages.mo b/cps/translations/zh_Hans_CN/LC_MESSAGES/messages.mo index 60df4456..747dc9e7 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 32accb40..dbb57f0a 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-02-10 10:06+0100\n" +"POT-Creation-Date: 2024-04-27 07:20+0200\n" "PO-Revision-Date: 2020-09-27 22:18+0800\n" "Last-Translator: xlivevil \n" "Language: zh_CN\n" @@ -22,487 +22,487 @@ msgstr "" msgid "Statistics" msgstr "统计" -#: cps/admin.py:149 +#: cps/admin.py:150 msgid "Server restarted, please reload page." msgstr "服务器已重启,请刷新页面" -#: cps/admin.py:151 +#: cps/admin.py:152 msgid "Performing Server shutdown, please close window." msgstr "正在关闭服务器,请关闭窗口" -#: cps/admin.py:159 +#: cps/admin.py:160 msgid "Success! Database Reconnected" msgstr "数据库重新连接成功" -#: cps/admin.py:162 +#: cps/admin.py:163 msgid "Unknown command" msgstr "未知命令" -#: cps/admin.py:173 +#: cps/admin.py:174 msgid "Success! Books queued for Metadata Backup, please check Tasks for result" msgstr "成功!书籍已排队进行元数据备份,请检查任务列表以获取结果" -#: cps/admin.py:206 cps/editbooks.py:589 cps/editbooks.py:591 -#: cps/editbooks.py:629 cps/editbooks.py:646 cps/editbooks.py:1262 +#: cps/admin.py:207 cps/editbooks.py:590 cps/editbooks.py:592 +#: cps/editbooks.py:630 cps/editbooks.py:647 cps/editbooks.py:1263 #: cps/updater.py:613 cps/uploader.py:93 cps/uploader.py:102 msgid "Unknown" msgstr "未知" -#: cps/admin.py:231 +#: cps/admin.py:232 msgid "Admin page" msgstr "管理页" -#: cps/admin.py:251 +#: cps/admin.py:252 msgid "Basic Configuration" msgstr "基本配置" -#: cps/admin.py:289 +#: cps/admin.py:290 msgid "UI Configuration" msgstr "界面配置" -#: cps/admin.py:323 cps/templates/admin.html:51 +#: cps/admin.py:324 cps/templates/admin.html:51 msgid "Edit Users" msgstr "管理用户" -#: cps/admin.py:367 cps/opds.py:506 cps/templates/grid.html:14 +#: cps/admin.py:368 cps/opds.py:506 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "全部" -#: cps/admin.py:394 cps/admin.py:1405 +#: cps/admin.py:395 cps/admin.py:1417 msgid "User not found" msgstr "找不到用户" -#: cps/admin.py:408 +#: cps/admin.py:409 msgid "{} users deleted successfully" msgstr "成功删除 {} 个用户" -#: cps/admin.py:431 cps/templates/config_view_edit.html:133 +#: cps/admin.py:432 cps/templates/config_view_edit.html:133 #: cps/templates/user_edit.html:45 cps/templates/user_table.html:81 msgid "Show All" msgstr "显示全部" -#: cps/admin.py:452 cps/admin.py:458 +#: cps/admin.py:453 cps/admin.py:459 msgid "Malformed request" msgstr "格式错误的请求" -#: cps/admin.py:470 cps/admin.py:2033 +#: cps/admin.py:471 cps/admin.py:2048 msgid "Guest Name can't be changed" msgstr "访客名称无法更改" -#: cps/admin.py:482 +#: cps/admin.py:483 msgid "Guest can't have this role" msgstr "游客无法拥有此角色" -#: cps/admin.py:494 cps/admin.py:1987 +#: cps/admin.py:495 cps/admin.py:2002 msgid "No admin user remaining, can't remove admin role" msgstr "没有其余管理员账户,无法删除管理员角色" -#: cps/admin.py:498 cps/admin.py:512 +#: cps/admin.py:499 cps/admin.py:513 msgid "Value has to be true or false" msgstr "值必须为 true 或 false" -#: cps/admin.py:500 +#: cps/admin.py:501 msgid "Invalid role" msgstr "无效角色" -#: cps/admin.py:504 +#: cps/admin.py:505 msgid "Guest can't have this view" msgstr "游客无法查看此页面" -#: cps/admin.py:514 +#: cps/admin.py:515 msgid "Invalid view" msgstr "无效页面" -#: cps/admin.py:517 +#: cps/admin.py:518 msgid "Guest's Locale is determined automatically and can't be set" msgstr "无法设置游客的本地化,该项设置的值将自动检测" -#: cps/admin.py:521 +#: cps/admin.py:522 msgid "No Valid Locale Given" msgstr "无可用本地化" -#: cps/admin.py:532 +#: cps/admin.py:533 msgid "No Valid Book Language Given" msgstr "无有效书籍语言" -#: cps/admin.py:534 cps/editbooks.py:455 +#: cps/admin.py:535 cps/editbooks.py:456 msgid "Parameter not found" msgstr "参数未找到" -#: cps/admin.py:571 +#: cps/admin.py:572 msgid "Invalid Read Column" msgstr "无效的阅读栏目" -#: cps/admin.py:577 +#: cps/admin.py:578 msgid "Invalid Restricted Column" msgstr "无效的限制栏目" -#: cps/admin.py:597 cps/admin.py:1858 +#: cps/admin.py:598 cps/admin.py:1873 msgid "Calibre-Web configuration updated" msgstr "Calibre-Web 配置已更新" -#: cps/admin.py:609 +#: cps/admin.py:610 msgid "Do you really want to delete the Kobo Token?" msgstr "您确定删除 Kobo 令牌吗?" -#: cps/admin.py:611 +#: cps/admin.py:612 msgid "Do you really want to delete this domain?" msgstr "您确定要删除此域吗?" -#: cps/admin.py:613 +#: cps/admin.py:614 msgid "Do you really want to delete this user?" msgstr "您确定要删除此用户吗?" -#: cps/admin.py:615 +#: cps/admin.py:616 msgid "Are you sure you want to delete this shelf?" msgstr "您确定要删除此书架吗?" -#: cps/admin.py:617 +#: cps/admin.py:618 msgid "Are you sure you want to change locales of selected user(s)?" msgstr "您确定要修改选定用户的本地化设置吗?" -#: cps/admin.py:619 +#: cps/admin.py:620 msgid "Are you sure you want to change visible book languages for selected user(s)?" msgstr "您确定要修改选定用户的可见书籍语言吗?" -#: cps/admin.py:621 +#: cps/admin.py:622 msgid "Are you sure you want to change the selected role for the selected user(s)?" msgstr "您确定要修改选定用户的选定角色吗?" -#: cps/admin.py:623 +#: cps/admin.py:624 msgid "Are you sure you want to change the selected restrictions for the selected user(s)?" msgstr "您确定要修改选定用户的选定限制吗?" -#: cps/admin.py:625 +#: cps/admin.py:626 msgid "Are you sure you want to change the selected visibility restrictions for the selected user(s)?" msgstr "您确定要修改选定用户的选定可视化限制吗?" -#: cps/admin.py:628 +#: cps/admin.py:629 msgid "Are you sure you want to change shelf sync behavior for the selected user(s)?" msgstr "您确定要更改所选用户的书架同步行为吗?" -#: cps/admin.py:630 +#: cps/admin.py:631 msgid "Are you sure you want to change Calibre library location?" msgstr "您确定要更改 Calibre 库位置吗?" -#: cps/admin.py:632 +#: cps/admin.py:633 msgid "Calibre-Web will search for updated Covers and update Cover Thumbnails, this may take a while?" msgstr "Calibre-Web 将搜索更新封面,并更新缩略图,这可能需要一段时间" -#: cps/admin.py:635 +#: cps/admin.py:636 msgid "Are you sure you want delete Calibre-Web's sync database to force a full sync with your Kobo Reader?" msgstr "您确定要删除 Calibre-Web 的同步数据库以强制与您的 Kobo Reader 进行完全同步吗" -#: cps/admin.py:878 cps/admin.py:884 cps/admin.py:894 cps/admin.py:904 +#: cps/admin.py:879 cps/admin.py:885 cps/admin.py:895 cps/admin.py:905 #: cps/templates/modal_dialogs.html:29 cps/templates/user_table.html:41 #: cps/templates/user_table.html:58 msgid "Deny" msgstr "拒绝" -#: cps/admin.py:880 cps/admin.py:886 cps/admin.py:896 cps/admin.py:906 +#: cps/admin.py:881 cps/admin.py:887 cps/admin.py:897 cps/admin.py:907 #: cps/templates/modal_dialogs.html:28 cps/templates/user_table.html:44 #: cps/templates/user_table.html:61 msgid "Allow" msgstr "允许" -#: cps/admin.py:921 +#: cps/admin.py:940 msgid "{} sync entries deleted" msgstr "{} 同步项目被删除" -#: cps/admin.py:969 +#: cps/admin.py:981 msgid "Tag not found" msgstr "标签未找到" -#: cps/admin.py:981 +#: cps/admin.py:993 msgid "Invalid Action" msgstr "无效的动作" -#: cps/admin.py:1111 +#: cps/admin.py:1123 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "client_secrets.json 未为 Web 应用程序配置" -#: cps/admin.py:1156 +#: cps/admin.py:1168 msgid "Logfile Location is not Valid, Please Enter Correct Path" msgstr "日志文件路径无效,请输入正确的路径" -#: cps/admin.py:1162 +#: cps/admin.py:1174 msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgstr "访问日志路径无效,请输入正确的路径" -#: cps/admin.py:1196 +#: cps/admin.py:1208 msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgstr "请输入 LDAP 主机、端口、DN 和用户对象标识符" -#: cps/admin.py:1202 +#: cps/admin.py:1214 msgid "Please Enter a LDAP Service Account and Password" msgstr "请输入一个 LDAP 服务账号和密码 " -#: cps/admin.py:1205 +#: cps/admin.py:1217 msgid "Please Enter a LDAP Service Account" msgstr "请输入一个 LDAP 服务账号" -#: cps/admin.py:1210 +#: cps/admin.py:1222 #, python-format msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgstr "LDAP 组对象过滤器需要一个具有“%s”格式标识符" -#: cps/admin.py:1212 +#: cps/admin.py:1224 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "LDAP 组对象过滤器的括号不匹配" -#: cps/admin.py:1216 +#: cps/admin.py:1228 #, python-format msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgstr "LDAP 用户对象过滤器需要一个具有“%s”格式标识符" -#: cps/admin.py:1218 +#: cps/admin.py:1230 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "LDAP 用户对象过滤器的括号不匹配" -#: cps/admin.py:1225 +#: cps/admin.py:1237 #, python-format msgid "LDAP Member User Filter needs to Have One \"%s\" Format Identifier" msgstr "LDAP 成员用户过滤器需要有一个“%s”格式标识符" -#: cps/admin.py:1227 +#: cps/admin.py:1239 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "LDAP 成员用户过滤器中有不匹配的括号" -#: cps/admin.py:1234 +#: cps/admin.py:1246 msgid "LDAP CACertificate, Certificate or Key Location is not Valid, Please Enter Correct Path" msgstr "LDAP CA证书、证书或密钥位置无效,请输入正确的路径" -#: cps/admin.py:1265 cps/templates/admin.html:53 +#: cps/admin.py:1277 cps/templates/admin.html:53 msgid "Add New User" msgstr "添加新用户" -#: cps/admin.py:1274 cps/templates/admin.html:100 +#: cps/admin.py:1286 cps/templates/admin.html:100 msgid "Edit Email Server Settings" msgstr "编辑邮件服务器设置" -#: cps/admin.py:1293 +#: cps/admin.py:1305 msgid "Success! Gmail Account Verified." msgstr "Gmail 账户验证成功" -#: cps/admin.py:1313 cps/admin.py:1316 cps/admin.py:1698 cps/admin.py:1842 -#: cps/admin.py:1940 cps/admin.py:2061 cps/editbooks.py:241 -#: cps/editbooks.py:317 cps/editbooks.py:1224 cps/shelf.py:90 cps/shelf.py:150 +#: cps/admin.py:1325 cps/admin.py:1328 cps/admin.py:1710 cps/admin.py:1857 +#: cps/admin.py:1955 cps/admin.py:2076 cps/editbooks.py:242 +#: cps/editbooks.py:318 cps/editbooks.py:1225 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:149 cps/web.py:1496 +#: cps/shelf.py:468 cps/tasks/convert.py:150 cps/web.py:1520 #, python-format msgid "Oops! Database Error: %(error)s." msgstr "数据库错误:%(error)s" -#: cps/admin.py:1323 +#: cps/admin.py:1335 #, python-format msgid "Test e-mail queued for sending to %(email)s, please check Tasks for result" msgstr "发送给 %(email)s 的测试邮件已加入队列。请检查任务结果" -#: cps/admin.py:1326 +#: cps/admin.py:1338 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "发送测试邮件时出错:%(res)s" -#: cps/admin.py:1328 +#: cps/admin.py:1340 msgid "Please configure your e-mail address first..." msgstr "请先配置您的邮箱地址..." -#: cps/admin.py:1330 +#: cps/admin.py:1342 msgid "Email Server Settings updated" msgstr "邮件服务器设置已更新" -#: cps/admin.py:1353 cps/templates/admin.html:195 +#: cps/admin.py:1365 cps/templates/admin.html:195 msgid "Edit Scheduled Tasks Settings" msgstr "编辑计划任务设置" -#: cps/admin.py:1365 +#: cps/admin.py:1377 msgid "Invalid start time for task specified" msgstr "指定任务的开始时间无效" -#: cps/admin.py:1370 +#: cps/admin.py:1382 msgid "Invalid duration for task specified" msgstr "指定任务的持续时间无效" -#: cps/admin.py:1380 +#: cps/admin.py:1392 msgid "Scheduled tasks settings updated" msgstr "已更新计划任务设置" -#: cps/admin.py:1390 cps/admin.py:1439 cps/admin.py:2057 cps/web.py:1296 +#: cps/admin.py:1402 cps/admin.py:1451 cps/admin.py:2072 cps/web.py:1316 msgid "Oops! An unknown error occurred. Please try again later." msgstr "发生一个未知错误,请稍后再试" -#: cps/admin.py:1394 +#: cps/admin.py:1406 msgid "Settings DB is not Writeable" msgstr "设置数据库不可写" -#: cps/admin.py:1424 cps/admin.py:2049 +#: cps/admin.py:1436 cps/admin.py:2064 #, python-format msgid "Edit User %(nick)s" msgstr "编辑用户 %(nick)s" -#: cps/admin.py:1436 +#: cps/admin.py:1448 #, python-format msgid "Success! Password for user %(user)s reset" msgstr "用户 %(user)s 的密码已重置" -#: cps/admin.py:1442 +#: cps/admin.py:1454 msgid "Oops! Please configure the SMTP mail settings." msgstr "请先配置 SMTP 邮箱设置..." -#: cps/admin.py:1453 +#: cps/admin.py:1465 msgid "Logfile viewer" msgstr "日志文件查看器" -#: cps/admin.py:1519 +#: cps/admin.py:1531 msgid "Requesting update package" msgstr "正在请求更新包" -#: cps/admin.py:1520 +#: cps/admin.py:1532 msgid "Downloading update package" msgstr "正在下载更新包" -#: cps/admin.py:1521 +#: cps/admin.py:1533 msgid "Unzipping update package" msgstr "正在解压更新包" -#: cps/admin.py:1522 +#: cps/admin.py:1534 msgid "Replacing files" msgstr "正在替换文件" -#: cps/admin.py:1523 +#: cps/admin.py:1535 msgid "Database connections are closed" msgstr "数据库连接已关闭" -#: cps/admin.py:1524 +#: cps/admin.py:1536 msgid "Stopping server" msgstr "正在停止服务器" -#: cps/admin.py:1525 +#: cps/admin.py:1537 msgid "Update finished, please press okay and reload page" msgstr "更新完成,请点击确定并刷新页面" -#: cps/admin.py:1526 cps/admin.py:1527 cps/admin.py:1528 cps/admin.py:1529 -#: cps/admin.py:1530 cps/admin.py:1531 +#: cps/admin.py:1538 cps/admin.py:1539 cps/admin.py:1540 cps/admin.py:1541 +#: cps/admin.py:1542 cps/admin.py:1543 msgid "Update failed:" msgstr "更新失败:" -#: cps/admin.py:1526 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 +#: cps/admin.py:1538 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 msgid "HTTP Error" msgstr "HTTP 错误" -#: cps/admin.py:1527 cps/updater.py:391 cps/updater.py:628 +#: cps/admin.py:1539 cps/updater.py:391 cps/updater.py:628 msgid "Connection error" msgstr "连接错误" -#: cps/admin.py:1528 cps/updater.py:393 cps/updater.py:630 +#: cps/admin.py:1540 cps/updater.py:393 cps/updater.py:630 msgid "Timeout while establishing connection" msgstr "建立连接超时" -#: cps/admin.py:1529 cps/updater.py:395 cps/updater.py:632 +#: cps/admin.py:1541 cps/updater.py:395 cps/updater.py:632 msgid "General error" msgstr "一般错误" -#: cps/admin.py:1530 +#: cps/admin.py:1542 msgid "Update file could not be saved in temp dir" msgstr "更新文件无法保存在临时目录中" -#: cps/admin.py:1531 +#: cps/admin.py:1543 msgid "Files could not be replaced during update" msgstr "更新期间无法替换文件" -#: cps/admin.py:1555 +#: cps/admin.py:1567 msgid "Failed to extract at least One LDAP User" msgstr "未能获得任何 LDAP 用户" -#: cps/admin.py:1600 +#: cps/admin.py:1612 msgid "Failed to Create at Least One LDAP User" msgstr "未能创建任何 LDAP 用户" -#: cps/admin.py:1613 +#: cps/admin.py:1625 #, python-format msgid "Error: %(ldaperror)s" msgstr "错误:%(ldaperror)s" -#: cps/admin.py:1617 +#: cps/admin.py:1629 msgid "Error: No user returned in response of LDAP server" msgstr "错误:在 LDAP 服务器的响应中没有返回用户" -#: cps/admin.py:1650 +#: cps/admin.py:1662 msgid "At Least One LDAP User Not Found in Database" msgstr "数据库中没有找到任何 LDAP 用户" -#: cps/admin.py:1652 +#: cps/admin.py:1664 msgid "{} User Successfully Imported" msgstr "{} 用户被成功导入" -#: cps/admin.py:1710 +#: cps/admin.py:1722 msgid "DB Location is not Valid, Please Enter Correct Path" msgstr "数据库路径无效,请输入正确的路径" -#: cps/admin.py:1730 +#: cps/admin.py:1742 msgid "DB is not Writeable" msgstr "数据库不可写入" -#: cps/admin.py:1746 +#: cps/admin.py:1758 msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgstr "密钥文件路径无效,请输入正确的路径" -#: cps/admin.py:1750 +#: cps/admin.py:1762 msgid "Certfile Location is not Valid, Please Enter Correct Path" msgstr "证书文件路径无效,请输入正确的路径" -#: cps/admin.py:1829 +#: cps/admin.py:1842 msgid "Password length has to be between 1 and 40" msgstr "密码长度必须在1到40之间" -#: cps/admin.py:1881 +#: cps/admin.py:1896 msgid "Database Settings updated" msgstr "数据库设置已更新" -#: cps/admin.py:1889 +#: cps/admin.py:1904 msgid "Database Configuration" msgstr "数据库配置" -#: cps/admin.py:1904 cps/web.py:1270 +#: cps/admin.py:1919 cps/web.py:1290 msgid "Oops! Please complete all fields." msgstr "请填写所有字段!" -#: cps/admin.py:1913 +#: cps/admin.py:1928 msgid "E-mail is not from valid domain" msgstr "邮箱不在有效域中" -#: cps/admin.py:1919 +#: cps/admin.py:1934 msgid "Add new user" msgstr "添加新用户" -#: cps/admin.py:1930 +#: cps/admin.py:1945 #, python-format msgid "User '%(user)s' created" msgstr "用户“%(user)s”已创建" -#: cps/admin.py:1936 +#: cps/admin.py:1951 msgid "Oops! An account already exists for this Email. or name." msgstr "使用此邮箱或用户名的账号已经存在" -#: cps/admin.py:1966 +#: cps/admin.py:1981 #, python-format msgid "User '%(nick)s' deleted" msgstr "用户“%(nick)s”已删除" -#: cps/admin.py:1969 +#: cps/admin.py:1984 msgid "Can't delete Guest User" msgstr "无法删除游客用户" -#: cps/admin.py:1972 +#: cps/admin.py:1987 msgid "No admin user remaining, can't delete user" msgstr "管理员账户不存在,无法删除用户" -#: cps/admin.py:2027 cps/web.py:1445 +#: cps/admin.py:2042 cps/web.py:1469 msgid "Email can't be empty and has to be a valid Email" msgstr "电子邮件地址不能为空,并且必须是有效的电子邮件" -#: cps/admin.py:2053 +#: cps/admin.py:2068 #, python-format msgid "User '%(nick)s' updated" msgstr "用户“%(nick)s”已更新" @@ -515,122 +515,123 @@ msgstr "未安装" msgid "Execution permissions missing" msgstr "缺少执行权限" -#: cps/db.py:752 cps/search.py:137 cps/web.py:731 +#: cps/db.py:752 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:993 cps/templates/config_edit.html:208 +#: cps/db.py:992 cps/templates/config_edit.html:208 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 -#: cps/web.py:558 cps/web.py:592 cps/web.py:665 cps/web.py:692 cps/web.py:973 -#: cps/web.py:1003 cps/web.py:1048 cps/web.py:1076 cps/web.py:1115 +#: 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 +#: cps/web.py:1131 msgid "None" msgstr "无" -#: cps/editbooks.py:122 cps/editbooks.py:910 cps/web.py:525 cps/web.py:1537 -#: cps/web.py:1581 cps/web.py:1626 +#: cps/editbooks.py:123 cps/editbooks.py:911 cps/web.py:529 cps/web.py:1561 +#: cps/web.py:1605 cps/web.py:1650 msgid "Oops! Selected book is unavailable. File does not exist or is not accessible" msgstr "糟糕!选择书名无法打开。文件不存在或者文件不可访问" -#: cps/editbooks.py:166 cps/editbooks.py:1245 +#: cps/editbooks.py:167 cps/editbooks.py:1246 msgid "User has no rights to upload cover" msgstr "用户没有权限上传封面" -#: cps/editbooks.py:186 cps/editbooks.py:731 +#: cps/editbooks.py:187 cps/editbooks.py:732 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "标识符不区分大小写,覆盖旧标识符" -#: cps/editbooks.py:228 +#: cps/editbooks.py:229 msgid "Metadata successfully updated" msgstr "已成功更新元数据" -#: cps/editbooks.py:246 +#: cps/editbooks.py:247 msgid "Error editing book: {}" msgstr "编辑书籍时出错: {}" -#: cps/editbooks.py:303 +#: cps/editbooks.py:304 #, python-format msgid "File %(file)s uploaded" msgstr "文件 %(file)s 已上传" -#: cps/editbooks.py:331 +#: cps/editbooks.py:332 msgid "Source or destination format for conversion missing" msgstr "转换的源格式或目的格式缺失" -#: cps/editbooks.py:339 +#: cps/editbooks.py:340 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "书籍已经被成功加入 %(book_format)s 格式转换队列" -#: cps/editbooks.py:343 +#: cps/editbooks.py:344 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "转换此书籍时出现错误: %(res)s" -#: cps/editbooks.py:650 +#: cps/editbooks.py:651 msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgstr "上传的书籍可能已经存在,建议修改后重新上传: " -#: cps/editbooks.py:705 cps/editbooks.py:1037 +#: cps/editbooks.py:706 cps/editbooks.py:1038 #, python-format msgid "'%(langname)s' is not a valid language" msgstr "'%(langname)s' 不是一种有效语言" -#: cps/editbooks.py:743 cps/editbooks.py:1185 +#: cps/editbooks.py:744 cps/editbooks.py:1186 #, python-format msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgstr "不能上传文件扩展名为“%(ext)s”的文件到此服务器" -#: cps/editbooks.py:747 cps/editbooks.py:1189 +#: cps/editbooks.py:748 cps/editbooks.py:1190 msgid "File to be uploaded must have an extension" msgstr "要上传的文件必须具有扩展名" -#: cps/editbooks.py:755 +#: cps/editbooks.py:756 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "文件 %(filename)s 无法保存到临时目录" -#: cps/editbooks.py:775 +#: cps/editbooks.py:776 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "移动封面文件失败 %(file)s:%(error)s" -#: cps/editbooks.py:832 cps/editbooks.py:834 +#: cps/editbooks.py:833 cps/editbooks.py:835 msgid "Book Format Successfully Deleted" msgstr "书籍的此格式副本已成功删除" -#: cps/editbooks.py:841 cps/editbooks.py:843 +#: cps/editbooks.py:842 cps/editbooks.py:844 msgid "Book Successfully Deleted" msgstr "书籍已成功删除" -#: cps/editbooks.py:895 +#: cps/editbooks.py:896 msgid "You are missing permissions to delete books" msgstr "您没有删除书籍的权限" -#: cps/editbooks.py:945 +#: cps/editbooks.py:946 msgid "edit metadata" msgstr "编辑元数据" -#: cps/editbooks.py:994 +#: cps/editbooks.py:995 #, python-format msgid "%(seriesindex)s is not a valid number, skipping" msgstr "%(seriesindex)s 不是一个有效的数值,忽略" -#: cps/editbooks.py:1180 +#: cps/editbooks.py:1181 msgid "User has no rights to upload additional file formats" msgstr "用户没有权限上传其他文件格式" -#: cps/editbooks.py:1201 +#: cps/editbooks.py:1202 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "创建路径 %(path)s 失败 (权限不足)" -#: cps/editbooks.py:1206 +#: cps/editbooks.py:1207 #, python-format msgid "Failed to store file %(file)s." msgstr "保存文件 %(file)s 失败" -#: cps/editbooks.py:1230 +#: cps/editbooks.py:1231 #, python-format msgid "File format %(ext)s added to %(book)s" msgstr "已添加 %(ext)s 格式到 %(book)s" @@ -643,201 +644,201 @@ msgstr "Google Drive 设置未完成,请尝试停用并再次激活 Google 云 msgid "Callback domain is not verified, please follow steps to verify domain in google developer console" msgstr "回调域名尚未被校验,请在 Google 开发者控制台按步骤校验域名" -#: cps/helper.py:84 +#: cps/helper.py:86 #, python-format msgid "%(format)s format not found for book id: %(book)d" msgstr "找不到 ID 为 %(book)d 的书籍的 %(format)s 格式" -#: cps/helper.py:91 cps/tasks/convert.py:86 +#: cps/helper.py:93 cps/tasks/convert.py:86 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "Google Drive %(fn)s 上找不到 %(format)s" -#: cps/helper.py:96 +#: cps/helper.py:98 #, python-format msgid "%(format)s not found: %(fn)s" msgstr "找不到 %(format)s:%(fn)s" -#: cps/helper.py:101 cps/helper.py:226 cps/templates/detail.html:58 +#: cps/helper.py:103 cps/helper.py:228 cps/templates/detail.html:58 msgid "Send to eReader" msgstr "发送到电子阅读器" -#: cps/helper.py:102 cps/helper.py:120 cps/helper.py:228 +#: cps/helper.py:104 cps/helper.py:122 cps/helper.py:230 msgid "This Email has been sent via Calibre-Web." msgstr "此邮件已经通过 Calibre-Web 发送" -#: cps/helper.py:118 +#: cps/helper.py:120 msgid "Calibre-Web Test Email" msgstr "Calibre-Web 测试邮件" -#: cps/helper.py:119 +#: cps/helper.py:121 msgid "Test Email" msgstr "测试邮件" -#: cps/helper.py:136 +#: cps/helper.py:138 msgid "Get Started with Calibre-Web" msgstr "开启 Calibre-Web 之旅" -#: cps/helper.py:141 +#: cps/helper.py:143 #, python-format msgid "Registration Email for user: %(name)s" msgstr "用户注册电子邮件:%(name)s" -#: cps/helper.py:152 cps/helper.py:158 +#: cps/helper.py:154 cps/helper.py:160 #, python-format msgid "Convert %(orig)s to %(format)s and send to eReader" msgstr "转换 %(orig)s 到 %(format)s 并发送到电子阅读器" -#: cps/helper.py:177 cps/helper.py:181 cps/helper.py:185 +#: cps/helper.py:179 cps/helper.py:183 cps/helper.py:187 #, python-format msgid "Send %(format)s to eReader" msgstr "发送 %(format)s 到电子阅读器" -#: cps/helper.py:225 +#: cps/helper.py:227 #, python-format msgid "%(book)s send to eReader" msgstr "%(book)s 发送到电子阅读器" -#: cps/helper.py:230 +#: cps/helper.py:232 msgid "The requested file could not be read. Maybe wrong permissions?" msgstr "无法读取请求的文件。可能有错误的权限设置?" -#: cps/helper.py:345 +#: cps/helper.py:347 msgid "Read status could not set: {}" msgstr "阅读状态无法设置: {}" -#: cps/helper.py:368 +#: cps/helper.py:370 #, python-format msgid "Deleting bookfolder for book %(id)s failed, path has subfolders: %(path)s" msgstr "删除书的文件夹 %(id)s 失败,路径有子文件夹:%(path)s" -#: cps/helper.py:374 +#: cps/helper.py:376 #, python-format msgid "Deleting book %(id)s failed: %(message)s" msgstr "删除书籍 %(id)s 失败:%(message)s" -#: cps/helper.py:385 +#: cps/helper.py:387 #, python-format msgid "Deleting book %(id)s from database only, book path in database not valid: %(path)s" msgstr "仅从数据库中删除书籍 %(id)s,数据库中的书籍路径无效: %(path)s" -#: cps/helper.py:450 +#: cps/helper.py:452 #, 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:522 cps/helper.py:531 +#: cps/helper.py:524 cps/helper.py:533 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "Google Drive 上找不到文件 %(file)s" -#: cps/helper.py:565 +#: cps/helper.py:567 #, 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:585 +#: cps/helper.py:587 msgid "Error in rename file in path: {}" msgstr "重命名此路径: {}文件时出错" -#: cps/helper.py:603 +#: cps/helper.py:605 #, python-format msgid "Book path %(path)s not found on Google Drive" msgstr "Google Drive 上找不到书籍路径 %(path)s" -#: cps/helper.py:668 +#: cps/helper.py:670 msgid "Found an existing account for this Email address" msgstr "已存在使用此邮箱的账户" -#: cps/helper.py:676 +#: cps/helper.py:678 msgid "This username is already taken" msgstr "此用户名已被使用" -#: cps/helper.py:688 +#: cps/helper.py:690 msgid "Invalid Email address format" msgstr "无效的邮箱格式" -#: cps/helper.py:706 +#: cps/helper.py:710 msgid "Password doesn't comply with password validation rules" msgstr "密码不符合密码验证规则" -#: cps/helper.py:855 +#: cps/helper.py:859 msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "上传封面所需的 Python 模块 'advocate' 未安装" -#: cps/helper.py:865 +#: cps/helper.py:869 msgid "Error Downloading Cover" msgstr "下载封面时出错" -#: cps/helper.py:868 +#: cps/helper.py:872 msgid "Cover Format Error" msgstr "封面格式出错" -#: cps/helper.py:871 +#: cps/helper.py:875 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "您没有访问本地主机或本地网络进行封面上传" -#: cps/helper.py:881 +#: cps/helper.py:885 msgid "Failed to create path for cover" msgstr "创建封面路径失败" -#: cps/helper.py:897 +#: cps/helper.py:901 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "封面文件不是有效的图片文件,或者无法存储它" -#: cps/helper.py:908 +#: cps/helper.py:912 msgid "Only jpg/jpeg/png/webp/bmp files are supported as coverfile" msgstr "封面文件只支持 jpg、jpeg、png、webp、bmp 文件" -#: cps/helper.py:920 +#: cps/helper.py:924 msgid "Invalid cover file content" msgstr "封面文件内容无效" -#: cps/helper.py:924 +#: cps/helper.py:928 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "仅将 jpg、jpeg 文件作为封面文件" -#: cps/helper.py:995 cps/helper.py:1183 +#: cps/helper.py:999 cps/helper.py:1156 msgid "Cover" msgstr "封面" -#: cps/helper.py:1032 +#: cps/helper.py:1016 msgid "Unrar binary file not found" msgstr "找不到 Unrar 执行文件" -#: cps/helper.py:1043 +#: cps/helper.py:1027 msgid "Error executing UnRar" msgstr "执行 UnRar 时出错" -#: cps/helper.py:1051 +#: cps/helper.py:1035 msgid "Could not find the specified directory" msgstr "" -#: cps/helper.py:1054 +#: cps/helper.py:1038 msgid "Please specify a directory, not a file" msgstr "" -#: cps/helper.py:1068 +#: cps/helper.py:1052 #, fuzzy msgid "Calibre binaries not viable" msgstr "数据库不可写入" -#: cps/helper.py:1077 +#: cps/helper.py:1061 #, python-format msgid "Missing calibre binaries: %(missing)s" msgstr "" -#: cps/helper.py:1079 +#: cps/helper.py:1063 #, fuzzy, python-format msgid "Missing executable permissions: %(missing)s" msgstr "缺少执行权限" -#: cps/helper.py:1084 +#: cps/helper.py:1068 #, fuzzy msgid "Error excecuting Calibre" msgstr "执行 UnRar 时出错" -#: cps/helper.py:1185 cps/templates/admin.html:216 +#: cps/helper.py:1158 cps/templates/admin.html:216 msgid "Queue all books for metadata backup" msgstr "将所有书籍加入元数据备份队列" @@ -921,7 +922,7 @@ msgstr "{} 星" #: cps/remotelogin.py:62 cps/templates/layout.html:67 #: cps/templates/layout.html:101 cps/templates/login.html:4 -#: cps/templates/login.html:21 cps/web.py:1333 +#: cps/templates/login.html:21 cps/web.py:1353 msgid "Login" msgstr "登录" @@ -937,7 +938,7 @@ msgstr "令牌已过期" msgid "Success! Please return to your device" msgstr "成功!请返回您的设备" -#: cps/render_template.py:42 cps/web.py:414 +#: cps/render_template.py:42 cps/web.py:418 msgid "Books" msgstr "书籍" @@ -962,7 +963,7 @@ msgstr "已下载书籍" msgid "Show Downloaded Books" msgstr "显示下载过的书籍" -#: cps/render_template.py:59 cps/templates/index.xml:33 cps/web.py:429 +#: cps/render_template.py:59 cps/templates/index.xml:33 cps/web.py:433 msgid "Top Rated Books" msgstr "最高评分书籍" @@ -971,7 +972,7 @@ msgid "Show Top Rated Books" msgstr "显示最高评分书籍" #: cps/render_template.py:62 cps/templates/index.xml:55 -#: cps/templates/index.xml:59 cps/web.py:750 +#: cps/templates/index.xml:59 cps/web.py:766 msgid "Read Books" msgstr "已读书籍" @@ -980,7 +981,7 @@ msgid "Show Read and Unread" msgstr "显示已读或未读状态" #: cps/render_template.py:66 cps/templates/index.xml:62 -#: cps/templates/index.xml:66 cps/web.py:753 +#: cps/templates/index.xml:66 cps/web.py:769 msgid "Unread Books" msgstr "未读书籍" @@ -998,7 +999,7 @@ msgid "Show Random Books" msgstr "显示随机书籍" #: cps/render_template.py:72 cps/templates/book_table.html:67 -#: cps/templates/index.xml:84 cps/web.py:1119 +#: cps/templates/index.xml:84 cps/web.py:1135 msgid "Categories" msgstr "分类" @@ -1008,7 +1009,7 @@ msgstr "显示分类栏目" #: cps/render_template.py:75 cps/templates/book_edit.html:91 #: cps/templates/book_table.html:68 cps/templates/index.xml:91 -#: cps/templates/search_form.html:70 cps/web.py:1009 cps/web.py:1021 +#: cps/templates/search_form.html:70 cps/web.py:1025 cps/web.py:1037 msgid "Series" msgstr "丛书" @@ -1026,7 +1027,7 @@ msgid "Show Author Section" msgstr "显示作者栏目" #: cps/render_template.py:82 cps/templates/book_table.html:72 -#: cps/templates/index.xml:77 cps/web.py:977 +#: cps/templates/index.xml:77 cps/web.py:993 msgid "Publishers" msgstr "出版社" @@ -1036,7 +1037,7 @@ msgstr "显示出版社栏目" #: cps/render_template.py:85 cps/templates/book_table.html:70 #: cps/templates/index.xml:98 cps/templates/search_form.html:108 -#: cps/web.py:1091 +#: cps/web.py:1107 msgid "Languages" msgstr "语言" @@ -1060,7 +1061,7 @@ msgstr "文件格式" msgid "Show File Formats Section" msgstr "显示文件格式栏目" -#: cps/render_template.py:96 cps/web.py:776 +#: cps/render_template.py:96 cps/web.py:792 msgid "Archived Books" msgstr "归档书籍" @@ -1068,7 +1069,7 @@ msgstr "归档书籍" msgid "Show Archived Books" msgstr "显示归档书籍" -#: cps/render_template.py:101 cps/web.py:807 +#: cps/render_template.py:101 cps/web.py:823 msgid "Books List" msgstr "书籍列表" @@ -1289,165 +1290,170 @@ msgstr "有新的更新。单击下面的按钮以更新到版本: %(version)s" msgid "No release information available" msgstr "无可用发布信息" -#: cps/templates/index.html:6 cps/web.py:441 +#: cps/templates/index.html:6 cps/web.py:445 msgid "Discover (Random Books)" msgstr "发现 (随机书籍)" -#: cps/web.py:477 +#: cps/web.py:481 msgid "Hot Books (Most Downloaded)" msgstr "热门书籍(最多下载)" -#: cps/web.py:508 +#: cps/web.py:512 #, python-format msgid "Downloaded books by %(user)s" msgstr "%(user)s 下载过的书籍" -#: cps/web.py:541 +#: cps/web.py:545 #, python-format msgid "Author: %(name)s" msgstr "作者:%(name)s" -#: cps/web.py:577 +#: cps/web.py:581 #, python-format msgid "Publisher: %(name)s" msgstr "出版社:%(name)s" -#: cps/web.py:605 +#: cps/web.py:609 #, python-format msgid "Series: %(serie)s" msgstr "丛书:%(serie)s" -#: cps/web.py:620 +#: cps/web.py:623 msgid "Rating: None" msgstr "评分:无" -#: cps/web.py:629 +#: cps/web.py:632 #, python-format msgid "Rating: %(rating)s stars" msgstr "评分:%(rating)s 星" -#: cps/web.py:645 +#: cps/web.py:663 #, python-format msgid "File format: %(format)s" msgstr "文件格式:%(format)s" -#: cps/web.py:682 +#: cps/web.py:698 #, python-format msgid "Category: %(name)s" msgstr "分类:%(name)s" -#: cps/web.py:711 +#: cps/web.py:727 #, python-format msgid "Language: %(name)s" msgstr "语言:%(name)s" -#: cps/templates/admin.html:16 cps/web.py:949 +#: cps/templates/admin.html:16 cps/web.py:965 msgid "Downloads" msgstr "下载次数" -#: cps/web.py:1051 +#: cps/web.py:1067 msgid "Ratings list" msgstr "评分列表" -#: cps/web.py:1078 +#: cps/web.py:1094 msgid "File formats list" msgstr "文件格式列表" -#: cps/web.py:1233 +#: cps/web.py:1249 msgid "Please configure the SMTP mail settings first..." msgstr "请先配置 SMTP 邮箱设置..." -#: cps/web.py:1240 +#: cps/web.py:1256 #, python-format msgid "Success! Book queued for sending to %(eReadermail)s" msgstr "书籍已经成功加入 %(eReadermail)s 的发送队列" -#: cps/web.py:1243 +#: cps/web.py:1259 #, python-format msgid "Oops! There was an error sending book: %(res)s" msgstr "糟糕!发送这本书籍的时候出现错误:%(res)s" -#: cps/web.py:1245 +#: cps/web.py:1261 msgid "Oops! Please update your profile with a valid eReader Email." msgstr "请先配置您的 Kindle 邮箱" -#: cps/web.py:1261 +#: cps/web.py:1277 msgid "Please wait one minute to register next user" msgstr "请等待一分钟注册下一个用户" #: cps/templates/layout.html:68 cps/templates/layout.html:102 -#: cps/templates/login.html:27 cps/templates/register.html:17 cps/web.py:1262 -#: cps/web.py:1267 cps/web.py:1271 cps/web.py:1277 cps/web.py:1297 -#: cps/web.py:1301 cps/web.py:1314 cps/web.py:1317 +#: cps/templates/login.html:27 cps/templates/register.html:17 cps/web.py:1278 +#: cps/web.py:1282 cps/web.py:1287 cps/web.py:1291 cps/web.py:1297 +#: cps/web.py:1317 cps/web.py:1321 cps/web.py:1334 cps/web.py:1337 msgid "Register" msgstr "注册" -#: cps/web.py:1266 cps/web.py:1313 +#: cps/web.py:1281 cps/web.py:1385 +#, fuzzy +msgid "Connection error to limiter backend, please contact your administrator" +msgstr "邮件服务未配置,请联系网站管理员!" + +#: cps/web.py:1286 cps/web.py:1333 msgid "Oops! Email server is not configured, please contact your administrator." msgstr "邮件服务未配置,请联系网站管理员!" -#: cps/web.py:1299 +#: cps/web.py:1319 msgid "Oops! Your Email is not allowed." msgstr "您的电子邮件不允许注册" -#: cps/web.py:1302 +#: cps/web.py:1322 msgid "Success! Confirmation Email has been sent." msgstr "确认邮件已经发送到您的邮箱" -#: cps/web.py:1348 cps/web.py:1367 +#: cps/web.py:1368 cps/web.py:1391 msgid "Cannot activate LDAP authentication" msgstr "无法激活 LDAP 认证" -#: cps/web.py:1361 +#: cps/web.py:1381 msgid "Please wait one minute before next login" msgstr "下次登录前请等待一分钟" -#: cps/web.py:1376 +#: cps/web.py:1400 #, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "您现在已以“%(nickname)s”身份登录" -#: cps/web.py:1383 +#: cps/web.py:1407 #, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgstr "后备登录“%(nickname)s”:无法访问 LDAP 服务器,或用户未知" -#: cps/web.py:1388 +#: cps/web.py:1412 #, python-format msgid "Could not login: %(message)s" msgstr "无法登录:%(message)s" -#: cps/web.py:1392 cps/web.py:1417 +#: cps/web.py:1416 cps/web.py:1441 msgid "Wrong Username or Password" msgstr "用户名或密码错误" -#: cps/web.py:1399 +#: cps/web.py:1423 msgid "New Password was sent to your email address" msgstr "新密码已发送到您的邮箱" -#: cps/web.py:1403 +#: cps/web.py:1427 msgid "An unknown error occurred. Please try again later." msgstr "发生一个未知错误,请稍后再试" -#: cps/web.py:1405 +#: cps/web.py:1429 msgid "Please enter valid username to reset password" msgstr "请输入有效的用户名进行密码重置" -#: cps/web.py:1413 +#: cps/web.py:1437 #, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "您现在已以“%(nickname)s”身份登录" -#: cps/web.py:1471 cps/web.py:1521 +#: cps/web.py:1495 cps/web.py:1545 #, python-format msgid "%(name)s's Profile" msgstr "%(name)s 的用户配置" -#: cps/web.py:1487 +#: cps/web.py:1511 msgid "Success! Profile Updated" msgstr "资料已更新" -#: cps/web.py:1491 +#: cps/web.py:1515 msgid "Oops! An account already exists for this Email." msgstr "使用此邮箱的账号已经存在" @@ -1460,41 +1466,41 @@ msgstr "找不到包含 OAuth 信息的有效 gmail.json 文件" msgid "%(book)s send to E-Reader" msgstr "%(book)s 发送到电子阅读器" -#: cps/tasks/convert.py:166 +#: cps/tasks/convert.py:167 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "Calibre 电子书转换器 %(tool)s 没有发现" -#: cps/tasks/convert.py:200 +#: cps/tasks/convert.py:201 #, python-format msgid "%(format)s format not found on disk" msgstr "硬盘上找不到 %(format)s 格式" -#: cps/tasks/convert.py:204 +#: cps/tasks/convert.py:205 msgid "Ebook converter failed with unknown error" msgstr "发生未知错误,书籍转换失败" -#: cps/tasks/convert.py:223 +#: cps/tasks/convert.py:224 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "Kepubify 转换失败:%(error)s" -#: cps/tasks/convert.py:244 +#: cps/tasks/convert.py:245 #, python-format msgid "Converted file not found or more than one file in folder %(folder)s" msgstr "找不到转换后的文件或文件夹 %(folder)s 中有多个文件" -#: cps/tasks/convert.py:279 +#: cps/tasks/convert.py:287 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "电子书转换器失败: %(error)s" -#: cps/tasks/convert.py:302 +#: cps/tasks/convert.py:310 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "Calibre 运行失败,错误信息:%(error)s" -#: cps/tasks/convert.py:307 +#: cps/tasks/convert.py:315 msgid "Convert" msgstr "转换" @@ -1502,7 +1508,7 @@ msgstr "转换" msgid "Reconnecting Calibre database" msgstr "正在重新连接到 Calibre 数据库" -#: cps/tasks/mail.py:269 +#: cps/tasks/mail.py:278 msgid "E-mail" msgstr "电子邮件" @@ -1778,12 +1784,12 @@ 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:414 -#: cps/templates/config_view_edit.html:175 cps/templates/modal_dialogs.html:64 -#: cps/templates/modal_dialogs.html:99 cps/templates/modal_dialogs.html:117 -#: cps/templates/modal_dialogs.html:135 cps/templates/schedule_edit.html:45 -#: cps/templates/shelf_edit.html:27 cps/templates/tasks.html:46 -#: cps/templates/user_edit.html:144 +#: cps/templates/config_db.html:66 cps/templates/config_edit.html:428 +#: 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 +#: cps/templates/schedule_edit.html:45 cps/templates/shelf_edit.html:27 +#: cps/templates/tasks.html:46 cps/templates/user_edit.html:144 msgid "Cancel" msgstr "取消" @@ -1964,7 +1970,7 @@ msgid "Fetch Metadata" msgstr "获取元数据" #: cps/templates/book_edit.html:213 cps/templates/config_db.html:65 -#: cps/templates/config_edit.html:413 cps/templates/config_view_edit.html:174 +#: cps/templates/config_edit.html:427 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 @@ -2129,7 +2135,7 @@ msgid "Location of Calibre Database" msgstr "Calibre 数据库路径" #: cps/templates/config_db.html:21 -msgid "Separate Book files from Library (Highly experimental, might not work at all)" +msgid "Separate Book Files from Library" msgstr "" #: cps/templates/config_db.html:34 @@ -2213,7 +2219,7 @@ msgid "Convert non-English characters in title and author while saving to disk" msgstr "保存到磁盘时转换标题和作者中的非英文字符" #: cps/templates/config_edit.html:108 -msgid "Embed Metadata to Ebook File on Download and Conversion (needs Calibre/Kepubify binaries)" +msgid "Embed Metadata to Ebook File on Download/Conversion/e-mail (needs Calibre/Kepubify binaries)" msgstr "" #: cps/templates/config_edit.html:112 @@ -2436,39 +2442,51 @@ msgstr "安全设置" msgid "Limit failed login attempts" msgstr "限制失败的登录尝试" -#: cps/templates/config_edit.html:376 +#: cps/templates/config_edit.html:377 +msgid "Configure Backend for Limiter" +msgstr "" + +#: cps/templates/config_edit.html:381 +msgid "Options for Limiter" +msgstr "" + +#: cps/templates/config_edit.html:386 msgid "Session protection" msgstr "会话保护" -#: cps/templates/config_edit.html:378 +#: cps/templates/config_edit.html:388 msgid "Basic" msgstr "基本" -#: cps/templates/config_edit.html:379 +#: cps/templates/config_edit.html:389 msgid "Strong" msgstr "强" -#: cps/templates/config_edit.html:384 +#: cps/templates/config_edit.html:394 msgid "User Password policy" msgstr "用户密码策略" -#: cps/templates/config_edit.html:388 +#: cps/templates/config_edit.html:398 msgid "Minimum password length" msgstr "最小密码长度" -#: cps/templates/config_edit.html:393 +#: cps/templates/config_edit.html:403 msgid "Enforce number" msgstr "必须使用数字" -#: cps/templates/config_edit.html:397 +#: cps/templates/config_edit.html:407 msgid "Enforce lowercase characters" msgstr "必须使用小写字符" -#: cps/templates/config_edit.html:401 +#: cps/templates/config_edit.html:411 msgid "Enforce uppercase characters" msgstr "必须使用大写字符" -#: cps/templates/config_edit.html:405 +#: cps/templates/config_edit.html:415 +msgid "Enforce characters (needed For Chinese/Japanese/Korean Characters)" +msgstr "" + +#: cps/templates/config_edit.html:419 msgid "Enforce special characters" msgstr "必须使用特殊字符" @@ -2590,47 +2608,47 @@ msgstr "%(range)s 第 %(index)s 册" msgid "Published" msgstr "出版日期" -#: cps/templates/detail.html:250 cps/templates/listenmp3.html:158 +#: cps/templates/detail.html:251 cps/templates/listenmp3.html:158 msgid "Mark As Unread" msgstr "标为未读" -#: cps/templates/detail.html:251 cps/templates/listenmp3.html:158 +#: cps/templates/detail.html:252 cps/templates/listenmp3.html:158 msgid "Mark As Read" msgstr "标为已读" -#: cps/templates/detail.html:253 cps/templates/listenmp3.html:159 +#: cps/templates/detail.html:254 cps/templates/listenmp3.html:159 msgid "Read" msgstr "已读" -#: cps/templates/detail.html:263 cps/templates/listenmp3.html:166 +#: cps/templates/detail.html:264 cps/templates/listenmp3.html:166 msgid "Restore from archive" msgstr "从档案还原" -#: cps/templates/detail.html:264 cps/templates/listenmp3.html:166 +#: cps/templates/detail.html:265 cps/templates/listenmp3.html:166 msgid "Add to archive" msgstr "添加到归档" -#: cps/templates/detail.html:266 cps/templates/listenmp3.html:167 +#: cps/templates/detail.html:267 cps/templates/listenmp3.html:167 msgid "Archived" msgstr "归档" -#: cps/templates/detail.html:277 cps/templates/listenmp3.html:177 +#: cps/templates/detail.html:278 cps/templates/listenmp3.html:177 msgid "Description:" msgstr "简介:" -#: cps/templates/detail.html:292 cps/templates/listenmp3.html:190 +#: cps/templates/detail.html:293 cps/templates/listenmp3.html:190 #: cps/templates/search.html:16 msgid "Add to shelf" msgstr "添加到书架" -#: cps/templates/detail.html:304 cps/templates/detail.html:323 +#: cps/templates/detail.html:305 cps/templates/detail.html:324 #: cps/templates/feed.xml:81 cps/templates/layout.html:154 #: cps/templates/listenmp3.html:201 cps/templates/listenmp3.html:218 #: cps/templates/search.html:22 msgid "(Public)" msgstr "(公共)" -#: cps/templates/detail.html:339 +#: cps/templates/detail.html:340 msgid "Edit Metadata" msgstr "编辑元数据" diff --git a/cps/translations/zh_Hant_TW/LC_MESSAGES/messages.mo b/cps/translations/zh_Hant_TW/LC_MESSAGES/messages.mo index fb75c95e..2fe60941 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 60138565..995dbe53 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-02-10 10:06+0100\n" +"POT-Creation-Date: 2024-04-27 07:20+0200\n" "PO-Revision-Date: 2020-09-27 22:18+0800\n" "Last-Translator: xlivevil \n" "Language: zh_TW\n" @@ -22,493 +22,493 @@ msgstr "" msgid "Statistics" msgstr "統計" -#: cps/admin.py:149 +#: cps/admin.py:150 #, fuzzy msgid "Server restarted, please reload page." msgstr "服務器已重啟,請刷新頁面" -#: cps/admin.py:151 +#: cps/admin.py:152 #, fuzzy msgid "Performing Server shutdown, please close window." msgstr "正在關閉服務器,請關閉窗口" -#: cps/admin.py:159 +#: cps/admin.py:160 msgid "Success! Database Reconnected" msgstr "" -#: cps/admin.py:162 +#: cps/admin.py:163 msgid "Unknown command" msgstr "未知命令" -#: cps/admin.py:173 +#: cps/admin.py:174 #, fuzzy msgid "Success! Books queued for Metadata Backup, please check Tasks for result" msgstr "發送給%(email)s的測試郵件已進入隊列。請檢查任務結果" -#: cps/admin.py:206 cps/editbooks.py:589 cps/editbooks.py:591 -#: cps/editbooks.py:629 cps/editbooks.py:646 cps/editbooks.py:1262 +#: cps/admin.py:207 cps/editbooks.py:590 cps/editbooks.py:592 +#: cps/editbooks.py:630 cps/editbooks.py:647 cps/editbooks.py:1263 #: cps/updater.py:613 cps/uploader.py:93 cps/uploader.py:102 msgid "Unknown" msgstr "未知" -#: cps/admin.py:231 +#: cps/admin.py:232 msgid "Admin page" msgstr "管理頁" -#: cps/admin.py:251 +#: cps/admin.py:252 msgid "Basic Configuration" msgstr "基本配置" -#: cps/admin.py:289 +#: cps/admin.py:290 msgid "UI Configuration" msgstr "界面配置" -#: cps/admin.py:323 cps/templates/admin.html:51 +#: cps/admin.py:324 cps/templates/admin.html:51 msgid "Edit Users" msgstr "管理用戶" -#: cps/admin.py:367 cps/opds.py:506 cps/templates/grid.html:14 +#: cps/admin.py:368 cps/opds.py:506 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "全部" -#: cps/admin.py:394 cps/admin.py:1405 +#: cps/admin.py:395 cps/admin.py:1417 msgid "User not found" msgstr "找不到用戶" -#: cps/admin.py:408 +#: cps/admin.py:409 msgid "{} users deleted successfully" msgstr "成功刪除 {} 個用戶" -#: cps/admin.py:431 cps/templates/config_view_edit.html:133 +#: cps/admin.py:432 cps/templates/config_view_edit.html:133 #: cps/templates/user_edit.html:45 cps/templates/user_table.html:81 msgid "Show All" msgstr "顯示全部" -#: cps/admin.py:452 cps/admin.py:458 +#: cps/admin.py:453 cps/admin.py:459 msgid "Malformed request" msgstr "格式錯誤的請求" -#: cps/admin.py:470 cps/admin.py:2033 +#: cps/admin.py:471 cps/admin.py:2048 msgid "Guest Name can't be changed" msgstr "訪客名稱無法更改" -#: cps/admin.py:482 +#: cps/admin.py:483 msgid "Guest can't have this role" msgstr "遊客無法擁有此角色" -#: cps/admin.py:494 cps/admin.py:1987 +#: cps/admin.py:495 cps/admin.py:2002 msgid "No admin user remaining, can't remove admin role" msgstr "管理員賬戶不存在,無法刪除管理員角色" -#: cps/admin.py:498 cps/admin.py:512 +#: cps/admin.py:499 cps/admin.py:513 msgid "Value has to be true or false" msgstr "值必須是 true 或 false" -#: cps/admin.py:500 +#: cps/admin.py:501 msgid "Invalid role" msgstr "無效角色" -#: cps/admin.py:504 +#: cps/admin.py:505 msgid "Guest can't have this view" msgstr "遊客無法擁有此視圖" -#: cps/admin.py:514 +#: cps/admin.py:515 msgid "Invalid view" msgstr "無效視圖" -#: cps/admin.py:517 +#: cps/admin.py:518 msgid "Guest's Locale is determined automatically and can't be set" msgstr "訪客的本地化是自動偵測而無法設置的" -#: cps/admin.py:521 +#: cps/admin.py:522 msgid "No Valid Locale Given" msgstr "無可用本地化" -#: cps/admin.py:532 +#: cps/admin.py:533 msgid "No Valid Book Language Given" msgstr "無有效書籍語言" -#: cps/admin.py:534 cps/editbooks.py:455 +#: cps/admin.py:535 cps/editbooks.py:456 msgid "Parameter not found" msgstr "參數未找到" -#: cps/admin.py:571 +#: cps/admin.py:572 msgid "Invalid Read Column" msgstr "無效的閱讀列" -#: cps/admin.py:577 +#: cps/admin.py:578 msgid "Invalid Restricted Column" msgstr "無效的限制列" -#: cps/admin.py:597 cps/admin.py:1858 +#: cps/admin.py:598 cps/admin.py:1873 msgid "Calibre-Web configuration updated" msgstr "Calibre-Web配置已更新" -#: cps/admin.py:609 +#: cps/admin.py:610 msgid "Do you really want to delete the Kobo Token?" msgstr "您確定刪除Kobo Token嗎?" -#: cps/admin.py:611 +#: cps/admin.py:612 msgid "Do you really want to delete this domain?" msgstr "您確定要刪除此網域嗎?" -#: cps/admin.py:613 +#: cps/admin.py:614 msgid "Do you really want to delete this user?" msgstr "您確定要刪除此用戶嗎?" -#: cps/admin.py:615 +#: cps/admin.py:616 msgid "Are you sure you want to delete this shelf?" msgstr "您確定要刪除此書架嗎?" -#: cps/admin.py:617 +#: cps/admin.py:618 msgid "Are you sure you want to change locales of selected user(s)?" msgstr "您確定要修改選定用戶的本地化設置嗎?" -#: cps/admin.py:619 +#: cps/admin.py:620 msgid "Are you sure you want to change visible book languages for selected user(s)?" msgstr "您確定要修改選定用戶的可見書籍語言嗎?" -#: cps/admin.py:621 +#: cps/admin.py:622 msgid "Are you sure you want to change the selected role for the selected user(s)?" msgstr "您確定要修改選定用戶的選定角色嗎?" -#: cps/admin.py:623 +#: cps/admin.py:624 msgid "Are you sure you want to change the selected restrictions for the selected user(s)?" msgstr "您確定要修改選定用戶的選定限制嗎?" -#: cps/admin.py:625 +#: cps/admin.py:626 msgid "Are you sure you want to change the selected visibility restrictions for the selected user(s)?" msgstr "您確定要修改選定用戶的選定可視化限制嗎?" -#: cps/admin.py:628 +#: cps/admin.py:629 msgid "Are you sure you want to change shelf sync behavior for the selected user(s)?" msgstr "您確定要更改所選用戶的書架同步行為嗎?" -#: cps/admin.py:630 +#: cps/admin.py:631 msgid "Are you sure you want to change Calibre library location?" msgstr "您確定要更改 Calibre 庫位置嗎?" -#: cps/admin.py:632 +#: cps/admin.py:633 msgid "Calibre-Web will search for updated Covers and update Cover Thumbnails, this may take a while?" msgstr "" -#: cps/admin.py:635 +#: cps/admin.py:636 msgid "Are you sure you want delete Calibre-Web's sync database to force a full sync with your Kobo Reader?" msgstr "" -#: cps/admin.py:878 cps/admin.py:884 cps/admin.py:894 cps/admin.py:904 +#: cps/admin.py:879 cps/admin.py:885 cps/admin.py:895 cps/admin.py:905 #: cps/templates/modal_dialogs.html:29 cps/templates/user_table.html:41 #: cps/templates/user_table.html:58 msgid "Deny" msgstr "拒絕" -#: cps/admin.py:880 cps/admin.py:886 cps/admin.py:896 cps/admin.py:906 +#: cps/admin.py:881 cps/admin.py:887 cps/admin.py:897 cps/admin.py:907 #: cps/templates/modal_dialogs.html:28 cps/templates/user_table.html:44 #: cps/templates/user_table.html:61 msgid "Allow" msgstr "允許" -#: cps/admin.py:921 +#: cps/admin.py:940 msgid "{} sync entries deleted" msgstr "" -#: cps/admin.py:969 +#: cps/admin.py:981 msgid "Tag not found" msgstr "標籤未找到" -#: cps/admin.py:981 +#: cps/admin.py:993 msgid "Invalid Action" msgstr "無效的動作" -#: cps/admin.py:1111 +#: cps/admin.py:1123 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "client_secrets.json 未為 Web 應用程序配置" -#: cps/admin.py:1156 +#: cps/admin.py:1168 msgid "Logfile Location is not Valid, Please Enter Correct Path" msgstr "日誌文件路徑無效,請輸入正確的路徑" -#: cps/admin.py:1162 +#: cps/admin.py:1174 msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgstr "訪問日誌路徑無效,請輸入正確的路徑" -#: cps/admin.py:1196 +#: cps/admin.py:1208 msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgstr "請輸入LDAP主機、端口、DN和用戶對象標識符" -#: cps/admin.py:1202 +#: cps/admin.py:1214 msgid "Please Enter a LDAP Service Account and Password" msgstr "請輸入一個LDAP服務賬號和密碼 " -#: cps/admin.py:1205 +#: cps/admin.py:1217 msgid "Please Enter a LDAP Service Account" msgstr "請輸入一個LDAP服務賬號" -#: cps/admin.py:1210 +#: cps/admin.py:1222 #, python-format msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgstr "LDAP群組對象過濾器需要一個具有“%s”格式標識符號" -#: cps/admin.py:1212 +#: cps/admin.py:1224 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "LDAP群組對象過濾器的括號不匹配" -#: cps/admin.py:1216 +#: cps/admin.py:1228 #, python-format msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgstr "LDAP用戶對象過濾器需要一個具有“%s”格式標識符" -#: cps/admin.py:1218 +#: cps/admin.py:1230 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "LDAP用戶對象過濾器的括號不匹配" -#: cps/admin.py:1225 +#: cps/admin.py:1237 #, python-format msgid "LDAP Member User Filter needs to Have One \"%s\" Format Identifier" msgstr "LDAP成員用戶過濾器需要有一個“%s”格式標識符號" -#: cps/admin.py:1227 +#: cps/admin.py:1239 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "LDAP成員用戶過濾器中有不匹配的括號" -#: cps/admin.py:1234 +#: cps/admin.py:1246 msgid "LDAP CACertificate, Certificate or Key Location is not Valid, Please Enter Correct Path" msgstr "LDAP CA證書、證書或密鑰位置無效,請輸入正確的路徑" -#: cps/admin.py:1265 cps/templates/admin.html:53 +#: cps/admin.py:1277 cps/templates/admin.html:53 msgid "Add New User" msgstr "添加新用戶" -#: cps/admin.py:1274 cps/templates/admin.html:100 +#: cps/admin.py:1286 cps/templates/admin.html:100 msgid "Edit Email Server Settings" msgstr "編輯郵件服務器設置" -#: cps/admin.py:1293 +#: cps/admin.py:1305 msgid "Success! Gmail Account Verified." msgstr "" -#: cps/admin.py:1313 cps/admin.py:1316 cps/admin.py:1698 cps/admin.py:1842 -#: cps/admin.py:1940 cps/admin.py:2061 cps/editbooks.py:241 -#: cps/editbooks.py:317 cps/editbooks.py:1224 cps/shelf.py:90 cps/shelf.py:150 +#: cps/admin.py:1325 cps/admin.py:1328 cps/admin.py:1710 cps/admin.py:1857 +#: cps/admin.py:1955 cps/admin.py:2076 cps/editbooks.py:242 +#: cps/editbooks.py:318 cps/editbooks.py:1225 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:149 cps/web.py:1496 +#: cps/shelf.py:468 cps/tasks/convert.py:150 cps/web.py:1520 #, python-format msgid "Oops! Database Error: %(error)s." msgstr "數據庫錯誤:%(error)s。" -#: cps/admin.py:1323 +#: cps/admin.py:1335 #, python-format msgid "Test e-mail queued for sending to %(email)s, please check Tasks for result" msgstr "發送給%(email)s的測試郵件已進入隊列。請檢查任務結果" -#: cps/admin.py:1326 +#: cps/admin.py:1338 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "發送測試郵件時出錯:%(res)s" -#: cps/admin.py:1328 +#: cps/admin.py:1340 msgid "Please configure your e-mail address first..." msgstr "請先配置您的郵箱地址..." -#: cps/admin.py:1330 +#: cps/admin.py:1342 msgid "Email Server Settings updated" msgstr "郵件服務器設置已更新" -#: cps/admin.py:1353 cps/templates/admin.html:195 +#: cps/admin.py:1365 cps/templates/admin.html:195 msgid "Edit Scheduled Tasks Settings" msgstr "" -#: cps/admin.py:1365 +#: cps/admin.py:1377 msgid "Invalid start time for task specified" msgstr "" -#: cps/admin.py:1370 +#: cps/admin.py:1382 msgid "Invalid duration for task specified" msgstr "" -#: cps/admin.py:1380 +#: cps/admin.py:1392 msgid "Scheduled tasks settings updated" msgstr "" -#: cps/admin.py:1390 cps/admin.py:1439 cps/admin.py:2057 cps/web.py:1296 +#: cps/admin.py:1402 cps/admin.py:1451 cps/admin.py:2072 cps/web.py:1316 msgid "Oops! An unknown error occurred. Please try again later." msgstr "發生一個未知錯誤,請稍後再試。" -#: cps/admin.py:1394 +#: cps/admin.py:1406 msgid "Settings DB is not Writeable" msgstr "" -#: cps/admin.py:1424 cps/admin.py:2049 +#: cps/admin.py:1436 cps/admin.py:2064 #, python-format msgid "Edit User %(nick)s" msgstr "編輯用戶 %(nick)s" -#: cps/admin.py:1436 +#: cps/admin.py:1448 #, fuzzy, python-format msgid "Success! Password for user %(user)s reset" msgstr "用戶 %(user)s 的密碼已重置" -#: cps/admin.py:1442 +#: cps/admin.py:1454 #, fuzzy msgid "Oops! Please configure the SMTP mail settings." msgstr "請先配置SMTP郵箱設置..." -#: cps/admin.py:1453 +#: cps/admin.py:1465 msgid "Logfile viewer" msgstr "日誌文件查看器" -#: cps/admin.py:1519 +#: cps/admin.py:1531 msgid "Requesting update package" msgstr "正在請求更新包" -#: cps/admin.py:1520 +#: cps/admin.py:1532 msgid "Downloading update package" msgstr "正在下載更新包" -#: cps/admin.py:1521 +#: cps/admin.py:1533 msgid "Unzipping update package" msgstr "正在解壓更新包" -#: cps/admin.py:1522 +#: cps/admin.py:1534 msgid "Replacing files" msgstr "正在替換文件" -#: cps/admin.py:1523 +#: cps/admin.py:1535 msgid "Database connections are closed" msgstr "數據庫連接已關閉" -#: cps/admin.py:1524 +#: cps/admin.py:1536 msgid "Stopping server" msgstr "正在停止服務器" -#: cps/admin.py:1525 +#: cps/admin.py:1537 msgid "Update finished, please press okay and reload page" msgstr "更新完成,請點擊確定並刷新頁面" -#: cps/admin.py:1526 cps/admin.py:1527 cps/admin.py:1528 cps/admin.py:1529 -#: cps/admin.py:1530 cps/admin.py:1531 +#: cps/admin.py:1538 cps/admin.py:1539 cps/admin.py:1540 cps/admin.py:1541 +#: cps/admin.py:1542 cps/admin.py:1543 msgid "Update failed:" msgstr "更新失敗:" -#: cps/admin.py:1526 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 +#: cps/admin.py:1538 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 msgid "HTTP Error" msgstr "HTTP錯誤" -#: cps/admin.py:1527 cps/updater.py:391 cps/updater.py:628 +#: cps/admin.py:1539 cps/updater.py:391 cps/updater.py:628 msgid "Connection error" msgstr "連接錯誤" -#: cps/admin.py:1528 cps/updater.py:393 cps/updater.py:630 +#: cps/admin.py:1540 cps/updater.py:393 cps/updater.py:630 msgid "Timeout while establishing connection" msgstr "建立連接超時" -#: cps/admin.py:1529 cps/updater.py:395 cps/updater.py:632 +#: cps/admin.py:1541 cps/updater.py:395 cps/updater.py:632 msgid "General error" msgstr "一般錯誤" -#: cps/admin.py:1530 +#: cps/admin.py:1542 #, fuzzy msgid "Update file could not be saved in temp dir" msgstr "更新文件無法保存在臨時目錄中" -#: cps/admin.py:1531 +#: cps/admin.py:1543 msgid "Files could not be replaced during update" msgstr "更新時檔案無法替換變更" -#: cps/admin.py:1555 +#: cps/admin.py:1567 msgid "Failed to extract at least One LDAP User" msgstr "未能提取至少一個LDAP用戶" -#: cps/admin.py:1600 +#: cps/admin.py:1612 msgid "Failed to Create at Least One LDAP User" msgstr "未能創建至少一個LDAP用戶" -#: cps/admin.py:1613 +#: cps/admin.py:1625 #, python-format msgid "Error: %(ldaperror)s" msgstr "錯誤:%(ldaperror)s" -#: cps/admin.py:1617 +#: cps/admin.py:1629 msgid "Error: No user returned in response of LDAP server" msgstr "錯誤:在LDAP服務器的響應中沒有返回用戶" -#: cps/admin.py:1650 +#: cps/admin.py:1662 msgid "At Least One LDAP User Not Found in Database" msgstr "數據庫中沒有找到至少一個LDAP用戶" -#: cps/admin.py:1652 +#: cps/admin.py:1664 msgid "{} User Successfully Imported" msgstr "{} 用戶被成功導入" -#: cps/admin.py:1710 +#: cps/admin.py:1722 msgid "DB Location is not Valid, Please Enter Correct Path" msgstr "數據庫路徑無效,請輸入正確的路徑" -#: cps/admin.py:1730 +#: cps/admin.py:1742 msgid "DB is not Writeable" msgstr "數據庫不可寫入" -#: cps/admin.py:1746 +#: cps/admin.py:1758 msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgstr "密鑰文件路徑無效,請輸入正確的路徑" -#: cps/admin.py:1750 +#: cps/admin.py:1762 msgid "Certfile Location is not Valid, Please Enter Correct Path" msgstr "證書文件路徑無效,請輸入正確的路徑" -#: cps/admin.py:1829 +#: cps/admin.py:1842 msgid "Password length has to be between 1 and 40" msgstr "" -#: cps/admin.py:1881 +#: cps/admin.py:1896 #, fuzzy msgid "Database Settings updated" msgstr "郵件服務器設置已更新" -#: cps/admin.py:1889 +#: cps/admin.py:1904 msgid "Database Configuration" msgstr "數據庫配置" -#: cps/admin.py:1904 cps/web.py:1270 +#: cps/admin.py:1919 cps/web.py:1290 msgid "Oops! Please complete all fields." msgstr "請填寫所有欄位!" -#: cps/admin.py:1913 +#: cps/admin.py:1928 msgid "E-mail is not from valid domain" msgstr "郵箱不在有效網域中" -#: cps/admin.py:1919 +#: cps/admin.py:1934 msgid "Add new user" msgstr "添加新用戶" -#: cps/admin.py:1930 +#: cps/admin.py:1945 #, python-format msgid "User '%(user)s' created" msgstr "用戶“%(user)s”已創建" -#: cps/admin.py:1936 +#: cps/admin.py:1951 msgid "Oops! An account already exists for this Email. or name." msgstr "使用此郵箱或用戶名的賬號已經存在。" -#: cps/admin.py:1966 +#: cps/admin.py:1981 #, python-format msgid "User '%(nick)s' deleted" msgstr "用戶“%(nick)s”已刪除" -#: cps/admin.py:1969 +#: cps/admin.py:1984 msgid "Can't delete Guest User" msgstr "無法刪除訪客用戶" -#: cps/admin.py:1972 +#: cps/admin.py:1987 msgid "No admin user remaining, can't delete user" msgstr "管理員賬戶不存在,無法刪除用戶" -#: cps/admin.py:2027 cps/web.py:1445 +#: cps/admin.py:2042 cps/web.py:1469 msgid "Email can't be empty and has to be a valid Email" msgstr "" -#: cps/admin.py:2053 +#: cps/admin.py:2068 #, python-format msgid "User '%(nick)s' updated" msgstr "用戶“%(nick)s”已更新" @@ -521,122 +521,123 @@ msgstr "未安裝" msgid "Execution permissions missing" msgstr "缺少執行權限" -#: cps/db.py:752 cps/search.py:137 cps/web.py:731 +#: cps/db.py:752 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:993 cps/templates/config_edit.html:208 +#: cps/db.py:992 cps/templates/config_edit.html:208 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 -#: cps/web.py:558 cps/web.py:592 cps/web.py:665 cps/web.py:692 cps/web.py:973 -#: cps/web.py:1003 cps/web.py:1048 cps/web.py:1076 cps/web.py:1115 +#: 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 +#: cps/web.py:1131 msgid "None" msgstr "無" -#: cps/editbooks.py:122 cps/editbooks.py:910 cps/web.py:525 cps/web.py:1537 -#: cps/web.py:1581 cps/web.py:1626 +#: cps/editbooks.py:123 cps/editbooks.py:911 cps/web.py:529 cps/web.py:1561 +#: cps/web.py:1605 cps/web.py:1650 msgid "Oops! Selected book is unavailable. File does not exist or is not accessible" msgstr "糟糕!選擇書名無法打開。文件不存在或者文件不可訪問" -#: cps/editbooks.py:166 cps/editbooks.py:1245 +#: cps/editbooks.py:167 cps/editbooks.py:1246 msgid "User has no rights to upload cover" msgstr "" -#: cps/editbooks.py:186 cps/editbooks.py:731 +#: cps/editbooks.py:187 cps/editbooks.py:732 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "標識符不區分大小寫,覆蓋舊標識符" -#: cps/editbooks.py:228 +#: cps/editbooks.py:229 msgid "Metadata successfully updated" msgstr "已成功更新元數據" -#: cps/editbooks.py:246 +#: cps/editbooks.py:247 msgid "Error editing book: {}" msgstr "" -#: cps/editbooks.py:303 +#: cps/editbooks.py:304 #, python-format msgid "File %(file)s uploaded" msgstr "文件 %(file)s 已上傳" -#: cps/editbooks.py:331 +#: cps/editbooks.py:332 msgid "Source or destination format for conversion missing" msgstr "轉換的來源或目的格式不存在" -#: cps/editbooks.py:339 +#: cps/editbooks.py:340 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "書籍已經被成功加入到 %(book_format)s 格式轉換隊列" -#: cps/editbooks.py:343 +#: cps/editbooks.py:344 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "轉換此書籍時出現錯誤: %(res)s" -#: cps/editbooks.py:650 +#: cps/editbooks.py:651 msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgstr "上傳的書籍可能已經存在,建議修改後重新上傳: " -#: cps/editbooks.py:705 cps/editbooks.py:1037 +#: cps/editbooks.py:706 cps/editbooks.py:1038 #, fuzzy, python-format msgid "'%(langname)s' is not a valid language" msgstr "%(langname)s 不是一種有效語言" -#: cps/editbooks.py:743 cps/editbooks.py:1185 +#: cps/editbooks.py:744 cps/editbooks.py:1186 #, python-format msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgstr "不能上傳文件附檔名為“%(ext)s”的文件到此服務器" -#: cps/editbooks.py:747 cps/editbooks.py:1189 +#: cps/editbooks.py:748 cps/editbooks.py:1190 msgid "File to be uploaded must have an extension" msgstr "要上傳的文件必須具有附檔名" -#: cps/editbooks.py:755 +#: cps/editbooks.py:756 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "文件 %(filename)s 無法保存到臨時目錄" -#: cps/editbooks.py:775 +#: cps/editbooks.py:776 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "移動封面文件失敗 %(file)s:%(error)s" -#: cps/editbooks.py:832 cps/editbooks.py:834 +#: cps/editbooks.py:833 cps/editbooks.py:835 msgid "Book Format Successfully Deleted" msgstr "書籍格式已成功刪除" -#: cps/editbooks.py:841 cps/editbooks.py:843 +#: cps/editbooks.py:842 cps/editbooks.py:844 msgid "Book Successfully Deleted" msgstr "書籍已成功刪除" -#: cps/editbooks.py:895 +#: cps/editbooks.py:896 msgid "You are missing permissions to delete books" msgstr "" -#: cps/editbooks.py:945 +#: cps/editbooks.py:946 msgid "edit metadata" msgstr "編輯元數據" -#: cps/editbooks.py:994 +#: cps/editbooks.py:995 #, python-format msgid "%(seriesindex)s is not a valid number, skipping" msgstr "%(seriesindex)s 不是一個有效的數值,忽略" -#: cps/editbooks.py:1180 +#: cps/editbooks.py:1181 msgid "User has no rights to upload additional file formats" msgstr "" -#: cps/editbooks.py:1201 +#: cps/editbooks.py:1202 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "創建路徑 %(path)s 失敗(權限拒絕)。" -#: cps/editbooks.py:1206 +#: cps/editbooks.py:1207 #, python-format msgid "Failed to store file %(file)s." msgstr "保存文件 %(file)s 失敗。" -#: cps/editbooks.py:1230 +#: cps/editbooks.py:1231 #, python-format msgid "File format %(ext)s added to %(book)s" msgstr "已添加 %(ext)s 格式到 %(book)s" @@ -649,208 +650,208 @@ msgstr "Google Drive 設置未完成,請嘗試停用並再次激活Google雲 msgid "Callback domain is not verified, please follow steps to verify domain in google developer console" msgstr "回調網域名稱尚未被驗證,請在google開發者控制台按步驟驗證網域名稱" -#: cps/helper.py:84 +#: cps/helper.py:86 #, python-format msgid "%(format)s format not found for book id: %(book)d" msgstr "找不到id為 %(book)d 的書籍的 %(format)s 格式" -#: cps/helper.py:91 cps/tasks/convert.py:86 +#: cps/helper.py:93 cps/tasks/convert.py:86 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "Google Drive %(fn)s 上找不到 %(format)s" -#: cps/helper.py:96 +#: cps/helper.py:98 #, python-format msgid "%(format)s not found: %(fn)s" msgstr "找不到 %(format)s:%(fn)s" -#: cps/helper.py:101 cps/helper.py:226 cps/templates/detail.html:58 +#: cps/helper.py:103 cps/helper.py:228 cps/templates/detail.html:58 #, fuzzy msgid "Send to eReader" msgstr "發送到Kindle" -#: cps/helper.py:102 cps/helper.py:120 cps/helper.py:228 +#: cps/helper.py:104 cps/helper.py:122 cps/helper.py:230 #, fuzzy msgid "This Email has been sent via Calibre-Web." msgstr "此郵件已經通過Calibre-Web發送。" -#: cps/helper.py:118 +#: cps/helper.py:120 #, fuzzy msgid "Calibre-Web Test Email" msgstr "Calibre-Web測試郵件" -#: cps/helper.py:119 +#: cps/helper.py:121 #, fuzzy msgid "Test Email" msgstr "測試郵件" -#: cps/helper.py:136 +#: cps/helper.py:138 msgid "Get Started with Calibre-Web" msgstr "開啟Calibre-Web之旅" -#: cps/helper.py:141 +#: cps/helper.py:143 #, fuzzy, python-format msgid "Registration Email for user: %(name)s" msgstr "用戶註冊電子郵件:%(name)s" -#: cps/helper.py:152 cps/helper.py:158 +#: cps/helper.py:154 cps/helper.py:160 #, fuzzy, python-format msgid "Convert %(orig)s to %(format)s and send to eReader" msgstr "轉換 %(orig)s 到 %(format)s 並發送到Kindle" -#: cps/helper.py:177 cps/helper.py:181 cps/helper.py:185 +#: cps/helper.py:179 cps/helper.py:183 cps/helper.py:187 #, fuzzy, python-format msgid "Send %(format)s to eReader" msgstr "發送 %(format)s 到Kindle" -#: cps/helper.py:225 +#: cps/helper.py:227 #, fuzzy, python-format msgid "%(book)s send to eReader" msgstr "%(book)s發送到Kindle" -#: cps/helper.py:230 +#: cps/helper.py:232 msgid "The requested file could not be read. Maybe wrong permissions?" msgstr "無法讀取請求的文件。可能有錯誤的權限設置?" -#: cps/helper.py:345 +#: cps/helper.py:347 msgid "Read status could not set: {}" msgstr "" -#: cps/helper.py:368 +#: cps/helper.py:370 #, python-format msgid "Deleting bookfolder for book %(id)s failed, path has subfolders: %(path)s" msgstr "刪除書的文件夾%(id)s失敗,路徑有子文件夾:%(path)s" -#: cps/helper.py:374 +#: cps/helper.py:376 #, python-format msgid "Deleting book %(id)s failed: %(message)s" msgstr "刪除書籍 %(id)s失敗:%(message)s" -#: cps/helper.py:385 +#: cps/helper.py:387 #, python-format msgid "Deleting book %(id)s from database only, book path in database not valid: %(path)s" msgstr "僅從數據庫中刪除書籍 %(id)s,數據庫中的書籍路徑無效: %(path)s" -#: cps/helper.py:450 +#: cps/helper.py:452 #, 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:522 cps/helper.py:531 +#: cps/helper.py:524 cps/helper.py:533 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "Google Drive上找不到文件 %(file)s" -#: cps/helper.py:565 +#: cps/helper.py:567 #, 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:585 +#: cps/helper.py:587 msgid "Error in rename file in path: {}" msgstr "" -#: cps/helper.py:603 +#: cps/helper.py:605 #, python-format msgid "Book path %(path)s not found on Google Drive" msgstr "Google Drive上找不到書籍路徑 %(path)s" -#: cps/helper.py:668 +#: cps/helper.py:670 msgid "Found an existing account for this Email address" msgstr "" -#: cps/helper.py:676 +#: cps/helper.py:678 msgid "This username is already taken" msgstr "此用戶名已被使用" -#: cps/helper.py:688 +#: cps/helper.py:690 #, fuzzy msgid "Invalid Email address format" msgstr "無效的郵件地址格式" -#: cps/helper.py:706 +#: cps/helper.py:710 msgid "Password doesn't comply with password validation rules" msgstr "" -#: cps/helper.py:855 +#: cps/helper.py:859 msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "" -#: cps/helper.py:865 +#: cps/helper.py:869 msgid "Error Downloading Cover" msgstr "下載封面時出錯" -#: cps/helper.py:868 +#: cps/helper.py:872 msgid "Cover Format Error" msgstr "封面格式出錯" -#: cps/helper.py:871 +#: cps/helper.py:875 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "" -#: cps/helper.py:881 +#: cps/helper.py:885 msgid "Failed to create path for cover" msgstr "創建封面路徑失敗" -#: cps/helper.py:897 +#: cps/helper.py:901 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "封面文件不是有效的圖片文件,或者無法儲存" -#: cps/helper.py:908 +#: cps/helper.py:912 msgid "Only jpg/jpeg/png/webp/bmp files are supported as coverfile" msgstr "封面文件只支持jpg/jpeg/png/webp/bmp格式文件" -#: cps/helper.py:920 +#: cps/helper.py:924 msgid "Invalid cover file content" msgstr "" -#: cps/helper.py:924 +#: cps/helper.py:928 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "僅將jpg、jpeg文件作為封面文件" -#: cps/helper.py:995 cps/helper.py:1183 +#: cps/helper.py:999 cps/helper.py:1156 #, fuzzy msgid "Cover" msgstr "發現" -#: cps/helper.py:1032 +#: cps/helper.py:1016 msgid "Unrar binary file not found" msgstr "找不到Unrar執行文件" -#: cps/helper.py:1043 +#: cps/helper.py:1027 #, fuzzy msgid "Error executing UnRar" msgstr "執行UnRar時出錯" -#: cps/helper.py:1051 +#: cps/helper.py:1035 msgid "Could not find the specified directory" msgstr "" -#: cps/helper.py:1054 +#: cps/helper.py:1038 msgid "Please specify a directory, not a file" msgstr "" -#: cps/helper.py:1068 +#: cps/helper.py:1052 #, fuzzy msgid "Calibre binaries not viable" msgstr "數據庫不可寫入" -#: cps/helper.py:1077 +#: cps/helper.py:1061 #, python-format msgid "Missing calibre binaries: %(missing)s" msgstr "" -#: cps/helper.py:1079 +#: cps/helper.py:1063 #, fuzzy, python-format msgid "Missing executable permissions: %(missing)s" msgstr "缺少執行權限" -#: cps/helper.py:1084 +#: cps/helper.py:1068 #, fuzzy msgid "Error excecuting Calibre" msgstr "執行UnRar時出錯" -#: cps/helper.py:1185 cps/templates/admin.html:216 +#: cps/helper.py:1158 cps/templates/admin.html:216 msgid "Queue all books for metadata backup" msgstr "" @@ -935,7 +936,7 @@ msgstr "{} 星" #: cps/remotelogin.py:62 cps/templates/layout.html:67 #: cps/templates/layout.html:101 cps/templates/login.html:4 -#: cps/templates/login.html:21 cps/web.py:1333 +#: cps/templates/login.html:21 cps/web.py:1353 msgid "Login" msgstr "登入" @@ -951,7 +952,7 @@ msgstr "Token已過期" msgid "Success! Please return to your device" msgstr "成功!請返回您的設備" -#: cps/render_template.py:42 cps/web.py:414 +#: cps/render_template.py:42 cps/web.py:418 msgid "Books" msgstr "書籍" @@ -976,7 +977,7 @@ msgstr "已下載書籍" msgid "Show Downloaded Books" msgstr "顯示下載過的書籍" -#: cps/render_template.py:59 cps/templates/index.xml:33 cps/web.py:429 +#: cps/render_template.py:59 cps/templates/index.xml:33 cps/web.py:433 msgid "Top Rated Books" msgstr "最高評分書籍" @@ -985,7 +986,7 @@ msgid "Show Top Rated Books" msgstr "顯示最高評分書籍" #: cps/render_template.py:62 cps/templates/index.xml:55 -#: cps/templates/index.xml:59 cps/web.py:750 +#: cps/templates/index.xml:59 cps/web.py:766 msgid "Read Books" msgstr "已讀書籍" @@ -995,7 +996,7 @@ msgid "Show Read and Unread" msgstr "顯示閱讀狀態" #: cps/render_template.py:66 cps/templates/index.xml:62 -#: cps/templates/index.xml:66 cps/web.py:753 +#: cps/templates/index.xml:66 cps/web.py:769 msgid "Unread Books" msgstr "未讀書籍" @@ -1013,7 +1014,7 @@ msgid "Show Random Books" msgstr "隨機顯示書籍" #: cps/render_template.py:72 cps/templates/book_table.html:67 -#: cps/templates/index.xml:84 cps/web.py:1119 +#: cps/templates/index.xml:84 cps/web.py:1135 msgid "Categories" msgstr "分類" @@ -1024,7 +1025,7 @@ msgstr "顯示分類選擇" #: cps/render_template.py:75 cps/templates/book_edit.html:91 #: cps/templates/book_table.html:68 cps/templates/index.xml:91 -#: cps/templates/search_form.html:70 cps/web.py:1009 cps/web.py:1021 +#: cps/templates/search_form.html:70 cps/web.py:1025 cps/web.py:1037 msgid "Series" msgstr "叢書" @@ -1044,7 +1045,7 @@ msgid "Show Author Section" msgstr "顯示作者選擇" #: cps/render_template.py:82 cps/templates/book_table.html:72 -#: cps/templates/index.xml:77 cps/web.py:977 +#: cps/templates/index.xml:77 cps/web.py:993 msgid "Publishers" msgstr "出版社" @@ -1055,7 +1056,7 @@ msgstr "顯示出版社選擇" #: cps/render_template.py:85 cps/templates/book_table.html:70 #: cps/templates/index.xml:98 cps/templates/search_form.html:108 -#: cps/web.py:1091 +#: cps/web.py:1107 msgid "Languages" msgstr "語言" @@ -1082,7 +1083,7 @@ msgstr "文件格式" msgid "Show File Formats Section" msgstr "顯示文件格式選擇" -#: cps/render_template.py:96 cps/web.py:776 +#: cps/render_template.py:96 cps/web.py:792 msgid "Archived Books" msgstr "歸檔書籍" @@ -1091,7 +1092,7 @@ msgstr "歸檔書籍" msgid "Show Archived Books" msgstr "顯示歸檔書籍" -#: cps/render_template.py:101 cps/web.py:807 +#: cps/render_template.py:101 cps/web.py:823 msgid "Books List" msgstr "書籍列表" @@ -1313,173 +1314,178 @@ msgstr "有新的更新。單擊下面的按鈕以更新到版本: %(version)s" msgid "No release information available" msgstr "無可用發佈信息" -#: cps/templates/index.html:6 cps/web.py:441 +#: cps/templates/index.html:6 cps/web.py:445 msgid "Discover (Random Books)" msgstr "發現(隨機書籍)" -#: cps/web.py:477 +#: cps/web.py:481 msgid "Hot Books (Most Downloaded)" msgstr "熱門書籍(最多下載)" -#: cps/web.py:508 +#: cps/web.py:512 #, python-format msgid "Downloaded books by %(user)s" msgstr "%(user)s 下載過的書籍" -#: cps/web.py:541 +#: cps/web.py:545 #, python-format msgid "Author: %(name)s" msgstr "作者:%(name)s" -#: cps/web.py:577 +#: cps/web.py:581 #, python-format msgid "Publisher: %(name)s" msgstr "出版社:%(name)s" -#: cps/web.py:605 +#: cps/web.py:609 #, python-format msgid "Series: %(serie)s" msgstr "叢書:%(serie)s" -#: cps/web.py:620 +#: cps/web.py:623 msgid "Rating: None" msgstr "" -#: cps/web.py:629 +#: cps/web.py:632 #, python-format msgid "Rating: %(rating)s stars" msgstr "評分:%(rating)s 星" -#: cps/web.py:645 +#: cps/web.py:663 #, python-format msgid "File format: %(format)s" msgstr "文件格式:%(format)s" -#: cps/web.py:682 +#: cps/web.py:698 #, python-format msgid "Category: %(name)s" msgstr "分類:%(name)s" -#: cps/web.py:711 +#: cps/web.py:727 #, python-format msgid "Language: %(name)s" msgstr "語言:%(name)s" -#: cps/templates/admin.html:16 cps/web.py:949 +#: cps/templates/admin.html:16 cps/web.py:965 msgid "Downloads" msgstr "下載次數" -#: cps/web.py:1051 +#: cps/web.py:1067 msgid "Ratings list" msgstr "評分列表" -#: cps/web.py:1078 +#: cps/web.py:1094 msgid "File formats list" msgstr "文件格式列表" -#: cps/web.py:1233 +#: cps/web.py:1249 #, fuzzy msgid "Please configure the SMTP mail settings first..." msgstr "請先配置SMTP郵箱設置..." -#: cps/web.py:1240 +#: cps/web.py:1256 #, python-format msgid "Success! Book queued for sending to %(eReadermail)s" msgstr "書籍已經成功加入 %(eReadermail)s 的發送隊列" -#: cps/web.py:1243 +#: cps/web.py:1259 #, python-format msgid "Oops! There was an error sending book: %(res)s" msgstr "糟糕!發送這本書籍的時候出現錯誤:%(res)s" -#: cps/web.py:1245 +#: cps/web.py:1261 #, fuzzy msgid "Oops! Please update your profile with a valid eReader Email." msgstr "請先設置您的kindle郵箱。" -#: cps/web.py:1261 +#: cps/web.py:1277 msgid "Please wait one minute to register next user" msgstr "" #: cps/templates/layout.html:68 cps/templates/layout.html:102 -#: cps/templates/login.html:27 cps/templates/register.html:17 cps/web.py:1262 -#: cps/web.py:1267 cps/web.py:1271 cps/web.py:1277 cps/web.py:1297 -#: cps/web.py:1301 cps/web.py:1314 cps/web.py:1317 +#: cps/templates/login.html:27 cps/templates/register.html:17 cps/web.py:1278 +#: cps/web.py:1282 cps/web.py:1287 cps/web.py:1291 cps/web.py:1297 +#: cps/web.py:1317 cps/web.py:1321 cps/web.py:1334 cps/web.py:1337 msgid "Register" msgstr "註冊" -#: cps/web.py:1266 cps/web.py:1313 +#: cps/web.py:1281 cps/web.py:1385 +#, fuzzy +msgid "Connection error to limiter backend, please contact your administrator" +msgstr "郵件服務未配置,請聯繫網站管理員!" + +#: cps/web.py:1286 cps/web.py:1333 msgid "Oops! Email server is not configured, please contact your administrator." msgstr "郵件服務未配置,請聯繫網站管理員!" -#: cps/web.py:1299 +#: cps/web.py:1319 msgid "Oops! Your Email is not allowed." msgstr "您的電子郵件不允許註冊" -#: cps/web.py:1302 +#: cps/web.py:1322 msgid "Success! Confirmation Email has been sent." msgstr "確認郵件已經發送到您的郵箱。" -#: cps/web.py:1348 cps/web.py:1367 +#: cps/web.py:1368 cps/web.py:1391 #, fuzzy msgid "Cannot activate LDAP authentication" msgstr "無法激活LDAP認證" -#: cps/web.py:1361 +#: cps/web.py:1381 msgid "Please wait one minute before next login" msgstr "" -#: cps/web.py:1376 +#: cps/web.py:1400 #, fuzzy, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "您現在已以“%(nickname)s”身份登入" -#: cps/web.py:1383 +#: cps/web.py:1407 #, fuzzy, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgstr "備援登入“%(nickname)s”:無法訪問LDAP伺服器,或用戶未知" -#: cps/web.py:1388 +#: cps/web.py:1412 #, fuzzy, python-format msgid "Could not login: %(message)s" msgstr "無法登入:%(message)s" -#: cps/web.py:1392 cps/web.py:1417 +#: cps/web.py:1416 cps/web.py:1441 #, fuzzy msgid "Wrong Username or Password" msgstr "用戶名或密碼錯誤" -#: cps/web.py:1399 +#: cps/web.py:1423 #, fuzzy msgid "New Password was sent to your email address" msgstr "新密碼已發送到您的郵箱" -#: cps/web.py:1403 +#: cps/web.py:1427 #, fuzzy msgid "An unknown error occurred. Please try again later." msgstr "發生一個未知錯誤,請稍後再試。" -#: cps/web.py:1405 +#: cps/web.py:1429 #, fuzzy msgid "Please enter valid username to reset password" msgstr "請輸入有效的用戶名進行密碼重置" -#: cps/web.py:1413 +#: cps/web.py:1437 #, fuzzy, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "您現在已以“%(nickname)s”身份登入" -#: cps/web.py:1471 cps/web.py:1521 +#: cps/web.py:1495 cps/web.py:1545 #, python-format msgid "%(name)s's Profile" msgstr "%(name)s 的用戶配置" -#: cps/web.py:1487 +#: cps/web.py:1511 #, fuzzy msgid "Success! Profile Updated" msgstr "資料已更新" -#: cps/web.py:1491 +#: cps/web.py:1515 msgid "Oops! An account already exists for this Email." msgstr "使用此郵箱的賬號已經存在。" @@ -1492,41 +1498,41 @@ msgstr "找不到包含 OAuth 信息的有效 gmail.json 文件" msgid "%(book)s send to E-Reader" msgstr "%(book)s發送到Kindle" -#: cps/tasks/convert.py:166 +#: cps/tasks/convert.py:167 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "沒有發現Calibre 電子書轉換器%(tool)s" -#: cps/tasks/convert.py:200 +#: cps/tasks/convert.py:201 #, python-format msgid "%(format)s format not found on disk" msgstr "硬碟上找不到 %(format)s 格式" -#: cps/tasks/convert.py:204 +#: cps/tasks/convert.py:205 msgid "Ebook converter failed with unknown error" msgstr "發生未知錯誤,書籍轉換失敗" -#: cps/tasks/convert.py:223 +#: cps/tasks/convert.py:224 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "Kepubify 轉換失敗:%(error)s" -#: cps/tasks/convert.py:244 +#: cps/tasks/convert.py:245 #, python-format msgid "Converted file not found or more than one file in folder %(folder)s" msgstr "找不到轉換後的文件或文件夾%(folder)s中有多個文件" -#: cps/tasks/convert.py:279 +#: cps/tasks/convert.py:287 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "電子書轉換器失敗: %(error)s" -#: cps/tasks/convert.py:302 +#: cps/tasks/convert.py:310 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "Calibre 運行失敗,錯誤信息:%(error)s" -#: cps/tasks/convert.py:307 +#: cps/tasks/convert.py:315 msgid "Convert" msgstr "" @@ -1534,7 +1540,7 @@ msgstr "" msgid "Reconnecting Calibre database" msgstr "" -#: cps/tasks/mail.py:269 +#: cps/tasks/mail.py:278 msgid "E-mail" msgstr "" @@ -1813,12 +1819,12 @@ 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:414 -#: cps/templates/config_view_edit.html:175 cps/templates/modal_dialogs.html:64 -#: cps/templates/modal_dialogs.html:99 cps/templates/modal_dialogs.html:117 -#: cps/templates/modal_dialogs.html:135 cps/templates/schedule_edit.html:45 -#: cps/templates/shelf_edit.html:27 cps/templates/tasks.html:46 -#: cps/templates/user_edit.html:144 +#: cps/templates/config_db.html:66 cps/templates/config_edit.html:428 +#: 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 +#: cps/templates/schedule_edit.html:45 cps/templates/shelf_edit.html:27 +#: cps/templates/tasks.html:46 cps/templates/user_edit.html:144 msgid "Cancel" msgstr "取消" @@ -1999,7 +2005,7 @@ msgid "Fetch Metadata" msgstr "獲取元數據" #: cps/templates/book_edit.html:213 cps/templates/config_db.html:65 -#: cps/templates/config_edit.html:413 cps/templates/config_view_edit.html:174 +#: cps/templates/config_edit.html:427 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 @@ -2167,7 +2173,7 @@ msgid "Location of Calibre Database" msgstr "Calibre 數據庫路徑" #: cps/templates/config_db.html:21 -msgid "Separate Book files from Library (Highly experimental, might not work at all)" +msgid "Separate Book Files from Library" msgstr "" #: cps/templates/config_db.html:34 @@ -2251,7 +2257,7 @@ msgid "Convert non-English characters in title and author while saving to disk" msgstr "儲存到硬碟時同步轉換書名與作者中的非英語字元" #: cps/templates/config_edit.html:108 -msgid "Embed Metadata to Ebook File on Download and Conversion (needs Calibre/Kepubify binaries)" +msgid "Embed Metadata to Ebook File on Download/Conversion/e-mail (needs Calibre/Kepubify binaries)" msgstr "" #: cps/templates/config_edit.html:112 @@ -2475,40 +2481,52 @@ msgstr "OAuth設置" msgid "Limit failed login attempts" msgstr "" -#: cps/templates/config_edit.html:376 +#: cps/templates/config_edit.html:377 +msgid "Configure Backend for Limiter" +msgstr "" + +#: cps/templates/config_edit.html:381 +msgid "Options for Limiter" +msgstr "" + +#: cps/templates/config_edit.html:386 msgid "Session protection" msgstr "" -#: cps/templates/config_edit.html:378 +#: cps/templates/config_edit.html:388 msgid "Basic" msgstr "" -#: cps/templates/config_edit.html:379 +#: cps/templates/config_edit.html:389 msgid "Strong" msgstr "" -#: cps/templates/config_edit.html:384 +#: cps/templates/config_edit.html:394 #, fuzzy msgid "User Password policy" msgstr "重置用戶密碼" -#: cps/templates/config_edit.html:388 +#: cps/templates/config_edit.html:398 msgid "Minimum password length" msgstr "" -#: cps/templates/config_edit.html:393 +#: cps/templates/config_edit.html:403 msgid "Enforce number" msgstr "" -#: cps/templates/config_edit.html:397 +#: cps/templates/config_edit.html:407 msgid "Enforce lowercase characters" msgstr "" -#: cps/templates/config_edit.html:401 +#: cps/templates/config_edit.html:411 msgid "Enforce uppercase characters" msgstr "" -#: cps/templates/config_edit.html:405 +#: cps/templates/config_edit.html:415 +msgid "Enforce characters (needed For Chinese/Japanese/Korean Characters)" +msgstr "" + +#: cps/templates/config_edit.html:419 msgid "Enforce special characters" msgstr "" @@ -2632,47 +2650,47 @@ msgstr "%(range)s 第%(index)s冊" msgid "Published" msgstr "出版日期" -#: cps/templates/detail.html:250 cps/templates/listenmp3.html:158 +#: cps/templates/detail.html:251 cps/templates/listenmp3.html:158 msgid "Mark As Unread" msgstr "標為未讀" -#: cps/templates/detail.html:251 cps/templates/listenmp3.html:158 +#: cps/templates/detail.html:252 cps/templates/listenmp3.html:158 msgid "Mark As Read" msgstr "標為已讀" -#: cps/templates/detail.html:253 cps/templates/listenmp3.html:159 +#: cps/templates/detail.html:254 cps/templates/listenmp3.html:159 msgid "Read" msgstr "已讀" -#: cps/templates/detail.html:263 cps/templates/listenmp3.html:166 +#: cps/templates/detail.html:264 cps/templates/listenmp3.html:166 msgid "Restore from archive" msgstr "從歸檔檔案還原" -#: cps/templates/detail.html:264 cps/templates/listenmp3.html:166 +#: cps/templates/detail.html:265 cps/templates/listenmp3.html:166 msgid "Add to archive" msgstr "添加到歸檔" -#: cps/templates/detail.html:266 cps/templates/listenmp3.html:167 +#: cps/templates/detail.html:267 cps/templates/listenmp3.html:167 msgid "Archived" msgstr "歸檔" -#: cps/templates/detail.html:277 cps/templates/listenmp3.html:177 +#: cps/templates/detail.html:278 cps/templates/listenmp3.html:177 msgid "Description:" msgstr "簡介:" -#: cps/templates/detail.html:292 cps/templates/listenmp3.html:190 +#: cps/templates/detail.html:293 cps/templates/listenmp3.html:190 #: cps/templates/search.html:16 msgid "Add to shelf" msgstr "添加到書架" -#: cps/templates/detail.html:304 cps/templates/detail.html:323 +#: cps/templates/detail.html:305 cps/templates/detail.html:324 #: cps/templates/feed.xml:81 cps/templates/layout.html:154 #: cps/templates/listenmp3.html:201 cps/templates/listenmp3.html:218 #: cps/templates/search.html:22 msgid "(Public)" msgstr "(公共)" -#: cps/templates/detail.html:339 +#: cps/templates/detail.html:340 msgid "Edit Metadata" msgstr "編輯元數據" diff --git a/messages.pot b/messages.pot index 4acb1046..0d5fa45c 100644 --- a/messages.pot +++ b/messages.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PROJECT VERSION\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2024-02-10 10:06+0100\n" +"POT-Creation-Date: 2024-04-27 07:20+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -21,487 +21,487 @@ msgstr "" msgid "Statistics" msgstr "" -#: cps/admin.py:149 +#: cps/admin.py:150 msgid "Server restarted, please reload page." msgstr "" -#: cps/admin.py:151 +#: cps/admin.py:152 msgid "Performing Server shutdown, please close window." msgstr "" -#: cps/admin.py:159 +#: cps/admin.py:160 msgid "Success! Database Reconnected" msgstr "" -#: cps/admin.py:162 +#: cps/admin.py:163 msgid "Unknown command" msgstr "" -#: cps/admin.py:173 +#: cps/admin.py:174 msgid "Success! Books queued for Metadata Backup, please check Tasks for result" msgstr "" -#: cps/admin.py:206 cps/editbooks.py:589 cps/editbooks.py:591 -#: cps/editbooks.py:629 cps/editbooks.py:646 cps/editbooks.py:1262 +#: cps/admin.py:207 cps/editbooks.py:590 cps/editbooks.py:592 +#: cps/editbooks.py:630 cps/editbooks.py:647 cps/editbooks.py:1263 #: cps/updater.py:613 cps/uploader.py:93 cps/uploader.py:102 msgid "Unknown" msgstr "" -#: cps/admin.py:231 +#: cps/admin.py:232 msgid "Admin page" msgstr "" -#: cps/admin.py:251 +#: cps/admin.py:252 msgid "Basic Configuration" msgstr "" -#: cps/admin.py:289 +#: cps/admin.py:290 msgid "UI Configuration" msgstr "" -#: cps/admin.py:323 cps/templates/admin.html:51 +#: cps/admin.py:324 cps/templates/admin.html:51 msgid "Edit Users" msgstr "" -#: cps/admin.py:367 cps/opds.py:506 cps/templates/grid.html:14 +#: cps/admin.py:368 cps/opds.py:506 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "" -#: cps/admin.py:394 cps/admin.py:1405 +#: cps/admin.py:395 cps/admin.py:1417 msgid "User not found" msgstr "" -#: cps/admin.py:408 +#: cps/admin.py:409 msgid "{} users deleted successfully" msgstr "" -#: cps/admin.py:431 cps/templates/config_view_edit.html:133 +#: cps/admin.py:432 cps/templates/config_view_edit.html:133 #: cps/templates/user_edit.html:45 cps/templates/user_table.html:81 msgid "Show All" msgstr "" -#: cps/admin.py:452 cps/admin.py:458 +#: cps/admin.py:453 cps/admin.py:459 msgid "Malformed request" msgstr "" -#: cps/admin.py:470 cps/admin.py:2033 +#: cps/admin.py:471 cps/admin.py:2048 msgid "Guest Name can't be changed" msgstr "" -#: cps/admin.py:482 +#: cps/admin.py:483 msgid "Guest can't have this role" msgstr "" -#: cps/admin.py:494 cps/admin.py:1987 +#: cps/admin.py:495 cps/admin.py:2002 msgid "No admin user remaining, can't remove admin role" msgstr "" -#: cps/admin.py:498 cps/admin.py:512 +#: cps/admin.py:499 cps/admin.py:513 msgid "Value has to be true or false" msgstr "" -#: cps/admin.py:500 +#: cps/admin.py:501 msgid "Invalid role" msgstr "" -#: cps/admin.py:504 +#: cps/admin.py:505 msgid "Guest can't have this view" msgstr "" -#: cps/admin.py:514 +#: cps/admin.py:515 msgid "Invalid view" msgstr "" -#: cps/admin.py:517 +#: cps/admin.py:518 msgid "Guest's Locale is determined automatically and can't be set" msgstr "" -#: cps/admin.py:521 +#: cps/admin.py:522 msgid "No Valid Locale Given" msgstr "" -#: cps/admin.py:532 +#: cps/admin.py:533 msgid "No Valid Book Language Given" msgstr "" -#: cps/admin.py:534 cps/editbooks.py:455 +#: cps/admin.py:535 cps/editbooks.py:456 msgid "Parameter not found" msgstr "" -#: cps/admin.py:571 +#: cps/admin.py:572 msgid "Invalid Read Column" msgstr "" -#: cps/admin.py:577 +#: cps/admin.py:578 msgid "Invalid Restricted Column" msgstr "" -#: cps/admin.py:597 cps/admin.py:1858 +#: cps/admin.py:598 cps/admin.py:1873 msgid "Calibre-Web configuration updated" msgstr "" -#: cps/admin.py:609 +#: cps/admin.py:610 msgid "Do you really want to delete the Kobo Token?" msgstr "" -#: cps/admin.py:611 +#: cps/admin.py:612 msgid "Do you really want to delete this domain?" msgstr "" -#: cps/admin.py:613 +#: cps/admin.py:614 msgid "Do you really want to delete this user?" msgstr "" -#: cps/admin.py:615 +#: cps/admin.py:616 msgid "Are you sure you want to delete this shelf?" msgstr "" -#: cps/admin.py:617 +#: cps/admin.py:618 msgid "Are you sure you want to change locales of selected user(s)?" msgstr "" -#: cps/admin.py:619 +#: cps/admin.py:620 msgid "Are you sure you want to change visible book languages for selected user(s)?" msgstr "" -#: cps/admin.py:621 +#: cps/admin.py:622 msgid "Are you sure you want to change the selected role for the selected user(s)?" msgstr "" -#: cps/admin.py:623 +#: cps/admin.py:624 msgid "Are you sure you want to change the selected restrictions for the selected user(s)?" msgstr "" -#: cps/admin.py:625 +#: cps/admin.py:626 msgid "Are you sure you want to change the selected visibility restrictions for the selected user(s)?" msgstr "" -#: cps/admin.py:628 +#: cps/admin.py:629 msgid "Are you sure you want to change shelf sync behavior for the selected user(s)?" msgstr "" -#: cps/admin.py:630 +#: cps/admin.py:631 msgid "Are you sure you want to change Calibre library location?" msgstr "" -#: cps/admin.py:632 +#: cps/admin.py:633 msgid "Calibre-Web will search for updated Covers and update Cover Thumbnails, this may take a while?" msgstr "" -#: cps/admin.py:635 +#: cps/admin.py:636 msgid "Are you sure you want delete Calibre-Web's sync database to force a full sync with your Kobo Reader?" msgstr "" -#: cps/admin.py:878 cps/admin.py:884 cps/admin.py:894 cps/admin.py:904 +#: cps/admin.py:879 cps/admin.py:885 cps/admin.py:895 cps/admin.py:905 #: cps/templates/modal_dialogs.html:29 cps/templates/user_table.html:41 #: cps/templates/user_table.html:58 msgid "Deny" msgstr "" -#: cps/admin.py:880 cps/admin.py:886 cps/admin.py:896 cps/admin.py:906 +#: cps/admin.py:881 cps/admin.py:887 cps/admin.py:897 cps/admin.py:907 #: cps/templates/modal_dialogs.html:28 cps/templates/user_table.html:44 #: cps/templates/user_table.html:61 msgid "Allow" msgstr "" -#: cps/admin.py:921 +#: cps/admin.py:940 msgid "{} sync entries deleted" msgstr "" -#: cps/admin.py:969 +#: cps/admin.py:981 msgid "Tag not found" msgstr "" -#: cps/admin.py:981 +#: cps/admin.py:993 msgid "Invalid Action" msgstr "" -#: cps/admin.py:1111 +#: cps/admin.py:1123 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "" -#: cps/admin.py:1156 +#: cps/admin.py:1168 msgid "Logfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1162 +#: cps/admin.py:1174 msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1196 +#: cps/admin.py:1208 msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgstr "" -#: cps/admin.py:1202 +#: cps/admin.py:1214 msgid "Please Enter a LDAP Service Account and Password" msgstr "" -#: cps/admin.py:1205 +#: cps/admin.py:1217 msgid "Please Enter a LDAP Service Account" msgstr "" -#: cps/admin.py:1210 +#: cps/admin.py:1222 #, python-format msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1212 +#: cps/admin.py:1224 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1216 +#: cps/admin.py:1228 #, python-format msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1218 +#: cps/admin.py:1230 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1225 +#: cps/admin.py:1237 #, python-format msgid "LDAP Member User Filter needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1227 +#: cps/admin.py:1239 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1234 +#: cps/admin.py:1246 msgid "LDAP CACertificate, Certificate or Key Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1265 cps/templates/admin.html:53 +#: cps/admin.py:1277 cps/templates/admin.html:53 msgid "Add New User" msgstr "" -#: cps/admin.py:1274 cps/templates/admin.html:100 +#: cps/admin.py:1286 cps/templates/admin.html:100 msgid "Edit Email Server Settings" msgstr "" -#: cps/admin.py:1293 +#: cps/admin.py:1305 msgid "Success! Gmail Account Verified." msgstr "" -#: cps/admin.py:1313 cps/admin.py:1316 cps/admin.py:1698 cps/admin.py:1842 -#: cps/admin.py:1940 cps/admin.py:2061 cps/editbooks.py:241 -#: cps/editbooks.py:317 cps/editbooks.py:1224 cps/shelf.py:90 cps/shelf.py:150 +#: cps/admin.py:1325 cps/admin.py:1328 cps/admin.py:1710 cps/admin.py:1857 +#: cps/admin.py:1955 cps/admin.py:2076 cps/editbooks.py:242 +#: cps/editbooks.py:318 cps/editbooks.py:1225 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:149 cps/web.py:1496 +#: cps/shelf.py:468 cps/tasks/convert.py:150 cps/web.py:1520 #, python-format msgid "Oops! Database Error: %(error)s." msgstr "" -#: cps/admin.py:1323 +#: cps/admin.py:1335 #, python-format msgid "Test e-mail queued for sending to %(email)s, please check Tasks for result" msgstr "" -#: cps/admin.py:1326 +#: cps/admin.py:1338 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "" -#: cps/admin.py:1328 +#: cps/admin.py:1340 msgid "Please configure your e-mail address first..." msgstr "" -#: cps/admin.py:1330 +#: cps/admin.py:1342 msgid "Email Server Settings updated" msgstr "" -#: cps/admin.py:1353 cps/templates/admin.html:195 +#: cps/admin.py:1365 cps/templates/admin.html:195 msgid "Edit Scheduled Tasks Settings" msgstr "" -#: cps/admin.py:1365 +#: cps/admin.py:1377 msgid "Invalid start time for task specified" msgstr "" -#: cps/admin.py:1370 +#: cps/admin.py:1382 msgid "Invalid duration for task specified" msgstr "" -#: cps/admin.py:1380 +#: cps/admin.py:1392 msgid "Scheduled tasks settings updated" msgstr "" -#: cps/admin.py:1390 cps/admin.py:1439 cps/admin.py:2057 cps/web.py:1296 +#: cps/admin.py:1402 cps/admin.py:1451 cps/admin.py:2072 cps/web.py:1316 msgid "Oops! An unknown error occurred. Please try again later." msgstr "" -#: cps/admin.py:1394 +#: cps/admin.py:1406 msgid "Settings DB is not Writeable" msgstr "" -#: cps/admin.py:1424 cps/admin.py:2049 +#: cps/admin.py:1436 cps/admin.py:2064 #, python-format msgid "Edit User %(nick)s" msgstr "" -#: cps/admin.py:1436 +#: cps/admin.py:1448 #, python-format msgid "Success! Password for user %(user)s reset" msgstr "" -#: cps/admin.py:1442 +#: cps/admin.py:1454 msgid "Oops! Please configure the SMTP mail settings." msgstr "" -#: cps/admin.py:1453 +#: cps/admin.py:1465 msgid "Logfile viewer" msgstr "" -#: cps/admin.py:1519 +#: cps/admin.py:1531 msgid "Requesting update package" msgstr "" -#: cps/admin.py:1520 +#: cps/admin.py:1532 msgid "Downloading update package" msgstr "" -#: cps/admin.py:1521 +#: cps/admin.py:1533 msgid "Unzipping update package" msgstr "" -#: cps/admin.py:1522 +#: cps/admin.py:1534 msgid "Replacing files" msgstr "" -#: cps/admin.py:1523 +#: cps/admin.py:1535 msgid "Database connections are closed" msgstr "" -#: cps/admin.py:1524 +#: cps/admin.py:1536 msgid "Stopping server" msgstr "" -#: cps/admin.py:1525 +#: cps/admin.py:1537 msgid "Update finished, please press okay and reload page" msgstr "" -#: cps/admin.py:1526 cps/admin.py:1527 cps/admin.py:1528 cps/admin.py:1529 -#: cps/admin.py:1530 cps/admin.py:1531 +#: cps/admin.py:1538 cps/admin.py:1539 cps/admin.py:1540 cps/admin.py:1541 +#: cps/admin.py:1542 cps/admin.py:1543 msgid "Update failed:" msgstr "" -#: cps/admin.py:1526 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 +#: cps/admin.py:1538 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 msgid "HTTP Error" msgstr "" -#: cps/admin.py:1527 cps/updater.py:391 cps/updater.py:628 +#: cps/admin.py:1539 cps/updater.py:391 cps/updater.py:628 msgid "Connection error" msgstr "" -#: cps/admin.py:1528 cps/updater.py:393 cps/updater.py:630 +#: cps/admin.py:1540 cps/updater.py:393 cps/updater.py:630 msgid "Timeout while establishing connection" msgstr "" -#: cps/admin.py:1529 cps/updater.py:395 cps/updater.py:632 +#: cps/admin.py:1541 cps/updater.py:395 cps/updater.py:632 msgid "General error" msgstr "" -#: cps/admin.py:1530 +#: cps/admin.py:1542 msgid "Update file could not be saved in temp dir" msgstr "" -#: cps/admin.py:1531 +#: cps/admin.py:1543 msgid "Files could not be replaced during update" msgstr "" -#: cps/admin.py:1555 +#: cps/admin.py:1567 msgid "Failed to extract at least One LDAP User" msgstr "" -#: cps/admin.py:1600 +#: cps/admin.py:1612 msgid "Failed to Create at Least One LDAP User" msgstr "" -#: cps/admin.py:1613 +#: cps/admin.py:1625 #, python-format msgid "Error: %(ldaperror)s" msgstr "" -#: cps/admin.py:1617 +#: cps/admin.py:1629 msgid "Error: No user returned in response of LDAP server" msgstr "" -#: cps/admin.py:1650 +#: cps/admin.py:1662 msgid "At Least One LDAP User Not Found in Database" msgstr "" -#: cps/admin.py:1652 +#: cps/admin.py:1664 msgid "{} User Successfully Imported" msgstr "" -#: cps/admin.py:1710 +#: cps/admin.py:1722 msgid "DB Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1730 +#: cps/admin.py:1742 msgid "DB is not Writeable" msgstr "" -#: cps/admin.py:1746 +#: cps/admin.py:1758 msgid "Keyfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1750 +#: cps/admin.py:1762 msgid "Certfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1829 +#: cps/admin.py:1842 msgid "Password length has to be between 1 and 40" msgstr "" -#: cps/admin.py:1881 +#: cps/admin.py:1896 msgid "Database Settings updated" msgstr "" -#: cps/admin.py:1889 +#: cps/admin.py:1904 msgid "Database Configuration" msgstr "" -#: cps/admin.py:1904 cps/web.py:1270 +#: cps/admin.py:1919 cps/web.py:1290 msgid "Oops! Please complete all fields." msgstr "" -#: cps/admin.py:1913 +#: cps/admin.py:1928 msgid "E-mail is not from valid domain" msgstr "" -#: cps/admin.py:1919 +#: cps/admin.py:1934 msgid "Add new user" msgstr "" -#: cps/admin.py:1930 +#: cps/admin.py:1945 #, python-format msgid "User '%(user)s' created" msgstr "" -#: cps/admin.py:1936 +#: cps/admin.py:1951 msgid "Oops! An account already exists for this Email. or name." msgstr "" -#: cps/admin.py:1966 +#: cps/admin.py:1981 #, python-format msgid "User '%(nick)s' deleted" msgstr "" -#: cps/admin.py:1969 +#: cps/admin.py:1984 msgid "Can't delete Guest User" msgstr "" -#: cps/admin.py:1972 +#: cps/admin.py:1987 msgid "No admin user remaining, can't delete user" msgstr "" -#: cps/admin.py:2027 cps/web.py:1445 +#: cps/admin.py:2042 cps/web.py:1469 msgid "Email can't be empty and has to be a valid Email" msgstr "" -#: cps/admin.py:2053 +#: cps/admin.py:2068 #, python-format msgid "User '%(nick)s' updated" msgstr "" @@ -514,122 +514,123 @@ msgstr "" msgid "Execution permissions missing" msgstr "" -#: cps/db.py:752 cps/search.py:137 cps/web.py:731 +#: cps/db.py:752 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:993 cps/templates/config_edit.html:208 +#: cps/db.py:992 cps/templates/config_edit.html:208 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 -#: cps/web.py:558 cps/web.py:592 cps/web.py:665 cps/web.py:692 cps/web.py:973 -#: cps/web.py:1003 cps/web.py:1048 cps/web.py:1076 cps/web.py:1115 +#: 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 +#: cps/web.py:1131 msgid "None" msgstr "" -#: cps/editbooks.py:122 cps/editbooks.py:910 cps/web.py:525 cps/web.py:1537 -#: cps/web.py:1581 cps/web.py:1626 +#: cps/editbooks.py:123 cps/editbooks.py:911 cps/web.py:529 cps/web.py:1561 +#: cps/web.py:1605 cps/web.py:1650 msgid "Oops! Selected book is unavailable. File does not exist or is not accessible" msgstr "" -#: cps/editbooks.py:166 cps/editbooks.py:1245 +#: cps/editbooks.py:167 cps/editbooks.py:1246 msgid "User has no rights to upload cover" msgstr "" -#: cps/editbooks.py:186 cps/editbooks.py:731 +#: cps/editbooks.py:187 cps/editbooks.py:732 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "" -#: cps/editbooks.py:228 +#: cps/editbooks.py:229 msgid "Metadata successfully updated" msgstr "" -#: cps/editbooks.py:246 +#: cps/editbooks.py:247 msgid "Error editing book: {}" msgstr "" -#: cps/editbooks.py:303 +#: cps/editbooks.py:304 #, python-format msgid "File %(file)s uploaded" msgstr "" -#: cps/editbooks.py:331 +#: cps/editbooks.py:332 msgid "Source or destination format for conversion missing" msgstr "" -#: cps/editbooks.py:339 +#: cps/editbooks.py:340 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "" -#: cps/editbooks.py:343 +#: cps/editbooks.py:344 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "" -#: cps/editbooks.py:650 +#: cps/editbooks.py:651 msgid "Uploaded book probably exists in the library, consider to change before upload new: " msgstr "" -#: cps/editbooks.py:705 cps/editbooks.py:1037 +#: cps/editbooks.py:706 cps/editbooks.py:1038 #, python-format msgid "'%(langname)s' is not a valid language" msgstr "" -#: cps/editbooks.py:743 cps/editbooks.py:1185 +#: cps/editbooks.py:744 cps/editbooks.py:1186 #, python-format msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" msgstr "" -#: cps/editbooks.py:747 cps/editbooks.py:1189 +#: cps/editbooks.py:748 cps/editbooks.py:1190 msgid "File to be uploaded must have an extension" msgstr "" -#: cps/editbooks.py:755 +#: cps/editbooks.py:756 #, python-format msgid "File %(filename)s could not saved to temp dir" msgstr "" -#: cps/editbooks.py:775 +#: cps/editbooks.py:776 #, python-format msgid "Failed to Move Cover File %(file)s: %(error)s" msgstr "" -#: cps/editbooks.py:832 cps/editbooks.py:834 +#: cps/editbooks.py:833 cps/editbooks.py:835 msgid "Book Format Successfully Deleted" msgstr "" -#: cps/editbooks.py:841 cps/editbooks.py:843 +#: cps/editbooks.py:842 cps/editbooks.py:844 msgid "Book Successfully Deleted" msgstr "" -#: cps/editbooks.py:895 +#: cps/editbooks.py:896 msgid "You are missing permissions to delete books" msgstr "" -#: cps/editbooks.py:945 +#: cps/editbooks.py:946 msgid "edit metadata" msgstr "" -#: cps/editbooks.py:994 +#: cps/editbooks.py:995 #, python-format msgid "%(seriesindex)s is not a valid number, skipping" msgstr "" -#: cps/editbooks.py:1180 +#: cps/editbooks.py:1181 msgid "User has no rights to upload additional file formats" msgstr "" -#: cps/editbooks.py:1201 +#: cps/editbooks.py:1202 #, python-format msgid "Failed to create path %(path)s (Permission denied)." msgstr "" -#: cps/editbooks.py:1206 +#: cps/editbooks.py:1207 #, python-format msgid "Failed to store file %(file)s." msgstr "" -#: cps/editbooks.py:1230 +#: cps/editbooks.py:1231 #, python-format msgid "File format %(ext)s added to %(book)s" msgstr "" @@ -642,199 +643,199 @@ msgstr "" msgid "Callback domain is not verified, please follow steps to verify domain in google developer console" msgstr "" -#: cps/helper.py:84 +#: cps/helper.py:86 #, python-format msgid "%(format)s format not found for book id: %(book)d" msgstr "" -#: cps/helper.py:91 cps/tasks/convert.py:86 +#: cps/helper.py:93 cps/tasks/convert.py:86 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "" -#: cps/helper.py:96 +#: cps/helper.py:98 #, python-format msgid "%(format)s not found: %(fn)s" msgstr "" -#: cps/helper.py:101 cps/helper.py:226 cps/templates/detail.html:58 +#: cps/helper.py:103 cps/helper.py:228 cps/templates/detail.html:58 msgid "Send to eReader" msgstr "" -#: cps/helper.py:102 cps/helper.py:120 cps/helper.py:228 +#: cps/helper.py:104 cps/helper.py:122 cps/helper.py:230 msgid "This Email has been sent via Calibre-Web." msgstr "" -#: cps/helper.py:118 +#: cps/helper.py:120 msgid "Calibre-Web Test Email" msgstr "" -#: cps/helper.py:119 +#: cps/helper.py:121 msgid "Test Email" msgstr "" -#: cps/helper.py:136 +#: cps/helper.py:138 msgid "Get Started with Calibre-Web" msgstr "" -#: cps/helper.py:141 +#: cps/helper.py:143 #, python-format msgid "Registration Email for user: %(name)s" msgstr "" -#: cps/helper.py:152 cps/helper.py:158 +#: cps/helper.py:154 cps/helper.py:160 #, python-format msgid "Convert %(orig)s to %(format)s and send to eReader" msgstr "" -#: cps/helper.py:177 cps/helper.py:181 cps/helper.py:185 +#: cps/helper.py:179 cps/helper.py:183 cps/helper.py:187 #, python-format msgid "Send %(format)s to eReader" msgstr "" -#: cps/helper.py:225 +#: cps/helper.py:227 #, python-format msgid "%(book)s send to eReader" msgstr "" -#: cps/helper.py:230 +#: cps/helper.py:232 msgid "The requested file could not be read. Maybe wrong permissions?" msgstr "" -#: cps/helper.py:345 +#: cps/helper.py:347 msgid "Read status could not set: {}" msgstr "" -#: cps/helper.py:368 +#: cps/helper.py:370 #, python-format msgid "Deleting bookfolder for book %(id)s failed, path has subfolders: %(path)s" msgstr "" -#: cps/helper.py:374 +#: cps/helper.py:376 #, python-format msgid "Deleting book %(id)s failed: %(message)s" msgstr "" -#: cps/helper.py:385 +#: cps/helper.py:387 #, python-format msgid "Deleting book %(id)s from database only, book path in database not valid: %(path)s" msgstr "" -#: cps/helper.py:450 +#: cps/helper.py:452 #, python-format msgid "Rename author from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgstr "" -#: cps/helper.py:522 cps/helper.py:531 +#: cps/helper.py:524 cps/helper.py:533 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "" -#: cps/helper.py:565 +#: cps/helper.py:567 #, python-format msgid "Rename title from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgstr "" -#: cps/helper.py:585 +#: cps/helper.py:587 msgid "Error in rename file in path: {}" msgstr "" -#: cps/helper.py:603 +#: cps/helper.py:605 #, python-format msgid "Book path %(path)s not found on Google Drive" msgstr "" -#: cps/helper.py:668 +#: cps/helper.py:670 msgid "Found an existing account for this Email address" msgstr "" -#: cps/helper.py:676 +#: cps/helper.py:678 msgid "This username is already taken" msgstr "" -#: cps/helper.py:688 +#: cps/helper.py:690 msgid "Invalid Email address format" msgstr "" -#: cps/helper.py:706 +#: cps/helper.py:710 msgid "Password doesn't comply with password validation rules" msgstr "" -#: cps/helper.py:855 +#: cps/helper.py:859 msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "" -#: cps/helper.py:865 +#: cps/helper.py:869 msgid "Error Downloading Cover" msgstr "" -#: cps/helper.py:868 +#: cps/helper.py:872 msgid "Cover Format Error" msgstr "" -#: cps/helper.py:871 +#: cps/helper.py:875 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "" -#: cps/helper.py:881 +#: cps/helper.py:885 msgid "Failed to create path for cover" msgstr "" -#: cps/helper.py:897 +#: cps/helper.py:901 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "" -#: cps/helper.py:908 +#: cps/helper.py:912 msgid "Only jpg/jpeg/png/webp/bmp files are supported as coverfile" msgstr "" -#: cps/helper.py:920 +#: cps/helper.py:924 msgid "Invalid cover file content" msgstr "" -#: cps/helper.py:924 +#: cps/helper.py:928 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "" -#: cps/helper.py:995 cps/helper.py:1183 +#: cps/helper.py:999 cps/helper.py:1156 msgid "Cover" msgstr "" -#: cps/helper.py:1032 +#: cps/helper.py:1016 msgid "Unrar binary file not found" msgstr "" -#: cps/helper.py:1043 +#: cps/helper.py:1027 msgid "Error executing UnRar" msgstr "" -#: cps/helper.py:1051 +#: cps/helper.py:1035 msgid "Could not find the specified directory" msgstr "" -#: cps/helper.py:1054 +#: cps/helper.py:1038 msgid "Please specify a directory, not a file" msgstr "" -#: cps/helper.py:1068 +#: cps/helper.py:1052 msgid "Calibre binaries not viable" msgstr "" -#: cps/helper.py:1077 +#: cps/helper.py:1061 #, python-format msgid "Missing calibre binaries: %(missing)s" msgstr "" -#: cps/helper.py:1079 +#: cps/helper.py:1063 #, python-format msgid "Missing executable permissions: %(missing)s" msgstr "" -#: cps/helper.py:1084 +#: cps/helper.py:1068 msgid "Error excecuting Calibre" msgstr "" -#: cps/helper.py:1185 cps/templates/admin.html:216 +#: cps/helper.py:1158 cps/templates/admin.html:216 msgid "Queue all books for metadata backup" msgstr "" @@ -918,7 +919,7 @@ msgstr "" #: cps/remotelogin.py:62 cps/templates/layout.html:67 #: cps/templates/layout.html:101 cps/templates/login.html:4 -#: cps/templates/login.html:21 cps/web.py:1333 +#: cps/templates/login.html:21 cps/web.py:1353 msgid "Login" msgstr "" @@ -934,7 +935,7 @@ msgstr "" msgid "Success! Please return to your device" msgstr "" -#: cps/render_template.py:42 cps/web.py:414 +#: cps/render_template.py:42 cps/web.py:418 msgid "Books" msgstr "" @@ -959,7 +960,7 @@ msgstr "" msgid "Show Downloaded Books" msgstr "" -#: cps/render_template.py:59 cps/templates/index.xml:33 cps/web.py:429 +#: cps/render_template.py:59 cps/templates/index.xml:33 cps/web.py:433 msgid "Top Rated Books" msgstr "" @@ -968,7 +969,7 @@ msgid "Show Top Rated Books" msgstr "" #: cps/render_template.py:62 cps/templates/index.xml:55 -#: cps/templates/index.xml:59 cps/web.py:750 +#: cps/templates/index.xml:59 cps/web.py:766 msgid "Read Books" msgstr "" @@ -977,7 +978,7 @@ msgid "Show Read and Unread" msgstr "" #: cps/render_template.py:66 cps/templates/index.xml:62 -#: cps/templates/index.xml:66 cps/web.py:753 +#: cps/templates/index.xml:66 cps/web.py:769 msgid "Unread Books" msgstr "" @@ -995,7 +996,7 @@ msgid "Show Random Books" msgstr "" #: cps/render_template.py:72 cps/templates/book_table.html:67 -#: cps/templates/index.xml:84 cps/web.py:1119 +#: cps/templates/index.xml:84 cps/web.py:1135 msgid "Categories" msgstr "" @@ -1005,7 +1006,7 @@ msgstr "" #: cps/render_template.py:75 cps/templates/book_edit.html:91 #: cps/templates/book_table.html:68 cps/templates/index.xml:91 -#: cps/templates/search_form.html:70 cps/web.py:1009 cps/web.py:1021 +#: cps/templates/search_form.html:70 cps/web.py:1025 cps/web.py:1037 msgid "Series" msgstr "" @@ -1023,7 +1024,7 @@ msgid "Show Author Section" msgstr "" #: cps/render_template.py:82 cps/templates/book_table.html:72 -#: cps/templates/index.xml:77 cps/web.py:977 +#: cps/templates/index.xml:77 cps/web.py:993 msgid "Publishers" msgstr "" @@ -1033,7 +1034,7 @@ msgstr "" #: cps/render_template.py:85 cps/templates/book_table.html:70 #: cps/templates/index.xml:98 cps/templates/search_form.html:108 -#: cps/web.py:1091 +#: cps/web.py:1107 msgid "Languages" msgstr "" @@ -1057,7 +1058,7 @@ msgstr "" msgid "Show File Formats Section" msgstr "" -#: cps/render_template.py:96 cps/web.py:776 +#: cps/render_template.py:96 cps/web.py:792 msgid "Archived Books" msgstr "" @@ -1065,7 +1066,7 @@ msgstr "" msgid "Show Archived Books" msgstr "" -#: cps/render_template.py:101 cps/web.py:807 +#: cps/render_template.py:101 cps/web.py:823 msgid "Books List" msgstr "" @@ -1286,165 +1287,169 @@ msgstr "" msgid "No release information available" msgstr "" -#: cps/templates/index.html:6 cps/web.py:441 +#: cps/templates/index.html:6 cps/web.py:445 msgid "Discover (Random Books)" msgstr "" -#: cps/web.py:477 +#: cps/web.py:481 msgid "Hot Books (Most Downloaded)" msgstr "" -#: cps/web.py:508 +#: cps/web.py:512 #, python-format msgid "Downloaded books by %(user)s" msgstr "" -#: cps/web.py:541 +#: cps/web.py:545 #, python-format msgid "Author: %(name)s" msgstr "" -#: cps/web.py:577 +#: cps/web.py:581 #, python-format msgid "Publisher: %(name)s" msgstr "" -#: cps/web.py:605 +#: cps/web.py:609 #, python-format msgid "Series: %(serie)s" msgstr "" -#: cps/web.py:620 +#: cps/web.py:623 msgid "Rating: None" msgstr "" -#: cps/web.py:629 +#: cps/web.py:632 #, python-format msgid "Rating: %(rating)s stars" msgstr "" -#: cps/web.py:645 +#: cps/web.py:663 #, python-format msgid "File format: %(format)s" msgstr "" -#: cps/web.py:682 +#: cps/web.py:698 #, python-format msgid "Category: %(name)s" msgstr "" -#: cps/web.py:711 +#: cps/web.py:727 #, python-format msgid "Language: %(name)s" msgstr "" -#: cps/templates/admin.html:16 cps/web.py:949 +#: cps/templates/admin.html:16 cps/web.py:965 msgid "Downloads" msgstr "" -#: cps/web.py:1051 +#: cps/web.py:1067 msgid "Ratings list" msgstr "" -#: cps/web.py:1078 +#: cps/web.py:1094 msgid "File formats list" msgstr "" -#: cps/web.py:1233 +#: cps/web.py:1249 msgid "Please configure the SMTP mail settings first..." msgstr "" -#: cps/web.py:1240 +#: cps/web.py:1256 #, python-format msgid "Success! Book queued for sending to %(eReadermail)s" msgstr "" -#: cps/web.py:1243 +#: cps/web.py:1259 #, python-format msgid "Oops! There was an error sending book: %(res)s" msgstr "" -#: cps/web.py:1245 +#: cps/web.py:1261 msgid "Oops! Please update your profile with a valid eReader Email." msgstr "" -#: cps/web.py:1261 +#: cps/web.py:1277 msgid "Please wait one minute to register next user" msgstr "" #: cps/templates/layout.html:68 cps/templates/layout.html:102 -#: cps/templates/login.html:27 cps/templates/register.html:17 cps/web.py:1262 -#: cps/web.py:1267 cps/web.py:1271 cps/web.py:1277 cps/web.py:1297 -#: cps/web.py:1301 cps/web.py:1314 cps/web.py:1317 +#: cps/templates/login.html:27 cps/templates/register.html:17 cps/web.py:1278 +#: cps/web.py:1282 cps/web.py:1287 cps/web.py:1291 cps/web.py:1297 +#: cps/web.py:1317 cps/web.py:1321 cps/web.py:1334 cps/web.py:1337 msgid "Register" msgstr "" -#: cps/web.py:1266 cps/web.py:1313 +#: cps/web.py:1281 cps/web.py:1385 +msgid "Connection error to limiter backend, please contact your administrator" +msgstr "" + +#: cps/web.py:1286 cps/web.py:1333 msgid "Oops! Email server is not configured, please contact your administrator." msgstr "" -#: cps/web.py:1299 +#: cps/web.py:1319 msgid "Oops! Your Email is not allowed." msgstr "" -#: cps/web.py:1302 +#: cps/web.py:1322 msgid "Success! Confirmation Email has been sent." msgstr "" -#: cps/web.py:1348 cps/web.py:1367 +#: cps/web.py:1368 cps/web.py:1391 msgid "Cannot activate LDAP authentication" msgstr "" -#: cps/web.py:1361 +#: cps/web.py:1381 msgid "Please wait one minute before next login" msgstr "" -#: cps/web.py:1376 +#: cps/web.py:1400 #, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "" -#: cps/web.py:1383 +#: cps/web.py:1407 #, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgstr "" -#: cps/web.py:1388 +#: cps/web.py:1412 #, python-format msgid "Could not login: %(message)s" msgstr "" -#: cps/web.py:1392 cps/web.py:1417 +#: cps/web.py:1416 cps/web.py:1441 msgid "Wrong Username or Password" msgstr "" -#: cps/web.py:1399 +#: cps/web.py:1423 msgid "New Password was sent to your email address" msgstr "" -#: cps/web.py:1403 +#: cps/web.py:1427 msgid "An unknown error occurred. Please try again later." msgstr "" -#: cps/web.py:1405 +#: cps/web.py:1429 msgid "Please enter valid username to reset password" msgstr "" -#: cps/web.py:1413 +#: cps/web.py:1437 #, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "" -#: cps/web.py:1471 cps/web.py:1521 +#: cps/web.py:1495 cps/web.py:1545 #, python-format msgid "%(name)s's Profile" msgstr "" -#: cps/web.py:1487 +#: cps/web.py:1511 msgid "Success! Profile Updated" msgstr "" -#: cps/web.py:1491 +#: cps/web.py:1515 msgid "Oops! An account already exists for this Email." msgstr "" @@ -1457,41 +1462,41 @@ msgstr "" msgid "%(book)s send to E-Reader" msgstr "" -#: cps/tasks/convert.py:166 +#: cps/tasks/convert.py:167 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "" -#: cps/tasks/convert.py:200 +#: cps/tasks/convert.py:201 #, python-format msgid "%(format)s format not found on disk" msgstr "" -#: cps/tasks/convert.py:204 +#: cps/tasks/convert.py:205 msgid "Ebook converter failed with unknown error" msgstr "" -#: cps/tasks/convert.py:223 +#: cps/tasks/convert.py:224 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "" -#: cps/tasks/convert.py:244 +#: cps/tasks/convert.py:245 #, python-format msgid "Converted file not found or more than one file in folder %(folder)s" msgstr "" -#: cps/tasks/convert.py:279 +#: cps/tasks/convert.py:287 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "" -#: cps/tasks/convert.py:302 +#: cps/tasks/convert.py:310 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "" -#: cps/tasks/convert.py:307 +#: cps/tasks/convert.py:315 msgid "Convert" msgstr "" @@ -1499,7 +1504,7 @@ msgstr "" msgid "Reconnecting Calibre database" msgstr "" -#: cps/tasks/mail.py:269 +#: cps/tasks/mail.py:278 msgid "E-mail" msgstr "" @@ -1775,12 +1780,12 @@ 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:414 -#: cps/templates/config_view_edit.html:175 cps/templates/modal_dialogs.html:64 -#: cps/templates/modal_dialogs.html:99 cps/templates/modal_dialogs.html:117 -#: cps/templates/modal_dialogs.html:135 cps/templates/schedule_edit.html:45 -#: cps/templates/shelf_edit.html:27 cps/templates/tasks.html:46 -#: cps/templates/user_edit.html:144 +#: cps/templates/config_db.html:66 cps/templates/config_edit.html:428 +#: 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 +#: cps/templates/schedule_edit.html:45 cps/templates/shelf_edit.html:27 +#: cps/templates/tasks.html:46 cps/templates/user_edit.html:144 msgid "Cancel" msgstr "" @@ -1961,7 +1966,7 @@ msgid "Fetch Metadata" msgstr "" #: cps/templates/book_edit.html:213 cps/templates/config_db.html:65 -#: cps/templates/config_edit.html:413 cps/templates/config_view_edit.html:174 +#: cps/templates/config_edit.html:427 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 @@ -2126,7 +2131,7 @@ msgid "Location of Calibre Database" msgstr "" #: cps/templates/config_db.html:21 -msgid "Separate Book files from Library (Highly experimental, might not work at all)" +msgid "Separate Book Files from Library" msgstr "" #: cps/templates/config_db.html:34 @@ -2210,7 +2215,7 @@ msgid "Convert non-English characters in title and author while saving to disk" msgstr "" #: cps/templates/config_edit.html:108 -msgid "Embed Metadata to Ebook File on Download and Conversion (needs Calibre/Kepubify binaries)" +msgid "Embed Metadata to Ebook File on Download/Conversion/e-mail (needs Calibre/Kepubify binaries)" msgstr "" #: cps/templates/config_edit.html:112 @@ -2432,39 +2437,51 @@ msgstr "" msgid "Limit failed login attempts" msgstr "" -#: cps/templates/config_edit.html:376 +#: cps/templates/config_edit.html:377 +msgid "Configure Backend for Limiter" +msgstr "" + +#: cps/templates/config_edit.html:381 +msgid "Options for Limiter" +msgstr "" + +#: cps/templates/config_edit.html:386 msgid "Session protection" msgstr "" -#: cps/templates/config_edit.html:378 +#: cps/templates/config_edit.html:388 msgid "Basic" msgstr "" -#: cps/templates/config_edit.html:379 +#: cps/templates/config_edit.html:389 msgid "Strong" msgstr "" -#: cps/templates/config_edit.html:384 +#: cps/templates/config_edit.html:394 msgid "User Password policy" msgstr "" -#: cps/templates/config_edit.html:388 +#: cps/templates/config_edit.html:398 msgid "Minimum password length" msgstr "" -#: cps/templates/config_edit.html:393 +#: cps/templates/config_edit.html:403 msgid "Enforce number" msgstr "" -#: cps/templates/config_edit.html:397 +#: cps/templates/config_edit.html:407 msgid "Enforce lowercase characters" msgstr "" -#: cps/templates/config_edit.html:401 +#: cps/templates/config_edit.html:411 msgid "Enforce uppercase characters" msgstr "" -#: cps/templates/config_edit.html:405 +#: cps/templates/config_edit.html:415 +msgid "Enforce characters (needed For Chinese/Japanese/Korean Characters)" +msgstr "" + +#: cps/templates/config_edit.html:419 msgid "Enforce special characters" msgstr "" @@ -2586,47 +2603,47 @@ msgstr "" msgid "Published" msgstr "" -#: cps/templates/detail.html:250 cps/templates/listenmp3.html:158 +#: cps/templates/detail.html:251 cps/templates/listenmp3.html:158 msgid "Mark As Unread" msgstr "" -#: cps/templates/detail.html:251 cps/templates/listenmp3.html:158 +#: cps/templates/detail.html:252 cps/templates/listenmp3.html:158 msgid "Mark As Read" msgstr "" -#: cps/templates/detail.html:253 cps/templates/listenmp3.html:159 +#: cps/templates/detail.html:254 cps/templates/listenmp3.html:159 msgid "Read" msgstr "" -#: cps/templates/detail.html:263 cps/templates/listenmp3.html:166 +#: cps/templates/detail.html:264 cps/templates/listenmp3.html:166 msgid "Restore from archive" msgstr "" -#: cps/templates/detail.html:264 cps/templates/listenmp3.html:166 +#: cps/templates/detail.html:265 cps/templates/listenmp3.html:166 msgid "Add to archive" msgstr "" -#: cps/templates/detail.html:266 cps/templates/listenmp3.html:167 +#: cps/templates/detail.html:267 cps/templates/listenmp3.html:167 msgid "Archived" msgstr "" -#: cps/templates/detail.html:277 cps/templates/listenmp3.html:177 +#: cps/templates/detail.html:278 cps/templates/listenmp3.html:177 msgid "Description:" msgstr "" -#: cps/templates/detail.html:292 cps/templates/listenmp3.html:190 +#: cps/templates/detail.html:293 cps/templates/listenmp3.html:190 #: cps/templates/search.html:16 msgid "Add to shelf" msgstr "" -#: cps/templates/detail.html:304 cps/templates/detail.html:323 +#: cps/templates/detail.html:305 cps/templates/detail.html:324 #: cps/templates/feed.xml:81 cps/templates/layout.html:154 #: cps/templates/listenmp3.html:201 cps/templates/listenmp3.html:218 #: cps/templates/search.html:22 msgid "(Public)" msgstr "" -#: cps/templates/detail.html:339 +#: cps/templates/detail.html:340 msgid "Edit Metadata" msgstr ""