From 7b45324149e11e261e53aa9d6f1c6821128767ec Mon Sep 17 00:00:00 2001 From: Ozzie Isaacs Date: Sun, 1 May 2022 10:35:00 +0200 Subject: [PATCH 01/20] Bugfix time and datetime.time --- cps/admin.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/cps/admin.py b/cps/admin.py index 76275922..3b3ef383 100644 --- a/cps/admin.py +++ b/cps/admin.py @@ -25,7 +25,9 @@ import re import base64 import json import operator -from datetime import datetime, timedelta, time +import time +from datetime import datetime, timedelta +from datetime import time as datetime_time from functools import wraps @@ -205,7 +207,7 @@ def admin(): all_user = ub.session.query(ub.User).all() email_settings = config.get_mail_settings() - schedule_time = format_time(time(hour=config.schedule_start_time), format="short") + schedule_time = format_time(datetime_time(hour=config.schedule_start_time), format="short") t = timedelta(hours=config.schedule_duration // 60, minutes=config.schedule_duration % 60) schedule_duration = format_timedelta(t, threshold=.99) From 49655e9f2db89cfc77ddbd2c2c3646ea929edd40 Mon Sep 17 00:00:00 2001 From: Ozzie Isaacs Date: Sun, 1 May 2022 10:38:31 +0200 Subject: [PATCH 02/20] More bugfixes for time and datetime.time --- cps/admin.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cps/admin.py b/cps/admin.py index 3b3ef383..c928fe19 100644 --- a/cps/admin.py +++ b/cps/admin.py @@ -1302,7 +1302,7 @@ def edit_scheduledtasks(): duration_field = list() for n in range(24): - time_field.append((n , format_time(time(hour=n), format="short",))) + time_field.append((n, format_time(datetime_time(hour=n), format="short",))) for n in range(5, 65, 5): t = timedelta(hours=n // 60, minutes=n % 60) duration_field.append((n, format_timedelta(t, threshold=.9))) From 3233b357f83b13490d692a06c13f631d45d440ab Mon Sep 17 00:00:00 2001 From: Ozzie Isaacs Date: Sun, 1 May 2022 11:13:36 +0200 Subject: [PATCH 03/20] Changed Readme --- README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 267f21ef..c3422041 100644 --- a/README.md +++ b/README.md @@ -21,9 +21,10 @@ Calibre-Web is a web app providing a clean interface for browsing, reading and d - Admin interface - User Interface in brazilian, czech, dutch, english, finnish, french, german, greek, hungarian, italian, japanese, khmer, korean, polish, russian, simplified and traditional chinese, spanish, swedish, turkish, ukrainian - OPDS feed for eBook reader apps -- Filter and search by titles, authors, tags, series and language +- Filter and search by titles, authors, tags, series, book format and language - Create a custom book collection (shelves) - Support for editing eBook metadata and deleting eBooks from Calibre library +- Support for downloading eBook metadata from various sources, sources can be extended via external plugins - Support for converting eBooks through Calibre binaries - Restrict eBook download to logged-in users - Support for public user registration From cde51e743a643b312f2760195ac4195962818f6d Mon Sep 17 00:00:00 2001 From: Ozzie Isaacs Date: Sun, 1 May 2022 12:36:35 +0200 Subject: [PATCH 04/20] Removed duplicate Werkzeug entry in about page Code cosmetics --- cps/about.py | 66 +++++++++++++++++++--------------------- cps/dep_check.py | 23 +++++++------- cps/templates/stats.html | 2 +- cps/uploader.py | 2 +- 4 files changed, 46 insertions(+), 47 deletions(-) diff --git a/cps/about.py b/cps/about.py index 1b68818d..31e843b9 100644 --- a/cps/about.py +++ b/cps/about.py @@ -25,7 +25,6 @@ import platform import sqlite3 from collections import OrderedDict -import werkzeug import flask import flask_login import jinja2 @@ -37,41 +36,40 @@ from .render_template import render_title_template about = flask.Blueprint('about', __name__) -ret = dict() -req = dep_check.load_dependencys(False) -opt = dep_check.load_dependencys(True) +modules = dict() +req = dep_check.load_dependencies(False) +opt = dep_check.load_dependencies(True) for i in (req + opt): - ret[i[1]] = i[0] - -if constants.NIGHTLY_VERSION[0] == "$Format:%H$": - calibre_web_version = constants.STABLE_VERSION['version'] -else: - calibre_web_version = (constants.STABLE_VERSION['version'] + ' - ' - + constants.NIGHTLY_VERSION[0].replace('%', '%%') + ' - ' - + constants.NIGHTLY_VERSION[1].replace('%', '%%')) - -if getattr(sys, 'frozen', False): - calibre_web_version += " - Exe-Version" -elif constants.HOME_CONFIG: - calibre_web_version += " - pyPi" - -_VERSIONS = OrderedDict( - Platform='{0[0]} {0[2]} {0[3]} {0[4]} {0[5]}'.format(platform.uname()), - Python=sys.version, - Calibre_Web=calibre_web_version, - Werkzeug=werkzeug.__version__, - Jinja2=jinja2.__version__, - pySqlite=sqlite3.version, - SQLite=sqlite3.sqlite_version, -) -_VERSIONS.update(ret) -_VERSIONS.update(uploader.get_versions()) + modules[i[1]] = i[0] +modules['Jinja2'] = jinja2.__version__ +modules['pySqlite'] = sqlite3.version +modules['SQLite'] = sqlite3.sqlite_version +sorted_modules = OrderedDict((sorted(modules.items(), key=lambda x: x[0].casefold()))) def collect_stats(): - _VERSIONS['ebook converter'] = converter.get_calibre_version() - _VERSIONS['unrar'] = converter.get_unrar_version() - _VERSIONS['kepubify'] = converter.get_kepubify_version() + if constants.NIGHTLY_VERSION[0] == "$Format:%H$": + calibre_web_version = constants.STABLE_VERSION['version'] + else: + calibre_web_version = (constants.STABLE_VERSION['version'] + ' - ' + + constants.NIGHTLY_VERSION[0].replace('%', '%%') + ' - ' + + constants.NIGHTLY_VERSION[1].replace('%', '%%')) + + if getattr(sys, 'frozen', False): + calibre_web_version += " - Exe-Version" + elif constants.HOME_CONFIG: + calibre_web_version += " - pyPi" + + _VERSIONS = {'Calibre Web': calibre_web_version} + _VERSIONS.update(OrderedDict( + Python=sys.version, + Platform='{0[0]} {0[2]} {0[3]} {0[4]} {0[5]}'.format(platform.uname()), + )) + _VERSIONS.update(uploader.get_magick_version()) + _VERSIONS['Unrar'] = converter.get_unrar_version() + _VERSIONS['Ebook converter'] = converter.get_calibre_version() + _VERSIONS['Kepubify'] = converter.get_kepubify_version() + _VERSIONS.update(sorted_modules) return _VERSIONS @@ -80,7 +78,7 @@ def collect_stats(): def stats(): counter = calibre_db.session.query(db.Books).count() authors = calibre_db.session.query(db.Authors).count() - categorys = calibre_db.session.query(db.Tags).count() + categories = calibre_db.session.query(db.Tags).count() series = calibre_db.session.query(db.Series).count() return render_title_template('stats.html', bookcounter=counter, authorcounter=authors, versions=collect_stats(), - categorycounter=categorys, seriecounter=series, title=_(u"Statistics"), page="stat") + categorycounter=categories, seriecounter=series, title=_(u"Statistics"), page="stat") diff --git a/cps/dep_check.py b/cps/dep_check.py index 929185c2..431d7019 100644 --- a/cps/dep_check.py +++ b/cps/dep_check.py @@ -20,7 +20,8 @@ if not importlib: except ImportError as e: pkgresources = False -def load_dependencys(optional=False): + +def load_dependencies(optional=False): deps = list() if getattr(sys, 'frozen', False): pip_installed = os.path.join(BASE_DIR, ".pip_installed") @@ -57,7 +58,7 @@ def load_dependencys(optional=False): def dependency_check(optional=False): d = list() - deps = load_dependencys(optional) + deps = load_dependencies(optional) for dep in deps: try: dep_version_int = [int(x) for x in dep[0].split('.')] @@ -67,28 +68,28 @@ def dependency_check(optional=False): high_check = None except ValueError: d.append({'name': dep[1], - 'target': "available", - 'found': "Not available" - }) + 'target': "available", + 'found': "Not available" + }) continue if dep[2].strip() == "==": if dep_version_int != low_check: d.append({'name': dep[1], - 'found': dep[0], - "target": dep[2] + dep[3]}) + 'found': dep[0], + "target": dep[2] + dep[3]}) continue elif dep[2].strip() == ">=": if dep_version_int < low_check: d.append({'name': dep[1], - 'found': dep[0], - "target": dep[2] + dep[3]}) + 'found': dep[0], + "target": dep[2] + dep[3]}) continue elif dep[2].strip() == ">": if dep_version_int <= low_check: d.append({'name': dep[1], - 'found': dep[0], - "target": dep[2] + dep[3]}) + 'found': dep[0], + "target": dep[2] + dep[3]}) continue if dep[4] and dep[5]: if dep[4].strip() == "<": diff --git a/cps/templates/stats.html b/cps/templates/stats.html index 62a29308..07219ea6 100644 --- a/cps/templates/stats.html +++ b/cps/templates/stats.html @@ -30,7 +30,7 @@ - + diff --git a/cps/uploader.py b/cps/uploader.py index 5dbd1249..92035356 100644 --- a/cps/uploader.py +++ b/cps/uploader.py @@ -231,7 +231,7 @@ def pdf_preview(tmp_file_path, tmp_dir): return None -def get_versions(): +def get_magick_version(): ret = dict() if not use_generic_pdf_cover: ret['Image Magick'] = ImageVersion.MAGICK_VERSION From ae5053e0721dc2b767995b5794146ba3f275b927 Mon Sep 17 00:00:00 2001 From: Ozzieisaacs Date: Sun, 1 May 2022 13:24:11 +0200 Subject: [PATCH 05/20] Added missing translation strings Update German Translation --- cps/helper.py | 2 +- cps/templates/grid.html | 2 +- cps/templates/list.html | 2 +- cps/translations/cs/LC_MESSAGES/messages.mo | Bin 38838 -> 38752 bytes cps/translations/cs/LC_MESSAGES/messages.po | 1621 ++++++++-------- cps/translations/de/LC_MESSAGES/messages.mo | Bin 55454 -> 59356 bytes cps/translations/de/LC_MESSAGES/messages.po | 1632 ++++++++-------- cps/translations/el/LC_MESSAGES/messages.mo | Bin 56620 -> 56504 bytes cps/translations/el/LC_MESSAGES/messages.po | 1621 ++++++++-------- cps/translations/es/LC_MESSAGES/messages.mo | Bin 50452 -> 50362 bytes cps/translations/es/LC_MESSAGES/messages.po | 1619 ++++++++-------- cps/translations/fi/LC_MESSAGES/messages.mo | Bin 26983 -> 26899 bytes cps/translations/fi/LC_MESSAGES/messages.po | 1621 ++++++++-------- cps/translations/fr/LC_MESSAGES/messages.mo | Bin 54828 -> 54720 bytes cps/translations/fr/LC_MESSAGES/messages.po | 1619 ++++++++-------- cps/translations/hu/LC_MESSAGES/messages.mo | Bin 24748 -> 24658 bytes cps/translations/hu/LC_MESSAGES/messages.po | 1621 ++++++++-------- cps/translations/it/LC_MESSAGES/messages.mo | Bin 55470 -> 55382 bytes cps/translations/it/LC_MESSAGES/messages.po | 1611 ++++++++-------- cps/translations/ja/LC_MESSAGES/messages.mo | Bin 19466 -> 19424 bytes cps/translations/ja/LC_MESSAGES/messages.po | 1637 +++++++++-------- cps/translations/km/LC_MESSAGES/messages.mo | Bin 24109 -> 24032 bytes cps/translations/km/LC_MESSAGES/messages.po | 1633 ++++++++-------- cps/translations/ko/LC_MESSAGES/messages.mo | Bin 55026 -> 54938 bytes cps/translations/ko/LC_MESSAGES/messages.po | 1609 ++++++++-------- cps/translations/nl/LC_MESSAGES/messages.mo | Bin 49721 -> 49635 bytes cps/translations/nl/LC_MESSAGES/messages.po | 1619 ++++++++-------- cps/translations/pl/LC_MESSAGES/messages.mo | Bin 51554 -> 51457 bytes cps/translations/pl/LC_MESSAGES/messages.po | 1619 ++++++++-------- .../pt_BR/LC_MESSAGES/messages.mo | Bin 46099 -> 46006 bytes .../pt_BR/LC_MESSAGES/messages.po | 1619 ++++++++-------- cps/translations/ru/LC_MESSAGES/messages.mo | Bin 46957 -> 46862 bytes cps/translations/ru/LC_MESSAGES/messages.po | 1621 ++++++++-------- cps/translations/sv/LC_MESSAGES/messages.mo | Bin 47950 -> 47868 bytes cps/translations/sv/LC_MESSAGES/messages.po | 1607 ++++++++-------- cps/translations/tr/LC_MESSAGES/messages.mo | Bin 22376 -> 22341 bytes cps/translations/tr/LC_MESSAGES/messages.po | 1637 +++++++++-------- cps/translations/uk/LC_MESSAGES/messages.mo | Bin 17666 -> 17623 bytes cps/translations/uk/LC_MESSAGES/messages.po | 1633 ++++++++-------- .../zh_Hans_CN/LC_MESSAGES/messages.mo | Bin 51107 -> 50885 bytes .../zh_Hans_CN/LC_MESSAGES/messages.po | 1609 ++++++++-------- .../zh_Hant_TW/LC_MESSAGES/messages.mo | Bin 48155 -> 48080 bytes .../zh_Hant_TW/LC_MESSAGES/messages.po | 1611 ++++++++-------- messages.pot | 1623 ++++++++-------- 44 files changed, 18356 insertions(+), 15692 deletions(-) diff --git a/cps/helper.py b/cps/helper.py index ed11e1c0..cb9cb436 100644 --- a/cps/helper.py +++ b/cps/helper.py @@ -805,7 +805,7 @@ def save_cover_from_url(url, book_path): img = advocate.get(url, timeout=(10, 200), allow_redirects=False) # ToDo: Error Handling else: log.error("python module advocate is not installed but is needed") - return False, _("Python module 'advocate' is not installed but is needed for cover downloads") + return False, _("Python module 'advocate' is not installed but is needed for cover uploads") img.raise_for_status() return save_cover(img, book_path) except (socket.gaierror, diff --git a/cps/templates/grid.html b/cps/templates/grid.html index 638b7245..1905d52d 100644 --- a/cps/templates/grid.html +++ b/cps/templates/grid.html @@ -18,7 +18,7 @@
{{char.char}}
{% endfor %} -
List
+
{{_('List')}}
{% if entries[0] %} diff --git a/cps/templates/list.html b/cps/templates/list.html index a9089823..84fda1d0 100644 --- a/cps/templates/list.html +++ b/cps/templates/list.html @@ -19,7 +19,7 @@ {% if data == "series" %} - + {% endif %}
diff --git a/cps/translations/cs/LC_MESSAGES/messages.mo b/cps/translations/cs/LC_MESSAGES/messages.mo index 0ae3a98a765da51423b0d826e2d013152ab6ddcc..118cc08278f41d75edce175afa79974791b06524 100644 GIT binary patch delta 8854 zcmYM&3!INt{=o5vnPJS;b#fasF5_-8BgQR4?lt66Zd19G6dEDr_LF;wB)Tq@UX-oW zQkzXysm+$uUReFB6}4?qYsvm?QTcy9bDr1h->dC?&UwyrF5mM#&yW4>OO=mpubenq zGkHVAKlzoTs3A72VeS9_Y1kx+im2vdTO5M+n~yc|vAF&M=2L$UQ}HB@#ItxU4s04l zUGORFjGtgi6eXfs&7!C$4fU`pj>aS$kC)(0*a8<|8g9WXd>J!vFV@Bn(0<3`_G$&8 zUk=)@0GTiCd*HJi5gDdOOI)vyNv_2Kx(NfICP4V+L z;^#-=`oGbLrLih^UJng*J{qxZ$eN-uG{2X}?T@x0{!Z{Z4NiCn$K!YCK&5PpM2$vb z8s3c#yc9jMC(*3lfll-t8uBc*>qL3j3yY9P(M(Lir!W(@CMaA+;T8176X&^I`WPk8&dGh3ejZhh~!^XhRhkQLL;;no8#xPRk-91*e-T3y2B|r1Xp4m{1~ss zQ|N-amxOr+mk|FP8fMbqg!f@z+=YBSqhIh6Y{oB!JLrxscp!4+qp@f%EJu&(0d!~U z(ea){BY670;{Q??^%x**j3(&J3glr}% zLvP8$=zE*ciMC+_{9Wu}tVR6{y75E`Uk5uj!Ma!+*9XV-v1oG5Lce6sqF=-l=ngV3 z5AQWX7g&NtI0Uc2d(b1=hi>oyy70dvkx4|SDR?I5;|Hmvwprf*4P|3&h0W2O3`GZ; zitcnF@@jN1vZ-i4HpHZ!VPW~`5p+S%ybqd`W3aRLznp?uxec9o7ha0LM<+Oi-i{y9 z?}FQMr%lkL?25kMAM4?@n2Y7;k*q=Ae;C`~Ms#EEVa4zNhZOAiF;>Q7=mNe(LtKlv zx5j4J9*1B)F2dgUG?E_CKd=$z(dYy{(1rEE$~X+oossAf&cy`(i#G9}LOhPcusYvK z@BKtH86QE<@Hpn<$=LKOLqyu56P2R5QiiN0T8l3DFX(kl>KhhVgw}`lCH|i2LK^zv z&$^cEx`(M!w9Ye?cDnY@W zoJI$X2817nI%vH;HpRY}ic{kDJFq_W71$g%V+(u_jl>!ByOP8Cx!@+q6j3X5z8Pq; zChno&PM^T4_!2ttYv_(Yz>3hJFMNacuRJIWoP!=oZd`AJPF#$>-vd)|Fxqbfrs0H8 zPejuwRHI=YCgC#V>l)pQ=EB?P!hS&qsxml)FdJP^ZA`&Jbb`y!9rlhLhHhX28i^Tk z{VvS#{;#0mi|es9Zbq~CAR6N6D#8a1&1CB!P`DAq9W#~rkM?W+Vqe=E68qvL& zj)%}AI)E-E@)Hy{6);Cz89VN7$v^{wx^ytENr+-f`TFGg}yix-T94Z@=ZpQY%zLNPhkeWfgaU+==)#9 zp21@3{%NHpbU?=&hyE%~#7ta-Eikc$!Uzh#MF&o&;!)H^&psc0p#*DSUo=UtL$m#M zbYXX+N3kJ({&?(;*!Qtwp=hq0K_Zxl&Qowg|K9>1q@okmKy#rf*2F?|!d}=42cz%J zMvr0v8nGp4Zfrs$uo;`<0d$=2(G8_sYf^LmwJ7+(X^B3V5L=FhZXtSx%g})zMhAWz z_f_Hpg`Vm1QQMU&5qf<;N57<%%0mBUWyIf=b)g|2hofgZ z3)|o(^vvH!Cq9HG>38T^{)p~05orH%ybM>y^*!hU52HEr?e)apou8qh zBBVEjP^F_C3eXAKpvl-9-PzUXj>e-QUV<)c6S{%t(HuF9m*Owz(H7nq{zP>%4yOKc zf`SwMgl(}hiQoX2q7#qC*;tOb_)lzv$rHj~$(mw5^*-o?ldv(aM*F{nd3X@r=)cg7 zTtts7kv1`0kG$A^Xvb-BJ%Jw4R&>BOaULE;BQ|DIm|y~WREx18-j7CV8}`RN*bGx{ z3Lmc4$WbMtJ`_rMa07Z)+tDQa5>3wUun2!Z7uNdb@Tu;OCRaJu#YN~5JceH5t;jbm zdIgP4>f~@+iqHsMhZXn#ZVH7otU;4%4|?DK6xWZVN%Nn$J?)n8iEV&gX)i^O+=uRbBf8>`Fcr^W3Z6$NjBX7_ zQ59{^j_Y;Mqsv7@UxL0r4ju0%Or%j*LBS5|urI!b4*YZ6o_t%_VJkFJ1F$L1!D{$K z{Co>~?cPB*@)@?nf1w*}Fg5%Jl%W0kP38Q}&g*IL8ZE@O_!yc*@1j}yC1&6c=)ft{ z!tKaGciavgumhS4gYin7gucHGjpXmq$eu=XCuutIw@_<(NUo;nLOP;58yeTgU{&g~ z(KBBVy9;|!KZ|ap?v$Ty-qoQfyJH)3SN^JkgsF(CRWGX8KGk# zy0cN}MCI5GcVJsQg+{8u9bp5V(f0>oM;wc3_#md^uh57*hnHhw4~3c(E}%Qkni&SF zi{AIvXc7&;LY#mO@E{uMt>^;wVi|sh_Uk$;OgsgR+$_w*`RI||7oI1gwef=|un7;g zq1WvLbb>E18!w=S##G4p-%7!b zbI}E?i97rTJ=3?a1|CNvaTe{LIVWUwV=SS5IS$3y=+V53PIwkwSn^#VqPf_UdN&-! z{LwrLhU5^|#ZR!}Mf4gb-yK4ij!s+;y~pj)BkP2n@CvNBmgseR0*%~jH~{y@R-YRd zG8z*FJeWhlv)PD#7@o&V@F14rS6B}(n-@Y}ie0IXL33vVX5e$!5?@8XCr8oulIDj6 z<)UB8F6cr>&FB8Rlle60GVFkB(4^Uip6&Z_{d25L{cG%lC($G=ToAJTD(p;sF}B0q z*dI@zx2I@fSlCQ-zDE}le?$E=4Gz2mO`cb=2Y!ZEV*~mX;S?N(PoN<`g(IbR z=>5J2-Qn|SBtAkn@*m8@YWIX(X_cVRo`$*Ti_c?2JdEz-d-N#UEDlN52m4WCPBdLu}*aF>YcXa%|ar^D)#uG~^cy=2w3pbtSQ6J<&*wM;H1y+J7t7$2ZViID%fwl;z>)xfrvUKN>^99ZkWja3;FKH?b)m!Cbt6 zPEc<}SZDznu@bbsA2z{Z*a&B1Ra}qWu3yFVU!(8sz-;D^-lE`H{2A@|1sdAZXk?OC zh6QG067_m$66T@{F2}042UGD6as5Lqr2aQ_oRoXRpB1a48!EztD;+{Xr(+ddjV950 zH2I!IL%J7B@G$nq%=Q{G$M!5aeu&ScoF?BR9i*-J@clk!h{{s zP!2%PYy_s^Vzl3C^h}>bCwd)S=-yNE_A<$*9yB7=g- z)(HD!G1_r1X5%9CY}aB>d>acfX>GVp#n_Je4QTsnwEr9EME^#Q=p1HYwFkqvb&;b= zL@g;4@Sryunp?07&O#%y9er^ZI?#SJl%JqU`vto5O6x*)H$ykn7d?{EX!0&VKR^%R z)%YBC^ZuWs;6%j_g#o&wJ1;}CeHu=}EpdC=`tZf9kNLE>z?wJ!J?pV(Zrp(`d==*5 zh{#P>WC$A4k!TW*LnpoqP1;qMfzMzId>M_@ z$7l{5!H9`l_YWRzanzHFP?q z)niEzoEBZEuG2<2I+apg9lEI*)M)4X%f07})B4xzByWad~fp!}}VzUp4oB z*5Oyj29DDfyEaqp|G#>5beu%0_hDBoLG^n9o8wVi{|G(QuVNz%h;*EXFa+~)I;P`E zOv69W$8lUIxs&5$(U6XQxDXrSlh_JZU>AH51Mn0E;injgm#_t1NA>fHGVL*_em!kH z2YsmLp~e|quj@FID5zsGHpOz(0@k4qR-hJAiQ4f#RKK@T1J$A;Qip8b`2(9^yUwP6 z9JZm}8^f^xlW;!zGrzN&f(EWah3*t;L7$*@R)=wT13O>@+tfsTP)9NeTjB<6jjy0D zp2T2$5B=~0Y9p7?8*ifLNG*YOif#vl$@ zIg*V^ntW`JV^NVP!wB4hTEHPxW15Kv;AXol#kwg3WOdYQf{N8O}iE)?y6CEvWH#p%!==gP7m>nu3z+ zSJaB{qF(SJF_bK!s2#M$P)xzzI2c>tYGiHB-%tywMJ?bv)J|`q7UtW-+@cWFe2M6) zV=oFiv!SSDdI-r!ryN;}vj-KSOV}CzvUcW@>sk)6&P46-X&i>Tu_fNdAsCcu7Bmhu z&&*WfA4*{p4Vv&Z%)tv7g%SLuXodYyI~a#r@O0$rJ7uU`cm;J-`%pVOh#Kz%Dw02; za_UcPf&tuF%^Q|Z{B>Qr)1VdQq9&M!E$}JSnQy}pScB@K3d-Ev(X|pci+eCO(J{;AzxOf-_Bf8&o8^VJFN%o%IZ4Q%*Vh;bGK! z$59i#k8SV^>%TFCdNV!>+PE7SOZFb>i|Bu!*+Dndd%aN$ z9EFKkf_-o&>WHqOHh2xS@OwyPTql@R)|rH(9z>(EJ`)wnz8Hi3Q9GG~8fYzQr`wUS zoL7;}IX_@qjLb3%>w`LiF{m@2gi6Xqn5O%`fr75d`>2U8V0ZiqH9=4xbH=Sv-vtk9 zr`f2aEI_?K6SL~eNGPX*O_jop+6o&?Zk^p zD)vHeoQGP#LR79SMJ4S9>kj*TKX#)1C@RapLLJc!R1W-wTB!d3^E_;TYm%ue4GMK{ zRB{bNy-;X7&P3&ciyCk>`eG&OJF(qbZJ(d9o^&)rEuS$hB# zvJX)!y@XoG52zjg7wbbe$n+0G^-n?#+#hu`Lu`F4YT_c)`^DG@%TWE6V}S1eM%(Zr z`tx89HpD~7*VZ|T%8B1m3yU9Y2I`5*jV#m#`k@a_Kus_iwZl^DQq%@Eq87ZfzRvmY zrl1wppk90zW3d*M&G%3tPRKQX!WoR3uoyMqD%5?iL=AihwUIYaADq*uoT@`b^cQT5 z-a|Md=68ZAC^S7#A?=O&z~otHpaxiqioj-De*yL0UerW2s0DpupVy&>`Y))7gNK^& zqflSKbaXY*FbcYcQ&IJ0sI1+Fn)o2r?*uhaoo&B?8pwN?*-N=x*(a$<*(& z^|=^C{qbR(zs_tW4FR|gwZrFZeFtiwJ=hehP#>JPF$%v$>>Yp&g;c$av^TG`EuoBBK7&G1?)l%^f5NWv)1oW z3%+Ib%QFjTg=&vR&6nm<(2l30LNeEOSc2O522}D@qLQo%byS~XAYMlu)g4s-<|E8F zt*z0RM0+Ym;|x^4O{kxe?(-CyP^iH!cnU}2PpAp9sc3=2P&qIP)xQ|Ea%iAIGo5jA0|ZO=kYG!T^|1=t*?peB4AV{j?z zz1LCW97IL#7%E53p(5}FcE$$z8i(_bp`ac0!WK9P_2GHgwr{oWLWS-S2ICv3fj>qK z{29LO#ozx?XZz-8`?q3LsN0M&XP<_u55)TWKZSy_bTv-GEm(+uU@DF);M;(kQT;x^ zad;lJpyaV;=NYJ^%*HgFhDx@b7>Wll9M52D{03chyk{TuWK>Ns92N5MsG})C4fMEe zUxfu%9ow?TpGjU^7l18F(A_2A2`%yi<2epErr7jk=vE zXeT{UN6;5_J@T#PsE#k&`e9T=>QDpT!ZK_**+i@YHNjTYQ60s$_zo&kmvI2z#7@lb z^qOM6V1=l&T7>*uakik&>N`{thCgDGGZGW2cSkL(5R>syRC4XYFswlx!KbL}U56v^ z8Y(hbQ*~Qht_cN&Xgw+d`!OC*p_1w*>c0C;Gxac3&cvbG`=UOvd6(GPpu z_Wrh>i#ocINa&qnbQ@9FL_q_-fB|?M)!}{2!JknBr_40%nW!C3L`BNQNZgD5SZkkO zL|wbPsEvfoGJo#xgxX-v2$o<&`wL)aBRMJ3Ta)DeZxHj(O%8n_qg zb__v9VlryH8K_)Xiv4gK>ix^8Nd9{^@mFZO6r1G9uns~cR{?4vvrs!*Y3miJ5WkK( z^Mlr3urKx460?z6s4whV>nZF^{ZDI@JICDbTx4_30@OA62Kib#w=ft-&Ncm}pmz2Q zYNB13iC0mPiYhgc%EM;VOHl7Wi9K*5>WI%^V|33_P)IJ}eRva_W74B$$2q8hhN13z zAu5SnjK{60_s^h0U57fV|KNBGnP>XVMNPZ|6}dgwgkhX&3Ocj5Y=`&E1E&@{(ta6r z-5T=Q(*&)tDJG$gCL0TJJZeWLumygI>VFv(@;exUo(1Mhn}Wf*|4S%nzzXY5RL29T z1)Q?&KcbTJHYy@vkC{lsqWbqkW%X!G#d-K3zK%MYd#Iy`ecUW86WcMrGm=6Umf~ov zLPezULesGs*1w3lhM7p{oNUy@52CK|WK@#Q#-8{X)?Z81!fH_){TT=1pQyioIs+D& zv)zDE)c2w$_#E|JxPqP-p8^Zt9`ffO-Vpj~%cbPQf0y4Abx^cEcMu z06kBb+cWJ6;;)sxMuR5)Co0qzPy=5@CC_#2jUn_Of_a#TJ1`GxQ6Z07V*b@@9O?+G zFb0pHHh2X!pYM}qBXKT;_B8ZCCCfxizyqikuV7mYTxxa_gF1>LOvOdmAFHqr-a&87 zSZ0nU3w0!eQIVT~O5R6N8+KPv&_wHPha;#6e2hB7uP_L&pnyBGg^Im(@_(`a7(@~Kef$CqlmiX&T7t^35+Jw4(ucOYa z4mF^&&g{4?>ctf6Fxx%@)o&?kob9$=gOSwF+V)%4;PqzS7?*<1qz^X6f#`!HQK2h9 zMP?mpr7-tF}ae7ji|d>6g1&LRH%lcCVB{! zY*TRnmZAE+gH7>$)B?Z2EDYRWk}4OwQZK`9xZAd$NA>rqF!Q7#N9#IS6oPn=hZ?vL zbyjmR3fG__a{$xvO;ki~q2BY_XwEtq70F0c^2VWdJ_tQH8?~YJs3Um^19ksTQ&1M4 zMSX~_;t>23Gck9QnQ#?)sBc6qv>NpZeg`MxUE4l!v-xt)K@aWa*c`W`a_s;rN6w)6 z_dg2lY4{bjv*2gV7cd;PgH+Ux3NQp0q9U@+x)pUa|3Dq#9#k?`p(g$WbzQ&4K)i!p z(02>*SIFWiC>eTUG-jbbDAQ19I16L&dDKAfqC$TWL-86a2O3nGq|C+^)JLE;G|je` zq87Rgl_O7AI@N7D&gc|SINOsuy{NRXbYZpIe|li`*Lelr0V&-Q(>zHD83~EiIiq@c yHB66BtX@9)NNlsg#nY#iEGRDY%qcCIT3R@Jes$)uK~23&78K5_UcB*J@BaaX*;A?j diff --git a/cps/translations/cs/LC_MESSAGES/messages.po b/cps/translations/cs/LC_MESSAGES/messages.po index 9066dd54..c352614a 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: 2022-04-18 20:01+0200\n" +"POT-Creation-Date: 2022-05-01 13:22+0200\n" "PO-Revision-Date: 2020-06-09 21:11+0100\n" "Last-Translator: Lukas Heroudek \n" "Language: cs_CZ\n" @@ -15,596 +15,621 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.9.1\n" +"Generated-By: Babel 2.8.0\n" -#: cps/about.py:86 +#: cps/about.py:84 msgid "Statistics" msgstr "Statistika" -#: cps/admin.py:141 +#: cps/admin.py:146 msgid "Server restarted, please reload page" msgstr "Server restartován, znovu načtěte stránku" -#: cps/admin.py:143 +#: cps/admin.py:148 msgid "Performing shutdown of server, please close window" msgstr "Vypínám server, zavřete okno" -#: cps/admin.py:151 +#: cps/admin.py:156 msgid "Reconnect successful" msgstr "Úspěšně obnovené připojení" -#: cps/admin.py:154 +#: cps/admin.py:159 msgid "Unknown command" msgstr "Neznámý příkaz" -#: cps/admin.py:176 cps/editbooks.py:713 cps/editbooks.py:892 -#: cps/editbooks.py:894 cps/editbooks.py:930 cps/editbooks.py:947 -#: cps/updater.py:608 cps/uploader.py:93 cps/uploader.py:103 +#: cps/admin.py:192 cps/editbooks.py:571 cps/editbooks.py:573 +#: cps/editbooks.py:609 cps/editbooks.py:626 cps/editbooks.py:1233 +#: cps/updater.py:613 cps/uploader.py:87 cps/uploader.py:97 msgid "Unknown" msgstr "Neznámý" -#: cps/admin.py:197 +#: cps/admin.py:217 msgid "Admin page" msgstr "Stránka správce" -#: cps/admin.py:217 +#: cps/admin.py:237 msgid "Basic Configuration" msgstr "Základní konfigurace" -#: cps/admin.py:255 +#: cps/admin.py:275 msgid "UI Configuration" msgstr "Konfigurace uživatelského rozhraní" -#: cps/admin.py:289 cps/templates/admin.html:51 +#: cps/admin.py:309 cps/templates/admin.html:51 #, fuzzy msgid "Edit Users" msgstr "Uživatel admin" -#: cps/admin.py:333 cps/opds.py:529 cps/templates/grid.html:13 +#: cps/admin.py:353 cps/opds.py:532 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "Vše" -#: cps/admin.py:360 cps/admin.py:1648 +#: cps/admin.py:380 cps/admin.py:1365 msgid "User not found" msgstr "Uživatel nenalezen" -#: cps/admin.py:374 +#: cps/admin.py:394 msgid "{} users deleted successfully" msgstr "" -#: cps/admin.py:397 cps/templates/config_view_edit.html:133 +#: cps/admin.py:417 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:418 cps/admin.py:424 +#: cps/admin.py:438 cps/admin.py:444 msgid "Malformed request" msgstr "" -#: cps/admin.py:436 cps/admin.py:1526 +#: cps/admin.py:456 cps/admin.py:1962 msgid "Guest Name can't be changed" msgstr "" -#: cps/admin.py:448 +#: cps/admin.py:468 msgid "Guest can't have this role" msgstr "" -#: cps/admin.py:460 cps/admin.py:1484 +#: cps/admin.py:480 cps/admin.py:1920 msgid "No admin user remaining, can't remove admin role" msgstr "Nezbývá žádný správce, nelze odebrat roli správce" -#: cps/admin.py:464 cps/admin.py:478 +#: cps/admin.py:484 cps/admin.py:498 msgid "Value has to be true or false" msgstr "" -#: cps/admin.py:466 +#: cps/admin.py:486 msgid "Invalid role" msgstr "" -#: cps/admin.py:470 +#: cps/admin.py:490 msgid "Guest can't have this view" msgstr "" -#: cps/admin.py:480 +#: cps/admin.py:500 msgid "Invalid view" msgstr "" -#: cps/admin.py:483 +#: cps/admin.py:503 msgid "Guest's Locale is determined automatically and can't be set" msgstr "" -#: cps/admin.py:487 +#: cps/admin.py:507 msgid "No Valid Locale Given" msgstr "" -#: cps/admin.py:498 +#: cps/admin.py:518 msgid "No Valid Book Language Given" msgstr "" -#: cps/admin.py:500 cps/editbooks.py:1267 +#: cps/admin.py:520 cps/editbooks.py:438 msgid "Parameter not found" msgstr "" -#: cps/admin.py:553 +#: cps/admin.py:557 msgid "Invalid Read Column" msgstr "" -#: cps/admin.py:559 +#: cps/admin.py:563 msgid "Invalid Restricted Column" msgstr "" -#: cps/admin.py:579 cps/admin.py:1355 +#: cps/admin.py:583 cps/admin.py:1791 msgid "Calibre-Web configuration updated" msgstr "Konfigurace Calibre-Web aktualizována" -#: cps/admin.py:591 +#: cps/admin.py:595 msgid "Do you really want to delete the Kobo Token?" msgstr "Opravdu chcete odstranit Kobo token?" -#: cps/admin.py:593 +#: cps/admin.py:597 msgid "Do you really want to delete this domain?" msgstr "" -#: cps/admin.py:595 +#: cps/admin.py:599 msgid "Do you really want to delete this user?" msgstr "" -#: cps/admin.py:597 +#: cps/admin.py:601 msgid "Are you sure you want to delete this shelf?" msgstr "Jste si jisti, že chcete odstranit tuto polici?" -#: cps/admin.py:599 +#: cps/admin.py:603 #, 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:601 +#: cps/admin.py:605 msgid "Are you sure you want to change visible book languages for selected user(s)?" msgstr "" -#: cps/admin.py:603 +#: cps/admin.py:607 msgid "Are you sure you want to change the selected role for the selected user(s)?" msgstr "" -#: cps/admin.py:605 +#: cps/admin.py:609 #, 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:607 +#: cps/admin.py:611 msgid "Are you sure you want to change the selected visibility restrictions for the selected user(s)?" msgstr "" -#: cps/admin.py:610 +#: cps/admin.py:614 #, 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:612 +#: cps/admin.py:616 #, fuzzy msgid "Are you sure you want to change Calibre library location?" msgstr "Opravdu chcete vypnout?" -#: cps/admin.py:614 +#: cps/admin.py:618 +msgid "Calibre-Web will search for updated Covers and update Cover Thumbnails, this may take a while?" +msgstr "" + +#: cps/admin.py:620 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:764 -msgid "Tag not found" -msgstr "" - -#: cps/admin.py:776 -msgid "Invalid Action" -msgstr "" - -#: cps/admin.py:893 cps/admin.py:899 cps/admin.py:909 cps/admin.py:919 +#: cps/admin.py:862 cps/admin.py:868 cps/admin.py:878 cps/admin.py:888 #: 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:895 cps/admin.py:901 cps/admin.py:911 cps/admin.py:921 +#: cps/admin.py:864 cps/admin.py:870 cps/admin.py:880 cps/admin.py:890 #: 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:936 +#: cps/admin.py:905 msgid "{} sync entries deleted" msgstr "" -#: cps/admin.py:1059 +#: cps/admin.py:953 +msgid "Tag not found" +msgstr "" + +#: cps/admin.py:965 +msgid "Invalid Action" +msgstr "" + +#: cps/admin.py:1080 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "client_secrets.json není nakonfigurováno pro webové aplikace" -#: cps/admin.py:1104 +#: cps/admin.py:1125 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:1110 +#: cps/admin.py:1131 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:1140 +#: cps/admin.py:1161 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:1146 +#: cps/admin.py:1167 #, fuzzy msgid "Please Enter a LDAP Service Account and Password" msgstr "Zadejte platné uživatelské jméno pro obnovení hesla" -#: cps/admin.py:1149 +#: cps/admin.py:1170 msgid "Please Enter a LDAP Service Account" msgstr "" -#: cps/admin.py:1154 +#: cps/admin.py:1175 #, 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:1156 +#: cps/admin.py:1177 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "Filtr objektů skupiny LDAP má nesrovnatelnou závorku" -#: cps/admin.py:1160 +#: cps/admin.py:1181 #, 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:1162 +#: cps/admin.py:1183 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "Filtr uživatelských objektů LDAP má nesrovnatelnou závorku" -#: cps/admin.py:1169 +#: cps/admin.py:1190 #, python-format msgid "LDAP Member User Filter needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1171 +#: cps/admin.py:1192 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1178 +#: cps/admin.py:1199 msgid "LDAP CACertificate, Certificate or Key Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1223 cps/admin.py:1339 cps/admin.py:1437 cps/admin.py:1554 -#: cps/admin.py:1623 cps/editbooks.py:678 cps/editbooks.py:882 -#: cps/editbooks.py:1130 cps/shelf.py:100 cps/shelf.py:160 cps/shelf.py:203 -#: cps/shelf.py:278 cps/shelf.py:343 cps/shelf.py:380 cps/shelf.py:456 -#: cps/web.py:1742 +#: cps/admin.py:1230 cps/admin.py:1852 +msgid "Add new user" +msgstr "Přidat nového uživatele" + +#: cps/admin.py:1239 cps/templates/admin.html:100 +msgid "Edit E-mail Server Settings" +msgstr "Změnit SMTP nastavení" + +#: cps/admin.py:1258 +msgid "Gmail Account Verification Successful" +msgstr "" + +#: cps/admin.py:1277 cps/admin.py:1658 cps/admin.py:1775 cps/admin.py:1873 +#: cps/admin.py:1990 cps/editbooks.py:227 cps/editbooks.py:301 +#: cps/editbooks.py:1196 cps/shelf.py:82 cps/shelf.py:142 cps/shelf.py:185 +#: cps/shelf.py:235 cps/shelf.py:272 cps/shelf.py:343 cps/shelf.py:457 +#: cps/tasks/convert.py:136 cps/web.py:1413 #, python-format msgid "Database error: %(error)s." msgstr "Chyba databáze: %(error)s." -#: cps/admin.py:1235 -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:1253 -msgid "DB is not Writeable" -msgstr "Databáze není zapisovatelná" - -#: cps/admin.py:1266 -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:1270 -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:1378 -#, fuzzy -msgid "Database Settings updated" -msgstr "Nastavení e-mailového serveru aktualizováno" - -#: cps/admin.py:1386 -#, fuzzy -msgid "Database Configuration" -msgstr "Konfigurace funkcí" - -#: cps/admin.py:1402 cps/web.py:1557 -msgid "Please fill out all fields!" -msgstr "Vyplňte všechna pole!" - -#: cps/admin.py:1410 -msgid "E-mail is not from valid domain" -msgstr "E-mail není z platné domény" - -#: cps/admin.py:1416 cps/admin.py:1576 -msgid "Add new user" -msgstr "Přidat nového uživatele" - -#: cps/admin.py:1427 -#, python-format -msgid "User '%(user)s' created" -msgstr "Uživatel '%(user)s' vytvořen" - -#: cps/admin.py:1433 -#, fuzzy -msgid "Found an existing account for this e-mail address or name." -msgstr "Byl nalezen existující účet pro tuto e-mailovou adresu nebo přezdívku." - -#: cps/admin.py:1463 -#, python-format -msgid "User '%(nick)s' deleted" -msgstr "Uživatel '%(nick)s' smazán" - -#: cps/admin.py:1465 cps/admin.py:1466 -msgid "Can't delete Guest User" -msgstr "" - -#: cps/admin.py:1469 -msgid "No admin user remaining, can't delete user" -msgstr "Nezbývá žádný správce, nemůžete jej odstranit" - -#: cps/admin.py:1542 cps/admin.py:1667 -#, python-format -msgid "Edit User %(nick)s" -msgstr "Upravit uživatele %(nick)s" - -#: cps/admin.py:1546 -#, python-format -msgid "User '%(nick)s' updated" -msgstr "Uživatel '%(nick)s' aktualizován" - -#: cps/admin.py:1550 cps/admin.py:1682 cps/web.py:1582 cps/web.py:1642 -msgid "An unknown error occurred. Please try again later." -msgstr "Neznámá chyba. Opakujte prosím později." - -#: cps/admin.py:1585 cps/templates/admin.html:100 -msgid "Edit E-mail Server Settings" -msgstr "Změnit SMTP nastavení" - -#: cps/admin.py:1604 -msgid "Gmail Account Verification Successful" -msgstr "" - -#: cps/admin.py:1630 +#: cps/admin.py:1284 #, python-format msgid "Test e-mail queued for sending to %(email)s, please check Tasks for result" msgstr "" -#: cps/admin.py:1633 +#: cps/admin.py:1287 #, 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:1635 +#: cps/admin.py:1289 msgid "Please configure your e-mail address first..." msgstr "Prvně nastavte svou e-mailovou adresu..." -#: cps/admin.py:1637 +#: cps/admin.py:1291 msgid "E-mail server settings updated" msgstr "Nastavení e-mailového serveru aktualizováno" -#: cps/admin.py:1679 +#: cps/admin.py:1314 cps/templates/admin.html:191 +msgid "Edit Scheduled Tasks Settings" +msgstr "" + +#: cps/admin.py:1326 +msgid "Invalid start time for task specified" +msgstr "" + +#: cps/admin.py:1331 +msgid "Invalid duration for task specified" +msgstr "" + +#: cps/admin.py:1340 +msgid "Scheduled tasks settings updated" +msgstr "" + +#: cps/admin.py:1350 cps/admin.py:1399 cps/admin.py:1986 cps/web.py:1254 +#: cps/web.py:1315 +msgid "An unknown error occurred. Please try again later." +msgstr "Neznámá chyba. Opakujte prosím později." + +#: cps/admin.py:1354 +msgid "Settings DB is not Writeable" +msgstr "" + +#: cps/admin.py:1384 cps/admin.py:1978 +#, python-format +msgid "Edit User %(nick)s" +msgstr "Upravit uživatele %(nick)s" + +#: cps/admin.py:1396 #, python-format msgid "Password for user %(user)s reset" msgstr "Heslo pro uživatele %(user)s resetováno" -#: cps/admin.py:1685 cps/web.py:1522 +#: cps/admin.py:1402 cps/web.py:1194 msgid "Please configure the SMTP mail settings first..." msgstr "Nejprve nakonfigurujte nastavení pošty SMTP..." -#: cps/admin.py:1696 +#: cps/admin.py:1413 msgid "Logfile viewer" msgstr "Prohlížeč log souborů" -#: cps/admin.py:1762 +#: cps/admin.py:1479 msgid "Requesting update package" msgstr "Požadování balíčku aktualizace" -#: cps/admin.py:1763 +#: cps/admin.py:1480 msgid "Downloading update package" msgstr "Stahování balíčku aktualizace" -#: cps/admin.py:1764 +#: cps/admin.py:1481 msgid "Unzipping update package" msgstr "Rozbalování balíčku aktualizace" -#: cps/admin.py:1765 +#: cps/admin.py:1482 msgid "Replacing files" msgstr "Nahrazování souborů" -#: cps/admin.py:1766 +#: cps/admin.py:1483 msgid "Database connections are closed" msgstr "Databázová připojení jsou uzavřena" -#: cps/admin.py:1767 +#: cps/admin.py:1484 msgid "Stopping server" msgstr "Zastavuji server" -#: cps/admin.py:1768 +#: cps/admin.py:1485 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:1769 cps/admin.py:1770 cps/admin.py:1771 cps/admin.py:1772 -#: cps/admin.py:1773 cps/admin.py:1774 +#: cps/admin.py:1486 cps/admin.py:1487 cps/admin.py:1488 cps/admin.py:1489 +#: cps/admin.py:1490 cps/admin.py:1491 msgid "Update failed:" msgstr "Aktualizace selhala:" -#: cps/admin.py:1769 cps/updater.py:384 cps/updater.py:619 cps/updater.py:621 +#: cps/admin.py:1486 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 msgid "HTTP Error" msgstr "HTTP chyba" -#: cps/admin.py:1770 cps/updater.py:386 cps/updater.py:623 +#: cps/admin.py:1487 cps/updater.py:391 cps/updater.py:628 msgid "Connection error" msgstr "Chyba připojení" -#: cps/admin.py:1771 cps/updater.py:388 cps/updater.py:625 +#: cps/admin.py:1488 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:1772 cps/updater.py:390 cps/updater.py:627 +#: cps/admin.py:1489 cps/updater.py:395 cps/updater.py:632 msgid "General error" msgstr "Všeobecná chyba" -#: cps/admin.py:1773 +#: cps/admin.py:1490 #, 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:1774 +#: cps/admin.py:1491 msgid "Files could not be replaced during update" msgstr "" -#: cps/admin.py:1798 +#: cps/admin.py:1515 #, 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:1843 +#: cps/admin.py:1560 msgid "Failed to Create at Least One LDAP User" msgstr "Nepodařilo se vytvořit nejméně jednoho uživatele LDAP" -#: cps/admin.py:1856 +#: cps/admin.py:1573 #, python-format msgid "Error: %(ldaperror)s" msgstr "Chyba: %(ldaperror)s" -#: cps/admin.py:1860 +#: cps/admin.py:1577 msgid "Error: No user returned in response of LDAP server" msgstr "Chyba: Žádná reakce od uživatele LDAP serveru" -#: cps/admin.py:1893 +#: cps/admin.py:1610 msgid "At Least One LDAP User Not Found in Database" msgstr "Nejméně jeden uživatel LDAP nenalezen v databázi" -#: cps/admin.py:1895 +#: cps/admin.py:1612 msgid "{} User Successfully Imported" msgstr "" -#: cps/converter.py:30 +#: cps/admin.py:1670 +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:1689 +msgid "DB is not Writeable" +msgstr "Databáze není zapisovatelná" + +#: cps/admin.py:1702 +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:1706 +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:1814 +#, fuzzy +msgid "Database Settings updated" +msgstr "Nastavení e-mailového serveru aktualizováno" + +#: cps/admin.py:1822 +#, fuzzy +msgid "Database Configuration" +msgstr "Konfigurace funkcí" + +#: cps/admin.py:1838 cps/web.py:1229 +msgid "Please fill out all fields!" +msgstr "Vyplňte všechna pole!" + +#: cps/admin.py:1846 +msgid "E-mail is not from valid domain" +msgstr "E-mail není z platné domény" + +#: cps/admin.py:1863 +#, python-format +msgid "User '%(user)s' created" +msgstr "Uživatel '%(user)s' vytvořen" + +#: cps/admin.py:1869 +#, fuzzy +msgid "Found an existing account for this e-mail address or name." +msgstr "Byl nalezen existující účet pro tuto e-mailovou adresu nebo přezdívku." + +#: cps/admin.py:1899 +#, python-format +msgid "User '%(nick)s' deleted" +msgstr "Uživatel '%(nick)s' smazán" + +#: cps/admin.py:1901 cps/admin.py:1902 +msgid "Can't delete Guest User" +msgstr "" + +#: cps/admin.py:1905 +msgid "No admin user remaining, can't delete user" +msgstr "Nezbývá žádný správce, nemůžete jej odstranit" + +#: cps/admin.py:1982 +#, python-format +msgid "User '%(nick)s' updated" +msgstr "Uživatel '%(nick)s' aktualizován" + +#: cps/converter.py:31 msgid "not installed" msgstr "není nainstalováno" -#: cps/converter.py:31 +#: cps/converter.py:32 msgid "Execution permissions missing" msgstr "Chybí povolení k exekuci" -#: cps/db.py:674 cps/web.py:710 cps/web.py:1222 +#: cps/db.py:681 cps/search.py:134 cps/web.py:720 #, python-format msgid "Custom Column No.%(column)d is not existing in calibre database" msgstr "Vlastní sloupec %(column)d neexistuje v databázi" -#: cps/db.py:917 cps/templates/config_edit.html:204 +#: cps/db.py:924 cps/templates/config_edit.html:204 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 -#: cps/web.py:551 cps/web.py:585 cps/web.py:646 cps/web.py:671 cps/web.py:1003 -#: cps/web.py:1032 cps/web.py:1066 cps/web.py:1093 cps/web.py:1132 +#: cps/web.py:549 cps/web.py:583 cps/web.py:656 cps/web.py:681 cps/web.py:962 +#: cps/web.py:992 cps/web.py:1027 cps/web.py:1055 cps/web.py:1094 msgid "None" msgstr "Žádné" -#: cps/editbooks.py:295 cps/editbooks.py:297 -msgid "Book Format Successfully Deleted" -msgstr "Formát knihy úspěšně smazán" - -#: cps/editbooks.py:304 cps/editbooks.py:306 -msgid "Book Successfully Deleted" -msgstr "Kniha úspěšně smazána" - -#: cps/editbooks.py:358 -msgid "You are missing permissions to delete books" -msgstr "" - -#: cps/editbooks.py:373 cps/editbooks.py:765 cps/web.py:518 cps/web.py:1783 -#: cps/web.py:1825 cps/web.py:1870 +#: cps/editbooks.py:109 cps/editbooks.py:890 cps/web.py:516 cps/web.py:1454 +#: cps/web.py:1496 cps/web.py:1541 msgid "Oops! Selected book title 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:408 -msgid "edit metadata" -msgstr "upravit metadata" - -#: cps/editbooks.py:457 -#, python-format -msgid "%(seriesindex)s is not a valid number, skipping" -msgstr "" - -#: cps/editbooks.py:493 cps/editbooks.py:1001 -#, fuzzy, python-format -msgid "'%(langname)s' is not a valid language" -msgstr "%(langname)s není platným jazykem" - -#: cps/editbooks.py:634 -msgid "User has no rights to upload additional file formats" -msgstr "" - -#: cps/editbooks.py:639 cps/editbooks.py:1029 -#, 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:643 cps/editbooks.py:1033 -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:655 -#, 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:660 -#, python-format -msgid "Failed to store file %(file)s." -msgstr "Uložení souboru %(file)s se nezdařilo." - -#: cps/editbooks.py:683 -#, python-format -msgid "File format %(ext)s added to %(book)s" -msgstr "Formát souboru %(ext)s přidán do %(book)s" - -#: cps/editbooks.py:697 cps/editbooks.py:809 +#: cps/editbooks.py:153 cps/editbooks.py:1216 msgid "User has no rights to upload cover" msgstr "" -#: cps/editbooks.py:828 +#: cps/editbooks.py:173 cps/editbooks.py:711 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "" -#: cps/editbooks.py:869 +#: cps/editbooks.py:214 msgid "Metadata successfully updated" msgstr "Metadata úspěšně aktualizována" -#: cps/editbooks.py:887 +#: cps/editbooks.py:232 msgid "Error editing book: {}" msgstr "" -#: cps/editbooks.py:951 -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:1041 -#, 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:1061 -#, 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:1117 +#: cps/editbooks.py:287 #, python-format msgid "File %(file)s uploaded" msgstr "Soubor %(file)s nahrán" -#: cps/editbooks.py:1143 +#: cps/editbooks.py:314 msgid "Source or destination format for conversion missing" msgstr "Chybí zdrojový nebo cílový formát pro převod" -#: cps/editbooks.py:1151 +#: cps/editbooks.py:322 #, 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:1155 +#: cps/editbooks.py:326 #, 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:630 +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:685 cps/editbooks.py:1010 +#, fuzzy, python-format +msgid "'%(langname)s' is not a valid language" +msgstr "%(langname)s není platným jazykem" + +#: cps/editbooks.py:723 cps/editbooks.py:1157 +#, 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:727 cps/editbooks.py:1161 +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:735 +#, 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:755 +#, 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:812 cps/editbooks.py:814 +msgid "Book Format Successfully Deleted" +msgstr "Formát knihy úspěšně smazán" + +#: cps/editbooks.py:821 cps/editbooks.py:823 +msgid "Book Successfully Deleted" +msgstr "Kniha úspěšně smazána" + +#: cps/editbooks.py:875 +msgid "You are missing permissions to delete books" +msgstr "" + +#: cps/editbooks.py:925 +msgid "edit metadata" +msgstr "upravit metadata" + +#: cps/editbooks.py:974 +#, python-format +msgid "%(seriesindex)s is not a valid number, skipping" +msgstr "" + +#: cps/editbooks.py:1152 +msgid "User has no rights to upload additional file formats" +msgstr "" + +#: cps/editbooks.py:1173 +#, 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:1178 +#, python-format +msgid "Failed to store file %(file)s." +msgstr "Uložení souboru %(file)s se nezdařilo." + +#: cps/editbooks.py:1201 +#, python-format +msgid "File format %(ext)s added to %(book)s" +msgstr "Formát souboru %(ext)s přidán do %(book)s" + #: cps/gdrive.py:58 msgid "Google Drive setup not completed, try to deactivate and activate Google Drive again" msgstr "Google Drive nastavení nebylo dokončeno, zkuste znovu deaktivovat a aktivovat Google Drive" @@ -613,27 +638,27 @@ 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:81 +#: cps/helper.py:80 #, 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:87 cps/tasks/convert.py:75 +#: cps/helper.py:86 cps/tasks/convert.py:75 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "%(format)s nenalezen na Google Drive: %(fn)s" -#: cps/helper.py:92 +#: cps/helper.py:91 #, python-format msgid "%(format)s not found: %(fn)s" msgstr "%(format)s nenalezen: %(fn)s" -#: cps/helper.py:97 cps/helper.py:221 cps/templates/detail.html:41 -#: cps/templates/detail.html:45 +#: cps/helper.py:96 cps/helper.py:221 cps/templates/detail.html:42 +#: cps/templates/detail.html:46 msgid "Send to Kindle" msgstr "Poslat do Kindle" -#: cps/helper.py:98 cps/helper.py:115 cps/helper.py:223 +#: cps/helper.py:97 cps/helper.py:115 cps/helper.py:223 msgid "This e-mail has been sent via Calibre-Web." msgstr "Tento e-mail byl odeslán přes Calibre-Web." @@ -673,132 +698,112 @@ msgstr "Poslat do Kindle" 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:353 +#: cps/helper.py:341 msgid "Read status could not set: {}" msgstr "" -#: cps/helper.py:376 +#: cps/helper.py:364 #, python-format msgid "Deleting bookfolder for book %(id)s failed, path has subfolders: %(path)s" msgstr "" -#: cps/helper.py:382 +#: cps/helper.py:370 #, python-format msgid "Deleting book %(id)s failed: %(message)s" msgstr "Mazání knihy selhalo %(id)s failed: %(message)s" -#: cps/helper.py:393 +#: cps/helper.py:381 #, 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:458 +#: cps/helper.py:446 #, 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:529 cps/helper.py:538 +#: cps/helper.py:518 cps/helper.py:527 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "Soubor %(file)s nenalezen na Google Drive" -#: cps/helper.py:572 +#: cps/helper.py:561 #, 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:592 +#: cps/helper.py:581 msgid "Error in rename file in path: {}" msgstr "" -#: cps/helper.py:610 +#: cps/helper.py:599 #, 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:651 cps/web.py:1737 +#: cps/helper.py:640 cps/web.py:1408 #, fuzzy msgid "Found an existing account for this e-mail address" msgstr "Byl nalezen existující účet pro tuto e-mailovou adresu." -#: cps/helper.py:659 +#: cps/helper.py:648 msgid "This username is already taken" msgstr "Zadané uživatelské jméno je již použito" -#: cps/helper.py:669 +#: cps/helper.py:658 msgid "Invalid e-mail address format" msgstr "" -#: cps/helper.py:754 -msgid "Python modul 'advocate' is not installed but is needed for cover downloads" +#: cps/helper.py:808 +msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "" -#: cps/helper.py:767 +#: cps/helper.py:818 msgid "Error Downloading Cover" msgstr "Chyba stahování obalu" -#: cps/helper.py:770 +#: cps/helper.py:821 msgid "Cover Format Error" msgstr "Chyba formátu obalu" -#: cps/helper.py:773 +#: cps/helper.py:824 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "" -#: cps/helper.py:783 +#: cps/helper.py:834 msgid "Failed to create path for cover" msgstr "Vytvoření cesty obalu selhalo" -#: cps/helper.py:799 +#: cps/helper.py:850 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:810 +#: cps/helper.py:861 msgid "Only jpg/jpeg/png/webp/bmp files are supported as coverfile" msgstr "" -#: cps/helper.py:822 +#: cps/helper.py:873 msgid "Invalid cover file content" msgstr "" -#: cps/helper.py:826 +#: cps/helper.py:877 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "Pouze jpg/jpeg jsou podporované soubory pro obal" -#: cps/helper.py:878 +#: cps/helper.py:929 msgid "Unrar binary file not found" msgstr "Unrar binární soubor nenalezen" -#: cps/helper.py:889 +#: cps/helper.py:940 msgid "Error excecuting UnRar" msgstr "Chyba provádění UnRar" -#: cps/helper.py:937 -msgid "Waiting" -msgstr "Čekám" - -#: cps/helper.py:939 -msgid "Failed" -msgstr "Selhalo" - -#: cps/helper.py:941 -msgid "Started" -msgstr "Spuštěno" - -#: cps/helper.py:943 -msgid "Finished" -msgstr "Dokončeno" - -#: cps/helper.py:945 -msgid "Unknown Status" -msgstr "Neznámý stav" - -#: cps/kobo_auth.py:128 +#: cps/kobo_auth.py:89 #, fuzzy msgid "Please access Calibre-Web from non localhost to get valid api_endpoint for kobo device" msgstr "Pro získání platného api_endpoint pro zařízení Kobo, přístupte na calibre-web bez localhost" -#: cps/kobo_auth.py:154 +#: cps/kobo_auth.py:115 msgid "Kobo Setup" msgstr "Kobo nastavení" @@ -807,7 +812,7 @@ msgstr "Kobo nastavení" msgid "Register with %(provider)s" msgstr "Registrovat s %(provider)s" -#: cps/oauth_bb.py:138 cps/remotelogin.py:130 cps/web.py:1613 +#: cps/oauth_bb.py:138 cps/remotelogin.py:130 cps/web.py:1286 #, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "nyní jste přihlášen jako: '%(nickname)s'" @@ -868,12 +873,12 @@ msgstr "Google Oauth chyba, prosím opakujte později." msgid "Google Oauth error: {}" msgstr "" -#: cps/opds.py:298 +#: cps/opds.py:287 msgid "{} Stars" msgstr "" -#: cps/remotelogin.py:62 cps/templates/layout.html:84 -#: cps/templates/login.html:4 cps/templates/login.html:21 cps/web.py:1662 +#: cps/remotelogin.py:62 cps/templates/layout.html:85 +#: cps/templates/login.html:4 cps/templates/login.html:21 cps/web.py:1335 msgid "Login" msgstr "Přihlásit" @@ -889,456 +894,489 @@ 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:41 cps/web.py:407 +#: cps/render_template.py:40 cps/web.py:405 msgid "Books" msgstr "Knihy" -#: cps/render_template.py:43 +#: cps/render_template.py:42 msgid "Show recent books" msgstr "Zobrazit nedávné knihy" -#: cps/render_template.py:44 cps/templates/index.xml:25 +#: cps/render_template.py:43 cps/templates/index.xml:25 msgid "Hot Books" msgstr "Žhavé knihy" -#: cps/render_template.py:46 +#: cps/render_template.py:45 msgid "Show Hot Books" msgstr "Zobrazit žhavé knihy" -#: cps/render_template.py:48 cps/render_template.py:53 +#: cps/render_template.py:47 cps/render_template.py:52 msgid "Downloaded Books" msgstr "" -#: cps/render_template.py:50 cps/render_template.py:55 +#: cps/render_template.py:49 cps/render_template.py:54 #: cps/templates/user_table.html:167 msgid "Show Downloaded Books" msgstr "" -#: cps/render_template.py:58 cps/templates/index.xml:32 cps/web.py:422 +#: cps/render_template.py:57 cps/templates/index.xml:32 cps/web.py:420 msgid "Top Rated Books" msgstr "Nejlépe hodnocené knihy" -#: cps/render_template.py:60 cps/templates/user_table.html:161 +#: cps/render_template.py:59 cps/templates/user_table.html:161 msgid "Show Top Rated Books" msgstr "Zobrazit nejlépe hodnocené knihy" -#: cps/render_template.py:61 cps/templates/index.xml:54 -#: cps/templates/index.xml:58 cps/web.py:729 +#: cps/render_template.py:60 cps/templates/index.xml:54 +#: cps/templates/index.xml:58 cps/web.py:739 msgid "Read Books" msgstr "Přečtené knihy" -#: cps/render_template.py:63 +#: cps/render_template.py:62 msgid "Show read and unread" msgstr "Zobrazit prečtené a nepřečtené" -#: cps/render_template.py:65 cps/templates/index.xml:61 -#: cps/templates/index.xml:65 cps/web.py:732 +#: cps/render_template.py:64 cps/templates/index.xml:61 +#: cps/templates/index.xml:65 cps/web.py:742 msgid "Unread Books" msgstr "Nepřečtené knihy" -#: cps/render_template.py:67 +#: cps/render_template.py:66 msgid "Show unread" msgstr "Zobrazit nepřečtené" -#: cps/render_template.py:68 +#: cps/render_template.py:67 msgid "Discover" msgstr "Objevte" -#: cps/render_template.py:70 cps/templates/index.xml:50 +#: cps/render_template.py:69 cps/templates/index.xml:50 #: cps/templates/user_table.html:162 msgid "Show Random Books" msgstr "Zobrazit náhodné knihy" -#: cps/render_template.py:71 cps/templates/book_table.html:67 -#: cps/templates/index.xml:83 cps/web.py:1135 +#: cps/render_template.py:70 cps/templates/book_table.html:67 +#: cps/templates/index.xml:83 cps/web.py:1098 msgid "Categories" msgstr "Kategorie" -#: cps/render_template.py:73 cps/templates/user_table.html:158 +#: cps/render_template.py:72 cps/templates/user_table.html:158 msgid "Show category selection" msgstr "Zobrazit výběr kategorie" -#: cps/render_template.py:74 cps/templates/book_edit.html:90 +#: cps/render_template.py:73 cps/templates/book_edit.html:91 #: cps/templates/book_table.html:68 cps/templates/index.xml:90 -#: cps/templates/search_form.html:69 cps/web.py:1034 cps/web.py:1041 +#: cps/templates/search_form.html:69 cps/web.py:995 cps/web.py:1002 msgid "Series" msgstr "Série" -#: cps/render_template.py:76 cps/templates/user_table.html:157 +#: cps/render_template.py:75 cps/templates/user_table.html:157 msgid "Show series selection" msgstr "Zobrazit výběr sérií" -#: cps/render_template.py:77 cps/templates/book_table.html:66 +#: cps/render_template.py:76 cps/templates/book_table.html:66 #: cps/templates/index.xml:69 msgid "Authors" msgstr "Autoři" -#: cps/render_template.py:79 cps/templates/user_table.html:160 +#: cps/render_template.py:78 cps/templates/user_table.html:160 msgid "Show author selection" msgstr "Zobrazit výběr autora" -#: cps/render_template.py:81 cps/templates/book_table.html:72 -#: cps/templates/index.xml:76 cps/web.py:1006 +#: cps/render_template.py:80 cps/templates/book_table.html:72 +#: cps/templates/index.xml:76 cps/web.py:966 msgid "Publishers" msgstr "Vydavatelé" -#: cps/render_template.py:83 cps/templates/user_table.html:163 +#: cps/render_template.py:82 cps/templates/user_table.html:163 msgid "Show publisher selection" msgstr "Zobrazit výběr vydavatele" -#: cps/render_template.py:84 cps/templates/book_table.html:70 +#: cps/render_template.py:83 cps/templates/book_table.html:70 #: cps/templates/index.xml:97 cps/templates/search_form.html:107 -#: cps/web.py:1108 +#: cps/web.py:1070 msgid "Languages" msgstr "Jazyky" -#: cps/render_template.py:87 cps/templates/user_table.html:155 +#: cps/render_template.py:86 cps/templates/user_table.html:155 msgid "Show language selection" msgstr "Zobrazit výběr jazyka" -#: cps/render_template.py:88 cps/templates/index.xml:104 +#: cps/render_template.py:87 cps/templates/index.xml:104 msgid "Ratings" msgstr "Hodnocení" -#: cps/render_template.py:90 cps/templates/user_table.html:164 +#: cps/render_template.py:89 cps/templates/user_table.html:164 msgid "Show ratings selection" msgstr "Zobrazit výběr hodnocení" -#: cps/render_template.py:91 cps/templates/index.xml:112 +#: cps/render_template.py:90 cps/templates/index.xml:112 msgid "File formats" msgstr "Formáty souborů" -#: cps/render_template.py:93 cps/templates/user_table.html:165 +#: cps/render_template.py:92 cps/templates/user_table.html:165 msgid "Show file formats selection" msgstr "Zobrazit výběr formátů" -#: cps/render_template.py:95 cps/web.py:755 +#: cps/render_template.py:94 cps/web.py:765 msgid "Archived Books" msgstr "Archivované knihy" -#: cps/render_template.py:97 cps/templates/user_table.html:166 +#: cps/render_template.py:96 cps/templates/user_table.html:166 msgid "Show archived books" msgstr "Zobrazit archivované knihy" -#: cps/render_template.py:100 cps/web.py:837 +#: cps/render_template.py:99 cps/web.py:796 msgid "Books List" msgstr "" -#: cps/render_template.py:102 cps/templates/user_table.html:168 +#: cps/render_template.py:101 cps/templates/user_table.html:168 msgid "Show Books List" msgstr "" -#: cps/shelf.py:67 cps/shelf.py:121 -msgid "Invalid shelf specified" -msgstr "Zadána neplatná police" - -#: cps/shelf.py:73 -#, fuzzy -msgid "Sorry you are not allowed to add a book to that shelf" -msgstr "Lituji, nejste oprávněni přidat knihu do police: %(shelfname)s" - -#: cps/shelf.py:82 -#, python-format -msgid "Book is already part of the shelf: %(shelfname)s" -msgstr "Kniha je již součástí police: %(shelfname)s" - -#: cps/shelf.py:107 -#, python-format -msgid "Book has been added to shelf: %(sname)s" -msgstr "Kniha byla přidána do police: %(sname)s" - -#: cps/shelf.py:126 -msgid "You are not allowed to add a book to the shelf" -msgstr "" - -#: cps/shelf.py:144 -#, python-format -msgid "Books are already part of the shelf: %(name)s" -msgstr "Knihy jsou již součástí police: %(name)s" - -#: cps/shelf.py:156 -#, python-format -msgid "Books have been added to shelf: %(sname)s" -msgstr "Knihy byly přidány do police: %(sname)s" - -#: cps/shelf.py:163 -#, python-format -msgid "Could not add books to shelf: %(sname)s" -msgstr "Nelze přidat knihy do police: %(sname)s" - -#: cps/shelf.py:209 -#, python-format -msgid "Book has been removed from shelf: %(sname)s" -msgstr "Kniha byla odebrána z police: %(sname)s" - -#: cps/shelf.py:218 -msgid "Sorry you are not allowed to remove a book from this shelf" -msgstr "" - -#: cps/shelf.py:228 cps/templates/layout.html:140 -msgid "Create a Shelf" -msgstr "Vytvořit polici" - -#: cps/shelf.py:236 -#, fuzzy -msgid "Sorry you are not allowed to edit this shelf" -msgstr "Lituji, nejste oprávněni odebrat knihu z této police: %(sname)s" - -#: cps/shelf.py:238 -msgid "Edit a shelf" -msgstr "Upravit polici" - -#: cps/shelf.py:248 -msgid "Sorry you are not allowed to create a public shelf" -msgstr "" - -#: cps/shelf.py:265 -#, python-format -msgid "Shelf %(title)s created" -msgstr "Police %(title)s vytvořena" - -#: cps/shelf.py:268 -#, python-format -msgid "Shelf %(title)s changed" -msgstr "Police %(title)s změněna" - -#: cps/shelf.py:282 -msgid "There was an error" -msgstr "Došlo k chybě" - -#: cps/shelf.py:304 -#, python-format -msgid "A public shelf with the name '%(title)s' already exists." -msgstr "Veřejná police s názvem '%(title)s' již existuje." - -#: cps/shelf.py:315 -#, python-format -msgid "A private shelf with the name '%(title)s' already exists." -msgstr "Osobní police s názvem ‘%(title)s’ již existuje." - -#: cps/shelf.py:337 -msgid "Error deleting Shelf" -msgstr "" - -#: cps/shelf.py:339 -#, fuzzy -msgid "Shelf successfully deleted" -msgstr "Kniha úspěšně smazána" - -#: cps/shelf.py:389 -#, python-format -msgid "Change order of Shelf: '%(name)s'" -msgstr "Změnit pořadí Police: '%(name)s'" - -#: cps/shelf.py:461 -#, python-format -msgid "Shelf: '%(name)s'" -msgstr "Police: '%(name)s'" - -#: cps/shelf.py:465 -msgid "Error opening shelf. Shelf does not exist or is not accessible" -msgstr "Chyba otevírání police. Police neexistuje nebo není přístupná" - -#: cps/updater.py:426 cps/updater.py:437 cps/updater.py:538 cps/updater.py:553 -msgid "Unexpected data while reading update information" -msgstr "Neočekávaná data při čtení informací o aktualizaci" - -#: cps/updater.py:433 cps/updater.py:545 -msgid "No update available. You already have the latest version installed" -msgstr "Aktualizace není k dispozici. Máte nainstalovanou nejnovější verzi" - -#: cps/updater.py:451 -msgid "A new update is available. Click on the button below to update to the latest version." -msgstr "Nová aktualizace k dispozici. Klepnutím na tlačítko níže aktualizujte na nejnovější verzi." - -#: cps/updater.py:469 -msgid "Could not fetch update information" -msgstr "Nelze získat informace o aktualizaci" - -#: cps/updater.py:479 -msgid "Click on the button below to update to the latest stable version." -msgstr "Klepnutím na tlačítko níže aktualizujte na nejnovější stabilní verzi." - -#: cps/updater.py:488 cps/updater.py:502 cps/updater.py:513 -#, python-format -msgid "A new update is available. Click on the button below to update to version: %(version)s" -msgstr "Nová aktualizace k dispozici. Klepnutím na tlačítko níže aktualizujte na verzi: %(version)s" - -#: cps/updater.py:531 -msgid "No release information available" -msgstr "Nejsou k dispozici žádné informace o verzi" - -#: cps/templates/index.html:5 cps/web.py:434 -msgid "Discover (Random Books)" -msgstr "Objevte (Náhodné knihy)" - -#: cps/web.py:470 -msgid "Hot Books (Most Downloaded)" -msgstr "Žhavé knihy (Nejstahovanější)" - -#: cps/web.py:501 -#, python-format -msgid "Downloaded books by %(user)s" -msgstr "" - -#: cps/web.py:534 -#, python-format -msgid "Author: %(name)s" -msgstr "Autoři: %(name)s" - -#: cps/web.py:570 -#, python-format -msgid "Publisher: %(name)s" -msgstr "Vydavatel: %(name)s" - -#: cps/web.py:598 -#, python-format -msgid "Series: %(serie)s" -msgstr "Série: %(serie)s" - -#: cps/web.py:610 -#, python-format -msgid "Rating: %(rating)s stars" -msgstr "Hodnocení: %(rating)s stars" - -#: cps/web.py:626 -#, python-format -msgid "File format: %(format)s" -msgstr "Soubor formátů: %(format)s" - -#: cps/web.py:663 -#, python-format -msgid "Category: %(name)s" -msgstr "Kategorie: %(name)s" - -#: cps/web.py:690 -#, python-format -msgid "Language: %(name)s" -msgstr "Jazyky: %(name)s" - -#: cps/templates/layout.html:56 cps/web.py:789 cps/web.py:1444 -msgid "Advanced Search" -msgstr "Rozšířené hledání" - -#: cps/templates/book_edit.html:235 cps/templates/feed.xml:33 -#: cps/templates/index.xml:11 cps/templates/layout.html:45 -#: cps/templates/layout.html:48 cps/templates/search_form.html:226 -#: cps/web.py:807 cps/web.py:1164 +#: cps/search.py:48 cps/search.py:414 cps/templates/book_edit.html:236 +#: cps/templates/feed.xml:33 cps/templates/index.xml:11 +#: cps/templates/layout.html:46 cps/templates/layout.html:49 +#: cps/templates/search_form.html:226 msgid "Search" msgstr "Hledat" -#: cps/templates/admin.html:16 cps/web.py:979 -msgid "Downloads" -msgstr "Stáhnutí" - -#: cps/web.py:1068 -msgid "Ratings list" -msgstr "Seznam hodnocení" - -#: cps/web.py:1095 -msgid "File formats list" -msgstr "Seznam formátů" - -#: cps/templates/layout.html:73 cps/templates/tasks.html:7 cps/web.py:1149 -msgid "Tasks" -msgstr "Úlohy" - -#: cps/web.py:1286 +#: cps/search.py:194 msgid "Published after " msgstr "Vydáno po " -#: cps/web.py:1293 +#: cps/search.py:201 msgid "Published before " msgstr "Vydáno před " -#: cps/web.py:1315 +#: cps/search.py:223 #, python-format msgid "Rating <= %(rating)s" msgstr "Hodnocení <= %(rating)s" -#: cps/web.py:1317 +#: cps/search.py:225 #, python-format msgid "Rating >= %(rating)s" msgstr "Hodnocení >= %(rating)s" -#: cps/web.py:1319 +#: cps/search.py:227 #, python-format msgid "Read Status = %(status)s" msgstr "" -#: cps/web.py:1425 +#: cps/search.py:345 msgid "Error on search for custom columns, please restart Calibre-Web" msgstr "" -#: cps/web.py:1527 +#: cps/search.py:364 cps/search.py:396 cps/templates/layout.html:57 +msgid "Advanced Search" +msgstr "Rozšířené hledání" + +#: cps/shelf.py:49 cps/shelf.py:103 +msgid "Invalid shelf specified" +msgstr "Zadána neplatná police" + +#: cps/shelf.py:55 +#, fuzzy +msgid "Sorry you are not allowed to add a book to that shelf" +msgstr "Lituji, nejste oprávněni přidat knihu do police: %(shelfname)s" + +#: cps/shelf.py:64 +#, python-format +msgid "Book is already part of the shelf: %(shelfname)s" +msgstr "Kniha je již součástí police: %(shelfname)s" + +#: cps/shelf.py:89 +#, python-format +msgid "Book has been added to shelf: %(sname)s" +msgstr "Kniha byla přidána do police: %(sname)s" + +#: cps/shelf.py:108 +msgid "You are not allowed to add a book to the shelf" +msgstr "" + +#: cps/shelf.py:126 +#, python-format +msgid "Books are already part of the shelf: %(name)s" +msgstr "Knihy jsou již součástí police: %(name)s" + +#: cps/shelf.py:138 +#, python-format +msgid "Books have been added to shelf: %(sname)s" +msgstr "Knihy byly přidány do police: %(sname)s" + +#: cps/shelf.py:145 +#, python-format +msgid "Could not add books to shelf: %(sname)s" +msgstr "Nelze přidat knihy do police: %(sname)s" + +#: cps/shelf.py:191 +#, python-format +msgid "Book has been removed from shelf: %(sname)s" +msgstr "Kniha byla odebrána z police: %(sname)s" + +#: cps/shelf.py:200 +msgid "Sorry you are not allowed to remove a book from this shelf" +msgstr "" + +#: cps/shelf.py:210 cps/templates/layout.html:141 +msgid "Create a Shelf" +msgstr "Vytvořit polici" + +#: cps/shelf.py:218 +#, fuzzy +msgid "Sorry you are not allowed to edit this shelf" +msgstr "Lituji, nejste oprávněni odebrat knihu z této police: %(sname)s" + +#: cps/shelf.py:220 +msgid "Edit a shelf" +msgstr "Upravit polici" + +#: cps/shelf.py:229 +msgid "Error deleting Shelf" +msgstr "" + +#: cps/shelf.py:231 +#, fuzzy +msgid "Shelf successfully deleted" +msgstr "Kniha úspěšně smazána" + +#: cps/shelf.py:281 +#, python-format +msgid "Change order of Shelf: '%(name)s'" +msgstr "Změnit pořadí Police: '%(name)s'" + +#: cps/shelf.py:313 +msgid "Sorry you are not allowed to create a public shelf" +msgstr "" + +#: cps/shelf.py:330 +#, python-format +msgid "Shelf %(title)s created" +msgstr "Police %(title)s vytvořena" + +#: cps/shelf.py:333 +#, python-format +msgid "Shelf %(title)s changed" +msgstr "Police %(title)s změněna" + +#: cps/shelf.py:347 +msgid "There was an error" +msgstr "Došlo k chybě" + +#: cps/shelf.py:369 +#, python-format +msgid "A public shelf with the name '%(title)s' already exists." +msgstr "Veřejná police s názvem '%(title)s' již existuje." + +#: cps/shelf.py:380 +#, python-format +msgid "A private shelf with the name '%(title)s' already exists." +msgstr "Osobní police s názvem ‘%(title)s’ již existuje." + +#: cps/shelf.py:462 +#, python-format +msgid "Shelf: '%(name)s'" +msgstr "Police: '%(name)s'" + +#: cps/shelf.py:466 +msgid "Error opening shelf. Shelf does not exist or is not accessible" +msgstr "Chyba otevírání police. Police neexistuje nebo není přístupná" + +#: cps/tasks_status.py:48 cps/templates/layout.html:74 +#: cps/templates/tasks.html:7 +msgid "Tasks" +msgstr "Úlohy" + +#: cps/tasks_status.py:64 +msgid "Waiting" +msgstr "Čekám" + +#: cps/tasks_status.py:66 +msgid "Failed" +msgstr "Selhalo" + +#: cps/tasks_status.py:68 +msgid "Started" +msgstr "Spuštěno" + +#: cps/tasks_status.py:70 +msgid "Finished" +msgstr "Dokončeno" + +#: cps/tasks_status.py:72 +msgid "Ended" +msgstr "" + +#: cps/tasks_status.py:74 +msgid "Cancelled" +msgstr "" + +#: cps/tasks_status.py:76 +msgid "Unknown Status" +msgstr "Neznámý stav" + +#: cps/updater.py:431 cps/updater.py:442 cps/updater.py:543 cps/updater.py:558 +msgid "Unexpected data while reading update information" +msgstr "Neočekávaná data při čtení informací o aktualizaci" + +#: cps/updater.py:438 cps/updater.py:550 +msgid "No update available. You already have the latest version installed" +msgstr "Aktualizace není k dispozici. Máte nainstalovanou nejnovější verzi" + +#: cps/updater.py:456 +msgid "A new update is available. Click on the button below to update to the latest version." +msgstr "Nová aktualizace k dispozici. Klepnutím na tlačítko níže aktualizujte na nejnovější verzi." + +#: cps/updater.py:474 +msgid "Could not fetch update information" +msgstr "Nelze získat informace o aktualizaci" + +#: cps/updater.py:484 +msgid "Click on the button below to update to the latest stable version." +msgstr "Klepnutím na tlačítko níže aktualizujte na nejnovější stabilní verzi." + +#: cps/updater.py:493 cps/updater.py:507 cps/updater.py:518 +#, python-format +msgid "A new update is available. Click on the button below to update to version: %(version)s" +msgstr "Nová aktualizace k dispozici. Klepnutím na tlačítko níže aktualizujte na verzi: %(version)s" + +#: cps/updater.py:536 +msgid "No release information available" +msgstr "Nejsou k dispozici žádné informace o verzi" + +#: cps/templates/index.html:6 cps/web.py:432 +msgid "Discover (Random Books)" +msgstr "Objevte (Náhodné knihy)" + +#: cps/web.py:468 +msgid "Hot Books (Most Downloaded)" +msgstr "Žhavé knihy (Nejstahovanější)" + +#: cps/web.py:499 +#, python-format +msgid "Downloaded books by %(user)s" +msgstr "" + +#: cps/web.py:532 +#, python-format +msgid "Author: %(name)s" +msgstr "Autoři: %(name)s" + +#: cps/web.py:568 +#, python-format +msgid "Publisher: %(name)s" +msgstr "Vydavatel: %(name)s" + +#: cps/web.py:596 +#, python-format +msgid "Series: %(serie)s" +msgstr "Série: %(serie)s" + +#: cps/web.py:609 +msgid "Rating: None" +msgstr "" + +#: cps/web.py:618 +#, python-format +msgid "Rating: %(rating)s stars" +msgstr "Hodnocení: %(rating)s stars" + +#: cps/web.py:636 +#, python-format +msgid "File format: %(format)s" +msgstr "Soubor formátů: %(format)s" + +#: cps/web.py:673 +#, python-format +msgid "Category: %(name)s" +msgstr "Kategorie: %(name)s" + +#: cps/web.py:700 +#, python-format +msgid "Language: %(name)s" +msgstr "Jazyky: %(name)s" + +#: cps/templates/admin.html:16 cps/web.py:938 +msgid "Downloads" +msgstr "Stáhnutí" + +#: cps/web.py:1030 +msgid "Ratings list" +msgstr "Seznam hodnocení" + +#: cps/web.py:1057 +msgid "File formats list" +msgstr "Seznam formátů" + +#: cps/web.py:1199 #, python-format msgid "Book successfully queued for sending to %(kindlemail)s" msgstr "Kniha byla úspěšně zařazena do fronty pro odeslání na %(kindlemail)s" -#: cps/web.py:1531 +#: cps/web.py:1203 #, python-format msgid "Oops! There was an error sending this book: %(res)s" msgstr "Při odesílání této knihy došlo k chybě: %(res)s" -#: cps/web.py:1533 +#: cps/web.py:1205 msgid "Please update your profile with a valid Send to Kindle E-mail Address." msgstr "Nejprve nakonfigurujte vaši kindle e-mailovou adresu.." -#: cps/web.py:1550 +#: cps/web.py:1222 msgid "E-Mail server is not configured, please contact your administrator!" msgstr "E-mailový server není nakonfigurován, kontaktujte svého správce!" -#: cps/templates/layout.html:85 cps/templates/register.html:17 cps/web.py:1551 -#: cps/web.py:1558 cps/web.py:1564 cps/web.py:1583 cps/web.py:1587 -#: cps/web.py:1593 +#: cps/templates/layout.html:86 cps/templates/register.html:17 cps/web.py:1223 +#: cps/web.py:1230 cps/web.py:1236 cps/web.py:1255 cps/web.py:1260 +#: cps/web.py:1266 msgid "Register" msgstr "Registrovat" -#: cps/web.py:1585 +#: cps/web.py:1257 msgid "Your e-mail is not allowed to register" msgstr "Váš e-mail nemá povolení k registraci" -#: cps/web.py:1588 +#: cps/web.py:1261 msgid "Confirmation e-mail was send to your e-mail account." msgstr "Potvrzovací e-mail byl odeslán na váš účet." -#: cps/web.py:1602 +#: cps/web.py:1275 msgid "Cannot activate LDAP authentication" msgstr "Nelze aktivovat ověření LDAP" -#: cps/web.py:1621 +#: cps/web.py:1294 #, 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:1627 +#: cps/web.py:1300 #, python-format msgid "Could not login: %(message)s" msgstr "Nelze se přihlásit: %(message)s" -#: cps/web.py:1631 cps/web.py:1656 +#: cps/web.py:1304 cps/web.py:1329 msgid "Wrong Username or Password" msgstr "Špatné uživatelské jméno nebo heslo" -#: cps/web.py:1638 +#: cps/web.py:1311 msgid "New Password was send to your email address" msgstr "Nové heslo bylo zasláno na vaši emailovou adresu" -#: cps/web.py:1644 +#: cps/web.py:1317 msgid "Please enter valid username to reset password" msgstr "Zadejte platné uživatelské jméno pro obnovení hesla" -#: cps/web.py:1651 +#: cps/web.py:1324 #, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "Nyní jste přihlášeni jako: '%(nickname)s'" -#: cps/web.py:1717 cps/web.py:1766 +#: cps/web.py:1388 cps/web.py:1437 #, python-format msgid "%(name)s's profile" msgstr "%(name)s profil" -#: cps/web.py:1733 +#: cps/web.py:1404 msgid "Profile updated" msgstr "Profil aktualizován" @@ -1346,40 +1384,75 @@ msgstr "Profil aktualizován" msgid "Found no valid gmail.json file with OAuth information" msgstr "" -#: cps/tasks/convert.py:154 +#: cps/tasks/convert.py:153 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "Calibre převaděč %(tool)s nenalezen" -#: cps/tasks/convert.py:187 +#: cps/tasks/convert.py:186 #, python-format msgid "%(format)s format not found on disk" msgstr "" -#: cps/tasks/convert.py:191 +#: cps/tasks/convert.py:190 msgid "Ebook converter failed with unknown error" msgstr "" -#: cps/tasks/convert.py:201 +#: cps/tasks/convert.py:200 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "Kepubify-převaděč selhal: %(error)s" -#: cps/tasks/convert.py:223 +#: cps/tasks/convert.py:222 #, 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:246 +#: cps/tasks/convert.py:245 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "Převaděč eknih selhal: %(error)s" -#: cps/tasks/convert.py:269 +#: cps/tasks/convert.py:268 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "" +#: cps/tasks/convert.py:273 +msgid "Convert" +msgstr "" + +#: cps/tasks/database.py:28 +msgid "Reconnecting Calibre database" +msgstr "" + +#: cps/tasks/mail.py:265 +msgid "E-mail" +msgstr "" + +#: cps/tasks/thumbnail.py:95 +#, python-format +msgid "Generated %(count)s cover thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:222 cps/tasks/thumbnail.py:435 +#: cps/tasks/thumbnail.py:503 +msgid "Cover Thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:281 +msgid "Generated {0} series thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:446 +msgid "Clearing cover thumbnail cache" +msgstr "" + +#: cps/tasks/upload.py:38 cps/templates/admin.html:20 +#: cps/templates/layout.html:67 cps/templates/user_table.html:145 +msgid "Upload" +msgstr "Nahrávat" + #: cps/templates/admin.html:9 msgid "Users" msgstr "Uživatelé" @@ -1399,7 +1472,7 @@ msgstr "E-mail" msgid "Send to Kindle E-mail Address" msgstr "Poslat do Kindle e-mailová adresa" -#: cps/templates/admin.html:17 cps/templates/layout.html:76 +#: cps/templates/admin.html:17 cps/templates/layout.html:77 #: cps/templates/user_table.html:143 msgid "Admin" msgstr "Správce" @@ -1409,13 +1482,8 @@ msgstr "Správce" msgid "Password" msgstr "Heslo" -#: cps/templates/admin.html:20 cps/templates/layout.html:66 -#: cps/templates/user_table.html:145 -msgid "Upload" -msgstr "Nahrávat" - -#: cps/templates/admin.html:22 cps/templates/detail.html:18 -#: cps/templates/detail.html:27 cps/templates/shelf.html:7 +#: cps/templates/admin.html:22 cps/templates/detail.html:19 +#: cps/templates/detail.html:28 cps/templates/shelf.html:8 #: cps/templates/user_table.html:146 msgid "Download" msgstr "Stahovat" @@ -1429,7 +1497,7 @@ msgstr "Prohlížení knih" msgid "Edit" msgstr "Upravovat" -#: cps/templates/admin.html:25 cps/templates/book_edit.html:16 +#: cps/templates/admin.html:25 cps/templates/book_edit.html:17 #: cps/templates/book_table.html:100 cps/templates/modal_dialogs.html:63 #: cps/templates/modal_dialogs.html:116 cps/templates/user_edit.html:67 #: cps/templates/user_table.html:149 @@ -1542,78 +1610,107 @@ msgstr "Upravit základní konfiguraci" msgid "Edit UI Configuration" msgstr "Upravit konfiguraci uživatelského rozhraní" -#: cps/templates/admin.html:166 +#: cps/templates/admin.html:167 +msgid "Scheduled Tasks" +msgstr "" + +#: cps/templates/admin.html:170 cps/templates/schedule_edit.html:12 +msgid "Time at which tasks start to run" +msgstr "" + +#: cps/templates/admin.html:174 cps/templates/schedule_edit.html:20 +msgid "Maximum tasks duration" +msgstr "" + +#: cps/templates/admin.html:178 +msgid "Generate book cover thumbnails" +msgstr "" + +#: cps/templates/admin.html:182 +msgid "Generate series cover thumbnails" +msgstr "" + +#: cps/templates/admin.html:186 cps/templates/schedule_edit.html:37 +msgid "Reconnect to Calibre Library" +msgstr "" + +#: cps/templates/admin.html:193 +msgid "Refresh Thumbnail Cover Cache" +msgstr "" + +#: cps/templates/admin.html:199 msgid "Administration" msgstr "Správa" -#: cps/templates/admin.html:167 +#: cps/templates/admin.html:200 msgid "Download Debug Package" msgstr "" -#: cps/templates/admin.html:168 +#: cps/templates/admin.html:201 msgid "View Logs" msgstr "Zobrazit log" -#: cps/templates/admin.html:171 +#: cps/templates/admin.html:204 msgid "Reconnect Calibre Database" msgstr "Znovupřipojení ke Calibre databázi" -#: cps/templates/admin.html:172 +#: cps/templates/admin.html:207 msgid "Restart" msgstr "Restartovat" -#: cps/templates/admin.html:173 +#: cps/templates/admin.html:208 msgid "Shutdown" msgstr "Vypnout" -#: cps/templates/admin.html:178 -msgid "Update" -msgstr "Aktualizovat" +#: cps/templates/admin.html:213 +msgid "Version Information" +msgstr "" -#: cps/templates/admin.html:182 +#: cps/templates/admin.html:217 msgid "Version" msgstr "Verze" -#: cps/templates/admin.html:183 +#: cps/templates/admin.html:218 msgid "Details" msgstr "Detaily" -#: cps/templates/admin.html:189 +#: cps/templates/admin.html:224 msgid "Current version" msgstr "Současná verze" -#: cps/templates/admin.html:196 +#: cps/templates/admin.html:231 msgid "Check for Update" msgstr "Zkontrolovat aktualizace" -#: cps/templates/admin.html:197 +#: cps/templates/admin.html:232 msgid "Perform Update" msgstr "Provést aktualizaci" -#: cps/templates/admin.html:210 +#: cps/templates/admin.html:245 msgid "Are you sure you want to restart?" msgstr "Opravdu chcete restartovat?" -#: cps/templates/admin.html:215 cps/templates/admin.html:229 -#: cps/templates/admin.html:249 cps/templates/config_db.html:70 +#: cps/templates/admin.html:250 cps/templates/admin.html:264 +#: cps/templates/admin.html:284 cps/templates/config_db.html:70 msgid "OK" msgstr "OK" -#: cps/templates/admin.html:216 cps/templates/admin.html:230 -#: cps/templates/book_edit.html:213 cps/templates/book_table.html:127 +#: cps/templates/admin.html:251 cps/templates/admin.html:265 +#: cps/templates/book_edit.html:214 cps/templates/book_table.html:127 #: cps/templates/config_db.html:54 cps/templates/config_edit.html:359 #: 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/shelf_edit.html:27 +#: cps/templates/modal_dialogs.html:135 cps/templates/schedule_edit.html:41 +#: cps/templates/shelf_edit.html:27 cps/templates/tasks.html:46 #: cps/templates/user_edit.html:144 msgid "Cancel" msgstr "Zrušit" -#: cps/templates/admin.html:228 +#: cps/templates/admin.html:263 msgid "Are you sure you want to shutdown?" msgstr "Opravdu chcete vypnout?" -#: cps/templates/admin.html:240 +#: cps/templates/admin.html:275 msgid "Updating, please do not reload this page" msgstr "Probíhá aktualizace, prosím nenačítejte stránku znovu" @@ -1625,39 +1722,39 @@ msgstr "přes" msgid "In Library" msgstr "V knihovně" -#: cps/templates/author.html:26 cps/templates/index.html:73 -#: cps/templates/search.html:30 cps/templates/shelf.html:19 +#: cps/templates/author.html:26 cps/templates/index.html:74 +#: cps/templates/search.html:31 cps/templates/shelf.html:20 msgid "Sort according to book date, newest first" msgstr "" -#: cps/templates/author.html:27 cps/templates/index.html:74 -#: cps/templates/search.html:31 cps/templates/shelf.html:20 +#: cps/templates/author.html:27 cps/templates/index.html:75 +#: cps/templates/search.html:32 cps/templates/shelf.html:21 msgid "Sort according to book date, oldest first" msgstr "" -#: cps/templates/author.html:28 cps/templates/index.html:75 -#: cps/templates/search.html:32 cps/templates/shelf.html:21 +#: cps/templates/author.html:28 cps/templates/index.html:76 +#: cps/templates/search.html:33 cps/templates/shelf.html:22 msgid "Sort title in alphabetical order" msgstr "" -#: cps/templates/author.html:29 cps/templates/index.html:76 -#: cps/templates/search.html:33 cps/templates/shelf.html:22 +#: cps/templates/author.html:29 cps/templates/index.html:77 +#: cps/templates/search.html:34 cps/templates/shelf.html:23 msgid "Sort title in reverse alphabetical order" msgstr "" -#: cps/templates/author.html:30 cps/templates/index.html:79 -#: cps/templates/search.html:36 cps/templates/shelf.html:25 +#: cps/templates/author.html:30 cps/templates/index.html:80 +#: cps/templates/search.html:37 cps/templates/shelf.html:26 msgid "Sort according to publishing date, newest first" msgstr "" -#: cps/templates/author.html:31 cps/templates/index.html:80 -#: cps/templates/search.html:37 cps/templates/shelf.html:26 +#: cps/templates/author.html:31 cps/templates/index.html:81 +#: cps/templates/search.html:38 cps/templates/shelf.html:27 msgid "Sort according to publishing date, oldest first" msgstr "" #: cps/templates/author.html:56 cps/templates/author.html:115 -#: cps/templates/index.html:29 cps/templates/index.html:112 -#: cps/templates/search.html:66 cps/templates/shelf.html:54 +#: cps/templates/index.html:30 cps/templates/index.html:113 +#: cps/templates/search.html:67 cps/templates/shelf.html:55 msgid "reduce" msgstr "redukovat" @@ -1665,165 +1762,166 @@ msgstr "redukovat" msgid "More by" msgstr "Více od" -#: cps/templates/book_edit.html:10 +#: cps/templates/book_edit.html:11 msgid "Delete Book" msgstr "Smazat knihu" -#: cps/templates/book_edit.html:13 +#: cps/templates/book_edit.html:14 msgid "Delete formats:" msgstr "Smazat formáty:" -#: cps/templates/book_edit.html:24 +#: cps/templates/book_edit.html:25 msgid "Convert book format:" msgstr "Převést formát knihy:" -#: cps/templates/book_edit.html:29 +#: cps/templates/book_edit.html:30 msgid "Convert from:" msgstr "Převést z:" -#: cps/templates/book_edit.html:31 cps/templates/book_edit.html:38 +#: cps/templates/book_edit.html:32 cps/templates/book_edit.html:39 msgid "select an option" msgstr "vyberte možnost" -#: cps/templates/book_edit.html:36 +#: cps/templates/book_edit.html:37 msgid "Convert to:" msgstr "Převést do:" -#: cps/templates/book_edit.html:45 +#: cps/templates/book_edit.html:46 msgid "Convert book" msgstr "Převést knihu" -#: cps/templates/book_edit.html:55 cps/templates/search_form.html:8 +#: cps/templates/book_edit.html:56 cps/templates/search_form.html:8 msgid "Book Title" msgstr "Název knihy" -#: cps/templates/book_edit.html:62 cps/templates/book_edit.html:270 -#: cps/templates/book_edit.html:288 cps/templates/search_form.html:12 +#: cps/templates/book_edit.html:63 cps/templates/book_edit.html:271 +#: cps/templates/book_edit.html:289 cps/templates/search_form.html:12 msgid "Author" msgstr "Autor" -#: cps/templates/book_edit.html:67 cps/templates/book_edit.html:275 -#: cps/templates/book_edit.html:290 cps/templates/search_form.html:153 +#: cps/templates/book_edit.html:68 cps/templates/book_edit.html:276 +#: cps/templates/book_edit.html:291 cps/templates/search_form.html:153 msgid "Description" msgstr "Popis" -#: cps/templates/book_edit.html:72 +#: cps/templates/book_edit.html:73 msgid "Identifiers" msgstr "Identifikátory" -#: cps/templates/book_edit.html:76 cps/templates/book_edit.html:299 +#: cps/templates/book_edit.html:77 cps/templates/book_edit.html:300 msgid "Identifier Type" msgstr "Typy identifikátorů" -#: cps/templates/book_edit.html:77 cps/templates/book_edit.html:300 +#: cps/templates/book_edit.html:78 cps/templates/book_edit.html:301 msgid "Identifier Value" msgstr "Hodnota identifikátorů" -#: cps/templates/book_edit.html:78 cps/templates/book_edit.html:301 +#: cps/templates/book_edit.html:79 cps/templates/book_edit.html:302 #: cps/templates/user_table.html:24 msgid "Remove" msgstr "Odstranit" -#: cps/templates/book_edit.html:82 +#: cps/templates/book_edit.html:83 msgid "Add Identifier" msgstr "Přidat identifikátor" -#: cps/templates/book_edit.html:86 cps/templates/search_form.html:51 +#: cps/templates/book_edit.html:87 cps/templates/search_form.html:51 msgid "Tags" msgstr "Štítky" -#: cps/templates/book_edit.html:94 +#: cps/templates/book_edit.html:95 msgid "Series ID" msgstr "ID série" -#: cps/templates/book_edit.html:98 +#: cps/templates/book_edit.html:99 msgid "Rating" msgstr "Hodnocení" -#: cps/templates/book_edit.html:103 +#: cps/templates/book_edit.html:104 msgid "Fetch Cover from URL (JPEG - Image will be downloaded and stored in database)" msgstr "Adresa URL obalu (jpg, obal je stažen a uložen v databázi, pole je potom opět prázdné)" -#: cps/templates/book_edit.html:107 +#: cps/templates/book_edit.html:108 msgid "Upload Cover from Local Disk" msgstr "Nahrát obal z místní jednotky" -#: cps/templates/book_edit.html:112 +#: cps/templates/book_edit.html:113 msgid "Published Date" msgstr "Datum vydání" -#: cps/templates/book_edit.html:121 cps/templates/book_edit.html:272 -#: cps/templates/book_edit.html:289 cps/templates/detail.html:164 +#: cps/templates/book_edit.html:122 cps/templates/book_edit.html:273 +#: cps/templates/book_edit.html:290 cps/templates/detail.html:165 #: cps/templates/search_form.html:16 msgid "Publisher" msgstr "Vydavatel" -#: cps/templates/book_edit.html:125 cps/templates/detail.html:131 +#: cps/templates/book_edit.html:126 cps/templates/detail.html:132 #: cps/templates/user_edit.html:33 msgid "Language" msgstr "Jazyk" -#: cps/templates/book_edit.html:135 cps/templates/search_form.html:45 +#: cps/templates/book_edit.html:136 cps/templates/search_form.html:45 #: cps/templates/search_form.html:164 msgid "Yes" msgstr "Ano" -#: cps/templates/book_edit.html:136 cps/templates/search_form.html:46 +#: cps/templates/book_edit.html:137 cps/templates/search_form.html:46 #: cps/templates/search_form.html:165 msgid "No" msgstr "Ne" -#: cps/templates/book_edit.html:200 +#: cps/templates/book_edit.html:201 msgid "Upload Format" msgstr "Nahrát formát" -#: cps/templates/book_edit.html:208 +#: cps/templates/book_edit.html:209 msgid "View Book on Save" msgstr "Zobrazit knihu po uložení" -#: cps/templates/book_edit.html:211 cps/templates/book_edit.html:229 +#: cps/templates/book_edit.html:212 cps/templates/book_edit.html:230 msgid "Fetch Metadata" msgstr "Získat metadata" -#: cps/templates/book_edit.html:212 cps/templates/config_db.html:53 +#: cps/templates/book_edit.html:213 cps/templates/config_db.html:53 #: cps/templates/config_edit.html:358 cps/templates/config_view_edit.html:174 -#: cps/templates/email_edit.html:65 cps/templates/shelf_edit.html:25 -#: cps/templates/shelf_order.html:41 cps/templates/user_edit.html:142 +#: cps/templates/email_edit.html:65 cps/templates/schedule_edit.html:40 +#: cps/templates/shelf_edit.html:25 cps/templates/shelf_order.html:41 +#: cps/templates/user_edit.html:142 msgid "Save" msgstr "Uložit" -#: cps/templates/book_edit.html:232 +#: cps/templates/book_edit.html:233 msgid "Keyword" msgstr "Klíčové slovo" -#: cps/templates/book_edit.html:233 +#: cps/templates/book_edit.html:234 #, fuzzy msgid "Search keyword" msgstr "Hledat klíčové slovo" -#: cps/templates/book_edit.html:239 +#: cps/templates/book_edit.html:240 msgid "Click the cover to load metadata to the form" msgstr "Kliknutím na obal načtěte metadata do formuláře" -#: cps/templates/book_edit.html:246 cps/templates/book_edit.html:285 +#: cps/templates/book_edit.html:247 cps/templates/book_edit.html:286 msgid "Loading..." msgstr "Načítání..." -#: cps/templates/book_edit.html:250 cps/templates/layout.html:63 -#: cps/templates/layout.html:186 cps/templates/modal_dialogs.html:34 +#: cps/templates/book_edit.html:251 cps/templates/layout.html:64 +#: cps/templates/layout.html:187 cps/templates/modal_dialogs.html:34 #: cps/templates/user_edit.html:163 msgid "Close" msgstr "Zavřít" -#: cps/templates/book_edit.html:277 cps/templates/book_edit.html:291 +#: cps/templates/book_edit.html:278 cps/templates/book_edit.html:292 msgid "Source" msgstr "Zdroj" -#: cps/templates/book_edit.html:286 +#: cps/templates/book_edit.html:287 msgid "Search error!" msgstr "Chyba vyhledávání!" -#: cps/templates/book_edit.html:287 +#: cps/templates/book_edit.html:288 msgid "No Result(s) found! Please try another keyword." msgstr "Nebyly nalezeny žádné výsledky! Zadejte jiné klíčové slovo." @@ -1932,6 +2030,7 @@ msgid "Enter " msgstr "Identifikátory" #: cps/templates/book_table.html:113 cps/templates/modal_dialogs.html:46 +#: cps/templates/tasks.html:36 msgid "Are you really sure?" msgstr "Jste si opravdu jisti?" @@ -2346,62 +2445,62 @@ msgstr "Přidat povolené/zakázané štítky" msgid "Add Allowed/Denied custom column values" msgstr "Přidat povolené/zakázané hodnoty vlastních sloupců" -#: cps/templates/detail.html:60 cps/templates/detail.html:69 +#: cps/templates/detail.html:61 cps/templates/detail.html:70 msgid "Read in Browser" msgstr "Číst v prohližeči" -#: cps/templates/detail.html:77 cps/templates/detail.html:94 +#: cps/templates/detail.html:78 cps/templates/detail.html:95 msgid "Listen in Browser" msgstr "Poslechnout v prohlížeči" -#: cps/templates/detail.html:124 +#: cps/templates/detail.html:125 #, fuzzy, python-format msgid "Book %(index)s of %(range)s" msgstr "" -#: cps/templates/detail.html:173 +#: cps/templates/detail.html:174 msgid "Published" msgstr "Publikováno" -#: cps/templates/detail.html:221 +#: cps/templates/detail.html:222 msgid "Mark As Unread" msgstr "Označit jako nepřečtené" -#: cps/templates/detail.html:221 +#: cps/templates/detail.html:222 msgid "Mark As Read" msgstr "Označit jako přečtené" -#: cps/templates/detail.html:222 +#: cps/templates/detail.html:223 msgid "Read" msgstr "Přečteno" -#: cps/templates/detail.html:231 +#: cps/templates/detail.html:232 msgid "Restore from archive" msgstr "Obnovit z archivu" -#: cps/templates/detail.html:231 +#: cps/templates/detail.html:232 msgid "Add to archive" msgstr "Archívovat" -#: cps/templates/detail.html:232 +#: cps/templates/detail.html:233 msgid "Archived" msgstr "Archivováno" -#: cps/templates/detail.html:243 +#: cps/templates/detail.html:244 msgid "Description:" msgstr "Popis:" -#: cps/templates/detail.html:256 cps/templates/search.html:15 +#: cps/templates/detail.html:257 cps/templates/search.html:16 msgid "Add to shelf" msgstr "Přidat do police" -#: cps/templates/detail.html:267 cps/templates/detail.html:284 -#: cps/templates/feed.xml:79 cps/templates/layout.html:137 -#: cps/templates/search.html:21 +#: cps/templates/detail.html:268 cps/templates/detail.html:285 +#: cps/templates/feed.xml:79 cps/templates/layout.html:138 +#: cps/templates/search.html:22 msgid "(Public)" msgstr "(Veřejné)" -#: cps/templates/detail.html:298 +#: cps/templates/detail.html:299 msgid "Edit Metadata" msgstr "Upravit metadata" @@ -2445,7 +2544,7 @@ msgstr "Limit velikosti souboru" msgid "Save and Send Test E-mail" msgstr "Uložit nastavení a odeslat zkušební e-mail" -#: cps/templates/email_edit.html:70 cps/templates/layout.html:29 +#: cps/templates/email_edit.html:70 cps/templates/layout.html:30 #: cps/templates/shelf_order.html:42 cps/templates/user_table.html:174 msgid "Back" msgstr "Zpět" @@ -2471,7 +2570,7 @@ msgstr "Zadejte jméno domény" msgid "Denied Domains (Blacklist)" msgstr "Zakázané domény pro registraci" -#: cps/templates/feed.xml:21 cps/templates/layout.html:170 +#: cps/templates/feed.xml:21 cps/templates/layout.html:171 msgid "Next" msgstr "Další" @@ -2484,6 +2583,10 @@ msgstr "Otevřte soubor .kobo/Kobo eReader.conf v textovém editoru a vložte (n msgid "Kobo Token:" msgstr "Kobo Sync token" +#: cps/templates/grid.html:21 +msgid "List" +msgstr "" + #: cps/templates/http_error.html:31 #, fuzzy msgid "Calibre-Web Instance is unconfigured, please contact your administrator" @@ -2501,29 +2604,29 @@ msgstr "Zpět domů" msgid "Logout User" msgstr "" -#: cps/templates/index.html:70 +#: cps/templates/index.html:71 msgid "Sort ascending according to download count" msgstr "" -#: cps/templates/index.html:71 +#: cps/templates/index.html:72 msgid "Sort descending according to download count" msgstr "" -#: cps/templates/index.html:77 cps/templates/search.html:34 -#: cps/templates/shelf.html:23 -msgid "Sort authors in alphabetical order" -msgstr "" - #: cps/templates/index.html:78 cps/templates/search.html:35 #: cps/templates/shelf.html:24 +msgid "Sort authors in alphabetical order" +msgstr "" + +#: cps/templates/index.html:79 cps/templates/search.html:36 +#: cps/templates/shelf.html:25 msgid "Sort authors in reverse alphabetical order" msgstr "" -#: cps/templates/index.html:82 +#: cps/templates/index.html:83 msgid "Sort ascending according to series index" msgstr "" -#: cps/templates/index.html:83 +#: cps/templates/index.html:84 msgid "Sort descending according to series index" msgstr "" @@ -2587,7 +2690,7 @@ msgstr "Knihy řazené podle hodnocení" msgid "Books ordered by file formats" msgstr "Knihy seřazené podle souboru formátů" -#: cps/templates/index.xml:119 cps/templates/layout.html:135 +#: cps/templates/index.xml:119 cps/templates/layout.html:136 #: cps/templates/search_form.html:87 msgid "Shelves" msgstr "Police" @@ -2596,63 +2699,67 @@ msgstr "Police" msgid "Books organized in shelves" msgstr "Knihy organizované v policích" -#: cps/templates/layout.html:29 +#: cps/templates/layout.html:30 msgid "Home" msgstr "Domů" -#: cps/templates/layout.html:35 +#: cps/templates/layout.html:36 msgid "Toggle Navigation" msgstr "Přepnout navigaci" -#: cps/templates/layout.html:46 +#: cps/templates/layout.html:47 msgid "Search Library" msgstr "Hledat v knihovně" -#: cps/templates/layout.html:63 cps/templates/layout.html:117 +#: cps/templates/layout.html:64 cps/templates/layout.html:118 msgid "Uploading..." msgstr "Nahrávání..." -#: cps/templates/layout.html:63 +#: cps/templates/layout.html:64 msgid "Error" msgstr "Chyba" -#: cps/templates/layout.html:63 +#: cps/templates/layout.html:64 msgid "Upload done, processing, please wait..." msgstr "Nahrávání hotovo, zpracovávám, čekejte prosím..." -#: cps/templates/layout.html:76 cps/templates/read.html:72 +#: cps/templates/layout.html:77 cps/templates/read.html:72 #: cps/templates/readcbr.html:84 cps/templates/readcbr.html:108 msgid "Settings" msgstr "Nastavení" -#: cps/templates/layout.html:78 +#: cps/templates/layout.html:79 msgid "Account" msgstr "Účet" -#: cps/templates/layout.html:80 +#: cps/templates/layout.html:81 msgid "Logout" msgstr "Odhlásit se" -#: cps/templates/layout.html:118 +#: cps/templates/layout.html:119 msgid "Please do not refresh the page" msgstr "Prosím neobnovujte stránku" -#: cps/templates/layout.html:128 +#: cps/templates/layout.html:129 msgid "Browse" msgstr "Procházet" -#: cps/templates/layout.html:141 cps/templates/stats.html:3 +#: cps/templates/layout.html:142 cps/templates/stats.html:3 msgid "About" msgstr "O knihovně" -#: cps/templates/layout.html:155 +#: cps/templates/layout.html:156 msgid "Previous" msgstr "Předchozí" -#: cps/templates/layout.html:182 +#: cps/templates/layout.html:183 msgid "Book Details" msgstr "Podrobnosti o knize" +#: cps/templates/list.html:22 +msgid "Grid" +msgstr "" + #: cps/templates/login.html:18 msgid "Remember Me" msgstr "Zapamatovat si" @@ -2757,7 +2864,7 @@ msgstr "" msgid "Select" msgstr "" -#: cps/templates/modal_dialogs.html:134 +#: cps/templates/modal_dialogs.html:134 cps/templates/tasks.html:45 #, fuzzy msgid "Ok" msgstr "Kniha" @@ -2939,15 +3046,23 @@ msgstr "Jakmile tak učiníte, budete automaticky přihlášeni na tomto zaříz msgid "This verification link will expire in 10 minutes." msgstr "Tento ověřovací odkaz vyprší za 10 minut." -#: cps/templates/search.html:5 +#: cps/templates/schedule_edit.html:29 +msgid "Generate Book Cover Thumbnails" +msgstr "" + +#: cps/templates/schedule_edit.html:33 +msgid "Generate Series Cover Thumbnails" +msgstr "" + +#: cps/templates/search.html:6 msgid "No Results Found" msgstr "Nenalezeny žádné výsledky" -#: cps/templates/search.html:6 +#: cps/templates/search.html:7 msgid "Search Term:" msgstr "Termín vyhledávání:" -#: cps/templates/search.html:8 +#: cps/templates/search.html:9 msgid "Results for:" msgstr "Výsledky pro:" @@ -3000,23 +3115,23 @@ msgstr "" msgid "To:" msgstr "" -#: cps/templates/shelf.html:12 +#: cps/templates/shelf.html:13 msgid "Delete this Shelf" msgstr "Smazat tuto polici" -#: cps/templates/shelf.html:13 +#: cps/templates/shelf.html:14 msgid "Edit Shelf Properties" msgstr "" -#: cps/templates/shelf.html:16 +#: cps/templates/shelf.html:17 msgid "Arrange books manually" msgstr "" -#: cps/templates/shelf.html:17 +#: cps/templates/shelf.html:18 msgid "Disable Change order" msgstr "" -#: cps/templates/shelf.html:17 +#: cps/templates/shelf.html:18 msgid "Enable Change order" msgstr "" @@ -3061,8 +3176,8 @@ msgid "System Statistics" msgstr "" #: cps/templates/stats.html:33 -msgid "Program Library" -msgstr "Knihovna programu" +msgid "Program" +msgstr "" #: cps/templates/stats.html:34 msgid "Installed Version" @@ -3092,6 +3207,18 @@ msgstr "Doba spuštění" msgid "Start Time" msgstr "Čas spuštění" +#: cps/templates/tasks.html:20 +msgid "Actions" +msgstr "" + +#: cps/templates/tasks.html:40 +msgid "This task will be cancelled. Any progress made by this task will be saved." +msgstr "" + +#: cps/templates/tasks.html:41 +msgid "If this is a scheduled task, it will be re-ran during the next scheduled time." +msgstr "" + #: cps/templates/user_edit.html:20 msgid "Reset user Password" msgstr "Resetovat uživatelské heslo" diff --git a/cps/translations/de/LC_MESSAGES/messages.mo b/cps/translations/de/LC_MESSAGES/messages.mo index 9095d5bbc1c81be917e89ab70a0e5b451e72edcb..f70977c47740995a5b9abf5cb642b3390bdb7477 100644 GIT binary patch delta 15838 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 %(rating)s" msgstr "Bewertung >= %(rating)s" -#: cps/web.py:1319 +#: cps/search.py:227 #, python-format msgid "Read Status = %(status)s" msgstr "Lesestatus = %(status)s" -#: cps/web.py:1425 +#: cps/search.py:345 msgid "Error on search for custom columns, please restart Calibre-Web" msgstr "Fehler bei der Suche nach eigenen Spalten, bitte Calibre-Web neustarten" -#: cps/web.py:1527 +#: cps/search.py:364 cps/search.py:396 cps/templates/layout.html:57 +msgid "Advanced Search" +msgstr "Erweiterte Suche" + +#: cps/shelf.py:49 cps/shelf.py:103 +msgid "Invalid shelf specified" +msgstr "Ungültiges Bücherregal angegeben" + +#: cps/shelf.py:55 +msgid "Sorry you are not allowed to add a book to that shelf" +msgstr "Du hast keine Berechtigung, ein Buch zu diesem Bücherregal hinzuzufügen" + +#: cps/shelf.py:64 +#, python-format +msgid "Book is already part of the shelf: %(shelfname)s" +msgstr "Buch ist bereits Teil des Bücherregals %(shelfname)s" + +#: cps/shelf.py:89 +#, python-format +msgid "Book has been added to shelf: %(sname)s" +msgstr "Das Buch wurde dem Bücherregal %(sname)s hinzugefügt" + +#: cps/shelf.py:108 +msgid "You are not allowed to add a book to the shelf" +msgstr "Keine Erlaubnis Bücher zu diesem Bücherregal hinzuzufügen" + +#: cps/shelf.py:126 +#, python-format +msgid "Books are already part of the shelf: %(name)s" +msgstr "Bücher sind bereits Teil des Bücherregals %(name)s" + +#: cps/shelf.py:138 +#, python-format +msgid "Books have been added to shelf: %(sname)s" +msgstr "Bücher wurden zum Bücherregal %(sname)s hinzugefügt" + +#: cps/shelf.py:145 +#, python-format +msgid "Could not add books to shelf: %(sname)s" +msgstr "Bücher konnten nicht zum Bücherregal %(sname)s hinzugefügt werden" + +#: cps/shelf.py:191 +#, python-format +msgid "Book has been removed from shelf: %(sname)s" +msgstr "Das Buch wurde aus dem Bücherregal: %(sname)s entfernt" + +#: cps/shelf.py:200 +msgid "Sorry you are not allowed to remove a book from this shelf" +msgstr "Sie haben keine Berechtigung um Bücher aus diesem Bücherregal zu löschen" + +#: cps/shelf.py:210 cps/templates/layout.html:141 +msgid "Create a Shelf" +msgstr "Bücherregal erzeugen" + +#: cps/shelf.py:218 +msgid "Sorry you are not allowed to edit this shelf" +msgstr "Dir ist es nicht erlaubt, dieses Bücherregal zu editieren" + +#: cps/shelf.py:220 +msgid "Edit a shelf" +msgstr "Bücherregal editieren" + +#: cps/shelf.py:229 +msgid "Error deleting Shelf" +msgstr "Fehler beim Löschen des Bücherregals" + +#: cps/shelf.py:231 +msgid "Shelf successfully deleted" +msgstr "Bücherregal erfolgreich gelöscht" + +#: cps/shelf.py:281 +#, python-format +msgid "Change order of Shelf: '%(name)s'" +msgstr "Reihenfolge in Bücherregal '%(name)s' verändern" + +#: cps/shelf.py:313 +msgid "Sorry you are not allowed to create a public shelf" +msgstr "Sie haben keine Berechtigung um öffentliche Bücherregal zu erzeugen" + +#: cps/shelf.py:330 +#, python-format +msgid "Shelf %(title)s created" +msgstr "Bücherregal %(title)s erzeugt" + +#: cps/shelf.py:333 +#, python-format +msgid "Shelf %(title)s changed" +msgstr "Bücherregal %(title)s verändert" + +#: cps/shelf.py:347 +msgid "There was an error" +msgstr "Es trat ein Fehler auf" + +#: cps/shelf.py:369 +#, python-format +msgid "A public shelf with the name '%(title)s' already exists." +msgstr "Es existiert bereit ein öffentliches Bücherregal mit dem Name '%(title)s'." + +#: cps/shelf.py:380 +#, python-format +msgid "A private shelf with the name '%(title)s' already exists." +msgstr "Es existiert bereit ein privates Bücherregal mit dem Name '%(title)s'." + +#: cps/shelf.py:462 +#, python-format +msgid "Shelf: '%(name)s'" +msgstr "Bücherregal: '%(name)s'" + +#: cps/shelf.py:466 +msgid "Error opening shelf. Shelf does not exist or is not accessible" +msgstr "Fehler beim Öffnen des Bücherregals. Bücherregal exisitert nicht oder ist nicht zugänglich" + +#: cps/tasks_status.py:48 cps/templates/layout.html:74 +#: cps/templates/tasks.html:7 +msgid "Tasks" +msgstr "Aufgaben" + +#: cps/tasks_status.py:64 +msgid "Waiting" +msgstr "Wartend" + +#: cps/tasks_status.py:66 +msgid "Failed" +msgstr "Fehlgeschlagen" + +#: cps/tasks_status.py:68 +msgid "Started" +msgstr "Gestartet" + +#: cps/tasks_status.py:70 +msgid "Finished" +msgstr "Beendet" + +#: cps/tasks_status.py:72 +msgid "Ended" +msgstr "Beendet" + +#: cps/tasks_status.py:74 +msgid "Cancelled" +msgstr "Abgebrochen" + +#: cps/tasks_status.py:76 +msgid "Unknown Status" +msgstr "Unbekannter Status" + +#: cps/updater.py:431 cps/updater.py:442 cps/updater.py:543 cps/updater.py:558 +msgid "Unexpected data while reading update information" +msgstr "Updateinformationen enthalten unbekannte Daten" + +#: cps/updater.py:438 cps/updater.py:550 +msgid "No update available. You already have the latest version installed" +msgstr "Kein Update verfügbar. Es ist bereits die aktuellste Version installiert" + +#: cps/updater.py:456 +msgid "A new update is available. Click on the button below to update to the latest version." +msgstr "Es sind Updates verfügbar. Klicke auf den Button unten, um auf die aktuellste Version zu aktualisieren." + +#: cps/updater.py:474 +msgid "Could not fetch update information" +msgstr "Updateinformationen konnten nicht geladen werden" + +#: cps/updater.py:484 +msgid "Click on the button below to update to the latest stable version." +msgstr "Klicke auf den Button unten, um auf die letzte stabile Version zu aktualisieren." + +#: cps/updater.py:493 cps/updater.py:507 cps/updater.py:518 +#, python-format +msgid "A new update is available. Click on the button below to update to version: %(version)s" +msgstr "Ein neues Update ist verfügbar. Klicke auf den Button unten, um auf Version: %(version)s zu aktualisieren" + +#: cps/updater.py:536 +msgid "No release information available" +msgstr "Keine Releaseinformationen verfügbar" + +#: cps/templates/index.html:6 cps/web.py:432 +msgid "Discover (Random Books)" +msgstr "Entdecke (Zufällige Bücher)" + +#: cps/web.py:468 +msgid "Hot Books (Most Downloaded)" +msgstr "Beliebte Bücher (am meisten Downloads)" + +#: cps/web.py:499 +#, python-format +msgid "Downloaded books by %(user)s" +msgstr "Von %(user)s heruntergeladene Bücher" + +#: cps/web.py:532 +#, python-format +msgid "Author: %(name)s" +msgstr "Author: %(name)s" + +#: cps/web.py:568 +#, python-format +msgid "Publisher: %(name)s" +msgstr "Verleger: %(name)s" + +#: cps/web.py:596 +#, python-format +msgid "Series: %(serie)s" +msgstr "Serie: %(serie)s" + +#: cps/web.py:609 +msgid "Rating: None" +msgstr "Bewertung: Keine" + +#: cps/web.py:618 +#, python-format +msgid "Rating: %(rating)s stars" +msgstr "Bewertung: %(rating)s Sterne" + +#: cps/web.py:636 +#, python-format +msgid "File format: %(format)s" +msgstr "Dateiformat: %(format)s" + +#: cps/web.py:673 +#, python-format +msgid "Category: %(name)s" +msgstr "Kategorie: %(name)s" + +#: cps/web.py:700 +#, python-format +msgid "Language: %(name)s" +msgstr "Sprache: %(name)s" + +#: cps/templates/admin.html:16 cps/web.py:938 +msgid "Downloads" +msgstr "Downloads" + +#: cps/web.py:1030 +msgid "Ratings list" +msgstr "Bewertungsliste" + +#: cps/web.py:1057 +msgid "File formats list" +msgstr "Liste der Dateiformate" + +#: cps/web.py:1199 #, python-format msgid "Book successfully queued for sending to %(kindlemail)s" msgstr "Buch erfolgreich zum Senden an %(kindlemail)s eingereiht" -#: cps/web.py:1531 +#: cps/web.py:1203 #, python-format msgid "Oops! There was an error sending this book: %(res)s" msgstr "Beim Senden des Buchs trat ein Fehler auf: %(res)s" -#: cps/web.py:1533 +#: cps/web.py:1205 msgid "Please update your profile with a valid Send to Kindle E-mail Address." msgstr "Bitte zuerst die Kindle E-Mailadresse konfigurieren..." -#: cps/web.py:1550 +#: cps/web.py:1222 msgid "E-Mail server is not configured, please contact your administrator!" msgstr "Der E-Mail Server ist nicht konfigurierte, bitte den Administrator kontaktieren!" -#: cps/templates/layout.html:85 cps/templates/register.html:17 cps/web.py:1551 -#: cps/web.py:1558 cps/web.py:1564 cps/web.py:1583 cps/web.py:1587 -#: cps/web.py:1593 +#: cps/templates/layout.html:86 cps/templates/register.html:17 cps/web.py:1223 +#: cps/web.py:1230 cps/web.py:1236 cps/web.py:1255 cps/web.py:1260 +#: cps/web.py:1266 msgid "Register" msgstr "Registrieren" -#: cps/web.py:1585 +#: cps/web.py:1257 msgid "Your e-mail is not allowed to register" msgstr "Diese E-Mail ist nicht für die Registrierung zugelassen" -#: cps/web.py:1588 +#: cps/web.py:1261 msgid "Confirmation e-mail was send to your e-mail account." msgstr "Eine Bestätigungs-E-Mail wurde an deinen E-Mail Account versendet." -#: cps/web.py:1602 +#: cps/web.py:1275 msgid "Cannot activate LDAP authentication" msgstr "LDAP-Authentifizierung kann nicht aktiviert werden" -#: cps/web.py:1621 +#: cps/web.py:1294 #, 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:1627 +#: cps/web.py:1300 #, python-format msgid "Could not login: %(message)s" msgstr "Login nicht erfolgreich: %(message)s" -#: cps/web.py:1631 cps/web.py:1656 +#: cps/web.py:1304 cps/web.py:1329 msgid "Wrong Username or Password" msgstr "Falscher Benutzername oder Passwort" -#: cps/web.py:1638 +#: cps/web.py:1311 msgid "New Password was send to your email address" msgstr "Das neue Passwort wurde an die E-Mail Adresse verschickt" -#: cps/web.py:1644 +#: cps/web.py:1317 msgid "Please enter valid username to reset password" msgstr "Bitte einen gültigen Benutzernamen zum Zurücksetzen des Passworts angeben" -#: cps/web.py:1651 +#: cps/web.py:1324 #, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "Eingeloggt als: '%(nickname)s'" -#: cps/web.py:1717 cps/web.py:1766 +#: cps/web.py:1388 cps/web.py:1437 #, python-format msgid "%(name)s's profile" msgstr "%(name)s's Profil" -#: cps/web.py:1733 +#: cps/web.py:1404 msgid "Profile updated" msgstr "Profil aktualisiert" @@ -1333,40 +1369,75 @@ msgstr "Profil aktualisiert" msgid "Found no valid gmail.json file with OAuth information" msgstr "Keine gültige gmail.json Datei mit Oauth informationen gefunden" -#: cps/tasks/convert.py:154 +#: cps/tasks/convert.py:153 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "Calibre E-Book Konverter %(tool)s nicht gefunden" -#: cps/tasks/convert.py:187 +#: cps/tasks/convert.py:186 #, python-format msgid "%(format)s format not found on disk" msgstr "%(format)s Format nicht gefunden" -#: cps/tasks/convert.py:191 +#: cps/tasks/convert.py:190 msgid "Ebook converter failed with unknown error" msgstr "EBook Converter mit unbekanntem Fehler fehlgeschlagen" -#: cps/tasks/convert.py:201 +#: cps/tasks/convert.py:200 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "Kepubify Konverter Aufruf fehlgeschlagen: %(error)s" -#: cps/tasks/convert.py:223 +#: cps/tasks/convert.py:222 #, 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:246 +#: cps/tasks/convert.py:245 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "Fehler des EBook-Converters: %(error)s" -#: cps/tasks/convert.py:269 +#: cps/tasks/convert.py:268 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "Calibre fehlgeschlagen mit Fehler: %(error)s" +#: cps/tasks/convert.py:273 +msgid "Convert" +msgstr "Konvertiere" + +#: cps/tasks/database.py:28 +msgid "Reconnecting Calibre database" +msgstr "Calibre Datenbank wird neu verbunden" + +#: cps/tasks/mail.py:265 +msgid "E-mail" +msgstr "E-Mail" + +#: cps/tasks/thumbnail.py:95 +#, python-format +msgid "Generated %(count)s cover thumbnails" +msgstr "%(count)s Cover Miniaturansichten erzeugt" + +#: cps/tasks/thumbnail.py:222 cps/tasks/thumbnail.py:435 +#: cps/tasks/thumbnail.py:503 +msgid "Cover Thumbnails" +msgstr "Cover Miniaturansichtern" + +#: cps/tasks/thumbnail.py:281 +msgid "Generated {0} series thumbnails" +msgstr "{0} Serien Miniaturansichten erzeugt" + +#: cps/tasks/thumbnail.py:446 +msgid "Clearing cover thumbnail cache" +msgstr "Cover Miniaturansichten Cache wird gelöscht" + +#: cps/tasks/upload.py:38 cps/templates/admin.html:20 +#: cps/templates/layout.html:67 cps/templates/user_table.html:145 +msgid "Upload" +msgstr "Upload" + #: cps/templates/admin.html:9 msgid "Users" msgstr "Benutzerliste" @@ -1386,7 +1457,7 @@ msgstr "E-Mail" msgid "Send to Kindle E-mail Address" msgstr "Kindle" -#: cps/templates/admin.html:17 cps/templates/layout.html:76 +#: cps/templates/admin.html:17 cps/templates/layout.html:77 #: cps/templates/user_table.html:143 msgid "Admin" msgstr "Admin" @@ -1396,13 +1467,8 @@ msgstr "Admin" msgid "Password" msgstr "Passwort" -#: cps/templates/admin.html:20 cps/templates/layout.html:66 -#: cps/templates/user_table.html:145 -msgid "Upload" -msgstr "Upload" - -#: cps/templates/admin.html:22 cps/templates/detail.html:18 -#: cps/templates/detail.html:27 cps/templates/shelf.html:7 +#: cps/templates/admin.html:22 cps/templates/detail.html:19 +#: cps/templates/detail.html:28 cps/templates/shelf.html:8 #: cps/templates/user_table.html:146 msgid "Download" msgstr "Download" @@ -1416,7 +1482,7 @@ msgstr "Bücher ansehen" msgid "Edit" msgstr "Editieren" -#: cps/templates/admin.html:25 cps/templates/book_edit.html:16 +#: cps/templates/admin.html:25 cps/templates/book_edit.html:17 #: cps/templates/book_table.html:100 cps/templates/modal_dialogs.html:63 #: cps/templates/modal_dialogs.html:116 cps/templates/user_edit.html:67 #: cps/templates/user_table.html:149 @@ -1528,78 +1594,107 @@ msgstr "Basiskonfiguration" msgid "Edit UI Configuration" msgstr "Benutzeroberflächenkonfiguration" -#: cps/templates/admin.html:166 +#: cps/templates/admin.html:167 +msgid "Scheduled Tasks" +msgstr "Geplante Aufgabe" + +#: cps/templates/admin.html:170 cps/templates/schedule_edit.html:12 +msgid "Time at which tasks start to run" +msgstr "Zeitpunkt an dem die Aufgabe startet" + +#: cps/templates/admin.html:174 cps/templates/schedule_edit.html:20 +msgid "Maximum tasks duration" +msgstr "Maximale Aufgabendauer" + +#: cps/templates/admin.html:178 +msgid "Generate book cover thumbnails" +msgstr "Buchcover Miniaturansichten erzeugen" + +#: cps/templates/admin.html:182 +msgid "Generate series cover thumbnails" +msgstr "Seriencover Miniaturansichten erzeugen" + +#: cps/templates/admin.html:186 cps/templates/schedule_edit.html:37 +msgid "Reconnect to Calibre Library" +msgstr "Mit Calibre Bibliothek neuverbinden" + +#: cps/templates/admin.html:193 +msgid "Refresh Thumbnail Cover Cache" +msgstr "Cover Miniaturansichten aktualisieren" + +#: cps/templates/admin.html:199 msgid "Administration" msgstr "Administration" -#: cps/templates/admin.html:167 +#: cps/templates/admin.html:200 msgid "Download Debug Package" msgstr "Debug Daten herunterladen" -#: cps/templates/admin.html:168 +#: cps/templates/admin.html:201 msgid "View Logs" msgstr "Logdateien ansehen" -#: cps/templates/admin.html:171 +#: cps/templates/admin.html:204 msgid "Reconnect Calibre Database" msgstr "Calibre-DB neu verbinden" -#: cps/templates/admin.html:172 +#: cps/templates/admin.html:207 msgid "Restart" msgstr "Neustart" -#: cps/templates/admin.html:173 +#: cps/templates/admin.html:208 msgid "Shutdown" msgstr "Calibre-Web beenden" -#: cps/templates/admin.html:178 -msgid "Update" -msgstr "Update" +#: cps/templates/admin.html:213 +msgid "Version Information" +msgstr "Versionsinformation" -#: cps/templates/admin.html:182 +#: cps/templates/admin.html:217 msgid "Version" msgstr "Version" -#: cps/templates/admin.html:183 +#: cps/templates/admin.html:218 msgid "Details" msgstr "Details" -#: cps/templates/admin.html:189 +#: cps/templates/admin.html:224 msgid "Current version" msgstr "Aktuelle Version" -#: cps/templates/admin.html:196 +#: cps/templates/admin.html:231 msgid "Check for Update" msgstr "Nach Update suchen" -#: cps/templates/admin.html:197 +#: cps/templates/admin.html:232 msgid "Perform Update" msgstr "Update durchführen" -#: cps/templates/admin.html:210 +#: cps/templates/admin.html:245 msgid "Are you sure you want to restart?" msgstr "Calibre-Web wirklich neustarten?" -#: cps/templates/admin.html:215 cps/templates/admin.html:229 -#: cps/templates/admin.html:249 cps/templates/config_db.html:70 +#: cps/templates/admin.html:250 cps/templates/admin.html:264 +#: cps/templates/admin.html:284 cps/templates/config_db.html:70 msgid "OK" msgstr "OK" -#: cps/templates/admin.html:216 cps/templates/admin.html:230 -#: cps/templates/book_edit.html:213 cps/templates/book_table.html:127 +#: cps/templates/admin.html:251 cps/templates/admin.html:265 +#: cps/templates/book_edit.html:214 cps/templates/book_table.html:127 #: cps/templates/config_db.html:54 cps/templates/config_edit.html:359 #: 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/shelf_edit.html:27 +#: cps/templates/modal_dialogs.html:135 cps/templates/schedule_edit.html:41 +#: cps/templates/shelf_edit.html:27 cps/templates/tasks.html:46 #: cps/templates/user_edit.html:144 msgid "Cancel" msgstr "Abbruch" -#: cps/templates/admin.html:228 +#: cps/templates/admin.html:263 msgid "Are you sure you want to shutdown?" msgstr "Calibre-Web wirklich anhalten?" -#: cps/templates/admin.html:240 +#: cps/templates/admin.html:275 msgid "Updating, please do not reload this page" msgstr "Updatevorgang, Seite bitte nicht neu laden" @@ -1611,39 +1706,39 @@ msgstr "via" msgid "In Library" msgstr "In Bibliothek" -#: cps/templates/author.html:26 cps/templates/index.html:73 -#: cps/templates/search.html:30 cps/templates/shelf.html:19 +#: cps/templates/author.html:26 cps/templates/index.html:74 +#: cps/templates/search.html:31 cps/templates/shelf.html:20 msgid "Sort according to book date, newest first" msgstr "Sortiere nach Buchdatum, Neuestes zuerst" -#: cps/templates/author.html:27 cps/templates/index.html:74 -#: cps/templates/search.html:31 cps/templates/shelf.html:20 +#: cps/templates/author.html:27 cps/templates/index.html:75 +#: cps/templates/search.html:32 cps/templates/shelf.html:21 msgid "Sort according to book date, oldest first" msgstr "Sortiere nach Buchdatum, Aältestes zuerst" -#: cps/templates/author.html:28 cps/templates/index.html:75 -#: cps/templates/search.html:32 cps/templates/shelf.html:21 +#: cps/templates/author.html:28 cps/templates/index.html:76 +#: cps/templates/search.html:33 cps/templates/shelf.html:22 msgid "Sort title in alphabetical order" msgstr "Sortiere Titel in alphabetischer Reihenfolge" -#: cps/templates/author.html:29 cps/templates/index.html:76 -#: cps/templates/search.html:33 cps/templates/shelf.html:22 +#: cps/templates/author.html:29 cps/templates/index.html:77 +#: cps/templates/search.html:34 cps/templates/shelf.html:23 msgid "Sort title in reverse alphabetical order" msgstr "Sortiere Titel in umgekehrt alphabetischer Reihenfolge" -#: cps/templates/author.html:30 cps/templates/index.html:79 -#: cps/templates/search.html:36 cps/templates/shelf.html:25 +#: cps/templates/author.html:30 cps/templates/index.html:80 +#: cps/templates/search.html:37 cps/templates/shelf.html:26 msgid "Sort according to publishing date, newest first" msgstr "Sortiere nach Herausgabedatum, Neueste zuerst" -#: cps/templates/author.html:31 cps/templates/index.html:80 -#: cps/templates/search.html:37 cps/templates/shelf.html:26 +#: cps/templates/author.html:31 cps/templates/index.html:81 +#: cps/templates/search.html:38 cps/templates/shelf.html:27 msgid "Sort according to publishing date, oldest first" msgstr "Sortiere nach Herausgabedatum, Älteste zuerst" #: cps/templates/author.html:56 cps/templates/author.html:115 -#: cps/templates/index.html:29 cps/templates/index.html:112 -#: cps/templates/search.html:66 cps/templates/shelf.html:54 +#: cps/templates/index.html:30 cps/templates/index.html:113 +#: cps/templates/search.html:67 cps/templates/shelf.html:55 msgid "reduce" msgstr "Reduzieren" @@ -1651,164 +1746,165 @@ msgstr "Reduzieren" msgid "More by" msgstr "Mehr von" -#: cps/templates/book_edit.html:10 +#: cps/templates/book_edit.html:11 msgid "Delete Book" msgstr "Buch löschen" -#: cps/templates/book_edit.html:13 +#: cps/templates/book_edit.html:14 msgid "Delete formats:" msgstr "Lösche Formate:" -#: cps/templates/book_edit.html:24 +#: cps/templates/book_edit.html:25 msgid "Convert book format:" msgstr "Konvertiere Buchformat:" -#: cps/templates/book_edit.html:29 +#: cps/templates/book_edit.html:30 msgid "Convert from:" msgstr "Konvertiere von:" -#: cps/templates/book_edit.html:31 cps/templates/book_edit.html:38 +#: cps/templates/book_edit.html:32 cps/templates/book_edit.html:39 msgid "select an option" msgstr "Wähle eine Option" -#: cps/templates/book_edit.html:36 +#: cps/templates/book_edit.html:37 msgid "Convert to:" msgstr "Konvertiere nach:" -#: cps/templates/book_edit.html:45 +#: cps/templates/book_edit.html:46 msgid "Convert book" msgstr "Konvertiere Buch" -#: cps/templates/book_edit.html:55 cps/templates/search_form.html:8 +#: cps/templates/book_edit.html:56 cps/templates/search_form.html:8 msgid "Book Title" msgstr "Buchtitel" -#: cps/templates/book_edit.html:62 cps/templates/book_edit.html:270 -#: cps/templates/book_edit.html:288 cps/templates/search_form.html:12 +#: cps/templates/book_edit.html:63 cps/templates/book_edit.html:271 +#: cps/templates/book_edit.html:289 cps/templates/search_form.html:12 msgid "Author" msgstr "Autor" -#: cps/templates/book_edit.html:67 cps/templates/book_edit.html:275 -#: cps/templates/book_edit.html:290 cps/templates/search_form.html:153 +#: cps/templates/book_edit.html:68 cps/templates/book_edit.html:276 +#: cps/templates/book_edit.html:291 cps/templates/search_form.html:153 msgid "Description" msgstr "Beschreibung" -#: cps/templates/book_edit.html:72 +#: cps/templates/book_edit.html:73 msgid "Identifiers" msgstr "IDs" -#: cps/templates/book_edit.html:76 cps/templates/book_edit.html:299 +#: cps/templates/book_edit.html:77 cps/templates/book_edit.html:300 msgid "Identifier Type" msgstr "ID Typ" -#: cps/templates/book_edit.html:77 cps/templates/book_edit.html:300 +#: cps/templates/book_edit.html:78 cps/templates/book_edit.html:301 msgid "Identifier Value" msgstr "ID Wert" -#: cps/templates/book_edit.html:78 cps/templates/book_edit.html:301 +#: cps/templates/book_edit.html:79 cps/templates/book_edit.html:302 #: cps/templates/user_table.html:24 msgid "Remove" msgstr "Entfernen" -#: cps/templates/book_edit.html:82 +#: cps/templates/book_edit.html:83 msgid "Add Identifier" msgstr "ID hinzufügen" -#: cps/templates/book_edit.html:86 cps/templates/search_form.html:51 +#: cps/templates/book_edit.html:87 cps/templates/search_form.html:51 msgid "Tags" msgstr "Tags" -#: cps/templates/book_edit.html:94 +#: cps/templates/book_edit.html:95 msgid "Series ID" msgstr "Serien ID" -#: cps/templates/book_edit.html:98 +#: cps/templates/book_edit.html:99 msgid "Rating" msgstr "Bewertung" -#: cps/templates/book_edit.html:103 +#: cps/templates/book_edit.html:104 msgid "Fetch Cover from URL (JPEG - Image will be downloaded and stored in database)" msgstr "Cover-URL (jpg, Cover wird heruntergeladen und in der Datenbank gespeichert, Feld erscheint anschließend wieder leer)" -#: cps/templates/book_edit.html:107 +#: cps/templates/book_edit.html:108 msgid "Upload Cover from Local Disk" msgstr "Coverdatei von Lokalem Laufwerk hochladen" -#: cps/templates/book_edit.html:112 +#: cps/templates/book_edit.html:113 msgid "Published Date" msgstr "Herausgabedatum" -#: cps/templates/book_edit.html:121 cps/templates/book_edit.html:272 -#: cps/templates/book_edit.html:289 cps/templates/detail.html:164 +#: cps/templates/book_edit.html:122 cps/templates/book_edit.html:273 +#: cps/templates/book_edit.html:290 cps/templates/detail.html:165 #: cps/templates/search_form.html:16 msgid "Publisher" msgstr "Herausgeber" -#: cps/templates/book_edit.html:125 cps/templates/detail.html:131 +#: cps/templates/book_edit.html:126 cps/templates/detail.html:132 #: cps/templates/user_edit.html:33 msgid "Language" msgstr "Sprache" -#: cps/templates/book_edit.html:135 cps/templates/search_form.html:45 +#: cps/templates/book_edit.html:136 cps/templates/search_form.html:45 #: cps/templates/search_form.html:164 msgid "Yes" msgstr "Ja" -#: cps/templates/book_edit.html:136 cps/templates/search_form.html:46 +#: cps/templates/book_edit.html:137 cps/templates/search_form.html:46 #: cps/templates/search_form.html:165 msgid "No" msgstr "Nein" -#: cps/templates/book_edit.html:200 +#: cps/templates/book_edit.html:201 msgid "Upload Format" msgstr "Format hochladen" -#: cps/templates/book_edit.html:208 +#: cps/templates/book_edit.html:209 msgid "View Book on Save" msgstr "Buch nach Bearbeitung ansehen" -#: cps/templates/book_edit.html:211 cps/templates/book_edit.html:229 +#: cps/templates/book_edit.html:212 cps/templates/book_edit.html:230 msgid "Fetch Metadata" msgstr "Metadaten laden" -#: cps/templates/book_edit.html:212 cps/templates/config_db.html:53 +#: cps/templates/book_edit.html:213 cps/templates/config_db.html:53 #: cps/templates/config_edit.html:358 cps/templates/config_view_edit.html:174 -#: cps/templates/email_edit.html:65 cps/templates/shelf_edit.html:25 -#: cps/templates/shelf_order.html:41 cps/templates/user_edit.html:142 +#: cps/templates/email_edit.html:65 cps/templates/schedule_edit.html:40 +#: cps/templates/shelf_edit.html:25 cps/templates/shelf_order.html:41 +#: cps/templates/user_edit.html:142 msgid "Save" msgstr "Speichern" -#: cps/templates/book_edit.html:232 +#: cps/templates/book_edit.html:233 msgid "Keyword" msgstr "Suchbegriff" -#: cps/templates/book_edit.html:233 +#: cps/templates/book_edit.html:234 msgid "Search keyword" msgstr "Suche Schlüsselbegriff" -#: cps/templates/book_edit.html:239 +#: cps/templates/book_edit.html:240 msgid "Click the cover to load metadata to the form" msgstr "Klicke auf das Bild, um die Metadaten zu übertragen" -#: cps/templates/book_edit.html:246 cps/templates/book_edit.html:285 +#: cps/templates/book_edit.html:247 cps/templates/book_edit.html:286 msgid "Loading..." msgstr "Lade..." -#: cps/templates/book_edit.html:250 cps/templates/layout.html:63 -#: cps/templates/layout.html:186 cps/templates/modal_dialogs.html:34 +#: cps/templates/book_edit.html:251 cps/templates/layout.html:64 +#: cps/templates/layout.html:187 cps/templates/modal_dialogs.html:34 #: cps/templates/user_edit.html:163 msgid "Close" msgstr "Schließen" -#: cps/templates/book_edit.html:277 cps/templates/book_edit.html:291 +#: cps/templates/book_edit.html:278 cps/templates/book_edit.html:292 msgid "Source" msgstr "Quelle" -#: cps/templates/book_edit.html:286 +#: cps/templates/book_edit.html:287 msgid "Search error!" msgstr "Fehler bei der Suche!" -#: cps/templates/book_edit.html:287 +#: cps/templates/book_edit.html:288 msgid "No Result(s) found! Please try another keyword." msgstr "Keine Ergebnisse gefunden! Bitte ein anderes Schlüsselwort benutzen." @@ -1901,7 +1997,7 @@ msgstr "Kommentare" #: cps/templates/book_table.html:75 msgid "Archiv Status" -msgstr "" +msgstr "Archivstatus" #: cps/templates/book_table.html:77 cps/templates/search_form.html:42 msgid "Read Status" @@ -1915,6 +2011,7 @@ msgid "Enter " msgstr "Eingeben " #: cps/templates/book_table.html:113 cps/templates/modal_dialogs.html:46 +#: cps/templates/tasks.html:36 msgid "Are you really sure?" msgstr "Sicher?" @@ -2326,62 +2423,62 @@ msgstr "Erlaubte/Verbotene Tags hinzufügen" msgid "Add Allowed/Denied custom column values" msgstr "Erlaubte/Verbotene Calibre Spalten hinzufügen" -#: cps/templates/detail.html:60 cps/templates/detail.html:69 +#: cps/templates/detail.html:61 cps/templates/detail.html:70 msgid "Read in Browser" msgstr "Im Browser lesen" -#: cps/templates/detail.html:77 cps/templates/detail.html:94 +#: cps/templates/detail.html:78 cps/templates/detail.html:95 msgid "Listen in Browser" msgstr "Im Browser anhören" -#: cps/templates/detail.html:124 +#: cps/templates/detail.html:125 #, python-format msgid "Book %(index)s of %(range)s" msgstr "Buch %(index)s von %(range)s" -#: cps/templates/detail.html:173 +#: cps/templates/detail.html:174 msgid "Published" msgstr "Herausgabedatum" -#: cps/templates/detail.html:221 +#: cps/templates/detail.html:222 msgid "Mark As Unread" msgstr "Als ungelesen markieren" -#: cps/templates/detail.html:221 +#: cps/templates/detail.html:222 msgid "Mark As Read" msgstr "Als gelesen markieren" -#: cps/templates/detail.html:222 +#: cps/templates/detail.html:223 msgid "Read" msgstr "Gelesen" -#: cps/templates/detail.html:231 +#: cps/templates/detail.html:232 msgid "Restore from archive" msgstr "Vom Archiv wiederherstellen" -#: cps/templates/detail.html:231 +#: cps/templates/detail.html:232 msgid "Add to archive" msgstr "Zum Archiv hinzufügen" -#: cps/templates/detail.html:232 +#: cps/templates/detail.html:233 msgid "Archived" msgstr "Archiviert" -#: cps/templates/detail.html:243 +#: cps/templates/detail.html:244 msgid "Description:" msgstr "Beschreibung:" -#: cps/templates/detail.html:256 cps/templates/search.html:15 +#: cps/templates/detail.html:257 cps/templates/search.html:16 msgid "Add to shelf" msgstr "Zu Bücherregal hinzufügen" -#: cps/templates/detail.html:267 cps/templates/detail.html:284 -#: cps/templates/feed.xml:79 cps/templates/layout.html:137 -#: cps/templates/search.html:21 +#: cps/templates/detail.html:268 cps/templates/detail.html:285 +#: cps/templates/feed.xml:79 cps/templates/layout.html:138 +#: cps/templates/search.html:22 msgid "(Public)" msgstr "(Öffentlich)" -#: cps/templates/detail.html:298 +#: cps/templates/detail.html:299 msgid "Edit Metadata" msgstr "Metadaten bearbeiten" @@ -2425,7 +2522,7 @@ msgstr "Anhangsgröße" msgid "Save and Send Test E-mail" msgstr "Einstellungen speichern und Test-E-Mail versenden" -#: cps/templates/email_edit.html:70 cps/templates/layout.html:29 +#: cps/templates/email_edit.html:70 cps/templates/layout.html:30 #: cps/templates/shelf_order.html:42 cps/templates/user_table.html:174 msgid "Back" msgstr "Zurück" @@ -2451,7 +2548,7 @@ msgstr "Domainnamen eingeben" msgid "Denied Domains (Blacklist)" msgstr "Verbotene Domains für eine Registrierung" -#: cps/templates/feed.xml:21 cps/templates/layout.html:170 +#: cps/templates/feed.xml:21 cps/templates/layout.html:171 msgid "Next" msgstr "Nächste" @@ -2460,9 +2557,12 @@ msgid "Open the .kobo/Kobo eReader.conf file in a text editor and add (or edit): msgstr "Öffne die .kobo/Kobo eReader.conf Datei in einem Texteditor und füge hinzu (oder ersetze):" #: cps/templates/generate_kobo_auth_url.html:11 -#, fuzzy msgid "Kobo Token:" -msgstr "Kobo Sync Token" +msgstr "Kobo Token:" + +#: cps/templates/grid.html:21 +msgid "List" +msgstr "Liste" #: cps/templates/http_error.html:31 msgid "Calibre-Web Instance is unconfigured, please contact your administrator" @@ -2480,29 +2580,29 @@ msgstr "Zurück zur Hauptseite" msgid "Logout User" msgstr "Benutzer ausloggem" -#: cps/templates/index.html:70 +#: cps/templates/index.html:71 msgid "Sort ascending according to download count" msgstr "Aufsteigend nach Downloadzahlen sortieren" -#: cps/templates/index.html:71 +#: cps/templates/index.html:72 msgid "Sort descending according to download count" msgstr "Absteigend nach Downloadzahlen sortieren" -#: cps/templates/index.html:77 cps/templates/search.html:34 -#: cps/templates/shelf.html:23 +#: cps/templates/index.html:78 cps/templates/search.html:35 +#: cps/templates/shelf.html:24 msgid "Sort authors in alphabetical order" msgstr "Sortiere Autoren in alphabetischer Reihenfolge" -#: cps/templates/index.html:78 cps/templates/search.html:35 -#: cps/templates/shelf.html:24 +#: cps/templates/index.html:79 cps/templates/search.html:36 +#: cps/templates/shelf.html:25 msgid "Sort authors in reverse alphabetical order" msgstr "Sortiere Autoren in umgekehrt alphabetischer Reihenfolge" -#: cps/templates/index.html:82 +#: cps/templates/index.html:83 msgid "Sort ascending according to series index" msgstr "Sortiere Serienindex aufsteigend" -#: cps/templates/index.html:83 +#: cps/templates/index.html:84 msgid "Sort descending according to series index" msgstr "Sortiere Serienindex absteigend" @@ -2566,7 +2666,7 @@ msgstr "Bücher nach Bewertungen sortiert" msgid "Books ordered by file formats" msgstr "Bücher nach Dateiformaten sortiert" -#: cps/templates/index.xml:119 cps/templates/layout.html:135 +#: cps/templates/index.xml:119 cps/templates/layout.html:136 #: cps/templates/search_form.html:87 msgid "Shelves" msgstr "Bücherregale" @@ -2575,63 +2675,67 @@ msgstr "Bücherregale" msgid "Books organized in shelves" msgstr "Bücher in Bücherregalen organisiert" -#: cps/templates/layout.html:29 +#: cps/templates/layout.html:30 msgid "Home" msgstr "Home" -#: cps/templates/layout.html:35 +#: cps/templates/layout.html:36 msgid "Toggle Navigation" msgstr "Nagivation umschalten" -#: cps/templates/layout.html:46 +#: cps/templates/layout.html:47 msgid "Search Library" msgstr "Bibiliothek durchsuchen" -#: cps/templates/layout.html:63 cps/templates/layout.html:117 +#: cps/templates/layout.html:64 cps/templates/layout.html:118 msgid "Uploading..." msgstr "Lade hoch..." -#: cps/templates/layout.html:63 +#: cps/templates/layout.html:64 msgid "Error" msgstr "Fehler" -#: cps/templates/layout.html:63 +#: cps/templates/layout.html:64 msgid "Upload done, processing, please wait..." msgstr "Hochladen beendet, verarbeite Daten, bitte warten..." -#: cps/templates/layout.html:76 cps/templates/read.html:72 +#: cps/templates/layout.html:77 cps/templates/read.html:72 #: cps/templates/readcbr.html:84 cps/templates/readcbr.html:108 msgid "Settings" msgstr "Einstellungen" -#: cps/templates/layout.html:78 +#: cps/templates/layout.html:79 msgid "Account" msgstr "Account" -#: cps/templates/layout.html:80 +#: cps/templates/layout.html:81 msgid "Logout" msgstr "Logout" -#: cps/templates/layout.html:118 +#: cps/templates/layout.html:119 msgid "Please do not refresh the page" msgstr "Bitte die Seite nicht neu laden" -#: cps/templates/layout.html:128 +#: cps/templates/layout.html:129 msgid "Browse" msgstr "Durchsuchen" -#: cps/templates/layout.html:141 cps/templates/stats.html:3 +#: cps/templates/layout.html:142 cps/templates/stats.html:3 msgid "About" msgstr "Über" -#: cps/templates/layout.html:155 +#: cps/templates/layout.html:156 msgid "Previous" msgstr "Vorheriger Eintrag" -#: cps/templates/layout.html:182 +#: cps/templates/layout.html:183 msgid "Book Details" msgstr "Buchdetails" +#: cps/templates/list.html:22 +msgid "Grid" +msgstr "Raster" + #: cps/templates/login.html:18 msgid "Remember Me" msgstr "Merken" @@ -2736,7 +2840,7 @@ msgstr "Übergeordnetes Verzeichnis" msgid "Select" msgstr "Auswahl" -#: cps/templates/modal_dialogs.html:134 +#: cps/templates/modal_dialogs.html:134 cps/templates/tasks.html:45 msgid "Ok" msgstr "Ok" @@ -2912,15 +3016,23 @@ msgstr "Danach wirst du automatisch auf diesem Gerät eingeloggt sein." msgid "This verification link will expire in 10 minutes." msgstr "Dieser Link wird in 10 Minuten ablaufen." -#: cps/templates/search.html:5 +#: cps/templates/schedule_edit.html:29 +msgid "Generate Book Cover Thumbnails" +msgstr "Thumbnails für Bücher Cover erzeugen" + +#: cps/templates/schedule_edit.html:33 +msgid "Generate Series Cover Thumbnails" +msgstr "Thumbnails für Serien Cover erzeugen" + +#: cps/templates/search.html:6 msgid "No Results Found" msgstr "Keine Ergebnisse" -#: cps/templates/search.html:6 +#: cps/templates/search.html:7 msgid "Search Term:" msgstr "Suchbegriff:" -#: cps/templates/search.html:8 +#: cps/templates/search.html:9 msgid "Results for:" msgstr "Ergebnisse für:" @@ -2972,23 +3084,23 @@ msgstr "Von:" msgid "To:" msgstr "Bis:" -#: cps/templates/shelf.html:12 +#: cps/templates/shelf.html:13 msgid "Delete this Shelf" msgstr "Lösche dieses Bücherregal" -#: cps/templates/shelf.html:13 +#: cps/templates/shelf.html:14 msgid "Edit Shelf Properties" msgstr "Bücherregal Eigenschaften bearbeiten" -#: cps/templates/shelf.html:16 +#: cps/templates/shelf.html:17 msgid "Arrange books manually" msgstr "Bücher manuell sortieren" -#: cps/templates/shelf.html:17 +#: cps/templates/shelf.html:18 msgid "Disable Change order" msgstr "Manuelles Sortieren deaktivieren" -#: cps/templates/shelf.html:17 +#: cps/templates/shelf.html:18 msgid "Enable Change order" msgstr "Manuelles Sortieren aktivieren" @@ -3033,8 +3145,8 @@ msgid "System Statistics" msgstr "System Statistiken" #: cps/templates/stats.html:33 -msgid "Program Library" -msgstr "Programm Bibliothek" +msgid "Program" +msgstr "Programm" #: cps/templates/stats.html:34 msgid "Installed Version" @@ -3064,6 +3176,18 @@ msgstr "Laufzeit" msgid "Start Time" msgstr "Startzeitpunkt" +#: cps/templates/tasks.html:20 +msgid "Actions" +msgstr "Aktionen" + +#: cps/templates/tasks.html:40 +msgid "This task will be cancelled. Any progress made by this task will be saved." +msgstr "Diese Aufgabe wird abgebrochen. Der Fortschritt wird gespeichert." + +#: cps/templates/tasks.html:41 +msgid "If this is a scheduled task, it will be re-ran during the next scheduled time." +msgstr "Dies ist eine geplante Aufgabe, sie wird zur geplanten Zeit erneut ausgeführt." + #: cps/templates/user_edit.html:20 msgid "Reset user Password" msgstr "Benutzerpasswort zurücksetzen" diff --git a/cps/translations/el/LC_MESSAGES/messages.mo b/cps/translations/el/LC_MESSAGES/messages.mo index d61f1964155df9fc6f122c5594dd99f691c98b5e..2adc4e841ed362d92bad215287ac9f93cf26932e 100644 GIT binary patch delta 9414 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 S*ZG$f?9QxTw(dfJ+y4NZz%Vrc diff --git a/cps/translations/el/LC_MESSAGES/messages.po b/cps/translations/el/LC_MESSAGES/messages.po index 0a4b6419..c8dc392f 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: 2022-04-18 20:01+0200\n" +"POT-Creation-Date: 2022-05-01 13:22+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: Depountis Georgios\n" "Language: el\n" @@ -15,596 +15,621 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.9.1\n" +"Generated-By: Babel 2.8.0\n" -#: cps/about.py:86 +#: cps/about.py:84 msgid "Statistics" msgstr "Στατιστικά" -#: cps/admin.py:141 +#: cps/admin.py:146 msgid "Server restarted, please reload page" msgstr "Ο διακομιστής επανεκκίνησε, παρακαλούμε φόρτωσε ξανά τη σελίδα" -#: cps/admin.py:143 +#: cps/admin.py:148 msgid "Performing shutdown of server, please close window" msgstr "Πραγματοποιείται κλείσιμο του διακομιστή, παρακαλούμε κλείσε το παράθυρο" -#: cps/admin.py:151 +#: cps/admin.py:156 msgid "Reconnect successful" msgstr "Επιτυχής επανασύνδεση" -#: cps/admin.py:154 +#: cps/admin.py:159 msgid "Unknown command" msgstr "Άγνωστη εντολή" -#: cps/admin.py:176 cps/editbooks.py:713 cps/editbooks.py:892 -#: cps/editbooks.py:894 cps/editbooks.py:930 cps/editbooks.py:947 -#: cps/updater.py:608 cps/uploader.py:93 cps/uploader.py:103 +#: cps/admin.py:192 cps/editbooks.py:571 cps/editbooks.py:573 +#: cps/editbooks.py:609 cps/editbooks.py:626 cps/editbooks.py:1233 +#: cps/updater.py:613 cps/uploader.py:87 cps/uploader.py:97 msgid "Unknown" msgstr "ʼΑγνωστο" -#: cps/admin.py:197 +#: cps/admin.py:217 msgid "Admin page" msgstr "Σελίδα διαχειριστή" -#: cps/admin.py:217 +#: cps/admin.py:237 msgid "Basic Configuration" msgstr "Βασική Διαμόρφωση" -#: cps/admin.py:255 +#: cps/admin.py:275 msgid "UI Configuration" msgstr "UI Διαμόρφωση" -#: cps/admin.py:289 cps/templates/admin.html:51 +#: cps/admin.py:309 cps/templates/admin.html:51 #, fuzzy msgid "Edit Users" msgstr "Χρήστης Διαχειριστής" -#: cps/admin.py:333 cps/opds.py:529 cps/templates/grid.html:13 +#: cps/admin.py:353 cps/opds.py:532 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "Όλα" -#: cps/admin.py:360 cps/admin.py:1648 +#: cps/admin.py:380 cps/admin.py:1365 msgid "User not found" msgstr "Δεν βρέθηκε χρήστης" -#: cps/admin.py:374 +#: cps/admin.py:394 msgid "{} users deleted successfully" msgstr "" -#: cps/admin.py:397 cps/templates/config_view_edit.html:133 +#: cps/admin.py:417 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:418 cps/admin.py:424 +#: cps/admin.py:438 cps/admin.py:444 msgid "Malformed request" msgstr "" -#: cps/admin.py:436 cps/admin.py:1526 +#: cps/admin.py:456 cps/admin.py:1962 msgid "Guest Name can't be changed" msgstr "" -#: cps/admin.py:448 +#: cps/admin.py:468 msgid "Guest can't have this role" msgstr "" -#: cps/admin.py:460 cps/admin.py:1484 +#: cps/admin.py:480 cps/admin.py:1920 msgid "No admin user remaining, can't remove admin role" msgstr "Δεν έχει απομείνει χρήστης διαχειριστής, δεν μπορεί να αφαιρεθεί ο ρόλος διαχειριστή" -#: cps/admin.py:464 cps/admin.py:478 +#: cps/admin.py:484 cps/admin.py:498 msgid "Value has to be true or false" msgstr "" -#: cps/admin.py:466 +#: cps/admin.py:486 msgid "Invalid role" msgstr "" -#: cps/admin.py:470 +#: cps/admin.py:490 msgid "Guest can't have this view" msgstr "" -#: cps/admin.py:480 +#: cps/admin.py:500 msgid "Invalid view" msgstr "" -#: cps/admin.py:483 +#: cps/admin.py:503 msgid "Guest's Locale is determined automatically and can't be set" msgstr "" -#: cps/admin.py:487 +#: cps/admin.py:507 msgid "No Valid Locale Given" msgstr "" -#: cps/admin.py:498 +#: cps/admin.py:518 msgid "No Valid Book Language Given" msgstr "" -#: cps/admin.py:500 cps/editbooks.py:1267 +#: cps/admin.py:520 cps/editbooks.py:438 msgid "Parameter not found" msgstr "" -#: cps/admin.py:553 +#: cps/admin.py:557 msgid "Invalid Read Column" msgstr "" -#: cps/admin.py:559 +#: cps/admin.py:563 msgid "Invalid Restricted Column" msgstr "" -#: cps/admin.py:579 cps/admin.py:1355 +#: cps/admin.py:583 cps/admin.py:1791 msgid "Calibre-Web configuration updated" msgstr "Ενημερώθηκε η διαμόρφωση Calibre-Web" -#: cps/admin.py:591 +#: cps/admin.py:595 msgid "Do you really want to delete the Kobo Token?" msgstr "Θέλεις πραγματικά να διαγράψεις τη Μονάδα Kobo;" -#: cps/admin.py:593 +#: cps/admin.py:597 msgid "Do you really want to delete this domain?" msgstr "" -#: cps/admin.py:595 +#: cps/admin.py:599 msgid "Do you really want to delete this user?" msgstr "" -#: cps/admin.py:597 +#: cps/admin.py:601 msgid "Are you sure you want to delete this shelf?" msgstr "Είσαι σίγουρος/η πως θέλεις να διαγράψεις αυτό το ράφι;" -#: cps/admin.py:599 +#: cps/admin.py:603 #, fuzzy msgid "Are you sure you want to change locales of selected user(s)?" msgstr "Είσαι σίγουρος/η πως θέλεις να διαγράψεις αυτό το ράφι;" -#: cps/admin.py:601 +#: cps/admin.py:605 msgid "Are you sure you want to change visible book languages for selected user(s)?" msgstr "" -#: cps/admin.py:603 +#: cps/admin.py:607 msgid "Are you sure you want to change the selected role for the selected user(s)?" msgstr "" -#: cps/admin.py:605 +#: cps/admin.py:609 #, fuzzy msgid "Are you sure you want to change the selected restrictions for the selected user(s)?" msgstr "Είσαι σίγουρος/η πως θέλεις να διαγράψεις αυτό το ράφι;" -#: cps/admin.py:607 +#: cps/admin.py:611 msgid "Are you sure you want to change the selected visibility restrictions for the selected user(s)?" msgstr "" -#: cps/admin.py:610 +#: cps/admin.py:614 #, fuzzy msgid "Are you sure you want to change shelf sync behavior for the selected user(s)?" msgstr "Είσαι σίγουρος/η πως θέλεις να διαγράψεις αυτό το ράφι;" -#: cps/admin.py:612 +#: cps/admin.py:616 #, fuzzy msgid "Are you sure you want to change Calibre library location?" msgstr "Είσαι σίγουρος/η πως θέλεις να κάνεις κλείσιμο;" -#: cps/admin.py:614 +#: cps/admin.py:618 +msgid "Calibre-Web will search for updated Covers and update Cover Thumbnails, this may take a while?" +msgstr "" + +#: cps/admin.py:620 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:764 -msgid "Tag not found" -msgstr "" - -#: cps/admin.py:776 -msgid "Invalid Action" -msgstr "" - -#: cps/admin.py:893 cps/admin.py:899 cps/admin.py:909 cps/admin.py:919 +#: cps/admin.py:862 cps/admin.py:868 cps/admin.py:878 cps/admin.py:888 #: cps/templates/modal_dialogs.html:29 cps/templates/user_table.html:41 #: cps/templates/user_table.html:58 msgid "Deny" msgstr "Απόρριψη" -#: cps/admin.py:895 cps/admin.py:901 cps/admin.py:911 cps/admin.py:921 +#: cps/admin.py:864 cps/admin.py:870 cps/admin.py:880 cps/admin.py:890 #: cps/templates/modal_dialogs.html:28 cps/templates/user_table.html:44 #: cps/templates/user_table.html:61 msgid "Allow" msgstr "Επιτρέπεται" -#: cps/admin.py:936 +#: cps/admin.py:905 msgid "{} sync entries deleted" msgstr "" -#: cps/admin.py:1059 +#: cps/admin.py:953 +msgid "Tag not found" +msgstr "" + +#: cps/admin.py:965 +msgid "Invalid Action" +msgstr "" + +#: cps/admin.py:1080 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "client_secrets.json Δεν Έχει Διαμορφωθεί Για Διαδικτυακή Εφαρμογή" -#: cps/admin.py:1104 +#: cps/admin.py:1125 msgid "Logfile Location is not Valid, Please Enter Correct Path" msgstr "Το Φύλλο Καταγραφής Τοποθεσίας δεν είναι Έγκυρο, Παρακαλούμε Συμπλήρωσε Τη Σωστή Πορεία" -#: cps/admin.py:1110 +#: cps/admin.py:1131 msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgstr "Η Πρόσβαση Φύλλου Καταγραφης Τοποθεσίας δεν είναι έγκυρη, Παρακαλούμε Συμπλήρωσε Τη Σωστή Πορεία" -#: cps/admin.py:1140 +#: cps/admin.py:1161 msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgstr "Παρακαλούμε Συμπλήρωσε ένα Πάροχο LDAP, Θύρα, DN και Αντικείμενο Αναγνώρισης Χρήστη" -#: cps/admin.py:1146 +#: cps/admin.py:1167 #, fuzzy msgid "Please Enter a LDAP Service Account and Password" msgstr "Παρακαλούμε συμπλήρωσε ένα έγκυρο όνομα χρήστη για επαναφορά του κωδικού" -#: cps/admin.py:1149 +#: cps/admin.py:1170 msgid "Please Enter a LDAP Service Account" msgstr "" -#: cps/admin.py:1154 +#: cps/admin.py:1175 #, python-format msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgstr "Το Αντικείμενο Φίλτρου Ομάδας LDAP Πρέπει να Έχει Μια \"%s\" Αναγνώριση Μορφής" -#: cps/admin.py:1156 +#: cps/admin.py:1177 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "Το Αντικείμενο Φίλτρου Ομάδας LDAP Έχει Παρενθέσεις Που Δεν Ταιριάζουν" -#: cps/admin.py:1160 +#: cps/admin.py:1181 #, python-format msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgstr "Το Αντικείμενο Φίλτρου Χρήστη LDAP πρέπει να Έχει Μια \"%s\" Αναγνώριση Μορφής" -#: cps/admin.py:1162 +#: cps/admin.py:1183 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "Το Αντικείμενο Φίλτρου Χρήστη LDAP Έχει Παρενθέσεις Που Δεν Ταιριάζουν" -#: cps/admin.py:1169 +#: cps/admin.py:1190 #, python-format msgid "LDAP Member User Filter needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1171 +#: cps/admin.py:1192 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1178 +#: cps/admin.py:1199 msgid "LDAP CACertificate, Certificate or Key Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1223 cps/admin.py:1339 cps/admin.py:1437 cps/admin.py:1554 -#: cps/admin.py:1623 cps/editbooks.py:678 cps/editbooks.py:882 -#: cps/editbooks.py:1130 cps/shelf.py:100 cps/shelf.py:160 cps/shelf.py:203 -#: cps/shelf.py:278 cps/shelf.py:343 cps/shelf.py:380 cps/shelf.py:456 -#: cps/web.py:1742 +#: cps/admin.py:1230 cps/admin.py:1852 +msgid "Add new user" +msgstr "Προσθήκη νέου χρήστη" + +#: cps/admin.py:1239 cps/templates/admin.html:100 +msgid "Edit E-mail Server Settings" +msgstr "Επεξεργασία Ρυθμίσεων E-mail Διακομιστή" + +#: cps/admin.py:1258 +msgid "Gmail Account Verification Successful" +msgstr "" + +#: cps/admin.py:1277 cps/admin.py:1658 cps/admin.py:1775 cps/admin.py:1873 +#: cps/admin.py:1990 cps/editbooks.py:227 cps/editbooks.py:301 +#: cps/editbooks.py:1196 cps/shelf.py:82 cps/shelf.py:142 cps/shelf.py:185 +#: cps/shelf.py:235 cps/shelf.py:272 cps/shelf.py:343 cps/shelf.py:457 +#: cps/tasks/convert.py:136 cps/web.py:1413 #, python-format msgid "Database error: %(error)s." msgstr "Σφάλμα βάσης δεδομένων: %(error)s." -#: cps/admin.py:1235 -msgid "DB Location is not Valid, Please Enter Correct Path" -msgstr "Η Τοποθεσία DB δεν είναι Έγκυρη, Παρακαλούμε Συμπληρώστε Τη Σωστή Πορεία" - -#: cps/admin.py:1253 -msgid "DB is not Writeable" -msgstr "Η DB δεν μπορεί να Γραφτεί" - -#: cps/admin.py:1266 -msgid "Keyfile Location is not Valid, Please Enter Correct Path" -msgstr "Το Αρχειο Κλειδί Τοποθεσίας δεν είναι Έγκυρο, Παρακαλούμε Συμπληρώστε Τη Σωστή Πορεία" - -#: cps/admin.py:1270 -msgid "Certfile Location is not Valid, Please Enter Correct Path" -msgstr "Η Τοποθεσία Certfile δεν είναι Έγκυρη, Παρακαλούμε Συμπληρώστε Τη Σωστή Πορεία" - -#: cps/admin.py:1378 -#, fuzzy -msgid "Database Settings updated" -msgstr "Ενημερώθηκαν οι ρυθμίσεις E-mail διακομιστή" - -#: cps/admin.py:1386 -#, fuzzy -msgid "Database Configuration" -msgstr "Διαμόρφωση Λειτουργίας" - -#: cps/admin.py:1402 cps/web.py:1557 -msgid "Please fill out all fields!" -msgstr "Παρακαλούμε συμπλήρωσε όλα τα πεδία!" - -#: cps/admin.py:1410 -msgid "E-mail is not from valid domain" -msgstr "Το E-mail δεν είναι από έγκυρο domain" - -#: cps/admin.py:1416 cps/admin.py:1576 -msgid "Add new user" -msgstr "Προσθήκη νέου χρήστη" - -#: cps/admin.py:1427 -#, python-format -msgid "User '%(user)s' created" -msgstr "Χρήστης/ες '%(user)s' δημιουργήθηκαν" - -#: cps/admin.py:1433 -#, fuzzy -msgid "Found an existing account for this e-mail address or name." -msgstr "Βρέθηκε ένας ήδη υπάρχον λογαριασμός για αυτή τη διεύθυνση e-mail ή όνομα χρήστη." - -#: cps/admin.py:1463 -#, python-format -msgid "User '%(nick)s' deleted" -msgstr "Χρήστης/ες '%(nick)s' διαγράφηκαν" - -#: cps/admin.py:1465 cps/admin.py:1466 -msgid "Can't delete Guest User" -msgstr "" - -#: cps/admin.py:1469 -msgid "No admin user remaining, can't delete user" -msgstr "Δεν έχει απομείνει χρήστης διαχειριστής, δεν μπορεί να διαγραφεί ο χρήστης" - -#: cps/admin.py:1542 cps/admin.py:1667 -#, python-format -msgid "Edit User %(nick)s" -msgstr "Επεξεργασία χρήστη %(nick)s" - -#: cps/admin.py:1546 -#, python-format -msgid "User '%(nick)s' updated" -msgstr "Χρήστης/ες '%(nick)s' ενημερώθηκαν" - -#: cps/admin.py:1550 cps/admin.py:1682 cps/web.py:1582 cps/web.py:1642 -msgid "An unknown error occurred. Please try again later." -msgstr "Προέκυψε ένα άγνωστο σφάλμα. Παρακαλούμε δοκίμασε ξανά αργότερα." - -#: cps/admin.py:1585 cps/templates/admin.html:100 -msgid "Edit E-mail Server Settings" -msgstr "Επεξεργασία Ρυθμίσεων E-mail Διακομιστή" - -#: cps/admin.py:1604 -msgid "Gmail Account Verification Successful" -msgstr "" - -#: cps/admin.py:1630 +#: cps/admin.py:1284 #, python-format msgid "Test e-mail queued for sending to %(email)s, please check Tasks for result" msgstr "" -#: cps/admin.py:1633 +#: cps/admin.py:1287 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "Παρουσιάστηκε σφάλμα κατά την αποστολή του δοκιμαστικού e-mail:% (res)s" -#: cps/admin.py:1635 +#: cps/admin.py:1289 msgid "Please configure your e-mail address first..." msgstr "Παρακαλούμε ρύθμισε πρώτα τη διεύθυνση e-mail σου..." -#: cps/admin.py:1637 +#: cps/admin.py:1291 msgid "E-mail server settings updated" msgstr "Ενημερώθηκαν οι ρυθμίσεις E-mail διακομιστή" -#: cps/admin.py:1679 +#: cps/admin.py:1314 cps/templates/admin.html:191 +msgid "Edit Scheduled Tasks Settings" +msgstr "" + +#: cps/admin.py:1326 +msgid "Invalid start time for task specified" +msgstr "" + +#: cps/admin.py:1331 +msgid "Invalid duration for task specified" +msgstr "" + +#: cps/admin.py:1340 +msgid "Scheduled tasks settings updated" +msgstr "" + +#: cps/admin.py:1350 cps/admin.py:1399 cps/admin.py:1986 cps/web.py:1254 +#: cps/web.py:1315 +msgid "An unknown error occurred. Please try again later." +msgstr "Προέκυψε ένα άγνωστο σφάλμα. Παρακαλούμε δοκίμασε ξανά αργότερα." + +#: cps/admin.py:1354 +msgid "Settings DB is not Writeable" +msgstr "" + +#: cps/admin.py:1384 cps/admin.py:1978 +#, python-format +msgid "Edit User %(nick)s" +msgstr "Επεξεργασία χρήστη %(nick)s" + +#: cps/admin.py:1396 #, python-format msgid "Password for user %(user)s reset" msgstr "Κωδικός για επαναφορά %(user) χρήστη/ών" -#: cps/admin.py:1685 cps/web.py:1522 +#: cps/admin.py:1402 cps/web.py:1194 msgid "Please configure the SMTP mail settings first..." msgstr "Παρακαλούμε διαμόρφωσε πρώτα τις ρυθμίσεις ταχυδρομείου SMTP..." -#: cps/admin.py:1696 +#: cps/admin.py:1413 msgid "Logfile viewer" msgstr "Προβολέας αρχείου φύλλου καταγραφής" -#: cps/admin.py:1762 +#: cps/admin.py:1479 msgid "Requesting update package" msgstr "Αίτημα πακέτου ενημέρωσης" -#: cps/admin.py:1763 +#: cps/admin.py:1480 msgid "Downloading update package" msgstr "Κατεβάζει πακέτο ενημέρωσης" -#: cps/admin.py:1764 +#: cps/admin.py:1481 msgid "Unzipping update package" msgstr "Ανοίγει πακέτο ενημέρωσης" -#: cps/admin.py:1765 +#: cps/admin.py:1482 msgid "Replacing files" msgstr "Αντικατάσταση αρχείων" -#: cps/admin.py:1766 +#: cps/admin.py:1483 msgid "Database connections are closed" msgstr "Οι συνδέσεις βάσης δεδομένων είναι κλειστές" -#: cps/admin.py:1767 +#: cps/admin.py:1484 msgid "Stopping server" msgstr "Σταματάει το διακομιστή" -#: cps/admin.py:1768 +#: cps/admin.py:1485 msgid "Update finished, please press okay and reload page" msgstr "Η ενημέρωση τελειώσε, παρακαλούμε πιέστε το εντάξει και φορτώστε ξανά τη σελίδα" -#: cps/admin.py:1769 cps/admin.py:1770 cps/admin.py:1771 cps/admin.py:1772 -#: cps/admin.py:1773 cps/admin.py:1774 +#: cps/admin.py:1486 cps/admin.py:1487 cps/admin.py:1488 cps/admin.py:1489 +#: cps/admin.py:1490 cps/admin.py:1491 msgid "Update failed:" msgstr "Η ενημέρωση απέτυχε:" -#: cps/admin.py:1769 cps/updater.py:384 cps/updater.py:619 cps/updater.py:621 +#: cps/admin.py:1486 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 msgid "HTTP Error" msgstr "HTTP Σφάλμα" -#: cps/admin.py:1770 cps/updater.py:386 cps/updater.py:623 +#: cps/admin.py:1487 cps/updater.py:391 cps/updater.py:628 msgid "Connection error" msgstr "Σφάλμα σύνδεσης" -#: cps/admin.py:1771 cps/updater.py:388 cps/updater.py:625 +#: cps/admin.py:1488 cps/updater.py:393 cps/updater.py:630 msgid "Timeout while establishing connection" msgstr "Τελείωσε ο χρόνος κατά την προσπάθεια δημιουργίας σύνδεσης" -#: cps/admin.py:1772 cps/updater.py:390 cps/updater.py:627 +#: cps/admin.py:1489 cps/updater.py:395 cps/updater.py:632 msgid "General error" msgstr "Γενικό σφάλμα" -#: cps/admin.py:1773 +#: cps/admin.py:1490 #, fuzzy msgid "Update file could not be saved in temp dir" msgstr "Το Αρχείο Ενημέρωσης Δεν Μπόρεσε Να Αποθηκευτεί σε" -#: cps/admin.py:1774 +#: cps/admin.py:1491 msgid "Files could not be replaced during update" msgstr "" -#: cps/admin.py:1798 +#: cps/admin.py:1515 #, fuzzy msgid "Failed to extract at least One LDAP User" msgstr "Αποτυχία Δημιουργίας Τουλάχιστον Ενός Χρήστη LDAP" -#: cps/admin.py:1843 +#: cps/admin.py:1560 msgid "Failed to Create at Least One LDAP User" msgstr "Αποτυχία Δημιουργίας Τουλάχιστον Ενός Χρήστη LDAP" -#: cps/admin.py:1856 +#: cps/admin.py:1573 #, python-format msgid "Error: %(ldaperror)s" msgstr "Σφάλμα: %(ldaperror)s" -#: cps/admin.py:1860 +#: cps/admin.py:1577 msgid "Error: No user returned in response of LDAP server" msgstr "Σφάλμα: Δεν επιστράφηκε χρήστης σε απάντηση του διακομιστή LDAP" -#: cps/admin.py:1893 +#: cps/admin.py:1610 msgid "At Least One LDAP User Not Found in Database" msgstr "Τουλάχιστον Ένας Χρήστης LDAP Δεν Βρέθηκε Στη Βάση Δεδομένων" -#: cps/admin.py:1895 +#: cps/admin.py:1612 msgid "{} User Successfully Imported" msgstr "" -#: cps/converter.py:30 +#: cps/admin.py:1670 +msgid "DB Location is not Valid, Please Enter Correct Path" +msgstr "Η Τοποθεσία DB δεν είναι Έγκυρη, Παρακαλούμε Συμπληρώστε Τη Σωστή Πορεία" + +#: cps/admin.py:1689 +msgid "DB is not Writeable" +msgstr "Η DB δεν μπορεί να Γραφτεί" + +#: cps/admin.py:1702 +msgid "Keyfile Location is not Valid, Please Enter Correct Path" +msgstr "Το Αρχειο Κλειδί Τοποθεσίας δεν είναι Έγκυρο, Παρακαλούμε Συμπληρώστε Τη Σωστή Πορεία" + +#: cps/admin.py:1706 +msgid "Certfile Location is not Valid, Please Enter Correct Path" +msgstr "Η Τοποθεσία Certfile δεν είναι Έγκυρη, Παρακαλούμε Συμπληρώστε Τη Σωστή Πορεία" + +#: cps/admin.py:1814 +#, fuzzy +msgid "Database Settings updated" +msgstr "Ενημερώθηκαν οι ρυθμίσεις E-mail διακομιστή" + +#: cps/admin.py:1822 +#, fuzzy +msgid "Database Configuration" +msgstr "Διαμόρφωση Λειτουργίας" + +#: cps/admin.py:1838 cps/web.py:1229 +msgid "Please fill out all fields!" +msgstr "Παρακαλούμε συμπλήρωσε όλα τα πεδία!" + +#: cps/admin.py:1846 +msgid "E-mail is not from valid domain" +msgstr "Το E-mail δεν είναι από έγκυρο domain" + +#: cps/admin.py:1863 +#, python-format +msgid "User '%(user)s' created" +msgstr "Χρήστης/ες '%(user)s' δημιουργήθηκαν" + +#: cps/admin.py:1869 +#, fuzzy +msgid "Found an existing account for this e-mail address or name." +msgstr "Βρέθηκε ένας ήδη υπάρχον λογαριασμός για αυτή τη διεύθυνση e-mail ή όνομα χρήστη." + +#: cps/admin.py:1899 +#, python-format +msgid "User '%(nick)s' deleted" +msgstr "Χρήστης/ες '%(nick)s' διαγράφηκαν" + +#: cps/admin.py:1901 cps/admin.py:1902 +msgid "Can't delete Guest User" +msgstr "" + +#: cps/admin.py:1905 +msgid "No admin user remaining, can't delete user" +msgstr "Δεν έχει απομείνει χρήστης διαχειριστής, δεν μπορεί να διαγραφεί ο χρήστης" + +#: cps/admin.py:1982 +#, python-format +msgid "User '%(nick)s' updated" +msgstr "Χρήστης/ες '%(nick)s' ενημερώθηκαν" + +#: cps/converter.py:31 msgid "not installed" msgstr "δεν εγκαταστάθηκε" -#: cps/converter.py:31 +#: cps/converter.py:32 msgid "Execution permissions missing" msgstr "Λείπουν άδειες εκτέλεσης" -#: cps/db.py:674 cps/web.py:710 cps/web.py:1222 +#: cps/db.py:681 cps/search.py:134 cps/web.py:720 #, python-format msgid "Custom Column No.%(column)d is not existing in calibre database" msgstr "Η ειδικά προσαρμοσμένη στήλη No.%(column)d δεν υπάρχει στο επίπεδο βάσης δεδομένων" -#: cps/db.py:917 cps/templates/config_edit.html:204 +#: cps/db.py:924 cps/templates/config_edit.html:204 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 -#: cps/web.py:551 cps/web.py:585 cps/web.py:646 cps/web.py:671 cps/web.py:1003 -#: cps/web.py:1032 cps/web.py:1066 cps/web.py:1093 cps/web.py:1132 +#: cps/web.py:549 cps/web.py:583 cps/web.py:656 cps/web.py:681 cps/web.py:962 +#: cps/web.py:992 cps/web.py:1027 cps/web.py:1055 cps/web.py:1094 msgid "None" msgstr "Κανένα" -#: cps/editbooks.py:295 cps/editbooks.py:297 -msgid "Book Format Successfully Deleted" -msgstr "Η μορφή βιβλίου Διαγράφηκε Επιτυχώς" - -#: cps/editbooks.py:304 cps/editbooks.py:306 -msgid "Book Successfully Deleted" -msgstr "Το Βιβλίο Διαγράφηκε Επιτυχώς" - -#: cps/editbooks.py:358 -msgid "You are missing permissions to delete books" -msgstr "" - -#: cps/editbooks.py:373 cps/editbooks.py:765 cps/web.py:518 cps/web.py:1783 -#: cps/web.py:1825 cps/web.py:1870 +#: cps/editbooks.py:109 cps/editbooks.py:890 cps/web.py:516 cps/web.py:1454 +#: cps/web.py:1496 cps/web.py:1541 msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible" msgstr "Oυπς! Ο επιλεγμένος τίτλος βιβλίου δεν είναι διαθέσιμος. Το αρχείο δεν υπάρχει ή δεν είναι προσβάσιμο" -#: cps/editbooks.py:408 -msgid "edit metadata" -msgstr "επεξεργασία μεταδεδομένων" - -#: cps/editbooks.py:457 -#, python-format -msgid "%(seriesindex)s is not a valid number, skipping" -msgstr "" - -#: cps/editbooks.py:493 cps/editbooks.py:1001 -#, fuzzy, python-format -msgid "'%(langname)s' is not a valid language" -msgstr "%(langname)s δεν είναι μια έγκυρη γλώσσα" - -#: cps/editbooks.py:634 -msgid "User has no rights to upload additional file formats" -msgstr "" - -#: cps/editbooks.py:639 cps/editbooks.py:1029 -#, python-format -msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" -msgstr "Η επέκταση αρχείου '%(ext)s' δεν επιτρέπεται να ανέβει σε αυτό το διακομιστή" - -#: cps/editbooks.py:643 cps/editbooks.py:1033 -msgid "File to be uploaded must have an extension" -msgstr "Το αρχείο προς ανέβασμα πρέπει να έχει μια επέκταση" - -#: cps/editbooks.py:655 -#, python-format -msgid "Failed to create path %(path)s (Permission denied)." -msgstr "Αποτυχεία δημιουργίας πορείας %(path)s (Η άδεια απορρήφθηκε)." - -#: cps/editbooks.py:660 -#, python-format -msgid "Failed to store file %(file)s." -msgstr "Αποτυχία αποθήκευσης αρχείου %(file)s." - -#: cps/editbooks.py:683 -#, python-format -msgid "File format %(ext)s added to %(book)s" -msgstr "Μορφή αρχείου %(ext)s προστέθηκε σε %(book)s" - -#: cps/editbooks.py:697 cps/editbooks.py:809 +#: cps/editbooks.py:153 cps/editbooks.py:1216 msgid "User has no rights to upload cover" msgstr "" -#: cps/editbooks.py:828 +#: cps/editbooks.py:173 cps/editbooks.py:711 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "Τα αναγνωριστικά δεν έχουν Διάκριση Πεζών-Κεφαλαίων Γραμμάτων, Αντικατάσταση Παλιού Αναγνωριστικού" -#: cps/editbooks.py:869 +#: cps/editbooks.py:214 msgid "Metadata successfully updated" msgstr "Τα μεταδεδομένα ενημερώθηκαν επιτυχώς" -#: cps/editbooks.py:887 +#: cps/editbooks.py:232 msgid "Error editing book: {}" msgstr "" -#: cps/editbooks.py:951 -msgid "Uploaded book probably exists in the library, consider to change before upload new: " -msgstr "Το βιβλίο που ανέβηκε πιθανόν να υπάρχει στη βιβλιοθήκη, σκέψου να το αλλάξεις πριν ανεβάσεις νέο: " - -#: cps/editbooks.py:1041 -#, python-format -msgid "File %(filename)s could not saved to temp dir" -msgstr "Το αρχείο %(filename)s δεν μπόρεσε να αποθηκευτεί σε temp dir" - -#: cps/editbooks.py:1061 -#, python-format -msgid "Failed to Move Cover File %(file)s: %(error)s" -msgstr "Αποτυχία Μετακίνησης Αρχείου Φόντου %(file)s: %(error)s" - -#: cps/editbooks.py:1117 +#: cps/editbooks.py:287 #, python-format msgid "File %(file)s uploaded" msgstr "Το αρχείο %(file)s ανέβηκε" -#: cps/editbooks.py:1143 +#: cps/editbooks.py:314 msgid "Source or destination format for conversion missing" msgstr "Η δομή πηγής ή προορισμού για μετατροπή λείπει" -#: cps/editbooks.py:1151 +#: cps/editbooks.py:322 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "Το βιβλίο είναι σε σειρά επιτυχώς για μετατροπή σε %(book_format)s" -#: cps/editbooks.py:1155 +#: cps/editbooks.py:326 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "Υπήρξε ένα σφάλμα στη μετατροπή αυτού του βιβλίου: %(res)s" +#: cps/editbooks.py:630 +msgid "Uploaded book probably exists in the library, consider to change before upload new: " +msgstr "Το βιβλίο που ανέβηκε πιθανόν να υπάρχει στη βιβλιοθήκη, σκέψου να το αλλάξεις πριν ανεβάσεις νέο: " + +#: cps/editbooks.py:685 cps/editbooks.py:1010 +#, fuzzy, python-format +msgid "'%(langname)s' is not a valid language" +msgstr "%(langname)s δεν είναι μια έγκυρη γλώσσα" + +#: cps/editbooks.py:723 cps/editbooks.py:1157 +#, python-format +msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" +msgstr "Η επέκταση αρχείου '%(ext)s' δεν επιτρέπεται να ανέβει σε αυτό το διακομιστή" + +#: cps/editbooks.py:727 cps/editbooks.py:1161 +msgid "File to be uploaded must have an extension" +msgstr "Το αρχείο προς ανέβασμα πρέπει να έχει μια επέκταση" + +#: cps/editbooks.py:735 +#, python-format +msgid "File %(filename)s could not saved to temp dir" +msgstr "Το αρχείο %(filename)s δεν μπόρεσε να αποθηκευτεί σε temp dir" + +#: cps/editbooks.py:755 +#, python-format +msgid "Failed to Move Cover File %(file)s: %(error)s" +msgstr "Αποτυχία Μετακίνησης Αρχείου Φόντου %(file)s: %(error)s" + +#: cps/editbooks.py:812 cps/editbooks.py:814 +msgid "Book Format Successfully Deleted" +msgstr "Η μορφή βιβλίου Διαγράφηκε Επιτυχώς" + +#: cps/editbooks.py:821 cps/editbooks.py:823 +msgid "Book Successfully Deleted" +msgstr "Το Βιβλίο Διαγράφηκε Επιτυχώς" + +#: cps/editbooks.py:875 +msgid "You are missing permissions to delete books" +msgstr "" + +#: cps/editbooks.py:925 +msgid "edit metadata" +msgstr "επεξεργασία μεταδεδομένων" + +#: cps/editbooks.py:974 +#, python-format +msgid "%(seriesindex)s is not a valid number, skipping" +msgstr "" + +#: cps/editbooks.py:1152 +msgid "User has no rights to upload additional file formats" +msgstr "" + +#: cps/editbooks.py:1173 +#, python-format +msgid "Failed to create path %(path)s (Permission denied)." +msgstr "Αποτυχεία δημιουργίας πορείας %(path)s (Η άδεια απορρήφθηκε)." + +#: cps/editbooks.py:1178 +#, python-format +msgid "Failed to store file %(file)s." +msgstr "Αποτυχία αποθήκευσης αρχείου %(file)s." + +#: cps/editbooks.py:1201 +#, python-format +msgid "File format %(ext)s added to %(book)s" +msgstr "Μορφή αρχείου %(ext)s προστέθηκε σε %(book)s" + #: cps/gdrive.py:58 msgid "Google Drive setup not completed, try to deactivate and activate Google Drive again" msgstr "Η ρύθμιση του Google Drive δεν ολοκληρώθηκε, προσπάθησε να απενεργοποιήσεις και να ενεργοποιήσεις ξανά το Google Drive" @@ -613,27 +638,27 @@ msgstr "Η ρύθμιση του Google Drive δεν ολοκληρώθηκε, msgid "Callback domain is not verified, please follow steps to verify domain in google developer console" msgstr "Η ανάκληση ονόματος δεν έχει επαληθευτεί, παρακαλούμε ακολούθησε τα βήματα για την επαλήθευση ονόματος στην κονσόλα προγραμματιστή google" -#: cps/helper.py:81 +#: cps/helper.py:80 #, python-format msgid "%(format)s format not found for book id: %(book)d" msgstr "%(format)s η δομή δεν βρέθηκε για την ταυτότητα βιβλίου: %(book)d" -#: cps/helper.py:87 cps/tasks/convert.py:75 +#: cps/helper.py:86 cps/tasks/convert.py:75 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "%(format)s δεν βρέθηκε στο Google Drive: %(fn)s" -#: cps/helper.py:92 +#: cps/helper.py:91 #, python-format msgid "%(format)s not found: %(fn)s" msgstr "%(format)s δεν βρέθηκε: %(fn)s" -#: cps/helper.py:97 cps/helper.py:221 cps/templates/detail.html:41 -#: cps/templates/detail.html:45 +#: cps/helper.py:96 cps/helper.py:221 cps/templates/detail.html:42 +#: cps/templates/detail.html:46 msgid "Send to Kindle" msgstr "Αποστολή στο Kindle" -#: cps/helper.py:98 cps/helper.py:115 cps/helper.py:223 +#: cps/helper.py:97 cps/helper.py:115 cps/helper.py:223 msgid "This e-mail has been sent via Calibre-Web." msgstr "Αυτό το e-mail έχει σταλεί μέσω Calibre-Web." @@ -673,132 +698,112 @@ msgstr "Αποστολή στο Kindle" msgid "The requested file could not be read. Maybe wrong permissions?" msgstr "Το αρχείου που χητήθηκε δεν μπορεί να διαβαστεί. Μπορεί να υπάρχουν λαθασμένες άδειες;" -#: cps/helper.py:353 +#: cps/helper.py:341 msgid "Read status could not set: {}" msgstr "" -#: cps/helper.py:376 +#: cps/helper.py:364 #, python-format msgid "Deleting bookfolder for book %(id)s failed, path has subfolders: %(path)s" msgstr "Η διαγραφή φακέλου βιβλίου για το βιβλίο %(id)s απέτυχε, η πορεία έχει υπό-φακέλους: %(path)s" -#: cps/helper.py:382 +#: cps/helper.py:370 #, python-format msgid "Deleting book %(id)s failed: %(message)s" msgstr "Η διαγραφή βιβλίου %(id)s απέτυχε: %(message)s" -#: cps/helper.py:393 +#: cps/helper.py:381 #, 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:458 +#: cps/helper.py:446 #, 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:529 cps/helper.py:538 +#: cps/helper.py:518 cps/helper.py:527 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "Το αρχείο %(file)s δεν βρέθηκε στο Google Drive" -#: cps/helper.py:572 +#: cps/helper.py:561 #, 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:592 +#: cps/helper.py:581 msgid "Error in rename file in path: {}" msgstr "" -#: cps/helper.py:610 +#: cps/helper.py:599 #, python-format msgid "Book path %(path)s not found on Google Drive" msgstr "Η πορεία βιβλίου %(path)s δεν βρέθηκε στο Google Drive" -#: cps/helper.py:651 cps/web.py:1737 +#: cps/helper.py:640 cps/web.py:1408 #, fuzzy msgid "Found an existing account for this e-mail address" msgstr "Βρέθηκε ένας ήδη υπάρχον λογαριασμός για αυτή τη διεύθυνση e-mail." -#: cps/helper.py:659 +#: cps/helper.py:648 msgid "This username is already taken" msgstr "Αυτό το όνομα χρήστη έχει ήδη παρθεί" -#: cps/helper.py:669 +#: cps/helper.py:658 msgid "Invalid e-mail address format" msgstr "" -#: cps/helper.py:754 -msgid "Python modul 'advocate' is not installed but is needed for cover downloads" +#: cps/helper.py:808 +msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "" -#: cps/helper.py:767 +#: cps/helper.py:818 msgid "Error Downloading Cover" msgstr "Σφάλμα Κατεβάσματος Φόντου" -#: cps/helper.py:770 +#: cps/helper.py:821 msgid "Cover Format Error" msgstr "Σφάλμα Μορφής Φόντου" -#: cps/helper.py:773 +#: cps/helper.py:824 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "" -#: cps/helper.py:783 +#: cps/helper.py:834 msgid "Failed to create path for cover" msgstr "Αποτυχία δημιουργίας πορείας για φόντο" -#: cps/helper.py:799 +#: cps/helper.py:850 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "Το αρχείο φόντου δεν είναι ένα έγκυρο αρχείο εικόνας, ή δεν μπόρεσε να αποθηκευτεί" -#: cps/helper.py:810 +#: cps/helper.py:861 msgid "Only jpg/jpeg/png/webp/bmp files are supported as coverfile" msgstr "" -#: cps/helper.py:822 +#: cps/helper.py:873 msgid "Invalid cover file content" msgstr "" -#: cps/helper.py:826 +#: cps/helper.py:877 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "Μόνο jpg/jpeg αρχεία υποστηρίζονται ως αρχεία φόντου" -#: cps/helper.py:878 +#: cps/helper.py:929 msgid "Unrar binary file not found" msgstr "Δεν βρέθηκε δυαδικό αρχείο Unrar" -#: cps/helper.py:889 +#: cps/helper.py:940 msgid "Error excecuting UnRar" msgstr "Σφάλμα εκτέλεσης UnRar" -#: cps/helper.py:937 -msgid "Waiting" -msgstr "Αναμονή" - -#: cps/helper.py:939 -msgid "Failed" -msgstr "Απέτυχε" - -#: cps/helper.py:941 -msgid "Started" -msgstr "Ξεκίνησε" - -#: cps/helper.py:943 -msgid "Finished" -msgstr "Τελείωσε" - -#: cps/helper.py:945 -msgid "Unknown Status" -msgstr "ʼΑγνωστη κατάσταση" - -#: cps/kobo_auth.py:128 +#: cps/kobo_auth.py:89 #, fuzzy msgid "Please access Calibre-Web from non localhost to get valid api_endpoint for kobo device" msgstr "Παρακαλούμε λάβε πρόσβαση στο calibre-web από ένα μη τοπικό εξηπηρετητή για να λάβεις μια έγκυρη api_endpoint για συσκευή kobo" -#: cps/kobo_auth.py:154 +#: cps/kobo_auth.py:115 msgid "Kobo Setup" msgstr "Καθορισμός Kobo" @@ -807,7 +812,7 @@ msgstr "Καθορισμός Kobo" msgid "Register with %(provider)s" msgstr "Εγγραφή με %(provider)s" -#: cps/oauth_bb.py:138 cps/remotelogin.py:130 cps/web.py:1613 +#: cps/oauth_bb.py:138 cps/remotelogin.py:130 cps/web.py:1286 #, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "τώρα έχεις συνδεθεί ως: '%(nickname)s'" @@ -868,12 +873,12 @@ msgstr "Google Oauth σφάλμα, παρακαλούμε δοκίμασε ξα msgid "Google Oauth error: {}" msgstr "" -#: cps/opds.py:298 +#: cps/opds.py:287 msgid "{} Stars" msgstr "" -#: cps/remotelogin.py:62 cps/templates/layout.html:84 -#: cps/templates/login.html:4 cps/templates/login.html:21 cps/web.py:1662 +#: cps/remotelogin.py:62 cps/templates/layout.html:85 +#: cps/templates/login.html:4 cps/templates/login.html:21 cps/web.py:1335 msgid "Login" msgstr "Σύνδεση" @@ -889,456 +894,489 @@ msgstr "Η μάρκα έχει λήξει" msgid "Success! Please return to your device" msgstr "Επιτυχία! Παρακαλούμε επέστρεψε στη συσκευή σου" -#: cps/render_template.py:41 cps/web.py:407 +#: cps/render_template.py:40 cps/web.py:405 msgid "Books" msgstr "Βιβλία" -#: cps/render_template.py:43 +#: cps/render_template.py:42 msgid "Show recent books" msgstr "Προβολή πρόσφατων βιβλίων" -#: cps/render_template.py:44 cps/templates/index.xml:25 +#: cps/render_template.py:43 cps/templates/index.xml:25 msgid "Hot Books" msgstr "Βιβλία στη Μόδα" -#: cps/render_template.py:46 +#: cps/render_template.py:45 msgid "Show Hot Books" msgstr "Προβολή Βιβλίων στη Μόδα" -#: cps/render_template.py:48 cps/render_template.py:53 +#: cps/render_template.py:47 cps/render_template.py:52 msgid "Downloaded Books" msgstr "Κατεβασμένα Βιβλία" -#: cps/render_template.py:50 cps/render_template.py:55 +#: cps/render_template.py:49 cps/render_template.py:54 #: cps/templates/user_table.html:167 msgid "Show Downloaded Books" msgstr "Προβολή Κατεβασμένων Βιβλίων" -#: cps/render_template.py:58 cps/templates/index.xml:32 cps/web.py:422 +#: cps/render_template.py:57 cps/templates/index.xml:32 cps/web.py:420 msgid "Top Rated Books" msgstr "Βιβλία με Κορυφαία Αξιολόγηση" -#: cps/render_template.py:60 cps/templates/user_table.html:161 +#: cps/render_template.py:59 cps/templates/user_table.html:161 msgid "Show Top Rated Books" msgstr "Προβολή Βιβλίων με Κορυφαία Αξιολόγηση" -#: cps/render_template.py:61 cps/templates/index.xml:54 -#: cps/templates/index.xml:58 cps/web.py:729 +#: cps/render_template.py:60 cps/templates/index.xml:54 +#: cps/templates/index.xml:58 cps/web.py:739 msgid "Read Books" msgstr "Βιβλία που Διαβάστηκαν" -#: cps/render_template.py:63 +#: cps/render_template.py:62 msgid "Show read and unread" msgstr "Προβολή διαβασμένων και αδιάβαστων" -#: cps/render_template.py:65 cps/templates/index.xml:61 -#: cps/templates/index.xml:65 cps/web.py:732 +#: cps/render_template.py:64 cps/templates/index.xml:61 +#: cps/templates/index.xml:65 cps/web.py:742 msgid "Unread Books" msgstr "Βιβλία που δεν Διαβάστηκαν" -#: cps/render_template.py:67 +#: cps/render_template.py:66 msgid "Show unread" msgstr "Προβολή αδιάβαστων" -#: cps/render_template.py:68 +#: cps/render_template.py:67 msgid "Discover" msgstr "Ανακάλυψε" -#: cps/render_template.py:70 cps/templates/index.xml:50 +#: cps/render_template.py:69 cps/templates/index.xml:50 #: cps/templates/user_table.html:162 msgid "Show Random Books" msgstr "Προβολή Τυχαίων Βιβλίων" -#: cps/render_template.py:71 cps/templates/book_table.html:67 -#: cps/templates/index.xml:83 cps/web.py:1135 +#: cps/render_template.py:70 cps/templates/book_table.html:67 +#: cps/templates/index.xml:83 cps/web.py:1098 msgid "Categories" msgstr "Κατηγορίες" -#: cps/render_template.py:73 cps/templates/user_table.html:158 +#: cps/render_template.py:72 cps/templates/user_table.html:158 msgid "Show category selection" msgstr "Προβολή επιλογών κατηγορίας" -#: cps/render_template.py:74 cps/templates/book_edit.html:90 +#: cps/render_template.py:73 cps/templates/book_edit.html:91 #: cps/templates/book_table.html:68 cps/templates/index.xml:90 -#: cps/templates/search_form.html:69 cps/web.py:1034 cps/web.py:1041 +#: cps/templates/search_form.html:69 cps/web.py:995 cps/web.py:1002 msgid "Series" msgstr "Σειρές" -#: cps/render_template.py:76 cps/templates/user_table.html:157 +#: cps/render_template.py:75 cps/templates/user_table.html:157 msgid "Show series selection" msgstr "Προβολή επιλογών σειράς" -#: cps/render_template.py:77 cps/templates/book_table.html:66 +#: cps/render_template.py:76 cps/templates/book_table.html:66 #: cps/templates/index.xml:69 msgid "Authors" msgstr "Συγγραφείς" -#: cps/render_template.py:79 cps/templates/user_table.html:160 +#: cps/render_template.py:78 cps/templates/user_table.html:160 msgid "Show author selection" msgstr "Προβολή επιλογών συγγραφέα" -#: cps/render_template.py:81 cps/templates/book_table.html:72 -#: cps/templates/index.xml:76 cps/web.py:1006 +#: cps/render_template.py:80 cps/templates/book_table.html:72 +#: cps/templates/index.xml:76 cps/web.py:966 msgid "Publishers" msgstr "Εκδότες" -#: cps/render_template.py:83 cps/templates/user_table.html:163 +#: cps/render_template.py:82 cps/templates/user_table.html:163 msgid "Show publisher selection" msgstr "Προβολή επιλογών εκδότη" -#: cps/render_template.py:84 cps/templates/book_table.html:70 +#: cps/render_template.py:83 cps/templates/book_table.html:70 #: cps/templates/index.xml:97 cps/templates/search_form.html:107 -#: cps/web.py:1108 +#: cps/web.py:1070 msgid "Languages" msgstr "Γλώσσες" -#: cps/render_template.py:87 cps/templates/user_table.html:155 +#: cps/render_template.py:86 cps/templates/user_table.html:155 msgid "Show language selection" msgstr "Προβολή επιλογών γλώσσας" -#: cps/render_template.py:88 cps/templates/index.xml:104 +#: cps/render_template.py:87 cps/templates/index.xml:104 msgid "Ratings" msgstr "Αξιολογήσεις" -#: cps/render_template.py:90 cps/templates/user_table.html:164 +#: cps/render_template.py:89 cps/templates/user_table.html:164 msgid "Show ratings selection" msgstr "Προβολή επιλογών αξιολόγησης" -#: cps/render_template.py:91 cps/templates/index.xml:112 +#: cps/render_template.py:90 cps/templates/index.xml:112 msgid "File formats" msgstr "Μορφές αρχείου" -#: cps/render_template.py:93 cps/templates/user_table.html:165 +#: cps/render_template.py:92 cps/templates/user_table.html:165 msgid "Show file formats selection" msgstr "Προβολή επιλογών μορφής αρχείου" -#: cps/render_template.py:95 cps/web.py:755 +#: cps/render_template.py:94 cps/web.py:765 msgid "Archived Books" msgstr "Αρχειοθετημένα Βιβλία" -#: cps/render_template.py:97 cps/templates/user_table.html:166 +#: cps/render_template.py:96 cps/templates/user_table.html:166 msgid "Show archived books" msgstr "Προβολή αρχειοθετημένων βιβλίων" -#: cps/render_template.py:100 cps/web.py:837 +#: cps/render_template.py:99 cps/web.py:796 msgid "Books List" msgstr "Λίστα Βιβλίων" -#: cps/render_template.py:102 cps/templates/user_table.html:168 +#: cps/render_template.py:101 cps/templates/user_table.html:168 msgid "Show Books List" msgstr "Προβολή Λίστας Βιβλίων" -#: cps/shelf.py:67 cps/shelf.py:121 -msgid "Invalid shelf specified" -msgstr "Διευκρινίστηκε μη έγκυρο ράφι" - -#: cps/shelf.py:73 -#, fuzzy -msgid "Sorry you are not allowed to add a book to that shelf" -msgstr "Συγγνώμη δεν σου επιτρέπεται να προσθέσεις ένα βιβλίο στο ράφι: %(shelfname)s" - -#: cps/shelf.py:82 -#, python-format -msgid "Book is already part of the shelf: %(shelfname)s" -msgstr "Το βιβλίο είναι ήδη μέρος αυτού του ραφιού: %(shelfname)s" - -#: cps/shelf.py:107 -#, python-format -msgid "Book has been added to shelf: %(sname)s" -msgstr "Το βιβλίο έχει προστεθεί στο ράφι: %(sname)s" - -#: cps/shelf.py:126 -msgid "You are not allowed to add a book to the shelf" -msgstr "" - -#: cps/shelf.py:144 -#, python-format -msgid "Books are already part of the shelf: %(name)s" -msgstr "Τα βιβλία είναι ήδη μέρος του ραφιού: %(name)s" - -#: cps/shelf.py:156 -#, python-format -msgid "Books have been added to shelf: %(sname)s" -msgstr "Βιβλία είχαν προστεθεί στο ραφι: %(sname)s" - -#: cps/shelf.py:163 -#, python-format -msgid "Could not add books to shelf: %(sname)s" -msgstr "Δεν μπόρεσε να γίνει η προσθήκη βιβλίων στο ράφι: %(sname)s" - -#: cps/shelf.py:209 -#, python-format -msgid "Book has been removed from shelf: %(sname)s" -msgstr "Το βιβλίο έχει αφαιρεθεί από το ράφι: %(sname)s" - -#: cps/shelf.py:218 -msgid "Sorry you are not allowed to remove a book from this shelf" -msgstr "" - -#: cps/shelf.py:228 cps/templates/layout.html:140 -msgid "Create a Shelf" -msgstr "Δημιούργησε ένα Ράφι" - -#: cps/shelf.py:236 -#, fuzzy -msgid "Sorry you are not allowed to edit this shelf" -msgstr "Συγγνώμη αλλά δεν σου επιτρέπεται η αφαίρεση ενός βιβλίου από αυτό το ράφι: %(sname)s" - -#: cps/shelf.py:238 -msgid "Edit a shelf" -msgstr "Επεξεργασία ενός ραφιού" - -#: cps/shelf.py:248 -msgid "Sorry you are not allowed to create a public shelf" -msgstr "" - -#: cps/shelf.py:265 -#, python-format -msgid "Shelf %(title)s created" -msgstr "Το ράφι %(title)s δημιουργήθηκε" - -#: cps/shelf.py:268 -#, python-format -msgid "Shelf %(title)s changed" -msgstr "Το ράφι %(title)s άλλαξε" - -#: cps/shelf.py:282 -msgid "There was an error" -msgstr "Υπήρξε ένα σφάλμα" - -#: cps/shelf.py:304 -#, python-format -msgid "A public shelf with the name '%(title)s' already exists." -msgstr "Ένα δημόσιο ράφι με το όνομα '%(title)s' υπάρχει ήδη." - -#: cps/shelf.py:315 -#, python-format -msgid "A private shelf with the name '%(title)s' already exists." -msgstr "Ένα ιδιωτικό ράφι με το όνομα '%(title)s' υπάρχει ήδη." - -#: cps/shelf.py:337 -msgid "Error deleting Shelf" -msgstr "" - -#: cps/shelf.py:339 -#, fuzzy -msgid "Shelf successfully deleted" -msgstr "Το Βιβλίο Διαγράφηκε Επιτυχώς" - -#: cps/shelf.py:389 -#, python-format -msgid "Change order of Shelf: '%(name)s'" -msgstr "Αλλαγή σειράς του Ραφιού: '%(name)s'" - -#: cps/shelf.py:461 -#, python-format -msgid "Shelf: '%(name)s'" -msgstr "Ράφι: '%(name)s" - -#: cps/shelf.py:465 -msgid "Error opening shelf. Shelf does not exist or is not accessible" -msgstr "Σφάλμα κατά το άνοιγμα του ραφιού. Το ράφι δεν υπάρχει ή δεν είναι προσβάσιμο" - -#: cps/updater.py:426 cps/updater.py:437 cps/updater.py:538 cps/updater.py:553 -msgid "Unexpected data while reading update information" -msgstr "Απρόβλεπτα δεδομένα κατά την ανάγνωση των πληροφοριών ενημέρωσης" - -#: cps/updater.py:433 cps/updater.py:545 -msgid "No update available. You already have the latest version installed" -msgstr "Δεν υπάρχει διαθέσιμη ενημέρωση. Έχεις ήδη την τελευταία έκδοση εγκατεστημένη" - -#: cps/updater.py:451 -msgid "A new update is available. Click on the button below to update to the latest version." -msgstr "Μια νέα ενημέρωση είναι διαθέσιμη. Κάνε κλικ στο κουμπί πιο κάτω για να ενημερώσεις με την τελευταία έκδοση." - -#: cps/updater.py:469 -msgid "Could not fetch update information" -msgstr "Δεν μπόρεσε να συγκεντρώσει τις πληροφορίες ενημέρωσης" - -#: cps/updater.py:479 -msgid "Click on the button below to update to the latest stable version." -msgstr "Κάνε κλικ στο κουμπί πιο κάτω για να ενημερώσεις με την τελευταία σταθερή έκδοση." - -#: cps/updater.py:488 cps/updater.py:502 cps/updater.py:513 -#, python-format -msgid "A new update is available. Click on the button below to update to version: %(version)s" -msgstr "Μια νέα ενημέρωση είναι διαθέσιμη. Κάνε κλικ στο κουμπί πιο κάτω για ενημέρωση με την έκδοση: %(version)s" - -#: cps/updater.py:531 -msgid "No release information available" -msgstr "Δεν υπάρχουν διαθέσιμες πληροφορίες αποδέσμευσης" - -#: cps/templates/index.html:5 cps/web.py:434 -msgid "Discover (Random Books)" -msgstr "Ανακάλυψε (Τυχαία Βιβλία)" - -#: cps/web.py:470 -msgid "Hot Books (Most Downloaded)" -msgstr "Βιβλία στη Μόδα (Με τα περισσότερα κατεβάσματα)" - -#: cps/web.py:501 -#, python-format -msgid "Downloaded books by %(user)s" -msgstr "Κατεβασμένα βιβλία από %(user)s" - -#: cps/web.py:534 -#, python-format -msgid "Author: %(name)s" -msgstr "Συγγραφέας: %(name)s" - -#: cps/web.py:570 -#, python-format -msgid "Publisher: %(name)s" -msgstr "Εκδότης: %(name)s" - -#: cps/web.py:598 -#, python-format -msgid "Series: %(serie)s" -msgstr "Σειρές: %(serie)s" - -#: cps/web.py:610 -#, python-format -msgid "Rating: %(rating)s stars" -msgstr "Αξιολόγηση: %(rating)s stars" - -#: cps/web.py:626 -#, python-format -msgid "File format: %(format)s" -msgstr "Μορφή αρχείου: %(format)s" - -#: cps/web.py:663 -#, python-format -msgid "Category: %(name)s" -msgstr "Κατηγορία: %(name)s" - -#: cps/web.py:690 -#, python-format -msgid "Language: %(name)s" -msgstr "Γλώσσα: %(name)s" - -#: cps/templates/layout.html:56 cps/web.py:789 cps/web.py:1444 -msgid "Advanced Search" -msgstr "Προχωρημένη Αναζήτηση" - -#: cps/templates/book_edit.html:235 cps/templates/feed.xml:33 -#: cps/templates/index.xml:11 cps/templates/layout.html:45 -#: cps/templates/layout.html:48 cps/templates/search_form.html:226 -#: cps/web.py:807 cps/web.py:1164 +#: cps/search.py:48 cps/search.py:414 cps/templates/book_edit.html:236 +#: cps/templates/feed.xml:33 cps/templates/index.xml:11 +#: cps/templates/layout.html:46 cps/templates/layout.html:49 +#: cps/templates/search_form.html:226 msgid "Search" msgstr "Αναζήτηση" -#: cps/templates/admin.html:16 cps/web.py:979 -msgid "Downloads" -msgstr "Κατεβασμένα" - -#: cps/web.py:1068 -msgid "Ratings list" -msgstr "Λίστα αξιολογήσεων" - -#: cps/web.py:1095 -msgid "File formats list" -msgstr "Λίστα μορφών αρχείου" - -#: cps/templates/layout.html:73 cps/templates/tasks.html:7 cps/web.py:1149 -msgid "Tasks" -msgstr "Εργασίες" - -#: cps/web.py:1286 +#: cps/search.py:194 msgid "Published after " msgstr "Εκδόθηκε μετά" -#: cps/web.py:1293 +#: cps/search.py:201 msgid "Published before " msgstr "Εκδόθηκε πριν" -#: cps/web.py:1315 +#: cps/search.py:223 #, python-format msgid "Rating <= %(rating)s" msgstr "Αξιολόγηση <= %(rating)s" -#: cps/web.py:1317 +#: cps/search.py:225 #, python-format msgid "Rating >= %(rating)s" msgstr "Αξιολόγηση >= %(rating)s" -#: cps/web.py:1319 +#: cps/search.py:227 #, python-format msgid "Read Status = %(status)s" msgstr "" -#: cps/web.py:1425 +#: cps/search.py:345 msgid "Error on search for custom columns, please restart Calibre-Web" msgstr "" -#: cps/web.py:1527 +#: cps/search.py:364 cps/search.py:396 cps/templates/layout.html:57 +msgid "Advanced Search" +msgstr "Προχωρημένη Αναζήτηση" + +#: cps/shelf.py:49 cps/shelf.py:103 +msgid "Invalid shelf specified" +msgstr "Διευκρινίστηκε μη έγκυρο ράφι" + +#: cps/shelf.py:55 +#, fuzzy +msgid "Sorry you are not allowed to add a book to that shelf" +msgstr "Συγγνώμη δεν σου επιτρέπεται να προσθέσεις ένα βιβλίο στο ράφι: %(shelfname)s" + +#: cps/shelf.py:64 +#, python-format +msgid "Book is already part of the shelf: %(shelfname)s" +msgstr "Το βιβλίο είναι ήδη μέρος αυτού του ραφιού: %(shelfname)s" + +#: cps/shelf.py:89 +#, python-format +msgid "Book has been added to shelf: %(sname)s" +msgstr "Το βιβλίο έχει προστεθεί στο ράφι: %(sname)s" + +#: cps/shelf.py:108 +msgid "You are not allowed to add a book to the shelf" +msgstr "" + +#: cps/shelf.py:126 +#, python-format +msgid "Books are already part of the shelf: %(name)s" +msgstr "Τα βιβλία είναι ήδη μέρος του ραφιού: %(name)s" + +#: cps/shelf.py:138 +#, python-format +msgid "Books have been added to shelf: %(sname)s" +msgstr "Βιβλία είχαν προστεθεί στο ραφι: %(sname)s" + +#: cps/shelf.py:145 +#, python-format +msgid "Could not add books to shelf: %(sname)s" +msgstr "Δεν μπόρεσε να γίνει η προσθήκη βιβλίων στο ράφι: %(sname)s" + +#: cps/shelf.py:191 +#, python-format +msgid "Book has been removed from shelf: %(sname)s" +msgstr "Το βιβλίο έχει αφαιρεθεί από το ράφι: %(sname)s" + +#: cps/shelf.py:200 +msgid "Sorry you are not allowed to remove a book from this shelf" +msgstr "" + +#: cps/shelf.py:210 cps/templates/layout.html:141 +msgid "Create a Shelf" +msgstr "Δημιούργησε ένα Ράφι" + +#: cps/shelf.py:218 +#, fuzzy +msgid "Sorry you are not allowed to edit this shelf" +msgstr "Συγγνώμη αλλά δεν σου επιτρέπεται η αφαίρεση ενός βιβλίου από αυτό το ράφι: %(sname)s" + +#: cps/shelf.py:220 +msgid "Edit a shelf" +msgstr "Επεξεργασία ενός ραφιού" + +#: cps/shelf.py:229 +msgid "Error deleting Shelf" +msgstr "" + +#: cps/shelf.py:231 +#, fuzzy +msgid "Shelf successfully deleted" +msgstr "Το Βιβλίο Διαγράφηκε Επιτυχώς" + +#: cps/shelf.py:281 +#, python-format +msgid "Change order of Shelf: '%(name)s'" +msgstr "Αλλαγή σειράς του Ραφιού: '%(name)s'" + +#: cps/shelf.py:313 +msgid "Sorry you are not allowed to create a public shelf" +msgstr "" + +#: cps/shelf.py:330 +#, python-format +msgid "Shelf %(title)s created" +msgstr "Το ράφι %(title)s δημιουργήθηκε" + +#: cps/shelf.py:333 +#, python-format +msgid "Shelf %(title)s changed" +msgstr "Το ράφι %(title)s άλλαξε" + +#: cps/shelf.py:347 +msgid "There was an error" +msgstr "Υπήρξε ένα σφάλμα" + +#: cps/shelf.py:369 +#, python-format +msgid "A public shelf with the name '%(title)s' already exists." +msgstr "Ένα δημόσιο ράφι με το όνομα '%(title)s' υπάρχει ήδη." + +#: cps/shelf.py:380 +#, python-format +msgid "A private shelf with the name '%(title)s' already exists." +msgstr "Ένα ιδιωτικό ράφι με το όνομα '%(title)s' υπάρχει ήδη." + +#: cps/shelf.py:462 +#, python-format +msgid "Shelf: '%(name)s'" +msgstr "Ράφι: '%(name)s" + +#: cps/shelf.py:466 +msgid "Error opening shelf. Shelf does not exist or is not accessible" +msgstr "Σφάλμα κατά το άνοιγμα του ραφιού. Το ράφι δεν υπάρχει ή δεν είναι προσβάσιμο" + +#: cps/tasks_status.py:48 cps/templates/layout.html:74 +#: cps/templates/tasks.html:7 +msgid "Tasks" +msgstr "Εργασίες" + +#: cps/tasks_status.py:64 +msgid "Waiting" +msgstr "Αναμονή" + +#: cps/tasks_status.py:66 +msgid "Failed" +msgstr "Απέτυχε" + +#: cps/tasks_status.py:68 +msgid "Started" +msgstr "Ξεκίνησε" + +#: cps/tasks_status.py:70 +msgid "Finished" +msgstr "Τελείωσε" + +#: cps/tasks_status.py:72 +msgid "Ended" +msgstr "" + +#: cps/tasks_status.py:74 +msgid "Cancelled" +msgstr "" + +#: cps/tasks_status.py:76 +msgid "Unknown Status" +msgstr "ʼΑγνωστη κατάσταση" + +#: cps/updater.py:431 cps/updater.py:442 cps/updater.py:543 cps/updater.py:558 +msgid "Unexpected data while reading update information" +msgstr "Απρόβλεπτα δεδομένα κατά την ανάγνωση των πληροφοριών ενημέρωσης" + +#: cps/updater.py:438 cps/updater.py:550 +msgid "No update available. You already have the latest version installed" +msgstr "Δεν υπάρχει διαθέσιμη ενημέρωση. Έχεις ήδη την τελευταία έκδοση εγκατεστημένη" + +#: cps/updater.py:456 +msgid "A new update is available. Click on the button below to update to the latest version." +msgstr "Μια νέα ενημέρωση είναι διαθέσιμη. Κάνε κλικ στο κουμπί πιο κάτω για να ενημερώσεις με την τελευταία έκδοση." + +#: cps/updater.py:474 +msgid "Could not fetch update information" +msgstr "Δεν μπόρεσε να συγκεντρώσει τις πληροφορίες ενημέρωσης" + +#: cps/updater.py:484 +msgid "Click on the button below to update to the latest stable version." +msgstr "Κάνε κλικ στο κουμπί πιο κάτω για να ενημερώσεις με την τελευταία σταθερή έκδοση." + +#: cps/updater.py:493 cps/updater.py:507 cps/updater.py:518 +#, python-format +msgid "A new update is available. Click on the button below to update to version: %(version)s" +msgstr "Μια νέα ενημέρωση είναι διαθέσιμη. Κάνε κλικ στο κουμπί πιο κάτω για ενημέρωση με την έκδοση: %(version)s" + +#: cps/updater.py:536 +msgid "No release information available" +msgstr "Δεν υπάρχουν διαθέσιμες πληροφορίες αποδέσμευσης" + +#: cps/templates/index.html:6 cps/web.py:432 +msgid "Discover (Random Books)" +msgstr "Ανακάλυψε (Τυχαία Βιβλία)" + +#: cps/web.py:468 +msgid "Hot Books (Most Downloaded)" +msgstr "Βιβλία στη Μόδα (Με τα περισσότερα κατεβάσματα)" + +#: cps/web.py:499 +#, python-format +msgid "Downloaded books by %(user)s" +msgstr "Κατεβασμένα βιβλία από %(user)s" + +#: cps/web.py:532 +#, python-format +msgid "Author: %(name)s" +msgstr "Συγγραφέας: %(name)s" + +#: cps/web.py:568 +#, python-format +msgid "Publisher: %(name)s" +msgstr "Εκδότης: %(name)s" + +#: cps/web.py:596 +#, python-format +msgid "Series: %(serie)s" +msgstr "Σειρές: %(serie)s" + +#: cps/web.py:609 +msgid "Rating: None" +msgstr "" + +#: cps/web.py:618 +#, python-format +msgid "Rating: %(rating)s stars" +msgstr "Αξιολόγηση: %(rating)s stars" + +#: cps/web.py:636 +#, python-format +msgid "File format: %(format)s" +msgstr "Μορφή αρχείου: %(format)s" + +#: cps/web.py:673 +#, python-format +msgid "Category: %(name)s" +msgstr "Κατηγορία: %(name)s" + +#: cps/web.py:700 +#, python-format +msgid "Language: %(name)s" +msgstr "Γλώσσα: %(name)s" + +#: cps/templates/admin.html:16 cps/web.py:938 +msgid "Downloads" +msgstr "Κατεβασμένα" + +#: cps/web.py:1030 +msgid "Ratings list" +msgstr "Λίστα αξιολογήσεων" + +#: cps/web.py:1057 +msgid "File formats list" +msgstr "Λίστα μορφών αρχείου" + +#: cps/web.py:1199 #, python-format msgid "Book successfully queued for sending to %(kindlemail)s" msgstr "Το βιβλίο έχει επιτυχώς μπει σε σειρά για αποστολή στο %(kindlemail)s" -#: cps/web.py:1531 +#: cps/web.py:1203 #, python-format msgid "Oops! There was an error sending this book: %(res)s" msgstr "Oυπς! Υπήρξε ένα σφάλμα κατά την αποστολή αυτού του βιβλίου: %(res)s" -#: cps/web.py:1533 +#: cps/web.py:1205 msgid "Please update your profile with a valid Send to Kindle E-mail Address." msgstr "Παρακαλούμε ενημέρωσε το προφίλ σου με μια έγκυρη Διεύθυνση E-mail Αποστολής στο Kindle." -#: cps/web.py:1550 +#: cps/web.py:1222 msgid "E-Mail server is not configured, please contact your administrator!" msgstr "Ο διακομιστής E-Mail δεν έχει διαμορφωθεί, παρακαλούμε επικοινώνησε με το διαχειριστή σου!" -#: cps/templates/layout.html:85 cps/templates/register.html:17 cps/web.py:1551 -#: cps/web.py:1558 cps/web.py:1564 cps/web.py:1583 cps/web.py:1587 -#: cps/web.py:1593 +#: cps/templates/layout.html:86 cps/templates/register.html:17 cps/web.py:1223 +#: cps/web.py:1230 cps/web.py:1236 cps/web.py:1255 cps/web.py:1260 +#: cps/web.py:1266 msgid "Register" msgstr "Εγγραφή" -#: cps/web.py:1585 +#: cps/web.py:1257 msgid "Your e-mail is not allowed to register" msgstr "Η διεύθυνση e-mail σου δεν επιτρέπεται να εγγραφεί" -#: cps/web.py:1588 +#: cps/web.py:1261 msgid "Confirmation e-mail was send to your e-mail account." msgstr "Το e-mail επιβεβαίωσης έχει σταλεί στον e-mail λογαριασμό σου." -#: cps/web.py:1602 +#: cps/web.py:1275 msgid "Cannot activate LDAP authentication" msgstr "Δεν μπόρεσε να ενεργοποιηθεί η επαλήθευση LDAP" -#: cps/web.py:1621 +#: cps/web.py:1294 #, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgstr "Εναλλακτική Σύνδεση ως: '%(nickname)s', Ο Διακομιστής LDAP δεν είναι προσβάσιμος, ή ο χρήστης δεν είναι γνωστός" -#: cps/web.py:1627 +#: cps/web.py:1300 #, python-format msgid "Could not login: %(message)s" msgstr "Δεν μπόρεσε να συνδεθεί: %(message)s" -#: cps/web.py:1631 cps/web.py:1656 +#: cps/web.py:1304 cps/web.py:1329 msgid "Wrong Username or Password" msgstr "Λανθασμένο Όνομα Χρήστη ή Κωδικός" -#: cps/web.py:1638 +#: cps/web.py:1311 msgid "New Password was send to your email address" msgstr "Ο Νέος Κωδικός έχει σταλεί στη διεύθυνση email σου" -#: cps/web.py:1644 +#: cps/web.py:1317 msgid "Please enter valid username to reset password" msgstr "Παρακαλούμε συμπλήρωσε ένα έγκυρο όνομα χρήστη για επαναφορά του κωδικού" -#: cps/web.py:1651 +#: cps/web.py:1324 #, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "Έχεις συνδεθεί ως: '%(nickname)s'" -#: cps/web.py:1717 cps/web.py:1766 +#: cps/web.py:1388 cps/web.py:1437 #, python-format msgid "%(name)s's profile" msgstr "%(name)s's προφίλ" -#: cps/web.py:1733 +#: cps/web.py:1404 msgid "Profile updated" msgstr "Το προφίλ ενημερώθηκε" @@ -1346,40 +1384,75 @@ msgstr "Το προφίλ ενημερώθηκε" msgid "Found no valid gmail.json file with OAuth information" msgstr "" -#: cps/tasks/convert.py:154 +#: cps/tasks/convert.py:153 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "Το εργαλείο μετατροπής Calibre ebook %(tool)s δεν βρέθηκε" -#: cps/tasks/convert.py:187 +#: cps/tasks/convert.py:186 #, python-format msgid "%(format)s format not found on disk" msgstr "%(format)s μορφή δεν βρέθηκε σε δίσκο" -#: cps/tasks/convert.py:191 +#: cps/tasks/convert.py:190 msgid "Ebook converter failed with unknown error" msgstr "Ο μετατροπέας Ebook απέτυχε με άγνωστο σφάλμα" -#: cps/tasks/convert.py:201 +#: cps/tasks/convert.py:200 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "Ο μετατροπέας Kepubify απέτυχε: %(error)s" -#: cps/tasks/convert.py:223 +#: cps/tasks/convert.py:222 #, python-format msgid "Converted file not found or more than one file in folder %(folder)s" msgstr "Το τροποποιημένο αρχείο δεν βρέθηκε ή υπάρχουν περισσότερα από ένα αρχεία στο φάκελο %(folder)s" -#: cps/tasks/convert.py:246 +#: cps/tasks/convert.py:245 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "Ο μετατροπέας Ebook απέτυχε: %(error)s" -#: cps/tasks/convert.py:269 +#: cps/tasks/convert.py:268 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "Το Calibre απέτυχε με σφάλμα: %(error)s" +#: cps/tasks/convert.py:273 +msgid "Convert" +msgstr "" + +#: cps/tasks/database.py:28 +msgid "Reconnecting Calibre database" +msgstr "" + +#: cps/tasks/mail.py:265 +msgid "E-mail" +msgstr "" + +#: cps/tasks/thumbnail.py:95 +#, python-format +msgid "Generated %(count)s cover thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:222 cps/tasks/thumbnail.py:435 +#: cps/tasks/thumbnail.py:503 +msgid "Cover Thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:281 +msgid "Generated {0} series thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:446 +msgid "Clearing cover thumbnail cache" +msgstr "" + +#: cps/tasks/upload.py:38 cps/templates/admin.html:20 +#: cps/templates/layout.html:67 cps/templates/user_table.html:145 +msgid "Upload" +msgstr "Ανέβασμα" + #: cps/templates/admin.html:9 msgid "Users" msgstr "Χρήστες" @@ -1399,7 +1472,7 @@ msgstr "Διεύθυνση E-mail" msgid "Send to Kindle E-mail Address" msgstr "Διεύθυνση E-mail Αποστολής στο Kindle" -#: cps/templates/admin.html:17 cps/templates/layout.html:76 +#: cps/templates/admin.html:17 cps/templates/layout.html:77 #: cps/templates/user_table.html:143 msgid "Admin" msgstr "Διαχειριστής" @@ -1409,13 +1482,8 @@ msgstr "Διαχειριστής" msgid "Password" msgstr "Κωδικός" -#: cps/templates/admin.html:20 cps/templates/layout.html:66 -#: cps/templates/user_table.html:145 -msgid "Upload" -msgstr "Ανέβασμα" - -#: cps/templates/admin.html:22 cps/templates/detail.html:18 -#: cps/templates/detail.html:27 cps/templates/shelf.html:7 +#: cps/templates/admin.html:22 cps/templates/detail.html:19 +#: cps/templates/detail.html:28 cps/templates/shelf.html:8 #: cps/templates/user_table.html:146 msgid "Download" msgstr "Κατέβασμα" @@ -1429,7 +1497,7 @@ msgstr "Προβολή Βιβλίων" msgid "Edit" msgstr "Επεξεργασία" -#: cps/templates/admin.html:25 cps/templates/book_edit.html:16 +#: cps/templates/admin.html:25 cps/templates/book_edit.html:17 #: cps/templates/book_table.html:100 cps/templates/modal_dialogs.html:63 #: cps/templates/modal_dialogs.html:116 cps/templates/user_edit.html:67 #: cps/templates/user_table.html:149 @@ -1542,78 +1610,107 @@ msgstr "Επεξεργασία Βασικής Διαμόρφωσης" msgid "Edit UI Configuration" msgstr "Επεξεργασία Διαμόρφωσης UI" -#: cps/templates/admin.html:166 +#: cps/templates/admin.html:167 +msgid "Scheduled Tasks" +msgstr "" + +#: cps/templates/admin.html:170 cps/templates/schedule_edit.html:12 +msgid "Time at which tasks start to run" +msgstr "" + +#: cps/templates/admin.html:174 cps/templates/schedule_edit.html:20 +msgid "Maximum tasks duration" +msgstr "" + +#: cps/templates/admin.html:178 +msgid "Generate book cover thumbnails" +msgstr "" + +#: cps/templates/admin.html:182 +msgid "Generate series cover thumbnails" +msgstr "" + +#: cps/templates/admin.html:186 cps/templates/schedule_edit.html:37 +msgid "Reconnect to Calibre Library" +msgstr "" + +#: cps/templates/admin.html:193 +msgid "Refresh Thumbnail Cover Cache" +msgstr "" + +#: cps/templates/admin.html:199 msgid "Administration" msgstr "Διοίκηση" -#: cps/templates/admin.html:167 +#: cps/templates/admin.html:200 msgid "Download Debug Package" msgstr "" -#: cps/templates/admin.html:168 +#: cps/templates/admin.html:201 msgid "View Logs" msgstr "Προβολή Φύλλων Καταγραφής" -#: cps/templates/admin.html:171 +#: cps/templates/admin.html:204 msgid "Reconnect Calibre Database" msgstr "Επανασύνδεση Βάσης Δεδομένων Calibre" -#: cps/templates/admin.html:172 +#: cps/templates/admin.html:207 msgid "Restart" msgstr "Επανεκκίνηση" -#: cps/templates/admin.html:173 +#: cps/templates/admin.html:208 msgid "Shutdown" msgstr "Κλείσιμο" -#: cps/templates/admin.html:178 -msgid "Update" -msgstr "Ενημέρωση" +#: cps/templates/admin.html:213 +msgid "Version Information" +msgstr "" -#: cps/templates/admin.html:182 +#: cps/templates/admin.html:217 msgid "Version" msgstr "Έκδοση" -#: cps/templates/admin.html:183 +#: cps/templates/admin.html:218 msgid "Details" msgstr "Λεπτομέρειες" -#: cps/templates/admin.html:189 +#: cps/templates/admin.html:224 msgid "Current version" msgstr "Τρέχουσα έκδοση" -#: cps/templates/admin.html:196 +#: cps/templates/admin.html:231 msgid "Check for Update" msgstr "Έλεγχος για Ενημέρωση" -#: cps/templates/admin.html:197 +#: cps/templates/admin.html:232 msgid "Perform Update" msgstr "Πραγματοποίηση Ενημέρωσης" -#: cps/templates/admin.html:210 +#: cps/templates/admin.html:245 msgid "Are you sure you want to restart?" msgstr "Είσαι σίγουρος/η πως θέλεις να κάνεις επανεκκίνηση" -#: cps/templates/admin.html:215 cps/templates/admin.html:229 -#: cps/templates/admin.html:249 cps/templates/config_db.html:70 +#: cps/templates/admin.html:250 cps/templates/admin.html:264 +#: cps/templates/admin.html:284 cps/templates/config_db.html:70 msgid "OK" msgstr "OK" -#: cps/templates/admin.html:216 cps/templates/admin.html:230 -#: cps/templates/book_edit.html:213 cps/templates/book_table.html:127 +#: cps/templates/admin.html:251 cps/templates/admin.html:265 +#: cps/templates/book_edit.html:214 cps/templates/book_table.html:127 #: cps/templates/config_db.html:54 cps/templates/config_edit.html:359 #: 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/shelf_edit.html:27 +#: cps/templates/modal_dialogs.html:135 cps/templates/schedule_edit.html:41 +#: cps/templates/shelf_edit.html:27 cps/templates/tasks.html:46 #: cps/templates/user_edit.html:144 msgid "Cancel" msgstr "Ακύρωση" -#: cps/templates/admin.html:228 +#: cps/templates/admin.html:263 msgid "Are you sure you want to shutdown?" msgstr "Είσαι σίγουρος/η πως θέλεις να κάνεις κλείσιμο;" -#: cps/templates/admin.html:240 +#: cps/templates/admin.html:275 msgid "Updating, please do not reload this page" msgstr "Γίνεται ενημέρωση, παρακαλούμε μη φορτώσεις ξανά αυτή τη σελίδα" @@ -1625,39 +1722,39 @@ msgstr "μέσω" msgid "In Library" msgstr "Στη Βιβλιοθήκη" -#: cps/templates/author.html:26 cps/templates/index.html:73 -#: cps/templates/search.html:30 cps/templates/shelf.html:19 +#: cps/templates/author.html:26 cps/templates/index.html:74 +#: cps/templates/search.html:31 cps/templates/shelf.html:20 msgid "Sort according to book date, newest first" msgstr "" -#: cps/templates/author.html:27 cps/templates/index.html:74 -#: cps/templates/search.html:31 cps/templates/shelf.html:20 +#: cps/templates/author.html:27 cps/templates/index.html:75 +#: cps/templates/search.html:32 cps/templates/shelf.html:21 msgid "Sort according to book date, oldest first" msgstr "" -#: cps/templates/author.html:28 cps/templates/index.html:75 -#: cps/templates/search.html:32 cps/templates/shelf.html:21 +#: cps/templates/author.html:28 cps/templates/index.html:76 +#: cps/templates/search.html:33 cps/templates/shelf.html:22 msgid "Sort title in alphabetical order" msgstr "" -#: cps/templates/author.html:29 cps/templates/index.html:76 -#: cps/templates/search.html:33 cps/templates/shelf.html:22 +#: cps/templates/author.html:29 cps/templates/index.html:77 +#: cps/templates/search.html:34 cps/templates/shelf.html:23 msgid "Sort title in reverse alphabetical order" msgstr "" -#: cps/templates/author.html:30 cps/templates/index.html:79 -#: cps/templates/search.html:36 cps/templates/shelf.html:25 +#: cps/templates/author.html:30 cps/templates/index.html:80 +#: cps/templates/search.html:37 cps/templates/shelf.html:26 msgid "Sort according to publishing date, newest first" msgstr "" -#: cps/templates/author.html:31 cps/templates/index.html:80 -#: cps/templates/search.html:37 cps/templates/shelf.html:26 +#: cps/templates/author.html:31 cps/templates/index.html:81 +#: cps/templates/search.html:38 cps/templates/shelf.html:27 msgid "Sort according to publishing date, oldest first" msgstr "" #: cps/templates/author.html:56 cps/templates/author.html:115 -#: cps/templates/index.html:29 cps/templates/index.html:112 -#: cps/templates/search.html:66 cps/templates/shelf.html:54 +#: cps/templates/index.html:30 cps/templates/index.html:113 +#: cps/templates/search.html:67 cps/templates/shelf.html:55 msgid "reduce" msgstr "μείωση" @@ -1665,165 +1762,166 @@ msgstr "μείωση" msgid "More by" msgstr "Περισσότερα από" -#: cps/templates/book_edit.html:10 +#: cps/templates/book_edit.html:11 msgid "Delete Book" msgstr "Διαγραφή Βιβλίου" -#: cps/templates/book_edit.html:13 +#: cps/templates/book_edit.html:14 msgid "Delete formats:" msgstr "Διαγραφή μορφών:" -#: cps/templates/book_edit.html:24 +#: cps/templates/book_edit.html:25 msgid "Convert book format:" msgstr "Μετατροπή μορφής βιβλίου:" -#: cps/templates/book_edit.html:29 +#: cps/templates/book_edit.html:30 msgid "Convert from:" msgstr "Μετατροπή από:" -#: cps/templates/book_edit.html:31 cps/templates/book_edit.html:38 +#: cps/templates/book_edit.html:32 cps/templates/book_edit.html:39 msgid "select an option" msgstr "διάλεξε μια επιλογή" -#: cps/templates/book_edit.html:36 +#: cps/templates/book_edit.html:37 msgid "Convert to:" msgstr "Μετατροπή σε:" -#: cps/templates/book_edit.html:45 +#: cps/templates/book_edit.html:46 msgid "Convert book" msgstr "Μετατροπή βιβλίου" -#: cps/templates/book_edit.html:55 cps/templates/search_form.html:8 +#: cps/templates/book_edit.html:56 cps/templates/search_form.html:8 msgid "Book Title" msgstr "Τίτλος Βιβλίου" -#: cps/templates/book_edit.html:62 cps/templates/book_edit.html:270 -#: cps/templates/book_edit.html:288 cps/templates/search_form.html:12 +#: cps/templates/book_edit.html:63 cps/templates/book_edit.html:271 +#: cps/templates/book_edit.html:289 cps/templates/search_form.html:12 msgid "Author" msgstr "Συγγραφέας" -#: cps/templates/book_edit.html:67 cps/templates/book_edit.html:275 -#: cps/templates/book_edit.html:290 cps/templates/search_form.html:153 +#: cps/templates/book_edit.html:68 cps/templates/book_edit.html:276 +#: cps/templates/book_edit.html:291 cps/templates/search_form.html:153 msgid "Description" msgstr "Περιγραφή" -#: cps/templates/book_edit.html:72 +#: cps/templates/book_edit.html:73 msgid "Identifiers" msgstr "Αναγνωριστικά" -#: cps/templates/book_edit.html:76 cps/templates/book_edit.html:299 +#: cps/templates/book_edit.html:77 cps/templates/book_edit.html:300 msgid "Identifier Type" msgstr "Είδος Αναγνωριστικού" -#: cps/templates/book_edit.html:77 cps/templates/book_edit.html:300 +#: cps/templates/book_edit.html:78 cps/templates/book_edit.html:301 msgid "Identifier Value" msgstr "Τιμή Αναγνωριστικού" -#: cps/templates/book_edit.html:78 cps/templates/book_edit.html:301 +#: cps/templates/book_edit.html:79 cps/templates/book_edit.html:302 #: cps/templates/user_table.html:24 msgid "Remove" msgstr "Αφαίρεση" -#: cps/templates/book_edit.html:82 +#: cps/templates/book_edit.html:83 msgid "Add Identifier" msgstr "Προσθήκη Αναγνωριστικού" -#: cps/templates/book_edit.html:86 cps/templates/search_form.html:51 +#: cps/templates/book_edit.html:87 cps/templates/search_form.html:51 msgid "Tags" msgstr "Ετικέτες" -#: cps/templates/book_edit.html:94 +#: cps/templates/book_edit.html:95 msgid "Series ID" msgstr "Ταυτότητα Σειράς" -#: cps/templates/book_edit.html:98 +#: cps/templates/book_edit.html:99 msgid "Rating" msgstr "Αξιολόγηση" -#: cps/templates/book_edit.html:103 +#: cps/templates/book_edit.html:104 msgid "Fetch Cover from URL (JPEG - Image will be downloaded and stored in database)" msgstr "Συγκέντρωση Εξώφυλλου από URL (JPEG - Η εικόνα θα κατέβει και θα αποθηκευτεί σε βάση δεδομένων)" -#: cps/templates/book_edit.html:107 +#: cps/templates/book_edit.html:108 msgid "Upload Cover from Local Disk" msgstr "Ανέβασμα Εξώφυλλου από Τοπικό Δίσκο" -#: cps/templates/book_edit.html:112 +#: cps/templates/book_edit.html:113 msgid "Published Date" msgstr "Ημερομηνία Έκδοσης" -#: cps/templates/book_edit.html:121 cps/templates/book_edit.html:272 -#: cps/templates/book_edit.html:289 cps/templates/detail.html:164 +#: cps/templates/book_edit.html:122 cps/templates/book_edit.html:273 +#: cps/templates/book_edit.html:290 cps/templates/detail.html:165 #: cps/templates/search_form.html:16 msgid "Publisher" msgstr "Εκδότης" -#: cps/templates/book_edit.html:125 cps/templates/detail.html:131 +#: cps/templates/book_edit.html:126 cps/templates/detail.html:132 #: cps/templates/user_edit.html:33 msgid "Language" msgstr "Γλώσσα" -#: cps/templates/book_edit.html:135 cps/templates/search_form.html:45 +#: cps/templates/book_edit.html:136 cps/templates/search_form.html:45 #: cps/templates/search_form.html:164 msgid "Yes" msgstr "Ναι" -#: cps/templates/book_edit.html:136 cps/templates/search_form.html:46 +#: cps/templates/book_edit.html:137 cps/templates/search_form.html:46 #: cps/templates/search_form.html:165 msgid "No" msgstr "Όχι" -#: cps/templates/book_edit.html:200 +#: cps/templates/book_edit.html:201 msgid "Upload Format" msgstr "Μορφή Ανεβάσματος" -#: cps/templates/book_edit.html:208 +#: cps/templates/book_edit.html:209 msgid "View Book on Save" msgstr "Προβολή Βιβλίου σε Αποθήκευση" -#: cps/templates/book_edit.html:211 cps/templates/book_edit.html:229 +#: cps/templates/book_edit.html:212 cps/templates/book_edit.html:230 msgid "Fetch Metadata" msgstr "Συγκέντρωση Μεταδεδομένων" -#: cps/templates/book_edit.html:212 cps/templates/config_db.html:53 +#: cps/templates/book_edit.html:213 cps/templates/config_db.html:53 #: cps/templates/config_edit.html:358 cps/templates/config_view_edit.html:174 -#: cps/templates/email_edit.html:65 cps/templates/shelf_edit.html:25 -#: cps/templates/shelf_order.html:41 cps/templates/user_edit.html:142 +#: cps/templates/email_edit.html:65 cps/templates/schedule_edit.html:40 +#: cps/templates/shelf_edit.html:25 cps/templates/shelf_order.html:41 +#: cps/templates/user_edit.html:142 msgid "Save" msgstr "Αποθήκευση" -#: cps/templates/book_edit.html:232 +#: cps/templates/book_edit.html:233 msgid "Keyword" msgstr "Λέξη κλειδί" -#: cps/templates/book_edit.html:233 +#: cps/templates/book_edit.html:234 #, fuzzy msgid "Search keyword" msgstr "Αναζήτηση λέξης κλειδιού" -#: cps/templates/book_edit.html:239 +#: cps/templates/book_edit.html:240 msgid "Click the cover to load metadata to the form" msgstr "Κάνε κλικ στο εξώφυλλο για φόρτωση μεταδεδομένων στη φόρμα" -#: cps/templates/book_edit.html:246 cps/templates/book_edit.html:285 +#: cps/templates/book_edit.html:247 cps/templates/book_edit.html:286 msgid "Loading..." msgstr "Φόρτωση..." -#: cps/templates/book_edit.html:250 cps/templates/layout.html:63 -#: cps/templates/layout.html:186 cps/templates/modal_dialogs.html:34 +#: cps/templates/book_edit.html:251 cps/templates/layout.html:64 +#: cps/templates/layout.html:187 cps/templates/modal_dialogs.html:34 #: cps/templates/user_edit.html:163 msgid "Close" msgstr "Κλείσιμο" -#: cps/templates/book_edit.html:277 cps/templates/book_edit.html:291 +#: cps/templates/book_edit.html:278 cps/templates/book_edit.html:292 msgid "Source" msgstr "Πηγή" -#: cps/templates/book_edit.html:286 +#: cps/templates/book_edit.html:287 msgid "Search error!" msgstr "Σφάλμα αναζήτησης!" -#: cps/templates/book_edit.html:287 +#: cps/templates/book_edit.html:288 msgid "No Result(s) found! Please try another keyword." msgstr "Δεν βρέθηκε(αν) αποτέλεσμα(τα)! Παρακαλούμε δοκίμασε μια άλλη λέξη κλειδί." @@ -1932,6 +2030,7 @@ msgid "Enter " msgstr "Αναγνωριστικά" #: cps/templates/book_table.html:113 cps/templates/modal_dialogs.html:46 +#: cps/templates/tasks.html:36 msgid "Are you really sure?" msgstr "Είσαι πραγματικά σίγουρος/η;" @@ -2346,62 +2445,62 @@ msgstr "Προσθήκη ετικετών Επιτρέπεται/Απορρίπ msgid "Add Allowed/Denied custom column values" msgstr "Προσθήκη τιμών ειδικά κατασκευασμένων στηλών Επιτρέπεται/Απορρίπτεται" -#: cps/templates/detail.html:60 cps/templates/detail.html:69 +#: cps/templates/detail.html:61 cps/templates/detail.html:70 msgid "Read in Browser" msgstr "Διάβασε στο Πρόγραμμα Περιήγησης" -#: cps/templates/detail.html:77 cps/templates/detail.html:94 +#: cps/templates/detail.html:78 cps/templates/detail.html:95 msgid "Listen in Browser" msgstr "ʼΑκουσε στο Πρόγραμμα Περιήγησης" -#: cps/templates/detail.html:124 +#: cps/templates/detail.html:125 #, fuzzy, python-format msgid "Book %(index)s of %(range)s" msgstr "" -#: cps/templates/detail.html:173 +#: cps/templates/detail.html:174 msgid "Published" msgstr "Εκδόθηκε" -#: cps/templates/detail.html:221 +#: cps/templates/detail.html:222 msgid "Mark As Unread" msgstr "Σήμανση ως Αδιάβαστο" -#: cps/templates/detail.html:221 +#: cps/templates/detail.html:222 msgid "Mark As Read" msgstr "Σήμανση ως Διαβασμένο" -#: cps/templates/detail.html:222 +#: cps/templates/detail.html:223 msgid "Read" msgstr "Διαβάστηκε" -#: cps/templates/detail.html:231 +#: cps/templates/detail.html:232 msgid "Restore from archive" msgstr "Επαναφορά από το αρχείο" -#: cps/templates/detail.html:231 +#: cps/templates/detail.html:232 msgid "Add to archive" msgstr "Προσθήκη στο αρχείο" -#: cps/templates/detail.html:232 +#: cps/templates/detail.html:233 msgid "Archived" msgstr "Αρχειοθετήθηκε" -#: cps/templates/detail.html:243 +#: cps/templates/detail.html:244 msgid "Description:" msgstr "Περιγραφή" -#: cps/templates/detail.html:256 cps/templates/search.html:15 +#: cps/templates/detail.html:257 cps/templates/search.html:16 msgid "Add to shelf" msgstr "Προσθήκη στο ράφι" -#: cps/templates/detail.html:267 cps/templates/detail.html:284 -#: cps/templates/feed.xml:79 cps/templates/layout.html:137 -#: cps/templates/search.html:21 +#: cps/templates/detail.html:268 cps/templates/detail.html:285 +#: cps/templates/feed.xml:79 cps/templates/layout.html:138 +#: cps/templates/search.html:22 msgid "(Public)" msgstr "(Δημόσιο)" -#: cps/templates/detail.html:298 +#: cps/templates/detail.html:299 msgid "Edit Metadata" msgstr "Επεξεργασία Μεταδεδομένων" @@ -2445,7 +2544,7 @@ msgstr "Όριο Μεγέθους Επισύναψης" msgid "Save and Send Test E-mail" msgstr "Αποθήκευση και Αποστολή E-mail Δοκιμής" -#: cps/templates/email_edit.html:70 cps/templates/layout.html:29 +#: cps/templates/email_edit.html:70 cps/templates/layout.html:30 #: cps/templates/shelf_order.html:42 cps/templates/user_table.html:174 msgid "Back" msgstr "Πίσω" @@ -2471,7 +2570,7 @@ msgstr "Όνομα domain" msgid "Denied Domains (Blacklist)" msgstr "Domains που Απορρίφθηκαν (Μαύρη λίστα)" -#: cps/templates/feed.xml:21 cps/templates/layout.html:170 +#: cps/templates/feed.xml:21 cps/templates/layout.html:171 msgid "Next" msgstr "Επόμενο" @@ -2484,6 +2583,10 @@ msgstr "ʼΑνοιξε το .kobo/Kobo eReader.conf αρχείο σε πρόγρ msgid "Kobo Token:" msgstr "Kobo Μονάδα Συγχρονισμού" +#: cps/templates/grid.html:21 +msgid "List" +msgstr "" + #: cps/templates/http_error.html:31 #, fuzzy msgid "Calibre-Web Instance is unconfigured, please contact your administrator" @@ -2501,29 +2604,29 @@ msgstr "Επιστροφή στην Κεντρική" msgid "Logout User" msgstr "" -#: cps/templates/index.html:70 +#: cps/templates/index.html:71 msgid "Sort ascending according to download count" msgstr "" -#: cps/templates/index.html:71 +#: cps/templates/index.html:72 msgid "Sort descending according to download count" msgstr "" -#: cps/templates/index.html:77 cps/templates/search.html:34 -#: cps/templates/shelf.html:23 -msgid "Sort authors in alphabetical order" -msgstr "" - #: cps/templates/index.html:78 cps/templates/search.html:35 #: cps/templates/shelf.html:24 +msgid "Sort authors in alphabetical order" +msgstr "" + +#: cps/templates/index.html:79 cps/templates/search.html:36 +#: cps/templates/shelf.html:25 msgid "Sort authors in reverse alphabetical order" msgstr "" -#: cps/templates/index.html:82 +#: cps/templates/index.html:83 msgid "Sort ascending according to series index" msgstr "" -#: cps/templates/index.html:83 +#: cps/templates/index.html:84 msgid "Sort descending according to series index" msgstr "" @@ -2587,7 +2690,7 @@ msgstr "Τα βιβλία ταξινομήθηκαν ανά Αξιολόγηση msgid "Books ordered by file formats" msgstr "Τα βιβλία ταξινομήθηκαν ανά μορφές αρχείου" -#: cps/templates/index.xml:119 cps/templates/layout.html:135 +#: cps/templates/index.xml:119 cps/templates/layout.html:136 #: cps/templates/search_form.html:87 msgid "Shelves" msgstr "Ράφια" @@ -2596,63 +2699,67 @@ msgstr "Ράφια" msgid "Books organized in shelves" msgstr "Βιβλία οργανωμένα σε ράφια" -#: cps/templates/layout.html:29 +#: cps/templates/layout.html:30 msgid "Home" msgstr "Κεντρική" -#: cps/templates/layout.html:35 +#: cps/templates/layout.html:36 msgid "Toggle Navigation" msgstr "Αλλαγή Θέσης Περιήγησης" -#: cps/templates/layout.html:46 +#: cps/templates/layout.html:47 msgid "Search Library" msgstr "Αναζήτηση Βιβλιοθήκης" -#: cps/templates/layout.html:63 cps/templates/layout.html:117 +#: cps/templates/layout.html:64 cps/templates/layout.html:118 msgid "Uploading..." msgstr "Φόρτωση..." -#: cps/templates/layout.html:63 +#: cps/templates/layout.html:64 msgid "Error" msgstr "Σφάλμα" -#: cps/templates/layout.html:63 +#: cps/templates/layout.html:64 msgid "Upload done, processing, please wait..." msgstr "Το ανέβασμα έγινε, γίνεται επεξεργασία, παρακαλούμε περίμενε..." -#: cps/templates/layout.html:76 cps/templates/read.html:72 +#: cps/templates/layout.html:77 cps/templates/read.html:72 #: cps/templates/readcbr.html:84 cps/templates/readcbr.html:108 msgid "Settings" msgstr "Ρυθμίσεις" -#: cps/templates/layout.html:78 +#: cps/templates/layout.html:79 msgid "Account" msgstr "Λογαριασμός" -#: cps/templates/layout.html:80 +#: cps/templates/layout.html:81 msgid "Logout" msgstr "Αποσύνδεση" -#: cps/templates/layout.html:118 +#: cps/templates/layout.html:119 msgid "Please do not refresh the page" msgstr "Παρακαλούμε μην ανανεώσεις τη σελίδα" -#: cps/templates/layout.html:128 +#: cps/templates/layout.html:129 msgid "Browse" msgstr "Περιήγηση" -#: cps/templates/layout.html:141 cps/templates/stats.html:3 +#: cps/templates/layout.html:142 cps/templates/stats.html:3 msgid "About" msgstr "Σχετικά" -#: cps/templates/layout.html:155 +#: cps/templates/layout.html:156 msgid "Previous" msgstr "Προηγούμενο" -#: cps/templates/layout.html:182 +#: cps/templates/layout.html:183 msgid "Book Details" msgstr "Λεπτομέρειες Βιβλίου" +#: cps/templates/list.html:22 +msgid "Grid" +msgstr "" + #: cps/templates/login.html:18 msgid "Remember Me" msgstr "Να με Θυμάσαι" @@ -2757,7 +2864,7 @@ msgstr "" msgid "Select" msgstr "" -#: cps/templates/modal_dialogs.html:134 +#: cps/templates/modal_dialogs.html:134 cps/templates/tasks.html:45 #, fuzzy msgid "Ok" msgstr "Βιβλίο" @@ -2939,15 +3046,23 @@ msgstr "Με την επαλήθευση, θα συνδεθείτε αυτόμα msgid "This verification link will expire in 10 minutes." msgstr "Αυτός ο σύνδεσμος επαλήθευσης θα λήξει σε 10 λεπτά." -#: cps/templates/search.html:5 +#: cps/templates/schedule_edit.html:29 +msgid "Generate Book Cover Thumbnails" +msgstr "" + +#: cps/templates/schedule_edit.html:33 +msgid "Generate Series Cover Thumbnails" +msgstr "" + +#: cps/templates/search.html:6 msgid "No Results Found" msgstr "Δεν Βρέθηκαν Αποτελέσματα" -#: cps/templates/search.html:6 +#: cps/templates/search.html:7 msgid "Search Term:" msgstr "Όρος Αναζήτησης:" -#: cps/templates/search.html:8 +#: cps/templates/search.html:9 msgid "Results for:" msgstr "Αποτελέσματα για:" @@ -3000,23 +3115,23 @@ msgstr "" msgid "To:" msgstr "" -#: cps/templates/shelf.html:12 +#: cps/templates/shelf.html:13 msgid "Delete this Shelf" msgstr "Διαγραφή αυτού του Ραφιού" -#: cps/templates/shelf.html:13 +#: cps/templates/shelf.html:14 msgid "Edit Shelf Properties" msgstr "" -#: cps/templates/shelf.html:16 +#: cps/templates/shelf.html:17 msgid "Arrange books manually" msgstr "" -#: cps/templates/shelf.html:17 +#: cps/templates/shelf.html:18 msgid "Disable Change order" msgstr "" -#: cps/templates/shelf.html:17 +#: cps/templates/shelf.html:18 msgid "Enable Change order" msgstr "" @@ -3061,8 +3176,8 @@ msgid "System Statistics" msgstr "" #: cps/templates/stats.html:33 -msgid "Program Library" -msgstr "Πρόγραμμα Βιβλιοθήκης" +msgid "Program" +msgstr "" #: cps/templates/stats.html:34 msgid "Installed Version" @@ -3092,6 +3207,18 @@ msgstr "Χρόνος Λειτουργίας" msgid "Start Time" msgstr "Ώρα Έναρξης" +#: cps/templates/tasks.html:20 +msgid "Actions" +msgstr "" + +#: cps/templates/tasks.html:40 +msgid "This task will be cancelled. Any progress made by this task will be saved." +msgstr "" + +#: cps/templates/tasks.html:41 +msgid "If this is a scheduled task, it will be re-ran during the next scheduled time." +msgstr "" + #: cps/templates/user_edit.html:20 msgid "Reset user Password" msgstr "Επαναφορά Κωδικού χρήστη" diff --git a/cps/translations/es/LC_MESSAGES/messages.mo b/cps/translations/es/LC_MESSAGES/messages.mo index c8c6ae9eb095e4c7cc5df647b0efb6b8f77b5256..cb91cf3fff64c987b57d1dc04c2743a250126350 100644 GIT binary patch delta 10942 zcmYM(33yM}y2tTNBr*>YGV_lhl1L&6(HIl+JQK5`B|*)KQoH4%1Fc?THC3dgG+J%c zOlY;e&MB=b6;ut!p^BC|+_u#H{;c&p_dL%zpS9M1@3r3bu6J$Kv-}mWJuiE?=c`p& z;qagJl^rJz>r_|o|Nqk<#c?v}rePuu#|Ahb_53!hhDUAx0($5_#0;#N>NvjG9s6Mc z_Q$Q5>o~4ch1s59pe1_a3~YtZV^!RbUibw@;t@>3i|CJjX^s<&5g3Sx7=aB@&$YAT z&!C=r&h}qMZ`OBK($GZ3)=j7fKfw?@gbLs|D!`MdK+d9e{yXY9pL8=%4OC_lur{{D zARK{uej>)=JPc%gXDy8w{J=i&C1%mDKtBv5k9x5NDwW9?j9I9i=3^J^kHc^ScEw5! z9fvGC-7x{5Lj_cfHLx6Avgn+mp=0;rprbJweJ~pXuqlROd(@E>pfWHVmAM&M1?OQn zF0%c%P)D*3J-8J$|1s2i*D}e!&ggdr6lpBmCKjgyDzKT@6yL)fyns4_$ZRt~Jd%B< zJ|<&-)J9&w0$hm-^cE_^K8;L20ToDYBk~_lqYndmV6uH+vF*Q$N_9Ev%#LAQypGCH zXk+tUBr3&OSReah9ef_caD)AQJ8I!msK9=6X^f!Z%l0%d7B%ra)OC9qm8z|%0C!gay4``@5D{}|gloN_N>vqVgIQ>y) z_!4U36{zR8plV|mw!y=wqx2;z6-VIYwsyhT~#X(XGQ;_#VdK7g!T7paOY>%4qFoX8vSrV+_&#&!?dPdZEs4 z6n4VJs0mM@0=tb`@S*KjW;@zRFzQysqONNqDpP5w>)IM4u?s5oqfo`V6q8ur*+WAQ zUPA5c7mUJ3SOcS4m?O!+IQn_0z=on0oQYas9;#T^ppIm-?cYSr^8l5p@RlY++2|^g z-ZWH1b5J{6iwd9wV{sqq2u@>l{I~T1>TIjEGMT80%48NsV_VdQhM{U|3f9E=s10mr zMgA4>eg;(KU!x}Y0kz=Is2A^}YQi_q^rKLzPex@R2X#bwsOP&{hoY){0xCn(P?=ba z#O{>jxu$W60i9U_cO(mQP&+6>?QlLSu$8EQ-$whG&Scvto6gBY)R6zei9nC#dF$Q$tqk>7OiDsjAT7vq0 z4?e!O*4xO9bpkt@4Rk~w`h74!_kR!#?Qpbp9BQYNP{lPHHSq#e5w1rC_%Uk7pP`EB z7%JePPUibj3pGy>YJ3{%$QGiGsu;sr-}!)sime=V))lBDxsN)dDxFO~4(rfQMipgu zZ8uE6)N@pFc@D$E&MiSUOhl;|$UqC! zgq=|n4n$S|a8!*r?k0aog5j=;^Np&hqI z?QA%v;B;(=>(GP8k#CZ72b*GJ?w~$MlTZu3j@r?3)CNjX3+_b~?E%!;Uq;PSwXfr( z>(BqrG?e;T$lT7Sn2o;uOi?z+aQX`|6xX0?;sf;HcI!!0YVV-}i0W^OGzs(R4?+b{ zjM~^iOw;|pO+!1W#Z^edmZ)MGk9>2Smry(Y2AiP&0JG!Ps6aZPim)e!;4nKr0k!iP zs0|dOj(8jDX!c{U?*CWzfm0Yp|2k@?4{SeZpn0JdYNBLRakW4#*bz1H08}kJjS)EB z`l9`PrL_d3_h|0`j zJH7&A=x@P#_ys26jX~sJDT)|u7Rp6spdD%_1-3s7JJ6qm3SbvThAP)kGTVz2>Or`wt=iT4<~tn2b8h1*q|5s0^$@O|%iUvoh3k`%szshwYz4 zo$Y1x!kd_jx3MXv4mAOeM$I$9rJ~&A)P&7YXW9*wseY*OL8ytw zqcSud703dtj>V`Ae1dxZ5PI+gD!{uKuKVvd!n_cV3LqO}v5W1GK~=wtnrJm@p)IJ1 z4%zWjsD-bgcKkOgK>v{@bK#gwKgQY?Gg#l5pa!nR`gja$<9*bb#f&m9wnGp7iKyq6 zqK;%YD%A&V|1N6hf1zs0|0z?Xp{Pv8+I}LsnjoEqQrH+1upQRLF_?x+(1UwX890Yt zcneizcd!aNPaD1Q@xrJ~gkoomLw(rBU`w3&H2L?Yv6F#nxF7Xx{uZ^PN~2Ax8>6mK zS5);bL}g|-*2I5dCVGuAfj36YI~e_O1S;V1s0~cA&KpDiwe#f+$ahf@Znym}PywC9 zs_0W_QX7nVJ|2BA4RxIwp>9hLR1H0Yx+O28YG@^T@FUa_ee2SwMdK$s@CdcT;39Lz z`KSfPVjNCJrTjHa!eZ=;hw<@s9BTrthbq!^)bs67JMV)k@~6=c-REg2(nZ!1)LE9J z9z1M4XT6JxJaC+;?pRc+>!5a?g344!`+HB+d;?Jd3`2jMgdDl+%%-78Uc+Qujf(s; z)I=4i1umjed=+(;mB*V5`CvWz8K@fSkJ@n&>Uz#V)y`r&{v|4)?;rO${|XvP@m18> z-?9%pvQ~Mz`8^1IF$cBdR@R}ou@Zk@z*daco@kyQiK?Mj(S!R?f&Pf~Sl{`L zh9-`jWU4q1m7*#5EIyA@@GdsNF_XgZ~k1FyX zQAhg_^<2a>&R;JkO*3D-Ca8!9p{o5wR3K}y4(`MVJclWG8^bYfy7?PTL)3zEP|qzu zWoQkC;k&4ScVHJhKArpzrV&q`2jVQ$#3xW6mcLQABYuW?F&Fdc_r*k9iP5+Rm6`8R z8#;s9;dRteJVY(*J<}AY2Nh_#OQQyjCa4Lzqh9Qbb#V;p#U-d6ypL(P$9fI3=+~HK z{`FcX>q6A{=ct;vhYIW=HpHOkOij2gX+$$H1u0x-F~;DZsGV1zZK^iY+8dJ?pNg^g zmUSoU53LiZ4cx;7^qXUfI~A3QzNl+H1j)4PETqwZfsavVe;yT(_w(k#TBwOTp^9ic zQs~ZNR89PiN@e0)b94dX(LQt9)8`2q%ESNd_N9T%ZeJ_nWRk1!U?F%-{YAl|^<_y=Y)r_=RC^ACqFU`_ga zQ9C|^I;)4MYEGYLCTfGK`o5^@E<`Oj1v}w9)bn3sPrQh=F>AirKtI&HL(o+!me8n= zWtf5IP&*C$FB5S%>YMLD?IZ&gKptjdUmS=FQ5(2me}9BJ^Y8^`o>&Z`Umta3ISa_Y zzI3e^P|7=_b~FZ6gp*OVu^3f!yHSB&L_O!f(9}c()}h}B_1-|#kxa9{FT%R?H=*7; zipt0j3(3D8{F4ElNzfv*vnMf?{xrDU41Cp$S3^yZi9N9+=Hr{F3D05<{)T!#X|V~U zEvhI7p=xI=YQb5kjlPNjy8oN)1E1Ol4r5gwIE6`g9&^!WiAiA|)~7!en_w|E!tYTv z;P;v_9d+h?a5&CFop}Wg#s?Ut`#<1yt`-AhQ4hR{-EbdvME|AcR`kJI^yj0hzXY|T zo!9`6pg-P2ZJ^Q{X6Js`g?<$3sGdU2KNmw--}#z`7oNi)yns=73w1PA|J$Uz9_ow> zQ5l$v%FreZ#cwbSFQAU*4k{y6mpRTjY=C*V8Z}P^KK}RrztYgoqnDeMHAh7}61Afb zu?p_SKso(Y*egV$K53w(%y=kg`9#*6O4l1BeFap1`{j1oNe$_Q5fY#WP z{;MvHNE+u*)p{3oy<*-ne`Oki4e4*fC_If?;5I7IuwpZDHfm=RP)D*8qwxSL6Q@x} z_A_e3w^12%ecv|sJqdjoNW(15K`mT_T6hfxU>Od^axB2uwdRlQsi?r#pi;dDwV|)= z?{`oEM!#d`8;Lx}KmXHc!4FGN5&si|@rv~>X3+OqXC}->Wo#g7p~q$&6)#~n2EWTc7h-Ev{|(H; zFK{6Gyl1|EPhv0nD^N#v6?OK`MssvwsQ2TsHugd{k;XI{+R18chTBjJ-ayqrvrXn3 zKi*n`n&1p}z=v25+r4ixH6Gj0-(md|edxE`Y;1=*;;x&?zpl+-27GY>Ds?kZN3jug zw!6>|k79NF0b}u|)o+Wb>be-tcyrW(J#D`LHUBu&`_oVXyt0M-tMMiSn(%$=VN?n) zSpPs}s@ezU`5aWn+MyO2YR8|#0Qyt0Cc3B%thN0zjG_OX9lxmul&Z?5Cc^fps_lUa zs0ed$0oKQI>oxSJAGXzec;ZljWS}yTgMF|wJ`Mou(l4{WSD=d7y-7o<4f@b57>O#H zY-?N8&ikRR)hw)vt56@3cdR?moBmN$=1$o08>j%hJ~Blfg$leLvX1Ly(gqVG}C8!5aq89oYwZr%_^J%V&`h5VZn8u?5Uu4JEVIckOsP_(`=09S`ub?t< z2i-a}{I{ElGEftBMxE^_%)sYR)w~52`4LntT*d^f^r`u)S|Vz^8|wLSsCiyNt+O7L zsV`CMT>g~&Yv2I`VHmx`q%75%g-VXaEuf%Bl3RT<}u?Aj2&HKQmp=;x_$4nfEN?|xo!c0_P8*l)Aj8)Kouenwsm_@%1 zw#5RB#$r_Q?!YGayX~j$GoR{0Ol91Cokj~9dr>?819cRY_M5=MF@k=yH669{HmIEx zpfWH473eC|2W=y&>aSxpyoY+v?|>PP$9UcUWEviR=zyB25EZ~1n2aTuf=4kD{}*+} zq2*?$E%5QqQD-u*FEJM%|NsB%X=vwLQJ=_9Q9C({+WB>i z!bhktSJWYMM2T37em?5`5g3O>c6=e~C^lksJc!!ZDb$DT8rF4b+_nRepP3&#sG3N| z7|cK|+!>Y1eyD&7QD^@m>bdQxqWT8)eg!JPpHRj32zBOOpPPSX%s^Ku9ZN%Bu6d|P zmth`mw&T}PRsR?2!&3RM*>MQ!{Ycx-z$)~cpcghr9bF#ky>Y03W?}-aKI~L-md#Cx zFDpt(NiQoI&^om2Mqx{D|Hf$zGd-EvO|!Df8cpz2@_Hh@VOhb%?oG?~Z!W4{mRWw; G`~Lt9zt4>T delta 11013 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 diff --git a/cps/translations/es/LC_MESSAGES/messages.po b/cps/translations/es/LC_MESSAGES/messages.po index 63bc1161..97ddd392 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: 2022-04-18 20:01+0200\n" +"POT-Creation-Date: 2022-05-01 13:22+0200\n" "PO-Revision-Date: 2020-05-25 17:22+0200\n" "Last-Translator: minakmostoles \n" "Language: es\n" @@ -18,597 +18,622 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.9.1\n" +"Generated-By: Babel 2.8.0\n" # "Last-Translator: victorhck \n" -#: cps/about.py:86 +#: cps/about.py:84 msgid "Statistics" msgstr "Estadísticas" -#: cps/admin.py:141 +#: cps/admin.py:146 msgid "Server restarted, please reload page" msgstr "Servidor reiniciado. Por favor, recargue la página" -#: cps/admin.py:143 +#: cps/admin.py:148 msgid "Performing shutdown of server, please close window" msgstr "El servidor se está apagando. Por favor, cierre la ventana" -#: cps/admin.py:151 +#: cps/admin.py:156 msgid "Reconnect successful" msgstr "Reconexión correcta" -#: cps/admin.py:154 +#: cps/admin.py:159 msgid "Unknown command" msgstr "Comando desconocido" -#: cps/admin.py:176 cps/editbooks.py:713 cps/editbooks.py:892 -#: cps/editbooks.py:894 cps/editbooks.py:930 cps/editbooks.py:947 -#: cps/updater.py:608 cps/uploader.py:93 cps/uploader.py:103 +#: cps/admin.py:192 cps/editbooks.py:571 cps/editbooks.py:573 +#: cps/editbooks.py:609 cps/editbooks.py:626 cps/editbooks.py:1233 +#: cps/updater.py:613 cps/uploader.py:87 cps/uploader.py:97 msgid "Unknown" msgstr "Desconocido" -#: cps/admin.py:197 +#: cps/admin.py:217 msgid "Admin page" msgstr "Página de administración" -#: cps/admin.py:217 +#: cps/admin.py:237 msgid "Basic Configuration" msgstr "Configuración básica" -#: cps/admin.py:255 +#: cps/admin.py:275 msgid "UI Configuration" msgstr "Configuración de la interfaz de usuario" -#: cps/admin.py:289 cps/templates/admin.html:51 +#: cps/admin.py:309 cps/templates/admin.html:51 #, fuzzy msgid "Edit Users" msgstr "Editar usuarios" -#: cps/admin.py:333 cps/opds.py:529 cps/templates/grid.html:13 +#: cps/admin.py:353 cps/opds.py:532 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "Todo" -#: cps/admin.py:360 cps/admin.py:1648 +#: cps/admin.py:380 cps/admin.py:1365 msgid "User not found" msgstr "Usuario no encontrado" -#: cps/admin.py:374 +#: cps/admin.py:394 msgid "{} users deleted successfully" msgstr "{} usuarios eliminados con éxito" -#: cps/admin.py:397 cps/templates/config_view_edit.html:133 +#: cps/admin.py:417 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:418 cps/admin.py:424 +#: cps/admin.py:438 cps/admin.py:444 msgid "Malformed request" msgstr "Petición mal formulada" -#: cps/admin.py:436 cps/admin.py:1526 +#: cps/admin.py:456 cps/admin.py:1962 msgid "Guest Name can't be changed" msgstr "El nombre de invitado no se puede cambiar" -#: cps/admin.py:448 +#: cps/admin.py:468 msgid "Guest can't have this role" msgstr "El invitado no puede tener ese rol" -#: cps/admin.py:460 cps/admin.py:1484 +#: cps/admin.py:480 cps/admin.py:1920 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:464 cps/admin.py:478 +#: cps/admin.py:484 cps/admin.py:498 msgid "Value has to be true or false" msgstr "Valor tiene que ser verdadero o falso" -#: cps/admin.py:466 +#: cps/admin.py:486 msgid "Invalid role" msgstr "Rol inválido" -#: cps/admin.py:470 +#: cps/admin.py:490 msgid "Guest can't have this view" msgstr "El invitado no puede tener esta vista" -#: cps/admin.py:480 +#: cps/admin.py:500 msgid "Invalid view" msgstr "Vista no válida" -#: cps/admin.py:483 +#: cps/admin.py:503 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:487 +#: cps/admin.py:507 msgid "No Valid Locale Given" msgstr "No hay un sitio válido" -#: cps/admin.py:498 +#: cps/admin.py:518 msgid "No Valid Book Language Given" msgstr "No se ha indicado un idioma válido para el libro" -#: cps/admin.py:500 cps/editbooks.py:1267 +#: cps/admin.py:520 cps/editbooks.py:438 msgid "Parameter not found" msgstr "Parámetro no encontrado" -#: cps/admin.py:553 +#: cps/admin.py:557 msgid "Invalid Read Column" msgstr "Columna de lectura no válida" -#: cps/admin.py:559 +#: cps/admin.py:563 msgid "Invalid Restricted Column" msgstr "Columna restringida no válida" -#: cps/admin.py:579 cps/admin.py:1355 +#: cps/admin.py:583 cps/admin.py:1791 msgid "Calibre-Web configuration updated" msgstr "Configuración de Calibre-Web actualizada" -#: cps/admin.py:591 +#: cps/admin.py:595 msgid "Do you really want to delete the Kobo Token?" msgstr "¿Realmente quieres borrar el Token de Kobo?" -#: cps/admin.py:593 +#: cps/admin.py:597 msgid "Do you really want to delete this domain?" msgstr "¿Realmente deseas borrar este dominio?" -#: cps/admin.py:595 +#: cps/admin.py:599 msgid "Do you really want to delete this user?" msgstr "¿Realmente quieres borrar este usuario?" -#: cps/admin.py:597 +#: cps/admin.py:601 msgid "Are you sure you want to delete this shelf?" msgstr "¿Realmente quieres eliminar este estante?" -#: cps/admin.py:599 +#: cps/admin.py:603 #, 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:601 +#: cps/admin.py:605 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:603 +#: cps/admin.py:607 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:605 +#: cps/admin.py:609 #, 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:607 +#: cps/admin.py:611 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:610 +#: cps/admin.py:614 #, 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:612 +#: cps/admin.py:616 #, 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:614 +#: cps/admin.py:618 +msgid "Calibre-Web will search for updated Covers and update Cover Thumbnails, this may take a while?" +msgstr "" + +#: cps/admin.py:620 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:764 -msgid "Tag not found" -msgstr "Etiqueta no encontrada" - -#: cps/admin.py:776 -msgid "Invalid Action" -msgstr "Acción no válida" - -#: cps/admin.py:893 cps/admin.py:899 cps/admin.py:909 cps/admin.py:919 +#: cps/admin.py:862 cps/admin.py:868 cps/admin.py:878 cps/admin.py:888 #: 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:895 cps/admin.py:901 cps/admin.py:911 cps/admin.py:921 +#: cps/admin.py:864 cps/admin.py:870 cps/admin.py:880 cps/admin.py:890 #: 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:936 +#: cps/admin.py:905 msgid "{} sync entries deleted" msgstr "" -#: cps/admin.py:1059 +#: cps/admin.py:953 +msgid "Tag not found" +msgstr "Etiqueta no encontrada" + +#: cps/admin.py:965 +msgid "Invalid Action" +msgstr "Acción no válida" + +#: cps/admin.py:1080 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:1104 +#: cps/admin.py:1125 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:1110 +#: cps/admin.py:1131 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:1140 +#: cps/admin.py:1161 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:1146 +#: cps/admin.py:1167 #, 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:1149 +#: cps/admin.py:1170 msgid "Please Enter a LDAP Service Account" msgstr "Por favor, introduce una cuenta de servicio LDAP" -#: cps/admin.py:1154 +#: cps/admin.py:1175 #, 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:1156 +#: cps/admin.py:1177 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "El LDAP Group Object Filter tiene un paréntesis diferente" -#: cps/admin.py:1160 +#: cps/admin.py:1181 #, 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:1162 +#: cps/admin.py:1183 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "El LDAP Group Object Filter tiene un paréntesis diferente" -#: cps/admin.py:1169 +#: cps/admin.py:1190 #, 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:1171 +#: cps/admin.py:1192 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "El filtro de LDAP \"Member User\" tiene paréntesis no coincidentes" -#: cps/admin.py:1178 +#: cps/admin.py:1199 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:1223 cps/admin.py:1339 cps/admin.py:1437 cps/admin.py:1554 -#: cps/admin.py:1623 cps/editbooks.py:678 cps/editbooks.py:882 -#: cps/editbooks.py:1130 cps/shelf.py:100 cps/shelf.py:160 cps/shelf.py:203 -#: cps/shelf.py:278 cps/shelf.py:343 cps/shelf.py:380 cps/shelf.py:456 -#: cps/web.py:1742 +#: cps/admin.py:1230 cps/admin.py:1852 +msgid "Add new user" +msgstr "Añadir un nuevo usuario" + +#: cps/admin.py:1239 cps/templates/admin.html:100 +msgid "Edit E-mail Server Settings" +msgstr "Cambiar parámetros de correo" + +#: cps/admin.py:1258 +msgid "Gmail Account Verification Successful" +msgstr "Verificación de cuenta de Gmail exitosa" + +#: cps/admin.py:1277 cps/admin.py:1658 cps/admin.py:1775 cps/admin.py:1873 +#: cps/admin.py:1990 cps/editbooks.py:227 cps/editbooks.py:301 +#: cps/editbooks.py:1196 cps/shelf.py:82 cps/shelf.py:142 cps/shelf.py:185 +#: cps/shelf.py:235 cps/shelf.py:272 cps/shelf.py:343 cps/shelf.py:457 +#: cps/tasks/convert.py:136 cps/web.py:1413 #, python-format msgid "Database error: %(error)s." msgstr "Error en la base de datos: %(error)s." -#: cps/admin.py:1235 -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:1253 -msgid "DB is not Writeable" -msgstr "La base de datos no es modificable" - -#: cps/admin.py:1266 -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:1270 -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:1378 -#, fuzzy -msgid "Database Settings updated" -msgstr "Actualizados los ajustes del servidor de correo electrónico" - -#: cps/admin.py:1386 -#, fuzzy -msgid "Database Configuration" -msgstr "Configuración de la base de datos" - -#: cps/admin.py:1402 cps/web.py:1557 -msgid "Please fill out all fields!" -msgstr "¡Por favor, rellena todos los campos!" - -#: cps/admin.py:1410 -msgid "E-mail is not from valid domain" -msgstr "El correo electrónico no tiene un dominio válido" - -#: cps/admin.py:1416 cps/admin.py:1576 -msgid "Add new user" -msgstr "Añadir un nuevo usuario" - -#: cps/admin.py:1427 -#, python-format -msgid "User '%(user)s' created" -msgstr "Usuario '%(user)s' creado" - -#: cps/admin.py:1433 -#, fuzzy -msgid "Found an existing account for this e-mail address or name." -msgstr "Encontrada una cuenta existente para este correo electrónico o nombre de usuario." - -#: cps/admin.py:1463 -#, python-format -msgid "User '%(nick)s' deleted" -msgstr "Usuario '%(nick)s' eliminado" - -#: cps/admin.py:1465 cps/admin.py:1466 -msgid "Can't delete Guest User" -msgstr "No puedes borrar al Usuario Invitado" - -#: cps/admin.py:1469 -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:1542 cps/admin.py:1667 -#, python-format -msgid "Edit User %(nick)s" -msgstr "Editar Usuario %(nick)s" - -#: cps/admin.py:1546 -#, python-format -msgid "User '%(nick)s' updated" -msgstr "Usuario '%(nick)s' actualizado" - -#: cps/admin.py:1550 cps/admin.py:1682 cps/web.py:1582 cps/web.py:1642 -msgid "An unknown error occurred. Please try again later." -msgstr "Ha ocurrido un error desconocido. Por favor vuelva a intentarlo más tarde." - -#: cps/admin.py:1585 cps/templates/admin.html:100 -msgid "Edit E-mail Server Settings" -msgstr "Cambiar parámetros de correo" - -#: cps/admin.py:1604 -msgid "Gmail Account Verification Successful" -msgstr "Verificación de cuenta de Gmail exitosa" - -#: cps/admin.py:1630 +#: cps/admin.py:1284 #, 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:1633 +#: cps/admin.py:1287 #, 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:1635 +#: cps/admin.py:1289 msgid "Please configure your e-mail address first..." msgstr "Por favor, configure su correo electrónico primero..." -#: cps/admin.py:1637 +#: cps/admin.py:1291 msgid "E-mail server settings updated" msgstr "Actualizados los ajustes del servidor de correo electrónico" -#: cps/admin.py:1679 +#: cps/admin.py:1314 cps/templates/admin.html:191 +msgid "Edit Scheduled Tasks Settings" +msgstr "" + +#: cps/admin.py:1326 +msgid "Invalid start time for task specified" +msgstr "" + +#: cps/admin.py:1331 +msgid "Invalid duration for task specified" +msgstr "" + +#: cps/admin.py:1340 +msgid "Scheduled tasks settings updated" +msgstr "" + +#: cps/admin.py:1350 cps/admin.py:1399 cps/admin.py:1986 cps/web.py:1254 +#: cps/web.py:1315 +msgid "An unknown error occurred. Please try again later." +msgstr "Ha ocurrido un error desconocido. Por favor vuelva a intentarlo más tarde." + +#: cps/admin.py:1354 +msgid "Settings DB is not Writeable" +msgstr "" + +#: cps/admin.py:1384 cps/admin.py:1978 +#, python-format +msgid "Edit User %(nick)s" +msgstr "Editar Usuario %(nick)s" + +#: cps/admin.py:1396 #, python-format msgid "Password for user %(user)s reset" msgstr "Contraseña para el usuario %(user)s reinicializada" -#: cps/admin.py:1685 cps/web.py:1522 +#: cps/admin.py:1402 cps/web.py:1194 msgid "Please configure the SMTP mail settings first..." msgstr "Configura primero los parámetros del servidor SMTP..." -#: cps/admin.py:1696 +#: cps/admin.py:1413 msgid "Logfile viewer" msgstr "Visor del fichero de log" -#: cps/admin.py:1762 +#: cps/admin.py:1479 msgid "Requesting update package" msgstr "Solicitando paquete de actualización" -#: cps/admin.py:1763 +#: cps/admin.py:1480 msgid "Downloading update package" msgstr "Descargando paquete de actualización" -#: cps/admin.py:1764 +#: cps/admin.py:1481 msgid "Unzipping update package" msgstr "Descomprimiendo paquete de actualización" -#: cps/admin.py:1765 +#: cps/admin.py:1482 msgid "Replacing files" msgstr "Remplazando archivos" -#: cps/admin.py:1766 +#: cps/admin.py:1483 msgid "Database connections are closed" msgstr "Los conexiones con la base datos están cerradas" -#: cps/admin.py:1767 +#: cps/admin.py:1484 msgid "Stopping server" msgstr "Parando el servidor" -#: cps/admin.py:1768 +#: cps/admin.py:1485 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:1769 cps/admin.py:1770 cps/admin.py:1771 cps/admin.py:1772 -#: cps/admin.py:1773 cps/admin.py:1774 +#: cps/admin.py:1486 cps/admin.py:1487 cps/admin.py:1488 cps/admin.py:1489 +#: cps/admin.py:1490 cps/admin.py:1491 msgid "Update failed:" msgstr "Falló la actualización:" -#: cps/admin.py:1769 cps/updater.py:384 cps/updater.py:619 cps/updater.py:621 +#: cps/admin.py:1486 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 msgid "HTTP Error" msgstr "Error HTTP" -#: cps/admin.py:1770 cps/updater.py:386 cps/updater.py:623 +#: cps/admin.py:1487 cps/updater.py:391 cps/updater.py:628 msgid "Connection error" msgstr "Error de conexión" -#: cps/admin.py:1771 cps/updater.py:388 cps/updater.py:625 +#: cps/admin.py:1488 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:1772 cps/updater.py:390 cps/updater.py:627 +#: cps/admin.py:1489 cps/updater.py:395 cps/updater.py:632 msgid "General error" msgstr "Error general" -#: cps/admin.py:1773 +#: cps/admin.py:1490 #, 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:1774 +#: cps/admin.py:1491 msgid "Files could not be replaced during update" msgstr "" -#: cps/admin.py:1798 +#: cps/admin.py:1515 #, fuzzy msgid "Failed to extract at least One LDAP User" msgstr "Error al crear al menos un usuario LDAP" -#: cps/admin.py:1843 +#: cps/admin.py:1560 msgid "Failed to Create at Least One LDAP User" msgstr "Error al crear al menos un usuario LDAP" -#: cps/admin.py:1856 +#: cps/admin.py:1573 #, python-format msgid "Error: %(ldaperror)s" msgstr "Error: %(ldaperror)s" -#: cps/admin.py:1860 +#: cps/admin.py:1577 msgid "Error: No user returned in response of LDAP server" msgstr "Error: el servidor LDAP no ha devuelto ningún usuario" -#: cps/admin.py:1893 +#: cps/admin.py:1610 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:1895 +#: cps/admin.py:1612 msgid "{} User Successfully Imported" msgstr "{} Usuario importado con éxito" -#: cps/converter.py:30 +#: cps/admin.py:1670 +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:1689 +msgid "DB is not Writeable" +msgstr "La base de datos no es modificable" + +#: cps/admin.py:1702 +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:1706 +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:1814 +#, fuzzy +msgid "Database Settings updated" +msgstr "Actualizados los ajustes del servidor de correo electrónico" + +#: cps/admin.py:1822 +#, fuzzy +msgid "Database Configuration" +msgstr "Configuración de la base de datos" + +#: cps/admin.py:1838 cps/web.py:1229 +msgid "Please fill out all fields!" +msgstr "¡Por favor, rellena todos los campos!" + +#: cps/admin.py:1846 +msgid "E-mail is not from valid domain" +msgstr "El correo electrónico no tiene un dominio válido" + +#: cps/admin.py:1863 +#, python-format +msgid "User '%(user)s' created" +msgstr "Usuario '%(user)s' creado" + +#: cps/admin.py:1869 +#, fuzzy +msgid "Found an existing account for this e-mail address or name." +msgstr "Encontrada una cuenta existente para este correo electrónico o nombre de usuario." + +#: cps/admin.py:1899 +#, python-format +msgid "User '%(nick)s' deleted" +msgstr "Usuario '%(nick)s' eliminado" + +#: cps/admin.py:1901 cps/admin.py:1902 +msgid "Can't delete Guest User" +msgstr "No puedes borrar al Usuario Invitado" + +#: cps/admin.py:1905 +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:1982 +#, python-format +msgid "User '%(nick)s' updated" +msgstr "Usuario '%(nick)s' actualizado" + +#: cps/converter.py:31 msgid "not installed" msgstr "no instalado" -#: cps/converter.py:31 +#: cps/converter.py:32 msgid "Execution permissions missing" msgstr "Faltan permisos de ejecución" -#: cps/db.py:674 cps/web.py:710 cps/web.py:1222 +#: cps/db.py:681 cps/search.py:134 cps/web.py:720 #, python-format msgid "Custom Column No.%(column)d is not existing in calibre database" msgstr "Columna personalizada No.%(column)d no existe en la base de datos calibre" -#: cps/db.py:917 cps/templates/config_edit.html:204 +#: cps/db.py:924 cps/templates/config_edit.html:204 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 -#: cps/web.py:551 cps/web.py:585 cps/web.py:646 cps/web.py:671 cps/web.py:1003 -#: cps/web.py:1032 cps/web.py:1066 cps/web.py:1093 cps/web.py:1132 +#: cps/web.py:549 cps/web.py:583 cps/web.py:656 cps/web.py:681 cps/web.py:962 +#: cps/web.py:992 cps/web.py:1027 cps/web.py:1055 cps/web.py:1094 msgid "None" msgstr "Ninguno" -#: cps/editbooks.py:295 cps/editbooks.py:297 -msgid "Book Format Successfully Deleted" -msgstr "Formato de libro eliminado con éxito" - -#: cps/editbooks.py:304 cps/editbooks.py:306 -msgid "Book Successfully Deleted" -msgstr "Libro eliminado con éxito" - -#: cps/editbooks.py:358 -msgid "You are missing permissions to delete books" -msgstr "" - -#: cps/editbooks.py:373 cps/editbooks.py:765 cps/web.py:518 cps/web.py:1783 -#: cps/web.py:1825 cps/web.py:1870 +#: cps/editbooks.py:109 cps/editbooks.py:890 cps/web.py:516 cps/web.py:1454 +#: cps/web.py:1496 cps/web.py:1541 msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible" msgstr "oh, oh, el libro seleccionado no está disponible. El archivo no existe o no es accesible" -#: cps/editbooks.py:408 -msgid "edit metadata" -msgstr "editar metadatos" - -#: cps/editbooks.py:457 -#, python-format -msgid "%(seriesindex)s is not a valid number, skipping" -msgstr "%(seriesindex) no es un número válido, saltando" - -#: cps/editbooks.py:493 cps/editbooks.py:1001 -#, fuzzy, python-format -msgid "'%(langname)s' is not a valid language" -msgstr "%(langname)s no es un idioma válido" - -#: cps/editbooks.py:634 -msgid "User has no rights to upload additional file formats" -msgstr "" - -#: cps/editbooks.py:639 cps/editbooks.py:1029 -#, 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:643 cps/editbooks.py:1033 -msgid "File to be uploaded must have an extension" -msgstr "El archivo a subir debe tener una extensión" - -#: cps/editbooks.py:655 -#, python-format -msgid "Failed to create path %(path)s (Permission denied)." -msgstr "Fallo al crear la ruta %(path)s (permiso denegado)" - -#: cps/editbooks.py:660 -#, python-format -msgid "Failed to store file %(file)s." -msgstr "Fallo al guardar el archivo %(file)s." - -#: cps/editbooks.py:683 -#, python-format -msgid "File format %(ext)s added to %(book)s" -msgstr "Archivo con formato %(ext)s añadido a %(book)s" - -#: cps/editbooks.py:697 cps/editbooks.py:809 +#: cps/editbooks.py:153 cps/editbooks.py:1216 msgid "User has no rights to upload cover" msgstr "" -#: cps/editbooks.py:828 +#: cps/editbooks.py:173 cps/editbooks.py:711 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:869 +#: cps/editbooks.py:214 msgid "Metadata successfully updated" msgstr "Metadatos actualizados con éxito" -#: cps/editbooks.py:887 +#: cps/editbooks.py:232 msgid "Error editing book: {}" msgstr "" -#: cps/editbooks.py:951 -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:1041 -#, 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:1061 -#, 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:1117 +#: cps/editbooks.py:287 #, python-format msgid "File %(file)s uploaded" msgstr "El fichero %(file)s ha sido subido" -#: cps/editbooks.py:1143 +#: cps/editbooks.py:314 msgid "Source or destination format for conversion missing" msgstr "Falta la fuente o el formato de destino para la conversión" -#: cps/editbooks.py:1151 +#: cps/editbooks.py:322 #, 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:1155 +#: cps/editbooks.py:326 #, 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:630 +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:685 cps/editbooks.py:1010 +#, fuzzy, python-format +msgid "'%(langname)s' is not a valid language" +msgstr "%(langname)s no es un idioma válido" + +#: cps/editbooks.py:723 cps/editbooks.py:1157 +#, 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:727 cps/editbooks.py:1161 +msgid "File to be uploaded must have an extension" +msgstr "El archivo a subir debe tener una extensión" + +#: cps/editbooks.py:735 +#, 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:755 +#, 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:812 cps/editbooks.py:814 +msgid "Book Format Successfully Deleted" +msgstr "Formato de libro eliminado con éxito" + +#: cps/editbooks.py:821 cps/editbooks.py:823 +msgid "Book Successfully Deleted" +msgstr "Libro eliminado con éxito" + +#: cps/editbooks.py:875 +msgid "You are missing permissions to delete books" +msgstr "" + +#: cps/editbooks.py:925 +msgid "edit metadata" +msgstr "editar metadatos" + +#: cps/editbooks.py:974 +#, python-format +msgid "%(seriesindex)s is not a valid number, skipping" +msgstr "%(seriesindex) no es un número válido, saltando" + +#: cps/editbooks.py:1152 +msgid "User has no rights to upload additional file formats" +msgstr "" + +#: cps/editbooks.py:1173 +#, python-format +msgid "Failed to create path %(path)s (Permission denied)." +msgstr "Fallo al crear la ruta %(path)s (permiso denegado)" + +#: cps/editbooks.py:1178 +#, python-format +msgid "Failed to store file %(file)s." +msgstr "Fallo al guardar el archivo %(file)s." + +#: cps/editbooks.py:1201 +#, python-format +msgid "File format %(ext)s added to %(book)s" +msgstr "Archivo con formato %(ext)s añadido a %(book)s" + #: cps/gdrive.py:58 msgid "Google Drive setup not completed, try to deactivate and activate Google Drive again" msgstr "La configuración de Google Drive no se ha completado, intente desactivar y activar Google Drive nuevamente" @@ -617,27 +642,27 @@ 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:81 +#: cps/helper.py:80 #, 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:87 cps/tasks/convert.py:75 +#: cps/helper.py:86 cps/tasks/convert.py:75 #, 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:92 +#: cps/helper.py:91 #, python-format msgid "%(format)s not found: %(fn)s" msgstr "%(format)s no encontrado: %(fn)s" -#: cps/helper.py:97 cps/helper.py:221 cps/templates/detail.html:41 -#: cps/templates/detail.html:45 +#: cps/helper.py:96 cps/helper.py:221 cps/templates/detail.html:42 +#: cps/templates/detail.html:46 msgid "Send to Kindle" msgstr "Enviar al Kindle" -#: cps/helper.py:98 cps/helper.py:115 cps/helper.py:223 +#: cps/helper.py:97 cps/helper.py:115 cps/helper.py:223 msgid "This e-mail has been sent via Calibre-Web." msgstr "Este correo electrónico ha sido enviado usando Calibre-Web." @@ -677,132 +702,112 @@ msgstr "Enviar al Kindle" 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:353 +#: cps/helper.py:341 msgid "Read status could not set: {}" msgstr "" -#: cps/helper.py:376 +#: cps/helper.py:364 #, 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:382 +#: cps/helper.py:370 #, python-format msgid "Deleting book %(id)s failed: %(message)s" msgstr "El eliminado del libro %(id)s falló: %(message)s" -#: cps/helper.py:393 +#: cps/helper.py:381 #, 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:458 +#: cps/helper.py:446 #, 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:529 cps/helper.py:538 +#: cps/helper.py:518 cps/helper.py:527 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "Fichero %(file)s no encontrado en Google Drive" -#: cps/helper.py:572 +#: cps/helper.py:561 #, 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:592 +#: cps/helper.py:581 msgid "Error in rename file in path: {}" msgstr "" -#: cps/helper.py:610 +#: cps/helper.py:599 #, 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:651 cps/web.py:1737 +#: cps/helper.py:640 cps/web.py:1408 #, fuzzy msgid "Found an existing account for this e-mail address" msgstr "Encontrada una cuenta existente para esa dirección de correo electrónico" -#: cps/helper.py:659 +#: cps/helper.py:648 msgid "This username is already taken" msgstr "Este nombre de usuario ya está en uso" -#: cps/helper.py:669 +#: cps/helper.py:658 msgid "Invalid e-mail address format" msgstr "Dirección de correo no válida" -#: cps/helper.py:754 -msgid "Python modul 'advocate' is not installed but is needed for cover downloads" +#: cps/helper.py:808 +msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "" -#: cps/helper.py:767 +#: cps/helper.py:818 msgid "Error Downloading Cover" msgstr "Error al descargar la cubierta" -#: cps/helper.py:770 +#: cps/helper.py:821 msgid "Cover Format Error" msgstr "Error en el formato de la cubierta" -#: cps/helper.py:773 +#: cps/helper.py:824 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "" -#: cps/helper.py:783 +#: cps/helper.py:834 msgid "Failed to create path for cover" msgstr "Error al crear una ruta para la cubierta" -#: cps/helper.py:799 +#: cps/helper.py:850 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:810 +#: cps/helper.py:861 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:822 +#: cps/helper.py:873 msgid "Invalid cover file content" msgstr "" -#: cps/helper.py:826 +#: cps/helper.py:877 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "Sólo se admiten como portada los archivos jpg/jpeg" -#: cps/helper.py:878 +#: cps/helper.py:929 msgid "Unrar binary file not found" msgstr "No se encuentra el archivo binario UnRar" -#: cps/helper.py:889 +#: cps/helper.py:940 msgid "Error excecuting UnRar" msgstr "Error ejecutando UnRar" -#: cps/helper.py:937 -msgid "Waiting" -msgstr "Esperando" - -#: cps/helper.py:939 -msgid "Failed" -msgstr "Fallido" - -#: cps/helper.py:941 -msgid "Started" -msgstr "Comenzado" - -#: cps/helper.py:943 -msgid "Finished" -msgstr "Finalizado" - -#: cps/helper.py:945 -msgid "Unknown Status" -msgstr "Estado desconocido" - -#: cps/kobo_auth.py:128 +#: cps/kobo_auth.py:89 #, fuzzy msgid "Please access Calibre-Web from non localhost to get valid api_endpoint for kobo device" msgstr "Por favor, accede a calibre-web desde una ubicación que no sea localhost para obtener una api_endpoint válida para tu dispositivo Kobo" -#: cps/kobo_auth.py:154 +#: cps/kobo_auth.py:115 msgid "Kobo Setup" msgstr "Configuración de Kobo" @@ -811,7 +816,7 @@ msgstr "Configuración de Kobo" msgid "Register with %(provider)s" msgstr "Registrado con %(provider)s" -#: cps/oauth_bb.py:138 cps/remotelogin.py:130 cps/web.py:1613 +#: cps/oauth_bb.py:138 cps/remotelogin.py:130 cps/web.py:1286 #, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "has iniciado sesión como : '%(nickname)s'" @@ -872,12 +877,12 @@ msgstr "Error en Google Oauth, por favor vuelva a intentarlo más tarde." msgid "Google Oauth error: {}" msgstr "Error Google Oauth {}" -#: cps/opds.py:298 +#: cps/opds.py:287 msgid "{} Stars" msgstr "{} Estrellas" -#: cps/remotelogin.py:62 cps/templates/layout.html:84 -#: cps/templates/login.html:4 cps/templates/login.html:21 cps/web.py:1662 +#: cps/remotelogin.py:62 cps/templates/layout.html:85 +#: cps/templates/login.html:4 cps/templates/login.html:21 cps/web.py:1335 msgid "Login" msgstr "Inicio de sesión" @@ -893,456 +898,489 @@ msgstr "El token ha expirado" msgid "Success! Please return to your device" msgstr "¡Correcto! Por favor regrese a su dispositivo" -#: cps/render_template.py:41 cps/web.py:407 +#: cps/render_template.py:40 cps/web.py:405 msgid "Books" msgstr "Libros" -#: cps/render_template.py:43 +#: cps/render_template.py:42 msgid "Show recent books" msgstr "Mostrar libros recientes" -#: cps/render_template.py:44 cps/templates/index.xml:25 +#: cps/render_template.py:43 cps/templates/index.xml:25 msgid "Hot Books" msgstr "Libros populares" -#: cps/render_template.py:46 +#: cps/render_template.py:45 msgid "Show Hot Books" msgstr "Mostrar libros populares" -#: cps/render_template.py:48 cps/render_template.py:53 +#: cps/render_template.py:47 cps/render_template.py:52 msgid "Downloaded Books" msgstr "Libros Descargados" -#: cps/render_template.py:50 cps/render_template.py:55 +#: cps/render_template.py:49 cps/render_template.py:54 #: cps/templates/user_table.html:167 msgid "Show Downloaded Books" msgstr "Mostrar Libros Descargados" -#: cps/render_template.py:58 cps/templates/index.xml:32 cps/web.py:422 +#: cps/render_template.py:57 cps/templates/index.xml:32 cps/web.py:420 msgid "Top Rated Books" msgstr "Libros mejor valorados" -#: cps/render_template.py:60 cps/templates/user_table.html:161 +#: cps/render_template.py:59 cps/templates/user_table.html:161 msgid "Show Top Rated Books" msgstr "Mostrar libros mejor valorados" -#: cps/render_template.py:61 cps/templates/index.xml:54 -#: cps/templates/index.xml:58 cps/web.py:729 +#: cps/render_template.py:60 cps/templates/index.xml:54 +#: cps/templates/index.xml:58 cps/web.py:739 msgid "Read Books" msgstr "Libros leídos" -#: cps/render_template.py:63 +#: cps/render_template.py:62 msgid "Show read and unread" msgstr "Mostrar leídos y no leídos" -#: cps/render_template.py:65 cps/templates/index.xml:61 -#: cps/templates/index.xml:65 cps/web.py:732 +#: cps/render_template.py:64 cps/templates/index.xml:61 +#: cps/templates/index.xml:65 cps/web.py:742 msgid "Unread Books" msgstr "Libros no leídos" -#: cps/render_template.py:67 +#: cps/render_template.py:66 msgid "Show unread" msgstr "Mostrar no leído" -#: cps/render_template.py:68 +#: cps/render_template.py:67 msgid "Discover" msgstr "Descubrir" -#: cps/render_template.py:70 cps/templates/index.xml:50 +#: cps/render_template.py:69 cps/templates/index.xml:50 #: cps/templates/user_table.html:162 msgid "Show Random Books" msgstr "Mostrar libros al azar" -#: cps/render_template.py:71 cps/templates/book_table.html:67 -#: cps/templates/index.xml:83 cps/web.py:1135 +#: cps/render_template.py:70 cps/templates/book_table.html:67 +#: cps/templates/index.xml:83 cps/web.py:1098 msgid "Categories" msgstr "Categorías" -#: cps/render_template.py:73 cps/templates/user_table.html:158 +#: cps/render_template.py:72 cps/templates/user_table.html:158 msgid "Show category selection" msgstr "Mostrar selección de categorías" -#: cps/render_template.py:74 cps/templates/book_edit.html:90 +#: cps/render_template.py:73 cps/templates/book_edit.html:91 #: cps/templates/book_table.html:68 cps/templates/index.xml:90 -#: cps/templates/search_form.html:69 cps/web.py:1034 cps/web.py:1041 +#: cps/templates/search_form.html:69 cps/web.py:995 cps/web.py:1002 msgid "Series" msgstr "Series" -#: cps/render_template.py:76 cps/templates/user_table.html:157 +#: cps/render_template.py:75 cps/templates/user_table.html:157 msgid "Show series selection" msgstr "Mostrar selección de series" -#: cps/render_template.py:77 cps/templates/book_table.html:66 +#: cps/render_template.py:76 cps/templates/book_table.html:66 #: cps/templates/index.xml:69 msgid "Authors" msgstr "Autores" -#: cps/render_template.py:79 cps/templates/user_table.html:160 +#: cps/render_template.py:78 cps/templates/user_table.html:160 msgid "Show author selection" msgstr "Mostrar selección de autores" -#: cps/render_template.py:81 cps/templates/book_table.html:72 -#: cps/templates/index.xml:76 cps/web.py:1006 +#: cps/render_template.py:80 cps/templates/book_table.html:72 +#: cps/templates/index.xml:76 cps/web.py:966 msgid "Publishers" msgstr "Editores" -#: cps/render_template.py:83 cps/templates/user_table.html:163 +#: cps/render_template.py:82 cps/templates/user_table.html:163 msgid "Show publisher selection" msgstr "Mostrar selección de editores" -#: cps/render_template.py:84 cps/templates/book_table.html:70 +#: cps/render_template.py:83 cps/templates/book_table.html:70 #: cps/templates/index.xml:97 cps/templates/search_form.html:107 -#: cps/web.py:1108 +#: cps/web.py:1070 msgid "Languages" msgstr "Idiomas" -#: cps/render_template.py:87 cps/templates/user_table.html:155 +#: cps/render_template.py:86 cps/templates/user_table.html:155 msgid "Show language selection" msgstr "Mostrar selección de idiomas" -#: cps/render_template.py:88 cps/templates/index.xml:104 +#: cps/render_template.py:87 cps/templates/index.xml:104 msgid "Ratings" msgstr "Calificaciones" -#: cps/render_template.py:90 cps/templates/user_table.html:164 +#: cps/render_template.py:89 cps/templates/user_table.html:164 msgid "Show ratings selection" msgstr "Mostrar selección de calificaciones" -#: cps/render_template.py:91 cps/templates/index.xml:112 +#: cps/render_template.py:90 cps/templates/index.xml:112 msgid "File formats" msgstr "Formatos de archivo" -#: cps/render_template.py:93 cps/templates/user_table.html:165 +#: cps/render_template.py:92 cps/templates/user_table.html:165 msgid "Show file formats selection" msgstr "Mostrar selección de formatos de archivo" -#: cps/render_template.py:95 cps/web.py:755 +#: cps/render_template.py:94 cps/web.py:765 msgid "Archived Books" msgstr "Libros archivados" -#: cps/render_template.py:97 cps/templates/user_table.html:166 +#: cps/render_template.py:96 cps/templates/user_table.html:166 msgid "Show archived books" msgstr "Mostrar libros archivados" -#: cps/render_template.py:100 cps/web.py:837 +#: cps/render_template.py:99 cps/web.py:796 msgid "Books List" msgstr "Lista de Libros" -#: cps/render_template.py:102 cps/templates/user_table.html:168 +#: cps/render_template.py:101 cps/templates/user_table.html:168 msgid "Show Books List" msgstr "Mostrar Lista de Libros" -#: cps/shelf.py:67 cps/shelf.py:121 -msgid "Invalid shelf specified" -msgstr "Estantería especificada no válida" - -#: cps/shelf.py:73 -#, fuzzy -msgid "Sorry you are not allowed to add a book to that shelf" -msgstr "Lo sentimos, no tiene permisos para agregar un libro al estante: %(shelfname)s" - -#: cps/shelf.py:82 -#, python-format -msgid "Book is already part of the shelf: %(shelfname)s" -msgstr "El libro ya forma parte del estante: %(shelfname)s" - -#: cps/shelf.py:107 -#, python-format -msgid "Book has been added to shelf: %(sname)s" -msgstr "El libro fue agregado a el estante: %(sname)s" - -#: cps/shelf.py:126 -msgid "You are not allowed to add a book to the shelf" -msgstr "" - -#: cps/shelf.py:144 -#, python-format -msgid "Books are already part of the shelf: %(name)s" -msgstr "Los libros ya forman parte del estante: %(name)s" - -#: cps/shelf.py:156 -#, python-format -msgid "Books have been added to shelf: %(sname)s" -msgstr "Los libros han sido añadidos al estante: %(sname)s" - -#: cps/shelf.py:163 -#, python-format -msgid "Could not add books to shelf: %(sname)s" -msgstr "No se pudieron agregar libros al estante: %(sname)s" - -#: cps/shelf.py:209 -#, python-format -msgid "Book has been removed from shelf: %(sname)s" -msgstr "El libro fue eliminado del estante: %(sname)s" - -#: cps/shelf.py:218 -msgid "Sorry you are not allowed to remove a book from this shelf" -msgstr "" - -#: cps/shelf.py:228 cps/templates/layout.html:140 -msgid "Create a Shelf" -msgstr "Crear un estante" - -#: cps/shelf.py:236 -#, fuzzy -msgid "Sorry you are not allowed to edit this shelf" -msgstr "Lo siento, no tiene permiso para eliminar un libro del estante: %(sname)s" - -#: cps/shelf.py:238 -msgid "Edit a shelf" -msgstr "Editar un estante" - -#: cps/shelf.py:248 -msgid "Sorry you are not allowed to create a public shelf" -msgstr "" - -#: cps/shelf.py:265 -#, python-format -msgid "Shelf %(title)s created" -msgstr "Estante %(title)s creado" - -#: cps/shelf.py:268 -#, python-format -msgid "Shelf %(title)s changed" -msgstr "Estante %(title)s cambiado" - -#: cps/shelf.py:282 -msgid "There was an error" -msgstr "Ha sucedido un error" - -#: cps/shelf.py:304 -#, python-format -msgid "A public shelf with the name '%(title)s' already exists." -msgstr "Ya existe un estante público con el nombre '%(title)s'." - -#: cps/shelf.py:315 -#, python-format -msgid "A private shelf with the name '%(title)s' already exists." -msgstr "Ya existe un estante privado con el nombre '%(title)s'." - -#: cps/shelf.py:337 -msgid "Error deleting Shelf" -msgstr "" - -#: cps/shelf.py:339 -#, fuzzy -msgid "Shelf successfully deleted" -msgstr "Libro eliminado con éxito" - -#: cps/shelf.py:389 -#, python-format -msgid "Change order of Shelf: '%(name)s'" -msgstr "Cambiar orden del estante: '%(name)s'" - -#: cps/shelf.py:461 -#, python-format -msgid "Shelf: '%(name)s'" -msgstr "Estante: '%(name)s'" - -#: cps/shelf.py:465 -msgid "Error opening shelf. Shelf does not exist or is not accessible" -msgstr "Error al abrir un estante. El estante no existe o no es accesible" - -#: cps/updater.py:426 cps/updater.py:437 cps/updater.py:538 cps/updater.py:553 -msgid "Unexpected data while reading update information" -msgstr "Dato inesperado mientras se leía la información de actualización" - -#: cps/updater.py:433 cps/updater.py:545 -msgid "No update available. You already have the latest version installed" -msgstr "Actualización no disponible. Ya tienes instalada la versión más reciente" - -#: cps/updater.py:451 -msgid "A new update is available. Click on the button below to update to the latest version." -msgstr "Una nueva actualización está disponible. Haz clic en el botón inferior para actualizar a la versión más reciente." - -#: cps/updater.py:469 -msgid "Could not fetch update information" -msgstr "No se puede conseguir información sobre la actualización" - -#: cps/updater.py:479 -msgid "Click on the button below to update to the latest stable version." -msgstr "Haz clic en el botón de abajo para actualizar a la última versión estable." - -#: cps/updater.py:488 cps/updater.py:502 cps/updater.py:513 -#, python-format -msgid "A new update is available. Click on the button below to update to version: %(version)s" -msgstr "Hay una nueva actualización disponible. Haz clic en el botón de abajo para actualizar a la versión: %(version)s" - -#: cps/updater.py:531 -msgid "No release information available" -msgstr "No hay información del lanzamiento disponible" - -#: cps/templates/index.html:5 cps/web.py:434 -msgid "Discover (Random Books)" -msgstr "Descubrir (Libros al azar)" - -#: cps/web.py:470 -msgid "Hot Books (Most Downloaded)" -msgstr "Libros populares (los más descargados)" - -#: cps/web.py:501 -#, python-format -msgid "Downloaded books by %(user)s" -msgstr "Libros descargados por %(user)s" - -#: cps/web.py:534 -#, python-format -msgid "Author: %(name)s" -msgstr "Autor/es: %(name)s" - -#: cps/web.py:570 -#, python-format -msgid "Publisher: %(name)s" -msgstr "Editor/es: %(name)s" - -#: cps/web.py:598 -#, python-format -msgid "Series: %(serie)s" -msgstr "Series: %(serie)s" - -#: cps/web.py:610 -#, python-format -msgid "Rating: %(rating)s stars" -msgstr "Calificación: %(rating)s estrellas" - -#: cps/web.py:626 -#, python-format -msgid "File format: %(format)s" -msgstr "Formato del archivo: %(format)s" - -#: cps/web.py:663 -#, python-format -msgid "Category: %(name)s" -msgstr "Categoría : %(name)s" - -#: cps/web.py:690 -#, python-format -msgid "Language: %(name)s" -msgstr "Idioma: %(name)s" - -#: cps/templates/layout.html:56 cps/web.py:789 cps/web.py:1444 -msgid "Advanced Search" -msgstr "Búsqueda avanzada" - -#: cps/templates/book_edit.html:235 cps/templates/feed.xml:33 -#: cps/templates/index.xml:11 cps/templates/layout.html:45 -#: cps/templates/layout.html:48 cps/templates/search_form.html:226 -#: cps/web.py:807 cps/web.py:1164 +#: cps/search.py:48 cps/search.py:414 cps/templates/book_edit.html:236 +#: cps/templates/feed.xml:33 cps/templates/index.xml:11 +#: cps/templates/layout.html:46 cps/templates/layout.html:49 +#: cps/templates/search_form.html:226 msgid "Search" msgstr "Buscar" -#: cps/templates/admin.html:16 cps/web.py:979 -msgid "Downloads" -msgstr "Descargas" - -#: cps/web.py:1068 -msgid "Ratings list" -msgstr "Lista de calificaciones" - -#: cps/web.py:1095 -msgid "File formats list" -msgstr "Lista de formatos" - -#: cps/templates/layout.html:73 cps/templates/tasks.html:7 cps/web.py:1149 -msgid "Tasks" -msgstr "Tareas" - -#: cps/web.py:1286 +#: cps/search.py:194 msgid "Published after " msgstr "Publicado después de " -#: cps/web.py:1293 +#: cps/search.py:201 msgid "Published before " msgstr "Publicado antes de " -#: cps/web.py:1315 +#: cps/search.py:223 #, python-format msgid "Rating <= %(rating)s" msgstr "Calificación <= %(rating)s" -#: cps/web.py:1317 +#: cps/search.py:225 #, python-format msgid "Rating >= %(rating)s" msgstr "Calificación >= %(rating)s" -#: cps/web.py:1319 +#: cps/search.py:227 #, python-format msgid "Read Status = %(status)s" msgstr "Estado de lectura = $(status)s" -#: cps/web.py:1425 +#: cps/search.py:345 msgid "Error on search for custom columns, please restart Calibre-Web" msgstr "Error en la búsqueda de columnas personalizadas, por favor reinicia Calibre-Web" -#: cps/web.py:1527 +#: cps/search.py:364 cps/search.py:396 cps/templates/layout.html:57 +msgid "Advanced Search" +msgstr "Búsqueda avanzada" + +#: cps/shelf.py:49 cps/shelf.py:103 +msgid "Invalid shelf specified" +msgstr "Estantería especificada no válida" + +#: cps/shelf.py:55 +#, fuzzy +msgid "Sorry you are not allowed to add a book to that shelf" +msgstr "Lo sentimos, no tiene permisos para agregar un libro al estante: %(shelfname)s" + +#: cps/shelf.py:64 +#, python-format +msgid "Book is already part of the shelf: %(shelfname)s" +msgstr "El libro ya forma parte del estante: %(shelfname)s" + +#: cps/shelf.py:89 +#, python-format +msgid "Book has been added to shelf: %(sname)s" +msgstr "El libro fue agregado a el estante: %(sname)s" + +#: cps/shelf.py:108 +msgid "You are not allowed to add a book to the shelf" +msgstr "" + +#: cps/shelf.py:126 +#, python-format +msgid "Books are already part of the shelf: %(name)s" +msgstr "Los libros ya forman parte del estante: %(name)s" + +#: cps/shelf.py:138 +#, python-format +msgid "Books have been added to shelf: %(sname)s" +msgstr "Los libros han sido añadidos al estante: %(sname)s" + +#: cps/shelf.py:145 +#, python-format +msgid "Could not add books to shelf: %(sname)s" +msgstr "No se pudieron agregar libros al estante: %(sname)s" + +#: cps/shelf.py:191 +#, python-format +msgid "Book has been removed from shelf: %(sname)s" +msgstr "El libro fue eliminado del estante: %(sname)s" + +#: cps/shelf.py:200 +msgid "Sorry you are not allowed to remove a book from this shelf" +msgstr "" + +#: cps/shelf.py:210 cps/templates/layout.html:141 +msgid "Create a Shelf" +msgstr "Crear un estante" + +#: cps/shelf.py:218 +#, fuzzy +msgid "Sorry you are not allowed to edit this shelf" +msgstr "Lo siento, no tiene permiso para eliminar un libro del estante: %(sname)s" + +#: cps/shelf.py:220 +msgid "Edit a shelf" +msgstr "Editar un estante" + +#: cps/shelf.py:229 +msgid "Error deleting Shelf" +msgstr "" + +#: cps/shelf.py:231 +#, fuzzy +msgid "Shelf successfully deleted" +msgstr "Libro eliminado con éxito" + +#: cps/shelf.py:281 +#, python-format +msgid "Change order of Shelf: '%(name)s'" +msgstr "Cambiar orden del estante: '%(name)s'" + +#: cps/shelf.py:313 +msgid "Sorry you are not allowed to create a public shelf" +msgstr "" + +#: cps/shelf.py:330 +#, python-format +msgid "Shelf %(title)s created" +msgstr "Estante %(title)s creado" + +#: cps/shelf.py:333 +#, python-format +msgid "Shelf %(title)s changed" +msgstr "Estante %(title)s cambiado" + +#: cps/shelf.py:347 +msgid "There was an error" +msgstr "Ha sucedido un error" + +#: cps/shelf.py:369 +#, python-format +msgid "A public shelf with the name '%(title)s' already exists." +msgstr "Ya existe un estante público con el nombre '%(title)s'." + +#: cps/shelf.py:380 +#, python-format +msgid "A private shelf with the name '%(title)s' already exists." +msgstr "Ya existe un estante privado con el nombre '%(title)s'." + +#: cps/shelf.py:462 +#, python-format +msgid "Shelf: '%(name)s'" +msgstr "Estante: '%(name)s'" + +#: cps/shelf.py:466 +msgid "Error opening shelf. Shelf does not exist or is not accessible" +msgstr "Error al abrir un estante. El estante no existe o no es accesible" + +#: cps/tasks_status.py:48 cps/templates/layout.html:74 +#: cps/templates/tasks.html:7 +msgid "Tasks" +msgstr "Tareas" + +#: cps/tasks_status.py:64 +msgid "Waiting" +msgstr "Esperando" + +#: cps/tasks_status.py:66 +msgid "Failed" +msgstr "Fallido" + +#: cps/tasks_status.py:68 +msgid "Started" +msgstr "Comenzado" + +#: cps/tasks_status.py:70 +msgid "Finished" +msgstr "Finalizado" + +#: cps/tasks_status.py:72 +msgid "Ended" +msgstr "" + +#: cps/tasks_status.py:74 +msgid "Cancelled" +msgstr "" + +#: cps/tasks_status.py:76 +msgid "Unknown Status" +msgstr "Estado desconocido" + +#: cps/updater.py:431 cps/updater.py:442 cps/updater.py:543 cps/updater.py:558 +msgid "Unexpected data while reading update information" +msgstr "Dato inesperado mientras se leía la información de actualización" + +#: cps/updater.py:438 cps/updater.py:550 +msgid "No update available. You already have the latest version installed" +msgstr "Actualización no disponible. Ya tienes instalada la versión más reciente" + +#: cps/updater.py:456 +msgid "A new update is available. Click on the button below to update to the latest version." +msgstr "Una nueva actualización está disponible. Haz clic en el botón inferior para actualizar a la versión más reciente." + +#: cps/updater.py:474 +msgid "Could not fetch update information" +msgstr "No se puede conseguir información sobre la actualización" + +#: cps/updater.py:484 +msgid "Click on the button below to update to the latest stable version." +msgstr "Haz clic en el botón de abajo para actualizar a la última versión estable." + +#: cps/updater.py:493 cps/updater.py:507 cps/updater.py:518 +#, python-format +msgid "A new update is available. Click on the button below to update to version: %(version)s" +msgstr "Hay una nueva actualización disponible. Haz clic en el botón de abajo para actualizar a la versión: %(version)s" + +#: cps/updater.py:536 +msgid "No release information available" +msgstr "No hay información del lanzamiento disponible" + +#: cps/templates/index.html:6 cps/web.py:432 +msgid "Discover (Random Books)" +msgstr "Descubrir (Libros al azar)" + +#: cps/web.py:468 +msgid "Hot Books (Most Downloaded)" +msgstr "Libros populares (los más descargados)" + +#: cps/web.py:499 +#, python-format +msgid "Downloaded books by %(user)s" +msgstr "Libros descargados por %(user)s" + +#: cps/web.py:532 +#, python-format +msgid "Author: %(name)s" +msgstr "Autor/es: %(name)s" + +#: cps/web.py:568 +#, python-format +msgid "Publisher: %(name)s" +msgstr "Editor/es: %(name)s" + +#: cps/web.py:596 +#, python-format +msgid "Series: %(serie)s" +msgstr "Series: %(serie)s" + +#: cps/web.py:609 +msgid "Rating: None" +msgstr "" + +#: cps/web.py:618 +#, python-format +msgid "Rating: %(rating)s stars" +msgstr "Calificación: %(rating)s estrellas" + +#: cps/web.py:636 +#, python-format +msgid "File format: %(format)s" +msgstr "Formato del archivo: %(format)s" + +#: cps/web.py:673 +#, python-format +msgid "Category: %(name)s" +msgstr "Categoría : %(name)s" + +#: cps/web.py:700 +#, python-format +msgid "Language: %(name)s" +msgstr "Idioma: %(name)s" + +#: cps/templates/admin.html:16 cps/web.py:938 +msgid "Downloads" +msgstr "Descargas" + +#: cps/web.py:1030 +msgid "Ratings list" +msgstr "Lista de calificaciones" + +#: cps/web.py:1057 +msgid "File formats list" +msgstr "Lista de formatos" + +#: cps/web.py:1199 #, python-format msgid "Book successfully queued for sending to %(kindlemail)s" msgstr "Libro puesto en la cola de envío a %(kindlemail)s" -#: cps/web.py:1531 +#: cps/web.py:1203 #, python-format msgid "Oops! There was an error sending this book: %(res)s" msgstr "Ha sucedido un error en el envío del libro: %(res)s" -#: cps/web.py:1533 +#: cps/web.py:1205 msgid "Please update your profile with a valid Send to Kindle E-mail Address." msgstr "Por favor actualiza tu perfil con la dirección de correo de su kindle..." -#: cps/web.py:1550 +#: cps/web.py:1222 msgid "E-Mail server is not configured, please contact your administrator!" msgstr "El servidor de correo no está configurado, por favor, ¡avisa a tu administrador!" -#: cps/templates/layout.html:85 cps/templates/register.html:17 cps/web.py:1551 -#: cps/web.py:1558 cps/web.py:1564 cps/web.py:1583 cps/web.py:1587 -#: cps/web.py:1593 +#: cps/templates/layout.html:86 cps/templates/register.html:17 cps/web.py:1223 +#: cps/web.py:1230 cps/web.py:1236 cps/web.py:1255 cps/web.py:1260 +#: cps/web.py:1266 msgid "Register" msgstr "Registro" -#: cps/web.py:1585 +#: cps/web.py:1257 msgid "Your e-mail is not allowed to register" msgstr "Su correo electrónico no está permitido para registrarse" -#: cps/web.py:1588 +#: cps/web.py:1261 msgid "Confirmation e-mail was send to your e-mail account." msgstr "Se ha enviado un correo electrónico de verificación a su cuenta de correo." -#: cps/web.py:1602 +#: cps/web.py:1275 msgid "Cannot activate LDAP authentication" msgstr "No se puede activar la autenticación LDAP" -#: cps/web.py:1621 +#: cps/web.py:1294 #, 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:1627 +#: cps/web.py:1300 #, python-format msgid "Could not login: %(message)s" msgstr "No se pudo entrar: %(message)s" -#: cps/web.py:1631 cps/web.py:1656 +#: cps/web.py:1304 cps/web.py:1329 msgid "Wrong Username or Password" msgstr "Usuario o contraseña inválido" -#: cps/web.py:1638 +#: cps/web.py:1311 msgid "New Password was send to your email address" msgstr "Una nueva contraseña se ha enviado a su cuenta de correo electrónico" -#: cps/web.py:1644 +#: cps/web.py:1317 msgid "Please enter valid username to reset password" msgstr "Por favor, introduce un usuario válido para restablecer la contraseña" -#: cps/web.py:1651 +#: cps/web.py:1324 #, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "Ahora estás conectado como: '%(nickname)s'" -#: cps/web.py:1717 cps/web.py:1766 +#: cps/web.py:1388 cps/web.py:1437 #, python-format msgid "%(name)s's profile" msgstr "Perfil de %(name)s" -#: cps/web.py:1733 +#: cps/web.py:1404 msgid "Profile updated" msgstr "Perfil actualizado" @@ -1350,40 +1388,75 @@ msgstr "Perfil actualizado" msgid "Found no valid gmail.json file with OAuth information" msgstr "No se ha encontrado ningún archivo gmail.json válido con información OAuth" -#: cps/tasks/convert.py:154 +#: cps/tasks/convert.py:153 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "Calibre ebook-convert %(tool)s no encontrado" -#: cps/tasks/convert.py:187 +#: cps/tasks/convert.py:186 #, python-format msgid "%(format)s format not found on disk" msgstr "%(format)s format no encontrado en disco" -#: cps/tasks/convert.py:191 +#: cps/tasks/convert.py:190 msgid "Ebook converter failed with unknown error" msgstr "El conversor de Ebook falló con un error desconocido" -#: cps/tasks/convert.py:201 +#: cps/tasks/convert.py:200 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "Kepubify-converter falló: %(error)s" -#: cps/tasks/convert.py:223 +#: cps/tasks/convert.py:222 #, 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:246 +#: cps/tasks/convert.py:245 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "Falló Ebook-converter: %(error)s" -#: cps/tasks/convert.py:269 +#: cps/tasks/convert.py:268 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "Calibre falló con el error: %(error)s" +#: cps/tasks/convert.py:273 +msgid "Convert" +msgstr "" + +#: cps/tasks/database.py:28 +msgid "Reconnecting Calibre database" +msgstr "" + +#: cps/tasks/mail.py:265 +msgid "E-mail" +msgstr "" + +#: cps/tasks/thumbnail.py:95 +#, python-format +msgid "Generated %(count)s cover thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:222 cps/tasks/thumbnail.py:435 +#: cps/tasks/thumbnail.py:503 +msgid "Cover Thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:281 +msgid "Generated {0} series thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:446 +msgid "Clearing cover thumbnail cache" +msgstr "" + +#: cps/tasks/upload.py:38 cps/templates/admin.html:20 +#: cps/templates/layout.html:67 cps/templates/user_table.html:145 +msgid "Upload" +msgstr "Subir archivo" + #: cps/templates/admin.html:9 msgid "Users" msgstr "Usuarios" @@ -1403,7 +1476,7 @@ msgstr "Correo electrónico" msgid "Send to Kindle E-mail Address" msgstr "Enviar al correo de Kindle" -#: cps/templates/admin.html:17 cps/templates/layout.html:76 +#: cps/templates/admin.html:17 cps/templates/layout.html:77 #: cps/templates/user_table.html:143 msgid "Admin" msgstr "Admin" @@ -1413,13 +1486,8 @@ msgstr "Admin" msgid "Password" msgstr "Contraseña" -#: cps/templates/admin.html:20 cps/templates/layout.html:66 -#: cps/templates/user_table.html:145 -msgid "Upload" -msgstr "Subir archivo" - -#: cps/templates/admin.html:22 cps/templates/detail.html:18 -#: cps/templates/detail.html:27 cps/templates/shelf.html:7 +#: cps/templates/admin.html:22 cps/templates/detail.html:19 +#: cps/templates/detail.html:28 cps/templates/shelf.html:8 #: cps/templates/user_table.html:146 msgid "Download" msgstr "Descargar" @@ -1433,7 +1501,7 @@ msgstr "Ver libros" msgid "Edit" msgstr "Editar" -#: cps/templates/admin.html:25 cps/templates/book_edit.html:16 +#: cps/templates/admin.html:25 cps/templates/book_edit.html:17 #: cps/templates/book_table.html:100 cps/templates/modal_dialogs.html:63 #: cps/templates/modal_dialogs.html:116 cps/templates/user_edit.html:67 #: cps/templates/user_table.html:149 @@ -1546,78 +1614,107 @@ msgstr "Editar la configuración básica" msgid "Edit UI Configuration" msgstr "Editar la configuración de la interfaz de usuario" -#: cps/templates/admin.html:166 +#: cps/templates/admin.html:167 +msgid "Scheduled Tasks" +msgstr "" + +#: cps/templates/admin.html:170 cps/templates/schedule_edit.html:12 +msgid "Time at which tasks start to run" +msgstr "" + +#: cps/templates/admin.html:174 cps/templates/schedule_edit.html:20 +msgid "Maximum tasks duration" +msgstr "" + +#: cps/templates/admin.html:178 +msgid "Generate book cover thumbnails" +msgstr "" + +#: cps/templates/admin.html:182 +msgid "Generate series cover thumbnails" +msgstr "" + +#: cps/templates/admin.html:186 cps/templates/schedule_edit.html:37 +msgid "Reconnect to Calibre Library" +msgstr "" + +#: cps/templates/admin.html:193 +msgid "Refresh Thumbnail Cover Cache" +msgstr "" + +#: cps/templates/admin.html:199 msgid "Administration" msgstr "Administración" -#: cps/templates/admin.html:167 +#: cps/templates/admin.html:200 msgid "Download Debug Package" msgstr "Descargar paquete de debug" -#: cps/templates/admin.html:168 +#: cps/templates/admin.html:201 msgid "View Logs" msgstr "Ver archivos de registro" -#: cps/templates/admin.html:171 +#: cps/templates/admin.html:204 msgid "Reconnect Calibre Database" msgstr "Reconectar a la BD Calibre" -#: cps/templates/admin.html:172 +#: cps/templates/admin.html:207 msgid "Restart" msgstr "Reiniciar" -#: cps/templates/admin.html:173 +#: cps/templates/admin.html:208 msgid "Shutdown" msgstr "Apagar" -#: cps/templates/admin.html:178 -msgid "Update" -msgstr "Actualizar" +#: cps/templates/admin.html:213 +msgid "Version Information" +msgstr "" -#: cps/templates/admin.html:182 +#: cps/templates/admin.html:217 msgid "Version" msgstr "Versión" -#: cps/templates/admin.html:183 +#: cps/templates/admin.html:218 msgid "Details" msgstr "Detalles" -#: cps/templates/admin.html:189 +#: cps/templates/admin.html:224 msgid "Current version" msgstr "Versión actual" -#: cps/templates/admin.html:196 +#: cps/templates/admin.html:231 msgid "Check for Update" msgstr "Comprobar actualizaciones" -#: cps/templates/admin.html:197 +#: cps/templates/admin.html:232 msgid "Perform Update" msgstr "Realizar actualización" -#: cps/templates/admin.html:210 +#: cps/templates/admin.html:245 msgid "Are you sure you want to restart?" msgstr "¿Realmente quieres reiniciar?" -#: cps/templates/admin.html:215 cps/templates/admin.html:229 -#: cps/templates/admin.html:249 cps/templates/config_db.html:70 +#: cps/templates/admin.html:250 cps/templates/admin.html:264 +#: cps/templates/admin.html:284 cps/templates/config_db.html:70 msgid "OK" msgstr "Ok" -#: cps/templates/admin.html:216 cps/templates/admin.html:230 -#: cps/templates/book_edit.html:213 cps/templates/book_table.html:127 +#: cps/templates/admin.html:251 cps/templates/admin.html:265 +#: cps/templates/book_edit.html:214 cps/templates/book_table.html:127 #: cps/templates/config_db.html:54 cps/templates/config_edit.html:359 #: 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/shelf_edit.html:27 +#: cps/templates/modal_dialogs.html:135 cps/templates/schedule_edit.html:41 +#: cps/templates/shelf_edit.html:27 cps/templates/tasks.html:46 #: cps/templates/user_edit.html:144 msgid "Cancel" msgstr "Cancelar" -#: cps/templates/admin.html:228 +#: cps/templates/admin.html:263 msgid "Are you sure you want to shutdown?" msgstr "¿Realmente quiere detener?" -#: cps/templates/admin.html:240 +#: cps/templates/admin.html:275 msgid "Updating, please do not reload this page" msgstr "Actualizando. Por favor, no recargue la página" @@ -1629,39 +1726,39 @@ msgstr "via" msgid "In Library" msgstr "En la Librería" -#: cps/templates/author.html:26 cps/templates/index.html:73 -#: cps/templates/search.html:30 cps/templates/shelf.html:19 +#: cps/templates/author.html:26 cps/templates/index.html:74 +#: cps/templates/search.html:31 cps/templates/shelf.html:20 msgid "Sort according to book date, newest first" msgstr "Ordenar en base a fecha del libro, más reciente primero" -#: cps/templates/author.html:27 cps/templates/index.html:74 -#: cps/templates/search.html:31 cps/templates/shelf.html:20 +#: cps/templates/author.html:27 cps/templates/index.html:75 +#: cps/templates/search.html:32 cps/templates/shelf.html:21 msgid "Sort according to book date, oldest first" msgstr "Ordenar en base a fecha del libro, menos reciente primero" -#: cps/templates/author.html:28 cps/templates/index.html:75 -#: cps/templates/search.html:32 cps/templates/shelf.html:21 +#: cps/templates/author.html:28 cps/templates/index.html:76 +#: cps/templates/search.html:33 cps/templates/shelf.html:22 msgid "Sort title in alphabetical order" msgstr "Ordenar en base al título en orden alfabético" -#: cps/templates/author.html:29 cps/templates/index.html:76 -#: cps/templates/search.html:33 cps/templates/shelf.html:22 +#: cps/templates/author.html:29 cps/templates/index.html:77 +#: cps/templates/search.html:34 cps/templates/shelf.html:23 msgid "Sort title in reverse alphabetical order" msgstr "Ordenar en base al título en orden alfabético invertido" -#: cps/templates/author.html:30 cps/templates/index.html:79 -#: cps/templates/search.html:36 cps/templates/shelf.html:25 +#: cps/templates/author.html:30 cps/templates/index.html:80 +#: cps/templates/search.html:37 cps/templates/shelf.html:26 msgid "Sort according to publishing date, newest first" msgstr "Ordenar en base a fecha de publicación, más reciente primero" -#: cps/templates/author.html:31 cps/templates/index.html:80 -#: cps/templates/search.html:37 cps/templates/shelf.html:26 +#: cps/templates/author.html:31 cps/templates/index.html:81 +#: cps/templates/search.html:38 cps/templates/shelf.html:27 msgid "Sort according to publishing date, oldest first" msgstr "Ordenar en base a fecha de publicación, menos reciente primero" #: cps/templates/author.html:56 cps/templates/author.html:115 -#: cps/templates/index.html:29 cps/templates/index.html:112 -#: cps/templates/search.html:66 cps/templates/shelf.html:54 +#: cps/templates/index.html:30 cps/templates/index.html:113 +#: cps/templates/search.html:67 cps/templates/shelf.html:55 msgid "reduce" msgstr "reducir" @@ -1669,165 +1766,166 @@ msgstr "reducir" msgid "More by" msgstr "Más de" -#: cps/templates/book_edit.html:10 +#: cps/templates/book_edit.html:11 msgid "Delete Book" msgstr "Borrar libro" -#: cps/templates/book_edit.html:13 +#: cps/templates/book_edit.html:14 msgid "Delete formats:" msgstr "Borrar formatos:" -#: cps/templates/book_edit.html:24 +#: cps/templates/book_edit.html:25 msgid "Convert book format:" msgstr "Convertir formato de libro:" -#: cps/templates/book_edit.html:29 +#: cps/templates/book_edit.html:30 msgid "Convert from:" msgstr "Convertir desde:" -#: cps/templates/book_edit.html:31 cps/templates/book_edit.html:38 +#: cps/templates/book_edit.html:32 cps/templates/book_edit.html:39 msgid "select an option" msgstr "seleccionar una opción" -#: cps/templates/book_edit.html:36 +#: cps/templates/book_edit.html:37 msgid "Convert to:" msgstr "Convertir a:" -#: cps/templates/book_edit.html:45 +#: cps/templates/book_edit.html:46 msgid "Convert book" msgstr "Convertir libro" -#: cps/templates/book_edit.html:55 cps/templates/search_form.html:8 +#: cps/templates/book_edit.html:56 cps/templates/search_form.html:8 msgid "Book Title" msgstr "Título del libro" -#: cps/templates/book_edit.html:62 cps/templates/book_edit.html:270 -#: cps/templates/book_edit.html:288 cps/templates/search_form.html:12 +#: cps/templates/book_edit.html:63 cps/templates/book_edit.html:271 +#: cps/templates/book_edit.html:289 cps/templates/search_form.html:12 msgid "Author" msgstr "Autor" -#: cps/templates/book_edit.html:67 cps/templates/book_edit.html:275 -#: cps/templates/book_edit.html:290 cps/templates/search_form.html:153 +#: cps/templates/book_edit.html:68 cps/templates/book_edit.html:276 +#: cps/templates/book_edit.html:291 cps/templates/search_form.html:153 msgid "Description" msgstr "Descripción" -#: cps/templates/book_edit.html:72 +#: cps/templates/book_edit.html:73 msgid "Identifiers" msgstr "Identificadores" -#: cps/templates/book_edit.html:76 cps/templates/book_edit.html:299 +#: cps/templates/book_edit.html:77 cps/templates/book_edit.html:300 msgid "Identifier Type" msgstr "Tipo de identificador" -#: cps/templates/book_edit.html:77 cps/templates/book_edit.html:300 +#: cps/templates/book_edit.html:78 cps/templates/book_edit.html:301 msgid "Identifier Value" msgstr "Valor de identificador" -#: cps/templates/book_edit.html:78 cps/templates/book_edit.html:301 +#: cps/templates/book_edit.html:79 cps/templates/book_edit.html:302 #: cps/templates/user_table.html:24 msgid "Remove" msgstr "Borrar" -#: cps/templates/book_edit.html:82 +#: cps/templates/book_edit.html:83 msgid "Add Identifier" msgstr "Añadir identificador" -#: cps/templates/book_edit.html:86 cps/templates/search_form.html:51 +#: cps/templates/book_edit.html:87 cps/templates/search_form.html:51 msgid "Tags" msgstr "Etiquetas" -#: cps/templates/book_edit.html:94 +#: cps/templates/book_edit.html:95 msgid "Series ID" msgstr "ID de serie" -#: cps/templates/book_edit.html:98 +#: cps/templates/book_edit.html:99 msgid "Rating" msgstr "Clasificación" -#: cps/templates/book_edit.html:103 +#: cps/templates/book_edit.html:104 msgid "Fetch Cover from URL (JPEG - Image will be downloaded and stored in database)" msgstr "Obtener portada de URL (JPEG, la portada ser'a descargada y almacenada en la base de datos)" -#: cps/templates/book_edit.html:107 +#: cps/templates/book_edit.html:108 msgid "Upload Cover from Local Disk" msgstr "Subir portada desde un disco local" -#: cps/templates/book_edit.html:112 +#: cps/templates/book_edit.html:113 msgid "Published Date" msgstr "Fecha de publicación" -#: cps/templates/book_edit.html:121 cps/templates/book_edit.html:272 -#: cps/templates/book_edit.html:289 cps/templates/detail.html:164 +#: cps/templates/book_edit.html:122 cps/templates/book_edit.html:273 +#: cps/templates/book_edit.html:290 cps/templates/detail.html:165 #: cps/templates/search_form.html:16 msgid "Publisher" msgstr "Editor" -#: cps/templates/book_edit.html:125 cps/templates/detail.html:131 +#: cps/templates/book_edit.html:126 cps/templates/detail.html:132 #: cps/templates/user_edit.html:33 msgid "Language" msgstr "Idioma" -#: cps/templates/book_edit.html:135 cps/templates/search_form.html:45 +#: cps/templates/book_edit.html:136 cps/templates/search_form.html:45 #: cps/templates/search_form.html:164 msgid "Yes" msgstr "Sí" -#: cps/templates/book_edit.html:136 cps/templates/search_form.html:46 +#: cps/templates/book_edit.html:137 cps/templates/search_form.html:46 #: cps/templates/search_form.html:165 msgid "No" msgstr "No" -#: cps/templates/book_edit.html:200 +#: cps/templates/book_edit.html:201 msgid "Upload Format" msgstr "Subir formato" -#: cps/templates/book_edit.html:208 +#: cps/templates/book_edit.html:209 msgid "View Book on Save" msgstr "Ver libro tras la edición" -#: cps/templates/book_edit.html:211 cps/templates/book_edit.html:229 +#: cps/templates/book_edit.html:212 cps/templates/book_edit.html:230 msgid "Fetch Metadata" msgstr "Obtener metadatos" -#: cps/templates/book_edit.html:212 cps/templates/config_db.html:53 +#: cps/templates/book_edit.html:213 cps/templates/config_db.html:53 #: cps/templates/config_edit.html:358 cps/templates/config_view_edit.html:174 -#: cps/templates/email_edit.html:65 cps/templates/shelf_edit.html:25 -#: cps/templates/shelf_order.html:41 cps/templates/user_edit.html:142 +#: cps/templates/email_edit.html:65 cps/templates/schedule_edit.html:40 +#: cps/templates/shelf_edit.html:25 cps/templates/shelf_order.html:41 +#: cps/templates/user_edit.html:142 msgid "Save" msgstr "Guardar" -#: cps/templates/book_edit.html:232 +#: cps/templates/book_edit.html:233 msgid "Keyword" msgstr "Palabra clave" -#: cps/templates/book_edit.html:233 +#: cps/templates/book_edit.html:234 #, fuzzy msgid "Search keyword" msgstr " Buscar por palabras clave " -#: cps/templates/book_edit.html:239 +#: cps/templates/book_edit.html:240 msgid "Click the cover to load metadata to the form" msgstr "Haz clic en la portada para cargar los metadatos en el formulario" -#: cps/templates/book_edit.html:246 cps/templates/book_edit.html:285 +#: cps/templates/book_edit.html:247 cps/templates/book_edit.html:286 msgid "Loading..." msgstr "Cargando..." -#: cps/templates/book_edit.html:250 cps/templates/layout.html:63 -#: cps/templates/layout.html:186 cps/templates/modal_dialogs.html:34 +#: cps/templates/book_edit.html:251 cps/templates/layout.html:64 +#: cps/templates/layout.html:187 cps/templates/modal_dialogs.html:34 #: cps/templates/user_edit.html:163 msgid "Close" msgstr "Cerrar" -#: cps/templates/book_edit.html:277 cps/templates/book_edit.html:291 +#: cps/templates/book_edit.html:278 cps/templates/book_edit.html:292 msgid "Source" msgstr "Origen" -#: cps/templates/book_edit.html:286 +#: cps/templates/book_edit.html:287 msgid "Search error!" msgstr "¡Error en la búsqueda!" -#: cps/templates/book_edit.html:287 +#: cps/templates/book_edit.html:288 msgid "No Result(s) found! Please try another keyword." msgstr "¡No se encontraron resultados! Por favor intenta con otra palabra clave." @@ -1936,6 +2034,7 @@ msgid "Enter " msgstr "Identificadores" #: cps/templates/book_table.html:113 cps/templates/modal_dialogs.html:46 +#: cps/templates/tasks.html:36 msgid "Are you really sure?" msgstr "¿Estás realmente seguro?" @@ -2350,62 +2449,62 @@ msgstr "Añadir etiquetas Permitidas/Denegados" msgid "Add Allowed/Denied custom column values" msgstr "Añadir valores personalizados Permitidos/Denegados" -#: cps/templates/detail.html:60 cps/templates/detail.html:69 +#: cps/templates/detail.html:61 cps/templates/detail.html:70 msgid "Read in Browser" msgstr "Leer en el navegador" -#: cps/templates/detail.html:77 cps/templates/detail.html:94 +#: cps/templates/detail.html:78 cps/templates/detail.html:95 msgid "Listen in Browser" msgstr "Escuchar en el navegador" -#: cps/templates/detail.html:124 +#: cps/templates/detail.html:125 #, fuzzy, python-format msgid "Book %(index)s of %(range)s" msgstr "" -#: cps/templates/detail.html:173 +#: cps/templates/detail.html:174 msgid "Published" msgstr "Publicado" -#: cps/templates/detail.html:221 +#: cps/templates/detail.html:222 msgid "Mark As Unread" msgstr "Marcar como no leido" -#: cps/templates/detail.html:221 +#: cps/templates/detail.html:222 msgid "Mark As Read" msgstr "Marcar como leido" -#: cps/templates/detail.html:222 +#: cps/templates/detail.html:223 msgid "Read" msgstr "Leído" -#: cps/templates/detail.html:231 +#: cps/templates/detail.html:232 msgid "Restore from archive" msgstr "Restarurar desde el archivo" -#: cps/templates/detail.html:231 +#: cps/templates/detail.html:232 msgid "Add to archive" msgstr "Añadir a archivación" -#: cps/templates/detail.html:232 +#: cps/templates/detail.html:233 msgid "Archived" msgstr "Archivado" -#: cps/templates/detail.html:243 +#: cps/templates/detail.html:244 msgid "Description:" msgstr "Descripción:" -#: cps/templates/detail.html:256 cps/templates/search.html:15 +#: cps/templates/detail.html:257 cps/templates/search.html:16 msgid "Add to shelf" msgstr "Agregar al estante" -#: cps/templates/detail.html:267 cps/templates/detail.html:284 -#: cps/templates/feed.xml:79 cps/templates/layout.html:137 -#: cps/templates/search.html:21 +#: cps/templates/detail.html:268 cps/templates/detail.html:285 +#: cps/templates/feed.xml:79 cps/templates/layout.html:138 +#: cps/templates/search.html:22 msgid "(Public)" msgstr "(Público)" -#: cps/templates/detail.html:298 +#: cps/templates/detail.html:299 msgid "Edit Metadata" msgstr "Editar metadatos" @@ -2449,7 +2548,7 @@ msgstr "Tamaño límite del archivo adjunto" msgid "Save and Send Test E-mail" msgstr "Guardar y enviar un correo electrónico de prueba" -#: cps/templates/email_edit.html:70 cps/templates/layout.html:29 +#: cps/templates/email_edit.html:70 cps/templates/layout.html:30 #: cps/templates/shelf_order.html:42 cps/templates/user_table.html:174 msgid "Back" msgstr "Regresar" @@ -2475,7 +2574,7 @@ msgstr "Introducir nombre de dominio" msgid "Denied Domains (Blacklist)" msgstr "Dominios prohibidos (Blaclist)" -#: cps/templates/feed.xml:21 cps/templates/layout.html:170 +#: cps/templates/feed.xml:21 cps/templates/layout.html:171 msgid "Next" msgstr "Siguiente" @@ -2488,6 +2587,10 @@ msgstr "Abre el archivo .kobo/Kobo eReader.conf en un editor de texto y añade ( msgid "Kobo Token:" msgstr "Token de sincronización de Kobo" +#: cps/templates/grid.html:21 +msgid "List" +msgstr "" + #: cps/templates/http_error.html:31 #, fuzzy msgid "Calibre-Web Instance is unconfigured, please contact your administrator" @@ -2505,29 +2608,29 @@ msgstr "Volver al inicio" msgid "Logout User" msgstr "Cerrar sesión" -#: cps/templates/index.html:70 +#: cps/templates/index.html:71 msgid "Sort ascending according to download count" msgstr "" -#: cps/templates/index.html:71 +#: cps/templates/index.html:72 msgid "Sort descending according to download count" msgstr "" -#: cps/templates/index.html:77 cps/templates/search.html:34 -#: cps/templates/shelf.html:23 +#: cps/templates/index.html:78 cps/templates/search.html:35 +#: cps/templates/shelf.html:24 msgid "Sort authors in alphabetical order" msgstr "Ordenar autores en orden alfabético" -#: cps/templates/index.html:78 cps/templates/search.html:35 -#: cps/templates/shelf.html:24 +#: cps/templates/index.html:79 cps/templates/search.html:36 +#: cps/templates/shelf.html:25 msgid "Sort authors in reverse alphabetical order" msgstr "Ordenar autores en orden alfabético inverso" -#: cps/templates/index.html:82 +#: cps/templates/index.html:83 msgid "Sort ascending according to series index" msgstr "Ordenar ascendientemente en base al índice de serie" -#: cps/templates/index.html:83 +#: cps/templates/index.html:84 msgid "Sort descending according to series index" msgstr "Ordenar descendientemente en base al índice de serie" @@ -2591,7 +2694,7 @@ msgstr "Libros ordenados por puntuación" msgid "Books ordered by file formats" msgstr "Libros ordenados por formato de archivo" -#: cps/templates/index.xml:119 cps/templates/layout.html:135 +#: cps/templates/index.xml:119 cps/templates/layout.html:136 #: cps/templates/search_form.html:87 msgid "Shelves" msgstr "Estanterías" @@ -2600,63 +2703,67 @@ msgstr "Estanterías" msgid "Books organized in shelves" msgstr "Libros organizados en estanterías" -#: cps/templates/layout.html:29 +#: cps/templates/layout.html:30 msgid "Home" msgstr "Inicio" -#: cps/templates/layout.html:35 +#: cps/templates/layout.html:36 msgid "Toggle Navigation" msgstr "Alternar navegación" -#: cps/templates/layout.html:46 +#: cps/templates/layout.html:47 msgid "Search Library" msgstr "Buscar en la librería" -#: cps/templates/layout.html:63 cps/templates/layout.html:117 +#: cps/templates/layout.html:64 cps/templates/layout.html:118 msgid "Uploading..." msgstr "Cargando..." -#: cps/templates/layout.html:63 +#: cps/templates/layout.html:64 msgid "Error" msgstr "Error" -#: cps/templates/layout.html:63 +#: cps/templates/layout.html:64 msgid "Upload done, processing, please wait..." msgstr "Carga hecha, procesando, por favor espere ..." -#: cps/templates/layout.html:76 cps/templates/read.html:72 +#: cps/templates/layout.html:77 cps/templates/read.html:72 #: cps/templates/readcbr.html:84 cps/templates/readcbr.html:108 msgid "Settings" msgstr "Ajustes" -#: cps/templates/layout.html:78 +#: cps/templates/layout.html:79 msgid "Account" msgstr "Cuenta" -#: cps/templates/layout.html:80 +#: cps/templates/layout.html:81 msgid "Logout" msgstr "Cerrar sesión" -#: cps/templates/layout.html:118 +#: cps/templates/layout.html:119 msgid "Please do not refresh the page" msgstr "Por favor, no actualice la página" -#: cps/templates/layout.html:128 +#: cps/templates/layout.html:129 msgid "Browse" msgstr "Navegar" -#: cps/templates/layout.html:141 cps/templates/stats.html:3 +#: cps/templates/layout.html:142 cps/templates/stats.html:3 msgid "About" msgstr "Acerca de" -#: cps/templates/layout.html:155 +#: cps/templates/layout.html:156 msgid "Previous" msgstr "Previo" -#: cps/templates/layout.html:182 +#: cps/templates/layout.html:183 msgid "Book Details" msgstr "Detalles del libro" +#: cps/templates/list.html:22 +msgid "Grid" +msgstr "" + #: cps/templates/login.html:18 msgid "Remember Me" msgstr "Recordarme" @@ -2761,7 +2868,7 @@ msgstr "Directorio padre" msgid "Select" msgstr "Seleccionar" -#: cps/templates/modal_dialogs.html:134 +#: cps/templates/modal_dialogs.html:134 cps/templates/tasks.html:45 #, fuzzy msgid "Ok" msgstr "Ok" @@ -2943,15 +3050,23 @@ msgstr "Una vez que lo realice, iniciará sesión automáticamente en ese dispos msgid "This verification link will expire in 10 minutes." msgstr "El enlace expirará después de 10 minutos." -#: cps/templates/search.html:5 +#: cps/templates/schedule_edit.html:29 +msgid "Generate Book Cover Thumbnails" +msgstr "" + +#: cps/templates/schedule_edit.html:33 +msgid "Generate Series Cover Thumbnails" +msgstr "" + +#: cps/templates/search.html:6 msgid "No Results Found" msgstr "No se han encontrado resultados" -#: cps/templates/search.html:6 +#: cps/templates/search.html:7 msgid "Search Term:" msgstr "Término de búsqueda:" -#: cps/templates/search.html:8 +#: cps/templates/search.html:9 msgid "Results for:" msgstr "Resultados para:" @@ -3004,23 +3119,23 @@ msgstr "De:" msgid "To:" msgstr "Para:" -#: cps/templates/shelf.html:12 +#: cps/templates/shelf.html:13 msgid "Delete this Shelf" msgstr "Borrar este estante" -#: cps/templates/shelf.html:13 +#: cps/templates/shelf.html:14 msgid "Edit Shelf Properties" msgstr "Editar propiedades del estante" -#: cps/templates/shelf.html:16 +#: cps/templates/shelf.html:17 msgid "Arrange books manually" msgstr "Ordenar libros manualmente" -#: cps/templates/shelf.html:17 +#: cps/templates/shelf.html:18 msgid "Disable Change order" msgstr "Deshabilitar cambio de orden" -#: cps/templates/shelf.html:17 +#: cps/templates/shelf.html:18 msgid "Enable Change order" msgstr "Habilitar cambio de orden" @@ -3065,8 +3180,8 @@ msgid "System Statistics" msgstr "Estadísticas del sistema" #: cps/templates/stats.html:33 -msgid "Program Library" -msgstr "Biblioteca del programa" +msgid "Program" +msgstr "" #: cps/templates/stats.html:34 msgid "Installed Version" @@ -3096,6 +3211,18 @@ msgstr "Tiempo de ejecución" msgid "Start Time" msgstr "Fecha de inicio" +#: cps/templates/tasks.html:20 +msgid "Actions" +msgstr "" + +#: cps/templates/tasks.html:40 +msgid "This task will be cancelled. Any progress made by this task will be saved." +msgstr "" + +#: cps/templates/tasks.html:41 +msgid "If this is a scheduled task, it will be re-ran during the next scheduled time." +msgstr "" + #: cps/templates/user_edit.html:20 msgid "Reset user Password" msgstr "Resetear contraseña de usuario" diff --git a/cps/translations/fi/LC_MESSAGES/messages.mo b/cps/translations/fi/LC_MESSAGES/messages.mo index ecb99d149e9c739b1ef7c48a3f91ded7a6966b4f..5150af1d9e09706ed664edfb663f3e27aa654c94 100644 GIT binary patch delta 6662 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 diff --git a/cps/translations/fi/LC_MESSAGES/messages.po b/cps/translations/fi/LC_MESSAGES/messages.po index 09dee98c..39185504 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: 2022-04-18 20:01+0200\n" +"POT-Creation-Date: 2022-05-01 13:22+0200\n" "PO-Revision-Date: 2020-01-12 13:56+0100\n" "Last-Translator: Samuli Valavuo \n" "Language: fi\n" @@ -16,593 +16,618 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.9.1\n" +"Generated-By: Babel 2.8.0\n" -#: cps/about.py:86 +#: cps/about.py:84 msgid "Statistics" msgstr "Tilastot" -#: cps/admin.py:141 +#: cps/admin.py:146 msgid "Server restarted, please reload page" msgstr "Palvelin uudelleenkäynnistetty, ole hyvä ja päivitä sivu" -#: cps/admin.py:143 +#: cps/admin.py:148 msgid "Performing shutdown of server, please close window" msgstr "Palvelinta sammutetaan, ole hyvä ja sulje sivu" -#: cps/admin.py:151 +#: cps/admin.py:156 msgid "Reconnect successful" msgstr "" -#: cps/admin.py:154 +#: cps/admin.py:159 msgid "Unknown command" msgstr "" -#: cps/admin.py:176 cps/editbooks.py:713 cps/editbooks.py:892 -#: cps/editbooks.py:894 cps/editbooks.py:930 cps/editbooks.py:947 -#: cps/updater.py:608 cps/uploader.py:93 cps/uploader.py:103 +#: cps/admin.py:192 cps/editbooks.py:571 cps/editbooks.py:573 +#: cps/editbooks.py:609 cps/editbooks.py:626 cps/editbooks.py:1233 +#: cps/updater.py:613 cps/uploader.py:87 cps/uploader.py:97 msgid "Unknown" msgstr "Tuntematon" -#: cps/admin.py:197 +#: cps/admin.py:217 msgid "Admin page" msgstr "Ylläpitosivu" -#: cps/admin.py:217 +#: cps/admin.py:237 msgid "Basic Configuration" msgstr "Perusasetukset" -#: cps/admin.py:255 +#: cps/admin.py:275 msgid "UI Configuration" msgstr "Käyttöliittymän asetukset" -#: cps/admin.py:289 cps/templates/admin.html:51 +#: cps/admin.py:309 cps/templates/admin.html:51 #, fuzzy msgid "Edit Users" msgstr "Pääkäyttäjä" -#: cps/admin.py:333 cps/opds.py:529 cps/templates/grid.html:13 +#: cps/admin.py:353 cps/opds.py:532 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "Kaikki" -#: cps/admin.py:360 cps/admin.py:1648 +#: cps/admin.py:380 cps/admin.py:1365 msgid "User not found" msgstr "" -#: cps/admin.py:374 +#: cps/admin.py:394 msgid "{} users deleted successfully" msgstr "" -#: cps/admin.py:397 cps/templates/config_view_edit.html:133 +#: cps/admin.py:417 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:418 cps/admin.py:424 +#: cps/admin.py:438 cps/admin.py:444 msgid "Malformed request" msgstr "" -#: cps/admin.py:436 cps/admin.py:1526 +#: cps/admin.py:456 cps/admin.py:1962 msgid "Guest Name can't be changed" msgstr "" -#: cps/admin.py:448 +#: cps/admin.py:468 msgid "Guest can't have this role" msgstr "" -#: cps/admin.py:460 cps/admin.py:1484 +#: cps/admin.py:480 cps/admin.py:1920 msgid "No admin user remaining, can't remove admin role" msgstr "" -#: cps/admin.py:464 cps/admin.py:478 +#: cps/admin.py:484 cps/admin.py:498 msgid "Value has to be true or false" msgstr "" -#: cps/admin.py:466 +#: cps/admin.py:486 msgid "Invalid role" msgstr "" -#: cps/admin.py:470 +#: cps/admin.py:490 msgid "Guest can't have this view" msgstr "" -#: cps/admin.py:480 +#: cps/admin.py:500 msgid "Invalid view" msgstr "" -#: cps/admin.py:483 +#: cps/admin.py:503 msgid "Guest's Locale is determined automatically and can't be set" msgstr "" -#: cps/admin.py:487 +#: cps/admin.py:507 msgid "No Valid Locale Given" msgstr "" -#: cps/admin.py:498 +#: cps/admin.py:518 msgid "No Valid Book Language Given" msgstr "" -#: cps/admin.py:500 cps/editbooks.py:1267 +#: cps/admin.py:520 cps/editbooks.py:438 msgid "Parameter not found" msgstr "" -#: cps/admin.py:553 +#: cps/admin.py:557 msgid "Invalid Read Column" msgstr "" -#: cps/admin.py:559 +#: cps/admin.py:563 msgid "Invalid Restricted Column" msgstr "" -#: cps/admin.py:579 cps/admin.py:1355 +#: cps/admin.py:583 cps/admin.py:1791 msgid "Calibre-Web configuration updated" msgstr "Calibre-Web asetukset päivitetty" -#: cps/admin.py:591 +#: cps/admin.py:595 msgid "Do you really want to delete the Kobo Token?" msgstr "" -#: cps/admin.py:593 +#: cps/admin.py:597 msgid "Do you really want to delete this domain?" msgstr "" -#: cps/admin.py:595 +#: cps/admin.py:599 msgid "Do you really want to delete this user?" msgstr "" -#: cps/admin.py:597 +#: cps/admin.py:601 msgid "Are you sure you want to delete this shelf?" msgstr "Oletko varma, että haluat poistaa hyllyn?" -#: cps/admin.py:599 +#: cps/admin.py:603 #, fuzzy msgid "Are you sure you want to change locales of selected user(s)?" msgstr "Oletko varma, että haluat poistaa hyllyn?" -#: cps/admin.py:601 +#: cps/admin.py:605 msgid "Are you sure you want to change visible book languages for selected user(s)?" msgstr "" -#: cps/admin.py:603 +#: cps/admin.py:607 msgid "Are you sure you want to change the selected role for the selected user(s)?" msgstr "" -#: cps/admin.py:605 +#: cps/admin.py:609 #, 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:607 +#: cps/admin.py:611 msgid "Are you sure you want to change the selected visibility restrictions for the selected user(s)?" msgstr "" -#: cps/admin.py:610 +#: cps/admin.py:614 #, 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:612 +#: cps/admin.py:616 #, fuzzy msgid "Are you sure you want to change Calibre library location?" msgstr "Haluatko varmasti pysäyttää Calibre-Webin?" -#: cps/admin.py:614 +#: cps/admin.py:618 +msgid "Calibre-Web will search for updated Covers and update Cover Thumbnails, this may take a while?" +msgstr "" + +#: cps/admin.py:620 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:764 -msgid "Tag not found" -msgstr "" - -#: cps/admin.py:776 -msgid "Invalid Action" -msgstr "" - -#: cps/admin.py:893 cps/admin.py:899 cps/admin.py:909 cps/admin.py:919 +#: cps/admin.py:862 cps/admin.py:868 cps/admin.py:878 cps/admin.py:888 #: cps/templates/modal_dialogs.html:29 cps/templates/user_table.html:41 #: cps/templates/user_table.html:58 msgid "Deny" msgstr "" -#: cps/admin.py:895 cps/admin.py:901 cps/admin.py:911 cps/admin.py:921 +#: cps/admin.py:864 cps/admin.py:870 cps/admin.py:880 cps/admin.py:890 #: cps/templates/modal_dialogs.html:28 cps/templates/user_table.html:44 #: cps/templates/user_table.html:61 msgid "Allow" msgstr "" -#: cps/admin.py:936 +#: cps/admin.py:905 msgid "{} sync entries deleted" msgstr "" -#: cps/admin.py:1059 +#: cps/admin.py:953 +msgid "Tag not found" +msgstr "" + +#: cps/admin.py:965 +msgid "Invalid Action" +msgstr "" + +#: cps/admin.py:1080 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "" -#: cps/admin.py:1104 +#: cps/admin.py:1125 msgid "Logfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1110 +#: cps/admin.py:1131 msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1140 +#: cps/admin.py:1161 msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgstr "" -#: cps/admin.py:1146 +#: cps/admin.py:1167 msgid "Please Enter a LDAP Service Account and Password" msgstr "" -#: cps/admin.py:1149 +#: cps/admin.py:1170 msgid "Please Enter a LDAP Service Account" msgstr "" -#: cps/admin.py:1154 +#: cps/admin.py:1175 #, python-format msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1156 +#: cps/admin.py:1177 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1160 +#: cps/admin.py:1181 #, python-format msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1162 +#: cps/admin.py:1183 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1169 +#: cps/admin.py:1190 #, python-format msgid "LDAP Member User Filter needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1171 +#: cps/admin.py:1192 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1178 +#: cps/admin.py:1199 msgid "LDAP CACertificate, Certificate or Key Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1223 cps/admin.py:1339 cps/admin.py:1437 cps/admin.py:1554 -#: cps/admin.py:1623 cps/editbooks.py:678 cps/editbooks.py:882 -#: cps/editbooks.py:1130 cps/shelf.py:100 cps/shelf.py:160 cps/shelf.py:203 -#: cps/shelf.py:278 cps/shelf.py:343 cps/shelf.py:380 cps/shelf.py:456 -#: cps/web.py:1742 +#: cps/admin.py:1230 cps/admin.py:1852 +msgid "Add new user" +msgstr "Lisää uusi käyttäjä" + +#: cps/admin.py:1239 cps/templates/admin.html:100 +msgid "Edit E-mail Server Settings" +msgstr "Muuta SMTP asetuksia" + +#: cps/admin.py:1258 +msgid "Gmail Account Verification Successful" +msgstr "" + +#: cps/admin.py:1277 cps/admin.py:1658 cps/admin.py:1775 cps/admin.py:1873 +#: cps/admin.py:1990 cps/editbooks.py:227 cps/editbooks.py:301 +#: cps/editbooks.py:1196 cps/shelf.py:82 cps/shelf.py:142 cps/shelf.py:185 +#: cps/shelf.py:235 cps/shelf.py:272 cps/shelf.py:343 cps/shelf.py:457 +#: cps/tasks/convert.py:136 cps/web.py:1413 #, python-format msgid "Database error: %(error)s." msgstr "" -#: cps/admin.py:1235 -msgid "DB Location is not Valid, Please Enter Correct Path" -msgstr "" - -#: cps/admin.py:1253 -msgid "DB is not Writeable" -msgstr "" - -#: cps/admin.py:1266 -msgid "Keyfile Location is not Valid, Please Enter Correct Path" -msgstr "" - -#: cps/admin.py:1270 -msgid "Certfile Location is not Valid, Please Enter Correct Path" -msgstr "" - -#: cps/admin.py:1378 -#, fuzzy -msgid "Database Settings updated" -msgstr "Sähköpostipalvelimen tiedot päivitetty" - -#: cps/admin.py:1386 -#, fuzzy -msgid "Database Configuration" -msgstr "Ominaisuuksien asetukset" - -#: cps/admin.py:1402 cps/web.py:1557 -msgid "Please fill out all fields!" -msgstr "Ole hyvä ja täytä kaikki kentät!" - -#: cps/admin.py:1410 -msgid "E-mail is not from valid domain" -msgstr "Sähköpostiosoite ei ole toimivasta domainista" - -#: cps/admin.py:1416 cps/admin.py:1576 -msgid "Add new user" -msgstr "Lisää uusi käyttäjä" - -#: cps/admin.py:1427 -#, python-format -msgid "User '%(user)s' created" -msgstr "Käyttäjä '%(user)s' lisätty" - -#: cps/admin.py:1433 -#, fuzzy -msgid "Found an existing account for this e-mail address or name." -msgstr "Tälle sähköpostiosoitteelle tai tunnukselle löytyi jo tili." - -#: cps/admin.py:1463 -#, python-format -msgid "User '%(nick)s' deleted" -msgstr "Käyttäjä '%(nick)s' poistettu" - -#: cps/admin.py:1465 cps/admin.py:1466 -msgid "Can't delete Guest User" -msgstr "" - -#: cps/admin.py:1469 -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:1542 cps/admin.py:1667 -#, python-format -msgid "Edit User %(nick)s" -msgstr "Muokkaa käyttäjää %(nick)s" - -#: cps/admin.py:1546 -#, python-format -msgid "User '%(nick)s' updated" -msgstr "Käyttäjä '%(nick)s' päivitetty" - -#: cps/admin.py:1550 cps/admin.py:1682 cps/web.py:1582 cps/web.py:1642 -msgid "An unknown error occurred. Please try again later." -msgstr "Tapahtui tuntematon virhe. Yritä myöhemmin uudelleen." - -#: cps/admin.py:1585 cps/templates/admin.html:100 -msgid "Edit E-mail Server Settings" -msgstr "Muuta SMTP asetuksia" - -#: cps/admin.py:1604 -msgid "Gmail Account Verification Successful" -msgstr "" - -#: cps/admin.py:1630 +#: cps/admin.py:1284 #, python-format msgid "Test e-mail queued for sending to %(email)s, please check Tasks for result" msgstr "" -#: cps/admin.py:1633 +#: cps/admin.py:1287 #, 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:1635 +#: cps/admin.py:1289 msgid "Please configure your e-mail address first..." msgstr "" -#: cps/admin.py:1637 +#: cps/admin.py:1291 msgid "E-mail server settings updated" msgstr "Sähköpostipalvelimen tiedot päivitetty" -#: cps/admin.py:1679 +#: cps/admin.py:1314 cps/templates/admin.html:191 +msgid "Edit Scheduled Tasks Settings" +msgstr "" + +#: cps/admin.py:1326 +msgid "Invalid start time for task specified" +msgstr "" + +#: cps/admin.py:1331 +msgid "Invalid duration for task specified" +msgstr "" + +#: cps/admin.py:1340 +msgid "Scheduled tasks settings updated" +msgstr "" + +#: cps/admin.py:1350 cps/admin.py:1399 cps/admin.py:1986 cps/web.py:1254 +#: cps/web.py:1315 +msgid "An unknown error occurred. Please try again later." +msgstr "Tapahtui tuntematon virhe. Yritä myöhemmin uudelleen." + +#: cps/admin.py:1354 +msgid "Settings DB is not Writeable" +msgstr "" + +#: cps/admin.py:1384 cps/admin.py:1978 +#, python-format +msgid "Edit User %(nick)s" +msgstr "Muokkaa käyttäjää %(nick)s" + +#: cps/admin.py:1396 #, python-format msgid "Password for user %(user)s reset" msgstr "Käyttäjän %(user)s salasana palautettu" -#: cps/admin.py:1685 cps/web.py:1522 +#: cps/admin.py:1402 cps/web.py:1194 msgid "Please configure the SMTP mail settings first..." msgstr "Ole hyvä ja aseta SMTP postiasetukset ensin..." -#: cps/admin.py:1696 +#: cps/admin.py:1413 msgid "Logfile viewer" msgstr "Lokitiedoston katselin" -#: cps/admin.py:1762 +#: cps/admin.py:1479 msgid "Requesting update package" msgstr "Haetaan päivitystiedostoa" -#: cps/admin.py:1763 +#: cps/admin.py:1480 msgid "Downloading update package" msgstr "Ladataan päivitystiedostoa" -#: cps/admin.py:1764 +#: cps/admin.py:1481 msgid "Unzipping update package" msgstr "Puretaan päivitystiedostoa" -#: cps/admin.py:1765 +#: cps/admin.py:1482 msgid "Replacing files" msgstr "Korvataan tiedostoja" -#: cps/admin.py:1766 +#: cps/admin.py:1483 msgid "Database connections are closed" msgstr "Tietokantayhteydet on katkaistu" -#: cps/admin.py:1767 +#: cps/admin.py:1484 msgid "Stopping server" msgstr "Sammutetaan palvelin" -#: cps/admin.py:1768 +#: cps/admin.py:1485 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:1769 cps/admin.py:1770 cps/admin.py:1771 cps/admin.py:1772 -#: cps/admin.py:1773 cps/admin.py:1774 +#: cps/admin.py:1486 cps/admin.py:1487 cps/admin.py:1488 cps/admin.py:1489 +#: cps/admin.py:1490 cps/admin.py:1491 msgid "Update failed:" msgstr "Päivitys epäonnistui:" -#: cps/admin.py:1769 cps/updater.py:384 cps/updater.py:619 cps/updater.py:621 +#: cps/admin.py:1486 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 msgid "HTTP Error" msgstr "HTTP virhe" -#: cps/admin.py:1770 cps/updater.py:386 cps/updater.py:623 +#: cps/admin.py:1487 cps/updater.py:391 cps/updater.py:628 msgid "Connection error" msgstr "Yhteysvirhe" -#: cps/admin.py:1771 cps/updater.py:388 cps/updater.py:625 +#: cps/admin.py:1488 cps/updater.py:393 cps/updater.py:630 msgid "Timeout while establishing connection" msgstr "Aikakatkaisu yhteyttä luotaessa" -#: cps/admin.py:1772 cps/updater.py:390 cps/updater.py:627 +#: cps/admin.py:1489 cps/updater.py:395 cps/updater.py:632 msgid "General error" msgstr "Yleinen virhe" -#: cps/admin.py:1773 +#: cps/admin.py:1490 msgid "Update file could not be saved in temp dir" msgstr "" -#: cps/admin.py:1774 +#: cps/admin.py:1491 msgid "Files could not be replaced during update" msgstr "" -#: cps/admin.py:1798 +#: cps/admin.py:1515 msgid "Failed to extract at least One LDAP User" msgstr "" -#: cps/admin.py:1843 +#: cps/admin.py:1560 msgid "Failed to Create at Least One LDAP User" msgstr "" -#: cps/admin.py:1856 +#: cps/admin.py:1573 #, python-format msgid "Error: %(ldaperror)s" msgstr "" -#: cps/admin.py:1860 +#: cps/admin.py:1577 msgid "Error: No user returned in response of LDAP server" msgstr "" -#: cps/admin.py:1893 +#: cps/admin.py:1610 msgid "At Least One LDAP User Not Found in Database" msgstr "" -#: cps/admin.py:1895 +#: cps/admin.py:1612 msgid "{} User Successfully Imported" msgstr "" -#: cps/converter.py:30 +#: cps/admin.py:1670 +msgid "DB Location is not Valid, Please Enter Correct Path" +msgstr "" + +#: cps/admin.py:1689 +msgid "DB is not Writeable" +msgstr "" + +#: cps/admin.py:1702 +msgid "Keyfile Location is not Valid, Please Enter Correct Path" +msgstr "" + +#: cps/admin.py:1706 +msgid "Certfile Location is not Valid, Please Enter Correct Path" +msgstr "" + +#: cps/admin.py:1814 +#, fuzzy +msgid "Database Settings updated" +msgstr "Sähköpostipalvelimen tiedot päivitetty" + +#: cps/admin.py:1822 +#, fuzzy +msgid "Database Configuration" +msgstr "Ominaisuuksien asetukset" + +#: cps/admin.py:1838 cps/web.py:1229 +msgid "Please fill out all fields!" +msgstr "Ole hyvä ja täytä kaikki kentät!" + +#: cps/admin.py:1846 +msgid "E-mail is not from valid domain" +msgstr "Sähköpostiosoite ei ole toimivasta domainista" + +#: cps/admin.py:1863 +#, python-format +msgid "User '%(user)s' created" +msgstr "Käyttäjä '%(user)s' lisätty" + +#: cps/admin.py:1869 +#, fuzzy +msgid "Found an existing account for this e-mail address or name." +msgstr "Tälle sähköpostiosoitteelle tai tunnukselle löytyi jo tili." + +#: cps/admin.py:1899 +#, python-format +msgid "User '%(nick)s' deleted" +msgstr "Käyttäjä '%(nick)s' poistettu" + +#: cps/admin.py:1901 cps/admin.py:1902 +msgid "Can't delete Guest User" +msgstr "" + +#: cps/admin.py:1905 +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:1982 +#, python-format +msgid "User '%(nick)s' updated" +msgstr "Käyttäjä '%(nick)s' päivitetty" + +#: cps/converter.py:31 msgid "not installed" msgstr "ei asennettu" -#: cps/converter.py:31 +#: cps/converter.py:32 msgid "Execution permissions missing" msgstr "" -#: cps/db.py:674 cps/web.py:710 cps/web.py:1222 +#: cps/db.py:681 cps/search.py:134 cps/web.py:720 #, python-format msgid "Custom Column No.%(column)d is not existing in calibre database" msgstr "" -#: cps/db.py:917 cps/templates/config_edit.html:204 +#: cps/db.py:924 cps/templates/config_edit.html:204 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 -#: cps/web.py:551 cps/web.py:585 cps/web.py:646 cps/web.py:671 cps/web.py:1003 -#: cps/web.py:1032 cps/web.py:1066 cps/web.py:1093 cps/web.py:1132 +#: cps/web.py:549 cps/web.py:583 cps/web.py:656 cps/web.py:681 cps/web.py:962 +#: cps/web.py:992 cps/web.py:1027 cps/web.py:1055 cps/web.py:1094 msgid "None" msgstr "Ei mitään" -#: cps/editbooks.py:295 cps/editbooks.py:297 -msgid "Book Format Successfully Deleted" -msgstr "" - -#: cps/editbooks.py:304 cps/editbooks.py:306 -msgid "Book Successfully Deleted" -msgstr "" - -#: cps/editbooks.py:358 -msgid "You are missing permissions to delete books" -msgstr "" - -#: cps/editbooks.py:373 cps/editbooks.py:765 cps/web.py:518 cps/web.py:1783 -#: cps/web.py:1825 cps/web.py:1870 +#: cps/editbooks.py:109 cps/editbooks.py:890 cps/web.py:516 cps/web.py:1454 +#: cps/web.py:1496 cps/web.py:1541 msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible" msgstr "Virhe eKirjan avaamisessa. Tiedostoa ei ole tai se ei ole saatavilla:" -#: cps/editbooks.py:408 -msgid "edit metadata" -msgstr "muokkaa metadataa" - -#: cps/editbooks.py:457 -#, python-format -msgid "%(seriesindex)s is not a valid number, skipping" -msgstr "" - -#: cps/editbooks.py:493 cps/editbooks.py:1001 -#, fuzzy, python-format -msgid "'%(langname)s' is not a valid language" -msgstr "%(langname)s ei ole kelvollinen kieli" - -#: cps/editbooks.py:634 -msgid "User has no rights to upload additional file formats" -msgstr "" - -#: cps/editbooks.py:639 cps/editbooks.py:1029 -#, 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:643 cps/editbooks.py:1033 -msgid "File to be uploaded must have an extension" -msgstr "Ladattavalla tiedostolla on oltava tiedostopääte" - -#: cps/editbooks.py:655 -#, python-format -msgid "Failed to create path %(path)s (Permission denied)." -msgstr "Polun %(path)s luonti epäonnistui (Ei oikeutta)." - -#: cps/editbooks.py:660 -#, python-format -msgid "Failed to store file %(file)s." -msgstr "Tiedoston %(file)s tallennus epäonnistui." - -#: cps/editbooks.py:683 -#, python-format -msgid "File format %(ext)s added to %(book)s" -msgstr "Tiedostoformaatti %(ext)s lisätty %(book)s" - -#: cps/editbooks.py:697 cps/editbooks.py:809 +#: cps/editbooks.py:153 cps/editbooks.py:1216 msgid "User has no rights to upload cover" msgstr "" -#: cps/editbooks.py:828 +#: cps/editbooks.py:173 cps/editbooks.py:711 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "" -#: cps/editbooks.py:869 +#: cps/editbooks.py:214 msgid "Metadata successfully updated" msgstr "Metadata päivitetty onnistuneesti" -#: cps/editbooks.py:887 +#: cps/editbooks.py:232 msgid "Error editing book: {}" msgstr "" -#: cps/editbooks.py:951 -msgid "Uploaded book probably exists in the library, consider to change before upload new: " -msgstr "" - -#: cps/editbooks.py:1041 -#, python-format -msgid "File %(filename)s could not saved to temp dir" -msgstr "" - -#: cps/editbooks.py:1061 -#, python-format -msgid "Failed to Move Cover File %(file)s: %(error)s" -msgstr "" - -#: cps/editbooks.py:1117 +#: cps/editbooks.py:287 #, python-format msgid "File %(file)s uploaded" msgstr "Tiedosto %(file)s tallennettu" -#: cps/editbooks.py:1143 +#: cps/editbooks.py:314 msgid "Source or destination format for conversion missing" msgstr "Lähteen tai kohteen tiedostomuoto puuttuu" -#: cps/editbooks.py:1151 +#: cps/editbooks.py:322 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "Kirja lisätty muutosjonoon muotoon %(book_format)s" -#: cps/editbooks.py:1155 +#: cps/editbooks.py:326 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "Kirjan muunnoksessa tapahtui virhe: %(res)s" +#: cps/editbooks.py:630 +msgid "Uploaded book probably exists in the library, consider to change before upload new: " +msgstr "" + +#: cps/editbooks.py:685 cps/editbooks.py:1010 +#, fuzzy, python-format +msgid "'%(langname)s' is not a valid language" +msgstr "%(langname)s ei ole kelvollinen kieli" + +#: cps/editbooks.py:723 cps/editbooks.py:1157 +#, 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:727 cps/editbooks.py:1161 +msgid "File to be uploaded must have an extension" +msgstr "Ladattavalla tiedostolla on oltava tiedostopääte" + +#: cps/editbooks.py:735 +#, python-format +msgid "File %(filename)s could not saved to temp dir" +msgstr "" + +#: cps/editbooks.py:755 +#, python-format +msgid "Failed to Move Cover File %(file)s: %(error)s" +msgstr "" + +#: cps/editbooks.py:812 cps/editbooks.py:814 +msgid "Book Format Successfully Deleted" +msgstr "" + +#: cps/editbooks.py:821 cps/editbooks.py:823 +msgid "Book Successfully Deleted" +msgstr "" + +#: cps/editbooks.py:875 +msgid "You are missing permissions to delete books" +msgstr "" + +#: cps/editbooks.py:925 +msgid "edit metadata" +msgstr "muokkaa metadataa" + +#: cps/editbooks.py:974 +#, python-format +msgid "%(seriesindex)s is not a valid number, skipping" +msgstr "" + +#: cps/editbooks.py:1152 +msgid "User has no rights to upload additional file formats" +msgstr "" + +#: cps/editbooks.py:1173 +#, python-format +msgid "Failed to create path %(path)s (Permission denied)." +msgstr "Polun %(path)s luonti epäonnistui (Ei oikeutta)." + +#: cps/editbooks.py:1178 +#, python-format +msgid "Failed to store file %(file)s." +msgstr "Tiedoston %(file)s tallennus epäonnistui." + +#: cps/editbooks.py:1201 +#, python-format +msgid "File format %(ext)s added to %(book)s" +msgstr "Tiedostoformaatti %(ext)s lisätty %(book)s" + #: cps/gdrive.py:58 msgid "Google Drive setup not completed, try to deactivate and activate Google Drive again" msgstr "Google Drive asetukset ei ole valmiit. Koita poistaa Google Drive käytöstä ja ottaa se uudelleen käyttöön" @@ -611,27 +636,27 @@ 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:81 +#: cps/helper.py:80 #, 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:87 cps/tasks/convert.py:75 +#: cps/helper.py:86 cps/tasks/convert.py:75 #, 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:92 +#: cps/helper.py:91 #, python-format msgid "%(format)s not found: %(fn)s" msgstr "%(format)s ei löydy: %(fn)s" -#: cps/helper.py:97 cps/helper.py:221 cps/templates/detail.html:41 -#: cps/templates/detail.html:45 +#: cps/helper.py:96 cps/helper.py:221 cps/templates/detail.html:42 +#: cps/templates/detail.html:46 msgid "Send to Kindle" msgstr "Lähetä Kindleen" -#: cps/helper.py:98 cps/helper.py:115 cps/helper.py:223 +#: cps/helper.py:97 cps/helper.py:115 cps/helper.py:223 msgid "This e-mail has been sent via Calibre-Web." msgstr "Tämä sähköposti on lähetetty Calibre-Web:sta." @@ -671,131 +696,111 @@ msgstr "Lähetä Kindleen" 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:353 +#: cps/helper.py:341 msgid "Read status could not set: {}" msgstr "" -#: cps/helper.py:376 +#: cps/helper.py:364 #, python-format msgid "Deleting bookfolder for book %(id)s failed, path has subfolders: %(path)s" msgstr "" -#: cps/helper.py:382 +#: cps/helper.py:370 #, python-format msgid "Deleting book %(id)s failed: %(message)s" msgstr "" -#: cps/helper.py:393 +#: cps/helper.py:381 #, python-format msgid "Deleting book %(id)s from database only, book path in database not valid: %(path)s" msgstr "" -#: cps/helper.py:458 +#: cps/helper.py:446 #, 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:529 cps/helper.py:538 +#: cps/helper.py:518 cps/helper.py:527 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "Tiedostoa %(file)s ei löytynyt Google Drivesta" -#: cps/helper.py:572 +#: cps/helper.py:561 #, 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:592 +#: cps/helper.py:581 msgid "Error in rename file in path: {}" msgstr "" -#: cps/helper.py:610 +#: cps/helper.py:599 #, 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:651 cps/web.py:1737 +#: cps/helper.py:640 cps/web.py:1408 #, fuzzy msgid "Found an existing account for this e-mail address" msgstr "Tälle sähköpostiosoitteelle läytyi jo käyttäjätunnus." -#: cps/helper.py:659 +#: cps/helper.py:648 msgid "This username is already taken" msgstr "" -#: cps/helper.py:669 +#: cps/helper.py:658 msgid "Invalid e-mail address format" msgstr "" -#: cps/helper.py:754 -msgid "Python modul 'advocate' is not installed but is needed for cover downloads" +#: cps/helper.py:808 +msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "" -#: cps/helper.py:767 +#: cps/helper.py:818 msgid "Error Downloading Cover" msgstr "" -#: cps/helper.py:770 +#: cps/helper.py:821 msgid "Cover Format Error" msgstr "" -#: cps/helper.py:773 +#: cps/helper.py:824 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "" -#: cps/helper.py:783 +#: cps/helper.py:834 msgid "Failed to create path for cover" msgstr "" -#: cps/helper.py:799 +#: cps/helper.py:850 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "" -#: cps/helper.py:810 +#: cps/helper.py:861 msgid "Only jpg/jpeg/png/webp/bmp files are supported as coverfile" msgstr "" -#: cps/helper.py:822 +#: cps/helper.py:873 msgid "Invalid cover file content" msgstr "" -#: cps/helper.py:826 +#: cps/helper.py:877 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "" -#: cps/helper.py:878 +#: cps/helper.py:929 msgid "Unrar binary file not found" msgstr "" -#: cps/helper.py:889 +#: cps/helper.py:940 msgid "Error excecuting UnRar" msgstr "" -#: cps/helper.py:937 -msgid "Waiting" -msgstr "Odottaa" - -#: cps/helper.py:939 -msgid "Failed" -msgstr "Epäonnistui" - -#: cps/helper.py:941 -msgid "Started" -msgstr "Aloitettu" - -#: cps/helper.py:943 -msgid "Finished" -msgstr "Valmistui" - -#: cps/helper.py:945 -msgid "Unknown Status" -msgstr "Tuntematon tila" - -#: cps/kobo_auth.py:128 +#: cps/kobo_auth.py:89 msgid "Please access Calibre-Web from non localhost to get valid api_endpoint for kobo device" msgstr "" -#: cps/kobo_auth.py:154 +#: cps/kobo_auth.py:115 msgid "Kobo Setup" msgstr "" @@ -804,7 +809,7 @@ msgstr "" msgid "Register with %(provider)s" msgstr "Rekisteröi tuottajalle %(provider)s" -#: cps/oauth_bb.py:138 cps/remotelogin.py:130 cps/web.py:1613 +#: cps/oauth_bb.py:138 cps/remotelogin.py:130 cps/web.py:1286 #, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "olet nyt kirjautunut tunnuksella: \"%(nickname)s\"" @@ -865,12 +870,12 @@ msgstr "Google Oauth virhe, yritä myöhemmin uudelleen." msgid "Google Oauth error: {}" msgstr "" -#: cps/opds.py:298 +#: cps/opds.py:287 msgid "{} Stars" msgstr "" -#: cps/remotelogin.py:62 cps/templates/layout.html:84 -#: cps/templates/login.html:4 cps/templates/login.html:21 cps/web.py:1662 +#: cps/remotelogin.py:62 cps/templates/layout.html:85 +#: cps/templates/login.html:4 cps/templates/login.html:21 cps/web.py:1335 msgid "Login" msgstr "Kirjaudu sisään" @@ -886,456 +891,489 @@ msgstr "Valtuutus vanhentunut" msgid "Success! Please return to your device" msgstr "Onnistui! Ole hyvä ja palaa laitteellesi" -#: cps/render_template.py:41 cps/web.py:407 +#: cps/render_template.py:40 cps/web.py:405 msgid "Books" msgstr "Kirjat" -#: cps/render_template.py:43 +#: cps/render_template.py:42 msgid "Show recent books" msgstr "Näytä viimeisimmät kirjat" -#: cps/render_template.py:44 cps/templates/index.xml:25 +#: cps/render_template.py:43 cps/templates/index.xml:25 msgid "Hot Books" msgstr "Kuumat kirjat" -#: cps/render_template.py:46 +#: cps/render_template.py:45 msgid "Show Hot Books" msgstr "Näytä kuumat kirjat" -#: cps/render_template.py:48 cps/render_template.py:53 +#: cps/render_template.py:47 cps/render_template.py:52 msgid "Downloaded Books" msgstr "" -#: cps/render_template.py:50 cps/render_template.py:55 +#: cps/render_template.py:49 cps/render_template.py:54 #: cps/templates/user_table.html:167 msgid "Show Downloaded Books" msgstr "" -#: cps/render_template.py:58 cps/templates/index.xml:32 cps/web.py:422 +#: cps/render_template.py:57 cps/templates/index.xml:32 cps/web.py:420 msgid "Top Rated Books" msgstr "Parhaiten arvioidut kirjat" -#: cps/render_template.py:60 cps/templates/user_table.html:161 +#: cps/render_template.py:59 cps/templates/user_table.html:161 msgid "Show Top Rated Books" msgstr "Näytä parhaiten arvioidut kirjat" -#: cps/render_template.py:61 cps/templates/index.xml:54 -#: cps/templates/index.xml:58 cps/web.py:729 +#: cps/render_template.py:60 cps/templates/index.xml:54 +#: cps/templates/index.xml:58 cps/web.py:739 msgid "Read Books" msgstr "Luetut kirjat" -#: cps/render_template.py:63 +#: cps/render_template.py:62 msgid "Show read and unread" msgstr "Näytä luetut ja lukemattomat" -#: cps/render_template.py:65 cps/templates/index.xml:61 -#: cps/templates/index.xml:65 cps/web.py:732 +#: cps/render_template.py:64 cps/templates/index.xml:61 +#: cps/templates/index.xml:65 cps/web.py:742 msgid "Unread Books" msgstr "Lukemattomat kirjat" -#: cps/render_template.py:67 +#: cps/render_template.py:66 msgid "Show unread" msgstr "Näyt lukemattomat" -#: cps/render_template.py:68 +#: cps/render_template.py:67 msgid "Discover" msgstr "Löydä" -#: cps/render_template.py:70 cps/templates/index.xml:50 +#: cps/render_template.py:69 cps/templates/index.xml:50 #: cps/templates/user_table.html:162 msgid "Show Random Books" msgstr "Näytä satunnausia kirjoja" -#: cps/render_template.py:71 cps/templates/book_table.html:67 -#: cps/templates/index.xml:83 cps/web.py:1135 +#: cps/render_template.py:70 cps/templates/book_table.html:67 +#: cps/templates/index.xml:83 cps/web.py:1098 msgid "Categories" msgstr "Kategoriat" -#: cps/render_template.py:73 cps/templates/user_table.html:158 +#: cps/render_template.py:72 cps/templates/user_table.html:158 msgid "Show category selection" msgstr "Näytä kategoriavalinta" -#: cps/render_template.py:74 cps/templates/book_edit.html:90 +#: cps/render_template.py:73 cps/templates/book_edit.html:91 #: cps/templates/book_table.html:68 cps/templates/index.xml:90 -#: cps/templates/search_form.html:69 cps/web.py:1034 cps/web.py:1041 +#: cps/templates/search_form.html:69 cps/web.py:995 cps/web.py:1002 msgid "Series" msgstr "Sarjat" -#: cps/render_template.py:76 cps/templates/user_table.html:157 +#: cps/render_template.py:75 cps/templates/user_table.html:157 msgid "Show series selection" msgstr "Näytä sarjavalinta" -#: cps/render_template.py:77 cps/templates/book_table.html:66 +#: cps/render_template.py:76 cps/templates/book_table.html:66 #: cps/templates/index.xml:69 msgid "Authors" msgstr "Kirjailijat" -#: cps/render_template.py:79 cps/templates/user_table.html:160 +#: cps/render_template.py:78 cps/templates/user_table.html:160 msgid "Show author selection" msgstr "Näytä kirjailijavalinta" -#: cps/render_template.py:81 cps/templates/book_table.html:72 -#: cps/templates/index.xml:76 cps/web.py:1006 +#: cps/render_template.py:80 cps/templates/book_table.html:72 +#: cps/templates/index.xml:76 cps/web.py:966 msgid "Publishers" msgstr "Julkaisijat" -#: cps/render_template.py:83 cps/templates/user_table.html:163 +#: cps/render_template.py:82 cps/templates/user_table.html:163 msgid "Show publisher selection" msgstr "Näytä julkaisijavalinta" -#: cps/render_template.py:84 cps/templates/book_table.html:70 +#: cps/render_template.py:83 cps/templates/book_table.html:70 #: cps/templates/index.xml:97 cps/templates/search_form.html:107 -#: cps/web.py:1108 +#: cps/web.py:1070 msgid "Languages" msgstr "Kielet" -#: cps/render_template.py:87 cps/templates/user_table.html:155 +#: cps/render_template.py:86 cps/templates/user_table.html:155 msgid "Show language selection" msgstr "Näytä keilivalinta" -#: cps/render_template.py:88 cps/templates/index.xml:104 +#: cps/render_template.py:87 cps/templates/index.xml:104 msgid "Ratings" msgstr "Arvostelut" -#: cps/render_template.py:90 cps/templates/user_table.html:164 +#: cps/render_template.py:89 cps/templates/user_table.html:164 msgid "Show ratings selection" msgstr "Näytä arvosteluvalinta" -#: cps/render_template.py:91 cps/templates/index.xml:112 +#: cps/render_template.py:90 cps/templates/index.xml:112 msgid "File formats" msgstr "Tiedotomuodot" -#: cps/render_template.py:93 cps/templates/user_table.html:165 +#: cps/render_template.py:92 cps/templates/user_table.html:165 msgid "Show file formats selection" msgstr "Näytä tiedostomuotovalinta" -#: cps/render_template.py:95 cps/web.py:755 +#: cps/render_template.py:94 cps/web.py:765 msgid "Archived Books" msgstr "" -#: cps/render_template.py:97 cps/templates/user_table.html:166 +#: cps/render_template.py:96 cps/templates/user_table.html:166 msgid "Show archived books" msgstr "" -#: cps/render_template.py:100 cps/web.py:837 +#: cps/render_template.py:99 cps/web.py:796 msgid "Books List" msgstr "" -#: cps/render_template.py:102 cps/templates/user_table.html:168 +#: cps/render_template.py:101 cps/templates/user_table.html:168 msgid "Show Books List" msgstr "" -#: cps/shelf.py:67 cps/shelf.py:121 -msgid "Invalid shelf specified" -msgstr "Virheellinen hylly valittu" - -#: cps/shelf.py:73 -#, fuzzy -msgid "Sorry you are not allowed to add a book to that shelf" -msgstr "Valitettavasti sinulla ei ole oikeutta lisätä kirjaa hyllyyn: %(shelfname)s" - -#: cps/shelf.py:82 -#, python-format -msgid "Book is already part of the shelf: %(shelfname)s" -msgstr "Kirja on jo hyllyssä: %(shelfname)s" - -#: cps/shelf.py:107 -#, python-format -msgid "Book has been added to shelf: %(sname)s" -msgstr "Kirja on lisätty hyllyyn: %(sname)s" - -#: cps/shelf.py:126 -msgid "You are not allowed to add a book to the shelf" -msgstr "" - -#: cps/shelf.py:144 -#, python-format -msgid "Books are already part of the shelf: %(name)s" -msgstr "Kirjat on jo osa hyllyssä: %(name)s" - -#: cps/shelf.py:156 -#, python-format -msgid "Books have been added to shelf: %(sname)s" -msgstr "Kirjat on lisätty hyllyyn: %(sname)s" - -#: cps/shelf.py:163 -#, python-format -msgid "Could not add books to shelf: %(sname)s" -msgstr "Kirjojen lisäys hyllyyn: %(sname)s epäonnistui" - -#: cps/shelf.py:209 -#, python-format -msgid "Book has been removed from shelf: %(sname)s" -msgstr "Kirja on poistettu hyllystä: %(sname)s" - -#: cps/shelf.py:218 -msgid "Sorry you are not allowed to remove a book from this shelf" -msgstr "" - -#: cps/shelf.py:228 cps/templates/layout.html:140 -msgid "Create a Shelf" -msgstr "luo hylly" - -#: cps/shelf.py:236 -#, fuzzy -msgid "Sorry you are not allowed to edit this shelf" -msgstr "Valitettavsti sinulla ei ole oikeutta poistaa kirjaa hyllystä: %(sname)s" - -#: cps/shelf.py:238 -msgid "Edit a shelf" -msgstr "Muokkaa hyllyä" - -#: cps/shelf.py:248 -msgid "Sorry you are not allowed to create a public shelf" -msgstr "" - -#: cps/shelf.py:265 -#, python-format -msgid "Shelf %(title)s created" -msgstr "Hylly %(title)s luotu" - -#: cps/shelf.py:268 -#, python-format -msgid "Shelf %(title)s changed" -msgstr "Hylly %(title)s muutettu" - -#: cps/shelf.py:282 -msgid "There was an error" -msgstr "Tapahtui virhe" - -#: cps/shelf.py:304 -#, python-format -msgid "A public shelf with the name '%(title)s' already exists." -msgstr "" - -#: cps/shelf.py:315 -#, python-format -msgid "A private shelf with the name '%(title)s' already exists." -msgstr "" - -#: cps/shelf.py:337 -msgid "Error deleting Shelf" -msgstr "" - -#: cps/shelf.py:339 -#, fuzzy -msgid "Shelf successfully deleted" -msgstr "Metadata päivitetty onnistuneesti" - -#: cps/shelf.py:389 -#, python-format -msgid "Change order of Shelf: '%(name)s'" -msgstr "Muuta hyllyn: '%(name)s' järjestystä" - -#: cps/shelf.py:461 -#, python-format -msgid "Shelf: '%(name)s'" -msgstr "Hylly: '%(name)s'" - -#: cps/shelf.py:465 -msgid "Error opening shelf. Shelf does not exist or is not accessible" -msgstr "Virhe hyllyn avauksessa. Hyllyä ei ole tai se ei ole saatavilla" - -#: cps/updater.py:426 cps/updater.py:437 cps/updater.py:538 cps/updater.py:553 -msgid "Unexpected data while reading update information" -msgstr "Odottamatonta tietoa luettaessa päivitystietoa" - -#: cps/updater.py:433 cps/updater.py:545 -msgid "No update available. You already have the latest version installed" -msgstr "Ei päivitystä saatavilla. Sinulla on jo uusin versio" - -#: cps/updater.py:451 -msgid "A new update is available. Click on the button below to update to the latest version." -msgstr "Uusi päivitys saatavilla. Paina alla olevaa nappia päivittääksesi uusimpaan versioon." - -#: cps/updater.py:469 -msgid "Could not fetch update information" -msgstr "Päivitystiedon hakeminen epäonnistui" - -#: cps/updater.py:479 -msgid "Click on the button below to update to the latest stable version." -msgstr "Paina alla olevaa nappia päivittääksesi uusimpaan vakaaseen versioon." - -#: cps/updater.py:488 cps/updater.py:502 cps/updater.py:513 -#, python-format -msgid "A new update is available. Click on the button below to update to version: %(version)s" -msgstr "Uusi päivitys saatavilla. Paina alla olevaa nappia päivittääksesi versioon: %(version)s" - -#: cps/updater.py:531 -msgid "No release information available" -msgstr "Ei päivitystietoa saatavilla" - -#: cps/templates/index.html:5 cps/web.py:434 -msgid "Discover (Random Books)" -msgstr "Löydä (satunnaiset kirjat)" - -#: cps/web.py:470 -msgid "Hot Books (Most Downloaded)" -msgstr "Kuumat kirjat (ladatuimmat)" - -#: cps/web.py:501 -#, python-format -msgid "Downloaded books by %(user)s" -msgstr "" - -#: cps/web.py:534 -#, python-format -msgid "Author: %(name)s" -msgstr "Kirjailija: %(name)s" - -#: cps/web.py:570 -#, python-format -msgid "Publisher: %(name)s" -msgstr "Julkaisija: %(name)s" - -#: cps/web.py:598 -#, python-format -msgid "Series: %(serie)s" -msgstr "Sarja: %(serie)s" - -#: cps/web.py:610 -#, python-format -msgid "Rating: %(rating)s stars" -msgstr "Arvostelu: %(rating)s tähteä" - -#: cps/web.py:626 -#, python-format -msgid "File format: %(format)s" -msgstr "Tiedostomuoto: %(format)s" - -#: cps/web.py:663 -#, python-format -msgid "Category: %(name)s" -msgstr "Kategoria: %(name)s" - -#: cps/web.py:690 -#, python-format -msgid "Language: %(name)s" -msgstr "Kieli: %(name)s" - -#: cps/templates/layout.html:56 cps/web.py:789 cps/web.py:1444 -msgid "Advanced Search" -msgstr "Edistynyt haku" - -#: cps/templates/book_edit.html:235 cps/templates/feed.xml:33 -#: cps/templates/index.xml:11 cps/templates/layout.html:45 -#: cps/templates/layout.html:48 cps/templates/search_form.html:226 -#: cps/web.py:807 cps/web.py:1164 +#: cps/search.py:48 cps/search.py:414 cps/templates/book_edit.html:236 +#: cps/templates/feed.xml:33 cps/templates/index.xml:11 +#: cps/templates/layout.html:46 cps/templates/layout.html:49 +#: cps/templates/search_form.html:226 msgid "Search" msgstr "Hae" -#: cps/templates/admin.html:16 cps/web.py:979 -msgid "Downloads" -msgstr "DLS" - -#: cps/web.py:1068 -msgid "Ratings list" -msgstr "Arvostelulistaus" - -#: cps/web.py:1095 -msgid "File formats list" -msgstr "Tiedostomuotolistaus" - -#: cps/templates/layout.html:73 cps/templates/tasks.html:7 cps/web.py:1149 -msgid "Tasks" -msgstr "Tehtävät" - -#: cps/web.py:1286 +#: cps/search.py:194 msgid "Published after " msgstr "Julkaistu alkaen " -#: cps/web.py:1293 +#: cps/search.py:201 msgid "Published before " msgstr "Julkaisut ennen " -#: cps/web.py:1315 +#: cps/search.py:223 #, python-format msgid "Rating <= %(rating)s" msgstr "Arvostelu <= %(rating)s" -#: cps/web.py:1317 +#: cps/search.py:225 #, python-format msgid "Rating >= %(rating)s" msgstr "Arvostelu >= %(rating)s" -#: cps/web.py:1319 +#: cps/search.py:227 #, python-format msgid "Read Status = %(status)s" msgstr "" -#: cps/web.py:1425 +#: cps/search.py:345 msgid "Error on search for custom columns, please restart Calibre-Web" msgstr "" -#: cps/web.py:1527 +#: cps/search.py:364 cps/search.py:396 cps/templates/layout.html:57 +msgid "Advanced Search" +msgstr "Edistynyt haku" + +#: cps/shelf.py:49 cps/shelf.py:103 +msgid "Invalid shelf specified" +msgstr "Virheellinen hylly valittu" + +#: cps/shelf.py:55 +#, fuzzy +msgid "Sorry you are not allowed to add a book to that shelf" +msgstr "Valitettavasti sinulla ei ole oikeutta lisätä kirjaa hyllyyn: %(shelfname)s" + +#: cps/shelf.py:64 +#, python-format +msgid "Book is already part of the shelf: %(shelfname)s" +msgstr "Kirja on jo hyllyssä: %(shelfname)s" + +#: cps/shelf.py:89 +#, python-format +msgid "Book has been added to shelf: %(sname)s" +msgstr "Kirja on lisätty hyllyyn: %(sname)s" + +#: cps/shelf.py:108 +msgid "You are not allowed to add a book to the shelf" +msgstr "" + +#: cps/shelf.py:126 +#, python-format +msgid "Books are already part of the shelf: %(name)s" +msgstr "Kirjat on jo osa hyllyssä: %(name)s" + +#: cps/shelf.py:138 +#, python-format +msgid "Books have been added to shelf: %(sname)s" +msgstr "Kirjat on lisätty hyllyyn: %(sname)s" + +#: cps/shelf.py:145 +#, python-format +msgid "Could not add books to shelf: %(sname)s" +msgstr "Kirjojen lisäys hyllyyn: %(sname)s epäonnistui" + +#: cps/shelf.py:191 +#, python-format +msgid "Book has been removed from shelf: %(sname)s" +msgstr "Kirja on poistettu hyllystä: %(sname)s" + +#: cps/shelf.py:200 +msgid "Sorry you are not allowed to remove a book from this shelf" +msgstr "" + +#: cps/shelf.py:210 cps/templates/layout.html:141 +msgid "Create a Shelf" +msgstr "luo hylly" + +#: cps/shelf.py:218 +#, fuzzy +msgid "Sorry you are not allowed to edit this shelf" +msgstr "Valitettavsti sinulla ei ole oikeutta poistaa kirjaa hyllystä: %(sname)s" + +#: cps/shelf.py:220 +msgid "Edit a shelf" +msgstr "Muokkaa hyllyä" + +#: cps/shelf.py:229 +msgid "Error deleting Shelf" +msgstr "" + +#: cps/shelf.py:231 +#, fuzzy +msgid "Shelf successfully deleted" +msgstr "Metadata päivitetty onnistuneesti" + +#: cps/shelf.py:281 +#, python-format +msgid "Change order of Shelf: '%(name)s'" +msgstr "Muuta hyllyn: '%(name)s' järjestystä" + +#: cps/shelf.py:313 +msgid "Sorry you are not allowed to create a public shelf" +msgstr "" + +#: cps/shelf.py:330 +#, python-format +msgid "Shelf %(title)s created" +msgstr "Hylly %(title)s luotu" + +#: cps/shelf.py:333 +#, python-format +msgid "Shelf %(title)s changed" +msgstr "Hylly %(title)s muutettu" + +#: cps/shelf.py:347 +msgid "There was an error" +msgstr "Tapahtui virhe" + +#: cps/shelf.py:369 +#, python-format +msgid "A public shelf with the name '%(title)s' already exists." +msgstr "" + +#: cps/shelf.py:380 +#, python-format +msgid "A private shelf with the name '%(title)s' already exists." +msgstr "" + +#: cps/shelf.py:462 +#, python-format +msgid "Shelf: '%(name)s'" +msgstr "Hylly: '%(name)s'" + +#: cps/shelf.py:466 +msgid "Error opening shelf. Shelf does not exist or is not accessible" +msgstr "Virhe hyllyn avauksessa. Hyllyä ei ole tai se ei ole saatavilla" + +#: cps/tasks_status.py:48 cps/templates/layout.html:74 +#: cps/templates/tasks.html:7 +msgid "Tasks" +msgstr "Tehtävät" + +#: cps/tasks_status.py:64 +msgid "Waiting" +msgstr "Odottaa" + +#: cps/tasks_status.py:66 +msgid "Failed" +msgstr "Epäonnistui" + +#: cps/tasks_status.py:68 +msgid "Started" +msgstr "Aloitettu" + +#: cps/tasks_status.py:70 +msgid "Finished" +msgstr "Valmistui" + +#: cps/tasks_status.py:72 +msgid "Ended" +msgstr "" + +#: cps/tasks_status.py:74 +msgid "Cancelled" +msgstr "" + +#: cps/tasks_status.py:76 +msgid "Unknown Status" +msgstr "Tuntematon tila" + +#: cps/updater.py:431 cps/updater.py:442 cps/updater.py:543 cps/updater.py:558 +msgid "Unexpected data while reading update information" +msgstr "Odottamatonta tietoa luettaessa päivitystietoa" + +#: cps/updater.py:438 cps/updater.py:550 +msgid "No update available. You already have the latest version installed" +msgstr "Ei päivitystä saatavilla. Sinulla on jo uusin versio" + +#: cps/updater.py:456 +msgid "A new update is available. Click on the button below to update to the latest version." +msgstr "Uusi päivitys saatavilla. Paina alla olevaa nappia päivittääksesi uusimpaan versioon." + +#: cps/updater.py:474 +msgid "Could not fetch update information" +msgstr "Päivitystiedon hakeminen epäonnistui" + +#: cps/updater.py:484 +msgid "Click on the button below to update to the latest stable version." +msgstr "Paina alla olevaa nappia päivittääksesi uusimpaan vakaaseen versioon." + +#: cps/updater.py:493 cps/updater.py:507 cps/updater.py:518 +#, python-format +msgid "A new update is available. Click on the button below to update to version: %(version)s" +msgstr "Uusi päivitys saatavilla. Paina alla olevaa nappia päivittääksesi versioon: %(version)s" + +#: cps/updater.py:536 +msgid "No release information available" +msgstr "Ei päivitystietoa saatavilla" + +#: cps/templates/index.html:6 cps/web.py:432 +msgid "Discover (Random Books)" +msgstr "Löydä (satunnaiset kirjat)" + +#: cps/web.py:468 +msgid "Hot Books (Most Downloaded)" +msgstr "Kuumat kirjat (ladatuimmat)" + +#: cps/web.py:499 +#, python-format +msgid "Downloaded books by %(user)s" +msgstr "" + +#: cps/web.py:532 +#, python-format +msgid "Author: %(name)s" +msgstr "Kirjailija: %(name)s" + +#: cps/web.py:568 +#, python-format +msgid "Publisher: %(name)s" +msgstr "Julkaisija: %(name)s" + +#: cps/web.py:596 +#, python-format +msgid "Series: %(serie)s" +msgstr "Sarja: %(serie)s" + +#: cps/web.py:609 +msgid "Rating: None" +msgstr "" + +#: cps/web.py:618 +#, python-format +msgid "Rating: %(rating)s stars" +msgstr "Arvostelu: %(rating)s tähteä" + +#: cps/web.py:636 +#, python-format +msgid "File format: %(format)s" +msgstr "Tiedostomuoto: %(format)s" + +#: cps/web.py:673 +#, python-format +msgid "Category: %(name)s" +msgstr "Kategoria: %(name)s" + +#: cps/web.py:700 +#, python-format +msgid "Language: %(name)s" +msgstr "Kieli: %(name)s" + +#: cps/templates/admin.html:16 cps/web.py:938 +msgid "Downloads" +msgstr "DLS" + +#: cps/web.py:1030 +msgid "Ratings list" +msgstr "Arvostelulistaus" + +#: cps/web.py:1057 +msgid "File formats list" +msgstr "Tiedostomuotolistaus" + +#: cps/web.py:1199 #, python-format msgid "Book successfully queued for sending to %(kindlemail)s" msgstr "Kirja lisätty onnistuneeksi lähetettäväksi osoitteeseen %(kindlemail)s" -#: cps/web.py:1531 +#: cps/web.py:1203 #, python-format msgid "Oops! There was an error sending this book: %(res)s" msgstr "Kirjan: %(res)s lähettämisessa tapahtui virhe" -#: cps/web.py:1533 +#: cps/web.py:1205 msgid "Please update your profile with a valid Send to Kindle E-mail Address." msgstr "Ole hyvä ja aseta Kindle sähköpostiosoite ensin..." -#: cps/web.py:1550 +#: cps/web.py:1222 msgid "E-Mail server is not configured, please contact your administrator!" msgstr "" -#: cps/templates/layout.html:85 cps/templates/register.html:17 cps/web.py:1551 -#: cps/web.py:1558 cps/web.py:1564 cps/web.py:1583 cps/web.py:1587 -#: cps/web.py:1593 +#: cps/templates/layout.html:86 cps/templates/register.html:17 cps/web.py:1223 +#: cps/web.py:1230 cps/web.py:1236 cps/web.py:1255 cps/web.py:1260 +#: cps/web.py:1266 msgid "Register" msgstr "Rekisteröi" -#: cps/web.py:1585 +#: cps/web.py:1257 msgid "Your e-mail is not allowed to register" msgstr "Sähköpostiosoitteellasi ei ole sallittua rekisteröityä" -#: cps/web.py:1588 +#: cps/web.py:1261 msgid "Confirmation e-mail was send to your e-mail account." msgstr "Vahvistusviesti on lähetetty sähköpostiosoitteeseesi." -#: cps/web.py:1602 +#: cps/web.py:1275 msgid "Cannot activate LDAP authentication" msgstr "LDAP autnetikoinnin aktivointi ei onnistu" -#: cps/web.py:1621 +#: cps/web.py:1294 #, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgstr "" -#: cps/web.py:1627 +#: cps/web.py:1300 #, python-format msgid "Could not login: %(message)s" msgstr "" -#: cps/web.py:1631 cps/web.py:1656 +#: cps/web.py:1304 cps/web.py:1329 msgid "Wrong Username or Password" msgstr "Väärä käyttäjätunnus tai salasana" -#: cps/web.py:1638 +#: cps/web.py:1311 msgid "New Password was send to your email address" msgstr "" -#: cps/web.py:1644 +#: cps/web.py:1317 msgid "Please enter valid username to reset password" msgstr "" -#: cps/web.py:1651 +#: cps/web.py:1324 #, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "olet kirjautunut tunnuksella: '%(nickname)s'" -#: cps/web.py:1717 cps/web.py:1766 +#: cps/web.py:1388 cps/web.py:1437 #, python-format msgid "%(name)s's profile" msgstr "%(name)sn profiili" -#: cps/web.py:1733 +#: cps/web.py:1404 msgid "Profile updated" msgstr "Profiili päivitetty" @@ -1343,40 +1381,75 @@ msgstr "Profiili päivitetty" msgid "Found no valid gmail.json file with OAuth information" msgstr "" -#: cps/tasks/convert.py:154 +#: cps/tasks/convert.py:153 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "" -#: cps/tasks/convert.py:187 +#: cps/tasks/convert.py:186 #, python-format msgid "%(format)s format not found on disk" msgstr "" -#: cps/tasks/convert.py:191 +#: cps/tasks/convert.py:190 msgid "Ebook converter failed with unknown error" msgstr "" -#: cps/tasks/convert.py:201 +#: cps/tasks/convert.py:200 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "" -#: cps/tasks/convert.py:223 +#: cps/tasks/convert.py:222 #, python-format msgid "Converted file not found or more than one file in folder %(folder)s" msgstr "" -#: cps/tasks/convert.py:246 +#: cps/tasks/convert.py:245 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "E-kirjan muunnos epäonnistui: %(error)s" -#: cps/tasks/convert.py:269 +#: cps/tasks/convert.py:268 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "" +#: cps/tasks/convert.py:273 +msgid "Convert" +msgstr "" + +#: cps/tasks/database.py:28 +msgid "Reconnecting Calibre database" +msgstr "" + +#: cps/tasks/mail.py:265 +msgid "E-mail" +msgstr "" + +#: cps/tasks/thumbnail.py:95 +#, python-format +msgid "Generated %(count)s cover thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:222 cps/tasks/thumbnail.py:435 +#: cps/tasks/thumbnail.py:503 +msgid "Cover Thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:281 +msgid "Generated {0} series thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:446 +msgid "Clearing cover thumbnail cache" +msgstr "" + +#: cps/tasks/upload.py:38 cps/templates/admin.html:20 +#: cps/templates/layout.html:67 cps/templates/user_table.html:145 +msgid "Upload" +msgstr "Lähetä" + #: cps/templates/admin.html:9 msgid "Users" msgstr "Käyttäjälista" @@ -1396,7 +1469,7 @@ msgstr "Sähköposti" msgid "Send to Kindle E-mail Address" msgstr "Kindle" -#: cps/templates/admin.html:17 cps/templates/layout.html:76 +#: cps/templates/admin.html:17 cps/templates/layout.html:77 #: cps/templates/user_table.html:143 msgid "Admin" msgstr "Ylläpito" @@ -1406,13 +1479,8 @@ msgstr "Ylläpito" msgid "Password" msgstr "Salasana" -#: cps/templates/admin.html:20 cps/templates/layout.html:66 -#: cps/templates/user_table.html:145 -msgid "Upload" -msgstr "Lähetä" - -#: cps/templates/admin.html:22 cps/templates/detail.html:18 -#: cps/templates/detail.html:27 cps/templates/shelf.html:7 +#: cps/templates/admin.html:22 cps/templates/detail.html:19 +#: cps/templates/detail.html:28 cps/templates/shelf.html:8 #: cps/templates/user_table.html:146 msgid "Download" msgstr "Lataa" @@ -1426,7 +1494,7 @@ msgstr "Näytä ekirjat" msgid "Edit" msgstr "Muokkaa" -#: cps/templates/admin.html:25 cps/templates/book_edit.html:16 +#: cps/templates/admin.html:25 cps/templates/book_edit.html:17 #: cps/templates/book_table.html:100 cps/templates/modal_dialogs.html:63 #: cps/templates/modal_dialogs.html:116 cps/templates/user_edit.html:67 #: cps/templates/user_table.html:149 @@ -1539,78 +1607,107 @@ msgstr "" msgid "Edit UI Configuration" msgstr "" -#: cps/templates/admin.html:166 +#: cps/templates/admin.html:167 +msgid "Scheduled Tasks" +msgstr "" + +#: cps/templates/admin.html:170 cps/templates/schedule_edit.html:12 +msgid "Time at which tasks start to run" +msgstr "" + +#: cps/templates/admin.html:174 cps/templates/schedule_edit.html:20 +msgid "Maximum tasks duration" +msgstr "" + +#: cps/templates/admin.html:178 +msgid "Generate book cover thumbnails" +msgstr "" + +#: cps/templates/admin.html:182 +msgid "Generate series cover thumbnails" +msgstr "" + +#: cps/templates/admin.html:186 cps/templates/schedule_edit.html:37 +msgid "Reconnect to Calibre Library" +msgstr "" + +#: cps/templates/admin.html:193 +msgid "Refresh Thumbnail Cover Cache" +msgstr "" + +#: cps/templates/admin.html:199 msgid "Administration" msgstr "Ylläpito" -#: cps/templates/admin.html:167 +#: cps/templates/admin.html:200 msgid "Download Debug Package" msgstr "" -#: cps/templates/admin.html:168 +#: cps/templates/admin.html:201 msgid "View Logs" msgstr "Katsele lokitiedostoja" -#: cps/templates/admin.html:171 +#: cps/templates/admin.html:204 msgid "Reconnect Calibre Database" msgstr "Uudelleenyhdistä Calibre DB" -#: cps/templates/admin.html:172 +#: cps/templates/admin.html:207 msgid "Restart" msgstr "Uudellenkäynnistä Calibre-Web" -#: cps/templates/admin.html:173 +#: cps/templates/admin.html:208 msgid "Shutdown" msgstr "Sammuta Calibre-Web" -#: cps/templates/admin.html:178 -msgid "Update" -msgstr "Päivitä" +#: cps/templates/admin.html:213 +msgid "Version Information" +msgstr "" -#: cps/templates/admin.html:182 +#: cps/templates/admin.html:217 msgid "Version" msgstr "Versio" -#: cps/templates/admin.html:183 +#: cps/templates/admin.html:218 msgid "Details" msgstr "Yksityiskohdat" -#: cps/templates/admin.html:189 +#: cps/templates/admin.html:224 msgid "Current version" msgstr "Nykyinen versio" -#: cps/templates/admin.html:196 +#: cps/templates/admin.html:231 msgid "Check for Update" msgstr "Tarkista päivitykset" -#: cps/templates/admin.html:197 +#: cps/templates/admin.html:232 msgid "Perform Update" msgstr "Päivitä" -#: cps/templates/admin.html:210 +#: cps/templates/admin.html:245 msgid "Are you sure you want to restart?" msgstr "Haluatko varmasti uudelleenkäynnistää Calibre-Webin?" -#: cps/templates/admin.html:215 cps/templates/admin.html:229 -#: cps/templates/admin.html:249 cps/templates/config_db.html:70 +#: cps/templates/admin.html:250 cps/templates/admin.html:264 +#: cps/templates/admin.html:284 cps/templates/config_db.html:70 msgid "OK" msgstr "Ok" -#: cps/templates/admin.html:216 cps/templates/admin.html:230 -#: cps/templates/book_edit.html:213 cps/templates/book_table.html:127 +#: cps/templates/admin.html:251 cps/templates/admin.html:265 +#: cps/templates/book_edit.html:214 cps/templates/book_table.html:127 #: cps/templates/config_db.html:54 cps/templates/config_edit.html:359 #: 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/shelf_edit.html:27 +#: cps/templates/modal_dialogs.html:135 cps/templates/schedule_edit.html:41 +#: cps/templates/shelf_edit.html:27 cps/templates/tasks.html:46 #: cps/templates/user_edit.html:144 msgid "Cancel" msgstr "" -#: cps/templates/admin.html:228 +#: cps/templates/admin.html:263 msgid "Are you sure you want to shutdown?" msgstr "Haluatko varmasti pysäyttää Calibre-Webin?" -#: cps/templates/admin.html:240 +#: cps/templates/admin.html:275 msgid "Updating, please do not reload this page" msgstr "Päivitetään, älä päivitä sivua" @@ -1622,39 +1719,39 @@ msgstr "" msgid "In Library" msgstr "Kirjastossa" -#: cps/templates/author.html:26 cps/templates/index.html:73 -#: cps/templates/search.html:30 cps/templates/shelf.html:19 +#: cps/templates/author.html:26 cps/templates/index.html:74 +#: cps/templates/search.html:31 cps/templates/shelf.html:20 msgid "Sort according to book date, newest first" msgstr "" -#: cps/templates/author.html:27 cps/templates/index.html:74 -#: cps/templates/search.html:31 cps/templates/shelf.html:20 +#: cps/templates/author.html:27 cps/templates/index.html:75 +#: cps/templates/search.html:32 cps/templates/shelf.html:21 msgid "Sort according to book date, oldest first" msgstr "" -#: cps/templates/author.html:28 cps/templates/index.html:75 -#: cps/templates/search.html:32 cps/templates/shelf.html:21 +#: cps/templates/author.html:28 cps/templates/index.html:76 +#: cps/templates/search.html:33 cps/templates/shelf.html:22 msgid "Sort title in alphabetical order" msgstr "" -#: cps/templates/author.html:29 cps/templates/index.html:76 -#: cps/templates/search.html:33 cps/templates/shelf.html:22 +#: cps/templates/author.html:29 cps/templates/index.html:77 +#: cps/templates/search.html:34 cps/templates/shelf.html:23 msgid "Sort title in reverse alphabetical order" msgstr "" -#: cps/templates/author.html:30 cps/templates/index.html:79 -#: cps/templates/search.html:36 cps/templates/shelf.html:25 +#: cps/templates/author.html:30 cps/templates/index.html:80 +#: cps/templates/search.html:37 cps/templates/shelf.html:26 msgid "Sort according to publishing date, newest first" msgstr "" -#: cps/templates/author.html:31 cps/templates/index.html:80 -#: cps/templates/search.html:37 cps/templates/shelf.html:26 +#: cps/templates/author.html:31 cps/templates/index.html:81 +#: cps/templates/search.html:38 cps/templates/shelf.html:27 msgid "Sort according to publishing date, oldest first" msgstr "" #: cps/templates/author.html:56 cps/templates/author.html:115 -#: cps/templates/index.html:29 cps/templates/index.html:112 -#: cps/templates/search.html:66 cps/templates/shelf.html:54 +#: cps/templates/index.html:30 cps/templates/index.html:113 +#: cps/templates/search.html:67 cps/templates/shelf.html:55 msgid "reduce" msgstr "vähennä" @@ -1662,165 +1759,166 @@ msgstr "vähennä" msgid "More by" msgstr "Enemmän" -#: cps/templates/book_edit.html:10 +#: cps/templates/book_edit.html:11 msgid "Delete Book" msgstr "Poista kirja" -#: cps/templates/book_edit.html:13 +#: cps/templates/book_edit.html:14 msgid "Delete formats:" msgstr "Poista tiedostomuodot:" -#: cps/templates/book_edit.html:24 +#: cps/templates/book_edit.html:25 msgid "Convert book format:" msgstr "Muunna kirjan tiedostomuoto:" -#: cps/templates/book_edit.html:29 +#: cps/templates/book_edit.html:30 msgid "Convert from:" msgstr "Muunna muodosta:" -#: cps/templates/book_edit.html:31 cps/templates/book_edit.html:38 +#: cps/templates/book_edit.html:32 cps/templates/book_edit.html:39 msgid "select an option" msgstr "valitse vaihtoehto" -#: cps/templates/book_edit.html:36 +#: cps/templates/book_edit.html:37 msgid "Convert to:" msgstr "Muunna muotoon:" -#: cps/templates/book_edit.html:45 +#: cps/templates/book_edit.html:46 msgid "Convert book" msgstr "Muunna kirja" -#: cps/templates/book_edit.html:55 cps/templates/search_form.html:8 +#: cps/templates/book_edit.html:56 cps/templates/search_form.html:8 msgid "Book Title" msgstr "Kirjan otsikko" -#: cps/templates/book_edit.html:62 cps/templates/book_edit.html:270 -#: cps/templates/book_edit.html:288 cps/templates/search_form.html:12 +#: cps/templates/book_edit.html:63 cps/templates/book_edit.html:271 +#: cps/templates/book_edit.html:289 cps/templates/search_form.html:12 msgid "Author" msgstr "Kirjailija" -#: cps/templates/book_edit.html:67 cps/templates/book_edit.html:275 -#: cps/templates/book_edit.html:290 cps/templates/search_form.html:153 +#: cps/templates/book_edit.html:68 cps/templates/book_edit.html:276 +#: cps/templates/book_edit.html:291 cps/templates/search_form.html:153 msgid "Description" msgstr "Kuvaus" -#: cps/templates/book_edit.html:72 +#: cps/templates/book_edit.html:73 msgid "Identifiers" msgstr "" -#: cps/templates/book_edit.html:76 cps/templates/book_edit.html:299 +#: cps/templates/book_edit.html:77 cps/templates/book_edit.html:300 msgid "Identifier Type" msgstr "" -#: cps/templates/book_edit.html:77 cps/templates/book_edit.html:300 +#: cps/templates/book_edit.html:78 cps/templates/book_edit.html:301 msgid "Identifier Value" msgstr "" -#: cps/templates/book_edit.html:78 cps/templates/book_edit.html:301 +#: cps/templates/book_edit.html:79 cps/templates/book_edit.html:302 #: cps/templates/user_table.html:24 msgid "Remove" msgstr "" -#: cps/templates/book_edit.html:82 +#: cps/templates/book_edit.html:83 msgid "Add Identifier" msgstr "" -#: cps/templates/book_edit.html:86 cps/templates/search_form.html:51 +#: cps/templates/book_edit.html:87 cps/templates/search_form.html:51 msgid "Tags" msgstr "Tunnisteet" -#: cps/templates/book_edit.html:94 +#: cps/templates/book_edit.html:95 msgid "Series ID" msgstr "" -#: cps/templates/book_edit.html:98 +#: cps/templates/book_edit.html:99 msgid "Rating" msgstr "Arvostelu" -#: cps/templates/book_edit.html:103 +#: cps/templates/book_edit.html:104 msgid "Fetch Cover from URL (JPEG - Image will be downloaded and stored in database)" msgstr "Kannen osoite (jpg, kuva ladataan ja tallennetaan tietokantaan, kenttä jää uudelleen tyhjäksi)" -#: cps/templates/book_edit.html:107 +#: cps/templates/book_edit.html:108 msgid "Upload Cover from Local Disk" msgstr "Lataa kuva paikalliselta levyltä" -#: cps/templates/book_edit.html:112 +#: cps/templates/book_edit.html:113 msgid "Published Date" msgstr "Julkaisupäivä" -#: cps/templates/book_edit.html:121 cps/templates/book_edit.html:272 -#: cps/templates/book_edit.html:289 cps/templates/detail.html:164 +#: cps/templates/book_edit.html:122 cps/templates/book_edit.html:273 +#: cps/templates/book_edit.html:290 cps/templates/detail.html:165 #: cps/templates/search_form.html:16 msgid "Publisher" msgstr "Julkaisija" -#: cps/templates/book_edit.html:125 cps/templates/detail.html:131 +#: cps/templates/book_edit.html:126 cps/templates/detail.html:132 #: cps/templates/user_edit.html:33 msgid "Language" msgstr "Kieli" -#: cps/templates/book_edit.html:135 cps/templates/search_form.html:45 +#: cps/templates/book_edit.html:136 cps/templates/search_form.html:45 #: cps/templates/search_form.html:164 msgid "Yes" msgstr "Kyllä" -#: cps/templates/book_edit.html:136 cps/templates/search_form.html:46 +#: cps/templates/book_edit.html:137 cps/templates/search_form.html:46 #: cps/templates/search_form.html:165 msgid "No" msgstr "Ei" -#: cps/templates/book_edit.html:200 +#: cps/templates/book_edit.html:201 msgid "Upload Format" msgstr "Lataa tiedostomuoto" -#: cps/templates/book_edit.html:208 +#: cps/templates/book_edit.html:209 msgid "View Book on Save" msgstr "katso kirjaa muokkauksen jälkeen" -#: cps/templates/book_edit.html:211 cps/templates/book_edit.html:229 +#: cps/templates/book_edit.html:212 cps/templates/book_edit.html:230 msgid "Fetch Metadata" msgstr "Hae metadata" -#: cps/templates/book_edit.html:212 cps/templates/config_db.html:53 +#: cps/templates/book_edit.html:213 cps/templates/config_db.html:53 #: cps/templates/config_edit.html:358 cps/templates/config_view_edit.html:174 -#: cps/templates/email_edit.html:65 cps/templates/shelf_edit.html:25 -#: cps/templates/shelf_order.html:41 cps/templates/user_edit.html:142 +#: cps/templates/email_edit.html:65 cps/templates/schedule_edit.html:40 +#: cps/templates/shelf_edit.html:25 cps/templates/shelf_order.html:41 +#: cps/templates/user_edit.html:142 msgid "Save" msgstr "" -#: cps/templates/book_edit.html:232 +#: cps/templates/book_edit.html:233 msgid "Keyword" msgstr "Avainsana" -#: cps/templates/book_edit.html:233 +#: cps/templates/book_edit.html:234 #, fuzzy msgid "Search keyword" msgstr " Hae avainsanaa " -#: cps/templates/book_edit.html:239 +#: cps/templates/book_edit.html:240 msgid "Click the cover to load metadata to the form" msgstr "Klikkaa kantta ladataksesi metadata lomakkeelle" -#: cps/templates/book_edit.html:246 cps/templates/book_edit.html:285 +#: cps/templates/book_edit.html:247 cps/templates/book_edit.html:286 msgid "Loading..." msgstr "Ladataan..." -#: cps/templates/book_edit.html:250 cps/templates/layout.html:63 -#: cps/templates/layout.html:186 cps/templates/modal_dialogs.html:34 +#: cps/templates/book_edit.html:251 cps/templates/layout.html:64 +#: cps/templates/layout.html:187 cps/templates/modal_dialogs.html:34 #: cps/templates/user_edit.html:163 msgid "Close" msgstr "Sulje" -#: cps/templates/book_edit.html:277 cps/templates/book_edit.html:291 +#: cps/templates/book_edit.html:278 cps/templates/book_edit.html:292 msgid "Source" msgstr "Lähde" -#: cps/templates/book_edit.html:286 +#: cps/templates/book_edit.html:287 msgid "Search error!" msgstr "Hakuvirhe!" -#: cps/templates/book_edit.html:287 +#: cps/templates/book_edit.html:288 msgid "No Result(s) found! Please try another keyword." msgstr "Ei osumia! Kokeile jotain tosita hakusanaa." @@ -1929,6 +2027,7 @@ msgid "Enter " msgstr "Rekisteröi" #: cps/templates/book_table.html:113 cps/templates/modal_dialogs.html:46 +#: cps/templates/tasks.html:36 msgid "Are you really sure?" msgstr "Oletko aivan varma?" @@ -2342,62 +2441,62 @@ msgstr "" msgid "Add Allowed/Denied custom column values" msgstr "" -#: cps/templates/detail.html:60 cps/templates/detail.html:69 +#: cps/templates/detail.html:61 cps/templates/detail.html:70 msgid "Read in Browser" msgstr "Lue selaimessa" -#: cps/templates/detail.html:77 cps/templates/detail.html:94 +#: cps/templates/detail.html:78 cps/templates/detail.html:95 msgid "Listen in Browser" msgstr "Kuuntele selaimessa" -#: cps/templates/detail.html:124 +#: cps/templates/detail.html:125 #, python-format msgid "Book %(index)s of %(range)s" msgstr "" -#: cps/templates/detail.html:173 +#: cps/templates/detail.html:174 msgid "Published" msgstr "" -#: cps/templates/detail.html:221 +#: cps/templates/detail.html:222 msgid "Mark As Unread" msgstr "Merkitse lukemattomaksi" -#: cps/templates/detail.html:221 +#: cps/templates/detail.html:222 msgid "Mark As Read" msgstr "Merkitse luetuksi" -#: cps/templates/detail.html:222 +#: cps/templates/detail.html:223 msgid "Read" msgstr "Luettu" -#: cps/templates/detail.html:231 +#: cps/templates/detail.html:232 msgid "Restore from archive" msgstr "" -#: cps/templates/detail.html:231 +#: cps/templates/detail.html:232 msgid "Add to archive" msgstr "" -#: cps/templates/detail.html:232 +#: cps/templates/detail.html:233 msgid "Archived" msgstr "" -#: cps/templates/detail.html:243 +#: cps/templates/detail.html:244 msgid "Description:" msgstr "Kuvaus:" -#: cps/templates/detail.html:256 cps/templates/search.html:15 +#: cps/templates/detail.html:257 cps/templates/search.html:16 msgid "Add to shelf" msgstr "Lisää hyllyyn" -#: cps/templates/detail.html:267 cps/templates/detail.html:284 -#: cps/templates/feed.xml:79 cps/templates/layout.html:137 -#: cps/templates/search.html:21 +#: cps/templates/detail.html:268 cps/templates/detail.html:285 +#: cps/templates/feed.xml:79 cps/templates/layout.html:138 +#: cps/templates/search.html:22 msgid "(Public)" msgstr "" -#: cps/templates/detail.html:298 +#: cps/templates/detail.html:299 msgid "Edit Metadata" msgstr "Muokkaa metadataa" @@ -2441,7 +2540,7 @@ msgstr "" msgid "Save and Send Test E-mail" msgstr "Tallenna asetukset ja testaa sähköpostia" -#: cps/templates/email_edit.html:70 cps/templates/layout.html:29 +#: cps/templates/email_edit.html:70 cps/templates/layout.html:30 #: cps/templates/shelf_order.html:42 cps/templates/user_table.html:174 msgid "Back" msgstr "Palaa" @@ -2467,7 +2566,7 @@ msgstr "Syötä domainnimi" msgid "Denied Domains (Blacklist)" msgstr "" -#: cps/templates/feed.xml:21 cps/templates/layout.html:170 +#: cps/templates/feed.xml:21 cps/templates/layout.html:171 msgid "Next" msgstr "Seuraava" @@ -2479,6 +2578,10 @@ msgstr "" msgid "Kobo Token:" msgstr "" +#: cps/templates/grid.html:21 +msgid "List" +msgstr "" + #: cps/templates/http_error.html:31 msgid "Calibre-Web Instance is unconfigured, please contact your administrator" msgstr "" @@ -2495,29 +2598,29 @@ msgstr "Palaa kotiin" msgid "Logout User" msgstr "" -#: cps/templates/index.html:70 +#: cps/templates/index.html:71 msgid "Sort ascending according to download count" msgstr "" -#: cps/templates/index.html:71 +#: cps/templates/index.html:72 msgid "Sort descending according to download count" msgstr "" -#: cps/templates/index.html:77 cps/templates/search.html:34 -#: cps/templates/shelf.html:23 -msgid "Sort authors in alphabetical order" -msgstr "" - #: cps/templates/index.html:78 cps/templates/search.html:35 #: cps/templates/shelf.html:24 +msgid "Sort authors in alphabetical order" +msgstr "" + +#: cps/templates/index.html:79 cps/templates/search.html:36 +#: cps/templates/shelf.html:25 msgid "Sort authors in reverse alphabetical order" msgstr "" -#: cps/templates/index.html:82 +#: cps/templates/index.html:83 msgid "Sort ascending according to series index" msgstr "" -#: cps/templates/index.html:83 +#: cps/templates/index.html:84 msgid "Sort descending according to series index" msgstr "" @@ -2581,7 +2684,7 @@ msgstr "" msgid "Books ordered by file formats" msgstr "" -#: cps/templates/index.xml:119 cps/templates/layout.html:135 +#: cps/templates/index.xml:119 cps/templates/layout.html:136 #: cps/templates/search_form.html:87 msgid "Shelves" msgstr "" @@ -2590,63 +2693,67 @@ msgstr "" msgid "Books organized in shelves" msgstr "" -#: cps/templates/layout.html:29 +#: cps/templates/layout.html:30 msgid "Home" msgstr "Koti" -#: cps/templates/layout.html:35 +#: cps/templates/layout.html:36 msgid "Toggle Navigation" msgstr "Vaihda navigointi" -#: cps/templates/layout.html:46 +#: cps/templates/layout.html:47 msgid "Search Library" msgstr "" -#: cps/templates/layout.html:63 cps/templates/layout.html:117 +#: cps/templates/layout.html:64 cps/templates/layout.html:118 msgid "Uploading..." msgstr "Ladataan..." -#: cps/templates/layout.html:63 +#: cps/templates/layout.html:64 msgid "Error" msgstr "Virhe" -#: cps/templates/layout.html:63 +#: cps/templates/layout.html:64 msgid "Upload done, processing, please wait..." msgstr "Lataus tehty, prosessoidaan, ole hyvä ja odota..." -#: cps/templates/layout.html:76 cps/templates/read.html:72 +#: cps/templates/layout.html:77 cps/templates/read.html:72 #: cps/templates/readcbr.html:84 cps/templates/readcbr.html:108 msgid "Settings" msgstr "Asetukset" -#: cps/templates/layout.html:78 +#: cps/templates/layout.html:79 msgid "Account" msgstr "Tili" -#: cps/templates/layout.html:80 +#: cps/templates/layout.html:81 msgid "Logout" msgstr "Kirjaudu ulos" -#: cps/templates/layout.html:118 +#: cps/templates/layout.html:119 msgid "Please do not refresh the page" msgstr "" -#: cps/templates/layout.html:128 +#: cps/templates/layout.html:129 msgid "Browse" msgstr "Selaa" -#: cps/templates/layout.html:141 cps/templates/stats.html:3 +#: cps/templates/layout.html:142 cps/templates/stats.html:3 msgid "About" msgstr "Tietoja" -#: cps/templates/layout.html:155 +#: cps/templates/layout.html:156 msgid "Previous" msgstr "Edellinen" -#: cps/templates/layout.html:182 +#: cps/templates/layout.html:183 msgid "Book Details" msgstr "Kirjan tiedot" +#: cps/templates/list.html:22 +msgid "Grid" +msgstr "" + #: cps/templates/login.html:18 msgid "Remember Me" msgstr "Muista minut" @@ -2751,7 +2858,7 @@ msgstr "" msgid "Select" msgstr "" -#: cps/templates/modal_dialogs.html:134 +#: cps/templates/modal_dialogs.html:134 cps/templates/tasks.html:45 #, fuzzy msgid "Ok" msgstr "Kirja" @@ -2933,15 +3040,23 @@ msgstr "Kun teet näin, sinut kirjataan automaattisesti sisään tälle laitteel msgid "This verification link will expire in 10 minutes." msgstr "Linkki vanhenee 10 minuutissa." -#: cps/templates/search.html:5 -msgid "No Results Found" +#: cps/templates/schedule_edit.html:29 +msgid "Generate Book Cover Thumbnails" +msgstr "" + +#: cps/templates/schedule_edit.html:33 +msgid "Generate Series Cover Thumbnails" msgstr "" #: cps/templates/search.html:6 +msgid "No Results Found" +msgstr "" + +#: cps/templates/search.html:7 msgid "Search Term:" msgstr "" -#: cps/templates/search.html:8 +#: cps/templates/search.html:9 msgid "Results for:" msgstr "Tulosket haulle:" @@ -2994,23 +3109,23 @@ msgstr "" msgid "To:" msgstr "" -#: cps/templates/shelf.html:12 +#: cps/templates/shelf.html:13 msgid "Delete this Shelf" msgstr "Poista tämä hylly" -#: cps/templates/shelf.html:13 +#: cps/templates/shelf.html:14 msgid "Edit Shelf Properties" msgstr "" -#: cps/templates/shelf.html:16 +#: cps/templates/shelf.html:17 msgid "Arrange books manually" msgstr "" -#: cps/templates/shelf.html:17 +#: cps/templates/shelf.html:18 msgid "Disable Change order" msgstr "" -#: cps/templates/shelf.html:17 +#: cps/templates/shelf.html:18 msgid "Enable Change order" msgstr "" @@ -3055,8 +3170,8 @@ msgid "System Statistics" msgstr "" #: cps/templates/stats.html:33 -msgid "Program Library" -msgstr "Ohjelmiston luokka" +msgid "Program" +msgstr "" #: cps/templates/stats.html:34 msgid "Installed Version" @@ -3086,6 +3201,18 @@ msgstr "Ajoaika" msgid "Start Time" msgstr "Käynnistysaika" +#: cps/templates/tasks.html:20 +msgid "Actions" +msgstr "" + +#: cps/templates/tasks.html:40 +msgid "This task will be cancelled. Any progress made by this task will be saved." +msgstr "" + +#: cps/templates/tasks.html:41 +msgid "If this is a scheduled task, it will be re-ran during the next scheduled time." +msgstr "" + #: cps/templates/user_edit.html:20 msgid "Reset user Password" msgstr "Nollaa käyttäjän salasana" diff --git a/cps/translations/fr/LC_MESSAGES/messages.mo b/cps/translations/fr/LC_MESSAGES/messages.mo index 898520fa1254b73f5844e45b3012a5746d417c9a..50465a39691788c6aea58b4c2824313c8bb0779a 100644 GIT binary patch delta 11200 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 MWOCU{C%1b27e@&#hyVZp delta 11283 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 S3Wp9_l5je{!tZps$NvDg;6gtD diff --git a/cps/translations/fr/LC_MESSAGES/messages.po b/cps/translations/fr/LC_MESSAGES/messages.po index c5eb0fab..d9def9b1 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: 2022-04-18 20:01+0200\n" +"POT-Creation-Date: 2022-05-01 13:22+0200\n" "PO-Revision-Date: 2020-06-07 06:47+0200\n" "Last-Translator: \n" "Language: fr\n" @@ -31,596 +31,621 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.9.1\n" +"Generated-By: Babel 2.8.0\n" -#: cps/about.py:86 +#: cps/about.py:84 msgid "Statistics" msgstr "Statistiques" -#: cps/admin.py:141 +#: cps/admin.py:146 msgid "Server restarted, please reload page" msgstr "Serveur redémarré, merci de rafraîchir la page" -#: cps/admin.py:143 +#: cps/admin.py:148 msgid "Performing shutdown of server, please close window" msgstr "Arrêt du serveur en cours, merci de fermer la fenêtre" -#: cps/admin.py:151 +#: cps/admin.py:156 msgid "Reconnect successful" msgstr "Reconnecté avec succès" -#: cps/admin.py:154 +#: cps/admin.py:159 msgid "Unknown command" msgstr "Commande inconnue" -#: cps/admin.py:176 cps/editbooks.py:713 cps/editbooks.py:892 -#: cps/editbooks.py:894 cps/editbooks.py:930 cps/editbooks.py:947 -#: cps/updater.py:608 cps/uploader.py:93 cps/uploader.py:103 +#: cps/admin.py:192 cps/editbooks.py:571 cps/editbooks.py:573 +#: cps/editbooks.py:609 cps/editbooks.py:626 cps/editbooks.py:1233 +#: cps/updater.py:613 cps/uploader.py:87 cps/uploader.py:97 msgid "Unknown" msgstr "Inconnu" -#: cps/admin.py:197 +#: cps/admin.py:217 msgid "Admin page" msgstr "Page admin" -#: cps/admin.py:217 +#: cps/admin.py:237 msgid "Basic Configuration" msgstr "Configuration principale" -#: cps/admin.py:255 +#: cps/admin.py:275 msgid "UI Configuration" msgstr "Configuration de l’interface utilisateur" -#: cps/admin.py:289 cps/templates/admin.html:51 +#: cps/admin.py:309 cps/templates/admin.html:51 #, fuzzy msgid "Edit Users" msgstr "Éditer les utilisateurs" -#: cps/admin.py:333 cps/opds.py:529 cps/templates/grid.html:13 +#: cps/admin.py:353 cps/opds.py:532 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "Tout" -#: cps/admin.py:360 cps/admin.py:1648 +#: cps/admin.py:380 cps/admin.py:1365 msgid "User not found" msgstr "L'utilisateur n'a pas été trouvé" -#: cps/admin.py:374 +#: cps/admin.py:394 msgid "{} users deleted successfully" msgstr "{} utilisateurs supprimés avec succès" -#: cps/admin.py:397 cps/templates/config_view_edit.html:133 +#: cps/admin.py:417 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:418 cps/admin.py:424 +#: cps/admin.py:438 cps/admin.py:444 msgid "Malformed request" msgstr "Demande malformée" -#: cps/admin.py:436 cps/admin.py:1526 +#: cps/admin.py:456 cps/admin.py:1962 msgid "Guest Name can't be changed" msgstr "Le nom de l’invité ne peut pas être modifié" -#: cps/admin.py:448 +#: cps/admin.py:468 msgid "Guest can't have this role" msgstr "L’invité ne peut pas avoir ce rôle" -#: cps/admin.py:460 cps/admin.py:1484 +#: cps/admin.py:480 cps/admin.py:1920 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:464 cps/admin.py:478 +#: cps/admin.py:484 cps/admin.py:498 msgid "Value has to be true or false" msgstr "La valeur doit être vraie ou fausse" -#: cps/admin.py:466 +#: cps/admin.py:486 msgid "Invalid role" msgstr "Rôle invalide" -#: cps/admin.py:470 +#: cps/admin.py:490 msgid "Guest can't have this view" msgstr "L’invité ne peut pas avoir cette vue" -#: cps/admin.py:480 +#: cps/admin.py:500 msgid "Invalid view" msgstr "Vue invalide" -#: cps/admin.py:483 +#: cps/admin.py:503 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:487 +#: cps/admin.py:507 msgid "No Valid Locale Given" msgstr "Aucun paramètre régional valide n’est donné" -#: cps/admin.py:498 +#: cps/admin.py:518 msgid "No Valid Book Language Given" msgstr "Aucune langue de livre valide donnée" -#: cps/admin.py:500 cps/editbooks.py:1267 +#: cps/admin.py:520 cps/editbooks.py:438 msgid "Parameter not found" msgstr "Paramètre non trouvé" -#: cps/admin.py:553 +#: cps/admin.py:557 msgid "Invalid Read Column" msgstr "Colonne de lecture non valide" -#: cps/admin.py:559 +#: cps/admin.py:563 msgid "Invalid Restricted Column" msgstr "Colonne restreinte non valide" -#: cps/admin.py:579 cps/admin.py:1355 +#: cps/admin.py:583 cps/admin.py:1791 msgid "Calibre-Web configuration updated" msgstr "Configuration de Calibre-Web mise à jour" -#: cps/admin.py:591 +#: cps/admin.py:595 msgid "Do you really want to delete the Kobo Token?" msgstr "Voulez-vous vraiment supprimer le jeton Kobo ?" -#: cps/admin.py:593 +#: cps/admin.py:597 msgid "Do you really want to delete this domain?" msgstr "Voulez-vous vraiment supprimer ce domaine ?" -#: cps/admin.py:595 +#: cps/admin.py:599 msgid "Do you really want to delete this user?" msgstr "Voulez-vous vraiment supprimer cet utilisateur ?" -#: cps/admin.py:597 +#: cps/admin.py:601 msgid "Are you sure you want to delete this shelf?" msgstr "Voulez-vous vraiment supprimer l’étagère ?" -#: cps/admin.py:599 +#: cps/admin.py:603 #, 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:601 +#: cps/admin.py:605 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:603 +#: cps/admin.py:607 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:605 +#: cps/admin.py:609 #, 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:607 +#: cps/admin.py:611 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:610 +#: cps/admin.py:614 #, 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:612 +#: cps/admin.py:616 #, fuzzy msgid "Are you sure you want to change Calibre library location?" msgstr "Voulez-vous vraiment arrêter Calibre-Web ?" -#: cps/admin.py:614 +#: cps/admin.py:618 +msgid "Calibre-Web will search for updated Covers and update Cover Thumbnails, this may take a while?" +msgstr "" + +#: cps/admin.py:620 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:764 -msgid "Tag not found" -msgstr "Étiquette introuvable" - -#: cps/admin.py:776 -msgid "Invalid Action" -msgstr "Action invalide" - -#: cps/admin.py:893 cps/admin.py:899 cps/admin.py:909 cps/admin.py:919 +#: cps/admin.py:862 cps/admin.py:868 cps/admin.py:878 cps/admin.py:888 #: 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:895 cps/admin.py:901 cps/admin.py:911 cps/admin.py:921 +#: cps/admin.py:864 cps/admin.py:870 cps/admin.py:880 cps/admin.py:890 #: 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:936 +#: cps/admin.py:905 msgid "{} sync entries deleted" msgstr "{} entrées de synchronisation supprimées" -#: cps/admin.py:1059 +#: cps/admin.py:953 +msgid "Tag not found" +msgstr "Étiquette introuvable" + +#: cps/admin.py:965 +msgid "Invalid Action" +msgstr "Action invalide" + +#: cps/admin.py:1080 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:1104 +#: cps/admin.py:1125 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:1110 +#: cps/admin.py:1131 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:1140 +#: cps/admin.py:1161 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:1146 +#: cps/admin.py:1167 #, 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:1149 +#: cps/admin.py:1170 msgid "Please Enter a LDAP Service Account" msgstr "Veuillez entrer un compte de service LDAP" -#: cps/admin.py:1154 +#: cps/admin.py:1175 #, 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:1156 +#: cps/admin.py:1177 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:1160 +#: cps/admin.py:1181 #, 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:1162 +#: cps/admin.py:1183 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:1169 +#: cps/admin.py:1190 #, 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:1171 +#: cps/admin.py:1192 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:1178 +#: cps/admin.py:1199 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:1223 cps/admin.py:1339 cps/admin.py:1437 cps/admin.py:1554 -#: cps/admin.py:1623 cps/editbooks.py:678 cps/editbooks.py:882 -#: cps/editbooks.py:1130 cps/shelf.py:100 cps/shelf.py:160 cps/shelf.py:203 -#: cps/shelf.py:278 cps/shelf.py:343 cps/shelf.py:380 cps/shelf.py:456 -#: cps/web.py:1742 +#: cps/admin.py:1230 cps/admin.py:1852 +msgid "Add new user" +msgstr "Ajouter un nouvel utilisateur" + +#: cps/admin.py:1239 cps/templates/admin.html:100 +msgid "Edit E-mail Server Settings" +msgstr "Modifier les paramètres du serveur de courriels" + +#: cps/admin.py:1258 +msgid "Gmail Account Verification Successful" +msgstr "La vérification du compte Gmail réussie" + +#: cps/admin.py:1277 cps/admin.py:1658 cps/admin.py:1775 cps/admin.py:1873 +#: cps/admin.py:1990 cps/editbooks.py:227 cps/editbooks.py:301 +#: cps/editbooks.py:1196 cps/shelf.py:82 cps/shelf.py:142 cps/shelf.py:185 +#: cps/shelf.py:235 cps/shelf.py:272 cps/shelf.py:343 cps/shelf.py:457 +#: cps/tasks/convert.py:136 cps/web.py:1413 #, python-format msgid "Database error: %(error)s." msgstr "Erreur de la base de données: %(error)s." -#: cps/admin.py:1235 -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:1253 -msgid "DB is not Writeable" -msgstr "La base de données n'est pas accessible en écriture" - -#: cps/admin.py:1266 -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:1270 -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:1378 -#, fuzzy -msgid "Database Settings updated" -msgstr "Les paramètres du serveur de courriels ont été mis à jour" - -#: cps/admin.py:1386 -#, fuzzy -msgid "Database Configuration" -msgstr "Configuration des options" - -#: cps/admin.py:1402 cps/web.py:1557 -msgid "Please fill out all fields!" -msgstr "Veuillez compléter tous les champs !" - -#: cps/admin.py:1410 -msgid "E-mail is not from valid domain" -msgstr "Cette adresse de courriel n’appartient pas à un domaine valide" - -#: cps/admin.py:1416 cps/admin.py:1576 -msgid "Add new user" -msgstr "Ajouter un nouvel utilisateur" - -#: cps/admin.py:1427 -#, python-format -msgid "User '%(user)s' created" -msgstr "Utilisateur '%(user)s' créé" - -#: cps/admin.py:1433 -#, fuzzy -msgid "Found an existing account for this e-mail address or name." -msgstr "Un compte existant a été trouvé pour cette adresse de courriel ou pour ce surnom." - -#: cps/admin.py:1463 -#, python-format -msgid "User '%(nick)s' deleted" -msgstr "Utilisateur '%(nick)s' supprimé" - -#: cps/admin.py:1465 cps/admin.py:1466 -msgid "Can't delete Guest User" -msgstr "Impossible de supprimer l’utilisateur Invité" - -#: cps/admin.py:1469 -msgid "No admin user remaining, can't delete user" -msgstr "Aucun utilisateur admin restant, impossible de supprimer l’utilisateur" - -#: cps/admin.py:1542 cps/admin.py:1667 -#, python-format -msgid "Edit User %(nick)s" -msgstr "Éditer l'utilisateur %(nick)s" - -#: cps/admin.py:1546 -#, python-format -msgid "User '%(nick)s' updated" -msgstr "Utilisateur '%(nick)s' mis à jour" - -#: cps/admin.py:1550 cps/admin.py:1682 cps/web.py:1582 cps/web.py:1642 -msgid "An unknown error occurred. Please try again later." -msgstr "Une erreur inconnue est survenue. Veuillez réessayer plus tard." - -#: cps/admin.py:1585 cps/templates/admin.html:100 -msgid "Edit E-mail Server Settings" -msgstr "Modifier les paramètres du serveur de courriels" - -#: cps/admin.py:1604 -msgid "Gmail Account Verification Successful" -msgstr "La vérification du compte Gmail réussie" - -#: cps/admin.py:1630 +#: cps/admin.py:1284 #, 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:1633 +#: cps/admin.py:1287 #, 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:1635 +#: cps/admin.py:1289 msgid "Please configure your e-mail address first..." msgstr "Veuillez d'abord configurer votre adresse de courriel..." -#: cps/admin.py:1637 +#: cps/admin.py:1291 msgid "E-mail server settings updated" msgstr "Les paramètres du serveur de courriels ont été mis à jour" -#: cps/admin.py:1679 +#: cps/admin.py:1314 cps/templates/admin.html:191 +msgid "Edit Scheduled Tasks Settings" +msgstr "" + +#: cps/admin.py:1326 +msgid "Invalid start time for task specified" +msgstr "" + +#: cps/admin.py:1331 +msgid "Invalid duration for task specified" +msgstr "" + +#: cps/admin.py:1340 +msgid "Scheduled tasks settings updated" +msgstr "" + +#: cps/admin.py:1350 cps/admin.py:1399 cps/admin.py:1986 cps/web.py:1254 +#: cps/web.py:1315 +msgid "An unknown error occurred. Please try again later." +msgstr "Une erreur inconnue est survenue. Veuillez réessayer plus tard." + +#: cps/admin.py:1354 +msgid "Settings DB is not Writeable" +msgstr "" + +#: cps/admin.py:1384 cps/admin.py:1978 +#, python-format +msgid "Edit User %(nick)s" +msgstr "Éditer l'utilisateur %(nick)s" + +#: cps/admin.py:1396 #, python-format msgid "Password for user %(user)s reset" msgstr "Le mot de passe de l’utilisateur %(user)s a été réinitialisé" -#: cps/admin.py:1685 cps/web.py:1522 +#: cps/admin.py:1402 cps/web.py:1194 msgid "Please configure the SMTP mail settings first..." msgstr "Veuillez configurer les paramètres SMTP au préalable..." -#: cps/admin.py:1696 +#: cps/admin.py:1413 msgid "Logfile viewer" msgstr "Visualiseur de fichier journal" -#: cps/admin.py:1762 +#: cps/admin.py:1479 msgid "Requesting update package" msgstr "Demande de mise à jour" -#: cps/admin.py:1763 +#: cps/admin.py:1480 msgid "Downloading update package" msgstr "Téléchargement de la mise à jour" -#: cps/admin.py:1764 +#: cps/admin.py:1481 msgid "Unzipping update package" msgstr "Décompression de la mise à jour" -#: cps/admin.py:1765 +#: cps/admin.py:1482 msgid "Replacing files" msgstr "Remplacement des fichiers" -#: cps/admin.py:1766 +#: cps/admin.py:1483 msgid "Database connections are closed" msgstr "Les connexions à la base de données ont été fermées" -#: cps/admin.py:1767 +#: cps/admin.py:1484 msgid "Stopping server" msgstr "Arrêt du serveur" -#: cps/admin.py:1768 +#: cps/admin.py:1485 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:1769 cps/admin.py:1770 cps/admin.py:1771 cps/admin.py:1772 -#: cps/admin.py:1773 cps/admin.py:1774 +#: cps/admin.py:1486 cps/admin.py:1487 cps/admin.py:1488 cps/admin.py:1489 +#: cps/admin.py:1490 cps/admin.py:1491 msgid "Update failed:" msgstr "La mise à jour a échoué :" -#: cps/admin.py:1769 cps/updater.py:384 cps/updater.py:619 cps/updater.py:621 +#: cps/admin.py:1486 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 msgid "HTTP Error" msgstr "Erreur HTTP" -#: cps/admin.py:1770 cps/updater.py:386 cps/updater.py:623 +#: cps/admin.py:1487 cps/updater.py:391 cps/updater.py:628 msgid "Connection error" msgstr "Erreur de connexion" -#: cps/admin.py:1771 cps/updater.py:388 cps/updater.py:625 +#: cps/admin.py:1488 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:1772 cps/updater.py:390 cps/updater.py:627 +#: cps/admin.py:1489 cps/updater.py:395 cps/updater.py:632 msgid "General error" msgstr "Erreur générale" -#: cps/admin.py:1773 +#: cps/admin.py:1490 #, 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:1774 +#: cps/admin.py:1491 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:1798 +#: cps/admin.py:1515 #, fuzzy msgid "Failed to extract at least One LDAP User" msgstr "Impossible de créer au moins un utilisateur LDAP" -#: cps/admin.py:1843 +#: cps/admin.py:1560 msgid "Failed to Create at Least One LDAP User" msgstr "Impossible de créer au moins un utilisateur LDAP" -#: cps/admin.py:1856 +#: cps/admin.py:1573 #, python-format msgid "Error: %(ldaperror)s" msgstr "Erreur : %(ldaperror)s" -#: cps/admin.py:1860 +#: cps/admin.py:1577 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:1893 +#: cps/admin.py:1610 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:1895 +#: cps/admin.py:1612 msgid "{} User Successfully Imported" msgstr "{} utilisateur importé avec succès" -#: cps/converter.py:30 +#: cps/admin.py:1670 +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:1689 +msgid "DB is not Writeable" +msgstr "La base de données n'est pas accessible en écriture" + +#: cps/admin.py:1702 +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:1706 +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:1814 +#, fuzzy +msgid "Database Settings updated" +msgstr "Les paramètres du serveur de courriels ont été mis à jour" + +#: cps/admin.py:1822 +#, fuzzy +msgid "Database Configuration" +msgstr "Configuration des options" + +#: cps/admin.py:1838 cps/web.py:1229 +msgid "Please fill out all fields!" +msgstr "Veuillez compléter tous les champs !" + +#: cps/admin.py:1846 +msgid "E-mail is not from valid domain" +msgstr "Cette adresse de courriel n’appartient pas à un domaine valide" + +#: cps/admin.py:1863 +#, python-format +msgid "User '%(user)s' created" +msgstr "Utilisateur '%(user)s' créé" + +#: cps/admin.py:1869 +#, fuzzy +msgid "Found an existing account for this e-mail address or name." +msgstr "Un compte existant a été trouvé pour cette adresse de courriel ou pour ce surnom." + +#: cps/admin.py:1899 +#, python-format +msgid "User '%(nick)s' deleted" +msgstr "Utilisateur '%(nick)s' supprimé" + +#: cps/admin.py:1901 cps/admin.py:1902 +msgid "Can't delete Guest User" +msgstr "Impossible de supprimer l’utilisateur Invité" + +#: cps/admin.py:1905 +msgid "No admin user remaining, can't delete user" +msgstr "Aucun utilisateur admin restant, impossible de supprimer l’utilisateur" + +#: cps/admin.py:1982 +#, python-format +msgid "User '%(nick)s' updated" +msgstr "Utilisateur '%(nick)s' mis à jour" + +#: cps/converter.py:31 msgid "not installed" msgstr "non installé" -#: cps/converter.py:31 +#: cps/converter.py:32 msgid "Execution permissions missing" msgstr "Les permissions d'exécutions manquantes" -#: cps/db.py:674 cps/web.py:710 cps/web.py:1222 +#: cps/db.py:681 cps/search.py:134 cps/web.py:720 #, python-format msgid "Custom Column No.%(column)d is not existing in calibre database" msgstr "La colonne personnalisée No.%(column)d n'existe pas dans la base de données calibre" -#: cps/db.py:917 cps/templates/config_edit.html:204 +#: cps/db.py:924 cps/templates/config_edit.html:204 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 -#: cps/web.py:551 cps/web.py:585 cps/web.py:646 cps/web.py:671 cps/web.py:1003 -#: cps/web.py:1032 cps/web.py:1066 cps/web.py:1093 cps/web.py:1132 +#: cps/web.py:549 cps/web.py:583 cps/web.py:656 cps/web.py:681 cps/web.py:962 +#: cps/web.py:992 cps/web.py:1027 cps/web.py:1055 cps/web.py:1094 msgid "None" msgstr "Aucun" -#: cps/editbooks.py:295 cps/editbooks.py:297 -msgid "Book Format Successfully Deleted" -msgstr "Le format du livre a été supprimé avec succès" - -#: cps/editbooks.py:304 cps/editbooks.py:306 -msgid "Book Successfully Deleted" -msgstr "Le livre a été supprimé avec succès" - -#: cps/editbooks.py:358 -msgid "You are missing permissions to delete books" -msgstr "Vous n’avez par les permissions pour supprimer les livres" - -#: cps/editbooks.py:373 cps/editbooks.py:765 cps/web.py:518 cps/web.py:1783 -#: cps/web.py:1825 cps/web.py:1870 +#: cps/editbooks.py:109 cps/editbooks.py:890 cps/web.py:516 cps/web.py:1454 +#: cps/web.py:1496 cps/web.py:1541 msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible" msgstr "Erreur d'ouverture du livre numérique. Le fichier n'existe pas ou n'est pas accessible" -#: cps/editbooks.py:408 -msgid "edit metadata" -msgstr "modifier les métadonnées" - -#: cps/editbooks.py:457 -#, python-format -msgid "%(seriesindex)s is not a valid number, skipping" -msgstr "%(seriesindex)s n’est pas un nombre valide, ignoré" - -#: cps/editbooks.py:493 cps/editbooks.py:1001 -#, fuzzy, python-format -msgid "'%(langname)s' is not a valid language" -msgstr "%(langname)s n'est pas une langue valide" - -#: cps/editbooks.py:634 -msgid "User has no rights to upload additional file formats" -msgstr "" - -#: cps/editbooks.py:639 cps/editbooks.py:1029 -#, 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:643 cps/editbooks.py:1033 -msgid "File to be uploaded must have an extension" -msgstr "Pour être déposé le fichier doit avoir une extension" - -#: cps/editbooks.py:655 -#, 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:660 -#, python-format -msgid "Failed to store file %(file)s." -msgstr "Échec de la sauvegarde du fichier %(file)s." - -#: cps/editbooks.py:683 -#, python-format -msgid "File format %(ext)s added to %(book)s" -msgstr "Le format de fichier %(ext)s a été ajouté à %(book)s" - -#: cps/editbooks.py:697 cps/editbooks.py:809 +#: cps/editbooks.py:153 cps/editbooks.py:1216 msgid "User has no rights to upload cover" msgstr "" -#: cps/editbooks.py:828 +#: cps/editbooks.py:173 cps/editbooks.py:711 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:869 +#: cps/editbooks.py:214 msgid "Metadata successfully updated" msgstr "Les métadonnées ont bien été mises à jour" -#: cps/editbooks.py:887 +#: cps/editbooks.py:232 msgid "Error editing book: {}" msgstr "" -#: cps/editbooks.py:951 -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:1041 -#, 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:1061 -#, 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:1117 +#: cps/editbooks.py:287 #, python-format msgid "File %(file)s uploaded" msgstr "Le fichier %(file)s a été téléchargé" -#: cps/editbooks.py:1143 +#: cps/editbooks.py:314 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:1151 +#: cps/editbooks.py:322 #, 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:1155 +#: cps/editbooks.py:326 #, 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:630 +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:685 cps/editbooks.py:1010 +#, fuzzy, python-format +msgid "'%(langname)s' is not a valid language" +msgstr "%(langname)s n'est pas une langue valide" + +#: cps/editbooks.py:723 cps/editbooks.py:1157 +#, 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:727 cps/editbooks.py:1161 +msgid "File to be uploaded must have an extension" +msgstr "Pour être déposé le fichier doit avoir une extension" + +#: cps/editbooks.py:735 +#, 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:755 +#, 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:812 cps/editbooks.py:814 +msgid "Book Format Successfully Deleted" +msgstr "Le format du livre a été supprimé avec succès" + +#: cps/editbooks.py:821 cps/editbooks.py:823 +msgid "Book Successfully Deleted" +msgstr "Le livre a été supprimé avec succès" + +#: cps/editbooks.py:875 +msgid "You are missing permissions to delete books" +msgstr "Vous n’avez par les permissions pour supprimer les livres" + +#: cps/editbooks.py:925 +msgid "edit metadata" +msgstr "modifier les métadonnées" + +#: cps/editbooks.py:974 +#, python-format +msgid "%(seriesindex)s is not a valid number, skipping" +msgstr "%(seriesindex)s n’est pas un nombre valide, ignoré" + +#: cps/editbooks.py:1152 +msgid "User has no rights to upload additional file formats" +msgstr "" + +#: cps/editbooks.py:1173 +#, 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:1178 +#, python-format +msgid "Failed to store file %(file)s." +msgstr "Échec de la sauvegarde du fichier %(file)s." + +#: cps/editbooks.py:1201 +#, python-format +msgid "File format %(ext)s added to %(book)s" +msgstr "Le format de fichier %(ext)s a été ajouté à %(book)s" + #: cps/gdrive.py:58 msgid "Google Drive setup not completed, try to deactivate and activate Google Drive again" msgstr "La configuration de Google Drive n’est pas terminée, essayez de désactiver et d’activer à nouveau Google Drive" @@ -629,27 +654,27 @@ 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:81 +#: cps/helper.py:80 #, 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:87 cps/tasks/convert.py:75 +#: cps/helper.py:86 cps/tasks/convert.py:75 #, 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:92 +#: cps/helper.py:91 #, python-format msgid "%(format)s not found: %(fn)s" msgstr "%(format)s introuvable : %(fn)s" -#: cps/helper.py:97 cps/helper.py:221 cps/templates/detail.html:41 -#: cps/templates/detail.html:45 +#: cps/helper.py:96 cps/helper.py:221 cps/templates/detail.html:42 +#: cps/templates/detail.html:46 msgid "Send to Kindle" msgstr "Envoyer vers Kindle" -#: cps/helper.py:98 cps/helper.py:115 cps/helper.py:223 +#: cps/helper.py:97 cps/helper.py:115 cps/helper.py:223 msgid "This e-mail has been sent via Calibre-Web." msgstr "Ce courriel a été envoyé depuis Calibre-Web." @@ -689,132 +714,112 @@ msgstr "Envoyer vers Kindle" 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:353 +#: cps/helper.py:341 msgid "Read status could not set: {}" msgstr "" -#: cps/helper.py:376 +#: cps/helper.py:364 #, 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:382 +#: cps/helper.py:370 #, python-format msgid "Deleting book %(id)s failed: %(message)s" msgstr "La suppression du livre %(id)s a échoué: %(message)s" -#: cps/helper.py:393 +#: cps/helper.py:381 #, 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:458 +#: cps/helper.py:446 #, 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:529 cps/helper.py:538 +#: cps/helper.py:518 cps/helper.py:527 #, 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:572 +#: cps/helper.py:561 #, 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:592 +#: cps/helper.py:581 msgid "Error in rename file in path: {}" msgstr "" -#: cps/helper.py:610 +#: cps/helper.py:599 #, 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:651 cps/web.py:1737 +#: cps/helper.py:640 cps/web.py:1408 #, fuzzy msgid "Found an existing account for this e-mail address" msgstr "Un compte existant a été trouvé pour cette adresse de courriel." -#: cps/helper.py:659 +#: cps/helper.py:648 msgid "This username is already taken" msgstr "Cet utilisateur est déjà pris" -#: cps/helper.py:669 +#: cps/helper.py:658 msgid "Invalid e-mail address format" msgstr "Format de l’adresse courriel invalide" -#: cps/helper.py:754 -msgid "Python modul 'advocate' is not installed but is needed for cover downloads" +#: cps/helper.py:808 +msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "" -#: cps/helper.py:767 +#: cps/helper.py:818 msgid "Error Downloading Cover" msgstr "Erreur lors du téléchargement de la couverture" -#: cps/helper.py:770 +#: cps/helper.py:821 msgid "Cover Format Error" msgstr "Erreur de format de couverture" -#: cps/helper.py:773 +#: cps/helper.py:824 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "" -#: cps/helper.py:783 +#: cps/helper.py:834 msgid "Failed to create path for cover" msgstr "Impossible de créer le chemin pour la couverture" -#: cps/helper.py:799 +#: cps/helper.py:850 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:810 +#: cps/helper.py:861 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:822 +#: cps/helper.py:873 msgid "Invalid cover file content" msgstr "Contenu du fichier de couverture invalide" -#: cps/helper.py:826 +#: cps/helper.py:877 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:878 +#: cps/helper.py:929 msgid "Unrar binary file not found" msgstr "Fichier binaire Unrar non trouvé" -#: cps/helper.py:889 +#: cps/helper.py:940 msgid "Error excecuting UnRar" msgstr "Une erreur est survenue lors de l'exécution d'UnRar" -#: cps/helper.py:937 -msgid "Waiting" -msgstr "En attente" - -#: cps/helper.py:939 -msgid "Failed" -msgstr "Echoué" - -#: cps/helper.py:941 -msgid "Started" -msgstr "Débuté" - -#: cps/helper.py:943 -msgid "Finished" -msgstr "Terminé" - -#: cps/helper.py:945 -msgid "Unknown Status" -msgstr "Statut inconnu" - -#: cps/kobo_auth.py:128 +#: cps/kobo_auth.py:89 #, fuzzy msgid "Please access Calibre-Web from non localhost to get valid api_endpoint for kobo device" msgstr "Veuilllez ne pas accéder à calibre-web par localhost pour obtenir un api_endpoint valide pour un appareil kobo" -#: cps/kobo_auth.py:154 +#: cps/kobo_auth.py:115 msgid "Kobo Setup" msgstr "Configuration Kobo" @@ -823,7 +828,7 @@ msgstr "Configuration Kobo" msgid "Register with %(provider)s" msgstr "Enregistrer avec %(provider)s" -#: cps/oauth_bb.py:138 cps/remotelogin.py:130 cps/web.py:1613 +#: cps/oauth_bb.py:138 cps/remotelogin.py:130 cps/web.py:1286 #, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "vous êtes maintenant connecté comme : '%(nickname)s'" @@ -884,12 +889,12 @@ msgstr "Erreur Oauth Google, veuillez réessayer plus tard." msgid "Google Oauth error: {}" msgstr "Erreur Oauth Google : {}" -#: cps/opds.py:298 +#: cps/opds.py:287 msgid "{} Stars" msgstr "{} Étoiles" -#: cps/remotelogin.py:62 cps/templates/layout.html:84 -#: cps/templates/login.html:4 cps/templates/login.html:21 cps/web.py:1662 +#: cps/remotelogin.py:62 cps/templates/layout.html:85 +#: cps/templates/login.html:4 cps/templates/login.html:21 cps/web.py:1335 msgid "Login" msgstr "Connexion" @@ -905,456 +910,489 @@ msgstr "Jeton expiré" msgid "Success! Please return to your device" msgstr "Réussite! Merci de vous tourner vers votre appareil" -#: cps/render_template.py:41 cps/web.py:407 +#: cps/render_template.py:40 cps/web.py:405 msgid "Books" msgstr "Livres" -#: cps/render_template.py:43 +#: cps/render_template.py:42 msgid "Show recent books" msgstr "Afficher les livres récents" -#: cps/render_template.py:44 cps/templates/index.xml:25 +#: cps/render_template.py:43 cps/templates/index.xml:25 msgid "Hot Books" msgstr "Livres populaires" -#: cps/render_template.py:46 +#: cps/render_template.py:45 msgid "Show Hot Books" msgstr "Montrer les livres populaires" -#: cps/render_template.py:48 cps/render_template.py:53 +#: cps/render_template.py:47 cps/render_template.py:52 msgid "Downloaded Books" msgstr "Livres téléchargés" -#: cps/render_template.py:50 cps/render_template.py:55 +#: cps/render_template.py:49 cps/render_template.py:54 #: cps/templates/user_table.html:167 msgid "Show Downloaded Books" msgstr "Montrer les livres téléchargés" -#: cps/render_template.py:58 cps/templates/index.xml:32 cps/web.py:422 +#: cps/render_template.py:57 cps/templates/index.xml:32 cps/web.py:420 msgid "Top Rated Books" msgstr "Livres les mieux notés" -#: cps/render_template.py:60 cps/templates/user_table.html:161 +#: cps/render_template.py:59 cps/templates/user_table.html:161 msgid "Show Top Rated Books" msgstr "Montrer les livres les mieux notés" -#: cps/render_template.py:61 cps/templates/index.xml:54 -#: cps/templates/index.xml:58 cps/web.py:729 +#: cps/render_template.py:60 cps/templates/index.xml:54 +#: cps/templates/index.xml:58 cps/web.py:739 msgid "Read Books" msgstr "Livres lus" -#: cps/render_template.py:63 +#: cps/render_template.py:62 msgid "Show read and unread" msgstr "Montrer lus et non-lus" -#: cps/render_template.py:65 cps/templates/index.xml:61 -#: cps/templates/index.xml:65 cps/web.py:732 +#: cps/render_template.py:64 cps/templates/index.xml:61 +#: cps/templates/index.xml:65 cps/web.py:742 msgid "Unread Books" msgstr "Livres non-lus" -#: cps/render_template.py:67 +#: cps/render_template.py:66 msgid "Show unread" msgstr "Afficher non-lus" -#: cps/render_template.py:68 +#: cps/render_template.py:67 msgid "Discover" msgstr "Découvrir" -#: cps/render_template.py:70 cps/templates/index.xml:50 +#: cps/render_template.py:69 cps/templates/index.xml:50 #: cps/templates/user_table.html:162 msgid "Show Random Books" msgstr "Montrer des livres au hasard" -#: cps/render_template.py:71 cps/templates/book_table.html:67 -#: cps/templates/index.xml:83 cps/web.py:1135 +#: cps/render_template.py:70 cps/templates/book_table.html:67 +#: cps/templates/index.xml:83 cps/web.py:1098 msgid "Categories" msgstr "Catégories" -#: cps/render_template.py:73 cps/templates/user_table.html:158 +#: cps/render_template.py:72 cps/templates/user_table.html:158 msgid "Show category selection" msgstr "Montrer la sélection par catégories" -#: cps/render_template.py:74 cps/templates/book_edit.html:90 +#: cps/render_template.py:73 cps/templates/book_edit.html:91 #: cps/templates/book_table.html:68 cps/templates/index.xml:90 -#: cps/templates/search_form.html:69 cps/web.py:1034 cps/web.py:1041 +#: cps/templates/search_form.html:69 cps/web.py:995 cps/web.py:1002 msgid "Series" msgstr "Séries" -#: cps/render_template.py:76 cps/templates/user_table.html:157 +#: cps/render_template.py:75 cps/templates/user_table.html:157 msgid "Show series selection" msgstr "Montrer la sélection par séries" -#: cps/render_template.py:77 cps/templates/book_table.html:66 +#: cps/render_template.py:76 cps/templates/book_table.html:66 #: cps/templates/index.xml:69 msgid "Authors" msgstr "Auteurs" -#: cps/render_template.py:79 cps/templates/user_table.html:160 +#: cps/render_template.py:78 cps/templates/user_table.html:160 msgid "Show author selection" msgstr "Montrer la sélection par auteur" -#: cps/render_template.py:81 cps/templates/book_table.html:72 -#: cps/templates/index.xml:76 cps/web.py:1006 +#: cps/render_template.py:80 cps/templates/book_table.html:72 +#: cps/templates/index.xml:76 cps/web.py:966 msgid "Publishers" msgstr "Éditeurs" -#: cps/render_template.py:83 cps/templates/user_table.html:163 +#: cps/render_template.py:82 cps/templates/user_table.html:163 msgid "Show publisher selection" msgstr "Montrer la sélection par éditeur" -#: cps/render_template.py:84 cps/templates/book_table.html:70 +#: cps/render_template.py:83 cps/templates/book_table.html:70 #: cps/templates/index.xml:97 cps/templates/search_form.html:107 -#: cps/web.py:1108 +#: cps/web.py:1070 msgid "Languages" msgstr "Langues" -#: cps/render_template.py:87 cps/templates/user_table.html:155 +#: cps/render_template.py:86 cps/templates/user_table.html:155 msgid "Show language selection" msgstr "Montrer la sélection par langue" -#: cps/render_template.py:88 cps/templates/index.xml:104 +#: cps/render_template.py:87 cps/templates/index.xml:104 msgid "Ratings" msgstr "Notes" -#: cps/render_template.py:90 cps/templates/user_table.html:164 +#: cps/render_template.py:89 cps/templates/user_table.html:164 msgid "Show ratings selection" msgstr "Afficher la sélection des évaluations" -#: cps/render_template.py:91 cps/templates/index.xml:112 +#: cps/render_template.py:90 cps/templates/index.xml:112 msgid "File formats" msgstr "Formats de fichier" -#: cps/render_template.py:93 cps/templates/user_table.html:165 +#: cps/render_template.py:92 cps/templates/user_table.html:165 msgid "Show file formats selection" msgstr "Afficher la sélection des formats de fichiers" -#: cps/render_template.py:95 cps/web.py:755 +#: cps/render_template.py:94 cps/web.py:765 msgid "Archived Books" msgstr "Livres archivés" -#: cps/render_template.py:97 cps/templates/user_table.html:166 +#: cps/render_template.py:96 cps/templates/user_table.html:166 msgid "Show archived books" msgstr "Afficher les livres archivés" -#: cps/render_template.py:100 cps/web.py:837 +#: cps/render_template.py:99 cps/web.py:796 msgid "Books List" msgstr "Liste des livres" -#: cps/render_template.py:102 cps/templates/user_table.html:168 +#: cps/render_template.py:101 cps/templates/user_table.html:168 msgid "Show Books List" msgstr "Montrer la liste des livres" -#: cps/shelf.py:67 cps/shelf.py:121 -msgid "Invalid shelf specified" -msgstr "L’étagère indiquée est invalide" - -#: cps/shelf.py:73 -#, fuzzy -msgid "Sorry you are not allowed to add a book to that shelf" -msgstr "Désolé, vous n’êtes pas autorisé à ajouter un livre dans l’étagère: %(shelfname)s" - -#: cps/shelf.py:82 -#, python-format -msgid "Book is already part of the shelf: %(shelfname)s" -msgstr "Ce livre est déjà sur l’étagère : %(shelfname)s" - -#: cps/shelf.py:107 -#, python-format -msgid "Book has been added to shelf: %(sname)s" -msgstr "Le livre a bien été ajouté à l'étagère : %(sname)s" - -#: cps/shelf.py:126 -msgid "You are not allowed to add a book to the shelf" -msgstr "Vous n’êtes pas autorisé à ajouter un livre à l’étagère" - -#: cps/shelf.py:144 -#, python-format -msgid "Books are already part of the shelf: %(name)s" -msgstr "Ces livres sont déjà sur l’étagère : %(name)s" - -#: cps/shelf.py:156 -#, python-format -msgid "Books have been added to shelf: %(sname)s" -msgstr "Les livres ont été ajoutés à l’étagère : %(sname)s" - -#: cps/shelf.py:163 -#, python-format -msgid "Could not add books to shelf: %(sname)s" -msgstr "Impossible d’ajouter les livres à l’étagère : %(sname)s" - -#: cps/shelf.py:209 -#, python-format -msgid "Book has been removed from shelf: %(sname)s" -msgstr "Le livre a été supprimé de l'étagère %(sname)s" - -#: cps/shelf.py:218 -msgid "Sorry you are not allowed to remove a book from this shelf" -msgstr "Désolé, vous n’êtes pas autorisé à supprimer un livre de cette étagère" - -#: cps/shelf.py:228 cps/templates/layout.html:140 -msgid "Create a Shelf" -msgstr "Créer une étagère" - -#: cps/shelf.py:236 -#, fuzzy -msgid "Sorry you are not allowed to edit this shelf" -msgstr "Désolé, vous n’êtes pas autorisé à enlever un livre de cette étagère : %(sname)s" - -#: cps/shelf.py:238 -msgid "Edit a shelf" -msgstr "Modifier une étagère" - -#: cps/shelf.py:248 -msgid "Sorry you are not allowed to create a public shelf" -msgstr "Désolé, vous n’êtes pas autorisé à créer une étagère publique" - -#: cps/shelf.py:265 -#, python-format -msgid "Shelf %(title)s created" -msgstr "Étagère %(title)s créée" - -#: cps/shelf.py:268 -#, python-format -msgid "Shelf %(title)s changed" -msgstr "L’étagère %(title)s a été modifiée" - -#: cps/shelf.py:282 -msgid "There was an error" -msgstr "Il y a eu une erreur" - -#: cps/shelf.py:304 -#, python-format -msgid "A public shelf with the name '%(title)s' already exists." -msgstr "Une étagère publique avec le nom '%(title)s' existe déjà." - -#: cps/shelf.py:315 -#, python-format -msgid "A private shelf with the name '%(title)s' already exists." -msgstr "Une étagère privée avec le nom '%(title)s' existe déjà." - -#: cps/shelf.py:337 -msgid "Error deleting Shelf" -msgstr "" - -#: cps/shelf.py:339 -#, fuzzy -msgid "Shelf successfully deleted" -msgstr "Le livre a été supprimé avec succès" - -#: cps/shelf.py:389 -#, python-format -msgid "Change order of Shelf: '%(name)s'" -msgstr "Modifier l’arrangement de l’étagère : ‘%(name)s’" - -#: cps/shelf.py:461 -#, python-format -msgid "Shelf: '%(name)s'" -msgstr "Étagère : '%(name)s'" - -#: cps/shelf.py:465 -msgid "Error opening shelf. Shelf does not exist or is not accessible" -msgstr "Erreur à l’ouverture de l’étagère. Elle n’existe plus ou n’est plus accessible" - -#: cps/updater.py:426 cps/updater.py:437 cps/updater.py:538 cps/updater.py:553 -msgid "Unexpected data while reading update information" -msgstr "Données inattendues lors de la lecture des informations de mise à jour" - -#: cps/updater.py:433 cps/updater.py:545 -msgid "No update available. You already have the latest version installed" -msgstr "Aucune mise à jour disponible. Vous avez déjà la dernière version installée" - -#: cps/updater.py:451 -msgid "A new update is available. Click on the button below to update to the latest version." -msgstr "Une nouvelle mise à jour est disponible. Cliquez sur le bouton ci-dessous pour charger la dernière version." - -#: cps/updater.py:469 -msgid "Could not fetch update information" -msgstr "Impossible d'extraire les informations de mise à jour" - -#: cps/updater.py:479 -msgid "Click on the button below to update to the latest stable version." -msgstr "Téléchargez la dernière version en cliquant sur le bouton ci-dessous." - -#: cps/updater.py:488 cps/updater.py:502 cps/updater.py:513 -#, python-format -msgid "A new update is available. Click on the button below to update to version: %(version)s" -msgstr "Une nouvelle mise à jour est disponible. Cliquez sur le bouton ci-dessous pour charger la version: %(version)s" - -#: cps/updater.py:531 -msgid "No release information available" -msgstr "Aucune information concernant cette version n’est disponible" - -#: cps/templates/index.html:5 cps/web.py:434 -msgid "Discover (Random Books)" -msgstr "Découvrir (Livres au hasard)" - -#: cps/web.py:470 -msgid "Hot Books (Most Downloaded)" -msgstr "Livres populaires (les plus téléchargés)" - -#: cps/web.py:501 -#, python-format -msgid "Downloaded books by %(user)s" -msgstr "Livres téléchargés par %(user)s" - -#: cps/web.py:534 -#, python-format -msgid "Author: %(name)s" -msgstr "Auteur : %(name)s" - -#: cps/web.py:570 -#, python-format -msgid "Publisher: %(name)s" -msgstr "Éditeur : '%(name)s'" - -#: cps/web.py:598 -#, python-format -msgid "Series: %(serie)s" -msgstr "Séries : %(serie)s" - -#: cps/web.py:610 -#, python-format -msgid "Rating: %(rating)s stars" -msgstr "Évaluation : %(rating)s étoiles" - -#: cps/web.py:626 -#, python-format -msgid "File format: %(format)s" -msgstr "Format de fichier : %(format)s" - -#: cps/web.py:663 -#, python-format -msgid "Category: %(name)s" -msgstr "Catégorie : %(name)s" - -#: cps/web.py:690 -#, python-format -msgid "Language: %(name)s" -msgstr "Langue : %(name)s" - -#: cps/templates/layout.html:56 cps/web.py:789 cps/web.py:1444 -msgid "Advanced Search" -msgstr "Recherche avancée" - -#: cps/templates/book_edit.html:235 cps/templates/feed.xml:33 -#: cps/templates/index.xml:11 cps/templates/layout.html:45 -#: cps/templates/layout.html:48 cps/templates/search_form.html:226 -#: cps/web.py:807 cps/web.py:1164 +#: cps/search.py:48 cps/search.py:414 cps/templates/book_edit.html:236 +#: cps/templates/feed.xml:33 cps/templates/index.xml:11 +#: cps/templates/layout.html:46 cps/templates/layout.html:49 +#: cps/templates/search_form.html:226 msgid "Search" msgstr "Chercher" -#: cps/templates/admin.html:16 cps/web.py:979 -msgid "Downloads" -msgstr "Téléchargements" - -#: cps/web.py:1068 -msgid "Ratings list" -msgstr "Liste des évaluations" - -#: cps/web.py:1095 -msgid "File formats list" -msgstr "Liste de formats de fichiers" - -#: cps/templates/layout.html:73 cps/templates/tasks.html:7 cps/web.py:1149 -msgid "Tasks" -msgstr "Tâches" - -#: cps/web.py:1286 +#: cps/search.py:194 msgid "Published after " msgstr "Publié après le " -#: cps/web.py:1293 +#: cps/search.py:201 msgid "Published before " msgstr "Publié avant le " -#: cps/web.py:1315 +#: cps/search.py:223 #, python-format msgid "Rating <= %(rating)s" msgstr "Évaluation <= %(rating)s" -#: cps/web.py:1317 +#: cps/search.py:225 #, python-format msgid "Rating >= %(rating)s" msgstr "Évaluation >= %(rating)s" -#: cps/web.py:1319 +#: cps/search.py:227 #, python-format msgid "Read Status = %(status)s" msgstr "Status de lecture = %(status)s" -#: cps/web.py:1425 +#: cps/search.py:345 msgid "Error on search for custom columns, please restart Calibre-Web" msgstr "Erreur lors de la recherche de colonnes personnalisées, veuillez redémarrer Calibre-Web" -#: cps/web.py:1527 +#: cps/search.py:364 cps/search.py:396 cps/templates/layout.html:57 +msgid "Advanced Search" +msgstr "Recherche avancée" + +#: cps/shelf.py:49 cps/shelf.py:103 +msgid "Invalid shelf specified" +msgstr "L’étagère indiquée est invalide" + +#: cps/shelf.py:55 +#, fuzzy +msgid "Sorry you are not allowed to add a book to that shelf" +msgstr "Désolé, vous n’êtes pas autorisé à ajouter un livre dans l’étagère: %(shelfname)s" + +#: cps/shelf.py:64 +#, python-format +msgid "Book is already part of the shelf: %(shelfname)s" +msgstr "Ce livre est déjà sur l’étagère : %(shelfname)s" + +#: cps/shelf.py:89 +#, python-format +msgid "Book has been added to shelf: %(sname)s" +msgstr "Le livre a bien été ajouté à l'étagère : %(sname)s" + +#: cps/shelf.py:108 +msgid "You are not allowed to add a book to the shelf" +msgstr "Vous n’êtes pas autorisé à ajouter un livre à l’étagère" + +#: cps/shelf.py:126 +#, python-format +msgid "Books are already part of the shelf: %(name)s" +msgstr "Ces livres sont déjà sur l’étagère : %(name)s" + +#: cps/shelf.py:138 +#, python-format +msgid "Books have been added to shelf: %(sname)s" +msgstr "Les livres ont été ajoutés à l’étagère : %(sname)s" + +#: cps/shelf.py:145 +#, python-format +msgid "Could not add books to shelf: %(sname)s" +msgstr "Impossible d’ajouter les livres à l’étagère : %(sname)s" + +#: cps/shelf.py:191 +#, python-format +msgid "Book has been removed from shelf: %(sname)s" +msgstr "Le livre a été supprimé de l'étagère %(sname)s" + +#: cps/shelf.py:200 +msgid "Sorry you are not allowed to remove a book from this shelf" +msgstr "Désolé, vous n’êtes pas autorisé à supprimer un livre de cette étagère" + +#: cps/shelf.py:210 cps/templates/layout.html:141 +msgid "Create a Shelf" +msgstr "Créer une étagère" + +#: cps/shelf.py:218 +#, fuzzy +msgid "Sorry you are not allowed to edit this shelf" +msgstr "Désolé, vous n’êtes pas autorisé à enlever un livre de cette étagère : %(sname)s" + +#: cps/shelf.py:220 +msgid "Edit a shelf" +msgstr "Modifier une étagère" + +#: cps/shelf.py:229 +msgid "Error deleting Shelf" +msgstr "" + +#: cps/shelf.py:231 +#, fuzzy +msgid "Shelf successfully deleted" +msgstr "Le livre a été supprimé avec succès" + +#: cps/shelf.py:281 +#, python-format +msgid "Change order of Shelf: '%(name)s'" +msgstr "Modifier l’arrangement de l’étagère : ‘%(name)s’" + +#: cps/shelf.py:313 +msgid "Sorry you are not allowed to create a public shelf" +msgstr "Désolé, vous n’êtes pas autorisé à créer une étagère publique" + +#: cps/shelf.py:330 +#, python-format +msgid "Shelf %(title)s created" +msgstr "Étagère %(title)s créée" + +#: cps/shelf.py:333 +#, python-format +msgid "Shelf %(title)s changed" +msgstr "L’étagère %(title)s a été modifiée" + +#: cps/shelf.py:347 +msgid "There was an error" +msgstr "Il y a eu une erreur" + +#: cps/shelf.py:369 +#, python-format +msgid "A public shelf with the name '%(title)s' already exists." +msgstr "Une étagère publique avec le nom '%(title)s' existe déjà." + +#: cps/shelf.py:380 +#, python-format +msgid "A private shelf with the name '%(title)s' already exists." +msgstr "Une étagère privée avec le nom '%(title)s' existe déjà." + +#: cps/shelf.py:462 +#, python-format +msgid "Shelf: '%(name)s'" +msgstr "Étagère : '%(name)s'" + +#: cps/shelf.py:466 +msgid "Error opening shelf. Shelf does not exist or is not accessible" +msgstr "Erreur à l’ouverture de l’étagère. Elle n’existe plus ou n’est plus accessible" + +#: cps/tasks_status.py:48 cps/templates/layout.html:74 +#: cps/templates/tasks.html:7 +msgid "Tasks" +msgstr "Tâches" + +#: cps/tasks_status.py:64 +msgid "Waiting" +msgstr "En attente" + +#: cps/tasks_status.py:66 +msgid "Failed" +msgstr "Echoué" + +#: cps/tasks_status.py:68 +msgid "Started" +msgstr "Débuté" + +#: cps/tasks_status.py:70 +msgid "Finished" +msgstr "Terminé" + +#: cps/tasks_status.py:72 +msgid "Ended" +msgstr "" + +#: cps/tasks_status.py:74 +msgid "Cancelled" +msgstr "" + +#: cps/tasks_status.py:76 +msgid "Unknown Status" +msgstr "Statut inconnu" + +#: cps/updater.py:431 cps/updater.py:442 cps/updater.py:543 cps/updater.py:558 +msgid "Unexpected data while reading update information" +msgstr "Données inattendues lors de la lecture des informations de mise à jour" + +#: cps/updater.py:438 cps/updater.py:550 +msgid "No update available. You already have the latest version installed" +msgstr "Aucune mise à jour disponible. Vous avez déjà la dernière version installée" + +#: cps/updater.py:456 +msgid "A new update is available. Click on the button below to update to the latest version." +msgstr "Une nouvelle mise à jour est disponible. Cliquez sur le bouton ci-dessous pour charger la dernière version." + +#: cps/updater.py:474 +msgid "Could not fetch update information" +msgstr "Impossible d'extraire les informations de mise à jour" + +#: cps/updater.py:484 +msgid "Click on the button below to update to the latest stable version." +msgstr "Téléchargez la dernière version en cliquant sur le bouton ci-dessous." + +#: cps/updater.py:493 cps/updater.py:507 cps/updater.py:518 +#, python-format +msgid "A new update is available. Click on the button below to update to version: %(version)s" +msgstr "Une nouvelle mise à jour est disponible. Cliquez sur le bouton ci-dessous pour charger la version: %(version)s" + +#: cps/updater.py:536 +msgid "No release information available" +msgstr "Aucune information concernant cette version n’est disponible" + +#: cps/templates/index.html:6 cps/web.py:432 +msgid "Discover (Random Books)" +msgstr "Découvrir (Livres au hasard)" + +#: cps/web.py:468 +msgid "Hot Books (Most Downloaded)" +msgstr "Livres populaires (les plus téléchargés)" + +#: cps/web.py:499 +#, python-format +msgid "Downloaded books by %(user)s" +msgstr "Livres téléchargés par %(user)s" + +#: cps/web.py:532 +#, python-format +msgid "Author: %(name)s" +msgstr "Auteur : %(name)s" + +#: cps/web.py:568 +#, python-format +msgid "Publisher: %(name)s" +msgstr "Éditeur : '%(name)s'" + +#: cps/web.py:596 +#, python-format +msgid "Series: %(serie)s" +msgstr "Séries : %(serie)s" + +#: cps/web.py:609 +msgid "Rating: None" +msgstr "" + +#: cps/web.py:618 +#, python-format +msgid "Rating: %(rating)s stars" +msgstr "Évaluation : %(rating)s étoiles" + +#: cps/web.py:636 +#, python-format +msgid "File format: %(format)s" +msgstr "Format de fichier : %(format)s" + +#: cps/web.py:673 +#, python-format +msgid "Category: %(name)s" +msgstr "Catégorie : %(name)s" + +#: cps/web.py:700 +#, python-format +msgid "Language: %(name)s" +msgstr "Langue : %(name)s" + +#: cps/templates/admin.html:16 cps/web.py:938 +msgid "Downloads" +msgstr "Téléchargements" + +#: cps/web.py:1030 +msgid "Ratings list" +msgstr "Liste des évaluations" + +#: cps/web.py:1057 +msgid "File formats list" +msgstr "Liste de formats de fichiers" + +#: cps/web.py:1199 #, python-format msgid "Book successfully queued for sending to %(kindlemail)s" msgstr "Le livre a été mis en file de traitement avec succès pour un envoi vers %(kindlemail)s" -#: cps/web.py:1531 +#: cps/web.py:1203 #, python-format msgid "Oops! There was an error sending this book: %(res)s" msgstr "Il y a eu une erreur en envoyant ce livre : %(res)s" -#: cps/web.py:1533 +#: cps/web.py:1205 msgid "Please update your profile with a valid Send to Kindle E-mail Address." msgstr "Veuillez mettre à jour votre profil avec une adresse de courriel Kindle valide." -#: cps/web.py:1550 +#: cps/web.py:1222 msgid "E-Mail server is not configured, please contact your administrator!" msgstr "Le serveur de courriel n'est pas configuré, veuillez contacter votre administrateur!" -#: cps/templates/layout.html:85 cps/templates/register.html:17 cps/web.py:1551 -#: cps/web.py:1558 cps/web.py:1564 cps/web.py:1583 cps/web.py:1587 -#: cps/web.py:1593 +#: cps/templates/layout.html:86 cps/templates/register.html:17 cps/web.py:1223 +#: cps/web.py:1230 cps/web.py:1236 cps/web.py:1255 cps/web.py:1260 +#: cps/web.py:1266 msgid "Register" msgstr "Créer un compte" -#: cps/web.py:1585 +#: cps/web.py:1257 msgid "Your e-mail is not allowed to register" msgstr "Votre adresse de courriel n’est pas autorisé pour une inscription" -#: cps/web.py:1588 +#: cps/web.py:1261 msgid "Confirmation e-mail was send to your e-mail account." msgstr "Le courriel de confirmation a été envoyé à votre adresse." -#: cps/web.py:1602 +#: cps/web.py:1275 msgid "Cannot activate LDAP authentication" msgstr "Impossible d’activer l’authentification LDAP" -#: cps/web.py:1621 +#: cps/web.py:1294 #, 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:1627 +#: cps/web.py:1300 #, python-format msgid "Could not login: %(message)s" msgstr "Impossible de se connecter: %(message)s" -#: cps/web.py:1631 cps/web.py:1656 +#: cps/web.py:1304 cps/web.py:1329 msgid "Wrong Username or Password" msgstr "Mauvais nom d'utilisateur ou mot de passe" -#: cps/web.py:1638 +#: cps/web.py:1311 msgid "New Password was send to your email address" msgstr "Le nouveau mot de passe a été envoyé vers votre adresse de courriel" -#: cps/web.py:1644 +#: cps/web.py:1317 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:1651 +#: cps/web.py:1324 #, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "Vous êtes maintenant connecté en tant que : ‘%(nickname)s’" -#: cps/web.py:1717 cps/web.py:1766 +#: cps/web.py:1388 cps/web.py:1437 #, python-format msgid "%(name)s's profile" msgstr "Profil de %(name)s" -#: cps/web.py:1733 +#: cps/web.py:1404 msgid "Profile updated" msgstr "Profil mis à jour" @@ -1362,40 +1400,75 @@ msgstr "Profil mis à jour" msgid "Found no valid gmail.json file with OAuth information" msgstr "Aucun fichier gmail.json avec information OAuth valide trouvé" -#: cps/tasks/convert.py:154 +#: cps/tasks/convert.py:153 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "ebook-convert calibre %(tool)s non trouvé" -#: cps/tasks/convert.py:187 +#: cps/tasks/convert.py:186 #, python-format msgid "%(format)s format not found on disk" msgstr "Format %(format)s non trouvé sur le disque" -#: cps/tasks/convert.py:191 +#: cps/tasks/convert.py:190 msgid "Ebook converter failed with unknown error" msgstr "Le convertisseur Ebook a échoué avec une erreur inconnue" -#: cps/tasks/convert.py:201 +#: cps/tasks/convert.py:200 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "La commande Kepubify-converter a échouée : %(error)s" -#: cps/tasks/convert.py:223 +#: cps/tasks/convert.py:222 #, 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:246 +#: cps/tasks/convert.py:245 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "La commande ebook-convert a échouée : %(error)s" -#: cps/tasks/convert.py:269 +#: cps/tasks/convert.py:268 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "Calibre a échoué avec l’erreur : %(error)s" +#: cps/tasks/convert.py:273 +msgid "Convert" +msgstr "" + +#: cps/tasks/database.py:28 +msgid "Reconnecting Calibre database" +msgstr "" + +#: cps/tasks/mail.py:265 +msgid "E-mail" +msgstr "" + +#: cps/tasks/thumbnail.py:95 +#, python-format +msgid "Generated %(count)s cover thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:222 cps/tasks/thumbnail.py:435 +#: cps/tasks/thumbnail.py:503 +msgid "Cover Thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:281 +msgid "Generated {0} series thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:446 +msgid "Clearing cover thumbnail cache" +msgstr "" + +#: cps/tasks/upload.py:38 cps/templates/admin.html:20 +#: cps/templates/layout.html:67 cps/templates/user_table.html:145 +msgid "Upload" +msgstr "Téléverser" + #: cps/templates/admin.html:9 msgid "Users" msgstr "Liste des utilisateurs" @@ -1415,7 +1488,7 @@ msgstr "Adresse de courriel" msgid "Send to Kindle E-mail Address" msgstr "Envoyer vers une adresse de courriel Kindle" -#: cps/templates/admin.html:17 cps/templates/layout.html:76 +#: cps/templates/admin.html:17 cps/templates/layout.html:77 #: cps/templates/user_table.html:143 msgid "Admin" msgstr "Administration" @@ -1425,13 +1498,8 @@ msgstr "Administration" msgid "Password" msgstr "Mot de passe" -#: cps/templates/admin.html:20 cps/templates/layout.html:66 -#: cps/templates/user_table.html:145 -msgid "Upload" -msgstr "Téléverser" - -#: cps/templates/admin.html:22 cps/templates/detail.html:18 -#: cps/templates/detail.html:27 cps/templates/shelf.html:7 +#: cps/templates/admin.html:22 cps/templates/detail.html:19 +#: cps/templates/detail.html:28 cps/templates/shelf.html:8 #: cps/templates/user_table.html:146 msgid "Download" msgstr "Télécharger" @@ -1445,7 +1513,7 @@ msgstr "Afficher les livres" msgid "Edit" msgstr "Éditer" -#: cps/templates/admin.html:25 cps/templates/book_edit.html:16 +#: cps/templates/admin.html:25 cps/templates/book_edit.html:17 #: cps/templates/book_table.html:100 cps/templates/modal_dialogs.html:63 #: cps/templates/modal_dialogs.html:116 cps/templates/user_edit.html:67 #: cps/templates/user_table.html:149 @@ -1558,78 +1626,107 @@ msgstr "Éditer la configuration principale" msgid "Edit UI Configuration" msgstr "Éditer la configuration de l’interface utilisateur" -#: cps/templates/admin.html:166 +#: cps/templates/admin.html:167 +msgid "Scheduled Tasks" +msgstr "" + +#: cps/templates/admin.html:170 cps/templates/schedule_edit.html:12 +msgid "Time at which tasks start to run" +msgstr "" + +#: cps/templates/admin.html:174 cps/templates/schedule_edit.html:20 +msgid "Maximum tasks duration" +msgstr "" + +#: cps/templates/admin.html:178 +msgid "Generate book cover thumbnails" +msgstr "" + +#: cps/templates/admin.html:182 +msgid "Generate series cover thumbnails" +msgstr "" + +#: cps/templates/admin.html:186 cps/templates/schedule_edit.html:37 +msgid "Reconnect to Calibre Library" +msgstr "" + +#: cps/templates/admin.html:193 +msgid "Refresh Thumbnail Cover Cache" +msgstr "" + +#: cps/templates/admin.html:199 msgid "Administration" msgstr "Administration" -#: cps/templates/admin.html:167 +#: cps/templates/admin.html:200 msgid "Download Debug Package" msgstr "Télécharger le package de débogage" -#: cps/templates/admin.html:168 +#: cps/templates/admin.html:201 msgid "View Logs" msgstr "Afficher les fichiers journaux" -#: cps/templates/admin.html:171 +#: cps/templates/admin.html:204 msgid "Reconnect Calibre Database" msgstr "Reconnecter la base de données Calibre" -#: cps/templates/admin.html:172 +#: cps/templates/admin.html:207 msgid "Restart" msgstr "Redémarrer Calibre-Web" -#: cps/templates/admin.html:173 +#: cps/templates/admin.html:208 msgid "Shutdown" msgstr "Arrêter Calibre-Web" -#: cps/templates/admin.html:178 -msgid "Update" -msgstr "Mise à jour de Calibre-Web" +#: cps/templates/admin.html:213 +msgid "Version Information" +msgstr "" -#: cps/templates/admin.html:182 +#: cps/templates/admin.html:217 msgid "Version" msgstr "Version" -#: cps/templates/admin.html:183 +#: cps/templates/admin.html:218 msgid "Details" msgstr "Détails" -#: cps/templates/admin.html:189 +#: cps/templates/admin.html:224 msgid "Current version" msgstr "Version actuelle" -#: cps/templates/admin.html:196 +#: cps/templates/admin.html:231 msgid "Check for Update" msgstr "Rechercher les mises à jour" -#: cps/templates/admin.html:197 +#: cps/templates/admin.html:232 msgid "Perform Update" msgstr "Effectuer la mise à jour" -#: cps/templates/admin.html:210 +#: cps/templates/admin.html:245 msgid "Are you sure you want to restart?" msgstr "Voulez-vous vraiment redémarrer Calibre-Web?" -#: cps/templates/admin.html:215 cps/templates/admin.html:229 -#: cps/templates/admin.html:249 cps/templates/config_db.html:70 +#: cps/templates/admin.html:250 cps/templates/admin.html:264 +#: cps/templates/admin.html:284 cps/templates/config_db.html:70 msgid "OK" msgstr "OK" -#: cps/templates/admin.html:216 cps/templates/admin.html:230 -#: cps/templates/book_edit.html:213 cps/templates/book_table.html:127 +#: cps/templates/admin.html:251 cps/templates/admin.html:265 +#: cps/templates/book_edit.html:214 cps/templates/book_table.html:127 #: cps/templates/config_db.html:54 cps/templates/config_edit.html:359 #: 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/shelf_edit.html:27 +#: cps/templates/modal_dialogs.html:135 cps/templates/schedule_edit.html:41 +#: cps/templates/shelf_edit.html:27 cps/templates/tasks.html:46 #: cps/templates/user_edit.html:144 msgid "Cancel" msgstr "Annuler" -#: cps/templates/admin.html:228 +#: cps/templates/admin.html:263 msgid "Are you sure you want to shutdown?" msgstr "Voulez-vous vraiment arrêter Calibre-Web?" -#: cps/templates/admin.html:240 +#: cps/templates/admin.html:275 msgid "Updating, please do not reload this page" msgstr "Mise à jour en cours, ne pas rafraîchir la page" @@ -1641,39 +1738,39 @@ msgstr "via" msgid "In Library" msgstr "Dans la librairie" -#: cps/templates/author.html:26 cps/templates/index.html:73 -#: cps/templates/search.html:30 cps/templates/shelf.html:19 +#: cps/templates/author.html:26 cps/templates/index.html:74 +#: cps/templates/search.html:31 cps/templates/shelf.html:20 msgid "Sort according to book date, newest first" msgstr "Trier en fonction de la date du livre, le plus récent en premier" -#: cps/templates/author.html:27 cps/templates/index.html:74 -#: cps/templates/search.html:31 cps/templates/shelf.html:20 +#: cps/templates/author.html:27 cps/templates/index.html:75 +#: cps/templates/search.html:32 cps/templates/shelf.html:21 msgid "Sort according to book date, oldest first" msgstr "Trier en fonction de la date du livre, le plus ancien en premier" -#: cps/templates/author.html:28 cps/templates/index.html:75 -#: cps/templates/search.html:32 cps/templates/shelf.html:21 +#: cps/templates/author.html:28 cps/templates/index.html:76 +#: cps/templates/search.html:33 cps/templates/shelf.html:22 msgid "Sort title in alphabetical order" msgstr "Trier les titres dans l’ordre alphabétique" -#: cps/templates/author.html:29 cps/templates/index.html:76 -#: cps/templates/search.html:33 cps/templates/shelf.html:22 +#: cps/templates/author.html:29 cps/templates/index.html:77 +#: cps/templates/search.html:34 cps/templates/shelf.html:23 msgid "Sort title in reverse alphabetical order" msgstr "Trier le titre dans l’ordre alphabétique inverse" -#: cps/templates/author.html:30 cps/templates/index.html:79 -#: cps/templates/search.html:36 cps/templates/shelf.html:25 +#: cps/templates/author.html:30 cps/templates/index.html:80 +#: cps/templates/search.html:37 cps/templates/shelf.html:26 msgid "Sort according to publishing date, newest first" msgstr "Trier en fonction de la date de publication, le plus récent en premier" -#: cps/templates/author.html:31 cps/templates/index.html:80 -#: cps/templates/search.html:37 cps/templates/shelf.html:26 +#: cps/templates/author.html:31 cps/templates/index.html:81 +#: cps/templates/search.html:38 cps/templates/shelf.html:27 msgid "Sort according to publishing date, oldest first" msgstr "Trier en fonction de la date de publication, le plus ancien en premier" #: cps/templates/author.html:56 cps/templates/author.html:115 -#: cps/templates/index.html:29 cps/templates/index.html:112 -#: cps/templates/search.html:66 cps/templates/shelf.html:54 +#: cps/templates/index.html:30 cps/templates/index.html:113 +#: cps/templates/search.html:67 cps/templates/shelf.html:55 msgid "reduce" msgstr "réduire" @@ -1681,165 +1778,166 @@ msgstr "réduire" msgid "More by" msgstr "Plus de" -#: cps/templates/book_edit.html:10 +#: cps/templates/book_edit.html:11 msgid "Delete Book" msgstr "Supprimer le livre" -#: cps/templates/book_edit.html:13 +#: cps/templates/book_edit.html:14 msgid "Delete formats:" msgstr "Supprimer les formats :" -#: cps/templates/book_edit.html:24 +#: cps/templates/book_edit.html:25 msgid "Convert book format:" msgstr "Convertir le format du livre :" -#: cps/templates/book_edit.html:29 +#: cps/templates/book_edit.html:30 msgid "Convert from:" msgstr "Convertir depuis :" -#: cps/templates/book_edit.html:31 cps/templates/book_edit.html:38 +#: cps/templates/book_edit.html:32 cps/templates/book_edit.html:39 msgid "select an option" msgstr "choisir une option" -#: cps/templates/book_edit.html:36 +#: cps/templates/book_edit.html:37 msgid "Convert to:" msgstr "Convertir vers :" -#: cps/templates/book_edit.html:45 +#: cps/templates/book_edit.html:46 msgid "Convert book" msgstr "Convertir le livre" -#: cps/templates/book_edit.html:55 cps/templates/search_form.html:8 +#: cps/templates/book_edit.html:56 cps/templates/search_form.html:8 msgid "Book Title" msgstr "Titre du livre" -#: cps/templates/book_edit.html:62 cps/templates/book_edit.html:270 -#: cps/templates/book_edit.html:288 cps/templates/search_form.html:12 +#: cps/templates/book_edit.html:63 cps/templates/book_edit.html:271 +#: cps/templates/book_edit.html:289 cps/templates/search_form.html:12 msgid "Author" msgstr "Auteur" -#: cps/templates/book_edit.html:67 cps/templates/book_edit.html:275 -#: cps/templates/book_edit.html:290 cps/templates/search_form.html:153 +#: cps/templates/book_edit.html:68 cps/templates/book_edit.html:276 +#: cps/templates/book_edit.html:291 cps/templates/search_form.html:153 msgid "Description" msgstr "Description" -#: cps/templates/book_edit.html:72 +#: cps/templates/book_edit.html:73 msgid "Identifiers" msgstr "Identifiants" -#: cps/templates/book_edit.html:76 cps/templates/book_edit.html:299 +#: cps/templates/book_edit.html:77 cps/templates/book_edit.html:300 msgid "Identifier Type" msgstr "Type d'identifiant" -#: cps/templates/book_edit.html:77 cps/templates/book_edit.html:300 +#: cps/templates/book_edit.html:78 cps/templates/book_edit.html:301 msgid "Identifier Value" msgstr "Valeur d'identifiant" -#: cps/templates/book_edit.html:78 cps/templates/book_edit.html:301 +#: cps/templates/book_edit.html:79 cps/templates/book_edit.html:302 #: cps/templates/user_table.html:24 msgid "Remove" msgstr "Supprimer" -#: cps/templates/book_edit.html:82 +#: cps/templates/book_edit.html:83 msgid "Add Identifier" msgstr "Ajouter un identifiant" -#: cps/templates/book_edit.html:86 cps/templates/search_form.html:51 +#: cps/templates/book_edit.html:87 cps/templates/search_form.html:51 msgid "Tags" msgstr "Étiquettes" -#: cps/templates/book_edit.html:94 +#: cps/templates/book_edit.html:95 msgid "Series ID" msgstr "ID de séries" -#: cps/templates/book_edit.html:98 +#: cps/templates/book_edit.html:99 msgid "Rating" msgstr "Évaluation" -#: cps/templates/book_edit.html:103 +#: cps/templates/book_edit.html:104 msgid "Fetch Cover from URL (JPEG - Image will be downloaded and stored in database)" msgstr "Obtenir la couverture à partir d'une URL (JPEG - l'image sera téléchargée et sauvegardée dans la base de données)" -#: cps/templates/book_edit.html:107 +#: cps/templates/book_edit.html:108 msgid "Upload Cover from Local Disk" msgstr "Téléverser la couverture depuis un fichier en local" -#: cps/templates/book_edit.html:112 +#: cps/templates/book_edit.html:113 msgid "Published Date" msgstr "Date de publication" -#: cps/templates/book_edit.html:121 cps/templates/book_edit.html:272 -#: cps/templates/book_edit.html:289 cps/templates/detail.html:164 +#: cps/templates/book_edit.html:122 cps/templates/book_edit.html:273 +#: cps/templates/book_edit.html:290 cps/templates/detail.html:165 #: cps/templates/search_form.html:16 msgid "Publisher" msgstr "Éditeur" -#: cps/templates/book_edit.html:125 cps/templates/detail.html:131 +#: cps/templates/book_edit.html:126 cps/templates/detail.html:132 #: cps/templates/user_edit.html:33 msgid "Language" msgstr "Langue" -#: cps/templates/book_edit.html:135 cps/templates/search_form.html:45 +#: cps/templates/book_edit.html:136 cps/templates/search_form.html:45 #: cps/templates/search_form.html:164 msgid "Yes" msgstr "Oui" -#: cps/templates/book_edit.html:136 cps/templates/search_form.html:46 +#: cps/templates/book_edit.html:137 cps/templates/search_form.html:46 #: cps/templates/search_form.html:165 msgid "No" msgstr "Non" -#: cps/templates/book_edit.html:200 +#: cps/templates/book_edit.html:201 msgid "Upload Format" msgstr "Format du fichier téléversé" -#: cps/templates/book_edit.html:208 +#: cps/templates/book_edit.html:209 msgid "View Book on Save" msgstr "Voir le livre lors de la sauvegarde" -#: cps/templates/book_edit.html:211 cps/templates/book_edit.html:229 +#: cps/templates/book_edit.html:212 cps/templates/book_edit.html:230 msgid "Fetch Metadata" msgstr "Obtenir les métadonnées" -#: cps/templates/book_edit.html:212 cps/templates/config_db.html:53 +#: cps/templates/book_edit.html:213 cps/templates/config_db.html:53 #: cps/templates/config_edit.html:358 cps/templates/config_view_edit.html:174 -#: cps/templates/email_edit.html:65 cps/templates/shelf_edit.html:25 -#: cps/templates/shelf_order.html:41 cps/templates/user_edit.html:142 +#: cps/templates/email_edit.html:65 cps/templates/schedule_edit.html:40 +#: cps/templates/shelf_edit.html:25 cps/templates/shelf_order.html:41 +#: cps/templates/user_edit.html:142 msgid "Save" msgstr "Sauvegarder" -#: cps/templates/book_edit.html:232 +#: cps/templates/book_edit.html:233 msgid "Keyword" msgstr "Mot-clé" -#: cps/templates/book_edit.html:233 +#: cps/templates/book_edit.html:234 #, fuzzy msgid "Search keyword" msgstr " Rechercher le mot-clé " -#: cps/templates/book_edit.html:239 +#: cps/templates/book_edit.html:240 msgid "Click the cover to load metadata to the form" msgstr "Cliquer sur la couverture pour importer les métadonnées dans le formulaire" -#: cps/templates/book_edit.html:246 cps/templates/book_edit.html:285 +#: cps/templates/book_edit.html:247 cps/templates/book_edit.html:286 msgid "Loading..." msgstr "Chargement..." -#: cps/templates/book_edit.html:250 cps/templates/layout.html:63 -#: cps/templates/layout.html:186 cps/templates/modal_dialogs.html:34 +#: cps/templates/book_edit.html:251 cps/templates/layout.html:64 +#: cps/templates/layout.html:187 cps/templates/modal_dialogs.html:34 #: cps/templates/user_edit.html:163 msgid "Close" msgstr "Fermer" -#: cps/templates/book_edit.html:277 cps/templates/book_edit.html:291 +#: cps/templates/book_edit.html:278 cps/templates/book_edit.html:292 msgid "Source" msgstr "Source" -#: cps/templates/book_edit.html:286 +#: cps/templates/book_edit.html:287 msgid "Search error!" msgstr "Erreur lors de la recherche!" -#: cps/templates/book_edit.html:287 +#: cps/templates/book_edit.html:288 msgid "No Result(s) found! Please try another keyword." msgstr "Aucun résultat. Veuillez essayer avec un nouveau mot clé." @@ -1948,6 +2046,7 @@ msgid "Enter " msgstr "Identifiants" #: cps/templates/book_table.html:113 cps/templates/modal_dialogs.html:46 +#: cps/templates/tasks.html:36 msgid "Are you really sure?" msgstr "Êtes-vous vraiment sûr?" @@ -2362,62 +2461,62 @@ msgstr "Ajouter les étiquettes autorisées/refusées" msgid "Add Allowed/Denied custom column values" msgstr "Ajouter les valeurs de colonnes autorisées/refusées" -#: cps/templates/detail.html:60 cps/templates/detail.html:69 +#: cps/templates/detail.html:61 cps/templates/detail.html:70 msgid "Read in Browser" msgstr "Lire dans le navigateur" -#: cps/templates/detail.html:77 cps/templates/detail.html:94 +#: cps/templates/detail.html:78 cps/templates/detail.html:95 msgid "Listen in Browser" msgstr "Écouter dans le navigateur" -#: cps/templates/detail.html:124 +#: cps/templates/detail.html:125 #, fuzzy, python-format msgid "Book %(index)s of %(range)s" msgstr "Livre %(index)s sur %(range)s" -#: cps/templates/detail.html:173 +#: cps/templates/detail.html:174 msgid "Published" msgstr "Publié" -#: cps/templates/detail.html:221 +#: cps/templates/detail.html:222 msgid "Mark As Unread" msgstr "Marquer comme non lu" -#: cps/templates/detail.html:221 +#: cps/templates/detail.html:222 msgid "Mark As Read" msgstr "Marquer comme lu" -#: cps/templates/detail.html:222 +#: cps/templates/detail.html:223 msgid "Read" msgstr "Lu" -#: cps/templates/detail.html:231 +#: cps/templates/detail.html:232 msgid "Restore from archive" msgstr "Restaurer à partir de l'archive" -#: cps/templates/detail.html:231 +#: cps/templates/detail.html:232 msgid "Add to archive" msgstr "Ajouter comme archive" -#: cps/templates/detail.html:232 +#: cps/templates/detail.html:233 msgid "Archived" msgstr "Archivé" -#: cps/templates/detail.html:243 +#: cps/templates/detail.html:244 msgid "Description:" msgstr "Description :" -#: cps/templates/detail.html:256 cps/templates/search.html:15 +#: cps/templates/detail.html:257 cps/templates/search.html:16 msgid "Add to shelf" msgstr "Ajouter à l'étagère" -#: cps/templates/detail.html:267 cps/templates/detail.html:284 -#: cps/templates/feed.xml:79 cps/templates/layout.html:137 -#: cps/templates/search.html:21 +#: cps/templates/detail.html:268 cps/templates/detail.html:285 +#: cps/templates/feed.xml:79 cps/templates/layout.html:138 +#: cps/templates/search.html:22 msgid "(Public)" msgstr "(Public)" -#: cps/templates/detail.html:298 +#: cps/templates/detail.html:299 msgid "Edit Metadata" msgstr "Éditer les métadonnées" @@ -2461,7 +2560,7 @@ msgstr "Limite de la taille de la pièce jointe" msgid "Save and Send Test E-mail" msgstr "Sauvegarder les réglages et tester l’envoi d’un courriel" -#: cps/templates/email_edit.html:70 cps/templates/layout.html:29 +#: cps/templates/email_edit.html:70 cps/templates/layout.html:30 #: cps/templates/shelf_order.html:42 cps/templates/user_table.html:174 msgid "Back" msgstr "Retour" @@ -2487,7 +2586,7 @@ msgstr "Saisir le nom du domaine" msgid "Denied Domains (Blacklist)" msgstr "Domaines refusés (Liste noire)" -#: cps/templates/feed.xml:21 cps/templates/layout.html:170 +#: cps/templates/feed.xml:21 cps/templates/layout.html:171 msgid "Next" msgstr "Suivant" @@ -2500,6 +2599,10 @@ msgstr "Ouvrir le fichier .kobo/Kobo eReader.conf dans un éditeur de texte et a msgid "Kobo Token:" msgstr "Jeton de synchro Kobo" +#: cps/templates/grid.html:21 +msgid "List" +msgstr "" + #: cps/templates/http_error.html:31 #, fuzzy msgid "Calibre-Web Instance is unconfigured, please contact your administrator" @@ -2517,29 +2620,29 @@ msgstr "Retour à l’accueil" msgid "Logout User" msgstr "Déconnecter l’utilisateur" -#: cps/templates/index.html:70 +#: cps/templates/index.html:71 msgid "Sort ascending according to download count" msgstr "Trier de manière ascendante selon le nombre de téléchargements" -#: cps/templates/index.html:71 +#: cps/templates/index.html:72 msgid "Sort descending according to download count" msgstr "Trier de manière descendante selon le nombre de téléchargements" -#: cps/templates/index.html:77 cps/templates/search.html:34 -#: cps/templates/shelf.html:23 +#: cps/templates/index.html:78 cps/templates/search.html:35 +#: cps/templates/shelf.html:24 msgid "Sort authors in alphabetical order" msgstr "Trier les auteurs dans l’ordre alphabétique" -#: cps/templates/index.html:78 cps/templates/search.html:35 -#: cps/templates/shelf.html:24 +#: cps/templates/index.html:79 cps/templates/search.html:36 +#: cps/templates/shelf.html:25 msgid "Sort authors in reverse alphabetical order" msgstr "Trier les auteurs dans l’ordre alphabétique inverse" -#: cps/templates/index.html:82 +#: cps/templates/index.html:83 msgid "Sort ascending according to series index" msgstr "Trier par ordre croissant en fonction de l’index de série" -#: cps/templates/index.html:83 +#: cps/templates/index.html:84 msgid "Sort descending according to series index" msgstr "Trier par ordre décroissant en fonction de l’index de série" @@ -2603,7 +2706,7 @@ msgstr "Livres classés par évaluation" msgid "Books ordered by file formats" msgstr "Livres classés par formats de fichiers" -#: cps/templates/index.xml:119 cps/templates/layout.html:135 +#: cps/templates/index.xml:119 cps/templates/layout.html:136 #: cps/templates/search_form.html:87 msgid "Shelves" msgstr "Etagères" @@ -2612,63 +2715,67 @@ msgstr "Etagères" msgid "Books organized in shelves" msgstr "Livres organisés par étagères" -#: cps/templates/layout.html:29 +#: cps/templates/layout.html:30 msgid "Home" msgstr "Accueil" -#: cps/templates/layout.html:35 +#: cps/templates/layout.html:36 msgid "Toggle Navigation" msgstr "Basculer la navigation" -#: cps/templates/layout.html:46 +#: cps/templates/layout.html:47 msgid "Search Library" msgstr "Chercher dans librairie" -#: cps/templates/layout.html:63 cps/templates/layout.html:117 +#: cps/templates/layout.html:64 cps/templates/layout.html:118 msgid "Uploading..." msgstr "Téléversement en cours..." -#: cps/templates/layout.html:63 +#: cps/templates/layout.html:64 msgid "Error" msgstr "Erreur" -#: cps/templates/layout.html:63 +#: cps/templates/layout.html:64 msgid "Upload done, processing, please wait..." msgstr "Téléversement terminé, traitement en cours, veuillez patienter…." -#: cps/templates/layout.html:76 cps/templates/read.html:72 +#: cps/templates/layout.html:77 cps/templates/read.html:72 #: cps/templates/readcbr.html:84 cps/templates/readcbr.html:108 msgid "Settings" msgstr "Paramètres" -#: cps/templates/layout.html:78 +#: cps/templates/layout.html:79 msgid "Account" msgstr "Compte" -#: cps/templates/layout.html:80 +#: cps/templates/layout.html:81 msgid "Logout" msgstr "Déconnexion" -#: cps/templates/layout.html:118 +#: cps/templates/layout.html:119 msgid "Please do not refresh the page" msgstr "Veuillez ne pas rafraîchir la page" -#: cps/templates/layout.html:128 +#: cps/templates/layout.html:129 msgid "Browse" msgstr "Explorer" -#: cps/templates/layout.html:141 cps/templates/stats.html:3 +#: cps/templates/layout.html:142 cps/templates/stats.html:3 msgid "About" msgstr "À propos" -#: cps/templates/layout.html:155 +#: cps/templates/layout.html:156 msgid "Previous" msgstr "Précédent" -#: cps/templates/layout.html:182 +#: cps/templates/layout.html:183 msgid "Book Details" msgstr "Détails du livre" +#: cps/templates/list.html:22 +msgid "Grid" +msgstr "" + #: cps/templates/login.html:18 msgid "Remember Me" msgstr "Se rappeler de moi" @@ -2773,7 +2880,7 @@ msgstr "Répertoire parent" msgid "Select" msgstr "Sélectionner" -#: cps/templates/modal_dialogs.html:134 +#: cps/templates/modal_dialogs.html:134 cps/templates/tasks.html:45 #, fuzzy msgid "Ok" msgstr "Livre" @@ -2955,15 +3062,23 @@ msgstr "Une fois fait, vous serez automatiquement connecté à cet appareil." msgid "This verification link will expire in 10 minutes." msgstr "Le lien expirera après 10 minutes." -#: cps/templates/search.html:5 +#: cps/templates/schedule_edit.html:29 +msgid "Generate Book Cover Thumbnails" +msgstr "" + +#: cps/templates/schedule_edit.html:33 +msgid "Generate Series Cover Thumbnails" +msgstr "" + +#: cps/templates/search.html:6 msgid "No Results Found" msgstr "Aucun résultat trouvé" -#: cps/templates/search.html:6 +#: cps/templates/search.html:7 msgid "Search Term:" msgstr "Chercher le terme:" -#: cps/templates/search.html:8 +#: cps/templates/search.html:9 msgid "Results for:" msgstr "Résultats pour :" @@ -3016,23 +3131,23 @@ msgstr "Depuis" msgid "To:" msgstr "Vers" -#: cps/templates/shelf.html:12 +#: cps/templates/shelf.html:13 msgid "Delete this Shelf" msgstr "Supprimer cette étagère" -#: cps/templates/shelf.html:13 +#: cps/templates/shelf.html:14 msgid "Edit Shelf Properties" msgstr "Éditer les propriétés de l’étagère" -#: cps/templates/shelf.html:16 +#: cps/templates/shelf.html:17 msgid "Arrange books manually" msgstr "Organiser les livres manuellement" -#: cps/templates/shelf.html:17 +#: cps/templates/shelf.html:18 msgid "Disable Change order" msgstr "Désactiver l’ordre de modification" -#: cps/templates/shelf.html:17 +#: cps/templates/shelf.html:18 msgid "Enable Change order" msgstr "Activer l’ordre de modification" @@ -3077,8 +3192,8 @@ msgid "System Statistics" msgstr "Statistiques système" #: cps/templates/stats.html:33 -msgid "Program Library" -msgstr "Bibliothèque logicielle" +msgid "Program" +msgstr "" #: cps/templates/stats.html:34 msgid "Installed Version" @@ -3108,6 +3223,18 @@ msgstr "Durée" msgid "Start Time" msgstr "Démarrage" +#: cps/templates/tasks.html:20 +msgid "Actions" +msgstr "" + +#: cps/templates/tasks.html:40 +msgid "This task will be cancelled. Any progress made by this task will be saved." +msgstr "" + +#: cps/templates/tasks.html:41 +msgid "If this is a scheduled task, it will be re-ran during the next scheduled time." +msgstr "" + #: cps/templates/user_edit.html:20 msgid "Reset user Password" msgstr "Réinitialiser le mot de passe de l’utilisateur" diff --git a/cps/translations/hu/LC_MESSAGES/messages.mo b/cps/translations/hu/LC_MESSAGES/messages.mo index 2faa8dc49fb56bd8c43df08b45aab9e75559dc40..a141af2a011002f43c88ee3aad239355cdd63208 100644 GIT binary patch delta 5789 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 YoAZ}EyXa(Xd41uy@qYDn1qVF-2VI7aBLDyZ diff --git a/cps/translations/hu/LC_MESSAGES/messages.po b/cps/translations/hu/LC_MESSAGES/messages.po index 4d4bd63b..2d11f558 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: 2022-04-18 20:01+0200\n" +"POT-Creation-Date: 2022-05-01 13:22+0200\n" "PO-Revision-Date: 2019-04-06 23:36+0200\n" "Last-Translator: \n" "Language: hu\n" @@ -16,593 +16,618 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.9.1\n" +"Generated-By: Babel 2.8.0\n" -#: cps/about.py:86 +#: cps/about.py:84 msgid "Statistics" msgstr "Statisztika" -#: cps/admin.py:141 +#: cps/admin.py:146 msgid "Server restarted, please reload page" msgstr "A kiszolgáló újraindult, tölts be újra az oldalt!" -#: cps/admin.py:143 +#: cps/admin.py:148 msgid "Performing shutdown of server, please close window" msgstr "A kiszolgáló leállítása folyamatban, zárd be ezt az ablakot" -#: cps/admin.py:151 +#: cps/admin.py:156 msgid "Reconnect successful" msgstr "" -#: cps/admin.py:154 +#: cps/admin.py:159 msgid "Unknown command" msgstr "" -#: cps/admin.py:176 cps/editbooks.py:713 cps/editbooks.py:892 -#: cps/editbooks.py:894 cps/editbooks.py:930 cps/editbooks.py:947 -#: cps/updater.py:608 cps/uploader.py:93 cps/uploader.py:103 +#: cps/admin.py:192 cps/editbooks.py:571 cps/editbooks.py:573 +#: cps/editbooks.py:609 cps/editbooks.py:626 cps/editbooks.py:1233 +#: cps/updater.py:613 cps/uploader.py:87 cps/uploader.py:97 msgid "Unknown" msgstr "Ismeretlen" -#: cps/admin.py:197 +#: cps/admin.py:217 msgid "Admin page" msgstr "Rendszergazda oldala" -#: cps/admin.py:217 +#: cps/admin.py:237 msgid "Basic Configuration" msgstr "Alapvető beállítások" -#: cps/admin.py:255 +#: cps/admin.py:275 msgid "UI Configuration" msgstr "Felhasználói felület beállításai" -#: cps/admin.py:289 cps/templates/admin.html:51 +#: cps/admin.py:309 cps/templates/admin.html:51 #, fuzzy msgid "Edit Users" msgstr "Rendszergazda felhasználó" -#: cps/admin.py:333 cps/opds.py:529 cps/templates/grid.html:13 +#: cps/admin.py:353 cps/opds.py:532 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "" -#: cps/admin.py:360 cps/admin.py:1648 +#: cps/admin.py:380 cps/admin.py:1365 msgid "User not found" msgstr "" -#: cps/admin.py:374 +#: cps/admin.py:394 msgid "{} users deleted successfully" msgstr "" -#: cps/admin.py:397 cps/templates/config_view_edit.html:133 +#: cps/admin.py:417 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:418 cps/admin.py:424 +#: cps/admin.py:438 cps/admin.py:444 msgid "Malformed request" msgstr "" -#: cps/admin.py:436 cps/admin.py:1526 +#: cps/admin.py:456 cps/admin.py:1962 msgid "Guest Name can't be changed" msgstr "" -#: cps/admin.py:448 +#: cps/admin.py:468 msgid "Guest can't have this role" msgstr "" -#: cps/admin.py:460 cps/admin.py:1484 +#: cps/admin.py:480 cps/admin.py:1920 msgid "No admin user remaining, can't remove admin role" msgstr "" -#: cps/admin.py:464 cps/admin.py:478 +#: cps/admin.py:484 cps/admin.py:498 msgid "Value has to be true or false" msgstr "" -#: cps/admin.py:466 +#: cps/admin.py:486 msgid "Invalid role" msgstr "" -#: cps/admin.py:470 +#: cps/admin.py:490 msgid "Guest can't have this view" msgstr "" -#: cps/admin.py:480 +#: cps/admin.py:500 msgid "Invalid view" msgstr "" -#: cps/admin.py:483 +#: cps/admin.py:503 msgid "Guest's Locale is determined automatically and can't be set" msgstr "" -#: cps/admin.py:487 +#: cps/admin.py:507 msgid "No Valid Locale Given" msgstr "" -#: cps/admin.py:498 +#: cps/admin.py:518 msgid "No Valid Book Language Given" msgstr "" -#: cps/admin.py:500 cps/editbooks.py:1267 +#: cps/admin.py:520 cps/editbooks.py:438 msgid "Parameter not found" msgstr "" -#: cps/admin.py:553 +#: cps/admin.py:557 msgid "Invalid Read Column" msgstr "" -#: cps/admin.py:559 +#: cps/admin.py:563 msgid "Invalid Restricted Column" msgstr "" -#: cps/admin.py:579 cps/admin.py:1355 +#: cps/admin.py:583 cps/admin.py:1791 msgid "Calibre-Web configuration updated" msgstr "A Calibre-Web konfigurációja frissítve." -#: cps/admin.py:591 +#: cps/admin.py:595 msgid "Do you really want to delete the Kobo Token?" msgstr "" -#: cps/admin.py:593 +#: cps/admin.py:597 msgid "Do you really want to delete this domain?" msgstr "" -#: cps/admin.py:595 +#: cps/admin.py:599 msgid "Do you really want to delete this user?" msgstr "" -#: cps/admin.py:597 +#: cps/admin.py:601 msgid "Are you sure you want to delete this shelf?" msgstr "Valóban törölni akarod a polcot?" -#: cps/admin.py:599 +#: cps/admin.py:603 #, 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:601 +#: cps/admin.py:605 msgid "Are you sure you want to change visible book languages for selected user(s)?" msgstr "" -#: cps/admin.py:603 +#: cps/admin.py:607 msgid "Are you sure you want to change the selected role for the selected user(s)?" msgstr "" -#: cps/admin.py:605 +#: cps/admin.py:609 #, 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:607 +#: cps/admin.py:611 msgid "Are you sure you want to change the selected visibility restrictions for the selected user(s)?" msgstr "" -#: cps/admin.py:610 +#: cps/admin.py:614 #, 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:612 +#: cps/admin.py:616 #, 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:614 +#: cps/admin.py:618 +msgid "Calibre-Web will search for updated Covers and update Cover Thumbnails, this may take a while?" +msgstr "" + +#: cps/admin.py:620 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:764 -msgid "Tag not found" -msgstr "" - -#: cps/admin.py:776 -msgid "Invalid Action" -msgstr "" - -#: cps/admin.py:893 cps/admin.py:899 cps/admin.py:909 cps/admin.py:919 +#: cps/admin.py:862 cps/admin.py:868 cps/admin.py:878 cps/admin.py:888 #: cps/templates/modal_dialogs.html:29 cps/templates/user_table.html:41 #: cps/templates/user_table.html:58 msgid "Deny" msgstr "" -#: cps/admin.py:895 cps/admin.py:901 cps/admin.py:911 cps/admin.py:921 +#: cps/admin.py:864 cps/admin.py:870 cps/admin.py:880 cps/admin.py:890 #: cps/templates/modal_dialogs.html:28 cps/templates/user_table.html:44 #: cps/templates/user_table.html:61 msgid "Allow" msgstr "" -#: cps/admin.py:936 +#: cps/admin.py:905 msgid "{} sync entries deleted" msgstr "" -#: cps/admin.py:1059 +#: cps/admin.py:953 +msgid "Tag not found" +msgstr "" + +#: cps/admin.py:965 +msgid "Invalid Action" +msgstr "" + +#: cps/admin.py:1080 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "" -#: cps/admin.py:1104 +#: cps/admin.py:1125 msgid "Logfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1110 +#: cps/admin.py:1131 msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1140 +#: cps/admin.py:1161 msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgstr "" -#: cps/admin.py:1146 +#: cps/admin.py:1167 msgid "Please Enter a LDAP Service Account and Password" msgstr "" -#: cps/admin.py:1149 +#: cps/admin.py:1170 msgid "Please Enter a LDAP Service Account" msgstr "" -#: cps/admin.py:1154 +#: cps/admin.py:1175 #, python-format msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1156 +#: cps/admin.py:1177 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1160 +#: cps/admin.py:1181 #, python-format msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1162 +#: cps/admin.py:1183 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1169 +#: cps/admin.py:1190 #, python-format msgid "LDAP Member User Filter needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1171 +#: cps/admin.py:1192 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1178 +#: cps/admin.py:1199 msgid "LDAP CACertificate, Certificate or Key Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1223 cps/admin.py:1339 cps/admin.py:1437 cps/admin.py:1554 -#: cps/admin.py:1623 cps/editbooks.py:678 cps/editbooks.py:882 -#: cps/editbooks.py:1130 cps/shelf.py:100 cps/shelf.py:160 cps/shelf.py:203 -#: cps/shelf.py:278 cps/shelf.py:343 cps/shelf.py:380 cps/shelf.py:456 -#: cps/web.py:1742 +#: cps/admin.py:1230 cps/admin.py:1852 +msgid "Add new user" +msgstr "Új felhasználó hozzáadása" + +#: cps/admin.py:1239 cps/templates/admin.html:100 +msgid "Edit E-mail Server Settings" +msgstr "SMTP beállítások változtatása" + +#: cps/admin.py:1258 +msgid "Gmail Account Verification Successful" +msgstr "" + +#: cps/admin.py:1277 cps/admin.py:1658 cps/admin.py:1775 cps/admin.py:1873 +#: cps/admin.py:1990 cps/editbooks.py:227 cps/editbooks.py:301 +#: cps/editbooks.py:1196 cps/shelf.py:82 cps/shelf.py:142 cps/shelf.py:185 +#: cps/shelf.py:235 cps/shelf.py:272 cps/shelf.py:343 cps/shelf.py:457 +#: cps/tasks/convert.py:136 cps/web.py:1413 #, python-format msgid "Database error: %(error)s." msgstr "" -#: cps/admin.py:1235 -msgid "DB Location is not Valid, Please Enter Correct Path" -msgstr "" - -#: cps/admin.py:1253 -msgid "DB is not Writeable" -msgstr "" - -#: cps/admin.py:1266 -msgid "Keyfile Location is not Valid, Please Enter Correct Path" -msgstr "" - -#: cps/admin.py:1270 -msgid "Certfile Location is not Valid, Please Enter Correct Path" -msgstr "" - -#: cps/admin.py:1378 -#, fuzzy -msgid "Database Settings updated" -msgstr "Az e-mail kiszolgáló beállításai frissítve." - -#: cps/admin.py:1386 -#, fuzzy -msgid "Database Configuration" -msgstr "Funkciók beállítása" - -#: cps/admin.py:1402 cps/web.py:1557 -msgid "Please fill out all fields!" -msgstr "Az összes mezőt ki kell tölteni!" - -#: cps/admin.py:1410 -msgid "E-mail is not from valid domain" -msgstr "Az e-mail tartománya nem érvényes." - -#: cps/admin.py:1416 cps/admin.py:1576 -msgid "Add new user" -msgstr "Új felhasználó hozzáadása" - -#: cps/admin.py:1427 -#, python-format -msgid "User '%(user)s' created" -msgstr "A következő felhasználó létrehozva: %(user)s" - -#: cps/admin.py:1433 -#, fuzzy -msgid "Found an existing account for this e-mail address or name." -msgstr "Már létezik felhasználó ehhez az e-mail címhez vagy felhasználói névhez." - -#: cps/admin.py:1463 -#, python-format -msgid "User '%(nick)s' deleted" -msgstr "A felhasználó törölve: %(nick)s" - -#: cps/admin.py:1465 cps/admin.py:1466 -msgid "Can't delete Guest User" -msgstr "" - -#: cps/admin.py:1469 -msgid "No admin user remaining, can't delete user" -msgstr "" - -#: cps/admin.py:1542 cps/admin.py:1667 -#, python-format -msgid "Edit User %(nick)s" -msgstr " A felhasználó szerkesztése: %(nick)s" - -#: cps/admin.py:1546 -#, python-format -msgid "User '%(nick)s' updated" -msgstr "A felhasználó frissítve: %(nick)s" - -#: cps/admin.py:1550 cps/admin.py:1682 cps/web.py:1582 cps/web.py:1642 -msgid "An unknown error occurred. Please try again later." -msgstr "Ismeretlen hiba történt. Próbáld újra később!" - -#: cps/admin.py:1585 cps/templates/admin.html:100 -msgid "Edit E-mail Server Settings" -msgstr "SMTP beállítások változtatása" - -#: cps/admin.py:1604 -msgid "Gmail Account Verification Successful" -msgstr "" - -#: cps/admin.py:1630 +#: cps/admin.py:1284 #, python-format msgid "Test e-mail queued for sending to %(email)s, please check Tasks for result" msgstr "" -#: cps/admin.py:1633 +#: cps/admin.py:1287 #, 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:1635 +#: cps/admin.py:1289 msgid "Please configure your e-mail address first..." msgstr "" -#: cps/admin.py:1637 +#: cps/admin.py:1291 msgid "E-mail server settings updated" msgstr "Az e-mail kiszolgáló beállításai frissítve." -#: cps/admin.py:1679 +#: cps/admin.py:1314 cps/templates/admin.html:191 +msgid "Edit Scheduled Tasks Settings" +msgstr "" + +#: cps/admin.py:1326 +msgid "Invalid start time for task specified" +msgstr "" + +#: cps/admin.py:1331 +msgid "Invalid duration for task specified" +msgstr "" + +#: cps/admin.py:1340 +msgid "Scheduled tasks settings updated" +msgstr "" + +#: cps/admin.py:1350 cps/admin.py:1399 cps/admin.py:1986 cps/web.py:1254 +#: cps/web.py:1315 +msgid "An unknown error occurred. Please try again later." +msgstr "Ismeretlen hiba történt. Próbáld újra később!" + +#: cps/admin.py:1354 +msgid "Settings DB is not Writeable" +msgstr "" + +#: cps/admin.py:1384 cps/admin.py:1978 +#, python-format +msgid "Edit User %(nick)s" +msgstr " A felhasználó szerkesztése: %(nick)s" + +#: cps/admin.py:1396 #, python-format msgid "Password for user %(user)s reset" msgstr "A(z) %(user)s felhasználó jelszavának alaphelyzetbe állítása" -#: cps/admin.py:1685 cps/web.py:1522 +#: cps/admin.py:1402 cps/web.py:1194 msgid "Please configure the SMTP mail settings first..." msgstr "Először be kell állítani az SMTP levelező beállításokat..." -#: cps/admin.py:1696 +#: cps/admin.py:1413 msgid "Logfile viewer" msgstr "" -#: cps/admin.py:1762 +#: cps/admin.py:1479 msgid "Requesting update package" msgstr "Frissítési csomag kérése" -#: cps/admin.py:1763 +#: cps/admin.py:1480 msgid "Downloading update package" msgstr "Frissítési csomag letöltése" -#: cps/admin.py:1764 +#: cps/admin.py:1481 msgid "Unzipping update package" msgstr "Frissítési csomag kitömörítése" -#: cps/admin.py:1765 +#: cps/admin.py:1482 msgid "Replacing files" msgstr "Fájlok cserélése" -#: cps/admin.py:1766 +#: cps/admin.py:1483 msgid "Database connections are closed" msgstr "Adatbázis kapcsolatok lezárva" -#: cps/admin.py:1767 +#: cps/admin.py:1484 msgid "Stopping server" msgstr "Szerver leállítása" -#: cps/admin.py:1768 +#: cps/admin.py:1485 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:1769 cps/admin.py:1770 cps/admin.py:1771 cps/admin.py:1772 -#: cps/admin.py:1773 cps/admin.py:1774 +#: cps/admin.py:1486 cps/admin.py:1487 cps/admin.py:1488 cps/admin.py:1489 +#: cps/admin.py:1490 cps/admin.py:1491 msgid "Update failed:" msgstr "A frissítés nem sikerült:" -#: cps/admin.py:1769 cps/updater.py:384 cps/updater.py:619 cps/updater.py:621 +#: cps/admin.py:1486 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 msgid "HTTP Error" msgstr "HTTP hiba" -#: cps/admin.py:1770 cps/updater.py:386 cps/updater.py:623 +#: cps/admin.py:1487 cps/updater.py:391 cps/updater.py:628 msgid "Connection error" msgstr "Kapcsolódási hiba" -#: cps/admin.py:1771 cps/updater.py:388 cps/updater.py:625 +#: cps/admin.py:1488 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:1772 cps/updater.py:390 cps/updater.py:627 +#: cps/admin.py:1489 cps/updater.py:395 cps/updater.py:632 msgid "General error" msgstr "Általános hiba" -#: cps/admin.py:1773 +#: cps/admin.py:1490 msgid "Update file could not be saved in temp dir" msgstr "" -#: cps/admin.py:1774 +#: cps/admin.py:1491 msgid "Files could not be replaced during update" msgstr "" -#: cps/admin.py:1798 +#: cps/admin.py:1515 msgid "Failed to extract at least One LDAP User" msgstr "" -#: cps/admin.py:1843 +#: cps/admin.py:1560 msgid "Failed to Create at Least One LDAP User" msgstr "" -#: cps/admin.py:1856 +#: cps/admin.py:1573 #, python-format msgid "Error: %(ldaperror)s" msgstr "" -#: cps/admin.py:1860 +#: cps/admin.py:1577 msgid "Error: No user returned in response of LDAP server" msgstr "" -#: cps/admin.py:1893 +#: cps/admin.py:1610 msgid "At Least One LDAP User Not Found in Database" msgstr "" -#: cps/admin.py:1895 +#: cps/admin.py:1612 msgid "{} User Successfully Imported" msgstr "" -#: cps/converter.py:30 +#: cps/admin.py:1670 +msgid "DB Location is not Valid, Please Enter Correct Path" +msgstr "" + +#: cps/admin.py:1689 +msgid "DB is not Writeable" +msgstr "" + +#: cps/admin.py:1702 +msgid "Keyfile Location is not Valid, Please Enter Correct Path" +msgstr "" + +#: cps/admin.py:1706 +msgid "Certfile Location is not Valid, Please Enter Correct Path" +msgstr "" + +#: cps/admin.py:1814 +#, fuzzy +msgid "Database Settings updated" +msgstr "Az e-mail kiszolgáló beállításai frissítve." + +#: cps/admin.py:1822 +#, fuzzy +msgid "Database Configuration" +msgstr "Funkciók beállítása" + +#: cps/admin.py:1838 cps/web.py:1229 +msgid "Please fill out all fields!" +msgstr "Az összes mezőt ki kell tölteni!" + +#: cps/admin.py:1846 +msgid "E-mail is not from valid domain" +msgstr "Az e-mail tartománya nem érvényes." + +#: cps/admin.py:1863 +#, python-format +msgid "User '%(user)s' created" +msgstr "A következő felhasználó létrehozva: %(user)s" + +#: cps/admin.py:1869 +#, fuzzy +msgid "Found an existing account for this e-mail address or name." +msgstr "Már létezik felhasználó ehhez az e-mail címhez vagy felhasználói névhez." + +#: cps/admin.py:1899 +#, python-format +msgid "User '%(nick)s' deleted" +msgstr "A felhasználó törölve: %(nick)s" + +#: cps/admin.py:1901 cps/admin.py:1902 +msgid "Can't delete Guest User" +msgstr "" + +#: cps/admin.py:1905 +msgid "No admin user remaining, can't delete user" +msgstr "" + +#: cps/admin.py:1982 +#, python-format +msgid "User '%(nick)s' updated" +msgstr "A felhasználó frissítve: %(nick)s" + +#: cps/converter.py:31 msgid "not installed" msgstr "nincs telepítve" -#: cps/converter.py:31 +#: cps/converter.py:32 msgid "Execution permissions missing" msgstr "" -#: cps/db.py:674 cps/web.py:710 cps/web.py:1222 +#: cps/db.py:681 cps/search.py:134 cps/web.py:720 #, python-format msgid "Custom Column No.%(column)d is not existing in calibre database" msgstr "" -#: cps/db.py:917 cps/templates/config_edit.html:204 +#: cps/db.py:924 cps/templates/config_edit.html:204 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 -#: cps/web.py:551 cps/web.py:585 cps/web.py:646 cps/web.py:671 cps/web.py:1003 -#: cps/web.py:1032 cps/web.py:1066 cps/web.py:1093 cps/web.py:1132 +#: cps/web.py:549 cps/web.py:583 cps/web.py:656 cps/web.py:681 cps/web.py:962 +#: cps/web.py:992 cps/web.py:1027 cps/web.py:1055 cps/web.py:1094 msgid "None" msgstr "Nincs" -#: cps/editbooks.py:295 cps/editbooks.py:297 -msgid "Book Format Successfully Deleted" -msgstr "" - -#: cps/editbooks.py:304 cps/editbooks.py:306 -msgid "Book Successfully Deleted" -msgstr "" - -#: cps/editbooks.py:358 -msgid "You are missing permissions to delete books" -msgstr "" - -#: cps/editbooks.py:373 cps/editbooks.py:765 cps/web.py:518 cps/web.py:1783 -#: cps/web.py:1825 cps/web.py:1870 +#: cps/editbooks.py:109 cps/editbooks.py:890 cps/web.py:516 cps/web.py:1454 +#: cps/web.py:1496 cps/web.py:1541 msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible" msgstr "Hiba történt az e-könyv megnyitásakor. A fájl nem létezik vagy nem érhető el:" -#: cps/editbooks.py:408 -msgid "edit metadata" -msgstr "Metaadatok szerkesztése" - -#: cps/editbooks.py:457 -#, python-format -msgid "%(seriesindex)s is not a valid number, skipping" -msgstr "" - -#: cps/editbooks.py:493 cps/editbooks.py:1001 -#, fuzzy, python-format -msgid "'%(langname)s' is not a valid language" -msgstr "A(z) %(langname)s nem érvényes nyelv" - -#: cps/editbooks.py:634 -msgid "User has no rights to upload additional file formats" -msgstr "" - -#: cps/editbooks.py:639 cps/editbooks.py:1029 -#, 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:643 cps/editbooks.py:1033 -msgid "File to be uploaded must have an extension" -msgstr "A feltöltendő fájlnak kiterjesztéssel kell rendelkeznie!" - -#: cps/editbooks.py:655 -#, 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:660 -#, python-format -msgid "Failed to store file %(file)s." -msgstr "Nem sikerült elmenteni a %(file)s fájlt." - -#: cps/editbooks.py:683 -#, python-format -msgid "File format %(ext)s added to %(book)s" -msgstr "A(z) %(ext)s fájlformátum hozzáadva a könyvhez: %(book)s." - -#: cps/editbooks.py:697 cps/editbooks.py:809 +#: cps/editbooks.py:153 cps/editbooks.py:1216 msgid "User has no rights to upload cover" msgstr "" -#: cps/editbooks.py:828 +#: cps/editbooks.py:173 cps/editbooks.py:711 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "" -#: cps/editbooks.py:869 +#: cps/editbooks.py:214 msgid "Metadata successfully updated" msgstr "A metaadatok sikeresen frissültek" -#: cps/editbooks.py:887 +#: cps/editbooks.py:232 msgid "Error editing book: {}" msgstr "" -#: cps/editbooks.py:951 -msgid "Uploaded book probably exists in the library, consider to change before upload new: " -msgstr "" - -#: cps/editbooks.py:1041 -#, python-format -msgid "File %(filename)s could not saved to temp dir" -msgstr "" - -#: cps/editbooks.py:1061 -#, python-format -msgid "Failed to Move Cover File %(file)s: %(error)s" -msgstr "" - -#: cps/editbooks.py:1117 +#: cps/editbooks.py:287 #, python-format msgid "File %(file)s uploaded" msgstr "" -#: cps/editbooks.py:1143 +#: cps/editbooks.py:314 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:1151 +#: cps/editbooks.py:322 #, 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:1155 +#: cps/editbooks.py:326 #, 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:630 +msgid "Uploaded book probably exists in the library, consider to change before upload new: " +msgstr "" + +#: cps/editbooks.py:685 cps/editbooks.py:1010 +#, fuzzy, python-format +msgid "'%(langname)s' is not a valid language" +msgstr "A(z) %(langname)s nem érvényes nyelv" + +#: cps/editbooks.py:723 cps/editbooks.py:1157 +#, 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:727 cps/editbooks.py:1161 +msgid "File to be uploaded must have an extension" +msgstr "A feltöltendő fájlnak kiterjesztéssel kell rendelkeznie!" + +#: cps/editbooks.py:735 +#, python-format +msgid "File %(filename)s could not saved to temp dir" +msgstr "" + +#: cps/editbooks.py:755 +#, python-format +msgid "Failed to Move Cover File %(file)s: %(error)s" +msgstr "" + +#: cps/editbooks.py:812 cps/editbooks.py:814 +msgid "Book Format Successfully Deleted" +msgstr "" + +#: cps/editbooks.py:821 cps/editbooks.py:823 +msgid "Book Successfully Deleted" +msgstr "" + +#: cps/editbooks.py:875 +msgid "You are missing permissions to delete books" +msgstr "" + +#: cps/editbooks.py:925 +msgid "edit metadata" +msgstr "Metaadatok szerkesztése" + +#: cps/editbooks.py:974 +#, python-format +msgid "%(seriesindex)s is not a valid number, skipping" +msgstr "" + +#: cps/editbooks.py:1152 +msgid "User has no rights to upload additional file formats" +msgstr "" + +#: cps/editbooks.py:1173 +#, 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:1178 +#, python-format +msgid "Failed to store file %(file)s." +msgstr "Nem sikerült elmenteni a %(file)s fájlt." + +#: cps/editbooks.py:1201 +#, python-format +msgid "File format %(ext)s added to %(book)s" +msgstr "A(z) %(ext)s fájlformátum hozzáadva a könyvhez: %(book)s." + #: cps/gdrive.py:58 msgid "Google Drive setup not completed, try to deactivate and activate Google Drive again" msgstr "A Google Drive beállítása nem fejeződött be, próbáld kikapcsolni és újra aktíválni a Google Drive-ot." @@ -611,27 +636,27 @@ 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:81 +#: cps/helper.py:80 #, 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:87 cps/tasks/convert.py:75 +#: cps/helper.py:86 cps/tasks/convert.py:75 #, 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:92 +#: cps/helper.py:91 #, python-format msgid "%(format)s not found: %(fn)s" msgstr "%(format)s nem található: %(fn)s" -#: cps/helper.py:97 cps/helper.py:221 cps/templates/detail.html:41 -#: cps/templates/detail.html:45 +#: cps/helper.py:96 cps/helper.py:221 cps/templates/detail.html:42 +#: cps/templates/detail.html:46 msgid "Send to Kindle" msgstr "Küldés Kindle-re" -#: cps/helper.py:98 cps/helper.py:115 cps/helper.py:223 +#: cps/helper.py:97 cps/helper.py:115 cps/helper.py:223 msgid "This e-mail has been sent via Calibre-Web." msgstr "Ez az e-mail a Calibre-Web-en keresztül lett küldve." @@ -671,131 +696,111 @@ msgstr "Küldés Kindle-re" 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:353 +#: cps/helper.py:341 msgid "Read status could not set: {}" msgstr "" -#: cps/helper.py:376 +#: cps/helper.py:364 #, python-format msgid "Deleting bookfolder for book %(id)s failed, path has subfolders: %(path)s" msgstr "" -#: cps/helper.py:382 +#: cps/helper.py:370 #, python-format msgid "Deleting book %(id)s failed: %(message)s" msgstr "" -#: cps/helper.py:393 +#: cps/helper.py:381 #, python-format msgid "Deleting book %(id)s from database only, book path in database not valid: %(path)s" msgstr "" -#: cps/helper.py:458 +#: cps/helper.py:446 #, 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:529 cps/helper.py:538 +#: cps/helper.py:518 cps/helper.py:527 #, 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:572 +#: cps/helper.py:561 #, 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:592 +#: cps/helper.py:581 msgid "Error in rename file in path: {}" msgstr "" -#: cps/helper.py:610 +#: cps/helper.py:599 #, 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:651 cps/web.py:1737 +#: cps/helper.py:640 cps/web.py:1408 #, fuzzy msgid "Found an existing account for this e-mail address" msgstr "Már létezik felhasználó ehhez az e-mail címhez." -#: cps/helper.py:659 +#: cps/helper.py:648 msgid "This username is already taken" msgstr "" -#: cps/helper.py:669 +#: cps/helper.py:658 msgid "Invalid e-mail address format" msgstr "" -#: cps/helper.py:754 -msgid "Python modul 'advocate' is not installed but is needed for cover downloads" +#: cps/helper.py:808 +msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "" -#: cps/helper.py:767 +#: cps/helper.py:818 msgid "Error Downloading Cover" msgstr "" -#: cps/helper.py:770 +#: cps/helper.py:821 msgid "Cover Format Error" msgstr "" -#: cps/helper.py:773 +#: cps/helper.py:824 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "" -#: cps/helper.py:783 +#: cps/helper.py:834 msgid "Failed to create path for cover" msgstr "" -#: cps/helper.py:799 +#: cps/helper.py:850 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "" -#: cps/helper.py:810 +#: cps/helper.py:861 msgid "Only jpg/jpeg/png/webp/bmp files are supported as coverfile" msgstr "" -#: cps/helper.py:822 +#: cps/helper.py:873 msgid "Invalid cover file content" msgstr "" -#: cps/helper.py:826 +#: cps/helper.py:877 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "" -#: cps/helper.py:878 +#: cps/helper.py:929 msgid "Unrar binary file not found" msgstr "" -#: cps/helper.py:889 +#: cps/helper.py:940 msgid "Error excecuting UnRar" msgstr "" -#: cps/helper.py:937 -msgid "Waiting" -msgstr "Várakozás" - -#: cps/helper.py:939 -msgid "Failed" -msgstr "Nem sikerült" - -#: cps/helper.py:941 -msgid "Started" -msgstr "Elindítva" - -#: cps/helper.py:943 -msgid "Finished" -msgstr "Végrehajtva" - -#: cps/helper.py:945 -msgid "Unknown Status" -msgstr "Ismeretlen állapot" - -#: cps/kobo_auth.py:128 +#: cps/kobo_auth.py:89 msgid "Please access Calibre-Web from non localhost to get valid api_endpoint for kobo device" msgstr "" -#: cps/kobo_auth.py:154 +#: cps/kobo_auth.py:115 msgid "Kobo Setup" msgstr "" @@ -804,7 +809,7 @@ msgstr "" msgid "Register with %(provider)s" msgstr "" -#: cps/oauth_bb.py:138 cps/remotelogin.py:130 cps/web.py:1613 +#: cps/oauth_bb.py:138 cps/remotelogin.py:130 cps/web.py:1286 #, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "Be vagy jelentkezve mint: %(nickname)s" @@ -865,12 +870,12 @@ msgstr "" msgid "Google Oauth error: {}" msgstr "" -#: cps/opds.py:298 +#: cps/opds.py:287 msgid "{} Stars" msgstr "" -#: cps/remotelogin.py:62 cps/templates/layout.html:84 -#: cps/templates/login.html:4 cps/templates/login.html:21 cps/web.py:1662 +#: cps/remotelogin.py:62 cps/templates/layout.html:85 +#: cps/templates/login.html:4 cps/templates/login.html:21 cps/web.py:1335 msgid "Login" msgstr "Belépés" @@ -886,456 +891,489 @@ 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:41 cps/web.py:407 +#: cps/render_template.py:40 cps/web.py:405 msgid "Books" msgstr "" -#: cps/render_template.py:43 +#: cps/render_template.py:42 msgid "Show recent books" msgstr "Legutóbbi könyvek mutatása" -#: cps/render_template.py:44 cps/templates/index.xml:25 +#: cps/render_template.py:43 cps/templates/index.xml:25 msgid "Hot Books" msgstr "Kelendő könyvek" -#: cps/render_template.py:46 +#: cps/render_template.py:45 msgid "Show Hot Books" msgstr "Kelendő könyvek mutatása" -#: cps/render_template.py:48 cps/render_template.py:53 +#: cps/render_template.py:47 cps/render_template.py:52 msgid "Downloaded Books" msgstr "" -#: cps/render_template.py:50 cps/render_template.py:55 +#: cps/render_template.py:49 cps/render_template.py:54 #: cps/templates/user_table.html:167 msgid "Show Downloaded Books" msgstr "" -#: cps/render_template.py:58 cps/templates/index.xml:32 cps/web.py:422 +#: cps/render_template.py:57 cps/templates/index.xml:32 cps/web.py:420 msgid "Top Rated Books" msgstr "Legjobb könyvek" -#: cps/render_template.py:60 cps/templates/user_table.html:161 +#: cps/render_template.py:59 cps/templates/user_table.html:161 msgid "Show Top Rated Books" msgstr "Legjobbra értékelt könyvek mutatása" -#: cps/render_template.py:61 cps/templates/index.xml:54 -#: cps/templates/index.xml:58 cps/web.py:729 +#: cps/render_template.py:60 cps/templates/index.xml:54 +#: cps/templates/index.xml:58 cps/web.py:739 msgid "Read Books" msgstr "Olvasott könyvek" -#: cps/render_template.py:63 +#: cps/render_template.py:62 msgid "Show read and unread" msgstr "Mutassa az olvasva/olvasatlan állapotot" -#: cps/render_template.py:65 cps/templates/index.xml:61 -#: cps/templates/index.xml:65 cps/web.py:732 +#: cps/render_template.py:64 cps/templates/index.xml:61 +#: cps/templates/index.xml:65 cps/web.py:742 msgid "Unread Books" msgstr "Olvasatlan könyvek" -#: cps/render_template.py:67 +#: cps/render_template.py:66 msgid "Show unread" msgstr "" -#: cps/render_template.py:68 +#: cps/render_template.py:67 msgid "Discover" msgstr "Felfedezés" -#: cps/render_template.py:70 cps/templates/index.xml:50 +#: cps/render_template.py:69 cps/templates/index.xml:50 #: cps/templates/user_table.html:162 msgid "Show Random Books" msgstr "Mutass könyveket találomra" -#: cps/render_template.py:71 cps/templates/book_table.html:67 -#: cps/templates/index.xml:83 cps/web.py:1135 +#: cps/render_template.py:70 cps/templates/book_table.html:67 +#: cps/templates/index.xml:83 cps/web.py:1098 msgid "Categories" msgstr "Címkék" -#: cps/render_template.py:73 cps/templates/user_table.html:158 +#: cps/render_template.py:72 cps/templates/user_table.html:158 msgid "Show category selection" msgstr "Címke választó mutatása" -#: cps/render_template.py:74 cps/templates/book_edit.html:90 +#: cps/render_template.py:73 cps/templates/book_edit.html:91 #: cps/templates/book_table.html:68 cps/templates/index.xml:90 -#: cps/templates/search_form.html:69 cps/web.py:1034 cps/web.py:1041 +#: cps/templates/search_form.html:69 cps/web.py:995 cps/web.py:1002 msgid "Series" msgstr "Sorozatok" -#: cps/render_template.py:76 cps/templates/user_table.html:157 +#: cps/render_template.py:75 cps/templates/user_table.html:157 msgid "Show series selection" msgstr "Sorozat választó mutatása" -#: cps/render_template.py:77 cps/templates/book_table.html:66 +#: cps/render_template.py:76 cps/templates/book_table.html:66 #: cps/templates/index.xml:69 msgid "Authors" msgstr "Szerzők" -#: cps/render_template.py:79 cps/templates/user_table.html:160 +#: cps/render_template.py:78 cps/templates/user_table.html:160 msgid "Show author selection" msgstr "Szerző választó mutatása" -#: cps/render_template.py:81 cps/templates/book_table.html:72 -#: cps/templates/index.xml:76 cps/web.py:1006 +#: cps/render_template.py:80 cps/templates/book_table.html:72 +#: cps/templates/index.xml:76 cps/web.py:966 msgid "Publishers" msgstr "Kiadók" -#: cps/render_template.py:83 cps/templates/user_table.html:163 +#: cps/render_template.py:82 cps/templates/user_table.html:163 msgid "Show publisher selection" msgstr "Kiadó választó mutatása" -#: cps/render_template.py:84 cps/templates/book_table.html:70 +#: cps/render_template.py:83 cps/templates/book_table.html:70 #: cps/templates/index.xml:97 cps/templates/search_form.html:107 -#: cps/web.py:1108 +#: cps/web.py:1070 msgid "Languages" msgstr "Nyelvek" -#: cps/render_template.py:87 cps/templates/user_table.html:155 +#: cps/render_template.py:86 cps/templates/user_table.html:155 msgid "Show language selection" msgstr "Nyelv választó mutatása" -#: cps/render_template.py:88 cps/templates/index.xml:104 +#: cps/render_template.py:87 cps/templates/index.xml:104 msgid "Ratings" msgstr "" -#: cps/render_template.py:90 cps/templates/user_table.html:164 +#: cps/render_template.py:89 cps/templates/user_table.html:164 msgid "Show ratings selection" msgstr "" -#: cps/render_template.py:91 cps/templates/index.xml:112 +#: cps/render_template.py:90 cps/templates/index.xml:112 msgid "File formats" msgstr "" -#: cps/render_template.py:93 cps/templates/user_table.html:165 +#: cps/render_template.py:92 cps/templates/user_table.html:165 msgid "Show file formats selection" msgstr "" -#: cps/render_template.py:95 cps/web.py:755 +#: cps/render_template.py:94 cps/web.py:765 msgid "Archived Books" msgstr "" -#: cps/render_template.py:97 cps/templates/user_table.html:166 +#: cps/render_template.py:96 cps/templates/user_table.html:166 msgid "Show archived books" msgstr "" -#: cps/render_template.py:100 cps/web.py:837 +#: cps/render_template.py:99 cps/web.py:796 msgid "Books List" msgstr "" -#: cps/render_template.py:102 cps/templates/user_table.html:168 +#: cps/render_template.py:101 cps/templates/user_table.html:168 msgid "Show Books List" msgstr "" -#: cps/shelf.py:67 cps/shelf.py:121 -msgid "Invalid shelf specified" -msgstr "A megadott polc érvénytelen!" - -#: cps/shelf.py:73 -#, fuzzy -msgid "Sorry you are not allowed to add a book to that shelf" -msgstr "Elnézést, nem vagy jogosult hozzáadni a könyvet a következő polcra: %(shelfname)s" - -#: cps/shelf.py:82 -#, python-format -msgid "Book is already part of the shelf: %(shelfname)s" -msgstr "A könyv már a következő polcon van: %(shelfname)s" - -#: cps/shelf.py:107 -#, python-format -msgid "Book has been added to shelf: %(sname)s" -msgstr "A könyv hozzá lett adva a következő polchoz: %(sname)s" - -#: cps/shelf.py:126 -msgid "You are not allowed to add a book to the shelf" -msgstr "" - -#: cps/shelf.py:144 -#, python-format -msgid "Books are already part of the shelf: %(name)s" -msgstr "A könyvek már a következő polcon vannak: %(name)s" - -#: cps/shelf.py:156 -#, python-format -msgid "Books have been added to shelf: %(sname)s" -msgstr "A könyvek hozzá lettek adva a következő polchoz: %(sname)s" - -#: cps/shelf.py:163 -#, python-format -msgid "Could not add books to shelf: %(sname)s" -msgstr "Nem sikerült hozzáadni a könyveket a polchoz: %(sname)s" - -#: cps/shelf.py:209 -#, python-format -msgid "Book has been removed from shelf: %(sname)s" -msgstr "A könyv el lett távolítva a polcról: %(sname)s" - -#: cps/shelf.py:218 -msgid "Sorry you are not allowed to remove a book from this shelf" -msgstr "" - -#: cps/shelf.py:228 cps/templates/layout.html:140 -msgid "Create a Shelf" -msgstr "Polc készítése" - -#: cps/shelf.py:236 -#, fuzzy -msgid "Sorry you are not allowed to edit this shelf" -msgstr "Sajnálom, nincs jogosultságot eltávolítani könyvet erről a polcról: %(sname)s" - -#: cps/shelf.py:238 -msgid "Edit a shelf" -msgstr "Polc szerkesztése" - -#: cps/shelf.py:248 -msgid "Sorry you are not allowed to create a public shelf" -msgstr "" - -#: cps/shelf.py:265 -#, python-format -msgid "Shelf %(title)s created" -msgstr "A következő polc létre lett hozva: %(title)s" - -#: cps/shelf.py:268 -#, python-format -msgid "Shelf %(title)s changed" -msgstr "A következő polc megváltoztatva: %(title)s" - -#: cps/shelf.py:282 -msgid "There was an error" -msgstr "Hiba történt" - -#: cps/shelf.py:304 -#, python-format -msgid "A public shelf with the name '%(title)s' already exists." -msgstr "" - -#: cps/shelf.py:315 -#, python-format -msgid "A private shelf with the name '%(title)s' already exists." -msgstr "" - -#: cps/shelf.py:337 -msgid "Error deleting Shelf" -msgstr "" - -#: cps/shelf.py:339 -#, fuzzy -msgid "Shelf successfully deleted" -msgstr "A metaadatok sikeresen frissültek" - -#: cps/shelf.py:389 -#, python-format -msgid "Change order of Shelf: '%(name)s'" -msgstr "A következő polc átrendezése: %(name)s" - -#: cps/shelf.py:461 -#, python-format -msgid "Shelf: '%(name)s'" -msgstr "Polc: '%(name)s'" - -#: cps/shelf.py:465 -msgid "Error opening shelf. Shelf does not exist or is not accessible" -msgstr "Hiba a polc megnyitásakor. A polc nem létezik vagy nem elérhető." - -#: cps/updater.py:426 cps/updater.py:437 cps/updater.py:538 cps/updater.py:553 -msgid "Unexpected data while reading update information" -msgstr "Ismeretlen adat a frissítési információk olvasásakor" - -#: cps/updater.py:433 cps/updater.py:545 -msgid "No update available. You already have the latest version installed" -msgstr "Nem érhető el újabb frissítés. Már a legújabb verzió van telepítve." - -#: cps/updater.py:451 -msgid "A new update is available. Click on the button below to update to the latest version." -msgstr "Egy új frissítés érhető el. Kattints a lenti gombra a legújabb verzió frissítésére" - -#: cps/updater.py:469 -msgid "Could not fetch update information" -msgstr "Nem lehetett begyűjteni a frissítési információkat" - -#: cps/updater.py:479 -msgid "Click on the button below to update to the latest stable version." -msgstr "" - -#: cps/updater.py:488 cps/updater.py:502 cps/updater.py:513 -#, python-format -msgid "A new update is available. Click on the button below to update to version: %(version)s" -msgstr "Új frissítés érhető el. Kattints az alábbi gombra a frissítéshez a következő verzióra: %(version)s" - -#: cps/updater.py:531 -msgid "No release information available" -msgstr "Nincs információ a kiadásról." - -#: cps/templates/index.html:5 cps/web.py:434 -msgid "Discover (Random Books)" -msgstr "Felfedezés (könyvek találomra)" - -#: cps/web.py:470 -msgid "Hot Books (Most Downloaded)" -msgstr "Kelendő könyvek (legtöbbet letöltöttek)" - -#: cps/web.py:501 -#, python-format -msgid "Downloaded books by %(user)s" -msgstr "" - -#: cps/web.py:534 -#, python-format -msgid "Author: %(name)s" -msgstr "" - -#: cps/web.py:570 -#, python-format -msgid "Publisher: %(name)s" -msgstr "Kiadó: %(name)s" - -#: cps/web.py:598 -#, python-format -msgid "Series: %(serie)s" -msgstr "Sorozat: %(serie)s" - -#: cps/web.py:610 -#, python-format -msgid "Rating: %(rating)s stars" -msgstr "" - -#: cps/web.py:626 -#, python-format -msgid "File format: %(format)s" -msgstr "" - -#: cps/web.py:663 -#, python-format -msgid "Category: %(name)s" -msgstr "Címke: %(name)s" - -#: cps/web.py:690 -#, python-format -msgid "Language: %(name)s" -msgstr "Nyelv: %(name)s" - -#: cps/templates/layout.html:56 cps/web.py:789 cps/web.py:1444 -msgid "Advanced Search" -msgstr "Részletes keresés" - -#: cps/templates/book_edit.html:235 cps/templates/feed.xml:33 -#: cps/templates/index.xml:11 cps/templates/layout.html:45 -#: cps/templates/layout.html:48 cps/templates/search_form.html:226 -#: cps/web.py:807 cps/web.py:1164 +#: cps/search.py:48 cps/search.py:414 cps/templates/book_edit.html:236 +#: cps/templates/feed.xml:33 cps/templates/index.xml:11 +#: cps/templates/layout.html:46 cps/templates/layout.html:49 +#: cps/templates/search_form.html:226 msgid "Search" msgstr "Keresés" -#: cps/templates/admin.html:16 cps/web.py:979 -msgid "Downloads" -msgstr "Letöltések" - -#: cps/web.py:1068 -msgid "Ratings list" -msgstr "" - -#: cps/web.py:1095 -msgid "File formats list" -msgstr "" - -#: cps/templates/layout.html:73 cps/templates/tasks.html:7 cps/web.py:1149 -msgid "Tasks" -msgstr "Feladatok" - -#: cps/web.py:1286 +#: cps/search.py:194 msgid "Published after " msgstr "Kiadva ezután: " -#: cps/web.py:1293 +#: cps/search.py:201 msgid "Published before " msgstr "Kiadva ezelőtt: " -#: cps/web.py:1315 +#: cps/search.py:223 #, python-format msgid "Rating <= %(rating)s" msgstr "Értékelés <= %(rating)s" -#: cps/web.py:1317 +#: cps/search.py:225 #, python-format msgid "Rating >= %(rating)s" msgstr "Értékelés <= %(rating)s" -#: cps/web.py:1319 +#: cps/search.py:227 #, python-format msgid "Read Status = %(status)s" msgstr "" -#: cps/web.py:1425 +#: cps/search.py:345 msgid "Error on search for custom columns, please restart Calibre-Web" msgstr "" -#: cps/web.py:1527 +#: cps/search.py:364 cps/search.py:396 cps/templates/layout.html:57 +msgid "Advanced Search" +msgstr "Részletes keresés" + +#: cps/shelf.py:49 cps/shelf.py:103 +msgid "Invalid shelf specified" +msgstr "A megadott polc érvénytelen!" + +#: cps/shelf.py:55 +#, fuzzy +msgid "Sorry you are not allowed to add a book to that shelf" +msgstr "Elnézést, nem vagy jogosult hozzáadni a könyvet a következő polcra: %(shelfname)s" + +#: cps/shelf.py:64 +#, python-format +msgid "Book is already part of the shelf: %(shelfname)s" +msgstr "A könyv már a következő polcon van: %(shelfname)s" + +#: cps/shelf.py:89 +#, python-format +msgid "Book has been added to shelf: %(sname)s" +msgstr "A könyv hozzá lett adva a következő polchoz: %(sname)s" + +#: cps/shelf.py:108 +msgid "You are not allowed to add a book to the shelf" +msgstr "" + +#: cps/shelf.py:126 +#, python-format +msgid "Books are already part of the shelf: %(name)s" +msgstr "A könyvek már a következő polcon vannak: %(name)s" + +#: cps/shelf.py:138 +#, python-format +msgid "Books have been added to shelf: %(sname)s" +msgstr "A könyvek hozzá lettek adva a következő polchoz: %(sname)s" + +#: cps/shelf.py:145 +#, python-format +msgid "Could not add books to shelf: %(sname)s" +msgstr "Nem sikerült hozzáadni a könyveket a polchoz: %(sname)s" + +#: cps/shelf.py:191 +#, python-format +msgid "Book has been removed from shelf: %(sname)s" +msgstr "A könyv el lett távolítva a polcról: %(sname)s" + +#: cps/shelf.py:200 +msgid "Sorry you are not allowed to remove a book from this shelf" +msgstr "" + +#: cps/shelf.py:210 cps/templates/layout.html:141 +msgid "Create a Shelf" +msgstr "Polc készítése" + +#: cps/shelf.py:218 +#, fuzzy +msgid "Sorry you are not allowed to edit this shelf" +msgstr "Sajnálom, nincs jogosultságot eltávolítani könyvet erről a polcról: %(sname)s" + +#: cps/shelf.py:220 +msgid "Edit a shelf" +msgstr "Polc szerkesztése" + +#: cps/shelf.py:229 +msgid "Error deleting Shelf" +msgstr "" + +#: cps/shelf.py:231 +#, fuzzy +msgid "Shelf successfully deleted" +msgstr "A metaadatok sikeresen frissültek" + +#: cps/shelf.py:281 +#, python-format +msgid "Change order of Shelf: '%(name)s'" +msgstr "A következő polc átrendezése: %(name)s" + +#: cps/shelf.py:313 +msgid "Sorry you are not allowed to create a public shelf" +msgstr "" + +#: cps/shelf.py:330 +#, python-format +msgid "Shelf %(title)s created" +msgstr "A következő polc létre lett hozva: %(title)s" + +#: cps/shelf.py:333 +#, python-format +msgid "Shelf %(title)s changed" +msgstr "A következő polc megváltoztatva: %(title)s" + +#: cps/shelf.py:347 +msgid "There was an error" +msgstr "Hiba történt" + +#: cps/shelf.py:369 +#, python-format +msgid "A public shelf with the name '%(title)s' already exists." +msgstr "" + +#: cps/shelf.py:380 +#, python-format +msgid "A private shelf with the name '%(title)s' already exists." +msgstr "" + +#: cps/shelf.py:462 +#, python-format +msgid "Shelf: '%(name)s'" +msgstr "Polc: '%(name)s'" + +#: cps/shelf.py:466 +msgid "Error opening shelf. Shelf does not exist or is not accessible" +msgstr "Hiba a polc megnyitásakor. A polc nem létezik vagy nem elérhető." + +#: cps/tasks_status.py:48 cps/templates/layout.html:74 +#: cps/templates/tasks.html:7 +msgid "Tasks" +msgstr "Feladatok" + +#: cps/tasks_status.py:64 +msgid "Waiting" +msgstr "Várakozás" + +#: cps/tasks_status.py:66 +msgid "Failed" +msgstr "Nem sikerült" + +#: cps/tasks_status.py:68 +msgid "Started" +msgstr "Elindítva" + +#: cps/tasks_status.py:70 +msgid "Finished" +msgstr "Végrehajtva" + +#: cps/tasks_status.py:72 +msgid "Ended" +msgstr "" + +#: cps/tasks_status.py:74 +msgid "Cancelled" +msgstr "" + +#: cps/tasks_status.py:76 +msgid "Unknown Status" +msgstr "Ismeretlen állapot" + +#: cps/updater.py:431 cps/updater.py:442 cps/updater.py:543 cps/updater.py:558 +msgid "Unexpected data while reading update information" +msgstr "Ismeretlen adat a frissítési információk olvasásakor" + +#: cps/updater.py:438 cps/updater.py:550 +msgid "No update available. You already have the latest version installed" +msgstr "Nem érhető el újabb frissítés. Már a legújabb verzió van telepítve." + +#: cps/updater.py:456 +msgid "A new update is available. Click on the button below to update to the latest version." +msgstr "Egy új frissítés érhető el. Kattints a lenti gombra a legújabb verzió frissítésére" + +#: cps/updater.py:474 +msgid "Could not fetch update information" +msgstr "Nem lehetett begyűjteni a frissítési információkat" + +#: cps/updater.py:484 +msgid "Click on the button below to update to the latest stable version." +msgstr "" + +#: cps/updater.py:493 cps/updater.py:507 cps/updater.py:518 +#, python-format +msgid "A new update is available. Click on the button below to update to version: %(version)s" +msgstr "Új frissítés érhető el. Kattints az alábbi gombra a frissítéshez a következő verzióra: %(version)s" + +#: cps/updater.py:536 +msgid "No release information available" +msgstr "Nincs információ a kiadásról." + +#: cps/templates/index.html:6 cps/web.py:432 +msgid "Discover (Random Books)" +msgstr "Felfedezés (könyvek találomra)" + +#: cps/web.py:468 +msgid "Hot Books (Most Downloaded)" +msgstr "Kelendő könyvek (legtöbbet letöltöttek)" + +#: cps/web.py:499 +#, python-format +msgid "Downloaded books by %(user)s" +msgstr "" + +#: cps/web.py:532 +#, python-format +msgid "Author: %(name)s" +msgstr "" + +#: cps/web.py:568 +#, python-format +msgid "Publisher: %(name)s" +msgstr "Kiadó: %(name)s" + +#: cps/web.py:596 +#, python-format +msgid "Series: %(serie)s" +msgstr "Sorozat: %(serie)s" + +#: cps/web.py:609 +msgid "Rating: None" +msgstr "" + +#: cps/web.py:618 +#, python-format +msgid "Rating: %(rating)s stars" +msgstr "" + +#: cps/web.py:636 +#, python-format +msgid "File format: %(format)s" +msgstr "" + +#: cps/web.py:673 +#, python-format +msgid "Category: %(name)s" +msgstr "Címke: %(name)s" + +#: cps/web.py:700 +#, python-format +msgid "Language: %(name)s" +msgstr "Nyelv: %(name)s" + +#: cps/templates/admin.html:16 cps/web.py:938 +msgid "Downloads" +msgstr "Letöltések" + +#: cps/web.py:1030 +msgid "Ratings list" +msgstr "" + +#: cps/web.py:1057 +msgid "File formats list" +msgstr "" + +#: cps/web.py:1199 #, python-format msgid "Book successfully queued for sending to %(kindlemail)s" msgstr "A könyv sikeresen küldésre lett jelölve a következő címre: %(kindlemail)s" -#: cps/web.py:1531 +#: cps/web.py:1203 #, python-format msgid "Oops! There was an error sending this book: %(res)s" msgstr "Hiba történt a könyv küldésekor: %(res)s" -#: cps/web.py:1533 +#: cps/web.py:1205 msgid "Please update your profile with a valid Send to Kindle E-mail Address." msgstr "Először be kell állítani a kindle e-mail címet..." -#: cps/web.py:1550 +#: cps/web.py:1222 msgid "E-Mail server is not configured, please contact your administrator!" msgstr "" -#: cps/templates/layout.html:85 cps/templates/register.html:17 cps/web.py:1551 -#: cps/web.py:1558 cps/web.py:1564 cps/web.py:1583 cps/web.py:1587 -#: cps/web.py:1593 +#: cps/templates/layout.html:86 cps/templates/register.html:17 cps/web.py:1223 +#: cps/web.py:1230 cps/web.py:1236 cps/web.py:1255 cps/web.py:1260 +#: cps/web.py:1266 msgid "Register" msgstr "Regisztrálás" -#: cps/web.py:1585 +#: cps/web.py:1257 msgid "Your e-mail is not allowed to register" msgstr "Nem engedélyezett a megadott e-mail cím bejegyzése" -#: cps/web.py:1588 +#: cps/web.py:1261 msgid "Confirmation e-mail was send to your e-mail account." msgstr "Jóváhagyó levél elküldve az email címedre." -#: cps/web.py:1602 +#: cps/web.py:1275 msgid "Cannot activate LDAP authentication" msgstr "" -#: cps/web.py:1621 +#: cps/web.py:1294 #, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgstr "" -#: cps/web.py:1627 +#: cps/web.py:1300 #, python-format msgid "Could not login: %(message)s" msgstr "" -#: cps/web.py:1631 cps/web.py:1656 +#: cps/web.py:1304 cps/web.py:1329 msgid "Wrong Username or Password" msgstr "Rossz felhasználó név vagy jelszó!" -#: cps/web.py:1638 +#: cps/web.py:1311 msgid "New Password was send to your email address" msgstr "" -#: cps/web.py:1644 +#: cps/web.py:1317 msgid "Please enter valid username to reset password" msgstr "" -#: cps/web.py:1651 +#: cps/web.py:1324 #, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "" -#: cps/web.py:1717 cps/web.py:1766 +#: cps/web.py:1388 cps/web.py:1437 #, python-format msgid "%(name)s's profile" msgstr "%(name)s profilja" -#: cps/web.py:1733 +#: cps/web.py:1404 msgid "Profile updated" msgstr "A profil frissítve." @@ -1343,40 +1381,75 @@ msgstr "A profil frissítve." msgid "Found no valid gmail.json file with OAuth information" msgstr "" -#: cps/tasks/convert.py:154 +#: cps/tasks/convert.py:153 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "" -#: cps/tasks/convert.py:187 +#: cps/tasks/convert.py:186 #, python-format msgid "%(format)s format not found on disk" msgstr "" -#: cps/tasks/convert.py:191 +#: cps/tasks/convert.py:190 msgid "Ebook converter failed with unknown error" msgstr "" -#: cps/tasks/convert.py:201 +#: cps/tasks/convert.py:200 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "" -#: cps/tasks/convert.py:223 +#: cps/tasks/convert.py:222 #, python-format msgid "Converted file not found or more than one file in folder %(folder)s" msgstr "" -#: cps/tasks/convert.py:246 +#: cps/tasks/convert.py:245 #, 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:269 +#: cps/tasks/convert.py:268 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "" +#: cps/tasks/convert.py:273 +msgid "Convert" +msgstr "" + +#: cps/tasks/database.py:28 +msgid "Reconnecting Calibre database" +msgstr "" + +#: cps/tasks/mail.py:265 +msgid "E-mail" +msgstr "" + +#: cps/tasks/thumbnail.py:95 +#, python-format +msgid "Generated %(count)s cover thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:222 cps/tasks/thumbnail.py:435 +#: cps/tasks/thumbnail.py:503 +msgid "Cover Thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:281 +msgid "Generated {0} series thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:446 +msgid "Clearing cover thumbnail cache" +msgstr "" + +#: cps/tasks/upload.py:38 cps/templates/admin.html:20 +#: cps/templates/layout.html:67 cps/templates/user_table.html:145 +msgid "Upload" +msgstr "Feltöltés" + #: cps/templates/admin.html:9 msgid "Users" msgstr "Felhasználók listája" @@ -1396,7 +1469,7 @@ msgstr "E-mail" msgid "Send to Kindle E-mail Address" msgstr "Kindle" -#: cps/templates/admin.html:17 cps/templates/layout.html:76 +#: cps/templates/admin.html:17 cps/templates/layout.html:77 #: cps/templates/user_table.html:143 msgid "Admin" msgstr "Rendszergazda" @@ -1406,13 +1479,8 @@ msgstr "Rendszergazda" msgid "Password" msgstr "Jelszó" -#: cps/templates/admin.html:20 cps/templates/layout.html:66 -#: cps/templates/user_table.html:145 -msgid "Upload" -msgstr "Feltöltés" - -#: cps/templates/admin.html:22 cps/templates/detail.html:18 -#: cps/templates/detail.html:27 cps/templates/shelf.html:7 +#: cps/templates/admin.html:22 cps/templates/detail.html:19 +#: cps/templates/detail.html:28 cps/templates/shelf.html:8 #: cps/templates/user_table.html:146 msgid "Download" msgstr "Letöltés" @@ -1426,7 +1494,7 @@ msgstr "" msgid "Edit" msgstr "Szerkesztés" -#: cps/templates/admin.html:25 cps/templates/book_edit.html:16 +#: cps/templates/admin.html:25 cps/templates/book_edit.html:17 #: cps/templates/book_table.html:100 cps/templates/modal_dialogs.html:63 #: cps/templates/modal_dialogs.html:116 cps/templates/user_edit.html:67 #: cps/templates/user_table.html:149 @@ -1539,78 +1607,107 @@ msgstr "" msgid "Edit UI Configuration" msgstr "" -#: cps/templates/admin.html:166 +#: cps/templates/admin.html:167 +msgid "Scheduled Tasks" +msgstr "" + +#: cps/templates/admin.html:170 cps/templates/schedule_edit.html:12 +msgid "Time at which tasks start to run" +msgstr "" + +#: cps/templates/admin.html:174 cps/templates/schedule_edit.html:20 +msgid "Maximum tasks duration" +msgstr "" + +#: cps/templates/admin.html:178 +msgid "Generate book cover thumbnails" +msgstr "" + +#: cps/templates/admin.html:182 +msgid "Generate series cover thumbnails" +msgstr "" + +#: cps/templates/admin.html:186 cps/templates/schedule_edit.html:37 +msgid "Reconnect to Calibre Library" +msgstr "" + +#: cps/templates/admin.html:193 +msgid "Refresh Thumbnail Cover Cache" +msgstr "" + +#: cps/templates/admin.html:199 msgid "Administration" msgstr "Adminisztráció" -#: cps/templates/admin.html:167 +#: cps/templates/admin.html:200 msgid "Download Debug Package" msgstr "" -#: cps/templates/admin.html:168 +#: cps/templates/admin.html:201 msgid "View Logs" msgstr "" -#: cps/templates/admin.html:171 +#: cps/templates/admin.html:204 msgid "Reconnect Calibre Database" msgstr "Újracsatlakozás a Calibre adatbázishoz" -#: cps/templates/admin.html:172 +#: cps/templates/admin.html:207 msgid "Restart" msgstr "A Calibre adatbázis újraindítása" -#: cps/templates/admin.html:173 +#: cps/templates/admin.html:208 msgid "Shutdown" msgstr "A Calibre adatbázis leállítása" -#: cps/templates/admin.html:178 -msgid "Update" -msgstr "Frissítés" +#: cps/templates/admin.html:213 +msgid "Version Information" +msgstr "" -#: cps/templates/admin.html:182 +#: cps/templates/admin.html:217 msgid "Version" msgstr "Verzió" -#: cps/templates/admin.html:183 +#: cps/templates/admin.html:218 msgid "Details" msgstr "Részletek" -#: cps/templates/admin.html:189 +#: cps/templates/admin.html:224 msgid "Current version" msgstr "Jelenlegi verzió" -#: cps/templates/admin.html:196 +#: cps/templates/admin.html:231 msgid "Check for Update" msgstr "Frissítés keresése" -#: cps/templates/admin.html:197 +#: cps/templates/admin.html:232 msgid "Perform Update" msgstr "Frissítés elkezdése" -#: cps/templates/admin.html:210 +#: cps/templates/admin.html:245 msgid "Are you sure you want to restart?" msgstr "Valóban újra akarod indítani a Calibre-Web-et?" -#: cps/templates/admin.html:215 cps/templates/admin.html:229 -#: cps/templates/admin.html:249 cps/templates/config_db.html:70 +#: cps/templates/admin.html:250 cps/templates/admin.html:264 +#: cps/templates/admin.html:284 cps/templates/config_db.html:70 msgid "OK" msgstr "OK" -#: cps/templates/admin.html:216 cps/templates/admin.html:230 -#: cps/templates/book_edit.html:213 cps/templates/book_table.html:127 +#: cps/templates/admin.html:251 cps/templates/admin.html:265 +#: cps/templates/book_edit.html:214 cps/templates/book_table.html:127 #: cps/templates/config_db.html:54 cps/templates/config_edit.html:359 #: 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/shelf_edit.html:27 +#: cps/templates/modal_dialogs.html:135 cps/templates/schedule_edit.html:41 +#: cps/templates/shelf_edit.html:27 cps/templates/tasks.html:46 #: cps/templates/user_edit.html:144 msgid "Cancel" msgstr "" -#: cps/templates/admin.html:228 +#: cps/templates/admin.html:263 msgid "Are you sure you want to shutdown?" msgstr "Valóban le akarod állítani a Calibre-Web-et?" -#: cps/templates/admin.html:240 +#: cps/templates/admin.html:275 msgid "Updating, please do not reload this page" msgstr "Frissítés folyamatban, ne töltsd újra az oldalt" @@ -1622,39 +1719,39 @@ msgstr "keresztül" msgid "In Library" msgstr "Könyvtárban" -#: cps/templates/author.html:26 cps/templates/index.html:73 -#: cps/templates/search.html:30 cps/templates/shelf.html:19 +#: cps/templates/author.html:26 cps/templates/index.html:74 +#: cps/templates/search.html:31 cps/templates/shelf.html:20 msgid "Sort according to book date, newest first" msgstr "" -#: cps/templates/author.html:27 cps/templates/index.html:74 -#: cps/templates/search.html:31 cps/templates/shelf.html:20 +#: cps/templates/author.html:27 cps/templates/index.html:75 +#: cps/templates/search.html:32 cps/templates/shelf.html:21 msgid "Sort according to book date, oldest first" msgstr "" -#: cps/templates/author.html:28 cps/templates/index.html:75 -#: cps/templates/search.html:32 cps/templates/shelf.html:21 +#: cps/templates/author.html:28 cps/templates/index.html:76 +#: cps/templates/search.html:33 cps/templates/shelf.html:22 msgid "Sort title in alphabetical order" msgstr "" -#: cps/templates/author.html:29 cps/templates/index.html:76 -#: cps/templates/search.html:33 cps/templates/shelf.html:22 +#: cps/templates/author.html:29 cps/templates/index.html:77 +#: cps/templates/search.html:34 cps/templates/shelf.html:23 msgid "Sort title in reverse alphabetical order" msgstr "" -#: cps/templates/author.html:30 cps/templates/index.html:79 -#: cps/templates/search.html:36 cps/templates/shelf.html:25 +#: cps/templates/author.html:30 cps/templates/index.html:80 +#: cps/templates/search.html:37 cps/templates/shelf.html:26 msgid "Sort according to publishing date, newest first" msgstr "" -#: cps/templates/author.html:31 cps/templates/index.html:80 -#: cps/templates/search.html:37 cps/templates/shelf.html:26 +#: cps/templates/author.html:31 cps/templates/index.html:81 +#: cps/templates/search.html:38 cps/templates/shelf.html:27 msgid "Sort according to publishing date, oldest first" msgstr "" #: cps/templates/author.html:56 cps/templates/author.html:115 -#: cps/templates/index.html:29 cps/templates/index.html:112 -#: cps/templates/search.html:66 cps/templates/shelf.html:54 +#: cps/templates/index.html:30 cps/templates/index.html:113 +#: cps/templates/search.html:67 cps/templates/shelf.html:55 msgid "reduce" msgstr "csökkentsd" @@ -1662,165 +1759,166 @@ msgstr "csökkentsd" msgid "More by" msgstr "Több eszerint:" -#: cps/templates/book_edit.html:10 +#: cps/templates/book_edit.html:11 msgid "Delete Book" msgstr "Könyv törlése" -#: cps/templates/book_edit.html:13 +#: cps/templates/book_edit.html:14 msgid "Delete formats:" msgstr "Formátumok törlése:" -#: cps/templates/book_edit.html:24 +#: cps/templates/book_edit.html:25 msgid "Convert book format:" msgstr "Könyvformátum átalakítása:" -#: cps/templates/book_edit.html:29 +#: cps/templates/book_edit.html:30 msgid "Convert from:" msgstr "Konvertálás erről:" -#: cps/templates/book_edit.html:31 cps/templates/book_edit.html:38 +#: cps/templates/book_edit.html:32 cps/templates/book_edit.html:39 msgid "select an option" msgstr "Válassz egy lehetőséget" -#: cps/templates/book_edit.html:36 +#: cps/templates/book_edit.html:37 msgid "Convert to:" msgstr "Konvertálás erre:" -#: cps/templates/book_edit.html:45 +#: cps/templates/book_edit.html:46 msgid "Convert book" msgstr "Könyv konvertálása" -#: cps/templates/book_edit.html:55 cps/templates/search_form.html:8 +#: cps/templates/book_edit.html:56 cps/templates/search_form.html:8 msgid "Book Title" msgstr "Könyv címe" -#: cps/templates/book_edit.html:62 cps/templates/book_edit.html:270 -#: cps/templates/book_edit.html:288 cps/templates/search_form.html:12 +#: cps/templates/book_edit.html:63 cps/templates/book_edit.html:271 +#: cps/templates/book_edit.html:289 cps/templates/search_form.html:12 msgid "Author" msgstr "Szerző" -#: cps/templates/book_edit.html:67 cps/templates/book_edit.html:275 -#: cps/templates/book_edit.html:290 cps/templates/search_form.html:153 +#: cps/templates/book_edit.html:68 cps/templates/book_edit.html:276 +#: cps/templates/book_edit.html:291 cps/templates/search_form.html:153 msgid "Description" msgstr "Leírás" -#: cps/templates/book_edit.html:72 +#: cps/templates/book_edit.html:73 msgid "Identifiers" msgstr "" -#: cps/templates/book_edit.html:76 cps/templates/book_edit.html:299 +#: cps/templates/book_edit.html:77 cps/templates/book_edit.html:300 msgid "Identifier Type" msgstr "" -#: cps/templates/book_edit.html:77 cps/templates/book_edit.html:300 +#: cps/templates/book_edit.html:78 cps/templates/book_edit.html:301 msgid "Identifier Value" msgstr "" -#: cps/templates/book_edit.html:78 cps/templates/book_edit.html:301 +#: cps/templates/book_edit.html:79 cps/templates/book_edit.html:302 #: cps/templates/user_table.html:24 msgid "Remove" msgstr "" -#: cps/templates/book_edit.html:82 +#: cps/templates/book_edit.html:83 msgid "Add Identifier" msgstr "" -#: cps/templates/book_edit.html:86 cps/templates/search_form.html:51 +#: cps/templates/book_edit.html:87 cps/templates/search_form.html:51 msgid "Tags" msgstr "Címkék" -#: cps/templates/book_edit.html:94 +#: cps/templates/book_edit.html:95 msgid "Series ID" msgstr "" -#: cps/templates/book_edit.html:98 +#: cps/templates/book_edit.html:99 msgid "Rating" msgstr "Értékelés" -#: cps/templates/book_edit.html:103 +#: cps/templates/book_edit.html:104 msgid "Fetch Cover from URL (JPEG - Image will be downloaded and stored in database)" msgstr "Borító URL (jpg, borító letöltve és elmentve az adatbázisban, a mező újra üres lesz utána)" -#: cps/templates/book_edit.html:107 +#: cps/templates/book_edit.html:108 msgid "Upload Cover from Local Disk" msgstr "Borító feltöltése helyi meghajtóról" -#: cps/templates/book_edit.html:112 +#: cps/templates/book_edit.html:113 msgid "Published Date" msgstr "Kiadás éve" -#: cps/templates/book_edit.html:121 cps/templates/book_edit.html:272 -#: cps/templates/book_edit.html:289 cps/templates/detail.html:164 +#: cps/templates/book_edit.html:122 cps/templates/book_edit.html:273 +#: cps/templates/book_edit.html:290 cps/templates/detail.html:165 #: cps/templates/search_form.html:16 msgid "Publisher" msgstr "Kiadó" -#: cps/templates/book_edit.html:125 cps/templates/detail.html:131 +#: cps/templates/book_edit.html:126 cps/templates/detail.html:132 #: cps/templates/user_edit.html:33 msgid "Language" msgstr "Nyelv" -#: cps/templates/book_edit.html:135 cps/templates/search_form.html:45 +#: cps/templates/book_edit.html:136 cps/templates/search_form.html:45 #: cps/templates/search_form.html:164 msgid "Yes" msgstr "Igen" -#: cps/templates/book_edit.html:136 cps/templates/search_form.html:46 +#: cps/templates/book_edit.html:137 cps/templates/search_form.html:46 #: cps/templates/search_form.html:165 msgid "No" msgstr "Nem" -#: cps/templates/book_edit.html:200 +#: cps/templates/book_edit.html:201 msgid "Upload Format" msgstr "Feltöltés formátuma" -#: cps/templates/book_edit.html:208 +#: cps/templates/book_edit.html:209 msgid "View Book on Save" msgstr "Könyv megnézése szerkesztés után" -#: cps/templates/book_edit.html:211 cps/templates/book_edit.html:229 +#: cps/templates/book_edit.html:212 cps/templates/book_edit.html:230 msgid "Fetch Metadata" msgstr "Metaadatok beszerzése" -#: cps/templates/book_edit.html:212 cps/templates/config_db.html:53 +#: cps/templates/book_edit.html:213 cps/templates/config_db.html:53 #: cps/templates/config_edit.html:358 cps/templates/config_view_edit.html:174 -#: cps/templates/email_edit.html:65 cps/templates/shelf_edit.html:25 -#: cps/templates/shelf_order.html:41 cps/templates/user_edit.html:142 +#: cps/templates/email_edit.html:65 cps/templates/schedule_edit.html:40 +#: cps/templates/shelf_edit.html:25 cps/templates/shelf_order.html:41 +#: cps/templates/user_edit.html:142 msgid "Save" msgstr "" -#: cps/templates/book_edit.html:232 +#: cps/templates/book_edit.html:233 msgid "Keyword" msgstr "Kulcsszó" -#: cps/templates/book_edit.html:233 +#: cps/templates/book_edit.html:234 #, fuzzy msgid "Search keyword" msgstr " Keresési kulcsszó " -#: cps/templates/book_edit.html:239 +#: cps/templates/book_edit.html:240 msgid "Click the cover to load metadata to the form" msgstr "Kattints a borítóra a metadatok betöltésére" -#: cps/templates/book_edit.html:246 cps/templates/book_edit.html:285 +#: cps/templates/book_edit.html:247 cps/templates/book_edit.html:286 msgid "Loading..." msgstr "Betöltés..." -#: cps/templates/book_edit.html:250 cps/templates/layout.html:63 -#: cps/templates/layout.html:186 cps/templates/modal_dialogs.html:34 +#: cps/templates/book_edit.html:251 cps/templates/layout.html:64 +#: cps/templates/layout.html:187 cps/templates/modal_dialogs.html:34 #: cps/templates/user_edit.html:163 msgid "Close" msgstr "Bezárás" -#: cps/templates/book_edit.html:277 cps/templates/book_edit.html:291 +#: cps/templates/book_edit.html:278 cps/templates/book_edit.html:292 msgid "Source" msgstr "Forrás" -#: cps/templates/book_edit.html:286 +#: cps/templates/book_edit.html:287 msgid "Search error!" msgstr "Keresési hiba!" -#: cps/templates/book_edit.html:287 +#: cps/templates/book_edit.html:288 msgid "No Result(s) found! Please try another keyword." msgstr "Nincs találat! Próbálj másik kulcsszót." @@ -1929,6 +2027,7 @@ msgid "Enter " msgstr "Regisztrálás" #: cps/templates/book_table.html:113 cps/templates/modal_dialogs.html:46 +#: cps/templates/tasks.html:36 msgid "Are you really sure?" msgstr "Biztosan?" @@ -2342,62 +2441,62 @@ msgstr "" msgid "Add Allowed/Denied custom column values" msgstr "" -#: cps/templates/detail.html:60 cps/templates/detail.html:69 +#: cps/templates/detail.html:61 cps/templates/detail.html:70 msgid "Read in Browser" msgstr "Olvasás böngészőben" -#: cps/templates/detail.html:77 cps/templates/detail.html:94 +#: cps/templates/detail.html:78 cps/templates/detail.html:95 msgid "Listen in Browser" msgstr "" -#: cps/templates/detail.html:124 +#: cps/templates/detail.html:125 #, python-format msgid "Book %(index)s of %(range)s" msgstr "" -#: cps/templates/detail.html:173 +#: cps/templates/detail.html:174 msgid "Published" msgstr "" -#: cps/templates/detail.html:221 +#: cps/templates/detail.html:222 msgid "Mark As Unread" msgstr "Legyen olvasatlan" -#: cps/templates/detail.html:221 +#: cps/templates/detail.html:222 msgid "Mark As Read" msgstr "Legyen olvasott" -#: cps/templates/detail.html:222 +#: cps/templates/detail.html:223 msgid "Read" msgstr "Olvasva" -#: cps/templates/detail.html:231 +#: cps/templates/detail.html:232 msgid "Restore from archive" msgstr "" -#: cps/templates/detail.html:231 +#: cps/templates/detail.html:232 msgid "Add to archive" msgstr "" -#: cps/templates/detail.html:232 +#: cps/templates/detail.html:233 msgid "Archived" msgstr "" -#: cps/templates/detail.html:243 +#: cps/templates/detail.html:244 msgid "Description:" msgstr "Ismertető:" -#: cps/templates/detail.html:256 cps/templates/search.html:15 +#: cps/templates/detail.html:257 cps/templates/search.html:16 msgid "Add to shelf" msgstr "Hozzáadás polchoz" -#: cps/templates/detail.html:267 cps/templates/detail.html:284 -#: cps/templates/feed.xml:79 cps/templates/layout.html:137 -#: cps/templates/search.html:21 +#: cps/templates/detail.html:268 cps/templates/detail.html:285 +#: cps/templates/feed.xml:79 cps/templates/layout.html:138 +#: cps/templates/search.html:22 msgid "(Public)" msgstr "" -#: cps/templates/detail.html:298 +#: cps/templates/detail.html:299 msgid "Edit Metadata" msgstr "Metaadatok szerkesztése" @@ -2441,7 +2540,7 @@ msgstr "" msgid "Save and Send Test E-mail" msgstr "Beállítások mentése és teszt e-mail küldése" -#: cps/templates/email_edit.html:70 cps/templates/layout.html:29 +#: cps/templates/email_edit.html:70 cps/templates/layout.html:30 #: cps/templates/shelf_order.html:42 cps/templates/user_table.html:174 msgid "Back" msgstr "Vissza" @@ -2467,7 +2566,7 @@ msgstr "Tartomány megadása" msgid "Denied Domains (Blacklist)" msgstr "" -#: cps/templates/feed.xml:21 cps/templates/layout.html:170 +#: cps/templates/feed.xml:21 cps/templates/layout.html:171 msgid "Next" msgstr "Következő" @@ -2479,6 +2578,10 @@ msgstr "" msgid "Kobo Token:" msgstr "" +#: cps/templates/grid.html:21 +msgid "List" +msgstr "" + #: cps/templates/http_error.html:31 msgid "Calibre-Web Instance is unconfigured, please contact your administrator" msgstr "" @@ -2495,29 +2598,29 @@ msgstr "Vissza a kezdőlapra" msgid "Logout User" msgstr "" -#: cps/templates/index.html:70 +#: cps/templates/index.html:71 msgid "Sort ascending according to download count" msgstr "" -#: cps/templates/index.html:71 +#: cps/templates/index.html:72 msgid "Sort descending according to download count" msgstr "" -#: cps/templates/index.html:77 cps/templates/search.html:34 -#: cps/templates/shelf.html:23 -msgid "Sort authors in alphabetical order" -msgstr "" - #: cps/templates/index.html:78 cps/templates/search.html:35 #: cps/templates/shelf.html:24 +msgid "Sort authors in alphabetical order" +msgstr "" + +#: cps/templates/index.html:79 cps/templates/search.html:36 +#: cps/templates/shelf.html:25 msgid "Sort authors in reverse alphabetical order" msgstr "" -#: cps/templates/index.html:82 +#: cps/templates/index.html:83 msgid "Sort ascending according to series index" msgstr "" -#: cps/templates/index.html:83 +#: cps/templates/index.html:84 msgid "Sort descending according to series index" msgstr "" @@ -2581,7 +2684,7 @@ msgstr "" msgid "Books ordered by file formats" msgstr "" -#: cps/templates/index.xml:119 cps/templates/layout.html:135 +#: cps/templates/index.xml:119 cps/templates/layout.html:136 #: cps/templates/search_form.html:87 msgid "Shelves" msgstr "" @@ -2590,63 +2693,67 @@ msgstr "" msgid "Books organized in shelves" msgstr "" -#: cps/templates/layout.html:29 +#: cps/templates/layout.html:30 msgid "Home" msgstr "Kezdőlap" -#: cps/templates/layout.html:35 +#: cps/templates/layout.html:36 msgid "Toggle Navigation" msgstr "Navigáció átkapcsolása" -#: cps/templates/layout.html:46 +#: cps/templates/layout.html:47 msgid "Search Library" msgstr "" -#: cps/templates/layout.html:63 cps/templates/layout.html:117 +#: cps/templates/layout.html:64 cps/templates/layout.html:118 msgid "Uploading..." msgstr "Feltöltés..." -#: cps/templates/layout.html:63 +#: cps/templates/layout.html:64 msgid "Error" msgstr "Hiba" -#: cps/templates/layout.html:63 +#: cps/templates/layout.html:64 msgid "Upload done, processing, please wait..." msgstr "Feltöltés kész, feldolgozás alatt, kérlek várj..." -#: cps/templates/layout.html:76 cps/templates/read.html:72 +#: cps/templates/layout.html:77 cps/templates/read.html:72 #: cps/templates/readcbr.html:84 cps/templates/readcbr.html:108 msgid "Settings" msgstr "Beállítások" -#: cps/templates/layout.html:78 +#: cps/templates/layout.html:79 msgid "Account" msgstr "Felhasználói fiók" -#: cps/templates/layout.html:80 +#: cps/templates/layout.html:81 msgid "Logout" msgstr "Kilépés" -#: cps/templates/layout.html:118 +#: cps/templates/layout.html:119 msgid "Please do not refresh the page" msgstr "" -#: cps/templates/layout.html:128 +#: cps/templates/layout.html:129 msgid "Browse" msgstr "Böngészés" -#: cps/templates/layout.html:141 cps/templates/stats.html:3 +#: cps/templates/layout.html:142 cps/templates/stats.html:3 msgid "About" msgstr "Névjegy" -#: cps/templates/layout.html:155 +#: cps/templates/layout.html:156 msgid "Previous" msgstr "Előző" -#: cps/templates/layout.html:182 +#: cps/templates/layout.html:183 msgid "Book Details" msgstr "Könyv részletei" +#: cps/templates/list.html:22 +msgid "Grid" +msgstr "" + #: cps/templates/login.html:18 msgid "Remember Me" msgstr "Emlékezz rám" @@ -2751,7 +2858,7 @@ msgstr "" msgid "Select" msgstr "" -#: cps/templates/modal_dialogs.html:134 +#: cps/templates/modal_dialogs.html:134 cps/templates/tasks.html:45 #, fuzzy msgid "Ok" msgstr " " @@ -2929,15 +3036,23 @@ msgstr "Az első belépés után automatikusan be leszel léptetve ezen az eszk msgid "This verification link will expire in 10 minutes." msgstr "" -#: cps/templates/search.html:5 -msgid "No Results Found" +#: cps/templates/schedule_edit.html:29 +msgid "Generate Book Cover Thumbnails" +msgstr "" + +#: cps/templates/schedule_edit.html:33 +msgid "Generate Series Cover Thumbnails" msgstr "" #: cps/templates/search.html:6 +msgid "No Results Found" +msgstr "" + +#: cps/templates/search.html:7 msgid "Search Term:" msgstr "" -#: cps/templates/search.html:8 +#: cps/templates/search.html:9 msgid "Results for:" msgstr "Találatok a következőhöz:" @@ -2990,23 +3105,23 @@ msgstr "" msgid "To:" msgstr "" -#: cps/templates/shelf.html:12 +#: cps/templates/shelf.html:13 msgid "Delete this Shelf" msgstr "Polc törlése" -#: cps/templates/shelf.html:13 +#: cps/templates/shelf.html:14 msgid "Edit Shelf Properties" msgstr "" -#: cps/templates/shelf.html:16 +#: cps/templates/shelf.html:17 msgid "Arrange books manually" msgstr "" -#: cps/templates/shelf.html:17 +#: cps/templates/shelf.html:18 msgid "Disable Change order" msgstr "" -#: cps/templates/shelf.html:17 +#: cps/templates/shelf.html:18 msgid "Enable Change order" msgstr "" @@ -3051,8 +3166,8 @@ msgid "System Statistics" msgstr "" #: cps/templates/stats.html:33 -msgid "Program Library" -msgstr "Alkalmazás könyvtár" +msgid "Program" +msgstr "" #: cps/templates/stats.html:34 msgid "Installed Version" @@ -3082,6 +3197,18 @@ msgstr "Futásidő" msgid "Start Time" msgstr "Indítás ideje" +#: cps/templates/tasks.html:20 +msgid "Actions" +msgstr "" + +#: cps/templates/tasks.html:40 +msgid "This task will be cancelled. Any progress made by this task will be saved." +msgstr "" + +#: cps/templates/tasks.html:41 +msgid "If this is a scheduled task, it will be re-ran during the next scheduled time." +msgstr "" + #: cps/templates/user_edit.html:20 msgid "Reset user Password" msgstr "Felhasználó jelszavának alaphelyzetbe állítása" diff --git a/cps/translations/it/LC_MESSAGES/messages.mo b/cps/translations/it/LC_MESSAGES/messages.mo index c57e40711d4b5909da44cefae0ba6ec9fda5a13f..ad3ce16bf73b2a5b1a1e4977abfddc7e34e133be 100644 GIT binary patch delta 11708 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 delta 11755 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\n" "Language: it\n" @@ -15,586 +15,611 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.9.1\n" +"Generated-By: Babel 2.8.0\n" -#: cps/about.py:86 +#: cps/about.py:84 msgid "Statistics" msgstr "Statistiche" -#: cps/admin.py:141 +#: cps/admin.py:146 msgid "Server restarted, please reload page" msgstr "Server riavviato, per favore ricarica la pagina" -#: cps/admin.py:143 +#: cps/admin.py:148 msgid "Performing shutdown of server, please close window" msgstr "Eseguo l'arresto del server, per favore chiudi la finestra" -#: cps/admin.py:151 +#: cps/admin.py:156 msgid "Reconnect successful" msgstr "Ricollegato con successo" -#: cps/admin.py:154 +#: cps/admin.py:159 msgid "Unknown command" msgstr "Comando sconosciuto" -#: cps/admin.py:176 cps/editbooks.py:713 cps/editbooks.py:892 -#: cps/editbooks.py:894 cps/editbooks.py:930 cps/editbooks.py:947 -#: cps/updater.py:608 cps/uploader.py:93 cps/uploader.py:103 +#: cps/admin.py:192 cps/editbooks.py:571 cps/editbooks.py:573 +#: cps/editbooks.py:609 cps/editbooks.py:626 cps/editbooks.py:1233 +#: cps/updater.py:613 cps/uploader.py:87 cps/uploader.py:97 msgid "Unknown" msgstr "Sconosciuto" -#: cps/admin.py:197 +#: cps/admin.py:217 msgid "Admin page" msgstr "Pagina di amministrazione" -#: cps/admin.py:217 +#: cps/admin.py:237 msgid "Basic Configuration" msgstr "Configurazione di base" -#: cps/admin.py:255 +#: cps/admin.py:275 msgid "UI Configuration" msgstr "Configurazione dell'interfaccia utente" -#: cps/admin.py:289 cps/templates/admin.html:51 +#: cps/admin.py:309 cps/templates/admin.html:51 msgid "Edit Users" msgstr "Modifica gli utenti" -#: cps/admin.py:333 cps/opds.py:529 cps/templates/grid.html:13 +#: cps/admin.py:353 cps/opds.py:532 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "Tutti" -#: cps/admin.py:360 cps/admin.py:1648 +#: cps/admin.py:380 cps/admin.py:1365 msgid "User not found" msgstr "Utente non trovato" -#: cps/admin.py:374 +#: cps/admin.py:394 msgid "{} users deleted successfully" msgstr "{} utente eliminato con successo" -#: cps/admin.py:397 cps/templates/config_view_edit.html:133 +#: cps/admin.py:417 cps/templates/config_view_edit.html:133 #: cps/templates/user_edit.html:45 cps/templates/user_table.html:81 msgid "Show All" msgstr "tutte le lingue presenti" -#: cps/admin.py:418 cps/admin.py:424 +#: cps/admin.py:438 cps/admin.py:444 msgid "Malformed request" msgstr "Richiesta non formulata correttamente" -#: cps/admin.py:436 cps/admin.py:1526 +#: cps/admin.py:456 cps/admin.py:1962 msgid "Guest Name can't be changed" msgstr "Il nome dell'utente Guest (ospite) non può essere modificato" -#: cps/admin.py:448 +#: cps/admin.py:468 msgid "Guest can't have this role" msgstr "L'utente Guest (ospite) non può avere questo ruolo" -#: cps/admin.py:460 cps/admin.py:1484 +#: cps/admin.py:480 cps/admin.py:1920 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:464 cps/admin.py:478 +#: cps/admin.py:484 cps/admin.py:498 msgid "Value has to be true or false" msgstr "Il valore deve essere o vero o flaso" -#: cps/admin.py:466 +#: cps/admin.py:486 msgid "Invalid role" msgstr "Ruolo non valido" -#: cps/admin.py:470 +#: cps/admin.py:490 msgid "Guest can't have this view" msgstr "L'utente Guest (ospite) non può avere questa schermata" -#: cps/admin.py:480 +#: cps/admin.py:500 msgid "Invalid view" msgstr "Visualizzazione invalida" -#: cps/admin.py:483 +#: cps/admin.py:503 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:487 +#: cps/admin.py:507 msgid "No Valid Locale Given" msgstr "Nessuna lingua valida indicata" -#: cps/admin.py:498 +#: cps/admin.py:518 msgid "No Valid Book Language Given" msgstr "Nessuna lingua valida per il libro" -#: cps/admin.py:500 cps/editbooks.py:1267 +#: cps/admin.py:520 cps/editbooks.py:438 msgid "Parameter not found" msgstr "Parametro non trovato" -#: cps/admin.py:553 +#: cps/admin.py:557 msgid "Invalid Read Column" msgstr "Colonna di lettura non valida" -#: cps/admin.py:559 +#: cps/admin.py:563 msgid "Invalid Restricted Column" msgstr "Colonna con restrizioni non valida" -#: cps/admin.py:579 cps/admin.py:1355 +#: cps/admin.py:583 cps/admin.py:1791 msgid "Calibre-Web configuration updated" msgstr "La configurazione di Calibre-Web è stata aggiornata" -#: cps/admin.py:591 +#: cps/admin.py:595 msgid "Do you really want to delete the Kobo Token?" msgstr "Vuoi veramente eliminare il token di Kobo?" -#: cps/admin.py:593 +#: cps/admin.py:597 msgid "Do you really want to delete this domain?" msgstr "Vuoi veramente eliminare questo dominio?" -#: cps/admin.py:595 +#: cps/admin.py:599 msgid "Do you really want to delete this user?" msgstr "Vuoi veramente eliminare questo utente?" -#: cps/admin.py:597 +#: cps/admin.py:601 msgid "Are you sure you want to delete this shelf?" msgstr "Vuoi veramente eliminare questo scaffale?" -#: cps/admin.py:599 +#: cps/admin.py:603 msgid "Are you sure you want to change locales of selected user(s)?" msgstr "Sei sicuro di voler modificare le impostazioni locali dell'/degli utente/i selezionato/i?" -#: cps/admin.py:601 +#: cps/admin.py:605 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 dell'/degli utente/i selezionato/i?" -#: cps/admin.py:603 +#: cps/admin.py:607 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 dell'/degli utente/i selezionato/i?" -#: cps/admin.py:605 +#: cps/admin.py:609 #, fuzzy msgid "Are you sure you want to change the selected restrictions for the selected user(s)?" msgstr "Sei sicuro di voler modificare le impostazioni delle restrizioni di visualizzazione dell'/degli utente/i selezionato/i?" -#: cps/admin.py:607 +#: cps/admin.py:611 msgid "Are you sure you want to change the selected visibility restrictions for the selected user(s)?" msgstr "Sei sicuro di voler modificare le impostazioni delle restrizioni di visualizzazione dell'/degli utente/i selezionato/i?" -#: cps/admin.py:610 +#: cps/admin.py:614 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:612 +#: cps/admin.py:616 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:614 +#: cps/admin.py:618 +msgid "Calibre-Web will search for updated Covers and update Cover Thumbnails, this may take a while?" +msgstr "" + +#: cps/admin.py:620 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:764 -msgid "Tag not found" -msgstr "Etichetta non trovata" - -#: cps/admin.py:776 -msgid "Invalid Action" -msgstr "Azione non valida" - -#: cps/admin.py:893 cps/admin.py:899 cps/admin.py:909 cps/admin.py:919 +#: cps/admin.py:862 cps/admin.py:868 cps/admin.py:878 cps/admin.py:888 #: 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:895 cps/admin.py:901 cps/admin.py:911 cps/admin.py:921 +#: cps/admin.py:864 cps/admin.py:870 cps/admin.py:880 cps/admin.py:890 #: 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:936 +#: cps/admin.py:905 msgid "{} sync entries deleted" msgstr "" -#: cps/admin.py:1059 +#: cps/admin.py:953 +msgid "Tag not found" +msgstr "Etichetta non trovata" + +#: cps/admin.py:965 +msgid "Invalid Action" +msgstr "Azione non valida" + +#: cps/admin.py:1080 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "client_secrets.json non è configurato per Web Application" -#: cps/admin.py:1104 +#: cps/admin.py:1125 msgid "Logfile Location is not Valid, Please Enter Correct Path" msgstr "La posizione del Logfile non è valida, per favore indica il percorso corretto" -#: cps/admin.py:1110 +#: cps/admin.py:1131 msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgstr "La posizione dell'Access Logfile non è valida, per favore indica il percorso corretto" -#: cps/admin.py:1140 +#: cps/admin.py:1161 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:1146 +#: cps/admin.py:1167 msgid "Please Enter a LDAP Service Account and Password" msgstr "Per favore digita nome di utente e password del servizio LDAP" -#: cps/admin.py:1149 +#: cps/admin.py:1170 msgid "Please Enter a LDAP Service Account" msgstr "Per favore indica un account di servizio LDAP" -#: cps/admin.py:1154 +#: cps/admin.py:1175 #, 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:1156 +#: cps/admin.py:1177 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "LDAP Group Object Filter contiene una parentesi senza la corrispettiva" -#: cps/admin.py:1160 +#: cps/admin.py:1181 #, 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:1162 +#: cps/admin.py:1183 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "LDAP User Object Filter contiene una parentesi senza la corrispettiva" -#: cps/admin.py:1169 +#: cps/admin.py:1190 #, 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:1171 +#: cps/admin.py:1192 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "LDAP Member User Filter contiene una parentesi senza la corrispettiva" -#: cps/admin.py:1178 +#: cps/admin.py:1199 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:1223 cps/admin.py:1339 cps/admin.py:1437 cps/admin.py:1554 -#: cps/admin.py:1623 cps/editbooks.py:678 cps/editbooks.py:882 -#: cps/editbooks.py:1130 cps/shelf.py:100 cps/shelf.py:160 cps/shelf.py:203 -#: cps/shelf.py:278 cps/shelf.py:343 cps/shelf.py:380 cps/shelf.py:456 -#: cps/web.py:1742 +#: cps/admin.py:1230 cps/admin.py:1852 +msgid "Add new user" +msgstr "Aggiungi un nuovo utente" + +#: cps/admin.py:1239 cps/templates/admin.html:100 +msgid "Edit E-mail Server Settings" +msgstr "Modifica le impostazioni del server e-mail" + +#: cps/admin.py:1258 +msgid "Gmail Account Verification Successful" +msgstr "L'account Gmail è stato verificato con successo" + +#: cps/admin.py:1277 cps/admin.py:1658 cps/admin.py:1775 cps/admin.py:1873 +#: cps/admin.py:1990 cps/editbooks.py:227 cps/editbooks.py:301 +#: cps/editbooks.py:1196 cps/shelf.py:82 cps/shelf.py:142 cps/shelf.py:185 +#: cps/shelf.py:235 cps/shelf.py:272 cps/shelf.py:343 cps/shelf.py:457 +#: cps/tasks/convert.py:136 cps/web.py:1413 #, python-format msgid "Database error: %(error)s." msgstr "Errore nel database: %(error)s." -#: cps/admin.py:1235 -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:1253 -msgid "DB is not Writeable" -msgstr "Il DB non è scrivibile" - -#: cps/admin.py:1266 -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:1270 -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:1378 -msgid "Database Settings updated" -msgstr "Configurazione del Database aggiornata" - -#: cps/admin.py:1386 -msgid "Database Configuration" -msgstr "Configurazione del Database" - -#: cps/admin.py:1402 cps/web.py:1557 -msgid "Please fill out all fields!" -msgstr "Per favore compila tutti i campi!" - -#: cps/admin.py:1410 -msgid "E-mail is not from valid domain" -msgstr "L'e-mail non proviene da un dominio valido" - -#: cps/admin.py:1416 cps/admin.py:1576 -msgid "Add new user" -msgstr "Aggiungi un nuovo utente" - -#: cps/admin.py:1427 -#, python-format -msgid "User '%(user)s' created" -msgstr "L'utente '%(user)s' è stato creato" - -#: cps/admin.py:1433 -msgid "Found an existing account for this e-mail address or name." -msgstr "Trovato un account esistente con questo e-mail o nome di utente" - -#: cps/admin.py:1463 -#, python-format -msgid "User '%(nick)s' deleted" -msgstr "L'utente '%(nick)s' è stato eliminato" - -#: cps/admin.py:1465 cps/admin.py:1466 -msgid "Can't delete Guest User" -msgstr "Non posso eliminare l'utente Guest (ospite)" - -#: cps/admin.py:1469 -msgid "No admin user remaining, can't delete user" -msgstr "Non rimarrebbe nessun utente amministratore, non posso eliminare l'utente" - -#: cps/admin.py:1542 cps/admin.py:1667 -#, python-format -msgid "Edit User %(nick)s" -msgstr "Modifica l'utente %(nick)s" - -#: cps/admin.py:1546 -#, python-format -msgid "User '%(nick)s' updated" -msgstr "L'utente '%(nick)s' è stato aggiornato" - -#: cps/admin.py:1550 cps/admin.py:1682 cps/web.py:1582 cps/web.py:1642 -msgid "An unknown error occurred. Please try again later." -msgstr "Si è verificato un errore sconosciuto: per favore riprova." - -#: cps/admin.py:1585 cps/templates/admin.html:100 -msgid "Edit E-mail Server Settings" -msgstr "Modifica le impostazioni del server e-mail" - -#: cps/admin.py:1604 -msgid "Gmail Account Verification Successful" -msgstr "L'account Gmail è stato verificato con successo" - -#: cps/admin.py:1630 +#: cps/admin.py:1284 #, python-format msgid "Test e-mail queued for sending to %(email)s, please check Tasks for result" msgstr "L'e-mail di test è stato accodato con successo per essere spedito a %(email)s, per favore verifica tramite il pulsante 'Compito' il risultato" -#: cps/admin.py:1633 +#: cps/admin.py:1287 #, 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:1635 +#: cps/admin.py:1289 msgid "Please configure your e-mail address first..." msgstr "Per favore prima configura il tuo indirizzo e-mail..." -#: cps/admin.py:1637 +#: cps/admin.py:1291 msgid "E-mail server settings updated" msgstr "Configurazione del server e-mail aggiornata" -#: cps/admin.py:1679 +#: cps/admin.py:1314 cps/templates/admin.html:191 +msgid "Edit Scheduled Tasks Settings" +msgstr "" + +#: cps/admin.py:1326 +msgid "Invalid start time for task specified" +msgstr "" + +#: cps/admin.py:1331 +msgid "Invalid duration for task specified" +msgstr "" + +#: cps/admin.py:1340 +msgid "Scheduled tasks settings updated" +msgstr "" + +#: cps/admin.py:1350 cps/admin.py:1399 cps/admin.py:1986 cps/web.py:1254 +#: cps/web.py:1315 +msgid "An unknown error occurred. Please try again later." +msgstr "Si è verificato un errore sconosciuto: per favore riprova." + +#: cps/admin.py:1354 +msgid "Settings DB is not Writeable" +msgstr "" + +#: cps/admin.py:1384 cps/admin.py:1978 +#, python-format +msgid "Edit User %(nick)s" +msgstr "Modifica l'utente %(nick)s" + +#: cps/admin.py:1396 #, python-format msgid "Password for user %(user)s reset" msgstr "La password dell'utente %(user)s è stata resettata" -#: cps/admin.py:1685 cps/web.py:1522 +#: cps/admin.py:1402 cps/web.py:1194 msgid "Please configure the SMTP mail settings first..." msgstr "Configura dapprima le impostazioni del server SMTP..." -#: cps/admin.py:1696 +#: cps/admin.py:1413 msgid "Logfile viewer" msgstr "Visualizzatore del Logfile" -#: cps/admin.py:1762 +#: cps/admin.py:1479 msgid "Requesting update package" msgstr "Richiedo il pacchetto di aggiornamento" -#: cps/admin.py:1763 +#: cps/admin.py:1480 msgid "Downloading update package" msgstr "Scarico il pacchetto di aggiornamento" -#: cps/admin.py:1764 +#: cps/admin.py:1481 msgid "Unzipping update package" msgstr "Decomprimo il pacchetto di aggiornamento" -#: cps/admin.py:1765 +#: cps/admin.py:1482 msgid "Replacing files" msgstr "Sostituisco i file" -#: cps/admin.py:1766 +#: cps/admin.py:1483 msgid "Database connections are closed" msgstr "Le connessioni al database sono chiuse" -#: cps/admin.py:1767 +#: cps/admin.py:1484 msgid "Stopping server" msgstr "Arresto il server" -#: cps/admin.py:1768 +#: cps/admin.py:1485 msgid "Update finished, please press okay and reload page" msgstr "Aggiornamento completato, per favore premi ok e ricarica la pagina" -#: cps/admin.py:1769 cps/admin.py:1770 cps/admin.py:1771 cps/admin.py:1772 -#: cps/admin.py:1773 cps/admin.py:1774 +#: cps/admin.py:1486 cps/admin.py:1487 cps/admin.py:1488 cps/admin.py:1489 +#: cps/admin.py:1490 cps/admin.py:1491 msgid "Update failed:" msgstr "Aggiornamento non riuscito:" -#: cps/admin.py:1769 cps/updater.py:384 cps/updater.py:619 cps/updater.py:621 +#: cps/admin.py:1486 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 msgid "HTTP Error" msgstr "Errore HTTP" -#: cps/admin.py:1770 cps/updater.py:386 cps/updater.py:623 +#: cps/admin.py:1487 cps/updater.py:391 cps/updater.py:628 msgid "Connection error" msgstr "Errore di connessione" -#: cps/admin.py:1771 cps/updater.py:388 cps/updater.py:625 +#: cps/admin.py:1488 cps/updater.py:393 cps/updater.py:630 msgid "Timeout while establishing connection" msgstr "Tempo scaduto nello stabilire la connessione" -#: cps/admin.py:1772 cps/updater.py:390 cps/updater.py:627 +#: cps/admin.py:1489 cps/updater.py:395 cps/updater.py:632 msgid "General error" msgstr "Errore generale" -#: cps/admin.py:1773 +#: cps/admin.py:1490 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:1774 +#: cps/admin.py:1491 msgid "Files could not be replaced during update" msgstr "Durante l'aggiornamento non è stato possibile sostituire alcuni file" -#: cps/admin.py:1798 +#: cps/admin.py:1515 msgid "Failed to extract at least One LDAP User" msgstr "Fallita l'estrazione di almeno un utente LDAP" -#: cps/admin.py:1843 +#: cps/admin.py:1560 msgid "Failed to Create at Least One LDAP User" msgstr "Fallita la creazione di almeno un utente LDAP" -#: cps/admin.py:1856 +#: cps/admin.py:1573 #, python-format msgid "Error: %(ldaperror)s" msgstr "Errore: %(ldaperror)s" -#: cps/admin.py:1860 +#: cps/admin.py:1577 msgid "Error: No user returned in response of LDAP server" msgstr "Errore: nessun utente restituito in risposta dal server LDAP" -#: cps/admin.py:1893 +#: cps/admin.py:1610 msgid "At Least One LDAP User Not Found in Database" msgstr "Almeno un utente LDAP non è stato trovato nel database" -#: cps/admin.py:1895 +#: cps/admin.py:1612 msgid "{} User Successfully Imported" msgstr "{} utente importato con successo" -#: cps/converter.py:30 +#: cps/admin.py:1670 +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:1689 +msgid "DB is not Writeable" +msgstr "Il DB non è scrivibile" + +#: cps/admin.py:1702 +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:1706 +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:1814 +msgid "Database Settings updated" +msgstr "Configurazione del Database aggiornata" + +#: cps/admin.py:1822 +msgid "Database Configuration" +msgstr "Configurazione del Database" + +#: cps/admin.py:1838 cps/web.py:1229 +msgid "Please fill out all fields!" +msgstr "Per favore compila tutti i campi!" + +#: cps/admin.py:1846 +msgid "E-mail is not from valid domain" +msgstr "L'e-mail non proviene da un dominio valido" + +#: cps/admin.py:1863 +#, python-format +msgid "User '%(user)s' created" +msgstr "L'utente '%(user)s' è stato creato" + +#: cps/admin.py:1869 +msgid "Found an existing account for this e-mail address or name." +msgstr "Trovato un account esistente con questo e-mail o nome di utente" + +#: cps/admin.py:1899 +#, python-format +msgid "User '%(nick)s' deleted" +msgstr "L'utente '%(nick)s' è stato eliminato" + +#: cps/admin.py:1901 cps/admin.py:1902 +msgid "Can't delete Guest User" +msgstr "Non posso eliminare l'utente Guest (ospite)" + +#: cps/admin.py:1905 +msgid "No admin user remaining, can't delete user" +msgstr "Non rimarrebbe nessun utente amministratore, non posso eliminare l'utente" + +#: cps/admin.py:1982 +#, python-format +msgid "User '%(nick)s' updated" +msgstr "L'utente '%(nick)s' è stato aggiornato" + +#: cps/converter.py:31 msgid "not installed" msgstr "non installato" -#: cps/converter.py:31 +#: cps/converter.py:32 msgid "Execution permissions missing" msgstr "Mancano i permessi di esecuzione" -#: cps/db.py:674 cps/web.py:710 cps/web.py:1222 +#: cps/db.py:681 cps/search.py:134 cps/web.py:720 #, python-format msgid "Custom Column No.%(column)d is not existing in calibre database" msgstr "La colonna personale no.%(column)d non esiste nel database di Calibre" -#: cps/db.py:917 cps/templates/config_edit.html:204 +#: cps/db.py:924 cps/templates/config_edit.html:204 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 -#: cps/web.py:551 cps/web.py:585 cps/web.py:646 cps/web.py:671 cps/web.py:1003 -#: cps/web.py:1032 cps/web.py:1066 cps/web.py:1093 cps/web.py:1132 +#: cps/web.py:549 cps/web.py:583 cps/web.py:656 cps/web.py:681 cps/web.py:962 +#: cps/web.py:992 cps/web.py:1027 cps/web.py:1055 cps/web.py:1094 msgid "None" msgstr "Nessuna" -#: cps/editbooks.py:295 cps/editbooks.py:297 -msgid "Book Format Successfully Deleted" -msgstr "Il formato del libro è stato eliminato con successo" - -#: cps/editbooks.py:304 cps/editbooks.py:306 -msgid "Book Successfully Deleted" -msgstr "Il libro é stato eliminato con successo" - -#: cps/editbooks.py:358 -msgid "You are missing permissions to delete books" -msgstr "" - -#: cps/editbooks.py:373 cps/editbooks.py:765 cps/web.py:518 cps/web.py:1783 -#: cps/web.py:1825 cps/web.py:1870 +#: cps/editbooks.py:109 cps/editbooks.py:890 cps/web.py:516 cps/web.py:1454 +#: cps/web.py:1496 cps/web.py:1541 msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible" msgstr "Errore durante l'apertura del libro selezionato. Il file non esiste o il file non è accessibile" -#: cps/editbooks.py:408 -msgid "edit metadata" -msgstr "modifica i metadati" - -#: cps/editbooks.py:457 -#, python-format -msgid "%(seriesindex)s is not a valid number, skipping" -msgstr "%(seriesindex)s non è un numero valido, proseguo" - -#: cps/editbooks.py:493 cps/editbooks.py:1001 -#, fuzzy, python-format -msgid "'%(langname)s' is not a valid language" -msgstr "%(langname)s non è una lingua valida" - -#: cps/editbooks.py:634 -msgid "User has no rights to upload additional file formats" -msgstr "" - -#: cps/editbooks.py:639 cps/editbooks.py:1029 -#, 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:643 cps/editbooks.py:1033 -msgid "File to be uploaded must have an extension" -msgstr "Il file da caricare deve avere un'estensione" - -#: cps/editbooks.py:655 -#, python-format -msgid "Failed to create path %(path)s (Permission denied)." -msgstr "Impossibile creare la cartella %(path)s (autorizzazione negata)." - -#: cps/editbooks.py:660 -#, python-format -msgid "Failed to store file %(file)s." -msgstr "Il salvataggio del file %(file)s non è riuscito." - -#: cps/editbooks.py:683 -#, python-format -msgid "File format %(ext)s added to %(book)s" -msgstr "Ho aggiunto il formato %(ext)s al libro %(book)s" - -#: cps/editbooks.py:697 cps/editbooks.py:809 +#: cps/editbooks.py:153 cps/editbooks.py:1216 msgid "User has no rights to upload cover" msgstr "" -#: cps/editbooks.py:828 +#: cps/editbooks.py:173 cps/editbooks.py:711 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "Gli identificatori non tengono conto delle lettere maiuscole o minuscole, sovrascrivo l'identificatore precedente" -#: cps/editbooks.py:869 +#: cps/editbooks.py:214 msgid "Metadata successfully updated" msgstr "I metadati sono stati aggiornati con successo" -#: cps/editbooks.py:887 +#: cps/editbooks.py:232 msgid "Error editing book: {}" msgstr "" -#: cps/editbooks.py:951 -msgid "Uploaded book probably exists in the library, consider to change before upload new: " -msgstr "Probabilmente il libro caricato esiste già nella libreria; considera di cambiare prima di sottoporlo nuovamente: " - -#: cps/editbooks.py:1041 -#, 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:1061 -#, 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:1117 +#: cps/editbooks.py:287 #, python-format msgid "File %(file)s uploaded" msgstr "Il file %(file)s è stato caricato" -#: cps/editbooks.py:1143 +#: cps/editbooks.py:314 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:1151 +#: cps/editbooks.py:322 #, 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:1155 +#: cps/editbooks.py:326 #, 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:630 +msgid "Uploaded book probably exists in the library, consider to change before upload new: " +msgstr "Probabilmente il libro caricato esiste già nella libreria; considera di cambiare prima di sottoporlo nuovamente: " + +#: cps/editbooks.py:685 cps/editbooks.py:1010 +#, fuzzy, python-format +msgid "'%(langname)s' is not a valid language" +msgstr "%(langname)s non è una lingua valida" + +#: cps/editbooks.py:723 cps/editbooks.py:1157 +#, 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:727 cps/editbooks.py:1161 +msgid "File to be uploaded must have an extension" +msgstr "Il file da caricare deve avere un'estensione" + +#: cps/editbooks.py:735 +#, 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:755 +#, 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:812 cps/editbooks.py:814 +msgid "Book Format Successfully Deleted" +msgstr "Il formato del libro è stato eliminato con successo" + +#: cps/editbooks.py:821 cps/editbooks.py:823 +msgid "Book Successfully Deleted" +msgstr "Il libro é stato eliminato con successo" + +#: cps/editbooks.py:875 +msgid "You are missing permissions to delete books" +msgstr "" + +#: cps/editbooks.py:925 +msgid "edit metadata" +msgstr "modifica i metadati" + +#: cps/editbooks.py:974 +#, python-format +msgid "%(seriesindex)s is not a valid number, skipping" +msgstr "%(seriesindex)s non è un numero valido, proseguo" + +#: cps/editbooks.py:1152 +msgid "User has no rights to upload additional file formats" +msgstr "" + +#: cps/editbooks.py:1173 +#, python-format +msgid "Failed to create path %(path)s (Permission denied)." +msgstr "Impossibile creare la cartella %(path)s (autorizzazione negata)." + +#: cps/editbooks.py:1178 +#, python-format +msgid "Failed to store file %(file)s." +msgstr "Il salvataggio del file %(file)s non è riuscito." + +#: cps/editbooks.py:1201 +#, python-format +msgid "File format %(ext)s added to %(book)s" +msgstr "Ho aggiunto il formato %(ext)s al libro %(book)s" + #: cps/gdrive.py:58 msgid "Google Drive setup not completed, try to deactivate and activate Google Drive again" msgstr "La configurazione di Google Drive non è stata completata correttamente. Prova a disattivare e riattivare nuovamente Google Drive" @@ -603,27 +628,27 @@ 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 "Callback domain non è stato verificato. Per favore intraprendi il necessario per verificare il dominio nella developer console di Google" -#: cps/helper.py:81 +#: cps/helper.py:80 #, 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:87 cps/tasks/convert.py:75 +#: cps/helper.py:86 cps/tasks/convert.py:75 #, 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:92 +#: cps/helper.py:91 #, python-format msgid "%(format)s not found: %(fn)s" msgstr "%(format)s non trovato: %(fn)s" -#: cps/helper.py:97 cps/helper.py:221 cps/templates/detail.html:41 -#: cps/templates/detail.html:45 +#: cps/helper.py:96 cps/helper.py:221 cps/templates/detail.html:42 +#: cps/templates/detail.html:46 msgid "Send to Kindle" msgstr "Invia a Kindle" -#: cps/helper.py:98 cps/helper.py:115 cps/helper.py:223 +#: cps/helper.py:97 cps/helper.py:115 cps/helper.py:223 msgid "This e-mail has been sent via Calibre-Web." msgstr "Questo e-mail è stato spedito tramite Calibre-Web." @@ -663,131 +688,111 @@ msgstr "%(book)s inviato a Kindle" 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:353 +#: cps/helper.py:341 msgid "Read status could not set: {}" msgstr "" -#: cps/helper.py:376 +#: cps/helper.py:364 #, 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 sottocartelle: %(path)s" -#: cps/helper.py:382 +#: cps/helper.py:370 #, python-format msgid "Deleting book %(id)s failed: %(message)s" msgstr "L'eliminazione del libro %(id)s non è riuscita: %(message)s" -#: cps/helper.py:393 +#: cps/helper.py:381 #, 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:458 +#: cps/helper.py:446 #, fuzzy, python-format msgid "Rename author 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:529 cps/helper.py:538 +#: cps/helper.py:518 cps/helper.py:527 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "File %(file)s non trovato su Google Drive" -#: cps/helper.py:572 +#: cps/helper.py:561 #, 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:592 +#: cps/helper.py:581 msgid "Error in rename file in path: {}" msgstr "" -#: cps/helper.py:610 +#: cps/helper.py:599 #, python-format msgid "Book path %(path)s not found on Google Drive" msgstr "Non ho trovato la cartella %(path)s del libro su Google Drive" -#: cps/helper.py:651 cps/web.py:1737 +#: cps/helper.py:640 cps/web.py:1408 msgid "Found an existing account for this e-mail address" msgstr "Ho trovato un account creato in precedenza con questo indirizzo e-mail." -#: cps/helper.py:659 +#: cps/helper.py:648 msgid "This username is already taken" msgstr "Questo nome di utente è già utilizzato" -#: cps/helper.py:669 +#: cps/helper.py:658 msgid "Invalid e-mail address format" msgstr "L'e-mail non è scritto in un formato valido" -#: cps/helper.py:754 -msgid "Python modul 'advocate' is not installed but is needed for cover downloads" +#: cps/helper.py:808 +msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "" -#: cps/helper.py:767 +#: cps/helper.py:818 msgid "Error Downloading Cover" msgstr "Errore nello scaricare la copertina" -#: cps/helper.py:770 +#: cps/helper.py:821 msgid "Cover Format Error" msgstr "Errore di formato della copertina" -#: cps/helper.py:773 +#: cps/helper.py:824 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "" -#: cps/helper.py:783 +#: cps/helper.py:834 msgid "Failed to create path for cover" msgstr "Errore nel creare la cartella per la copertina" -#: cps/helper.py:799 +#: cps/helper.py:850 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:810 +#: cps/helper.py:861 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:822 +#: cps/helper.py:873 msgid "Invalid cover file content" msgstr "" -#: cps/helper.py:826 +#: cps/helper.py:877 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:878 +#: cps/helper.py:929 msgid "Unrar binary file not found" msgstr "Non ho trovato il file binario di UnRar" -#: cps/helper.py:889 +#: cps/helper.py:940 msgid "Error excecuting UnRar" msgstr "Errore nell'eseguire UnRar" -#: cps/helper.py:937 -msgid "Waiting" -msgstr "Attendi" - -#: cps/helper.py:939 -msgid "Failed" -msgstr "Non riuscito" - -#: cps/helper.py:941 -msgid "Started" -msgstr "Avviato" - -#: cps/helper.py:943 -msgid "Finished" -msgstr "Terminato" - -#: cps/helper.py:945 -msgid "Unknown Status" -msgstr "Stato sconosciuto" - -#: cps/kobo_auth.py:128 +#: cps/kobo_auth.py:89 #, fuzzy msgid "Please access Calibre-Web from non localhost to get valid api_endpoint for kobo device" msgstr "Per favore accedi a calibe-web non da localhost per ottenere un api-endpoint valido per il lettore kobo" -#: cps/kobo_auth.py:154 +#: cps/kobo_auth.py:115 msgid "Kobo Setup" msgstr "Configurazione di Kobo" @@ -796,7 +801,7 @@ msgstr "Configurazione di Kobo" msgid "Register with %(provider)s" msgstr "Registra con %(provider)s" -#: cps/oauth_bb.py:138 cps/remotelogin.py:130 cps/web.py:1613 +#: cps/oauth_bb.py:138 cps/remotelogin.py:130 cps/web.py:1286 #, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "ora sei connesso come: '%(nickname)s'" @@ -857,12 +862,12 @@ msgstr "Google, errore Oauth: per favore riprova più tardi." msgid "Google Oauth error: {}" msgstr "Google, errore Oauth: {}" -#: cps/opds.py:298 +#: cps/opds.py:287 msgid "{} Stars" msgstr "{} Stelle" -#: cps/remotelogin.py:62 cps/templates/layout.html:84 -#: cps/templates/login.html:4 cps/templates/login.html:21 cps/web.py:1662 +#: cps/remotelogin.py:62 cps/templates/layout.html:85 +#: cps/templates/login.html:4 cps/templates/login.html:21 cps/web.py:1335 msgid "Login" msgstr "Accesso" @@ -878,455 +883,488 @@ msgstr "Il token è scaduto" msgid "Success! Please return to your device" msgstr "Riuscito! Torna al tuo dispositivo" -#: cps/render_template.py:41 cps/web.py:407 +#: cps/render_template.py:40 cps/web.py:405 msgid "Books" msgstr "Libri" -#: cps/render_template.py:43 +#: cps/render_template.py:42 msgid "Show recent books" msgstr "Mostra l'opzione per la selezione dei libri più recenti" -#: cps/render_template.py:44 cps/templates/index.xml:25 +#: cps/render_template.py:43 cps/templates/index.xml:25 msgid "Hot Books" msgstr "Libri popolari" -#: cps/render_template.py:46 +#: cps/render_template.py:45 msgid "Show Hot Books" msgstr "Mostra l'opzione per la selezione dei libri più popolari" -#: cps/render_template.py:48 cps/render_template.py:53 +#: cps/render_template.py:47 cps/render_template.py:52 msgid "Downloaded Books" msgstr "Libri scaricati" -#: cps/render_template.py:50 cps/render_template.py:55 +#: cps/render_template.py:49 cps/render_template.py:54 #: cps/templates/user_table.html:167 msgid "Show Downloaded Books" msgstr "Mostra l'opzione per la visualizzazione dei libri scaricati" -#: cps/render_template.py:58 cps/templates/index.xml:32 cps/web.py:422 +#: cps/render_template.py:57 cps/templates/index.xml:32 cps/web.py:420 msgid "Top Rated Books" msgstr "Libri meglio valutati" -#: cps/render_template.py:60 cps/templates/user_table.html:161 +#: cps/render_template.py:59 cps/templates/user_table.html:161 msgid "Show Top Rated Books" msgstr "Mostra l'opzione per la selezione dei libri meglio valutati" -#: cps/render_template.py:61 cps/templates/index.xml:54 -#: cps/templates/index.xml:58 cps/web.py:729 +#: cps/render_template.py:60 cps/templates/index.xml:54 +#: cps/templates/index.xml:58 cps/web.py:739 msgid "Read Books" msgstr "Libri letti" -#: cps/render_template.py:63 +#: cps/render_template.py:62 msgid "Show read and unread" msgstr "Mostra l'opzione per la selezione letto e non letto" -#: cps/render_template.py:65 cps/templates/index.xml:61 -#: cps/templates/index.xml:65 cps/web.py:732 +#: cps/render_template.py:64 cps/templates/index.xml:61 +#: cps/templates/index.xml:65 cps/web.py:742 msgid "Unread Books" msgstr "Libri non letti" -#: cps/render_template.py:67 +#: cps/render_template.py:66 msgid "Show unread" msgstr "Mostra l'opzione per la selezione dei libri non letti" -#: cps/render_template.py:68 +#: cps/render_template.py:67 msgid "Discover" msgstr "Per scoprire" -#: cps/render_template.py:70 cps/templates/index.xml:50 +#: cps/render_template.py:69 cps/templates/index.xml:50 #: cps/templates/user_table.html:162 msgid "Show Random Books" msgstr "Mostra libri casualmente" -#: cps/render_template.py:71 cps/templates/book_table.html:67 -#: cps/templates/index.xml:83 cps/web.py:1135 +#: cps/render_template.py:70 cps/templates/book_table.html:67 +#: cps/templates/index.xml:83 cps/web.py:1098 msgid "Categories" msgstr "Categorie" -#: cps/render_template.py:73 cps/templates/user_table.html:158 +#: cps/render_template.py:72 cps/templates/user_table.html:158 msgid "Show category selection" msgstr "Mostra l'opzione per la selezione delle categorie" -#: cps/render_template.py:74 cps/templates/book_edit.html:90 +#: cps/render_template.py:73 cps/templates/book_edit.html:91 #: cps/templates/book_table.html:68 cps/templates/index.xml:90 -#: cps/templates/search_form.html:69 cps/web.py:1034 cps/web.py:1041 +#: cps/templates/search_form.html:69 cps/web.py:995 cps/web.py:1002 msgid "Series" msgstr "Serie" -#: cps/render_template.py:76 cps/templates/user_table.html:157 +#: cps/render_template.py:75 cps/templates/user_table.html:157 msgid "Show series selection" msgstr "Mostra l'opzione per la selezione delle serie" -#: cps/render_template.py:77 cps/templates/book_table.html:66 +#: cps/render_template.py:76 cps/templates/book_table.html:66 #: cps/templates/index.xml:69 msgid "Authors" msgstr "Autori" -#: cps/render_template.py:79 cps/templates/user_table.html:160 +#: cps/render_template.py:78 cps/templates/user_table.html:160 msgid "Show author selection" msgstr "Mostra l'opzione per la selezione degli autori" -#: cps/render_template.py:81 cps/templates/book_table.html:72 -#: cps/templates/index.xml:76 cps/web.py:1006 +#: cps/render_template.py:80 cps/templates/book_table.html:72 +#: cps/templates/index.xml:76 cps/web.py:966 msgid "Publishers" msgstr "Editori" -#: cps/render_template.py:83 cps/templates/user_table.html:163 +#: cps/render_template.py:82 cps/templates/user_table.html:163 msgid "Show publisher selection" msgstr "Mostra l'opzione per la selezione degli editori" -#: cps/render_template.py:84 cps/templates/book_table.html:70 +#: cps/render_template.py:83 cps/templates/book_table.html:70 #: cps/templates/index.xml:97 cps/templates/search_form.html:107 -#: cps/web.py:1108 +#: cps/web.py:1070 msgid "Languages" msgstr "Lingue" -#: cps/render_template.py:87 cps/templates/user_table.html:155 +#: cps/render_template.py:86 cps/templates/user_table.html:155 msgid "Show language selection" msgstr "Mostra l'opzione per la selezione delle lingue" -#: cps/render_template.py:88 cps/templates/index.xml:104 +#: cps/render_template.py:87 cps/templates/index.xml:104 msgid "Ratings" msgstr "Valutazioni" -#: cps/render_template.py:90 cps/templates/user_table.html:164 +#: cps/render_template.py:89 cps/templates/user_table.html:164 msgid "Show ratings selection" msgstr "Mostra l'opzione per la selezione delle valutazioni" -#: cps/render_template.py:91 cps/templates/index.xml:112 +#: cps/render_template.py:90 cps/templates/index.xml:112 msgid "File formats" msgstr "Formati file" -#: cps/render_template.py:93 cps/templates/user_table.html:165 +#: cps/render_template.py:92 cps/templates/user_table.html:165 msgid "Show file formats selection" msgstr "Mostra l'opzione per la selezione del formato dei file" -#: cps/render_template.py:95 cps/web.py:755 +#: cps/render_template.py:94 cps/web.py:765 msgid "Archived Books" msgstr "Libri archiviati" -#: cps/render_template.py:97 cps/templates/user_table.html:166 +#: cps/render_template.py:96 cps/templates/user_table.html:166 msgid "Show archived books" msgstr "Mostra l'opzione per la selezione dei libri archiviati" -#: cps/render_template.py:100 cps/web.py:837 +#: cps/render_template.py:99 cps/web.py:796 msgid "Books List" msgstr "Elenco libri" -#: cps/render_template.py:102 cps/templates/user_table.html:168 +#: cps/render_template.py:101 cps/templates/user_table.html:168 msgid "Show Books List" msgstr "Mostra l'opzione per visualizzare i libri sottoforma di elenco" -#: cps/shelf.py:67 cps/shelf.py:121 -msgid "Invalid shelf specified" -msgstr "Lo scaffale specificato non è valido" - -#: cps/shelf.py:73 -#, fuzzy -msgid "Sorry you are not allowed to add a book to that shelf" -msgstr "Mi spiace, ma non sei autorizzato ad aggiungere libri allo scaffale: %(shelfname)s" - -#: cps/shelf.py:82 -#, python-format -msgid "Book is already part of the shelf: %(shelfname)s" -msgstr "Il libro è gia presente nello scaffale: %(shelfname)s" - -#: cps/shelf.py:107 -#, python-format -msgid "Book has been added to shelf: %(sname)s" -msgstr "Il libro è stato aggiunto allo scaffale: %(sname)s" - -#: cps/shelf.py:126 -msgid "You are not allowed to add a book to the shelf" -msgstr "" - -#: cps/shelf.py:144 -#, python-format -msgid "Books are already part of the shelf: %(name)s" -msgstr "I libri sono già presenti nello scaffale: %(name)s" - -#: cps/shelf.py:156 -#, python-format -msgid "Books have been added to shelf: %(sname)s" -msgstr "I libri sono stati aggiunti allo scaffale: %(sname)s" - -#: cps/shelf.py:163 -#, python-format -msgid "Could not add books to shelf: %(sname)s" -msgstr "Non posso aggiungere libri allo scaffale: %(sname)s" - -#: cps/shelf.py:209 -#, python-format -msgid "Book has been removed from shelf: %(sname)s" -msgstr "Il libro è stato rimosso dallo scaffale: %(sname)s" - -#: cps/shelf.py:218 -msgid "Sorry you are not allowed to remove a book from this shelf" -msgstr "" - -#: cps/shelf.py:228 cps/templates/layout.html:140 -msgid "Create a Shelf" -msgstr "Crea uno scaffale" - -#: cps/shelf.py:236 -msgid "Sorry you are not allowed to edit this shelf" -msgstr "Spiacente, non sei autorizzato a modificare questo scaffale" - -#: cps/shelf.py:238 -msgid "Edit a shelf" -msgstr "Modifica uno scaffale" - -#: cps/shelf.py:248 -msgid "Sorry you are not allowed to create a public shelf" -msgstr "" - -#: cps/shelf.py:265 -#, python-format -msgid "Shelf %(title)s created" -msgstr "Lo scaffale %(title)s è stato creato" - -#: cps/shelf.py:268 -#, python-format -msgid "Shelf %(title)s changed" -msgstr "Lo scaffale %(title)s è stato modificato" - -#: cps/shelf.py:282 -msgid "There was an error" -msgstr "C'era un errore" - -#: cps/shelf.py:304 -#, python-format -msgid "A public shelf with the name '%(title)s' already exists." -msgstr "Esiste già uno scaffale pubblico denominato '%(title)s'." - -#: cps/shelf.py:315 -#, python-format -msgid "A private shelf with the name '%(title)s' already exists." -msgstr "Esiste già uno scaffale privato denominato '%(title)s'." - -#: cps/shelf.py:337 -msgid "Error deleting Shelf" -msgstr "" - -#: cps/shelf.py:339 -#, fuzzy -msgid "Shelf successfully deleted" -msgstr "Il libro é stato eliminato con successo" - -#: cps/shelf.py:389 -#, python-format -msgid "Change order of Shelf: '%(name)s'" -msgstr "Modifica l'ordine dello scaffale: '%(name)s'" - -#: cps/shelf.py:461 -#, python-format -msgid "Shelf: '%(name)s'" -msgstr "Scaffale: '%(name)s'" - -#: cps/shelf.py:465 -msgid "Error opening shelf. Shelf does not exist or is not accessible" -msgstr "Errore durante l'apertura dello scaffale. Lo scaffale non esiste o non è accessibile" - -#: cps/updater.py:426 cps/updater.py:437 cps/updater.py:538 cps/updater.py:553 -msgid "Unexpected data while reading update information" -msgstr "Dati inattesi durante il processo di aggiornamento" - -#: cps/updater.py:433 cps/updater.py:545 -msgid "No update available. You already have the latest version installed" -msgstr "Nessun aggiornamento disponibile. Hai già installata l'ultima versione" - -#: cps/updater.py:451 -msgid "A new update is available. Click on the button below to update to the latest version." -msgstr "Nuovo aggiornamento disponibile. Clicca sul pulsante sottostante per aggiornare all'ultima versione." - -#: cps/updater.py:469 -msgid "Could not fetch update information" -msgstr "Impossibile recuperare le informazioni di aggiornamento" - -#: cps/updater.py:479 -msgid "Click on the button below to update to the latest stable version." -msgstr "Clicca sul pulsante per aggiornare all'ultima versione stabile." - -#: cps/updater.py:488 cps/updater.py:502 cps/updater.py:513 -#, python-format -msgid "A new update is available. Click on the button below to update to version: %(version)s" -msgstr "Nuovo aggiornamento disponibile. Clicca sul pulsante sottostante per aggiornare alla versione: %(version)s" - -#: cps/updater.py:531 -msgid "No release information available" -msgstr "Non sono disponibili informazioni sulla versione" - -#: cps/templates/index.html:5 cps/web.py:434 -msgid "Discover (Random Books)" -msgstr "Scopri (libri casuali)" - -#: cps/web.py:470 -msgid "Hot Books (Most Downloaded)" -msgstr "I libri più richiesti" - -#: cps/web.py:501 -#, python-format -msgid "Downloaded books by %(user)s" -msgstr "I libri scaricati da %(user)s" - -#: cps/web.py:534 -#, python-format -msgid "Author: %(name)s" -msgstr "Autore: %(name)s" - -#: cps/web.py:570 -#, python-format -msgid "Publisher: %(name)s" -msgstr "Editore: %(name)s" - -#: cps/web.py:598 -#, python-format -msgid "Series: %(serie)s" -msgstr "Serie: %(serie)s" - -#: cps/web.py:610 -#, python-format -msgid "Rating: %(rating)s stars" -msgstr "Valutazione: %(rating)s stelle" - -#: cps/web.py:626 -#, python-format -msgid "File format: %(format)s" -msgstr "Formato del file: %(format)s" - -#: cps/web.py:663 -#, python-format -msgid "Category: %(name)s" -msgstr "Categoria: %(name)s" - -#: cps/web.py:690 -#, python-format -msgid "Language: %(name)s" -msgstr "Lingua: %(name)s" - -#: cps/templates/layout.html:56 cps/web.py:789 cps/web.py:1444 -msgid "Advanced Search" -msgstr "Ricerca avanzata" - -#: cps/templates/book_edit.html:235 cps/templates/feed.xml:33 -#: cps/templates/index.xml:11 cps/templates/layout.html:45 -#: cps/templates/layout.html:48 cps/templates/search_form.html:226 -#: cps/web.py:807 cps/web.py:1164 +#: cps/search.py:48 cps/search.py:414 cps/templates/book_edit.html:236 +#: cps/templates/feed.xml:33 cps/templates/index.xml:11 +#: cps/templates/layout.html:46 cps/templates/layout.html:49 +#: cps/templates/search_form.html:226 msgid "Search" msgstr "Cerca" -#: cps/templates/admin.html:16 cps/web.py:979 -msgid "Downloads" -msgstr "Downloads" - -#: cps/web.py:1068 -msgid "Ratings list" -msgstr "Elenco delle valutazioni" - -#: cps/web.py:1095 -msgid "File formats list" -msgstr "Elenco dei formati" - -#: cps/templates/layout.html:73 cps/templates/tasks.html:7 cps/web.py:1149 -msgid "Tasks" -msgstr "Compito" - -#: cps/web.py:1286 +#: cps/search.py:194 msgid "Published after " msgstr "Pubblicato dopo il " -#: cps/web.py:1293 +#: cps/search.py:201 msgid "Published before " msgstr "Pubblicato prima del " -#: cps/web.py:1315 +#: cps/search.py:223 #, python-format msgid "Rating <= %(rating)s" msgstr "Valutazione <= %(rating)s" -#: cps/web.py:1317 +#: cps/search.py:225 #, python-format msgid "Rating >= %(rating)s" msgstr "Valutazione >= %(rating)s" -#: cps/web.py:1319 +#: cps/search.py:227 #, python-format msgid "Read Status = %(status)s" msgstr "Stato di lettura = %(status)s" -#: cps/web.py:1425 +#: cps/search.py:345 msgid "Error on search for custom columns, please restart Calibre-Web" msgstr "Errore di ricerca nelle colonne personalizzate. Per favore riavvia Calibre-Web" -#: cps/web.py:1527 +#: cps/search.py:364 cps/search.py:396 cps/templates/layout.html:57 +msgid "Advanced Search" +msgstr "Ricerca avanzata" + +#: cps/shelf.py:49 cps/shelf.py:103 +msgid "Invalid shelf specified" +msgstr "Lo scaffale specificato non è valido" + +#: cps/shelf.py:55 +#, fuzzy +msgid "Sorry you are not allowed to add a book to that shelf" +msgstr "Mi spiace, ma non sei autorizzato ad aggiungere libri allo scaffale: %(shelfname)s" + +#: cps/shelf.py:64 +#, python-format +msgid "Book is already part of the shelf: %(shelfname)s" +msgstr "Il libro è gia presente nello scaffale: %(shelfname)s" + +#: cps/shelf.py:89 +#, python-format +msgid "Book has been added to shelf: %(sname)s" +msgstr "Il libro è stato aggiunto allo scaffale: %(sname)s" + +#: cps/shelf.py:108 +msgid "You are not allowed to add a book to the shelf" +msgstr "" + +#: cps/shelf.py:126 +#, python-format +msgid "Books are already part of the shelf: %(name)s" +msgstr "I libri sono già presenti nello scaffale: %(name)s" + +#: cps/shelf.py:138 +#, python-format +msgid "Books have been added to shelf: %(sname)s" +msgstr "I libri sono stati aggiunti allo scaffale: %(sname)s" + +#: cps/shelf.py:145 +#, python-format +msgid "Could not add books to shelf: %(sname)s" +msgstr "Non posso aggiungere libri allo scaffale: %(sname)s" + +#: cps/shelf.py:191 +#, python-format +msgid "Book has been removed from shelf: %(sname)s" +msgstr "Il libro è stato rimosso dallo scaffale: %(sname)s" + +#: cps/shelf.py:200 +msgid "Sorry you are not allowed to remove a book from this shelf" +msgstr "" + +#: cps/shelf.py:210 cps/templates/layout.html:141 +msgid "Create a Shelf" +msgstr "Crea uno scaffale" + +#: cps/shelf.py:218 +msgid "Sorry you are not allowed to edit this shelf" +msgstr "Spiacente, non sei autorizzato a modificare questo scaffale" + +#: cps/shelf.py:220 +msgid "Edit a shelf" +msgstr "Modifica uno scaffale" + +#: cps/shelf.py:229 +msgid "Error deleting Shelf" +msgstr "" + +#: cps/shelf.py:231 +#, fuzzy +msgid "Shelf successfully deleted" +msgstr "Il libro é stato eliminato con successo" + +#: cps/shelf.py:281 +#, python-format +msgid "Change order of Shelf: '%(name)s'" +msgstr "Modifica l'ordine dello scaffale: '%(name)s'" + +#: cps/shelf.py:313 +msgid "Sorry you are not allowed to create a public shelf" +msgstr "" + +#: cps/shelf.py:330 +#, python-format +msgid "Shelf %(title)s created" +msgstr "Lo scaffale %(title)s è stato creato" + +#: cps/shelf.py:333 +#, python-format +msgid "Shelf %(title)s changed" +msgstr "Lo scaffale %(title)s è stato modificato" + +#: cps/shelf.py:347 +msgid "There was an error" +msgstr "C'era un errore" + +#: cps/shelf.py:369 +#, python-format +msgid "A public shelf with the name '%(title)s' already exists." +msgstr "Esiste già uno scaffale pubblico denominato '%(title)s'." + +#: cps/shelf.py:380 +#, python-format +msgid "A private shelf with the name '%(title)s' already exists." +msgstr "Esiste già uno scaffale privato denominato '%(title)s'." + +#: cps/shelf.py:462 +#, python-format +msgid "Shelf: '%(name)s'" +msgstr "Scaffale: '%(name)s'" + +#: cps/shelf.py:466 +msgid "Error opening shelf. Shelf does not exist or is not accessible" +msgstr "Errore durante l'apertura dello scaffale. Lo scaffale non esiste o non è accessibile" + +#: cps/tasks_status.py:48 cps/templates/layout.html:74 +#: cps/templates/tasks.html:7 +msgid "Tasks" +msgstr "Compito" + +#: cps/tasks_status.py:64 +msgid "Waiting" +msgstr "Attendi" + +#: cps/tasks_status.py:66 +msgid "Failed" +msgstr "Non riuscito" + +#: cps/tasks_status.py:68 +msgid "Started" +msgstr "Avviato" + +#: cps/tasks_status.py:70 +msgid "Finished" +msgstr "Terminato" + +#: cps/tasks_status.py:72 +msgid "Ended" +msgstr "" + +#: cps/tasks_status.py:74 +msgid "Cancelled" +msgstr "" + +#: cps/tasks_status.py:76 +msgid "Unknown Status" +msgstr "Stato sconosciuto" + +#: cps/updater.py:431 cps/updater.py:442 cps/updater.py:543 cps/updater.py:558 +msgid "Unexpected data while reading update information" +msgstr "Dati inattesi durante il processo di aggiornamento" + +#: cps/updater.py:438 cps/updater.py:550 +msgid "No update available. You already have the latest version installed" +msgstr "Nessun aggiornamento disponibile. Hai già installata l'ultima versione" + +#: cps/updater.py:456 +msgid "A new update is available. Click on the button below to update to the latest version." +msgstr "Nuovo aggiornamento disponibile. Clicca sul pulsante sottostante per aggiornare all'ultima versione." + +#: cps/updater.py:474 +msgid "Could not fetch update information" +msgstr "Impossibile recuperare le informazioni di aggiornamento" + +#: cps/updater.py:484 +msgid "Click on the button below to update to the latest stable version." +msgstr "Clicca sul pulsante per aggiornare all'ultima versione stabile." + +#: cps/updater.py:493 cps/updater.py:507 cps/updater.py:518 +#, python-format +msgid "A new update is available. Click on the button below to update to version: %(version)s" +msgstr "Nuovo aggiornamento disponibile. Clicca sul pulsante sottostante per aggiornare alla versione: %(version)s" + +#: cps/updater.py:536 +msgid "No release information available" +msgstr "Non sono disponibili informazioni sulla versione" + +#: cps/templates/index.html:6 cps/web.py:432 +msgid "Discover (Random Books)" +msgstr "Scopri (libri casuali)" + +#: cps/web.py:468 +msgid "Hot Books (Most Downloaded)" +msgstr "I libri più richiesti" + +#: cps/web.py:499 +#, python-format +msgid "Downloaded books by %(user)s" +msgstr "I libri scaricati da %(user)s" + +#: cps/web.py:532 +#, python-format +msgid "Author: %(name)s" +msgstr "Autore: %(name)s" + +#: cps/web.py:568 +#, python-format +msgid "Publisher: %(name)s" +msgstr "Editore: %(name)s" + +#: cps/web.py:596 +#, python-format +msgid "Series: %(serie)s" +msgstr "Serie: %(serie)s" + +#: cps/web.py:609 +msgid "Rating: None" +msgstr "" + +#: cps/web.py:618 +#, python-format +msgid "Rating: %(rating)s stars" +msgstr "Valutazione: %(rating)s stelle" + +#: cps/web.py:636 +#, python-format +msgid "File format: %(format)s" +msgstr "Formato del file: %(format)s" + +#: cps/web.py:673 +#, python-format +msgid "Category: %(name)s" +msgstr "Categoria: %(name)s" + +#: cps/web.py:700 +#, python-format +msgid "Language: %(name)s" +msgstr "Lingua: %(name)s" + +#: cps/templates/admin.html:16 cps/web.py:938 +msgid "Downloads" +msgstr "Downloads" + +#: cps/web.py:1030 +msgid "Ratings list" +msgstr "Elenco delle valutazioni" + +#: cps/web.py:1057 +msgid "File formats list" +msgstr "Elenco dei formati" + +#: cps/web.py:1199 #, python-format msgid "Book successfully queued for sending to %(kindlemail)s" msgstr "Libro accodato con successo per essere spedito a %(kindlemail)s" -#: cps/web.py:1531 +#: cps/web.py:1203 #, python-format msgid "Oops! There was an error sending this book: %(res)s" msgstr "Oops! Si è verificato un errore durante l'invio di questo libro: %(res)s" -#: cps/web.py:1533 +#: cps/web.py:1205 msgid "Please update your profile with a valid Send to Kindle E-mail Address." msgstr "Per favore aggiorna il tuo profilo con un indirizzo e-mail Kindle a cui inviare i libri." -#: cps/web.py:1550 +#: cps/web.py:1222 msgid "E-Mail server is not configured, please contact your administrator!" msgstr "Il server e-mail non è configurato, per favore contatta l'amministratore" -#: cps/templates/layout.html:85 cps/templates/register.html:17 cps/web.py:1551 -#: cps/web.py:1558 cps/web.py:1564 cps/web.py:1583 cps/web.py:1587 -#: cps/web.py:1593 +#: cps/templates/layout.html:86 cps/templates/register.html:17 cps/web.py:1223 +#: cps/web.py:1230 cps/web.py:1236 cps/web.py:1255 cps/web.py:1260 +#: cps/web.py:1266 msgid "Register" msgstr "Registra" -#: cps/web.py:1585 +#: cps/web.py:1257 msgid "Your e-mail is not allowed to register" msgstr "Il tuo e-mail non è autorizzato alla registrazione" -#: cps/web.py:1588 +#: cps/web.py:1261 msgid "Confirmation e-mail was send to your e-mail account." msgstr "Un messaggio di conferma è stato inviato al tuo recapito e-mail." -#: cps/web.py:1602 +#: cps/web.py:1275 msgid "Cannot activate LDAP authentication" msgstr "Non posso attivare l'autenticazione LDAP" -#: cps/web.py:1621 +#: cps/web.py:1294 #, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgstr "Fallback login come: '%(nickname)s', il server LDAP non è raggiungibile o l'utente è sconosciuto" -#: cps/web.py:1627 +#: cps/web.py:1300 #, python-format msgid "Could not login: %(message)s" msgstr "Non posso accedere: %(message)s" -#: cps/web.py:1631 cps/web.py:1656 +#: cps/web.py:1304 cps/web.py:1329 msgid "Wrong Username or Password" msgstr "Nome utente o password errati" -#: cps/web.py:1638 +#: cps/web.py:1311 msgid "New Password was send to your email address" msgstr "Una nuova password è stata inviata al tuo recapito e-mail" -#: cps/web.py:1644 +#: cps/web.py:1317 msgid "Please enter valid username to reset password" msgstr "Per favore digita un nome di utente valido per resettare la password" -#: cps/web.py:1651 +#: cps/web.py:1324 #, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "Ora sei connesso come '%(nickname)s'" -#: cps/web.py:1717 cps/web.py:1766 +#: cps/web.py:1388 cps/web.py:1437 #, python-format msgid "%(name)s's profile" msgstr "Profilo di %(name)s" -#: cps/web.py:1733 +#: cps/web.py:1404 msgid "Profile updated" msgstr "Profilo aggiornato" @@ -1334,40 +1372,75 @@ msgstr "Profilo aggiornato" msgid "Found no valid gmail.json file with OAuth information" msgstr "Ho trovato un gmail.json file senza informazione OAuth" -#: cps/tasks/convert.py:154 +#: cps/tasks/convert.py:153 #, 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:187 +#: cps/tasks/convert.py:186 #, python-format msgid "%(format)s format not found on disk" msgstr "Non ho trovato il formato %(format)s nel disco" -#: cps/tasks/convert.py:191 +#: cps/tasks/convert.py:190 msgid "Ebook converter failed with unknown error" msgstr "La conversione del libro è terminata con un errore sconosciuto" -#: cps/tasks/convert.py:201 +#: cps/tasks/convert.py:200 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "Si è verificato un errore con il convertitore Kepubify: %(error)s" -#: cps/tasks/convert.py:223 +#: cps/tasks/convert.py:222 #, python-format msgid "Converted file not found or more than one file in folder %(folder)s" msgstr "Non ho trovato il file convertito o ci sono più di un file nella cartella %(folder)s" -#: cps/tasks/convert.py:246 +#: cps/tasks/convert.py:245 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "Errore nel convertitore: %(error)s" -#: cps/tasks/convert.py:269 +#: cps/tasks/convert.py:268 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "Si è verificato un errore con Calibre: %(error)s" +#: cps/tasks/convert.py:273 +msgid "Convert" +msgstr "" + +#: cps/tasks/database.py:28 +msgid "Reconnecting Calibre database" +msgstr "" + +#: cps/tasks/mail.py:265 +msgid "E-mail" +msgstr "" + +#: cps/tasks/thumbnail.py:95 +#, python-format +msgid "Generated %(count)s cover thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:222 cps/tasks/thumbnail.py:435 +#: cps/tasks/thumbnail.py:503 +msgid "Cover Thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:281 +msgid "Generated {0} series thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:446 +msgid "Clearing cover thumbnail cache" +msgstr "" + +#: cps/tasks/upload.py:38 cps/templates/admin.html:20 +#: cps/templates/layout.html:67 cps/templates/user_table.html:145 +msgid "Upload" +msgstr "Upload" + #: cps/templates/admin.html:9 msgid "Users" msgstr "Elenco utenti" @@ -1387,7 +1460,7 @@ msgstr "Indirizzo e-mail" msgid "Send to Kindle E-mail Address" msgstr "Invia all'indirizzo e-mail di Kindle" -#: cps/templates/admin.html:17 cps/templates/layout.html:76 +#: cps/templates/admin.html:17 cps/templates/layout.html:77 #: cps/templates/user_table.html:143 msgid "Admin" msgstr "Amministrazione" @@ -1397,13 +1470,8 @@ msgstr "Amministrazione" msgid "Password" msgstr "Password" -#: cps/templates/admin.html:20 cps/templates/layout.html:66 -#: cps/templates/user_table.html:145 -msgid "Upload" -msgstr "Upload" - -#: cps/templates/admin.html:22 cps/templates/detail.html:18 -#: cps/templates/detail.html:27 cps/templates/shelf.html:7 +#: cps/templates/admin.html:22 cps/templates/detail.html:19 +#: cps/templates/detail.html:28 cps/templates/shelf.html:8 #: cps/templates/user_table.html:146 msgid "Download" msgstr "Download" @@ -1417,7 +1485,7 @@ msgstr "Vedi libri" msgid "Edit" msgstr "Modifica" -#: cps/templates/admin.html:25 cps/templates/book_edit.html:16 +#: cps/templates/admin.html:25 cps/templates/book_edit.html:17 #: cps/templates/book_table.html:100 cps/templates/modal_dialogs.html:63 #: cps/templates/modal_dialogs.html:116 cps/templates/user_edit.html:67 #: cps/templates/user_table.html:149 @@ -1529,78 +1597,107 @@ msgstr "Modifica la configurazione di base" msgid "Edit UI Configuration" msgstr "Modifica la configurazione dell'interfaccia utente" -#: cps/templates/admin.html:166 +#: cps/templates/admin.html:167 +msgid "Scheduled Tasks" +msgstr "" + +#: cps/templates/admin.html:170 cps/templates/schedule_edit.html:12 +msgid "Time at which tasks start to run" +msgstr "" + +#: cps/templates/admin.html:174 cps/templates/schedule_edit.html:20 +msgid "Maximum tasks duration" +msgstr "" + +#: cps/templates/admin.html:178 +msgid "Generate book cover thumbnails" +msgstr "" + +#: cps/templates/admin.html:182 +msgid "Generate series cover thumbnails" +msgstr "" + +#: cps/templates/admin.html:186 cps/templates/schedule_edit.html:37 +msgid "Reconnect to Calibre Library" +msgstr "" + +#: cps/templates/admin.html:193 +msgid "Refresh Thumbnail Cover Cache" +msgstr "" + +#: cps/templates/admin.html:199 msgid "Administration" msgstr "Amministrazione" -#: cps/templates/admin.html:167 +#: cps/templates/admin.html:200 msgid "Download Debug Package" msgstr "Scarica Debug Package" -#: cps/templates/admin.html:168 +#: cps/templates/admin.html:201 msgid "View Logs" msgstr "Visualizza Logfile" -#: cps/templates/admin.html:171 +#: cps/templates/admin.html:204 msgid "Reconnect Calibre Database" msgstr "Ricollega il database di Calibre" -#: cps/templates/admin.html:172 +#: cps/templates/admin.html:207 msgid "Restart" msgstr "Riavvia Calibre-Web" -#: cps/templates/admin.html:173 +#: cps/templates/admin.html:208 msgid "Shutdown" msgstr "Arresta Calibre-Web" -#: cps/templates/admin.html:178 -msgid "Update" -msgstr "Aggiornamento" +#: cps/templates/admin.html:213 +msgid "Version Information" +msgstr "" -#: cps/templates/admin.html:182 +#: cps/templates/admin.html:217 msgid "Version" msgstr "Versione" -#: cps/templates/admin.html:183 +#: cps/templates/admin.html:218 msgid "Details" msgstr "Dettagli" -#: cps/templates/admin.html:189 +#: cps/templates/admin.html:224 msgid "Current version" msgstr "Versione attuale" -#: cps/templates/admin.html:196 +#: cps/templates/admin.html:231 msgid "Check for Update" msgstr "Ricerca aggiornamenti" -#: cps/templates/admin.html:197 +#: cps/templates/admin.html:232 msgid "Perform Update" msgstr "Esegui l'aggiornamento" -#: cps/templates/admin.html:210 +#: cps/templates/admin.html:245 msgid "Are you sure you want to restart?" msgstr "Vuoi veramente riavviare Calibre-Web?" -#: cps/templates/admin.html:215 cps/templates/admin.html:229 -#: cps/templates/admin.html:249 cps/templates/config_db.html:70 +#: cps/templates/admin.html:250 cps/templates/admin.html:264 +#: cps/templates/admin.html:284 cps/templates/config_db.html:70 msgid "OK" msgstr "Ok" -#: cps/templates/admin.html:216 cps/templates/admin.html:230 -#: cps/templates/book_edit.html:213 cps/templates/book_table.html:127 +#: cps/templates/admin.html:251 cps/templates/admin.html:265 +#: cps/templates/book_edit.html:214 cps/templates/book_table.html:127 #: cps/templates/config_db.html:54 cps/templates/config_edit.html:359 #: 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/shelf_edit.html:27 +#: cps/templates/modal_dialogs.html:135 cps/templates/schedule_edit.html:41 +#: 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:228 +#: cps/templates/admin.html:263 msgid "Are you sure you want to shutdown?" msgstr "Vuoi veramente arrestare Calibre-Web?" -#: cps/templates/admin.html:240 +#: cps/templates/admin.html:275 msgid "Updating, please do not reload this page" msgstr "Aggiornamento, non ricaricare la pagina." @@ -1612,39 +1709,39 @@ msgstr "via" msgid "In Library" msgstr "Nella libreria" -#: cps/templates/author.html:26 cps/templates/index.html:73 -#: cps/templates/search.html:30 cps/templates/shelf.html:19 +#: cps/templates/author.html:26 cps/templates/index.html:74 +#: cps/templates/search.html:31 cps/templates/shelf.html:20 msgid "Sort according to book date, newest first" msgstr "Ordina secondo la data dei libri, prima i più recenti" -#: cps/templates/author.html:27 cps/templates/index.html:74 -#: cps/templates/search.html:31 cps/templates/shelf.html:20 +#: cps/templates/author.html:27 cps/templates/index.html:75 +#: cps/templates/search.html:32 cps/templates/shelf.html:21 msgid "Sort according to book date, oldest first" msgstr "Ordina secondo la data dei libri, prima i più vecchi" -#: cps/templates/author.html:28 cps/templates/index.html:75 -#: cps/templates/search.html:32 cps/templates/shelf.html:21 +#: cps/templates/author.html:28 cps/templates/index.html:76 +#: cps/templates/search.html:33 cps/templates/shelf.html:22 msgid "Sort title in alphabetical order" msgstr "Ordina i titoli in ordine alfabetico" -#: cps/templates/author.html:29 cps/templates/index.html:76 -#: cps/templates/search.html:33 cps/templates/shelf.html:22 +#: cps/templates/author.html:29 cps/templates/index.html:77 +#: cps/templates/search.html:34 cps/templates/shelf.html:23 msgid "Sort title in reverse alphabetical order" msgstr "Ordina i titoli in ordine alfabetico inverso" -#: cps/templates/author.html:30 cps/templates/index.html:79 -#: cps/templates/search.html:36 cps/templates/shelf.html:25 +#: cps/templates/author.html:30 cps/templates/index.html:80 +#: cps/templates/search.html:37 cps/templates/shelf.html:26 msgid "Sort according to publishing date, newest first" msgstr "Ordina secondo la data di pubblicazione, prima i più recenti" -#: cps/templates/author.html:31 cps/templates/index.html:80 -#: cps/templates/search.html:37 cps/templates/shelf.html:26 +#: cps/templates/author.html:31 cps/templates/index.html:81 +#: cps/templates/search.html:38 cps/templates/shelf.html:27 msgid "Sort according to publishing date, oldest first" msgstr "Ordina secondo la data di pubblicazione, prima i più vecchi" #: cps/templates/author.html:56 cps/templates/author.html:115 -#: cps/templates/index.html:29 cps/templates/index.html:112 -#: cps/templates/search.html:66 cps/templates/shelf.html:54 +#: cps/templates/index.html:30 cps/templates/index.html:113 +#: cps/templates/search.html:67 cps/templates/shelf.html:55 msgid "reduce" msgstr "riduci" @@ -1652,164 +1749,165 @@ msgstr "riduci" msgid "More by" msgstr "Altro da" -#: cps/templates/book_edit.html:10 +#: cps/templates/book_edit.html:11 msgid "Delete Book" msgstr "Elimina libro" -#: cps/templates/book_edit.html:13 +#: cps/templates/book_edit.html:14 msgid "Delete formats:" msgstr "Elimina i formati:" -#: cps/templates/book_edit.html:24 +#: cps/templates/book_edit.html:25 msgid "Convert book format:" msgstr "Converti il libro nel formato:" -#: cps/templates/book_edit.html:29 +#: cps/templates/book_edit.html:30 msgid "Convert from:" msgstr "Converti da:" -#: cps/templates/book_edit.html:31 cps/templates/book_edit.html:38 +#: cps/templates/book_edit.html:32 cps/templates/book_edit.html:39 msgid "select an option" msgstr "seleziona un formato" -#: cps/templates/book_edit.html:36 +#: cps/templates/book_edit.html:37 msgid "Convert to:" msgstr "Converti in:" -#: cps/templates/book_edit.html:45 +#: cps/templates/book_edit.html:46 msgid "Convert book" msgstr "Converti libro" -#: cps/templates/book_edit.html:55 cps/templates/search_form.html:8 +#: cps/templates/book_edit.html:56 cps/templates/search_form.html:8 msgid "Book Title" msgstr "Titolo del libro" -#: cps/templates/book_edit.html:62 cps/templates/book_edit.html:270 -#: cps/templates/book_edit.html:288 cps/templates/search_form.html:12 +#: cps/templates/book_edit.html:63 cps/templates/book_edit.html:271 +#: cps/templates/book_edit.html:289 cps/templates/search_form.html:12 msgid "Author" msgstr "Autore" -#: cps/templates/book_edit.html:67 cps/templates/book_edit.html:275 -#: cps/templates/book_edit.html:290 cps/templates/search_form.html:153 +#: cps/templates/book_edit.html:68 cps/templates/book_edit.html:276 +#: cps/templates/book_edit.html:291 cps/templates/search_form.html:153 msgid "Description" msgstr "Descrizione" -#: cps/templates/book_edit.html:72 +#: cps/templates/book_edit.html:73 msgid "Identifiers" msgstr "Identificatori" -#: cps/templates/book_edit.html:76 cps/templates/book_edit.html:299 +#: cps/templates/book_edit.html:77 cps/templates/book_edit.html:300 msgid "Identifier Type" msgstr "Tipo di identificatore" -#: cps/templates/book_edit.html:77 cps/templates/book_edit.html:300 +#: cps/templates/book_edit.html:78 cps/templates/book_edit.html:301 msgid "Identifier Value" msgstr "Valore dell'identificatore" -#: cps/templates/book_edit.html:78 cps/templates/book_edit.html:301 +#: cps/templates/book_edit.html:79 cps/templates/book_edit.html:302 #: cps/templates/user_table.html:24 msgid "Remove" msgstr "Rimuovi" -#: cps/templates/book_edit.html:82 +#: cps/templates/book_edit.html:83 msgid "Add Identifier" msgstr "Aggiungi un identificatore" -#: cps/templates/book_edit.html:86 cps/templates/search_form.html:51 +#: cps/templates/book_edit.html:87 cps/templates/search_form.html:51 msgid "Tags" msgstr "Categorie" -#: cps/templates/book_edit.html:94 +#: cps/templates/book_edit.html:95 msgid "Series ID" msgstr "ID della serie" -#: cps/templates/book_edit.html:98 +#: cps/templates/book_edit.html:99 msgid "Rating" msgstr "Valutazione" -#: cps/templates/book_edit.html:103 +#: cps/templates/book_edit.html:104 msgid "Fetch Cover from URL (JPEG - Image will be downloaded and stored in database)" msgstr "Carica la copertina da URL (jpeg - l'immagine della copertina viene scaricata e salvata nel database)" -#: cps/templates/book_edit.html:107 +#: cps/templates/book_edit.html:108 msgid "Upload Cover from Local Disk" msgstr "Carica la copertina dal disco locale" -#: cps/templates/book_edit.html:112 +#: cps/templates/book_edit.html:113 msgid "Published Date" msgstr "Data di pubblicazione" -#: cps/templates/book_edit.html:121 cps/templates/book_edit.html:272 -#: cps/templates/book_edit.html:289 cps/templates/detail.html:164 +#: cps/templates/book_edit.html:122 cps/templates/book_edit.html:273 +#: cps/templates/book_edit.html:290 cps/templates/detail.html:165 #: cps/templates/search_form.html:16 msgid "Publisher" msgstr "Editore" -#: cps/templates/book_edit.html:125 cps/templates/detail.html:131 +#: cps/templates/book_edit.html:126 cps/templates/detail.html:132 #: cps/templates/user_edit.html:33 msgid "Language" msgstr "Lingua" -#: cps/templates/book_edit.html:135 cps/templates/search_form.html:45 +#: cps/templates/book_edit.html:136 cps/templates/search_form.html:45 #: cps/templates/search_form.html:164 msgid "Yes" msgstr "Sì" -#: cps/templates/book_edit.html:136 cps/templates/search_form.html:46 +#: cps/templates/book_edit.html:137 cps/templates/search_form.html:46 #: cps/templates/search_form.html:165 msgid "No" msgstr "No" -#: cps/templates/book_edit.html:200 +#: cps/templates/book_edit.html:201 msgid "Upload Format" msgstr "Carica formato" -#: cps/templates/book_edit.html:208 +#: cps/templates/book_edit.html:209 msgid "View Book on Save" msgstr "Visualizza il libro dopo la modifica" -#: cps/templates/book_edit.html:211 cps/templates/book_edit.html:229 +#: cps/templates/book_edit.html:212 cps/templates/book_edit.html:230 msgid "Fetch Metadata" msgstr "Ottieni metadati" -#: cps/templates/book_edit.html:212 cps/templates/config_db.html:53 +#: cps/templates/book_edit.html:213 cps/templates/config_db.html:53 #: cps/templates/config_edit.html:358 cps/templates/config_view_edit.html:174 -#: cps/templates/email_edit.html:65 cps/templates/shelf_edit.html:25 -#: cps/templates/shelf_order.html:41 cps/templates/user_edit.html:142 +#: cps/templates/email_edit.html:65 cps/templates/schedule_edit.html:40 +#: cps/templates/shelf_edit.html:25 cps/templates/shelf_order.html:41 +#: cps/templates/user_edit.html:142 msgid "Save" msgstr "Salva" -#: cps/templates/book_edit.html:232 +#: cps/templates/book_edit.html:233 msgid "Keyword" msgstr "Parola chiave" -#: cps/templates/book_edit.html:233 +#: cps/templates/book_edit.html:234 msgid "Search keyword" msgstr "Cerca parola chiave" -#: cps/templates/book_edit.html:239 +#: cps/templates/book_edit.html:240 msgid "Click the cover to load metadata to the form" msgstr "Fai clic sulla copertina per caricare i metadati nel modulo" -#: cps/templates/book_edit.html:246 cps/templates/book_edit.html:285 +#: cps/templates/book_edit.html:247 cps/templates/book_edit.html:286 msgid "Loading..." msgstr "Caricamento in corso..." -#: cps/templates/book_edit.html:250 cps/templates/layout.html:63 -#: cps/templates/layout.html:186 cps/templates/modal_dialogs.html:34 +#: cps/templates/book_edit.html:251 cps/templates/layout.html:64 +#: cps/templates/layout.html:187 cps/templates/modal_dialogs.html:34 #: cps/templates/user_edit.html:163 msgid "Close" msgstr "Chiudi" -#: cps/templates/book_edit.html:277 cps/templates/book_edit.html:291 +#: cps/templates/book_edit.html:278 cps/templates/book_edit.html:292 msgid "Source" msgstr "Fonte" -#: cps/templates/book_edit.html:286 +#: cps/templates/book_edit.html:287 msgid "Search error!" msgstr "Errore nella ricerca!" -#: cps/templates/book_edit.html:287 +#: cps/templates/book_edit.html:288 msgid "No Result(s) found! Please try another keyword." msgstr "Nessun risultato! Prova con un altro criterio di ricerca." @@ -1917,6 +2015,7 @@ msgid "Enter " msgstr "Conferma " #: cps/templates/book_table.html:113 cps/templates/modal_dialogs.html:46 +#: cps/templates/tasks.html:36 msgid "Are you really sure?" msgstr "Sei veramente sicuro?" @@ -2328,62 +2427,62 @@ msgstr "Aggiungi categorie permesse/negate" msgid "Add Allowed/Denied custom column values" msgstr "Aggiungi valori personali permetti/nega nelle colonne" -#: cps/templates/detail.html:60 cps/templates/detail.html:69 +#: cps/templates/detail.html:61 cps/templates/detail.html:70 msgid "Read in Browser" msgstr "Leggi nel navigatore" -#: cps/templates/detail.html:77 cps/templates/detail.html:94 +#: cps/templates/detail.html:78 cps/templates/detail.html:95 msgid "Listen in Browser" msgstr "Ascolta nel navigatore" -#: cps/templates/detail.html:124 +#: cps/templates/detail.html:125 #, python-format msgid "Book %(index)s of %(range)s" msgstr "Libro %(index)s di %(range)s" -#: cps/templates/detail.html:173 +#: cps/templates/detail.html:174 msgid "Published" msgstr "Pubblicato" -#: cps/templates/detail.html:221 +#: cps/templates/detail.html:222 msgid "Mark As Unread" msgstr "Marca come non letto" -#: cps/templates/detail.html:221 +#: cps/templates/detail.html:222 msgid "Mark As Read" msgstr "Marca come letto" -#: cps/templates/detail.html:222 +#: cps/templates/detail.html:223 msgid "Read" msgstr "Letto" -#: cps/templates/detail.html:231 +#: cps/templates/detail.html:232 msgid "Restore from archive" msgstr "Ripristina dall'archivio" -#: cps/templates/detail.html:231 +#: cps/templates/detail.html:232 msgid "Add to archive" msgstr "Aggiungi all'archivio" -#: cps/templates/detail.html:232 +#: cps/templates/detail.html:233 msgid "Archived" msgstr "Archiviato" -#: cps/templates/detail.html:243 +#: cps/templates/detail.html:244 msgid "Description:" msgstr "Descrizione:" -#: cps/templates/detail.html:256 cps/templates/search.html:15 +#: cps/templates/detail.html:257 cps/templates/search.html:16 msgid "Add to shelf" msgstr "Aggiungi allo scaffale" -#: cps/templates/detail.html:267 cps/templates/detail.html:284 -#: cps/templates/feed.xml:79 cps/templates/layout.html:137 -#: cps/templates/search.html:21 +#: cps/templates/detail.html:268 cps/templates/detail.html:285 +#: cps/templates/feed.xml:79 cps/templates/layout.html:138 +#: cps/templates/search.html:22 msgid "(Public)" msgstr "(Pubblico)" -#: cps/templates/detail.html:298 +#: cps/templates/detail.html:299 msgid "Edit Metadata" msgstr "Modifica metadati" @@ -2427,7 +2526,7 @@ msgstr "Dimensione massima dell'allegato" msgid "Save and Send Test E-mail" msgstr "Salva le impostazioni e invia e-mail di test" -#: cps/templates/email_edit.html:70 cps/templates/layout.html:29 +#: cps/templates/email_edit.html:70 cps/templates/layout.html:30 #: cps/templates/shelf_order.html:42 cps/templates/user_table.html:174 msgid "Back" msgstr "Indietro" @@ -2453,7 +2552,7 @@ msgstr "Digita il nome di dominio" msgid "Denied Domains (Blacklist)" msgstr "Dominii bloccati per la registrazione (Blacklist)" -#: cps/templates/feed.xml:21 cps/templates/layout.html:170 +#: cps/templates/feed.xml:21 cps/templates/layout.html:171 msgid "Next" msgstr "Prossimo" @@ -2466,6 +2565,10 @@ msgstr "Apri il file .kobo/Kobo eReader.conf in un editore di testi e aggiungi ( msgid "Kobo Token:" msgstr "Token Kobo Sync" +#: cps/templates/grid.html:21 +msgid "List" +msgstr "" + #: cps/templates/http_error.html:31 msgid "Calibre-Web Instance is unconfigured, please contact your administrator" msgstr "L'istanza Calibre-Web non è configurata, per favore contatta l'amministratore" @@ -2482,29 +2585,29 @@ msgstr "Ritorna alla pagina principale" msgid "Logout User" msgstr "Disconnetti l'utente" -#: cps/templates/index.html:70 +#: cps/templates/index.html:71 msgid "Sort ascending according to download count" msgstr "" -#: cps/templates/index.html:71 +#: cps/templates/index.html:72 msgid "Sort descending according to download count" msgstr "" -#: cps/templates/index.html:77 cps/templates/search.html:34 -#: cps/templates/shelf.html:23 +#: cps/templates/index.html:78 cps/templates/search.html:35 +#: cps/templates/shelf.html:24 msgid "Sort authors in alphabetical order" msgstr "Ordina gli autori in ordine alfabetico" -#: cps/templates/index.html:78 cps/templates/search.html:35 -#: cps/templates/shelf.html:24 +#: cps/templates/index.html:79 cps/templates/search.html:36 +#: cps/templates/shelf.html:25 msgid "Sort authors in reverse alphabetical order" msgstr "Ordina gli autori in ordine alfabetico inverso" -#: cps/templates/index.html:82 +#: cps/templates/index.html:83 msgid "Sort ascending according to series index" msgstr "Ordina in ordine ascendente secondo l'indice della serie" -#: cps/templates/index.html:83 +#: cps/templates/index.html:84 msgid "Sort descending according to series index" msgstr "Ordina in ordine discendente secondo l'indice della serie" @@ -2568,7 +2671,7 @@ msgstr "Libri ordinati per valutazione" msgid "Books ordered by file formats" msgstr "Libri ordinati per formato" -#: cps/templates/index.xml:119 cps/templates/layout.html:135 +#: cps/templates/index.xml:119 cps/templates/layout.html:136 #: cps/templates/search_form.html:87 msgid "Shelves" msgstr "Scaffali" @@ -2577,63 +2680,67 @@ msgstr "Scaffali" msgid "Books organized in shelves" msgstr "Libri organizzati in scaffali" -#: cps/templates/layout.html:29 +#: cps/templates/layout.html:30 msgid "Home" msgstr "Home" -#: cps/templates/layout.html:35 +#: cps/templates/layout.html:36 msgid "Toggle Navigation" msgstr "Alterna navigazione" -#: cps/templates/layout.html:46 +#: cps/templates/layout.html:47 msgid "Search Library" msgstr "Ricerca nella libreria" -#: cps/templates/layout.html:63 cps/templates/layout.html:117 +#: cps/templates/layout.html:64 cps/templates/layout.html:118 msgid "Uploading..." msgstr "Uploading..." -#: cps/templates/layout.html:63 +#: cps/templates/layout.html:64 msgid "Error" msgstr "Errore" -#: cps/templates/layout.html:63 +#: cps/templates/layout.html:64 msgid "Upload done, processing, please wait..." msgstr "Caricamento riuscito, sto elaborando, per favore aspetta..." -#: cps/templates/layout.html:76 cps/templates/read.html:72 +#: cps/templates/layout.html:77 cps/templates/read.html:72 #: cps/templates/readcbr.html:84 cps/templates/readcbr.html:108 msgid "Settings" msgstr "Configurazione" -#: cps/templates/layout.html:78 +#: cps/templates/layout.html:79 msgid "Account" msgstr "Account" -#: cps/templates/layout.html:80 +#: cps/templates/layout.html:81 msgid "Logout" msgstr "Logout" -#: cps/templates/layout.html:118 +#: cps/templates/layout.html:119 msgid "Please do not refresh the page" msgstr "Per favore non ricaricare la pagina" -#: cps/templates/layout.html:128 +#: cps/templates/layout.html:129 msgid "Browse" msgstr "Naviga" -#: cps/templates/layout.html:141 cps/templates/stats.html:3 +#: cps/templates/layout.html:142 cps/templates/stats.html:3 msgid "About" msgstr "Informazioni su" -#: cps/templates/layout.html:155 +#: cps/templates/layout.html:156 msgid "Previous" msgstr "Precedente" -#: cps/templates/layout.html:182 +#: cps/templates/layout.html:183 msgid "Book Details" msgstr "Dettagli del libro" +#: cps/templates/list.html:22 +msgid "Grid" +msgstr "" + #: cps/templates/login.html:18 msgid "Remember Me" msgstr "Ricordami" @@ -2738,7 +2845,7 @@ msgstr "Cartella principale" msgid "Select" msgstr "Seleziona" -#: cps/templates/modal_dialogs.html:134 +#: cps/templates/modal_dialogs.html:134 cps/templates/tasks.html:45 msgid "Ok" msgstr "Ok" @@ -2914,15 +3021,23 @@ msgstr "Una volta completato, verrai automaticamente connesso con questo disposi msgid "This verification link will expire in 10 minutes." msgstr "Il link scadrà tra 10 minuti." -#: cps/templates/search.html:5 +#: cps/templates/schedule_edit.html:29 +msgid "Generate Book Cover Thumbnails" +msgstr "" + +#: cps/templates/schedule_edit.html:33 +msgid "Generate Series Cover Thumbnails" +msgstr "" + +#: cps/templates/search.html:6 msgid "No Results Found" msgstr "Nessun risultato trovato" -#: cps/templates/search.html:6 +#: cps/templates/search.html:7 msgid "Search Term:" msgstr "Termine di ricerca:" -#: cps/templates/search.html:8 +#: cps/templates/search.html:9 msgid "Results for:" msgstr "Risultati per:" @@ -2974,23 +3089,23 @@ msgstr "Da:" msgid "To:" msgstr "A:" -#: cps/templates/shelf.html:12 +#: cps/templates/shelf.html:13 msgid "Delete this Shelf" msgstr "Cancella questo scaffale" -#: cps/templates/shelf.html:13 +#: cps/templates/shelf.html:14 msgid "Edit Shelf Properties" msgstr "Modifica le caratteristiche dello scaffale" -#: cps/templates/shelf.html:16 +#: cps/templates/shelf.html:17 msgid "Arrange books manually" msgstr "Disponi i libri manualmente" -#: cps/templates/shelf.html:17 +#: cps/templates/shelf.html:18 msgid "Disable Change order" msgstr "Disabilita la modifica della disposizione" -#: cps/templates/shelf.html:17 +#: cps/templates/shelf.html:18 msgid "Enable Change order" msgstr "Abilita la modifica della disposizione" @@ -3035,8 +3150,8 @@ msgid "System Statistics" msgstr "Statistiche del sistema" #: cps/templates/stats.html:33 -msgid "Program Library" -msgstr "Programma libreria" +msgid "Program" +msgstr "" #: cps/templates/stats.html:34 msgid "Installed Version" @@ -3066,6 +3181,18 @@ msgstr "Tempo d'esecuzione" msgid "Start Time" msgstr "Ora d'inizio" +#: cps/templates/tasks.html:20 +msgid "Actions" +msgstr "" + +#: cps/templates/tasks.html:40 +msgid "This task will be cancelled. Any progress made by this task will be saved." +msgstr "" + +#: cps/templates/tasks.html:41 +msgid "If this is a scheduled task, it will be re-ran during the next scheduled time." +msgstr "" + #: cps/templates/user_edit.html:20 msgid "Reset user Password" msgstr "Reimposta la password dell'utente" diff --git a/cps/translations/ja/LC_MESSAGES/messages.mo b/cps/translations/ja/LC_MESSAGES/messages.mo index 2c3247e199c49579371d10a56956829f997ed603..03d9ea25314685294a88ef400b3a47611278d56f 100644 GIT binary patch delta 4539 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 delta 4559 zcmYM$du*508Nl&VS}x^UpoNxlDMBeN*I&7ef&U-G;dCqy? za_-fvmm9N^vt4pF2L5%+3ZW++X=CmG|DNp}LWb%J9E|Uv{mx(){2Cv`_Ea9iN3kXD z#nyNLv++Z0iyvcq{8MTYzM$ZM>#@U4>_|PUYY3e%54&SYtdBt_nuZ248#`bFR^oG* zkH5kq{5`h9b7(*p(fOJ%CnPk|n{sH6Iaq>5Sc)!GiDft*2jLqdo-9Ko#DB3(+H5 zg&xrcG;>?955A3Vw@baSfV*ooFCOu^3OF8EQh;X~AGK*a^)*5A$z|2GKA9GiZbj=nhw+1J}p)P3X>k zi6d|i8o(9wjN7uRnJU4%a2l54TCBi#(T#nE26`!>U_{r@Gx`d>)vfqtApOuI8HGFw z({VN~M#t?#1Nt30;gQ&W9L?mJSpNq)-wiaQ*}c-tB*hd={ZKTr(ec4Vbb?uEVDr&T zeG6T<0mtDp$Z>`}X#YQ=nfMFZ|2i7rO}u@_(9E_aZ4{GGM8OW&Oi?14ZbD2Vg$yhanblGP>Yg zbijOcfyZzFHefBjiU#l*a{9?jIMe&pYsze0nN z?ZE!H2X6;}-qs7zW^`ZyowN+SY*lE#`=gJcmoh>7HKOZmkM#rSxa0lFzmZ?0!OQbc zw0=ivy0daL17pz4OhAvO2JJT!&B#3DCp^xt99$dSfGw#vq8r?V-j(e*0rw{qT2i=$ zeyKcYZ)aCDps84aPa$2x7PS9ibZ5uV0RE0nd;=ZdqAU$~1bX|&p=UlF&CFbEg-Ju~ zupE6oei$F@MSjBj{BqzWbise4J8V5LO?mrh|LC3AhUaszH7o6O)Bbx}j&;g&KXLkv`T+PvT<>?NJ(4Ci{<1i+G%6Kc^+ zuEO5F|Jy07q2VxY#JPjhPwh1{wYfv$Lg=L_iH=5}-;2389}Rdhn%bw)%sr2MlfoMG z6TTB2cL=?I;Z%Ikj5Dbh4NYH@C(r>a(Fr$2w<526*ct0b(S<&Z_0MDdG8)iLG^4r0 z(*G9>$BEPzU{X!t4GOh*7ERRvZjkNuNcO@mbO)!|a49y$`ob~kpWDso1Q()L z(S^Q57tZAmN_Q+m+cW58twmn2umoSmjo88Wzl6U$Mm7}P*(5ZOd!qB=^F`>qMHv+4C|7$4ppy7FRqSvt)cc245jO{0*=cE5Z z1IghAI<6f309D2Mcr<_+=)!Zb4j)Fx9l&q<{-38{$C=~#YT-O|!nMdJA#95EBRGfp z8RUM23y^@w_?3x zb()bvbX+Os<_QlJwy&VVb!e!_OC4(-!0u5|ctp7CndUSJqo@}FFM0?T8b|iMVg-)DRliCjL zSAZVPKwO5S;`1G7#(s@lmv9mdD8DxS(9|Jc-|!|n{seL)NjOKro&6U*v%VbU0<6GR z_)>HoI`9?rEVrNm9l#>|1ZU&b*j{~i8o+EclW(GL%X^rMU)-*9{@3Dz!s%&;Dd<8^ zqA7eP)>lUx(FwMq0lb6m>>wKOP2}2yX7s44NkdP36b&T7GHk?LAG}Y&i9SLn_#2ku z`Q1x8Hy7-Fq^zz*+mS;uV@fKAj~$-beYm_hE4ylFX7|O46TLS4c3S@K{nJXb{|88P B&W8X1 diff --git a/cps/translations/ja/LC_MESSAGES/messages.po b/cps/translations/ja/LC_MESSAGES/messages.po index ddadb332..569aab2f 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: 2022-04-18 20:01+0200\n" +"POT-Creation-Date: 2022-05-01 13:22+0200\n" "PO-Revision-Date: 2018-02-07 02:20-0500\n" "Last-Translator: white \n" "Language: ja\n" @@ -16,588 +16,613 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.9.1\n" +"Generated-By: Babel 2.8.0\n" -#: cps/about.py:86 +#: cps/about.py:84 msgid "Statistics" msgstr "統計" -#: cps/admin.py:141 +#: cps/admin.py:146 msgid "Server restarted, please reload page" msgstr "サーバを再起動しました。ページを再読み込みしてください" -#: cps/admin.py:143 +#: cps/admin.py:148 msgid "Performing shutdown of server, please close window" msgstr "サーバをシャットダウンしています。ページを閉じてください" -#: cps/admin.py:151 +#: cps/admin.py:156 msgid "Reconnect successful" msgstr "" -#: cps/admin.py:154 +#: cps/admin.py:159 msgid "Unknown command" msgstr "" -#: cps/admin.py:176 cps/editbooks.py:713 cps/editbooks.py:892 -#: cps/editbooks.py:894 cps/editbooks.py:930 cps/editbooks.py:947 -#: cps/updater.py:608 cps/uploader.py:93 cps/uploader.py:103 +#: cps/admin.py:192 cps/editbooks.py:571 cps/editbooks.py:573 +#: cps/editbooks.py:609 cps/editbooks.py:626 cps/editbooks.py:1233 +#: cps/updater.py:613 cps/uploader.py:87 cps/uploader.py:97 msgid "Unknown" msgstr "不明" -#: cps/admin.py:197 +#: cps/admin.py:217 msgid "Admin page" msgstr "管理者ページ" -#: cps/admin.py:217 +#: cps/admin.py:237 msgid "Basic Configuration" msgstr "基本設定" -#: cps/admin.py:255 +#: cps/admin.py:275 msgid "UI Configuration" msgstr "UI設定" -#: cps/admin.py:289 cps/templates/admin.html:51 +#: cps/admin.py:309 cps/templates/admin.html:51 msgid "Edit Users" msgstr "" -#: cps/admin.py:333 cps/opds.py:529 cps/templates/grid.html:13 +#: cps/admin.py:353 cps/opds.py:532 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "" -#: cps/admin.py:360 cps/admin.py:1648 +#: cps/admin.py:380 cps/admin.py:1365 msgid "User not found" msgstr "" -#: cps/admin.py:374 +#: cps/admin.py:394 msgid "{} users deleted successfully" msgstr "" -#: cps/admin.py:397 cps/templates/config_view_edit.html:133 +#: cps/admin.py:417 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:418 cps/admin.py:424 +#: cps/admin.py:438 cps/admin.py:444 msgid "Malformed request" msgstr "" -#: cps/admin.py:436 cps/admin.py:1526 +#: cps/admin.py:456 cps/admin.py:1962 msgid "Guest Name can't be changed" msgstr "" -#: cps/admin.py:448 +#: cps/admin.py:468 msgid "Guest can't have this role" msgstr "" -#: cps/admin.py:460 cps/admin.py:1484 +#: cps/admin.py:480 cps/admin.py:1920 msgid "No admin user remaining, can't remove admin role" msgstr "" -#: cps/admin.py:464 cps/admin.py:478 +#: cps/admin.py:484 cps/admin.py:498 msgid "Value has to be true or false" msgstr "" -#: cps/admin.py:466 +#: cps/admin.py:486 msgid "Invalid role" msgstr "" -#: cps/admin.py:470 +#: cps/admin.py:490 msgid "Guest can't have this view" msgstr "" -#: cps/admin.py:480 +#: cps/admin.py:500 msgid "Invalid view" msgstr "" -#: cps/admin.py:483 +#: cps/admin.py:503 msgid "Guest's Locale is determined automatically and can't be set" msgstr "" -#: cps/admin.py:487 +#: cps/admin.py:507 msgid "No Valid Locale Given" msgstr "" -#: cps/admin.py:498 +#: cps/admin.py:518 msgid "No Valid Book Language Given" msgstr "" -#: cps/admin.py:500 cps/editbooks.py:1267 +#: cps/admin.py:520 cps/editbooks.py:438 msgid "Parameter not found" msgstr "" -#: cps/admin.py:553 +#: cps/admin.py:557 msgid "Invalid Read Column" msgstr "" -#: cps/admin.py:559 +#: cps/admin.py:563 msgid "Invalid Restricted Column" msgstr "" -#: cps/admin.py:579 cps/admin.py:1355 +#: cps/admin.py:583 cps/admin.py:1791 msgid "Calibre-Web configuration updated" msgstr "Calibre-Web の設定を更新しました" -#: cps/admin.py:591 +#: cps/admin.py:595 msgid "Do you really want to delete the Kobo Token?" msgstr "" -#: cps/admin.py:593 +#: cps/admin.py:597 msgid "Do you really want to delete this domain?" msgstr "" -#: cps/admin.py:595 +#: cps/admin.py:599 msgid "Do you really want to delete this user?" msgstr "" -#: cps/admin.py:597 +#: cps/admin.py:601 msgid "Are you sure you want to delete this shelf?" msgstr "" -#: cps/admin.py:599 +#: cps/admin.py:603 msgid "Are you sure you want to change locales of selected user(s)?" msgstr "" -#: cps/admin.py:601 +#: cps/admin.py:605 msgid "Are you sure you want to change visible book languages for selected user(s)?" msgstr "" -#: cps/admin.py:603 +#: cps/admin.py:607 msgid "Are you sure you want to change the selected role for the selected user(s)?" msgstr "" -#: cps/admin.py:605 +#: cps/admin.py:609 msgid "Are you sure you want to change the selected restrictions for the selected user(s)?" msgstr "" -#: cps/admin.py:607 +#: cps/admin.py:611 msgid "Are you sure you want to change the selected visibility restrictions for the selected user(s)?" msgstr "" -#: cps/admin.py:610 +#: cps/admin.py:614 msgid "Are you sure you want to change shelf sync behavior for the selected user(s)?" msgstr "" -#: cps/admin.py:612 +#: cps/admin.py:616 msgid "Are you sure you want to change Calibre library location?" msgstr "" -#: cps/admin.py:614 +#: cps/admin.py:618 +msgid "Calibre-Web will search for updated Covers and update Cover Thumbnails, this may take a while?" +msgstr "" + +#: cps/admin.py:620 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:764 -msgid "Tag not found" -msgstr "" - -#: cps/admin.py:776 -msgid "Invalid Action" -msgstr "" - -#: cps/admin.py:893 cps/admin.py:899 cps/admin.py:909 cps/admin.py:919 +#: cps/admin.py:862 cps/admin.py:868 cps/admin.py:878 cps/admin.py:888 #: cps/templates/modal_dialogs.html:29 cps/templates/user_table.html:41 #: cps/templates/user_table.html:58 msgid "Deny" msgstr "" -#: cps/admin.py:895 cps/admin.py:901 cps/admin.py:911 cps/admin.py:921 +#: cps/admin.py:864 cps/admin.py:870 cps/admin.py:880 cps/admin.py:890 #: cps/templates/modal_dialogs.html:28 cps/templates/user_table.html:44 #: cps/templates/user_table.html:61 msgid "Allow" msgstr "" -#: cps/admin.py:936 +#: cps/admin.py:905 msgid "{} sync entries deleted" msgstr "" -#: cps/admin.py:1059 +#: cps/admin.py:953 +msgid "Tag not found" +msgstr "" + +#: cps/admin.py:965 +msgid "Invalid Action" +msgstr "" + +#: cps/admin.py:1080 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "" -#: cps/admin.py:1104 +#: cps/admin.py:1125 msgid "Logfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1110 +#: cps/admin.py:1131 msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1140 +#: cps/admin.py:1161 msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgstr "" -#: cps/admin.py:1146 +#: cps/admin.py:1167 msgid "Please Enter a LDAP Service Account and Password" msgstr "" -#: cps/admin.py:1149 +#: cps/admin.py:1170 msgid "Please Enter a LDAP Service Account" msgstr "" -#: cps/admin.py:1154 +#: cps/admin.py:1175 #, python-format msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1156 +#: cps/admin.py:1177 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1160 +#: cps/admin.py:1181 #, python-format msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1162 +#: cps/admin.py:1183 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1169 +#: cps/admin.py:1190 #, python-format msgid "LDAP Member User Filter needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1171 +#: cps/admin.py:1192 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1178 +#: cps/admin.py:1199 msgid "LDAP CACertificate, Certificate or Key Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1223 cps/admin.py:1339 cps/admin.py:1437 cps/admin.py:1554 -#: cps/admin.py:1623 cps/editbooks.py:678 cps/editbooks.py:882 -#: cps/editbooks.py:1130 cps/shelf.py:100 cps/shelf.py:160 cps/shelf.py:203 -#: cps/shelf.py:278 cps/shelf.py:343 cps/shelf.py:380 cps/shelf.py:456 -#: cps/web.py:1742 +#: cps/admin.py:1230 cps/admin.py:1852 +msgid "Add new user" +msgstr "新規ユーザ追加" + +#: cps/admin.py:1239 cps/templates/admin.html:100 +msgid "Edit E-mail Server Settings" +msgstr "SMTP設定を変更" + +#: cps/admin.py:1258 +msgid "Gmail Account Verification Successful" +msgstr "" + +#: cps/admin.py:1277 cps/admin.py:1658 cps/admin.py:1775 cps/admin.py:1873 +#: cps/admin.py:1990 cps/editbooks.py:227 cps/editbooks.py:301 +#: cps/editbooks.py:1196 cps/shelf.py:82 cps/shelf.py:142 cps/shelf.py:185 +#: cps/shelf.py:235 cps/shelf.py:272 cps/shelf.py:343 cps/shelf.py:457 +#: cps/tasks/convert.py:136 cps/web.py:1413 #, python-format msgid "Database error: %(error)s." msgstr "" -#: cps/admin.py:1235 -msgid "DB Location is not Valid, Please Enter Correct Path" -msgstr "" - -#: cps/admin.py:1253 -msgid "DB is not Writeable" -msgstr "" - -#: cps/admin.py:1266 -msgid "Keyfile Location is not Valid, Please Enter Correct Path" -msgstr "" - -#: cps/admin.py:1270 -msgid "Certfile Location is not Valid, Please Enter Correct Path" -msgstr "" - -#: cps/admin.py:1378 -#, fuzzy -msgid "Database Settings updated" -msgstr "メールサーバの設定を更新しました" - -#: cps/admin.py:1386 -#, fuzzy -msgid "Database Configuration" -msgstr "機能設定" - -#: cps/admin.py:1402 cps/web.py:1557 -msgid "Please fill out all fields!" -msgstr "全ての項目を入力してください" - -#: cps/admin.py:1410 -msgid "E-mail is not from valid domain" -msgstr "このメールは有効なドメインからのものではありません" - -#: cps/admin.py:1416 cps/admin.py:1576 -msgid "Add new user" -msgstr "新規ユーザ追加" - -#: cps/admin.py:1427 -#, python-format -msgid "User '%(user)s' created" -msgstr "ユーザ '%(user)s' を作成しました" - -#: cps/admin.py:1433 -#, fuzzy -msgid "Found an existing account for this e-mail address or name." -msgstr "このメールアドレスかニックネームで登録されたアカウントが見つかりました" - -#: cps/admin.py:1463 -#, python-format -msgid "User '%(nick)s' deleted" -msgstr "ユーザ '%(nick)s' を削除しました" - -#: cps/admin.py:1465 cps/admin.py:1466 -msgid "Can't delete Guest User" -msgstr "" - -#: cps/admin.py:1469 -msgid "No admin user remaining, can't delete user" -msgstr "" - -#: cps/admin.py:1542 cps/admin.py:1667 -#, python-format -msgid "Edit User %(nick)s" -msgstr "%(nick)s を編集" - -#: cps/admin.py:1546 -#, python-format -msgid "User '%(nick)s' updated" -msgstr "ユーザ '%(nick)s' を更新しました" - -#: cps/admin.py:1550 cps/admin.py:1682 cps/web.py:1582 cps/web.py:1642 -msgid "An unknown error occurred. Please try again later." -msgstr "不明なエラーが発生しました。あとで再試行してください。" - -#: cps/admin.py:1585 cps/templates/admin.html:100 -msgid "Edit E-mail Server Settings" -msgstr "SMTP設定を変更" - -#: cps/admin.py:1604 -msgid "Gmail Account Verification Successful" -msgstr "" - -#: cps/admin.py:1630 +#: cps/admin.py:1284 #, python-format msgid "Test e-mail queued for sending to %(email)s, please check Tasks for result" msgstr "" -#: cps/admin.py:1633 +#: cps/admin.py:1287 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "テストメールを %(res)s に送信中にエラーが発生しました" -#: cps/admin.py:1635 +#: cps/admin.py:1289 msgid "Please configure your e-mail address first..." msgstr "" -#: cps/admin.py:1637 +#: cps/admin.py:1291 msgid "E-mail server settings updated" msgstr "メールサーバの設定を更新しました" -#: cps/admin.py:1679 +#: cps/admin.py:1314 cps/templates/admin.html:191 +msgid "Edit Scheduled Tasks Settings" +msgstr "" + +#: cps/admin.py:1326 +msgid "Invalid start time for task specified" +msgstr "" + +#: cps/admin.py:1331 +msgid "Invalid duration for task specified" +msgstr "" + +#: cps/admin.py:1340 +msgid "Scheduled tasks settings updated" +msgstr "" + +#: cps/admin.py:1350 cps/admin.py:1399 cps/admin.py:1986 cps/web.py:1254 +#: cps/web.py:1315 +msgid "An unknown error occurred. Please try again later." +msgstr "不明なエラーが発生しました。あとで再試行してください。" + +#: cps/admin.py:1354 +msgid "Settings DB is not Writeable" +msgstr "" + +#: cps/admin.py:1384 cps/admin.py:1978 +#, python-format +msgid "Edit User %(nick)s" +msgstr "%(nick)s を編集" + +#: cps/admin.py:1396 #, python-format msgid "Password for user %(user)s reset" msgstr "%(user)s 用のパスワードをリセット" -#: cps/admin.py:1685 cps/web.py:1522 +#: cps/admin.py:1402 cps/web.py:1194 msgid "Please configure the SMTP mail settings first..." msgstr "初めにSMTPメールの設定をしてください" -#: cps/admin.py:1696 +#: cps/admin.py:1413 msgid "Logfile viewer" msgstr "" -#: cps/admin.py:1762 +#: cps/admin.py:1479 msgid "Requesting update package" msgstr "更新データを要求中" -#: cps/admin.py:1763 +#: cps/admin.py:1480 msgid "Downloading update package" msgstr "更新データをダウンロード中" -#: cps/admin.py:1764 +#: cps/admin.py:1481 msgid "Unzipping update package" msgstr "更新データを展開中" -#: cps/admin.py:1765 +#: cps/admin.py:1482 msgid "Replacing files" msgstr "ファイルを置換中" -#: cps/admin.py:1766 +#: cps/admin.py:1483 msgid "Database connections are closed" msgstr "データベースの接続を切断完了" -#: cps/admin.py:1767 +#: cps/admin.py:1484 msgid "Stopping server" msgstr "サーバ停止中" -#: cps/admin.py:1768 +#: cps/admin.py:1485 msgid "Update finished, please press okay and reload page" msgstr "アップデート完了、OKを押してページをリロードしてください" -#: cps/admin.py:1769 cps/admin.py:1770 cps/admin.py:1771 cps/admin.py:1772 -#: cps/admin.py:1773 cps/admin.py:1774 +#: cps/admin.py:1486 cps/admin.py:1487 cps/admin.py:1488 cps/admin.py:1489 +#: cps/admin.py:1490 cps/admin.py:1491 msgid "Update failed:" msgstr "アップデート失敗:" -#: cps/admin.py:1769 cps/updater.py:384 cps/updater.py:619 cps/updater.py:621 +#: cps/admin.py:1486 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 msgid "HTTP Error" msgstr "HTTPエラー" -#: cps/admin.py:1770 cps/updater.py:386 cps/updater.py:623 +#: cps/admin.py:1487 cps/updater.py:391 cps/updater.py:628 msgid "Connection error" msgstr "接続エラー" -#: cps/admin.py:1771 cps/updater.py:388 cps/updater.py:625 +#: cps/admin.py:1488 cps/updater.py:393 cps/updater.py:630 msgid "Timeout while establishing connection" msgstr "接続を確立中にタイムアウトしました" -#: cps/admin.py:1772 cps/updater.py:390 cps/updater.py:627 +#: cps/admin.py:1489 cps/updater.py:395 cps/updater.py:632 msgid "General error" msgstr "エラー発生" -#: cps/admin.py:1773 +#: cps/admin.py:1490 msgid "Update file could not be saved in temp dir" msgstr "" -#: cps/admin.py:1774 +#: cps/admin.py:1491 msgid "Files could not be replaced during update" msgstr "" -#: cps/admin.py:1798 +#: cps/admin.py:1515 msgid "Failed to extract at least One LDAP User" msgstr "" -#: cps/admin.py:1843 +#: cps/admin.py:1560 msgid "Failed to Create at Least One LDAP User" msgstr "" -#: cps/admin.py:1856 +#: cps/admin.py:1573 #, python-format msgid "Error: %(ldaperror)s" msgstr "" -#: cps/admin.py:1860 +#: cps/admin.py:1577 msgid "Error: No user returned in response of LDAP server" msgstr "" -#: cps/admin.py:1893 +#: cps/admin.py:1610 msgid "At Least One LDAP User Not Found in Database" msgstr "" -#: cps/admin.py:1895 +#: cps/admin.py:1612 msgid "{} User Successfully Imported" msgstr "" -#: cps/converter.py:30 +#: cps/admin.py:1670 +msgid "DB Location is not Valid, Please Enter Correct Path" +msgstr "" + +#: cps/admin.py:1689 +msgid "DB is not Writeable" +msgstr "" + +#: cps/admin.py:1702 +msgid "Keyfile Location is not Valid, Please Enter Correct Path" +msgstr "" + +#: cps/admin.py:1706 +msgid "Certfile Location is not Valid, Please Enter Correct Path" +msgstr "" + +#: cps/admin.py:1814 +#, fuzzy +msgid "Database Settings updated" +msgstr "メールサーバの設定を更新しました" + +#: cps/admin.py:1822 +#, fuzzy +msgid "Database Configuration" +msgstr "機能設定" + +#: cps/admin.py:1838 cps/web.py:1229 +msgid "Please fill out all fields!" +msgstr "全ての項目を入力してください" + +#: cps/admin.py:1846 +msgid "E-mail is not from valid domain" +msgstr "このメールは有効なドメインからのものではありません" + +#: cps/admin.py:1863 +#, python-format +msgid "User '%(user)s' created" +msgstr "ユーザ '%(user)s' を作成しました" + +#: cps/admin.py:1869 +#, fuzzy +msgid "Found an existing account for this e-mail address or name." +msgstr "このメールアドレスかニックネームで登録されたアカウントが見つかりました" + +#: cps/admin.py:1899 +#, python-format +msgid "User '%(nick)s' deleted" +msgstr "ユーザ '%(nick)s' を削除しました" + +#: cps/admin.py:1901 cps/admin.py:1902 +msgid "Can't delete Guest User" +msgstr "" + +#: cps/admin.py:1905 +msgid "No admin user remaining, can't delete user" +msgstr "" + +#: cps/admin.py:1982 +#, python-format +msgid "User '%(nick)s' updated" +msgstr "ユーザ '%(nick)s' を更新しました" + +#: cps/converter.py:31 msgid "not installed" msgstr "インストールされていません" -#: cps/converter.py:31 +#: cps/converter.py:32 msgid "Execution permissions missing" msgstr "" -#: cps/db.py:674 cps/web.py:710 cps/web.py:1222 +#: cps/db.py:681 cps/search.py:134 cps/web.py:720 #, python-format msgid "Custom Column No.%(column)d is not existing in calibre database" msgstr "" -#: cps/db.py:917 cps/templates/config_edit.html:204 +#: cps/db.py:924 cps/templates/config_edit.html:204 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 -#: cps/web.py:551 cps/web.py:585 cps/web.py:646 cps/web.py:671 cps/web.py:1003 -#: cps/web.py:1032 cps/web.py:1066 cps/web.py:1093 cps/web.py:1132 +#: cps/web.py:549 cps/web.py:583 cps/web.py:656 cps/web.py:681 cps/web.py:962 +#: cps/web.py:992 cps/web.py:1027 cps/web.py:1055 cps/web.py:1094 msgid "None" msgstr "なし" -#: cps/editbooks.py:295 cps/editbooks.py:297 -msgid "Book Format Successfully Deleted" -msgstr "" - -#: cps/editbooks.py:304 cps/editbooks.py:306 -msgid "Book Successfully Deleted" -msgstr "" - -#: cps/editbooks.py:358 -msgid "You are missing permissions to delete books" -msgstr "" - -#: cps/editbooks.py:373 cps/editbooks.py:765 cps/web.py:518 cps/web.py:1783 -#: cps/web.py:1825 cps/web.py:1870 +#: cps/editbooks.py:109 cps/editbooks.py:890 cps/web.py:516 cps/web.py:1454 +#: cps/web.py:1496 cps/web.py:1541 msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible" msgstr "" -#: cps/editbooks.py:408 -msgid "edit metadata" -msgstr "メタデータを編集" - -#: cps/editbooks.py:457 -#, python-format -msgid "%(seriesindex)s is not a valid number, skipping" -msgstr "" - -#: cps/editbooks.py:493 cps/editbooks.py:1001 -#, fuzzy, python-format -msgid "'%(langname)s' is not a valid language" -msgstr "%(langname)s は有効な言語ではありません" - -#: cps/editbooks.py:634 -msgid "User has no rights to upload additional file formats" -msgstr "" - -#: cps/editbooks.py:639 cps/editbooks.py:1029 -#, python-format -msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" -msgstr "ファイル拡張子 '%(ext)s' をこのサーバにアップロードすることは許可されていません" - -#: cps/editbooks.py:643 cps/editbooks.py:1033 -msgid "File to be uploaded must have an extension" -msgstr "アップロードするファイルには拡張子が必要です" - -#: cps/editbooks.py:655 -#, python-format -msgid "Failed to create path %(path)s (Permission denied)." -msgstr "%(path)s の作成に失敗しました (Permission denied)。" - -#: cps/editbooks.py:660 -#, python-format -msgid "Failed to store file %(file)s." -msgstr "%(file)s を保存できません。" - -#: cps/editbooks.py:683 -#, python-format -msgid "File format %(ext)s added to %(book)s" -msgstr "ファイル形式 %(ext)s が %(book)s に追加されました" - -#: cps/editbooks.py:697 cps/editbooks.py:809 +#: cps/editbooks.py:153 cps/editbooks.py:1216 msgid "User has no rights to upload cover" msgstr "" -#: cps/editbooks.py:828 +#: cps/editbooks.py:173 cps/editbooks.py:711 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "" -#: cps/editbooks.py:869 +#: cps/editbooks.py:214 msgid "Metadata successfully updated" msgstr "メタデータを更新しました" -#: cps/editbooks.py:887 +#: cps/editbooks.py:232 msgid "Error editing book: {}" msgstr "" -#: cps/editbooks.py:951 -msgid "Uploaded book probably exists in the library, consider to change before upload new: " -msgstr "" - -#: cps/editbooks.py:1041 -#, python-format -msgid "File %(filename)s could not saved to temp dir" -msgstr "" - -#: cps/editbooks.py:1061 -#, python-format -msgid "Failed to Move Cover File %(file)s: %(error)s" -msgstr "" - -#: cps/editbooks.py:1117 +#: cps/editbooks.py:287 #, python-format msgid "File %(file)s uploaded" msgstr "" -#: cps/editbooks.py:1143 +#: cps/editbooks.py:314 msgid "Source or destination format for conversion missing" msgstr "変換元の形式または変換後の形式が指定されていません" -#: cps/editbooks.py:1151 +#: cps/editbooks.py:322 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "本の %(book_format)s への変換がキューに追加されました" -#: cps/editbooks.py:1155 +#: cps/editbooks.py:326 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "この本の変換中にエラーが発生しました: %(res)s" +#: cps/editbooks.py:630 +msgid "Uploaded book probably exists in the library, consider to change before upload new: " +msgstr "" + +#: cps/editbooks.py:685 cps/editbooks.py:1010 +#, fuzzy, python-format +msgid "'%(langname)s' is not a valid language" +msgstr "%(langname)s は有効な言語ではありません" + +#: cps/editbooks.py:723 cps/editbooks.py:1157 +#, python-format +msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" +msgstr "ファイル拡張子 '%(ext)s' をこのサーバにアップロードすることは許可されていません" + +#: cps/editbooks.py:727 cps/editbooks.py:1161 +msgid "File to be uploaded must have an extension" +msgstr "アップロードするファイルには拡張子が必要です" + +#: cps/editbooks.py:735 +#, python-format +msgid "File %(filename)s could not saved to temp dir" +msgstr "" + +#: cps/editbooks.py:755 +#, python-format +msgid "Failed to Move Cover File %(file)s: %(error)s" +msgstr "" + +#: cps/editbooks.py:812 cps/editbooks.py:814 +msgid "Book Format Successfully Deleted" +msgstr "" + +#: cps/editbooks.py:821 cps/editbooks.py:823 +msgid "Book Successfully Deleted" +msgstr "" + +#: cps/editbooks.py:875 +msgid "You are missing permissions to delete books" +msgstr "" + +#: cps/editbooks.py:925 +msgid "edit metadata" +msgstr "メタデータを編集" + +#: cps/editbooks.py:974 +#, python-format +msgid "%(seriesindex)s is not a valid number, skipping" +msgstr "" + +#: cps/editbooks.py:1152 +msgid "User has no rights to upload additional file formats" +msgstr "" + +#: cps/editbooks.py:1173 +#, python-format +msgid "Failed to create path %(path)s (Permission denied)." +msgstr "%(path)s の作成に失敗しました (Permission denied)。" + +#: cps/editbooks.py:1178 +#, python-format +msgid "Failed to store file %(file)s." +msgstr "%(file)s を保存できません。" + +#: cps/editbooks.py:1201 +#, python-format +msgid "File format %(ext)s added to %(book)s" +msgstr "ファイル形式 %(ext)s が %(book)s に追加されました" + #: cps/gdrive.py:58 msgid "Google Drive setup not completed, try to deactivate and activate Google Drive again" msgstr "Googleドライブの設定が完了していません。Googleドライブを無効化してから再度有効にしてみてください" @@ -606,27 +631,27 @@ 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:81 +#: cps/helper.py:80 #, python-format msgid "%(format)s format not found for book id: %(book)d" msgstr "ID: %(book)d の本に %(format)s フォーマットはありません" -#: cps/helper.py:87 cps/tasks/convert.py:75 +#: cps/helper.py:86 cps/tasks/convert.py:75 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "Googleドライブ: %(fn)s に %(format)s はありません" -#: cps/helper.py:92 +#: cps/helper.py:91 #, python-format msgid "%(format)s not found: %(fn)s" msgstr "%(format)s がありません: %(fn)s" -#: cps/helper.py:97 cps/helper.py:221 cps/templates/detail.html:41 -#: cps/templates/detail.html:45 +#: cps/helper.py:96 cps/helper.py:221 cps/templates/detail.html:42 +#: cps/templates/detail.html:46 msgid "Send to Kindle" msgstr "Kindleに送信" -#: cps/helper.py:98 cps/helper.py:115 cps/helper.py:223 +#: cps/helper.py:97 cps/helper.py:115 cps/helper.py:223 msgid "This e-mail has been sent via Calibre-Web." msgstr "このメールはCalibre-Web経由で送信されました。" @@ -666,131 +691,111 @@ msgstr "Kindleに送信" msgid "The requested file could not be read. Maybe wrong permissions?" msgstr "要求されたファイルを読み込めませんでした。権限設定が正しいか確認してください。" -#: cps/helper.py:353 +#: cps/helper.py:341 msgid "Read status could not set: {}" msgstr "" -#: cps/helper.py:376 +#: cps/helper.py:364 #, python-format msgid "Deleting bookfolder for book %(id)s failed, path has subfolders: %(path)s" msgstr "" -#: cps/helper.py:382 +#: cps/helper.py:370 #, python-format msgid "Deleting book %(id)s failed: %(message)s" msgstr "" -#: cps/helper.py:393 +#: cps/helper.py:381 #, python-format msgid "Deleting book %(id)s from database only, book path in database not valid: %(path)s" msgstr "" -#: cps/helper.py:458 +#: cps/helper.py:446 #, fuzzy, 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:529 cps/helper.py:538 +#: cps/helper.py:518 cps/helper.py:527 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "ファイル %(file)s はGoogleドライブ上にありません" -#: cps/helper.py:572 +#: cps/helper.py:561 #, 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:592 +#: cps/helper.py:581 msgid "Error in rename file in path: {}" msgstr "" -#: cps/helper.py:610 +#: cps/helper.py:599 #, python-format msgid "Book path %(path)s not found on Google Drive" msgstr "本のパス %(path)s はGoogleドライブ上にありません" -#: cps/helper.py:651 cps/web.py:1737 +#: cps/helper.py:640 cps/web.py:1408 #, fuzzy msgid "Found an existing account for this e-mail address" msgstr "このメールアドレスで登録されたアカウントがあります" -#: cps/helper.py:659 +#: cps/helper.py:648 msgid "This username is already taken" msgstr "" -#: cps/helper.py:669 +#: cps/helper.py:658 msgid "Invalid e-mail address format" msgstr "" -#: cps/helper.py:754 -msgid "Python modul 'advocate' is not installed but is needed for cover downloads" +#: cps/helper.py:808 +msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "" -#: cps/helper.py:767 +#: cps/helper.py:818 msgid "Error Downloading Cover" msgstr "" -#: cps/helper.py:770 +#: cps/helper.py:821 msgid "Cover Format Error" msgstr "" -#: cps/helper.py:773 +#: cps/helper.py:824 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "" -#: cps/helper.py:783 +#: cps/helper.py:834 msgid "Failed to create path for cover" msgstr "" -#: cps/helper.py:799 +#: cps/helper.py:850 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "" -#: cps/helper.py:810 +#: cps/helper.py:861 msgid "Only jpg/jpeg/png/webp/bmp files are supported as coverfile" msgstr "" -#: cps/helper.py:822 +#: cps/helper.py:873 msgid "Invalid cover file content" msgstr "" -#: cps/helper.py:826 +#: cps/helper.py:877 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "" -#: cps/helper.py:878 +#: cps/helper.py:929 msgid "Unrar binary file not found" msgstr "" -#: cps/helper.py:889 +#: cps/helper.py:940 msgid "Error excecuting UnRar" msgstr "" -#: cps/helper.py:937 -msgid "Waiting" -msgstr "待機中" - -#: cps/helper.py:939 -msgid "Failed" -msgstr "失敗" - -#: cps/helper.py:941 -msgid "Started" -msgstr "開始" - -#: cps/helper.py:943 -msgid "Finished" -msgstr "終了" - -#: cps/helper.py:945 -msgid "Unknown Status" -msgstr "不明" - -#: cps/kobo_auth.py:128 +#: cps/kobo_auth.py:89 msgid "Please access Calibre-Web from non localhost to get valid api_endpoint for kobo device" msgstr "" -#: cps/kobo_auth.py:154 +#: cps/kobo_auth.py:115 msgid "Kobo Setup" msgstr "" @@ -799,7 +804,7 @@ msgstr "" msgid "Register with %(provider)s" msgstr "" -#: cps/oauth_bb.py:138 cps/remotelogin.py:130 cps/web.py:1613 +#: cps/oauth_bb.py:138 cps/remotelogin.py:130 cps/web.py:1286 #, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "%(nickname)s としてログイン中" @@ -860,12 +865,12 @@ msgstr "" msgid "Google Oauth error: {}" msgstr "" -#: cps/opds.py:298 +#: cps/opds.py:287 msgid "{} Stars" msgstr "" -#: cps/remotelogin.py:62 cps/templates/layout.html:84 -#: cps/templates/login.html:4 cps/templates/login.html:21 cps/web.py:1662 +#: cps/remotelogin.py:62 cps/templates/layout.html:85 +#: cps/templates/login.html:4 cps/templates/login.html:21 cps/web.py:1335 msgid "Login" msgstr "ログイン" @@ -881,456 +886,489 @@ msgstr "トークンが無効です" msgid "Success! Please return to your device" msgstr "成功です!端末に戻ってください" -#: cps/render_template.py:41 cps/web.py:407 +#: cps/render_template.py:40 cps/web.py:405 msgid "Books" msgstr "" -#: cps/render_template.py:43 +#: cps/render_template.py:42 msgid "Show recent books" msgstr "最近追加された本を表示" -#: cps/render_template.py:44 cps/templates/index.xml:25 +#: cps/render_template.py:43 cps/templates/index.xml:25 msgid "Hot Books" msgstr "人気の本" -#: cps/render_template.py:46 +#: cps/render_template.py:45 msgid "Show Hot Books" msgstr "" -#: cps/render_template.py:48 cps/render_template.py:53 +#: cps/render_template.py:47 cps/render_template.py:52 msgid "Downloaded Books" msgstr "" -#: cps/render_template.py:50 cps/render_template.py:55 +#: cps/render_template.py:49 cps/render_template.py:54 #: cps/templates/user_table.html:167 msgid "Show Downloaded Books" msgstr "" -#: cps/render_template.py:58 cps/templates/index.xml:32 cps/web.py:422 +#: cps/render_template.py:57 cps/templates/index.xml:32 cps/web.py:420 msgid "Top Rated Books" msgstr "" -#: cps/render_template.py:60 cps/templates/user_table.html:161 +#: cps/render_template.py:59 cps/templates/user_table.html:161 msgid "Show Top Rated Books" msgstr "" -#: cps/render_template.py:61 cps/templates/index.xml:54 -#: cps/templates/index.xml:58 cps/web.py:729 +#: cps/render_template.py:60 cps/templates/index.xml:54 +#: cps/templates/index.xml:58 cps/web.py:739 msgid "Read Books" msgstr "読んだ本" -#: cps/render_template.py:63 +#: cps/render_template.py:62 msgid "Show read and unread" msgstr "既読の本と未読の本を表示" -#: cps/render_template.py:65 cps/templates/index.xml:61 -#: cps/templates/index.xml:65 cps/web.py:732 +#: cps/render_template.py:64 cps/templates/index.xml:61 +#: cps/templates/index.xml:65 cps/web.py:742 msgid "Unread Books" msgstr "未読の本" -#: cps/render_template.py:67 +#: cps/render_template.py:66 msgid "Show unread" msgstr "" -#: cps/render_template.py:68 +#: cps/render_template.py:67 msgid "Discover" msgstr "見つける" -#: cps/render_template.py:70 cps/templates/index.xml:50 +#: cps/render_template.py:69 cps/templates/index.xml:50 #: cps/templates/user_table.html:162 msgid "Show Random Books" msgstr "ランダムで本を表示" -#: cps/render_template.py:71 cps/templates/book_table.html:67 -#: cps/templates/index.xml:83 cps/web.py:1135 +#: cps/render_template.py:70 cps/templates/book_table.html:67 +#: cps/templates/index.xml:83 cps/web.py:1098 msgid "Categories" msgstr "カテゴリ" -#: cps/render_template.py:73 cps/templates/user_table.html:158 +#: cps/render_template.py:72 cps/templates/user_table.html:158 msgid "Show category selection" msgstr "カテゴリ選択を表示" -#: cps/render_template.py:74 cps/templates/book_edit.html:90 +#: cps/render_template.py:73 cps/templates/book_edit.html:91 #: cps/templates/book_table.html:68 cps/templates/index.xml:90 -#: cps/templates/search_form.html:69 cps/web.py:1034 cps/web.py:1041 +#: cps/templates/search_form.html:69 cps/web.py:995 cps/web.py:1002 msgid "Series" msgstr "シリーズ" -#: cps/render_template.py:76 cps/templates/user_table.html:157 +#: cps/render_template.py:75 cps/templates/user_table.html:157 msgid "Show series selection" msgstr "シリーズ選択を表示" -#: cps/render_template.py:77 cps/templates/book_table.html:66 +#: cps/render_template.py:76 cps/templates/book_table.html:66 #: cps/templates/index.xml:69 msgid "Authors" msgstr "著者" -#: cps/render_template.py:79 cps/templates/user_table.html:160 +#: cps/render_template.py:78 cps/templates/user_table.html:160 msgid "Show author selection" msgstr "著者選択を表示" -#: cps/render_template.py:81 cps/templates/book_table.html:72 -#: cps/templates/index.xml:76 cps/web.py:1006 +#: cps/render_template.py:80 cps/templates/book_table.html:72 +#: cps/templates/index.xml:76 cps/web.py:966 msgid "Publishers" msgstr "出版社" -#: cps/render_template.py:83 cps/templates/user_table.html:163 +#: cps/render_template.py:82 cps/templates/user_table.html:163 msgid "Show publisher selection" msgstr "出版社選択を表示" -#: cps/render_template.py:84 cps/templates/book_table.html:70 +#: cps/render_template.py:83 cps/templates/book_table.html:70 #: cps/templates/index.xml:97 cps/templates/search_form.html:107 -#: cps/web.py:1108 +#: cps/web.py:1070 msgid "Languages" msgstr "言語" -#: cps/render_template.py:87 cps/templates/user_table.html:155 +#: cps/render_template.py:86 cps/templates/user_table.html:155 msgid "Show language selection" msgstr "言語選択を表示" -#: cps/render_template.py:88 cps/templates/index.xml:104 +#: cps/render_template.py:87 cps/templates/index.xml:104 msgid "Ratings" msgstr "" -#: cps/render_template.py:90 cps/templates/user_table.html:164 +#: cps/render_template.py:89 cps/templates/user_table.html:164 msgid "Show ratings selection" msgstr "" -#: cps/render_template.py:91 cps/templates/index.xml:112 +#: cps/render_template.py:90 cps/templates/index.xml:112 msgid "File formats" msgstr "" -#: cps/render_template.py:93 cps/templates/user_table.html:165 +#: cps/render_template.py:92 cps/templates/user_table.html:165 msgid "Show file formats selection" msgstr "" -#: cps/render_template.py:95 cps/web.py:755 +#: cps/render_template.py:94 cps/web.py:765 msgid "Archived Books" msgstr "" -#: cps/render_template.py:97 cps/templates/user_table.html:166 +#: cps/render_template.py:96 cps/templates/user_table.html:166 msgid "Show archived books" msgstr "" -#: cps/render_template.py:100 cps/web.py:837 +#: cps/render_template.py:99 cps/web.py:796 msgid "Books List" msgstr "" -#: cps/render_template.py:102 cps/templates/user_table.html:168 +#: cps/render_template.py:101 cps/templates/user_table.html:168 msgid "Show Books List" msgstr "" -#: cps/shelf.py:67 cps/shelf.py:121 -msgid "Invalid shelf specified" -msgstr "指定された本棚は無効です" - -#: cps/shelf.py:73 -#, fuzzy -msgid "Sorry you are not allowed to add a book to that shelf" -msgstr "申し訳ありませんが、あなたは %(shelfname)s に本を追加することが許可されていません" - -#: cps/shelf.py:82 -#, python-format -msgid "Book is already part of the shelf: %(shelfname)s" -msgstr "この本は %(shelfname)s にすでに追加されています" - -#: cps/shelf.py:107 -#, python-format -msgid "Book has been added to shelf: %(sname)s" -msgstr "本を %(sname)s に追加しました" - -#: cps/shelf.py:126 -msgid "You are not allowed to add a book to the shelf" -msgstr "" - -#: cps/shelf.py:144 -#, python-format -msgid "Books are already part of the shelf: %(name)s" -msgstr "これらの本は %(name)s にすでに追加されています" - -#: cps/shelf.py:156 -#, python-format -msgid "Books have been added to shelf: %(sname)s" -msgstr "本が %(sname)s に追加されました" - -#: cps/shelf.py:163 -#, python-format -msgid "Could not add books to shelf: %(sname)s" -msgstr "%(sname)s に本を追加できません" - -#: cps/shelf.py:209 -#, python-format -msgid "Book has been removed from shelf: %(sname)s" -msgstr "本が %(sname)s から削除されました" - -#: cps/shelf.py:218 -msgid "Sorry you are not allowed to remove a book from this shelf" -msgstr "" - -#: cps/shelf.py:228 cps/templates/layout.html:140 -msgid "Create a Shelf" -msgstr "本棚を作成する" - -#: cps/shelf.py:236 -#, fuzzy -msgid "Sorry you are not allowed to edit this shelf" -msgstr "申し訳ありませんが、%(sname)s から本を削除することが許可されていません" - -#: cps/shelf.py:238 -msgid "Edit a shelf" -msgstr "本棚を編集する" - -#: cps/shelf.py:248 -msgid "Sorry you are not allowed to create a public shelf" -msgstr "" - -#: cps/shelf.py:265 -#, python-format -msgid "Shelf %(title)s created" -msgstr "%(title)s を作成しました" - -#: cps/shelf.py:268 -#, python-format -msgid "Shelf %(title)s changed" -msgstr "%(title)s を変更しました" - -#: cps/shelf.py:282 -msgid "There was an error" -msgstr "エラーが発生しました" - -#: cps/shelf.py:304 -#, python-format -msgid "A public shelf with the name '%(title)s' already exists." -msgstr "" - -#: cps/shelf.py:315 -#, python-format -msgid "A private shelf with the name '%(title)s' already exists." -msgstr "" - -#: cps/shelf.py:337 -msgid "Error deleting Shelf" -msgstr "" - -#: cps/shelf.py:339 -#, fuzzy -msgid "Shelf successfully deleted" -msgstr "メタデータを更新しました" - -#: cps/shelf.py:389 -#, python-format -msgid "Change order of Shelf: '%(name)s'" -msgstr "'%(name)s' 内の本の順番を変更する" - -#: cps/shelf.py:461 -#, python-format -msgid "Shelf: '%(name)s'" -msgstr "本棚: '%(name)s'" - -#: cps/shelf.py:465 -msgid "Error opening shelf. Shelf does not exist or is not accessible" -msgstr "本棚を開けません。この本棚は存在しないかアクセスできません" - -#: cps/updater.py:426 cps/updater.py:437 cps/updater.py:538 cps/updater.py:553 -msgid "Unexpected data while reading update information" -msgstr "アップデート情報を読み込み中に予期しないデータが見つかりました" - -#: cps/updater.py:433 cps/updater.py:545 -msgid "No update available. You already have the latest version installed" -msgstr "アップデートはありません。すでに最新バージョンがインストールされています" - -#: cps/updater.py:451 -msgid "A new update is available. Click on the button below to update to the latest version." -msgstr "アップデートが利用可能です。下のボタンをクリックして最新バージョンにアップデートしてください。" - -#: cps/updater.py:469 -msgid "Could not fetch update information" -msgstr "アップデート情報を取得できません" - -#: cps/updater.py:479 -msgid "Click on the button below to update to the latest stable version." -msgstr "" - -#: cps/updater.py:488 cps/updater.py:502 cps/updater.py:513 -#, python-format -msgid "A new update is available. Click on the button below to update to version: %(version)s" -msgstr "アップデートが利用可能です。下のボタンをクリックしてバージョン: %(version)s にアップデートしてください。" - -#: cps/updater.py:531 -msgid "No release information available" -msgstr "リリース情報がありません" - -#: cps/templates/index.html:5 cps/web.py:434 -msgid "Discover (Random Books)" -msgstr "本を見つける (ランダムで表示)" - -#: cps/web.py:470 -msgid "Hot Books (Most Downloaded)" -msgstr "" - -#: cps/web.py:501 -#, python-format -msgid "Downloaded books by %(user)s" -msgstr "" - -#: cps/web.py:534 -#, python-format -msgid "Author: %(name)s" -msgstr "" - -#: cps/web.py:570 -#, python-format -msgid "Publisher: %(name)s" -msgstr "出版社: %(name)s" - -#: cps/web.py:598 -#, python-format -msgid "Series: %(serie)s" -msgstr "シリーズ: %(serie)s" - -#: cps/web.py:610 -#, python-format -msgid "Rating: %(rating)s stars" -msgstr "" - -#: cps/web.py:626 -#, python-format -msgid "File format: %(format)s" -msgstr "" - -#: cps/web.py:663 -#, python-format -msgid "Category: %(name)s" -msgstr "カテゴリ: %(name)s" - -#: cps/web.py:690 -#, python-format -msgid "Language: %(name)s" -msgstr "言語: %(name)s" - -#: cps/templates/layout.html:56 cps/web.py:789 cps/web.py:1444 -msgid "Advanced Search" -msgstr "詳細検索" - -#: cps/templates/book_edit.html:235 cps/templates/feed.xml:33 -#: cps/templates/index.xml:11 cps/templates/layout.html:45 -#: cps/templates/layout.html:48 cps/templates/search_form.html:226 -#: cps/web.py:807 cps/web.py:1164 +#: cps/search.py:48 cps/search.py:414 cps/templates/book_edit.html:236 +#: cps/templates/feed.xml:33 cps/templates/index.xml:11 +#: cps/templates/layout.html:46 cps/templates/layout.html:49 +#: cps/templates/search_form.html:226 msgid "Search" msgstr "検索" -#: cps/templates/admin.html:16 cps/web.py:979 -msgid "Downloads" -msgstr "" - -#: cps/web.py:1068 -msgid "Ratings list" -msgstr "" - -#: cps/web.py:1095 -msgid "File formats list" -msgstr "" - -#: cps/templates/layout.html:73 cps/templates/tasks.html:7 cps/web.py:1149 -msgid "Tasks" -msgstr "タスク" - -#: cps/web.py:1286 +#: cps/search.py:194 msgid "Published after " msgstr "これ以降に出版 " -#: cps/web.py:1293 +#: cps/search.py:201 msgid "Published before " msgstr "これ以前に出版 " -#: cps/web.py:1315 +#: cps/search.py:223 #, python-format msgid "Rating <= %(rating)s" msgstr "評価 <= %(rating)s" -#: cps/web.py:1317 +#: cps/search.py:225 #, python-format msgid "Rating >= %(rating)s" msgstr "評価 >= %(rating)s" -#: cps/web.py:1319 +#: cps/search.py:227 #, python-format msgid "Read Status = %(status)s" msgstr "" -#: cps/web.py:1425 +#: cps/search.py:345 msgid "Error on search for custom columns, please restart Calibre-Web" msgstr "" -#: cps/web.py:1527 +#: cps/search.py:364 cps/search.py:396 cps/templates/layout.html:57 +msgid "Advanced Search" +msgstr "詳細検索" + +#: cps/shelf.py:49 cps/shelf.py:103 +msgid "Invalid shelf specified" +msgstr "指定された本棚は無効です" + +#: cps/shelf.py:55 +#, fuzzy +msgid "Sorry you are not allowed to add a book to that shelf" +msgstr "申し訳ありませんが、あなたは %(shelfname)s に本を追加することが許可されていません" + +#: cps/shelf.py:64 +#, python-format +msgid "Book is already part of the shelf: %(shelfname)s" +msgstr "この本は %(shelfname)s にすでに追加されています" + +#: cps/shelf.py:89 +#, python-format +msgid "Book has been added to shelf: %(sname)s" +msgstr "本を %(sname)s に追加しました" + +#: cps/shelf.py:108 +msgid "You are not allowed to add a book to the shelf" +msgstr "" + +#: cps/shelf.py:126 +#, python-format +msgid "Books are already part of the shelf: %(name)s" +msgstr "これらの本は %(name)s にすでに追加されています" + +#: cps/shelf.py:138 +#, python-format +msgid "Books have been added to shelf: %(sname)s" +msgstr "本が %(sname)s に追加されました" + +#: cps/shelf.py:145 +#, python-format +msgid "Could not add books to shelf: %(sname)s" +msgstr "%(sname)s に本を追加できません" + +#: cps/shelf.py:191 +#, python-format +msgid "Book has been removed from shelf: %(sname)s" +msgstr "本が %(sname)s から削除されました" + +#: cps/shelf.py:200 +msgid "Sorry you are not allowed to remove a book from this shelf" +msgstr "" + +#: cps/shelf.py:210 cps/templates/layout.html:141 +msgid "Create a Shelf" +msgstr "本棚を作成する" + +#: cps/shelf.py:218 +#, fuzzy +msgid "Sorry you are not allowed to edit this shelf" +msgstr "申し訳ありませんが、%(sname)s から本を削除することが許可されていません" + +#: cps/shelf.py:220 +msgid "Edit a shelf" +msgstr "本棚を編集する" + +#: cps/shelf.py:229 +msgid "Error deleting Shelf" +msgstr "" + +#: cps/shelf.py:231 +#, fuzzy +msgid "Shelf successfully deleted" +msgstr "メタデータを更新しました" + +#: cps/shelf.py:281 +#, python-format +msgid "Change order of Shelf: '%(name)s'" +msgstr "'%(name)s' 内の本の順番を変更する" + +#: cps/shelf.py:313 +msgid "Sorry you are not allowed to create a public shelf" +msgstr "" + +#: cps/shelf.py:330 +#, python-format +msgid "Shelf %(title)s created" +msgstr "%(title)s を作成しました" + +#: cps/shelf.py:333 +#, python-format +msgid "Shelf %(title)s changed" +msgstr "%(title)s を変更しました" + +#: cps/shelf.py:347 +msgid "There was an error" +msgstr "エラーが発生しました" + +#: cps/shelf.py:369 +#, python-format +msgid "A public shelf with the name '%(title)s' already exists." +msgstr "" + +#: cps/shelf.py:380 +#, python-format +msgid "A private shelf with the name '%(title)s' already exists." +msgstr "" + +#: cps/shelf.py:462 +#, python-format +msgid "Shelf: '%(name)s'" +msgstr "本棚: '%(name)s'" + +#: cps/shelf.py:466 +msgid "Error opening shelf. Shelf does not exist or is not accessible" +msgstr "本棚を開けません。この本棚は存在しないかアクセスできません" + +#: cps/tasks_status.py:48 cps/templates/layout.html:74 +#: cps/templates/tasks.html:7 +msgid "Tasks" +msgstr "タスク" + +#: cps/tasks_status.py:64 +msgid "Waiting" +msgstr "待機中" + +#: cps/tasks_status.py:66 +msgid "Failed" +msgstr "失敗" + +#: cps/tasks_status.py:68 +msgid "Started" +msgstr "開始" + +#: cps/tasks_status.py:70 +msgid "Finished" +msgstr "終了" + +#: cps/tasks_status.py:72 +msgid "Ended" +msgstr "" + +#: cps/tasks_status.py:74 +msgid "Cancelled" +msgstr "" + +#: cps/tasks_status.py:76 +msgid "Unknown Status" +msgstr "不明" + +#: cps/updater.py:431 cps/updater.py:442 cps/updater.py:543 cps/updater.py:558 +msgid "Unexpected data while reading update information" +msgstr "アップデート情報を読み込み中に予期しないデータが見つかりました" + +#: cps/updater.py:438 cps/updater.py:550 +msgid "No update available. You already have the latest version installed" +msgstr "アップデートはありません。すでに最新バージョンがインストールされています" + +#: cps/updater.py:456 +msgid "A new update is available. Click on the button below to update to the latest version." +msgstr "アップデートが利用可能です。下のボタンをクリックして最新バージョンにアップデートしてください。" + +#: cps/updater.py:474 +msgid "Could not fetch update information" +msgstr "アップデート情報を取得できません" + +#: cps/updater.py:484 +msgid "Click on the button below to update to the latest stable version." +msgstr "" + +#: cps/updater.py:493 cps/updater.py:507 cps/updater.py:518 +#, python-format +msgid "A new update is available. Click on the button below to update to version: %(version)s" +msgstr "アップデートが利用可能です。下のボタンをクリックしてバージョン: %(version)s にアップデートしてください。" + +#: cps/updater.py:536 +msgid "No release information available" +msgstr "リリース情報がありません" + +#: cps/templates/index.html:6 cps/web.py:432 +msgid "Discover (Random Books)" +msgstr "本を見つける (ランダムで表示)" + +#: cps/web.py:468 +msgid "Hot Books (Most Downloaded)" +msgstr "" + +#: cps/web.py:499 +#, python-format +msgid "Downloaded books by %(user)s" +msgstr "" + +#: cps/web.py:532 +#, python-format +msgid "Author: %(name)s" +msgstr "" + +#: cps/web.py:568 +#, python-format +msgid "Publisher: %(name)s" +msgstr "出版社: %(name)s" + +#: cps/web.py:596 +#, python-format +msgid "Series: %(serie)s" +msgstr "シリーズ: %(serie)s" + +#: cps/web.py:609 +msgid "Rating: None" +msgstr "" + +#: cps/web.py:618 +#, python-format +msgid "Rating: %(rating)s stars" +msgstr "" + +#: cps/web.py:636 +#, python-format +msgid "File format: %(format)s" +msgstr "" + +#: cps/web.py:673 +#, python-format +msgid "Category: %(name)s" +msgstr "カテゴリ: %(name)s" + +#: cps/web.py:700 +#, python-format +msgid "Language: %(name)s" +msgstr "言語: %(name)s" + +#: cps/templates/admin.html:16 cps/web.py:938 +msgid "Downloads" +msgstr "" + +#: cps/web.py:1030 +msgid "Ratings list" +msgstr "" + +#: cps/web.py:1057 +msgid "File formats list" +msgstr "" + +#: cps/web.py:1199 #, python-format msgid "Book successfully queued for sending to %(kindlemail)s" msgstr "本の %(kindlemail)s への送信がキューに追加されました" -#: cps/web.py:1531 +#: cps/web.py:1203 #, python-format msgid "Oops! There was an error sending this book: %(res)s" msgstr "%(res)s を送信中にエラーが発生しました" -#: cps/web.py:1533 +#: cps/web.py:1205 msgid "Please update your profile with a valid Send to Kindle E-mail Address." msgstr "初めにKindleのメールアドレスを設定してください" -#: cps/web.py:1550 +#: cps/web.py:1222 msgid "E-Mail server is not configured, please contact your administrator!" msgstr "" -#: cps/templates/layout.html:85 cps/templates/register.html:17 cps/web.py:1551 -#: cps/web.py:1558 cps/web.py:1564 cps/web.py:1583 cps/web.py:1587 -#: cps/web.py:1593 +#: cps/templates/layout.html:86 cps/templates/register.html:17 cps/web.py:1223 +#: cps/web.py:1230 cps/web.py:1236 cps/web.py:1255 cps/web.py:1260 +#: cps/web.py:1266 msgid "Register" msgstr "登録" -#: cps/web.py:1585 +#: cps/web.py:1257 msgid "Your e-mail is not allowed to register" msgstr "このメールアドレスは登録が許可されていません" -#: cps/web.py:1588 +#: cps/web.py:1261 msgid "Confirmation e-mail was send to your e-mail account." msgstr "確認メールがこのメールアドレスに送信されました。" -#: cps/web.py:1602 +#: cps/web.py:1275 msgid "Cannot activate LDAP authentication" msgstr "" -#: cps/web.py:1621 +#: cps/web.py:1294 #, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgstr "" -#: cps/web.py:1627 +#: cps/web.py:1300 #, python-format msgid "Could not login: %(message)s" msgstr "" -#: cps/web.py:1631 cps/web.py:1656 +#: cps/web.py:1304 cps/web.py:1329 msgid "Wrong Username or Password" msgstr "ユーザ名またはパスワードが違います" -#: cps/web.py:1638 +#: cps/web.py:1311 msgid "New Password was send to your email address" msgstr "" -#: cps/web.py:1644 +#: cps/web.py:1317 msgid "Please enter valid username to reset password" msgstr "" -#: cps/web.py:1651 +#: cps/web.py:1324 #, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "" -#: cps/web.py:1717 cps/web.py:1766 +#: cps/web.py:1388 cps/web.py:1437 #, python-format msgid "%(name)s's profile" msgstr "%(name)s のプロフィール" -#: cps/web.py:1733 +#: cps/web.py:1404 msgid "Profile updated" msgstr "プロフィールを更新しました" @@ -1338,40 +1376,75 @@ msgstr "プロフィールを更新しました" msgid "Found no valid gmail.json file with OAuth information" msgstr "" -#: cps/tasks/convert.py:154 +#: cps/tasks/convert.py:153 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "" -#: cps/tasks/convert.py:187 +#: cps/tasks/convert.py:186 #, python-format msgid "%(format)s format not found on disk" msgstr "" -#: cps/tasks/convert.py:191 +#: cps/tasks/convert.py:190 msgid "Ebook converter failed with unknown error" msgstr "" -#: cps/tasks/convert.py:201 +#: cps/tasks/convert.py:200 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "" -#: cps/tasks/convert.py:223 +#: cps/tasks/convert.py:222 #, python-format msgid "Converted file not found or more than one file in folder %(folder)s" msgstr "" -#: cps/tasks/convert.py:246 +#: cps/tasks/convert.py:245 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "Ebook-converter が失敗しました: %(error)s" -#: cps/tasks/convert.py:269 +#: cps/tasks/convert.py:268 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "" +#: cps/tasks/convert.py:273 +msgid "Convert" +msgstr "" + +#: cps/tasks/database.py:28 +msgid "Reconnecting Calibre database" +msgstr "" + +#: cps/tasks/mail.py:265 +msgid "E-mail" +msgstr "" + +#: cps/tasks/thumbnail.py:95 +#, python-format +msgid "Generated %(count)s cover thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:222 cps/tasks/thumbnail.py:435 +#: cps/tasks/thumbnail.py:503 +msgid "Cover Thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:281 +msgid "Generated {0} series thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:446 +msgid "Clearing cover thumbnail cache" +msgstr "" + +#: cps/tasks/upload.py:38 cps/templates/admin.html:20 +#: cps/templates/layout.html:67 cps/templates/user_table.html:145 +msgid "Upload" +msgstr "アップロード" + #: cps/templates/admin.html:9 msgid "Users" msgstr "" @@ -1391,7 +1464,7 @@ msgstr "" msgid "Send to Kindle E-mail Address" msgstr "" -#: cps/templates/admin.html:17 cps/templates/layout.html:76 +#: cps/templates/admin.html:17 cps/templates/layout.html:77 #: cps/templates/user_table.html:143 msgid "Admin" msgstr "管理者" @@ -1401,13 +1474,8 @@ msgstr "管理者" msgid "Password" msgstr "パスワード" -#: cps/templates/admin.html:20 cps/templates/layout.html:66 -#: cps/templates/user_table.html:145 -msgid "Upload" -msgstr "アップロード" - -#: cps/templates/admin.html:22 cps/templates/detail.html:18 -#: cps/templates/detail.html:27 cps/templates/shelf.html:7 +#: cps/templates/admin.html:22 cps/templates/detail.html:19 +#: cps/templates/detail.html:28 cps/templates/shelf.html:8 #: cps/templates/user_table.html:146 msgid "Download" msgstr "ダウンロード" @@ -1421,7 +1489,7 @@ msgstr "" msgid "Edit" msgstr "編集" -#: cps/templates/admin.html:25 cps/templates/book_edit.html:16 +#: cps/templates/admin.html:25 cps/templates/book_edit.html:17 #: cps/templates/book_table.html:100 cps/templates/modal_dialogs.html:63 #: cps/templates/modal_dialogs.html:116 cps/templates/user_edit.html:67 #: cps/templates/user_table.html:149 @@ -1534,78 +1602,107 @@ msgstr "" msgid "Edit UI Configuration" msgstr "" -#: cps/templates/admin.html:166 -msgid "Administration" -msgstr "管理" - #: cps/templates/admin.html:167 -msgid "Download Debug Package" +msgid "Scheduled Tasks" msgstr "" -#: cps/templates/admin.html:168 -msgid "View Logs" +#: cps/templates/admin.html:170 cps/templates/schedule_edit.html:12 +msgid "Time at which tasks start to run" msgstr "" -#: cps/templates/admin.html:171 -msgid "Reconnect Calibre Database" -msgstr "" - -#: cps/templates/admin.html:172 -msgid "Restart" -msgstr "" - -#: cps/templates/admin.html:173 -msgid "Shutdown" +#: cps/templates/admin.html:174 cps/templates/schedule_edit.html:20 +msgid "Maximum tasks duration" msgstr "" #: cps/templates/admin.html:178 -msgid "Update" -msgstr "アップデート" +msgid "Generate book cover thumbnails" +msgstr "" #: cps/templates/admin.html:182 +msgid "Generate series cover thumbnails" +msgstr "" + +#: cps/templates/admin.html:186 cps/templates/schedule_edit.html:37 +msgid "Reconnect to Calibre Library" +msgstr "" + +#: cps/templates/admin.html:193 +msgid "Refresh Thumbnail Cover Cache" +msgstr "" + +#: cps/templates/admin.html:199 +msgid "Administration" +msgstr "管理" + +#: cps/templates/admin.html:200 +msgid "Download Debug Package" +msgstr "" + +#: cps/templates/admin.html:201 +msgid "View Logs" +msgstr "" + +#: cps/templates/admin.html:204 +msgid "Reconnect Calibre Database" +msgstr "" + +#: cps/templates/admin.html:207 +msgid "Restart" +msgstr "" + +#: cps/templates/admin.html:208 +msgid "Shutdown" +msgstr "" + +#: cps/templates/admin.html:213 +msgid "Version Information" +msgstr "" + +#: cps/templates/admin.html:217 msgid "Version" msgstr "バージョン" -#: cps/templates/admin.html:183 +#: cps/templates/admin.html:218 msgid "Details" msgstr "詳細" -#: cps/templates/admin.html:189 +#: cps/templates/admin.html:224 msgid "Current version" msgstr "現在のバージョン" -#: cps/templates/admin.html:196 +#: cps/templates/admin.html:231 msgid "Check for Update" msgstr "" -#: cps/templates/admin.html:197 +#: cps/templates/admin.html:232 msgid "Perform Update" msgstr "更新を実行" -#: cps/templates/admin.html:210 +#: cps/templates/admin.html:245 msgid "Are you sure you want to restart?" msgstr "" -#: cps/templates/admin.html:215 cps/templates/admin.html:229 -#: cps/templates/admin.html:249 cps/templates/config_db.html:70 +#: cps/templates/admin.html:250 cps/templates/admin.html:264 +#: cps/templates/admin.html:284 cps/templates/config_db.html:70 msgid "OK" msgstr "" -#: cps/templates/admin.html:216 cps/templates/admin.html:230 -#: cps/templates/book_edit.html:213 cps/templates/book_table.html:127 +#: cps/templates/admin.html:251 cps/templates/admin.html:265 +#: cps/templates/book_edit.html:214 cps/templates/book_table.html:127 #: cps/templates/config_db.html:54 cps/templates/config_edit.html:359 #: 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/shelf_edit.html:27 +#: cps/templates/modal_dialogs.html:135 cps/templates/schedule_edit.html:41 +#: cps/templates/shelf_edit.html:27 cps/templates/tasks.html:46 #: cps/templates/user_edit.html:144 msgid "Cancel" msgstr "" -#: cps/templates/admin.html:228 +#: cps/templates/admin.html:263 msgid "Are you sure you want to shutdown?" msgstr "" -#: cps/templates/admin.html:240 +#: cps/templates/admin.html:275 msgid "Updating, please do not reload this page" msgstr "" @@ -1617,39 +1714,39 @@ msgstr "経由" msgid "In Library" msgstr "ライブラリ内" -#: cps/templates/author.html:26 cps/templates/index.html:73 -#: cps/templates/search.html:30 cps/templates/shelf.html:19 +#: cps/templates/author.html:26 cps/templates/index.html:74 +#: cps/templates/search.html:31 cps/templates/shelf.html:20 msgid "Sort according to book date, newest first" msgstr "" -#: cps/templates/author.html:27 cps/templates/index.html:74 -#: cps/templates/search.html:31 cps/templates/shelf.html:20 +#: cps/templates/author.html:27 cps/templates/index.html:75 +#: cps/templates/search.html:32 cps/templates/shelf.html:21 msgid "Sort according to book date, oldest first" msgstr "" -#: cps/templates/author.html:28 cps/templates/index.html:75 -#: cps/templates/search.html:32 cps/templates/shelf.html:21 +#: cps/templates/author.html:28 cps/templates/index.html:76 +#: cps/templates/search.html:33 cps/templates/shelf.html:22 msgid "Sort title in alphabetical order" msgstr "" -#: cps/templates/author.html:29 cps/templates/index.html:76 -#: cps/templates/search.html:33 cps/templates/shelf.html:22 +#: cps/templates/author.html:29 cps/templates/index.html:77 +#: cps/templates/search.html:34 cps/templates/shelf.html:23 msgid "Sort title in reverse alphabetical order" msgstr "" -#: cps/templates/author.html:30 cps/templates/index.html:79 -#: cps/templates/search.html:36 cps/templates/shelf.html:25 +#: cps/templates/author.html:30 cps/templates/index.html:80 +#: cps/templates/search.html:37 cps/templates/shelf.html:26 msgid "Sort according to publishing date, newest first" msgstr "" -#: cps/templates/author.html:31 cps/templates/index.html:80 -#: cps/templates/search.html:37 cps/templates/shelf.html:26 +#: cps/templates/author.html:31 cps/templates/index.html:81 +#: cps/templates/search.html:38 cps/templates/shelf.html:27 msgid "Sort according to publishing date, oldest first" msgstr "" #: cps/templates/author.html:56 cps/templates/author.html:115 -#: cps/templates/index.html:29 cps/templates/index.html:112 -#: cps/templates/search.html:66 cps/templates/shelf.html:54 +#: cps/templates/index.html:30 cps/templates/index.html:113 +#: cps/templates/search.html:67 cps/templates/shelf.html:55 msgid "reduce" msgstr "減らす" @@ -1657,165 +1754,166 @@ msgstr "減らす" msgid "More by" msgstr "" -#: cps/templates/book_edit.html:10 +#: cps/templates/book_edit.html:11 msgid "Delete Book" msgstr "本を削除" -#: cps/templates/book_edit.html:13 +#: cps/templates/book_edit.html:14 msgid "Delete formats:" msgstr "削除する形式:" -#: cps/templates/book_edit.html:24 +#: cps/templates/book_edit.html:25 msgid "Convert book format:" msgstr "変換する形式:" -#: cps/templates/book_edit.html:29 +#: cps/templates/book_edit.html:30 msgid "Convert from:" msgstr "変換元:" -#: cps/templates/book_edit.html:31 cps/templates/book_edit.html:38 +#: cps/templates/book_edit.html:32 cps/templates/book_edit.html:39 msgid "select an option" msgstr "選択肢を選ぶ" -#: cps/templates/book_edit.html:36 +#: cps/templates/book_edit.html:37 msgid "Convert to:" msgstr "変換先:" -#: cps/templates/book_edit.html:45 +#: cps/templates/book_edit.html:46 msgid "Convert book" msgstr "本を変換" -#: cps/templates/book_edit.html:55 cps/templates/search_form.html:8 +#: cps/templates/book_edit.html:56 cps/templates/search_form.html:8 msgid "Book Title" msgstr "本のタイトル" -#: cps/templates/book_edit.html:62 cps/templates/book_edit.html:270 -#: cps/templates/book_edit.html:288 cps/templates/search_form.html:12 +#: cps/templates/book_edit.html:63 cps/templates/book_edit.html:271 +#: cps/templates/book_edit.html:289 cps/templates/search_form.html:12 msgid "Author" msgstr "著者" -#: cps/templates/book_edit.html:67 cps/templates/book_edit.html:275 -#: cps/templates/book_edit.html:290 cps/templates/search_form.html:153 +#: cps/templates/book_edit.html:68 cps/templates/book_edit.html:276 +#: cps/templates/book_edit.html:291 cps/templates/search_form.html:153 msgid "Description" msgstr "詳細" -#: cps/templates/book_edit.html:72 +#: cps/templates/book_edit.html:73 msgid "Identifiers" msgstr "" -#: cps/templates/book_edit.html:76 cps/templates/book_edit.html:299 +#: cps/templates/book_edit.html:77 cps/templates/book_edit.html:300 msgid "Identifier Type" msgstr "" -#: cps/templates/book_edit.html:77 cps/templates/book_edit.html:300 +#: cps/templates/book_edit.html:78 cps/templates/book_edit.html:301 msgid "Identifier Value" msgstr "" -#: cps/templates/book_edit.html:78 cps/templates/book_edit.html:301 +#: cps/templates/book_edit.html:79 cps/templates/book_edit.html:302 #: cps/templates/user_table.html:24 msgid "Remove" msgstr "" -#: cps/templates/book_edit.html:82 +#: cps/templates/book_edit.html:83 msgid "Add Identifier" msgstr "" -#: cps/templates/book_edit.html:86 cps/templates/search_form.html:51 +#: cps/templates/book_edit.html:87 cps/templates/search_form.html:51 msgid "Tags" msgstr "タグ" -#: cps/templates/book_edit.html:94 +#: cps/templates/book_edit.html:95 msgid "Series ID" msgstr "" -#: cps/templates/book_edit.html:98 +#: cps/templates/book_edit.html:99 msgid "Rating" msgstr "評価" -#: cps/templates/book_edit.html:103 +#: cps/templates/book_edit.html:104 msgid "Fetch Cover from URL (JPEG - Image will be downloaded and stored in database)" msgstr "" -#: cps/templates/book_edit.html:107 +#: cps/templates/book_edit.html:108 msgid "Upload Cover from Local Disk" msgstr "" -#: cps/templates/book_edit.html:112 +#: cps/templates/book_edit.html:113 msgid "Published Date" msgstr "" -#: cps/templates/book_edit.html:121 cps/templates/book_edit.html:272 -#: cps/templates/book_edit.html:289 cps/templates/detail.html:164 +#: cps/templates/book_edit.html:122 cps/templates/book_edit.html:273 +#: cps/templates/book_edit.html:290 cps/templates/detail.html:165 #: cps/templates/search_form.html:16 msgid "Publisher" msgstr "出版社" -#: cps/templates/book_edit.html:125 cps/templates/detail.html:131 +#: cps/templates/book_edit.html:126 cps/templates/detail.html:132 #: cps/templates/user_edit.html:33 msgid "Language" msgstr "言語" -#: cps/templates/book_edit.html:135 cps/templates/search_form.html:45 +#: cps/templates/book_edit.html:136 cps/templates/search_form.html:45 #: cps/templates/search_form.html:164 msgid "Yes" msgstr "はい" -#: cps/templates/book_edit.html:136 cps/templates/search_form.html:46 +#: cps/templates/book_edit.html:137 cps/templates/search_form.html:46 #: cps/templates/search_form.html:165 msgid "No" msgstr "いいえ" -#: cps/templates/book_edit.html:200 +#: cps/templates/book_edit.html:201 msgid "Upload Format" msgstr "" -#: cps/templates/book_edit.html:208 +#: cps/templates/book_edit.html:209 msgid "View Book on Save" msgstr "" -#: cps/templates/book_edit.html:211 cps/templates/book_edit.html:229 +#: cps/templates/book_edit.html:212 cps/templates/book_edit.html:230 msgid "Fetch Metadata" msgstr "" -#: cps/templates/book_edit.html:212 cps/templates/config_db.html:53 +#: cps/templates/book_edit.html:213 cps/templates/config_db.html:53 #: cps/templates/config_edit.html:358 cps/templates/config_view_edit.html:174 -#: cps/templates/email_edit.html:65 cps/templates/shelf_edit.html:25 -#: cps/templates/shelf_order.html:41 cps/templates/user_edit.html:142 +#: cps/templates/email_edit.html:65 cps/templates/schedule_edit.html:40 +#: cps/templates/shelf_edit.html:25 cps/templates/shelf_order.html:41 +#: cps/templates/user_edit.html:142 msgid "Save" msgstr "" -#: cps/templates/book_edit.html:232 +#: cps/templates/book_edit.html:233 msgid "Keyword" msgstr "キーワード" -#: cps/templates/book_edit.html:233 +#: cps/templates/book_edit.html:234 #, fuzzy msgid "Search keyword" msgstr "キーワードを検索" -#: cps/templates/book_edit.html:239 +#: cps/templates/book_edit.html:240 msgid "Click the cover to load metadata to the form" msgstr "カバー画像をクリックしてメタデータをフォームに読み込んでください" -#: cps/templates/book_edit.html:246 cps/templates/book_edit.html:285 +#: cps/templates/book_edit.html:247 cps/templates/book_edit.html:286 msgid "Loading..." msgstr "読み込み中..." -#: cps/templates/book_edit.html:250 cps/templates/layout.html:63 -#: cps/templates/layout.html:186 cps/templates/modal_dialogs.html:34 +#: cps/templates/book_edit.html:251 cps/templates/layout.html:64 +#: cps/templates/layout.html:187 cps/templates/modal_dialogs.html:34 #: cps/templates/user_edit.html:163 msgid "Close" msgstr "閉じる" -#: cps/templates/book_edit.html:277 cps/templates/book_edit.html:291 +#: cps/templates/book_edit.html:278 cps/templates/book_edit.html:292 msgid "Source" msgstr "ソース" -#: cps/templates/book_edit.html:286 +#: cps/templates/book_edit.html:287 msgid "Search error!" msgstr "検索エラー" -#: cps/templates/book_edit.html:287 +#: cps/templates/book_edit.html:288 msgid "No Result(s) found! Please try another keyword." msgstr "検索結果が見つかりません。別のキーワードで検索してみてください。" @@ -1924,6 +2022,7 @@ msgid "Enter " msgstr "登録" #: cps/templates/book_table.html:113 cps/templates/modal_dialogs.html:46 +#: cps/templates/tasks.html:36 msgid "Are you really sure?" msgstr "よろしいですか?" @@ -2336,62 +2435,62 @@ msgstr "" msgid "Add Allowed/Denied custom column values" msgstr "" -#: cps/templates/detail.html:60 cps/templates/detail.html:69 +#: cps/templates/detail.html:61 cps/templates/detail.html:70 msgid "Read in Browser" msgstr "" -#: cps/templates/detail.html:77 cps/templates/detail.html:94 +#: cps/templates/detail.html:78 cps/templates/detail.html:95 msgid "Listen in Browser" msgstr "" -#: cps/templates/detail.html:124 +#: cps/templates/detail.html:125 #, python-format msgid "Book %(index)s of %(range)s" msgstr "" -#: cps/templates/detail.html:173 +#: cps/templates/detail.html:174 msgid "Published" msgstr "" -#: cps/templates/detail.html:221 +#: cps/templates/detail.html:222 msgid "Mark As Unread" msgstr "未読に設定" -#: cps/templates/detail.html:221 +#: cps/templates/detail.html:222 msgid "Mark As Read" msgstr "既読に設定" -#: cps/templates/detail.html:222 +#: cps/templates/detail.html:223 msgid "Read" msgstr "読んだ" -#: cps/templates/detail.html:231 +#: cps/templates/detail.html:232 msgid "Restore from archive" msgstr "" -#: cps/templates/detail.html:231 +#: cps/templates/detail.html:232 msgid "Add to archive" msgstr "" -#: cps/templates/detail.html:232 +#: cps/templates/detail.html:233 msgid "Archived" msgstr "" -#: cps/templates/detail.html:243 +#: cps/templates/detail.html:244 msgid "Description:" msgstr "詳細:" -#: cps/templates/detail.html:256 cps/templates/search.html:15 +#: cps/templates/detail.html:257 cps/templates/search.html:16 msgid "Add to shelf" msgstr "本棚に追加" -#: cps/templates/detail.html:267 cps/templates/detail.html:284 -#: cps/templates/feed.xml:79 cps/templates/layout.html:137 -#: cps/templates/search.html:21 +#: cps/templates/detail.html:268 cps/templates/detail.html:285 +#: cps/templates/feed.xml:79 cps/templates/layout.html:138 +#: cps/templates/search.html:22 msgid "(Public)" msgstr "" -#: cps/templates/detail.html:298 +#: cps/templates/detail.html:299 msgid "Edit Metadata" msgstr "" @@ -2435,7 +2534,7 @@ msgstr "" msgid "Save and Send Test E-mail" msgstr "" -#: cps/templates/email_edit.html:70 cps/templates/layout.html:29 +#: cps/templates/email_edit.html:70 cps/templates/layout.html:30 #: cps/templates/shelf_order.html:42 cps/templates/user_table.html:174 msgid "Back" msgstr "戻る" @@ -2461,7 +2560,7 @@ msgstr "ドメイン名を入力" msgid "Denied Domains (Blacklist)" msgstr "" -#: cps/templates/feed.xml:21 cps/templates/layout.html:170 +#: cps/templates/feed.xml:21 cps/templates/layout.html:171 msgid "Next" msgstr "次" @@ -2473,6 +2572,10 @@ msgstr "" msgid "Kobo Token:" msgstr "" +#: cps/templates/grid.html:21 +msgid "List" +msgstr "" + #: cps/templates/http_error.html:31 msgid "Calibre-Web Instance is unconfigured, please contact your administrator" msgstr "" @@ -2489,29 +2592,29 @@ msgstr "" msgid "Logout User" msgstr "" -#: cps/templates/index.html:70 +#: cps/templates/index.html:71 msgid "Sort ascending according to download count" msgstr "" -#: cps/templates/index.html:71 +#: cps/templates/index.html:72 msgid "Sort descending according to download count" msgstr "" -#: cps/templates/index.html:77 cps/templates/search.html:34 -#: cps/templates/shelf.html:23 -msgid "Sort authors in alphabetical order" -msgstr "" - #: cps/templates/index.html:78 cps/templates/search.html:35 #: cps/templates/shelf.html:24 +msgid "Sort authors in alphabetical order" +msgstr "" + +#: cps/templates/index.html:79 cps/templates/search.html:36 +#: cps/templates/shelf.html:25 msgid "Sort authors in reverse alphabetical order" msgstr "" -#: cps/templates/index.html:82 +#: cps/templates/index.html:83 msgid "Sort ascending according to series index" msgstr "" -#: cps/templates/index.html:83 +#: cps/templates/index.html:84 msgid "Sort descending according to series index" msgstr "" @@ -2575,7 +2678,7 @@ msgstr "" msgid "Books ordered by file formats" msgstr "" -#: cps/templates/index.xml:119 cps/templates/layout.html:135 +#: cps/templates/index.xml:119 cps/templates/layout.html:136 #: cps/templates/search_form.html:87 msgid "Shelves" msgstr "" @@ -2584,63 +2687,67 @@ msgstr "" msgid "Books organized in shelves" msgstr "" -#: cps/templates/layout.html:29 +#: cps/templates/layout.html:30 msgid "Home" msgstr "ホーム" -#: cps/templates/layout.html:35 +#: cps/templates/layout.html:36 msgid "Toggle Navigation" msgstr "" -#: cps/templates/layout.html:46 +#: cps/templates/layout.html:47 msgid "Search Library" msgstr "" -#: cps/templates/layout.html:63 cps/templates/layout.html:117 +#: cps/templates/layout.html:64 cps/templates/layout.html:118 msgid "Uploading..." msgstr "アップロード中..." -#: cps/templates/layout.html:63 +#: cps/templates/layout.html:64 msgid "Error" msgstr "エラー" -#: cps/templates/layout.html:63 +#: cps/templates/layout.html:64 msgid "Upload done, processing, please wait..." msgstr "アップロード完了。現在処理中ですのでお待ち下さい..." -#: cps/templates/layout.html:76 cps/templates/read.html:72 +#: cps/templates/layout.html:77 cps/templates/read.html:72 #: cps/templates/readcbr.html:84 cps/templates/readcbr.html:108 msgid "Settings" msgstr "設定" -#: cps/templates/layout.html:78 +#: cps/templates/layout.html:79 msgid "Account" msgstr "アカウント" -#: cps/templates/layout.html:80 +#: cps/templates/layout.html:81 msgid "Logout" msgstr "ログアウト" -#: cps/templates/layout.html:118 +#: cps/templates/layout.html:119 msgid "Please do not refresh the page" msgstr "" -#: cps/templates/layout.html:128 +#: cps/templates/layout.html:129 msgid "Browse" msgstr "閲覧" -#: cps/templates/layout.html:141 cps/templates/stats.html:3 +#: cps/templates/layout.html:142 cps/templates/stats.html:3 msgid "About" msgstr "このサイトについて" -#: cps/templates/layout.html:155 +#: cps/templates/layout.html:156 msgid "Previous" msgstr "前" -#: cps/templates/layout.html:182 +#: cps/templates/layout.html:183 msgid "Book Details" msgstr "本の詳細" +#: cps/templates/list.html:22 +msgid "Grid" +msgstr "" + #: cps/templates/login.html:18 msgid "Remember Me" msgstr "" @@ -2745,7 +2852,7 @@ msgstr "" msgid "Select" msgstr "" -#: cps/templates/modal_dialogs.html:134 +#: cps/templates/modal_dialogs.html:134 cps/templates/tasks.html:45 #, fuzzy msgid "Ok" msgstr "本" @@ -2923,15 +3030,23 @@ msgstr "" msgid "This verification link will expire in 10 minutes." msgstr "" -#: cps/templates/search.html:5 -msgid "No Results Found" +#: cps/templates/schedule_edit.html:29 +msgid "Generate Book Cover Thumbnails" +msgstr "" + +#: cps/templates/schedule_edit.html:33 +msgid "Generate Series Cover Thumbnails" msgstr "" #: cps/templates/search.html:6 +msgid "No Results Found" +msgstr "" + +#: cps/templates/search.html:7 msgid "Search Term:" msgstr "" -#: cps/templates/search.html:8 +#: cps/templates/search.html:9 msgid "Results for:" msgstr "結果:" @@ -2984,23 +3099,23 @@ msgstr "" msgid "To:" msgstr "" -#: cps/templates/shelf.html:12 +#: cps/templates/shelf.html:13 msgid "Delete this Shelf" msgstr "この本棚を削除" -#: cps/templates/shelf.html:13 +#: cps/templates/shelf.html:14 msgid "Edit Shelf Properties" msgstr "" -#: cps/templates/shelf.html:16 +#: cps/templates/shelf.html:17 msgid "Arrange books manually" msgstr "" -#: cps/templates/shelf.html:17 +#: cps/templates/shelf.html:18 msgid "Disable Change order" msgstr "" -#: cps/templates/shelf.html:17 +#: cps/templates/shelf.html:18 msgid "Enable Change order" msgstr "" @@ -3045,7 +3160,7 @@ msgid "System Statistics" msgstr "" #: cps/templates/stats.html:33 -msgid "Program Library" +msgid "Program" msgstr "" #: cps/templates/stats.html:34 @@ -3076,6 +3191,18 @@ msgstr "" msgid "Start Time" msgstr "" +#: cps/templates/tasks.html:20 +msgid "Actions" +msgstr "" + +#: cps/templates/tasks.html:40 +msgid "This task will be cancelled. Any progress made by this task will be saved." +msgstr "" + +#: cps/templates/tasks.html:41 +msgid "If this is a scheduled task, it will be re-ran during the next scheduled time." +msgstr "" + #: cps/templates/user_edit.html:20 msgid "Reset user Password" msgstr "ユーザパスワードをリセット" diff --git a/cps/translations/km/LC_MESSAGES/messages.mo b/cps/translations/km/LC_MESSAGES/messages.mo index 34b973bbcb09824879b7e8162c8f11c1f29f284d..0bf4f7ffeefc95b6d97dec85481b847483b4bfbb 100644 GIT binary patch delta 4063 zcmYM#32;qU9LMpKijXISgjf<4kyR`&2}vwTthF~J#1cC}I#E-~Sjt65g)(Cj6fMcL z8D*xHHZ`>-mX=XQt1_*vmTHZqmZ?$g#M19C_srBh?{m(1_nz}V|MR~$yAJ!@IOOA8 z3-aAy`1g$eVf?SEqu&4j)&v?8M0YLL#!?Kx?bdQTeiS{7pR}IG2K28YA9J6trdW-d zFSudNxMQMe=*DDJ06nojj>mW`z~;CK{qQSPj0aE?9z$Qegu!?X72sc}d0$}+dK$U& zC1N}J<1yJd#(YSl2?NJb6JA6u_}KP6gsYuIpaMw17MO~YFdMbdK0AIC`IswwwZ?}? z45lH`F{NpZ3Lpt^TIgNWh3{i4+<>p+K8(OBR3Oi=9=^1C8oQ|uLERsX z`aKnukv>=#hoLq)1|1E|rlB1zLVw(7FDOOrU_UCwmoXHtqXMo*?bM(2X@M|Q=HgHR z_eRY-8I_^Mn2v?008cd`|Jv~-1~kDP)Xtt_5IP3Ux9Gx96Go!O+oLj& zfx17-_Qzrz{aL7aHe)v|LlyZABv$jnp}{6iWAdiQt1T)6USw^Pf_zLSU#j|i)KR>H zui-pYh8EcIO?G@M_F}vgmC0MEz?*U&%3L@mqSKLvm&Rn&&Wo`t?!gqihgvX#A2mS? z>Us9seh;Mn%mCEH<7~eGm7%4m>MyeW&rq4#ha9vST{8bc-+(70_7JL{m`J zUVvJ7q3y3g?W7pH;8s-TenA~o5a*)%TcGA|gPJ!DHD4cWpyxk}2KSgr_5uer@dv0P zS%*sH=cpYWK<(fhYDbq*3%x=eMO|JRs+}-vC)E9eQP+(}9o2Mn^us(F;aG@TU?-|5 zD^L?vS^q>`?;Gx37lP`?qpnXw?Jyg)z!+3f=c6(=3zeCLw!b`_{Og9b4CuLCk2>Rn z)=Ja_-=d1>drZeGsPPuOo%HyHqpCRxH9id$Sb=p3s#exnOHuRfZSA-b9b-T*pwq|` zX?{jc_y}V$g7>Zh9fUf&EY$TAQ9GK6T5v9E11nLPTVpM=9!4EO6)MnQ9U8jv7HTI? zQ4`jslvULYu@=Uoe(#71pcm?>hT49fbq>~Id>Jb66}Z61nBCZ&er%K*cpmnr@64v5 zB07XR!yA}^f7|ioXx?)4b1@lLp>8~ida?M&xUbqY)O9oPP27ljul#|dFobA2;Vh(1 zO_{4>PS6;`z;9SnM7%fK($B_TxC9m8G1Nr2aRg>?(FELp@8MG%gtO!M3x^fh7aO*7 z=gC3!H=}CdI=0dC|AiT|6!h>R_VF(stD3)M89>O;;D#bn80`#FMKT0A0+UaJ(8-k~B4>lpsQ}8>Si*dYH zYbHcx>JT=mHL{WxeI026B+h00VRQg`M6 z>S=l4_8s$#2FGsV`?*Ik701voLk0E<6=^fJ$0kfJj>i&w9be*VY&pO^^Bu^m!1xVx z?@vIIY6fB)uEuEm8f%{aD>Q-`c!eu5n9?uAkFgF$4tC$!?XZA;XVlq!iWIWhk2>4O zRu7e|BaB29UnkVlG#SHiH}YVaGnnGg(ECygr=oUz6iJG?gj{37GkMSB+o&B^VhmnG zWy+5qmD))-A2(nDHW=n+ZV~EeE3iF2MP1(}i}NRFGm?e|%B&YLkbXe6`vM8WQ2L`$ zXFk`u1%v2Uq5}U3`I!5B)xr!aTEF*3-Is$3U=dd0&fz@&nmB)iJHZOnbGr?d;^!ET zL6p9VFde-(AGPzH$nhIr-cnj<2{n@?(>4Dl&9!|&k<(mT!*DKEpy;;}OxxF_bJRzxTVq)>o$S1z39lW06t#QrD TCq#8^ReUV1S^2d-na%$LwC%d$ delta 4136 zcmYM%dvwor9LMp`%;vJKl^MHKCNsBI_E;(NA)Tl0z!%_I&mIoRc$qd_JG=_xt(0Kkv```*nP`FQ9sV zfOD=z@U7>!jJj0aFL9z{)f3>)KBjKH5!0XDkNoi`ji z(2qgQmyL-y8`D_dyg?(9f#awNub>vxw$+b8?IaZyK!1$EJe-VEQ5!gH$LohSh0f&$_?KB#-Kq4x0 zy-@)dpyu_WGE|CvaU&|gQ<3CfJHE<*Cioq-v!GVSbjMKCL|MosQ-nitF6z01sIxte zxp)`bV;0-%j8C98xE7VEa@4|=$R5m|*5qG1`ho%N{3@z{3l(vAl>0yos^}6?6ZWv< znWzj5M?F8q_Ge-z`VMNIt=I>5qKf<%BvupVkT2~l9`$;8P#MTVVlab{A5+9H1yGDS ziY3?xm!mSY%8pmr@oLOwyatuYTd2T0a30EBGNz)_k47>LFKXwT(SvoEj(1TDrgBje zq@#)~%R0i2PeSU_%s?%$(DqAEDSr#~7VNP7gGk04bCQP6{yb{u*HLG4%i5HD>G}iK z&ZvOWQK`*91vChW)r`S*=tTv*0X1I*s#bPlJf6i6z5f9Z@Gt{mNS4fK)Phf=0$PBY z=tWf3m!K9dxBV@sv#-V8_%SMjzoCvSmGjZ_9@P8;Q1ec}FuniNXeeb~ zxDr(?HKTsH*-MwWGVJh1&4Z&{1?m)li0Y6zchzsQVV7qlH)43mY(weidqg zqp0FMhnncNH8jqhC?0iRn(Yrk-9G`f!)HCYsBsTpDZPeSsH!eNjW0*-xWwv1)k=-^)3%N~VLbzi$d5Yv ztH>*A?w}?N=eyexvr&OQg{lQF>i)&3=Sxuwu19U)JyhnlSr1vyqK@FULqn1Ng?ccM z($!8PQ4@AVRdq53;tD0mfo zy7SCK^*_RJz5oBvAS))Eup6*D5}E1N)!o4`RDTmHBl}VB`Jbo-(ze7t}wSl>)caUZ;ddhi$288xHwl*)mqiJn7crp&t4j@O|wbPiSB zZ8?uIn1cEatU}GV347sbY=IG+gTv-c0u7yM0V*{wqZX`3rSb-9!ahCSjFe#@{R_Al zFQM+A&Lq4rW;wRPDvZTCoPlR>Am*mKM_ZCk{sXAW-3(}_9}(VAyo}qiCwZQVKj2&( z%y;#_2~n9kgZJTWY>B~r+-i@-Jo-5}0ZUQyUqfOr(WFCxj>sVYp)|Y<=xiO-#C6uM zk*u1VSc>tPZsa>~I{j~vV>G#a-GATbVI2J(Na33ks0ABP0j08t{tcLqD(3YLjYt}M zF&OJ{6rMtzWnz|lh8cK*{s=6@`2KFn=c5)V$0>LWwNMWVA`2JdUi<_PV(|d?lbo63 z)|``1gKMS`RSU19GVmE{;`11fttbrj`=F}di^|M4)N|)i_l0u6Z861KfV>!Hu5}A4 zV<(Y1bWHFdHxdsrU~-V-H_szUFdyJJyom}dpY18&$C1sLDx8Sd@j)Cim;%NpQD^@v z@@X&y54+DVLe2XccGCNQibeth0hD?>?1&MVk1KEzuEZyleY6t?dik9XyJ> z2xbPxVkPR#4_Gf_3;Ll{umW#`44GaSh$X1&ub`gWJc|4)fFlgl;T_b(yGFYc97mnu zHB^cR7rOt4D?%0FYD~t%sGZ+I%D{}|Yo&$CQDV#donYMzhLz%)x2+780`wVo+5-4twJQ)WW;$_#JE1WA1YvjNp1jFB-f# zrWQ59ALzkYww;EBs6a|lJKBNM@o?>`@ckjpC(nw@pE1Qd*;`!OFZOcN<~@>9dc~zC zdy-SilH+eR?%g$|dD+5FQMLWrd)g$~JLCMma=-6YzpuhyvD)uj?DuW-SFF=--oFkoZ->`0?1h6*Z=?k diff --git a/cps/translations/km/LC_MESSAGES/messages.po b/cps/translations/km/LC_MESSAGES/messages.po index 795c5861..757604de 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: 2022-04-18 20:01+0200\n" +"POT-Creation-Date: 2022-05-01 13:22+0200\n" "PO-Revision-Date: 2018-08-27 17:06+0700\n" "Last-Translator: \n" "Language: km_KH\n" @@ -17,592 +17,617 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.9.1\n" +"Generated-By: Babel 2.8.0\n" -#: cps/about.py:86 +#: cps/about.py:84 msgid "Statistics" msgstr "ស្ថិតិ" -#: cps/admin.py:141 +#: cps/admin.py:146 msgid "Server restarted, please reload page" msgstr "ម៉ាស៊ីន server បានដំណើរការម្តងទៀត សូមបើកទំព័រជាថ្មី" -#: cps/admin.py:143 +#: cps/admin.py:148 msgid "Performing shutdown of server, please close window" msgstr "កំពុងបិទម៉ាស៊ីន server សូមបិទផ្ទាំងនេះ" -#: cps/admin.py:151 +#: cps/admin.py:156 msgid "Reconnect successful" msgstr "" -#: cps/admin.py:154 +#: cps/admin.py:159 msgid "Unknown command" msgstr "" -#: cps/admin.py:176 cps/editbooks.py:713 cps/editbooks.py:892 -#: cps/editbooks.py:894 cps/editbooks.py:930 cps/editbooks.py:947 -#: cps/updater.py:608 cps/uploader.py:93 cps/uploader.py:103 +#: cps/admin.py:192 cps/editbooks.py:571 cps/editbooks.py:573 +#: cps/editbooks.py:609 cps/editbooks.py:626 cps/editbooks.py:1233 +#: cps/updater.py:613 cps/uploader.py:87 cps/uploader.py:97 msgid "Unknown" msgstr "មិនដឹង" -#: cps/admin.py:197 +#: cps/admin.py:217 msgid "Admin page" msgstr "ទំព័ររដ្ឋបាល" -#: cps/admin.py:217 +#: cps/admin.py:237 msgid "Basic Configuration" msgstr "ការកំណត់សាមញ្ញ" -#: cps/admin.py:255 +#: cps/admin.py:275 msgid "UI Configuration" msgstr "ការកំណត់ផ្ទាំងប្រើប្រាស់" -#: cps/admin.py:289 cps/templates/admin.html:51 +#: cps/admin.py:309 cps/templates/admin.html:51 #, fuzzy msgid "Edit Users" msgstr "អ្នកប្រើប្រាស់រដ្ឋបាល" -#: cps/admin.py:333 cps/opds.py:529 cps/templates/grid.html:13 +#: cps/admin.py:353 cps/opds.py:532 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "" -#: cps/admin.py:360 cps/admin.py:1648 +#: cps/admin.py:380 cps/admin.py:1365 msgid "User not found" msgstr "" -#: cps/admin.py:374 +#: cps/admin.py:394 msgid "{} users deleted successfully" msgstr "" -#: cps/admin.py:397 cps/templates/config_view_edit.html:133 +#: cps/admin.py:417 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:418 cps/admin.py:424 +#: cps/admin.py:438 cps/admin.py:444 msgid "Malformed request" msgstr "" -#: cps/admin.py:436 cps/admin.py:1526 +#: cps/admin.py:456 cps/admin.py:1962 msgid "Guest Name can't be changed" msgstr "" -#: cps/admin.py:448 +#: cps/admin.py:468 msgid "Guest can't have this role" msgstr "" -#: cps/admin.py:460 cps/admin.py:1484 +#: cps/admin.py:480 cps/admin.py:1920 msgid "No admin user remaining, can't remove admin role" msgstr "" -#: cps/admin.py:464 cps/admin.py:478 +#: cps/admin.py:484 cps/admin.py:498 msgid "Value has to be true or false" msgstr "" -#: cps/admin.py:466 +#: cps/admin.py:486 msgid "Invalid role" msgstr "" -#: cps/admin.py:470 +#: cps/admin.py:490 msgid "Guest can't have this view" msgstr "" -#: cps/admin.py:480 +#: cps/admin.py:500 msgid "Invalid view" msgstr "" -#: cps/admin.py:483 +#: cps/admin.py:503 msgid "Guest's Locale is determined automatically and can't be set" msgstr "" -#: cps/admin.py:487 +#: cps/admin.py:507 msgid "No Valid Locale Given" msgstr "" -#: cps/admin.py:498 +#: cps/admin.py:518 msgid "No Valid Book Language Given" msgstr "" -#: cps/admin.py:500 cps/editbooks.py:1267 +#: cps/admin.py:520 cps/editbooks.py:438 msgid "Parameter not found" msgstr "" -#: cps/admin.py:553 +#: cps/admin.py:557 msgid "Invalid Read Column" msgstr "" -#: cps/admin.py:559 +#: cps/admin.py:563 msgid "Invalid Restricted Column" msgstr "" -#: cps/admin.py:579 cps/admin.py:1355 +#: cps/admin.py:583 cps/admin.py:1791 msgid "Calibre-Web configuration updated" msgstr "" -#: cps/admin.py:591 +#: cps/admin.py:595 msgid "Do you really want to delete the Kobo Token?" msgstr "" -#: cps/admin.py:593 +#: cps/admin.py:597 msgid "Do you really want to delete this domain?" msgstr "" -#: cps/admin.py:595 +#: cps/admin.py:599 msgid "Do you really want to delete this user?" msgstr "" -#: cps/admin.py:597 +#: cps/admin.py:601 msgid "Are you sure you want to delete this shelf?" msgstr "តើអ្នកពិតជាចង់លុបធ្នើនេះមែនទេ?" -#: cps/admin.py:599 +#: cps/admin.py:603 #, fuzzy msgid "Are you sure you want to change locales of selected user(s)?" msgstr "តើអ្នកពិតជាចង់លុបធ្នើនេះមែនទេ?" -#: cps/admin.py:601 +#: cps/admin.py:605 msgid "Are you sure you want to change visible book languages for selected user(s)?" msgstr "" -#: cps/admin.py:603 +#: cps/admin.py:607 msgid "Are you sure you want to change the selected role for the selected user(s)?" msgstr "" -#: cps/admin.py:605 +#: cps/admin.py:609 #, fuzzy msgid "Are you sure you want to change the selected restrictions for the selected user(s)?" msgstr "តើអ្នកពិតជាចង់លុបធ្នើនេះមែនទេ?" -#: cps/admin.py:607 +#: cps/admin.py:611 msgid "Are you sure you want to change the selected visibility restrictions for the selected user(s)?" msgstr "" -#: cps/admin.py:610 +#: cps/admin.py:614 #, fuzzy msgid "Are you sure you want to change shelf sync behavior for the selected user(s)?" msgstr "តើអ្នកពិតជាចង់លុបធ្នើនេះមែនទេ?" -#: cps/admin.py:612 +#: cps/admin.py:616 #, fuzzy msgid "Are you sure you want to change Calibre library location?" msgstr "តើអ្នកពិតជាចង់លុបធ្នើនេះមែនទេ?" -#: cps/admin.py:614 +#: cps/admin.py:618 +msgid "Calibre-Web will search for updated Covers and update Cover Thumbnails, this may take a while?" +msgstr "" + +#: cps/admin.py:620 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:764 -msgid "Tag not found" -msgstr "" - -#: cps/admin.py:776 -msgid "Invalid Action" -msgstr "" - -#: cps/admin.py:893 cps/admin.py:899 cps/admin.py:909 cps/admin.py:919 +#: cps/admin.py:862 cps/admin.py:868 cps/admin.py:878 cps/admin.py:888 #: cps/templates/modal_dialogs.html:29 cps/templates/user_table.html:41 #: cps/templates/user_table.html:58 msgid "Deny" msgstr "" -#: cps/admin.py:895 cps/admin.py:901 cps/admin.py:911 cps/admin.py:921 +#: cps/admin.py:864 cps/admin.py:870 cps/admin.py:880 cps/admin.py:890 #: cps/templates/modal_dialogs.html:28 cps/templates/user_table.html:44 #: cps/templates/user_table.html:61 msgid "Allow" msgstr "" -#: cps/admin.py:936 +#: cps/admin.py:905 msgid "{} sync entries deleted" msgstr "" -#: cps/admin.py:1059 +#: cps/admin.py:953 +msgid "Tag not found" +msgstr "" + +#: cps/admin.py:965 +msgid "Invalid Action" +msgstr "" + +#: cps/admin.py:1080 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "" -#: cps/admin.py:1104 +#: cps/admin.py:1125 msgid "Logfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1110 +#: cps/admin.py:1131 msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1140 +#: cps/admin.py:1161 msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgstr "" -#: cps/admin.py:1146 +#: cps/admin.py:1167 msgid "Please Enter a LDAP Service Account and Password" msgstr "" -#: cps/admin.py:1149 +#: cps/admin.py:1170 msgid "Please Enter a LDAP Service Account" msgstr "" -#: cps/admin.py:1154 +#: cps/admin.py:1175 #, python-format msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1156 +#: cps/admin.py:1177 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1160 +#: cps/admin.py:1181 #, python-format msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1162 +#: cps/admin.py:1183 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1169 +#: cps/admin.py:1190 #, python-format msgid "LDAP Member User Filter needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1171 +#: cps/admin.py:1192 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1178 +#: cps/admin.py:1199 msgid "LDAP CACertificate, Certificate or Key Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1223 cps/admin.py:1339 cps/admin.py:1437 cps/admin.py:1554 -#: cps/admin.py:1623 cps/editbooks.py:678 cps/editbooks.py:882 -#: cps/editbooks.py:1130 cps/shelf.py:100 cps/shelf.py:160 cps/shelf.py:203 -#: cps/shelf.py:278 cps/shelf.py:343 cps/shelf.py:380 cps/shelf.py:456 -#: cps/web.py:1742 +#: cps/admin.py:1230 cps/admin.py:1852 +msgid "Add new user" +msgstr "បន្ថែមអ្នកប្រើប្រាស់ថ្មី" + +#: cps/admin.py:1239 cps/templates/admin.html:100 +msgid "Edit E-mail Server Settings" +msgstr "ប្តូរការកំណត់ SMTP" + +#: cps/admin.py:1258 +msgid "Gmail Account Verification Successful" +msgstr "" + +#: cps/admin.py:1277 cps/admin.py:1658 cps/admin.py:1775 cps/admin.py:1873 +#: cps/admin.py:1990 cps/editbooks.py:227 cps/editbooks.py:301 +#: cps/editbooks.py:1196 cps/shelf.py:82 cps/shelf.py:142 cps/shelf.py:185 +#: cps/shelf.py:235 cps/shelf.py:272 cps/shelf.py:343 cps/shelf.py:457 +#: cps/tasks/convert.py:136 cps/web.py:1413 #, python-format msgid "Database error: %(error)s." msgstr "" -#: cps/admin.py:1235 -msgid "DB Location is not Valid, Please Enter Correct Path" -msgstr "" - -#: cps/admin.py:1253 -msgid "DB is not Writeable" -msgstr "" - -#: cps/admin.py:1266 -msgid "Keyfile Location is not Valid, Please Enter Correct Path" -msgstr "" - -#: cps/admin.py:1270 -msgid "Certfile Location is not Valid, Please Enter Correct Path" -msgstr "" - -#: cps/admin.py:1378 -#, fuzzy -msgid "Database Settings updated" -msgstr "ទំនាក់ទំនងទៅមូលដ្ឋានទិន្នន័យត្រូវបានផ្តាច់" - -#: cps/admin.py:1386 -#, fuzzy -msgid "Database Configuration" -msgstr "ការកំណត់មុខងារ" - -#: cps/admin.py:1402 cps/web.py:1557 -msgid "Please fill out all fields!" -msgstr "សូមបំពេញចន្លោះទាំងអស់!" - -#: cps/admin.py:1410 -msgid "E-mail is not from valid domain" -msgstr "" - -#: cps/admin.py:1416 cps/admin.py:1576 -msgid "Add new user" -msgstr "បន្ថែមអ្នកប្រើប្រាស់ថ្មី" - -#: cps/admin.py:1427 -#, python-format -msgid "User '%(user)s' created" -msgstr "បានបង្កើតអ្នកប្រើប្រាស់ ‘%(user)s’" - -#: cps/admin.py:1433 -msgid "Found an existing account for this e-mail address or name." -msgstr "" - -#: cps/admin.py:1463 -#, python-format -msgid "User '%(nick)s' deleted" -msgstr "អ្នកប្រើប្រាស់ ‘%(nick)s’ ត្រូវបានលុប" - -#: cps/admin.py:1465 cps/admin.py:1466 -msgid "Can't delete Guest User" -msgstr "" - -#: cps/admin.py:1469 -msgid "No admin user remaining, can't delete user" -msgstr "" - -#: cps/admin.py:1542 cps/admin.py:1667 -#, python-format -msgid "Edit User %(nick)s" -msgstr "កែប្រែអ្នកប្រើប្រាស់ %(nick)s" - -#: cps/admin.py:1546 -#, python-format -msgid "User '%(nick)s' updated" -msgstr "អ្នកប្រើប្រាស់ ‘%(nick)s’ ត្រូវបានកែប្រែ" - -#: cps/admin.py:1550 cps/admin.py:1682 cps/web.py:1582 cps/web.py:1642 -msgid "An unknown error occurred. Please try again later." -msgstr "" - -#: cps/admin.py:1585 cps/templates/admin.html:100 -msgid "Edit E-mail Server Settings" -msgstr "ប្តូរការកំណត់ SMTP" - -#: cps/admin.py:1604 -msgid "Gmail Account Verification Successful" -msgstr "" - -#: cps/admin.py:1630 +#: cps/admin.py:1284 #, python-format msgid "Test e-mail queued for sending to %(email)s, please check Tasks for result" msgstr "" -#: cps/admin.py:1633 +#: cps/admin.py:1287 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "" -#: cps/admin.py:1635 +#: cps/admin.py:1289 msgid "Please configure your e-mail address first..." msgstr "" -#: cps/admin.py:1637 +#: cps/admin.py:1291 msgid "E-mail server settings updated" msgstr "" -#: cps/admin.py:1679 +#: cps/admin.py:1314 cps/templates/admin.html:191 +msgid "Edit Scheduled Tasks Settings" +msgstr "" + +#: cps/admin.py:1326 +msgid "Invalid start time for task specified" +msgstr "" + +#: cps/admin.py:1331 +msgid "Invalid duration for task specified" +msgstr "" + +#: cps/admin.py:1340 +msgid "Scheduled tasks settings updated" +msgstr "" + +#: cps/admin.py:1350 cps/admin.py:1399 cps/admin.py:1986 cps/web.py:1254 +#: cps/web.py:1315 +msgid "An unknown error occurred. Please try again later." +msgstr "" + +#: cps/admin.py:1354 +msgid "Settings DB is not Writeable" +msgstr "" + +#: cps/admin.py:1384 cps/admin.py:1978 +#, python-format +msgid "Edit User %(nick)s" +msgstr "កែប្រែអ្នកប្រើប្រាស់ %(nick)s" + +#: cps/admin.py:1396 #, python-format msgid "Password for user %(user)s reset" msgstr "" -#: cps/admin.py:1685 cps/web.py:1522 +#: cps/admin.py:1402 cps/web.py:1194 msgid "Please configure the SMTP mail settings first..." msgstr "សូមកំណត់អ៊ីមែល SMTP ជាមុនសិន" -#: cps/admin.py:1696 +#: cps/admin.py:1413 msgid "Logfile viewer" msgstr "" -#: cps/admin.py:1762 +#: cps/admin.py:1479 msgid "Requesting update package" msgstr "កំពុងស្នើសុំឯកសារបច្ចុប្បន្នភាព" -#: cps/admin.py:1763 +#: cps/admin.py:1480 msgid "Downloading update package" msgstr "កំពុងទាញយកឯកសារបច្ចុប្បន្នភាព" -#: cps/admin.py:1764 +#: cps/admin.py:1481 msgid "Unzipping update package" msgstr "កំពុងពន្លាឯកសារបច្ចុប្បន្នភាព" -#: cps/admin.py:1765 +#: cps/admin.py:1482 msgid "Replacing files" msgstr "" -#: cps/admin.py:1766 +#: cps/admin.py:1483 msgid "Database connections are closed" msgstr "ទំនាក់ទំនងទៅមូលដ្ឋានទិន្នន័យត្រូវបានផ្តាច់" -#: cps/admin.py:1767 +#: cps/admin.py:1484 msgid "Stopping server" msgstr "" -#: cps/admin.py:1768 +#: cps/admin.py:1485 msgid "Update finished, please press okay and reload page" msgstr "ការធ្វើបច្ចុប្បន្នភាពបានបញ្ចប់ សូមចុច okay រួចបើកទំព័រជាថ្មី" -#: cps/admin.py:1769 cps/admin.py:1770 cps/admin.py:1771 cps/admin.py:1772 -#: cps/admin.py:1773 cps/admin.py:1774 +#: cps/admin.py:1486 cps/admin.py:1487 cps/admin.py:1488 cps/admin.py:1489 +#: cps/admin.py:1490 cps/admin.py:1491 msgid "Update failed:" msgstr "" -#: cps/admin.py:1769 cps/updater.py:384 cps/updater.py:619 cps/updater.py:621 +#: cps/admin.py:1486 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 msgid "HTTP Error" msgstr "" -#: cps/admin.py:1770 cps/updater.py:386 cps/updater.py:623 +#: cps/admin.py:1487 cps/updater.py:391 cps/updater.py:628 msgid "Connection error" msgstr "" -#: cps/admin.py:1771 cps/updater.py:388 cps/updater.py:625 +#: cps/admin.py:1488 cps/updater.py:393 cps/updater.py:630 msgid "Timeout while establishing connection" msgstr "" -#: cps/admin.py:1772 cps/updater.py:390 cps/updater.py:627 +#: cps/admin.py:1489 cps/updater.py:395 cps/updater.py:632 msgid "General error" msgstr "" -#: cps/admin.py:1773 +#: cps/admin.py:1490 msgid "Update file could not be saved in temp dir" msgstr "" -#: cps/admin.py:1774 +#: cps/admin.py:1491 msgid "Files could not be replaced during update" msgstr "" -#: cps/admin.py:1798 +#: cps/admin.py:1515 msgid "Failed to extract at least One LDAP User" msgstr "" -#: cps/admin.py:1843 +#: cps/admin.py:1560 msgid "Failed to Create at Least One LDAP User" msgstr "" -#: cps/admin.py:1856 +#: cps/admin.py:1573 #, python-format msgid "Error: %(ldaperror)s" msgstr "" -#: cps/admin.py:1860 +#: cps/admin.py:1577 msgid "Error: No user returned in response of LDAP server" msgstr "" -#: cps/admin.py:1893 +#: cps/admin.py:1610 msgid "At Least One LDAP User Not Found in Database" msgstr "" -#: cps/admin.py:1895 +#: cps/admin.py:1612 msgid "{} User Successfully Imported" msgstr "" -#: cps/converter.py:30 +#: cps/admin.py:1670 +msgid "DB Location is not Valid, Please Enter Correct Path" +msgstr "" + +#: cps/admin.py:1689 +msgid "DB is not Writeable" +msgstr "" + +#: cps/admin.py:1702 +msgid "Keyfile Location is not Valid, Please Enter Correct Path" +msgstr "" + +#: cps/admin.py:1706 +msgid "Certfile Location is not Valid, Please Enter Correct Path" +msgstr "" + +#: cps/admin.py:1814 +#, fuzzy +msgid "Database Settings updated" +msgstr "ទំនាក់ទំនងទៅមូលដ្ឋានទិន្នន័យត្រូវបានផ្តាច់" + +#: cps/admin.py:1822 +#, fuzzy +msgid "Database Configuration" +msgstr "ការកំណត់មុខងារ" + +#: cps/admin.py:1838 cps/web.py:1229 +msgid "Please fill out all fields!" +msgstr "សូមបំពេញចន្លោះទាំងអស់!" + +#: cps/admin.py:1846 +msgid "E-mail is not from valid domain" +msgstr "" + +#: cps/admin.py:1863 +#, python-format +msgid "User '%(user)s' created" +msgstr "បានបង្កើតអ្នកប្រើប្រាស់ ‘%(user)s’" + +#: cps/admin.py:1869 +msgid "Found an existing account for this e-mail address or name." +msgstr "" + +#: cps/admin.py:1899 +#, python-format +msgid "User '%(nick)s' deleted" +msgstr "អ្នកប្រើប្រាស់ ‘%(nick)s’ ត្រូវបានលុប" + +#: cps/admin.py:1901 cps/admin.py:1902 +msgid "Can't delete Guest User" +msgstr "" + +#: cps/admin.py:1905 +msgid "No admin user remaining, can't delete user" +msgstr "" + +#: cps/admin.py:1982 +#, python-format +msgid "User '%(nick)s' updated" +msgstr "អ្នកប្រើប្រាស់ ‘%(nick)s’ ត្រូវបានកែប្រែ" + +#: cps/converter.py:31 msgid "not installed" msgstr "មិនបានតម្លើង" -#: cps/converter.py:31 +#: cps/converter.py:32 msgid "Execution permissions missing" msgstr "" -#: cps/db.py:674 cps/web.py:710 cps/web.py:1222 +#: cps/db.py:681 cps/search.py:134 cps/web.py:720 #, python-format msgid "Custom Column No.%(column)d is not existing in calibre database" msgstr "" -#: cps/db.py:917 cps/templates/config_edit.html:204 +#: cps/db.py:924 cps/templates/config_edit.html:204 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 -#: cps/web.py:551 cps/web.py:585 cps/web.py:646 cps/web.py:671 cps/web.py:1003 -#: cps/web.py:1032 cps/web.py:1066 cps/web.py:1093 cps/web.py:1132 +#: cps/web.py:549 cps/web.py:583 cps/web.py:656 cps/web.py:681 cps/web.py:962 +#: cps/web.py:992 cps/web.py:1027 cps/web.py:1055 cps/web.py:1094 msgid "None" msgstr "គ្មាន" -#: cps/editbooks.py:295 cps/editbooks.py:297 -msgid "Book Format Successfully Deleted" -msgstr "" - -#: cps/editbooks.py:304 cps/editbooks.py:306 -msgid "Book Successfully Deleted" -msgstr "" - -#: cps/editbooks.py:358 -msgid "You are missing permissions to delete books" -msgstr "" - -#: cps/editbooks.py:373 cps/editbooks.py:765 cps/web.py:518 cps/web.py:1783 -#: cps/web.py:1825 cps/web.py:1870 +#: cps/editbooks.py:109 cps/editbooks.py:890 cps/web.py:516 cps/web.py:1454 +#: cps/web.py:1496 cps/web.py:1541 msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible" msgstr "" -#: cps/editbooks.py:408 -msgid "edit metadata" -msgstr "កែប្រែទិន្នន័យមេតា" - -#: cps/editbooks.py:457 -#, python-format -msgid "%(seriesindex)s is not a valid number, skipping" -msgstr "" - -#: cps/editbooks.py:493 cps/editbooks.py:1001 -#, python-format -msgid "'%(langname)s' is not a valid language" -msgstr "" - -#: cps/editbooks.py:634 -msgid "User has no rights to upload additional file formats" -msgstr "" - -#: cps/editbooks.py:639 cps/editbooks.py:1029 -#, python-format -msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" -msgstr "ឯកសារប្រភេទ '%(ext)s' មិនត្រូវបានអនុញ្ញាតឲអាប់ឡូដទៅម៉ាស៊ីន server នេះទេ" - -#: cps/editbooks.py:643 cps/editbooks.py:1033 -msgid "File to be uploaded must have an extension" -msgstr "ឯកសារដែលត្រូវអាប់ឡូដត្រូវមានកន្ទុយឯកសារ" - -#: cps/editbooks.py:655 -#, python-format -msgid "Failed to create path %(path)s (Permission denied)." -msgstr "មិនអាចបង្កើតទីតាំង %(path)s (ពុំមានសិទ្ធិ)។" - -#: cps/editbooks.py:660 -#, python-format -msgid "Failed to store file %(file)s." -msgstr "មិនអាចរក្សាទុកឯកសារ %(file)s ។" - -#: cps/editbooks.py:683 -#, python-format -msgid "File format %(ext)s added to %(book)s" -msgstr "ឯកសារទម្រង់ %(ext)s ត្រូវបានបន្ថែមទៅ %(book)s" - -#: cps/editbooks.py:697 cps/editbooks.py:809 +#: cps/editbooks.py:153 cps/editbooks.py:1216 msgid "User has no rights to upload cover" msgstr "" -#: cps/editbooks.py:828 +#: cps/editbooks.py:173 cps/editbooks.py:711 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "" -#: cps/editbooks.py:869 +#: cps/editbooks.py:214 msgid "Metadata successfully updated" msgstr "" -#: cps/editbooks.py:887 +#: cps/editbooks.py:232 msgid "Error editing book: {}" msgstr "" -#: cps/editbooks.py:951 -msgid "Uploaded book probably exists in the library, consider to change before upload new: " -msgstr "" - -#: cps/editbooks.py:1041 -#, python-format -msgid "File %(filename)s could not saved to temp dir" -msgstr "" - -#: cps/editbooks.py:1061 -#, python-format -msgid "Failed to Move Cover File %(file)s: %(error)s" -msgstr "" - -#: cps/editbooks.py:1117 +#: cps/editbooks.py:287 #, python-format msgid "File %(file)s uploaded" msgstr "" -#: cps/editbooks.py:1143 +#: cps/editbooks.py:314 msgid "Source or destination format for conversion missing" msgstr "" -#: cps/editbooks.py:1151 +#: cps/editbooks.py:322 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "" -#: cps/editbooks.py:1155 +#: cps/editbooks.py:326 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "" +#: cps/editbooks.py:630 +msgid "Uploaded book probably exists in the library, consider to change before upload new: " +msgstr "" + +#: cps/editbooks.py:685 cps/editbooks.py:1010 +#, python-format +msgid "'%(langname)s' is not a valid language" +msgstr "" + +#: cps/editbooks.py:723 cps/editbooks.py:1157 +#, python-format +msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" +msgstr "ឯកសារប្រភេទ '%(ext)s' មិនត្រូវបានអនុញ្ញាតឲអាប់ឡូដទៅម៉ាស៊ីន server នេះទេ" + +#: cps/editbooks.py:727 cps/editbooks.py:1161 +msgid "File to be uploaded must have an extension" +msgstr "ឯកសារដែលត្រូវអាប់ឡូដត្រូវមានកន្ទុយឯកសារ" + +#: cps/editbooks.py:735 +#, python-format +msgid "File %(filename)s could not saved to temp dir" +msgstr "" + +#: cps/editbooks.py:755 +#, python-format +msgid "Failed to Move Cover File %(file)s: %(error)s" +msgstr "" + +#: cps/editbooks.py:812 cps/editbooks.py:814 +msgid "Book Format Successfully Deleted" +msgstr "" + +#: cps/editbooks.py:821 cps/editbooks.py:823 +msgid "Book Successfully Deleted" +msgstr "" + +#: cps/editbooks.py:875 +msgid "You are missing permissions to delete books" +msgstr "" + +#: cps/editbooks.py:925 +msgid "edit metadata" +msgstr "កែប្រែទិន្នន័យមេតា" + +#: cps/editbooks.py:974 +#, python-format +msgid "%(seriesindex)s is not a valid number, skipping" +msgstr "" + +#: cps/editbooks.py:1152 +msgid "User has no rights to upload additional file formats" +msgstr "" + +#: cps/editbooks.py:1173 +#, python-format +msgid "Failed to create path %(path)s (Permission denied)." +msgstr "មិនអាចបង្កើតទីតាំង %(path)s (ពុំមានសិទ្ធិ)។" + +#: cps/editbooks.py:1178 +#, python-format +msgid "Failed to store file %(file)s." +msgstr "មិនអាចរក្សាទុកឯកសារ %(file)s ។" + +#: cps/editbooks.py:1201 +#, python-format +msgid "File format %(ext)s added to %(book)s" +msgstr "ឯកសារទម្រង់ %(ext)s ត្រូវបានបន្ថែមទៅ %(book)s" + #: cps/gdrive.py:58 msgid "Google Drive setup not completed, try to deactivate and activate Google Drive again" msgstr "" @@ -611,27 +636,27 @@ 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:81 +#: cps/helper.py:80 #, python-format msgid "%(format)s format not found for book id: %(book)d" msgstr "" -#: cps/helper.py:87 cps/tasks/convert.py:75 +#: cps/helper.py:86 cps/tasks/convert.py:75 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "" -#: cps/helper.py:92 +#: cps/helper.py:91 #, python-format msgid "%(format)s not found: %(fn)s" msgstr "" -#: cps/helper.py:97 cps/helper.py:221 cps/templates/detail.html:41 -#: cps/templates/detail.html:45 +#: cps/helper.py:96 cps/helper.py:221 cps/templates/detail.html:42 +#: cps/templates/detail.html:46 msgid "Send to Kindle" msgstr "ផ្ញើទៅ Kindle" -#: cps/helper.py:98 cps/helper.py:115 cps/helper.py:223 +#: cps/helper.py:97 cps/helper.py:115 cps/helper.py:223 msgid "This e-mail has been sent via Calibre-Web." msgstr "" @@ -671,130 +696,110 @@ msgstr "ផ្ញើទៅ Kindle" msgid "The requested file could not be read. Maybe wrong permissions?" msgstr "ឯកសារដែលបានស្នើសុំមិនអាចបើកបានទេ។ អាចនឹងខុសសិទ្ធិប្រើប្រាស់ទេដឹង?" -#: cps/helper.py:353 +#: cps/helper.py:341 msgid "Read status could not set: {}" msgstr "" -#: cps/helper.py:376 +#: cps/helper.py:364 #, python-format msgid "Deleting bookfolder for book %(id)s failed, path has subfolders: %(path)s" msgstr "" -#: cps/helper.py:382 +#: cps/helper.py:370 #, python-format msgid "Deleting book %(id)s failed: %(message)s" msgstr "" -#: cps/helper.py:393 +#: cps/helper.py:381 #, python-format msgid "Deleting book %(id)s from database only, book path in database not valid: %(path)s" msgstr "" -#: cps/helper.py:458 +#: cps/helper.py:446 #, 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:529 cps/helper.py:538 +#: cps/helper.py:518 cps/helper.py:527 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "ឯកសារ %(file)s រកមិនឃើញក្នុង Google Drive" -#: cps/helper.py:572 +#: cps/helper.py:561 #, 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:592 +#: cps/helper.py:581 msgid "Error in rename file in path: {}" msgstr "" -#: cps/helper.py:610 +#: cps/helper.py:599 #, python-format msgid "Book path %(path)s not found on Google Drive" msgstr "ទីតាំងសៀវភៅ %(path)s រកមិនឃើញក្នុង Google Drive" -#: cps/helper.py:651 cps/web.py:1737 +#: cps/helper.py:640 cps/web.py:1408 msgid "Found an existing account for this e-mail address" msgstr "" -#: cps/helper.py:659 +#: cps/helper.py:648 msgid "This username is already taken" msgstr "" -#: cps/helper.py:669 +#: cps/helper.py:658 msgid "Invalid e-mail address format" msgstr "" -#: cps/helper.py:754 -msgid "Python modul 'advocate' is not installed but is needed for cover downloads" +#: cps/helper.py:808 +msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "" -#: cps/helper.py:767 +#: cps/helper.py:818 msgid "Error Downloading Cover" msgstr "" -#: cps/helper.py:770 +#: cps/helper.py:821 msgid "Cover Format Error" msgstr "" -#: cps/helper.py:773 +#: cps/helper.py:824 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "" -#: cps/helper.py:783 +#: cps/helper.py:834 msgid "Failed to create path for cover" msgstr "" -#: cps/helper.py:799 +#: cps/helper.py:850 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "" -#: cps/helper.py:810 +#: cps/helper.py:861 msgid "Only jpg/jpeg/png/webp/bmp files are supported as coverfile" msgstr "" -#: cps/helper.py:822 +#: cps/helper.py:873 msgid "Invalid cover file content" msgstr "" -#: cps/helper.py:826 +#: cps/helper.py:877 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "" -#: cps/helper.py:878 +#: cps/helper.py:929 msgid "Unrar binary file not found" msgstr "" -#: cps/helper.py:889 +#: cps/helper.py:940 msgid "Error excecuting UnRar" msgstr "" -#: cps/helper.py:937 -msgid "Waiting" -msgstr "កំពុងរង់ចាំ" - -#: cps/helper.py:939 -msgid "Failed" -msgstr "បានបរាជ័យ" - -#: cps/helper.py:941 -msgid "Started" -msgstr "បានចាប់ផ្តើម" - -#: cps/helper.py:943 -msgid "Finished" -msgstr "បានបញ្ចប់" - -#: cps/helper.py:945 -msgid "Unknown Status" -msgstr "" - -#: cps/kobo_auth.py:128 +#: cps/kobo_auth.py:89 msgid "Please access Calibre-Web from non localhost to get valid api_endpoint for kobo device" msgstr "" -#: cps/kobo_auth.py:154 +#: cps/kobo_auth.py:115 msgid "Kobo Setup" msgstr "" @@ -803,7 +808,7 @@ msgstr "" msgid "Register with %(provider)s" msgstr "" -#: cps/oauth_bb.py:138 cps/remotelogin.py:130 cps/web.py:1613 +#: cps/oauth_bb.py:138 cps/remotelogin.py:130 cps/web.py:1286 #, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "ឥឡូវអ្នកបានចូលដោយមានឈ្មោះថា៖ ‘%(nickname)s’" @@ -864,12 +869,12 @@ msgstr "" msgid "Google Oauth error: {}" msgstr "" -#: cps/opds.py:298 +#: cps/opds.py:287 msgid "{} Stars" msgstr "" -#: cps/remotelogin.py:62 cps/templates/layout.html:84 -#: cps/templates/login.html:4 cps/templates/login.html:21 cps/web.py:1662 +#: cps/remotelogin.py:62 cps/templates/layout.html:85 +#: cps/templates/login.html:4 cps/templates/login.html:21 cps/web.py:1335 msgid "Login" msgstr "ចូលប្រើប្រាស់" @@ -885,455 +890,488 @@ msgstr "វត្ថុតាងហួសពេលកំណត់" msgid "Success! Please return to your device" msgstr "ជោគជ័យ! សូមវិលមកឧបករណ៍អ្នកវិញ" -#: cps/render_template.py:41 cps/web.py:407 +#: cps/render_template.py:40 cps/web.py:405 msgid "Books" msgstr "" -#: cps/render_template.py:43 +#: cps/render_template.py:42 msgid "Show recent books" msgstr "បង្ហាញសៀវភៅមកថ្មី" -#: cps/render_template.py:44 cps/templates/index.xml:25 +#: cps/render_template.py:43 cps/templates/index.xml:25 msgid "Hot Books" msgstr "សៀវភៅដែលមានប្រជាប្រិយភាព" -#: cps/render_template.py:46 +#: cps/render_template.py:45 msgid "Show Hot Books" msgstr "បង្ហាញសៀវភៅដែលមានប្រជាប្រិយភាព" -#: cps/render_template.py:48 cps/render_template.py:53 +#: cps/render_template.py:47 cps/render_template.py:52 msgid "Downloaded Books" msgstr "" -#: cps/render_template.py:50 cps/render_template.py:55 +#: cps/render_template.py:49 cps/render_template.py:54 #: cps/templates/user_table.html:167 msgid "Show Downloaded Books" msgstr "" -#: cps/render_template.py:58 cps/templates/index.xml:32 cps/web.py:422 +#: cps/render_template.py:57 cps/templates/index.xml:32 cps/web.py:420 msgid "Top Rated Books" msgstr "សៀវភៅដែលមានការវាយតម្លៃល្អជាងគេ" -#: cps/render_template.py:60 cps/templates/user_table.html:161 +#: cps/render_template.py:59 cps/templates/user_table.html:161 msgid "Show Top Rated Books" msgstr "បង្ហាញសៀវភៅដែលមានការវាយតម្លៃល្អជាងគេ" -#: cps/render_template.py:61 cps/templates/index.xml:54 -#: cps/templates/index.xml:58 cps/web.py:729 +#: cps/render_template.py:60 cps/templates/index.xml:54 +#: cps/templates/index.xml:58 cps/web.py:739 msgid "Read Books" msgstr "សៀវភៅដែលបានអានរួច" -#: cps/render_template.py:63 +#: cps/render_template.py:62 msgid "Show read and unread" msgstr "បង្ហាញអានរួច និងមិនទាន់អាន" -#: cps/render_template.py:65 cps/templates/index.xml:61 -#: cps/templates/index.xml:65 cps/web.py:732 +#: cps/render_template.py:64 cps/templates/index.xml:61 +#: cps/templates/index.xml:65 cps/web.py:742 msgid "Unread Books" msgstr "សៀវភៅដែលមិនទាន់បានអាន" -#: cps/render_template.py:67 +#: cps/render_template.py:66 msgid "Show unread" msgstr "" -#: cps/render_template.py:68 +#: cps/render_template.py:67 msgid "Discover" msgstr "ស្រាវជ្រាវ" -#: cps/render_template.py:70 cps/templates/index.xml:50 +#: cps/render_template.py:69 cps/templates/index.xml:50 #: cps/templates/user_table.html:162 msgid "Show Random Books" msgstr "បង្ហាញសៀវភៅចៃដន្យ" -#: cps/render_template.py:71 cps/templates/book_table.html:67 -#: cps/templates/index.xml:83 cps/web.py:1135 +#: cps/render_template.py:70 cps/templates/book_table.html:67 +#: cps/templates/index.xml:83 cps/web.py:1098 msgid "Categories" msgstr "ប្រភេទនានា" -#: cps/render_template.py:73 cps/templates/user_table.html:158 +#: cps/render_template.py:72 cps/templates/user_table.html:158 msgid "Show category selection" msgstr "បង្ហាញជម្រើសប្រភេទ" -#: cps/render_template.py:74 cps/templates/book_edit.html:90 +#: cps/render_template.py:73 cps/templates/book_edit.html:91 #: cps/templates/book_table.html:68 cps/templates/index.xml:90 -#: cps/templates/search_form.html:69 cps/web.py:1034 cps/web.py:1041 +#: cps/templates/search_form.html:69 cps/web.py:995 cps/web.py:1002 msgid "Series" msgstr "ស៊េរី" -#: cps/render_template.py:76 cps/templates/user_table.html:157 +#: cps/render_template.py:75 cps/templates/user_table.html:157 msgid "Show series selection" msgstr "បង្ហាញជម្រើសស៊េរី" -#: cps/render_template.py:77 cps/templates/book_table.html:66 +#: cps/render_template.py:76 cps/templates/book_table.html:66 #: cps/templates/index.xml:69 msgid "Authors" msgstr "អ្នកនិពន្ធ" -#: cps/render_template.py:79 cps/templates/user_table.html:160 +#: cps/render_template.py:78 cps/templates/user_table.html:160 msgid "Show author selection" msgstr "បង្ហាញជម្រើសអ្នកនិពន្ធ" -#: cps/render_template.py:81 cps/templates/book_table.html:72 -#: cps/templates/index.xml:76 cps/web.py:1006 +#: cps/render_template.py:80 cps/templates/book_table.html:72 +#: cps/templates/index.xml:76 cps/web.py:966 msgid "Publishers" msgstr "" -#: cps/render_template.py:83 cps/templates/user_table.html:163 +#: cps/render_template.py:82 cps/templates/user_table.html:163 msgid "Show publisher selection" msgstr "" -#: cps/render_template.py:84 cps/templates/book_table.html:70 +#: cps/render_template.py:83 cps/templates/book_table.html:70 #: cps/templates/index.xml:97 cps/templates/search_form.html:107 -#: cps/web.py:1108 +#: cps/web.py:1070 msgid "Languages" msgstr "ភាសានានា" -#: cps/render_template.py:87 cps/templates/user_table.html:155 +#: cps/render_template.py:86 cps/templates/user_table.html:155 msgid "Show language selection" msgstr "បង្ហាញផ្នែកភាសា" -#: cps/render_template.py:88 cps/templates/index.xml:104 +#: cps/render_template.py:87 cps/templates/index.xml:104 msgid "Ratings" msgstr "" -#: cps/render_template.py:90 cps/templates/user_table.html:164 +#: cps/render_template.py:89 cps/templates/user_table.html:164 msgid "Show ratings selection" msgstr "" -#: cps/render_template.py:91 cps/templates/index.xml:112 +#: cps/render_template.py:90 cps/templates/index.xml:112 msgid "File formats" msgstr "" -#: cps/render_template.py:93 cps/templates/user_table.html:165 +#: cps/render_template.py:92 cps/templates/user_table.html:165 msgid "Show file formats selection" msgstr "" -#: cps/render_template.py:95 cps/web.py:755 +#: cps/render_template.py:94 cps/web.py:765 msgid "Archived Books" msgstr "" -#: cps/render_template.py:97 cps/templates/user_table.html:166 +#: cps/render_template.py:96 cps/templates/user_table.html:166 msgid "Show archived books" msgstr "" -#: cps/render_template.py:100 cps/web.py:837 +#: cps/render_template.py:99 cps/web.py:796 msgid "Books List" msgstr "" -#: cps/render_template.py:102 cps/templates/user_table.html:168 +#: cps/render_template.py:101 cps/templates/user_table.html:168 msgid "Show Books List" msgstr "" -#: cps/shelf.py:67 cps/shelf.py:121 -msgid "Invalid shelf specified" -msgstr "" - -#: cps/shelf.py:73 -#, fuzzy -msgid "Sorry you are not allowed to add a book to that shelf" -msgstr "សូមអភ័យទោស អ្នកមិនមានសិទ្ធិដកសៀវភៅចេញពីធ្នើនេះទេ៖ %(sname)s" - -#: cps/shelf.py:82 -#, python-format -msgid "Book is already part of the shelf: %(shelfname)s" -msgstr "" - -#: cps/shelf.py:107 -#, python-format -msgid "Book has been added to shelf: %(sname)s" -msgstr "សៀវភៅត្រូវបានបន្ថែមទៅធ្នើ៖ %(sname)s" - -#: cps/shelf.py:126 -msgid "You are not allowed to add a book to the shelf" -msgstr "" - -#: cps/shelf.py:144 -#, python-format -msgid "Books are already part of the shelf: %(name)s" -msgstr "" - -#: cps/shelf.py:156 -#, python-format -msgid "Books have been added to shelf: %(sname)s" -msgstr "" - -#: cps/shelf.py:163 -#, python-format -msgid "Could not add books to shelf: %(sname)s" -msgstr "" - -#: cps/shelf.py:209 -#, python-format -msgid "Book has been removed from shelf: %(sname)s" -msgstr "សៀវភៅត្រូវបានដកចេញពីធ្នើ៖ %(sname)s" - -#: cps/shelf.py:218 -msgid "Sorry you are not allowed to remove a book from this shelf" -msgstr "" - -#: cps/shelf.py:228 cps/templates/layout.html:140 -msgid "Create a Shelf" -msgstr "បង្កើតធ្នើ" - -#: cps/shelf.py:236 -#, fuzzy -msgid "Sorry you are not allowed to edit this shelf" -msgstr "សូមអភ័យទោស អ្នកមិនមានសិទ្ធិដកសៀវភៅចេញពីធ្នើនេះទេ៖ %(sname)s" - -#: cps/shelf.py:238 -msgid "Edit a shelf" -msgstr "កែប្រែធ្នើ" - -#: cps/shelf.py:248 -msgid "Sorry you are not allowed to create a public shelf" -msgstr "" - -#: cps/shelf.py:265 -#, python-format -msgid "Shelf %(title)s created" -msgstr "ធ្នើឈ្មោះ %(title)s ត្រូវបានបង្កើត" - -#: cps/shelf.py:268 -#, python-format -msgid "Shelf %(title)s changed" -msgstr "ធ្នើឈ្មោះ %(title)s ត្រូវបានប្តូរ" - -#: cps/shelf.py:282 -msgid "There was an error" -msgstr "មានបញ្ហា" - -#: cps/shelf.py:304 -#, python-format -msgid "A public shelf with the name '%(title)s' already exists." -msgstr "" - -#: cps/shelf.py:315 -#, python-format -msgid "A private shelf with the name '%(title)s' already exists." -msgstr "" - -#: cps/shelf.py:337 -msgid "Error deleting Shelf" -msgstr "" - -#: cps/shelf.py:339 -msgid "Shelf successfully deleted" -msgstr "" - -#: cps/shelf.py:389 -#, python-format -msgid "Change order of Shelf: '%(name)s'" -msgstr "ប្តូរលំដាប់ធ្នើ៖ ‘%(name)s’" - -#: cps/shelf.py:461 -#, python-format -msgid "Shelf: '%(name)s'" -msgstr "ធ្នើ៖ ‘%(name)s’" - -#: cps/shelf.py:465 -msgid "Error opening shelf. Shelf does not exist or is not accessible" -msgstr "មានបញ្ហាពេលបើកធ្នើ។ ពុំមានធ្នើ ឬមិនអាចបើកបាន" - -#: cps/updater.py:426 cps/updater.py:437 cps/updater.py:538 cps/updater.py:553 -msgid "Unexpected data while reading update information" -msgstr "" - -#: cps/updater.py:433 cps/updater.py:545 -msgid "No update available. You already have the latest version installed" -msgstr "" - -#: cps/updater.py:451 -msgid "A new update is available. Click on the button below to update to the latest version." -msgstr "" - -#: cps/updater.py:469 -msgid "Could not fetch update information" -msgstr "" - -#: cps/updater.py:479 -msgid "Click on the button below to update to the latest stable version." -msgstr "" - -#: cps/updater.py:488 cps/updater.py:502 cps/updater.py:513 -#, python-format -msgid "A new update is available. Click on the button below to update to version: %(version)s" -msgstr "" - -#: cps/updater.py:531 -msgid "No release information available" -msgstr "" - -#: cps/templates/index.html:5 cps/web.py:434 -msgid "Discover (Random Books)" -msgstr "ស្រាវជ្រាវ (សៀវភៅចៃដន្យ)" - -#: cps/web.py:470 -msgid "Hot Books (Most Downloaded)" -msgstr "សៀវភៅដែលត្រូវបានទាញយកច្រើនជាងគេ" - -#: cps/web.py:501 -#, python-format -msgid "Downloaded books by %(user)s" -msgstr "" - -#: cps/web.py:534 -#, python-format -msgid "Author: %(name)s" -msgstr "" - -#: cps/web.py:570 -#, python-format -msgid "Publisher: %(name)s" -msgstr "" - -#: cps/web.py:598 -#, python-format -msgid "Series: %(serie)s" -msgstr "ស៊េរី៖ %(serie)s" - -#: cps/web.py:610 -#, python-format -msgid "Rating: %(rating)s stars" -msgstr "" - -#: cps/web.py:626 -#, python-format -msgid "File format: %(format)s" -msgstr "" - -#: cps/web.py:663 -#, python-format -msgid "Category: %(name)s" -msgstr "ប្រភេទ៖ %(name)s" - -#: cps/web.py:690 -#, python-format -msgid "Language: %(name)s" -msgstr "ភាសា៖ %(name)s" - -#: cps/templates/layout.html:56 cps/web.py:789 cps/web.py:1444 -msgid "Advanced Search" -msgstr "ស្វែងរកកម្រិតខ្ពស់" - -#: cps/templates/book_edit.html:235 cps/templates/feed.xml:33 -#: cps/templates/index.xml:11 cps/templates/layout.html:45 -#: cps/templates/layout.html:48 cps/templates/search_form.html:226 -#: cps/web.py:807 cps/web.py:1164 +#: cps/search.py:48 cps/search.py:414 cps/templates/book_edit.html:236 +#: cps/templates/feed.xml:33 cps/templates/index.xml:11 +#: cps/templates/layout.html:46 cps/templates/layout.html:49 +#: cps/templates/search_form.html:226 msgid "Search" msgstr "ស្វែងរក" -#: cps/templates/admin.html:16 cps/web.py:979 -msgid "Downloads" -msgstr "ឯកសារ DLS" - -#: cps/web.py:1068 -msgid "Ratings list" -msgstr "" - -#: cps/web.py:1095 -msgid "File formats list" -msgstr "" - -#: cps/templates/layout.html:73 cps/templates/tasks.html:7 cps/web.py:1149 -msgid "Tasks" -msgstr "កិច្ចការនានា" - -#: cps/web.py:1286 +#: cps/search.py:194 msgid "Published after " msgstr "បានបោះពុម្ភក្រោយ " -#: cps/web.py:1293 +#: cps/search.py:201 msgid "Published before " msgstr "បានបោះពុម្ភមុន " -#: cps/web.py:1315 +#: cps/search.py:223 #, python-format msgid "Rating <= %(rating)s" msgstr "ការវាយតម្លៃ <= %(rating)s" -#: cps/web.py:1317 +#: cps/search.py:225 #, python-format msgid "Rating >= %(rating)s" msgstr "ការវាយតម្លៃ >= %(rating)s" -#: cps/web.py:1319 +#: cps/search.py:227 #, python-format msgid "Read Status = %(status)s" msgstr "" -#: cps/web.py:1425 +#: cps/search.py:345 msgid "Error on search for custom columns, please restart Calibre-Web" msgstr "" -#: cps/web.py:1527 +#: cps/search.py:364 cps/search.py:396 cps/templates/layout.html:57 +msgid "Advanced Search" +msgstr "ស្វែងរកកម្រិតខ្ពស់" + +#: cps/shelf.py:49 cps/shelf.py:103 +msgid "Invalid shelf specified" +msgstr "" + +#: cps/shelf.py:55 +#, fuzzy +msgid "Sorry you are not allowed to add a book to that shelf" +msgstr "សូមអភ័យទោស អ្នកមិនមានសិទ្ធិដកសៀវភៅចេញពីធ្នើនេះទេ៖ %(sname)s" + +#: cps/shelf.py:64 +#, python-format +msgid "Book is already part of the shelf: %(shelfname)s" +msgstr "" + +#: cps/shelf.py:89 +#, python-format +msgid "Book has been added to shelf: %(sname)s" +msgstr "សៀវភៅត្រូវបានបន្ថែមទៅធ្នើ៖ %(sname)s" + +#: cps/shelf.py:108 +msgid "You are not allowed to add a book to the shelf" +msgstr "" + +#: cps/shelf.py:126 +#, python-format +msgid "Books are already part of the shelf: %(name)s" +msgstr "" + +#: cps/shelf.py:138 +#, python-format +msgid "Books have been added to shelf: %(sname)s" +msgstr "" + +#: cps/shelf.py:145 +#, python-format +msgid "Could not add books to shelf: %(sname)s" +msgstr "" + +#: cps/shelf.py:191 +#, python-format +msgid "Book has been removed from shelf: %(sname)s" +msgstr "សៀវភៅត្រូវបានដកចេញពីធ្នើ៖ %(sname)s" + +#: cps/shelf.py:200 +msgid "Sorry you are not allowed to remove a book from this shelf" +msgstr "" + +#: cps/shelf.py:210 cps/templates/layout.html:141 +msgid "Create a Shelf" +msgstr "បង្កើតធ្នើ" + +#: cps/shelf.py:218 +#, fuzzy +msgid "Sorry you are not allowed to edit this shelf" +msgstr "សូមអភ័យទោស អ្នកមិនមានសិទ្ធិដកសៀវភៅចេញពីធ្នើនេះទេ៖ %(sname)s" + +#: cps/shelf.py:220 +msgid "Edit a shelf" +msgstr "កែប្រែធ្នើ" + +#: cps/shelf.py:229 +msgid "Error deleting Shelf" +msgstr "" + +#: cps/shelf.py:231 +msgid "Shelf successfully deleted" +msgstr "" + +#: cps/shelf.py:281 +#, python-format +msgid "Change order of Shelf: '%(name)s'" +msgstr "ប្តូរលំដាប់ធ្នើ៖ ‘%(name)s’" + +#: cps/shelf.py:313 +msgid "Sorry you are not allowed to create a public shelf" +msgstr "" + +#: cps/shelf.py:330 +#, python-format +msgid "Shelf %(title)s created" +msgstr "ធ្នើឈ្មោះ %(title)s ត្រូវបានបង្កើត" + +#: cps/shelf.py:333 +#, python-format +msgid "Shelf %(title)s changed" +msgstr "ធ្នើឈ្មោះ %(title)s ត្រូវបានប្តូរ" + +#: cps/shelf.py:347 +msgid "There was an error" +msgstr "មានបញ្ហា" + +#: cps/shelf.py:369 +#, python-format +msgid "A public shelf with the name '%(title)s' already exists." +msgstr "" + +#: cps/shelf.py:380 +#, python-format +msgid "A private shelf with the name '%(title)s' already exists." +msgstr "" + +#: cps/shelf.py:462 +#, python-format +msgid "Shelf: '%(name)s'" +msgstr "ធ្នើ៖ ‘%(name)s’" + +#: cps/shelf.py:466 +msgid "Error opening shelf. Shelf does not exist or is not accessible" +msgstr "មានបញ្ហាពេលបើកធ្នើ។ ពុំមានធ្នើ ឬមិនអាចបើកបាន" + +#: cps/tasks_status.py:48 cps/templates/layout.html:74 +#: cps/templates/tasks.html:7 +msgid "Tasks" +msgstr "កិច្ចការនានា" + +#: cps/tasks_status.py:64 +msgid "Waiting" +msgstr "កំពុងរង់ចាំ" + +#: cps/tasks_status.py:66 +msgid "Failed" +msgstr "បានបរាជ័យ" + +#: cps/tasks_status.py:68 +msgid "Started" +msgstr "បានចាប់ផ្តើម" + +#: cps/tasks_status.py:70 +msgid "Finished" +msgstr "បានបញ្ចប់" + +#: cps/tasks_status.py:72 +msgid "Ended" +msgstr "" + +#: cps/tasks_status.py:74 +msgid "Cancelled" +msgstr "" + +#: cps/tasks_status.py:76 +msgid "Unknown Status" +msgstr "" + +#: cps/updater.py:431 cps/updater.py:442 cps/updater.py:543 cps/updater.py:558 +msgid "Unexpected data while reading update information" +msgstr "" + +#: cps/updater.py:438 cps/updater.py:550 +msgid "No update available. You already have the latest version installed" +msgstr "" + +#: cps/updater.py:456 +msgid "A new update is available. Click on the button below to update to the latest version." +msgstr "" + +#: cps/updater.py:474 +msgid "Could not fetch update information" +msgstr "" + +#: cps/updater.py:484 +msgid "Click on the button below to update to the latest stable version." +msgstr "" + +#: cps/updater.py:493 cps/updater.py:507 cps/updater.py:518 +#, python-format +msgid "A new update is available. Click on the button below to update to version: %(version)s" +msgstr "" + +#: cps/updater.py:536 +msgid "No release information available" +msgstr "" + +#: cps/templates/index.html:6 cps/web.py:432 +msgid "Discover (Random Books)" +msgstr "ស្រាវជ្រាវ (សៀវភៅចៃដន្យ)" + +#: cps/web.py:468 +msgid "Hot Books (Most Downloaded)" +msgstr "សៀវភៅដែលត្រូវបានទាញយកច្រើនជាងគេ" + +#: cps/web.py:499 +#, python-format +msgid "Downloaded books by %(user)s" +msgstr "" + +#: cps/web.py:532 +#, python-format +msgid "Author: %(name)s" +msgstr "" + +#: cps/web.py:568 +#, python-format +msgid "Publisher: %(name)s" +msgstr "" + +#: cps/web.py:596 +#, python-format +msgid "Series: %(serie)s" +msgstr "ស៊េរី៖ %(serie)s" + +#: cps/web.py:609 +msgid "Rating: None" +msgstr "" + +#: cps/web.py:618 +#, python-format +msgid "Rating: %(rating)s stars" +msgstr "" + +#: cps/web.py:636 +#, python-format +msgid "File format: %(format)s" +msgstr "" + +#: cps/web.py:673 +#, python-format +msgid "Category: %(name)s" +msgstr "ប្រភេទ៖ %(name)s" + +#: cps/web.py:700 +#, python-format +msgid "Language: %(name)s" +msgstr "ភាសា៖ %(name)s" + +#: cps/templates/admin.html:16 cps/web.py:938 +msgid "Downloads" +msgstr "ឯកសារ DLS" + +#: cps/web.py:1030 +msgid "Ratings list" +msgstr "" + +#: cps/web.py:1057 +msgid "File formats list" +msgstr "" + +#: cps/web.py:1199 #, python-format msgid "Book successfully queued for sending to %(kindlemail)s" msgstr "សៀវភៅបានចូលជួរសម្រាប់ផ្ញើទៅ %(kindlemail)s ដោយជោគជ័យ" -#: cps/web.py:1531 +#: cps/web.py:1203 #, python-format msgid "Oops! There was an error sending this book: %(res)s" msgstr "មានបញ្ហានៅពេលផ្ញើសៀវភៅនេះ៖ %(res)s" -#: cps/web.py:1533 +#: cps/web.py:1205 msgid "Please update your profile with a valid Send to Kindle E-mail Address." msgstr "" -#: cps/web.py:1550 +#: cps/web.py:1222 msgid "E-Mail server is not configured, please contact your administrator!" msgstr "" -#: cps/templates/layout.html:85 cps/templates/register.html:17 cps/web.py:1551 -#: cps/web.py:1558 cps/web.py:1564 cps/web.py:1583 cps/web.py:1587 -#: cps/web.py:1593 +#: cps/templates/layout.html:86 cps/templates/register.html:17 cps/web.py:1223 +#: cps/web.py:1230 cps/web.py:1236 cps/web.py:1255 cps/web.py:1260 +#: cps/web.py:1266 msgid "Register" msgstr "ចុះឈ្មោះ" -#: cps/web.py:1585 +#: cps/web.py:1257 msgid "Your e-mail is not allowed to register" msgstr "" -#: cps/web.py:1588 +#: cps/web.py:1261 msgid "Confirmation e-mail was send to your e-mail account." msgstr "" -#: cps/web.py:1602 +#: cps/web.py:1275 msgid "Cannot activate LDAP authentication" msgstr "" -#: cps/web.py:1621 +#: cps/web.py:1294 #, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgstr "" -#: cps/web.py:1627 +#: cps/web.py:1300 #, python-format msgid "Could not login: %(message)s" msgstr "" -#: cps/web.py:1631 cps/web.py:1656 +#: cps/web.py:1304 cps/web.py:1329 msgid "Wrong Username or Password" msgstr "ខុសឈ្មោះអ្នកប្រើប្រាស់ ឬលេខសម្ងាត់" -#: cps/web.py:1638 +#: cps/web.py:1311 msgid "New Password was send to your email address" msgstr "" -#: cps/web.py:1644 +#: cps/web.py:1317 msgid "Please enter valid username to reset password" msgstr "" -#: cps/web.py:1651 +#: cps/web.py:1324 #, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "" -#: cps/web.py:1717 cps/web.py:1766 +#: cps/web.py:1388 cps/web.py:1437 #, python-format msgid "%(name)s's profile" msgstr "ព័ត៌មានសង្ខេបរបស់ %(name)s" -#: cps/web.py:1733 +#: cps/web.py:1404 msgid "Profile updated" msgstr "ព័ត៌មានសង្ខេបបានកែប្រែ" @@ -1341,40 +1379,75 @@ msgstr "ព័ត៌មានសង្ខេបបានកែប្រែ" msgid "Found no valid gmail.json file with OAuth information" msgstr "" -#: cps/tasks/convert.py:154 +#: cps/tasks/convert.py:153 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "" -#: cps/tasks/convert.py:187 +#: cps/tasks/convert.py:186 #, python-format msgid "%(format)s format not found on disk" msgstr "" -#: cps/tasks/convert.py:191 +#: cps/tasks/convert.py:190 msgid "Ebook converter failed with unknown error" msgstr "" -#: cps/tasks/convert.py:201 +#: cps/tasks/convert.py:200 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "" -#: cps/tasks/convert.py:223 +#: cps/tasks/convert.py:222 #, python-format msgid "Converted file not found or more than one file in folder %(folder)s" msgstr "" -#: cps/tasks/convert.py:246 +#: cps/tasks/convert.py:245 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "Ebook-converter បានបរាជ័យ៖ %(error)s" -#: cps/tasks/convert.py:269 +#: cps/tasks/convert.py:268 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "" +#: cps/tasks/convert.py:273 +msgid "Convert" +msgstr "" + +#: cps/tasks/database.py:28 +msgid "Reconnecting Calibre database" +msgstr "" + +#: cps/tasks/mail.py:265 +msgid "E-mail" +msgstr "" + +#: cps/tasks/thumbnail.py:95 +#, python-format +msgid "Generated %(count)s cover thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:222 cps/tasks/thumbnail.py:435 +#: cps/tasks/thumbnail.py:503 +msgid "Cover Thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:281 +msgid "Generated {0} series thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:446 +msgid "Clearing cover thumbnail cache" +msgstr "" + +#: cps/tasks/upload.py:38 cps/templates/admin.html:20 +#: cps/templates/layout.html:67 cps/templates/user_table.html:145 +msgid "Upload" +msgstr "អាប់ឡូដ" + #: cps/templates/admin.html:9 msgid "Users" msgstr "បញ្ជីអ្នកប្រើប្រាស់" @@ -1394,7 +1467,7 @@ msgstr "" msgid "Send to Kindle E-mail Address" msgstr "ឧបករណ៍ Kindle" -#: cps/templates/admin.html:17 cps/templates/layout.html:76 +#: cps/templates/admin.html:17 cps/templates/layout.html:77 #: cps/templates/user_table.html:143 msgid "Admin" msgstr "រដ្ឋបាល" @@ -1404,13 +1477,8 @@ msgstr "រដ្ឋបាល" msgid "Password" msgstr "លេខសម្ងាត់" -#: cps/templates/admin.html:20 cps/templates/layout.html:66 -#: cps/templates/user_table.html:145 -msgid "Upload" -msgstr "អាប់ឡូដ" - -#: cps/templates/admin.html:22 cps/templates/detail.html:18 -#: cps/templates/detail.html:27 cps/templates/shelf.html:7 +#: cps/templates/admin.html:22 cps/templates/detail.html:19 +#: cps/templates/detail.html:28 cps/templates/shelf.html:8 #: cps/templates/user_table.html:146 msgid "Download" msgstr "ទាញយក" @@ -1424,7 +1492,7 @@ msgstr "" msgid "Edit" msgstr "កែប្រែ" -#: cps/templates/admin.html:25 cps/templates/book_edit.html:16 +#: cps/templates/admin.html:25 cps/templates/book_edit.html:17 #: cps/templates/book_table.html:100 cps/templates/modal_dialogs.html:63 #: cps/templates/modal_dialogs.html:116 cps/templates/user_edit.html:67 #: cps/templates/user_table.html:149 @@ -1537,78 +1605,107 @@ msgstr "" msgid "Edit UI Configuration" msgstr "" -#: cps/templates/admin.html:166 -msgid "Administration" -msgstr "កិច្ចការរដ្ឋបាល" - #: cps/templates/admin.html:167 -msgid "Download Debug Package" +msgid "Scheduled Tasks" msgstr "" -#: cps/templates/admin.html:168 -msgid "View Logs" +#: cps/templates/admin.html:170 cps/templates/schedule_edit.html:12 +msgid "Time at which tasks start to run" msgstr "" -#: cps/templates/admin.html:171 -msgid "Reconnect Calibre Database" -msgstr "ភ្ជាប់ទៅ database Calibre ម្តងទៀត" - -#: cps/templates/admin.html:172 -msgid "Restart" -msgstr "" - -#: cps/templates/admin.html:173 -msgid "Shutdown" +#: cps/templates/admin.html:174 cps/templates/schedule_edit.html:20 +msgid "Maximum tasks duration" msgstr "" #: cps/templates/admin.html:178 -msgid "Update" +msgid "Generate book cover thumbnails" msgstr "" #: cps/templates/admin.html:182 +msgid "Generate series cover thumbnails" +msgstr "" + +#: cps/templates/admin.html:186 cps/templates/schedule_edit.html:37 +msgid "Reconnect to Calibre Library" +msgstr "" + +#: cps/templates/admin.html:193 +msgid "Refresh Thumbnail Cover Cache" +msgstr "" + +#: cps/templates/admin.html:199 +msgid "Administration" +msgstr "កិច្ចការរដ្ឋបាល" + +#: cps/templates/admin.html:200 +msgid "Download Debug Package" +msgstr "" + +#: cps/templates/admin.html:201 +msgid "View Logs" +msgstr "" + +#: cps/templates/admin.html:204 +msgid "Reconnect Calibre Database" +msgstr "ភ្ជាប់ទៅ database Calibre ម្តងទៀត" + +#: cps/templates/admin.html:207 +msgid "Restart" +msgstr "" + +#: cps/templates/admin.html:208 +msgid "Shutdown" +msgstr "" + +#: cps/templates/admin.html:213 +msgid "Version Information" +msgstr "" + +#: cps/templates/admin.html:217 msgid "Version" msgstr "" -#: cps/templates/admin.html:183 +#: cps/templates/admin.html:218 msgid "Details" msgstr "" -#: cps/templates/admin.html:189 +#: cps/templates/admin.html:224 msgid "Current version" msgstr "" -#: cps/templates/admin.html:196 +#: cps/templates/admin.html:231 msgid "Check for Update" msgstr "រកមើលបច្ចុប្បន្នភាព" -#: cps/templates/admin.html:197 +#: cps/templates/admin.html:232 msgid "Perform Update" msgstr "ធ្វើបច្ចុប្បន្នភាព" -#: cps/templates/admin.html:210 +#: cps/templates/admin.html:245 msgid "Are you sure you want to restart?" msgstr "" -#: cps/templates/admin.html:215 cps/templates/admin.html:229 -#: cps/templates/admin.html:249 cps/templates/config_db.html:70 +#: cps/templates/admin.html:250 cps/templates/admin.html:264 +#: cps/templates/admin.html:284 cps/templates/config_db.html:70 msgid "OK" msgstr "បាទ/ចាស" -#: cps/templates/admin.html:216 cps/templates/admin.html:230 -#: cps/templates/book_edit.html:213 cps/templates/book_table.html:127 +#: cps/templates/admin.html:251 cps/templates/admin.html:265 +#: cps/templates/book_edit.html:214 cps/templates/book_table.html:127 #: cps/templates/config_db.html:54 cps/templates/config_edit.html:359 #: 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/shelf_edit.html:27 +#: cps/templates/modal_dialogs.html:135 cps/templates/schedule_edit.html:41 +#: cps/templates/shelf_edit.html:27 cps/templates/tasks.html:46 #: cps/templates/user_edit.html:144 msgid "Cancel" msgstr "" -#: cps/templates/admin.html:228 +#: cps/templates/admin.html:263 msgid "Are you sure you want to shutdown?" msgstr "" -#: cps/templates/admin.html:240 +#: cps/templates/admin.html:275 msgid "Updating, please do not reload this page" msgstr "កំពុងធ្វើបច្ចុប្បន្នភាព សូមកុំបើកទំព័រជាថ្មី" @@ -1620,39 +1717,39 @@ msgstr "តាមរយៈ" msgid "In Library" msgstr "នៅក្នុងបណ្ណាល័យ" -#: cps/templates/author.html:26 cps/templates/index.html:73 -#: cps/templates/search.html:30 cps/templates/shelf.html:19 +#: cps/templates/author.html:26 cps/templates/index.html:74 +#: cps/templates/search.html:31 cps/templates/shelf.html:20 msgid "Sort according to book date, newest first" msgstr "" -#: cps/templates/author.html:27 cps/templates/index.html:74 -#: cps/templates/search.html:31 cps/templates/shelf.html:20 +#: cps/templates/author.html:27 cps/templates/index.html:75 +#: cps/templates/search.html:32 cps/templates/shelf.html:21 msgid "Sort according to book date, oldest first" msgstr "" -#: cps/templates/author.html:28 cps/templates/index.html:75 -#: cps/templates/search.html:32 cps/templates/shelf.html:21 +#: cps/templates/author.html:28 cps/templates/index.html:76 +#: cps/templates/search.html:33 cps/templates/shelf.html:22 msgid "Sort title in alphabetical order" msgstr "" -#: cps/templates/author.html:29 cps/templates/index.html:76 -#: cps/templates/search.html:33 cps/templates/shelf.html:22 +#: cps/templates/author.html:29 cps/templates/index.html:77 +#: cps/templates/search.html:34 cps/templates/shelf.html:23 msgid "Sort title in reverse alphabetical order" msgstr "" -#: cps/templates/author.html:30 cps/templates/index.html:79 -#: cps/templates/search.html:36 cps/templates/shelf.html:25 +#: cps/templates/author.html:30 cps/templates/index.html:80 +#: cps/templates/search.html:37 cps/templates/shelf.html:26 msgid "Sort according to publishing date, newest first" msgstr "" -#: cps/templates/author.html:31 cps/templates/index.html:80 -#: cps/templates/search.html:37 cps/templates/shelf.html:26 +#: cps/templates/author.html:31 cps/templates/index.html:81 +#: cps/templates/search.html:38 cps/templates/shelf.html:27 msgid "Sort according to publishing date, oldest first" msgstr "" #: cps/templates/author.html:56 cps/templates/author.html:115 -#: cps/templates/index.html:29 cps/templates/index.html:112 -#: cps/templates/search.html:66 cps/templates/shelf.html:54 +#: cps/templates/index.html:30 cps/templates/index.html:113 +#: cps/templates/search.html:67 cps/templates/shelf.html:55 msgid "reduce" msgstr "" @@ -1660,165 +1757,166 @@ msgstr "" msgid "More by" msgstr "បន្ថែមទៀតដោយ" -#: cps/templates/book_edit.html:10 +#: cps/templates/book_edit.html:11 msgid "Delete Book" msgstr "លុបសៀវភៅ" -#: cps/templates/book_edit.html:13 +#: cps/templates/book_edit.html:14 msgid "Delete formats:" msgstr "លុបឯកសារទម្រង់៖" -#: cps/templates/book_edit.html:24 +#: cps/templates/book_edit.html:25 msgid "Convert book format:" msgstr "" -#: cps/templates/book_edit.html:29 +#: cps/templates/book_edit.html:30 msgid "Convert from:" msgstr "" -#: cps/templates/book_edit.html:31 cps/templates/book_edit.html:38 +#: cps/templates/book_edit.html:32 cps/templates/book_edit.html:39 msgid "select an option" msgstr "" -#: cps/templates/book_edit.html:36 +#: cps/templates/book_edit.html:37 msgid "Convert to:" msgstr "" -#: cps/templates/book_edit.html:45 +#: cps/templates/book_edit.html:46 msgid "Convert book" msgstr "" -#: cps/templates/book_edit.html:55 cps/templates/search_form.html:8 +#: cps/templates/book_edit.html:56 cps/templates/search_form.html:8 msgid "Book Title" msgstr "ចំណងជើងសៀវភៅ" -#: cps/templates/book_edit.html:62 cps/templates/book_edit.html:270 -#: cps/templates/book_edit.html:288 cps/templates/search_form.html:12 +#: cps/templates/book_edit.html:63 cps/templates/book_edit.html:271 +#: cps/templates/book_edit.html:289 cps/templates/search_form.html:12 msgid "Author" msgstr "អ្នកនិពន្ធ" -#: cps/templates/book_edit.html:67 cps/templates/book_edit.html:275 -#: cps/templates/book_edit.html:290 cps/templates/search_form.html:153 +#: cps/templates/book_edit.html:68 cps/templates/book_edit.html:276 +#: cps/templates/book_edit.html:291 cps/templates/search_form.html:153 msgid "Description" msgstr "ពិពណ៌នា" -#: cps/templates/book_edit.html:72 +#: cps/templates/book_edit.html:73 msgid "Identifiers" msgstr "" -#: cps/templates/book_edit.html:76 cps/templates/book_edit.html:299 +#: cps/templates/book_edit.html:77 cps/templates/book_edit.html:300 msgid "Identifier Type" msgstr "" -#: cps/templates/book_edit.html:77 cps/templates/book_edit.html:300 +#: cps/templates/book_edit.html:78 cps/templates/book_edit.html:301 msgid "Identifier Value" msgstr "" -#: cps/templates/book_edit.html:78 cps/templates/book_edit.html:301 +#: cps/templates/book_edit.html:79 cps/templates/book_edit.html:302 #: cps/templates/user_table.html:24 msgid "Remove" msgstr "" -#: cps/templates/book_edit.html:82 +#: cps/templates/book_edit.html:83 msgid "Add Identifier" msgstr "" -#: cps/templates/book_edit.html:86 cps/templates/search_form.html:51 +#: cps/templates/book_edit.html:87 cps/templates/search_form.html:51 msgid "Tags" msgstr "Tag" -#: cps/templates/book_edit.html:94 +#: cps/templates/book_edit.html:95 msgid "Series ID" msgstr "លេខសម្គាល់ស៊េរី" -#: cps/templates/book_edit.html:98 +#: cps/templates/book_edit.html:99 msgid "Rating" msgstr "ការវាយតម្លៃ" -#: cps/templates/book_edit.html:103 +#: cps/templates/book_edit.html:104 msgid "Fetch Cover from URL (JPEG - Image will be downloaded and stored in database)" msgstr "URL របស់ក្របមុខ (ឯកសារ JPG ក្របមុខត្រូវបានទាញយក និងរក្សាទុកក្នុង database ក្រោយមកចន្លោះនេះទទេម្តងទៀត)" -#: cps/templates/book_edit.html:107 +#: cps/templates/book_edit.html:108 msgid "Upload Cover from Local Disk" msgstr "" -#: cps/templates/book_edit.html:112 +#: cps/templates/book_edit.html:113 msgid "Published Date" msgstr "ថ្ងៃបោះពុម្ភ" -#: cps/templates/book_edit.html:121 cps/templates/book_edit.html:272 -#: cps/templates/book_edit.html:289 cps/templates/detail.html:164 +#: cps/templates/book_edit.html:122 cps/templates/book_edit.html:273 +#: cps/templates/book_edit.html:290 cps/templates/detail.html:165 #: cps/templates/search_form.html:16 msgid "Publisher" msgstr "អ្នកបោះពុម្ភ" -#: cps/templates/book_edit.html:125 cps/templates/detail.html:131 +#: cps/templates/book_edit.html:126 cps/templates/detail.html:132 #: cps/templates/user_edit.html:33 msgid "Language" msgstr "ភាសា" -#: cps/templates/book_edit.html:135 cps/templates/search_form.html:45 +#: cps/templates/book_edit.html:136 cps/templates/search_form.html:45 #: cps/templates/search_form.html:164 msgid "Yes" msgstr "បាទ/ចាស" -#: cps/templates/book_edit.html:136 cps/templates/search_form.html:46 +#: cps/templates/book_edit.html:137 cps/templates/search_form.html:46 #: cps/templates/search_form.html:165 msgid "No" msgstr "ទេ" -#: cps/templates/book_edit.html:200 +#: cps/templates/book_edit.html:201 msgid "Upload Format" msgstr "ទម្រង់អាប់ឡូដ" -#: cps/templates/book_edit.html:208 +#: cps/templates/book_edit.html:209 msgid "View Book on Save" msgstr "មើលសៀវភៅក្រោយពីកែប្រែ" -#: cps/templates/book_edit.html:211 cps/templates/book_edit.html:229 +#: cps/templates/book_edit.html:212 cps/templates/book_edit.html:230 msgid "Fetch Metadata" msgstr "មើលទិន្នន័យមេតា" -#: cps/templates/book_edit.html:212 cps/templates/config_db.html:53 +#: cps/templates/book_edit.html:213 cps/templates/config_db.html:53 #: cps/templates/config_edit.html:358 cps/templates/config_view_edit.html:174 -#: cps/templates/email_edit.html:65 cps/templates/shelf_edit.html:25 -#: cps/templates/shelf_order.html:41 cps/templates/user_edit.html:142 +#: cps/templates/email_edit.html:65 cps/templates/schedule_edit.html:40 +#: cps/templates/shelf_edit.html:25 cps/templates/shelf_order.html:41 +#: cps/templates/user_edit.html:142 msgid "Save" msgstr "" -#: cps/templates/book_edit.html:232 +#: cps/templates/book_edit.html:233 msgid "Keyword" msgstr "ពាក្យគន្លឹះ" -#: cps/templates/book_edit.html:233 +#: cps/templates/book_edit.html:234 #, fuzzy msgid "Search keyword" msgstr "ស្វែងរកពាក្យគន្លឹះ" -#: cps/templates/book_edit.html:239 +#: cps/templates/book_edit.html:240 msgid "Click the cover to load metadata to the form" msgstr "ចុចលើគម្របដើម្បីបញ្ចូលទិន្នន័យមេតាទៅក្នុង form" -#: cps/templates/book_edit.html:246 cps/templates/book_edit.html:285 +#: cps/templates/book_edit.html:247 cps/templates/book_edit.html:286 msgid "Loading..." msgstr "កំពុងដំណើរការ..." -#: cps/templates/book_edit.html:250 cps/templates/layout.html:63 -#: cps/templates/layout.html:186 cps/templates/modal_dialogs.html:34 +#: cps/templates/book_edit.html:251 cps/templates/layout.html:64 +#: cps/templates/layout.html:187 cps/templates/modal_dialogs.html:34 #: cps/templates/user_edit.html:163 msgid "Close" msgstr "បិទ" -#: cps/templates/book_edit.html:277 cps/templates/book_edit.html:291 +#: cps/templates/book_edit.html:278 cps/templates/book_edit.html:292 msgid "Source" msgstr "ប្រភព" -#: cps/templates/book_edit.html:286 +#: cps/templates/book_edit.html:287 msgid "Search error!" msgstr "ការស្វែងរកមានកំហុស!" -#: cps/templates/book_edit.html:287 +#: cps/templates/book_edit.html:288 msgid "No Result(s) found! Please try another keyword." msgstr "" @@ -1926,6 +2024,7 @@ msgid "Enter " msgstr "ចុះឈ្មោះ" #: cps/templates/book_table.html:113 cps/templates/modal_dialogs.html:46 +#: cps/templates/tasks.html:36 msgid "Are you really sure?" msgstr "" @@ -2339,62 +2438,62 @@ msgstr "" msgid "Add Allowed/Denied custom column values" msgstr "" -#: cps/templates/detail.html:60 cps/templates/detail.html:69 +#: cps/templates/detail.html:61 cps/templates/detail.html:70 msgid "Read in Browser" msgstr "អានក្នុងកម្មវិធី browser" -#: cps/templates/detail.html:77 cps/templates/detail.html:94 +#: cps/templates/detail.html:78 cps/templates/detail.html:95 msgid "Listen in Browser" msgstr "" -#: cps/templates/detail.html:124 +#: cps/templates/detail.html:125 #, python-format msgid "Book %(index)s of %(range)s" msgstr "" -#: cps/templates/detail.html:173 +#: cps/templates/detail.html:174 msgid "Published" msgstr "" -#: cps/templates/detail.html:221 +#: cps/templates/detail.html:222 msgid "Mark As Unread" msgstr "" -#: cps/templates/detail.html:221 +#: cps/templates/detail.html:222 msgid "Mark As Read" msgstr "" -#: cps/templates/detail.html:222 +#: cps/templates/detail.html:223 msgid "Read" msgstr "អាន" -#: cps/templates/detail.html:231 +#: cps/templates/detail.html:232 msgid "Restore from archive" msgstr "" -#: cps/templates/detail.html:231 +#: cps/templates/detail.html:232 msgid "Add to archive" msgstr "" -#: cps/templates/detail.html:232 +#: cps/templates/detail.html:233 msgid "Archived" msgstr "" -#: cps/templates/detail.html:243 +#: cps/templates/detail.html:244 msgid "Description:" msgstr "ពិពណ៌នា" -#: cps/templates/detail.html:256 cps/templates/search.html:15 +#: cps/templates/detail.html:257 cps/templates/search.html:16 msgid "Add to shelf" msgstr "បន្ថែមទៅធ្នើ" -#: cps/templates/detail.html:267 cps/templates/detail.html:284 -#: cps/templates/feed.xml:79 cps/templates/layout.html:137 -#: cps/templates/search.html:21 +#: cps/templates/detail.html:268 cps/templates/detail.html:285 +#: cps/templates/feed.xml:79 cps/templates/layout.html:138 +#: cps/templates/search.html:22 msgid "(Public)" msgstr "" -#: cps/templates/detail.html:298 +#: cps/templates/detail.html:299 msgid "Edit Metadata" msgstr "កែប្រែទិន្នន័យមេតា" @@ -2438,7 +2537,7 @@ msgstr "" msgid "Save and Send Test E-mail" msgstr "រក្សាទុកការកំណត់រួចផ្ញើអ៊ីមែលសាកល្បង" -#: cps/templates/email_edit.html:70 cps/templates/layout.html:29 +#: cps/templates/email_edit.html:70 cps/templates/layout.html:30 #: cps/templates/shelf_order.html:42 cps/templates/user_table.html:174 msgid "Back" msgstr "មកក្រោយ" @@ -2464,7 +2563,7 @@ msgstr "" msgid "Denied Domains (Blacklist)" msgstr "" -#: cps/templates/feed.xml:21 cps/templates/layout.html:170 +#: cps/templates/feed.xml:21 cps/templates/layout.html:171 msgid "Next" msgstr "បន្ទាប់" @@ -2476,6 +2575,10 @@ msgstr "" msgid "Kobo Token:" msgstr "" +#: cps/templates/grid.html:21 +msgid "List" +msgstr "" + #: cps/templates/http_error.html:31 msgid "Calibre-Web Instance is unconfigured, please contact your administrator" msgstr "" @@ -2492,29 +2595,29 @@ msgstr "" msgid "Logout User" msgstr "" -#: cps/templates/index.html:70 +#: cps/templates/index.html:71 msgid "Sort ascending according to download count" msgstr "" -#: cps/templates/index.html:71 +#: cps/templates/index.html:72 msgid "Sort descending according to download count" msgstr "" -#: cps/templates/index.html:77 cps/templates/search.html:34 -#: cps/templates/shelf.html:23 -msgid "Sort authors in alphabetical order" -msgstr "" - #: cps/templates/index.html:78 cps/templates/search.html:35 #: cps/templates/shelf.html:24 +msgid "Sort authors in alphabetical order" +msgstr "" + +#: cps/templates/index.html:79 cps/templates/search.html:36 +#: cps/templates/shelf.html:25 msgid "Sort authors in reverse alphabetical order" msgstr "" -#: cps/templates/index.html:82 +#: cps/templates/index.html:83 msgid "Sort ascending according to series index" msgstr "" -#: cps/templates/index.html:83 +#: cps/templates/index.html:84 msgid "Sort descending according to series index" msgstr "" @@ -2578,7 +2681,7 @@ msgstr "" msgid "Books ordered by file formats" msgstr "" -#: cps/templates/index.xml:119 cps/templates/layout.html:135 +#: cps/templates/index.xml:119 cps/templates/layout.html:136 #: cps/templates/search_form.html:87 msgid "Shelves" msgstr "" @@ -2587,63 +2690,67 @@ msgstr "" msgid "Books organized in shelves" msgstr "" -#: cps/templates/layout.html:29 +#: cps/templates/layout.html:30 msgid "Home" msgstr "" -#: cps/templates/layout.html:35 +#: cps/templates/layout.html:36 msgid "Toggle Navigation" msgstr "បិទ/បើកការរុករក" -#: cps/templates/layout.html:46 +#: cps/templates/layout.html:47 msgid "Search Library" msgstr "" -#: cps/templates/layout.html:63 cps/templates/layout.html:117 +#: cps/templates/layout.html:64 cps/templates/layout.html:118 msgid "Uploading..." msgstr "កំពុងអាប់ឡូត..." -#: cps/templates/layout.html:63 +#: cps/templates/layout.html:64 msgid "Error" msgstr "" -#: cps/templates/layout.html:63 +#: cps/templates/layout.html:64 msgid "Upload done, processing, please wait..." msgstr "" -#: cps/templates/layout.html:76 cps/templates/read.html:72 +#: cps/templates/layout.html:77 cps/templates/read.html:72 #: cps/templates/readcbr.html:84 cps/templates/readcbr.html:108 msgid "Settings" msgstr "ការកំណត់" -#: cps/templates/layout.html:78 +#: cps/templates/layout.html:79 msgid "Account" msgstr "" -#: cps/templates/layout.html:80 +#: cps/templates/layout.html:81 msgid "Logout" msgstr "ចេញពីការប្រើប្រាស់" -#: cps/templates/layout.html:118 +#: cps/templates/layout.html:119 msgid "Please do not refresh the page" msgstr "" -#: cps/templates/layout.html:128 +#: cps/templates/layout.html:129 msgid "Browse" msgstr "រុករក" -#: cps/templates/layout.html:141 cps/templates/stats.html:3 +#: cps/templates/layout.html:142 cps/templates/stats.html:3 msgid "About" msgstr "អំពី" -#: cps/templates/layout.html:155 +#: cps/templates/layout.html:156 msgid "Previous" msgstr "មុន" -#: cps/templates/layout.html:182 +#: cps/templates/layout.html:183 msgid "Book Details" msgstr "ព័ត៌មានលម្អិតរបស់សៀវភៅ" +#: cps/templates/list.html:22 +msgid "Grid" +msgstr "" + #: cps/templates/login.html:18 msgid "Remember Me" msgstr "ចងចាំខ្ញុំ" @@ -2748,7 +2855,7 @@ msgstr "" msgid "Select" msgstr "" -#: cps/templates/modal_dialogs.html:134 +#: cps/templates/modal_dialogs.html:134 cps/templates/tasks.html:45 #, fuzzy msgid "Ok" msgstr "សៀវភៅ" @@ -2926,15 +3033,23 @@ msgstr "ក្រោយពីនេះ អ្នកនឹងត្រូវប msgid "This verification link will expire in 10 minutes." msgstr "" -#: cps/templates/search.html:5 -msgid "No Results Found" +#: cps/templates/schedule_edit.html:29 +msgid "Generate Book Cover Thumbnails" +msgstr "" + +#: cps/templates/schedule_edit.html:33 +msgid "Generate Series Cover Thumbnails" msgstr "" #: cps/templates/search.html:6 +msgid "No Results Found" +msgstr "" + +#: cps/templates/search.html:7 msgid "Search Term:" msgstr "" -#: cps/templates/search.html:8 +#: cps/templates/search.html:9 msgid "Results for:" msgstr "លទ្ធផលសម្រាប់៖" @@ -2987,23 +3102,23 @@ msgstr "" msgid "To:" msgstr "" -#: cps/templates/shelf.html:12 +#: cps/templates/shelf.html:13 msgid "Delete this Shelf" msgstr "លុបធ្នើនេះ" -#: cps/templates/shelf.html:13 +#: cps/templates/shelf.html:14 msgid "Edit Shelf Properties" msgstr "" -#: cps/templates/shelf.html:16 +#: cps/templates/shelf.html:17 msgid "Arrange books manually" msgstr "" -#: cps/templates/shelf.html:17 +#: cps/templates/shelf.html:18 msgid "Disable Change order" msgstr "" -#: cps/templates/shelf.html:17 +#: cps/templates/shelf.html:18 msgid "Enable Change order" msgstr "" @@ -3048,8 +3163,8 @@ msgid "System Statistics" msgstr "" #: cps/templates/stats.html:33 -msgid "Program Library" -msgstr "Library របស់កម្មវិធី" +msgid "Program" +msgstr "" #: cps/templates/stats.html:34 msgid "Installed Version" @@ -3079,6 +3194,18 @@ msgstr "រយៈពេលដែលបានចាប់ផ្តើម" msgid "Start Time" msgstr "ពេលចាប់ផ្តើម" +#: cps/templates/tasks.html:20 +msgid "Actions" +msgstr "" + +#: cps/templates/tasks.html:40 +msgid "This task will be cancelled. Any progress made by this task will be saved." +msgstr "" + +#: cps/templates/tasks.html:41 +msgid "If this is a scheduled task, it will be re-ran during the next scheduled time." +msgstr "" + #: cps/templates/user_edit.html:20 msgid "Reset user Password" msgstr "" diff --git a/cps/translations/ko/LC_MESSAGES/messages.mo b/cps/translations/ko/LC_MESSAGES/messages.mo index e85e672069dc80a232b18b1e4b716fa073e9ec7d..8677965b692205e9f54cf4d18ecc464a4a31e06d 100644 GIT binary patch delta 11960 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 diff --git a/cps/translations/ko/LC_MESSAGES/messages.po b/cps/translations/ko/LC_MESSAGES/messages.po index 31402b0f..f7c87487 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: 2022-04-18 20:01+0200\n" +"POT-Creation-Date: 2022-05-01 13:22+0200\n" "PO-Revision-Date: 2022-01-10 11:30+0900\n" "Last-Translator: 내맘대로의 EPUBGUIDE.NET \n" "Language: ko\n" @@ -15,585 +15,610 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.9.1\n" +"Generated-By: Babel 2.8.0\n" -#: cps/about.py:86 +#: cps/about.py:84 msgid "Statistics" msgstr "통계" -#: cps/admin.py:141 +#: cps/admin.py:146 msgid "Server restarted, please reload page" msgstr "서버 다시 시작으로 새로고침 필요" -#: cps/admin.py:143 +#: cps/admin.py:148 msgid "Performing shutdown of server, please close window" msgstr "서버를 종료하는 중, 창을 닫아야 함" -#: cps/admin.py:151 +#: cps/admin.py:156 msgid "Reconnect successful" msgstr "재연결 성공" -#: cps/admin.py:154 +#: cps/admin.py:159 msgid "Unknown command" msgstr "알 수 없는 명령" -#: cps/admin.py:176 cps/editbooks.py:713 cps/editbooks.py:892 -#: cps/editbooks.py:894 cps/editbooks.py:930 cps/editbooks.py:947 -#: cps/updater.py:608 cps/uploader.py:93 cps/uploader.py:103 +#: cps/admin.py:192 cps/editbooks.py:571 cps/editbooks.py:573 +#: cps/editbooks.py:609 cps/editbooks.py:626 cps/editbooks.py:1233 +#: cps/updater.py:613 cps/uploader.py:87 cps/uploader.py:97 msgid "Unknown" msgstr "알 수 없음" -#: cps/admin.py:197 +#: cps/admin.py:217 msgid "Admin page" msgstr "관리자 페이지" -#: cps/admin.py:217 +#: cps/admin.py:237 msgid "Basic Configuration" msgstr "기본 설정" -#: cps/admin.py:255 +#: cps/admin.py:275 msgid "UI Configuration" msgstr "UI 설정" -#: cps/admin.py:289 cps/templates/admin.html:51 +#: cps/admin.py:309 cps/templates/admin.html:51 msgid "Edit Users" msgstr "사용자 관리" -#: cps/admin.py:333 cps/opds.py:529 cps/templates/grid.html:13 +#: cps/admin.py:353 cps/opds.py:532 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "모두" -#: cps/admin.py:360 cps/admin.py:1648 +#: cps/admin.py:380 cps/admin.py:1365 msgid "User not found" msgstr "사용자를 찾을 수 없음" -#: cps/admin.py:374 +#: cps/admin.py:394 msgid "{} users deleted successfully" msgstr "{} 사용자를 성공적으로 삭제함" -#: cps/admin.py:397 cps/templates/config_view_edit.html:133 +#: cps/admin.py:417 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:418 cps/admin.py:424 +#: cps/admin.py:438 cps/admin.py:444 msgid "Malformed request" msgstr "잘못된 요청" -#: cps/admin.py:436 cps/admin.py:1526 +#: cps/admin.py:456 cps/admin.py:1962 msgid "Guest Name can't be changed" msgstr "Guest 이름은 수정할 수 없음" -#: cps/admin.py:448 +#: cps/admin.py:468 msgid "Guest can't have this role" msgstr "Guest는 이 권한을 사용할 수 없음" -#: cps/admin.py:460 cps/admin.py:1484 +#: cps/admin.py:480 cps/admin.py:1920 msgid "No admin user remaining, can't remove admin role" msgstr "관리자 계정이 하나 뿐일 때는 관리자를 삭제할 수 없음" -#: cps/admin.py:464 cps/admin.py:478 +#: cps/admin.py:484 cps/admin.py:498 msgid "Value has to be true or false" msgstr "값으로 rue 또는 false만 설정 가능" -#: cps/admin.py:466 +#: cps/admin.py:486 msgid "Invalid role" msgstr "잘못된 권한" -#: cps/admin.py:470 +#: cps/admin.py:490 msgid "Guest can't have this view" msgstr "Guest는 이 view를 사용할 수 없음" -#: cps/admin.py:480 +#: cps/admin.py:500 msgid "Invalid view" msgstr "잘못된 view" -#: cps/admin.py:483 +#: cps/admin.py:503 msgid "Guest's Locale is determined automatically and can't be set" msgstr "Guest의 로케일은 자동으로 결정되며 설정할 수 없음" -#: cps/admin.py:487 +#: cps/admin.py:507 msgid "No Valid Locale Given" msgstr "유효한 로케일이 아님" -#: cps/admin.py:498 +#: cps/admin.py:518 msgid "No Valid Book Language Given" msgstr "제공된 책의 언어가 유효하지 않음" -#: cps/admin.py:500 cps/editbooks.py:1267 +#: cps/admin.py:520 cps/editbooks.py:438 msgid "Parameter not found" msgstr "매개변수를 찾을 수 없음" -#: cps/admin.py:553 +#: cps/admin.py:557 msgid "Invalid Read Column" msgstr "잘못된 읽기 열" -#: cps/admin.py:559 +#: cps/admin.py:563 msgid "Invalid Restricted Column" msgstr "잘못된 제한된 열" -#: cps/admin.py:579 cps/admin.py:1355 +#: cps/admin.py:583 cps/admin.py:1791 msgid "Calibre-Web configuration updated" msgstr "Calibre-Web 설정이 업데이트 됨" -#: cps/admin.py:591 +#: cps/admin.py:595 msgid "Do you really want to delete the Kobo Token?" msgstr "Kobo Token을 삭제하시겠습니까?" -#: cps/admin.py:593 +#: cps/admin.py:597 msgid "Do you really want to delete this domain?" msgstr "이 도메인을 삭제하시겠습니까?" -#: cps/admin.py:595 +#: cps/admin.py:599 msgid "Do you really want to delete this user?" msgstr "이 사용자를 삭제하시겠습니까?" -#: cps/admin.py:597 +#: cps/admin.py:601 msgid "Are you sure you want to delete this shelf?" msgstr "이 서재를 삭제하시겠습니까?" -#: cps/admin.py:599 +#: cps/admin.py:603 msgid "Are you sure you want to change locales of selected user(s)?" msgstr "선택한 사용자의 언어를 변경하시겠습니까?" -#: cps/admin.py:601 +#: cps/admin.py:605 msgid "Are you sure you want to change visible book languages for selected user(s)?" msgstr "선택한 사용자에 대해 표시되는 책 언어를 변경하시겠습니까?" -#: cps/admin.py:603 +#: cps/admin.py:607 msgid "Are you sure you want to change the selected role for the selected user(s)?" msgstr "선택한 사용자에 대해 선택한 권한을 변경하시겠습니까?" -#: cps/admin.py:605 +#: cps/admin.py:609 msgid "Are you sure you want to change the selected restrictions for the selected user(s)?" msgstr "선택한 사용자에 대해 선택한 제한을 변경하시겠습니까?" -#: cps/admin.py:607 +#: cps/admin.py:611 msgid "Are you sure you want to change the selected visibility restrictions for the selected user(s)?" msgstr "선택한 사용자에 대해 선택한 가시성 제한을 변경하시겠습니까?" -#: cps/admin.py:610 +#: cps/admin.py:614 msgid "Are you sure you want to change shelf sync behavior for the selected user(s)?" msgstr "선택한 사용자의 실행기 동기화 동작을 변경하시겠습니까?" -#: cps/admin.py:612 +#: cps/admin.py:616 msgid "Are you sure you want to change Calibre library location?" msgstr "캘리버 서재의 언어를 변경하시겠습니까?" -#: cps/admin.py:614 +#: cps/admin.py:618 +msgid "Calibre-Web will search for updated Covers and update Cover Thumbnails, this may take a while?" +msgstr "" + +#: cps/admin.py:620 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:764 -msgid "Tag not found" -msgstr "태그를 찾을 수 없음" - -#: cps/admin.py:776 -msgid "Invalid Action" -msgstr "잘못된 액션" - -#: cps/admin.py:893 cps/admin.py:899 cps/admin.py:909 cps/admin.py:919 +#: cps/admin.py:862 cps/admin.py:868 cps/admin.py:878 cps/admin.py:888 #: cps/templates/modal_dialogs.html:29 cps/templates/user_table.html:41 #: cps/templates/user_table.html:58 msgid "Deny" msgstr "거부됨" -#: cps/admin.py:895 cps/admin.py:901 cps/admin.py:911 cps/admin.py:921 +#: cps/admin.py:864 cps/admin.py:870 cps/admin.py:880 cps/admin.py:890 #: cps/templates/modal_dialogs.html:28 cps/templates/user_table.html:44 #: cps/templates/user_table.html:61 msgid "Allow" msgstr "허용됨" -#: cps/admin.py:936 +#: cps/admin.py:905 msgid "{} sync entries deleted" msgstr "{} 동기화 항목이 삭제됨" -#: cps/admin.py:1059 +#: cps/admin.py:953 +msgid "Tag not found" +msgstr "태그를 찾을 수 없음" + +#: cps/admin.py:965 +msgid "Invalid Action" +msgstr "잘못된 액션" + +#: cps/admin.py:1080 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "client_secrets.json이 Web 응용프로그램에 대해 설정되지 않음" -#: cps/admin.py:1104 +#: cps/admin.py:1125 msgid "Logfile Location is not Valid, Please Enter Correct Path" msgstr "로그 파일 위치가 오류. 올바른 경로 입력 필요" -#: cps/admin.py:1110 +#: cps/admin.py:1131 msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgstr "액세스 로그 파일 위치가 올바르지 않음. 올바른 경로 입력 필요" -#: cps/admin.py:1140 +#: cps/admin.py:1161 msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgstr "LDAP 공급자, 포트, DN 및 사용자 개체 식별자를 입력" -#: cps/admin.py:1146 +#: cps/admin.py:1167 msgid "Please Enter a LDAP Service Account and Password" msgstr "LDAP 서비스 계정 및 비밀번호를 입력하십시오" -#: cps/admin.py:1149 +#: cps/admin.py:1170 msgid "Please Enter a LDAP Service Account" msgstr "LDAP 서비스 계정을 입력하십시오" -#: cps/admin.py:1154 +#: cps/admin.py:1175 #, python-format msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgstr "LDAP 그룹 개체 필터에는 하나의 \"%s\" 형식 식별자가 필요함" -#: cps/admin.py:1156 +#: cps/admin.py:1177 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "LDAP 그룹 개체 필터에 일치하지 않는 괄호가 있음" -#: cps/admin.py:1160 +#: cps/admin.py:1181 #, python-format msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgstr "LDAP 사용자 개체 필터에는 하나의 \"%s\" 형식 식별자 필요" -#: cps/admin.py:1162 +#: cps/admin.py:1183 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "LDAP 사용자 개체 필터에 일치하지 않는 괄호가 있음" -#: cps/admin.py:1169 +#: cps/admin.py:1190 #, python-format msgid "LDAP Member User Filter needs to Have One \"%s\" Format Identifier" msgstr "LDAP 구성원 사용자 필터에는 하나의 \"%s\" 형식 식별자 필요" -#: cps/admin.py:1171 +#: cps/admin.py:1192 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "LDAP 구성원 사용자 필터에 일치하지 않는 괄호가 있음" -#: cps/admin.py:1178 +#: cps/admin.py:1199 msgid "LDAP CACertificate, Certificate or Key Location is not Valid, Please Enter Correct Path" msgstr "유요하지 않은 LDAP CACertificate, 인증서 또는 키 위치. 올바른 경로를 입력 필요" -#: cps/admin.py:1223 cps/admin.py:1339 cps/admin.py:1437 cps/admin.py:1554 -#: cps/admin.py:1623 cps/editbooks.py:678 cps/editbooks.py:882 -#: cps/editbooks.py:1130 cps/shelf.py:100 cps/shelf.py:160 cps/shelf.py:203 -#: cps/shelf.py:278 cps/shelf.py:343 cps/shelf.py:380 cps/shelf.py:456 -#: cps/web.py:1742 +#: cps/admin.py:1230 cps/admin.py:1852 +msgid "Add new user" +msgstr "새 사용자 추가" + +#: cps/admin.py:1239 cps/templates/admin.html:100 +msgid "Edit E-mail Server Settings" +msgstr "이메일 서버 설정 편집" + +#: cps/admin.py:1258 +msgid "Gmail Account Verification Successful" +msgstr "Gmail 계정 인증 성공" + +#: cps/admin.py:1277 cps/admin.py:1658 cps/admin.py:1775 cps/admin.py:1873 +#: cps/admin.py:1990 cps/editbooks.py:227 cps/editbooks.py:301 +#: cps/editbooks.py:1196 cps/shelf.py:82 cps/shelf.py:142 cps/shelf.py:185 +#: cps/shelf.py:235 cps/shelf.py:272 cps/shelf.py:343 cps/shelf.py:457 +#: cps/tasks/convert.py:136 cps/web.py:1413 #, python-format msgid "Database error: %(error)s." msgstr "데이터베이스 오류: %(error)s." -#: cps/admin.py:1235 -msgid "DB Location is not Valid, Please Enter Correct Path" -msgstr "올바르지 않은 DB 위치. 올바른 경로 입력 필요" - -#: cps/admin.py:1253 -msgid "DB is not Writeable" -msgstr "쓰기 권한이 없는 DB" - -#: cps/admin.py:1266 -msgid "Keyfile Location is not Valid, Please Enter Correct Path" -msgstr "올바르지 않은 키 파일 위치. 올바른 경로 입력 필요" - -#: cps/admin.py:1270 -msgid "Certfile Location is not Valid, Please Enter Correct Path" -msgstr "올바르지 않은 인증서 파일 위치. 올바른 경로 입력 필요" - -#: cps/admin.py:1378 -msgid "Database Settings updated" -msgstr "데이터베이스 설정이 업데이트 되었습니다" - -#: cps/admin.py:1386 -msgid "Database Configuration" -msgstr "데이터베이스 구성" - -#: cps/admin.py:1402 cps/web.py:1557 -msgid "Please fill out all fields!" -msgstr "모든 필드를 채워주십시오!" - -#: cps/admin.py:1410 -msgid "E-mail is not from valid domain" -msgstr "유효한 도메인에서 온 이메일이 아니" - -#: cps/admin.py:1416 cps/admin.py:1576 -msgid "Add new user" -msgstr "새 사용자 추가" - -#: cps/admin.py:1427 -#, python-format -msgid "User '%(user)s' created" -msgstr "사용자 '%(user)s'이(가) 생성됨" - -#: cps/admin.py:1433 -msgid "Found an existing account for this e-mail address or name." -msgstr "동일한 이메일 주소 또는 이름이 이미 등록되어 있습니다." - -#: cps/admin.py:1463 -#, python-format -msgid "User '%(nick)s' deleted" -msgstr "사용자 '%(nick)s'이(가) 삭제됨" - -#: cps/admin.py:1465 cps/admin.py:1466 -msgid "Can't delete Guest User" -msgstr "게스트 사용자는 삭제할 수 없습니다" - -#: cps/admin.py:1469 -msgid "No admin user remaining, can't delete user" -msgstr "관리자 계정이 하나 뿐일 때는 관리자 권한을 삭제할 수 없음" - -#: cps/admin.py:1542 cps/admin.py:1667 -#, python-format -msgid "Edit User %(nick)s" -msgstr "사용자 %(nick)s 편집" - -#: cps/admin.py:1546 -#, python-format -msgid "User '%(nick)s' updated" -msgstr "사용자 '%(nick)s'가 업데이트 됨" - -#: cps/admin.py:1550 cps/admin.py:1682 cps/web.py:1582 cps/web.py:1642 -msgid "An unknown error occurred. Please try again later." -msgstr "알 수없는 오류가 발생했습니다. 나중에 다시 시도 해주십시오." - -#: cps/admin.py:1585 cps/templates/admin.html:100 -msgid "Edit E-mail Server Settings" -msgstr "이메일 서버 설정 편집" - -#: cps/admin.py:1604 -msgid "Gmail Account Verification Successful" -msgstr "Gmail 계정 인증 성공" - -#: cps/admin.py:1630 +#: cps/admin.py:1284 #, python-format msgid "Test e-mail queued for sending to %(email)s, please check Tasks for result" msgstr "%(email)s에 테스트를 위한 이메일을 보냄. 결과 확인 필요" -#: cps/admin.py:1633 +#: cps/admin.py:1287 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "테스트 이메일을 보내는 동안 오류가 발생했습니다: %(res)s" -#: cps/admin.py:1635 +#: cps/admin.py:1289 msgid "Please configure your e-mail address first..." msgstr "먼저 이메일 주소를 구성하십시오..." -#: cps/admin.py:1637 +#: cps/admin.py:1291 msgid "E-mail server settings updated" msgstr "이메일 서버 설정 업데이트됨" -#: cps/admin.py:1679 +#: cps/admin.py:1314 cps/templates/admin.html:191 +msgid "Edit Scheduled Tasks Settings" +msgstr "" + +#: cps/admin.py:1326 +msgid "Invalid start time for task specified" +msgstr "" + +#: cps/admin.py:1331 +msgid "Invalid duration for task specified" +msgstr "" + +#: cps/admin.py:1340 +msgid "Scheduled tasks settings updated" +msgstr "" + +#: cps/admin.py:1350 cps/admin.py:1399 cps/admin.py:1986 cps/web.py:1254 +#: cps/web.py:1315 +msgid "An unknown error occurred. Please try again later." +msgstr "알 수없는 오류가 발생했습니다. 나중에 다시 시도 해주십시오." + +#: cps/admin.py:1354 +msgid "Settings DB is not Writeable" +msgstr "" + +#: cps/admin.py:1384 cps/admin.py:1978 +#, python-format +msgid "Edit User %(nick)s" +msgstr "사용자 %(nick)s 편집" + +#: cps/admin.py:1396 #, python-format msgid "Password for user %(user)s reset" msgstr "사용자 %(user)s의 비밀번호 재설정" -#: cps/admin.py:1685 cps/web.py:1522 +#: cps/admin.py:1402 cps/web.py:1194 msgid "Please configure the SMTP mail settings first..." msgstr "먼저 SMTP 메일 설정을 구성하십시오..." -#: cps/admin.py:1696 +#: cps/admin.py:1413 msgid "Logfile viewer" msgstr "로그 파일 뷰어" -#: cps/admin.py:1762 +#: cps/admin.py:1479 msgid "Requesting update package" msgstr "업데이트 패키지 요청" -#: cps/admin.py:1763 +#: cps/admin.py:1480 msgid "Downloading update package" msgstr "업데이트 패키지 다운로드" -#: cps/admin.py:1764 +#: cps/admin.py:1481 msgid "Unzipping update package" msgstr "업데이트 패키지 압축 풀기" -#: cps/admin.py:1765 +#: cps/admin.py:1482 msgid "Replacing files" msgstr "파일 교체" -#: cps/admin.py:1766 +#: cps/admin.py:1483 msgid "Database connections are closed" msgstr "데이터베이스 연결이 닫힙니다" -#: cps/admin.py:1767 +#: cps/admin.py:1484 msgid "Stopping server" msgstr "서버 중지" -#: cps/admin.py:1768 +#: cps/admin.py:1485 msgid "Update finished, please press okay and reload page" msgstr "업데이트가 완료되었습니다. 확인을 누르고 페이지를 새로고침하세요" -#: cps/admin.py:1769 cps/admin.py:1770 cps/admin.py:1771 cps/admin.py:1772 -#: cps/admin.py:1773 cps/admin.py:1774 +#: cps/admin.py:1486 cps/admin.py:1487 cps/admin.py:1488 cps/admin.py:1489 +#: cps/admin.py:1490 cps/admin.py:1491 msgid "Update failed:" msgstr "업데이트 실패:" -#: cps/admin.py:1769 cps/updater.py:384 cps/updater.py:619 cps/updater.py:621 +#: cps/admin.py:1486 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 msgid "HTTP Error" msgstr "HTTP 오류" -#: cps/admin.py:1770 cps/updater.py:386 cps/updater.py:623 +#: cps/admin.py:1487 cps/updater.py:391 cps/updater.py:628 msgid "Connection error" msgstr "연결 오류" -#: cps/admin.py:1771 cps/updater.py:388 cps/updater.py:625 +#: cps/admin.py:1488 cps/updater.py:393 cps/updater.py:630 msgid "Timeout while establishing connection" msgstr "연결 설정 중 시간 초과" -#: cps/admin.py:1772 cps/updater.py:390 cps/updater.py:627 +#: cps/admin.py:1489 cps/updater.py:395 cps/updater.py:632 msgid "General error" msgstr "일반 오류" -#: cps/admin.py:1773 +#: cps/admin.py:1490 msgid "Update file could not be saved in temp dir" msgstr "임시 디렉토리에 업데이트 파일을 저장할 수 없습니다" -#: cps/admin.py:1774 +#: cps/admin.py:1491 msgid "Files could not be replaced during update" msgstr "업데이트하는 동안 파일을 교체할 수 없습니다" -#: cps/admin.py:1798 +#: cps/admin.py:1515 msgid "Failed to extract at least One LDAP User" msgstr "하나 이상의 LDAP 사용자를 추출하지 못했습니다" -#: cps/admin.py:1843 +#: cps/admin.py:1560 msgid "Failed to Create at Least One LDAP User" msgstr "하나 이상의 LDAP 사용자를 생성하지 못했습니다" -#: cps/admin.py:1856 +#: cps/admin.py:1573 #, python-format msgid "Error: %(ldaperror)s" msgstr "오류: %(ldaperror)s" -#: cps/admin.py:1860 +#: cps/admin.py:1577 msgid "Error: No user returned in response of LDAP server" msgstr "오류: LDAP 서버의 응답으로 사용자가 반환되지 않았습니다" -#: cps/admin.py:1893 +#: cps/admin.py:1610 msgid "At Least One LDAP User Not Found in Database" msgstr "데이터베이스에서 하나 이상의 LDAP 사용자를 찾을 수 없습니다" -#: cps/admin.py:1895 +#: cps/admin.py:1612 msgid "{} User Successfully Imported" msgstr "{} 사용자 가져오기 성공" -#: cps/converter.py:30 +#: cps/admin.py:1670 +msgid "DB Location is not Valid, Please Enter Correct Path" +msgstr "올바르지 않은 DB 위치. 올바른 경로 입력 필요" + +#: cps/admin.py:1689 +msgid "DB is not Writeable" +msgstr "쓰기 권한이 없는 DB" + +#: cps/admin.py:1702 +msgid "Keyfile Location is not Valid, Please Enter Correct Path" +msgstr "올바르지 않은 키 파일 위치. 올바른 경로 입력 필요" + +#: cps/admin.py:1706 +msgid "Certfile Location is not Valid, Please Enter Correct Path" +msgstr "올바르지 않은 인증서 파일 위치. 올바른 경로 입력 필요" + +#: cps/admin.py:1814 +msgid "Database Settings updated" +msgstr "데이터베이스 설정이 업데이트 되었습니다" + +#: cps/admin.py:1822 +msgid "Database Configuration" +msgstr "데이터베이스 구성" + +#: cps/admin.py:1838 cps/web.py:1229 +msgid "Please fill out all fields!" +msgstr "모든 필드를 채워주십시오!" + +#: cps/admin.py:1846 +msgid "E-mail is not from valid domain" +msgstr "유효한 도메인에서 온 이메일이 아니" + +#: cps/admin.py:1863 +#, python-format +msgid "User '%(user)s' created" +msgstr "사용자 '%(user)s'이(가) 생성됨" + +#: cps/admin.py:1869 +msgid "Found an existing account for this e-mail address or name." +msgstr "동일한 이메일 주소 또는 이름이 이미 등록되어 있습니다." + +#: cps/admin.py:1899 +#, python-format +msgid "User '%(nick)s' deleted" +msgstr "사용자 '%(nick)s'이(가) 삭제됨" + +#: cps/admin.py:1901 cps/admin.py:1902 +msgid "Can't delete Guest User" +msgstr "게스트 사용자는 삭제할 수 없습니다" + +#: cps/admin.py:1905 +msgid "No admin user remaining, can't delete user" +msgstr "관리자 계정이 하나 뿐일 때는 관리자 권한을 삭제할 수 없음" + +#: cps/admin.py:1982 +#, python-format +msgid "User '%(nick)s' updated" +msgstr "사용자 '%(nick)s'가 업데이트 됨" + +#: cps/converter.py:31 msgid "not installed" msgstr "설치되지 않음" -#: cps/converter.py:31 +#: cps/converter.py:32 msgid "Execution permissions missing" msgstr "실행 권한 누락" -#: cps/db.py:674 cps/web.py:710 cps/web.py:1222 +#: cps/db.py:681 cps/search.py:134 cps/web.py:720 #, python-format msgid "Custom Column No.%(column)d is not existing in calibre database" msgstr "사용자 정의 열 번호 %(column)d이(가) calibre 데이터베이스에 없습니다" -#: cps/db.py:917 cps/templates/config_edit.html:204 +#: cps/db.py:924 cps/templates/config_edit.html:204 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 -#: cps/web.py:551 cps/web.py:585 cps/web.py:646 cps/web.py:671 cps/web.py:1003 -#: cps/web.py:1032 cps/web.py:1066 cps/web.py:1093 cps/web.py:1132 +#: cps/web.py:549 cps/web.py:583 cps/web.py:656 cps/web.py:681 cps/web.py:962 +#: cps/web.py:992 cps/web.py:1027 cps/web.py:1055 cps/web.py:1094 msgid "None" msgstr "None" -#: cps/editbooks.py:295 cps/editbooks.py:297 -msgid "Book Format Successfully Deleted" -msgstr "책 형식이 성공적으로 삭제되었습니다" - -#: cps/editbooks.py:304 cps/editbooks.py:306 -msgid "Book Successfully Deleted" -msgstr "책이 성공적으로 삭제되었습니다" - -#: cps/editbooks.py:358 -msgid "You are missing permissions to delete books" -msgstr "" - -#: cps/editbooks.py:373 cps/editbooks.py:765 cps/web.py:518 cps/web.py:1783 -#: cps/web.py:1825 cps/web.py:1870 +#: cps/editbooks.py:109 cps/editbooks.py:890 cps/web.py:516 cps/web.py:1454 +#: cps/web.py:1496 cps/web.py:1541 msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible" msgstr "선택한 책 제목을 사용할 수 없습니다. 파일이 존재하지 않거나 액세스할 수 없습니다" -#: cps/editbooks.py:408 -msgid "edit metadata" -msgstr "메타데이터 편집" - -#: cps/editbooks.py:457 -#, python-format -msgid "%(seriesindex)s is not a valid number, skipping" -msgstr "%(seriesindex)s은(는) 유효한 숫자가 아닙니다. 건너뜁니다" - -#: cps/editbooks.py:493 cps/editbooks.py:1001 -#, python-format -msgid "'%(langname)s' is not a valid language" -msgstr "'%(langname)s'은(는) 유효한 언어가 아닙니다" - -#: cps/editbooks.py:634 -msgid "User has no rights to upload additional file formats" -msgstr "" - -#: cps/editbooks.py:639 cps/editbooks.py:1029 -#, python-format -msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" -msgstr "파일 확장자 '%(ext)s'은(는) 이 서버에 업로드할 수 없습니다" - -#: cps/editbooks.py:643 cps/editbooks.py:1033 -msgid "File to be uploaded must have an extension" -msgstr "업로드할 파일에는 확장자가 있어야 합니다" - -#: cps/editbooks.py:655 -#, python-format -msgid "Failed to create path %(path)s (Permission denied)." -msgstr "%(path)s 경로를 생성하지 못했습니다(권한이 없음)." - -#: cps/editbooks.py:660 -#, python-format -msgid "Failed to store file %(file)s." -msgstr "%(file)s 파일을 저장하지 못했습니다." - -#: cps/editbooks.py:683 -#, python-format -msgid "File format %(ext)s added to %(book)s" -msgstr "파일 형식 %(ext)s이(가) %(book)s에 추가되었습니다" - -#: cps/editbooks.py:697 cps/editbooks.py:809 +#: cps/editbooks.py:153 cps/editbooks.py:1216 msgid "User has no rights to upload cover" msgstr "" -#: cps/editbooks.py:828 +#: cps/editbooks.py:173 cps/editbooks.py:711 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "식별자는 대소문자를 구분하지 않으며 이전 식별자를 덮어씁니다" -#: cps/editbooks.py:869 +#: cps/editbooks.py:214 msgid "Metadata successfully updated" msgstr "메타데이터가 성공적으로 업데이트되었습니다" -#: cps/editbooks.py:887 +#: cps/editbooks.py:232 msgid "Error editing book: {}" msgstr "" -#: cps/editbooks.py:951 -msgid "Uploaded book probably exists in the library, consider to change before upload new: " -msgstr "업로드한 책이 라이브러리에 있을 수 있음. 새로 업로드하기 전에 확인 필요: " - -#: cps/editbooks.py:1041 -#, python-format -msgid "File %(filename)s could not saved to temp dir" -msgstr "파일 %(filename)s을(를) 임시 디렉토리에 저장할 수 없습니다" - -#: cps/editbooks.py:1061 -#, python-format -msgid "Failed to Move Cover File %(file)s: %(error)s" -msgstr "표지 파일%(file)s를 이동하지 못했습니다.:%(error)s" - -#: cps/editbooks.py:1117 +#: cps/editbooks.py:287 #, python-format msgid "File %(file)s uploaded" msgstr "파일 %(file)s 업로드됨" -#: cps/editbooks.py:1143 +#: cps/editbooks.py:314 msgid "Source or destination format for conversion missing" msgstr "변환을 위한 소스 또는 대상 형식이 누락되었습니다" -#: cps/editbooks.py:1151 +#: cps/editbooks.py:322 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "책이 %(book_format)s(으)로 변환하기 위해 대기 중입니다" -#: cps/editbooks.py:1155 +#: cps/editbooks.py:326 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "이 책을 변환하는 동안 오류가 발생했습니다: %(res)s" +#: cps/editbooks.py:630 +msgid "Uploaded book probably exists in the library, consider to change before upload new: " +msgstr "업로드한 책이 라이브러리에 있을 수 있음. 새로 업로드하기 전에 확인 필요: " + +#: cps/editbooks.py:685 cps/editbooks.py:1010 +#, python-format +msgid "'%(langname)s' is not a valid language" +msgstr "'%(langname)s'은(는) 유효한 언어가 아닙니다" + +#: cps/editbooks.py:723 cps/editbooks.py:1157 +#, python-format +msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" +msgstr "파일 확장자 '%(ext)s'은(는) 이 서버에 업로드할 수 없습니다" + +#: cps/editbooks.py:727 cps/editbooks.py:1161 +msgid "File to be uploaded must have an extension" +msgstr "업로드할 파일에는 확장자가 있어야 합니다" + +#: cps/editbooks.py:735 +#, python-format +msgid "File %(filename)s could not saved to temp dir" +msgstr "파일 %(filename)s을(를) 임시 디렉토리에 저장할 수 없습니다" + +#: cps/editbooks.py:755 +#, python-format +msgid "Failed to Move Cover File %(file)s: %(error)s" +msgstr "표지 파일%(file)s를 이동하지 못했습니다.:%(error)s" + +#: cps/editbooks.py:812 cps/editbooks.py:814 +msgid "Book Format Successfully Deleted" +msgstr "책 형식이 성공적으로 삭제되었습니다" + +#: cps/editbooks.py:821 cps/editbooks.py:823 +msgid "Book Successfully Deleted" +msgstr "책이 성공적으로 삭제되었습니다" + +#: cps/editbooks.py:875 +msgid "You are missing permissions to delete books" +msgstr "" + +#: cps/editbooks.py:925 +msgid "edit metadata" +msgstr "메타데이터 편집" + +#: cps/editbooks.py:974 +#, python-format +msgid "%(seriesindex)s is not a valid number, skipping" +msgstr "%(seriesindex)s은(는) 유효한 숫자가 아닙니다. 건너뜁니다" + +#: cps/editbooks.py:1152 +msgid "User has no rights to upload additional file formats" +msgstr "" + +#: cps/editbooks.py:1173 +#, python-format +msgid "Failed to create path %(path)s (Permission denied)." +msgstr "%(path)s 경로를 생성하지 못했습니다(권한이 없음)." + +#: cps/editbooks.py:1178 +#, python-format +msgid "Failed to store file %(file)s." +msgstr "%(file)s 파일을 저장하지 못했습니다." + +#: cps/editbooks.py:1201 +#, python-format +msgid "File format %(ext)s added to %(book)s" +msgstr "파일 형식 %(ext)s이(가) %(book)s에 추가되었습니다" + #: cps/gdrive.py:58 msgid "Google Drive setup not completed, try to deactivate and activate Google Drive again" msgstr "Google 드라이브 설정이 완료되지 않았습니다. Google 드라이브를 비활성화했다가 다시 활성화해 보세요" @@ -602,27 +627,27 @@ msgstr "Google 드라이브 설정이 완료되지 않았습니다. Google 드 msgid "Callback domain is not verified, please follow steps to verify domain in google developer console" msgstr "콜백 도메인이 확인되지 않았습니다. 단계에 따라 Google 개발자 콘솔에서 도메인을 확인하세요" -#: cps/helper.py:81 +#: cps/helper.py:80 #, python-format msgid "%(format)s format not found for book id: %(book)d" msgstr "책 ID에 대한 %(format)s 형식을 찾을 수 없음: %(book)d" -#: cps/helper.py:87 cps/tasks/convert.py:75 +#: cps/helper.py:86 cps/tasks/convert.py:75 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "%(format)s을(를) Google 드라이브에서 찾을 수 없음: %(fn)s" -#: cps/helper.py:92 +#: cps/helper.py:91 #, python-format msgid "%(format)s not found: %(fn)s" msgstr "%(format)s을(를) 찾을 수 없음: %(fn)s" -#: cps/helper.py:97 cps/helper.py:221 cps/templates/detail.html:41 -#: cps/templates/detail.html:45 +#: cps/helper.py:96 cps/helper.py:221 cps/templates/detail.html:42 +#: cps/templates/detail.html:46 msgid "Send to Kindle" msgstr "킨들로 보내기" -#: cps/helper.py:98 cps/helper.py:115 cps/helper.py:223 +#: cps/helper.py:97 cps/helper.py:115 cps/helper.py:223 msgid "This e-mail has been sent via Calibre-Web." msgstr "이 이메일은 Calibre Web을 통해 전송되었습니다." @@ -662,131 +687,111 @@ msgstr "%(book)s을 킨들로 보내기" msgid "The requested file could not be read. Maybe wrong permissions?" msgstr "요청한 파일을 읽을 수 없습니다. 올바른 권한인가요?" -#: cps/helper.py:353 +#: cps/helper.py:341 msgid "Read status could not set: {}" msgstr "" -#: cps/helper.py:376 +#: cps/helper.py:364 #, python-format msgid "Deleting bookfolder for book %(id)s failed, path has subfolders: %(path)s" msgstr "책 %(id)s에 대한 책 폴더를 삭제하지 못했습니다. 경로에 하위 폴더가 있습니다: %(path)s" -#: cps/helper.py:382 +#: cps/helper.py:370 #, python-format msgid "Deleting book %(id)s failed: %(message)s" msgstr "%(id)s 도서 삭제 실패: %(message)s" -#: cps/helper.py:393 +#: cps/helper.py:381 #, 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:458 +#: cps/helper.py:446 #, 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:529 cps/helper.py:538 +#: cps/helper.py:518 cps/helper.py:527 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "Google 드라이브에서 %(file)s 파일을 찾을 수 없습니다" -#: cps/helper.py:572 +#: cps/helper.py:561 #, 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:592 +#: cps/helper.py:581 msgid "Error in rename file in path: {}" msgstr "" -#: cps/helper.py:610 +#: cps/helper.py:599 #, python-format msgid "Book path %(path)s not found on Google Drive" msgstr "Google 드라이브에서 책 경로 %(path)s을(를) 찾을 수 없습니다" -#: cps/helper.py:651 cps/web.py:1737 +#: cps/helper.py:640 cps/web.py:1408 msgid "Found an existing account for this e-mail address" msgstr "등록되어 있는 이메일 주소입니다" -#: cps/helper.py:659 +#: cps/helper.py:648 msgid "This username is already taken" msgstr "등록되어 있는 username입니다" -#: cps/helper.py:669 +#: cps/helper.py:658 msgid "Invalid e-mail address format" msgstr "이메일 주소 형식이 잘못되었습니다" -#: cps/helper.py:754 -msgid "Python modul 'advocate' is not installed but is needed for cover downloads" +#: cps/helper.py:808 +msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "" -#: cps/helper.py:767 +#: cps/helper.py:818 msgid "Error Downloading Cover" msgstr "표지 다운로드 중 오류 발생" -#: cps/helper.py:770 +#: cps/helper.py:821 msgid "Cover Format Error" msgstr "표지 형식 오류" -#: cps/helper.py:773 +#: cps/helper.py:824 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "" -#: cps/helper.py:783 +#: cps/helper.py:834 msgid "Failed to create path for cover" msgstr "표지 경로 생성 실패" -#: cps/helper.py:799 +#: cps/helper.py:850 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "표지 파일이 유효한 이미지 파일이 아니거나 저장할 수 없습니다" -#: cps/helper.py:810 +#: cps/helper.py:861 msgid "Only jpg/jpeg/png/webp/bmp files are supported as coverfile" msgstr "표지는 jpg/jpeg/png/webp/bmp 파일만 지원됩니다" -#: cps/helper.py:822 +#: cps/helper.py:873 msgid "Invalid cover file content" msgstr "잘못된 표지 파일 콘텐츠" -#: cps/helper.py:826 +#: cps/helper.py:877 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "표지 파일로 jpg/jpeg 파일만 지원됩니다" -#: cps/helper.py:878 +#: cps/helper.py:929 msgid "Unrar binary file not found" msgstr "Unrar 바이너리 파일을 찾을 수 없습니다" -#: cps/helper.py:889 +#: cps/helper.py:940 msgid "Error excecuting UnRar" msgstr "UnRar 실행 오류" -#: cps/helper.py:937 -msgid "Waiting" -msgstr "대기중" - -#: cps/helper.py:939 -msgid "Failed" -msgstr "실패" - -#: cps/helper.py:941 -msgid "Started" -msgstr "시작됨" - -#: cps/helper.py:943 -msgid "Finished" -msgstr "종료" - -#: cps/helper.py:945 -msgid "Unknown Status" -msgstr "알 수 없는 상태" - -#: cps/kobo_auth.py:128 +#: cps/kobo_auth.py:89 #, fuzzy msgid "Please access Calibre-Web from non localhost to get valid api_endpoint for kobo device" msgstr "코보(kobo) 장치에 대한 유효한 api_endpoint를 얻으려면 로컬 호스트가 아닌 곳에서 calibre-web에 액세스하십시오" -#: cps/kobo_auth.py:154 +#: cps/kobo_auth.py:115 msgid "Kobo Setup" msgstr "Kobo 설정" @@ -795,7 +800,7 @@ msgstr "Kobo 설정" msgid "Register with %(provider)s" msgstr "%(provider)s에 등록" -#: cps/oauth_bb.py:138 cps/remotelogin.py:130 cps/web.py:1613 +#: cps/oauth_bb.py:138 cps/remotelogin.py:130 cps/web.py:1286 #, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "다음 사용자로 로그인했습니다: '%(nickname)s'" @@ -856,12 +861,12 @@ msgstr "Google 인증 오류입니다. 나중에 다시 시도하세요." msgid "Google Oauth error: {}" msgstr "Google 인증 오류: {}" -#: cps/opds.py:298 +#: cps/opds.py:287 msgid "{} Stars" msgstr "{} Stars" -#: cps/remotelogin.py:62 cps/templates/layout.html:84 -#: cps/templates/login.html:4 cps/templates/login.html:21 cps/web.py:1662 +#: cps/remotelogin.py:62 cps/templates/layout.html:85 +#: cps/templates/login.html:4 cps/templates/login.html:21 cps/web.py:1335 msgid "Login" msgstr "로그인" @@ -877,454 +882,487 @@ msgstr "토큰이 만료되었습니다" msgid "Success! Please return to your device" msgstr "성공! 기기로 돌아가주세요" -#: cps/render_template.py:41 cps/web.py:407 +#: cps/render_template.py:40 cps/web.py:405 msgid "Books" msgstr "책" -#: cps/render_template.py:43 +#: cps/render_template.py:42 msgid "Show recent books" msgstr "최근 책 보기" -#: cps/render_template.py:44 cps/templates/index.xml:25 +#: cps/render_template.py:43 cps/templates/index.xml:25 msgid "Hot Books" msgstr "인기있는 책" -#: cps/render_template.py:46 +#: cps/render_template.py:45 msgid "Show Hot Books" msgstr "주목받는 책 보기" -#: cps/render_template.py:48 cps/render_template.py:53 +#: cps/render_template.py:47 cps/render_template.py:52 msgid "Downloaded Books" msgstr "다운로드된 책" -#: cps/render_template.py:50 cps/render_template.py:55 +#: cps/render_template.py:49 cps/render_template.py:54 #: cps/templates/user_table.html:167 msgid "Show Downloaded Books" msgstr "다운로드된 책 보기" -#: cps/render_template.py:58 cps/templates/index.xml:32 cps/web.py:422 +#: cps/render_template.py:57 cps/templates/index.xml:32 cps/web.py:420 msgid "Top Rated Books" msgstr "평점이 높은 책" -#: cps/render_template.py:60 cps/templates/user_table.html:161 +#: cps/render_template.py:59 cps/templates/user_table.html:161 msgid "Show Top Rated Books" msgstr "평점이 높은 책 보기" -#: cps/render_template.py:61 cps/templates/index.xml:54 -#: cps/templates/index.xml:58 cps/web.py:729 +#: cps/render_template.py:60 cps/templates/index.xml:54 +#: cps/templates/index.xml:58 cps/web.py:739 msgid "Read Books" msgstr "읽은 책" -#: cps/render_template.py:63 +#: cps/render_template.py:62 msgid "Show read and unread" msgstr "읽은 책과 읽지 않은 책 보기" -#: cps/render_template.py:65 cps/templates/index.xml:61 -#: cps/templates/index.xml:65 cps/web.py:732 +#: cps/render_template.py:64 cps/templates/index.xml:61 +#: cps/templates/index.xml:65 cps/web.py:742 msgid "Unread Books" msgstr "읽지 않은 책" -#: cps/render_template.py:67 +#: cps/render_template.py:66 msgid "Show unread" msgstr "읽지 않은 책 보기" -#: cps/render_template.py:68 +#: cps/render_template.py:67 msgid "Discover" msgstr "발견" -#: cps/render_template.py:70 cps/templates/index.xml:50 +#: cps/render_template.py:69 cps/templates/index.xml:50 #: cps/templates/user_table.html:162 msgid "Show Random Books" msgstr "무작위 추천" -#: cps/render_template.py:71 cps/templates/book_table.html:67 -#: cps/templates/index.xml:83 cps/web.py:1135 +#: cps/render_template.py:70 cps/templates/book_table.html:67 +#: cps/templates/index.xml:83 cps/web.py:1098 msgid "Categories" msgstr "카테고리" -#: cps/render_template.py:73 cps/templates/user_table.html:158 +#: cps/render_template.py:72 cps/templates/user_table.html:158 msgid "Show category selection" msgstr "카테고리별 보기" -#: cps/render_template.py:74 cps/templates/book_edit.html:90 +#: cps/render_template.py:73 cps/templates/book_edit.html:91 #: cps/templates/book_table.html:68 cps/templates/index.xml:90 -#: cps/templates/search_form.html:69 cps/web.py:1034 cps/web.py:1041 +#: cps/templates/search_form.html:69 cps/web.py:995 cps/web.py:1002 msgid "Series" msgstr "시리즈" -#: cps/render_template.py:76 cps/templates/user_table.html:157 +#: cps/render_template.py:75 cps/templates/user_table.html:157 msgid "Show series selection" msgstr "시리즈별 보기" -#: cps/render_template.py:77 cps/templates/book_table.html:66 +#: cps/render_template.py:76 cps/templates/book_table.html:66 #: cps/templates/index.xml:69 msgid "Authors" msgstr "저자" -#: cps/render_template.py:79 cps/templates/user_table.html:160 +#: cps/render_template.py:78 cps/templates/user_table.html:160 msgid "Show author selection" msgstr "저자별 보기" -#: cps/render_template.py:81 cps/templates/book_table.html:72 -#: cps/templates/index.xml:76 cps/web.py:1006 +#: cps/render_template.py:80 cps/templates/book_table.html:72 +#: cps/templates/index.xml:76 cps/web.py:966 msgid "Publishers" msgstr "출판사" -#: cps/render_template.py:83 cps/templates/user_table.html:163 +#: cps/render_template.py:82 cps/templates/user_table.html:163 msgid "Show publisher selection" msgstr "출판사별 보기" -#: cps/render_template.py:84 cps/templates/book_table.html:70 +#: cps/render_template.py:83 cps/templates/book_table.html:70 #: cps/templates/index.xml:97 cps/templates/search_form.html:107 -#: cps/web.py:1108 +#: cps/web.py:1070 msgid "Languages" msgstr "언어" -#: cps/render_template.py:87 cps/templates/user_table.html:155 +#: cps/render_template.py:86 cps/templates/user_table.html:155 msgid "Show language selection" msgstr "언어별 보기" -#: cps/render_template.py:88 cps/templates/index.xml:104 +#: cps/render_template.py:87 cps/templates/index.xml:104 msgid "Ratings" msgstr "평점" -#: cps/render_template.py:90 cps/templates/user_table.html:164 +#: cps/render_template.py:89 cps/templates/user_table.html:164 msgid "Show ratings selection" msgstr "평점별 보기" -#: cps/render_template.py:91 cps/templates/index.xml:112 +#: cps/render_template.py:90 cps/templates/index.xml:112 msgid "File formats" msgstr "파일 유형" -#: cps/render_template.py:93 cps/templates/user_table.html:165 +#: cps/render_template.py:92 cps/templates/user_table.html:165 msgid "Show file formats selection" msgstr "파일 유형별 보기" -#: cps/render_template.py:95 cps/web.py:755 +#: cps/render_template.py:94 cps/web.py:765 msgid "Archived Books" msgstr "보관된 책" -#: cps/render_template.py:97 cps/templates/user_table.html:166 +#: cps/render_template.py:96 cps/templates/user_table.html:166 msgid "Show archived books" msgstr "보관된 책 보기" -#: cps/render_template.py:100 cps/web.py:837 +#: cps/render_template.py:99 cps/web.py:796 msgid "Books List" msgstr "책 목록" -#: cps/render_template.py:102 cps/templates/user_table.html:168 +#: cps/render_template.py:101 cps/templates/user_table.html:168 msgid "Show Books List" msgstr "책 목록 보기" -#: cps/shelf.py:67 cps/shelf.py:121 -msgid "Invalid shelf specified" -msgstr "잘못된 책장 지정" - -#: cps/shelf.py:73 -msgid "Sorry you are not allowed to add a book to that shelf" -msgstr "죄송합니다. 해당 책장에 책을 추가할 권한이 없습니다" - -#: cps/shelf.py:82 -#, python-format -msgid "Book is already part of the shelf: %(shelfname)s" -msgstr "책이 이미 책장에 등록됨: %(shelfname)s" - -#: cps/shelf.py:107 -#, python-format -msgid "Book has been added to shelf: %(sname)s" -msgstr "책장에 책이 등록됨: %(sname)s" - -#: cps/shelf.py:126 -msgid "You are not allowed to add a book to the shelf" -msgstr "책장에 책을 추가할 권한이 없습니다" - -#: cps/shelf.py:144 -#, python-format -msgid "Books are already part of the shelf: %(name)s" -msgstr "책장에 이미 책이 등록됨: %(name)s" - -#: cps/shelf.py:156 -#, python-format -msgid "Books have been added to shelf: %(sname)s" -msgstr "책이 책장에 등록됨: %(sname)s" - -#: cps/shelf.py:163 -#, python-format -msgid "Could not add books to shelf: %(sname)s" -msgstr "책장에 책을 추가할 수 없음: %(sname)s" - -#: cps/shelf.py:209 -#, python-format -msgid "Book has been removed from shelf: %(sname)s" -msgstr "책이 책장에서 삭제됨: %(sname)s" - -#: cps/shelf.py:218 -msgid "Sorry you are not allowed to remove a book from this shelf" -msgstr "죄송합니다. 이 서가에서 책을 삭제할 권한이 없습니다" - -#: cps/shelf.py:228 cps/templates/layout.html:140 -msgid "Create a Shelf" -msgstr "책장 추가" - -#: cps/shelf.py:236 -msgid "Sorry you are not allowed to edit this shelf" -msgstr "죄송합니다. 이 책장을 편집할 권한이 없습니다" - -#: cps/shelf.py:238 -msgid "Edit a shelf" -msgstr "책장 편집" - -#: cps/shelf.py:248 -msgid "Sorry you are not allowed to create a public shelf" -msgstr "죄송합니다. 이 공개 책장을 만들 권한이 없습니다" - -#: cps/shelf.py:265 -#, python-format -msgid "Shelf %(title)s created" -msgstr "%(title)s 책장이 추가됨" - -#: cps/shelf.py:268 -#, python-format -msgid "Shelf %(title)s changed" -msgstr "%(title)s 책장이 변경됨" - -#: cps/shelf.py:282 -msgid "There was an error" -msgstr "오류가 발생하였습니다" - -#: cps/shelf.py:304 -#, python-format -msgid "A public shelf with the name '%(title)s' already exists." -msgstr "이름이 '%(title)s'인 공개 책장이 이미 있습니다." - -#: cps/shelf.py:315 -#, python-format -msgid "A private shelf with the name '%(title)s' already exists." -msgstr "이름이 '%(title)s'인 개인 책장이 이미 있습니다." - -#: cps/shelf.py:337 -msgid "Error deleting Shelf" -msgstr "" - -#: cps/shelf.py:339 -#, fuzzy -msgid "Shelf successfully deleted" -msgstr "책이 성공적으로 삭제되었습니다" - -#: cps/shelf.py:389 -#, python-format -msgid "Change order of Shelf: '%(name)s'" -msgstr "책장 순서 변경: '%(name)s'" - -#: cps/shelf.py:461 -#, python-format -msgid "Shelf: '%(name)s'" -msgstr "책장: '%(name)s'" - -#: cps/shelf.py:465 -msgid "Error opening shelf. Shelf does not exist or is not accessible" -msgstr "책장을 여는 동안 오류가 발생했습니다. 책장이 존재하지 않거나 접근할 수 없습니다" - -#: cps/updater.py:426 cps/updater.py:437 cps/updater.py:538 cps/updater.py:553 -msgid "Unexpected data while reading update information" -msgstr "업데이트 정보를 읽는 동안 예기치 않은 데이터" - -#: cps/updater.py:433 cps/updater.py:545 -msgid "No update available. You already have the latest version installed" -msgstr "업데이트가 없습니다. 이미 최신 버전이 설치되어 있습니다" - -#: cps/updater.py:451 -msgid "A new update is available. Click on the button below to update to the latest version." -msgstr "새로운 업데이트가 있습니다. 아래 버튼을 클릭하여 최신 버전으로 업데이트하십시오." - -#: cps/updater.py:469 -msgid "Could not fetch update information" -msgstr "업데이트 정보를 가져올 수 없습니다" - -#: cps/updater.py:479 -msgid "Click on the button below to update to the latest stable version." -msgstr "새로운 업데이트가 있습니다. 아래 버튼을 클릭하여 최신 버전으로 업데이트하십시오." - -#: cps/updater.py:488 cps/updater.py:502 cps/updater.py:513 -#, python-format -msgid "A new update is available. Click on the button below to update to version: %(version)s" -msgstr "최신 안정 버전 %(version)s으로 업데이트하려면 아래 버튼을 클릭하세요" - -#: cps/updater.py:531 -msgid "No release information available" -msgstr "출시 정보가 없습니다" - -#: cps/templates/index.html:5 cps/web.py:434 -msgid "Discover (Random Books)" -msgstr "발견(무작위 도서)" - -#: cps/web.py:470 -msgid "Hot Books (Most Downloaded)" -msgstr "인기있는 책(가장 많이 다운로드됨)" - -#: cps/web.py:501 -#, python-format -msgid "Downloaded books by %(user)s" -msgstr "%(user)s이(가) 다운로드한 책" - -#: cps/web.py:534 -#, python-format -msgid "Author: %(name)s" -msgstr "저자: %(name)s" - -#: cps/web.py:570 -#, python-format -msgid "Publisher: %(name)s" -msgstr "출판사: %(name)s" - -#: cps/web.py:598 -#, python-format -msgid "Series: %(serie)s" -msgstr "시리즈: %(serie)s" - -#: cps/web.py:610 -#, python-format -msgid "Rating: %(rating)s stars" -msgstr "평가: %(rating)s 별" - -#: cps/web.py:626 -#, python-format -msgid "File format: %(format)s" -msgstr "파일 유형: %(format)s" - -#: cps/web.py:663 -#, python-format -msgid "Category: %(name)s" -msgstr "카테고리: %(name)s" - -#: cps/web.py:690 -#, python-format -msgid "Language: %(name)s" -msgstr "언어: %(name)s" - -#: cps/templates/layout.html:56 cps/web.py:789 cps/web.py:1444 -msgid "Advanced Search" -msgstr "상세 검색" - -#: cps/templates/book_edit.html:235 cps/templates/feed.xml:33 -#: cps/templates/index.xml:11 cps/templates/layout.html:45 -#: cps/templates/layout.html:48 cps/templates/search_form.html:226 -#: cps/web.py:807 cps/web.py:1164 +#: cps/search.py:48 cps/search.py:414 cps/templates/book_edit.html:236 +#: cps/templates/feed.xml:33 cps/templates/index.xml:11 +#: cps/templates/layout.html:46 cps/templates/layout.html:49 +#: cps/templates/search_form.html:226 msgid "Search" msgstr "검색" -#: cps/templates/admin.html:16 cps/web.py:979 -msgid "Downloads" -msgstr "다운로드" - -#: cps/web.py:1068 -msgid "Ratings list" -msgstr "평점 목록" - -#: cps/web.py:1095 -msgid "File formats list" -msgstr "파일 유형 목록" - -#: cps/templates/layout.html:73 cps/templates/tasks.html:7 cps/web.py:1149 -msgid "Tasks" -msgstr "작업" - -#: cps/web.py:1286 +#: cps/search.py:194 msgid "Published after " msgstr "Published after " -#: cps/web.py:1293 +#: cps/search.py:201 msgid "Published before " msgstr "Published before " -#: cps/web.py:1315 +#: cps/search.py:223 #, python-format msgid "Rating <= %(rating)s" msgstr "평점 <= %(rating)s" -#: cps/web.py:1317 +#: cps/search.py:225 #, python-format msgid "Rating >= %(rating)s" msgstr "평점 >= %(rating)s" -#: cps/web.py:1319 +#: cps/search.py:227 #, python-format msgid "Read Status = %(status)s" msgstr "읽은 상태 = %(status)s" -#: cps/web.py:1425 +#: cps/search.py:345 msgid "Error on search for custom columns, please restart Calibre-Web" msgstr "사용자 정의 열을 검색하는 동안 오류가 발생했습니다. Calibre-Web을 다시 시작하십시오" -#: cps/web.py:1527 +#: cps/search.py:364 cps/search.py:396 cps/templates/layout.html:57 +msgid "Advanced Search" +msgstr "상세 검색" + +#: cps/shelf.py:49 cps/shelf.py:103 +msgid "Invalid shelf specified" +msgstr "잘못된 책장 지정" + +#: cps/shelf.py:55 +msgid "Sorry you are not allowed to add a book to that shelf" +msgstr "죄송합니다. 해당 책장에 책을 추가할 권한이 없습니다" + +#: cps/shelf.py:64 +#, python-format +msgid "Book is already part of the shelf: %(shelfname)s" +msgstr "책이 이미 책장에 등록됨: %(shelfname)s" + +#: cps/shelf.py:89 +#, python-format +msgid "Book has been added to shelf: %(sname)s" +msgstr "책장에 책이 등록됨: %(sname)s" + +#: cps/shelf.py:108 +msgid "You are not allowed to add a book to the shelf" +msgstr "책장에 책을 추가할 권한이 없습니다" + +#: cps/shelf.py:126 +#, python-format +msgid "Books are already part of the shelf: %(name)s" +msgstr "책장에 이미 책이 등록됨: %(name)s" + +#: cps/shelf.py:138 +#, python-format +msgid "Books have been added to shelf: %(sname)s" +msgstr "책이 책장에 등록됨: %(sname)s" + +#: cps/shelf.py:145 +#, python-format +msgid "Could not add books to shelf: %(sname)s" +msgstr "책장에 책을 추가할 수 없음: %(sname)s" + +#: cps/shelf.py:191 +#, python-format +msgid "Book has been removed from shelf: %(sname)s" +msgstr "책이 책장에서 삭제됨: %(sname)s" + +#: cps/shelf.py:200 +msgid "Sorry you are not allowed to remove a book from this shelf" +msgstr "죄송합니다. 이 서가에서 책을 삭제할 권한이 없습니다" + +#: cps/shelf.py:210 cps/templates/layout.html:141 +msgid "Create a Shelf" +msgstr "책장 추가" + +#: cps/shelf.py:218 +msgid "Sorry you are not allowed to edit this shelf" +msgstr "죄송합니다. 이 책장을 편집할 권한이 없습니다" + +#: cps/shelf.py:220 +msgid "Edit a shelf" +msgstr "책장 편집" + +#: cps/shelf.py:229 +msgid "Error deleting Shelf" +msgstr "" + +#: cps/shelf.py:231 +#, fuzzy +msgid "Shelf successfully deleted" +msgstr "책이 성공적으로 삭제되었습니다" + +#: cps/shelf.py:281 +#, python-format +msgid "Change order of Shelf: '%(name)s'" +msgstr "책장 순서 변경: '%(name)s'" + +#: cps/shelf.py:313 +msgid "Sorry you are not allowed to create a public shelf" +msgstr "죄송합니다. 이 공개 책장을 만들 권한이 없습니다" + +#: cps/shelf.py:330 +#, python-format +msgid "Shelf %(title)s created" +msgstr "%(title)s 책장이 추가됨" + +#: cps/shelf.py:333 +#, python-format +msgid "Shelf %(title)s changed" +msgstr "%(title)s 책장이 변경됨" + +#: cps/shelf.py:347 +msgid "There was an error" +msgstr "오류가 발생하였습니다" + +#: cps/shelf.py:369 +#, python-format +msgid "A public shelf with the name '%(title)s' already exists." +msgstr "이름이 '%(title)s'인 공개 책장이 이미 있습니다." + +#: cps/shelf.py:380 +#, python-format +msgid "A private shelf with the name '%(title)s' already exists." +msgstr "이름이 '%(title)s'인 개인 책장이 이미 있습니다." + +#: cps/shelf.py:462 +#, python-format +msgid "Shelf: '%(name)s'" +msgstr "책장: '%(name)s'" + +#: cps/shelf.py:466 +msgid "Error opening shelf. Shelf does not exist or is not accessible" +msgstr "책장을 여는 동안 오류가 발생했습니다. 책장이 존재하지 않거나 접근할 수 없습니다" + +#: cps/tasks_status.py:48 cps/templates/layout.html:74 +#: cps/templates/tasks.html:7 +msgid "Tasks" +msgstr "작업" + +#: cps/tasks_status.py:64 +msgid "Waiting" +msgstr "대기중" + +#: cps/tasks_status.py:66 +msgid "Failed" +msgstr "실패" + +#: cps/tasks_status.py:68 +msgid "Started" +msgstr "시작됨" + +#: cps/tasks_status.py:70 +msgid "Finished" +msgstr "종료" + +#: cps/tasks_status.py:72 +msgid "Ended" +msgstr "" + +#: cps/tasks_status.py:74 +msgid "Cancelled" +msgstr "" + +#: cps/tasks_status.py:76 +msgid "Unknown Status" +msgstr "알 수 없는 상태" + +#: cps/updater.py:431 cps/updater.py:442 cps/updater.py:543 cps/updater.py:558 +msgid "Unexpected data while reading update information" +msgstr "업데이트 정보를 읽는 동안 예기치 않은 데이터" + +#: cps/updater.py:438 cps/updater.py:550 +msgid "No update available. You already have the latest version installed" +msgstr "업데이트가 없습니다. 이미 최신 버전이 설치되어 있습니다" + +#: cps/updater.py:456 +msgid "A new update is available. Click on the button below to update to the latest version." +msgstr "새로운 업데이트가 있습니다. 아래 버튼을 클릭하여 최신 버전으로 업데이트하십시오." + +#: cps/updater.py:474 +msgid "Could not fetch update information" +msgstr "업데이트 정보를 가져올 수 없습니다" + +#: cps/updater.py:484 +msgid "Click on the button below to update to the latest stable version." +msgstr "새로운 업데이트가 있습니다. 아래 버튼을 클릭하여 최신 버전으로 업데이트하십시오." + +#: cps/updater.py:493 cps/updater.py:507 cps/updater.py:518 +#, python-format +msgid "A new update is available. Click on the button below to update to version: %(version)s" +msgstr "최신 안정 버전 %(version)s으로 업데이트하려면 아래 버튼을 클릭하세요" + +#: cps/updater.py:536 +msgid "No release information available" +msgstr "출시 정보가 없습니다" + +#: cps/templates/index.html:6 cps/web.py:432 +msgid "Discover (Random Books)" +msgstr "발견(무작위 도서)" + +#: cps/web.py:468 +msgid "Hot Books (Most Downloaded)" +msgstr "인기있는 책(가장 많이 다운로드됨)" + +#: cps/web.py:499 +#, python-format +msgid "Downloaded books by %(user)s" +msgstr "%(user)s이(가) 다운로드한 책" + +#: cps/web.py:532 +#, python-format +msgid "Author: %(name)s" +msgstr "저자: %(name)s" + +#: cps/web.py:568 +#, python-format +msgid "Publisher: %(name)s" +msgstr "출판사: %(name)s" + +#: cps/web.py:596 +#, python-format +msgid "Series: %(serie)s" +msgstr "시리즈: %(serie)s" + +#: cps/web.py:609 +msgid "Rating: None" +msgstr "" + +#: cps/web.py:618 +#, python-format +msgid "Rating: %(rating)s stars" +msgstr "평가: %(rating)s 별" + +#: cps/web.py:636 +#, python-format +msgid "File format: %(format)s" +msgstr "파일 유형: %(format)s" + +#: cps/web.py:673 +#, python-format +msgid "Category: %(name)s" +msgstr "카테고리: %(name)s" + +#: cps/web.py:700 +#, python-format +msgid "Language: %(name)s" +msgstr "언어: %(name)s" + +#: cps/templates/admin.html:16 cps/web.py:938 +msgid "Downloads" +msgstr "다운로드" + +#: cps/web.py:1030 +msgid "Ratings list" +msgstr "평점 목록" + +#: cps/web.py:1057 +msgid "File formats list" +msgstr "파일 유형 목록" + +#: cps/web.py:1199 #, python-format msgid "Book successfully queued for sending to %(kindlemail)s" msgstr "성공적으로 %(kindlemail)s에 보내기 예약이 되었습니다" -#: cps/web.py:1531 +#: cps/web.py:1203 #, python-format msgid "Oops! There was an error sending this book: %(res)s" msgstr "책을 보내는 중에 오류 발생: %(res)s" -#: cps/web.py:1533 +#: cps/web.py:1205 msgid "Please update your profile with a valid Send to Kindle E-mail Address." msgstr "Kindle로 보내는 유효한 이메일 주소로 프로필을 업데이트하십시오." -#: cps/web.py:1550 +#: cps/web.py:1222 msgid "E-Mail server is not configured, please contact your administrator!" msgstr "이메일 서버가 구성되지 않았습니다. 관리자에게 문의하십시오!" -#: cps/templates/layout.html:85 cps/templates/register.html:17 cps/web.py:1551 -#: cps/web.py:1558 cps/web.py:1564 cps/web.py:1583 cps/web.py:1587 -#: cps/web.py:1593 +#: cps/templates/layout.html:86 cps/templates/register.html:17 cps/web.py:1223 +#: cps/web.py:1230 cps/web.py:1236 cps/web.py:1255 cps/web.py:1260 +#: cps/web.py:1266 msgid "Register" msgstr "등록" -#: cps/web.py:1585 +#: cps/web.py:1257 msgid "Your e-mail is not allowed to register" msgstr "이메일을 등록할 수 없습니다" -#: cps/web.py:1588 +#: cps/web.py:1261 msgid "Confirmation e-mail was send to your e-mail account." msgstr "확인을 위한 이메일이 발송되었습니다." -#: cps/web.py:1602 +#: cps/web.py:1275 msgid "Cannot activate LDAP authentication" msgstr "LDAP 인증을 활성화할 수 없습니다" -#: cps/web.py:1621 +#: cps/web.py:1294 #, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgstr "대체 로그인: '%(nickname)s', LDAP 서버에 연결할 수 없음 또는 사용자를 알 수 없음" -#: cps/web.py:1627 +#: cps/web.py:1300 #, python-format msgid "Could not login: %(message)s" msgstr "로그인 실패: %(message)s" -#: cps/web.py:1631 cps/web.py:1656 +#: cps/web.py:1304 cps/web.py:1329 msgid "Wrong Username or Password" msgstr "잘못된 사용자명 또는 비밀번호" -#: cps/web.py:1638 +#: cps/web.py:1311 msgid "New Password was send to your email address" msgstr "새 비밀번호가 이메일로 전송되었습니다" -#: cps/web.py:1644 +#: cps/web.py:1317 msgid "Please enter valid username to reset password" msgstr "비밀번호를 재설정하려면 유효한 사용자 이름을 입력하십시오" -#: cps/web.py:1651 +#: cps/web.py:1324 #, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "다음 사용자로 로그인: '%(nickname)s" -#: cps/web.py:1717 cps/web.py:1766 +#: cps/web.py:1388 cps/web.py:1437 #, python-format msgid "%(name)s's profile" msgstr "%(name)s 프로필" -#: cps/web.py:1733 +#: cps/web.py:1404 msgid "Profile updated" msgstr "프로필이 업데이트 됨" @@ -1332,40 +1370,75 @@ msgstr "프로필이 업데이트 됨" msgid "Found no valid gmail.json file with OAuth information" msgstr "인증 정보가 포함된 유효한 gmail.json 파일을 찾을 수 없습니다" -#: cps/tasks/convert.py:154 +#: cps/tasks/convert.py:153 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "Calibre ebook-convert %(tool)s을(를) 찾을 수 없습니다" -#: cps/tasks/convert.py:187 +#: cps/tasks/convert.py:186 #, python-format msgid "%(format)s format not found on disk" msgstr "%(format)s 형식을 찾을 수 없습니다" -#: cps/tasks/convert.py:191 +#: cps/tasks/convert.py:190 msgid "Ebook converter failed with unknown error" msgstr "알 수 없는 오류로 인해 전자책 변환이 실패했습니다" -#: cps/tasks/convert.py:201 +#: cps/tasks/convert.py:200 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "Kepubify 변환 실패: %(error)s" -#: cps/tasks/convert.py:223 +#: cps/tasks/convert.py:222 #, python-format msgid "Converted file not found or more than one file in folder %(folder)s" msgstr "변환된 파일을 찾을 수 없거나 %(folder)s 폴더에 하나 이상의 파일이 존재합니다" -#: cps/tasks/convert.py:246 +#: cps/tasks/convert.py:245 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "\"전자책 변환 실패: %(error)s" -#: cps/tasks/convert.py:269 +#: cps/tasks/convert.py:268 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "오류로 인한 Calibre 실패: %(error)s" +#: cps/tasks/convert.py:273 +msgid "Convert" +msgstr "" + +#: cps/tasks/database.py:28 +msgid "Reconnecting Calibre database" +msgstr "" + +#: cps/tasks/mail.py:265 +msgid "E-mail" +msgstr "" + +#: cps/tasks/thumbnail.py:95 +#, python-format +msgid "Generated %(count)s cover thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:222 cps/tasks/thumbnail.py:435 +#: cps/tasks/thumbnail.py:503 +msgid "Cover Thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:281 +msgid "Generated {0} series thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:446 +msgid "Clearing cover thumbnail cache" +msgstr "" + +#: cps/tasks/upload.py:38 cps/templates/admin.html:20 +#: cps/templates/layout.html:67 cps/templates/user_table.html:145 +msgid "Upload" +msgstr "업로드" + #: cps/templates/admin.html:9 msgid "Users" msgstr "사용자" @@ -1385,7 +1458,7 @@ msgstr "이메일 주소" msgid "Send to Kindle E-mail Address" msgstr "킨들로 보내기 이메일 주소" -#: cps/templates/admin.html:17 cps/templates/layout.html:76 +#: cps/templates/admin.html:17 cps/templates/layout.html:77 #: cps/templates/user_table.html:143 msgid "Admin" msgstr "관리자" @@ -1395,13 +1468,8 @@ msgstr "관리자" msgid "Password" msgstr "비밀번호" -#: cps/templates/admin.html:20 cps/templates/layout.html:66 -#: cps/templates/user_table.html:145 -msgid "Upload" -msgstr "업로드" - -#: cps/templates/admin.html:22 cps/templates/detail.html:18 -#: cps/templates/detail.html:27 cps/templates/shelf.html:7 +#: cps/templates/admin.html:22 cps/templates/detail.html:19 +#: cps/templates/detail.html:28 cps/templates/shelf.html:8 #: cps/templates/user_table.html:146 msgid "Download" msgstr "다운로드" @@ -1415,7 +1483,7 @@ msgstr "책 보기" msgid "Edit" msgstr "편집" -#: cps/templates/admin.html:25 cps/templates/book_edit.html:16 +#: cps/templates/admin.html:25 cps/templates/book_edit.html:17 #: cps/templates/book_table.html:100 cps/templates/modal_dialogs.html:63 #: cps/templates/modal_dialogs.html:116 cps/templates/user_edit.html:67 #: cps/templates/user_table.html:149 @@ -1527,78 +1595,107 @@ msgstr "기본 환경 설정 편집" msgid "Edit UI Configuration" msgstr "UI 환경 설정 편집" -#: cps/templates/admin.html:166 +#: cps/templates/admin.html:167 +msgid "Scheduled Tasks" +msgstr "" + +#: cps/templates/admin.html:170 cps/templates/schedule_edit.html:12 +msgid "Time at which tasks start to run" +msgstr "" + +#: cps/templates/admin.html:174 cps/templates/schedule_edit.html:20 +msgid "Maximum tasks duration" +msgstr "" + +#: cps/templates/admin.html:178 +msgid "Generate book cover thumbnails" +msgstr "" + +#: cps/templates/admin.html:182 +msgid "Generate series cover thumbnails" +msgstr "" + +#: cps/templates/admin.html:186 cps/templates/schedule_edit.html:37 +msgid "Reconnect to Calibre Library" +msgstr "" + +#: cps/templates/admin.html:193 +msgid "Refresh Thumbnail Cover Cache" +msgstr "" + +#: cps/templates/admin.html:199 msgid "Administration" msgstr "관리" -#: cps/templates/admin.html:167 +#: cps/templates/admin.html:200 msgid "Download Debug Package" msgstr "Debug Package 다운로드" -#: cps/templates/admin.html:168 +#: cps/templates/admin.html:201 msgid "View Logs" msgstr "로그 보기" -#: cps/templates/admin.html:171 +#: cps/templates/admin.html:204 msgid "Reconnect Calibre Database" msgstr "Calibre DB 다시 연결" -#: cps/templates/admin.html:172 +#: cps/templates/admin.html:207 msgid "Restart" msgstr "재시작" -#: cps/templates/admin.html:173 +#: cps/templates/admin.html:208 msgid "Shutdown" msgstr "종료" -#: cps/templates/admin.html:178 -msgid "Update" -msgstr "업데이트" +#: cps/templates/admin.html:213 +msgid "Version Information" +msgstr "" -#: cps/templates/admin.html:182 +#: cps/templates/admin.html:217 msgid "Version" msgstr "버전" -#: cps/templates/admin.html:183 +#: cps/templates/admin.html:218 msgid "Details" msgstr "세부 정보" -#: cps/templates/admin.html:189 +#: cps/templates/admin.html:224 msgid "Current version" msgstr "현재 버전" -#: cps/templates/admin.html:196 +#: cps/templates/admin.html:231 msgid "Check for Update" msgstr "업데이트 확인" -#: cps/templates/admin.html:197 +#: cps/templates/admin.html:232 msgid "Perform Update" msgstr "업데이트 실행" -#: cps/templates/admin.html:210 +#: cps/templates/admin.html:245 msgid "Are you sure you want to restart?" msgstr "재시작을 하시겠습니까?" -#: cps/templates/admin.html:215 cps/templates/admin.html:229 -#: cps/templates/admin.html:249 cps/templates/config_db.html:70 +#: cps/templates/admin.html:250 cps/templates/admin.html:264 +#: cps/templates/admin.html:284 cps/templates/config_db.html:70 msgid "OK" msgstr "예" -#: cps/templates/admin.html:216 cps/templates/admin.html:230 -#: cps/templates/book_edit.html:213 cps/templates/book_table.html:127 +#: cps/templates/admin.html:251 cps/templates/admin.html:265 +#: cps/templates/book_edit.html:214 cps/templates/book_table.html:127 #: cps/templates/config_db.html:54 cps/templates/config_edit.html:359 #: 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/shelf_edit.html:27 +#: cps/templates/modal_dialogs.html:135 cps/templates/schedule_edit.html:41 +#: cps/templates/shelf_edit.html:27 cps/templates/tasks.html:46 #: cps/templates/user_edit.html:144 msgid "Cancel" msgstr "취소" -#: cps/templates/admin.html:228 +#: cps/templates/admin.html:263 msgid "Are you sure you want to shutdown?" msgstr "종료를 하시겠습니까?" -#: cps/templates/admin.html:240 +#: cps/templates/admin.html:275 msgid "Updating, please do not reload this page" msgstr "Встановлення оновлень, будь-ласка, не оновлюйте сторінку" @@ -1610,39 +1707,39 @@ msgstr "via" msgid "In Library" msgstr "In Library" -#: cps/templates/author.html:26 cps/templates/index.html:73 -#: cps/templates/search.html:30 cps/templates/shelf.html:19 +#: cps/templates/author.html:26 cps/templates/index.html:74 +#: cps/templates/search.html:31 cps/templates/shelf.html:20 msgid "Sort according to book date, newest first" msgstr "책 목록 정렬, 최신순" -#: cps/templates/author.html:27 cps/templates/index.html:74 -#: cps/templates/search.html:31 cps/templates/shelf.html:20 +#: cps/templates/author.html:27 cps/templates/index.html:75 +#: cps/templates/search.html:32 cps/templates/shelf.html:21 msgid "Sort according to book date, oldest first" msgstr "책 목록 정렬, 오래된 순" -#: cps/templates/author.html:28 cps/templates/index.html:75 -#: cps/templates/search.html:32 cps/templates/shelf.html:21 +#: cps/templates/author.html:28 cps/templates/index.html:76 +#: cps/templates/search.html:33 cps/templates/shelf.html:22 msgid "Sort title in alphabetical order" msgstr "가나다 순 정렬" -#: cps/templates/author.html:29 cps/templates/index.html:76 -#: cps/templates/search.html:33 cps/templates/shelf.html:22 +#: cps/templates/author.html:29 cps/templates/index.html:77 +#: cps/templates/search.html:34 cps/templates/shelf.html:23 msgid "Sort title in reverse alphabetical order" msgstr "가나다 역순 정렬" -#: cps/templates/author.html:30 cps/templates/index.html:79 -#: cps/templates/search.html:36 cps/templates/shelf.html:25 +#: cps/templates/author.html:30 cps/templates/index.html:80 +#: cps/templates/search.html:37 cps/templates/shelf.html:26 msgid "Sort according to publishing date, newest first" msgstr "발행일 순으로 정렬, 최신순" -#: cps/templates/author.html:31 cps/templates/index.html:80 -#: cps/templates/search.html:37 cps/templates/shelf.html:26 +#: cps/templates/author.html:31 cps/templates/index.html:81 +#: cps/templates/search.html:38 cps/templates/shelf.html:27 msgid "Sort according to publishing date, oldest first" msgstr "발행일 순으로 정렬, 오래된 순" #: cps/templates/author.html:56 cps/templates/author.html:115 -#: cps/templates/index.html:29 cps/templates/index.html:112 -#: cps/templates/search.html:66 cps/templates/shelf.html:54 +#: cps/templates/index.html:30 cps/templates/index.html:113 +#: cps/templates/search.html:67 cps/templates/shelf.html:55 msgid "reduce" msgstr "reduce" @@ -1650,164 +1747,165 @@ msgstr "reduce" msgid "More by" msgstr "More by" -#: cps/templates/book_edit.html:10 +#: cps/templates/book_edit.html:11 msgid "Delete Book" msgstr "책 삭제" -#: cps/templates/book_edit.html:13 +#: cps/templates/book_edit.html:14 msgid "Delete formats:" msgstr "유형 삭제:" -#: cps/templates/book_edit.html:24 +#: cps/templates/book_edit.html:25 msgid "Convert book format:" msgstr "책 유형 변경:" -#: cps/templates/book_edit.html:29 +#: cps/templates/book_edit.html:30 msgid "Convert from:" msgstr "변경전 유형:" -#: cps/templates/book_edit.html:31 cps/templates/book_edit.html:38 +#: cps/templates/book_edit.html:32 cps/templates/book_edit.html:39 msgid "select an option" msgstr "옵션 선택" -#: cps/templates/book_edit.html:36 +#: cps/templates/book_edit.html:37 msgid "Convert to:" msgstr "변경후 유형:" -#: cps/templates/book_edit.html:45 +#: cps/templates/book_edit.html:46 msgid "Convert book" msgstr "책 변경" -#: cps/templates/book_edit.html:55 cps/templates/search_form.html:8 +#: cps/templates/book_edit.html:56 cps/templates/search_form.html:8 msgid "Book Title" msgstr "책 제목" -#: cps/templates/book_edit.html:62 cps/templates/book_edit.html:270 -#: cps/templates/book_edit.html:288 cps/templates/search_form.html:12 +#: cps/templates/book_edit.html:63 cps/templates/book_edit.html:271 +#: cps/templates/book_edit.html:289 cps/templates/search_form.html:12 msgid "Author" msgstr "저자" -#: cps/templates/book_edit.html:67 cps/templates/book_edit.html:275 -#: cps/templates/book_edit.html:290 cps/templates/search_form.html:153 +#: cps/templates/book_edit.html:68 cps/templates/book_edit.html:276 +#: cps/templates/book_edit.html:291 cps/templates/search_form.html:153 msgid "Description" msgstr "책 소개" -#: cps/templates/book_edit.html:72 +#: cps/templates/book_edit.html:73 msgid "Identifiers" msgstr "식별자" -#: cps/templates/book_edit.html:76 cps/templates/book_edit.html:299 +#: cps/templates/book_edit.html:77 cps/templates/book_edit.html:300 msgid "Identifier Type" msgstr "식별자 유형" -#: cps/templates/book_edit.html:77 cps/templates/book_edit.html:300 +#: cps/templates/book_edit.html:78 cps/templates/book_edit.html:301 msgid "Identifier Value" msgstr "식별자 값" -#: cps/templates/book_edit.html:78 cps/templates/book_edit.html:301 +#: cps/templates/book_edit.html:79 cps/templates/book_edit.html:302 #: cps/templates/user_table.html:24 msgid "Remove" msgstr "삭제" -#: cps/templates/book_edit.html:82 +#: cps/templates/book_edit.html:83 msgid "Add Identifier" msgstr "식별자 추가" -#: cps/templates/book_edit.html:86 cps/templates/search_form.html:51 +#: cps/templates/book_edit.html:87 cps/templates/search_form.html:51 msgid "Tags" msgstr "태그" -#: cps/templates/book_edit.html:94 +#: cps/templates/book_edit.html:95 msgid "Series ID" msgstr "시리즈 ID" -#: cps/templates/book_edit.html:98 +#: cps/templates/book_edit.html:99 msgid "Rating" msgstr "평점" -#: cps/templates/book_edit.html:103 +#: cps/templates/book_edit.html:104 msgid "Fetch Cover from URL (JPEG - Image will be downloaded and stored in database)" msgstr "URL로 표지 추가(JPEG - 이미지를 다운로드 하여 DB에 저장합니다)" -#: cps/templates/book_edit.html:107 +#: cps/templates/book_edit.html:108 msgid "Upload Cover from Local Disk" msgstr "로컬 디스크에서 표지 업로드" -#: cps/templates/book_edit.html:112 +#: cps/templates/book_edit.html:113 msgid "Published Date" msgstr "출간일" -#: cps/templates/book_edit.html:121 cps/templates/book_edit.html:272 -#: cps/templates/book_edit.html:289 cps/templates/detail.html:164 +#: cps/templates/book_edit.html:122 cps/templates/book_edit.html:273 +#: cps/templates/book_edit.html:290 cps/templates/detail.html:165 #: cps/templates/search_form.html:16 msgid "Publisher" msgstr "출판사" -#: cps/templates/book_edit.html:125 cps/templates/detail.html:131 +#: cps/templates/book_edit.html:126 cps/templates/detail.html:132 #: cps/templates/user_edit.html:33 msgid "Language" msgstr "언어" -#: cps/templates/book_edit.html:135 cps/templates/search_form.html:45 +#: cps/templates/book_edit.html:136 cps/templates/search_form.html:45 #: cps/templates/search_form.html:164 msgid "Yes" msgstr "예" -#: cps/templates/book_edit.html:136 cps/templates/search_form.html:46 +#: cps/templates/book_edit.html:137 cps/templates/search_form.html:46 #: cps/templates/search_form.html:165 msgid "No" msgstr "아니오" -#: cps/templates/book_edit.html:200 +#: cps/templates/book_edit.html:201 msgid "Upload Format" msgstr "업로드 유형" -#: cps/templates/book_edit.html:208 +#: cps/templates/book_edit.html:209 msgid "View Book on Save" msgstr "저장 후 책 보기" -#: cps/templates/book_edit.html:211 cps/templates/book_edit.html:229 +#: cps/templates/book_edit.html:212 cps/templates/book_edit.html:230 msgid "Fetch Metadata" msgstr "메타정보 가져오기" -#: cps/templates/book_edit.html:212 cps/templates/config_db.html:53 +#: cps/templates/book_edit.html:213 cps/templates/config_db.html:53 #: cps/templates/config_edit.html:358 cps/templates/config_view_edit.html:174 -#: cps/templates/email_edit.html:65 cps/templates/shelf_edit.html:25 -#: cps/templates/shelf_order.html:41 cps/templates/user_edit.html:142 +#: cps/templates/email_edit.html:65 cps/templates/schedule_edit.html:40 +#: cps/templates/shelf_edit.html:25 cps/templates/shelf_order.html:41 +#: cps/templates/user_edit.html:142 msgid "Save" msgstr "저장" -#: cps/templates/book_edit.html:232 +#: cps/templates/book_edit.html:233 msgid "Keyword" msgstr "키워드" -#: cps/templates/book_edit.html:233 +#: cps/templates/book_edit.html:234 msgid "Search keyword" msgstr "키워드 검색" -#: cps/templates/book_edit.html:239 +#: cps/templates/book_edit.html:240 msgid "Click the cover to load metadata to the form" msgstr "표지를 클릭하여 양식에 메타데이터 로드" -#: cps/templates/book_edit.html:246 cps/templates/book_edit.html:285 +#: cps/templates/book_edit.html:247 cps/templates/book_edit.html:286 msgid "Loading..." msgstr "불러오는 중..." -#: cps/templates/book_edit.html:250 cps/templates/layout.html:63 -#: cps/templates/layout.html:186 cps/templates/modal_dialogs.html:34 +#: cps/templates/book_edit.html:251 cps/templates/layout.html:64 +#: cps/templates/layout.html:187 cps/templates/modal_dialogs.html:34 #: cps/templates/user_edit.html:163 msgid "Close" msgstr "닫기" -#: cps/templates/book_edit.html:277 cps/templates/book_edit.html:291 +#: cps/templates/book_edit.html:278 cps/templates/book_edit.html:292 msgid "Source" msgstr "출처" -#: cps/templates/book_edit.html:286 +#: cps/templates/book_edit.html:287 msgid "Search error!" msgstr "오류 검색!" -#: cps/templates/book_edit.html:287 +#: cps/templates/book_edit.html:288 msgid "No Result(s) found! Please try another keyword." msgstr "검색 결과가 없습니다! 다른 키워드를 시도하십시오." @@ -1914,6 +2012,7 @@ msgid "Enter " msgstr "입력 " #: cps/templates/book_table.html:113 cps/templates/modal_dialogs.html:46 +#: cps/templates/tasks.html:36 msgid "Are you really sure?" msgstr "정말 확신합니까?" @@ -2325,62 +2424,62 @@ msgstr "허용/거부 태그 추가" msgid "Add Allowed/Denied custom column values" msgstr "허용/거부 사용자 정의 열 값 추가" -#: cps/templates/detail.html:60 cps/templates/detail.html:69 +#: cps/templates/detail.html:61 cps/templates/detail.html:70 msgid "Read in Browser" msgstr "부라우저에서 보기" -#: cps/templates/detail.html:77 cps/templates/detail.html:94 +#: cps/templates/detail.html:78 cps/templates/detail.html:95 msgid "Listen in Browser" msgstr "브라우저에서 듣기" -#: cps/templates/detail.html:124 +#: cps/templates/detail.html:125 #, python-format msgid "Book %(index)s of %(range)s" msgstr "책 %(index)s의 %(range)s" -#: cps/templates/detail.html:173 +#: cps/templates/detail.html:174 msgid "Published" msgstr "출간일" -#: cps/templates/detail.html:221 +#: cps/templates/detail.html:222 msgid "Mark As Unread" msgstr "읽지 않은 상태로 표시" -#: cps/templates/detail.html:221 +#: cps/templates/detail.html:222 msgid "Mark As Read" msgstr "읽은 상태로 표시" -#: cps/templates/detail.html:222 +#: cps/templates/detail.html:223 msgid "Read" msgstr "읽기" -#: cps/templates/detail.html:231 +#: cps/templates/detail.html:232 msgid "Restore from archive" msgstr "아카이브에서 복원" -#: cps/templates/detail.html:231 +#: cps/templates/detail.html:232 msgid "Add to archive" msgstr "아카이브에 추가" -#: cps/templates/detail.html:232 +#: cps/templates/detail.html:233 msgid "Archived" msgstr "보관됨" -#: cps/templates/detail.html:243 +#: cps/templates/detail.html:244 msgid "Description:" msgstr "설명:" -#: cps/templates/detail.html:256 cps/templates/search.html:15 +#: cps/templates/detail.html:257 cps/templates/search.html:16 msgid "Add to shelf" msgstr "서재에 추가" -#: cps/templates/detail.html:267 cps/templates/detail.html:284 -#: cps/templates/feed.xml:79 cps/templates/layout.html:137 -#: cps/templates/search.html:21 +#: cps/templates/detail.html:268 cps/templates/detail.html:285 +#: cps/templates/feed.xml:79 cps/templates/layout.html:138 +#: cps/templates/search.html:22 msgid "(Public)" msgstr "(공개)" -#: cps/templates/detail.html:298 +#: cps/templates/detail.html:299 msgid "Edit Metadata" msgstr "메타저오 편집" @@ -2424,7 +2523,7 @@ msgstr "첨부 파일 크기 제한" msgid "Save and Send Test E-mail" msgstr "저장 후 테스트 이메일 보내기" -#: cps/templates/email_edit.html:70 cps/templates/layout.html:29 +#: cps/templates/email_edit.html:70 cps/templates/layout.html:30 #: cps/templates/shelf_order.html:42 cps/templates/user_table.html:174 msgid "Back" msgstr "뒤로" @@ -2450,7 +2549,7 @@ msgstr "도메인 입력" msgid "Denied Domains (Blacklist)" msgstr "거부 도메인(블랙리스트)" -#: cps/templates/feed.xml:21 cps/templates/layout.html:170 +#: cps/templates/feed.xml:21 cps/templates/layout.html:171 msgid "Next" msgstr "다음" @@ -2463,6 +2562,10 @@ msgstr "텍스트 편집기에서 .kobo/Kobo eReader.conf 파일을 열고 다 msgid "Kobo Token:" msgstr "코보 연동 토큰" +#: cps/templates/grid.html:21 +msgid "List" +msgstr "" + #: cps/templates/http_error.html:31 msgid "Calibre-Web Instance is unconfigured, please contact your administrator" msgstr "Calibre-Web Instance가 구성되지 않았습니다. 관리자에게 문의" @@ -2479,29 +2582,29 @@ msgstr "홈으로" msgid "Logout User" msgstr "로그아웃" -#: cps/templates/index.html:70 +#: cps/templates/index.html:71 msgid "Sort ascending according to download count" msgstr "다운로드 횟수에 따라 오름차순 정렬" -#: cps/templates/index.html:71 +#: cps/templates/index.html:72 msgid "Sort descending according to download count" msgstr "다운로드 횟수에 따라 내림차순 정렬" -#: cps/templates/index.html:77 cps/templates/search.html:34 -#: cps/templates/shelf.html:23 +#: cps/templates/index.html:78 cps/templates/search.html:35 +#: cps/templates/shelf.html:24 msgid "Sort authors in alphabetical order" msgstr "저자를 가나다순(알파벳순)으로 정렬" -#: cps/templates/index.html:78 cps/templates/search.html:35 -#: cps/templates/shelf.html:24 +#: cps/templates/index.html:79 cps/templates/search.html:36 +#: cps/templates/shelf.html:25 msgid "Sort authors in reverse alphabetical order" msgstr "저자를 가나다(알파벳) 역순으로 정렬" -#: cps/templates/index.html:82 +#: cps/templates/index.html:83 msgid "Sort ascending according to series index" msgstr "시리즈 인덱스에 따라 오름차순 정렬" -#: cps/templates/index.html:83 +#: cps/templates/index.html:84 msgid "Sort descending according to series index" msgstr "시리즈 인덱스에 따라 내림차순 정렬" @@ -2565,7 +2668,7 @@ msgstr "평점별 정렬" msgid "Books ordered by file formats" msgstr "파일 종류별 정렬" -#: cps/templates/index.xml:119 cps/templates/layout.html:135 +#: cps/templates/index.xml:119 cps/templates/layout.html:136 #: cps/templates/search_form.html:87 msgid "Shelves" msgstr "서재" @@ -2574,63 +2677,67 @@ msgstr "서재" msgid "Books organized in shelves" msgstr "서재별 정렬" -#: cps/templates/layout.html:29 +#: cps/templates/layout.html:30 msgid "Home" msgstr "홈" -#: cps/templates/layout.html:35 +#: cps/templates/layout.html:36 msgid "Toggle Navigation" msgstr "탐색 활성화" -#: cps/templates/layout.html:46 +#: cps/templates/layout.html:47 msgid "Search Library" msgstr "검색" -#: cps/templates/layout.html:63 cps/templates/layout.html:117 +#: cps/templates/layout.html:64 cps/templates/layout.html:118 msgid "Uploading..." msgstr "업로드 중..." -#: cps/templates/layout.html:63 +#: cps/templates/layout.html:64 msgid "Error" msgstr "오류" -#: cps/templates/layout.html:63 +#: cps/templates/layout.html:64 msgid "Upload done, processing, please wait..." msgstr "업로드 완료, 처리 중입니다. 잠시만 기다려 주십시오..." -#: cps/templates/layout.html:76 cps/templates/read.html:72 +#: cps/templates/layout.html:77 cps/templates/read.html:72 #: cps/templates/readcbr.html:84 cps/templates/readcbr.html:108 msgid "Settings" msgstr "설정" -#: cps/templates/layout.html:78 +#: cps/templates/layout.html:79 msgid "Account" msgstr "계정" -#: cps/templates/layout.html:80 +#: cps/templates/layout.html:81 msgid "Logout" msgstr "로그아웃" -#: cps/templates/layout.html:118 +#: cps/templates/layout.html:119 msgid "Please do not refresh the page" msgstr "페이지를 새로고침 하지 마세요" -#: cps/templates/layout.html:128 +#: cps/templates/layout.html:129 msgid "Browse" msgstr "탐색" -#: cps/templates/layout.html:141 cps/templates/stats.html:3 +#: cps/templates/layout.html:142 cps/templates/stats.html:3 msgid "About" msgstr "서재 정보" -#: cps/templates/layout.html:155 +#: cps/templates/layout.html:156 msgid "Previous" msgstr "이전" -#: cps/templates/layout.html:182 +#: cps/templates/layout.html:183 msgid "Book Details" msgstr "책 상세정보" +#: cps/templates/list.html:22 +msgid "Grid" +msgstr "" + #: cps/templates/login.html:18 msgid "Remember Me" msgstr "로그인 유지" @@ -2735,7 +2842,7 @@ msgstr "상위 폴더" msgid "Select" msgstr "선택" -#: cps/templates/modal_dialogs.html:134 +#: cps/templates/modal_dialogs.html:134 cps/templates/tasks.html:45 msgid "Ok" msgstr "Ok" @@ -2911,15 +3018,23 @@ msgstr "승인이 되면 이 장치에 자동으로 로그인됩니다." msgid "This verification link will expire in 10 minutes." msgstr "이 확인 링크는 10분 후에 만료됩니다." -#: cps/templates/search.html:5 +#: cps/templates/schedule_edit.html:29 +msgid "Generate Book Cover Thumbnails" +msgstr "" + +#: cps/templates/schedule_edit.html:33 +msgid "Generate Series Cover Thumbnails" +msgstr "" + +#: cps/templates/search.html:6 msgid "No Results Found" msgstr "결과 없음" -#: cps/templates/search.html:6 +#: cps/templates/search.html:7 msgid "Search Term:" msgstr "검색어:" -#: cps/templates/search.html:8 +#: cps/templates/search.html:9 msgid "Results for:" msgstr "결과:" @@ -2971,23 +3086,23 @@ msgstr "부터:" msgid "To:" msgstr "까지:" -#: cps/templates/shelf.html:12 +#: cps/templates/shelf.html:13 msgid "Delete this Shelf" msgstr "이 서재 삭제" -#: cps/templates/shelf.html:13 +#: cps/templates/shelf.html:14 msgid "Edit Shelf Properties" msgstr "서재 속성 편집" -#: cps/templates/shelf.html:16 +#: cps/templates/shelf.html:17 msgid "Arrange books manually" msgstr "수동으로 책 정렬" -#: cps/templates/shelf.html:17 +#: cps/templates/shelf.html:18 msgid "Disable Change order" msgstr "정렬 변경 비활성화" -#: cps/templates/shelf.html:17 +#: cps/templates/shelf.html:18 msgid "Enable Change order" msgstr "정렬 변경 활성화" @@ -3032,8 +3147,8 @@ msgid "System Statistics" msgstr "시스템 통계" #: cps/templates/stats.html:33 -msgid "Program Library" -msgstr "서재 프로그램" +msgid "Program" +msgstr "" #: cps/templates/stats.html:34 msgid "Installed Version" @@ -3063,6 +3178,18 @@ msgstr "실행 시간" msgid "Start Time" msgstr "시작 시간" +#: cps/templates/tasks.html:20 +msgid "Actions" +msgstr "" + +#: cps/templates/tasks.html:40 +msgid "This task will be cancelled. Any progress made by this task will be saved." +msgstr "" + +#: cps/templates/tasks.html:41 +msgid "If this is a scheduled task, it will be re-ran during the next scheduled time." +msgstr "" + #: cps/templates/user_edit.html:20 msgid "Reset user Password" msgstr "사용자 비밀번호 초기화" diff --git a/cps/translations/nl/LC_MESSAGES/messages.mo b/cps/translations/nl/LC_MESSAGES/messages.mo index 589137d98382b5ae3e7aa3c4c49285bd086fda62..a9dbabf358ead1e741c59bef6370ea8bdfb90ba6 100644 GIT binary patch delta 11167 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 V%IU9$wyfN>?Yp4L6$dwX{U33f>CpfH delta 11239 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 bBSwra9lYWDP~Q%Pqo$0QP@27ez0dyucxMOi diff --git a/cps/translations/nl/LC_MESSAGES/messages.po b/cps/translations/nl/LC_MESSAGES/messages.po index a8bd8632..ff4de940 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: 2022-04-18 20:01+0200\n" +"POT-Creation-Date: 2022-05-01 13:22+0200\n" "PO-Revision-Date: 2020-12-12 08:20+0100\n" "Last-Translator: Marcel Maas \n" "Language: nl\n" @@ -17,595 +17,620 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.9.1\n" +"Generated-By: Babel 2.8.0\n" -#: cps/about.py:86 +#: cps/about.py:84 msgid "Statistics" msgstr "Statistieken" -#: cps/admin.py:141 +#: cps/admin.py:146 msgid "Server restarted, please reload page" msgstr "De server is herstart, vernieuw de pagina" -#: cps/admin.py:143 +#: cps/admin.py:148 msgid "Performing shutdown of server, please close window" msgstr "Bezig met het afsluiten van de server, sluit het venster" -#: cps/admin.py:151 +#: cps/admin.py:156 msgid "Reconnect successful" msgstr "Opnieuw verbinden gelukt" -#: cps/admin.py:154 +#: cps/admin.py:159 msgid "Unknown command" msgstr "Onbekende opdracht" -#: cps/admin.py:176 cps/editbooks.py:713 cps/editbooks.py:892 -#: cps/editbooks.py:894 cps/editbooks.py:930 cps/editbooks.py:947 -#: cps/updater.py:608 cps/uploader.py:93 cps/uploader.py:103 +#: cps/admin.py:192 cps/editbooks.py:571 cps/editbooks.py:573 +#: cps/editbooks.py:609 cps/editbooks.py:626 cps/editbooks.py:1233 +#: cps/updater.py:613 cps/uploader.py:87 cps/uploader.py:97 msgid "Unknown" msgstr "Onbekend" -#: cps/admin.py:197 +#: cps/admin.py:217 msgid "Admin page" msgstr "Systeembeheer" -#: cps/admin.py:217 +#: cps/admin.py:237 msgid "Basic Configuration" msgstr "Basisconfiguratie" -#: cps/admin.py:255 +#: cps/admin.py:275 msgid "UI Configuration" msgstr "Uiterlijk aanpassen" -#: cps/admin.py:289 cps/templates/admin.html:51 +#: cps/admin.py:309 cps/templates/admin.html:51 #, fuzzy msgid "Edit Users" msgstr "Systeembeheerder" -#: cps/admin.py:333 cps/opds.py:529 cps/templates/grid.html:13 +#: cps/admin.py:353 cps/opds.py:532 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "Alles" -#: cps/admin.py:360 cps/admin.py:1648 +#: cps/admin.py:380 cps/admin.py:1365 msgid "User not found" msgstr "Gebruiker niet gevonden" -#: cps/admin.py:374 +#: cps/admin.py:394 msgid "{} users deleted successfully" msgstr "{} gebruikers succesvol verwijderd" -#: cps/admin.py:397 cps/templates/config_view_edit.html:133 +#: cps/admin.py:417 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:418 cps/admin.py:424 +#: cps/admin.py:438 cps/admin.py:444 msgid "Malformed request" msgstr "Misvormd verzoek" -#: cps/admin.py:436 cps/admin.py:1526 +#: cps/admin.py:456 cps/admin.py:1962 msgid "Guest Name can't be changed" msgstr "Gast naam kan niet worden veranderd" -#: cps/admin.py:448 +#: cps/admin.py:468 msgid "Guest can't have this role" msgstr "Gast kan deze rol niet hebben" -#: cps/admin.py:460 cps/admin.py:1484 +#: cps/admin.py:480 cps/admin.py:1920 msgid "No admin user remaining, can't remove admin role" msgstr "Kan systeembeheerder rol niet verwijderen van de laatste systeembeheerder" -#: cps/admin.py:464 cps/admin.py:478 +#: cps/admin.py:484 cps/admin.py:498 msgid "Value has to be true or false" msgstr "Waarde moet Waar of Onwaar zijn" -#: cps/admin.py:466 +#: cps/admin.py:486 msgid "Invalid role" msgstr "Ongeldige rol" -#: cps/admin.py:470 +#: cps/admin.py:490 msgid "Guest can't have this view" msgstr "Gast kan dit niet bekijken" -#: cps/admin.py:480 +#: cps/admin.py:500 msgid "Invalid view" msgstr "Ongeldige waarde" -#: cps/admin.py:483 +#: cps/admin.py:503 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:487 +#: cps/admin.py:507 msgid "No Valid Locale Given" msgstr "Geen geldige locale is opgegeven" -#: cps/admin.py:498 +#: cps/admin.py:518 msgid "No Valid Book Language Given" msgstr "Geen geldige boek taal is opgegeven" -#: cps/admin.py:500 cps/editbooks.py:1267 +#: cps/admin.py:520 cps/editbooks.py:438 msgid "Parameter not found" msgstr "Parameter is niet gevonden" -#: cps/admin.py:553 +#: cps/admin.py:557 msgid "Invalid Read Column" msgstr "Ongeldige gelezen kolom" -#: cps/admin.py:559 +#: cps/admin.py:563 msgid "Invalid Restricted Column" msgstr "Ongeldige beperkte kolom" -#: cps/admin.py:579 cps/admin.py:1355 +#: cps/admin.py:583 cps/admin.py:1791 msgid "Calibre-Web configuration updated" msgstr "Calibre-Web-configuratie bijgewerkt" -#: cps/admin.py:591 +#: cps/admin.py:595 msgid "Do you really want to delete the Kobo Token?" msgstr "Wil je je Kobo Token echt verwijderen?" -#: cps/admin.py:593 +#: cps/admin.py:597 msgid "Do you really want to delete this domain?" msgstr "Wil je dit domein echt verwijderen?" -#: cps/admin.py:595 +#: cps/admin.py:599 msgid "Do you really want to delete this user?" msgstr "Wil je deze gebruiker echt verwijderen?" -#: cps/admin.py:597 +#: cps/admin.py:601 msgid "Are you sure you want to delete this shelf?" msgstr "Weet je zeker dat je deze boekenplank wilt verwijderen?" -#: cps/admin.py:599 +#: cps/admin.py:603 #, 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:601 +#: cps/admin.py:605 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:603 +#: cps/admin.py:607 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:605 +#: cps/admin.py:609 #, 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:607 +#: cps/admin.py:611 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:610 +#: cps/admin.py:614 #, 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:612 +#: cps/admin.py:616 #, 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:614 +#: cps/admin.py:618 +msgid "Calibre-Web will search for updated Covers and update Cover Thumbnails, this may take a while?" +msgstr "" + +#: cps/admin.py:620 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:764 -msgid "Tag not found" -msgstr "Tag niet gevonden" - -#: cps/admin.py:776 -msgid "Invalid Action" -msgstr "Ongeldige actie" - -#: cps/admin.py:893 cps/admin.py:899 cps/admin.py:909 cps/admin.py:919 +#: cps/admin.py:862 cps/admin.py:868 cps/admin.py:878 cps/admin.py:888 #: 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:895 cps/admin.py:901 cps/admin.py:911 cps/admin.py:921 +#: cps/admin.py:864 cps/admin.py:870 cps/admin.py:880 cps/admin.py:890 #: 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:936 +#: cps/admin.py:905 msgid "{} sync entries deleted" msgstr "" -#: cps/admin.py:1059 +#: cps/admin.py:953 +msgid "Tag not found" +msgstr "Tag niet gevonden" + +#: cps/admin.py:965 +msgid "Invalid Action" +msgstr "Ongeldige actie" + +#: cps/admin.py:1080 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "client_secrets.json is niet geconfigureerd voor webapplicatie" -#: cps/admin.py:1104 +#: cps/admin.py:1125 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:1110 +#: cps/admin.py:1131 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:1140 +#: cps/admin.py:1161 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:1146 +#: cps/admin.py:1167 msgid "Please Enter a LDAP Service Account and Password" msgstr "Voer een geldig LDAP Service Account en wachtwoord in" -#: cps/admin.py:1149 +#: cps/admin.py:1170 msgid "Please Enter a LDAP Service Account" msgstr "Voer een LDAP Service Account in" -#: cps/admin.py:1154 +#: cps/admin.py:1175 #, 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:1156 +#: cps/admin.py:1177 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "LDAP Groep Object Filter heeft een niet-gebalanceerd haakje" -#: cps/admin.py:1160 +#: cps/admin.py:1181 #, 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:1162 +#: cps/admin.py:1183 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "LDAP Gebruiker Filter heeft een niet-gebalanceerd haakje" -#: cps/admin.py:1169 +#: cps/admin.py:1190 #, 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:1171 +#: cps/admin.py:1192 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "LDAP Lid Gebruiker Filter heeft een niet-gebalanceerd haakje" -#: cps/admin.py:1178 +#: cps/admin.py:1199 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:1223 cps/admin.py:1339 cps/admin.py:1437 cps/admin.py:1554 -#: cps/admin.py:1623 cps/editbooks.py:678 cps/editbooks.py:882 -#: cps/editbooks.py:1130 cps/shelf.py:100 cps/shelf.py:160 cps/shelf.py:203 -#: cps/shelf.py:278 cps/shelf.py:343 cps/shelf.py:380 cps/shelf.py:456 -#: cps/web.py:1742 +#: cps/admin.py:1230 cps/admin.py:1852 +msgid "Add new user" +msgstr "Gebruiker toevoegen" + +#: cps/admin.py:1239 cps/templates/admin.html:100 +msgid "Edit E-mail Server Settings" +msgstr "SMTP-instellingen bewerken" + +#: cps/admin.py:1258 +msgid "Gmail Account Verification Successful" +msgstr "Gmail Account succesvol geverifieerd" + +#: cps/admin.py:1277 cps/admin.py:1658 cps/admin.py:1775 cps/admin.py:1873 +#: cps/admin.py:1990 cps/editbooks.py:227 cps/editbooks.py:301 +#: cps/editbooks.py:1196 cps/shelf.py:82 cps/shelf.py:142 cps/shelf.py:185 +#: cps/shelf.py:235 cps/shelf.py:272 cps/shelf.py:343 cps/shelf.py:457 +#: cps/tasks/convert.py:136 cps/web.py:1413 #, python-format msgid "Database error: %(error)s." msgstr "Database fout: %(error)s." -#: cps/admin.py:1235 -msgid "DB Location is not Valid, Please Enter Correct Path" -msgstr "Database niet gevonden, voer de juiste locatie in" - -#: cps/admin.py:1253 -msgid "DB is not Writeable" -msgstr "Kan niet schrijven naar database" - -#: cps/admin.py:1266 -msgid "Keyfile Location is not Valid, Please Enter Correct Path" -msgstr "SSL-sleutellocatie is niet geldig, voer een geldig pad in" - -#: cps/admin.py:1270 -msgid "Certfile Location is not Valid, Please Enter Correct Path" -msgstr "SSL-certificaatlocatie is niet geldig, voer een geldig pad in" - -#: cps/admin.py:1378 -#, fuzzy -msgid "Database Settings updated" -msgstr "E-mailserver-instellingen bijgewerkt" - -#: cps/admin.py:1386 -#, fuzzy -msgid "Database Configuration" -msgstr "Databaseconfiguratie" - -#: cps/admin.py:1402 cps/web.py:1557 -msgid "Please fill out all fields!" -msgstr "Vul alle velden in!" - -#: cps/admin.py:1410 -msgid "E-mail is not from valid domain" -msgstr "Het e-mailadres bevat geen geldige domeinnaam" - -#: cps/admin.py:1416 cps/admin.py:1576 -msgid "Add new user" -msgstr "Gebruiker toevoegen" - -#: cps/admin.py:1427 -#, python-format -msgid "User '%(user)s' created" -msgstr "Gebruiker '%(user)s' aangemaakt" - -#: cps/admin.py:1433 -#, fuzzy -msgid "Found an existing account for this e-mail address or name." -msgstr "Bestaand account met dit e-mailadres of deze gebruikersnaam aangetroffen." - -#: cps/admin.py:1463 -#, python-format -msgid "User '%(nick)s' deleted" -msgstr "Gebruiker '%(nick)s' verwijderd" - -#: cps/admin.py:1465 cps/admin.py:1466 -msgid "Can't delete Guest User" -msgstr "Kan Gast gebruiker niet verwijderen" - -#: cps/admin.py:1469 -msgid "No admin user remaining, can't delete user" -msgstr "Kan laatste systeembeheerder niet verwijderen" - -#: cps/admin.py:1542 cps/admin.py:1667 -#, python-format -msgid "Edit User %(nick)s" -msgstr "Gebruiker '%(nick)s' bewerken" - -#: cps/admin.py:1546 -#, python-format -msgid "User '%(nick)s' updated" -msgstr "Gebruiker '%(nick)s' bijgewerkt" - -#: cps/admin.py:1550 cps/admin.py:1682 cps/web.py:1582 cps/web.py:1642 -msgid "An unknown error occurred. Please try again later." -msgstr "Onbekende fout opgetreden. Probeer het later nog eens." - -#: cps/admin.py:1585 cps/templates/admin.html:100 -msgid "Edit E-mail Server Settings" -msgstr "SMTP-instellingen bewerken" - -#: cps/admin.py:1604 -msgid "Gmail Account Verification Successful" -msgstr "Gmail Account succesvol geverifieerd" - -#: cps/admin.py:1630 +#: cps/admin.py:1284 #, 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:1633 +#: cps/admin.py:1287 #, 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:1635 +#: cps/admin.py:1289 msgid "Please configure your e-mail address first..." msgstr "Gelieve eerst je e-mail adres configureren..." -#: cps/admin.py:1637 +#: cps/admin.py:1291 msgid "E-mail server settings updated" msgstr "E-mailserver-instellingen bijgewerkt" -#: cps/admin.py:1679 +#: cps/admin.py:1314 cps/templates/admin.html:191 +msgid "Edit Scheduled Tasks Settings" +msgstr "" + +#: cps/admin.py:1326 +msgid "Invalid start time for task specified" +msgstr "" + +#: cps/admin.py:1331 +msgid "Invalid duration for task specified" +msgstr "" + +#: cps/admin.py:1340 +msgid "Scheduled tasks settings updated" +msgstr "" + +#: cps/admin.py:1350 cps/admin.py:1399 cps/admin.py:1986 cps/web.py:1254 +#: cps/web.py:1315 +msgid "An unknown error occurred. Please try again later." +msgstr "Onbekende fout opgetreden. Probeer het later nog eens." + +#: cps/admin.py:1354 +msgid "Settings DB is not Writeable" +msgstr "" + +#: cps/admin.py:1384 cps/admin.py:1978 +#, python-format +msgid "Edit User %(nick)s" +msgstr "Gebruiker '%(nick)s' bewerken" + +#: cps/admin.py:1396 #, python-format msgid "Password for user %(user)s reset" msgstr "Wachtwoord voor gebruiker %(user)s is hersteld" -#: cps/admin.py:1685 cps/web.py:1522 +#: cps/admin.py:1402 cps/web.py:1194 msgid "Please configure the SMTP mail settings first..." msgstr "Stel eerst SMTP-mail in..." -#: cps/admin.py:1696 +#: cps/admin.py:1413 msgid "Logfile viewer" msgstr "Logbestand lezer" -#: cps/admin.py:1762 +#: cps/admin.py:1479 msgid "Requesting update package" msgstr "Update opvragen" -#: cps/admin.py:1763 +#: cps/admin.py:1480 msgid "Downloading update package" msgstr "Update downloaden" -#: cps/admin.py:1764 +#: cps/admin.py:1481 msgid "Unzipping update package" msgstr "Update uitpakken" -#: cps/admin.py:1765 +#: cps/admin.py:1482 msgid "Replacing files" msgstr "Update toepassen" -#: cps/admin.py:1766 +#: cps/admin.py:1483 msgid "Database connections are closed" msgstr "Databaseverbindingen zijn gesloten" -#: cps/admin.py:1767 +#: cps/admin.py:1484 msgid "Stopping server" msgstr "Bezig met stoppen van Calibre-Web" -#: cps/admin.py:1768 +#: cps/admin.py:1485 msgid "Update finished, please press okay and reload page" msgstr "Update voltooid, klik op 'Oké' en vernieuw de pagina" -#: cps/admin.py:1769 cps/admin.py:1770 cps/admin.py:1771 cps/admin.py:1772 -#: cps/admin.py:1773 cps/admin.py:1774 +#: cps/admin.py:1486 cps/admin.py:1487 cps/admin.py:1488 cps/admin.py:1489 +#: cps/admin.py:1490 cps/admin.py:1491 msgid "Update failed:" msgstr "Update mislukt:" -#: cps/admin.py:1769 cps/updater.py:384 cps/updater.py:619 cps/updater.py:621 +#: cps/admin.py:1486 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 msgid "HTTP Error" msgstr "HTTP-fout" -#: cps/admin.py:1770 cps/updater.py:386 cps/updater.py:623 +#: cps/admin.py:1487 cps/updater.py:391 cps/updater.py:628 msgid "Connection error" msgstr "Verbindingsfout" -#: cps/admin.py:1771 cps/updater.py:388 cps/updater.py:625 +#: cps/admin.py:1488 cps/updater.py:393 cps/updater.py:630 msgid "Timeout while establishing connection" msgstr "Time-out tijdens maken van verbinding" -#: cps/admin.py:1772 cps/updater.py:390 cps/updater.py:627 +#: cps/admin.py:1489 cps/updater.py:395 cps/updater.py:632 msgid "General error" msgstr "Algemene fout" -#: cps/admin.py:1773 +#: cps/admin.py:1490 #, 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:1774 +#: cps/admin.py:1491 msgid "Files could not be replaced during update" msgstr "" -#: cps/admin.py:1798 +#: cps/admin.py:1515 #, fuzzy msgid "Failed to extract at least One LDAP User" msgstr "Mislukt om minstens een LDAP gebruiker aan te maken" -#: cps/admin.py:1843 +#: cps/admin.py:1560 msgid "Failed to Create at Least One LDAP User" msgstr "Het is niet gelukt tenminste een LDAP gebruiker aan te maken" -#: cps/admin.py:1856 +#: cps/admin.py:1573 #, python-format msgid "Error: %(ldaperror)s" msgstr "Fout: %(ldaperror)s" -#: cps/admin.py:1860 +#: cps/admin.py:1577 msgid "Error: No user returned in response of LDAP server" msgstr "Fout: No user returned in response of LDAP server" -#: cps/admin.py:1893 +#: cps/admin.py:1610 msgid "At Least One LDAP User Not Found in Database" msgstr "Minstens een LDAP Gebruiker is niet gevonden in de Database" -#: cps/admin.py:1895 +#: cps/admin.py:1612 msgid "{} User Successfully Imported" msgstr "{} Gebruiker succesvol geïmporteerd" -#: cps/converter.py:30 +#: cps/admin.py:1670 +msgid "DB Location is not Valid, Please Enter Correct Path" +msgstr "Database niet gevonden, voer de juiste locatie in" + +#: cps/admin.py:1689 +msgid "DB is not Writeable" +msgstr "Kan niet schrijven naar database" + +#: cps/admin.py:1702 +msgid "Keyfile Location is not Valid, Please Enter Correct Path" +msgstr "SSL-sleutellocatie is niet geldig, voer een geldig pad in" + +#: cps/admin.py:1706 +msgid "Certfile Location is not Valid, Please Enter Correct Path" +msgstr "SSL-certificaatlocatie is niet geldig, voer een geldig pad in" + +#: cps/admin.py:1814 +#, fuzzy +msgid "Database Settings updated" +msgstr "E-mailserver-instellingen bijgewerkt" + +#: cps/admin.py:1822 +#, fuzzy +msgid "Database Configuration" +msgstr "Databaseconfiguratie" + +#: cps/admin.py:1838 cps/web.py:1229 +msgid "Please fill out all fields!" +msgstr "Vul alle velden in!" + +#: cps/admin.py:1846 +msgid "E-mail is not from valid domain" +msgstr "Het e-mailadres bevat geen geldige domeinnaam" + +#: cps/admin.py:1863 +#, python-format +msgid "User '%(user)s' created" +msgstr "Gebruiker '%(user)s' aangemaakt" + +#: cps/admin.py:1869 +#, fuzzy +msgid "Found an existing account for this e-mail address or name." +msgstr "Bestaand account met dit e-mailadres of deze gebruikersnaam aangetroffen." + +#: cps/admin.py:1899 +#, python-format +msgid "User '%(nick)s' deleted" +msgstr "Gebruiker '%(nick)s' verwijderd" + +#: cps/admin.py:1901 cps/admin.py:1902 +msgid "Can't delete Guest User" +msgstr "Kan Gast gebruiker niet verwijderen" + +#: cps/admin.py:1905 +msgid "No admin user remaining, can't delete user" +msgstr "Kan laatste systeembeheerder niet verwijderen" + +#: cps/admin.py:1982 +#, python-format +msgid "User '%(nick)s' updated" +msgstr "Gebruiker '%(nick)s' bijgewerkt" + +#: cps/converter.py:31 msgid "not installed" msgstr "niet geïnstalleerd" -#: cps/converter.py:31 +#: cps/converter.py:32 msgid "Execution permissions missing" msgstr "Kan programma niet uitvoeren" -#: cps/db.py:674 cps/web.py:710 cps/web.py:1222 +#: cps/db.py:681 cps/search.py:134 cps/web.py:720 #, python-format msgid "Custom Column No.%(column)d is not existing in calibre database" msgstr "Aangepaste kolom Nr.%(column)d bestaat niet in de Calibre Database" -#: cps/db.py:917 cps/templates/config_edit.html:204 +#: cps/db.py:924 cps/templates/config_edit.html:204 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 -#: cps/web.py:551 cps/web.py:585 cps/web.py:646 cps/web.py:671 cps/web.py:1003 -#: cps/web.py:1032 cps/web.py:1066 cps/web.py:1093 cps/web.py:1132 +#: cps/web.py:549 cps/web.py:583 cps/web.py:656 cps/web.py:681 cps/web.py:962 +#: cps/web.py:992 cps/web.py:1027 cps/web.py:1055 cps/web.py:1094 msgid "None" msgstr "Geen" -#: cps/editbooks.py:295 cps/editbooks.py:297 -msgid "Book Format Successfully Deleted" -msgstr "Het boekformaat is verwijderd" - -#: cps/editbooks.py:304 cps/editbooks.py:306 -msgid "Book Successfully Deleted" -msgstr "Het boek is verwijderd" - -#: cps/editbooks.py:358 -msgid "You are missing permissions to delete books" -msgstr "" - -#: cps/editbooks.py:373 cps/editbooks.py:765 cps/web.py:518 cps/web.py:1783 -#: cps/web.py:1825 cps/web.py:1870 +#: cps/editbooks.py:109 cps/editbooks.py:890 cps/web.py:516 cps/web.py:1454 +#: cps/web.py:1496 cps/web.py:1541 msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible" msgstr "Oeps! Geselecteerd boek is niet beschikbaar. Bestand bestaat niet of is niet toegankelijk" -#: cps/editbooks.py:408 -msgid "edit metadata" -msgstr "metagegevens bewerken" - -#: cps/editbooks.py:457 -#, python-format -msgid "%(seriesindex)s is not a valid number, skipping" -msgstr "%(seriesindex)s is geen geldig nummer, sla het over" - -#: cps/editbooks.py:493 cps/editbooks.py:1001 -#, fuzzy, python-format -msgid "'%(langname)s' is not a valid language" -msgstr "%(langname)s is geen geldige taal" - -#: cps/editbooks.py:634 -msgid "User has no rights to upload additional file formats" -msgstr "" - -#: cps/editbooks.py:639 cps/editbooks.py:1029 -#, 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:643 cps/editbooks.py:1033 -msgid "File to be uploaded must have an extension" -msgstr "Het te uploaden bestand moet voorzien zijn van een extensie" - -#: cps/editbooks.py:655 -#, python-format -msgid "Failed to create path %(path)s (Permission denied)." -msgstr "Kan de locatie '%(path)s' niet aanmaken (niet gemachtigd)." - -#: cps/editbooks.py:660 -#, python-format -msgid "Failed to store file %(file)s." -msgstr "Kan %(file)s niet opslaan." - -#: cps/editbooks.py:683 -#, python-format -msgid "File format %(ext)s added to %(book)s" -msgstr "Bestandsformaat %(ext)s toegevoegd aan %(book)s" - -#: cps/editbooks.py:697 cps/editbooks.py:809 +#: cps/editbooks.py:153 cps/editbooks.py:1216 msgid "User has no rights to upload cover" msgstr "" -#: cps/editbooks.py:828 +#: cps/editbooks.py:173 cps/editbooks.py:711 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "Identificatoren zijn niet hoofdlettergevoelig, overschrijf huidige identificatoren" -#: cps/editbooks.py:869 +#: cps/editbooks.py:214 msgid "Metadata successfully updated" msgstr "De metagegevens zijn bijgewerkt" -#: cps/editbooks.py:887 +#: cps/editbooks.py:232 msgid "Error editing book: {}" msgstr "" -#: cps/editbooks.py:951 -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:1041 -#, 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:1061 -#, python-format -msgid "Failed to Move Cover File %(file)s: %(error)s" -msgstr "Omslag %(file)s niet verplaatst: %(error)s" - -#: cps/editbooks.py:1117 +#: cps/editbooks.py:287 #, python-format msgid "File %(file)s uploaded" msgstr "Bestand %(file)s geüpload" -#: cps/editbooks.py:1143 +#: cps/editbooks.py:314 msgid "Source or destination format for conversion missing" msgstr "Bron- of doelformaat ontbreekt voor conversie" -#: cps/editbooks.py:1151 +#: cps/editbooks.py:322 #, 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:1155 +#: cps/editbooks.py:326 #, 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:630 +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:685 cps/editbooks.py:1010 +#, fuzzy, python-format +msgid "'%(langname)s' is not a valid language" +msgstr "%(langname)s is geen geldige taal" + +#: cps/editbooks.py:723 cps/editbooks.py:1157 +#, 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:727 cps/editbooks.py:1161 +msgid "File to be uploaded must have an extension" +msgstr "Het te uploaden bestand moet voorzien zijn van een extensie" + +#: cps/editbooks.py:735 +#, 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:755 +#, python-format +msgid "Failed to Move Cover File %(file)s: %(error)s" +msgstr "Omslag %(file)s niet verplaatst: %(error)s" + +#: cps/editbooks.py:812 cps/editbooks.py:814 +msgid "Book Format Successfully Deleted" +msgstr "Het boekformaat is verwijderd" + +#: cps/editbooks.py:821 cps/editbooks.py:823 +msgid "Book Successfully Deleted" +msgstr "Het boek is verwijderd" + +#: cps/editbooks.py:875 +msgid "You are missing permissions to delete books" +msgstr "" + +#: cps/editbooks.py:925 +msgid "edit metadata" +msgstr "metagegevens bewerken" + +#: cps/editbooks.py:974 +#, python-format +msgid "%(seriesindex)s is not a valid number, skipping" +msgstr "%(seriesindex)s is geen geldig nummer, sla het over" + +#: cps/editbooks.py:1152 +msgid "User has no rights to upload additional file formats" +msgstr "" + +#: cps/editbooks.py:1173 +#, python-format +msgid "Failed to create path %(path)s (Permission denied)." +msgstr "Kan de locatie '%(path)s' niet aanmaken (niet gemachtigd)." + +#: cps/editbooks.py:1178 +#, python-format +msgid "Failed to store file %(file)s." +msgstr "Kan %(file)s niet opslaan." + +#: cps/editbooks.py:1201 +#, python-format +msgid "File format %(ext)s added to %(book)s" +msgstr "Bestandsformaat %(ext)s toegevoegd aan %(book)s" + #: cps/gdrive.py:58 msgid "Google Drive setup not completed, try to deactivate and activate Google Drive again" msgstr "Het instellen van Google Drive is niet afgerond, heractiveer Google Drive" @@ -614,27 +639,27 @@ 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:81 +#: cps/helper.py:80 #, 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:87 cps/tasks/convert.py:75 +#: cps/helper.py:86 cps/tasks/convert.py:75 #, 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:92 +#: cps/helper.py:91 #, python-format msgid "%(format)s not found: %(fn)s" msgstr "%(format)s niet gevonden %(fn)s" -#: cps/helper.py:97 cps/helper.py:221 cps/templates/detail.html:41 -#: cps/templates/detail.html:45 +#: cps/helper.py:96 cps/helper.py:221 cps/templates/detail.html:42 +#: cps/templates/detail.html:46 msgid "Send to Kindle" msgstr "Versturen naar Kindle" -#: cps/helper.py:98 cps/helper.py:115 cps/helper.py:223 +#: cps/helper.py:97 cps/helper.py:115 cps/helper.py:223 msgid "This e-mail has been sent via Calibre-Web." msgstr "Deze e-mail is verstuurd via Calibre-Web." @@ -674,132 +699,112 @@ msgstr "%(book)s verzonden naar Kindle" 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:353 +#: cps/helper.py:341 msgid "Read status could not set: {}" msgstr "" -#: cps/helper.py:376 +#: cps/helper.py:364 #, 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:382 +#: cps/helper.py:370 #, python-format msgid "Deleting book %(id)s failed: %(message)s" msgstr "Verwijderen van boek %(id)s mislukt: %(message)s" -#: cps/helper.py:393 +#: cps/helper.py:381 #, 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:458 +#: cps/helper.py:446 #, 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:529 cps/helper.py:538 +#: cps/helper.py:518 cps/helper.py:527 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "Bestand '%(file)s' niet aangetroffen op Google Drive" -#: cps/helper.py:572 +#: cps/helper.py:561 #, 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:592 +#: cps/helper.py:581 msgid "Error in rename file in path: {}" msgstr "" -#: cps/helper.py:610 +#: cps/helper.py:599 #, 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:651 cps/web.py:1737 +#: cps/helper.py:640 cps/web.py:1408 #, fuzzy msgid "Found an existing account for this e-mail address" msgstr "Bestaand account met dit e-mailadres aangetroffen." -#: cps/helper.py:659 +#: cps/helper.py:648 msgid "This username is already taken" msgstr "Deze gebruikersnaam is al in gebruik" -#: cps/helper.py:669 +#: cps/helper.py:658 msgid "Invalid e-mail address format" msgstr "Ongeldig E-Mail adres" -#: cps/helper.py:754 -msgid "Python modul 'advocate' is not installed but is needed for cover downloads" +#: cps/helper.py:808 +msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "" -#: cps/helper.py:767 +#: cps/helper.py:818 msgid "Error Downloading Cover" msgstr "Fout bij downloaden omslag" -#: cps/helper.py:770 +#: cps/helper.py:821 msgid "Cover Format Error" msgstr "Onjuist omslagformaat" -#: cps/helper.py:773 +#: cps/helper.py:824 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "" -#: cps/helper.py:783 +#: cps/helper.py:834 msgid "Failed to create path for cover" msgstr "Locatie aanmaken voor omslag mislukt" -#: cps/helper.py:799 +#: cps/helper.py:850 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:810 +#: cps/helper.py:861 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:822 +#: cps/helper.py:873 msgid "Invalid cover file content" msgstr "" -#: cps/helper.py:826 +#: cps/helper.py:877 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "Alleen jpg/jpeg bestanden zijn toegestaan als omslag" -#: cps/helper.py:878 +#: cps/helper.py:929 msgid "Unrar binary file not found" msgstr "Unrar executable niet gevonden" -#: cps/helper.py:889 +#: cps/helper.py:940 msgid "Error excecuting UnRar" msgstr "Fout bij het uitvoeren van Unrar" -#: cps/helper.py:937 -msgid "Waiting" -msgstr "Wachten" - -#: cps/helper.py:939 -msgid "Failed" -msgstr "Mislukt" - -#: cps/helper.py:941 -msgid "Started" -msgstr "Gestart" - -#: cps/helper.py:943 -msgid "Finished" -msgstr "Voltooid" - -#: cps/helper.py:945 -msgid "Unknown Status" -msgstr "Onbekende status" - -#: cps/kobo_auth.py:128 +#: cps/kobo_auth.py:89 #, fuzzy msgid "Please access Calibre-Web from non localhost to get valid api_endpoint for kobo device" msgstr "Je kunt Calibre-Web niet vanaf de lokale computer openen om een geldige api_endpoint te krijgen voor je kobo toestel" -#: cps/kobo_auth.py:154 +#: cps/kobo_auth.py:115 msgid "Kobo Setup" msgstr "Kobo Instellen" @@ -808,7 +813,7 @@ msgstr "Kobo Instellen" msgid "Register with %(provider)s" msgstr "Aanmelden bij %(provider)s" -#: cps/oauth_bb.py:138 cps/remotelogin.py:130 cps/web.py:1613 +#: cps/oauth_bb.py:138 cps/remotelogin.py:130 cps/web.py:1286 #, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "je bent ingelogd als: '%(nickname)s'" @@ -869,12 +874,12 @@ msgstr "Google OAuth fout, probeer het later nog eens." msgid "Google Oauth error: {}" msgstr "Google OAuth foutmelding: {}" -#: cps/opds.py:298 +#: cps/opds.py:287 msgid "{} Stars" msgstr "{} sterren" -#: cps/remotelogin.py:62 cps/templates/layout.html:84 -#: cps/templates/login.html:4 cps/templates/login.html:21 cps/web.py:1662 +#: cps/remotelogin.py:62 cps/templates/layout.html:85 +#: cps/templates/login.html:4 cps/templates/login.html:21 cps/web.py:1335 msgid "Login" msgstr "Inloggen" @@ -890,456 +895,489 @@ msgstr "Toegangssleutel is verlopen" msgid "Success! Please return to your device" msgstr "Gelukt! Ga terug naar je apparaat" -#: cps/render_template.py:41 cps/web.py:407 +#: cps/render_template.py:40 cps/web.py:405 msgid "Books" msgstr "Boeken" -#: cps/render_template.py:43 +#: cps/render_template.py:42 msgid "Show recent books" msgstr "Recent toegevoegde boeken tonen" -#: cps/render_template.py:44 cps/templates/index.xml:25 +#: cps/render_template.py:43 cps/templates/index.xml:25 msgid "Hot Books" msgstr "Populaire boeken" -#: cps/render_template.py:46 +#: cps/render_template.py:45 msgid "Show Hot Books" msgstr "Populaire boeken tonen" -#: cps/render_template.py:48 cps/render_template.py:53 +#: cps/render_template.py:47 cps/render_template.py:52 msgid "Downloaded Books" msgstr "Gedownloade boeken" -#: cps/render_template.py:50 cps/render_template.py:55 +#: cps/render_template.py:49 cps/render_template.py:54 #: cps/templates/user_table.html:167 msgid "Show Downloaded Books" msgstr "Gedownloade boeken tonen" -#: cps/render_template.py:58 cps/templates/index.xml:32 cps/web.py:422 +#: cps/render_template.py:57 cps/templates/index.xml:32 cps/web.py:420 msgid "Top Rated Books" msgstr "Best beoordeelde boeken" -#: cps/render_template.py:60 cps/templates/user_table.html:161 +#: cps/render_template.py:59 cps/templates/user_table.html:161 msgid "Show Top Rated Books" msgstr "Best beoordeelde boeken tonen" -#: cps/render_template.py:61 cps/templates/index.xml:54 -#: cps/templates/index.xml:58 cps/web.py:729 +#: cps/render_template.py:60 cps/templates/index.xml:54 +#: cps/templates/index.xml:58 cps/web.py:739 msgid "Read Books" msgstr "Gelezen boeken" -#: cps/render_template.py:63 +#: cps/render_template.py:62 msgid "Show read and unread" msgstr "Gelezen/Ongelezen boeken tonen" -#: cps/render_template.py:65 cps/templates/index.xml:61 -#: cps/templates/index.xml:65 cps/web.py:732 +#: cps/render_template.py:64 cps/templates/index.xml:61 +#: cps/templates/index.xml:65 cps/web.py:742 msgid "Unread Books" msgstr "Ongelezen boeken" -#: cps/render_template.py:67 +#: cps/render_template.py:66 msgid "Show unread" msgstr "Ongelezen boeken tonen" -#: cps/render_template.py:68 +#: cps/render_template.py:67 msgid "Discover" msgstr "Willekeurige boeken" -#: cps/render_template.py:70 cps/templates/index.xml:50 +#: cps/render_template.py:69 cps/templates/index.xml:50 #: cps/templates/user_table.html:162 msgid "Show Random Books" msgstr "Willekeurige boeken tonen" -#: cps/render_template.py:71 cps/templates/book_table.html:67 -#: cps/templates/index.xml:83 cps/web.py:1135 +#: cps/render_template.py:70 cps/templates/book_table.html:67 +#: cps/templates/index.xml:83 cps/web.py:1098 msgid "Categories" msgstr "Categorieën" -#: cps/render_template.py:73 cps/templates/user_table.html:158 +#: cps/render_template.py:72 cps/templates/user_table.html:158 msgid "Show category selection" msgstr "Categoriekeuze tonen" -#: cps/render_template.py:74 cps/templates/book_edit.html:90 +#: cps/render_template.py:73 cps/templates/book_edit.html:91 #: cps/templates/book_table.html:68 cps/templates/index.xml:90 -#: cps/templates/search_form.html:69 cps/web.py:1034 cps/web.py:1041 +#: cps/templates/search_form.html:69 cps/web.py:995 cps/web.py:1002 msgid "Series" msgstr "Boekenreeksen" -#: cps/render_template.py:76 cps/templates/user_table.html:157 +#: cps/render_template.py:75 cps/templates/user_table.html:157 msgid "Show series selection" msgstr "Boekenreeksenkeuze tonen" -#: cps/render_template.py:77 cps/templates/book_table.html:66 +#: cps/render_template.py:76 cps/templates/book_table.html:66 #: cps/templates/index.xml:69 msgid "Authors" msgstr "Auteurs" -#: cps/render_template.py:79 cps/templates/user_table.html:160 +#: cps/render_template.py:78 cps/templates/user_table.html:160 msgid "Show author selection" msgstr "Auteurkeuze tonen" -#: cps/render_template.py:81 cps/templates/book_table.html:72 -#: cps/templates/index.xml:76 cps/web.py:1006 +#: cps/render_template.py:80 cps/templates/book_table.html:72 +#: cps/templates/index.xml:76 cps/web.py:966 msgid "Publishers" msgstr "Uitgevers" -#: cps/render_template.py:83 cps/templates/user_table.html:163 +#: cps/render_template.py:82 cps/templates/user_table.html:163 msgid "Show publisher selection" msgstr "Uitgeverskeuze tonen" -#: cps/render_template.py:84 cps/templates/book_table.html:70 +#: cps/render_template.py:83 cps/templates/book_table.html:70 #: cps/templates/index.xml:97 cps/templates/search_form.html:107 -#: cps/web.py:1108 +#: cps/web.py:1070 msgid "Languages" msgstr "Talen" -#: cps/render_template.py:87 cps/templates/user_table.html:155 +#: cps/render_template.py:86 cps/templates/user_table.html:155 msgid "Show language selection" msgstr "Taalkeuze tonen" -#: cps/render_template.py:88 cps/templates/index.xml:104 +#: cps/render_template.py:87 cps/templates/index.xml:104 msgid "Ratings" msgstr "Beoordelingen" -#: cps/render_template.py:90 cps/templates/user_table.html:164 +#: cps/render_template.py:89 cps/templates/user_table.html:164 msgid "Show ratings selection" msgstr "Beoordelingen tonen" -#: cps/render_template.py:91 cps/templates/index.xml:112 +#: cps/render_template.py:90 cps/templates/index.xml:112 msgid "File formats" msgstr "Bestandsformaten" -#: cps/render_template.py:93 cps/templates/user_table.html:165 +#: cps/render_template.py:92 cps/templates/user_table.html:165 msgid "Show file formats selection" msgstr "Bestandsformaten tonen" -#: cps/render_template.py:95 cps/web.py:755 +#: cps/render_template.py:94 cps/web.py:765 msgid "Archived Books" msgstr "Gearchiveerde boeken" -#: cps/render_template.py:97 cps/templates/user_table.html:166 +#: cps/render_template.py:96 cps/templates/user_table.html:166 msgid "Show archived books" msgstr "Gearchiveerde boeken tonen" -#: cps/render_template.py:100 cps/web.py:837 +#: cps/render_template.py:99 cps/web.py:796 msgid "Books List" msgstr "Boekenlijst" -#: cps/render_template.py:102 cps/templates/user_table.html:168 +#: cps/render_template.py:101 cps/templates/user_table.html:168 msgid "Show Books List" msgstr "Boekenlijst tonen" -#: cps/shelf.py:67 cps/shelf.py:121 -msgid "Invalid shelf specified" -msgstr "Ongeldige boekenplank opgegeven" - -#: cps/shelf.py:73 -#, fuzzy -msgid "Sorry you are not allowed to add a book to that shelf" -msgstr "Sorry, je mag geen boeken toevoegen aan boekenplank: %(shelfname)s" - -#: cps/shelf.py:82 -#, python-format -msgid "Book is already part of the shelf: %(shelfname)s" -msgstr "Dit boek maakt al deel uit van boekenplank: %(shelfname)s" - -#: cps/shelf.py:107 -#, python-format -msgid "Book has been added to shelf: %(sname)s" -msgstr "Het boek is toegevoegd aan boekenplank: %(sname)s" - -#: cps/shelf.py:126 -msgid "You are not allowed to add a book to the shelf" -msgstr "" - -#: cps/shelf.py:144 -#, python-format -msgid "Books are already part of the shelf: %(name)s" -msgstr "Deze boeken maken al deel uit van boekenplank: %(name)s" - -#: cps/shelf.py:156 -#, python-format -msgid "Books have been added to shelf: %(sname)s" -msgstr "De boeken zijn toegevoegd aan boekenplank: %(sname)s" - -#: cps/shelf.py:163 -#, python-format -msgid "Could not add books to shelf: %(sname)s" -msgstr "Kan boeken niet toevoegen aan boekenplank: %(sname)s" - -#: cps/shelf.py:209 -#, python-format -msgid "Book has been removed from shelf: %(sname)s" -msgstr "Het boek is verwijderd van boekenplank: %(sname)s" - -#: cps/shelf.py:218 -msgid "Sorry you are not allowed to remove a book from this shelf" -msgstr "" - -#: cps/shelf.py:228 cps/templates/layout.html:140 -msgid "Create a Shelf" -msgstr "Boekenplank maken" - -#: cps/shelf.py:236 -#, fuzzy -msgid "Sorry you are not allowed to edit this shelf" -msgstr "Je bent niet gemachtigd deze boekenplank aan te passen" - -#: cps/shelf.py:238 -msgid "Edit a shelf" -msgstr "Pas een boekenplank aan" - -#: cps/shelf.py:248 -msgid "Sorry you are not allowed to create a public shelf" -msgstr "" - -#: cps/shelf.py:265 -#, python-format -msgid "Shelf %(title)s created" -msgstr "Boekenplank '%(title)s' aangemaakt" - -#: cps/shelf.py:268 -#, python-format -msgid "Shelf %(title)s changed" -msgstr "Boekenplank '%(title)s' is aangepast" - -#: cps/shelf.py:282 -msgid "There was an error" -msgstr "Er is een fout opgetreden" - -#: cps/shelf.py:304 -#, python-format -msgid "A public shelf with the name '%(title)s' already exists." -msgstr "Een openbare boekenplank met de naam '%(title)s' bestaat al." - -#: cps/shelf.py:315 -#, python-format -msgid "A private shelf with the name '%(title)s' already exists." -msgstr "Een persoonlijke boekenplank met de naam '%(title)s' bestaat al." - -#: cps/shelf.py:337 -msgid "Error deleting Shelf" -msgstr "" - -#: cps/shelf.py:339 -#, fuzzy -msgid "Shelf successfully deleted" -msgstr "Het boek is verwijderd" - -#: cps/shelf.py:389 -#, python-format -msgid "Change order of Shelf: '%(name)s'" -msgstr "Volgorde van boekenplank veranderen: '%(name)s'" - -#: cps/shelf.py:461 -#, python-format -msgid "Shelf: '%(name)s'" -msgstr "Boekenplank: '%(name)s'" - -#: cps/shelf.py:465 -msgid "Error opening shelf. Shelf does not exist or is not accessible" -msgstr "Kan boekenplank niet openen: de boekenplank bestaat niet of is ontoegankelijk" - -#: cps/updater.py:426 cps/updater.py:437 cps/updater.py:538 cps/updater.py:553 -msgid "Unexpected data while reading update information" -msgstr "Onverwachte gegevens tijdens het uitlezen van de update-informatie" - -#: cps/updater.py:433 cps/updater.py:545 -msgid "No update available. You already have the latest version installed" -msgstr "Er is geen update beschikbaar." - -#: cps/updater.py:451 -msgid "A new update is available. Click on the button below to update to the latest version." -msgstr "Er is een update beschikbaar. Klik op de knop hieronder om te updaten naar de nieuwste versie." - -#: cps/updater.py:469 -msgid "Could not fetch update information" -msgstr "De update-informatie kan niet worden opgehaald" - -#: cps/updater.py:479 -msgid "Click on the button below to update to the latest stable version." -msgstr "Klik op de onderstaande knop om de laatste stabiele versie te installeren." - -#: cps/updater.py:488 cps/updater.py:502 cps/updater.py:513 -#, python-format -msgid "A new update is available. Click on the button below to update to version: %(version)s" -msgstr "Er is een update beschikbaar. Klik op de knop hieronder om te updaten naar versie: %(version)s" - -#: cps/updater.py:531 -msgid "No release information available" -msgstr "Geen update-informatie beschikbaar" - -#: cps/templates/index.html:5 cps/web.py:434 -msgid "Discover (Random Books)" -msgstr "Verkennen (willekeurige boeken)" - -#: cps/web.py:470 -msgid "Hot Books (Most Downloaded)" -msgstr "Populaire boeken (meest gedownload)" - -#: cps/web.py:501 -#, python-format -msgid "Downloaded books by %(user)s" -msgstr "Gedownloade boeken door %(user)s" - -#: cps/web.py:534 -#, python-format -msgid "Author: %(name)s" -msgstr "Auteur: %(name)s" - -#: cps/web.py:570 -#, python-format -msgid "Publisher: %(name)s" -msgstr "Uitgever: %(name)s" - -#: cps/web.py:598 -#, python-format -msgid "Series: %(serie)s" -msgstr "Reeks: %(serie)s" - -#: cps/web.py:610 -#, python-format -msgid "Rating: %(rating)s stars" -msgstr "Beoordeling: %(rating)s sterren" - -#: cps/web.py:626 -#, python-format -msgid "File format: %(format)s" -msgstr "Bestandsformaat: %(format)s" - -#: cps/web.py:663 -#, python-format -msgid "Category: %(name)s" -msgstr "Categorie: %(name)s" - -#: cps/web.py:690 -#, python-format -msgid "Language: %(name)s" -msgstr "Taal: %(name)s" - -#: cps/templates/layout.html:56 cps/web.py:789 cps/web.py:1444 -msgid "Advanced Search" -msgstr "Geavanceerd zoeken" - -#: cps/templates/book_edit.html:235 cps/templates/feed.xml:33 -#: cps/templates/index.xml:11 cps/templates/layout.html:45 -#: cps/templates/layout.html:48 cps/templates/search_form.html:226 -#: cps/web.py:807 cps/web.py:1164 +#: cps/search.py:48 cps/search.py:414 cps/templates/book_edit.html:236 +#: cps/templates/feed.xml:33 cps/templates/index.xml:11 +#: cps/templates/layout.html:46 cps/templates/layout.html:49 +#: cps/templates/search_form.html:226 msgid "Search" msgstr "Zoeken" -#: cps/templates/admin.html:16 cps/web.py:979 -msgid "Downloads" -msgstr "Downloads" - -#: cps/web.py:1068 -msgid "Ratings list" -msgstr "Beoordelingen" - -#: cps/web.py:1095 -msgid "File formats list" -msgstr "Alle bestandsformaten" - -#: cps/templates/layout.html:73 cps/templates/tasks.html:7 cps/web.py:1149 -msgid "Tasks" -msgstr "Taken" - -#: cps/web.py:1286 +#: cps/search.py:194 msgid "Published after " msgstr "Gepubliceerd na " -#: cps/web.py:1293 +#: cps/search.py:201 msgid "Published before " msgstr "Gepubliceerd vóór " -#: cps/web.py:1315 +#: cps/search.py:223 #, python-format msgid "Rating <= %(rating)s" msgstr "Beoordeling <= %(rating)s" -#: cps/web.py:1317 +#: cps/search.py:225 #, python-format msgid "Rating >= %(rating)s" msgstr "Beoordeling >= %(rating)s" -#: cps/web.py:1319 +#: cps/search.py:227 #, python-format msgid "Read Status = %(status)s" msgstr "Lees Status = %(status)s" -#: cps/web.py:1425 +#: cps/search.py:345 msgid "Error on search for custom columns, please restart Calibre-Web" msgstr "Fout tijdens het zoeken van aangepaste kolommen, start Calibre-Web opnieuw op" -#: cps/web.py:1527 +#: cps/search.py:364 cps/search.py:396 cps/templates/layout.html:57 +msgid "Advanced Search" +msgstr "Geavanceerd zoeken" + +#: cps/shelf.py:49 cps/shelf.py:103 +msgid "Invalid shelf specified" +msgstr "Ongeldige boekenplank opgegeven" + +#: cps/shelf.py:55 +#, fuzzy +msgid "Sorry you are not allowed to add a book to that shelf" +msgstr "Sorry, je mag geen boeken toevoegen aan boekenplank: %(shelfname)s" + +#: cps/shelf.py:64 +#, python-format +msgid "Book is already part of the shelf: %(shelfname)s" +msgstr "Dit boek maakt al deel uit van boekenplank: %(shelfname)s" + +#: cps/shelf.py:89 +#, python-format +msgid "Book has been added to shelf: %(sname)s" +msgstr "Het boek is toegevoegd aan boekenplank: %(sname)s" + +#: cps/shelf.py:108 +msgid "You are not allowed to add a book to the shelf" +msgstr "" + +#: cps/shelf.py:126 +#, python-format +msgid "Books are already part of the shelf: %(name)s" +msgstr "Deze boeken maken al deel uit van boekenplank: %(name)s" + +#: cps/shelf.py:138 +#, python-format +msgid "Books have been added to shelf: %(sname)s" +msgstr "De boeken zijn toegevoegd aan boekenplank: %(sname)s" + +#: cps/shelf.py:145 +#, python-format +msgid "Could not add books to shelf: %(sname)s" +msgstr "Kan boeken niet toevoegen aan boekenplank: %(sname)s" + +#: cps/shelf.py:191 +#, python-format +msgid "Book has been removed from shelf: %(sname)s" +msgstr "Het boek is verwijderd van boekenplank: %(sname)s" + +#: cps/shelf.py:200 +msgid "Sorry you are not allowed to remove a book from this shelf" +msgstr "" + +#: cps/shelf.py:210 cps/templates/layout.html:141 +msgid "Create a Shelf" +msgstr "Boekenplank maken" + +#: cps/shelf.py:218 +#, fuzzy +msgid "Sorry you are not allowed to edit this shelf" +msgstr "Je bent niet gemachtigd deze boekenplank aan te passen" + +#: cps/shelf.py:220 +msgid "Edit a shelf" +msgstr "Pas een boekenplank aan" + +#: cps/shelf.py:229 +msgid "Error deleting Shelf" +msgstr "" + +#: cps/shelf.py:231 +#, fuzzy +msgid "Shelf successfully deleted" +msgstr "Het boek is verwijderd" + +#: cps/shelf.py:281 +#, python-format +msgid "Change order of Shelf: '%(name)s'" +msgstr "Volgorde van boekenplank veranderen: '%(name)s'" + +#: cps/shelf.py:313 +msgid "Sorry you are not allowed to create a public shelf" +msgstr "" + +#: cps/shelf.py:330 +#, python-format +msgid "Shelf %(title)s created" +msgstr "Boekenplank '%(title)s' aangemaakt" + +#: cps/shelf.py:333 +#, python-format +msgid "Shelf %(title)s changed" +msgstr "Boekenplank '%(title)s' is aangepast" + +#: cps/shelf.py:347 +msgid "There was an error" +msgstr "Er is een fout opgetreden" + +#: cps/shelf.py:369 +#, python-format +msgid "A public shelf with the name '%(title)s' already exists." +msgstr "Een openbare boekenplank met de naam '%(title)s' bestaat al." + +#: cps/shelf.py:380 +#, python-format +msgid "A private shelf with the name '%(title)s' already exists." +msgstr "Een persoonlijke boekenplank met de naam '%(title)s' bestaat al." + +#: cps/shelf.py:462 +#, python-format +msgid "Shelf: '%(name)s'" +msgstr "Boekenplank: '%(name)s'" + +#: cps/shelf.py:466 +msgid "Error opening shelf. Shelf does not exist or is not accessible" +msgstr "Kan boekenplank niet openen: de boekenplank bestaat niet of is ontoegankelijk" + +#: cps/tasks_status.py:48 cps/templates/layout.html:74 +#: cps/templates/tasks.html:7 +msgid "Tasks" +msgstr "Taken" + +#: cps/tasks_status.py:64 +msgid "Waiting" +msgstr "Wachten" + +#: cps/tasks_status.py:66 +msgid "Failed" +msgstr "Mislukt" + +#: cps/tasks_status.py:68 +msgid "Started" +msgstr "Gestart" + +#: cps/tasks_status.py:70 +msgid "Finished" +msgstr "Voltooid" + +#: cps/tasks_status.py:72 +msgid "Ended" +msgstr "" + +#: cps/tasks_status.py:74 +msgid "Cancelled" +msgstr "" + +#: cps/tasks_status.py:76 +msgid "Unknown Status" +msgstr "Onbekende status" + +#: cps/updater.py:431 cps/updater.py:442 cps/updater.py:543 cps/updater.py:558 +msgid "Unexpected data while reading update information" +msgstr "Onverwachte gegevens tijdens het uitlezen van de update-informatie" + +#: cps/updater.py:438 cps/updater.py:550 +msgid "No update available. You already have the latest version installed" +msgstr "Er is geen update beschikbaar." + +#: cps/updater.py:456 +msgid "A new update is available. Click on the button below to update to the latest version." +msgstr "Er is een update beschikbaar. Klik op de knop hieronder om te updaten naar de nieuwste versie." + +#: cps/updater.py:474 +msgid "Could not fetch update information" +msgstr "De update-informatie kan niet worden opgehaald" + +#: cps/updater.py:484 +msgid "Click on the button below to update to the latest stable version." +msgstr "Klik op de onderstaande knop om de laatste stabiele versie te installeren." + +#: cps/updater.py:493 cps/updater.py:507 cps/updater.py:518 +#, python-format +msgid "A new update is available. Click on the button below to update to version: %(version)s" +msgstr "Er is een update beschikbaar. Klik op de knop hieronder om te updaten naar versie: %(version)s" + +#: cps/updater.py:536 +msgid "No release information available" +msgstr "Geen update-informatie beschikbaar" + +#: cps/templates/index.html:6 cps/web.py:432 +msgid "Discover (Random Books)" +msgstr "Verkennen (willekeurige boeken)" + +#: cps/web.py:468 +msgid "Hot Books (Most Downloaded)" +msgstr "Populaire boeken (meest gedownload)" + +#: cps/web.py:499 +#, python-format +msgid "Downloaded books by %(user)s" +msgstr "Gedownloade boeken door %(user)s" + +#: cps/web.py:532 +#, python-format +msgid "Author: %(name)s" +msgstr "Auteur: %(name)s" + +#: cps/web.py:568 +#, python-format +msgid "Publisher: %(name)s" +msgstr "Uitgever: %(name)s" + +#: cps/web.py:596 +#, python-format +msgid "Series: %(serie)s" +msgstr "Reeks: %(serie)s" + +#: cps/web.py:609 +msgid "Rating: None" +msgstr "" + +#: cps/web.py:618 +#, python-format +msgid "Rating: %(rating)s stars" +msgstr "Beoordeling: %(rating)s sterren" + +#: cps/web.py:636 +#, python-format +msgid "File format: %(format)s" +msgstr "Bestandsformaat: %(format)s" + +#: cps/web.py:673 +#, python-format +msgid "Category: %(name)s" +msgstr "Categorie: %(name)s" + +#: cps/web.py:700 +#, python-format +msgid "Language: %(name)s" +msgstr "Taal: %(name)s" + +#: cps/templates/admin.html:16 cps/web.py:938 +msgid "Downloads" +msgstr "Downloads" + +#: cps/web.py:1030 +msgid "Ratings list" +msgstr "Beoordelingen" + +#: cps/web.py:1057 +msgid "File formats list" +msgstr "Alle bestandsformaten" + +#: cps/web.py:1199 #, python-format msgid "Book successfully queued for sending to %(kindlemail)s" msgstr "Het boek is in de wachtrij geplaatst om te worden verstuurd aan %(kindlemail)s" -#: cps/web.py:1531 +#: cps/web.py:1203 #, python-format msgid "Oops! There was an error sending this book: %(res)s" msgstr "Fout opgetreden bij het versturen van dit boek: %(res)s" -#: cps/web.py:1533 +#: cps/web.py:1205 msgid "Please update your profile with a valid Send to Kindle E-mail Address." msgstr "Stel je kindle-e-mailadres in..." -#: cps/web.py:1550 +#: cps/web.py:1222 msgid "E-Mail server is not configured, please contact your administrator!" msgstr "E-mailserver is niet geconfigureerd, neem contact op met de beheerder!" -#: cps/templates/layout.html:85 cps/templates/register.html:17 cps/web.py:1551 -#: cps/web.py:1558 cps/web.py:1564 cps/web.py:1583 cps/web.py:1587 -#: cps/web.py:1593 +#: cps/templates/layout.html:86 cps/templates/register.html:17 cps/web.py:1223 +#: cps/web.py:1230 cps/web.py:1236 cps/web.py:1255 cps/web.py:1260 +#: cps/web.py:1266 msgid "Register" msgstr "Registreren" -#: cps/web.py:1585 +#: cps/web.py:1257 msgid "Your e-mail is not allowed to register" msgstr "Dit e-mailadres mag niet worden gebruikt voor registratie" -#: cps/web.py:1588 +#: cps/web.py:1261 msgid "Confirmation e-mail was send to your e-mail account." msgstr "Er is een bevestigings-e-mail verstuurd naar je e-mailadres." -#: cps/web.py:1602 +#: cps/web.py:1275 msgid "Cannot activate LDAP authentication" msgstr "Kan de LDAP authenticatie niet activeren" -#: cps/web.py:1621 +#: cps/web.py:1294 #, 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:1627 +#: cps/web.py:1300 #, python-format msgid "Could not login: %(message)s" msgstr "Inloggen mislukt: %(message)s" -#: cps/web.py:1631 cps/web.py:1656 +#: cps/web.py:1304 cps/web.py:1329 msgid "Wrong Username or Password" msgstr "Verkeerde gebruikersnaam of wachtwoord" -#: cps/web.py:1638 +#: cps/web.py:1311 msgid "New Password was send to your email address" msgstr "Een nieuw wachtwoord is verzonden naar je e-mailadres" -#: cps/web.py:1644 +#: cps/web.py:1317 msgid "Please enter valid username to reset password" msgstr "Geef een geldige gebruikersnaam op om je wachtwoord te herstellen" -#: cps/web.py:1651 +#: cps/web.py:1324 #, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "Je bent ingelogd als: '%(nickname)s'" -#: cps/web.py:1717 cps/web.py:1766 +#: cps/web.py:1388 cps/web.py:1437 #, python-format msgid "%(name)s's profile" msgstr "%(name)ss profiel" -#: cps/web.py:1733 +#: cps/web.py:1404 msgid "Profile updated" msgstr "Profiel bijgewerkt" @@ -1347,40 +1385,75 @@ msgstr "Profiel bijgewerkt" msgid "Found no valid gmail.json file with OAuth information" msgstr "Geen geldig gmail.json bestand gevonden met OAuth informatie" -#: cps/tasks/convert.py:154 +#: cps/tasks/convert.py:153 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "Calibre ebook-convert %(tool)s niet gevonden" -#: cps/tasks/convert.py:187 +#: cps/tasks/convert.py:186 #, python-format msgid "%(format)s format not found on disk" msgstr "%(format)s formaat is niet gevonden op de schijf" -#: cps/tasks/convert.py:191 +#: cps/tasks/convert.py:190 msgid "Ebook converter failed with unknown error" msgstr "E-Book converter mislukt met een onbekende foutmelding" -#: cps/tasks/convert.py:201 +#: cps/tasks/convert.py:200 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "Kepubify-converteerder mislukt: %(error)s" -#: cps/tasks/convert.py:223 +#: cps/tasks/convert.py:222 #, 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:246 +#: cps/tasks/convert.py:245 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "E-boek-conversie mislukt: %(error)s" -#: cps/tasks/convert.py:269 +#: cps/tasks/convert.py:268 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "Calibre mislukt met foutmelding: %(error)s" +#: cps/tasks/convert.py:273 +msgid "Convert" +msgstr "" + +#: cps/tasks/database.py:28 +msgid "Reconnecting Calibre database" +msgstr "" + +#: cps/tasks/mail.py:265 +msgid "E-mail" +msgstr "" + +#: cps/tasks/thumbnail.py:95 +#, python-format +msgid "Generated %(count)s cover thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:222 cps/tasks/thumbnail.py:435 +#: cps/tasks/thumbnail.py:503 +msgid "Cover Thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:281 +msgid "Generated {0} series thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:446 +msgid "Clearing cover thumbnail cache" +msgstr "" + +#: cps/tasks/upload.py:38 cps/templates/admin.html:20 +#: cps/templates/layout.html:67 cps/templates/user_table.html:145 +msgid "Upload" +msgstr "Uploaden" + #: cps/templates/admin.html:9 msgid "Users" msgstr "Gebruikers" @@ -1400,7 +1473,7 @@ msgstr "E-mailadres" msgid "Send to Kindle E-mail Address" msgstr "Kindle-e-mailadres" -#: cps/templates/admin.html:17 cps/templates/layout.html:76 +#: cps/templates/admin.html:17 cps/templates/layout.html:77 #: cps/templates/user_table.html:143 msgid "Admin" msgstr "Beheer" @@ -1410,13 +1483,8 @@ msgstr "Beheer" msgid "Password" msgstr "Wachtwoord" -#: cps/templates/admin.html:20 cps/templates/layout.html:66 -#: cps/templates/user_table.html:145 -msgid "Upload" -msgstr "Uploaden" - -#: cps/templates/admin.html:22 cps/templates/detail.html:18 -#: cps/templates/detail.html:27 cps/templates/shelf.html:7 +#: cps/templates/admin.html:22 cps/templates/detail.html:19 +#: cps/templates/detail.html:28 cps/templates/shelf.html:8 #: cps/templates/user_table.html:146 msgid "Download" msgstr "Downloaden" @@ -1430,7 +1498,7 @@ msgstr "Boeken lezen" msgid "Edit" msgstr "Bewerken" -#: cps/templates/admin.html:25 cps/templates/book_edit.html:16 +#: cps/templates/admin.html:25 cps/templates/book_edit.html:17 #: cps/templates/book_table.html:100 cps/templates/modal_dialogs.html:63 #: cps/templates/modal_dialogs.html:116 cps/templates/user_edit.html:67 #: cps/templates/user_table.html:149 @@ -1543,78 +1611,107 @@ msgstr "Bewerk basisconfiguratie" msgid "Edit UI Configuration" msgstr "Bewerk gebruikersinterface configuratie" -#: cps/templates/admin.html:166 +#: cps/templates/admin.html:167 +msgid "Scheduled Tasks" +msgstr "" + +#: cps/templates/admin.html:170 cps/templates/schedule_edit.html:12 +msgid "Time at which tasks start to run" +msgstr "" + +#: cps/templates/admin.html:174 cps/templates/schedule_edit.html:20 +msgid "Maximum tasks duration" +msgstr "" + +#: cps/templates/admin.html:178 +msgid "Generate book cover thumbnails" +msgstr "" + +#: cps/templates/admin.html:182 +msgid "Generate series cover thumbnails" +msgstr "" + +#: cps/templates/admin.html:186 cps/templates/schedule_edit.html:37 +msgid "Reconnect to Calibre Library" +msgstr "" + +#: cps/templates/admin.html:193 +msgid "Refresh Thumbnail Cover Cache" +msgstr "" + +#: cps/templates/admin.html:199 msgid "Administration" msgstr "Systeembeheer" -#: cps/templates/admin.html:167 +#: cps/templates/admin.html:200 msgid "Download Debug Package" msgstr "Download foutopsporingspakket" -#: cps/templates/admin.html:168 +#: cps/templates/admin.html:201 msgid "View Logs" msgstr "Logboeken bekijken" -#: cps/templates/admin.html:171 +#: cps/templates/admin.html:204 msgid "Reconnect Calibre Database" msgstr "Opnieuw verbinden met Calibre database" -#: cps/templates/admin.html:172 +#: cps/templates/admin.html:207 msgid "Restart" msgstr "Calibre-Web herstarten" -#: cps/templates/admin.html:173 +#: cps/templates/admin.html:208 msgid "Shutdown" msgstr "Calibre-Web stoppen" -#: cps/templates/admin.html:178 -msgid "Update" -msgstr "Bijwerken" +#: cps/templates/admin.html:213 +msgid "Version Information" +msgstr "" -#: cps/templates/admin.html:182 +#: cps/templates/admin.html:217 msgid "Version" msgstr "Versie" -#: cps/templates/admin.html:183 +#: cps/templates/admin.html:218 msgid "Details" msgstr "Details" -#: cps/templates/admin.html:189 +#: cps/templates/admin.html:224 msgid "Current version" msgstr "Huidige versie" -#: cps/templates/admin.html:196 +#: cps/templates/admin.html:231 msgid "Check for Update" msgstr "Controleren op updates" -#: cps/templates/admin.html:197 +#: cps/templates/admin.html:232 msgid "Perform Update" msgstr "Update uitvoeren" -#: cps/templates/admin.html:210 +#: cps/templates/admin.html:245 msgid "Are you sure you want to restart?" msgstr "Weet je zeker dat je Calibre-Web wilt herstarten?" -#: cps/templates/admin.html:215 cps/templates/admin.html:229 -#: cps/templates/admin.html:249 cps/templates/config_db.html:70 +#: cps/templates/admin.html:250 cps/templates/admin.html:264 +#: cps/templates/admin.html:284 cps/templates/config_db.html:70 msgid "OK" msgstr "Oké" -#: cps/templates/admin.html:216 cps/templates/admin.html:230 -#: cps/templates/book_edit.html:213 cps/templates/book_table.html:127 +#: cps/templates/admin.html:251 cps/templates/admin.html:265 +#: cps/templates/book_edit.html:214 cps/templates/book_table.html:127 #: cps/templates/config_db.html:54 cps/templates/config_edit.html:359 #: 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/shelf_edit.html:27 +#: cps/templates/modal_dialogs.html:135 cps/templates/schedule_edit.html:41 +#: cps/templates/shelf_edit.html:27 cps/templates/tasks.html:46 #: cps/templates/user_edit.html:144 msgid "Cancel" msgstr "Annuleren" -#: cps/templates/admin.html:228 +#: cps/templates/admin.html:263 msgid "Are you sure you want to shutdown?" msgstr "Weet je zeker dat je Calibre-Web wilt stoppen?" -#: cps/templates/admin.html:240 +#: cps/templates/admin.html:275 msgid "Updating, please do not reload this page" msgstr "Bezig met bijwerken, vernieuw de pagina niet" @@ -1626,39 +1723,39 @@ msgstr "via" msgid "In Library" msgstr "In bibliotheek" -#: cps/templates/author.html:26 cps/templates/index.html:73 -#: cps/templates/search.html:30 cps/templates/shelf.html:19 +#: cps/templates/author.html:26 cps/templates/index.html:74 +#: cps/templates/search.html:31 cps/templates/shelf.html:20 msgid "Sort according to book date, newest first" msgstr "Sorteren op datum, nieuwste boeken eerst" -#: cps/templates/author.html:27 cps/templates/index.html:74 -#: cps/templates/search.html:31 cps/templates/shelf.html:20 +#: cps/templates/author.html:27 cps/templates/index.html:75 +#: cps/templates/search.html:32 cps/templates/shelf.html:21 msgid "Sort according to book date, oldest first" msgstr "Sorteren op datum, oudste boeken eerst" -#: cps/templates/author.html:28 cps/templates/index.html:75 -#: cps/templates/search.html:32 cps/templates/shelf.html:21 +#: cps/templates/author.html:28 cps/templates/index.html:76 +#: cps/templates/search.html:33 cps/templates/shelf.html:22 msgid "Sort title in alphabetical order" msgstr "Sorteren op alfabetische volgorde" -#: cps/templates/author.html:29 cps/templates/index.html:76 -#: cps/templates/search.html:33 cps/templates/shelf.html:22 +#: cps/templates/author.html:29 cps/templates/index.html:77 +#: cps/templates/search.html:34 cps/templates/shelf.html:23 msgid "Sort title in reverse alphabetical order" msgstr "Sorteren op omgekeerde alfabetische volgorde" -#: cps/templates/author.html:30 cps/templates/index.html:79 -#: cps/templates/search.html:36 cps/templates/shelf.html:25 +#: cps/templates/author.html:30 cps/templates/index.html:80 +#: cps/templates/search.html:37 cps/templates/shelf.html:26 msgid "Sort according to publishing date, newest first" msgstr "Sorteren op publicatiedatum, nieuwste boeken eerst" -#: cps/templates/author.html:31 cps/templates/index.html:80 -#: cps/templates/search.html:37 cps/templates/shelf.html:26 +#: cps/templates/author.html:31 cps/templates/index.html:81 +#: cps/templates/search.html:38 cps/templates/shelf.html:27 msgid "Sort according to publishing date, oldest first" msgstr "Sorteren op publicatiedatum, oudste boeken eerst" #: cps/templates/author.html:56 cps/templates/author.html:115 -#: cps/templates/index.html:29 cps/templates/index.html:112 -#: cps/templates/search.html:66 cps/templates/shelf.html:54 +#: cps/templates/index.html:30 cps/templates/index.html:113 +#: cps/templates/search.html:67 cps/templates/shelf.html:55 msgid "reduce" msgstr "beperken" @@ -1666,165 +1763,166 @@ msgstr "beperken" msgid "More by" msgstr "Meer van" -#: cps/templates/book_edit.html:10 +#: cps/templates/book_edit.html:11 msgid "Delete Book" msgstr "Boek verwijderen" -#: cps/templates/book_edit.html:13 +#: cps/templates/book_edit.html:14 msgid "Delete formats:" msgstr "Formaten verwijderen:" -#: cps/templates/book_edit.html:24 +#: cps/templates/book_edit.html:25 msgid "Convert book format:" msgstr "Boekformaat converteren:" -#: cps/templates/book_edit.html:29 +#: cps/templates/book_edit.html:30 msgid "Convert from:" msgstr "Converteren van:" -#: cps/templates/book_edit.html:31 cps/templates/book_edit.html:38 +#: cps/templates/book_edit.html:32 cps/templates/book_edit.html:39 msgid "select an option" msgstr "kies een optie" -#: cps/templates/book_edit.html:36 +#: cps/templates/book_edit.html:37 msgid "Convert to:" msgstr "Converteren naar:" -#: cps/templates/book_edit.html:45 +#: cps/templates/book_edit.html:46 msgid "Convert book" msgstr "Boek converteren" -#: cps/templates/book_edit.html:55 cps/templates/search_form.html:8 +#: cps/templates/book_edit.html:56 cps/templates/search_form.html:8 msgid "Book Title" msgstr "Boektitel" -#: cps/templates/book_edit.html:62 cps/templates/book_edit.html:270 -#: cps/templates/book_edit.html:288 cps/templates/search_form.html:12 +#: cps/templates/book_edit.html:63 cps/templates/book_edit.html:271 +#: cps/templates/book_edit.html:289 cps/templates/search_form.html:12 msgid "Author" msgstr "Auteur" -#: cps/templates/book_edit.html:67 cps/templates/book_edit.html:275 -#: cps/templates/book_edit.html:290 cps/templates/search_form.html:153 +#: cps/templates/book_edit.html:68 cps/templates/book_edit.html:276 +#: cps/templates/book_edit.html:291 cps/templates/search_form.html:153 msgid "Description" msgstr "Omschrijving" -#: cps/templates/book_edit.html:72 +#: cps/templates/book_edit.html:73 msgid "Identifiers" msgstr "Identificatoren" -#: cps/templates/book_edit.html:76 cps/templates/book_edit.html:299 +#: cps/templates/book_edit.html:77 cps/templates/book_edit.html:300 msgid "Identifier Type" msgstr "Identificatie type" -#: cps/templates/book_edit.html:77 cps/templates/book_edit.html:300 +#: cps/templates/book_edit.html:78 cps/templates/book_edit.html:301 msgid "Identifier Value" msgstr "Identificatie waarde" -#: cps/templates/book_edit.html:78 cps/templates/book_edit.html:301 +#: cps/templates/book_edit.html:79 cps/templates/book_edit.html:302 #: cps/templates/user_table.html:24 msgid "Remove" msgstr "Verwijderen" -#: cps/templates/book_edit.html:82 +#: cps/templates/book_edit.html:83 msgid "Add Identifier" msgstr "Identificator toevoegen" -#: cps/templates/book_edit.html:86 cps/templates/search_form.html:51 +#: cps/templates/book_edit.html:87 cps/templates/search_form.html:51 msgid "Tags" msgstr "Labels" -#: cps/templates/book_edit.html:94 +#: cps/templates/book_edit.html:95 msgid "Series ID" msgstr "Boekenreeks volgnummer" -#: cps/templates/book_edit.html:98 +#: cps/templates/book_edit.html:99 msgid "Rating" msgstr "Beoordeling" -#: cps/templates/book_edit.html:103 +#: cps/templates/book_edit.html:104 msgid "Fetch Cover from URL (JPEG - Image will be downloaded and stored in database)" msgstr "Omslag-url (jpg) (de omslag wordt gedownload en opgeslagen in de database)" -#: cps/templates/book_edit.html:107 +#: cps/templates/book_edit.html:108 msgid "Upload Cover from Local Disk" msgstr "Omslag uploaden vanaf de harde schijf" -#: cps/templates/book_edit.html:112 +#: cps/templates/book_edit.html:113 msgid "Published Date" msgstr "Publicatiedatum" -#: cps/templates/book_edit.html:121 cps/templates/book_edit.html:272 -#: cps/templates/book_edit.html:289 cps/templates/detail.html:164 +#: cps/templates/book_edit.html:122 cps/templates/book_edit.html:273 +#: cps/templates/book_edit.html:290 cps/templates/detail.html:165 #: cps/templates/search_form.html:16 msgid "Publisher" msgstr "Uitgever" -#: cps/templates/book_edit.html:125 cps/templates/detail.html:131 +#: cps/templates/book_edit.html:126 cps/templates/detail.html:132 #: cps/templates/user_edit.html:33 msgid "Language" msgstr "Taal" -#: cps/templates/book_edit.html:135 cps/templates/search_form.html:45 +#: cps/templates/book_edit.html:136 cps/templates/search_form.html:45 #: cps/templates/search_form.html:164 msgid "Yes" msgstr "Ja" -#: cps/templates/book_edit.html:136 cps/templates/search_form.html:46 +#: cps/templates/book_edit.html:137 cps/templates/search_form.html:46 #: cps/templates/search_form.html:165 msgid "No" msgstr "Nee" -#: cps/templates/book_edit.html:200 +#: cps/templates/book_edit.html:201 msgid "Upload Format" msgstr "Uploadformaat" -#: cps/templates/book_edit.html:208 +#: cps/templates/book_edit.html:209 msgid "View Book on Save" msgstr "Boek inkijken na bewerking" -#: cps/templates/book_edit.html:211 cps/templates/book_edit.html:229 +#: cps/templates/book_edit.html:212 cps/templates/book_edit.html:230 msgid "Fetch Metadata" msgstr "Metagegevens ophalen" -#: cps/templates/book_edit.html:212 cps/templates/config_db.html:53 +#: cps/templates/book_edit.html:213 cps/templates/config_db.html:53 #: cps/templates/config_edit.html:358 cps/templates/config_view_edit.html:174 -#: cps/templates/email_edit.html:65 cps/templates/shelf_edit.html:25 -#: cps/templates/shelf_order.html:41 cps/templates/user_edit.html:142 +#: cps/templates/email_edit.html:65 cps/templates/schedule_edit.html:40 +#: cps/templates/shelf_edit.html:25 cps/templates/shelf_order.html:41 +#: cps/templates/user_edit.html:142 msgid "Save" msgstr "Opslaan" -#: cps/templates/book_edit.html:232 +#: cps/templates/book_edit.html:233 msgid "Keyword" msgstr "Trefwoord" -#: cps/templates/book_edit.html:233 +#: cps/templates/book_edit.html:234 #, fuzzy msgid "Search keyword" msgstr " Trefwoord zoeken " -#: cps/templates/book_edit.html:239 +#: cps/templates/book_edit.html:240 msgid "Click the cover to load metadata to the form" msgstr "Klik op de omslag om de metagegevens in het formulier te laden" -#: cps/templates/book_edit.html:246 cps/templates/book_edit.html:285 +#: cps/templates/book_edit.html:247 cps/templates/book_edit.html:286 msgid "Loading..." msgstr "Bezig met laden..." -#: cps/templates/book_edit.html:250 cps/templates/layout.html:63 -#: cps/templates/layout.html:186 cps/templates/modal_dialogs.html:34 +#: cps/templates/book_edit.html:251 cps/templates/layout.html:64 +#: cps/templates/layout.html:187 cps/templates/modal_dialogs.html:34 #: cps/templates/user_edit.html:163 msgid "Close" msgstr "Sluiten" -#: cps/templates/book_edit.html:277 cps/templates/book_edit.html:291 +#: cps/templates/book_edit.html:278 cps/templates/book_edit.html:292 msgid "Source" msgstr "Bron" -#: cps/templates/book_edit.html:286 +#: cps/templates/book_edit.html:287 msgid "Search error!" msgstr "Zoekfout!" -#: cps/templates/book_edit.html:287 +#: cps/templates/book_edit.html:288 msgid "No Result(s) found! Please try another keyword." msgstr "Geen resultaten gevonden! Gebruik een ander trefwoord." @@ -1933,6 +2031,7 @@ msgid "Enter " msgstr "Identificatoren" #: cps/templates/book_table.html:113 cps/templates/modal_dialogs.html:46 +#: cps/templates/tasks.html:36 msgid "Are you really sure?" msgstr "Weet je het zeker?" @@ -2347,62 +2446,62 @@ msgstr "Voeg toegestane/geweigerde tags toe" msgid "Add Allowed/Denied custom column values" msgstr "Voeg toegestane/geweigerde aangepaste kolomwaarden toe" -#: cps/templates/detail.html:60 cps/templates/detail.html:69 +#: cps/templates/detail.html:61 cps/templates/detail.html:70 msgid "Read in Browser" msgstr "Lezen in webbrowser" -#: cps/templates/detail.html:77 cps/templates/detail.html:94 +#: cps/templates/detail.html:78 cps/templates/detail.html:95 msgid "Listen in Browser" msgstr "Luisteren in webbrowser" -#: cps/templates/detail.html:124 +#: cps/templates/detail.html:125 #, fuzzy, python-format msgid "Book %(index)s of %(range)s" msgstr "Boek %(index)s van %(range)s" -#: cps/templates/detail.html:173 +#: cps/templates/detail.html:174 msgid "Published" msgstr "Gepubliceerd" -#: cps/templates/detail.html:221 +#: cps/templates/detail.html:222 msgid "Mark As Unread" msgstr "Markeren als ongelezen" -#: cps/templates/detail.html:221 +#: cps/templates/detail.html:222 msgid "Mark As Read" msgstr "Markeren als gelezen" -#: cps/templates/detail.html:222 +#: cps/templates/detail.html:223 msgid "Read" msgstr "Gelezen" -#: cps/templates/detail.html:231 +#: cps/templates/detail.html:232 msgid "Restore from archive" msgstr "Terughalen uit archief" -#: cps/templates/detail.html:231 +#: cps/templates/detail.html:232 msgid "Add to archive" msgstr "Toevoegen aan archief" -#: cps/templates/detail.html:232 +#: cps/templates/detail.html:233 msgid "Archived" msgstr "Gearchiveerd" -#: cps/templates/detail.html:243 +#: cps/templates/detail.html:244 msgid "Description:" msgstr "Beschrijving:" -#: cps/templates/detail.html:256 cps/templates/search.html:15 +#: cps/templates/detail.html:257 cps/templates/search.html:16 msgid "Add to shelf" msgstr "Toevoegen aan boekenplank" -#: cps/templates/detail.html:267 cps/templates/detail.html:284 -#: cps/templates/feed.xml:79 cps/templates/layout.html:137 -#: cps/templates/search.html:21 +#: cps/templates/detail.html:268 cps/templates/detail.html:285 +#: cps/templates/feed.xml:79 cps/templates/layout.html:138 +#: cps/templates/search.html:22 msgid "(Public)" msgstr "(Openbaar)" -#: cps/templates/detail.html:298 +#: cps/templates/detail.html:299 msgid "Edit Metadata" msgstr "Metagegevens bewerken" @@ -2446,7 +2545,7 @@ msgstr "Bijlage bestandsgrootte limiet" msgid "Save and Send Test E-mail" msgstr "Opslaan en test-e-mail versturen" -#: cps/templates/email_edit.html:70 cps/templates/layout.html:29 +#: cps/templates/email_edit.html:70 cps/templates/layout.html:30 #: cps/templates/shelf_order.html:42 cps/templates/user_table.html:174 msgid "Back" msgstr "Annuleren" @@ -2472,7 +2571,7 @@ msgstr "Voer domeinnaam in" msgid "Denied Domains (Blacklist)" msgstr "Geweigerde domeinen voor registratie" -#: cps/templates/feed.xml:21 cps/templates/layout.html:170 +#: cps/templates/feed.xml:21 cps/templates/layout.html:171 msgid "Next" msgstr "Volgende" @@ -2485,6 +2584,10 @@ msgstr "Open het .kobo/Kobo eReader.conf bestand in een teksteditor en voeg toe msgid "Kobo Token:" msgstr "Kobo Sync Token" +#: cps/templates/grid.html:21 +msgid "List" +msgstr "" + #: cps/templates/http_error.html:31 #, fuzzy msgid "Calibre-Web Instance is unconfigured, please contact your administrator" @@ -2502,29 +2605,29 @@ msgstr "Terug naar startpagina" msgid "Logout User" msgstr "Gebruiker uitloggen" -#: cps/templates/index.html:70 +#: cps/templates/index.html:71 msgid "Sort ascending according to download count" msgstr "" -#: cps/templates/index.html:71 +#: cps/templates/index.html:72 msgid "Sort descending according to download count" msgstr "" -#: cps/templates/index.html:77 cps/templates/search.html:34 -#: cps/templates/shelf.html:23 +#: cps/templates/index.html:78 cps/templates/search.html:35 +#: cps/templates/shelf.html:24 msgid "Sort authors in alphabetical order" msgstr "Auteurs sorteren op alfabetische volgorde" -#: cps/templates/index.html:78 cps/templates/search.html:35 -#: cps/templates/shelf.html:24 +#: cps/templates/index.html:79 cps/templates/search.html:36 +#: cps/templates/shelf.html:25 msgid "Sort authors in reverse alphabetical order" msgstr "Auteurs sorteren op omgekeerde alfabetische volgorde" -#: cps/templates/index.html:82 +#: cps/templates/index.html:83 msgid "Sort ascending according to series index" msgstr "Sorteer oplopend volgens de serie index" -#: cps/templates/index.html:83 +#: cps/templates/index.html:84 msgid "Sort descending according to series index" msgstr "Sorteer aflopend volgens de serie index" @@ -2588,7 +2691,7 @@ msgstr "Boeken gesorteerd op beoordeling" msgid "Books ordered by file formats" msgstr "Boeken gesorteerd op bestandsformaat" -#: cps/templates/index.xml:119 cps/templates/layout.html:135 +#: cps/templates/index.xml:119 cps/templates/layout.html:136 #: cps/templates/search_form.html:87 msgid "Shelves" msgstr "Boekenplanken" @@ -2597,63 +2700,67 @@ msgstr "Boekenplanken" msgid "Books organized in shelves" msgstr "Boeken georganiseerd op boekenplanken" -#: cps/templates/layout.html:29 +#: cps/templates/layout.html:30 msgid "Home" msgstr "Startpagina" -#: cps/templates/layout.html:35 +#: cps/templates/layout.html:36 msgid "Toggle Navigation" msgstr "Navigatie aanpassen" -#: cps/templates/layout.html:46 +#: cps/templates/layout.html:47 msgid "Search Library" msgstr "Zoek in bibliotheek" -#: cps/templates/layout.html:63 cps/templates/layout.html:117 +#: cps/templates/layout.html:64 cps/templates/layout.html:118 msgid "Uploading..." msgstr "Bezig met uploaden..." -#: cps/templates/layout.html:63 +#: cps/templates/layout.html:64 msgid "Error" msgstr "Fout" -#: cps/templates/layout.html:63 +#: cps/templates/layout.html:64 msgid "Upload done, processing, please wait..." msgstr "Uploaden voltooid, bezig met verwerken..." -#: cps/templates/layout.html:76 cps/templates/read.html:72 +#: cps/templates/layout.html:77 cps/templates/read.html:72 #: cps/templates/readcbr.html:84 cps/templates/readcbr.html:108 msgid "Settings" msgstr "Instellingen" -#: cps/templates/layout.html:78 +#: cps/templates/layout.html:79 msgid "Account" msgstr "Account" -#: cps/templates/layout.html:80 +#: cps/templates/layout.html:81 msgid "Logout" msgstr "Afmelden" -#: cps/templates/layout.html:118 +#: cps/templates/layout.html:119 msgid "Please do not refresh the page" msgstr "Deze pagina niet vernieuwen" -#: cps/templates/layout.html:128 +#: cps/templates/layout.html:129 msgid "Browse" msgstr "Verkennen" -#: cps/templates/layout.html:141 cps/templates/stats.html:3 +#: cps/templates/layout.html:142 cps/templates/stats.html:3 msgid "About" msgstr "Informatie" -#: cps/templates/layout.html:155 +#: cps/templates/layout.html:156 msgid "Previous" msgstr "Vorige" -#: cps/templates/layout.html:182 +#: cps/templates/layout.html:183 msgid "Book Details" msgstr "Boekgegevens" +#: cps/templates/list.html:22 +msgid "Grid" +msgstr "" + #: cps/templates/login.html:18 msgid "Remember Me" msgstr "Gegevens opslaan" @@ -2758,7 +2865,7 @@ msgstr "Bovenliggende map" msgid "Select" msgstr "Selecteer" -#: cps/templates/modal_dialogs.html:134 +#: cps/templates/modal_dialogs.html:134 cps/templates/tasks.html:45 #, fuzzy msgid "Ok" msgstr "Oké" @@ -2940,15 +3047,23 @@ msgstr "Na controle wordt je automatisch op dit apparaat ingelogd." msgid "This verification link will expire in 10 minutes." msgstr "De link vervalt na 10 minuten." -#: cps/templates/search.html:5 +#: cps/templates/schedule_edit.html:29 +msgid "Generate Book Cover Thumbnails" +msgstr "" + +#: cps/templates/schedule_edit.html:33 +msgid "Generate Series Cover Thumbnails" +msgstr "" + +#: cps/templates/search.html:6 msgid "No Results Found" msgstr "Geen resultaten gevonden" -#: cps/templates/search.html:6 +#: cps/templates/search.html:7 msgid "Search Term:" msgstr "Zoekterm:" -#: cps/templates/search.html:8 +#: cps/templates/search.html:9 msgid "Results for:" msgstr "Resultaten voor:" @@ -3001,23 +3116,23 @@ msgstr "Van:" msgid "To:" msgstr "Tot:" -#: cps/templates/shelf.html:12 +#: cps/templates/shelf.html:13 msgid "Delete this Shelf" msgstr "Deze boekenplank verwijderen" -#: cps/templates/shelf.html:13 +#: cps/templates/shelf.html:14 msgid "Edit Shelf Properties" msgstr "Bewerk boekenplank eigenschappen" -#: cps/templates/shelf.html:16 +#: cps/templates/shelf.html:17 msgid "Arrange books manually" msgstr "Boeken handmatig rangschikken" -#: cps/templates/shelf.html:17 +#: cps/templates/shelf.html:18 msgid "Disable Change order" msgstr "Schakel verandering van de volgorde uit" -#: cps/templates/shelf.html:17 +#: cps/templates/shelf.html:18 msgid "Enable Change order" msgstr "Schakel verandering van de volgorde in" @@ -3062,8 +3177,8 @@ msgid "System Statistics" msgstr "Systeeminformatie" #: cps/templates/stats.html:33 -msgid "Program Library" -msgstr "Programmabibliotheek" +msgid "Program" +msgstr "" #: cps/templates/stats.html:34 msgid "Installed Version" @@ -3093,6 +3208,18 @@ msgstr "Looptijd" msgid "Start Time" msgstr "Begintijd" +#: cps/templates/tasks.html:20 +msgid "Actions" +msgstr "" + +#: cps/templates/tasks.html:40 +msgid "This task will be cancelled. Any progress made by this task will be saved." +msgstr "" + +#: cps/templates/tasks.html:41 +msgid "If this is a scheduled task, it will be re-ran during the next scheduled time." +msgstr "" + #: cps/templates/user_edit.html:20 msgid "Reset user Password" msgstr "Gebruikerswachtwoord herstellen" diff --git a/cps/translations/pl/LC_MESSAGES/messages.mo b/cps/translations/pl/LC_MESSAGES/messages.mo index 9fa13572eb1f47b4e6a1ec732d4ee8d19d0032d4..f6526bdcdeaadd1d493d1c6b5a32f78b6132ea61 100644 GIT binary patch delta 11167 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 XNpecb*zs=Dl5#uRgp~|9?(6#>94i2? delta 11253 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\n" "Language: pl\n" @@ -17,596 +17,621 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.9.1\n" +"Generated-By: Babel 2.8.0\n" -#: cps/about.py:86 +#: cps/about.py:84 msgid "Statistics" msgstr "Statystyki" -#: cps/admin.py:141 +#: cps/admin.py:146 msgid "Server restarted, please reload page" msgstr "Serwer uruchomiony ponownie, proszę odświeżyć stronę" -#: cps/admin.py:143 +#: cps/admin.py:148 msgid "Performing shutdown of server, please close window" msgstr "Wykonano wyłączenie serwera, proszę zamknąć okno" -#: cps/admin.py:151 +#: cps/admin.py:156 msgid "Reconnect successful" msgstr "Ponowne połączenie zakończono sukcesem" -#: cps/admin.py:154 +#: cps/admin.py:159 msgid "Unknown command" msgstr "Nieznane polecenie" # ??? -#: cps/admin.py:176 cps/editbooks.py:713 cps/editbooks.py:892 -#: cps/editbooks.py:894 cps/editbooks.py:930 cps/editbooks.py:947 -#: cps/updater.py:608 cps/uploader.py:93 cps/uploader.py:103 +#: cps/admin.py:192 cps/editbooks.py:571 cps/editbooks.py:573 +#: cps/editbooks.py:609 cps/editbooks.py:626 cps/editbooks.py:1233 +#: cps/updater.py:613 cps/uploader.py:87 cps/uploader.py:97 msgid "Unknown" msgstr "Nieznany" -#: cps/admin.py:197 +#: cps/admin.py:217 msgid "Admin page" msgstr "Panel administratora" -#: cps/admin.py:217 +#: cps/admin.py:237 msgid "Basic Configuration" msgstr "Konfiguracja podstawowa" -#: cps/admin.py:255 +#: cps/admin.py:275 msgid "UI Configuration" msgstr "Konfiguracja Interfejsu" -#: cps/admin.py:289 cps/templates/admin.html:51 +#: cps/admin.py:309 cps/templates/admin.html:51 msgid "Edit Users" msgstr "Edytuj użytkowników" # ??? -#: cps/admin.py:333 cps/opds.py:529 cps/templates/grid.html:13 +#: cps/admin.py:353 cps/opds.py:532 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "Wszystko" -#: cps/admin.py:360 cps/admin.py:1648 +#: cps/admin.py:380 cps/admin.py:1365 msgid "User not found" msgstr "Nie znaleziono użytkownika" -#: cps/admin.py:374 +#: cps/admin.py:394 msgid "{} users deleted successfully" msgstr "{} użytkowników usuniętych pomyślnie" -#: cps/admin.py:397 cps/templates/config_view_edit.html:133 +#: cps/admin.py:417 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:418 cps/admin.py:424 +#: cps/admin.py:438 cps/admin.py:444 msgid "Malformed request" msgstr "Nieprawidłowo sformułowane żądanie" -#: cps/admin.py:436 cps/admin.py:1526 +#: cps/admin.py:456 cps/admin.py:1962 msgid "Guest Name can't be changed" msgstr "Nazwa gościa nie może być zmieniona" -#: cps/admin.py:448 +#: cps/admin.py:468 msgid "Guest can't have this role" msgstr "Gość nie może pełnić tej roli" -#: cps/admin.py:460 cps/admin.py:1484 +#: cps/admin.py:480 cps/admin.py:1920 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:464 cps/admin.py:478 +#: cps/admin.py:484 cps/admin.py:498 msgid "Value has to be true or false" msgstr "Wartość musi być prawdziwa lub fałszywa" -#: cps/admin.py:466 +#: cps/admin.py:486 msgid "Invalid role" msgstr "Nieprawidłowa rola" -#: cps/admin.py:470 +#: cps/admin.py:490 msgid "Guest can't have this view" msgstr "Gość nie może tego zobaczyć" -#: cps/admin.py:480 +#: cps/admin.py:500 msgid "Invalid view" msgstr "Nieprawidłowy widok" -#: cps/admin.py:483 +#: cps/admin.py:503 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:487 +#: cps/admin.py:507 msgid "No Valid Locale Given" msgstr "Nie podano prawidłowej lokalizacji" -#: cps/admin.py:498 +#: cps/admin.py:518 msgid "No Valid Book Language Given" msgstr "Nie podano obowiązującego języka książki" -#: cps/admin.py:500 cps/editbooks.py:1267 +#: cps/admin.py:520 cps/editbooks.py:438 msgid "Parameter not found" msgstr "Nie znaleziono parametru" -#: cps/admin.py:553 +#: cps/admin.py:557 #, fuzzy msgid "Invalid Read Column" msgstr "Nieprawidłowa kolumna odczytu" -#: cps/admin.py:559 +#: cps/admin.py:563 #, fuzzy msgid "Invalid Restricted Column" msgstr "Nieprawidłowa kolumna z ograniczeniami" -#: cps/admin.py:579 cps/admin.py:1355 +#: cps/admin.py:583 cps/admin.py:1791 msgid "Calibre-Web configuration updated" msgstr "Konfiguracja Calibre-Web została zaktualizowana" -#: cps/admin.py:591 +#: cps/admin.py:595 msgid "Do you really want to delete the Kobo Token?" msgstr "Czy na pewno chcesz usunąć Token Kobo?" -#: cps/admin.py:593 +#: cps/admin.py:597 msgid "Do you really want to delete this domain?" msgstr "Czy naprawdę chcesz usunąć tę domenę?" -#: cps/admin.py:595 +#: cps/admin.py:599 msgid "Do you really want to delete this user?" msgstr "Czy naprawdę chcesz usunąć tego użytkownika?" -#: cps/admin.py:597 +#: cps/admin.py:601 msgid "Are you sure you want to delete this shelf?" msgstr "Czy na pewno chcesz usunąć półkę?" -#: cps/admin.py:599 +#: cps/admin.py:603 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:601 +#: cps/admin.py:605 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:603 +#: cps/admin.py:607 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:605 +#: cps/admin.py:609 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:607 +#: cps/admin.py:611 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:610 +#: cps/admin.py:614 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:612 +#: cps/admin.py:616 msgid "Are you sure you want to change Calibre library location?" msgstr "Czy na pewno chcesz zmienić lokalizację biblioteki Calibre?" -#: cps/admin.py:614 +#: cps/admin.py:618 +msgid "Calibre-Web will search for updated Covers and update Cover Thumbnails, this may take a while?" +msgstr "" + +#: cps/admin.py:620 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:764 -#, fuzzy -msgid "Tag not found" -msgstr "Nie znaleziono znacznika" - -#: cps/admin.py:776 -msgid "Invalid Action" -msgstr "Nieprawidłowe działanie" - -#: cps/admin.py:893 cps/admin.py:899 cps/admin.py:909 cps/admin.py:919 +#: cps/admin.py:862 cps/admin.py:868 cps/admin.py:878 cps/admin.py:888 #: 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:895 cps/admin.py:901 cps/admin.py:911 cps/admin.py:921 +#: cps/admin.py:864 cps/admin.py:870 cps/admin.py:880 cps/admin.py:890 #: 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:936 +#: cps/admin.py:905 msgid "{} sync entries deleted" msgstr "" -#: cps/admin.py:1059 +#: cps/admin.py:953 +#, fuzzy +msgid "Tag not found" +msgstr "Nie znaleziono znacznika" + +#: cps/admin.py:965 +msgid "Invalid Action" +msgstr "Nieprawidłowe działanie" + +#: cps/admin.py:1080 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "client_secrets.json nie został skonfigurowany dla aplikacji webowej" -#: cps/admin.py:1104 +#: cps/admin.py:1125 msgid "Logfile Location is not Valid, Please Enter Correct Path" msgstr "Lokalizacja pliku dziennika jest nieprawidłowa, wprowadź poprawną ścieżkę" -#: cps/admin.py:1110 +#: cps/admin.py:1131 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:1140 +#: cps/admin.py:1161 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:1146 +#: cps/admin.py:1167 msgid "Please Enter a LDAP Service Account and Password" msgstr "Proszę wprowadzić konto i hasło usługi LDAP" -#: cps/admin.py:1149 +#: cps/admin.py:1170 msgid "Please Enter a LDAP Service Account" msgstr "Proszę wprowadzić konto usługi LDAP" -#: cps/admin.py:1154 +#: cps/admin.py:1175 #, 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:1156 +#: cps/admin.py:1177 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "Filtr obiektów grupy LDAP ma niedopasowany nawias" -#: cps/admin.py:1160 +#: cps/admin.py:1181 #, 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:1162 +#: cps/admin.py:1183 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "Filtr obiektów użytkownika LDAP ma niedopasowany nawias" -#: cps/admin.py:1169 +#: cps/admin.py:1190 #, 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:1171 +#: cps/admin.py:1192 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "Filtr użytkownika członka LDAP ma niedopasowane nawiasy" -#: cps/admin.py:1178 +#: cps/admin.py:1199 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:1223 cps/admin.py:1339 cps/admin.py:1437 cps/admin.py:1554 -#: cps/admin.py:1623 cps/editbooks.py:678 cps/editbooks.py:882 -#: cps/editbooks.py:1130 cps/shelf.py:100 cps/shelf.py:160 cps/shelf.py:203 -#: cps/shelf.py:278 cps/shelf.py:343 cps/shelf.py:380 cps/shelf.py:456 -#: cps/web.py:1742 +#: cps/admin.py:1230 cps/admin.py:1852 +msgid "Add new user" +msgstr "Dodaj nowego użytkownika" + +#: cps/admin.py:1239 cps/templates/admin.html:100 +msgid "Edit E-mail Server Settings" +msgstr "Zmień ustawienia SMTP" + +#: cps/admin.py:1258 +msgid "Gmail Account Verification Successful" +msgstr "Weryfikacja konta Gmail przebiegła pomyślnie" + +#: cps/admin.py:1277 cps/admin.py:1658 cps/admin.py:1775 cps/admin.py:1873 +#: cps/admin.py:1990 cps/editbooks.py:227 cps/editbooks.py:301 +#: cps/editbooks.py:1196 cps/shelf.py:82 cps/shelf.py:142 cps/shelf.py:185 +#: cps/shelf.py:235 cps/shelf.py:272 cps/shelf.py:343 cps/shelf.py:457 +#: cps/tasks/convert.py:136 cps/web.py:1413 #, python-format msgid "Database error: %(error)s." msgstr "Błąd bazy danych: %(error)s." -#: cps/admin.py:1235 -msgid "DB Location is not Valid, Please Enter Correct Path" -msgstr "Lokalizacja bazy danych jest nieprawidłowa, wprowadź poprawną ścieżkę" - -#: cps/admin.py:1253 -msgid "DB is not Writeable" -msgstr "Baza danych nie jest zapisywalna" - -#: cps/admin.py:1266 -msgid "Keyfile Location is not Valid, Please Enter Correct Path" -msgstr "Lokalizacja pliku klucza jest nieprawidłowa, wprowadź poprawną ścieżkę" - -#: cps/admin.py:1270 -msgid "Certfile Location is not Valid, Please Enter Correct Path" -msgstr "Lokalizacja pliku certyfikatu jest nieprawidłowa, wprowadź poprawną ścieżkę" - -#: cps/admin.py:1378 -#, fuzzy -msgid "Database Settings updated" -msgstr "Zaktualizowano ustawienia serwera poczty e-mail" - -#: cps/admin.py:1386 -msgid "Database Configuration" -msgstr "Konfiguracja bazy danych" - -#: cps/admin.py:1402 cps/web.py:1557 -msgid "Please fill out all fields!" -msgstr "Proszę wypełnić wszystkie pola!" - -#: cps/admin.py:1410 -msgid "E-mail is not from valid domain" -msgstr "E-mail nie pochodzi z prawidłowej domeny" - -#: cps/admin.py:1416 cps/admin.py:1576 -msgid "Add new user" -msgstr "Dodaj nowego użytkownika" - -#: cps/admin.py:1427 -#, python-format -msgid "User '%(user)s' created" -msgstr "Użytkownik '%(user)s' został utworzony" - -#: cps/admin.py:1433 -msgid "Found an existing account for this e-mail address or name." -msgstr "Znaleziono istniejące konto dla tego adresu e-mail lub nazwy." - -#: cps/admin.py:1463 -#, python-format -msgid "User '%(nick)s' deleted" -msgstr "Użytkownik '%(nick)s' został usunięty" - -#: cps/admin.py:1465 cps/admin.py:1466 -#, fuzzy -msgid "Can't delete Guest User" -msgstr "Nie można usunąć użytkownika gościa" - -#: cps/admin.py:1469 -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:1542 cps/admin.py:1667 -#, python-format -msgid "Edit User %(nick)s" -msgstr "Edytuj użytkownika %(nick)s" - -#: cps/admin.py:1546 -#, python-format -msgid "User '%(nick)s' updated" -msgstr "Użytkownik '%(nick)s' został zaktualizowany" - -#: cps/admin.py:1550 cps/admin.py:1682 cps/web.py:1582 cps/web.py:1642 -msgid "An unknown error occurred. Please try again later." -msgstr "Wystąpił nieznany błąd. Spróbuj ponownie później." - -#: cps/admin.py:1585 cps/templates/admin.html:100 -msgid "Edit E-mail Server Settings" -msgstr "Zmień ustawienia SMTP" - -#: cps/admin.py:1604 -msgid "Gmail Account Verification Successful" -msgstr "Weryfikacja konta Gmail przebiegła pomyślnie" - -#: cps/admin.py:1630 +#: cps/admin.py:1284 #, 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:1633 +#: cps/admin.py:1287 #, 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:1635 +#: cps/admin.py:1289 msgid "Please configure your e-mail address first..." msgstr "Najpierw skonfiguruj swój adres e-mail..." -#: cps/admin.py:1637 +#: cps/admin.py:1291 msgid "E-mail server settings updated" msgstr "Zaktualizowano ustawienia serwera poczty e-mail" +#: cps/admin.py:1314 cps/templates/admin.html:191 +msgid "Edit Scheduled Tasks Settings" +msgstr "" + +#: cps/admin.py:1326 +msgid "Invalid start time for task specified" +msgstr "" + +#: cps/admin.py:1331 +msgid "Invalid duration for task specified" +msgstr "" + +#: cps/admin.py:1340 +msgid "Scheduled tasks settings updated" +msgstr "" + +#: cps/admin.py:1350 cps/admin.py:1399 cps/admin.py:1986 cps/web.py:1254 +#: cps/web.py:1315 +msgid "An unknown error occurred. Please try again later." +msgstr "Wystąpił nieznany błąd. Spróbuj ponownie później." + +#: cps/admin.py:1354 +msgid "Settings DB is not Writeable" +msgstr "" + +#: cps/admin.py:1384 cps/admin.py:1978 +#, python-format +msgid "Edit User %(nick)s" +msgstr "Edytuj użytkownika %(nick)s" + # ??? -#: cps/admin.py:1679 +#: cps/admin.py:1396 #, python-format msgid "Password for user %(user)s reset" msgstr "Zrestartowano hasło użytkownika %(user)s" -#: cps/admin.py:1685 cps/web.py:1522 +#: cps/admin.py:1402 cps/web.py:1194 msgid "Please configure the SMTP mail settings first..." msgstr "Proszę najpierw skonfigurować ustawienia SMTP poczty e-mail..." -#: cps/admin.py:1696 +#: cps/admin.py:1413 msgid "Logfile viewer" msgstr "Przeglądanie dziennika" -#: cps/admin.py:1762 +#: cps/admin.py:1479 msgid "Requesting update package" msgstr "Żądanie o pakiet aktualizacji" -#: cps/admin.py:1763 +#: cps/admin.py:1480 msgid "Downloading update package" msgstr "Pobieranie pakietu aktualizacji" -#: cps/admin.py:1764 +#: cps/admin.py:1481 msgid "Unzipping update package" msgstr "Rozpakowywanie pakietu aktualizacji" # ??? -#: cps/admin.py:1765 +#: cps/admin.py:1482 msgid "Replacing files" msgstr "Zastępowanie plików" -#: cps/admin.py:1766 +#: cps/admin.py:1483 msgid "Database connections are closed" msgstr "Połączenia z bazą danych zostały zakończone" -#: cps/admin.py:1767 +#: cps/admin.py:1484 msgid "Stopping server" msgstr "Zatrzymywanie serwera" -#: cps/admin.py:1768 +#: cps/admin.py:1485 msgid "Update finished, please press okay and reload page" msgstr "Aktualizacja zakończona, proszę nacisnąć OK i odświeżyć stronę" -#: cps/admin.py:1769 cps/admin.py:1770 cps/admin.py:1771 cps/admin.py:1772 -#: cps/admin.py:1773 cps/admin.py:1774 +#: cps/admin.py:1486 cps/admin.py:1487 cps/admin.py:1488 cps/admin.py:1489 +#: cps/admin.py:1490 cps/admin.py:1491 msgid "Update failed:" msgstr "Aktualizacja nieudana:" -#: cps/admin.py:1769 cps/updater.py:384 cps/updater.py:619 cps/updater.py:621 +#: cps/admin.py:1486 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 msgid "HTTP Error" msgstr "Błąd HTTP" -#: cps/admin.py:1770 cps/updater.py:386 cps/updater.py:623 +#: cps/admin.py:1487 cps/updater.py:391 cps/updater.py:628 msgid "Connection error" msgstr "Błąd połączenia" -#: cps/admin.py:1771 cps/updater.py:388 cps/updater.py:625 +#: cps/admin.py:1488 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:1772 cps/updater.py:390 cps/updater.py:627 +#: cps/admin.py:1489 cps/updater.py:395 cps/updater.py:632 msgid "General error" msgstr "Błąd ogólny" -#: cps/admin.py:1773 +#: cps/admin.py:1490 #, 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:1774 +#: cps/admin.py:1491 msgid "Files could not be replaced during update" msgstr "" -#: cps/admin.py:1798 +#: cps/admin.py:1515 #, fuzzy msgid "Failed to extract at least One LDAP User" msgstr "Błąd przy tworzeniu przynajmniej jednego użytkownika LDAP" -#: cps/admin.py:1843 +#: cps/admin.py:1560 msgid "Failed to Create at Least One LDAP User" msgstr "Błąd przy tworzeniu przynajmniej jednego użytkownika LDAP" -#: cps/admin.py:1856 +#: cps/admin.py:1573 #, python-format msgid "Error: %(ldaperror)s" msgstr "Błąd: %(ldaperror)s" -#: cps/admin.py:1860 +#: cps/admin.py:1577 msgid "Error: No user returned in response of LDAP server" msgstr "Błąd. LDAP nie zwrócił żadnego użytkownika" -#: cps/admin.py:1893 +#: cps/admin.py:1610 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:1895 +#: cps/admin.py:1612 msgid "{} User Successfully Imported" msgstr "{} Użytkownik pomyślnie zaimportowany" -#: cps/converter.py:30 +#: cps/admin.py:1670 +msgid "DB Location is not Valid, Please Enter Correct Path" +msgstr "Lokalizacja bazy danych jest nieprawidłowa, wprowadź poprawną ścieżkę" + +#: cps/admin.py:1689 +msgid "DB is not Writeable" +msgstr "Baza danych nie jest zapisywalna" + +#: cps/admin.py:1702 +msgid "Keyfile Location is not Valid, Please Enter Correct Path" +msgstr "Lokalizacja pliku klucza jest nieprawidłowa, wprowadź poprawną ścieżkę" + +#: cps/admin.py:1706 +msgid "Certfile Location is not Valid, Please Enter Correct Path" +msgstr "Lokalizacja pliku certyfikatu jest nieprawidłowa, wprowadź poprawną ścieżkę" + +#: cps/admin.py:1814 +#, fuzzy +msgid "Database Settings updated" +msgstr "Zaktualizowano ustawienia serwera poczty e-mail" + +#: cps/admin.py:1822 +msgid "Database Configuration" +msgstr "Konfiguracja bazy danych" + +#: cps/admin.py:1838 cps/web.py:1229 +msgid "Please fill out all fields!" +msgstr "Proszę wypełnić wszystkie pola!" + +#: cps/admin.py:1846 +msgid "E-mail is not from valid domain" +msgstr "E-mail nie pochodzi z prawidłowej domeny" + +#: cps/admin.py:1863 +#, python-format +msgid "User '%(user)s' created" +msgstr "Użytkownik '%(user)s' został utworzony" + +#: cps/admin.py:1869 +msgid "Found an existing account for this e-mail address or name." +msgstr "Znaleziono istniejące konto dla tego adresu e-mail lub nazwy." + +#: cps/admin.py:1899 +#, python-format +msgid "User '%(nick)s' deleted" +msgstr "Użytkownik '%(nick)s' został usunięty" + +#: cps/admin.py:1901 cps/admin.py:1902 +#, fuzzy +msgid "Can't delete Guest User" +msgstr "Nie można usunąć użytkownika gościa" + +#: cps/admin.py:1905 +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:1982 +#, python-format +msgid "User '%(nick)s' updated" +msgstr "Użytkownik '%(nick)s' został zaktualizowany" + +#: cps/converter.py:31 msgid "not installed" msgstr "nie zainstalowane" -#: cps/converter.py:31 +#: cps/converter.py:32 msgid "Execution permissions missing" msgstr "Brak uprawnienia do wykonywania pliku" -#: cps/db.py:674 cps/web.py:710 cps/web.py:1222 +#: cps/db.py:681 cps/search.py:134 cps/web.py:720 #, python-format msgid "Custom Column No.%(column)d is not existing in calibre database" msgstr "Niestandardowa kolumna No.%(column)d nie istnieje w bazie calibre" -#: cps/db.py:917 cps/templates/config_edit.html:204 +#: cps/db.py:924 cps/templates/config_edit.html:204 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 -#: cps/web.py:551 cps/web.py:585 cps/web.py:646 cps/web.py:671 cps/web.py:1003 -#: cps/web.py:1032 cps/web.py:1066 cps/web.py:1093 cps/web.py:1132 +#: cps/web.py:549 cps/web.py:583 cps/web.py:656 cps/web.py:681 cps/web.py:962 +#: cps/web.py:992 cps/web.py:1027 cps/web.py:1055 cps/web.py:1094 msgid "None" msgstr "Brak" -#: cps/editbooks.py:295 cps/editbooks.py:297 -msgid "Book Format Successfully Deleted" -msgstr "Plik książki w wybranym formacie został usunięty" - -#: cps/editbooks.py:304 cps/editbooks.py:306 -msgid "Book Successfully Deleted" -msgstr "Książka została usunięta" - -#: cps/editbooks.py:358 -msgid "You are missing permissions to delete books" -msgstr "" - -#: cps/editbooks.py:373 cps/editbooks.py:765 cps/web.py:518 cps/web.py:1783 -#: cps/web.py:1825 cps/web.py:1870 +#: cps/editbooks.py:109 cps/editbooks.py:890 cps/web.py:516 cps/web.py:1454 +#: cps/web.py:1496 cps/web.py:1541 msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible" msgstr "Błąd otwierania e-booka. Plik nie istnieje lub jest niedostępny" -#: cps/editbooks.py:408 -msgid "edit metadata" -msgstr "edytuj metadane" - -#: cps/editbooks.py:457 -#, python-format -msgid "%(seriesindex)s is not a valid number, skipping" -msgstr "%(seriesindex)s nie jest poprawną liczbą, pomijanie" - -#: cps/editbooks.py:493 cps/editbooks.py:1001 -#, fuzzy, python-format -msgid "'%(langname)s' is not a valid language" -msgstr "%(langname)s nie jest prawidłowym językiem" - -#: cps/editbooks.py:634 -msgid "User has no rights to upload additional file formats" -msgstr "" - -#: cps/editbooks.py:639 cps/editbooks.py:1029 -#, 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:643 cps/editbooks.py:1033 -msgid "File to be uploaded must have an extension" -msgstr "Plik do wysłania musi mieć rozszerzenie" - -#: cps/editbooks.py:655 -#, 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:660 -#, python-format -msgid "Failed to store file %(file)s." -msgstr "Nie można zapisać pliku %(file)s." - -#: cps/editbooks.py:683 -#, python-format -msgid "File format %(ext)s added to %(book)s" -msgstr "Format pliku %(ext)s dodany do %(book)s" - -#: cps/editbooks.py:697 cps/editbooks.py:809 +#: cps/editbooks.py:153 cps/editbooks.py:1216 msgid "User has no rights to upload cover" msgstr "" -#: cps/editbooks.py:828 +#: cps/editbooks.py:173 cps/editbooks.py:711 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "W identyfikatorach nie jest rozróżniana wielkość liter, nadpisywanie starego identyfikatora" -#: cps/editbooks.py:869 +#: cps/editbooks.py:214 msgid "Metadata successfully updated" msgstr "Metadane zostały pomyślnie zaktualizowane" -#: cps/editbooks.py:887 +#: cps/editbooks.py:232 msgid "Error editing book: {}" msgstr "" -#: cps/editbooks.py:951 -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:1041 -#, 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:1061 -#, 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:1117 +#: cps/editbooks.py:287 #, python-format msgid "File %(file)s uploaded" msgstr "Wysłano plik %(file)s" -#: cps/editbooks.py:1143 +#: cps/editbooks.py:314 msgid "Source or destination format for conversion missing" msgstr "Brak formatu źródłowego lub docelowego do konwersji" -#: cps/editbooks.py:1151 +#: cps/editbooks.py:322 #, 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:1155 +#: cps/editbooks.py:326 #, 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:630 +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:685 cps/editbooks.py:1010 +#, fuzzy, python-format +msgid "'%(langname)s' is not a valid language" +msgstr "%(langname)s nie jest prawidłowym językiem" + +#: cps/editbooks.py:723 cps/editbooks.py:1157 +#, 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:727 cps/editbooks.py:1161 +msgid "File to be uploaded must have an extension" +msgstr "Plik do wysłania musi mieć rozszerzenie" + +#: cps/editbooks.py:735 +#, 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:755 +#, 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:812 cps/editbooks.py:814 +msgid "Book Format Successfully Deleted" +msgstr "Plik książki w wybranym formacie został usunięty" + +#: cps/editbooks.py:821 cps/editbooks.py:823 +msgid "Book Successfully Deleted" +msgstr "Książka została usunięta" + +#: cps/editbooks.py:875 +msgid "You are missing permissions to delete books" +msgstr "" + +#: cps/editbooks.py:925 +msgid "edit metadata" +msgstr "edytuj metadane" + +#: cps/editbooks.py:974 +#, python-format +msgid "%(seriesindex)s is not a valid number, skipping" +msgstr "%(seriesindex)s nie jest poprawną liczbą, pomijanie" + +#: cps/editbooks.py:1152 +msgid "User has no rights to upload additional file formats" +msgstr "" + +#: cps/editbooks.py:1173 +#, 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:1178 +#, python-format +msgid "Failed to store file %(file)s." +msgstr "Nie można zapisać pliku %(file)s." + +#: cps/editbooks.py:1201 +#, python-format +msgid "File format %(ext)s added to %(book)s" +msgstr "Format pliku %(ext)s dodany do %(book)s" + #: cps/gdrive.py:58 msgid "Google Drive setup not completed, try to deactivate and activate Google Drive again" msgstr "Konfiguracja Google Drive nie została zakończona, spróbuj dezaktywować i ponownie aktywować Google Drive" @@ -615,27 +640,27 @@ 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:81 +#: cps/helper.py:80 #, 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:87 cps/tasks/convert.py:75 +#: cps/helper.py:86 cps/tasks/convert.py:75 #, 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:92 +#: cps/helper.py:91 #, python-format msgid "%(format)s not found: %(fn)s" msgstr "%(format)s nie znaleziono: %(fn)s" -#: cps/helper.py:97 cps/helper.py:221 cps/templates/detail.html:41 -#: cps/templates/detail.html:45 +#: cps/helper.py:96 cps/helper.py:221 cps/templates/detail.html:42 +#: cps/templates/detail.html:46 msgid "Send to Kindle" msgstr "Wyślij do Kindle" -#: cps/helper.py:98 cps/helper.py:115 cps/helper.py:223 +#: cps/helper.py:97 cps/helper.py:115 cps/helper.py:223 msgid "This e-mail has been sent via Calibre-Web." msgstr "Ten e-mail został wysłany za pośrednictwem Calibre-Web." @@ -677,131 +702,111 @@ msgstr "Wyślij do Kindle" 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:353 +#: cps/helper.py:341 msgid "Read status could not set: {}" msgstr "" -#: cps/helper.py:376 +#: cps/helper.py:364 #, 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:382 +#: cps/helper.py:370 #, 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:393 +#: cps/helper.py:381 #, 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:458 +#: cps/helper.py:446 #, 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:529 cps/helper.py:538 +#: cps/helper.py:518 cps/helper.py:527 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "Nie znaleziono pliku %(file)s na Google Drive" -#: cps/helper.py:572 +#: cps/helper.py:561 #, 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:592 +#: cps/helper.py:581 msgid "Error in rename file in path: {}" msgstr "" -#: cps/helper.py:610 +#: cps/helper.py:599 #, 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:651 cps/web.py:1737 +#: cps/helper.py:640 cps/web.py:1408 msgid "Found an existing account for this e-mail address" msgstr "Znaleziono istniejące konto dla tego adresu e-mail" -#: cps/helper.py:659 +#: cps/helper.py:648 msgid "This username is already taken" msgstr "Nazwa użytkownika jest już zajęta" -#: cps/helper.py:669 +#: cps/helper.py:658 msgid "Invalid e-mail address format" msgstr "Nieprawidłowy format adresu e-mail" -#: cps/helper.py:754 -msgid "Python modul 'advocate' is not installed but is needed for cover downloads" +#: cps/helper.py:808 +msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "" -#: cps/helper.py:767 +#: cps/helper.py:818 msgid "Error Downloading Cover" msgstr "Błąd przy pobieraniu okładki" -#: cps/helper.py:770 +#: cps/helper.py:821 msgid "Cover Format Error" msgstr "Błędny format okładki" -#: cps/helper.py:773 +#: cps/helper.py:824 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "" -#: cps/helper.py:783 +#: cps/helper.py:834 msgid "Failed to create path for cover" msgstr "Nie udało się utworzyć ścieżki dla okładki" -#: cps/helper.py:799 +#: cps/helper.py:850 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:810 +#: cps/helper.py:861 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:822 +#: cps/helper.py:873 msgid "Invalid cover file content" msgstr "" -#: cps/helper.py:826 +#: cps/helper.py:877 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "Jako plik okładki dopuszczalne są jedynie pliki jpg/jpeg" -#: cps/helper.py:878 +#: cps/helper.py:929 msgid "Unrar binary file not found" msgstr "Plik wykonywalny programu unrar nie znaleziony" -#: cps/helper.py:889 +#: cps/helper.py:940 msgid "Error excecuting UnRar" msgstr "Błąd przy wykonywaniu unrar" -#: cps/helper.py:937 -msgid "Waiting" -msgstr "Oczekiwanie" - -#: cps/helper.py:939 -msgid "Failed" -msgstr "Nieudane" - -#: cps/helper.py:941 -msgid "Started" -msgstr "Rozpoczynanie" - -#: cps/helper.py:943 -msgid "Finished" -msgstr "Zakończone" - -#: cps/helper.py:945 -msgid "Unknown Status" -msgstr "Ststus nieznany" - -#: cps/kobo_auth.py:128 +#: cps/kobo_auth.py:89 #, fuzzy msgid "Please access Calibre-Web from non localhost to get valid api_endpoint for kobo device" msgstr "Aby uzyskać prawidłowy api_endpoint dla urządzenia Kobo, należy skorzystać z dostępu do calibre-web spoza localhost" -#: cps/kobo_auth.py:154 +#: cps/kobo_auth.py:115 msgid "Kobo Setup" msgstr "Konfiguracja Kobo" @@ -811,7 +816,7 @@ msgstr "Konfiguracja Kobo" msgid "Register with %(provider)s" msgstr "Zarejestruj się %(provider)s" -#: cps/oauth_bb.py:138 cps/remotelogin.py:130 cps/web.py:1613 +#: cps/oauth_bb.py:138 cps/remotelogin.py:130 cps/web.py:1286 #, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "zalogowałeś się jako: '%(nickname)s'" @@ -872,12 +877,12 @@ msgstr "Błąd Google Oauth, proszę spróbować później." msgid "Google Oauth error: {}" msgstr "Błąd Google Oauth: {}" -#: cps/opds.py:298 +#: cps/opds.py:287 msgid "{} Stars" msgstr "{} Gwiazdek" -#: cps/remotelogin.py:62 cps/templates/layout.html:84 -#: cps/templates/login.html:4 cps/templates/login.html:21 cps/web.py:1662 +#: cps/remotelogin.py:62 cps/templates/layout.html:85 +#: cps/templates/login.html:4 cps/templates/login.html:21 cps/web.py:1335 msgid "Login" msgstr "Zaloguj się" @@ -893,457 +898,490 @@ msgstr "Token wygasł" msgid "Success! Please return to your device" msgstr "Powodzenie! Wróć do swojego urządzenia" -#: cps/render_template.py:41 cps/web.py:407 +#: cps/render_template.py:40 cps/web.py:405 msgid "Books" msgstr "Książki" -#: cps/render_template.py:43 +#: cps/render_template.py:42 msgid "Show recent books" msgstr "Pokaż menu ostatnio dodanych książek" -#: cps/render_template.py:44 cps/templates/index.xml:25 +#: cps/render_template.py:43 cps/templates/index.xml:25 msgid "Hot Books" msgstr "Najpopularniejsze" -#: cps/render_template.py:46 +#: cps/render_template.py:45 msgid "Show Hot Books" msgstr "Pokaż menu najpopularniejszych książek" -#: cps/render_template.py:48 cps/render_template.py:53 +#: cps/render_template.py:47 cps/render_template.py:52 msgid "Downloaded Books" msgstr "Pobrane książki" -#: cps/render_template.py:50 cps/render_template.py:55 +#: cps/render_template.py:49 cps/render_template.py:54 #: cps/templates/user_table.html:167 msgid "Show Downloaded Books" msgstr "Pokaż pobrane książki" -#: cps/render_template.py:58 cps/templates/index.xml:32 cps/web.py:422 +#: cps/render_template.py:57 cps/templates/index.xml:32 cps/web.py:420 msgid "Top Rated Books" msgstr "Najwyżej ocenione" -#: cps/render_template.py:60 cps/templates/user_table.html:161 +#: cps/render_template.py:59 cps/templates/user_table.html:161 msgid "Show Top Rated Books" msgstr "Pokaż menu najwyżej ocenionych książek" -#: cps/render_template.py:61 cps/templates/index.xml:54 -#: cps/templates/index.xml:58 cps/web.py:729 +#: cps/render_template.py:60 cps/templates/index.xml:54 +#: cps/templates/index.xml:58 cps/web.py:739 msgid "Read Books" msgstr "Przeczytane" -#: cps/render_template.py:63 +#: cps/render_template.py:62 msgid "Show read and unread" msgstr "Pokaż menu przeczytane i nieprzeczytane" -#: cps/render_template.py:65 cps/templates/index.xml:61 -#: cps/templates/index.xml:65 cps/web.py:732 +#: cps/render_template.py:64 cps/templates/index.xml:61 +#: cps/templates/index.xml:65 cps/web.py:742 msgid "Unread Books" msgstr "Nieprzeczytane" -#: cps/render_template.py:67 +#: cps/render_template.py:66 msgid "Show unread" msgstr "Pokaż nieprzeczytane" -#: cps/render_template.py:68 +#: cps/render_template.py:67 msgid "Discover" msgstr "Odkrywaj" -#: cps/render_template.py:70 cps/templates/index.xml:50 +#: cps/render_template.py:69 cps/templates/index.xml:50 #: cps/templates/user_table.html:162 msgid "Show Random Books" msgstr "Pokazuj losowe książki" -#: cps/render_template.py:71 cps/templates/book_table.html:67 -#: cps/templates/index.xml:83 cps/web.py:1135 +#: cps/render_template.py:70 cps/templates/book_table.html:67 +#: cps/templates/index.xml:83 cps/web.py:1098 msgid "Categories" msgstr "Kategorie" -#: cps/render_template.py:73 cps/templates/user_table.html:158 +#: cps/render_template.py:72 cps/templates/user_table.html:158 msgid "Show category selection" msgstr "Pokaż menu wyboru kategorii" -#: cps/render_template.py:74 cps/templates/book_edit.html:90 +#: cps/render_template.py:73 cps/templates/book_edit.html:91 #: cps/templates/book_table.html:68 cps/templates/index.xml:90 -#: cps/templates/search_form.html:69 cps/web.py:1034 cps/web.py:1041 +#: cps/templates/search_form.html:69 cps/web.py:995 cps/web.py:1002 msgid "Series" msgstr "Cykle" -#: cps/render_template.py:76 cps/templates/user_table.html:157 +#: cps/render_template.py:75 cps/templates/user_table.html:157 msgid "Show series selection" msgstr "Pokaż menu wyboru cyklu" -#: cps/render_template.py:77 cps/templates/book_table.html:66 +#: cps/render_template.py:76 cps/templates/book_table.html:66 #: cps/templates/index.xml:69 msgid "Authors" msgstr "Autorzy" -#: cps/render_template.py:79 cps/templates/user_table.html:160 +#: cps/render_template.py:78 cps/templates/user_table.html:160 msgid "Show author selection" msgstr "Pokaż menu wyboru autora" -#: cps/render_template.py:81 cps/templates/book_table.html:72 -#: cps/templates/index.xml:76 cps/web.py:1006 +#: cps/render_template.py:80 cps/templates/book_table.html:72 +#: cps/templates/index.xml:76 cps/web.py:966 msgid "Publishers" msgstr "Wydawcy" -#: cps/render_template.py:83 cps/templates/user_table.html:163 +#: cps/render_template.py:82 cps/templates/user_table.html:163 msgid "Show publisher selection" msgstr "Pokaż menu wyboru wydawcy" -#: cps/render_template.py:84 cps/templates/book_table.html:70 +#: cps/render_template.py:83 cps/templates/book_table.html:70 #: cps/templates/index.xml:97 cps/templates/search_form.html:107 -#: cps/web.py:1108 +#: cps/web.py:1070 msgid "Languages" msgstr "Języki" -#: cps/render_template.py:87 cps/templates/user_table.html:155 +#: cps/render_template.py:86 cps/templates/user_table.html:155 msgid "Show language selection" msgstr "Pokaż menu wyboru języka" -#: cps/render_template.py:88 cps/templates/index.xml:104 +#: cps/render_template.py:87 cps/templates/index.xml:104 msgid "Ratings" msgstr "Oceny" -#: cps/render_template.py:90 cps/templates/user_table.html:164 +#: cps/render_template.py:89 cps/templates/user_table.html:164 msgid "Show ratings selection" msgstr "Pokaż menu listy ocen" -#: cps/render_template.py:91 cps/templates/index.xml:112 +#: cps/render_template.py:90 cps/templates/index.xml:112 msgid "File formats" msgstr "Formaty plików" -#: cps/render_template.py:93 cps/templates/user_table.html:165 +#: cps/render_template.py:92 cps/templates/user_table.html:165 msgid "Show file formats selection" msgstr "Pokaż menu formatu plików" -#: cps/render_template.py:95 cps/web.py:755 +#: cps/render_template.py:94 cps/web.py:765 msgid "Archived Books" msgstr "Zarchiwizowane książki" -#: cps/render_template.py:97 cps/templates/user_table.html:166 +#: cps/render_template.py:96 cps/templates/user_table.html:166 msgid "Show archived books" msgstr "Pokaż zarchiwizowane książki" -#: cps/render_template.py:100 cps/web.py:837 +#: cps/render_template.py:99 cps/web.py:796 msgid "Books List" msgstr "Lista książek" -#: cps/render_template.py:102 cps/templates/user_table.html:168 +#: cps/render_template.py:101 cps/templates/user_table.html:168 msgid "Show Books List" msgstr "Pokaż listę książek" -#: cps/shelf.py:67 cps/shelf.py:121 -msgid "Invalid shelf specified" -msgstr "Podano niewłaściwą półkę" - -#: cps/shelf.py:73 -#, fuzzy -msgid "Sorry you are not allowed to add a book to that shelf" -msgstr "Niestety, nie posiadasz uprawnień do dodania książki do półki: %(shelfname)s" - -#: cps/shelf.py:82 -#, python-format -msgid "Book is already part of the shelf: %(shelfname)s" -msgstr "Książka jest już dodana do półki: %(shelfname)s" - -#: cps/shelf.py:107 -#, python-format -msgid "Book has been added to shelf: %(sname)s" -msgstr "Książka została dodana do półki: %(sname)s" - -#: cps/shelf.py:126 -msgid "You are not allowed to add a book to the shelf" -msgstr "" - -#: cps/shelf.py:144 -#, python-format -msgid "Books are already part of the shelf: %(name)s" -msgstr "Książki są już dodane do półki: %(name)s" - -#: cps/shelf.py:156 -#, python-format -msgid "Books have been added to shelf: %(sname)s" -msgstr "Książki zostały dodane do półki %(sname)s" - -#: cps/shelf.py:163 -#, python-format -msgid "Could not add books to shelf: %(sname)s" -msgstr "Nie można dodać książek do półki: %(sname)s" - -#: cps/shelf.py:209 -#, python-format -msgid "Book has been removed from shelf: %(sname)s" -msgstr "Książka została usunięta z półki: %(sname)s" - -#: cps/shelf.py:218 -msgid "Sorry you are not allowed to remove a book from this shelf" -msgstr "" - -#: cps/shelf.py:228 cps/templates/layout.html:140 -msgid "Create a Shelf" -msgstr "Utwórz półkę" - -#: cps/shelf.py:236 -#, fuzzy -msgid "Sorry you are not allowed to edit this shelf" -msgstr "Niestety nie możesz usunąć książki z tej półki %(sname)s" - -#: cps/shelf.py:238 -msgid "Edit a shelf" -msgstr "Edytuj półkę" - -#: cps/shelf.py:248 -msgid "Sorry you are not allowed to create a public shelf" -msgstr "" - -#: cps/shelf.py:265 -#, python-format -msgid "Shelf %(title)s created" -msgstr "Półka %(title)s została utworzona" - -#: cps/shelf.py:268 -#, python-format -msgid "Shelf %(title)s changed" -msgstr "Półka %(title)s została zmieniona" - -#: cps/shelf.py:282 -msgid "There was an error" -msgstr "Wystąpił błąd" - -#: cps/shelf.py:304 -#, python-format -msgid "A public shelf with the name '%(title)s' already exists." -msgstr "Publiczna półka o nazwie '%(title)s' już istnieje." - -#: cps/shelf.py:315 -#, python-format -msgid "A private shelf with the name '%(title)s' already exists." -msgstr "Prywatna półka o nazwie '%(title)s' już istnieje." - -#: cps/shelf.py:337 -msgid "Error deleting Shelf" -msgstr "" - -#: cps/shelf.py:339 -#, fuzzy -msgid "Shelf successfully deleted" -msgstr "Książka została usunięta" - -#: cps/shelf.py:389 -#, python-format -msgid "Change order of Shelf: '%(name)s'" -msgstr "Zmieniono kolejność półki: '%(name)s'" - -#: cps/shelf.py:461 -#, python-format -msgid "Shelf: '%(name)s'" -msgstr "Półka: „%(name)s”" - -#: cps/shelf.py:465 -msgid "Error opening shelf. Shelf does not exist or is not accessible" -msgstr "Błąd otwierania półki. Półka nie istnieje lub jest niedostępna" - -#: cps/updater.py:426 cps/updater.py:437 cps/updater.py:538 cps/updater.py:553 -msgid "Unexpected data while reading update information" -msgstr "Nieoczekiwane dane podczas odczytywania informacji o aktualizacji" - -#: cps/updater.py:433 cps/updater.py:545 -msgid "No update available. You already have the latest version installed" -msgstr "Brak dostępnej aktualizacji. Masz już zainstalowaną najnowszą wersję" - -#: cps/updater.py:451 -msgid "A new update is available. Click on the button below to update to the latest version." -msgstr "Dostępna jest nowa aktualizacja. Kliknij przycisk poniżej, aby zaktualizować do najnowszej wersji." - -#: cps/updater.py:469 -msgid "Could not fetch update information" -msgstr "Nie można pobrać informacji o aktualizacji" - -#: cps/updater.py:479 -msgid "Click on the button below to update to the latest stable version." -msgstr "Kliknij przycisk poniżej, aby zaktualizować do najnowszej stabilnej wersji." - -#: cps/updater.py:488 cps/updater.py:502 cps/updater.py:513 -#, python-format -msgid "A new update is available. Click on the button below to update to version: %(version)s" -msgstr "Dostępna jest nowa aktualizacja. Kliknij przycisk poniżej, aby zaktualizować do wersji: %(version)s" - -#: cps/updater.py:531 -msgid "No release information available" -msgstr "Brak dostępnych informacji o wersji" - -#: cps/templates/index.html:5 cps/web.py:434 -msgid "Discover (Random Books)" -msgstr "Odkrywaj (losowe książki)" - -#: cps/web.py:470 -msgid "Hot Books (Most Downloaded)" -msgstr "Najpopularniejsze książki (najczęściej pobierane)" - -#: cps/web.py:501 -#, python-format -msgid "Downloaded books by %(user)s" -msgstr "Książki pobrane przez %(user)s" - -#: cps/web.py:534 -#, python-format -msgid "Author: %(name)s" -msgstr "Autor: %(name)s" - -#: cps/web.py:570 -#, python-format -msgid "Publisher: %(name)s" -msgstr "Wydawca: %(name)s" - -#: cps/web.py:598 -#, python-format -msgid "Series: %(serie)s" -msgstr "Cykl: %(serie)s" - -#: cps/web.py:610 -#, python-format -msgid "Rating: %(rating)s stars" -msgstr "Ocena: %(rating)s gwiazdek" - -#: cps/web.py:626 -#, python-format -msgid "File format: %(format)s" -msgstr "Format pliku: %(format)s" - -#: cps/web.py:663 -#, python-format -msgid "Category: %(name)s" -msgstr "Kategoria: %(name)s" - -#: cps/web.py:690 -#, python-format -msgid "Language: %(name)s" -msgstr "Język: %(name)s" - -#: cps/templates/layout.html:56 cps/web.py:789 cps/web.py:1444 -msgid "Advanced Search" -msgstr "Wyszukiwanie" - -#: cps/templates/book_edit.html:235 cps/templates/feed.xml:33 -#: cps/templates/index.xml:11 cps/templates/layout.html:45 -#: cps/templates/layout.html:48 cps/templates/search_form.html:226 -#: cps/web.py:807 cps/web.py:1164 +#: cps/search.py:48 cps/search.py:414 cps/templates/book_edit.html:236 +#: cps/templates/feed.xml:33 cps/templates/index.xml:11 +#: cps/templates/layout.html:46 cps/templates/layout.html:49 +#: cps/templates/search_form.html:226 msgid "Search" msgstr "Szukaj" -#: cps/templates/admin.html:16 cps/web.py:979 -msgid "Downloads" -msgstr "DLS" - -#: cps/web.py:1068 -msgid "Ratings list" -msgstr "Lista z ocenami" - -#: cps/web.py:1095 -msgid "File formats list" -msgstr "Lista formatów" - -#: cps/templates/layout.html:73 cps/templates/tasks.html:7 cps/web.py:1149 -msgid "Tasks" -msgstr "Zadania" - -#: cps/web.py:1286 +#: cps/search.py:194 msgid "Published after " msgstr "Opublikowane po " -#: cps/web.py:1293 +#: cps/search.py:201 msgid "Published before " msgstr "Opublikowane przed " -#: cps/web.py:1315 +#: cps/search.py:223 #, python-format msgid "Rating <= %(rating)s" msgstr "Ocena <= %(rating)s" -#: cps/web.py:1317 +#: cps/search.py:225 #, python-format msgid "Rating >= %(rating)s" msgstr "Ocena >= %(rating)s" -#: cps/web.py:1319 +#: cps/search.py:227 #, python-format msgid "Read Status = %(status)s" msgstr "Status przeczytania = %(status)s" -#: cps/web.py:1425 +#: cps/search.py:345 #, fuzzy msgid "Error on search for custom columns, please restart Calibre-Web" msgstr "Błąd podczas wyszukiwania kolumn niestandardowych, proszę zrestartować Calibre-Web" -#: cps/web.py:1527 +#: cps/search.py:364 cps/search.py:396 cps/templates/layout.html:57 +msgid "Advanced Search" +msgstr "Wyszukiwanie" + +#: cps/shelf.py:49 cps/shelf.py:103 +msgid "Invalid shelf specified" +msgstr "Podano niewłaściwą półkę" + +#: cps/shelf.py:55 +#, fuzzy +msgid "Sorry you are not allowed to add a book to that shelf" +msgstr "Niestety, nie posiadasz uprawnień do dodania książki do półki: %(shelfname)s" + +#: cps/shelf.py:64 +#, python-format +msgid "Book is already part of the shelf: %(shelfname)s" +msgstr "Książka jest już dodana do półki: %(shelfname)s" + +#: cps/shelf.py:89 +#, python-format +msgid "Book has been added to shelf: %(sname)s" +msgstr "Książka została dodana do półki: %(sname)s" + +#: cps/shelf.py:108 +msgid "You are not allowed to add a book to the shelf" +msgstr "" + +#: cps/shelf.py:126 +#, python-format +msgid "Books are already part of the shelf: %(name)s" +msgstr "Książki są już dodane do półki: %(name)s" + +#: cps/shelf.py:138 +#, python-format +msgid "Books have been added to shelf: %(sname)s" +msgstr "Książki zostały dodane do półki %(sname)s" + +#: cps/shelf.py:145 +#, python-format +msgid "Could not add books to shelf: %(sname)s" +msgstr "Nie można dodać książek do półki: %(sname)s" + +#: cps/shelf.py:191 +#, python-format +msgid "Book has been removed from shelf: %(sname)s" +msgstr "Książka została usunięta z półki: %(sname)s" + +#: cps/shelf.py:200 +msgid "Sorry you are not allowed to remove a book from this shelf" +msgstr "" + +#: cps/shelf.py:210 cps/templates/layout.html:141 +msgid "Create a Shelf" +msgstr "Utwórz półkę" + +#: cps/shelf.py:218 +#, fuzzy +msgid "Sorry you are not allowed to edit this shelf" +msgstr "Niestety nie możesz usunąć książki z tej półki %(sname)s" + +#: cps/shelf.py:220 +msgid "Edit a shelf" +msgstr "Edytuj półkę" + +#: cps/shelf.py:229 +msgid "Error deleting Shelf" +msgstr "" + +#: cps/shelf.py:231 +#, fuzzy +msgid "Shelf successfully deleted" +msgstr "Książka została usunięta" + +#: cps/shelf.py:281 +#, python-format +msgid "Change order of Shelf: '%(name)s'" +msgstr "Zmieniono kolejność półki: '%(name)s'" + +#: cps/shelf.py:313 +msgid "Sorry you are not allowed to create a public shelf" +msgstr "" + +#: cps/shelf.py:330 +#, python-format +msgid "Shelf %(title)s created" +msgstr "Półka %(title)s została utworzona" + +#: cps/shelf.py:333 +#, python-format +msgid "Shelf %(title)s changed" +msgstr "Półka %(title)s została zmieniona" + +#: cps/shelf.py:347 +msgid "There was an error" +msgstr "Wystąpił błąd" + +#: cps/shelf.py:369 +#, python-format +msgid "A public shelf with the name '%(title)s' already exists." +msgstr "Publiczna półka o nazwie '%(title)s' już istnieje." + +#: cps/shelf.py:380 +#, python-format +msgid "A private shelf with the name '%(title)s' already exists." +msgstr "Prywatna półka o nazwie '%(title)s' już istnieje." + +#: cps/shelf.py:462 +#, python-format +msgid "Shelf: '%(name)s'" +msgstr "Półka: „%(name)s”" + +#: cps/shelf.py:466 +msgid "Error opening shelf. Shelf does not exist or is not accessible" +msgstr "Błąd otwierania półki. Półka nie istnieje lub jest niedostępna" + +#: cps/tasks_status.py:48 cps/templates/layout.html:74 +#: cps/templates/tasks.html:7 +msgid "Tasks" +msgstr "Zadania" + +#: cps/tasks_status.py:64 +msgid "Waiting" +msgstr "Oczekiwanie" + +#: cps/tasks_status.py:66 +msgid "Failed" +msgstr "Nieudane" + +#: cps/tasks_status.py:68 +msgid "Started" +msgstr "Rozpoczynanie" + +#: cps/tasks_status.py:70 +msgid "Finished" +msgstr "Zakończone" + +#: cps/tasks_status.py:72 +msgid "Ended" +msgstr "" + +#: cps/tasks_status.py:74 +msgid "Cancelled" +msgstr "" + +#: cps/tasks_status.py:76 +msgid "Unknown Status" +msgstr "Ststus nieznany" + +#: cps/updater.py:431 cps/updater.py:442 cps/updater.py:543 cps/updater.py:558 +msgid "Unexpected data while reading update information" +msgstr "Nieoczekiwane dane podczas odczytywania informacji o aktualizacji" + +#: cps/updater.py:438 cps/updater.py:550 +msgid "No update available. You already have the latest version installed" +msgstr "Brak dostępnej aktualizacji. Masz już zainstalowaną najnowszą wersję" + +#: cps/updater.py:456 +msgid "A new update is available. Click on the button below to update to the latest version." +msgstr "Dostępna jest nowa aktualizacja. Kliknij przycisk poniżej, aby zaktualizować do najnowszej wersji." + +#: cps/updater.py:474 +msgid "Could not fetch update information" +msgstr "Nie można pobrać informacji o aktualizacji" + +#: cps/updater.py:484 +msgid "Click on the button below to update to the latest stable version." +msgstr "Kliknij przycisk poniżej, aby zaktualizować do najnowszej stabilnej wersji." + +#: cps/updater.py:493 cps/updater.py:507 cps/updater.py:518 +#, python-format +msgid "A new update is available. Click on the button below to update to version: %(version)s" +msgstr "Dostępna jest nowa aktualizacja. Kliknij przycisk poniżej, aby zaktualizować do wersji: %(version)s" + +#: cps/updater.py:536 +msgid "No release information available" +msgstr "Brak dostępnych informacji o wersji" + +#: cps/templates/index.html:6 cps/web.py:432 +msgid "Discover (Random Books)" +msgstr "Odkrywaj (losowe książki)" + +#: cps/web.py:468 +msgid "Hot Books (Most Downloaded)" +msgstr "Najpopularniejsze książki (najczęściej pobierane)" + +#: cps/web.py:499 +#, python-format +msgid "Downloaded books by %(user)s" +msgstr "Książki pobrane przez %(user)s" + +#: cps/web.py:532 +#, python-format +msgid "Author: %(name)s" +msgstr "Autor: %(name)s" + +#: cps/web.py:568 +#, python-format +msgid "Publisher: %(name)s" +msgstr "Wydawca: %(name)s" + +#: cps/web.py:596 +#, python-format +msgid "Series: %(serie)s" +msgstr "Cykl: %(serie)s" + +#: cps/web.py:609 +msgid "Rating: None" +msgstr "" + +#: cps/web.py:618 +#, python-format +msgid "Rating: %(rating)s stars" +msgstr "Ocena: %(rating)s gwiazdek" + +#: cps/web.py:636 +#, python-format +msgid "File format: %(format)s" +msgstr "Format pliku: %(format)s" + +#: cps/web.py:673 +#, python-format +msgid "Category: %(name)s" +msgstr "Kategoria: %(name)s" + +#: cps/web.py:700 +#, python-format +msgid "Language: %(name)s" +msgstr "Język: %(name)s" + +#: cps/templates/admin.html:16 cps/web.py:938 +msgid "Downloads" +msgstr "DLS" + +#: cps/web.py:1030 +msgid "Ratings list" +msgstr "Lista z ocenami" + +#: cps/web.py:1057 +msgid "File formats list" +msgstr "Lista formatów" + +#: cps/web.py:1199 #, python-format msgid "Book successfully queued for sending to %(kindlemail)s" msgstr "Książka została umieszczona w kolejce do wysłania do %(kindlemail)s" -#: cps/web.py:1531 +#: cps/web.py:1203 #, python-format msgid "Oops! There was an error sending this book: %(res)s" msgstr "Wystąpił błąd podczas wysyłania tej książki: %(res)s" -#: cps/web.py:1533 +#: cps/web.py:1205 msgid "Please update your profile with a valid Send to Kindle E-mail Address." msgstr "Najpierw skonfiguruj adres e-mail Kindle..." -#: cps/web.py:1550 +#: cps/web.py:1222 msgid "E-Mail server is not configured, please contact your administrator!" msgstr "Serwer e-mail nie jest skonfigurowany, skontaktuj się z administratorem!" -#: cps/templates/layout.html:85 cps/templates/register.html:17 cps/web.py:1551 -#: cps/web.py:1558 cps/web.py:1564 cps/web.py:1583 cps/web.py:1587 -#: cps/web.py:1593 +#: cps/templates/layout.html:86 cps/templates/register.html:17 cps/web.py:1223 +#: cps/web.py:1230 cps/web.py:1236 cps/web.py:1255 cps/web.py:1260 +#: cps/web.py:1266 msgid "Register" msgstr "Zarejestruj się" -#: cps/web.py:1585 +#: cps/web.py:1257 msgid "Your e-mail is not allowed to register" msgstr "Twój e-mail nie może się zarejestrować" -#: cps/web.py:1588 +#: cps/web.py:1261 msgid "Confirmation e-mail was send to your e-mail account." msgstr "Wiadomość e-mail z potwierdzeniem została wysłana na Twoje konto e-mail." -#: cps/web.py:1602 +#: cps/web.py:1275 msgid "Cannot activate LDAP authentication" msgstr "Nie można aktywować uwierzytelniania LDAP" -#: cps/web.py:1621 +#: cps/web.py:1294 #, 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:1627 +#: cps/web.py:1300 #, python-format msgid "Could not login: %(message)s" msgstr "Nie można zalogować: %(message)s" -#: cps/web.py:1631 cps/web.py:1656 +#: cps/web.py:1304 cps/web.py:1329 msgid "Wrong Username or Password" msgstr "Błędna nazwa użytkownika lub hasło" -#: cps/web.py:1638 +#: cps/web.py:1311 msgid "New Password was send to your email address" msgstr "Nowe hasło zostało wysłane na Twój adres e-mail" -#: cps/web.py:1644 +#: cps/web.py:1317 msgid "Please enter valid username to reset password" msgstr "Wprowadź prawidłową nazwę użytkownika, aby zresetować hasło" -#: cps/web.py:1651 +#: cps/web.py:1324 #, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "Jesteś teraz zalogowany jako: '%(nickname)s'" -#: cps/web.py:1717 cps/web.py:1766 +#: cps/web.py:1388 cps/web.py:1437 #, python-format msgid "%(name)s's profile" msgstr "Profil użytkownika %(name)s" -#: cps/web.py:1733 +#: cps/web.py:1404 msgid "Profile updated" msgstr "Zaktualizowano profil" @@ -1351,40 +1389,75 @@ msgstr "Zaktualizowano profil" msgid "Found no valid gmail.json file with OAuth information" msgstr "Nie znaleziono poprawnego pliku gmail.json z informacjami OAuth" -#: cps/tasks/convert.py:154 +#: cps/tasks/convert.py:153 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "Nie znaleziono narzędzia calibre %(tool)s do konwertowania" -#: cps/tasks/convert.py:187 +#: cps/tasks/convert.py:186 #, python-format msgid "%(format)s format not found on disk" msgstr "Nie znaleziono na dysku formatu %(format)s" -#: cps/tasks/convert.py:191 +#: cps/tasks/convert.py:190 msgid "Ebook converter failed with unknown error" msgstr "Konwertowanie ebooka zakończyło się niepowodzeniem z nieznanego powodu" -#: cps/tasks/convert.py:201 +#: cps/tasks/convert.py:200 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "Kepubify-converter spowodowało błąd: %(error)s" -#: cps/tasks/convert.py:223 +#: cps/tasks/convert.py:222 #, 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:246 +#: cps/tasks/convert.py:245 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "Konwertowanie nie powiodło się: %(error)s" -#: cps/tasks/convert.py:269 +#: cps/tasks/convert.py:268 #, 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:273 +msgid "Convert" +msgstr "" + +#: cps/tasks/database.py:28 +msgid "Reconnecting Calibre database" +msgstr "" + +#: cps/tasks/mail.py:265 +msgid "E-mail" +msgstr "" + +#: cps/tasks/thumbnail.py:95 +#, python-format +msgid "Generated %(count)s cover thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:222 cps/tasks/thumbnail.py:435 +#: cps/tasks/thumbnail.py:503 +msgid "Cover Thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:281 +msgid "Generated {0} series thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:446 +msgid "Clearing cover thumbnail cache" +msgstr "" + +#: cps/tasks/upload.py:38 cps/templates/admin.html:20 +#: cps/templates/layout.html:67 cps/templates/user_table.html:145 +msgid "Upload" +msgstr "Wysyłanie" + #: cps/templates/admin.html:9 msgid "Users" msgstr "Lista użytkowników" @@ -1405,7 +1478,7 @@ msgid "Send to Kindle E-mail Address" msgstr "Adres e-mail dla wysyłania do Kindle" # ??? -#: cps/templates/admin.html:17 cps/templates/layout.html:76 +#: cps/templates/admin.html:17 cps/templates/layout.html:77 #: cps/templates/user_table.html:143 msgid "Admin" msgstr "Panel administratora" @@ -1415,14 +1488,9 @@ msgstr "Panel administratora" msgid "Password" msgstr "Hasło" -#: cps/templates/admin.html:20 cps/templates/layout.html:66 -#: cps/templates/user_table.html:145 -msgid "Upload" -msgstr "Wysyłanie" - # ??? -#: cps/templates/admin.html:22 cps/templates/detail.html:18 -#: cps/templates/detail.html:27 cps/templates/shelf.html:7 +#: cps/templates/admin.html:22 cps/templates/detail.html:19 +#: cps/templates/detail.html:28 cps/templates/shelf.html:8 #: cps/templates/user_table.html:146 msgid "Download" msgstr "Pobieranie" @@ -1437,7 +1505,7 @@ msgid "Edit" msgstr "Edycja" # ??? -#: cps/templates/admin.html:25 cps/templates/book_edit.html:16 +#: cps/templates/admin.html:25 cps/templates/book_edit.html:17 #: cps/templates/book_table.html:100 cps/templates/modal_dialogs.html:63 #: cps/templates/modal_dialogs.html:116 cps/templates/user_edit.html:67 #: cps/templates/user_table.html:149 @@ -1549,78 +1617,107 @@ msgstr "Edytuj podstawową konfigurację" msgid "Edit UI Configuration" msgstr "Edytuj konfigurację interfejsu" -#: cps/templates/admin.html:166 +#: cps/templates/admin.html:167 +msgid "Scheduled Tasks" +msgstr "" + +#: cps/templates/admin.html:170 cps/templates/schedule_edit.html:12 +msgid "Time at which tasks start to run" +msgstr "" + +#: cps/templates/admin.html:174 cps/templates/schedule_edit.html:20 +msgid "Maximum tasks duration" +msgstr "" + +#: cps/templates/admin.html:178 +msgid "Generate book cover thumbnails" +msgstr "" + +#: cps/templates/admin.html:182 +msgid "Generate series cover thumbnails" +msgstr "" + +#: cps/templates/admin.html:186 cps/templates/schedule_edit.html:37 +msgid "Reconnect to Calibre Library" +msgstr "" + +#: cps/templates/admin.html:193 +msgid "Refresh Thumbnail Cover Cache" +msgstr "" + +#: cps/templates/admin.html:199 msgid "Administration" msgstr "Zarządzanie" -#: cps/templates/admin.html:167 +#: cps/templates/admin.html:200 msgid "Download Debug Package" msgstr "Pobierz pakiet Debug" -#: cps/templates/admin.html:168 +#: cps/templates/admin.html:201 msgid "View Logs" msgstr "Podgląd dziennika" -#: cps/templates/admin.html:171 +#: cps/templates/admin.html:204 msgid "Reconnect Calibre Database" msgstr "Połącz ponownie z bazą danych Calibre" -#: cps/templates/admin.html:172 +#: cps/templates/admin.html:207 msgid "Restart" msgstr "Uruchom ponownie Calibre Web" -#: cps/templates/admin.html:173 +#: cps/templates/admin.html:208 msgid "Shutdown" msgstr "Zatrzymaj Calibre Web" -#: cps/templates/admin.html:178 -msgid "Update" -msgstr "Update (aktualizacja)" +#: cps/templates/admin.html:213 +msgid "Version Information" +msgstr "" -#: cps/templates/admin.html:182 +#: cps/templates/admin.html:217 msgid "Version" msgstr "Wersja" -#: cps/templates/admin.html:183 +#: cps/templates/admin.html:218 msgid "Details" msgstr "Szczegóły" -#: cps/templates/admin.html:189 +#: cps/templates/admin.html:224 msgid "Current version" msgstr "Bieżąca wersja" -#: cps/templates/admin.html:196 +#: cps/templates/admin.html:231 msgid "Check for Update" msgstr "Sprawdź aktualizacje" -#: cps/templates/admin.html:197 +#: cps/templates/admin.html:232 msgid "Perform Update" msgstr "Wykonaj aktualizację" -#: cps/templates/admin.html:210 +#: cps/templates/admin.html:245 msgid "Are you sure you want to restart?" msgstr "Na pewno chcesz uruchomić ponownie Calibre Web?" -#: cps/templates/admin.html:215 cps/templates/admin.html:229 -#: cps/templates/admin.html:249 cps/templates/config_db.html:70 +#: cps/templates/admin.html:250 cps/templates/admin.html:264 +#: cps/templates/admin.html:284 cps/templates/config_db.html:70 msgid "OK" msgstr "OK" -#: cps/templates/admin.html:216 cps/templates/admin.html:230 -#: cps/templates/book_edit.html:213 cps/templates/book_table.html:127 +#: cps/templates/admin.html:251 cps/templates/admin.html:265 +#: cps/templates/book_edit.html:214 cps/templates/book_table.html:127 #: cps/templates/config_db.html:54 cps/templates/config_edit.html:359 #: 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/shelf_edit.html:27 +#: cps/templates/modal_dialogs.html:135 cps/templates/schedule_edit.html:41 +#: cps/templates/shelf_edit.html:27 cps/templates/tasks.html:46 #: cps/templates/user_edit.html:144 msgid "Cancel" msgstr "Anuluj" -#: cps/templates/admin.html:228 +#: cps/templates/admin.html:263 msgid "Are you sure you want to shutdown?" msgstr "Na pewno chcesz zatrzymać Calibre Web?" -#: cps/templates/admin.html:240 +#: cps/templates/admin.html:275 msgid "Updating, please do not reload this page" msgstr "Aktualizowanie, proszę nie odświeżać strony" @@ -1632,39 +1729,39 @@ msgstr "przez" msgid "In Library" msgstr "W Bibliotece" -#: cps/templates/author.html:26 cps/templates/index.html:73 -#: cps/templates/search.html:30 cps/templates/shelf.html:19 +#: cps/templates/author.html:26 cps/templates/index.html:74 +#: cps/templates/search.html:31 cps/templates/shelf.html:20 msgid "Sort according to book date, newest first" msgstr "Sortuj książki według daty, najnowsze jako pierwsze" -#: cps/templates/author.html:27 cps/templates/index.html:74 -#: cps/templates/search.html:31 cps/templates/shelf.html:20 +#: cps/templates/author.html:27 cps/templates/index.html:75 +#: cps/templates/search.html:32 cps/templates/shelf.html:21 msgid "Sort according to book date, oldest first" msgstr "Sortuj książki według daty, najstarsze jako pierwsze" -#: cps/templates/author.html:28 cps/templates/index.html:75 -#: cps/templates/search.html:32 cps/templates/shelf.html:21 +#: cps/templates/author.html:28 cps/templates/index.html:76 +#: cps/templates/search.html:33 cps/templates/shelf.html:22 msgid "Sort title in alphabetical order" msgstr "Sortuj tytuły w porządku alfabetycznym" -#: cps/templates/author.html:29 cps/templates/index.html:76 -#: cps/templates/search.html:33 cps/templates/shelf.html:22 +#: cps/templates/author.html:29 cps/templates/index.html:77 +#: cps/templates/search.html:34 cps/templates/shelf.html:23 msgid "Sort title in reverse alphabetical order" msgstr "Sortuj tytuły w odwrotnym porządku alfabetycznym" -#: cps/templates/author.html:30 cps/templates/index.html:79 -#: cps/templates/search.html:36 cps/templates/shelf.html:25 +#: cps/templates/author.html:30 cps/templates/index.html:80 +#: cps/templates/search.html:37 cps/templates/shelf.html:26 msgid "Sort according to publishing date, newest first" msgstr "Sortuj według daty publikacji, najnowsze jako pierwsze" -#: cps/templates/author.html:31 cps/templates/index.html:80 -#: cps/templates/search.html:37 cps/templates/shelf.html:26 +#: cps/templates/author.html:31 cps/templates/index.html:81 +#: cps/templates/search.html:38 cps/templates/shelf.html:27 msgid "Sort according to publishing date, oldest first" msgstr "Sortuj według daty publikacji, najstarsze jako pierwsze" #: cps/templates/author.html:56 cps/templates/author.html:115 -#: cps/templates/index.html:29 cps/templates/index.html:112 -#: cps/templates/search.html:66 cps/templates/shelf.html:54 +#: cps/templates/index.html:30 cps/templates/index.html:113 +#: cps/templates/search.html:67 cps/templates/shelf.html:55 msgid "reduce" msgstr "zwiń" @@ -1672,166 +1769,167 @@ msgstr "zwiń" msgid "More by" msgstr "Więcej według" -#: cps/templates/book_edit.html:10 +#: cps/templates/book_edit.html:11 msgid "Delete Book" msgstr "Usuń książkę" -#: cps/templates/book_edit.html:13 +#: cps/templates/book_edit.html:14 msgid "Delete formats:" msgstr "Usuń formaty:" -#: cps/templates/book_edit.html:24 +#: cps/templates/book_edit.html:25 msgid "Convert book format:" msgstr "Konwertuj format książki:" -#: cps/templates/book_edit.html:29 +#: cps/templates/book_edit.html:30 msgid "Convert from:" msgstr "Konwertuj z:" # ??? -#: cps/templates/book_edit.html:31 cps/templates/book_edit.html:38 +#: cps/templates/book_edit.html:32 cps/templates/book_edit.html:39 msgid "select an option" msgstr "wybierz opcję" -#: cps/templates/book_edit.html:36 +#: cps/templates/book_edit.html:37 msgid "Convert to:" msgstr "Konwertuj na:" -#: cps/templates/book_edit.html:45 +#: cps/templates/book_edit.html:46 msgid "Convert book" msgstr "Konwertuj książkę" -#: cps/templates/book_edit.html:55 cps/templates/search_form.html:8 +#: cps/templates/book_edit.html:56 cps/templates/search_form.html:8 msgid "Book Title" msgstr "Tytuł książki" -#: cps/templates/book_edit.html:62 cps/templates/book_edit.html:270 -#: cps/templates/book_edit.html:288 cps/templates/search_form.html:12 +#: cps/templates/book_edit.html:63 cps/templates/book_edit.html:271 +#: cps/templates/book_edit.html:289 cps/templates/search_form.html:12 msgid "Author" msgstr "Autor" -#: cps/templates/book_edit.html:67 cps/templates/book_edit.html:275 -#: cps/templates/book_edit.html:290 cps/templates/search_form.html:153 +#: cps/templates/book_edit.html:68 cps/templates/book_edit.html:276 +#: cps/templates/book_edit.html:291 cps/templates/search_form.html:153 msgid "Description" msgstr "Opis" -#: cps/templates/book_edit.html:72 +#: cps/templates/book_edit.html:73 msgid "Identifiers" msgstr "Identyfikatory" -#: cps/templates/book_edit.html:76 cps/templates/book_edit.html:299 +#: cps/templates/book_edit.html:77 cps/templates/book_edit.html:300 msgid "Identifier Type" msgstr "Rodzaj identyfikatora" -#: cps/templates/book_edit.html:77 cps/templates/book_edit.html:300 +#: cps/templates/book_edit.html:78 cps/templates/book_edit.html:301 msgid "Identifier Value" msgstr "Wartość identyfikatora" -#: cps/templates/book_edit.html:78 cps/templates/book_edit.html:301 +#: cps/templates/book_edit.html:79 cps/templates/book_edit.html:302 #: cps/templates/user_table.html:24 msgid "Remove" msgstr "Usuń" -#: cps/templates/book_edit.html:82 +#: cps/templates/book_edit.html:83 msgid "Add Identifier" msgstr "Dodaj identyfikator" -#: cps/templates/book_edit.html:86 cps/templates/search_form.html:51 +#: cps/templates/book_edit.html:87 cps/templates/search_form.html:51 msgid "Tags" msgstr "Etykiety" -#: cps/templates/book_edit.html:94 +#: cps/templates/book_edit.html:95 msgid "Series ID" msgstr "ID cyklu" -#: cps/templates/book_edit.html:98 +#: cps/templates/book_edit.html:99 msgid "Rating" msgstr "Ocena" -#: cps/templates/book_edit.html:103 +#: cps/templates/book_edit.html:104 msgid "Fetch Cover from URL (JPEG - Image will be downloaded and stored in database)" msgstr "Pobierz okładkę z linku (JPEG - obraz zostanie pobrany i zapisany w bazie)" -#: cps/templates/book_edit.html:107 +#: cps/templates/book_edit.html:108 msgid "Upload Cover from Local Disk" msgstr "Wyślij okładkę z dysku lokalnego" -#: cps/templates/book_edit.html:112 +#: cps/templates/book_edit.html:113 msgid "Published Date" msgstr "Data publikacji" -#: cps/templates/book_edit.html:121 cps/templates/book_edit.html:272 -#: cps/templates/book_edit.html:289 cps/templates/detail.html:164 +#: cps/templates/book_edit.html:122 cps/templates/book_edit.html:273 +#: cps/templates/book_edit.html:290 cps/templates/detail.html:165 #: cps/templates/search_form.html:16 msgid "Publisher" msgstr "Wydawca" -#: cps/templates/book_edit.html:125 cps/templates/detail.html:131 +#: cps/templates/book_edit.html:126 cps/templates/detail.html:132 #: cps/templates/user_edit.html:33 msgid "Language" msgstr "Język" -#: cps/templates/book_edit.html:135 cps/templates/search_form.html:45 +#: cps/templates/book_edit.html:136 cps/templates/search_form.html:45 #: cps/templates/search_form.html:164 msgid "Yes" msgstr "Tak" -#: cps/templates/book_edit.html:136 cps/templates/search_form.html:46 +#: cps/templates/book_edit.html:137 cps/templates/search_form.html:46 #: cps/templates/search_form.html:165 msgid "No" msgstr "Nie" -#: cps/templates/book_edit.html:200 +#: cps/templates/book_edit.html:201 msgid "Upload Format" msgstr "Wyślij format" -#: cps/templates/book_edit.html:208 +#: cps/templates/book_edit.html:209 msgid "View Book on Save" msgstr "Po zapisaniu wyświetl szczegóły książki" -#: cps/templates/book_edit.html:211 cps/templates/book_edit.html:229 +#: cps/templates/book_edit.html:212 cps/templates/book_edit.html:230 msgid "Fetch Metadata" msgstr "Uzyskaj metadane" -#: cps/templates/book_edit.html:212 cps/templates/config_db.html:53 +#: cps/templates/book_edit.html:213 cps/templates/config_db.html:53 #: cps/templates/config_edit.html:358 cps/templates/config_view_edit.html:174 -#: cps/templates/email_edit.html:65 cps/templates/shelf_edit.html:25 -#: cps/templates/shelf_order.html:41 cps/templates/user_edit.html:142 +#: cps/templates/email_edit.html:65 cps/templates/schedule_edit.html:40 +#: cps/templates/shelf_edit.html:25 cps/templates/shelf_order.html:41 +#: cps/templates/user_edit.html:142 msgid "Save" msgstr "Zapisz" -#: cps/templates/book_edit.html:232 +#: cps/templates/book_edit.html:233 msgid "Keyword" msgstr "Słowo kluczowe" -#: cps/templates/book_edit.html:233 +#: cps/templates/book_edit.html:234 #, fuzzy msgid "Search keyword" msgstr " Szukaj słowa kluczowego " -#: cps/templates/book_edit.html:239 +#: cps/templates/book_edit.html:240 msgid "Click the cover to load metadata to the form" msgstr "Kliknij okładkę, aby załadować metadane do formularza" -#: cps/templates/book_edit.html:246 cps/templates/book_edit.html:285 +#: cps/templates/book_edit.html:247 cps/templates/book_edit.html:286 msgid "Loading..." msgstr "Ładowanie..." -#: cps/templates/book_edit.html:250 cps/templates/layout.html:63 -#: cps/templates/layout.html:186 cps/templates/modal_dialogs.html:34 +#: cps/templates/book_edit.html:251 cps/templates/layout.html:64 +#: cps/templates/layout.html:187 cps/templates/modal_dialogs.html:34 #: cps/templates/user_edit.html:163 msgid "Close" msgstr "Zamknij" -#: cps/templates/book_edit.html:277 cps/templates/book_edit.html:291 +#: cps/templates/book_edit.html:278 cps/templates/book_edit.html:292 msgid "Source" msgstr "Źródło" -#: cps/templates/book_edit.html:286 +#: cps/templates/book_edit.html:287 msgid "Search error!" msgstr "Błąd wyszukiwania!" -#: cps/templates/book_edit.html:287 +#: cps/templates/book_edit.html:288 msgid "No Result(s) found! Please try another keyword." msgstr "Nie znaleziono! Spróbuj użyć innego słowa kluczowego." @@ -1942,6 +2040,7 @@ msgid "Enter " msgstr "Identyfikatory" #: cps/templates/book_table.html:113 cps/templates/modal_dialogs.html:46 +#: cps/templates/tasks.html:36 msgid "Are you really sure?" msgstr "Czy jesteś pewny?" @@ -2359,62 +2458,62 @@ msgstr "Dodaj dozwolone/zabronione etykiety" msgid "Add Allowed/Denied custom column values" msgstr "Dodaj dozwolone/zabronione wartości własnych kolumn" -#: cps/templates/detail.html:60 cps/templates/detail.html:69 +#: cps/templates/detail.html:61 cps/templates/detail.html:70 msgid "Read in Browser" msgstr "Czytaj w przeglądarce" -#: cps/templates/detail.html:77 cps/templates/detail.html:94 +#: cps/templates/detail.html:78 cps/templates/detail.html:95 msgid "Listen in Browser" msgstr "Słuchaj w przeglądarce" -#: cps/templates/detail.html:124 +#: cps/templates/detail.html:125 #, fuzzy, python-format msgid "Book %(index)s of %(range)s" msgstr "" -#: cps/templates/detail.html:173 +#: cps/templates/detail.html:174 msgid "Published" msgstr "Data publikacji" -#: cps/templates/detail.html:221 +#: cps/templates/detail.html:222 msgid "Mark As Unread" msgstr "Oznacz jako nieprzeczytane" -#: cps/templates/detail.html:221 +#: cps/templates/detail.html:222 msgid "Mark As Read" msgstr "Oznacz jako przeczytane" -#: cps/templates/detail.html:222 +#: cps/templates/detail.html:223 msgid "Read" msgstr "Przeczytana" -#: cps/templates/detail.html:231 +#: cps/templates/detail.html:232 msgid "Restore from archive" msgstr "Przywróć z archiwum" -#: cps/templates/detail.html:231 +#: cps/templates/detail.html:232 msgid "Add to archive" msgstr "Dodaj do archiwum" -#: cps/templates/detail.html:232 +#: cps/templates/detail.html:233 msgid "Archived" msgstr "Zarchiwizowane" -#: cps/templates/detail.html:243 +#: cps/templates/detail.html:244 msgid "Description:" msgstr "Opis:" -#: cps/templates/detail.html:256 cps/templates/search.html:15 +#: cps/templates/detail.html:257 cps/templates/search.html:16 msgid "Add to shelf" msgstr "Dodaj do półki" -#: cps/templates/detail.html:267 cps/templates/detail.html:284 -#: cps/templates/feed.xml:79 cps/templates/layout.html:137 -#: cps/templates/search.html:21 +#: cps/templates/detail.html:268 cps/templates/detail.html:285 +#: cps/templates/feed.xml:79 cps/templates/layout.html:138 +#: cps/templates/search.html:22 msgid "(Public)" msgstr "(publiczna)" -#: cps/templates/detail.html:298 +#: cps/templates/detail.html:299 msgid "Edit Metadata" msgstr "Edytuj metadane" @@ -2458,7 +2557,7 @@ msgstr "Limit rozmiaru załącznika" msgid "Save and Send Test E-mail" msgstr "Zapisz ustawienia i wyślij testową wiadomość e-mail" -#: cps/templates/email_edit.html:70 cps/templates/layout.html:29 +#: cps/templates/email_edit.html:70 cps/templates/layout.html:30 #: cps/templates/shelf_order.html:42 cps/templates/user_table.html:174 msgid "Back" msgstr "Wróć" @@ -2484,7 +2583,7 @@ msgstr "Podaj nazwę domeny" msgid "Denied Domains (Blacklist)" msgstr "Domeny zabronione (czarna lista)" -#: cps/templates/feed.xml:21 cps/templates/layout.html:170 +#: cps/templates/feed.xml:21 cps/templates/layout.html:171 msgid "Next" msgstr "Następne" @@ -2497,6 +2596,10 @@ msgstr "Otwórz plik .kobo/Kobo eReader.conf w edytorze tekstu i dodaj (lub edyt msgid "Kobo Token:" msgstr "Token Kobo Sync" +#: cps/templates/grid.html:21 +msgid "List" +msgstr "" + #: cps/templates/http_error.html:31 msgid "Calibre-Web Instance is unconfigured, please contact your administrator" msgstr "Instancja Calibre-Web jest nieskonfigurowana, proszę skontaktować się z administratorem" @@ -2516,29 +2619,29 @@ msgstr "Powrót do głównego menu" msgid "Logout User" msgstr "Wyloguj użytkownika" -#: cps/templates/index.html:70 +#: cps/templates/index.html:71 msgid "Sort ascending according to download count" msgstr "" -#: cps/templates/index.html:71 +#: cps/templates/index.html:72 msgid "Sort descending according to download count" msgstr "" -#: cps/templates/index.html:77 cps/templates/search.html:34 -#: cps/templates/shelf.html:23 +#: cps/templates/index.html:78 cps/templates/search.html:35 +#: cps/templates/shelf.html:24 msgid "Sort authors in alphabetical order" msgstr "Sortuj autorów w porządku alfabetycznym" -#: cps/templates/index.html:78 cps/templates/search.html:35 -#: cps/templates/shelf.html:24 +#: cps/templates/index.html:79 cps/templates/search.html:36 +#: cps/templates/shelf.html:25 msgid "Sort authors in reverse alphabetical order" msgstr "Posortuj autorów w odwrotnym porządku alfabetycznym" -#: cps/templates/index.html:82 +#: cps/templates/index.html:83 msgid "Sort ascending according to series index" msgstr "Sortuj rosnąco według indeksu serii" -#: cps/templates/index.html:83 +#: cps/templates/index.html:84 msgid "Sort descending according to series index" msgstr "Sortuj malejąco według indeksu serii" @@ -2602,7 +2705,7 @@ msgstr "Książki sortowane według oceny" msgid "Books ordered by file formats" msgstr "Ksiązki sortowane według formatu" -#: cps/templates/index.xml:119 cps/templates/layout.html:135 +#: cps/templates/index.xml:119 cps/templates/layout.html:136 #: cps/templates/search_form.html:87 msgid "Shelves" msgstr "Półki" @@ -2611,65 +2714,69 @@ msgstr "Półki" msgid "Books organized in shelves" msgstr "Książki ułożone na półkach" -#: cps/templates/layout.html:29 +#: cps/templates/layout.html:30 msgid "Home" msgstr "Główne menu" -#: cps/templates/layout.html:35 +#: cps/templates/layout.html:36 msgid "Toggle Navigation" msgstr "Przełącz nawigację" -#: cps/templates/layout.html:46 +#: cps/templates/layout.html:47 msgid "Search Library" msgstr "Przeszukaj bibliotekę" -#: cps/templates/layout.html:63 cps/templates/layout.html:117 +#: cps/templates/layout.html:64 cps/templates/layout.html:118 msgid "Uploading..." msgstr "Wysyłanie…" # ??? -#: cps/templates/layout.html:63 +#: cps/templates/layout.html:64 msgid "Error" msgstr "Błąd" -#: cps/templates/layout.html:63 +#: cps/templates/layout.html:64 msgid "Upload done, processing, please wait..." msgstr "Wysyłanie zakończone, przetwarzanie, proszę czekać…" -#: cps/templates/layout.html:76 cps/templates/read.html:72 +#: cps/templates/layout.html:77 cps/templates/read.html:72 #: cps/templates/readcbr.html:84 cps/templates/readcbr.html:108 msgid "Settings" msgstr "Ustawienia" -#: cps/templates/layout.html:78 +#: cps/templates/layout.html:79 msgid "Account" msgstr "Konto" -#: cps/templates/layout.html:80 +#: cps/templates/layout.html:81 msgid "Logout" msgstr "Wyloguj się" -#: cps/templates/layout.html:118 +#: cps/templates/layout.html:119 msgid "Please do not refresh the page" msgstr "Proszę nie odświeżać strony" -#: cps/templates/layout.html:128 +#: cps/templates/layout.html:129 msgid "Browse" msgstr "Przeglądaj" -#: cps/templates/layout.html:141 cps/templates/stats.html:3 +#: cps/templates/layout.html:142 cps/templates/stats.html:3 msgid "About" msgstr "Informacje" # ??? -#: cps/templates/layout.html:155 +#: cps/templates/layout.html:156 msgid "Previous" msgstr "Poprzedni" -#: cps/templates/layout.html:182 +#: cps/templates/layout.html:183 msgid "Book Details" msgstr "Szczegóły książki" +#: cps/templates/list.html:22 +msgid "Grid" +msgstr "" + #: cps/templates/login.html:18 msgid "Remember Me" msgstr "Zapamiętaj mnie" @@ -2775,7 +2882,7 @@ msgstr "Główny katalog" msgid "Select" msgstr "Wybierz" -#: cps/templates/modal_dialogs.html:134 +#: cps/templates/modal_dialogs.html:134 cps/templates/tasks.html:45 msgid "Ok" msgstr "OK" @@ -2956,15 +3063,23 @@ msgstr "Gdy to zrobisz, automatycznie zalogujesz się na tym urządzeniu." msgid "This verification link will expire in 10 minutes." msgstr "Link wygaśnie po 10 minutach." -#: cps/templates/search.html:5 +#: cps/templates/schedule_edit.html:29 +msgid "Generate Book Cover Thumbnails" +msgstr "" + +#: cps/templates/schedule_edit.html:33 +msgid "Generate Series Cover Thumbnails" +msgstr "" + +#: cps/templates/search.html:6 msgid "No Results Found" msgstr "Brak wyników" -#: cps/templates/search.html:6 +#: cps/templates/search.html:7 msgid "Search Term:" msgstr "Wyszukiwano:" -#: cps/templates/search.html:8 +#: cps/templates/search.html:9 msgid "Results for:" msgstr "Wyniki dla:" @@ -3016,23 +3131,23 @@ msgstr "Od:" msgid "To:" msgstr "Do:" -#: cps/templates/shelf.html:12 +#: cps/templates/shelf.html:13 msgid "Delete this Shelf" msgstr "Usuń tą półkę" -#: cps/templates/shelf.html:13 +#: cps/templates/shelf.html:14 msgid "Edit Shelf Properties" msgstr "Edytuj właściwości półki" -#: cps/templates/shelf.html:16 +#: cps/templates/shelf.html:17 msgid "Arrange books manually" msgstr "Ręczne porządkowanie książek" -#: cps/templates/shelf.html:17 +#: cps/templates/shelf.html:18 msgid "Disable Change order" msgstr "Wyłączenie Zlecenie zmiany" -#: cps/templates/shelf.html:17 +#: cps/templates/shelf.html:18 msgid "Enable Change order" msgstr "Włącz polecenie zmiany" @@ -3077,8 +3192,8 @@ msgid "System Statistics" msgstr "Statystyki systemu" #: cps/templates/stats.html:33 -msgid "Program Library" -msgstr "Biblioteka programu" +msgid "Program" +msgstr "" #: cps/templates/stats.html:34 msgid "Installed Version" @@ -3109,6 +3224,18 @@ msgstr "Czas wykonania" msgid "Start Time" msgstr "Start" +#: cps/templates/tasks.html:20 +msgid "Actions" +msgstr "" + +#: cps/templates/tasks.html:40 +msgid "This task will be cancelled. Any progress made by this task will be saved." +msgstr "" + +#: cps/templates/tasks.html:41 +msgid "If this is a scheduled task, it will be re-ran during the next scheduled time." +msgstr "" + #: cps/templates/user_edit.html:20 msgid "Reset user Password" msgstr "Zresetuj hasło użytkownika" diff --git a/cps/translations/pt_BR/LC_MESSAGES/messages.mo b/cps/translations/pt_BR/LC_MESSAGES/messages.mo index b7052210fcf02042be501927e37e1f2a4776dd65..966656e7ab960221dd525484dad12abaf4595d0e 100644 GIT binary patch delta 10075 zcmYM&2Yip`-pBE~k;qPDXatEriR?rMNf0Czd(;ZrpkhRoR!dMN{y4PuN;pOZHCj|u zVtZN+RkV&#s&$Uh8jtp9DB7Bjp3m2Hzg|yYt@m}^;~Kx;@4AyJ`PpUHO&90oK-VP} z|BP_4th!hfq~8Dkb0W&JQt18@Bk(Uwz=&w`d^ZfF|EAraf)4tt&;!4~JUoiMF)YTi znqm=VT9(r)r{Ttho7f7g&>a(FEvp(f!4PbUjA3<0FPwmWI30bk1cPx6>bafv^-HMd z{$uwaq2{X|r*WLT{Jg;=s0SOMKc=7-kb`=m4Qe5sP&*!sdTtzg;rplvF2V*_j=p#X z_52mAgZHpD`o&vTD)U>hG(52%>cK+vzzL`YO+)Q$5%RCKkw5C=x2TDJ#}_e#yeKtE z{81D0F%;jy>Np3zaWU4wGIT1`+h}NKyU`0zp)39iRSs9|{(bbJ{}3JMmS`r3LcN!b z3VkPJP1YDp#?{Cx)@f{p|A*R|aIT~6(0v2E{YP^l8)3Oy6nKP*IFQQWX0CftyoT+BQT&%%`LR7BDV*t*@94teH z@JCd{eA7&E1z}_Q^-=HlM#i>=p;EORHQq+_#r>!nIF7B+`5g`AER<1HOgX439)f{5 z6|=AuHQ*Uk2rr`+ScMw!FZ4(6CgvE|K~0#COkoYjAY6s2t?gJ(=YJOsh2}hl<6YE3 zYEU5xWg2RNX0~ln6ZJqXU=S)*Mc4sXp~kz3n#d)?yzh?MKoF|v9q6g^A44OU3#q7M z*A7Fl8!F_lql$3}DpChf&)r1r=r^o|u6)j3#4uDU8lxiF2DP9;sAFD?A@~8d*7;ve zLm|C}8sHuh8q1RkQAA=<3uuoj&e5oym0~Sij{2}vphA8UYvM)Qd#F@;G&2#XgNj@X zIzwqRqoJMjLaqFD)Wj38HZDUguo6|xhfo9j6E)!#)O%H^)I78Me$CB<^-w!cK&3Jr z_54fCiN6{>xuB{Zf(p$Ws7Or1mbe_1q92e0U{#@ZIS}yuB=v}?}c6P z4b;N+pyoM>+Snb`eAS(;ST&8ts4vocs0gezeg3HOSY*2Z`2NJpa!gi zif9K^s9!~2EJRIQgmrNaYC+CVXlR1ds1RSpI`{y4Vh~>+Jva#g z_WcS}u0KbOa}-q**H8<)k9yDbrRS+7|1`9Km$3sDpeEX4U*Cla=`mF3FQX##6eBU1 z&zNeVDROYE&ghOaP~*%)EnpdHL7&)ui9tI5Kho&Ljo+~kX6KrPEJKCrDr$hgP{+-m ze5oIU>Stmqc1Jd6O-KH5c6!%WOZRr>_g#51uG&PR>^1y;x7SRYS!ApY9vJuax) zy*io!LQn%lp^7pA^`Xi^)j&SF;{?=zQ!yTAqIS9iJ#jDUxx?s!-=G$B5*6`h9f^M& z4SxzC8JnR4M0K(n1t6+kqzp? z4={Y$Nkbo;kB}f(=TR$jbTzq7K?nV2w)v>gO+r5`Llxgv%)uW~8)@*e`5yE{Eqtoo zUxUj1Nu-=}4p%?n0CLD{JU*)9rz_`K{rqnK1RLZ_llV? z5_OKV?0#RYMgMKoII~a_twfDeVP8Lr8s`FPgU&lNw8AH-P`kcren@!RHo-<*f6aCQ z#?U{23jNQh)OhEc_tMcpe<13)si<)`qawTA?%zN*?zDcTp<;Q0D#91~nGpJ*`oX9H z>Y+jyh57=fV?*qV+VNymu`WavW2xPI{*K$AF%qHAE(tZnFm5q zEAEI2HKt?ZHA z_j=7Nq&BLkI-zQ%C+hh@sK|`Q+BgBjuoUZH1*+OlqH5#c=)m7m}g-mM@=*Y74mTyh*MD$mSQZHq24<- z$Y};T%>{+kIJt`NjzPM==_2p&}6U zI)62X;W!fKVmdy;Omrp>HxU?)d0ZG}_m7|l{clhaIEPvI1QpWEH%w|e*$zfcJP}*s zI{W%n)B+#d`j0U4MItG6T5&WK`lhI=?uD9Q2r9?p(H)CX&&{x1gL-a1>b;YgfR`~I zz1glpo`I^d_UOPN7=tq~SLeT+hIV=%wbG~Pg8{@%#T1VEWF})Qwnc^hZLE(as8h5P zTi|!7g$BK4ekdiOHqst_u`6o9{m`BHt&uczK8sKj&qEc>3e+)LYxnn{7IXlWk~65C zJw)v^c$A4iLyV)}0~=v6sz|qDHr_;~GUjdKuZf1z@W+vugp+Kypw8>Ra2npja2)%N z*>NeVzr*${Dzx{|fptck`&p<+<)czojH$SAH1YSMahMBw@g!;i4{W2xm{8|o0N39| zJvSR2SczJ|Ih=y`QK>8{GUF7Z#{U!*sofZaXR$ZlEF%7qG+K@|DHx2(?IhF-tFayK zM}@4~IFp)e^rPPnbFeqoz-8D3H=!bW1@+~;gG#N>c=KK;cBUWWq@mo5MeTeWCgNob zL7#WcCpHo_;RMt~Gf_KPj-I#`Rb0EV3m(B>44Pp6=Qak_FG8h!7HU4{LK@of0ZhQF zn1cTAnNa4SChmxu@D&WiH&FvlK^5B)?289cAF$Agrs^}$n|=#a1UjHn)Eim2(|V1D zgA2p$8?#Y4EkO-jfjZBZY&|EL9W=pEu4mzk*c(-3Z=x2q0PEs<)R*xes7T#FJ$DCt z>HG&2o1GP6LvFl>`jV}|3_OO4h&9>NN-8RZeJ~6MpdvR3m6}bc3HD(fyoj~%Au4hK z%&F8yVmSX<`b#JW=A&MmgeuB1)BuN3)qe#Q!n>$}o}p3`FvWbJ9H@Res`%QV7L3p-FZ_M$?13ftiSqH>=w)trKC)B=i86D>qdyau(tO|``@Ed;rBO_)3&yQQD4F-*bhI( z2y~s!XBJ~n5g3ojI1`nMy{L_SJDm`Apiygvd0-HR(=S2oxB~0qSN8pDs2v5rZz5I? z)sI9?*a#KD$*5v0weOeN*EgY3dH|c_znwHRQOF18#dxeuKL-o2AL_v`Py;^3>gYPt zgx(w7>DNImBm$L+B&?4uPz!numC~`Ol+DHA==_j|s?72KyHGp-3Zw9 zCB(lojVD}C&f1rnUku7n5jcZ6SZ|5>9u%M^oQ_)99MpN= z(qX9iHsWx+zm)i=(&+zp^S9j#F^K+kR0tnpB0fWfEMb{RNiPhcKM}LB1huns*c!u@ zo6r|v1Ntj47eB{HbXj4(7tu}{Ex9lbo8wN@#COpHAD}{Mtu(n0Ku@|6*a#Cb82h81 z8;w5rH~acR)Iv94D1L5V{~onb=dUzWz1D|j01wo}p{RiyU?66oKXyb7^r~$U)}%il zRg~+|f%{Plx`=wd3RMH{tIPs@(2M!4P#QYNk?4oHcE2aa&>w@^!H3ukcOWlXcTfv_ zjCIk!%siifN>v`FVKHhU+ff@mgxb*8*h%OA5{=qih+S<4$i+JJ-$X@X7HXo!sDVDV z-Ge%A$5A`4LQUYh#*F8KN@X-ELW!txTBAbW7ekyhM$*uZrrR#CU4i<5Y`_+{30vY# z)I?Eh%>t89ry>LEVN3h^0Mvqq*}jX~`78{;57DU|mebGZLe<327=;fo7Q;829k$16^b61vhoasag&KbxYW&Hl8kvu6 zbpF@UaOJ{H)K95jF&Q7Db{fCMgmfV0(w~Uh=|R*^A7dOwd}_WAT~S3j3pMfopeFtj zmFjbL{}$HN`F}z~IS$xr&SyO8*koe{c1Itag(|+KsB^p-z3~7>;5QhJcTf=uDK|N8 ziShKiVH2E$T1W+EGQV}4hCUE3+sxnf)I#mNFDiudP{mb>Dw;}EgpS|<{1dg1ywA*z z3(!G-IQrsj)WVmcit$raijJUDReg$visBZkI)6t^7`WYpJ_Yq+XRLukQ3H%ag?I|; z{h6qV7NHkzK;`-~`~G1}qJP4^|71Jy*8tTk%yIKW6;T={VutNd)bS}nf82sf!G6>! zIgMIaV5O<02=t>LgBm{r72#HPKMz%N{VO@Fns5*oG+`mu$5Jc_j}EK!jQ%yY(ye<# z|H_nsn_az{BqpagQqr2GrdHk(P=2ol6nO+xK^v_uF7wX2HurBzjHE2wp9?_y74 zs-xB_C4*7552ISu)UK^p4zS zT!>8^$L$=aP?iR-Xvb-Ze&~g-peOdgD%b}Z!x@7xT+{Z8BVr>K5D zF{WP_YQ8A+VScCni-O~%pgOk3O4tRpfE?5VgHa0^j@t3NsD6vl2REQ1vK?#TarDD` zsQ%Bf8V1HXPF0Mp&@DwRXboy-+mT<+A%3fg_fZoCa~_p31$8tX z`7H$VF$_P#a<~zFu@L=n54siV6BM+wv*?3&unayyrNeVu4{BgS7>X|1>!2oRhk9-R zD)hrq3oXC|+=~q1+{I>CJR4hwFSVbSVHN5hjukNl>tMSC;;+z*upP#sLOT!1OJ^HK;&}|fXZCY{ zu7oB`LPf3v=HMXIc!yB8tDY=C~MVnb|&dVV4@hx0yGz^_o_9YXcLh{}OdY=iDUDd^0aGK!KZ2VcAgFp&Cc zOv7T-fcH=#e1=+}Un4VM4Xi{x7IlqNQ4{7PQ#c=B5bj3h)=8|P`+tUlLh}G4Fo4X^ zLK0A+?1ox#Uuzy}qOqt2yn{Nbg_w!EQR8`~n2Bnkp0A7AKr$-n)6rY^KZ8Or4P8;! zZU|Pv(WsEmL?z=6RHXik>gUDlOFQz%P>jUN*c^2f-BFPoj9Sn;sB69wtKg^DhWVYn z6ckd=re=UZBs5MmDk7Pv1q?;y$^ujfi!l_xLcLhNM}_=0hTvb;z-Hzs>!Bi$ii%tY zy2B{+rJ$XRN3DD&YT~6>6?dW*cnX!xS5X7pLQVJ_^_*X-IhqJmJq|TtOVrLgppK%a z{d{05@mI%jH0V7r9Tl2cs8FuK7WftFh#nyq!SN#_m7M9Qg>*wLa4>4Z@u>H}G}MAW zK`rzPRR5i*+&Y>@{B@=$X=s3tQQ2CzxjBMtjG~@zU4zxBAF*CXMXD^T?1Yi1(2vJg za29G|=TP%pM{TT9OEX`To5D*pbVt3BmZ2iB54DqXs1;ws7<`CIzFO%f2Vzk>Oh9cQ z6&2B8s8CNv?R*Am;)NKF8&L~#e@8(R+(m`hgSSmJtb*Mz8P)N9)I?iRq5CIlg8isu zJZ3-t9(C52P~%)jU02W6W?@07=OU3{xSa$FTEHmG#A&FBN^JWXR7ihCh5i{TLgBo= zBC#PV7y2L<$r*uOxE?jmX4C?9q89X>^=Ayy{dd|rPJ0N(UN``?ke#Sdd2l`&pa$x? z#oKy@t@p+x+Q%T9b=D!joL~4&3$5SIT-&yoNIehJaS7Je{O2j?%$}kqsQ9vZurBI> zmY9xXP-kC=ir6mH&X1u&eg$>bzuERjSeCkPhB=}DjHX^06^V3oYoLA<6sp&egm&J< zRQwVZf!|RJ^Cv8tC>oVa$*7~rLWO<+D%+Q$CjJcLaSLkv%UBLeu_oTlB>oCfV3x`D z7}NkMr~%rclClHpMU{iffqeABrKkZ{V=R7#W$*{|#`CCtKcNTSKrQGtD&i6CiGK`* zcoHB1`=SeHBYEa*LSAmp9gM)34rYQ()WSQW7MzEgU;;+sB&>}qQRD2#I4r|UL6J?y zt~km~K`)#GNK~8$sFkI6G-urfUDW$p^HHH&ffaEND*29KE7V&^8)=OVa2#skt8INB z>g;bL>E^h7I-4DK!4w+iph9>M%i|IB!|$;YUa{V_pF3U5j=fReA#qp%TceJk6KbJ- z?B_!+BwnpVZ zwr$TvZE!Tc`1yYV1z#Gbq8^xons7a8f*n{DkJ|b*)Y(2kMJR&Tr25rG^-IGj?1gpl zZB$NdK+RKv+Q3;1(EYzm;bpvwnz%`KlkFK8M13G?2NN+E-$w1U02SI*sN1m>)&B@; zf=j5Q``Om-qZaTO^?cbL#9uoIq@a$~P$7@D^@gY;X^o!P0h?lH)UB9>TG+R!agL!v zdj_?ji>Pb-Cu;ovp*HB<(-_v1^VbfdY0!$Bpz1AAE9{7RFx!4U40T;cV-hY$h5R_y z!cx@46?&O*qEPRPMyT<-p*GYPHU6Mp#J@6yF*F3=Obo_ln2cLdA^Qn+hIddq4eo71 zT^*}XPqb#D#>qiNW}L0(qn?|Kiojyjyc^sULMZG;?fevKfUD@jKTrz_>0>60LG^Ee znz%daK98{VnHWla6>6NXP!pA)#<^vOmRM90CZa-^X6tQH19U=# zuqWzGn1^+6CTho9P|3Ovm5c|iM^NJ*M;+-8=&$epD-`%i#JOiXB)n?ARvTji?U|?* zPez4u3pT}XQAzk5m6S=ZnOE(rm`HsJYGGSY6aRqP*ag%=uSwnihZJ61i~janAg@Lz z+SZ$)7LtXENIoi8-nE}EKt*N^R>jY;Iv&JocomiH&rrGHJHYghM7N8ESPB}j1J=N7 zThB-Ba2DzeccUiy1;gU#R*m^WQ0@@{d`Q4=mgEqDzoa$lhO??*-8M2`Lb|B(jW z%g3k{dk!>bR|A#hk=8V8chrJMV0p|(g?Kt@!dbR`0cxV2$sDY-Sb~GP#y;h=fqtLeBL?z)9TYrvK#KCR~ z>QKiTgPzpmQ4=Pk&axkF^dJebCH1Hw<|m#!RB|rBT6hSxkW#FT&#*4m8fqetg(Io= zz!B*FhC*Ws3B%0Ka6?cLScSZKua6_!cVkpJGisin>KN zu{lA8NZN!a!%Pq8an@H+p`L>QxE0lJ zKf3TY)C9ic9cL=WppJ4QY9qy{@qa?)!0qwGKZt_Q1oOAk5g18*0_q5sp(ZRsJ#YqJ z#`~!3Z#L0H>bXQQ6mhMH(EY9s$fZ~Phk@HW1Je_=3Yy=nfi+aFbTZ=|3z--nv;FlxsS zP{|WE*?gO|Lxpk@YT{|A2|vU@T!$L)OH{J`3wz^3)C;V0zRCL6(U-HMcwD%DaLfv21Z~Qj>F107nNk|PzyVR;dl}CW_*M%{{Aog zEz>ayyYoQ?YG*644sJ)i$ z<{+VWR-#)CUr^8kyHFuKiDmExs{Jl1q~)fWzuBmcicl`5;Txz06r(0Oj9SQ9)Ixv3 z7a>Pozi?h2O3u3P*!$mz2E7t9P@(OJ$v71oV=>mk8@68YU2_yKq0aOz>oSa@{w4Oq z%UByzr!yw@M{RfuCg9%bgi>d5mxhOHoI16t&}0)Pzs%=T&Ez9ks_Y zwD+|2Y}AB#s0i*rC3lJa{IqSq;-;W8eSoPL_`aE_BkI9{SQRH>4i=#L{fQbdai&SW zR8;6&qZf8Xg}N{5CMW0-2Dpgz z@E$5cRcD!R!=|WQ$VJ_ziKypGP!T+jn(r2}akul7LKF>QvrUI|%%d99IS(dsL-54 zh5imIbUyR-0CyYJeUe)>ezdED%9Utr$ox(m1sCR` zKTbzKT!dY5Exv*eP?2i;k=f~RR3v7j7Q7O*fnscr7f{(BwZPo2ENnu(Giv+~(5;nx zOrb8WK&|*7`s064XMGE`Q_lhu5g*ihq7EuDEwMc2p!)p{lW~k~UymAZi>>cP&HG&e z@z0=ej0T0M@39^i zG2f-;KeKhmCe)Xp7Jd@j;va4bkrbLPGcSzSP%GPvsdy91V!h=i#Br!lreFYOpeF8% z-Z&QHaS8_GCRG3ZSOLGc?f*qR=l+927=;Qe%mY!V9jBtQxD#rCUZ^u3iW+zf2I35? zgiBH5d~W>)L#SUuCFk$xLZ6jpyjY~a+exFKWax=nVK(~UP}F@MhZV8F*4JP?>IYCe zxPi^k^Y7-l7N`YgVmQ8r>YtA~vUQk@|H2o4{&zkxI}JeXC=7Ld>SI-$gc_g#tKrwE zNSs4W^dl-l53F9R%(V+e?K}+?$!@6evQbAm5kuS*rcls83s9l|6t%Nms7Rc$UbdE^ zC+&Y=b9{s?u<>d$(FD{2-$LDv8CV17+V;(;1^)wIeE%P&pq-yXCDjeo08ddnD7VI( zadp&DG(aU=8Y+w1VHVCt-G(!$Yx@*6al%?NerMD*%tbA1{#wpoNwb&+O}q`Y^8>bi z0Tr^F*ap4UnSSk2XZR{A`94BLZZ)d^4h+SA+xAlQrT!Fkgx>2-uGLvj{54?`4O&PR zDrp9xc0LU?;1Z0(B8g+eTkrKpMTqZd9$h1ly06T&K}&ue2jOhDyC3TkKVFd9dqcK9)R;x_cgV$^ec zkn!Elw-hwNF;o&>!k6$amchmw&9_x5YUP>O5GSKTx)s~vQPfT=Z8AH}#2D&hu^FyJ zCFMEP#(XzxUd}&=g3h}3iv~KQ-dtIzGai7to|946WOBrQ-8%0nITT#RLY=MxHkSb~l4JZeFewwf=EDAa=bV@sTXiogz3D1SpG-#yg8 z{@YBXYT;|tyP+0Th}!ucbm1X%YvSt^w1YoUXXd@#oK-Eeg^g)k8;;%FJD>NNk7)L!C)uA_PfLzqI8;(k*53vC* zv>rfRozrmV# z4-1|}RWB-yx*6@0Gt$*z*ub$lW8W+~(K)tK(eM4Ym+@)XAhC%nDWO?HV$qgCX&#\n" "Language: br\n" @@ -13,597 +13,622 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.9.1\n" +"Generated-By: Babel 2.8.0\n" -#: cps/about.py:86 +#: cps/about.py:84 msgid "Statistics" msgstr "Estatística" -#: cps/admin.py:141 +#: cps/admin.py:146 msgid "Server restarted, please reload page" msgstr "Servidor reiniciado, por favor recarregue a página" -#: cps/admin.py:143 +#: cps/admin.py:148 msgid "Performing shutdown of server, please close window" msgstr "Executando o desligamento do servidor, por favor, feche a janela" -#: cps/admin.py:151 +#: cps/admin.py:156 msgid "Reconnect successful" msgstr "Reconexão bem-sucedida" -#: cps/admin.py:154 +#: cps/admin.py:159 msgid "Unknown command" msgstr "Comando desconhecido" -#: cps/admin.py:176 cps/editbooks.py:713 cps/editbooks.py:892 -#: cps/editbooks.py:894 cps/editbooks.py:930 cps/editbooks.py:947 -#: cps/updater.py:608 cps/uploader.py:93 cps/uploader.py:103 +#: cps/admin.py:192 cps/editbooks.py:571 cps/editbooks.py:573 +#: cps/editbooks.py:609 cps/editbooks.py:626 cps/editbooks.py:1233 +#: cps/updater.py:613 cps/uploader.py:87 cps/uploader.py:97 msgid "Unknown" msgstr "Desconhecido" -#: cps/admin.py:197 +#: cps/admin.py:217 msgid "Admin page" msgstr "Página de administração" -#: cps/admin.py:217 +#: cps/admin.py:237 msgid "Basic Configuration" msgstr "Configuração Básica" -#: cps/admin.py:255 +#: cps/admin.py:275 msgid "UI Configuration" msgstr "Configuração de UI" -#: cps/admin.py:289 cps/templates/admin.html:51 +#: cps/admin.py:309 cps/templates/admin.html:51 #, fuzzy msgid "Edit Users" msgstr "Usuário Admin" -#: cps/admin.py:333 cps/opds.py:529 cps/templates/grid.html:13 +#: cps/admin.py:353 cps/opds.py:532 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "Todos" -#: cps/admin.py:360 cps/admin.py:1648 +#: cps/admin.py:380 cps/admin.py:1365 msgid "User not found" msgstr "Usuário não encontrado" -#: cps/admin.py:374 +#: cps/admin.py:394 #, fuzzy msgid "{} users deleted successfully" msgstr "{} Usuário Importado com Sucesso" -#: cps/admin.py:397 cps/templates/config_view_edit.html:133 +#: cps/admin.py:417 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:418 cps/admin.py:424 +#: cps/admin.py:438 cps/admin.py:444 msgid "Malformed request" msgstr "" -#: cps/admin.py:436 cps/admin.py:1526 +#: cps/admin.py:456 cps/admin.py:1962 msgid "Guest Name can't be changed" msgstr "" -#: cps/admin.py:448 +#: cps/admin.py:468 msgid "Guest can't have this role" msgstr "" -#: cps/admin.py:460 cps/admin.py:1484 +#: cps/admin.py:480 cps/admin.py:1920 msgid "No admin user remaining, can't remove admin role" msgstr "Nenhum usuário administrador restante, não pode remover a função de administrador" -#: cps/admin.py:464 cps/admin.py:478 +#: cps/admin.py:484 cps/admin.py:498 msgid "Value has to be true or false" msgstr "" -#: cps/admin.py:466 +#: cps/admin.py:486 msgid "Invalid role" msgstr "" -#: cps/admin.py:470 +#: cps/admin.py:490 msgid "Guest can't have this view" msgstr "" -#: cps/admin.py:480 +#: cps/admin.py:500 msgid "Invalid view" msgstr "" -#: cps/admin.py:483 +#: cps/admin.py:503 msgid "Guest's Locale is determined automatically and can't be set" msgstr "" -#: cps/admin.py:487 +#: cps/admin.py:507 msgid "No Valid Locale Given" msgstr "" -#: cps/admin.py:498 +#: cps/admin.py:518 msgid "No Valid Book Language Given" msgstr "" -#: cps/admin.py:500 cps/editbooks.py:1267 +#: cps/admin.py:520 cps/editbooks.py:438 msgid "Parameter not found" msgstr "" -#: cps/admin.py:553 +#: cps/admin.py:557 msgid "Invalid Read Column" msgstr "" -#: cps/admin.py:559 +#: cps/admin.py:563 msgid "Invalid Restricted Column" msgstr "" -#: cps/admin.py:579 cps/admin.py:1355 +#: cps/admin.py:583 cps/admin.py:1791 msgid "Calibre-Web configuration updated" msgstr "Configuração do Calibre-Web atualizada" -#: cps/admin.py:591 +#: cps/admin.py:595 msgid "Do you really want to delete the Kobo Token?" msgstr "Você realmente quer excluir o Kobo Token?" -#: cps/admin.py:593 +#: cps/admin.py:597 msgid "Do you really want to delete this domain?" msgstr "Você realmente quer excluir este domínio?" -#: cps/admin.py:595 +#: cps/admin.py:599 msgid "Do you really want to delete this user?" msgstr "Você realmente quer excluir este usuário?" -#: cps/admin.py:597 +#: cps/admin.py:601 msgid "Are you sure you want to delete this shelf?" msgstr "Tem certeza que quer apagar essa estante?" -#: cps/admin.py:599 +#: cps/admin.py:603 #, fuzzy msgid "Are you sure you want to change locales of selected user(s)?" msgstr "Tem certeza que quer apagar essa estante?" -#: cps/admin.py:601 +#: cps/admin.py:605 msgid "Are you sure you want to change visible book languages for selected user(s)?" msgstr "" -#: cps/admin.py:603 +#: cps/admin.py:607 msgid "Are you sure you want to change the selected role for the selected user(s)?" msgstr "" -#: cps/admin.py:605 +#: cps/admin.py:609 #, fuzzy msgid "Are you sure you want to change the selected restrictions for the selected user(s)?" msgstr "Tem certeza que quer apagar essa estante?" -#: cps/admin.py:607 +#: cps/admin.py:611 msgid "Are you sure you want to change the selected visibility restrictions for the selected user(s)?" msgstr "" -#: cps/admin.py:610 +#: cps/admin.py:614 #, fuzzy msgid "Are you sure you want to change shelf sync behavior for the selected user(s)?" msgstr "Tem certeza que quer apagar essa estante?" -#: cps/admin.py:612 +#: cps/admin.py:616 #, fuzzy msgid "Are you sure you want to change Calibre library location?" msgstr "Tens a certeza que queres fechar?" -#: cps/admin.py:614 +#: cps/admin.py:618 +msgid "Calibre-Web will search for updated Covers and update Cover Thumbnails, this may take a while?" +msgstr "" + +#: cps/admin.py:620 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:764 -msgid "Tag not found" -msgstr "" - -#: cps/admin.py:776 -msgid "Invalid Action" -msgstr "" - -#: cps/admin.py:893 cps/admin.py:899 cps/admin.py:909 cps/admin.py:919 +#: cps/admin.py:862 cps/admin.py:868 cps/admin.py:878 cps/admin.py:888 #: 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:895 cps/admin.py:901 cps/admin.py:911 cps/admin.py:921 +#: cps/admin.py:864 cps/admin.py:870 cps/admin.py:880 cps/admin.py:890 #: cps/templates/modal_dialogs.html:28 cps/templates/user_table.html:44 #: cps/templates/user_table.html:61 msgid "Allow" msgstr "Permita" -#: cps/admin.py:936 +#: cps/admin.py:905 msgid "{} sync entries deleted" msgstr "" -#: cps/admin.py:1059 +#: cps/admin.py:953 +msgid "Tag not found" +msgstr "" + +#: cps/admin.py:965 +msgid "Invalid Action" +msgstr "" + +#: cps/admin.py:1080 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "client_secrets.json não está configurado para aplicativo da web" -#: cps/admin.py:1104 +#: cps/admin.py:1125 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:1110 +#: cps/admin.py:1131 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:1140 +#: cps/admin.py:1161 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:1146 +#: cps/admin.py:1167 #, fuzzy msgid "Please Enter a LDAP Service Account and Password" msgstr "Por favor, digite um nome de usuário válido para redefinir a senha" -#: cps/admin.py:1149 +#: cps/admin.py:1170 msgid "Please Enter a LDAP Service Account" msgstr "" -#: cps/admin.py:1154 +#: cps/admin.py:1175 #, 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:1156 +#: cps/admin.py:1177 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "Filtro de objeto de grupo LDAP tem parênteses incomparáveis" -#: cps/admin.py:1160 +#: cps/admin.py:1181 #, 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:1162 +#: cps/admin.py:1183 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "Filtro de objeto de usuário LDAP tem parênteses incomparáveis" -#: cps/admin.py:1169 +#: cps/admin.py:1190 #, 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:1171 +#: cps/admin.py:1192 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "Filtro de usuário de membro LDAP tem parênteses incomparáveis" -#: cps/admin.py:1178 +#: cps/admin.py:1199 msgid "LDAP CACertificate, Certificate or Key Location is not Valid, Please Enter Correct Path" msgstr "LDAP CACertificate, Certificados ou chave de localização não é válida, Insira o caminho correto" -#: cps/admin.py:1223 cps/admin.py:1339 cps/admin.py:1437 cps/admin.py:1554 -#: cps/admin.py:1623 cps/editbooks.py:678 cps/editbooks.py:882 -#: cps/editbooks.py:1130 cps/shelf.py:100 cps/shelf.py:160 cps/shelf.py:203 -#: cps/shelf.py:278 cps/shelf.py:343 cps/shelf.py:380 cps/shelf.py:456 -#: cps/web.py:1742 +#: cps/admin.py:1230 cps/admin.py:1852 +msgid "Add new user" +msgstr "Adicionar novo usuário" + +#: cps/admin.py:1239 cps/templates/admin.html:100 +msgid "Edit E-mail Server Settings" +msgstr "Editar configurações do servidor de e-mail" + +#: cps/admin.py:1258 +msgid "Gmail Account Verification Successful" +msgstr "" + +#: cps/admin.py:1277 cps/admin.py:1658 cps/admin.py:1775 cps/admin.py:1873 +#: cps/admin.py:1990 cps/editbooks.py:227 cps/editbooks.py:301 +#: cps/editbooks.py:1196 cps/shelf.py:82 cps/shelf.py:142 cps/shelf.py:185 +#: cps/shelf.py:235 cps/shelf.py:272 cps/shelf.py:343 cps/shelf.py:457 +#: cps/tasks/convert.py:136 cps/web.py:1413 #, python-format msgid "Database error: %(error)s." msgstr "Erro de banco de dados: %(error)s." -#: cps/admin.py:1235 -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:1253 -msgid "DB is not Writeable" -msgstr "DB não é gravável" - -#: cps/admin.py:1266 -msgid "Keyfile Location is not Valid, Please Enter Correct Path" -msgstr "A localização do arquivo-chave não é válida, por favor insira o caminho correto" - -#: cps/admin.py:1270 -msgid "Certfile Location is not Valid, Please Enter Correct Path" -msgstr "A localização do arquivo de certificação não é válida, digite o caminho correto" - -#: cps/admin.py:1378 -#, fuzzy -msgid "Database Settings updated" -msgstr "Atualização das configurações do servidor de e-mail" - -#: cps/admin.py:1386 -#, fuzzy -msgid "Database Configuration" -msgstr "Configuração das Características" - -#: cps/admin.py:1402 cps/web.py:1557 -msgid "Please fill out all fields!" -msgstr "Por favor, preencha todos os campos!" - -#: cps/admin.py:1410 -msgid "E-mail is not from valid domain" -msgstr "O e-mail não é de um domínio válido" - -#: cps/admin.py:1416 cps/admin.py:1576 -msgid "Add new user" -msgstr "Adicionar novo usuário" - -#: cps/admin.py:1427 -#, python-format -msgid "User '%(user)s' created" -msgstr "Usuário '%(user)s' criado" - -#: cps/admin.py:1433 -#, fuzzy -msgid "Found an existing account for this e-mail address or name." -msgstr "Encontrei uma conta existente para este endereço de e-mail ou apelido." - -#: cps/admin.py:1463 -#, python-format -msgid "User '%(nick)s' deleted" -msgstr "Usuário '%(nick)s' excluído" - -#: cps/admin.py:1465 cps/admin.py:1466 -msgid "Can't delete Guest User" -msgstr "" - -#: cps/admin.py:1469 -msgid "No admin user remaining, can't delete user" -msgstr "Nenhum usuário administrador restante, não é possível excluir o usuário" - -#: cps/admin.py:1542 cps/admin.py:1667 -#, python-format -msgid "Edit User %(nick)s" -msgstr "Editar usuário %(nick)s" - -#: cps/admin.py:1546 -#, python-format -msgid "User '%(nick)s' updated" -msgstr "Usuário '%(nick)s' atualizado" - -#: cps/admin.py:1550 cps/admin.py:1682 cps/web.py:1582 cps/web.py:1642 -msgid "An unknown error occurred. Please try again later." -msgstr "Ocorreu um erro desconhecido. Por favor, tente novamente mais tarde." - -#: cps/admin.py:1585 cps/templates/admin.html:100 -msgid "Edit E-mail Server Settings" -msgstr "Editar configurações do servidor de e-mail" - -#: cps/admin.py:1604 -msgid "Gmail Account Verification Successful" -msgstr "" - -#: cps/admin.py:1630 +#: cps/admin.py:1284 #, python-format msgid "Test e-mail queued for sending to %(email)s, please check Tasks for result" msgstr "" -#: cps/admin.py:1633 +#: cps/admin.py:1287 #, 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:1635 +#: cps/admin.py:1289 msgid "Please configure your e-mail address first..." msgstr "Por favor, configure seu endereço de e-mail primeiro..." -#: cps/admin.py:1637 +#: cps/admin.py:1291 msgid "E-mail server settings updated" msgstr "Atualização das configurações do servidor de e-mail" -#: cps/admin.py:1679 +#: cps/admin.py:1314 cps/templates/admin.html:191 +msgid "Edit Scheduled Tasks Settings" +msgstr "" + +#: cps/admin.py:1326 +msgid "Invalid start time for task specified" +msgstr "" + +#: cps/admin.py:1331 +msgid "Invalid duration for task specified" +msgstr "" + +#: cps/admin.py:1340 +msgid "Scheduled tasks settings updated" +msgstr "" + +#: cps/admin.py:1350 cps/admin.py:1399 cps/admin.py:1986 cps/web.py:1254 +#: cps/web.py:1315 +msgid "An unknown error occurred. Please try again later." +msgstr "Ocorreu um erro desconhecido. Por favor, tente novamente mais tarde." + +#: cps/admin.py:1354 +msgid "Settings DB is not Writeable" +msgstr "" + +#: cps/admin.py:1384 cps/admin.py:1978 +#, python-format +msgid "Edit User %(nick)s" +msgstr "Editar usuário %(nick)s" + +#: cps/admin.py:1396 #, python-format msgid "Password for user %(user)s reset" msgstr "Senha para redefinição do usuário %(user)s" -#: cps/admin.py:1685 cps/web.py:1522 +#: cps/admin.py:1402 cps/web.py:1194 msgid "Please configure the SMTP mail settings first..." msgstr "Por favor, configure primeiro as configurações de correio SMTP..." -#: cps/admin.py:1696 +#: cps/admin.py:1413 msgid "Logfile viewer" msgstr "visualizador de arquivo de registro" -#: cps/admin.py:1762 +#: cps/admin.py:1479 msgid "Requesting update package" msgstr "Solicitação de pacote de atualização" -#: cps/admin.py:1763 +#: cps/admin.py:1480 msgid "Downloading update package" msgstr "Download do pacote de atualização" -#: cps/admin.py:1764 +#: cps/admin.py:1481 msgid "Unzipping update package" msgstr "Descompactação de pacote de atualização" -#: cps/admin.py:1765 +#: cps/admin.py:1482 msgid "Replacing files" msgstr "Substituição de arquivos" -#: cps/admin.py:1766 +#: cps/admin.py:1483 msgid "Database connections are closed" msgstr "As ligações à base de dados estão fechadas" -#: cps/admin.py:1767 +#: cps/admin.py:1484 msgid "Stopping server" msgstr "Parar servidor" -#: cps/admin.py:1768 +#: cps/admin.py:1485 msgid "Update finished, please press okay and reload page" msgstr "Atualização concluída, pressione okay e recarregue a página" -#: cps/admin.py:1769 cps/admin.py:1770 cps/admin.py:1771 cps/admin.py:1772 -#: cps/admin.py:1773 cps/admin.py:1774 +#: cps/admin.py:1486 cps/admin.py:1487 cps/admin.py:1488 cps/admin.py:1489 +#: cps/admin.py:1490 cps/admin.py:1491 msgid "Update failed:" msgstr "Atualização falhou:" -#: cps/admin.py:1769 cps/updater.py:384 cps/updater.py:619 cps/updater.py:621 +#: cps/admin.py:1486 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 msgid "HTTP Error" msgstr "Erro HTTP" -#: cps/admin.py:1770 cps/updater.py:386 cps/updater.py:623 +#: cps/admin.py:1487 cps/updater.py:391 cps/updater.py:628 msgid "Connection error" msgstr "Erro de conexão" -#: cps/admin.py:1771 cps/updater.py:388 cps/updater.py:625 +#: cps/admin.py:1488 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:1772 cps/updater.py:390 cps/updater.py:627 +#: cps/admin.py:1489 cps/updater.py:395 cps/updater.py:632 msgid "General error" msgstr "Erro geral" -#: cps/admin.py:1773 +#: cps/admin.py:1490 #, fuzzy 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:1774 +#: cps/admin.py:1491 msgid "Files could not be replaced during update" msgstr "" -#: cps/admin.py:1798 +#: cps/admin.py:1515 #, fuzzy msgid "Failed to extract at least One LDAP User" msgstr "Falha na criação no mínimo de um usuário LDAP" -#: cps/admin.py:1843 +#: cps/admin.py:1560 msgid "Failed to Create at Least One LDAP User" msgstr "Falha na criação no mínimo de um usuário LDAP" -#: cps/admin.py:1856 +#: cps/admin.py:1573 #, python-format msgid "Error: %(ldaperror)s" msgstr "Erro: %(ldaperror)s" -#: cps/admin.py:1860 +#: cps/admin.py:1577 msgid "Error: No user returned in response of LDAP server" msgstr "Erro: Nenhum usuário retornado em resposta do servidor LDAP" -#: cps/admin.py:1893 +#: cps/admin.py:1610 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:1895 +#: cps/admin.py:1612 msgid "{} User Successfully Imported" msgstr "{} Usuário Importado com Sucesso" -#: cps/converter.py:30 +#: cps/admin.py:1670 +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:1689 +msgid "DB is not Writeable" +msgstr "DB não é gravável" + +#: cps/admin.py:1702 +msgid "Keyfile Location is not Valid, Please Enter Correct Path" +msgstr "A localização do arquivo-chave não é válida, por favor insira o caminho correto" + +#: cps/admin.py:1706 +msgid "Certfile Location is not Valid, Please Enter Correct Path" +msgstr "A localização do arquivo de certificação não é válida, digite o caminho correto" + +#: cps/admin.py:1814 +#, fuzzy +msgid "Database Settings updated" +msgstr "Atualização das configurações do servidor de e-mail" + +#: cps/admin.py:1822 +#, fuzzy +msgid "Database Configuration" +msgstr "Configuração das Características" + +#: cps/admin.py:1838 cps/web.py:1229 +msgid "Please fill out all fields!" +msgstr "Por favor, preencha todos os campos!" + +#: cps/admin.py:1846 +msgid "E-mail is not from valid domain" +msgstr "O e-mail não é de um domínio válido" + +#: cps/admin.py:1863 +#, python-format +msgid "User '%(user)s' created" +msgstr "Usuário '%(user)s' criado" + +#: cps/admin.py:1869 +#, fuzzy +msgid "Found an existing account for this e-mail address or name." +msgstr "Encontrei uma conta existente para este endereço de e-mail ou apelido." + +#: cps/admin.py:1899 +#, python-format +msgid "User '%(nick)s' deleted" +msgstr "Usuário '%(nick)s' excluído" + +#: cps/admin.py:1901 cps/admin.py:1902 +msgid "Can't delete Guest User" +msgstr "" + +#: cps/admin.py:1905 +msgid "No admin user remaining, can't delete user" +msgstr "Nenhum usuário administrador restante, não é possível excluir o usuário" + +#: cps/admin.py:1982 +#, python-format +msgid "User '%(nick)s' updated" +msgstr "Usuário '%(nick)s' atualizado" + +#: cps/converter.py:31 msgid "not installed" msgstr "não instalado" -#: cps/converter.py:31 +#: cps/converter.py:32 msgid "Execution permissions missing" msgstr "Faltam as permissões de execução" -#: cps/db.py:674 cps/web.py:710 cps/web.py:1222 +#: cps/db.py:681 cps/search.py:134 cps/web.py:720 #, python-format msgid "Custom Column No.%(column)d is not existing in calibre database" msgstr "A coluna personalizada No.%(column)d não existe no banco de dados do calibre" -#: cps/db.py:917 cps/templates/config_edit.html:204 +#: cps/db.py:924 cps/templates/config_edit.html:204 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 -#: cps/web.py:551 cps/web.py:585 cps/web.py:646 cps/web.py:671 cps/web.py:1003 -#: cps/web.py:1032 cps/web.py:1066 cps/web.py:1093 cps/web.py:1132 +#: cps/web.py:549 cps/web.py:583 cps/web.py:656 cps/web.py:681 cps/web.py:962 +#: cps/web.py:992 cps/web.py:1027 cps/web.py:1055 cps/web.py:1094 msgid "None" msgstr "Nenhum" -#: cps/editbooks.py:295 cps/editbooks.py:297 -msgid "Book Format Successfully Deleted" -msgstr "Formato do Livro Eliminado com Sucesso" - -#: cps/editbooks.py:304 cps/editbooks.py:306 -msgid "Book Successfully Deleted" -msgstr "Livro Eliminado com Sucesso" - -#: cps/editbooks.py:358 -msgid "You are missing permissions to delete books" -msgstr "" - -#: cps/editbooks.py:373 cps/editbooks.py:765 cps/web.py:518 cps/web.py:1783 -#: cps/web.py:1825 cps/web.py:1870 +#: cps/editbooks.py:109 cps/editbooks.py:890 cps/web.py:516 cps/web.py:1454 +#: cps/web.py:1496 cps/web.py:1541 msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible" msgstr "Oops! O título do livro seleccionado não está disponível. O arquivo não existe ou não é acessível" -#: cps/editbooks.py:408 -msgid "edit metadata" -msgstr "editar metadados" - -#: cps/editbooks.py:457 -#, python-format -msgid "%(seriesindex)s is not a valid number, skipping" -msgstr "" - -#: cps/editbooks.py:493 cps/editbooks.py:1001 -#, fuzzy, python-format -msgid "'%(langname)s' is not a valid language" -msgstr "%(langname)s não é um idioma válido" - -#: cps/editbooks.py:634 -msgid "User has no rights to upload additional file formats" -msgstr "" - -#: cps/editbooks.py:639 cps/editbooks.py:1029 -#, 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:643 cps/editbooks.py:1033 -msgid "File to be uploaded must have an extension" -msgstr "O arquivo a ser carregado deve ter uma extensão" - -#: cps/editbooks.py:655 -#, python-format -msgid "Failed to create path %(path)s (Permission denied)." -msgstr "Falha ao criar o caminho %(path)s (Permission denied)." - -#: cps/editbooks.py:660 -#, python-format -msgid "Failed to store file %(file)s." -msgstr "Falha ao armazenar o arquivo %(file)s." - -#: cps/editbooks.py:683 -#, python-format -msgid "File format %(ext)s added to %(book)s" -msgstr "Formato de arquivo %(ext)s adicionado a %(book)s" - -#: cps/editbooks.py:697 cps/editbooks.py:809 +#: cps/editbooks.py:153 cps/editbooks.py:1216 msgid "User has no rights to upload cover" msgstr "" -#: cps/editbooks.py:828 +#: cps/editbooks.py:173 cps/editbooks.py:711 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "Os identificadores não são sensíveis a maiúsculas ou minúsculas, mas sim a maiúsculas e minúsculas" -#: cps/editbooks.py:869 +#: cps/editbooks.py:214 msgid "Metadata successfully updated" msgstr "Metadados atualizados com sucesso" -#: cps/editbooks.py:887 +#: cps/editbooks.py:232 msgid "Error editing book: {}" msgstr "" -#: cps/editbooks.py:951 -msgid "Uploaded book probably exists in the library, consider to change before upload new: " -msgstr "O livro carregado provavelmente existe na biblioteca, considere mudar antes de carregar novo: " - -#: cps/editbooks.py:1041 -#, 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:1061 -#, 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:1117 +#: cps/editbooks.py:287 #, python-format msgid "File %(file)s uploaded" msgstr "Arquivo %(file)s enviado" -#: cps/editbooks.py:1143 +#: cps/editbooks.py:314 msgid "Source or destination format for conversion missing" msgstr "Falta o formato de origem ou destino para a conversão" -#: cps/editbooks.py:1151 +#: cps/editbooks.py:322 #, 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:1155 +#: cps/editbooks.py:326 #, 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:630 +msgid "Uploaded book probably exists in the library, consider to change before upload new: " +msgstr "O livro carregado provavelmente existe na biblioteca, considere mudar antes de carregar novo: " + +#: cps/editbooks.py:685 cps/editbooks.py:1010 +#, fuzzy, python-format +msgid "'%(langname)s' is not a valid language" +msgstr "%(langname)s não é um idioma válido" + +#: cps/editbooks.py:723 cps/editbooks.py:1157 +#, 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:727 cps/editbooks.py:1161 +msgid "File to be uploaded must have an extension" +msgstr "O arquivo a ser carregado deve ter uma extensão" + +#: cps/editbooks.py:735 +#, 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:755 +#, 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:812 cps/editbooks.py:814 +msgid "Book Format Successfully Deleted" +msgstr "Formato do Livro Eliminado com Sucesso" + +#: cps/editbooks.py:821 cps/editbooks.py:823 +msgid "Book Successfully Deleted" +msgstr "Livro Eliminado com Sucesso" + +#: cps/editbooks.py:875 +msgid "You are missing permissions to delete books" +msgstr "" + +#: cps/editbooks.py:925 +msgid "edit metadata" +msgstr "editar metadados" + +#: cps/editbooks.py:974 +#, python-format +msgid "%(seriesindex)s is not a valid number, skipping" +msgstr "" + +#: cps/editbooks.py:1152 +msgid "User has no rights to upload additional file formats" +msgstr "" + +#: cps/editbooks.py:1173 +#, python-format +msgid "Failed to create path %(path)s (Permission denied)." +msgstr "Falha ao criar o caminho %(path)s (Permission denied)." + +#: cps/editbooks.py:1178 +#, python-format +msgid "Failed to store file %(file)s." +msgstr "Falha ao armazenar o arquivo %(file)s." + +#: cps/editbooks.py:1201 +#, python-format +msgid "File format %(ext)s added to %(book)s" +msgstr "Formato de arquivo %(ext)s adicionado a %(book)s" + #: cps/gdrive.py:58 msgid "Google Drive setup not completed, try to deactivate and activate Google Drive again" msgstr "Configuração do Google Drive não concluída, tente desativar e ativar o Google Drive novamente" @@ -612,27 +637,27 @@ 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 é verificado, por favor siga os passos para verificar o domínio no console do desenvolvedor do google" -#: cps/helper.py:81 +#: cps/helper.py:80 #, 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:87 cps/tasks/convert.py:75 +#: cps/helper.py:86 cps/tasks/convert.py:75 #, 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:92 +#: cps/helper.py:91 #, python-format msgid "%(format)s not found: %(fn)s" msgstr "%(format)s não encontrado: %(fn)s" -#: cps/helper.py:97 cps/helper.py:221 cps/templates/detail.html:41 -#: cps/templates/detail.html:45 +#: cps/helper.py:96 cps/helper.py:221 cps/templates/detail.html:42 +#: cps/templates/detail.html:46 msgid "Send to Kindle" msgstr "Enviar para Kindle" -#: cps/helper.py:98 cps/helper.py:115 cps/helper.py:223 +#: cps/helper.py:97 cps/helper.py:115 cps/helper.py:223 msgid "This e-mail has been sent via Calibre-Web." msgstr "Este e-mail foi enviado via Calibre-Web." @@ -672,132 +697,112 @@ msgstr "Enviar para Kindle" 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:353 +#: cps/helper.py:341 msgid "Read status could not set: {}" msgstr "" -#: cps/helper.py:376 +#: cps/helper.py:364 #, 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:382 +#: cps/helper.py:370 #, python-format msgid "Deleting book %(id)s failed: %(message)s" msgstr "Falha ao excluir livro %(id)s: %(message)s" -#: cps/helper.py:393 +#: cps/helper.py:381 #, fuzzy, python-format msgid "Deleting book %(id)s from database only, book path in database not valid: %(path)s" msgstr "Excluindo livro %(id)s, caminho do livro inválido: %(path)s" -#: cps/helper.py:458 +#: cps/helper.py:446 #, fuzzy, python-format msgid "Rename author 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:529 cps/helper.py:538 +#: cps/helper.py:518 cps/helper.py:527 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "Arquivo %(file)s não encontrado no Google Drive" -#: cps/helper.py:572 +#: cps/helper.py:561 #, 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:592 +#: cps/helper.py:581 msgid "Error in rename file in path: {}" msgstr "" -#: cps/helper.py:610 +#: cps/helper.py:599 #, 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:651 cps/web.py:1737 +#: cps/helper.py:640 cps/web.py:1408 #, fuzzy msgid "Found an existing account for this e-mail address" msgstr "Encontrado uma conta existente para este endereço de e-mail." -#: cps/helper.py:659 +#: cps/helper.py:648 msgid "This username is already taken" msgstr "Este nome de usuário já está registrado" -#: cps/helper.py:669 +#: cps/helper.py:658 msgid "Invalid e-mail address format" msgstr "Formato de endereço de e-mail inválido" -#: cps/helper.py:754 -msgid "Python modul 'advocate' is not installed but is needed for cover downloads" +#: cps/helper.py:808 +msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "" -#: cps/helper.py:767 +#: cps/helper.py:818 msgid "Error Downloading Cover" msgstr "Erro ao Baixar a capa" -#: cps/helper.py:770 +#: cps/helper.py:821 msgid "Cover Format Error" msgstr "Erro de Formato da Capa" -#: cps/helper.py:773 +#: cps/helper.py:824 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "" -#: cps/helper.py:783 +#: cps/helper.py:834 msgid "Failed to create path for cover" msgstr "Falha em criar caminho para a capa" -#: cps/helper.py:799 +#: cps/helper.py:850 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:810 +#: cps/helper.py:861 msgid "Only jpg/jpeg/png/webp/bmp files are supported as coverfile" msgstr "Apenas ficheiros jpg/jpeg/png/webp/bmp são suportados como arquivos de capa" -#: cps/helper.py:822 +#: cps/helper.py:873 msgid "Invalid cover file content" msgstr "" -#: cps/helper.py:826 +#: cps/helper.py:877 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "Apenas arquivos jpg/jpeg são suportados como arquivos de capa" -#: cps/helper.py:878 +#: cps/helper.py:929 msgid "Unrar binary file not found" msgstr "Unrar arquivo binário não encontrado" -#: cps/helper.py:889 +#: cps/helper.py:940 msgid "Error excecuting UnRar" msgstr "Erro excecutando UnRar" -#: cps/helper.py:937 -msgid "Waiting" -msgstr "Aguardando" - -#: cps/helper.py:939 -msgid "Failed" -msgstr "Falha" - -#: cps/helper.py:941 -msgid "Started" -msgstr "Iniciado em" - -#: cps/helper.py:943 -msgid "Finished" -msgstr "Concluído" - -#: cps/helper.py:945 -msgid "Unknown Status" -msgstr "Status Desconhecido" - -#: cps/kobo_auth.py:128 +#: cps/kobo_auth.py:89 #, fuzzy msgid "Please access Calibre-Web from non localhost to get valid api_endpoint for kobo device" msgstr "Por favor, acesse o calibre-web de um host não local para obter um api_endpoint válido para o dispositivo kobo" -#: cps/kobo_auth.py:154 +#: cps/kobo_auth.py:115 msgid "Kobo Setup" msgstr "Configuração Kobo" @@ -806,7 +811,7 @@ msgstr "Configuração Kobo" msgid "Register with %(provider)s" msgstr "Registre-se com %(provider)s" -#: cps/oauth_bb.py:138 cps/remotelogin.py:130 cps/web.py:1613 +#: cps/oauth_bb.py:138 cps/remotelogin.py:130 cps/web.py:1286 #, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "agora você está logado como: '%(nickname)s'" @@ -867,12 +872,12 @@ msgstr "Erro no Google Oauth, por favor tente novamente mais tarde." msgid "Google Oauth error: {}" msgstr "" -#: cps/opds.py:298 +#: cps/opds.py:287 msgid "{} Stars" msgstr "" -#: cps/remotelogin.py:62 cps/templates/layout.html:84 -#: cps/templates/login.html:4 cps/templates/login.html:21 cps/web.py:1662 +#: cps/remotelogin.py:62 cps/templates/layout.html:85 +#: cps/templates/login.html:4 cps/templates/login.html:21 cps/web.py:1335 msgid "Login" msgstr "Login" @@ -888,456 +893,489 @@ msgstr "O Token expirou" msgid "Success! Please return to your device" msgstr "Sucesso! Por favor, volte ao seu aparelho" -#: cps/render_template.py:41 cps/web.py:407 +#: cps/render_template.py:40 cps/web.py:405 msgid "Books" msgstr "Livros" -#: cps/render_template.py:43 +#: cps/render_template.py:42 msgid "Show recent books" msgstr "Mostrar livros recentes" -#: cps/render_template.py:44 cps/templates/index.xml:25 +#: cps/render_template.py:43 cps/templates/index.xml:25 msgid "Hot Books" msgstr "Livros Quentes" -#: cps/render_template.py:46 +#: cps/render_template.py:45 msgid "Show Hot Books" msgstr "Mostrar Livros Quentes" -#: cps/render_template.py:48 cps/render_template.py:53 +#: cps/render_template.py:47 cps/render_template.py:52 msgid "Downloaded Books" msgstr "Livros descarregados" -#: cps/render_template.py:50 cps/render_template.py:55 +#: cps/render_template.py:49 cps/render_template.py:54 #: cps/templates/user_table.html:167 msgid "Show Downloaded Books" msgstr "Mostrar Livros Descarregados" -#: cps/render_template.py:58 cps/templates/index.xml:32 cps/web.py:422 +#: cps/render_template.py:57 cps/templates/index.xml:32 cps/web.py:420 msgid "Top Rated Books" msgstr "Livros Mais Bem Avaliados" -#: cps/render_template.py:60 cps/templates/user_table.html:161 +#: cps/render_template.py:59 cps/templates/user_table.html:161 msgid "Show Top Rated Books" msgstr "Mostrar os melhores livros avaliados" -#: cps/render_template.py:61 cps/templates/index.xml:54 -#: cps/templates/index.xml:58 cps/web.py:729 +#: cps/render_template.py:60 cps/templates/index.xml:54 +#: cps/templates/index.xml:58 cps/web.py:739 msgid "Read Books" msgstr "Livros Lidos" -#: cps/render_template.py:63 +#: cps/render_template.py:62 msgid "Show read and unread" msgstr "Mostrar lido e não lido" -#: cps/render_template.py:65 cps/templates/index.xml:61 -#: cps/templates/index.xml:65 cps/web.py:732 +#: cps/render_template.py:64 cps/templates/index.xml:61 +#: cps/templates/index.xml:65 cps/web.py:742 msgid "Unread Books" msgstr "Livros Não Lidos" -#: cps/render_template.py:67 +#: cps/render_template.py:66 msgid "Show unread" msgstr "Mostrar não lido" -#: cps/render_template.py:68 +#: cps/render_template.py:67 msgid "Discover" msgstr "Descubra" -#: cps/render_template.py:70 cps/templates/index.xml:50 +#: cps/render_template.py:69 cps/templates/index.xml:50 #: cps/templates/user_table.html:162 msgid "Show Random Books" msgstr "Mostrar Livros Aleatórios" -#: cps/render_template.py:71 cps/templates/book_table.html:67 -#: cps/templates/index.xml:83 cps/web.py:1135 +#: cps/render_template.py:70 cps/templates/book_table.html:67 +#: cps/templates/index.xml:83 cps/web.py:1098 msgid "Categories" msgstr "Categorias" -#: cps/render_template.py:73 cps/templates/user_table.html:158 +#: cps/render_template.py:72 cps/templates/user_table.html:158 msgid "Show category selection" msgstr "Mostrar seleção de categoria" -#: cps/render_template.py:74 cps/templates/book_edit.html:90 +#: cps/render_template.py:73 cps/templates/book_edit.html:91 #: cps/templates/book_table.html:68 cps/templates/index.xml:90 -#: cps/templates/search_form.html:69 cps/web.py:1034 cps/web.py:1041 +#: cps/templates/search_form.html:69 cps/web.py:995 cps/web.py:1002 msgid "Series" msgstr "Série" -#: cps/render_template.py:76 cps/templates/user_table.html:157 +#: cps/render_template.py:75 cps/templates/user_table.html:157 msgid "Show series selection" msgstr "Mostrar selecção de séries" -#: cps/render_template.py:77 cps/templates/book_table.html:66 +#: cps/render_template.py:76 cps/templates/book_table.html:66 #: cps/templates/index.xml:69 msgid "Authors" msgstr "Autores" -#: cps/render_template.py:79 cps/templates/user_table.html:160 +#: cps/render_template.py:78 cps/templates/user_table.html:160 msgid "Show author selection" msgstr "Mostrar selecção de autor" -#: cps/render_template.py:81 cps/templates/book_table.html:72 -#: cps/templates/index.xml:76 cps/web.py:1006 +#: cps/render_template.py:80 cps/templates/book_table.html:72 +#: cps/templates/index.xml:76 cps/web.py:966 msgid "Publishers" msgstr "Editores" -#: cps/render_template.py:83 cps/templates/user_table.html:163 +#: cps/render_template.py:82 cps/templates/user_table.html:163 msgid "Show publisher selection" msgstr "Mostrar selecção de editores" -#: cps/render_template.py:84 cps/templates/book_table.html:70 +#: cps/render_template.py:83 cps/templates/book_table.html:70 #: cps/templates/index.xml:97 cps/templates/search_form.html:107 -#: cps/web.py:1108 +#: cps/web.py:1070 msgid "Languages" msgstr "Idiomas" -#: cps/render_template.py:87 cps/templates/user_table.html:155 +#: cps/render_template.py:86 cps/templates/user_table.html:155 msgid "Show language selection" msgstr "Mostrar seleção de idioma" -#: cps/render_template.py:88 cps/templates/index.xml:104 +#: cps/render_template.py:87 cps/templates/index.xml:104 msgid "Ratings" msgstr "Classificações" -#: cps/render_template.py:90 cps/templates/user_table.html:164 +#: cps/render_template.py:89 cps/templates/user_table.html:164 msgid "Show ratings selection" msgstr "Mostrar selecção de classificações" -#: cps/render_template.py:91 cps/templates/index.xml:112 +#: cps/render_template.py:90 cps/templates/index.xml:112 msgid "File formats" msgstr "Formatos de arquivo" -#: cps/render_template.py:93 cps/templates/user_table.html:165 +#: cps/render_template.py:92 cps/templates/user_table.html:165 msgid "Show file formats selection" msgstr "Mostrar seleção de formatos de arquivo" -#: cps/render_template.py:95 cps/web.py:755 +#: cps/render_template.py:94 cps/web.py:765 msgid "Archived Books" msgstr "Livros Arquivados" -#: cps/render_template.py:97 cps/templates/user_table.html:166 +#: cps/render_template.py:96 cps/templates/user_table.html:166 msgid "Show archived books" msgstr "Mostrar livros arquivados" -#: cps/render_template.py:100 cps/web.py:837 +#: cps/render_template.py:99 cps/web.py:796 msgid "Books List" msgstr "Lista de Livros" -#: cps/render_template.py:102 cps/templates/user_table.html:168 +#: cps/render_template.py:101 cps/templates/user_table.html:168 msgid "Show Books List" msgstr "Mostrar Lista de Livros" -#: cps/shelf.py:67 cps/shelf.py:121 -msgid "Invalid shelf specified" -msgstr "Estante inválida especificada" - -#: cps/shelf.py:73 -#, fuzzy -msgid "Sorry you are not allowed to add a book to that shelf" -msgstr "Desculpe, você não tem permissão para adicionar um livro à estante: %(shelfname)s" - -#: cps/shelf.py:82 -#, python-format -msgid "Book is already part of the shelf: %(shelfname)s" -msgstr "O livro já faz parte da estante: %(shelfname)s" - -#: cps/shelf.py:107 -#, python-format -msgid "Book has been added to shelf: %(sname)s" -msgstr "O livro foi adicionado à estante: %(sname)s" - -#: cps/shelf.py:126 -msgid "You are not allowed to add a book to the shelf" -msgstr "" - -#: cps/shelf.py:144 -#, python-format -msgid "Books are already part of the shelf: %(name)s" -msgstr "Os livros já fazem parte da estante: %(name)s" - -#: cps/shelf.py:156 -#, python-format -msgid "Books have been added to shelf: %(sname)s" -msgstr "Livros foram adicionados à estante: %(sname)s" - -#: cps/shelf.py:163 -#, python-format -msgid "Could not add books to shelf: %(sname)s" -msgstr "Não foi possível adicionar livros à estante: %(sname)s" - -#: cps/shelf.py:209 -#, python-format -msgid "Book has been removed from shelf: %(sname)s" -msgstr "O livro foi removido da estante: %(sname)s" - -#: cps/shelf.py:218 -msgid "Sorry you are not allowed to remove a book from this shelf" -msgstr "" - -#: cps/shelf.py:228 cps/templates/layout.html:140 -msgid "Create a Shelf" -msgstr "Crie uma estante" - -#: cps/shelf.py:236 -#, fuzzy -msgid "Sorry you are not allowed to edit this shelf" -msgstr "Desculpe, você não tem permissão para remover um livro desta estante: %(sname)s" - -#: cps/shelf.py:238 -msgid "Edit a shelf" -msgstr "Editar uma estante" - -#: cps/shelf.py:248 -msgid "Sorry you are not allowed to create a public shelf" -msgstr "" - -#: cps/shelf.py:265 -#, python-format -msgid "Shelf %(title)s created" -msgstr "Estante %(title)s criada" - -#: cps/shelf.py:268 -#, python-format -msgid "Shelf %(title)s changed" -msgstr "Estante %(title)s alterada" - -#: cps/shelf.py:282 -msgid "There was an error" -msgstr "Houve um erro" - -#: cps/shelf.py:304 -#, python-format -msgid "A public shelf with the name '%(title)s' already exists." -msgstr "Já existe uma estante pública com o nome '%(title)s' ." - -#: cps/shelf.py:315 -#, python-format -msgid "A private shelf with the name '%(title)s' already exists." -msgstr "Já existe uma estante privada com o nome'%(title)s' ." - -#: cps/shelf.py:337 -msgid "Error deleting Shelf" -msgstr "" - -#: cps/shelf.py:339 -#, fuzzy -msgid "Shelf successfully deleted" -msgstr "Livro Eliminado com Sucesso" - -#: cps/shelf.py:389 -#, python-format -msgid "Change order of Shelf: '%(name)s'" -msgstr "Alterar ordem da Estante: '%(name)s'" - -#: cps/shelf.py:461 -#, python-format -msgid "Shelf: '%(name)s'" -msgstr "Estante: '%(name)s'" - -#: cps/shelf.py:465 -msgid "Error opening shelf. Shelf does not exist or is not accessible" -msgstr "Erro ao abrir estante. A estante não existe ou não está acessível" - -#: cps/updater.py:426 cps/updater.py:437 cps/updater.py:538 cps/updater.py:553 -msgid "Unexpected data while reading update information" -msgstr "Dados inesperados ao ler informações de atualização" - -#: cps/updater.py:433 cps/updater.py:545 -msgid "No update available. You already have the latest version installed" -msgstr "Não há atualização disponível. Você já tem a última versão instalada" - -#: cps/updater.py:451 -msgid "A new update is available. Click on the button below to update to the latest version." -msgstr "Uma nova atualização está disponível. Clique no botão abaixo para atualizar para a versão mais recente." - -#: cps/updater.py:469 -msgid "Could not fetch update information" -msgstr "Não consegui obter informações actualizadas" - -#: cps/updater.py:479 -msgid "Click on the button below to update to the latest stable version." -msgstr "Clique no botão abaixo para atualizar para a última versão estável." - -#: cps/updater.py:488 cps/updater.py:502 cps/updater.py:513 -#, python-format -msgid "A new update is available. Click on the button below to update to version: %(version)s" -msgstr "Uma nova atualização está disponível. Clique no botão abaixo para atualizar para a versão: %(version)s" - -#: cps/updater.py:531 -msgid "No release information available" -msgstr "Não há informações de lançamento disponíveis" - -#: cps/templates/index.html:5 cps/web.py:434 -msgid "Discover (Random Books)" -msgstr "Descobrir (Livros Aleatórios)" - -#: cps/web.py:470 -msgid "Hot Books (Most Downloaded)" -msgstr "Hot Books (Os Mais Descarregados)" - -#: cps/web.py:501 -#, python-format -msgid "Downloaded books by %(user)s" -msgstr "Livros baixados por %(user)s" - -#: cps/web.py:534 -#, python-format -msgid "Author: %(name)s" -msgstr "Autor: %(name)s" - -#: cps/web.py:570 -#, python-format -msgid "Publisher: %(name)s" -msgstr "Editor: %(name)s" - -#: cps/web.py:598 -#, python-format -msgid "Series: %(serie)s" -msgstr "Série: %(serie)s" - -#: cps/web.py:610 -#, python-format -msgid "Rating: %(rating)s stars" -msgstr "Avaliação: %(rating)s estrelas" - -#: cps/web.py:626 -#, python-format -msgid "File format: %(format)s" -msgstr "Formato do arquivo: %(format)s" - -#: cps/web.py:663 -#, python-format -msgid "Category: %(name)s" -msgstr "Categoria: %(name)s" - -#: cps/web.py:690 -#, python-format -msgid "Language: %(name)s" -msgstr "Idioma: %(name)s" - -#: cps/templates/layout.html:56 cps/web.py:789 cps/web.py:1444 -msgid "Advanced Search" -msgstr "Pesquisa Avançada" - -#: cps/templates/book_edit.html:235 cps/templates/feed.xml:33 -#: cps/templates/index.xml:11 cps/templates/layout.html:45 -#: cps/templates/layout.html:48 cps/templates/search_form.html:226 -#: cps/web.py:807 cps/web.py:1164 +#: cps/search.py:48 cps/search.py:414 cps/templates/book_edit.html:236 +#: cps/templates/feed.xml:33 cps/templates/index.xml:11 +#: cps/templates/layout.html:46 cps/templates/layout.html:49 +#: cps/templates/search_form.html:226 msgid "Search" msgstr "Pesquisa" -#: cps/templates/admin.html:16 cps/web.py:979 -msgid "Downloads" -msgstr "Downloads" - -#: cps/web.py:1068 -msgid "Ratings list" -msgstr "Lista de classificações" - -#: cps/web.py:1095 -msgid "File formats list" -msgstr "Lista de formatos de arquivo" - -#: cps/templates/layout.html:73 cps/templates/tasks.html:7 cps/web.py:1149 -msgid "Tasks" -msgstr "Tarefas" - -#: cps/web.py:1286 +#: cps/search.py:194 msgid "Published after " msgstr "Publicado depois de " -#: cps/web.py:1293 +#: cps/search.py:201 msgid "Published before " msgstr "Publicado antes de " -#: cps/web.py:1315 +#: cps/search.py:223 #, python-format msgid "Rating <= %(rating)s" msgstr "Avaliação <= %(rating)s" -#: cps/web.py:1317 +#: cps/search.py:225 #, python-format msgid "Rating >= %(rating)s" msgstr "Avaliação >= %(rating)s" -#: cps/web.py:1319 +#: cps/search.py:227 #, python-format msgid "Read Status = %(status)s" msgstr "Status de leitura = %(status)s" -#: cps/web.py:1425 +#: cps/search.py:345 msgid "Error on search for custom columns, please restart Calibre-Web" msgstr "" -#: cps/web.py:1527 +#: cps/search.py:364 cps/search.py:396 cps/templates/layout.html:57 +msgid "Advanced Search" +msgstr "Pesquisa Avançada" + +#: cps/shelf.py:49 cps/shelf.py:103 +msgid "Invalid shelf specified" +msgstr "Estante inválida especificada" + +#: cps/shelf.py:55 +#, fuzzy +msgid "Sorry you are not allowed to add a book to that shelf" +msgstr "Desculpe, você não tem permissão para adicionar um livro à estante: %(shelfname)s" + +#: cps/shelf.py:64 +#, python-format +msgid "Book is already part of the shelf: %(shelfname)s" +msgstr "O livro já faz parte da estante: %(shelfname)s" + +#: cps/shelf.py:89 +#, python-format +msgid "Book has been added to shelf: %(sname)s" +msgstr "O livro foi adicionado à estante: %(sname)s" + +#: cps/shelf.py:108 +msgid "You are not allowed to add a book to the shelf" +msgstr "" + +#: cps/shelf.py:126 +#, python-format +msgid "Books are already part of the shelf: %(name)s" +msgstr "Os livros já fazem parte da estante: %(name)s" + +#: cps/shelf.py:138 +#, python-format +msgid "Books have been added to shelf: %(sname)s" +msgstr "Livros foram adicionados à estante: %(sname)s" + +#: cps/shelf.py:145 +#, python-format +msgid "Could not add books to shelf: %(sname)s" +msgstr "Não foi possível adicionar livros à estante: %(sname)s" + +#: cps/shelf.py:191 +#, python-format +msgid "Book has been removed from shelf: %(sname)s" +msgstr "O livro foi removido da estante: %(sname)s" + +#: cps/shelf.py:200 +msgid "Sorry you are not allowed to remove a book from this shelf" +msgstr "" + +#: cps/shelf.py:210 cps/templates/layout.html:141 +msgid "Create a Shelf" +msgstr "Crie uma estante" + +#: cps/shelf.py:218 +#, fuzzy +msgid "Sorry you are not allowed to edit this shelf" +msgstr "Desculpe, você não tem permissão para remover um livro desta estante: %(sname)s" + +#: cps/shelf.py:220 +msgid "Edit a shelf" +msgstr "Editar uma estante" + +#: cps/shelf.py:229 +msgid "Error deleting Shelf" +msgstr "" + +#: cps/shelf.py:231 +#, fuzzy +msgid "Shelf successfully deleted" +msgstr "Livro Eliminado com Sucesso" + +#: cps/shelf.py:281 +#, python-format +msgid "Change order of Shelf: '%(name)s'" +msgstr "Alterar ordem da Estante: '%(name)s'" + +#: cps/shelf.py:313 +msgid "Sorry you are not allowed to create a public shelf" +msgstr "" + +#: cps/shelf.py:330 +#, python-format +msgid "Shelf %(title)s created" +msgstr "Estante %(title)s criada" + +#: cps/shelf.py:333 +#, python-format +msgid "Shelf %(title)s changed" +msgstr "Estante %(title)s alterada" + +#: cps/shelf.py:347 +msgid "There was an error" +msgstr "Houve um erro" + +#: cps/shelf.py:369 +#, python-format +msgid "A public shelf with the name '%(title)s' already exists." +msgstr "Já existe uma estante pública com o nome '%(title)s' ." + +#: cps/shelf.py:380 +#, python-format +msgid "A private shelf with the name '%(title)s' already exists." +msgstr "Já existe uma estante privada com o nome'%(title)s' ." + +#: cps/shelf.py:462 +#, python-format +msgid "Shelf: '%(name)s'" +msgstr "Estante: '%(name)s'" + +#: cps/shelf.py:466 +msgid "Error opening shelf. Shelf does not exist or is not accessible" +msgstr "Erro ao abrir estante. A estante não existe ou não está acessível" + +#: cps/tasks_status.py:48 cps/templates/layout.html:74 +#: cps/templates/tasks.html:7 +msgid "Tasks" +msgstr "Tarefas" + +#: cps/tasks_status.py:64 +msgid "Waiting" +msgstr "Aguardando" + +#: cps/tasks_status.py:66 +msgid "Failed" +msgstr "Falha" + +#: cps/tasks_status.py:68 +msgid "Started" +msgstr "Iniciado em" + +#: cps/tasks_status.py:70 +msgid "Finished" +msgstr "Concluído" + +#: cps/tasks_status.py:72 +msgid "Ended" +msgstr "" + +#: cps/tasks_status.py:74 +msgid "Cancelled" +msgstr "" + +#: cps/tasks_status.py:76 +msgid "Unknown Status" +msgstr "Status Desconhecido" + +#: cps/updater.py:431 cps/updater.py:442 cps/updater.py:543 cps/updater.py:558 +msgid "Unexpected data while reading update information" +msgstr "Dados inesperados ao ler informações de atualização" + +#: cps/updater.py:438 cps/updater.py:550 +msgid "No update available. You already have the latest version installed" +msgstr "Não há atualização disponível. Você já tem a última versão instalada" + +#: cps/updater.py:456 +msgid "A new update is available. Click on the button below to update to the latest version." +msgstr "Uma nova atualização está disponível. Clique no botão abaixo para atualizar para a versão mais recente." + +#: cps/updater.py:474 +msgid "Could not fetch update information" +msgstr "Não consegui obter informações actualizadas" + +#: cps/updater.py:484 +msgid "Click on the button below to update to the latest stable version." +msgstr "Clique no botão abaixo para atualizar para a última versão estável." + +#: cps/updater.py:493 cps/updater.py:507 cps/updater.py:518 +#, python-format +msgid "A new update is available. Click on the button below to update to version: %(version)s" +msgstr "Uma nova atualização está disponível. Clique no botão abaixo para atualizar para a versão: %(version)s" + +#: cps/updater.py:536 +msgid "No release information available" +msgstr "Não há informações de lançamento disponíveis" + +#: cps/templates/index.html:6 cps/web.py:432 +msgid "Discover (Random Books)" +msgstr "Descobrir (Livros Aleatórios)" + +#: cps/web.py:468 +msgid "Hot Books (Most Downloaded)" +msgstr "Hot Books (Os Mais Descarregados)" + +#: cps/web.py:499 +#, python-format +msgid "Downloaded books by %(user)s" +msgstr "Livros baixados por %(user)s" + +#: cps/web.py:532 +#, python-format +msgid "Author: %(name)s" +msgstr "Autor: %(name)s" + +#: cps/web.py:568 +#, python-format +msgid "Publisher: %(name)s" +msgstr "Editor: %(name)s" + +#: cps/web.py:596 +#, python-format +msgid "Series: %(serie)s" +msgstr "Série: %(serie)s" + +#: cps/web.py:609 +msgid "Rating: None" +msgstr "" + +#: cps/web.py:618 +#, python-format +msgid "Rating: %(rating)s stars" +msgstr "Avaliação: %(rating)s estrelas" + +#: cps/web.py:636 +#, python-format +msgid "File format: %(format)s" +msgstr "Formato do arquivo: %(format)s" + +#: cps/web.py:673 +#, python-format +msgid "Category: %(name)s" +msgstr "Categoria: %(name)s" + +#: cps/web.py:700 +#, python-format +msgid "Language: %(name)s" +msgstr "Idioma: %(name)s" + +#: cps/templates/admin.html:16 cps/web.py:938 +msgid "Downloads" +msgstr "Downloads" + +#: cps/web.py:1030 +msgid "Ratings list" +msgstr "Lista de classificações" + +#: cps/web.py:1057 +msgid "File formats list" +msgstr "Lista de formatos de arquivo" + +#: cps/web.py:1199 #, python-format msgid "Book successfully queued for sending to %(kindlemail)s" msgstr "Livro enfileirado com sucesso para envio para %(kindlemail)s" -#: cps/web.py:1531 +#: cps/web.py:1203 #, python-format msgid "Oops! There was an error sending this book: %(res)s" msgstr "Ups! Ocorreu um erro ao enviar este livro: %(res)s" -#: cps/web.py:1533 +#: cps/web.py:1205 msgid "Please update your profile with a valid Send to Kindle E-mail Address." msgstr "Por favor, atualize seu perfil com um endereço de e-mail válido para Kindle." -#: cps/web.py:1550 +#: cps/web.py:1222 msgid "E-Mail 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/templates/layout.html:85 cps/templates/register.html:17 cps/web.py:1551 -#: cps/web.py:1558 cps/web.py:1564 cps/web.py:1583 cps/web.py:1587 -#: cps/web.py:1593 +#: cps/templates/layout.html:86 cps/templates/register.html:17 cps/web.py:1223 +#: cps/web.py:1230 cps/web.py:1236 cps/web.py:1255 cps/web.py:1260 +#: cps/web.py:1266 msgid "Register" msgstr "Registe-se" -#: cps/web.py:1585 +#: cps/web.py:1257 msgid "Your e-mail is not allowed to register" msgstr "Seu e-mail não tem permissão para registrar" -#: cps/web.py:1588 +#: cps/web.py:1261 msgid "Confirmation e-mail was send to your e-mail account." msgstr "O e-mail de confirmação foi enviado para a sua conta de e-mail." -#: cps/web.py:1602 +#: cps/web.py:1275 msgid "Cannot activate LDAP authentication" msgstr "Não é possível ativar a autenticação LDAP" -#: cps/web.py:1621 +#: cps/web.py:1294 #, 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:1627 +#: cps/web.py:1300 #, python-format msgid "Could not login: %(message)s" msgstr "Não foi possível fazer o login: %(message)s" -#: cps/web.py:1631 cps/web.py:1656 +#: cps/web.py:1304 cps/web.py:1329 msgid "Wrong Username or Password" msgstr "Nome de usuário ou senha incorretos" -#: cps/web.py:1638 +#: cps/web.py:1311 msgid "New Password was send to your email address" msgstr "Nova senha foi enviada para seu endereço de e-mail" -#: cps/web.py:1644 +#: cps/web.py:1317 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:1651 +#: cps/web.py:1324 #, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "Você agora está logado como: '%(nickname)s'" -#: cps/web.py:1717 cps/web.py:1766 +#: cps/web.py:1388 cps/web.py:1437 #, python-format msgid "%(name)s's profile" msgstr "Perfil de %(name)s's" -#: cps/web.py:1733 +#: cps/web.py:1404 msgid "Profile updated" msgstr "Perfil atualizado" @@ -1345,40 +1383,75 @@ msgstr "Perfil atualizado" msgid "Found no valid gmail.json file with OAuth information" msgstr "" -#: cps/tasks/convert.py:154 +#: cps/tasks/convert.py:153 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "Calibre ebook-convert %(tool)s não encontrado" -#: cps/tasks/convert.py:187 +#: cps/tasks/convert.py:186 #, python-format msgid "%(format)s format not found on disk" msgstr "Formato %(format)s não encontrado no disco" -#: cps/tasks/convert.py:191 +#: cps/tasks/convert.py:190 msgid "Ebook converter failed with unknown error" msgstr "O conversor de Ebook falhou com erro desconhecido" -#: cps/tasks/convert.py:201 +#: cps/tasks/convert.py:200 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "O conversor de Kepubify falhou: %(error)s" -#: cps/tasks/convert.py:223 +#: cps/tasks/convert.py:222 #, 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:246 +#: cps/tasks/convert.py:245 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "Conversor de ebook falhou: %(error)s" -#: cps/tasks/convert.py:269 +#: cps/tasks/convert.py:268 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "Calibre falhou com erro: %(error)s" +#: cps/tasks/convert.py:273 +msgid "Convert" +msgstr "" + +#: cps/tasks/database.py:28 +msgid "Reconnecting Calibre database" +msgstr "" + +#: cps/tasks/mail.py:265 +msgid "E-mail" +msgstr "" + +#: cps/tasks/thumbnail.py:95 +#, python-format +msgid "Generated %(count)s cover thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:222 cps/tasks/thumbnail.py:435 +#: cps/tasks/thumbnail.py:503 +msgid "Cover Thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:281 +msgid "Generated {0} series thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:446 +msgid "Clearing cover thumbnail cache" +msgstr "" + +#: cps/tasks/upload.py:38 cps/templates/admin.html:20 +#: cps/templates/layout.html:67 cps/templates/user_table.html:145 +msgid "Upload" +msgstr "Upload" + #: cps/templates/admin.html:9 msgid "Users" msgstr "Usuários" @@ -1398,7 +1471,7 @@ msgstr "Endereço de e-mail" msgid "Send to Kindle E-mail Address" msgstr "Enviar para o endereço de e-mail do Kindle" -#: cps/templates/admin.html:17 cps/templates/layout.html:76 +#: cps/templates/admin.html:17 cps/templates/layout.html:77 #: cps/templates/user_table.html:143 msgid "Admin" msgstr "Admin" @@ -1408,13 +1481,8 @@ msgstr "Admin" msgid "Password" msgstr "Senha" -#: cps/templates/admin.html:20 cps/templates/layout.html:66 -#: cps/templates/user_table.html:145 -msgid "Upload" -msgstr "Upload" - -#: cps/templates/admin.html:22 cps/templates/detail.html:18 -#: cps/templates/detail.html:27 cps/templates/shelf.html:7 +#: cps/templates/admin.html:22 cps/templates/detail.html:19 +#: cps/templates/detail.html:28 cps/templates/shelf.html:8 #: cps/templates/user_table.html:146 msgid "Download" msgstr "Baixar" @@ -1428,7 +1496,7 @@ msgstr "Ver Livros" msgid "Edit" msgstr "Editar" -#: cps/templates/admin.html:25 cps/templates/book_edit.html:16 +#: cps/templates/admin.html:25 cps/templates/book_edit.html:17 #: cps/templates/book_table.html:100 cps/templates/modal_dialogs.html:63 #: cps/templates/modal_dialogs.html:116 cps/templates/user_edit.html:67 #: cps/templates/user_table.html:149 @@ -1541,78 +1609,107 @@ msgstr "Editar Configuração Básica" msgid "Edit UI Configuration" msgstr "Editar configuração da IU" -#: cps/templates/admin.html:166 +#: cps/templates/admin.html:167 +msgid "Scheduled Tasks" +msgstr "" + +#: cps/templates/admin.html:170 cps/templates/schedule_edit.html:12 +msgid "Time at which tasks start to run" +msgstr "" + +#: cps/templates/admin.html:174 cps/templates/schedule_edit.html:20 +msgid "Maximum tasks duration" +msgstr "" + +#: cps/templates/admin.html:178 +msgid "Generate book cover thumbnails" +msgstr "" + +#: cps/templates/admin.html:182 +msgid "Generate series cover thumbnails" +msgstr "" + +#: cps/templates/admin.html:186 cps/templates/schedule_edit.html:37 +msgid "Reconnect to Calibre Library" +msgstr "" + +#: cps/templates/admin.html:193 +msgid "Refresh Thumbnail Cover Cache" +msgstr "" + +#: cps/templates/admin.html:199 msgid "Administration" msgstr "Administração" -#: cps/templates/admin.html:167 +#: cps/templates/admin.html:200 msgid "Download Debug Package" msgstr "Download do Pacote de Depuração" -#: cps/templates/admin.html:168 +#: cps/templates/admin.html:201 msgid "View Logs" msgstr "Ver Logs" -#: cps/templates/admin.html:171 +#: cps/templates/admin.html:204 msgid "Reconnect Calibre Database" msgstr "Reconectar base de dados de calibração" -#: cps/templates/admin.html:172 +#: cps/templates/admin.html:207 msgid "Restart" msgstr "Reinicie" -#: cps/templates/admin.html:173 +#: cps/templates/admin.html:208 msgid "Shutdown" msgstr "Encerramento" -#: cps/templates/admin.html:178 -msgid "Update" -msgstr "Atualização" +#: cps/templates/admin.html:213 +msgid "Version Information" +msgstr "" -#: cps/templates/admin.html:182 +#: cps/templates/admin.html:217 msgid "Version" msgstr "Versão" -#: cps/templates/admin.html:183 +#: cps/templates/admin.html:218 msgid "Details" msgstr "Detalhes" -#: cps/templates/admin.html:189 +#: cps/templates/admin.html:224 msgid "Current version" msgstr "Versão atual" -#: cps/templates/admin.html:196 +#: cps/templates/admin.html:231 msgid "Check for Update" msgstr "Verificar Atualizações" -#: cps/templates/admin.html:197 +#: cps/templates/admin.html:232 msgid "Perform Update" msgstr "Realizar Atualizações" -#: cps/templates/admin.html:210 +#: cps/templates/admin.html:245 msgid "Are you sure you want to restart?" msgstr "Tem a certeza que quer recomeçar?" -#: cps/templates/admin.html:215 cps/templates/admin.html:229 -#: cps/templates/admin.html:249 cps/templates/config_db.html:70 +#: cps/templates/admin.html:250 cps/templates/admin.html:264 +#: cps/templates/admin.html:284 cps/templates/config_db.html:70 msgid "OK" msgstr "Ok" -#: cps/templates/admin.html:216 cps/templates/admin.html:230 -#: cps/templates/book_edit.html:213 cps/templates/book_table.html:127 +#: cps/templates/admin.html:251 cps/templates/admin.html:265 +#: cps/templates/book_edit.html:214 cps/templates/book_table.html:127 #: cps/templates/config_db.html:54 cps/templates/config_edit.html:359 #: 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/shelf_edit.html:27 +#: cps/templates/modal_dialogs.html:135 cps/templates/schedule_edit.html:41 +#: cps/templates/shelf_edit.html:27 cps/templates/tasks.html:46 #: cps/templates/user_edit.html:144 msgid "Cancel" msgstr "Cancelar" -#: cps/templates/admin.html:228 +#: cps/templates/admin.html:263 msgid "Are you sure you want to shutdown?" msgstr "Tens a certeza que queres fechar?" -#: cps/templates/admin.html:240 +#: cps/templates/admin.html:275 msgid "Updating, please do not reload this page" msgstr "Atualizando, por favor, não recarregue esta página" @@ -1624,39 +1721,39 @@ msgstr "via" msgid "In Library" msgstr "Na Biblioteca" -#: cps/templates/author.html:26 cps/templates/index.html:73 -#: cps/templates/search.html:30 cps/templates/shelf.html:19 +#: cps/templates/author.html:26 cps/templates/index.html:74 +#: cps/templates/search.html:31 cps/templates/shelf.html:20 msgid "Sort according to book date, newest first" msgstr "Classificar de acordo com a data do livro, o mais recente primeiro" -#: cps/templates/author.html:27 cps/templates/index.html:74 -#: cps/templates/search.html:31 cps/templates/shelf.html:20 +#: cps/templates/author.html:27 cps/templates/index.html:75 +#: cps/templates/search.html:32 cps/templates/shelf.html:21 msgid "Sort according to book date, oldest first" msgstr "Classificar de acordo com a data do livro, o mais antigo primeiro" -#: cps/templates/author.html:28 cps/templates/index.html:75 -#: cps/templates/search.html:32 cps/templates/shelf.html:21 +#: cps/templates/author.html:28 cps/templates/index.html:76 +#: cps/templates/search.html:33 cps/templates/shelf.html:22 msgid "Sort title in alphabetical order" msgstr "Classificar título em ordem alfabética" -#: cps/templates/author.html:29 cps/templates/index.html:76 -#: cps/templates/search.html:33 cps/templates/shelf.html:22 +#: cps/templates/author.html:29 cps/templates/index.html:77 +#: cps/templates/search.html:34 cps/templates/shelf.html:23 msgid "Sort title in reverse alphabetical order" msgstr "Classificar título em ordem alfabética inversa" -#: cps/templates/author.html:30 cps/templates/index.html:79 -#: cps/templates/search.html:36 cps/templates/shelf.html:25 +#: cps/templates/author.html:30 cps/templates/index.html:80 +#: cps/templates/search.html:37 cps/templates/shelf.html:26 msgid "Sort according to publishing date, newest first" msgstr "Classificar de acordo com a data de publicação, o mais novo primeiro" -#: cps/templates/author.html:31 cps/templates/index.html:80 -#: cps/templates/search.html:37 cps/templates/shelf.html:26 +#: cps/templates/author.html:31 cps/templates/index.html:81 +#: cps/templates/search.html:38 cps/templates/shelf.html:27 msgid "Sort according to publishing date, oldest first" msgstr "Classificar de acordo com a data de publicação, primeiro mais antigo" #: cps/templates/author.html:56 cps/templates/author.html:115 -#: cps/templates/index.html:29 cps/templates/index.html:112 -#: cps/templates/search.html:66 cps/templates/shelf.html:54 +#: cps/templates/index.html:30 cps/templates/index.html:113 +#: cps/templates/search.html:67 cps/templates/shelf.html:55 msgid "reduce" msgstr "reduzir" @@ -1664,165 +1761,166 @@ msgstr "reduzir" msgid "More by" msgstr "Mais por" -#: cps/templates/book_edit.html:10 +#: cps/templates/book_edit.html:11 msgid "Delete Book" msgstr "Eliminar Livro" -#: cps/templates/book_edit.html:13 +#: cps/templates/book_edit.html:14 msgid "Delete formats:" msgstr "Eliminar formatos:" -#: cps/templates/book_edit.html:24 +#: cps/templates/book_edit.html:25 msgid "Convert book format:" msgstr "Converta o formato do livro:" -#: cps/templates/book_edit.html:29 +#: cps/templates/book_edit.html:30 msgid "Convert from:" msgstr "Converte de:" -#: cps/templates/book_edit.html:31 cps/templates/book_edit.html:38 +#: cps/templates/book_edit.html:32 cps/templates/book_edit.html:39 msgid "select an option" msgstr "selecione uma opção" -#: cps/templates/book_edit.html:36 +#: cps/templates/book_edit.html:37 msgid "Convert to:" msgstr "Converte para:" -#: cps/templates/book_edit.html:45 +#: cps/templates/book_edit.html:46 msgid "Convert book" msgstr "Converter livro" -#: cps/templates/book_edit.html:55 cps/templates/search_form.html:8 +#: cps/templates/book_edit.html:56 cps/templates/search_form.html:8 msgid "Book Title" msgstr "Título do Livro" -#: cps/templates/book_edit.html:62 cps/templates/book_edit.html:270 -#: cps/templates/book_edit.html:288 cps/templates/search_form.html:12 +#: cps/templates/book_edit.html:63 cps/templates/book_edit.html:271 +#: cps/templates/book_edit.html:289 cps/templates/search_form.html:12 msgid "Author" msgstr "Autor" -#: cps/templates/book_edit.html:67 cps/templates/book_edit.html:275 -#: cps/templates/book_edit.html:290 cps/templates/search_form.html:153 +#: cps/templates/book_edit.html:68 cps/templates/book_edit.html:276 +#: cps/templates/book_edit.html:291 cps/templates/search_form.html:153 msgid "Description" msgstr "Descrição" -#: cps/templates/book_edit.html:72 +#: cps/templates/book_edit.html:73 msgid "Identifiers" msgstr "Identificadores" -#: cps/templates/book_edit.html:76 cps/templates/book_edit.html:299 +#: cps/templates/book_edit.html:77 cps/templates/book_edit.html:300 msgid "Identifier Type" msgstr "Tipo de identificador" -#: cps/templates/book_edit.html:77 cps/templates/book_edit.html:300 +#: cps/templates/book_edit.html:78 cps/templates/book_edit.html:301 msgid "Identifier Value" msgstr "Valor do Identificador" -#: cps/templates/book_edit.html:78 cps/templates/book_edit.html:301 +#: cps/templates/book_edit.html:79 cps/templates/book_edit.html:302 #: cps/templates/user_table.html:24 msgid "Remove" msgstr "Remover" -#: cps/templates/book_edit.html:82 +#: cps/templates/book_edit.html:83 msgid "Add Identifier" msgstr "Adicionar Identificador" -#: cps/templates/book_edit.html:86 cps/templates/search_form.html:51 +#: cps/templates/book_edit.html:87 cps/templates/search_form.html:51 msgid "Tags" msgstr "Etiquetas" -#: cps/templates/book_edit.html:94 +#: cps/templates/book_edit.html:95 msgid "Series ID" msgstr "Identificação da série" -#: cps/templates/book_edit.html:98 +#: cps/templates/book_edit.html:99 msgid "Rating" msgstr "Classificação" -#: cps/templates/book_edit.html:103 +#: cps/templates/book_edit.html:104 msgid "Fetch Cover from URL (JPEG - Image will be downloaded and stored in database)" msgstr "Buscar capa na URL (JPEG - Imagem será baixada e armazenada na base de dados)" -#: cps/templates/book_edit.html:107 +#: cps/templates/book_edit.html:108 msgid "Upload Cover from Local Disk" msgstr "Upload de capa do disco local" -#: cps/templates/book_edit.html:112 +#: cps/templates/book_edit.html:113 msgid "Published Date" msgstr "Data de Publicação" -#: cps/templates/book_edit.html:121 cps/templates/book_edit.html:272 -#: cps/templates/book_edit.html:289 cps/templates/detail.html:164 +#: cps/templates/book_edit.html:122 cps/templates/book_edit.html:273 +#: cps/templates/book_edit.html:290 cps/templates/detail.html:165 #: cps/templates/search_form.html:16 msgid "Publisher" msgstr "Editora" -#: cps/templates/book_edit.html:125 cps/templates/detail.html:131 +#: cps/templates/book_edit.html:126 cps/templates/detail.html:132 #: cps/templates/user_edit.html:33 msgid "Language" msgstr "Idioma" -#: cps/templates/book_edit.html:135 cps/templates/search_form.html:45 +#: cps/templates/book_edit.html:136 cps/templates/search_form.html:45 #: cps/templates/search_form.html:164 msgid "Yes" msgstr "Sim" -#: cps/templates/book_edit.html:136 cps/templates/search_form.html:46 +#: cps/templates/book_edit.html:137 cps/templates/search_form.html:46 #: cps/templates/search_form.html:165 msgid "No" msgstr "Não" -#: cps/templates/book_edit.html:200 +#: cps/templates/book_edit.html:201 msgid "Upload Format" msgstr "Formato de upload" -#: cps/templates/book_edit.html:208 +#: cps/templates/book_edit.html:209 msgid "View Book on Save" msgstr "Ver Livro ao salvar" -#: cps/templates/book_edit.html:211 cps/templates/book_edit.html:229 +#: cps/templates/book_edit.html:212 cps/templates/book_edit.html:230 msgid "Fetch Metadata" msgstr "Buscar Metadados" -#: cps/templates/book_edit.html:212 cps/templates/config_db.html:53 +#: cps/templates/book_edit.html:213 cps/templates/config_db.html:53 #: cps/templates/config_edit.html:358 cps/templates/config_view_edit.html:174 -#: cps/templates/email_edit.html:65 cps/templates/shelf_edit.html:25 -#: cps/templates/shelf_order.html:41 cps/templates/user_edit.html:142 +#: cps/templates/email_edit.html:65 cps/templates/schedule_edit.html:40 +#: cps/templates/shelf_edit.html:25 cps/templates/shelf_order.html:41 +#: cps/templates/user_edit.html:142 msgid "Save" msgstr "Salvar" -#: cps/templates/book_edit.html:232 +#: cps/templates/book_edit.html:233 msgid "Keyword" msgstr "Palavra-chave" -#: cps/templates/book_edit.html:233 +#: cps/templates/book_edit.html:234 #, fuzzy msgid "Search keyword" msgstr " Pesquisar palavra-chave " -#: cps/templates/book_edit.html:239 +#: cps/templates/book_edit.html:240 msgid "Click the cover to load metadata to the form" msgstr "Clique na capa para carregar os metadados para o formulário" -#: cps/templates/book_edit.html:246 cps/templates/book_edit.html:285 +#: cps/templates/book_edit.html:247 cps/templates/book_edit.html:286 msgid "Loading..." msgstr "A carregar..." -#: cps/templates/book_edit.html:250 cps/templates/layout.html:63 -#: cps/templates/layout.html:186 cps/templates/modal_dialogs.html:34 +#: cps/templates/book_edit.html:251 cps/templates/layout.html:64 +#: cps/templates/layout.html:187 cps/templates/modal_dialogs.html:34 #: cps/templates/user_edit.html:163 msgid "Close" msgstr "Fechar" -#: cps/templates/book_edit.html:277 cps/templates/book_edit.html:291 +#: cps/templates/book_edit.html:278 cps/templates/book_edit.html:292 msgid "Source" msgstr "Fonte" -#: cps/templates/book_edit.html:286 +#: cps/templates/book_edit.html:287 msgid "Search error!" msgstr "Erro de busca!" -#: cps/templates/book_edit.html:287 +#: cps/templates/book_edit.html:288 msgid "No Result(s) found! Please try another keyword." msgstr "Nenhum resultado(s) encontrado(s)! Por favor, tente outra palavra-chave." @@ -1931,6 +2029,7 @@ msgid "Enter " msgstr "Identificadores" #: cps/templates/book_table.html:113 cps/templates/modal_dialogs.html:46 +#: cps/templates/tasks.html:36 msgid "Are you really sure?" msgstr "Tens mesmo a certeza?" @@ -2345,62 +2444,62 @@ msgstr "Adicionar Etiquetas permitidas/negadas" msgid "Add Allowed/Denied custom column values" msgstr "Adicionar valores permitidos/negados da coluna personalizada" -#: cps/templates/detail.html:60 cps/templates/detail.html:69 +#: cps/templates/detail.html:61 cps/templates/detail.html:70 msgid "Read in Browser" msgstr "Ler no Browser" -#: cps/templates/detail.html:77 cps/templates/detail.html:94 +#: cps/templates/detail.html:78 cps/templates/detail.html:95 msgid "Listen in Browser" msgstr "Ouvir no Browser" -#: cps/templates/detail.html:124 +#: cps/templates/detail.html:125 #, fuzzy, python-format msgid "Book %(index)s of %(range)s" msgstr "" -#: cps/templates/detail.html:173 +#: cps/templates/detail.html:174 msgid "Published" msgstr "Publicado em" -#: cps/templates/detail.html:221 +#: cps/templates/detail.html:222 msgid "Mark As Unread" msgstr "Marcar como não lido" -#: cps/templates/detail.html:221 +#: cps/templates/detail.html:222 msgid "Mark As Read" msgstr "Marcar como lido" -#: cps/templates/detail.html:222 +#: cps/templates/detail.html:223 msgid "Read" msgstr "Lido" -#: cps/templates/detail.html:231 +#: cps/templates/detail.html:232 msgid "Restore from archive" msgstr "Restaurar do arquivo" -#: cps/templates/detail.html:231 +#: cps/templates/detail.html:232 msgid "Add to archive" msgstr "Adicionar ao arquivo" -#: cps/templates/detail.html:232 +#: cps/templates/detail.html:233 msgid "Archived" msgstr "Arquivado em" -#: cps/templates/detail.html:243 +#: cps/templates/detail.html:244 msgid "Description:" msgstr "Descrição:" -#: cps/templates/detail.html:256 cps/templates/search.html:15 +#: cps/templates/detail.html:257 cps/templates/search.html:16 msgid "Add to shelf" msgstr "Adicionar à estante" -#: cps/templates/detail.html:267 cps/templates/detail.html:284 -#: cps/templates/feed.xml:79 cps/templates/layout.html:137 -#: cps/templates/search.html:21 +#: cps/templates/detail.html:268 cps/templates/detail.html:285 +#: cps/templates/feed.xml:79 cps/templates/layout.html:138 +#: cps/templates/search.html:22 msgid "(Public)" msgstr "(Público)" -#: cps/templates/detail.html:298 +#: cps/templates/detail.html:299 msgid "Edit Metadata" msgstr "Editar Metadados" @@ -2444,7 +2543,7 @@ msgstr "Limite do tamanho do anexo" msgid "Save and Send Test E-mail" msgstr "Salvar e enviar e-mail de teste" -#: cps/templates/email_edit.html:70 cps/templates/layout.html:29 +#: cps/templates/email_edit.html:70 cps/templates/layout.html:30 #: cps/templates/shelf_order.html:42 cps/templates/user_table.html:174 msgid "Back" msgstr "Voltar" @@ -2470,7 +2569,7 @@ msgstr "Digite o nome do domínio" msgid "Denied Domains (Blacklist)" msgstr "Domínios negados (Blacklist)" -#: cps/templates/feed.xml:21 cps/templates/layout.html:170 +#: cps/templates/feed.xml:21 cps/templates/layout.html:171 msgid "Next" msgstr "Próximo" @@ -2483,6 +2582,10 @@ msgstr "Abra o arquivo .kobo/Kobo eReader.conf em um editor de texto e adicione msgid "Kobo Token:" msgstr "Kobo Sync Token" +#: cps/templates/grid.html:21 +msgid "List" +msgstr "" + #: cps/templates/http_error.html:31 #, fuzzy msgid "Calibre-Web Instance is unconfigured, please contact your administrator" @@ -2500,29 +2603,29 @@ msgstr "Voltar para casa" msgid "Logout User" msgstr "" -#: cps/templates/index.html:70 +#: cps/templates/index.html:71 msgid "Sort ascending according to download count" msgstr "" -#: cps/templates/index.html:71 +#: cps/templates/index.html:72 msgid "Sort descending according to download count" msgstr "" -#: cps/templates/index.html:77 cps/templates/search.html:34 -#: cps/templates/shelf.html:23 +#: cps/templates/index.html:78 cps/templates/search.html:35 +#: cps/templates/shelf.html:24 msgid "Sort authors in alphabetical order" msgstr "Ordenar os autores em ordem alfabética" -#: cps/templates/index.html:78 cps/templates/search.html:35 -#: cps/templates/shelf.html:24 +#: cps/templates/index.html:79 cps/templates/search.html:36 +#: cps/templates/shelf.html:25 msgid "Sort authors in reverse alphabetical order" msgstr "Ordenar os autores em ordem alfabética inversa" -#: cps/templates/index.html:82 +#: cps/templates/index.html:83 msgid "Sort ascending according to series index" msgstr "Ordenar ascendente de acordo com o índice de série" -#: cps/templates/index.html:83 +#: cps/templates/index.html:84 msgid "Sort descending according to series index" msgstr "Ordenação decrescente de acordo com o índice de série" @@ -2586,7 +2689,7 @@ msgstr "Livros encomendados por Rating" msgid "Books ordered by file formats" msgstr "Livros ordenados por formatos de arquivo" -#: cps/templates/index.xml:119 cps/templates/layout.html:135 +#: cps/templates/index.xml:119 cps/templates/layout.html:136 #: cps/templates/search_form.html:87 msgid "Shelves" msgstr "Prateleiras" @@ -2595,63 +2698,67 @@ msgstr "Prateleiras" msgid "Books organized in shelves" msgstr "Livros organizados em prateleiras" -#: cps/templates/layout.html:29 +#: cps/templates/layout.html:30 msgid "Home" msgstr "Início" -#: cps/templates/layout.html:35 +#: cps/templates/layout.html:36 msgid "Toggle Navigation" msgstr "Alternar a navegação" -#: cps/templates/layout.html:46 +#: cps/templates/layout.html:47 msgid "Search Library" msgstr "Biblioteca de Pesquisa" -#: cps/templates/layout.html:63 cps/templates/layout.html:117 +#: cps/templates/layout.html:64 cps/templates/layout.html:118 msgid "Uploading..." msgstr "Enviando..." -#: cps/templates/layout.html:63 +#: cps/templates/layout.html:64 msgid "Error" msgstr "Erro" -#: cps/templates/layout.html:63 +#: cps/templates/layout.html:64 msgid "Upload done, processing, please wait..." msgstr "Upload feito, processando, por favor aguarde ..." -#: cps/templates/layout.html:76 cps/templates/read.html:72 +#: cps/templates/layout.html:77 cps/templates/read.html:72 #: cps/templates/readcbr.html:84 cps/templates/readcbr.html:108 msgid "Settings" msgstr "Configurações" -#: cps/templates/layout.html:78 +#: cps/templates/layout.html:79 msgid "Account" msgstr "Conta" -#: cps/templates/layout.html:80 +#: cps/templates/layout.html:81 msgid "Logout" msgstr "Sair" -#: cps/templates/layout.html:118 +#: cps/templates/layout.html:119 msgid "Please do not refresh the page" msgstr "Por favor, não atualize a página" -#: cps/templates/layout.html:128 +#: cps/templates/layout.html:129 msgid "Browse" msgstr "Navegue em" -#: cps/templates/layout.html:141 cps/templates/stats.html:3 +#: cps/templates/layout.html:142 cps/templates/stats.html:3 msgid "About" msgstr "Sobre" -#: cps/templates/layout.html:155 +#: cps/templates/layout.html:156 msgid "Previous" msgstr "Anterior" -#: cps/templates/layout.html:182 +#: cps/templates/layout.html:183 msgid "Book Details" msgstr "Detalhes do Livro" +#: cps/templates/list.html:22 +msgid "Grid" +msgstr "" + #: cps/templates/login.html:18 msgid "Remember Me" msgstr "Lembre-se de mim" @@ -2756,7 +2863,7 @@ msgstr "Diretório dos Pais" msgid "Select" msgstr "Selecione" -#: cps/templates/modal_dialogs.html:134 +#: cps/templates/modal_dialogs.html:134 cps/templates/tasks.html:45 #, fuzzy msgid "Ok" msgstr "Livro" @@ -2938,15 +3045,23 @@ msgstr "Uma vez verificado, você será automaticamente conectado a este disposi msgid "This verification link will expire in 10 minutes." msgstr "Este link de verificação expirará dentro de 10 minutos." -#: cps/templates/search.html:5 +#: cps/templates/schedule_edit.html:29 +msgid "Generate Book Cover Thumbnails" +msgstr "" + +#: cps/templates/schedule_edit.html:33 +msgid "Generate Series Cover Thumbnails" +msgstr "" + +#: cps/templates/search.html:6 msgid "No Results Found" msgstr "Nenhum resultado encontrado" -#: cps/templates/search.html:6 +#: cps/templates/search.html:7 msgid "Search Term:" msgstr "Termo de busca:" -#: cps/templates/search.html:8 +#: cps/templates/search.html:9 msgid "Results for:" msgstr "Resultados para:" @@ -2999,23 +3114,23 @@ msgstr "" msgid "To:" msgstr "" -#: cps/templates/shelf.html:12 +#: cps/templates/shelf.html:13 msgid "Delete this Shelf" msgstr "Excluir esta estante" -#: cps/templates/shelf.html:13 +#: cps/templates/shelf.html:14 msgid "Edit Shelf Properties" msgstr "Editar as propriedades da estante" -#: cps/templates/shelf.html:16 +#: cps/templates/shelf.html:17 msgid "Arrange books manually" msgstr "Organizar os livros manualmente" -#: cps/templates/shelf.html:17 +#: cps/templates/shelf.html:18 msgid "Disable Change order" msgstr "Desativar ordem de modificação" -#: cps/templates/shelf.html:17 +#: cps/templates/shelf.html:18 msgid "Enable Change order" msgstr "Habilitar ordem de modificação" @@ -3060,8 +3175,8 @@ msgid "System Statistics" msgstr "Estatísticas do Sistema" #: cps/templates/stats.html:33 -msgid "Program Library" -msgstr "Biblioteca de programas" +msgid "Program" +msgstr "" #: cps/templates/stats.html:34 msgid "Installed Version" @@ -3091,6 +3206,18 @@ msgstr "Tempo de execução" msgid "Start Time" msgstr "Hora de início" +#: cps/templates/tasks.html:20 +msgid "Actions" +msgstr "" + +#: cps/templates/tasks.html:40 +msgid "This task will be cancelled. Any progress made by this task will be saved." +msgstr "" + +#: cps/templates/tasks.html:41 +msgid "If this is a scheduled task, it will be re-ran during the next scheduled time." +msgstr "" + #: cps/templates/user_edit.html:20 msgid "Reset user Password" msgstr "Redefinir senha do usuário" diff --git a/cps/translations/ru/LC_MESSAGES/messages.mo b/cps/translations/ru/LC_MESSAGES/messages.mo index 68a9eb31ef9a5dc5d734800fe107208a7b3cd576..e28bd234d52ce4a73096fe500513b21ac8b808c1 100644 GIT binary patch delta 8269 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 delta 8330 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 diff --git a/cps/translations/ru/LC_MESSAGES/messages.po b/cps/translations/ru/LC_MESSAGES/messages.po index a9077290..bad83404 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: 2022-04-18 20:01+0200\n" +"POT-Creation-Date: 2022-05-01 13:22+0200\n" "PO-Revision-Date: 2020-04-29 01:20+0400\n" "Last-Translator: ZIZA\n" "Language: ru\n" @@ -17,596 +17,621 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.9.1\n" +"Generated-By: Babel 2.8.0\n" -#: cps/about.py:86 +#: cps/about.py:84 msgid "Statistics" msgstr "Статистика" -#: cps/admin.py:141 +#: cps/admin.py:146 msgid "Server restarted, please reload page" msgstr "Сервер перезагружен, пожалуйста, обновите страницу" -#: cps/admin.py:143 +#: cps/admin.py:148 msgid "Performing shutdown of server, please close window" msgstr "Производится остановка сервера, пожалуйста, закройте окно" -#: cps/admin.py:151 +#: cps/admin.py:156 msgid "Reconnect successful" msgstr "Успешно переподключено" -#: cps/admin.py:154 +#: cps/admin.py:159 msgid "Unknown command" msgstr "Неизвестная команда" -#: cps/admin.py:176 cps/editbooks.py:713 cps/editbooks.py:892 -#: cps/editbooks.py:894 cps/editbooks.py:930 cps/editbooks.py:947 -#: cps/updater.py:608 cps/uploader.py:93 cps/uploader.py:103 +#: cps/admin.py:192 cps/editbooks.py:571 cps/editbooks.py:573 +#: cps/editbooks.py:609 cps/editbooks.py:626 cps/editbooks.py:1233 +#: cps/updater.py:613 cps/uploader.py:87 cps/uploader.py:97 msgid "Unknown" msgstr "Неизвестно" -#: cps/admin.py:197 +#: cps/admin.py:217 msgid "Admin page" msgstr "Администрирование" -#: cps/admin.py:217 +#: cps/admin.py:237 msgid "Basic Configuration" msgstr "Настройки сервера" -#: cps/admin.py:255 +#: cps/admin.py:275 msgid "UI Configuration" msgstr "Настройка интерфейса" -#: cps/admin.py:289 cps/templates/admin.html:51 +#: cps/admin.py:309 cps/templates/admin.html:51 #, fuzzy msgid "Edit Users" msgstr "Управление сервером" -#: cps/admin.py:333 cps/opds.py:529 cps/templates/grid.html:13 +#: cps/admin.py:353 cps/opds.py:532 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "Все" -#: cps/admin.py:360 cps/admin.py:1648 +#: cps/admin.py:380 cps/admin.py:1365 msgid "User not found" msgstr "" -#: cps/admin.py:374 +#: cps/admin.py:394 msgid "{} users deleted successfully" msgstr "" -#: cps/admin.py:397 cps/templates/config_view_edit.html:133 +#: cps/admin.py:417 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:418 cps/admin.py:424 +#: cps/admin.py:438 cps/admin.py:444 msgid "Malformed request" msgstr "" -#: cps/admin.py:436 cps/admin.py:1526 +#: cps/admin.py:456 cps/admin.py:1962 msgid "Guest Name can't be changed" msgstr "" -#: cps/admin.py:448 +#: cps/admin.py:468 msgid "Guest can't have this role" msgstr "" -#: cps/admin.py:460 cps/admin.py:1484 +#: cps/admin.py:480 cps/admin.py:1920 msgid "No admin user remaining, can't remove admin role" msgstr "" -#: cps/admin.py:464 cps/admin.py:478 +#: cps/admin.py:484 cps/admin.py:498 msgid "Value has to be true or false" msgstr "" -#: cps/admin.py:466 +#: cps/admin.py:486 msgid "Invalid role" msgstr "" -#: cps/admin.py:470 +#: cps/admin.py:490 msgid "Guest can't have this view" msgstr "" -#: cps/admin.py:480 +#: cps/admin.py:500 msgid "Invalid view" msgstr "" -#: cps/admin.py:483 +#: cps/admin.py:503 msgid "Guest's Locale is determined automatically and can't be set" msgstr "" -#: cps/admin.py:487 +#: cps/admin.py:507 msgid "No Valid Locale Given" msgstr "" -#: cps/admin.py:498 +#: cps/admin.py:518 msgid "No Valid Book Language Given" msgstr "" -#: cps/admin.py:500 cps/editbooks.py:1267 +#: cps/admin.py:520 cps/editbooks.py:438 msgid "Parameter not found" msgstr "" -#: cps/admin.py:553 +#: cps/admin.py:557 msgid "Invalid Read Column" msgstr "" -#: cps/admin.py:559 +#: cps/admin.py:563 msgid "Invalid Restricted Column" msgstr "" -#: cps/admin.py:579 cps/admin.py:1355 +#: cps/admin.py:583 cps/admin.py:1791 msgid "Calibre-Web configuration updated" msgstr "Конфигурация Calibre-Web обновлена" -#: cps/admin.py:591 +#: cps/admin.py:595 msgid "Do you really want to delete the Kobo Token?" msgstr "Вы действительно хотите удалить Kobo Token ?" -#: cps/admin.py:593 +#: cps/admin.py:597 msgid "Do you really want to delete this domain?" msgstr "" -#: cps/admin.py:595 +#: cps/admin.py:599 msgid "Do you really want to delete this user?" msgstr "" -#: cps/admin.py:597 +#: cps/admin.py:601 msgid "Are you sure you want to delete this shelf?" msgstr "Вы действительно хотите удалить эту книжную полку?" -#: cps/admin.py:599 +#: cps/admin.py:603 #, fuzzy msgid "Are you sure you want to change locales of selected user(s)?" msgstr "Вы действительно хотите удалить эту книжную полку?" -#: cps/admin.py:601 +#: cps/admin.py:605 msgid "Are you sure you want to change visible book languages for selected user(s)?" msgstr "" -#: cps/admin.py:603 +#: cps/admin.py:607 msgid "Are you sure you want to change the selected role for the selected user(s)?" msgstr "" -#: cps/admin.py:605 +#: cps/admin.py:609 #, fuzzy msgid "Are you sure you want to change the selected restrictions for the selected user(s)?" msgstr "Вы действительно хотите удалить эту книжную полку?" -#: cps/admin.py:607 +#: cps/admin.py:611 msgid "Are you sure you want to change the selected visibility restrictions for the selected user(s)?" msgstr "" -#: cps/admin.py:610 +#: cps/admin.py:614 #, fuzzy msgid "Are you sure you want to change shelf sync behavior for the selected user(s)?" msgstr "Вы действительно хотите удалить эту книжную полку?" -#: cps/admin.py:612 +#: cps/admin.py:616 #, fuzzy msgid "Are you sure you want to change Calibre library location?" msgstr "Вы действительно хотите остановить Calibre-Web?" -#: cps/admin.py:614 +#: cps/admin.py:618 +msgid "Calibre-Web will search for updated Covers and update Cover Thumbnails, this may take a while?" +msgstr "" + +#: cps/admin.py:620 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:764 -msgid "Tag not found" -msgstr "" - -#: cps/admin.py:776 -msgid "Invalid Action" -msgstr "" - -#: cps/admin.py:893 cps/admin.py:899 cps/admin.py:909 cps/admin.py:919 +#: cps/admin.py:862 cps/admin.py:868 cps/admin.py:878 cps/admin.py:888 #: cps/templates/modal_dialogs.html:29 cps/templates/user_table.html:41 #: cps/templates/user_table.html:58 msgid "Deny" msgstr "Запретить" -#: cps/admin.py:895 cps/admin.py:901 cps/admin.py:911 cps/admin.py:921 +#: cps/admin.py:864 cps/admin.py:870 cps/admin.py:880 cps/admin.py:890 #: cps/templates/modal_dialogs.html:28 cps/templates/user_table.html:44 #: cps/templates/user_table.html:61 msgid "Allow" msgstr "Разрешить" -#: cps/admin.py:936 +#: cps/admin.py:905 msgid "{} sync entries deleted" msgstr "" -#: cps/admin.py:1059 +#: cps/admin.py:953 +msgid "Tag not found" +msgstr "" + +#: cps/admin.py:965 +msgid "Invalid Action" +msgstr "" + +#: cps/admin.py:1080 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "client_secrets.json не настроен для веб-приложения" -#: cps/admin.py:1104 +#: cps/admin.py:1125 msgid "Logfile Location is not Valid, Please Enter Correct Path" msgstr "Неправильное расположение файла журнала, пожалуйста, введите правильный путь." -#: cps/admin.py:1110 +#: cps/admin.py:1131 msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgstr "Недопустимое расположение файла журнала доступа, пожалуйста, введите правильный путь" -#: cps/admin.py:1140 +#: cps/admin.py:1161 msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgstr "Пожалуйста, введите провайдера LDAP, порт, DN и идентификатор объекта пользователя" -#: cps/admin.py:1146 +#: cps/admin.py:1167 #, fuzzy msgid "Please Enter a LDAP Service Account and Password" msgstr "Пожалуйста, введите действительное имя пользователя для сброса пароля" -#: cps/admin.py:1149 +#: cps/admin.py:1170 msgid "Please Enter a LDAP Service Account" msgstr "" -#: cps/admin.py:1154 +#: cps/admin.py:1175 #, python-format msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgstr "Фильтр объектов группы LDAP должен иметь один идентификатор формата \"%s\"" -#: cps/admin.py:1156 +#: cps/admin.py:1177 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "Фильтр объектов группы LDAP имеет незавершённые круглые скобки" -#: cps/admin.py:1160 +#: cps/admin.py:1181 #, python-format msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgstr "Фильтр объектов пользователя LDAP должен иметь один идентификатор формата \"%s\"" -#: cps/admin.py:1162 +#: cps/admin.py:1183 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "Фильтр объектов пользователя LDAP имеет незавершенную круглую скобку" -#: cps/admin.py:1169 +#: cps/admin.py:1190 #, python-format msgid "LDAP Member User Filter needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1171 +#: cps/admin.py:1192 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1178 +#: cps/admin.py:1199 msgid "LDAP CACertificate, Certificate or Key Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1223 cps/admin.py:1339 cps/admin.py:1437 cps/admin.py:1554 -#: cps/admin.py:1623 cps/editbooks.py:678 cps/editbooks.py:882 -#: cps/editbooks.py:1130 cps/shelf.py:100 cps/shelf.py:160 cps/shelf.py:203 -#: cps/shelf.py:278 cps/shelf.py:343 cps/shelf.py:380 cps/shelf.py:456 -#: cps/web.py:1742 +#: cps/admin.py:1230 cps/admin.py:1852 +msgid "Add new user" +msgstr "Добавить пользователя" + +#: cps/admin.py:1239 cps/templates/admin.html:100 +msgid "Edit E-mail Server Settings" +msgstr "Изменить настройки SMTP" + +#: cps/admin.py:1258 +msgid "Gmail Account Verification Successful" +msgstr "" + +#: cps/admin.py:1277 cps/admin.py:1658 cps/admin.py:1775 cps/admin.py:1873 +#: cps/admin.py:1990 cps/editbooks.py:227 cps/editbooks.py:301 +#: cps/editbooks.py:1196 cps/shelf.py:82 cps/shelf.py:142 cps/shelf.py:185 +#: cps/shelf.py:235 cps/shelf.py:272 cps/shelf.py:343 cps/shelf.py:457 +#: cps/tasks/convert.py:136 cps/web.py:1413 #, python-format msgid "Database error: %(error)s." msgstr "" -#: cps/admin.py:1235 -msgid "DB Location is not Valid, Please Enter Correct Path" -msgstr "Расположение Базы Данных неверно, пожалуйста, введите правильный путь." - -#: cps/admin.py:1253 -msgid "DB is not Writeable" -msgstr "" - -#: cps/admin.py:1266 -msgid "Keyfile Location is not Valid, Please Enter Correct Path" -msgstr "Расположение ключевого файла неверно, пожалуйста, введите правильный путь" - -#: cps/admin.py:1270 -msgid "Certfile Location is not Valid, Please Enter Correct Path" -msgstr "Расположение Certfile не является действительным, пожалуйста, введите правильный путь" - -#: cps/admin.py:1378 -#, fuzzy -msgid "Database Settings updated" -msgstr "Настройки E-mail сервера обновлены" - -#: cps/admin.py:1386 -#, fuzzy -msgid "Database Configuration" -msgstr "Дополнительный Настройки" - -#: cps/admin.py:1402 cps/web.py:1557 -msgid "Please fill out all fields!" -msgstr "Пожалуйста, заполните все поля!" - -#: cps/admin.py:1410 -msgid "E-mail is not from valid domain" -msgstr "E-mail не из существующей доменной зоны" - -#: cps/admin.py:1416 cps/admin.py:1576 -msgid "Add new user" -msgstr "Добавить пользователя" - -#: cps/admin.py:1427 -#, python-format -msgid "User '%(user)s' created" -msgstr "Пользователь '%(user)s' добавлен" - -#: cps/admin.py:1433 -#, fuzzy -msgid "Found an existing account for this e-mail address or name." -msgstr "Для этого адреса электронной почты или логина уже есть учётная запись." - -#: cps/admin.py:1463 -#, python-format -msgid "User '%(nick)s' deleted" -msgstr "Пользователь '%(nick)s' удалён" - -#: cps/admin.py:1465 cps/admin.py:1466 -msgid "Can't delete Guest User" -msgstr "" - -#: cps/admin.py:1469 -msgid "No admin user remaining, can't delete user" -msgstr "Это последний администратор, невозможно удалить пользователя" - -#: cps/admin.py:1542 cps/admin.py:1667 -#, python-format -msgid "Edit User %(nick)s" -msgstr "Изменить пользователя %(nick)s" - -#: cps/admin.py:1546 -#, python-format -msgid "User '%(nick)s' updated" -msgstr "Пользователь '%(nick)s' обновлён" - -#: cps/admin.py:1550 cps/admin.py:1682 cps/web.py:1582 cps/web.py:1642 -msgid "An unknown error occurred. Please try again later." -msgstr "Неизвестная ошибка. Попробуйте позже." - -#: cps/admin.py:1585 cps/templates/admin.html:100 -msgid "Edit E-mail Server Settings" -msgstr "Изменить настройки SMTP" - -#: cps/admin.py:1604 -msgid "Gmail Account Verification Successful" -msgstr "" - -#: cps/admin.py:1630 +#: cps/admin.py:1284 #, python-format msgid "Test e-mail queued for sending to %(email)s, please check Tasks for result" msgstr "" -#: cps/admin.py:1633 +#: cps/admin.py:1287 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "Произошла ошибка при отправке тестового письма на: %(res)s" -#: cps/admin.py:1635 +#: cps/admin.py:1289 msgid "Please configure your e-mail address first..." msgstr "Пожалуйста, сначала настройте свой адрес электронной почты ..." -#: cps/admin.py:1637 +#: cps/admin.py:1291 msgid "E-mail server settings updated" msgstr "Настройки E-mail сервера обновлены" -#: cps/admin.py:1679 +#: cps/admin.py:1314 cps/templates/admin.html:191 +msgid "Edit Scheduled Tasks Settings" +msgstr "" + +#: cps/admin.py:1326 +msgid "Invalid start time for task specified" +msgstr "" + +#: cps/admin.py:1331 +msgid "Invalid duration for task specified" +msgstr "" + +#: cps/admin.py:1340 +msgid "Scheduled tasks settings updated" +msgstr "" + +#: cps/admin.py:1350 cps/admin.py:1399 cps/admin.py:1986 cps/web.py:1254 +#: cps/web.py:1315 +msgid "An unknown error occurred. Please try again later." +msgstr "Неизвестная ошибка. Попробуйте позже." + +#: cps/admin.py:1354 +msgid "Settings DB is not Writeable" +msgstr "" + +#: cps/admin.py:1384 cps/admin.py:1978 +#, python-format +msgid "Edit User %(nick)s" +msgstr "Изменить пользователя %(nick)s" + +#: cps/admin.py:1396 #, python-format msgid "Password for user %(user)s reset" msgstr "Пароль для пользователя %(user)s сброшен" -#: cps/admin.py:1685 cps/web.py:1522 +#: cps/admin.py:1402 cps/web.py:1194 msgid "Please configure the SMTP mail settings first..." msgstr "Пожалуйста, сперва настройте параметры SMTP....." -#: cps/admin.py:1696 +#: cps/admin.py:1413 msgid "Logfile viewer" msgstr "Просмотр лога" -#: cps/admin.py:1762 +#: cps/admin.py:1479 msgid "Requesting update package" msgstr "Проверка обновлений" -#: cps/admin.py:1763 +#: cps/admin.py:1480 msgid "Downloading update package" msgstr "Загрузка обновлений" -#: cps/admin.py:1764 +#: cps/admin.py:1481 msgid "Unzipping update package" msgstr "Распаковка обновлений" -#: cps/admin.py:1765 +#: cps/admin.py:1482 msgid "Replacing files" msgstr "Замена файлов" -#: cps/admin.py:1766 +#: cps/admin.py:1483 msgid "Database connections are closed" msgstr "Соединения с базой данных закрыты" -#: cps/admin.py:1767 +#: cps/admin.py:1484 msgid "Stopping server" msgstr "Остановка сервера" -#: cps/admin.py:1768 +#: cps/admin.py:1485 msgid "Update finished, please press okay and reload page" msgstr "Обновления установлены, нажмите ок и перезагрузите страницу" -#: cps/admin.py:1769 cps/admin.py:1770 cps/admin.py:1771 cps/admin.py:1772 -#: cps/admin.py:1773 cps/admin.py:1774 +#: cps/admin.py:1486 cps/admin.py:1487 cps/admin.py:1488 cps/admin.py:1489 +#: cps/admin.py:1490 cps/admin.py:1491 msgid "Update failed:" msgstr "Ошибка обновления:" -#: cps/admin.py:1769 cps/updater.py:384 cps/updater.py:619 cps/updater.py:621 +#: cps/admin.py:1486 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 msgid "HTTP Error" msgstr "Ошибка HTTP" -#: cps/admin.py:1770 cps/updater.py:386 cps/updater.py:623 +#: cps/admin.py:1487 cps/updater.py:391 cps/updater.py:628 msgid "Connection error" msgstr "Ошибка соединения" -#: cps/admin.py:1771 cps/updater.py:388 cps/updater.py:625 +#: cps/admin.py:1488 cps/updater.py:393 cps/updater.py:630 msgid "Timeout while establishing connection" msgstr "Тайм-аут при установлении соединения" -#: cps/admin.py:1772 cps/updater.py:390 cps/updater.py:627 +#: cps/admin.py:1489 cps/updater.py:395 cps/updater.py:632 msgid "General error" msgstr "Общая ошибка" -#: cps/admin.py:1773 +#: cps/admin.py:1490 #, fuzzy msgid "Update file could not be saved in temp dir" msgstr "Не удалось сохранить файл обновления во временной папке." -#: cps/admin.py:1774 +#: cps/admin.py:1491 msgid "Files could not be replaced during update" msgstr "" -#: cps/admin.py:1798 +#: cps/admin.py:1515 #, fuzzy msgid "Failed to extract at least One LDAP User" msgstr "Не удалось создать хотя бы одного пользователя LDAP" -#: cps/admin.py:1843 +#: cps/admin.py:1560 msgid "Failed to Create at Least One LDAP User" msgstr "Не удалось создать хотя бы одного пользователя LDAP" -#: cps/admin.py:1856 +#: cps/admin.py:1573 #, python-format msgid "Error: %(ldaperror)s" msgstr "Ошибка: %(ldaperror)s" -#: cps/admin.py:1860 +#: cps/admin.py:1577 msgid "Error: No user returned in response of LDAP server" msgstr "Ошибка: ни одного пользователя не найдено в ответ на запрос сервер LDAP" -#: cps/admin.py:1893 +#: cps/admin.py:1610 msgid "At Least One LDAP User Not Found in Database" msgstr "По крайней мере, один пользователь LDAP не найден в базе данных" -#: cps/admin.py:1895 +#: cps/admin.py:1612 msgid "{} User Successfully Imported" msgstr "" -#: cps/converter.py:30 +#: cps/admin.py:1670 +msgid "DB Location is not Valid, Please Enter Correct Path" +msgstr "Расположение Базы Данных неверно, пожалуйста, введите правильный путь." + +#: cps/admin.py:1689 +msgid "DB is not Writeable" +msgstr "" + +#: cps/admin.py:1702 +msgid "Keyfile Location is not Valid, Please Enter Correct Path" +msgstr "Расположение ключевого файла неверно, пожалуйста, введите правильный путь" + +#: cps/admin.py:1706 +msgid "Certfile Location is not Valid, Please Enter Correct Path" +msgstr "Расположение Certfile не является действительным, пожалуйста, введите правильный путь" + +#: cps/admin.py:1814 +#, fuzzy +msgid "Database Settings updated" +msgstr "Настройки E-mail сервера обновлены" + +#: cps/admin.py:1822 +#, fuzzy +msgid "Database Configuration" +msgstr "Дополнительный Настройки" + +#: cps/admin.py:1838 cps/web.py:1229 +msgid "Please fill out all fields!" +msgstr "Пожалуйста, заполните все поля!" + +#: cps/admin.py:1846 +msgid "E-mail is not from valid domain" +msgstr "E-mail не из существующей доменной зоны" + +#: cps/admin.py:1863 +#, python-format +msgid "User '%(user)s' created" +msgstr "Пользователь '%(user)s' добавлен" + +#: cps/admin.py:1869 +#, fuzzy +msgid "Found an existing account for this e-mail address or name." +msgstr "Для этого адреса электронной почты или логина уже есть учётная запись." + +#: cps/admin.py:1899 +#, python-format +msgid "User '%(nick)s' deleted" +msgstr "Пользователь '%(nick)s' удалён" + +#: cps/admin.py:1901 cps/admin.py:1902 +msgid "Can't delete Guest User" +msgstr "" + +#: cps/admin.py:1905 +msgid "No admin user remaining, can't delete user" +msgstr "Это последний администратор, невозможно удалить пользователя" + +#: cps/admin.py:1982 +#, python-format +msgid "User '%(nick)s' updated" +msgstr "Пользователь '%(nick)s' обновлён" + +#: cps/converter.py:31 msgid "not installed" msgstr "не установлено" -#: cps/converter.py:31 +#: cps/converter.py:32 msgid "Execution permissions missing" msgstr "" -#: cps/db.py:674 cps/web.py:710 cps/web.py:1222 +#: cps/db.py:681 cps/search.py:134 cps/web.py:720 #, python-format msgid "Custom Column No.%(column)d is not existing in calibre database" msgstr "" -#: cps/db.py:917 cps/templates/config_edit.html:204 +#: cps/db.py:924 cps/templates/config_edit.html:204 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 -#: cps/web.py:551 cps/web.py:585 cps/web.py:646 cps/web.py:671 cps/web.py:1003 -#: cps/web.py:1032 cps/web.py:1066 cps/web.py:1093 cps/web.py:1132 +#: cps/web.py:549 cps/web.py:583 cps/web.py:656 cps/web.py:681 cps/web.py:962 +#: cps/web.py:992 cps/web.py:1027 cps/web.py:1055 cps/web.py:1094 msgid "None" msgstr "Нет" -#: cps/editbooks.py:295 cps/editbooks.py:297 -msgid "Book Format Successfully Deleted" -msgstr "" - -#: cps/editbooks.py:304 cps/editbooks.py:306 -msgid "Book Successfully Deleted" -msgstr "" - -#: cps/editbooks.py:358 -msgid "You are missing permissions to delete books" -msgstr "" - -#: cps/editbooks.py:373 cps/editbooks.py:765 cps/web.py:518 cps/web.py:1783 -#: cps/web.py:1825 cps/web.py:1870 +#: cps/editbooks.py:109 cps/editbooks.py:890 cps/web.py:516 cps/web.py:1454 +#: cps/web.py:1496 cps/web.py:1541 msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible" msgstr "Невозможно открыть книгу. Файл не существует или недоступен" -#: cps/editbooks.py:408 -msgid "edit metadata" -msgstr "изменить метаданные" - -#: cps/editbooks.py:457 -#, python-format -msgid "%(seriesindex)s is not a valid number, skipping" -msgstr "" - -#: cps/editbooks.py:493 cps/editbooks.py:1001 -#, fuzzy, python-format -msgid "'%(langname)s' is not a valid language" -msgstr "%(langname)s не допустимый язык" - -#: cps/editbooks.py:634 -msgid "User has no rights to upload additional file formats" -msgstr "" - -#: cps/editbooks.py:639 cps/editbooks.py:1029 -#, python-format -msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" -msgstr "Запрещена загрузка файлов с расширением '%(ext)s'" - -#: cps/editbooks.py:643 cps/editbooks.py:1033 -msgid "File to be uploaded must have an extension" -msgstr "Загружаемый файл должен иметь расширение" - -#: cps/editbooks.py:655 -#, python-format -msgid "Failed to create path %(path)s (Permission denied)." -msgstr "Ошибка при создании пути %(path)s (Доступ запрещён)." - -#: cps/editbooks.py:660 -#, python-format -msgid "Failed to store file %(file)s." -msgstr "Не удалось сохранить файл %(file)s." - -#: cps/editbooks.py:683 -#, python-format -msgid "File format %(ext)s added to %(book)s" -msgstr "Формат файла %(ext)s добавлен в %(book)s" - -#: cps/editbooks.py:697 cps/editbooks.py:809 +#: cps/editbooks.py:153 cps/editbooks.py:1216 msgid "User has no rights to upload cover" msgstr "" -#: cps/editbooks.py:828 +#: cps/editbooks.py:173 cps/editbooks.py:711 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "" -#: cps/editbooks.py:869 +#: cps/editbooks.py:214 msgid "Metadata successfully updated" msgstr "Метаданные обновлены" -#: cps/editbooks.py:887 +#: cps/editbooks.py:232 msgid "Error editing book: {}" msgstr "" -#: cps/editbooks.py:951 -msgid "Uploaded book probably exists in the library, consider to change before upload new: " -msgstr "Загруженная книга, вероятно, существует в библиотеке, перед тем как загрузить новую, рассмотрите возможность изменения: " - -#: cps/editbooks.py:1041 -#, python-format -msgid "File %(filename)s could not saved to temp dir" -msgstr "Файл %(filename)s не удалось сохранить во временную папку" - -#: cps/editbooks.py:1061 -#, python-format -msgid "Failed to Move Cover File %(file)s: %(error)s" -msgstr "" - -#: cps/editbooks.py:1117 +#: cps/editbooks.py:287 #, python-format msgid "File %(file)s uploaded" msgstr "Файл %(file)s загружен" -#: cps/editbooks.py:1143 +#: cps/editbooks.py:314 msgid "Source or destination format for conversion missing" msgstr "Исходный или целевой формат для конвертирования отсутствует" -#: cps/editbooks.py:1151 +#: cps/editbooks.py:322 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "Книга успешно поставлена в очередь для конвертирования в %(book_format)s" -#: cps/editbooks.py:1155 +#: cps/editbooks.py:326 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "Произошла ошибка при конвертирования этой книги: %(res)s" +#: cps/editbooks.py:630 +msgid "Uploaded book probably exists in the library, consider to change before upload new: " +msgstr "Загруженная книга, вероятно, существует в библиотеке, перед тем как загрузить новую, рассмотрите возможность изменения: " + +#: cps/editbooks.py:685 cps/editbooks.py:1010 +#, fuzzy, python-format +msgid "'%(langname)s' is not a valid language" +msgstr "%(langname)s не допустимый язык" + +#: cps/editbooks.py:723 cps/editbooks.py:1157 +#, python-format +msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" +msgstr "Запрещена загрузка файлов с расширением '%(ext)s'" + +#: cps/editbooks.py:727 cps/editbooks.py:1161 +msgid "File to be uploaded must have an extension" +msgstr "Загружаемый файл должен иметь расширение" + +#: cps/editbooks.py:735 +#, python-format +msgid "File %(filename)s could not saved to temp dir" +msgstr "Файл %(filename)s не удалось сохранить во временную папку" + +#: cps/editbooks.py:755 +#, python-format +msgid "Failed to Move Cover File %(file)s: %(error)s" +msgstr "" + +#: cps/editbooks.py:812 cps/editbooks.py:814 +msgid "Book Format Successfully Deleted" +msgstr "" + +#: cps/editbooks.py:821 cps/editbooks.py:823 +msgid "Book Successfully Deleted" +msgstr "" + +#: cps/editbooks.py:875 +msgid "You are missing permissions to delete books" +msgstr "" + +#: cps/editbooks.py:925 +msgid "edit metadata" +msgstr "изменить метаданные" + +#: cps/editbooks.py:974 +#, python-format +msgid "%(seriesindex)s is not a valid number, skipping" +msgstr "" + +#: cps/editbooks.py:1152 +msgid "User has no rights to upload additional file formats" +msgstr "" + +#: cps/editbooks.py:1173 +#, python-format +msgid "Failed to create path %(path)s (Permission denied)." +msgstr "Ошибка при создании пути %(path)s (Доступ запрещён)." + +#: cps/editbooks.py:1178 +#, python-format +msgid "Failed to store file %(file)s." +msgstr "Не удалось сохранить файл %(file)s." + +#: cps/editbooks.py:1201 +#, python-format +msgid "File format %(ext)s added to %(book)s" +msgstr "Формат файла %(ext)s добавлен в %(book)s" + #: cps/gdrive.py:58 msgid "Google Drive setup not completed, try to deactivate and activate Google Drive again" msgstr "Настройка Google Drive не завершена, попробуйте деактивировать и снова активировать Google Drive" @@ -615,27 +640,27 @@ msgstr "Настройка Google Drive не завершена, попробу msgid "Callback domain is not verified, please follow steps to verify domain in google developer console" msgstr "Не удалось проверить домен обратного вызова, пожалуйста, выполните шаги для проверки домена в консоли разработчика Google." -#: cps/helper.py:81 +#: cps/helper.py:80 #, python-format msgid "%(format)s format not found for book id: %(book)d" msgstr "%(format)s форма не найден для книги с id: %(book)d" -#: cps/helper.py:87 cps/tasks/convert.py:75 +#: cps/helper.py:86 cps/tasks/convert.py:75 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "%(format)s не найден на Google Drive: %(fn)s" -#: cps/helper.py:92 +#: cps/helper.py:91 #, python-format msgid "%(format)s not found: %(fn)s" msgstr "%(format)s не найден: %(fn)s" -#: cps/helper.py:97 cps/helper.py:221 cps/templates/detail.html:41 -#: cps/templates/detail.html:45 +#: cps/helper.py:96 cps/helper.py:221 cps/templates/detail.html:42 +#: cps/templates/detail.html:46 msgid "Send to Kindle" msgstr "Отправить на Kindle" -#: cps/helper.py:98 cps/helper.py:115 cps/helper.py:223 +#: cps/helper.py:97 cps/helper.py:115 cps/helper.py:223 msgid "This e-mail has been sent via Calibre-Web." msgstr "Это электронное письмо было отправлено через Caliber-Web." @@ -675,132 +700,112 @@ msgstr "Отправить на Kindle" msgid "The requested file could not be read. Maybe wrong permissions?" msgstr "Запрашиваемый файл не может быть прочитан. Возможно у вас нет разрешения?" -#: cps/helper.py:353 +#: cps/helper.py:341 msgid "Read status could not set: {}" msgstr "" -#: cps/helper.py:376 +#: cps/helper.py:364 #, python-format msgid "Deleting bookfolder for book %(id)s failed, path has subfolders: %(path)s" msgstr "" -#: cps/helper.py:382 +#: cps/helper.py:370 #, python-format msgid "Deleting book %(id)s failed: %(message)s" msgstr "" -#: cps/helper.py:393 +#: cps/helper.py:381 #, python-format msgid "Deleting book %(id)s from database only, book path in database not valid: %(path)s" msgstr "" -#: cps/helper.py:458 +#: cps/helper.py:446 #, 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:529 cps/helper.py:538 +#: cps/helper.py:518 cps/helper.py:527 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "Файл %(file)s не найден на Google Drive" -#: cps/helper.py:572 +#: cps/helper.py:561 #, 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:592 +#: cps/helper.py:581 msgid "Error in rename file in path: {}" msgstr "" -#: cps/helper.py:610 +#: cps/helper.py:599 #, python-format msgid "Book path %(path)s not found on Google Drive" msgstr "Путь книги %(path)s не найден на Google Drive" -#: cps/helper.py:651 cps/web.py:1737 +#: cps/helper.py:640 cps/web.py:1408 #, fuzzy msgid "Found an existing account for this e-mail address" msgstr "Этот адрес электронной почты уже зарегистрирован." -#: cps/helper.py:659 +#: cps/helper.py:648 msgid "This username is already taken" msgstr "Это имя пользователя уже занято" -#: cps/helper.py:669 +#: cps/helper.py:658 msgid "Invalid e-mail address format" msgstr "" -#: cps/helper.py:754 -msgid "Python modul 'advocate' is not installed but is needed for cover downloads" +#: cps/helper.py:808 +msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "" -#: cps/helper.py:767 +#: cps/helper.py:818 msgid "Error Downloading Cover" msgstr "" -#: cps/helper.py:770 +#: cps/helper.py:821 msgid "Cover Format Error" msgstr "" -#: cps/helper.py:773 +#: cps/helper.py:824 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "" -#: cps/helper.py:783 +#: cps/helper.py:834 msgid "Failed to create path for cover" msgstr "Не удалось создать путь для обложки." -#: cps/helper.py:799 +#: cps/helper.py:850 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "" -#: cps/helper.py:810 +#: cps/helper.py:861 msgid "Only jpg/jpeg/png/webp/bmp files are supported as coverfile" msgstr "" -#: cps/helper.py:822 +#: cps/helper.py:873 msgid "Invalid cover file content" msgstr "" -#: cps/helper.py:826 +#: cps/helper.py:877 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "Только файлы в формате jpg / jpeg поддерживаются как файл обложки" -#: cps/helper.py:878 +#: cps/helper.py:929 msgid "Unrar binary file not found" msgstr "" -#: cps/helper.py:889 +#: cps/helper.py:940 msgid "Error excecuting UnRar" msgstr "" -#: cps/helper.py:937 -msgid "Waiting" -msgstr "Ожидание" - -#: cps/helper.py:939 -msgid "Failed" -msgstr "Неудачно" - -#: cps/helper.py:941 -msgid "Started" -msgstr "Начало" - -#: cps/helper.py:943 -msgid "Finished" -msgstr "Завершено" - -#: cps/helper.py:945 -msgid "Unknown Status" -msgstr "Неизвестный статус" - -#: cps/kobo_auth.py:128 +#: cps/kobo_auth.py:89 #, fuzzy msgid "Please access Calibre-Web from non localhost to get valid api_endpoint for kobo device" msgstr "Пожалуйста, подключитесь к Calibre-Web не с локального хоста, чтобы получить действительный api_endpoint для устройства Kobo" -#: cps/kobo_auth.py:154 +#: cps/kobo_auth.py:115 msgid "Kobo Setup" msgstr "Настройка Kobo" @@ -809,7 +814,7 @@ msgstr "Настройка Kobo" msgid "Register with %(provider)s" msgstr "Зарегистрируйтесь с %(provider)s" -#: cps/oauth_bb.py:138 cps/remotelogin.py:130 cps/web.py:1613 +#: cps/oauth_bb.py:138 cps/remotelogin.py:130 cps/web.py:1286 #, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "вы вошли как пользователь '%(nickname)s'" @@ -870,12 +875,12 @@ msgstr "Ошибка Google Oauth, пожалуйста попробуйте п msgid "Google Oauth error: {}" msgstr "" -#: cps/opds.py:298 +#: cps/opds.py:287 msgid "{} Stars" msgstr "" -#: cps/remotelogin.py:62 cps/templates/layout.html:84 -#: cps/templates/login.html:4 cps/templates/login.html:21 cps/web.py:1662 +#: cps/remotelogin.py:62 cps/templates/layout.html:85 +#: cps/templates/login.html:4 cps/templates/login.html:21 cps/web.py:1335 msgid "Login" msgstr "Логин" @@ -891,456 +896,489 @@ msgstr "Ключ просрочен" msgid "Success! Please return to your device" msgstr "Успешно! Пожалуйста, проверьте свое устройство" -#: cps/render_template.py:41 cps/web.py:407 +#: cps/render_template.py:40 cps/web.py:405 msgid "Books" msgstr "Книги" -#: cps/render_template.py:43 +#: cps/render_template.py:42 msgid "Show recent books" msgstr "Показывать недавние книги" -#: cps/render_template.py:44 cps/templates/index.xml:25 +#: cps/render_template.py:43 cps/templates/index.xml:25 msgid "Hot Books" msgstr "Популярные Книги" -#: cps/render_template.py:46 +#: cps/render_template.py:45 msgid "Show Hot Books" msgstr "Показывать популярные книги" -#: cps/render_template.py:48 cps/render_template.py:53 +#: cps/render_template.py:47 cps/render_template.py:52 msgid "Downloaded Books" msgstr "" -#: cps/render_template.py:50 cps/render_template.py:55 +#: cps/render_template.py:49 cps/render_template.py:54 #: cps/templates/user_table.html:167 msgid "Show Downloaded Books" msgstr "" -#: cps/render_template.py:58 cps/templates/index.xml:32 cps/web.py:422 +#: cps/render_template.py:57 cps/templates/index.xml:32 cps/web.py:420 msgid "Top Rated Books" msgstr "Книги с наилучшим рейтингом" -#: cps/render_template.py:60 cps/templates/user_table.html:161 +#: cps/render_template.py:59 cps/templates/user_table.html:161 msgid "Show Top Rated Books" msgstr "Показывать книги с наивысшим рейтингом" -#: cps/render_template.py:61 cps/templates/index.xml:54 -#: cps/templates/index.xml:58 cps/web.py:729 +#: cps/render_template.py:60 cps/templates/index.xml:54 +#: cps/templates/index.xml:58 cps/web.py:739 msgid "Read Books" msgstr "Прочитанные Книги" -#: cps/render_template.py:63 +#: cps/render_template.py:62 msgid "Show read and unread" msgstr "Показывать прочитанные и непрочитанные" -#: cps/render_template.py:65 cps/templates/index.xml:61 -#: cps/templates/index.xml:65 cps/web.py:732 +#: cps/render_template.py:64 cps/templates/index.xml:61 +#: cps/templates/index.xml:65 cps/web.py:742 msgid "Unread Books" msgstr "Непрочитанные Книги" -#: cps/render_template.py:67 +#: cps/render_template.py:66 msgid "Show unread" msgstr "Показать непрочитанное" -#: cps/render_template.py:68 +#: cps/render_template.py:67 msgid "Discover" msgstr "Обзор" -#: cps/render_template.py:70 cps/templates/index.xml:50 +#: cps/render_template.py:69 cps/templates/index.xml:50 #: cps/templates/user_table.html:162 msgid "Show Random Books" msgstr "Показывать Случайные Книги" -#: cps/render_template.py:71 cps/templates/book_table.html:67 -#: cps/templates/index.xml:83 cps/web.py:1135 +#: cps/render_template.py:70 cps/templates/book_table.html:67 +#: cps/templates/index.xml:83 cps/web.py:1098 msgid "Categories" msgstr "Категории" -#: cps/render_template.py:73 cps/templates/user_table.html:158 +#: cps/render_template.py:72 cps/templates/user_table.html:158 msgid "Show category selection" msgstr "Показывать выбор категории" -#: cps/render_template.py:74 cps/templates/book_edit.html:90 +#: cps/render_template.py:73 cps/templates/book_edit.html:91 #: cps/templates/book_table.html:68 cps/templates/index.xml:90 -#: cps/templates/search_form.html:69 cps/web.py:1034 cps/web.py:1041 +#: cps/templates/search_form.html:69 cps/web.py:995 cps/web.py:1002 msgid "Series" msgstr "Серии" -#: cps/render_template.py:76 cps/templates/user_table.html:157 +#: cps/render_template.py:75 cps/templates/user_table.html:157 msgid "Show series selection" msgstr "Показывать выбор серии" -#: cps/render_template.py:77 cps/templates/book_table.html:66 +#: cps/render_template.py:76 cps/templates/book_table.html:66 #: cps/templates/index.xml:69 msgid "Authors" msgstr "Авторы" -#: cps/render_template.py:79 cps/templates/user_table.html:160 +#: cps/render_template.py:78 cps/templates/user_table.html:160 msgid "Show author selection" msgstr "Показывать выбор автора" -#: cps/render_template.py:81 cps/templates/book_table.html:72 -#: cps/templates/index.xml:76 cps/web.py:1006 +#: cps/render_template.py:80 cps/templates/book_table.html:72 +#: cps/templates/index.xml:76 cps/web.py:966 msgid "Publishers" msgstr "Издатели" -#: cps/render_template.py:83 cps/templates/user_table.html:163 +#: cps/render_template.py:82 cps/templates/user_table.html:163 msgid "Show publisher selection" msgstr "Показать выбор издателя" -#: cps/render_template.py:84 cps/templates/book_table.html:70 +#: cps/render_template.py:83 cps/templates/book_table.html:70 #: cps/templates/index.xml:97 cps/templates/search_form.html:107 -#: cps/web.py:1108 +#: cps/web.py:1070 msgid "Languages" msgstr "Языки" -#: cps/render_template.py:87 cps/templates/user_table.html:155 +#: cps/render_template.py:86 cps/templates/user_table.html:155 msgid "Show language selection" msgstr "Показывать выбор языка" -#: cps/render_template.py:88 cps/templates/index.xml:104 +#: cps/render_template.py:87 cps/templates/index.xml:104 msgid "Ratings" msgstr "Рейтинги" -#: cps/render_template.py:90 cps/templates/user_table.html:164 +#: cps/render_template.py:89 cps/templates/user_table.html:164 msgid "Show ratings selection" msgstr "Показать выбор рейтинга" -#: cps/render_template.py:91 cps/templates/index.xml:112 +#: cps/render_template.py:90 cps/templates/index.xml:112 msgid "File formats" msgstr "Форматы файлов" -#: cps/render_template.py:93 cps/templates/user_table.html:165 +#: cps/render_template.py:92 cps/templates/user_table.html:165 msgid "Show file formats selection" msgstr "Показать выбор форматов файлов" -#: cps/render_template.py:95 cps/web.py:755 +#: cps/render_template.py:94 cps/web.py:765 msgid "Archived Books" msgstr "" -#: cps/render_template.py:97 cps/templates/user_table.html:166 +#: cps/render_template.py:96 cps/templates/user_table.html:166 msgid "Show archived books" msgstr "" -#: cps/render_template.py:100 cps/web.py:837 +#: cps/render_template.py:99 cps/web.py:796 msgid "Books List" msgstr "" -#: cps/render_template.py:102 cps/templates/user_table.html:168 +#: cps/render_template.py:101 cps/templates/user_table.html:168 msgid "Show Books List" msgstr "" -#: cps/shelf.py:67 cps/shelf.py:121 -msgid "Invalid shelf specified" -msgstr "Указана неверная полка" - -#: cps/shelf.py:73 -#, fuzzy -msgid "Sorry you are not allowed to add a book to that shelf" -msgstr "Извините, но вам не разрешено добавлять книги на полку: %(shelfname)s" - -#: cps/shelf.py:82 -#, python-format -msgid "Book is already part of the shelf: %(shelfname)s" -msgstr "Книги уже размещены на полке: %(shelfname)s" - -#: cps/shelf.py:107 -#, python-format -msgid "Book has been added to shelf: %(sname)s" -msgstr "Книга добавлена на книжную полку: %(sname)s" - -#: cps/shelf.py:126 -msgid "You are not allowed to add a book to the shelf" -msgstr "" - -#: cps/shelf.py:144 -#, python-format -msgid "Books are already part of the shelf: %(name)s" -msgstr "Книги уже размещены на полке: %(name)s" - -#: cps/shelf.py:156 -#, python-format -msgid "Books have been added to shelf: %(sname)s" -msgstr "Книги добавлены на полку: %(sname)s" - -#: cps/shelf.py:163 -#, python-format -msgid "Could not add books to shelf: %(sname)s" -msgstr "Не удалось добавить книги на полку: %(sname)s" - -#: cps/shelf.py:209 -#, python-format -msgid "Book has been removed from shelf: %(sname)s" -msgstr "Книга удалена с полки: %(sname)s" - -#: cps/shelf.py:218 -msgid "Sorry you are not allowed to remove a book from this shelf" -msgstr "" - -#: cps/shelf.py:228 cps/templates/layout.html:140 -msgid "Create a Shelf" -msgstr "Создать полку" - -#: cps/shelf.py:236 -#, fuzzy -msgid "Sorry you are not allowed to edit this shelf" -msgstr "Извините, вы не можете удалить книгу с полки: %(sname)s" - -#: cps/shelf.py:238 -msgid "Edit a shelf" -msgstr "Изменить полку" - -#: cps/shelf.py:248 -msgid "Sorry you are not allowed to create a public shelf" -msgstr "" - -#: cps/shelf.py:265 -#, python-format -msgid "Shelf %(title)s created" -msgstr "Создана полка %(title)s" - -#: cps/shelf.py:268 -#, python-format -msgid "Shelf %(title)s changed" -msgstr "Колка %(title)s изменена" - -#: cps/shelf.py:282 -msgid "There was an error" -msgstr "Произошла ошибка" - -#: cps/shelf.py:304 -#, python-format -msgid "A public shelf with the name '%(title)s' already exists." -msgstr "Публичная полка с названием '%(title)s' уже существует." - -#: cps/shelf.py:315 -#, python-format -msgid "A private shelf with the name '%(title)s' already exists." -msgstr "Приватная полка с названием '%(title)s' уже существует." - -#: cps/shelf.py:337 -msgid "Error deleting Shelf" -msgstr "" - -#: cps/shelf.py:339 -#, fuzzy -msgid "Shelf successfully deleted" -msgstr "Метаданные обновлены" - -#: cps/shelf.py:389 -#, python-format -msgid "Change order of Shelf: '%(name)s'" -msgstr "Изменить расположение полки '%(name)s'" - -#: cps/shelf.py:461 -#, python-format -msgid "Shelf: '%(name)s'" -msgstr "Полка: '%(name)s'" - -#: cps/shelf.py:465 -msgid "Error opening shelf. Shelf does not exist or is not accessible" -msgstr "Ошибка открытия Полки. Полка не существует или недоступна" - -#: cps/updater.py:426 cps/updater.py:437 cps/updater.py:538 cps/updater.py:553 -msgid "Unexpected data while reading update information" -msgstr "Некорректные данные при чтении информации об обновлении" - -#: cps/updater.py:433 cps/updater.py:545 -msgid "No update available. You already have the latest version installed" -msgstr "Нет доступных обновлений. Вы используете последнюю версию" - -#: cps/updater.py:451 -msgid "A new update is available. Click on the button below to update to the latest version." -msgstr "Новое обновление доступно. Нажмите на кнопку ниже, чтобы обновить до последней версии." - -#: cps/updater.py:469 -msgid "Could not fetch update information" -msgstr "Не удалось получить информацию об обновлении" - -#: cps/updater.py:479 -msgid "Click on the button below to update to the latest stable version." -msgstr "Нажмите на кнопку ниже для обновления до последней стабильной версии." - -#: cps/updater.py:488 cps/updater.py:502 cps/updater.py:513 -#, python-format -msgid "A new update is available. Click on the button below to update to version: %(version)s" -msgstr "Новое обновление доступно. Нажмите на кнопку ниже, чтобы обновиться до версии: %(version)s" - -#: cps/updater.py:531 -msgid "No release information available" -msgstr "Информация о выпуске недоступна" - -#: cps/templates/index.html:5 cps/web.py:434 -msgid "Discover (Random Books)" -msgstr "Обзор (Случайные Книги)" - -#: cps/web.py:470 -msgid "Hot Books (Most Downloaded)" -msgstr "Популярные книги (часто загружаемые)" - -#: cps/web.py:501 -#, python-format -msgid "Downloaded books by %(user)s" -msgstr "" - -#: cps/web.py:534 -#, python-format -msgid "Author: %(name)s" -msgstr "Автор: %(name)s" - -#: cps/web.py:570 -#, python-format -msgid "Publisher: %(name)s" -msgstr "Издатель: %(name)s" - -#: cps/web.py:598 -#, python-format -msgid "Series: %(serie)s" -msgstr "Серии: %(serie)s" - -#: cps/web.py:610 -#, python-format -msgid "Rating: %(rating)s stars" -msgstr "Оценка: %(rating)s звезды(а)" - -#: cps/web.py:626 -#, python-format -msgid "File format: %(format)s" -msgstr "Формат файла: %(format)s" - -#: cps/web.py:663 -#, python-format -msgid "Category: %(name)s" -msgstr "Категория: %(name)s" - -#: cps/web.py:690 -#, python-format -msgid "Language: %(name)s" -msgstr "Язык: %(name)s" - -#: cps/templates/layout.html:56 cps/web.py:789 cps/web.py:1444 -msgid "Advanced Search" -msgstr "Расширенный поиск" - -#: cps/templates/book_edit.html:235 cps/templates/feed.xml:33 -#: cps/templates/index.xml:11 cps/templates/layout.html:45 -#: cps/templates/layout.html:48 cps/templates/search_form.html:226 -#: cps/web.py:807 cps/web.py:1164 +#: cps/search.py:48 cps/search.py:414 cps/templates/book_edit.html:236 +#: cps/templates/feed.xml:33 cps/templates/index.xml:11 +#: cps/templates/layout.html:46 cps/templates/layout.html:49 +#: cps/templates/search_form.html:226 msgid "Search" msgstr "Поиск" -#: cps/templates/admin.html:16 cps/web.py:979 -msgid "Downloads" -msgstr "Скачать" - -#: cps/web.py:1068 -msgid "Ratings list" -msgstr "Список рейтингов" - -#: cps/web.py:1095 -msgid "File formats list" -msgstr "Список форматов файлов" - -#: cps/templates/layout.html:73 cps/templates/tasks.html:7 cps/web.py:1149 -msgid "Tasks" -msgstr "Задания" - -#: cps/web.py:1286 +#: cps/search.py:194 msgid "Published after " msgstr "Опубликовано после " -#: cps/web.py:1293 +#: cps/search.py:201 msgid "Published before " msgstr "Опубликовано до " -#: cps/web.py:1315 +#: cps/search.py:223 #, python-format msgid "Rating <= %(rating)s" msgstr "Рейтинг <= %(rating)s" -#: cps/web.py:1317 +#: cps/search.py:225 #, python-format msgid "Rating >= %(rating)s" msgstr "Рейтинг >= %(rating)s" -#: cps/web.py:1319 +#: cps/search.py:227 #, python-format msgid "Read Status = %(status)s" msgstr "" -#: cps/web.py:1425 +#: cps/search.py:345 msgid "Error on search for custom columns, please restart Calibre-Web" msgstr "" -#: cps/web.py:1527 +#: cps/search.py:364 cps/search.py:396 cps/templates/layout.html:57 +msgid "Advanced Search" +msgstr "Расширенный поиск" + +#: cps/shelf.py:49 cps/shelf.py:103 +msgid "Invalid shelf specified" +msgstr "Указана неверная полка" + +#: cps/shelf.py:55 +#, fuzzy +msgid "Sorry you are not allowed to add a book to that shelf" +msgstr "Извините, но вам не разрешено добавлять книги на полку: %(shelfname)s" + +#: cps/shelf.py:64 +#, python-format +msgid "Book is already part of the shelf: %(shelfname)s" +msgstr "Книги уже размещены на полке: %(shelfname)s" + +#: cps/shelf.py:89 +#, python-format +msgid "Book has been added to shelf: %(sname)s" +msgstr "Книга добавлена на книжную полку: %(sname)s" + +#: cps/shelf.py:108 +msgid "You are not allowed to add a book to the shelf" +msgstr "" + +#: cps/shelf.py:126 +#, python-format +msgid "Books are already part of the shelf: %(name)s" +msgstr "Книги уже размещены на полке: %(name)s" + +#: cps/shelf.py:138 +#, python-format +msgid "Books have been added to shelf: %(sname)s" +msgstr "Книги добавлены на полку: %(sname)s" + +#: cps/shelf.py:145 +#, python-format +msgid "Could not add books to shelf: %(sname)s" +msgstr "Не удалось добавить книги на полку: %(sname)s" + +#: cps/shelf.py:191 +#, python-format +msgid "Book has been removed from shelf: %(sname)s" +msgstr "Книга удалена с полки: %(sname)s" + +#: cps/shelf.py:200 +msgid "Sorry you are not allowed to remove a book from this shelf" +msgstr "" + +#: cps/shelf.py:210 cps/templates/layout.html:141 +msgid "Create a Shelf" +msgstr "Создать полку" + +#: cps/shelf.py:218 +#, fuzzy +msgid "Sorry you are not allowed to edit this shelf" +msgstr "Извините, вы не можете удалить книгу с полки: %(sname)s" + +#: cps/shelf.py:220 +msgid "Edit a shelf" +msgstr "Изменить полку" + +#: cps/shelf.py:229 +msgid "Error deleting Shelf" +msgstr "" + +#: cps/shelf.py:231 +#, fuzzy +msgid "Shelf successfully deleted" +msgstr "Метаданные обновлены" + +#: cps/shelf.py:281 +#, python-format +msgid "Change order of Shelf: '%(name)s'" +msgstr "Изменить расположение полки '%(name)s'" + +#: cps/shelf.py:313 +msgid "Sorry you are not allowed to create a public shelf" +msgstr "" + +#: cps/shelf.py:330 +#, python-format +msgid "Shelf %(title)s created" +msgstr "Создана полка %(title)s" + +#: cps/shelf.py:333 +#, python-format +msgid "Shelf %(title)s changed" +msgstr "Колка %(title)s изменена" + +#: cps/shelf.py:347 +msgid "There was an error" +msgstr "Произошла ошибка" + +#: cps/shelf.py:369 +#, python-format +msgid "A public shelf with the name '%(title)s' already exists." +msgstr "Публичная полка с названием '%(title)s' уже существует." + +#: cps/shelf.py:380 +#, python-format +msgid "A private shelf with the name '%(title)s' already exists." +msgstr "Приватная полка с названием '%(title)s' уже существует." + +#: cps/shelf.py:462 +#, python-format +msgid "Shelf: '%(name)s'" +msgstr "Полка: '%(name)s'" + +#: cps/shelf.py:466 +msgid "Error opening shelf. Shelf does not exist or is not accessible" +msgstr "Ошибка открытия Полки. Полка не существует или недоступна" + +#: cps/tasks_status.py:48 cps/templates/layout.html:74 +#: cps/templates/tasks.html:7 +msgid "Tasks" +msgstr "Задания" + +#: cps/tasks_status.py:64 +msgid "Waiting" +msgstr "Ожидание" + +#: cps/tasks_status.py:66 +msgid "Failed" +msgstr "Неудачно" + +#: cps/tasks_status.py:68 +msgid "Started" +msgstr "Начало" + +#: cps/tasks_status.py:70 +msgid "Finished" +msgstr "Завершено" + +#: cps/tasks_status.py:72 +msgid "Ended" +msgstr "" + +#: cps/tasks_status.py:74 +msgid "Cancelled" +msgstr "" + +#: cps/tasks_status.py:76 +msgid "Unknown Status" +msgstr "Неизвестный статус" + +#: cps/updater.py:431 cps/updater.py:442 cps/updater.py:543 cps/updater.py:558 +msgid "Unexpected data while reading update information" +msgstr "Некорректные данные при чтении информации об обновлении" + +#: cps/updater.py:438 cps/updater.py:550 +msgid "No update available. You already have the latest version installed" +msgstr "Нет доступных обновлений. Вы используете последнюю версию" + +#: cps/updater.py:456 +msgid "A new update is available. Click on the button below to update to the latest version." +msgstr "Новое обновление доступно. Нажмите на кнопку ниже, чтобы обновить до последней версии." + +#: cps/updater.py:474 +msgid "Could not fetch update information" +msgstr "Не удалось получить информацию об обновлении" + +#: cps/updater.py:484 +msgid "Click on the button below to update to the latest stable version." +msgstr "Нажмите на кнопку ниже для обновления до последней стабильной версии." + +#: cps/updater.py:493 cps/updater.py:507 cps/updater.py:518 +#, python-format +msgid "A new update is available. Click on the button below to update to version: %(version)s" +msgstr "Новое обновление доступно. Нажмите на кнопку ниже, чтобы обновиться до версии: %(version)s" + +#: cps/updater.py:536 +msgid "No release information available" +msgstr "Информация о выпуске недоступна" + +#: cps/templates/index.html:6 cps/web.py:432 +msgid "Discover (Random Books)" +msgstr "Обзор (Случайные Книги)" + +#: cps/web.py:468 +msgid "Hot Books (Most Downloaded)" +msgstr "Популярные книги (часто загружаемые)" + +#: cps/web.py:499 +#, python-format +msgid "Downloaded books by %(user)s" +msgstr "" + +#: cps/web.py:532 +#, python-format +msgid "Author: %(name)s" +msgstr "Автор: %(name)s" + +#: cps/web.py:568 +#, python-format +msgid "Publisher: %(name)s" +msgstr "Издатель: %(name)s" + +#: cps/web.py:596 +#, python-format +msgid "Series: %(serie)s" +msgstr "Серии: %(serie)s" + +#: cps/web.py:609 +msgid "Rating: None" +msgstr "" + +#: cps/web.py:618 +#, python-format +msgid "Rating: %(rating)s stars" +msgstr "Оценка: %(rating)s звезды(а)" + +#: cps/web.py:636 +#, python-format +msgid "File format: %(format)s" +msgstr "Формат файла: %(format)s" + +#: cps/web.py:673 +#, python-format +msgid "Category: %(name)s" +msgstr "Категория: %(name)s" + +#: cps/web.py:700 +#, python-format +msgid "Language: %(name)s" +msgstr "Язык: %(name)s" + +#: cps/templates/admin.html:16 cps/web.py:938 +msgid "Downloads" +msgstr "Скачать" + +#: cps/web.py:1030 +msgid "Ratings list" +msgstr "Список рейтингов" + +#: cps/web.py:1057 +msgid "File formats list" +msgstr "Список форматов файлов" + +#: cps/web.py:1199 #, python-format msgid "Book successfully queued for sending to %(kindlemail)s" msgstr "Книга успешно поставлена в очередь для отправки на %(kindlemail)s" -#: cps/web.py:1531 +#: cps/web.py:1203 #, python-format msgid "Oops! There was an error sending this book: %(res)s" msgstr "При отправке этой книги произошла ошибка: %(res)s" -#: cps/web.py:1533 +#: cps/web.py:1205 msgid "Please update your profile with a valid Send to Kindle E-mail Address." msgstr "Пожалуйста, сначала настройте e-mail на вашем kindle..." -#: cps/web.py:1550 +#: cps/web.py:1222 msgid "E-Mail server is not configured, please contact your administrator!" msgstr "Сервер электронной почты не настроен, обратитесь к администратору !" -#: cps/templates/layout.html:85 cps/templates/register.html:17 cps/web.py:1551 -#: cps/web.py:1558 cps/web.py:1564 cps/web.py:1583 cps/web.py:1587 -#: cps/web.py:1593 +#: cps/templates/layout.html:86 cps/templates/register.html:17 cps/web.py:1223 +#: cps/web.py:1230 cps/web.py:1236 cps/web.py:1255 cps/web.py:1260 +#: cps/web.py:1266 msgid "Register" msgstr "Зарегистрироваться" -#: cps/web.py:1585 +#: cps/web.py:1257 msgid "Your e-mail is not allowed to register" msgstr "Ваш e-mail не подходит для регистрации" -#: cps/web.py:1588 +#: cps/web.py:1261 msgid "Confirmation e-mail was send to your e-mail account." msgstr "Письмо с подтверждением отправлено вам на e-mail." -#: cps/web.py:1602 +#: cps/web.py:1275 msgid "Cannot activate LDAP authentication" msgstr "Не удается активировать LDAP аутентификацию" -#: cps/web.py:1621 +#: cps/web.py:1294 #, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgstr "Резервный вход в систему как: '%(nickname)s', LDAP-сервер недоступен или пользователь не известен" -#: cps/web.py:1627 +#: cps/web.py:1300 #, python-format msgid "Could not login: %(message)s" msgstr "Не удалось войти: %(message)s" -#: cps/web.py:1631 cps/web.py:1656 +#: cps/web.py:1304 cps/web.py:1329 msgid "Wrong Username or Password" msgstr "Ошибка в имени пользователя или пароле" -#: cps/web.py:1638 +#: cps/web.py:1311 msgid "New Password was send to your email address" msgstr "Новый пароль был отправлен на ваш адрес электронной почты" -#: cps/web.py:1644 +#: cps/web.py:1317 msgid "Please enter valid username to reset password" msgstr "Пожалуйста, введите действительное имя пользователя для сброса пароля" -#: cps/web.py:1651 +#: cps/web.py:1324 #, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "Вы вошли как: '%(nickname)s'" -#: cps/web.py:1717 cps/web.py:1766 +#: cps/web.py:1388 cps/web.py:1437 #, python-format msgid "%(name)s's profile" msgstr "Профиль %(name)s's" -#: cps/web.py:1733 +#: cps/web.py:1404 msgid "Profile updated" msgstr "Профиль обновлён" @@ -1348,40 +1386,75 @@ msgstr "Профиль обновлён" msgid "Found no valid gmail.json file with OAuth information" msgstr "" -#: cps/tasks/convert.py:154 +#: cps/tasks/convert.py:153 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "" -#: cps/tasks/convert.py:187 +#: cps/tasks/convert.py:186 #, python-format msgid "%(format)s format not found on disk" msgstr "" -#: cps/tasks/convert.py:191 +#: cps/tasks/convert.py:190 msgid "Ebook converter failed with unknown error" msgstr "" -#: cps/tasks/convert.py:201 +#: cps/tasks/convert.py:200 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "" -#: cps/tasks/convert.py:223 +#: cps/tasks/convert.py:222 #, python-format msgid "Converted file not found or more than one file in folder %(folder)s" msgstr "" -#: cps/tasks/convert.py:246 +#: cps/tasks/convert.py:245 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "Ошибка Ebook-конвертора: %(error)s" -#: cps/tasks/convert.py:269 +#: cps/tasks/convert.py:268 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "" +#: cps/tasks/convert.py:273 +msgid "Convert" +msgstr "" + +#: cps/tasks/database.py:28 +msgid "Reconnecting Calibre database" +msgstr "" + +#: cps/tasks/mail.py:265 +msgid "E-mail" +msgstr "" + +#: cps/tasks/thumbnail.py:95 +#, python-format +msgid "Generated %(count)s cover thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:222 cps/tasks/thumbnail.py:435 +#: cps/tasks/thumbnail.py:503 +msgid "Cover Thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:281 +msgid "Generated {0} series thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:446 +msgid "Clearing cover thumbnail cache" +msgstr "" + +#: cps/tasks/upload.py:38 cps/templates/admin.html:20 +#: cps/templates/layout.html:67 cps/templates/user_table.html:145 +msgid "Upload" +msgstr "Загрузить" + #: cps/templates/admin.html:9 msgid "Users" msgstr "Список пользователей" @@ -1401,7 +1474,7 @@ msgstr "Адрес электронной почты" msgid "Send to Kindle E-mail Address" msgstr "Отправить на Kindle Адрес электронной почты" -#: cps/templates/admin.html:17 cps/templates/layout.html:76 +#: cps/templates/admin.html:17 cps/templates/layout.html:77 #: cps/templates/user_table.html:143 msgid "Admin" msgstr "Управление" @@ -1411,13 +1484,8 @@ msgstr "Управление" msgid "Password" msgstr "Пароль" -#: cps/templates/admin.html:20 cps/templates/layout.html:66 -#: cps/templates/user_table.html:145 -msgid "Upload" -msgstr "Загрузить" - -#: cps/templates/admin.html:22 cps/templates/detail.html:18 -#: cps/templates/detail.html:27 cps/templates/shelf.html:7 +#: cps/templates/admin.html:22 cps/templates/detail.html:19 +#: cps/templates/detail.html:28 cps/templates/shelf.html:8 #: cps/templates/user_table.html:146 msgid "Download" msgstr "Скачать" @@ -1431,7 +1499,7 @@ msgstr "Посмотреть электронные книги" msgid "Edit" msgstr "Редактировать" -#: cps/templates/admin.html:25 cps/templates/book_edit.html:16 +#: cps/templates/admin.html:25 cps/templates/book_edit.html:17 #: cps/templates/book_table.html:100 cps/templates/modal_dialogs.html:63 #: cps/templates/modal_dialogs.html:116 cps/templates/user_edit.html:67 #: cps/templates/user_table.html:149 @@ -1544,78 +1612,107 @@ msgstr "Изменить основные настройки" msgid "Edit UI Configuration" msgstr "Изменить настройки интерфейса" -#: cps/templates/admin.html:166 +#: cps/templates/admin.html:167 +msgid "Scheduled Tasks" +msgstr "" + +#: cps/templates/admin.html:170 cps/templates/schedule_edit.html:12 +msgid "Time at which tasks start to run" +msgstr "" + +#: cps/templates/admin.html:174 cps/templates/schedule_edit.html:20 +msgid "Maximum tasks duration" +msgstr "" + +#: cps/templates/admin.html:178 +msgid "Generate book cover thumbnails" +msgstr "" + +#: cps/templates/admin.html:182 +msgid "Generate series cover thumbnails" +msgstr "" + +#: cps/templates/admin.html:186 cps/templates/schedule_edit.html:37 +msgid "Reconnect to Calibre Library" +msgstr "" + +#: cps/templates/admin.html:193 +msgid "Refresh Thumbnail Cover Cache" +msgstr "" + +#: cps/templates/admin.html:199 msgid "Administration" msgstr "Управление" -#: cps/templates/admin.html:167 +#: cps/templates/admin.html:200 msgid "Download Debug Package" msgstr "" -#: cps/templates/admin.html:168 +#: cps/templates/admin.html:201 msgid "View Logs" msgstr "Просмотреть лог файл" -#: cps/templates/admin.html:171 +#: cps/templates/admin.html:204 msgid "Reconnect Calibre Database" msgstr "Пере подключиться к базе жанных Calibre" -#: cps/templates/admin.html:172 +#: cps/templates/admin.html:207 msgid "Restart" msgstr "Перезагрузить Calibre-Web" -#: cps/templates/admin.html:173 +#: cps/templates/admin.html:208 msgid "Shutdown" msgstr "Остановить Calibre-Web" -#: cps/templates/admin.html:178 -msgid "Update" -msgstr "Обновление" +#: cps/templates/admin.html:213 +msgid "Version Information" +msgstr "" -#: cps/templates/admin.html:182 +#: cps/templates/admin.html:217 msgid "Version" msgstr "Версия" -#: cps/templates/admin.html:183 +#: cps/templates/admin.html:218 msgid "Details" msgstr "Подробности" -#: cps/templates/admin.html:189 +#: cps/templates/admin.html:224 msgid "Current version" msgstr "Текущая версия" -#: cps/templates/admin.html:196 +#: cps/templates/admin.html:231 msgid "Check for Update" msgstr "Проверка обновлений" -#: cps/templates/admin.html:197 +#: cps/templates/admin.html:232 msgid "Perform Update" msgstr "Установить обновления" -#: cps/templates/admin.html:210 +#: cps/templates/admin.html:245 msgid "Are you sure you want to restart?" msgstr "Вы действительно хотите перезагрузить Calibre-Web?" -#: cps/templates/admin.html:215 cps/templates/admin.html:229 -#: cps/templates/admin.html:249 cps/templates/config_db.html:70 +#: cps/templates/admin.html:250 cps/templates/admin.html:264 +#: cps/templates/admin.html:284 cps/templates/config_db.html:70 msgid "OK" msgstr "Ok" -#: cps/templates/admin.html:216 cps/templates/admin.html:230 -#: cps/templates/book_edit.html:213 cps/templates/book_table.html:127 +#: cps/templates/admin.html:251 cps/templates/admin.html:265 +#: cps/templates/book_edit.html:214 cps/templates/book_table.html:127 #: cps/templates/config_db.html:54 cps/templates/config_edit.html:359 #: 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/shelf_edit.html:27 +#: cps/templates/modal_dialogs.html:135 cps/templates/schedule_edit.html:41 +#: cps/templates/shelf_edit.html:27 cps/templates/tasks.html:46 #: cps/templates/user_edit.html:144 msgid "Cancel" msgstr "Отмена" -#: cps/templates/admin.html:228 +#: cps/templates/admin.html:263 msgid "Are you sure you want to shutdown?" msgstr "Вы действительно хотите остановить Calibre-Web?" -#: cps/templates/admin.html:240 +#: cps/templates/admin.html:275 msgid "Updating, please do not reload this page" msgstr "Установка обновлений, пожалуйста, не обновляйте страницу" @@ -1627,39 +1724,39 @@ msgstr "с помощью" msgid "In Library" msgstr "В библиотеке" -#: cps/templates/author.html:26 cps/templates/index.html:73 -#: cps/templates/search.html:30 cps/templates/shelf.html:19 +#: cps/templates/author.html:26 cps/templates/index.html:74 +#: cps/templates/search.html:31 cps/templates/shelf.html:20 msgid "Sort according to book date, newest first" msgstr "" -#: cps/templates/author.html:27 cps/templates/index.html:74 -#: cps/templates/search.html:31 cps/templates/shelf.html:20 +#: cps/templates/author.html:27 cps/templates/index.html:75 +#: cps/templates/search.html:32 cps/templates/shelf.html:21 msgid "Sort according to book date, oldest first" msgstr "" -#: cps/templates/author.html:28 cps/templates/index.html:75 -#: cps/templates/search.html:32 cps/templates/shelf.html:21 +#: cps/templates/author.html:28 cps/templates/index.html:76 +#: cps/templates/search.html:33 cps/templates/shelf.html:22 msgid "Sort title in alphabetical order" msgstr "" -#: cps/templates/author.html:29 cps/templates/index.html:76 -#: cps/templates/search.html:33 cps/templates/shelf.html:22 +#: cps/templates/author.html:29 cps/templates/index.html:77 +#: cps/templates/search.html:34 cps/templates/shelf.html:23 msgid "Sort title in reverse alphabetical order" msgstr "" -#: cps/templates/author.html:30 cps/templates/index.html:79 -#: cps/templates/search.html:36 cps/templates/shelf.html:25 +#: cps/templates/author.html:30 cps/templates/index.html:80 +#: cps/templates/search.html:37 cps/templates/shelf.html:26 msgid "Sort according to publishing date, newest first" msgstr "" -#: cps/templates/author.html:31 cps/templates/index.html:80 -#: cps/templates/search.html:37 cps/templates/shelf.html:26 +#: cps/templates/author.html:31 cps/templates/index.html:81 +#: cps/templates/search.html:38 cps/templates/shelf.html:27 msgid "Sort according to publishing date, oldest first" msgstr "" #: cps/templates/author.html:56 cps/templates/author.html:115 -#: cps/templates/index.html:29 cps/templates/index.html:112 -#: cps/templates/search.html:66 cps/templates/shelf.html:54 +#: cps/templates/index.html:30 cps/templates/index.html:113 +#: cps/templates/search.html:67 cps/templates/shelf.html:55 msgid "reduce" msgstr "уменьшить" @@ -1667,165 +1764,166 @@ msgstr "уменьшить" msgid "More by" msgstr "Ещё от" -#: cps/templates/book_edit.html:10 +#: cps/templates/book_edit.html:11 msgid "Delete Book" msgstr "Удалить книгу" -#: cps/templates/book_edit.html:13 +#: cps/templates/book_edit.html:14 msgid "Delete formats:" msgstr "Удалить форматы:" -#: cps/templates/book_edit.html:24 +#: cps/templates/book_edit.html:25 msgid "Convert book format:" msgstr "Конвертировать формат книги:" -#: cps/templates/book_edit.html:29 +#: cps/templates/book_edit.html:30 msgid "Convert from:" msgstr "Конвертировать из:" -#: cps/templates/book_edit.html:31 cps/templates/book_edit.html:38 +#: cps/templates/book_edit.html:32 cps/templates/book_edit.html:39 msgid "select an option" msgstr "выбрать вариант" -#: cps/templates/book_edit.html:36 +#: cps/templates/book_edit.html:37 msgid "Convert to:" msgstr "Конвертировать в:" -#: cps/templates/book_edit.html:45 +#: cps/templates/book_edit.html:46 msgid "Convert book" msgstr "Конвертировать книгу" -#: cps/templates/book_edit.html:55 cps/templates/search_form.html:8 +#: cps/templates/book_edit.html:56 cps/templates/search_form.html:8 msgid "Book Title" msgstr "Название книги" -#: cps/templates/book_edit.html:62 cps/templates/book_edit.html:270 -#: cps/templates/book_edit.html:288 cps/templates/search_form.html:12 +#: cps/templates/book_edit.html:63 cps/templates/book_edit.html:271 +#: cps/templates/book_edit.html:289 cps/templates/search_form.html:12 msgid "Author" msgstr "Автор" -#: cps/templates/book_edit.html:67 cps/templates/book_edit.html:275 -#: cps/templates/book_edit.html:290 cps/templates/search_form.html:153 +#: cps/templates/book_edit.html:68 cps/templates/book_edit.html:276 +#: cps/templates/book_edit.html:291 cps/templates/search_form.html:153 msgid "Description" msgstr "Описание" -#: cps/templates/book_edit.html:72 +#: cps/templates/book_edit.html:73 msgid "Identifiers" msgstr "" -#: cps/templates/book_edit.html:76 cps/templates/book_edit.html:299 +#: cps/templates/book_edit.html:77 cps/templates/book_edit.html:300 msgid "Identifier Type" msgstr "" -#: cps/templates/book_edit.html:77 cps/templates/book_edit.html:300 +#: cps/templates/book_edit.html:78 cps/templates/book_edit.html:301 msgid "Identifier Value" msgstr "" -#: cps/templates/book_edit.html:78 cps/templates/book_edit.html:301 +#: cps/templates/book_edit.html:79 cps/templates/book_edit.html:302 #: cps/templates/user_table.html:24 msgid "Remove" msgstr "" -#: cps/templates/book_edit.html:82 +#: cps/templates/book_edit.html:83 msgid "Add Identifier" msgstr "" -#: cps/templates/book_edit.html:86 cps/templates/search_form.html:51 +#: cps/templates/book_edit.html:87 cps/templates/search_form.html:51 msgid "Tags" msgstr "Теги" -#: cps/templates/book_edit.html:94 +#: cps/templates/book_edit.html:95 msgid "Series ID" msgstr "ID Серии" -#: cps/templates/book_edit.html:98 +#: cps/templates/book_edit.html:99 msgid "Rating" msgstr "Рейтинг" -#: cps/templates/book_edit.html:103 +#: cps/templates/book_edit.html:104 msgid "Fetch Cover from URL (JPEG - Image will be downloaded and stored in database)" msgstr "URL обложки(jpg, обложка загружается и сохраняется в базе данных, после этого поле снова пустое)" -#: cps/templates/book_edit.html:107 +#: cps/templates/book_edit.html:108 msgid "Upload Cover from Local Disk" msgstr "Загрузить обложку с диска" -#: cps/templates/book_edit.html:112 +#: cps/templates/book_edit.html:113 msgid "Published Date" msgstr "Опубликовано" -#: cps/templates/book_edit.html:121 cps/templates/book_edit.html:272 -#: cps/templates/book_edit.html:289 cps/templates/detail.html:164 +#: cps/templates/book_edit.html:122 cps/templates/book_edit.html:273 +#: cps/templates/book_edit.html:290 cps/templates/detail.html:165 #: cps/templates/search_form.html:16 msgid "Publisher" msgstr "Издатель" -#: cps/templates/book_edit.html:125 cps/templates/detail.html:131 +#: cps/templates/book_edit.html:126 cps/templates/detail.html:132 #: cps/templates/user_edit.html:33 msgid "Language" msgstr "Язык" -#: cps/templates/book_edit.html:135 cps/templates/search_form.html:45 +#: cps/templates/book_edit.html:136 cps/templates/search_form.html:45 #: cps/templates/search_form.html:164 msgid "Yes" msgstr "Да" -#: cps/templates/book_edit.html:136 cps/templates/search_form.html:46 +#: cps/templates/book_edit.html:137 cps/templates/search_form.html:46 #: cps/templates/search_form.html:165 msgid "No" msgstr "Нет" -#: cps/templates/book_edit.html:200 +#: cps/templates/book_edit.html:201 msgid "Upload Format" msgstr "Загружаемый формат" -#: cps/templates/book_edit.html:208 +#: cps/templates/book_edit.html:209 msgid "View Book on Save" msgstr "Просмотреть книгу после сохранения" -#: cps/templates/book_edit.html:211 cps/templates/book_edit.html:229 +#: cps/templates/book_edit.html:212 cps/templates/book_edit.html:230 msgid "Fetch Metadata" msgstr "Получить метаданные" -#: cps/templates/book_edit.html:212 cps/templates/config_db.html:53 +#: cps/templates/book_edit.html:213 cps/templates/config_db.html:53 #: cps/templates/config_edit.html:358 cps/templates/config_view_edit.html:174 -#: cps/templates/email_edit.html:65 cps/templates/shelf_edit.html:25 -#: cps/templates/shelf_order.html:41 cps/templates/user_edit.html:142 +#: cps/templates/email_edit.html:65 cps/templates/schedule_edit.html:40 +#: cps/templates/shelf_edit.html:25 cps/templates/shelf_order.html:41 +#: cps/templates/user_edit.html:142 msgid "Save" msgstr "Сохранить" -#: cps/templates/book_edit.html:232 +#: cps/templates/book_edit.html:233 msgid "Keyword" msgstr "Ключевое слово" -#: cps/templates/book_edit.html:233 +#: cps/templates/book_edit.html:234 #, fuzzy msgid "Search keyword" msgstr " Поиск по ключевому слову " -#: cps/templates/book_edit.html:239 +#: cps/templates/book_edit.html:240 msgid "Click the cover to load metadata to the form" msgstr "Нажмите на обложку, чтобы получить метаданные" -#: cps/templates/book_edit.html:246 cps/templates/book_edit.html:285 +#: cps/templates/book_edit.html:247 cps/templates/book_edit.html:286 msgid "Loading..." msgstr "Загрузка..." -#: cps/templates/book_edit.html:250 cps/templates/layout.html:63 -#: cps/templates/layout.html:186 cps/templates/modal_dialogs.html:34 +#: cps/templates/book_edit.html:251 cps/templates/layout.html:64 +#: cps/templates/layout.html:187 cps/templates/modal_dialogs.html:34 #: cps/templates/user_edit.html:163 msgid "Close" msgstr "Закрыть" -#: cps/templates/book_edit.html:277 cps/templates/book_edit.html:291 +#: cps/templates/book_edit.html:278 cps/templates/book_edit.html:292 msgid "Source" msgstr "Источник" -#: cps/templates/book_edit.html:286 +#: cps/templates/book_edit.html:287 msgid "Search error!" msgstr "Ошибка поиска!" -#: cps/templates/book_edit.html:287 +#: cps/templates/book_edit.html:288 msgid "No Result(s) found! Please try another keyword." msgstr "Результат(ы) не найдены! Попробуйте другое ключевое слово." @@ -1934,6 +2032,7 @@ msgid "Enter " msgstr "Зарегистрироваться" #: cps/templates/book_table.html:113 cps/templates/modal_dialogs.html:46 +#: cps/templates/tasks.html:36 msgid "Are you really sure?" msgstr "Вы действительно уверены?" @@ -2348,62 +2447,62 @@ msgstr "Добавить разрешенные / запрещенные тег msgid "Add Allowed/Denied custom column values" msgstr "Добавить разрешенные / запрещенные значения индивидуальных столбцов" -#: cps/templates/detail.html:60 cps/templates/detail.html:69 +#: cps/templates/detail.html:61 cps/templates/detail.html:70 msgid "Read in Browser" msgstr "Читать" -#: cps/templates/detail.html:77 cps/templates/detail.html:94 +#: cps/templates/detail.html:78 cps/templates/detail.html:95 msgid "Listen in Browser" msgstr "Прослушать в браузере" -#: cps/templates/detail.html:124 +#: cps/templates/detail.html:125 #, python-format msgid "Book %(index)s of %(range)s" msgstr "" -#: cps/templates/detail.html:173 +#: cps/templates/detail.html:174 msgid "Published" msgstr "Опубликованный" -#: cps/templates/detail.html:221 +#: cps/templates/detail.html:222 msgid "Mark As Unread" msgstr "Отметить как непрочитанное" -#: cps/templates/detail.html:221 +#: cps/templates/detail.html:222 msgid "Mark As Read" msgstr "Отметить как прочитанное" -#: cps/templates/detail.html:222 +#: cps/templates/detail.html:223 msgid "Read" msgstr "Прочесть" -#: cps/templates/detail.html:231 +#: cps/templates/detail.html:232 msgid "Restore from archive" msgstr "" -#: cps/templates/detail.html:231 +#: cps/templates/detail.html:232 msgid "Add to archive" msgstr "" -#: cps/templates/detail.html:232 +#: cps/templates/detail.html:233 msgid "Archived" msgstr "" -#: cps/templates/detail.html:243 +#: cps/templates/detail.html:244 msgid "Description:" msgstr "Описание:" -#: cps/templates/detail.html:256 cps/templates/search.html:15 +#: cps/templates/detail.html:257 cps/templates/search.html:16 msgid "Add to shelf" msgstr "Добавить на книжную полку" -#: cps/templates/detail.html:267 cps/templates/detail.html:284 -#: cps/templates/feed.xml:79 cps/templates/layout.html:137 -#: cps/templates/search.html:21 +#: cps/templates/detail.html:268 cps/templates/detail.html:285 +#: cps/templates/feed.xml:79 cps/templates/layout.html:138 +#: cps/templates/search.html:22 msgid "(Public)" msgstr "(Публичная)" -#: cps/templates/detail.html:298 +#: cps/templates/detail.html:299 msgid "Edit Metadata" msgstr "Редактировать метаданные" @@ -2447,7 +2546,7 @@ msgstr "" msgid "Save and Send Test E-mail" msgstr "Сохранить настройки и отправить тестовое письмо" -#: cps/templates/email_edit.html:70 cps/templates/layout.html:29 +#: cps/templates/email_edit.html:70 cps/templates/layout.html:30 #: cps/templates/shelf_order.html:42 cps/templates/user_table.html:174 msgid "Back" msgstr "Назад" @@ -2473,7 +2572,7 @@ msgstr "Введите доменное имя" msgid "Denied Domains (Blacklist)" msgstr "Запрещенные домены (черный список)" -#: cps/templates/feed.xml:21 cps/templates/layout.html:170 +#: cps/templates/feed.xml:21 cps/templates/layout.html:171 msgid "Next" msgstr "Далее" @@ -2486,6 +2585,10 @@ msgstr "Откройте файл .kobo / Kobo eReader.conf в текстово msgid "Kobo Token:" msgstr "Kobo Sync Token" +#: cps/templates/grid.html:21 +msgid "List" +msgstr "" + #: cps/templates/http_error.html:31 #, fuzzy msgid "Calibre-Web Instance is unconfigured, please contact your administrator" @@ -2503,29 +2606,29 @@ msgstr "Вернуться на главную" msgid "Logout User" msgstr "" -#: cps/templates/index.html:70 +#: cps/templates/index.html:71 msgid "Sort ascending according to download count" msgstr "" -#: cps/templates/index.html:71 +#: cps/templates/index.html:72 msgid "Sort descending according to download count" msgstr "" -#: cps/templates/index.html:77 cps/templates/search.html:34 -#: cps/templates/shelf.html:23 -msgid "Sort authors in alphabetical order" -msgstr "" - #: cps/templates/index.html:78 cps/templates/search.html:35 #: cps/templates/shelf.html:24 +msgid "Sort authors in alphabetical order" +msgstr "" + +#: cps/templates/index.html:79 cps/templates/search.html:36 +#: cps/templates/shelf.html:25 msgid "Sort authors in reverse alphabetical order" msgstr "" -#: cps/templates/index.html:82 +#: cps/templates/index.html:83 msgid "Sort ascending according to series index" msgstr "" -#: cps/templates/index.html:83 +#: cps/templates/index.html:84 msgid "Sort descending according to series index" msgstr "" @@ -2589,7 +2692,7 @@ msgstr "Книги, упорядоченные по рейтингу" msgid "Books ordered by file formats" msgstr "Книги отсортированы по формату файла" -#: cps/templates/index.xml:119 cps/templates/layout.html:135 +#: cps/templates/index.xml:119 cps/templates/layout.html:136 #: cps/templates/search_form.html:87 msgid "Shelves" msgstr "Полки" @@ -2598,63 +2701,67 @@ msgstr "Полки" msgid "Books organized in shelves" msgstr "Книги организованы на полках" -#: cps/templates/layout.html:29 +#: cps/templates/layout.html:30 msgid "Home" msgstr "Главная" -#: cps/templates/layout.html:35 +#: cps/templates/layout.html:36 msgid "Toggle Navigation" msgstr "Включить навигацию" -#: cps/templates/layout.html:46 +#: cps/templates/layout.html:47 msgid "Search Library" msgstr "Поиск в библиотеке" -#: cps/templates/layout.html:63 cps/templates/layout.html:117 +#: cps/templates/layout.html:64 cps/templates/layout.html:118 msgid "Uploading..." msgstr "Загружается..." -#: cps/templates/layout.html:63 +#: cps/templates/layout.html:64 msgid "Error" msgstr "Ошибка" -#: cps/templates/layout.html:63 +#: cps/templates/layout.html:64 msgid "Upload done, processing, please wait..." msgstr "Загрузка завершена, обработка, пожалуйста, подождите..." -#: cps/templates/layout.html:76 cps/templates/read.html:72 +#: cps/templates/layout.html:77 cps/templates/read.html:72 #: cps/templates/readcbr.html:84 cps/templates/readcbr.html:108 msgid "Settings" msgstr "Настройки" -#: cps/templates/layout.html:78 +#: cps/templates/layout.html:79 msgid "Account" msgstr "Учетная запись" -#: cps/templates/layout.html:80 +#: cps/templates/layout.html:81 msgid "Logout" msgstr "Выход" -#: cps/templates/layout.html:118 +#: cps/templates/layout.html:119 msgid "Please do not refresh the page" msgstr "Пожалуйста не обновляйте страницу" -#: cps/templates/layout.html:128 +#: cps/templates/layout.html:129 msgid "Browse" msgstr "Просмотр" -#: cps/templates/layout.html:141 cps/templates/stats.html:3 +#: cps/templates/layout.html:142 cps/templates/stats.html:3 msgid "About" msgstr "О программе" -#: cps/templates/layout.html:155 +#: cps/templates/layout.html:156 msgid "Previous" msgstr "Предыдущий" -#: cps/templates/layout.html:182 +#: cps/templates/layout.html:183 msgid "Book Details" msgstr "Подробнее о книге" +#: cps/templates/list.html:22 +msgid "Grid" +msgstr "" + #: cps/templates/login.html:18 msgid "Remember Me" msgstr "Запомнить меня" @@ -2759,7 +2866,7 @@ msgstr "" msgid "Select" msgstr "" -#: cps/templates/modal_dialogs.html:134 +#: cps/templates/modal_dialogs.html:134 cps/templates/tasks.html:45 #, fuzzy msgid "Ok" msgstr "Книга" @@ -2941,15 +3048,23 @@ msgstr "После этого вы автоматически войдете в msgid "This verification link will expire in 10 minutes." msgstr "Срок действия ссылки истекает через 10 минут." -#: cps/templates/search.html:5 +#: cps/templates/schedule_edit.html:29 +msgid "Generate Book Cover Thumbnails" +msgstr "" + +#: cps/templates/schedule_edit.html:33 +msgid "Generate Series Cover Thumbnails" +msgstr "" + +#: cps/templates/search.html:6 msgid "No Results Found" msgstr "Результаты не найдены" -#: cps/templates/search.html:6 +#: cps/templates/search.html:7 msgid "Search Term:" msgstr "Выражение для поиска:" -#: cps/templates/search.html:8 +#: cps/templates/search.html:9 msgid "Results for:" msgstr "Результаты для:" @@ -3002,23 +3117,23 @@ msgstr "" msgid "To:" msgstr "" -#: cps/templates/shelf.html:12 +#: cps/templates/shelf.html:13 msgid "Delete this Shelf" msgstr "Удалить эту книжную полку" -#: cps/templates/shelf.html:13 +#: cps/templates/shelf.html:14 msgid "Edit Shelf Properties" msgstr "" -#: cps/templates/shelf.html:16 +#: cps/templates/shelf.html:17 msgid "Arrange books manually" msgstr "" -#: cps/templates/shelf.html:17 +#: cps/templates/shelf.html:18 msgid "Disable Change order" msgstr "" -#: cps/templates/shelf.html:17 +#: cps/templates/shelf.html:18 msgid "Enable Change order" msgstr "" @@ -3063,8 +3178,8 @@ msgid "System Statistics" msgstr "" #: cps/templates/stats.html:33 -msgid "Program Library" -msgstr "Программа" +msgid "Program" +msgstr "" #: cps/templates/stats.html:34 msgid "Installed Version" @@ -3094,6 +3209,18 @@ msgstr "Время выполнения" msgid "Start Time" msgstr "Время начала" +#: cps/templates/tasks.html:20 +msgid "Actions" +msgstr "" + +#: cps/templates/tasks.html:40 +msgid "This task will be cancelled. Any progress made by this task will be saved." +msgstr "" + +#: cps/templates/tasks.html:41 +msgid "If this is a scheduled task, it will be re-ran during the next scheduled time." +msgstr "" + #: cps/templates/user_edit.html:20 msgid "Reset user Password" msgstr "Сбросить пароль пользователя" diff --git a/cps/translations/sv/LC_MESSAGES/messages.mo b/cps/translations/sv/LC_MESSAGES/messages.mo index 1e216ed2d7d539b4eb2f67bcef3e11a318b272f9..595acfe18f2a1a9e6430bfe420ad52f188dfd4f5 100644 GIT binary patch delta 10957 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\n" "Language: sv\n" @@ -16,594 +16,619 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.9.1\n" +"Generated-By: Babel 2.8.0\n" -#: cps/about.py:86 +#: cps/about.py:84 msgid "Statistics" msgstr "Statistik" -#: cps/admin.py:141 +#: cps/admin.py:146 msgid "Server restarted, please reload page" msgstr "Server startas om, vänligen uppdatera sidan" -#: cps/admin.py:143 +#: cps/admin.py:148 msgid "Performing shutdown of server, please close window" msgstr "Stänger servern, vänligen stäng fönstret" -#: cps/admin.py:151 +#: cps/admin.py:156 msgid "Reconnect successful" msgstr "Återanslutning lyckades" -#: cps/admin.py:154 +#: cps/admin.py:159 msgid "Unknown command" msgstr "Okänt kommando" -#: cps/admin.py:176 cps/editbooks.py:713 cps/editbooks.py:892 -#: cps/editbooks.py:894 cps/editbooks.py:930 cps/editbooks.py:947 -#: cps/updater.py:608 cps/uploader.py:93 cps/uploader.py:103 +#: cps/admin.py:192 cps/editbooks.py:571 cps/editbooks.py:573 +#: cps/editbooks.py:609 cps/editbooks.py:626 cps/editbooks.py:1233 +#: cps/updater.py:613 cps/uploader.py:87 cps/uploader.py:97 msgid "Unknown" msgstr "Okänd" -#: cps/admin.py:197 +#: cps/admin.py:217 msgid "Admin page" msgstr "Administrationssida" -#: cps/admin.py:217 +#: cps/admin.py:237 msgid "Basic Configuration" msgstr "Grundläggande konfiguration" -#: cps/admin.py:255 +#: cps/admin.py:275 msgid "UI Configuration" msgstr "Användargränssnitt konfiguration" -#: cps/admin.py:289 cps/templates/admin.html:51 +#: cps/admin.py:309 cps/templates/admin.html:51 msgid "Edit Users" msgstr "Redigera användare" -#: cps/admin.py:333 cps/opds.py:529 cps/templates/grid.html:13 +#: cps/admin.py:353 cps/opds.py:532 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "Alla" -#: cps/admin.py:360 cps/admin.py:1648 +#: cps/admin.py:380 cps/admin.py:1365 msgid "User not found" msgstr "Användaren hittades inte" -#: cps/admin.py:374 +#: cps/admin.py:394 msgid "{} users deleted successfully" msgstr "{} användare har tagits bort" -#: cps/admin.py:397 cps/templates/config_view_edit.html:133 +#: cps/admin.py:417 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:418 cps/admin.py:424 +#: cps/admin.py:438 cps/admin.py:444 msgid "Malformed request" msgstr "Felaktig begäran" -#: cps/admin.py:436 cps/admin.py:1526 +#: cps/admin.py:456 cps/admin.py:1962 msgid "Guest Name can't be changed" msgstr "Gästnamn kan inte ändras" -#: cps/admin.py:448 +#: cps/admin.py:468 msgid "Guest can't have this role" msgstr "Gäst kan inte ha den här rollen" -#: cps/admin.py:460 cps/admin.py:1484 +#: cps/admin.py:480 cps/admin.py:1920 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:464 cps/admin.py:478 +#: cps/admin.py:484 cps/admin.py:498 msgid "Value has to be true or false" msgstr "Värdet måste vara sant eller falskt" -#: cps/admin.py:466 +#: cps/admin.py:486 msgid "Invalid role" msgstr "Ogiltig roll" -#: cps/admin.py:470 +#: cps/admin.py:490 msgid "Guest can't have this view" msgstr "Gästen kan inte ha den här vyn" -#: cps/admin.py:480 +#: cps/admin.py:500 msgid "Invalid view" msgstr "Ogiltig vy" -#: cps/admin.py:483 +#: cps/admin.py:503 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:487 +#: cps/admin.py:507 msgid "No Valid Locale Given" msgstr "Inget giltigt språk anges" -#: cps/admin.py:498 +#: cps/admin.py:518 msgid "No Valid Book Language Given" msgstr "Inget giltigt bokspråk anges" -#: cps/admin.py:500 cps/editbooks.py:1267 +#: cps/admin.py:520 cps/editbooks.py:438 msgid "Parameter not found" msgstr "Parameter hittades inte" -#: cps/admin.py:553 +#: cps/admin.py:557 #, fuzzy msgid "Invalid Read Column" msgstr "Ogiltig roll" -#: cps/admin.py:559 +#: cps/admin.py:563 msgid "Invalid Restricted Column" msgstr "" -#: cps/admin.py:579 cps/admin.py:1355 +#: cps/admin.py:583 cps/admin.py:1791 msgid "Calibre-Web configuration updated" msgstr "Calibre-Web konfiguration uppdaterad" -#: cps/admin.py:591 +#: cps/admin.py:595 msgid "Do you really want to delete the Kobo Token?" msgstr "Vill du verkligen ta bort Kobo-token?" -#: cps/admin.py:593 +#: cps/admin.py:597 msgid "Do you really want to delete this domain?" msgstr "Vill du verkligen ta bort den här domänen?" -#: cps/admin.py:595 +#: cps/admin.py:599 msgid "Do you really want to delete this user?" msgstr "Vill du verkligen ta bort den här användaren?" -#: cps/admin.py:597 +#: cps/admin.py:601 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:599 +#: cps/admin.py:603 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:601 +#: cps/admin.py:605 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:603 +#: cps/admin.py:607 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:605 +#: cps/admin.py:609 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:607 +#: cps/admin.py:611 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:610 +#: cps/admin.py:614 #, 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:612 +#: cps/admin.py:616 #, 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:614 +#: cps/admin.py:618 +msgid "Calibre-Web will search for updated Covers and update Cover Thumbnails, this may take a while?" +msgstr "" + +#: cps/admin.py:620 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:764 -msgid "Tag not found" -msgstr "Taggen hittades inte" - -#: cps/admin.py:776 -msgid "Invalid Action" -msgstr "Ogiltig åtgärd" - -#: cps/admin.py:893 cps/admin.py:899 cps/admin.py:909 cps/admin.py:919 +#: cps/admin.py:862 cps/admin.py:868 cps/admin.py:878 cps/admin.py:888 #: 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:895 cps/admin.py:901 cps/admin.py:911 cps/admin.py:921 +#: cps/admin.py:864 cps/admin.py:870 cps/admin.py:880 cps/admin.py:890 #: 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:936 +#: cps/admin.py:905 msgid "{} sync entries deleted" msgstr "" -#: cps/admin.py:1059 +#: cps/admin.py:953 +msgid "Tag not found" +msgstr "Taggen hittades inte" + +#: cps/admin.py:965 +msgid "Invalid Action" +msgstr "Ogiltig åtgärd" + +#: cps/admin.py:1080 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "client_secrets.json är inte konfigurerad för webbapplikation" -#: cps/admin.py:1104 +#: cps/admin.py:1125 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:1110 +#: cps/admin.py:1131 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:1140 +#: cps/admin.py:1161 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:1146 +#: cps/admin.py:1167 #, 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:1149 +#: cps/admin.py:1170 msgid "Please Enter a LDAP Service Account" msgstr "" -#: cps/admin.py:1154 +#: cps/admin.py:1175 #, 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:1156 +#: cps/admin.py:1177 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "LDAP-gruppobjektfilter har omatchande parentes" -#: cps/admin.py:1160 +#: cps/admin.py:1181 #, 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:1162 +#: cps/admin.py:1183 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "LDAP-användarobjektfilter har omatchad parentes" -#: cps/admin.py:1169 +#: cps/admin.py:1190 #, 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:1171 +#: cps/admin.py:1192 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "Användarfilter för LDAP-medlemmar har omatchad parentes" -#: cps/admin.py:1178 +#: cps/admin.py:1199 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:1223 cps/admin.py:1339 cps/admin.py:1437 cps/admin.py:1554 -#: cps/admin.py:1623 cps/editbooks.py:678 cps/editbooks.py:882 -#: cps/editbooks.py:1130 cps/shelf.py:100 cps/shelf.py:160 cps/shelf.py:203 -#: cps/shelf.py:278 cps/shelf.py:343 cps/shelf.py:380 cps/shelf.py:456 -#: cps/web.py:1742 -#, python-format -msgid "Database error: %(error)s." -msgstr "Databasfel: %(error)s." - -#: cps/admin.py:1235 -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:1253 -msgid "DB is not Writeable" -msgstr "DB är inte skrivbar" - -#: cps/admin.py:1266 -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:1270 -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:1378 -#, fuzzy -msgid "Database Settings updated" -msgstr "E-postserverinställningar uppdaterade" - -#: cps/admin.py:1386 -#, fuzzy -msgid "Database Configuration" -msgstr "Funktion konfiguration" - -#: cps/admin.py:1402 cps/web.py:1557 -msgid "Please fill out all fields!" -msgstr "Fyll i alla fält!" - -#: cps/admin.py:1410 -msgid "E-mail is not from valid domain" -msgstr "E-posten är inte från giltig domän" - -#: cps/admin.py:1416 cps/admin.py:1576 +#: cps/admin.py:1230 cps/admin.py:1852 msgid "Add new user" msgstr "Lägg till ny användare" -#: cps/admin.py:1427 -#, python-format -msgid "User '%(user)s' created" -msgstr "Användaren '%(user)s' skapad" - -#: cps/admin.py:1433 -msgid "Found an existing account for this e-mail address or name." -msgstr "Hittade ett befintligt konto för den här e-postadressen eller namnet." - -#: cps/admin.py:1463 -#, python-format -msgid "User '%(nick)s' deleted" -msgstr "Användaren '%(nick)s' borttagen" - -#: cps/admin.py:1465 cps/admin.py:1466 -msgid "Can't delete Guest User" -msgstr "Det går inte att ta bort gästanvändaren" - -#: cps/admin.py:1469 -msgid "No admin user remaining, can't delete user" -msgstr "Ingen adminstratörsanvändare kvar, kan inte ta bort användaren" - -#: cps/admin.py:1542 cps/admin.py:1667 -#, python-format -msgid "Edit User %(nick)s" -msgstr "Redigera användaren %(nick)s" - -#: cps/admin.py:1546 -#, python-format -msgid "User '%(nick)s' updated" -msgstr "Användaren '%(nick)s' uppdaterad" - -#: cps/admin.py:1550 cps/admin.py:1682 cps/web.py:1582 cps/web.py:1642 -msgid "An unknown error occurred. Please try again later." -msgstr "Ett okänt fel uppstod. Försök igen senare." - -#: cps/admin.py:1585 cps/templates/admin.html:100 +#: cps/admin.py:1239 cps/templates/admin.html:100 msgid "Edit E-mail Server Settings" msgstr "Ändra SMTP-inställningar" -#: cps/admin.py:1604 +#: cps/admin.py:1258 #, fuzzy msgid "Gmail Account Verification Successful" msgstr "Verifiering av G-mail-kontot lyckades" -#: cps/admin.py:1630 +#: cps/admin.py:1277 cps/admin.py:1658 cps/admin.py:1775 cps/admin.py:1873 +#: cps/admin.py:1990 cps/editbooks.py:227 cps/editbooks.py:301 +#: cps/editbooks.py:1196 cps/shelf.py:82 cps/shelf.py:142 cps/shelf.py:185 +#: cps/shelf.py:235 cps/shelf.py:272 cps/shelf.py:343 cps/shelf.py:457 +#: cps/tasks/convert.py:136 cps/web.py:1413 +#, python-format +msgid "Database error: %(error)s." +msgstr "Databasfel: %(error)s." + +#: cps/admin.py:1284 #, 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:1633 +#: cps/admin.py:1287 #, 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:1635 +#: cps/admin.py:1289 msgid "Please configure your e-mail address first..." msgstr "Vänligen konfigurera din e-postadress först..." -#: cps/admin.py:1637 +#: cps/admin.py:1291 msgid "E-mail server settings updated" msgstr "E-postserverinställningar uppdaterade" -#: cps/admin.py:1679 +#: cps/admin.py:1314 cps/templates/admin.html:191 +msgid "Edit Scheduled Tasks Settings" +msgstr "" + +#: cps/admin.py:1326 +msgid "Invalid start time for task specified" +msgstr "" + +#: cps/admin.py:1331 +msgid "Invalid duration for task specified" +msgstr "" + +#: cps/admin.py:1340 +msgid "Scheduled tasks settings updated" +msgstr "" + +#: cps/admin.py:1350 cps/admin.py:1399 cps/admin.py:1986 cps/web.py:1254 +#: cps/web.py:1315 +msgid "An unknown error occurred. Please try again later." +msgstr "Ett okänt fel uppstod. Försök igen senare." + +#: cps/admin.py:1354 +msgid "Settings DB is not Writeable" +msgstr "" + +#: cps/admin.py:1384 cps/admin.py:1978 +#, python-format +msgid "Edit User %(nick)s" +msgstr "Redigera användaren %(nick)s" + +#: cps/admin.py:1396 #, python-format msgid "Password for user %(user)s reset" msgstr "Lösenord för användaren %(user)s återställd" -#: cps/admin.py:1685 cps/web.py:1522 +#: cps/admin.py:1402 cps/web.py:1194 msgid "Please configure the SMTP mail settings first..." msgstr "Konfigurera SMTP-postinställningarna först..." -#: cps/admin.py:1696 +#: cps/admin.py:1413 msgid "Logfile viewer" msgstr "Visaren för loggfil" -#: cps/admin.py:1762 +#: cps/admin.py:1479 msgid "Requesting update package" msgstr "Begär uppdateringspaketet" -#: cps/admin.py:1763 +#: cps/admin.py:1480 msgid "Downloading update package" msgstr "Hämtar uppdateringspaketet" -#: cps/admin.py:1764 +#: cps/admin.py:1481 msgid "Unzipping update package" msgstr "Packar upp uppdateringspaketet" -#: cps/admin.py:1765 +#: cps/admin.py:1482 msgid "Replacing files" msgstr "Ersätta filer" -#: cps/admin.py:1766 +#: cps/admin.py:1483 msgid "Database connections are closed" msgstr "Databasanslutningarna är stängda" -#: cps/admin.py:1767 +#: cps/admin.py:1484 msgid "Stopping server" msgstr "Stoppar server" -#: cps/admin.py:1768 +#: cps/admin.py:1485 msgid "Update finished, please press okay and reload page" msgstr "Uppdatering klar, tryck på okej och uppdatera sidan" -#: cps/admin.py:1769 cps/admin.py:1770 cps/admin.py:1771 cps/admin.py:1772 -#: cps/admin.py:1773 cps/admin.py:1774 +#: cps/admin.py:1486 cps/admin.py:1487 cps/admin.py:1488 cps/admin.py:1489 +#: cps/admin.py:1490 cps/admin.py:1491 msgid "Update failed:" msgstr "Uppdateringen misslyckades:" -#: cps/admin.py:1769 cps/updater.py:384 cps/updater.py:619 cps/updater.py:621 +#: cps/admin.py:1486 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 msgid "HTTP Error" msgstr "HTTP-fel" -#: cps/admin.py:1770 cps/updater.py:386 cps/updater.py:623 +#: cps/admin.py:1487 cps/updater.py:391 cps/updater.py:628 msgid "Connection error" msgstr "Anslutningsfel" -#: cps/admin.py:1771 cps/updater.py:388 cps/updater.py:625 +#: cps/admin.py:1488 cps/updater.py:393 cps/updater.py:630 msgid "Timeout while establishing connection" msgstr "Tiden ute när du etablerade anslutning" -#: cps/admin.py:1772 cps/updater.py:390 cps/updater.py:627 +#: cps/admin.py:1489 cps/updater.py:395 cps/updater.py:632 msgid "General error" msgstr "Allmänt fel" -#: cps/admin.py:1773 +#: cps/admin.py:1490 #, fuzzy msgid "Update file could not be saved in temp dir" msgstr "Uppdateringsfilen kunde inte sparas i Temp Dir" -#: cps/admin.py:1774 +#: cps/admin.py:1491 msgid "Files could not be replaced during update" msgstr "" -#: cps/admin.py:1798 +#: cps/admin.py:1515 #, fuzzy msgid "Failed to extract at least One LDAP User" msgstr "Det gick inte att skapa minst en LDAP-användare" -#: cps/admin.py:1843 +#: cps/admin.py:1560 msgid "Failed to Create at Least One LDAP User" msgstr "Det gick inte att skapa minst en LDAP-användare" -#: cps/admin.py:1856 +#: cps/admin.py:1573 #, python-format msgid "Error: %(ldaperror)s" msgstr "Fel: %(ldaperror)s" -#: cps/admin.py:1860 +#: cps/admin.py:1577 msgid "Error: No user returned in response of LDAP server" msgstr "Fel: Ingen användare återges som svar på LDAP-servern" -#: cps/admin.py:1893 +#: cps/admin.py:1610 msgid "At Least One LDAP User Not Found in Database" msgstr "Minst en LDAP-användare hittades inte i databasen" -#: cps/admin.py:1895 +#: cps/admin.py:1612 msgid "{} User Successfully Imported" msgstr "{} användare har importerats" -#: cps/converter.py:30 +#: cps/admin.py:1670 +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:1689 +msgid "DB is not Writeable" +msgstr "DB är inte skrivbar" + +#: cps/admin.py:1702 +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:1706 +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:1814 +#, fuzzy +msgid "Database Settings updated" +msgstr "E-postserverinställningar uppdaterade" + +#: cps/admin.py:1822 +#, fuzzy +msgid "Database Configuration" +msgstr "Funktion konfiguration" + +#: cps/admin.py:1838 cps/web.py:1229 +msgid "Please fill out all fields!" +msgstr "Fyll i alla fält!" + +#: cps/admin.py:1846 +msgid "E-mail is not from valid domain" +msgstr "E-posten är inte från giltig domän" + +#: cps/admin.py:1863 +#, python-format +msgid "User '%(user)s' created" +msgstr "Användaren '%(user)s' skapad" + +#: cps/admin.py:1869 +msgid "Found an existing account for this e-mail address or name." +msgstr "Hittade ett befintligt konto för den här e-postadressen eller namnet." + +#: cps/admin.py:1899 +#, python-format +msgid "User '%(nick)s' deleted" +msgstr "Användaren '%(nick)s' borttagen" + +#: cps/admin.py:1901 cps/admin.py:1902 +msgid "Can't delete Guest User" +msgstr "Det går inte att ta bort gästanvändaren" + +#: cps/admin.py:1905 +msgid "No admin user remaining, can't delete user" +msgstr "Ingen adminstratörsanvändare kvar, kan inte ta bort användaren" + +#: cps/admin.py:1982 +#, python-format +msgid "User '%(nick)s' updated" +msgstr "Användaren '%(nick)s' uppdaterad" + +#: cps/converter.py:31 msgid "not installed" msgstr "inte installerad" -#: cps/converter.py:31 +#: cps/converter.py:32 msgid "Execution permissions missing" msgstr "Körningstillstånd saknas" -#: cps/db.py:674 cps/web.py:710 cps/web.py:1222 +#: cps/db.py:681 cps/search.py:134 cps/web.py:720 #, python-format msgid "Custom Column No.%(column)d is not existing in calibre database" msgstr "Anpassad kolumn n.%(column)d finns inte i calibre-databasen" -#: cps/db.py:917 cps/templates/config_edit.html:204 +#: cps/db.py:924 cps/templates/config_edit.html:204 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 -#: cps/web.py:551 cps/web.py:585 cps/web.py:646 cps/web.py:671 cps/web.py:1003 -#: cps/web.py:1032 cps/web.py:1066 cps/web.py:1093 cps/web.py:1132 +#: cps/web.py:549 cps/web.py:583 cps/web.py:656 cps/web.py:681 cps/web.py:962 +#: cps/web.py:992 cps/web.py:1027 cps/web.py:1055 cps/web.py:1094 msgid "None" msgstr "Ingen" -#: cps/editbooks.py:295 cps/editbooks.py:297 -msgid "Book Format Successfully Deleted" -msgstr "Bokformat har tagits bort" - -#: cps/editbooks.py:304 cps/editbooks.py:306 -msgid "Book Successfully Deleted" -msgstr "Boken har tagits bort" - -#: cps/editbooks.py:358 -msgid "You are missing permissions to delete books" -msgstr "" - -#: cps/editbooks.py:373 cps/editbooks.py:765 cps/web.py:518 cps/web.py:1783 -#: cps/web.py:1825 cps/web.py:1870 +#: cps/editbooks.py:109 cps/editbooks.py:890 cps/web.py:516 cps/web.py:1454 +#: cps/web.py:1496 cps/web.py:1541 msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible" msgstr "Hoppsan! Vald boktitel är inte tillgänglig. Filen finns inte eller är inte tillgänglig" -#: cps/editbooks.py:408 -msgid "edit metadata" -msgstr "redigera metadata" - -#: cps/editbooks.py:457 -#, python-format -msgid "%(seriesindex)s is not a valid number, skipping" -msgstr "" - -#: cps/editbooks.py:493 cps/editbooks.py:1001 -#, fuzzy, python-format -msgid "'%(langname)s' is not a valid language" -msgstr "%(langname)s är inte ett giltigt språk" - -#: cps/editbooks.py:634 -msgid "User has no rights to upload additional file formats" -msgstr "" - -#: cps/editbooks.py:639 cps/editbooks.py:1029 -#, 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:643 cps/editbooks.py:1033 -msgid "File to be uploaded must have an extension" -msgstr "Filen som ska laddas upp måste ha en ändelse" - -#: cps/editbooks.py:655 -#, 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:660 -#, python-format -msgid "Failed to store file %(file)s." -msgstr "Det gick inte att lagra filen %(file)s." - -#: cps/editbooks.py:683 -#, python-format -msgid "File format %(ext)s added to %(book)s" -msgstr "Filformatet %(ext)s lades till %(book)s" - -#: cps/editbooks.py:697 cps/editbooks.py:809 +#: cps/editbooks.py:153 cps/editbooks.py:1216 msgid "User has no rights to upload cover" msgstr "" -#: cps/editbooks.py:828 +#: cps/editbooks.py:173 cps/editbooks.py:711 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "Identifierare är inte skiftlägeskänsliga, skriver över gammal identifierare" -#: cps/editbooks.py:869 +#: cps/editbooks.py:214 msgid "Metadata successfully updated" msgstr "Metadata uppdaterades" -#: cps/editbooks.py:887 +#: cps/editbooks.py:232 msgid "Error editing book: {}" msgstr "" -#: cps/editbooks.py:951 -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:1041 -#, 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:1061 -#, 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:1117 +#: cps/editbooks.py:287 #, python-format msgid "File %(file)s uploaded" msgstr "Filen %(file)s uppladdad" -#: cps/editbooks.py:1143 +#: cps/editbooks.py:314 msgid "Source or destination format for conversion missing" msgstr "Källa eller målformat för konvertering saknas" -#: cps/editbooks.py:1151 +#: cps/editbooks.py:322 #, 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:1155 +#: cps/editbooks.py:326 #, 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:630 +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:685 cps/editbooks.py:1010 +#, fuzzy, python-format +msgid "'%(langname)s' is not a valid language" +msgstr "%(langname)s är inte ett giltigt språk" + +#: cps/editbooks.py:723 cps/editbooks.py:1157 +#, 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:727 cps/editbooks.py:1161 +msgid "File to be uploaded must have an extension" +msgstr "Filen som ska laddas upp måste ha en ändelse" + +#: cps/editbooks.py:735 +#, 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:755 +#, 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:812 cps/editbooks.py:814 +msgid "Book Format Successfully Deleted" +msgstr "Bokformat har tagits bort" + +#: cps/editbooks.py:821 cps/editbooks.py:823 +msgid "Book Successfully Deleted" +msgstr "Boken har tagits bort" + +#: cps/editbooks.py:875 +msgid "You are missing permissions to delete books" +msgstr "" + +#: cps/editbooks.py:925 +msgid "edit metadata" +msgstr "redigera metadata" + +#: cps/editbooks.py:974 +#, python-format +msgid "%(seriesindex)s is not a valid number, skipping" +msgstr "" + +#: cps/editbooks.py:1152 +msgid "User has no rights to upload additional file formats" +msgstr "" + +#: cps/editbooks.py:1173 +#, 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:1178 +#, python-format +msgid "Failed to store file %(file)s." +msgstr "Det gick inte att lagra filen %(file)s." + +#: cps/editbooks.py:1201 +#, python-format +msgid "File format %(ext)s added to %(book)s" +msgstr "Filformatet %(ext)s lades till %(book)s" + #: cps/gdrive.py:58 msgid "Google Drive setup not completed, try to deactivate and activate Google Drive again" msgstr "Installationen av Google Drive är inte klar, försök att inaktivera och aktivera Google Drive igen" @@ -612,27 +637,27 @@ 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:81 +#: cps/helper.py:80 #, 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:87 cps/tasks/convert.py:75 +#: cps/helper.py:86 cps/tasks/convert.py:75 #, 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:92 +#: cps/helper.py:91 #, python-format msgid "%(format)s not found: %(fn)s" msgstr "%(format)s hittades inte: %(fn)s" -#: cps/helper.py:97 cps/helper.py:221 cps/templates/detail.html:41 -#: cps/templates/detail.html:45 +#: cps/helper.py:96 cps/helper.py:221 cps/templates/detail.html:42 +#: cps/templates/detail.html:46 msgid "Send to Kindle" msgstr "Skicka till Kindle" -#: cps/helper.py:98 cps/helper.py:115 cps/helper.py:223 +#: cps/helper.py:97 cps/helper.py:115 cps/helper.py:223 msgid "This e-mail has been sent via Calibre-Web." msgstr "Detta e-postmeddelande har skickats via Calibre-Web." @@ -672,131 +697,111 @@ msgstr "Skicka till Kindle" 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:353 +#: cps/helper.py:341 msgid "Read status could not set: {}" msgstr "" -#: cps/helper.py:376 +#: cps/helper.py:364 #, 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:382 +#: cps/helper.py:370 #, python-format msgid "Deleting book %(id)s failed: %(message)s" msgstr "Borttagning av boken %(id)s misslyckades: %(message)s" -#: cps/helper.py:393 +#: cps/helper.py:381 #, 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:458 +#: cps/helper.py:446 #, 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:529 cps/helper.py:538 +#: cps/helper.py:518 cps/helper.py:527 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "Filen %(file)s hittades inte på Google Drive" -#: cps/helper.py:572 +#: cps/helper.py:561 #, 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:592 +#: cps/helper.py:581 msgid "Error in rename file in path: {}" msgstr "" -#: cps/helper.py:610 +#: cps/helper.py:599 #, 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:651 cps/web.py:1737 +#: cps/helper.py:640 cps/web.py:1408 msgid "Found an existing account for this e-mail address" msgstr "Hittade ett befintligt konto för den här e-postadressen" -#: cps/helper.py:659 +#: cps/helper.py:648 msgid "This username is already taken" msgstr "Detta användarnamn är redan taget" -#: cps/helper.py:669 +#: cps/helper.py:658 msgid "Invalid e-mail address format" msgstr "Ogiltigt e-postadressformat" -#: cps/helper.py:754 -msgid "Python modul 'advocate' is not installed but is needed for cover downloads" +#: cps/helper.py:808 +msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "" -#: cps/helper.py:767 +#: cps/helper.py:818 msgid "Error Downloading Cover" msgstr "Fel vid hämtning av omslaget" -#: cps/helper.py:770 +#: cps/helper.py:821 msgid "Cover Format Error" msgstr "Fel på omslagsformat" -#: cps/helper.py:773 +#: cps/helper.py:824 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "" -#: cps/helper.py:783 +#: cps/helper.py:834 msgid "Failed to create path for cover" msgstr "Det gick inte att skapa sökväg för omslag" -#: cps/helper.py:799 +#: cps/helper.py:850 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:810 +#: cps/helper.py:861 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:822 +#: cps/helper.py:873 msgid "Invalid cover file content" msgstr "" -#: cps/helper.py:826 +#: cps/helper.py:877 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "Endast jpg/jpeg-filer stöds som omslagsfil" -#: cps/helper.py:878 +#: cps/helper.py:929 msgid "Unrar binary file not found" msgstr "Unrar binär fil hittades inte" -#: cps/helper.py:889 +#: cps/helper.py:940 msgid "Error excecuting UnRar" msgstr "Fel vid körning av UnRar" -#: cps/helper.py:937 -msgid "Waiting" -msgstr "Väntar" - -#: cps/helper.py:939 -msgid "Failed" -msgstr "Misslyckades" - -#: cps/helper.py:941 -msgid "Started" -msgstr "Startad" - -#: cps/helper.py:943 -msgid "Finished" -msgstr "Klar" - -#: cps/helper.py:945 -msgid "Unknown Status" -msgstr "Okänd status" - -#: cps/kobo_auth.py:128 +#: cps/kobo_auth.py:89 #, fuzzy msgid "Please access Calibre-Web from non localhost to get valid api_endpoint for kobo device" msgstr "Vänligen få tillgång till calibre-web från icke localhost för att få giltig api_endpoint för Kobo-enhet" -#: cps/kobo_auth.py:154 +#: cps/kobo_auth.py:115 msgid "Kobo Setup" msgstr "Kobo-installation" @@ -805,7 +810,7 @@ msgstr "Kobo-installation" msgid "Register with %(provider)s" msgstr "Registrera dig med %(provider)s" -#: cps/oauth_bb.py:138 cps/remotelogin.py:130 cps/web.py:1613 +#: cps/oauth_bb.py:138 cps/remotelogin.py:130 cps/web.py:1286 #, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "du är nu inloggad som: \"%(nickname)s\"" @@ -866,12 +871,12 @@ msgstr "Google Oauth-fel, försök igen senare." msgid "Google Oauth error: {}" msgstr "Google Oauth-fel: {}" -#: cps/opds.py:298 +#: cps/opds.py:287 msgid "{} Stars" msgstr "{} stjärnor" -#: cps/remotelogin.py:62 cps/templates/layout.html:84 -#: cps/templates/login.html:4 cps/templates/login.html:21 cps/web.py:1662 +#: cps/remotelogin.py:62 cps/templates/layout.html:85 +#: cps/templates/login.html:4 cps/templates/login.html:21 cps/web.py:1335 msgid "Login" msgstr "Logga in" @@ -887,456 +892,489 @@ 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:41 cps/web.py:407 +#: cps/render_template.py:40 cps/web.py:405 msgid "Books" msgstr "Böcker" -#: cps/render_template.py:43 +#: cps/render_template.py:42 msgid "Show recent books" msgstr "Visa senaste böcker" -#: cps/render_template.py:44 cps/templates/index.xml:25 +#: cps/render_template.py:43 cps/templates/index.xml:25 msgid "Hot Books" msgstr "Heta böcker" -#: cps/render_template.py:46 +#: cps/render_template.py:45 msgid "Show Hot Books" msgstr "Visa heta böcker" -#: cps/render_template.py:48 cps/render_template.py:53 +#: cps/render_template.py:47 cps/render_template.py:52 msgid "Downloaded Books" msgstr "Hämtade böcker" -#: cps/render_template.py:50 cps/render_template.py:55 +#: cps/render_template.py:49 cps/render_template.py:54 #: cps/templates/user_table.html:167 msgid "Show Downloaded Books" msgstr "Visa hämtade böcker" -#: cps/render_template.py:58 cps/templates/index.xml:32 cps/web.py:422 +#: cps/render_template.py:57 cps/templates/index.xml:32 cps/web.py:420 msgid "Top Rated Books" msgstr "Bäst rankade böcker" -#: cps/render_template.py:60 cps/templates/user_table.html:161 +#: cps/render_template.py:59 cps/templates/user_table.html:161 msgid "Show Top Rated Books" msgstr "Visa böcker med bästa betyg" -#: cps/render_template.py:61 cps/templates/index.xml:54 -#: cps/templates/index.xml:58 cps/web.py:729 +#: cps/render_template.py:60 cps/templates/index.xml:54 +#: cps/templates/index.xml:58 cps/web.py:739 msgid "Read Books" msgstr "Lästa böcker" -#: cps/render_template.py:63 +#: cps/render_template.py:62 msgid "Show read and unread" msgstr "Visa lästa och olästa" -#: cps/render_template.py:65 cps/templates/index.xml:61 -#: cps/templates/index.xml:65 cps/web.py:732 +#: cps/render_template.py:64 cps/templates/index.xml:61 +#: cps/templates/index.xml:65 cps/web.py:742 msgid "Unread Books" msgstr "Olästa böcker" -#: cps/render_template.py:67 +#: cps/render_template.py:66 msgid "Show unread" msgstr "Visa olästa" -#: cps/render_template.py:68 +#: cps/render_template.py:67 msgid "Discover" msgstr "Upptäck" -#: cps/render_template.py:70 cps/templates/index.xml:50 +#: cps/render_template.py:69 cps/templates/index.xml:50 #: cps/templates/user_table.html:162 msgid "Show Random Books" msgstr "Visa slumpmässiga böcker" -#: cps/render_template.py:71 cps/templates/book_table.html:67 -#: cps/templates/index.xml:83 cps/web.py:1135 +#: cps/render_template.py:70 cps/templates/book_table.html:67 +#: cps/templates/index.xml:83 cps/web.py:1098 msgid "Categories" msgstr "Kategorier" -#: cps/render_template.py:73 cps/templates/user_table.html:158 +#: cps/render_template.py:72 cps/templates/user_table.html:158 msgid "Show category selection" msgstr "Visa kategorival" -#: cps/render_template.py:74 cps/templates/book_edit.html:90 +#: cps/render_template.py:73 cps/templates/book_edit.html:91 #: cps/templates/book_table.html:68 cps/templates/index.xml:90 -#: cps/templates/search_form.html:69 cps/web.py:1034 cps/web.py:1041 +#: cps/templates/search_form.html:69 cps/web.py:995 cps/web.py:1002 msgid "Series" msgstr "Serier" -#: cps/render_template.py:76 cps/templates/user_table.html:157 +#: cps/render_template.py:75 cps/templates/user_table.html:157 msgid "Show series selection" msgstr "Visa serieval" -#: cps/render_template.py:77 cps/templates/book_table.html:66 +#: cps/render_template.py:76 cps/templates/book_table.html:66 #: cps/templates/index.xml:69 msgid "Authors" msgstr "Författare" -#: cps/render_template.py:79 cps/templates/user_table.html:160 +#: cps/render_template.py:78 cps/templates/user_table.html:160 msgid "Show author selection" msgstr "Visa författarval" -#: cps/render_template.py:81 cps/templates/book_table.html:72 -#: cps/templates/index.xml:76 cps/web.py:1006 +#: cps/render_template.py:80 cps/templates/book_table.html:72 +#: cps/templates/index.xml:76 cps/web.py:966 msgid "Publishers" msgstr "Förlag" -#: cps/render_template.py:83 cps/templates/user_table.html:163 +#: cps/render_template.py:82 cps/templates/user_table.html:163 msgid "Show publisher selection" msgstr "Visa urval av förlag" -#: cps/render_template.py:84 cps/templates/book_table.html:70 +#: cps/render_template.py:83 cps/templates/book_table.html:70 #: cps/templates/index.xml:97 cps/templates/search_form.html:107 -#: cps/web.py:1108 +#: cps/web.py:1070 msgid "Languages" msgstr "Språk" -#: cps/render_template.py:87 cps/templates/user_table.html:155 +#: cps/render_template.py:86 cps/templates/user_table.html:155 msgid "Show language selection" msgstr "Visa språkval" -#: cps/render_template.py:88 cps/templates/index.xml:104 +#: cps/render_template.py:87 cps/templates/index.xml:104 msgid "Ratings" msgstr "Betyg" -#: cps/render_template.py:90 cps/templates/user_table.html:164 +#: cps/render_template.py:89 cps/templates/user_table.html:164 msgid "Show ratings selection" msgstr "Visa val av betyg" -#: cps/render_template.py:91 cps/templates/index.xml:112 +#: cps/render_template.py:90 cps/templates/index.xml:112 msgid "File formats" msgstr "Filformat" -#: cps/render_template.py:93 cps/templates/user_table.html:165 +#: cps/render_template.py:92 cps/templates/user_table.html:165 msgid "Show file formats selection" msgstr "Visa val av filformat" -#: cps/render_template.py:95 cps/web.py:755 +#: cps/render_template.py:94 cps/web.py:765 msgid "Archived Books" msgstr "Arkiverade böcker" -#: cps/render_template.py:97 cps/templates/user_table.html:166 +#: cps/render_template.py:96 cps/templates/user_table.html:166 msgid "Show archived books" msgstr "Visa arkiverade böcker" -#: cps/render_template.py:100 cps/web.py:837 +#: cps/render_template.py:99 cps/web.py:796 msgid "Books List" msgstr "Boklista" -#: cps/render_template.py:102 cps/templates/user_table.html:168 +#: cps/render_template.py:101 cps/templates/user_table.html:168 msgid "Show Books List" msgstr "Visa boklista" -#: cps/shelf.py:67 cps/shelf.py:121 -msgid "Invalid shelf specified" -msgstr "Ogiltig hylla specificerad" - -#: cps/shelf.py:73 -#, fuzzy -msgid "Sorry you are not allowed to add a book to that shelf" -msgstr "Tyvärr får du inte lägga till en bok på hyllan: %(shelfname)s" - -#: cps/shelf.py:82 -#, python-format -msgid "Book is already part of the shelf: %(shelfname)s" -msgstr "Boken är redan en del av hyllan: %(shelfname)s" - -#: cps/shelf.py:107 -#, python-format -msgid "Book has been added to shelf: %(sname)s" -msgstr "Boken har lagts till i hyllan: %(sname)s" - -#: cps/shelf.py:126 -msgid "You are not allowed to add a book to the shelf" -msgstr "" - -#: cps/shelf.py:144 -#, python-format -msgid "Books are already part of the shelf: %(name)s" -msgstr "Böcker är redan en del av hyllan: %(name)s" - -#: cps/shelf.py:156 -#, python-format -msgid "Books have been added to shelf: %(sname)s" -msgstr "Böcker har lagts till hyllan: %(sname)s" - -#: cps/shelf.py:163 -#, python-format -msgid "Could not add books to shelf: %(sname)s" -msgstr "Kunde inte lägga till böcker till hyllan: %(sname)s" - -#: cps/shelf.py:209 -#, python-format -msgid "Book has been removed from shelf: %(sname)s" -msgstr "Boken har tagits bort från hyllan: %(sname)s" - -#: cps/shelf.py:218 -msgid "Sorry you are not allowed to remove a book from this shelf" -msgstr "" - -#: cps/shelf.py:228 cps/templates/layout.html:140 -msgid "Create a Shelf" -msgstr "Skapa en hylla" - -#: cps/shelf.py:236 -#, fuzzy -msgid "Sorry you are not allowed to edit this shelf" -msgstr "Tyvärr har du inte rätt att ta bort en bok från den här hyllan: %(sname)s" - -#: cps/shelf.py:238 -msgid "Edit a shelf" -msgstr "Redigera en hylla" - -#: cps/shelf.py:248 -msgid "Sorry you are not allowed to create a public shelf" -msgstr "" - -#: cps/shelf.py:265 -#, python-format -msgid "Shelf %(title)s created" -msgstr "Hyllan %(title)s skapad" - -#: cps/shelf.py:268 -#, python-format -msgid "Shelf %(title)s changed" -msgstr "Hyllan %(title)s ändrad" - -#: cps/shelf.py:282 -msgid "There was an error" -msgstr "Det fanns ett fel" - -#: cps/shelf.py:304 -#, python-format -msgid "A public shelf with the name '%(title)s' already exists." -msgstr "En offentlig hylla med namnet \"%(title)s\" finns redan." - -#: cps/shelf.py:315 -#, python-format -msgid "A private shelf with the name '%(title)s' already exists." -msgstr "En privat hylla med namnet \"%(title)s\" finns redan." - -#: cps/shelf.py:337 -msgid "Error deleting Shelf" -msgstr "" - -#: cps/shelf.py:339 -#, fuzzy -msgid "Shelf successfully deleted" -msgstr "Boken har tagits bort" - -#: cps/shelf.py:389 -#, python-format -msgid "Change order of Shelf: '%(name)s'" -msgstr "Ändra ordning på hyllan: '%(name)s'" - -#: cps/shelf.py:461 -#, python-format -msgid "Shelf: '%(name)s'" -msgstr "Hylla: '%(name)s'" - -#: cps/shelf.py:465 -msgid "Error opening shelf. Shelf does not exist or is not accessible" -msgstr "Fel vid öppning av hyllan. Hylla finns inte eller är inte tillgänglig" - -#: cps/updater.py:426 cps/updater.py:437 cps/updater.py:538 cps/updater.py:553 -msgid "Unexpected data while reading update information" -msgstr "Oväntade data vid läsning av uppdateringsinformation" - -#: cps/updater.py:433 cps/updater.py:545 -msgid "No update available. You already have the latest version installed" -msgstr "Ingen uppdatering tillgänglig. Du har redan den senaste versionen installerad" - -#: cps/updater.py:451 -msgid "A new update is available. Click on the button below to update to the latest version." -msgstr "En ny uppdatering är tillgänglig. Klicka på knappen nedan för att uppdatera till den senaste versionen." - -#: cps/updater.py:469 -msgid "Could not fetch update information" -msgstr "Kunde inte hämta uppdateringsinformation" - -#: cps/updater.py:479 -msgid "Click on the button below to update to the latest stable version." -msgstr "Klicka på knappen nedan för att uppdatera till den senaste stabila versionen." - -#: cps/updater.py:488 cps/updater.py:502 cps/updater.py:513 -#, python-format -msgid "A new update is available. Click on the button below to update to version: %(version)s" -msgstr "En ny uppdatering är tillgänglig. Klicka på knappen nedan för att uppdatera till version: %(version)s" - -#: cps/updater.py:531 -msgid "No release information available" -msgstr "Ingen versionsinformation tillgänglig" - -#: cps/templates/index.html:5 cps/web.py:434 -msgid "Discover (Random Books)" -msgstr "Upptäck (slumpmässiga böcker)" - -#: cps/web.py:470 -msgid "Hot Books (Most Downloaded)" -msgstr "Heta böcker (mest hämtade)" - -#: cps/web.py:501 -#, python-format -msgid "Downloaded books by %(user)s" -msgstr "Hämtade böcker av %(user)s" - -#: cps/web.py:534 -#, python-format -msgid "Author: %(name)s" -msgstr "Författare: %(name)s" - -#: cps/web.py:570 -#, python-format -msgid "Publisher: %(name)s" -msgstr "Förlag: %(name)s" - -#: cps/web.py:598 -#, python-format -msgid "Series: %(serie)s" -msgstr "Serier: %(serie)s" - -#: cps/web.py:610 -#, python-format -msgid "Rating: %(rating)s stars" -msgstr "Betyg: %(rating)s stars" - -#: cps/web.py:626 -#, python-format -msgid "File format: %(format)s" -msgstr "Filformat: %(format)s" - -#: cps/web.py:663 -#, python-format -msgid "Category: %(name)s" -msgstr "Kategori: %(name)s" - -#: cps/web.py:690 -#, python-format -msgid "Language: %(name)s" -msgstr "Språk: %(name)s" - -#: cps/templates/layout.html:56 cps/web.py:789 cps/web.py:1444 -msgid "Advanced Search" -msgstr "Avancerad sökning" - -#: cps/templates/book_edit.html:235 cps/templates/feed.xml:33 -#: cps/templates/index.xml:11 cps/templates/layout.html:45 -#: cps/templates/layout.html:48 cps/templates/search_form.html:226 -#: cps/web.py:807 cps/web.py:1164 +#: cps/search.py:48 cps/search.py:414 cps/templates/book_edit.html:236 +#: cps/templates/feed.xml:33 cps/templates/index.xml:11 +#: cps/templates/layout.html:46 cps/templates/layout.html:49 +#: cps/templates/search_form.html:226 msgid "Search" msgstr "Sök" -#: cps/templates/admin.html:16 cps/web.py:979 -msgid "Downloads" -msgstr "Hämtningar" - -#: cps/web.py:1068 -msgid "Ratings list" -msgstr "Betygslista" - -#: cps/web.py:1095 -msgid "File formats list" -msgstr "Lista över filformat" - -#: cps/templates/layout.html:73 cps/templates/tasks.html:7 cps/web.py:1149 -msgid "Tasks" -msgstr "Uppgifter" - -#: cps/web.py:1286 +#: cps/search.py:194 msgid "Published after " msgstr "Publicerad efter " -#: cps/web.py:1293 +#: cps/search.py:201 msgid "Published before " msgstr "Publicerad före " -#: cps/web.py:1315 +#: cps/search.py:223 #, python-format msgid "Rating <= %(rating)s" msgstr "Betyg <= %(rating)s" -#: cps/web.py:1317 +#: cps/search.py:225 #, python-format msgid "Rating >= %(rating)s" msgstr "Betyg >= %(rating)s" -#: cps/web.py:1319 +#: cps/search.py:227 #, python-format msgid "Read Status = %(status)s" msgstr "Lässtatus = %(status)s" -#: cps/web.py:1425 +#: cps/search.py:345 msgid "Error on search for custom columns, please restart Calibre-Web" msgstr "" -#: cps/web.py:1527 +#: cps/search.py:364 cps/search.py:396 cps/templates/layout.html:57 +msgid "Advanced Search" +msgstr "Avancerad sökning" + +#: cps/shelf.py:49 cps/shelf.py:103 +msgid "Invalid shelf specified" +msgstr "Ogiltig hylla specificerad" + +#: cps/shelf.py:55 +#, fuzzy +msgid "Sorry you are not allowed to add a book to that shelf" +msgstr "Tyvärr får du inte lägga till en bok på hyllan: %(shelfname)s" + +#: cps/shelf.py:64 +#, python-format +msgid "Book is already part of the shelf: %(shelfname)s" +msgstr "Boken är redan en del av hyllan: %(shelfname)s" + +#: cps/shelf.py:89 +#, python-format +msgid "Book has been added to shelf: %(sname)s" +msgstr "Boken har lagts till i hyllan: %(sname)s" + +#: cps/shelf.py:108 +msgid "You are not allowed to add a book to the shelf" +msgstr "" + +#: cps/shelf.py:126 +#, python-format +msgid "Books are already part of the shelf: %(name)s" +msgstr "Böcker är redan en del av hyllan: %(name)s" + +#: cps/shelf.py:138 +#, python-format +msgid "Books have been added to shelf: %(sname)s" +msgstr "Böcker har lagts till hyllan: %(sname)s" + +#: cps/shelf.py:145 +#, python-format +msgid "Could not add books to shelf: %(sname)s" +msgstr "Kunde inte lägga till böcker till hyllan: %(sname)s" + +#: cps/shelf.py:191 +#, python-format +msgid "Book has been removed from shelf: %(sname)s" +msgstr "Boken har tagits bort från hyllan: %(sname)s" + +#: cps/shelf.py:200 +msgid "Sorry you are not allowed to remove a book from this shelf" +msgstr "" + +#: cps/shelf.py:210 cps/templates/layout.html:141 +msgid "Create a Shelf" +msgstr "Skapa en hylla" + +#: cps/shelf.py:218 +#, fuzzy +msgid "Sorry you are not allowed to edit this shelf" +msgstr "Tyvärr har du inte rätt att ta bort en bok från den här hyllan: %(sname)s" + +#: cps/shelf.py:220 +msgid "Edit a shelf" +msgstr "Redigera en hylla" + +#: cps/shelf.py:229 +msgid "Error deleting Shelf" +msgstr "" + +#: cps/shelf.py:231 +#, fuzzy +msgid "Shelf successfully deleted" +msgstr "Boken har tagits bort" + +#: cps/shelf.py:281 +#, python-format +msgid "Change order of Shelf: '%(name)s'" +msgstr "Ändra ordning på hyllan: '%(name)s'" + +#: cps/shelf.py:313 +msgid "Sorry you are not allowed to create a public shelf" +msgstr "" + +#: cps/shelf.py:330 +#, python-format +msgid "Shelf %(title)s created" +msgstr "Hyllan %(title)s skapad" + +#: cps/shelf.py:333 +#, python-format +msgid "Shelf %(title)s changed" +msgstr "Hyllan %(title)s ändrad" + +#: cps/shelf.py:347 +msgid "There was an error" +msgstr "Det fanns ett fel" + +#: cps/shelf.py:369 +#, python-format +msgid "A public shelf with the name '%(title)s' already exists." +msgstr "En offentlig hylla med namnet \"%(title)s\" finns redan." + +#: cps/shelf.py:380 +#, python-format +msgid "A private shelf with the name '%(title)s' already exists." +msgstr "En privat hylla med namnet \"%(title)s\" finns redan." + +#: cps/shelf.py:462 +#, python-format +msgid "Shelf: '%(name)s'" +msgstr "Hylla: '%(name)s'" + +#: cps/shelf.py:466 +msgid "Error opening shelf. Shelf does not exist or is not accessible" +msgstr "Fel vid öppning av hyllan. Hylla finns inte eller är inte tillgänglig" + +#: cps/tasks_status.py:48 cps/templates/layout.html:74 +#: cps/templates/tasks.html:7 +msgid "Tasks" +msgstr "Uppgifter" + +#: cps/tasks_status.py:64 +msgid "Waiting" +msgstr "Väntar" + +#: cps/tasks_status.py:66 +msgid "Failed" +msgstr "Misslyckades" + +#: cps/tasks_status.py:68 +msgid "Started" +msgstr "Startad" + +#: cps/tasks_status.py:70 +msgid "Finished" +msgstr "Klar" + +#: cps/tasks_status.py:72 +msgid "Ended" +msgstr "" + +#: cps/tasks_status.py:74 +msgid "Cancelled" +msgstr "" + +#: cps/tasks_status.py:76 +msgid "Unknown Status" +msgstr "Okänd status" + +#: cps/updater.py:431 cps/updater.py:442 cps/updater.py:543 cps/updater.py:558 +msgid "Unexpected data while reading update information" +msgstr "Oväntade data vid läsning av uppdateringsinformation" + +#: cps/updater.py:438 cps/updater.py:550 +msgid "No update available. You already have the latest version installed" +msgstr "Ingen uppdatering tillgänglig. Du har redan den senaste versionen installerad" + +#: cps/updater.py:456 +msgid "A new update is available. Click on the button below to update to the latest version." +msgstr "En ny uppdatering är tillgänglig. Klicka på knappen nedan för att uppdatera till den senaste versionen." + +#: cps/updater.py:474 +msgid "Could not fetch update information" +msgstr "Kunde inte hämta uppdateringsinformation" + +#: cps/updater.py:484 +msgid "Click on the button below to update to the latest stable version." +msgstr "Klicka på knappen nedan för att uppdatera till den senaste stabila versionen." + +#: cps/updater.py:493 cps/updater.py:507 cps/updater.py:518 +#, python-format +msgid "A new update is available. Click on the button below to update to version: %(version)s" +msgstr "En ny uppdatering är tillgänglig. Klicka på knappen nedan för att uppdatera till version: %(version)s" + +#: cps/updater.py:536 +msgid "No release information available" +msgstr "Ingen versionsinformation tillgänglig" + +#: cps/templates/index.html:6 cps/web.py:432 +msgid "Discover (Random Books)" +msgstr "Upptäck (slumpmässiga böcker)" + +#: cps/web.py:468 +msgid "Hot Books (Most Downloaded)" +msgstr "Heta böcker (mest hämtade)" + +#: cps/web.py:499 +#, python-format +msgid "Downloaded books by %(user)s" +msgstr "Hämtade böcker av %(user)s" + +#: cps/web.py:532 +#, python-format +msgid "Author: %(name)s" +msgstr "Författare: %(name)s" + +#: cps/web.py:568 +#, python-format +msgid "Publisher: %(name)s" +msgstr "Förlag: %(name)s" + +#: cps/web.py:596 +#, python-format +msgid "Series: %(serie)s" +msgstr "Serier: %(serie)s" + +#: cps/web.py:609 +msgid "Rating: None" +msgstr "" + +#: cps/web.py:618 +#, python-format +msgid "Rating: %(rating)s stars" +msgstr "Betyg: %(rating)s stars" + +#: cps/web.py:636 +#, python-format +msgid "File format: %(format)s" +msgstr "Filformat: %(format)s" + +#: cps/web.py:673 +#, python-format +msgid "Category: %(name)s" +msgstr "Kategori: %(name)s" + +#: cps/web.py:700 +#, python-format +msgid "Language: %(name)s" +msgstr "Språk: %(name)s" + +#: cps/templates/admin.html:16 cps/web.py:938 +msgid "Downloads" +msgstr "Hämtningar" + +#: cps/web.py:1030 +msgid "Ratings list" +msgstr "Betygslista" + +#: cps/web.py:1057 +msgid "File formats list" +msgstr "Lista över filformat" + +#: cps/web.py:1199 #, python-format msgid "Book successfully queued for sending to %(kindlemail)s" msgstr "Boken är i kö för att skicka till %(kindlemail)s" -#: cps/web.py:1531 +#: cps/web.py:1203 #, python-format msgid "Oops! There was an error sending this book: %(res)s" msgstr "Det gick inte att skicka den här boken: %(res)s" -#: cps/web.py:1533 +#: cps/web.py:1205 msgid "Please update your profile with a valid Send to Kindle E-mail Address." msgstr "Konfigurera din kindle-e-postadress först..." -#: cps/web.py:1550 +#: cps/web.py:1222 msgid "E-Mail server is not configured, please contact your administrator!" msgstr "E-postservern är inte konfigurerad, kontakta din administratör!" -#: cps/templates/layout.html:85 cps/templates/register.html:17 cps/web.py:1551 -#: cps/web.py:1558 cps/web.py:1564 cps/web.py:1583 cps/web.py:1587 -#: cps/web.py:1593 +#: cps/templates/layout.html:86 cps/templates/register.html:17 cps/web.py:1223 +#: cps/web.py:1230 cps/web.py:1236 cps/web.py:1255 cps/web.py:1260 +#: cps/web.py:1266 msgid "Register" msgstr "Registrera" -#: cps/web.py:1585 +#: cps/web.py:1257 msgid "Your e-mail is not allowed to register" msgstr "Din e-post är inte tillåten att registrera" -#: cps/web.py:1588 +#: cps/web.py:1261 msgid "Confirmation e-mail was send to your e-mail account." msgstr "Bekräftelsemail skickades till ditt e-postkonto." -#: cps/web.py:1602 +#: cps/web.py:1275 msgid "Cannot activate LDAP authentication" msgstr "Det går inte att aktivera LDAP-autentisering" -#: cps/web.py:1621 +#: cps/web.py:1294 #, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgstr "" -#: cps/web.py:1627 +#: cps/web.py:1300 #, python-format msgid "Could not login: %(message)s" msgstr "Det gick inte att logga in: %(message)s" -#: cps/web.py:1631 cps/web.py:1656 +#: cps/web.py:1304 cps/web.py:1329 msgid "Wrong Username or Password" msgstr "Fel användarnamn eller lösenord" -#: cps/web.py:1638 +#: cps/web.py:1311 msgid "New Password was send to your email address" msgstr "Nytt lösenord skickades till din e-postadress" -#: cps/web.py:1644 +#: cps/web.py:1317 msgid "Please enter valid username to reset password" msgstr "Ange giltigt användarnamn för att återställa lösenordet" -#: cps/web.py:1651 +#: cps/web.py:1324 #, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "Du är nu inloggad som: \"%(nickname)s\"" -#: cps/web.py:1717 cps/web.py:1766 +#: cps/web.py:1388 cps/web.py:1437 #, python-format msgid "%(name)s's profile" msgstr "%(name)ss profil" -#: cps/web.py:1733 +#: cps/web.py:1404 msgid "Profile updated" msgstr "Profilen uppdaterad" @@ -1344,40 +1382,75 @@ msgstr "Profilen uppdaterad" msgid "Found no valid gmail.json file with OAuth information" msgstr "Hittade ingen giltig gmail.json-fil med OAuth-information" -#: cps/tasks/convert.py:154 +#: cps/tasks/convert.py:153 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "calibre e-bokkonverterings %(tool)s hittades inte" -#: cps/tasks/convert.py:187 +#: cps/tasks/convert.py:186 #, python-format msgid "%(format)s format not found on disk" msgstr "%(format)s-format hittades inte på disken" -#: cps/tasks/convert.py:191 +#: cps/tasks/convert.py:190 msgid "Ebook converter failed with unknown error" msgstr "E-bokkonverteraren misslyckades med okänt fel" -#: cps/tasks/convert.py:201 +#: cps/tasks/convert.py:200 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "Kepubify-konverteraren misslyckades: %(error)s" -#: cps/tasks/convert.py:223 +#: cps/tasks/convert.py:222 #, 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:246 +#: cps/tasks/convert.py:245 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "E-bokkonverteraren misslyckades: %(error)s" -#: cps/tasks/convert.py:269 +#: cps/tasks/convert.py:268 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "calibre misslyckades med fel: %(error)s" +#: cps/tasks/convert.py:273 +msgid "Convert" +msgstr "" + +#: cps/tasks/database.py:28 +msgid "Reconnecting Calibre database" +msgstr "" + +#: cps/tasks/mail.py:265 +msgid "E-mail" +msgstr "" + +#: cps/tasks/thumbnail.py:95 +#, python-format +msgid "Generated %(count)s cover thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:222 cps/tasks/thumbnail.py:435 +#: cps/tasks/thumbnail.py:503 +msgid "Cover Thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:281 +msgid "Generated {0} series thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:446 +msgid "Clearing cover thumbnail cache" +msgstr "" + +#: cps/tasks/upload.py:38 cps/templates/admin.html:20 +#: cps/templates/layout.html:67 cps/templates/user_table.html:145 +msgid "Upload" +msgstr "Ladda upp" + #: cps/templates/admin.html:9 msgid "Users" msgstr "Användarlista" @@ -1397,7 +1470,7 @@ msgstr "E-post" msgid "Send to Kindle E-mail Address" msgstr "Kindle" -#: cps/templates/admin.html:17 cps/templates/layout.html:76 +#: cps/templates/admin.html:17 cps/templates/layout.html:77 #: cps/templates/user_table.html:143 msgid "Admin" msgstr "Administratör" @@ -1407,13 +1480,8 @@ msgstr "Administratör" msgid "Password" msgstr "Lösenord" -#: cps/templates/admin.html:20 cps/templates/layout.html:66 -#: cps/templates/user_table.html:145 -msgid "Upload" -msgstr "Ladda upp" - -#: cps/templates/admin.html:22 cps/templates/detail.html:18 -#: cps/templates/detail.html:27 cps/templates/shelf.html:7 +#: cps/templates/admin.html:22 cps/templates/detail.html:19 +#: cps/templates/detail.html:28 cps/templates/shelf.html:8 #: cps/templates/user_table.html:146 msgid "Download" msgstr "Hämta" @@ -1427,7 +1495,7 @@ msgstr "Visa e-böcker" msgid "Edit" msgstr "Redigera" -#: cps/templates/admin.html:25 cps/templates/book_edit.html:16 +#: cps/templates/admin.html:25 cps/templates/book_edit.html:17 #: cps/templates/book_table.html:100 cps/templates/modal_dialogs.html:63 #: cps/templates/modal_dialogs.html:116 cps/templates/user_edit.html:67 #: cps/templates/user_table.html:149 @@ -1540,78 +1608,107 @@ msgstr "Redigera grundläggande konfiguration" msgid "Edit UI Configuration" msgstr "Redigera UI-konfiguration" -#: cps/templates/admin.html:166 +#: cps/templates/admin.html:167 +msgid "Scheduled Tasks" +msgstr "" + +#: cps/templates/admin.html:170 cps/templates/schedule_edit.html:12 +msgid "Time at which tasks start to run" +msgstr "" + +#: cps/templates/admin.html:174 cps/templates/schedule_edit.html:20 +msgid "Maximum tasks duration" +msgstr "" + +#: cps/templates/admin.html:178 +msgid "Generate book cover thumbnails" +msgstr "" + +#: cps/templates/admin.html:182 +msgid "Generate series cover thumbnails" +msgstr "" + +#: cps/templates/admin.html:186 cps/templates/schedule_edit.html:37 +msgid "Reconnect to Calibre Library" +msgstr "" + +#: cps/templates/admin.html:193 +msgid "Refresh Thumbnail Cover Cache" +msgstr "" + +#: cps/templates/admin.html:199 msgid "Administration" msgstr "Administration" -#: cps/templates/admin.html:167 +#: cps/templates/admin.html:200 msgid "Download Debug Package" msgstr "Hämta felsökningspaketet" -#: cps/templates/admin.html:168 +#: cps/templates/admin.html:201 msgid "View Logs" msgstr "Visa loggfiler" -#: cps/templates/admin.html:171 +#: cps/templates/admin.html:204 msgid "Reconnect Calibre Database" msgstr "Anslut till Calibre DB igen" -#: cps/templates/admin.html:172 +#: cps/templates/admin.html:207 msgid "Restart" msgstr "Starta om Calibre-Web" -#: cps/templates/admin.html:173 +#: cps/templates/admin.html:208 msgid "Shutdown" msgstr "Stoppa Calibre-Web" -#: cps/templates/admin.html:178 -msgid "Update" -msgstr "Uppdatera" +#: cps/templates/admin.html:213 +msgid "Version Information" +msgstr "" -#: cps/templates/admin.html:182 +#: cps/templates/admin.html:217 msgid "Version" msgstr "Version" -#: cps/templates/admin.html:183 +#: cps/templates/admin.html:218 msgid "Details" msgstr "Detaljer" -#: cps/templates/admin.html:189 +#: cps/templates/admin.html:224 msgid "Current version" msgstr "Aktuell version" -#: cps/templates/admin.html:196 +#: cps/templates/admin.html:231 msgid "Check for Update" msgstr "Sök efter uppdatering" -#: cps/templates/admin.html:197 +#: cps/templates/admin.html:232 msgid "Perform Update" msgstr "Utför uppdatering" -#: cps/templates/admin.html:210 +#: cps/templates/admin.html:245 msgid "Are you sure you want to restart?" msgstr "Är du säker på att du vill starta om Calibre-Web?" -#: cps/templates/admin.html:215 cps/templates/admin.html:229 -#: cps/templates/admin.html:249 cps/templates/config_db.html:70 +#: cps/templates/admin.html:250 cps/templates/admin.html:264 +#: cps/templates/admin.html:284 cps/templates/config_db.html:70 msgid "OK" msgstr "Ok" -#: cps/templates/admin.html:216 cps/templates/admin.html:230 -#: cps/templates/book_edit.html:213 cps/templates/book_table.html:127 +#: cps/templates/admin.html:251 cps/templates/admin.html:265 +#: cps/templates/book_edit.html:214 cps/templates/book_table.html:127 #: cps/templates/config_db.html:54 cps/templates/config_edit.html:359 #: 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/shelf_edit.html:27 +#: cps/templates/modal_dialogs.html:135 cps/templates/schedule_edit.html:41 +#: cps/templates/shelf_edit.html:27 cps/templates/tasks.html:46 #: cps/templates/user_edit.html:144 msgid "Cancel" msgstr "Avbryt" -#: cps/templates/admin.html:228 +#: cps/templates/admin.html:263 msgid "Are you sure you want to shutdown?" msgstr "Är du säker på att du vill stoppa Calibre-Web?" -#: cps/templates/admin.html:240 +#: cps/templates/admin.html:275 msgid "Updating, please do not reload this page" msgstr "Uppdaterar, vänligen uppdatera inte sidan" @@ -1623,39 +1720,39 @@ msgstr "via" msgid "In Library" msgstr "I biblioteket" -#: cps/templates/author.html:26 cps/templates/index.html:73 -#: cps/templates/search.html:30 cps/templates/shelf.html:19 +#: cps/templates/author.html:26 cps/templates/index.html:74 +#: cps/templates/search.html:31 cps/templates/shelf.html:20 msgid "Sort according to book date, newest first" msgstr "Sortera efter bokdatum, nyast först" -#: cps/templates/author.html:27 cps/templates/index.html:74 -#: cps/templates/search.html:31 cps/templates/shelf.html:20 +#: cps/templates/author.html:27 cps/templates/index.html:75 +#: cps/templates/search.html:32 cps/templates/shelf.html:21 msgid "Sort according to book date, oldest first" msgstr "Sortera efter bokdatum, äldsta först" -#: cps/templates/author.html:28 cps/templates/index.html:75 -#: cps/templates/search.html:32 cps/templates/shelf.html:21 +#: cps/templates/author.html:28 cps/templates/index.html:76 +#: cps/templates/search.html:33 cps/templates/shelf.html:22 msgid "Sort title in alphabetical order" msgstr "Sortera titel i alfabetisk ordning" -#: cps/templates/author.html:29 cps/templates/index.html:76 -#: cps/templates/search.html:33 cps/templates/shelf.html:22 +#: cps/templates/author.html:29 cps/templates/index.html:77 +#: cps/templates/search.html:34 cps/templates/shelf.html:23 msgid "Sort title in reverse alphabetical order" msgstr "Sortera titel i omvänd alfabetisk ordning" -#: cps/templates/author.html:30 cps/templates/index.html:79 -#: cps/templates/search.html:36 cps/templates/shelf.html:25 +#: cps/templates/author.html:30 cps/templates/index.html:80 +#: cps/templates/search.html:37 cps/templates/shelf.html:26 msgid "Sort according to publishing date, newest first" msgstr "Sortera efter publiceringsdatum, nyast först" -#: cps/templates/author.html:31 cps/templates/index.html:80 -#: cps/templates/search.html:37 cps/templates/shelf.html:26 +#: cps/templates/author.html:31 cps/templates/index.html:81 +#: cps/templates/search.html:38 cps/templates/shelf.html:27 msgid "Sort according to publishing date, oldest first" msgstr "Sortera efter publiceringsdatum, äldsta först" #: cps/templates/author.html:56 cps/templates/author.html:115 -#: cps/templates/index.html:29 cps/templates/index.html:112 -#: cps/templates/search.html:66 cps/templates/shelf.html:54 +#: cps/templates/index.html:30 cps/templates/index.html:113 +#: cps/templates/search.html:67 cps/templates/shelf.html:55 msgid "reduce" msgstr "minska" @@ -1663,165 +1760,166 @@ msgstr "minska" msgid "More by" msgstr "Mer av" -#: cps/templates/book_edit.html:10 +#: cps/templates/book_edit.html:11 msgid "Delete Book" msgstr "Ta bort boken" -#: cps/templates/book_edit.html:13 +#: cps/templates/book_edit.html:14 msgid "Delete formats:" msgstr "Ta bort format:" -#: cps/templates/book_edit.html:24 +#: cps/templates/book_edit.html:25 msgid "Convert book format:" msgstr "Konvertera bokformat:" -#: cps/templates/book_edit.html:29 +#: cps/templates/book_edit.html:30 msgid "Convert from:" msgstr "Konvertera från:" -#: cps/templates/book_edit.html:31 cps/templates/book_edit.html:38 +#: cps/templates/book_edit.html:32 cps/templates/book_edit.html:39 msgid "select an option" msgstr "välj ett alternativ" -#: cps/templates/book_edit.html:36 +#: cps/templates/book_edit.html:37 msgid "Convert to:" msgstr "Konvertera till:" -#: cps/templates/book_edit.html:45 +#: cps/templates/book_edit.html:46 msgid "Convert book" msgstr "Konvertera boken" -#: cps/templates/book_edit.html:55 cps/templates/search_form.html:8 +#: cps/templates/book_edit.html:56 cps/templates/search_form.html:8 msgid "Book Title" msgstr "Boktitel" -#: cps/templates/book_edit.html:62 cps/templates/book_edit.html:270 -#: cps/templates/book_edit.html:288 cps/templates/search_form.html:12 +#: cps/templates/book_edit.html:63 cps/templates/book_edit.html:271 +#: cps/templates/book_edit.html:289 cps/templates/search_form.html:12 msgid "Author" msgstr "Författare" -#: cps/templates/book_edit.html:67 cps/templates/book_edit.html:275 -#: cps/templates/book_edit.html:290 cps/templates/search_form.html:153 +#: cps/templates/book_edit.html:68 cps/templates/book_edit.html:276 +#: cps/templates/book_edit.html:291 cps/templates/search_form.html:153 msgid "Description" msgstr "Beskrivning" -#: cps/templates/book_edit.html:72 +#: cps/templates/book_edit.html:73 msgid "Identifiers" msgstr "Identifierare" -#: cps/templates/book_edit.html:76 cps/templates/book_edit.html:299 +#: cps/templates/book_edit.html:77 cps/templates/book_edit.html:300 msgid "Identifier Type" msgstr "Identifierartyp" -#: cps/templates/book_edit.html:77 cps/templates/book_edit.html:300 +#: cps/templates/book_edit.html:78 cps/templates/book_edit.html:301 msgid "Identifier Value" msgstr "Identifierarvärde" -#: cps/templates/book_edit.html:78 cps/templates/book_edit.html:301 +#: cps/templates/book_edit.html:79 cps/templates/book_edit.html:302 #: cps/templates/user_table.html:24 msgid "Remove" msgstr "Ta bort" -#: cps/templates/book_edit.html:82 +#: cps/templates/book_edit.html:83 msgid "Add Identifier" msgstr "Lägg till identifierare" -#: cps/templates/book_edit.html:86 cps/templates/search_form.html:51 +#: cps/templates/book_edit.html:87 cps/templates/search_form.html:51 msgid "Tags" msgstr "Taggar" -#: cps/templates/book_edit.html:94 +#: cps/templates/book_edit.html:95 msgid "Series ID" msgstr "Serie-ID" -#: cps/templates/book_edit.html:98 +#: cps/templates/book_edit.html:99 msgid "Rating" msgstr "Betyg" -#: cps/templates/book_edit.html:103 +#: cps/templates/book_edit.html:104 msgid "Fetch Cover from URL (JPEG - Image will be downloaded and stored in database)" msgstr "Omslagswebbadress (jpg, omslag hämtas och lagras i databasen, fältet är efteråt tomt igen)" -#: cps/templates/book_edit.html:107 +#: cps/templates/book_edit.html:108 msgid "Upload Cover from Local Disk" msgstr "Ladda upp omslag från lokal enhet" -#: cps/templates/book_edit.html:112 +#: cps/templates/book_edit.html:113 msgid "Published Date" msgstr "Publiceringsdatum" -#: cps/templates/book_edit.html:121 cps/templates/book_edit.html:272 -#: cps/templates/book_edit.html:289 cps/templates/detail.html:164 +#: cps/templates/book_edit.html:122 cps/templates/book_edit.html:273 +#: cps/templates/book_edit.html:290 cps/templates/detail.html:165 #: cps/templates/search_form.html:16 msgid "Publisher" msgstr "Förlag" -#: cps/templates/book_edit.html:125 cps/templates/detail.html:131 +#: cps/templates/book_edit.html:126 cps/templates/detail.html:132 #: cps/templates/user_edit.html:33 msgid "Language" msgstr "Språk" -#: cps/templates/book_edit.html:135 cps/templates/search_form.html:45 +#: cps/templates/book_edit.html:136 cps/templates/search_form.html:45 #: cps/templates/search_form.html:164 msgid "Yes" msgstr "Ja" -#: cps/templates/book_edit.html:136 cps/templates/search_form.html:46 +#: cps/templates/book_edit.html:137 cps/templates/search_form.html:46 #: cps/templates/search_form.html:165 msgid "No" msgstr "Nej" -#: cps/templates/book_edit.html:200 +#: cps/templates/book_edit.html:201 msgid "Upload Format" msgstr "Ladda upp format" -#: cps/templates/book_edit.html:208 +#: cps/templates/book_edit.html:209 msgid "View Book on Save" msgstr "Visa bok vid Spara" -#: cps/templates/book_edit.html:211 cps/templates/book_edit.html:229 +#: cps/templates/book_edit.html:212 cps/templates/book_edit.html:230 msgid "Fetch Metadata" msgstr "Hämta metadata" -#: cps/templates/book_edit.html:212 cps/templates/config_db.html:53 +#: cps/templates/book_edit.html:213 cps/templates/config_db.html:53 #: cps/templates/config_edit.html:358 cps/templates/config_view_edit.html:174 -#: cps/templates/email_edit.html:65 cps/templates/shelf_edit.html:25 -#: cps/templates/shelf_order.html:41 cps/templates/user_edit.html:142 +#: cps/templates/email_edit.html:65 cps/templates/schedule_edit.html:40 +#: cps/templates/shelf_edit.html:25 cps/templates/shelf_order.html:41 +#: cps/templates/user_edit.html:142 msgid "Save" msgstr "Spara" -#: cps/templates/book_edit.html:232 +#: cps/templates/book_edit.html:233 msgid "Keyword" msgstr "Sökord" -#: cps/templates/book_edit.html:233 +#: cps/templates/book_edit.html:234 #, fuzzy msgid "Search keyword" msgstr " Sök sökord " -#: cps/templates/book_edit.html:239 +#: cps/templates/book_edit.html:240 msgid "Click the cover to load metadata to the form" msgstr "Klicka på omslaget för att läsa in metadata till formuläret" -#: cps/templates/book_edit.html:246 cps/templates/book_edit.html:285 +#: cps/templates/book_edit.html:247 cps/templates/book_edit.html:286 msgid "Loading..." msgstr "Läser in..." -#: cps/templates/book_edit.html:250 cps/templates/layout.html:63 -#: cps/templates/layout.html:186 cps/templates/modal_dialogs.html:34 +#: cps/templates/book_edit.html:251 cps/templates/layout.html:64 +#: cps/templates/layout.html:187 cps/templates/modal_dialogs.html:34 #: cps/templates/user_edit.html:163 msgid "Close" msgstr "Stäng" -#: cps/templates/book_edit.html:277 cps/templates/book_edit.html:291 +#: cps/templates/book_edit.html:278 cps/templates/book_edit.html:292 msgid "Source" msgstr "Källa" -#: cps/templates/book_edit.html:286 +#: cps/templates/book_edit.html:287 msgid "Search error!" msgstr "Sökningsfel!" -#: cps/templates/book_edit.html:287 +#: cps/templates/book_edit.html:288 msgid "No Result(s) found! Please try another keyword." msgstr "Inga resultat hittades! Försök med ett annat sökord." @@ -1930,6 +2028,7 @@ msgid "Enter " msgstr "Identifierare" #: cps/templates/book_table.html:113 cps/templates/modal_dialogs.html:46 +#: cps/templates/tasks.html:36 msgid "Are you really sure?" msgstr "Är du verkligen säker?" @@ -2344,62 +2443,62 @@ msgstr "Lägg till tillåtna/avvisade taggar" msgid "Add Allowed/Denied custom column values" msgstr "Lägg till tillåtna/avvisade anpassade kolumnvärden" -#: cps/templates/detail.html:60 cps/templates/detail.html:69 +#: cps/templates/detail.html:61 cps/templates/detail.html:70 msgid "Read in Browser" msgstr "Läs i webbläsaren" -#: cps/templates/detail.html:77 cps/templates/detail.html:94 +#: cps/templates/detail.html:78 cps/templates/detail.html:95 msgid "Listen in Browser" msgstr "Lyssna i webbläsaren" -#: cps/templates/detail.html:124 +#: cps/templates/detail.html:125 #, fuzzy, python-format msgid "Book %(index)s of %(range)s" msgstr "" -#: cps/templates/detail.html:173 +#: cps/templates/detail.html:174 msgid "Published" msgstr "Publicerad" -#: cps/templates/detail.html:221 +#: cps/templates/detail.html:222 msgid "Mark As Unread" msgstr "Markera som oläst" -#: cps/templates/detail.html:221 +#: cps/templates/detail.html:222 msgid "Mark As Read" msgstr "Markera som läst" -#: cps/templates/detail.html:222 +#: cps/templates/detail.html:223 msgid "Read" msgstr "Läst" -#: cps/templates/detail.html:231 +#: cps/templates/detail.html:232 msgid "Restore from archive" msgstr "Återställ från arkivet" -#: cps/templates/detail.html:231 +#: cps/templates/detail.html:232 msgid "Add to archive" msgstr "Lägg till i arkivet" -#: cps/templates/detail.html:232 +#: cps/templates/detail.html:233 msgid "Archived" msgstr "Arkiverad" -#: cps/templates/detail.html:243 +#: cps/templates/detail.html:244 msgid "Description:" msgstr "Beskrivning:" -#: cps/templates/detail.html:256 cps/templates/search.html:15 +#: cps/templates/detail.html:257 cps/templates/search.html:16 msgid "Add to shelf" msgstr "Lägg till hyllan" -#: cps/templates/detail.html:267 cps/templates/detail.html:284 -#: cps/templates/feed.xml:79 cps/templates/layout.html:137 -#: cps/templates/search.html:21 +#: cps/templates/detail.html:268 cps/templates/detail.html:285 +#: cps/templates/feed.xml:79 cps/templates/layout.html:138 +#: cps/templates/search.html:22 msgid "(Public)" msgstr "(Publik)" -#: cps/templates/detail.html:298 +#: cps/templates/detail.html:299 msgid "Edit Metadata" msgstr "Redigera metadata" @@ -2444,7 +2543,7 @@ msgstr "Gräns för bilagestorlek" msgid "Save and Send Test E-mail" msgstr "Spara inställningarna och skicka test-e-post" -#: cps/templates/email_edit.html:70 cps/templates/layout.html:29 +#: cps/templates/email_edit.html:70 cps/templates/layout.html:30 #: cps/templates/shelf_order.html:42 cps/templates/user_table.html:174 msgid "Back" msgstr "Tillbaka" @@ -2470,7 +2569,7 @@ msgstr "Ange domännamn" msgid "Denied Domains (Blacklist)" msgstr "Avvisade domäner för registrering" -#: cps/templates/feed.xml:21 cps/templates/layout.html:170 +#: cps/templates/feed.xml:21 cps/templates/layout.html:171 msgid "Next" msgstr "Nästa" @@ -2483,6 +2582,10 @@ msgstr "Öppna filen .kobo/Kobo eReader.conf i en textredigerare och lägg till msgid "Kobo Token:" msgstr "Kobo Sync Token" +#: cps/templates/grid.html:21 +msgid "List" +msgstr "" + #: cps/templates/http_error.html:31 #, fuzzy msgid "Calibre-Web Instance is unconfigured, please contact your administrator" @@ -2500,29 +2603,29 @@ msgstr "Tillbaka till hemmet" msgid "Logout User" msgstr "" -#: cps/templates/index.html:70 +#: cps/templates/index.html:71 msgid "Sort ascending according to download count" msgstr "" -#: cps/templates/index.html:71 +#: cps/templates/index.html:72 msgid "Sort descending according to download count" msgstr "" -#: cps/templates/index.html:77 cps/templates/search.html:34 -#: cps/templates/shelf.html:23 +#: cps/templates/index.html:78 cps/templates/search.html:35 +#: cps/templates/shelf.html:24 msgid "Sort authors in alphabetical order" msgstr "Sortera författare i alfabetisk ordning" -#: cps/templates/index.html:78 cps/templates/search.html:35 -#: cps/templates/shelf.html:24 +#: cps/templates/index.html:79 cps/templates/search.html:36 +#: cps/templates/shelf.html:25 msgid "Sort authors in reverse alphabetical order" msgstr "Sortera författare i omvänd alfabetisk ordning" -#: cps/templates/index.html:82 +#: cps/templates/index.html:83 msgid "Sort ascending according to series index" msgstr "Sortera stigande enligt serieindex" -#: cps/templates/index.html:83 +#: cps/templates/index.html:84 msgid "Sort descending according to series index" msgstr "Sortera fallande enligt serieindex" @@ -2586,7 +2689,7 @@ msgstr "Böcker sorterade efter Betyg" msgid "Books ordered by file formats" msgstr "Böcker ordnade av filformat" -#: cps/templates/index.xml:119 cps/templates/layout.html:135 +#: cps/templates/index.xml:119 cps/templates/layout.html:136 #: cps/templates/search_form.html:87 msgid "Shelves" msgstr "Hyllor" @@ -2595,63 +2698,67 @@ msgstr "Hyllor" msgid "Books organized in shelves" msgstr "Böcker organiserade i hyllor" -#: cps/templates/layout.html:29 +#: cps/templates/layout.html:30 msgid "Home" msgstr "Hem" -#: cps/templates/layout.html:35 +#: cps/templates/layout.html:36 msgid "Toggle Navigation" msgstr "Växla navigering" -#: cps/templates/layout.html:46 +#: cps/templates/layout.html:47 msgid "Search Library" msgstr "Sök i bibliotek" -#: cps/templates/layout.html:63 cps/templates/layout.html:117 +#: cps/templates/layout.html:64 cps/templates/layout.html:118 msgid "Uploading..." msgstr "Laddar upp..." -#: cps/templates/layout.html:63 +#: cps/templates/layout.html:64 msgid "Error" msgstr "Fel" -#: cps/templates/layout.html:63 +#: cps/templates/layout.html:64 msgid "Upload done, processing, please wait..." msgstr "Uppladdning klar, bearbetning, vänligen vänta ..." -#: cps/templates/layout.html:76 cps/templates/read.html:72 +#: cps/templates/layout.html:77 cps/templates/read.html:72 #: cps/templates/readcbr.html:84 cps/templates/readcbr.html:108 msgid "Settings" msgstr "Inställningar" -#: cps/templates/layout.html:78 +#: cps/templates/layout.html:79 msgid "Account" msgstr "Konto" -#: cps/templates/layout.html:80 +#: cps/templates/layout.html:81 msgid "Logout" msgstr "Logga ut" -#: cps/templates/layout.html:118 +#: cps/templates/layout.html:119 msgid "Please do not refresh the page" msgstr "Vänligen uppdatera inte sidan" -#: cps/templates/layout.html:128 +#: cps/templates/layout.html:129 msgid "Browse" msgstr "Bläddra" -#: cps/templates/layout.html:141 cps/templates/stats.html:3 +#: cps/templates/layout.html:142 cps/templates/stats.html:3 msgid "About" msgstr "Om" -#: cps/templates/layout.html:155 +#: cps/templates/layout.html:156 msgid "Previous" msgstr "Föregående" -#: cps/templates/layout.html:182 +#: cps/templates/layout.html:183 msgid "Book Details" msgstr "Bokdetaljer" +#: cps/templates/list.html:22 +msgid "Grid" +msgstr "" + #: cps/templates/login.html:18 msgid "Remember Me" msgstr "Kom ihåg mig" @@ -2756,7 +2863,7 @@ msgstr "Föräldramapp" msgid "Select" msgstr "Välj" -#: cps/templates/modal_dialogs.html:134 +#: cps/templates/modal_dialogs.html:134 cps/templates/tasks.html:45 msgid "Ok" msgstr "Ok" @@ -2937,15 +3044,23 @@ msgstr "När du gör det kommer du automatiskt att logga in på den här enheten msgid "This verification link will expire in 10 minutes." msgstr "Länken går ut efter 10 minuter." -#: cps/templates/search.html:5 +#: cps/templates/schedule_edit.html:29 +msgid "Generate Book Cover Thumbnails" +msgstr "" + +#: cps/templates/schedule_edit.html:33 +msgid "Generate Series Cover Thumbnails" +msgstr "" + +#: cps/templates/search.html:6 msgid "No Results Found" msgstr "Inga resultat hittades" -#: cps/templates/search.html:6 +#: cps/templates/search.html:7 msgid "Search Term:" msgstr "Sökterm:" -#: cps/templates/search.html:8 +#: cps/templates/search.html:9 msgid "Results for:" msgstr "Resultat för:" @@ -2997,23 +3112,23 @@ msgstr "" msgid "To:" msgstr "" -#: cps/templates/shelf.html:12 +#: cps/templates/shelf.html:13 msgid "Delete this Shelf" msgstr "Ta bort den här hyllan" -#: cps/templates/shelf.html:13 +#: cps/templates/shelf.html:14 msgid "Edit Shelf Properties" msgstr "Redigera hyllegenskaper" -#: cps/templates/shelf.html:16 +#: cps/templates/shelf.html:17 msgid "Arrange books manually" msgstr "Ordna böcker manuellt" -#: cps/templates/shelf.html:17 +#: cps/templates/shelf.html:18 msgid "Disable Change order" msgstr "Inaktivera ändring av ordning" -#: cps/templates/shelf.html:17 +#: cps/templates/shelf.html:18 msgid "Enable Change order" msgstr "Aktivera ändring av ordning" @@ -3058,8 +3173,8 @@ msgid "System Statistics" msgstr "Systemstatistik" #: cps/templates/stats.html:33 -msgid "Program Library" -msgstr "Programbibliotek" +msgid "Program" +msgstr "" #: cps/templates/stats.html:34 msgid "Installed Version" @@ -3089,6 +3204,18 @@ msgstr "Drifttid" msgid "Start Time" msgstr "Starttid" +#: cps/templates/tasks.html:20 +msgid "Actions" +msgstr "" + +#: cps/templates/tasks.html:40 +msgid "This task will be cancelled. Any progress made by this task will be saved." +msgstr "" + +#: cps/templates/tasks.html:41 +msgid "If this is a scheduled task, it will be re-ran during the next scheduled time." +msgstr "" + #: cps/templates/user_edit.html:20 msgid "Reset user Password" msgstr "Återställ användarlösenordet" diff --git a/cps/translations/tr/LC_MESSAGES/messages.mo b/cps/translations/tr/LC_MESSAGES/messages.mo index 50d23b6bdcfa077d7cd0cfbbd411d6989a6f4225..06d8741b4eb86c453471bb9ac52bd7eb83b5d3ca 100644 GIT binary patch delta 5442 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 dlA$I2YcH0zOi8_=Z~xl#ff\n" "Language: tr\n" @@ -16,590 +16,615 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.9.1\n" +"Generated-By: Babel 2.8.0\n" -#: cps/about.py:86 +#: cps/about.py:84 msgid "Statistics" msgstr "İstatistikler" -#: cps/admin.py:141 +#: cps/admin.py:146 msgid "Server restarted, please reload page" msgstr "Sunucu yeniden başlatıldı, lütfen sayfayı yeniden yükleyin" -#: cps/admin.py:143 +#: cps/admin.py:148 msgid "Performing shutdown of server, please close window" msgstr "Sunucu kapatıyor, lütfen pencereyi kapatın" -#: cps/admin.py:151 +#: cps/admin.py:156 msgid "Reconnect successful" msgstr "" -#: cps/admin.py:154 +#: cps/admin.py:159 msgid "Unknown command" msgstr "" -#: cps/admin.py:176 cps/editbooks.py:713 cps/editbooks.py:892 -#: cps/editbooks.py:894 cps/editbooks.py:930 cps/editbooks.py:947 -#: cps/updater.py:608 cps/uploader.py:93 cps/uploader.py:103 +#: cps/admin.py:192 cps/editbooks.py:571 cps/editbooks.py:573 +#: cps/editbooks.py:609 cps/editbooks.py:626 cps/editbooks.py:1233 +#: cps/updater.py:613 cps/uploader.py:87 cps/uploader.py:97 msgid "Unknown" msgstr "Bilinmeyen" -#: cps/admin.py:197 +#: cps/admin.py:217 msgid "Admin page" msgstr "Yönetim sayfası" -#: cps/admin.py:217 +#: cps/admin.py:237 msgid "Basic Configuration" msgstr "Temel Ayarlar" -#: cps/admin.py:255 +#: cps/admin.py:275 msgid "UI Configuration" msgstr "Arayüz Ayarları" -#: cps/admin.py:289 cps/templates/admin.html:51 +#: cps/admin.py:309 cps/templates/admin.html:51 msgid "Edit Users" msgstr "" -#: cps/admin.py:333 cps/opds.py:529 cps/templates/grid.html:13 +#: cps/admin.py:353 cps/opds.py:532 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "Tümü" -#: cps/admin.py:360 cps/admin.py:1648 +#: cps/admin.py:380 cps/admin.py:1365 msgid "User not found" msgstr "" -#: cps/admin.py:374 +#: cps/admin.py:394 msgid "{} users deleted successfully" msgstr "" -#: cps/admin.py:397 cps/templates/config_view_edit.html:133 +#: cps/admin.py:417 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:418 cps/admin.py:424 +#: cps/admin.py:438 cps/admin.py:444 msgid "Malformed request" msgstr "" -#: cps/admin.py:436 cps/admin.py:1526 +#: cps/admin.py:456 cps/admin.py:1962 msgid "Guest Name can't be changed" msgstr "" -#: cps/admin.py:448 +#: cps/admin.py:468 msgid "Guest can't have this role" msgstr "" -#: cps/admin.py:460 cps/admin.py:1484 +#: cps/admin.py:480 cps/admin.py:1920 msgid "No admin user remaining, can't remove admin role" msgstr "" -#: cps/admin.py:464 cps/admin.py:478 +#: cps/admin.py:484 cps/admin.py:498 msgid "Value has to be true or false" msgstr "" -#: cps/admin.py:466 +#: cps/admin.py:486 msgid "Invalid role" msgstr "" -#: cps/admin.py:470 +#: cps/admin.py:490 msgid "Guest can't have this view" msgstr "" -#: cps/admin.py:480 +#: cps/admin.py:500 msgid "Invalid view" msgstr "" -#: cps/admin.py:483 +#: cps/admin.py:503 msgid "Guest's Locale is determined automatically and can't be set" msgstr "" -#: cps/admin.py:487 +#: cps/admin.py:507 msgid "No Valid Locale Given" msgstr "" -#: cps/admin.py:498 +#: cps/admin.py:518 msgid "No Valid Book Language Given" msgstr "" -#: cps/admin.py:500 cps/editbooks.py:1267 +#: cps/admin.py:520 cps/editbooks.py:438 msgid "Parameter not found" msgstr "" -#: cps/admin.py:553 +#: cps/admin.py:557 msgid "Invalid Read Column" msgstr "" -#: cps/admin.py:559 +#: cps/admin.py:563 msgid "Invalid Restricted Column" msgstr "" -#: cps/admin.py:579 cps/admin.py:1355 +#: cps/admin.py:583 cps/admin.py:1791 msgid "Calibre-Web configuration updated" msgstr "Calibre-Web yapılandırması güncellendi" -#: cps/admin.py:591 +#: cps/admin.py:595 msgid "Do you really want to delete the Kobo Token?" msgstr "" -#: cps/admin.py:593 +#: cps/admin.py:597 msgid "Do you really want to delete this domain?" msgstr "" -#: cps/admin.py:595 +#: cps/admin.py:599 msgid "Do you really want to delete this user?" msgstr "" -#: cps/admin.py:597 +#: cps/admin.py:601 msgid "Are you sure you want to delete this shelf?" msgstr "" -#: cps/admin.py:599 +#: cps/admin.py:603 msgid "Are you sure you want to change locales of selected user(s)?" msgstr "" -#: cps/admin.py:601 +#: cps/admin.py:605 msgid "Are you sure you want to change visible book languages for selected user(s)?" msgstr "" -#: cps/admin.py:603 +#: cps/admin.py:607 msgid "Are you sure you want to change the selected role for the selected user(s)?" msgstr "" -#: cps/admin.py:605 +#: cps/admin.py:609 msgid "Are you sure you want to change the selected restrictions for the selected user(s)?" msgstr "" -#: cps/admin.py:607 +#: cps/admin.py:611 msgid "Are you sure you want to change the selected visibility restrictions for the selected user(s)?" msgstr "" -#: cps/admin.py:610 +#: cps/admin.py:614 msgid "Are you sure you want to change shelf sync behavior for the selected user(s)?" msgstr "" -#: cps/admin.py:612 +#: cps/admin.py:616 msgid "Are you sure you want to change Calibre library location?" msgstr "" -#: cps/admin.py:614 +#: cps/admin.py:618 +msgid "Calibre-Web will search for updated Covers and update Cover Thumbnails, this may take a while?" +msgstr "" + +#: cps/admin.py:620 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:764 -msgid "Tag not found" -msgstr "" - -#: cps/admin.py:776 -msgid "Invalid Action" -msgstr "" - -#: cps/admin.py:893 cps/admin.py:899 cps/admin.py:909 cps/admin.py:919 +#: cps/admin.py:862 cps/admin.py:868 cps/admin.py:878 cps/admin.py:888 #: cps/templates/modal_dialogs.html:29 cps/templates/user_table.html:41 #: cps/templates/user_table.html:58 msgid "Deny" msgstr "" -#: cps/admin.py:895 cps/admin.py:901 cps/admin.py:911 cps/admin.py:921 +#: cps/admin.py:864 cps/admin.py:870 cps/admin.py:880 cps/admin.py:890 #: cps/templates/modal_dialogs.html:28 cps/templates/user_table.html:44 #: cps/templates/user_table.html:61 msgid "Allow" msgstr "" -#: cps/admin.py:936 +#: cps/admin.py:905 msgid "{} sync entries deleted" msgstr "" -#: cps/admin.py:1059 +#: cps/admin.py:953 +msgid "Tag not found" +msgstr "" + +#: cps/admin.py:965 +msgid "Invalid Action" +msgstr "" + +#: cps/admin.py:1080 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "" -#: cps/admin.py:1104 +#: cps/admin.py:1125 msgid "Logfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1110 +#: cps/admin.py:1131 msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1140 +#: cps/admin.py:1161 msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgstr "" -#: cps/admin.py:1146 +#: cps/admin.py:1167 #, 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:1149 +#: cps/admin.py:1170 msgid "Please Enter a LDAP Service Account" msgstr "" -#: cps/admin.py:1154 +#: cps/admin.py:1175 #, python-format msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1156 +#: cps/admin.py:1177 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1160 +#: cps/admin.py:1181 #, python-format msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1162 +#: cps/admin.py:1183 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1169 +#: cps/admin.py:1190 #, python-format msgid "LDAP Member User Filter needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1171 +#: cps/admin.py:1192 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1178 +#: cps/admin.py:1199 msgid "LDAP CACertificate, Certificate or Key Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1223 cps/admin.py:1339 cps/admin.py:1437 cps/admin.py:1554 -#: cps/admin.py:1623 cps/editbooks.py:678 cps/editbooks.py:882 -#: cps/editbooks.py:1130 cps/shelf.py:100 cps/shelf.py:160 cps/shelf.py:203 -#: cps/shelf.py:278 cps/shelf.py:343 cps/shelf.py:380 cps/shelf.py:456 -#: cps/web.py:1742 +#: cps/admin.py:1230 cps/admin.py:1852 +msgid "Add new user" +msgstr "Yeni kullanıcı ekle" + +#: cps/admin.py:1239 cps/templates/admin.html:100 +msgid "Edit E-mail Server Settings" +msgstr "" + +#: cps/admin.py:1258 +msgid "Gmail Account Verification Successful" +msgstr "" + +#: cps/admin.py:1277 cps/admin.py:1658 cps/admin.py:1775 cps/admin.py:1873 +#: cps/admin.py:1990 cps/editbooks.py:227 cps/editbooks.py:301 +#: cps/editbooks.py:1196 cps/shelf.py:82 cps/shelf.py:142 cps/shelf.py:185 +#: cps/shelf.py:235 cps/shelf.py:272 cps/shelf.py:343 cps/shelf.py:457 +#: cps/tasks/convert.py:136 cps/web.py:1413 #, python-format msgid "Database error: %(error)s." msgstr "" -#: cps/admin.py:1235 -msgid "DB Location is not Valid, Please Enter Correct Path" -msgstr "" - -#: cps/admin.py:1253 -msgid "DB is not Writeable" -msgstr "" - -#: cps/admin.py:1266 -msgid "Keyfile Location is not Valid, Please Enter Correct Path" -msgstr "" - -#: cps/admin.py:1270 -msgid "Certfile Location is not Valid, Please Enter Correct Path" -msgstr "" - -#: cps/admin.py:1378 -#, fuzzy -msgid "Database Settings updated" -msgstr "E-posta sunucusu ayarları güncellendi" - -#: cps/admin.py:1386 -#, fuzzy -msgid "Database Configuration" -msgstr "Özellik Yapılandırması" - -#: cps/admin.py:1402 cps/web.py:1557 -msgid "Please fill out all fields!" -msgstr "Lütfen tüm alanları doldurun!" - -#: cps/admin.py:1410 -msgid "E-mail is not from valid domain" -msgstr "E-posta izin verilen bir servisten değil" - -#: cps/admin.py:1416 cps/admin.py:1576 -msgid "Add new user" -msgstr "Yeni kullanıcı ekle" - -#: cps/admin.py:1427 -#, python-format -msgid "User '%(user)s' created" -msgstr "'%(user)s' kullanıcısı oluşturuldu" - -#: cps/admin.py:1433 -#, fuzzy -msgid "Found an existing account for this e-mail address or name." -msgstr "Bu e-posta adresi veya kullanıcı adı için zaten bir hesap var." - -#: cps/admin.py:1463 -#, python-format -msgid "User '%(nick)s' deleted" -msgstr "Kullanıcı '%(nick)s' silindi" - -#: cps/admin.py:1465 cps/admin.py:1466 -msgid "Can't delete Guest User" -msgstr "" - -#: cps/admin.py:1469 -msgid "No admin user remaining, can't delete user" -msgstr "Başka yönetici kullanıcı olmadığından silinemedi" - -#: cps/admin.py:1542 cps/admin.py:1667 -#, python-format -msgid "Edit User %(nick)s" -msgstr "%(nick)s kullanıcısını düzenle" - -#: cps/admin.py:1546 -#, python-format -msgid "User '%(nick)s' updated" -msgstr "'%(nick)s' kullanıcısı güncellendi" - -#: cps/admin.py:1550 cps/admin.py:1682 cps/web.py:1582 cps/web.py:1642 -msgid "An unknown error occurred. Please try again later." -msgstr "Bilinmeyen bir hata oluştu. Lütfen daha sonra tekrar deneyiniz." - -#: cps/admin.py:1585 cps/templates/admin.html:100 -msgid "Edit E-mail Server Settings" -msgstr "" - -#: cps/admin.py:1604 -msgid "Gmail Account Verification Successful" -msgstr "" - -#: cps/admin.py:1630 +#: cps/admin.py:1284 #, python-format msgid "Test e-mail queued for sending to %(email)s, please check Tasks for result" msgstr "" -#: cps/admin.py:1633 +#: cps/admin.py:1287 #, 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:1635 +#: cps/admin.py:1289 msgid "Please configure your e-mail address first..." msgstr "Lütfen önce e-posta adresinizi ayarlayın..." -#: cps/admin.py:1637 +#: cps/admin.py:1291 msgid "E-mail server settings updated" msgstr "E-posta sunucusu ayarları güncellendi" -#: cps/admin.py:1679 +#: cps/admin.py:1314 cps/templates/admin.html:191 +msgid "Edit Scheduled Tasks Settings" +msgstr "" + +#: cps/admin.py:1326 +msgid "Invalid start time for task specified" +msgstr "" + +#: cps/admin.py:1331 +msgid "Invalid duration for task specified" +msgstr "" + +#: cps/admin.py:1340 +msgid "Scheduled tasks settings updated" +msgstr "" + +#: cps/admin.py:1350 cps/admin.py:1399 cps/admin.py:1986 cps/web.py:1254 +#: cps/web.py:1315 +msgid "An unknown error occurred. Please try again later." +msgstr "Bilinmeyen bir hata oluştu. Lütfen daha sonra tekrar deneyiniz." + +#: cps/admin.py:1354 +msgid "Settings DB is not Writeable" +msgstr "" + +#: cps/admin.py:1384 cps/admin.py:1978 +#, python-format +msgid "Edit User %(nick)s" +msgstr "%(nick)s kullanıcısını düzenle" + +#: cps/admin.py:1396 #, python-format msgid "Password for user %(user)s reset" msgstr "%(user)s kullanıcısının şifresi sıfırlandı" -#: cps/admin.py:1685 cps/web.py:1522 +#: cps/admin.py:1402 cps/web.py:1194 msgid "Please configure the SMTP mail settings first..." msgstr "Lütfen önce SMTP e-posta ayarlarını ayarlayın..." -#: cps/admin.py:1696 +#: cps/admin.py:1413 msgid "Logfile viewer" msgstr "Log dosyası görüntüleyici" -#: cps/admin.py:1762 +#: cps/admin.py:1479 msgid "Requesting update package" msgstr "Güncelleme paketi isteniyor" -#: cps/admin.py:1763 +#: cps/admin.py:1480 msgid "Downloading update package" msgstr "Güncelleme paketi indiriliyor" -#: cps/admin.py:1764 +#: cps/admin.py:1481 msgid "Unzipping update package" msgstr "Güncelleme paketi ayıklanıyor" -#: cps/admin.py:1765 +#: cps/admin.py:1482 msgid "Replacing files" msgstr "Dosyalar değiştiriliyor" -#: cps/admin.py:1766 +#: cps/admin.py:1483 msgid "Database connections are closed" msgstr "Veritabanı bağlantıları kapalı" -#: cps/admin.py:1767 +#: cps/admin.py:1484 msgid "Stopping server" msgstr "Sunucu durduruyor" -#: cps/admin.py:1768 +#: cps/admin.py:1485 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:1769 cps/admin.py:1770 cps/admin.py:1771 cps/admin.py:1772 -#: cps/admin.py:1773 cps/admin.py:1774 +#: cps/admin.py:1486 cps/admin.py:1487 cps/admin.py:1488 cps/admin.py:1489 +#: cps/admin.py:1490 cps/admin.py:1491 msgid "Update failed:" msgstr "Güncelleme başarısız:" -#: cps/admin.py:1769 cps/updater.py:384 cps/updater.py:619 cps/updater.py:621 +#: cps/admin.py:1486 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 msgid "HTTP Error" msgstr "HTTP Hatası" -#: cps/admin.py:1770 cps/updater.py:386 cps/updater.py:623 +#: cps/admin.py:1487 cps/updater.py:391 cps/updater.py:628 msgid "Connection error" msgstr "Bağlantı hatası" -#: cps/admin.py:1771 cps/updater.py:388 cps/updater.py:625 +#: cps/admin.py:1488 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:1772 cps/updater.py:390 cps/updater.py:627 +#: cps/admin.py:1489 cps/updater.py:395 cps/updater.py:632 msgid "General error" msgstr "Genel hata" -#: cps/admin.py:1773 +#: cps/admin.py:1490 #, fuzzy msgid "Update file could not be saved in temp dir" msgstr "%(filename)s dosyası geçici dizine kaydedilemedi" -#: cps/admin.py:1774 +#: cps/admin.py:1491 msgid "Files could not be replaced during update" msgstr "" -#: cps/admin.py:1798 +#: cps/admin.py:1515 msgid "Failed to extract at least One LDAP User" msgstr "" -#: cps/admin.py:1843 +#: cps/admin.py:1560 msgid "Failed to Create at Least One LDAP User" msgstr "" -#: cps/admin.py:1856 +#: cps/admin.py:1573 #, python-format msgid "Error: %(ldaperror)s" msgstr "" -#: cps/admin.py:1860 +#: cps/admin.py:1577 msgid "Error: No user returned in response of LDAP server" msgstr "" -#: cps/admin.py:1893 +#: cps/admin.py:1610 msgid "At Least One LDAP User Not Found in Database" msgstr "" -#: cps/admin.py:1895 +#: cps/admin.py:1612 msgid "{} User Successfully Imported" msgstr "" -#: cps/converter.py:30 +#: cps/admin.py:1670 +msgid "DB Location is not Valid, Please Enter Correct Path" +msgstr "" + +#: cps/admin.py:1689 +msgid "DB is not Writeable" +msgstr "" + +#: cps/admin.py:1702 +msgid "Keyfile Location is not Valid, Please Enter Correct Path" +msgstr "" + +#: cps/admin.py:1706 +msgid "Certfile Location is not Valid, Please Enter Correct Path" +msgstr "" + +#: cps/admin.py:1814 +#, fuzzy +msgid "Database Settings updated" +msgstr "E-posta sunucusu ayarları güncellendi" + +#: cps/admin.py:1822 +#, fuzzy +msgid "Database Configuration" +msgstr "Özellik Yapılandırması" + +#: cps/admin.py:1838 cps/web.py:1229 +msgid "Please fill out all fields!" +msgstr "Lütfen tüm alanları doldurun!" + +#: cps/admin.py:1846 +msgid "E-mail is not from valid domain" +msgstr "E-posta izin verilen bir servisten değil" + +#: cps/admin.py:1863 +#, python-format +msgid "User '%(user)s' created" +msgstr "'%(user)s' kullanıcısı oluşturuldu" + +#: cps/admin.py:1869 +#, fuzzy +msgid "Found an existing account for this e-mail address or name." +msgstr "Bu e-posta adresi veya kullanıcı adı için zaten bir hesap var." + +#: cps/admin.py:1899 +#, python-format +msgid "User '%(nick)s' deleted" +msgstr "Kullanıcı '%(nick)s' silindi" + +#: cps/admin.py:1901 cps/admin.py:1902 +msgid "Can't delete Guest User" +msgstr "" + +#: cps/admin.py:1905 +msgid "No admin user remaining, can't delete user" +msgstr "Başka yönetici kullanıcı olmadığından silinemedi" + +#: cps/admin.py:1982 +#, python-format +msgid "User '%(nick)s' updated" +msgstr "'%(nick)s' kullanıcısı güncellendi" + +#: cps/converter.py:31 msgid "not installed" msgstr "yüklü değil" -#: cps/converter.py:31 +#: cps/converter.py:32 msgid "Execution permissions missing" msgstr "" -#: cps/db.py:674 cps/web.py:710 cps/web.py:1222 +#: cps/db.py:681 cps/search.py:134 cps/web.py:720 #, python-format msgid "Custom Column No.%(column)d is not existing in calibre database" msgstr "" -#: cps/db.py:917 cps/templates/config_edit.html:204 +#: cps/db.py:924 cps/templates/config_edit.html:204 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 -#: cps/web.py:551 cps/web.py:585 cps/web.py:646 cps/web.py:671 cps/web.py:1003 -#: cps/web.py:1032 cps/web.py:1066 cps/web.py:1093 cps/web.py:1132 +#: cps/web.py:549 cps/web.py:583 cps/web.py:656 cps/web.py:681 cps/web.py:962 +#: cps/web.py:992 cps/web.py:1027 cps/web.py:1055 cps/web.py:1094 msgid "None" msgstr "Hiçbiri" -#: cps/editbooks.py:295 cps/editbooks.py:297 -msgid "Book Format Successfully Deleted" -msgstr "" - -#: cps/editbooks.py:304 cps/editbooks.py:306 -msgid "Book Successfully Deleted" -msgstr "" - -#: cps/editbooks.py:358 -msgid "You are missing permissions to delete books" -msgstr "" - -#: cps/editbooks.py:373 cps/editbooks.py:765 cps/web.py:518 cps/web.py:1783 -#: cps/web.py:1825 cps/web.py:1870 +#: cps/editbooks.py:109 cps/editbooks.py:890 cps/web.py:516 cps/web.py:1454 +#: cps/web.py:1496 cps/web.py:1541 msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible" msgstr "" -#: cps/editbooks.py:408 -msgid "edit metadata" -msgstr "metaveri düzenle" - -#: cps/editbooks.py:457 -#, python-format -msgid "%(seriesindex)s is not a valid number, skipping" -msgstr "" - -#: cps/editbooks.py:493 cps/editbooks.py:1001 -#, fuzzy, python-format -msgid "'%(langname)s' is not a valid language" -msgstr "%(langname)s geçerli bir dil değil" - -#: cps/editbooks.py:634 -msgid "User has no rights to upload additional file formats" -msgstr "" - -#: cps/editbooks.py:639 cps/editbooks.py:1029 -#, 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:643 cps/editbooks.py:1033 -msgid "File to be uploaded must have an extension" -msgstr "Yüklenecek dosyanın mutlaka bir uzantısı olması gerekli" - -#: cps/editbooks.py:655 -#, python-format -msgid "Failed to create path %(path)s (Permission denied)." -msgstr "%(path)s dizini oluşturulamadı. (İzin reddedildi)" - -#: cps/editbooks.py:660 -#, python-format -msgid "Failed to store file %(file)s." -msgstr "%(file)s dosyası kaydedilemedi." - -#: cps/editbooks.py:683 -#, python-format -msgid "File format %(ext)s added to %(book)s" -msgstr "%(book)s kitabına %(ext)s dosya biçimi eklendi" - -#: cps/editbooks.py:697 cps/editbooks.py:809 +#: cps/editbooks.py:153 cps/editbooks.py:1216 msgid "User has no rights to upload cover" msgstr "" -#: cps/editbooks.py:828 +#: cps/editbooks.py:173 cps/editbooks.py:711 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "" -#: cps/editbooks.py:869 +#: cps/editbooks.py:214 msgid "Metadata successfully updated" msgstr "Metaveri başarıyla güncellendi" -#: cps/editbooks.py:887 +#: cps/editbooks.py:232 msgid "Error editing book: {}" msgstr "" -#: cps/editbooks.py:951 -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:1041 -#, python-format -msgid "File %(filename)s could not saved to temp dir" -msgstr "%(filename)s dosyası geçici dizine kaydedilemedi" - -#: cps/editbooks.py:1061 -#, python-format -msgid "Failed to Move Cover File %(file)s: %(error)s" -msgstr "" - -#: cps/editbooks.py:1117 +#: cps/editbooks.py:287 #, python-format msgid "File %(file)s uploaded" msgstr "%(file)s dosyası yüklendi" -#: cps/editbooks.py:1143 +#: cps/editbooks.py:314 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:1151 +#: cps/editbooks.py:322 #, 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:1155 +#: cps/editbooks.py:326 #, 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:630 +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:685 cps/editbooks.py:1010 +#, fuzzy, python-format +msgid "'%(langname)s' is not a valid language" +msgstr "%(langname)s geçerli bir dil değil" + +#: cps/editbooks.py:723 cps/editbooks.py:1157 +#, 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:727 cps/editbooks.py:1161 +msgid "File to be uploaded must have an extension" +msgstr "Yüklenecek dosyanın mutlaka bir uzantısı olması gerekli" + +#: cps/editbooks.py:735 +#, python-format +msgid "File %(filename)s could not saved to temp dir" +msgstr "%(filename)s dosyası geçici dizine kaydedilemedi" + +#: cps/editbooks.py:755 +#, python-format +msgid "Failed to Move Cover File %(file)s: %(error)s" +msgstr "" + +#: cps/editbooks.py:812 cps/editbooks.py:814 +msgid "Book Format Successfully Deleted" +msgstr "" + +#: cps/editbooks.py:821 cps/editbooks.py:823 +msgid "Book Successfully Deleted" +msgstr "" + +#: cps/editbooks.py:875 +msgid "You are missing permissions to delete books" +msgstr "" + +#: cps/editbooks.py:925 +msgid "edit metadata" +msgstr "metaveri düzenle" + +#: cps/editbooks.py:974 +#, python-format +msgid "%(seriesindex)s is not a valid number, skipping" +msgstr "" + +#: cps/editbooks.py:1152 +msgid "User has no rights to upload additional file formats" +msgstr "" + +#: cps/editbooks.py:1173 +#, python-format +msgid "Failed to create path %(path)s (Permission denied)." +msgstr "%(path)s dizini oluşturulamadı. (İzin reddedildi)" + +#: cps/editbooks.py:1178 +#, python-format +msgid "Failed to store file %(file)s." +msgstr "%(file)s dosyası kaydedilemedi." + +#: cps/editbooks.py:1201 +#, python-format +msgid "File format %(ext)s added to %(book)s" +msgstr "%(book)s kitabına %(ext)s dosya biçimi eklendi" + #: cps/gdrive.py:58 msgid "Google Drive setup not completed, try to deactivate and activate Google Drive again" msgstr "Google Drive kurulumu tamamlanmadı, Google Drive'ı devre dışı bırakmayı ve tekrar etkinleştirmeyi deneyin" @@ -608,27 +633,27 @@ 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:81 +#: cps/helper.py:80 #, 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:87 cps/tasks/convert.py:75 +#: cps/helper.py:86 cps/tasks/convert.py:75 #, 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:92 +#: cps/helper.py:91 #, python-format msgid "%(format)s not found: %(fn)s" msgstr "%(format)s bulunamadı: %(fn)s" -#: cps/helper.py:97 cps/helper.py:221 cps/templates/detail.html:41 -#: cps/templates/detail.html:45 +#: cps/helper.py:96 cps/helper.py:221 cps/templates/detail.html:42 +#: cps/templates/detail.html:46 msgid "Send to Kindle" msgstr "Kindle'a gönder" -#: cps/helper.py:98 cps/helper.py:115 cps/helper.py:223 +#: cps/helper.py:97 cps/helper.py:115 cps/helper.py:223 msgid "This e-mail has been sent via Calibre-Web." msgstr "Bu e-Posta Calibre-Web ile gönderilmiştir." @@ -668,131 +693,111 @@ msgstr "Kindle'a gönder" msgid "The requested file could not be read. Maybe wrong permissions?" msgstr "İstenilen dosya okunamadı. Yanlış izinlerden kaynaklanabilir?" -#: cps/helper.py:353 +#: cps/helper.py:341 msgid "Read status could not set: {}" msgstr "" -#: cps/helper.py:376 +#: cps/helper.py:364 #, python-format msgid "Deleting bookfolder for book %(id)s failed, path has subfolders: %(path)s" msgstr "" -#: cps/helper.py:382 +#: cps/helper.py:370 #, python-format msgid "Deleting book %(id)s failed: %(message)s" msgstr "" -#: cps/helper.py:393 +#: cps/helper.py:381 #, python-format msgid "Deleting book %(id)s from database only, book path in database not valid: %(path)s" msgstr "" -#: cps/helper.py:458 +#: cps/helper.py:446 #, 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:529 cps/helper.py:538 +#: cps/helper.py:518 cps/helper.py:527 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "%(file)s dosyası Google Drive'da bulunamadı" -#: cps/helper.py:572 +#: cps/helper.py:561 #, 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:592 +#: cps/helper.py:581 msgid "Error in rename file in path: {}" msgstr "" -#: cps/helper.py:610 +#: cps/helper.py:599 #, python-format msgid "Book path %(path)s not found on Google Drive" msgstr "eKitap yolu %(path)s Google Drive'da bulunamadı" -#: cps/helper.py:651 cps/web.py:1737 +#: cps/helper.py:640 cps/web.py:1408 #, fuzzy msgid "Found an existing account for this e-mail address" msgstr "Bu e-posta adresi için bir hesap mevcut." -#: cps/helper.py:659 +#: cps/helper.py:648 msgid "This username is already taken" msgstr "Bu kullanıcı adı zaten alındı" -#: cps/helper.py:669 +#: cps/helper.py:658 msgid "Invalid e-mail address format" msgstr "" -#: cps/helper.py:754 -msgid "Python modul 'advocate' is not installed but is needed for cover downloads" +#: cps/helper.py:808 +msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "" -#: cps/helper.py:767 +#: cps/helper.py:818 msgid "Error Downloading Cover" msgstr "" -#: cps/helper.py:770 +#: cps/helper.py:821 msgid "Cover Format Error" msgstr "" -#: cps/helper.py:773 +#: cps/helper.py:824 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "" -#: cps/helper.py:783 +#: cps/helper.py:834 msgid "Failed to create path for cover" msgstr "" -#: cps/helper.py:799 +#: cps/helper.py:850 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "" -#: cps/helper.py:810 +#: cps/helper.py:861 msgid "Only jpg/jpeg/png/webp/bmp files are supported as coverfile" msgstr "" -#: cps/helper.py:822 +#: cps/helper.py:873 msgid "Invalid cover file content" msgstr "" -#: cps/helper.py:826 +#: cps/helper.py:877 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "" -#: cps/helper.py:878 +#: cps/helper.py:929 msgid "Unrar binary file not found" msgstr "" -#: cps/helper.py:889 +#: cps/helper.py:940 msgid "Error excecuting UnRar" msgstr "" -#: cps/helper.py:937 -msgid "Waiting" -msgstr "Bekleniyor" - -#: cps/helper.py:939 -msgid "Failed" -msgstr "Başarısız" - -#: cps/helper.py:941 -msgid "Started" -msgstr "Başladı" - -#: cps/helper.py:943 -msgid "Finished" -msgstr "Bitti" - -#: cps/helper.py:945 -msgid "Unknown Status" -msgstr "Bilinmeyen Durum" - -#: cps/kobo_auth.py:128 +#: cps/kobo_auth.py:89 msgid "Please access Calibre-Web from non localhost to get valid api_endpoint for kobo device" msgstr "" -#: cps/kobo_auth.py:154 +#: cps/kobo_auth.py:115 msgid "Kobo Setup" msgstr "" @@ -801,7 +806,7 @@ msgstr "" msgid "Register with %(provider)s" msgstr "%(provider)s ile Kaydol" -#: cps/oauth_bb.py:138 cps/remotelogin.py:130 cps/web.py:1613 +#: cps/oauth_bb.py:138 cps/remotelogin.py:130 cps/web.py:1286 #, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "giriş yaptınız: '%(nickname)s'" @@ -862,12 +867,12 @@ msgstr "Google Oauth hatası, lütfen tekrar deneyin." msgid "Google Oauth error: {}" msgstr "" -#: cps/opds.py:298 +#: cps/opds.py:287 msgid "{} Stars" msgstr "" -#: cps/remotelogin.py:62 cps/templates/layout.html:84 -#: cps/templates/login.html:4 cps/templates/login.html:21 cps/web.py:1662 +#: cps/remotelogin.py:62 cps/templates/layout.html:85 +#: cps/templates/login.html:4 cps/templates/login.html:21 cps/web.py:1335 msgid "Login" msgstr "Giriş" @@ -883,456 +888,489 @@ 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:41 cps/web.py:407 +#: cps/render_template.py:40 cps/web.py:405 msgid "Books" msgstr "eKitaplar" -#: cps/render_template.py:43 +#: cps/render_template.py:42 msgid "Show recent books" msgstr "Son eKitapları göster" -#: cps/render_template.py:44 cps/templates/index.xml:25 +#: cps/render_template.py:43 cps/templates/index.xml:25 msgid "Hot Books" msgstr "Popüler" -#: cps/render_template.py:46 +#: cps/render_template.py:45 msgid "Show Hot Books" msgstr "" -#: cps/render_template.py:48 cps/render_template.py:53 +#: cps/render_template.py:47 cps/render_template.py:52 msgid "Downloaded Books" msgstr "" -#: cps/render_template.py:50 cps/render_template.py:55 +#: cps/render_template.py:49 cps/render_template.py:54 #: cps/templates/user_table.html:167 msgid "Show Downloaded Books" msgstr "" -#: cps/render_template.py:58 cps/templates/index.xml:32 cps/web.py:422 +#: cps/render_template.py:57 cps/templates/index.xml:32 cps/web.py:420 msgid "Top Rated Books" msgstr "" -#: cps/render_template.py:60 cps/templates/user_table.html:161 +#: cps/render_template.py:59 cps/templates/user_table.html:161 msgid "Show Top Rated Books" msgstr "" -#: cps/render_template.py:61 cps/templates/index.xml:54 -#: cps/templates/index.xml:58 cps/web.py:729 +#: cps/render_template.py:60 cps/templates/index.xml:54 +#: cps/templates/index.xml:58 cps/web.py:739 msgid "Read Books" msgstr "Okunanlar" -#: cps/render_template.py:63 +#: cps/render_template.py:62 msgid "Show read and unread" msgstr "Okunan ve okunmayanları göster" -#: cps/render_template.py:65 cps/templates/index.xml:61 -#: cps/templates/index.xml:65 cps/web.py:732 +#: cps/render_template.py:64 cps/templates/index.xml:61 +#: cps/templates/index.xml:65 cps/web.py:742 msgid "Unread Books" msgstr "Okunmamışlar" -#: cps/render_template.py:67 +#: cps/render_template.py:66 msgid "Show unread" msgstr "Okunmamışları göster" -#: cps/render_template.py:68 +#: cps/render_template.py:67 msgid "Discover" msgstr "Keşfet" -#: cps/render_template.py:70 cps/templates/index.xml:50 +#: cps/render_template.py:69 cps/templates/index.xml:50 #: cps/templates/user_table.html:162 msgid "Show Random Books" msgstr "Rastgele Kitap Göster" -#: cps/render_template.py:71 cps/templates/book_table.html:67 -#: cps/templates/index.xml:83 cps/web.py:1135 +#: cps/render_template.py:70 cps/templates/book_table.html:67 +#: cps/templates/index.xml:83 cps/web.py:1098 msgid "Categories" msgstr "Kategoriler" -#: cps/render_template.py:73 cps/templates/user_table.html:158 +#: cps/render_template.py:72 cps/templates/user_table.html:158 msgid "Show category selection" msgstr "Kategori seçimini göster" -#: cps/render_template.py:74 cps/templates/book_edit.html:90 +#: cps/render_template.py:73 cps/templates/book_edit.html:91 #: cps/templates/book_table.html:68 cps/templates/index.xml:90 -#: cps/templates/search_form.html:69 cps/web.py:1034 cps/web.py:1041 +#: cps/templates/search_form.html:69 cps/web.py:995 cps/web.py:1002 msgid "Series" msgstr "Seriler" -#: cps/render_template.py:76 cps/templates/user_table.html:157 +#: cps/render_template.py:75 cps/templates/user_table.html:157 msgid "Show series selection" msgstr "Seri seçimini göster" -#: cps/render_template.py:77 cps/templates/book_table.html:66 +#: cps/render_template.py:76 cps/templates/book_table.html:66 #: cps/templates/index.xml:69 msgid "Authors" msgstr "Yazarlar" -#: cps/render_template.py:79 cps/templates/user_table.html:160 +#: cps/render_template.py:78 cps/templates/user_table.html:160 msgid "Show author selection" msgstr "Yazar seçimini göster" -#: cps/render_template.py:81 cps/templates/book_table.html:72 -#: cps/templates/index.xml:76 cps/web.py:1006 +#: cps/render_template.py:80 cps/templates/book_table.html:72 +#: cps/templates/index.xml:76 cps/web.py:966 msgid "Publishers" msgstr "Yayıncılar" -#: cps/render_template.py:83 cps/templates/user_table.html:163 +#: cps/render_template.py:82 cps/templates/user_table.html:163 msgid "Show publisher selection" msgstr "Yayıncı seçimini göster" -#: cps/render_template.py:84 cps/templates/book_table.html:70 +#: cps/render_template.py:83 cps/templates/book_table.html:70 #: cps/templates/index.xml:97 cps/templates/search_form.html:107 -#: cps/web.py:1108 +#: cps/web.py:1070 msgid "Languages" msgstr "Diller" -#: cps/render_template.py:87 cps/templates/user_table.html:155 +#: cps/render_template.py:86 cps/templates/user_table.html:155 msgid "Show language selection" msgstr "Dil seçimini göster" -#: cps/render_template.py:88 cps/templates/index.xml:104 +#: cps/render_template.py:87 cps/templates/index.xml:104 msgid "Ratings" msgstr "Değerlendirmeler" -#: cps/render_template.py:90 cps/templates/user_table.html:164 +#: cps/render_template.py:89 cps/templates/user_table.html:164 msgid "Show ratings selection" msgstr "Değerlendirme seçimini göster" -#: cps/render_template.py:91 cps/templates/index.xml:112 +#: cps/render_template.py:90 cps/templates/index.xml:112 msgid "File formats" msgstr "Biçimler" -#: cps/render_template.py:93 cps/templates/user_table.html:165 +#: cps/render_template.py:92 cps/templates/user_table.html:165 msgid "Show file formats selection" msgstr "Dosya biçimi seçimini göster" -#: cps/render_template.py:95 cps/web.py:755 +#: cps/render_template.py:94 cps/web.py:765 msgid "Archived Books" msgstr "" -#: cps/render_template.py:97 cps/templates/user_table.html:166 +#: cps/render_template.py:96 cps/templates/user_table.html:166 msgid "Show archived books" msgstr "" -#: cps/render_template.py:100 cps/web.py:837 +#: cps/render_template.py:99 cps/web.py:796 msgid "Books List" msgstr "" -#: cps/render_template.py:102 cps/templates/user_table.html:168 +#: cps/render_template.py:101 cps/templates/user_table.html:168 msgid "Show Books List" msgstr "" -#: cps/shelf.py:67 cps/shelf.py:121 -msgid "Invalid shelf specified" -msgstr "Geçersiz kitaplık seçildi" - -#: cps/shelf.py:73 -#, fuzzy -msgid "Sorry you are not allowed to add a book to that shelf" -msgstr "Maalesef bu kitaplığa eKitap eklemenize izin verilmiyor: %(shelfname)s" - -#: cps/shelf.py:82 -#, python-format -msgid "Book is already part of the shelf: %(shelfname)s" -msgstr "eKitap zaten bu kitaplıkta bulunuyor: %(shelfname)s" - -#: cps/shelf.py:107 -#, python-format -msgid "Book has been added to shelf: %(sname)s" -msgstr "eKitap kitaplığa eklendi: %(sname)s" - -#: cps/shelf.py:126 -msgid "You are not allowed to add a book to the shelf" -msgstr "" - -#: cps/shelf.py:144 -#, python-format -msgid "Books are already part of the shelf: %(name)s" -msgstr "eKitaplar zaten bu kitaplıkta bulunuyor: %(name)s" - -#: cps/shelf.py:156 -#, python-format -msgid "Books have been added to shelf: %(sname)s" -msgstr "eKitaplar kitaplığa eklendi: %(sname)s" - -#: cps/shelf.py:163 -#, python-format -msgid "Could not add books to shelf: %(sname)s" -msgstr "eKitaplar kitaplığa eklenemedi: %(sname)s" - -#: cps/shelf.py:209 -#, python-format -msgid "Book has been removed from shelf: %(sname)s" -msgstr "eKitap kitaplıktan silindi: %(sname)s" - -#: cps/shelf.py:218 -msgid "Sorry you are not allowed to remove a book from this shelf" -msgstr "" - -#: cps/shelf.py:228 cps/templates/layout.html:140 -msgid "Create a Shelf" -msgstr "Kitaplık oluştur" - -#: cps/shelf.py:236 -#, fuzzy -msgid "Sorry you are not allowed to edit this shelf" -msgstr "Maalesef bu kitaplıktan eKitap silmenize izin verilmiyor: %(sname)s" - -#: cps/shelf.py:238 -msgid "Edit a shelf" -msgstr "Kitaplığı düzenle" - -#: cps/shelf.py:248 -msgid "Sorry you are not allowed to create a public shelf" -msgstr "" - -#: cps/shelf.py:265 -#, python-format -msgid "Shelf %(title)s created" -msgstr "%(title)s kitaplığı oluşturuldu." - -#: cps/shelf.py:268 -#, python-format -msgid "Shelf %(title)s changed" -msgstr "%(title)s kitaplığı değiştirildi" - -#: cps/shelf.py:282 -msgid "There was an error" -msgstr "Bir hata oluştu" - -#: cps/shelf.py:304 -#, python-format -msgid "A public shelf with the name '%(title)s' already exists." -msgstr "" - -#: cps/shelf.py:315 -#, python-format -msgid "A private shelf with the name '%(title)s' already exists." -msgstr "" - -#: cps/shelf.py:337 -msgid "Error deleting Shelf" -msgstr "" - -#: cps/shelf.py:339 -#, fuzzy -msgid "Shelf successfully deleted" -msgstr "Metaveri başarıyla güncellendi" - -#: cps/shelf.py:389 -#, python-format -msgid "Change order of Shelf: '%(name)s'" -msgstr "Kitaplık sıralamasını değiştir: '%(name)s'" - -#: cps/shelf.py:461 -#, python-format -msgid "Shelf: '%(name)s'" -msgstr "Kitaplık: '%(name)s'" - -#: cps/shelf.py:465 -msgid "Error opening shelf. Shelf does not exist or is not accessible" -msgstr "Kitaplık açılırken hata oluştu. Kitaplık mevcut değil ya da erişilebilir değil" - -#: cps/updater.py:426 cps/updater.py:437 cps/updater.py:538 cps/updater.py:553 -msgid "Unexpected data while reading update information" -msgstr "Güncelleme bilgileri okunurken beklenmeyen veri" - -#: cps/updater.py:433 cps/updater.py:545 -msgid "No update available. You already have the latest version installed" -msgstr "Yeni güncelleme mevcut değil. Zaten en son sürüme sahipsiniz." - -#: cps/updater.py:451 -msgid "A new update is available. Click on the button below to update to the latest version." -msgstr "Yeni bir güncelleme mevcut. Son sürüme güncellemek için aşağıdaki düğmeye tıklayın." - -#: cps/updater.py:469 -msgid "Could not fetch update information" -msgstr "Güncelleme bilgileri alınamadı" - -#: cps/updater.py:479 -msgid "Click on the button below to update to the latest stable version." -msgstr "Son kararlı sürüme güncellemek için aşağıdaki düğmeye tıklayın." - -#: cps/updater.py:488 cps/updater.py:502 cps/updater.py:513 -#, python-format -msgid "A new update is available. Click on the button below to update to version: %(version)s" -msgstr "Yeni bir güncelleme mevcut. Son sürüme güncellemek için aşağıdaki düğmeye tıklayın: %(version)s" - -#: cps/updater.py:531 -msgid "No release information available" -msgstr "Sürüm bilgisi mevcut değil" - -#: cps/templates/index.html:5 cps/web.py:434 -msgid "Discover (Random Books)" -msgstr "Keşfet (Rastgele)" - -#: cps/web.py:470 -msgid "Hot Books (Most Downloaded)" -msgstr "" - -#: cps/web.py:501 -#, python-format -msgid "Downloaded books by %(user)s" -msgstr "" - -#: cps/web.py:534 -#, python-format -msgid "Author: %(name)s" -msgstr "Yazar: %(name)s" - -#: cps/web.py:570 -#, python-format -msgid "Publisher: %(name)s" -msgstr "Yayınevi: %(name)s" - -#: cps/web.py:598 -#, python-format -msgid "Series: %(serie)s" -msgstr "Seri: %(serie)s" - -#: cps/web.py:610 -#, python-format -msgid "Rating: %(rating)s stars" -msgstr "Değerlendirme: %(rating)s yıldız" - -#: cps/web.py:626 -#, python-format -msgid "File format: %(format)s" -msgstr "Biçim: %(format)s" - -#: cps/web.py:663 -#, python-format -msgid "Category: %(name)s" -msgstr "Kategori: %(name)s" - -#: cps/web.py:690 -#, python-format -msgid "Language: %(name)s" -msgstr "Dil: %(name)s" - -#: cps/templates/layout.html:56 cps/web.py:789 cps/web.py:1444 -msgid "Advanced Search" -msgstr "Gelişmiş Arama" - -#: cps/templates/book_edit.html:235 cps/templates/feed.xml:33 -#: cps/templates/index.xml:11 cps/templates/layout.html:45 -#: cps/templates/layout.html:48 cps/templates/search_form.html:226 -#: cps/web.py:807 cps/web.py:1164 +#: cps/search.py:48 cps/search.py:414 cps/templates/book_edit.html:236 +#: cps/templates/feed.xml:33 cps/templates/index.xml:11 +#: cps/templates/layout.html:46 cps/templates/layout.html:49 +#: cps/templates/search_form.html:226 msgid "Search" msgstr "Ara" -#: cps/templates/admin.html:16 cps/web.py:979 -msgid "Downloads" -msgstr "" - -#: cps/web.py:1068 -msgid "Ratings list" -msgstr "Değerlendirme listesi" - -#: cps/web.py:1095 -msgid "File formats list" -msgstr "Biçim listesi" - -#: cps/templates/layout.html:73 cps/templates/tasks.html:7 cps/web.py:1149 -msgid "Tasks" -msgstr "Görevler" - -#: cps/web.py:1286 +#: cps/search.py:194 msgid "Published after " msgstr "Yayınlanma (sonra)" -#: cps/web.py:1293 +#: cps/search.py:201 msgid "Published before " msgstr "Yayınlanma (önce)" -#: cps/web.py:1315 +#: cps/search.py:223 #, python-format msgid "Rating <= %(rating)s" msgstr "Değerlendirme <= %(rating)s" -#: cps/web.py:1317 +#: cps/search.py:225 #, python-format msgid "Rating >= %(rating)s" msgstr "Değerlendirme >= %(rating)s" -#: cps/web.py:1319 +#: cps/search.py:227 #, python-format msgid "Read Status = %(status)s" msgstr "" -#: cps/web.py:1425 +#: cps/search.py:345 msgid "Error on search for custom columns, please restart Calibre-Web" msgstr "" -#: cps/web.py:1527 +#: cps/search.py:364 cps/search.py:396 cps/templates/layout.html:57 +msgid "Advanced Search" +msgstr "Gelişmiş Arama" + +#: cps/shelf.py:49 cps/shelf.py:103 +msgid "Invalid shelf specified" +msgstr "Geçersiz kitaplık seçildi" + +#: cps/shelf.py:55 +#, fuzzy +msgid "Sorry you are not allowed to add a book to that shelf" +msgstr "Maalesef bu kitaplığa eKitap eklemenize izin verilmiyor: %(shelfname)s" + +#: cps/shelf.py:64 +#, python-format +msgid "Book is already part of the shelf: %(shelfname)s" +msgstr "eKitap zaten bu kitaplıkta bulunuyor: %(shelfname)s" + +#: cps/shelf.py:89 +#, python-format +msgid "Book has been added to shelf: %(sname)s" +msgstr "eKitap kitaplığa eklendi: %(sname)s" + +#: cps/shelf.py:108 +msgid "You are not allowed to add a book to the shelf" +msgstr "" + +#: cps/shelf.py:126 +#, python-format +msgid "Books are already part of the shelf: %(name)s" +msgstr "eKitaplar zaten bu kitaplıkta bulunuyor: %(name)s" + +#: cps/shelf.py:138 +#, python-format +msgid "Books have been added to shelf: %(sname)s" +msgstr "eKitaplar kitaplığa eklendi: %(sname)s" + +#: cps/shelf.py:145 +#, python-format +msgid "Could not add books to shelf: %(sname)s" +msgstr "eKitaplar kitaplığa eklenemedi: %(sname)s" + +#: cps/shelf.py:191 +#, python-format +msgid "Book has been removed from shelf: %(sname)s" +msgstr "eKitap kitaplıktan silindi: %(sname)s" + +#: cps/shelf.py:200 +msgid "Sorry you are not allowed to remove a book from this shelf" +msgstr "" + +#: cps/shelf.py:210 cps/templates/layout.html:141 +msgid "Create a Shelf" +msgstr "Kitaplık oluştur" + +#: cps/shelf.py:218 +#, fuzzy +msgid "Sorry you are not allowed to edit this shelf" +msgstr "Maalesef bu kitaplıktan eKitap silmenize izin verilmiyor: %(sname)s" + +#: cps/shelf.py:220 +msgid "Edit a shelf" +msgstr "Kitaplığı düzenle" + +#: cps/shelf.py:229 +msgid "Error deleting Shelf" +msgstr "" + +#: cps/shelf.py:231 +#, fuzzy +msgid "Shelf successfully deleted" +msgstr "Metaveri başarıyla güncellendi" + +#: cps/shelf.py:281 +#, python-format +msgid "Change order of Shelf: '%(name)s'" +msgstr "Kitaplık sıralamasını değiştir: '%(name)s'" + +#: cps/shelf.py:313 +msgid "Sorry you are not allowed to create a public shelf" +msgstr "" + +#: cps/shelf.py:330 +#, python-format +msgid "Shelf %(title)s created" +msgstr "%(title)s kitaplığı oluşturuldu." + +#: cps/shelf.py:333 +#, python-format +msgid "Shelf %(title)s changed" +msgstr "%(title)s kitaplığı değiştirildi" + +#: cps/shelf.py:347 +msgid "There was an error" +msgstr "Bir hata oluştu" + +#: cps/shelf.py:369 +#, python-format +msgid "A public shelf with the name '%(title)s' already exists." +msgstr "" + +#: cps/shelf.py:380 +#, python-format +msgid "A private shelf with the name '%(title)s' already exists." +msgstr "" + +#: cps/shelf.py:462 +#, python-format +msgid "Shelf: '%(name)s'" +msgstr "Kitaplık: '%(name)s'" + +#: cps/shelf.py:466 +msgid "Error opening shelf. Shelf does not exist or is not accessible" +msgstr "Kitaplık açılırken hata oluştu. Kitaplık mevcut değil ya da erişilebilir değil" + +#: cps/tasks_status.py:48 cps/templates/layout.html:74 +#: cps/templates/tasks.html:7 +msgid "Tasks" +msgstr "Görevler" + +#: cps/tasks_status.py:64 +msgid "Waiting" +msgstr "Bekleniyor" + +#: cps/tasks_status.py:66 +msgid "Failed" +msgstr "Başarısız" + +#: cps/tasks_status.py:68 +msgid "Started" +msgstr "Başladı" + +#: cps/tasks_status.py:70 +msgid "Finished" +msgstr "Bitti" + +#: cps/tasks_status.py:72 +msgid "Ended" +msgstr "" + +#: cps/tasks_status.py:74 +msgid "Cancelled" +msgstr "" + +#: cps/tasks_status.py:76 +msgid "Unknown Status" +msgstr "Bilinmeyen Durum" + +#: cps/updater.py:431 cps/updater.py:442 cps/updater.py:543 cps/updater.py:558 +msgid "Unexpected data while reading update information" +msgstr "Güncelleme bilgileri okunurken beklenmeyen veri" + +#: cps/updater.py:438 cps/updater.py:550 +msgid "No update available. You already have the latest version installed" +msgstr "Yeni güncelleme mevcut değil. Zaten en son sürüme sahipsiniz." + +#: cps/updater.py:456 +msgid "A new update is available. Click on the button below to update to the latest version." +msgstr "Yeni bir güncelleme mevcut. Son sürüme güncellemek için aşağıdaki düğmeye tıklayın." + +#: cps/updater.py:474 +msgid "Could not fetch update information" +msgstr "Güncelleme bilgileri alınamadı" + +#: cps/updater.py:484 +msgid "Click on the button below to update to the latest stable version." +msgstr "Son kararlı sürüme güncellemek için aşağıdaki düğmeye tıklayın." + +#: cps/updater.py:493 cps/updater.py:507 cps/updater.py:518 +#, python-format +msgid "A new update is available. Click on the button below to update to version: %(version)s" +msgstr "Yeni bir güncelleme mevcut. Son sürüme güncellemek için aşağıdaki düğmeye tıklayın: %(version)s" + +#: cps/updater.py:536 +msgid "No release information available" +msgstr "Sürüm bilgisi mevcut değil" + +#: cps/templates/index.html:6 cps/web.py:432 +msgid "Discover (Random Books)" +msgstr "Keşfet (Rastgele)" + +#: cps/web.py:468 +msgid "Hot Books (Most Downloaded)" +msgstr "" + +#: cps/web.py:499 +#, python-format +msgid "Downloaded books by %(user)s" +msgstr "" + +#: cps/web.py:532 +#, python-format +msgid "Author: %(name)s" +msgstr "Yazar: %(name)s" + +#: cps/web.py:568 +#, python-format +msgid "Publisher: %(name)s" +msgstr "Yayınevi: %(name)s" + +#: cps/web.py:596 +#, python-format +msgid "Series: %(serie)s" +msgstr "Seri: %(serie)s" + +#: cps/web.py:609 +msgid "Rating: None" +msgstr "" + +#: cps/web.py:618 +#, python-format +msgid "Rating: %(rating)s stars" +msgstr "Değerlendirme: %(rating)s yıldız" + +#: cps/web.py:636 +#, python-format +msgid "File format: %(format)s" +msgstr "Biçim: %(format)s" + +#: cps/web.py:673 +#, python-format +msgid "Category: %(name)s" +msgstr "Kategori: %(name)s" + +#: cps/web.py:700 +#, python-format +msgid "Language: %(name)s" +msgstr "Dil: %(name)s" + +#: cps/templates/admin.html:16 cps/web.py:938 +msgid "Downloads" +msgstr "" + +#: cps/web.py:1030 +msgid "Ratings list" +msgstr "Değerlendirme listesi" + +#: cps/web.py:1057 +msgid "File formats list" +msgstr "Biçim listesi" + +#: cps/web.py:1199 #, python-format msgid "Book successfully queued for sending to %(kindlemail)s" msgstr "%(kindlemail)s'a gönderilmek üzere başarıyla sıraya alındı" -#: cps/web.py:1531 +#: cps/web.py:1203 #, python-format msgid "Oops! There was an error sending this book: %(res)s" msgstr "" -#: cps/web.py:1533 +#: cps/web.py:1205 msgid "Please update your profile with a valid Send to Kindle E-mail Address." msgstr "" -#: cps/web.py:1550 +#: cps/web.py:1222 msgid "E-Mail server is not configured, please contact your administrator!" msgstr "E-Posta sunucusu ayarlanmadı, lütfen yöneticinizle iletişime geçin!" -#: cps/templates/layout.html:85 cps/templates/register.html:17 cps/web.py:1551 -#: cps/web.py:1558 cps/web.py:1564 cps/web.py:1583 cps/web.py:1587 -#: cps/web.py:1593 +#: cps/templates/layout.html:86 cps/templates/register.html:17 cps/web.py:1223 +#: cps/web.py:1230 cps/web.py:1236 cps/web.py:1255 cps/web.py:1260 +#: cps/web.py:1266 msgid "Register" msgstr "Kayıt ol" -#: cps/web.py:1585 +#: cps/web.py:1257 msgid "Your e-mail is not allowed to register" msgstr "E-posta adresinizle kaydolunmasına izin verilmiyor" -#: cps/web.py:1588 +#: cps/web.py:1261 msgid "Confirmation e-mail was send to your e-mail account." msgstr "Onay e-Postası hesabınıza gönderildi." -#: cps/web.py:1602 +#: cps/web.py:1275 msgid "Cannot activate LDAP authentication" msgstr "LDAP Kimlik Doğrulaması etkinleştirilemiyor" -#: cps/web.py:1621 +#: cps/web.py:1294 #, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgstr "" -#: cps/web.py:1627 +#: cps/web.py:1300 #, python-format msgid "Could not login: %(message)s" msgstr "" -#: cps/web.py:1631 cps/web.py:1656 +#: cps/web.py:1304 cps/web.py:1329 msgid "Wrong Username or Password" msgstr "Yanlış Kullanıcı adı ya da Şifre" -#: cps/web.py:1638 +#: cps/web.py:1311 msgid "New Password was send to your email address" msgstr "Yeni şifre e-Posta adresinize gönderildi" -#: cps/web.py:1644 +#: cps/web.py:1317 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:1651 +#: cps/web.py:1324 #, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "Giriş yaptınız: '%(nickname)s'" -#: cps/web.py:1717 cps/web.py:1766 +#: cps/web.py:1388 cps/web.py:1437 #, python-format msgid "%(name)s's profile" msgstr "%(name)s Profili" -#: cps/web.py:1733 +#: cps/web.py:1404 msgid "Profile updated" msgstr "Profil güncellendi" @@ -1340,40 +1378,75 @@ msgstr "Profil güncellendi" msgid "Found no valid gmail.json file with OAuth information" msgstr "" -#: cps/tasks/convert.py:154 +#: cps/tasks/convert.py:153 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "" -#: cps/tasks/convert.py:187 +#: cps/tasks/convert.py:186 #, python-format msgid "%(format)s format not found on disk" msgstr "" -#: cps/tasks/convert.py:191 +#: cps/tasks/convert.py:190 msgid "Ebook converter failed with unknown error" msgstr "" -#: cps/tasks/convert.py:201 +#: cps/tasks/convert.py:200 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "" -#: cps/tasks/convert.py:223 +#: cps/tasks/convert.py:222 #, python-format msgid "Converted file not found or more than one file in folder %(folder)s" msgstr "" -#: cps/tasks/convert.py:246 +#: cps/tasks/convert.py:245 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "eKitap-Dönüştürücü hatası: %(error)s" -#: cps/tasks/convert.py:269 +#: cps/tasks/convert.py:268 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "" +#: cps/tasks/convert.py:273 +msgid "Convert" +msgstr "" + +#: cps/tasks/database.py:28 +msgid "Reconnecting Calibre database" +msgstr "" + +#: cps/tasks/mail.py:265 +msgid "E-mail" +msgstr "" + +#: cps/tasks/thumbnail.py:95 +#, python-format +msgid "Generated %(count)s cover thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:222 cps/tasks/thumbnail.py:435 +#: cps/tasks/thumbnail.py:503 +msgid "Cover Thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:281 +msgid "Generated {0} series thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:446 +msgid "Clearing cover thumbnail cache" +msgstr "" + +#: cps/tasks/upload.py:38 cps/templates/admin.html:20 +#: cps/templates/layout.html:67 cps/templates/user_table.html:145 +msgid "Upload" +msgstr "Yükleme" + #: cps/templates/admin.html:9 msgid "Users" msgstr "" @@ -1393,7 +1466,7 @@ msgstr "" msgid "Send to Kindle E-mail Address" msgstr "" -#: cps/templates/admin.html:17 cps/templates/layout.html:76 +#: cps/templates/admin.html:17 cps/templates/layout.html:77 #: cps/templates/user_table.html:143 msgid "Admin" msgstr "Yönetim" @@ -1403,13 +1476,8 @@ msgstr "Yönetim" msgid "Password" msgstr "Şifre" -#: cps/templates/admin.html:20 cps/templates/layout.html:66 -#: cps/templates/user_table.html:145 -msgid "Upload" -msgstr "Yükleme" - -#: cps/templates/admin.html:22 cps/templates/detail.html:18 -#: cps/templates/detail.html:27 cps/templates/shelf.html:7 +#: cps/templates/admin.html:22 cps/templates/detail.html:19 +#: cps/templates/detail.html:28 cps/templates/shelf.html:8 #: cps/templates/user_table.html:146 msgid "Download" msgstr "İndirme" @@ -1423,7 +1491,7 @@ msgstr "" msgid "Edit" msgstr "Düzenleme" -#: cps/templates/admin.html:25 cps/templates/book_edit.html:16 +#: cps/templates/admin.html:25 cps/templates/book_edit.html:17 #: cps/templates/book_table.html:100 cps/templates/modal_dialogs.html:63 #: cps/templates/modal_dialogs.html:116 cps/templates/user_edit.html:67 #: cps/templates/user_table.html:149 @@ -1536,78 +1604,107 @@ msgstr "" msgid "Edit UI Configuration" msgstr "" -#: cps/templates/admin.html:166 -msgid "Administration" -msgstr "Yönetim" - #: cps/templates/admin.html:167 -msgid "Download Debug Package" +msgid "Scheduled Tasks" msgstr "" -#: cps/templates/admin.html:168 -msgid "View Logs" +#: cps/templates/admin.html:170 cps/templates/schedule_edit.html:12 +msgid "Time at which tasks start to run" msgstr "" -#: cps/templates/admin.html:171 -msgid "Reconnect Calibre Database" -msgstr "" - -#: cps/templates/admin.html:172 -msgid "Restart" -msgstr "" - -#: cps/templates/admin.html:173 -msgid "Shutdown" +#: cps/templates/admin.html:174 cps/templates/schedule_edit.html:20 +msgid "Maximum tasks duration" msgstr "" #: cps/templates/admin.html:178 -msgid "Update" -msgstr "Güncelleme" +msgid "Generate book cover thumbnails" +msgstr "" #: cps/templates/admin.html:182 +msgid "Generate series cover thumbnails" +msgstr "" + +#: cps/templates/admin.html:186 cps/templates/schedule_edit.html:37 +msgid "Reconnect to Calibre Library" +msgstr "" + +#: cps/templates/admin.html:193 +msgid "Refresh Thumbnail Cover Cache" +msgstr "" + +#: cps/templates/admin.html:199 +msgid "Administration" +msgstr "Yönetim" + +#: cps/templates/admin.html:200 +msgid "Download Debug Package" +msgstr "" + +#: cps/templates/admin.html:201 +msgid "View Logs" +msgstr "" + +#: cps/templates/admin.html:204 +msgid "Reconnect Calibre Database" +msgstr "" + +#: cps/templates/admin.html:207 +msgid "Restart" +msgstr "" + +#: cps/templates/admin.html:208 +msgid "Shutdown" +msgstr "" + +#: cps/templates/admin.html:213 +msgid "Version Information" +msgstr "" + +#: cps/templates/admin.html:217 msgid "Version" msgstr "Sürüm" -#: cps/templates/admin.html:183 +#: cps/templates/admin.html:218 msgid "Details" msgstr "Detaylar" -#: cps/templates/admin.html:189 +#: cps/templates/admin.html:224 msgid "Current version" msgstr "Geçerli sürüm" -#: cps/templates/admin.html:196 +#: cps/templates/admin.html:231 msgid "Check for Update" msgstr "" -#: cps/templates/admin.html:197 +#: cps/templates/admin.html:232 msgid "Perform Update" msgstr "Güncelle" -#: cps/templates/admin.html:210 +#: cps/templates/admin.html:245 msgid "Are you sure you want to restart?" msgstr "" -#: cps/templates/admin.html:215 cps/templates/admin.html:229 -#: cps/templates/admin.html:249 cps/templates/config_db.html:70 +#: cps/templates/admin.html:250 cps/templates/admin.html:264 +#: cps/templates/admin.html:284 cps/templates/config_db.html:70 msgid "OK" msgstr "" -#: cps/templates/admin.html:216 cps/templates/admin.html:230 -#: cps/templates/book_edit.html:213 cps/templates/book_table.html:127 +#: cps/templates/admin.html:251 cps/templates/admin.html:265 +#: cps/templates/book_edit.html:214 cps/templates/book_table.html:127 #: cps/templates/config_db.html:54 cps/templates/config_edit.html:359 #: 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/shelf_edit.html:27 +#: cps/templates/modal_dialogs.html:135 cps/templates/schedule_edit.html:41 +#: cps/templates/shelf_edit.html:27 cps/templates/tasks.html:46 #: cps/templates/user_edit.html:144 msgid "Cancel" msgstr "" -#: cps/templates/admin.html:228 +#: cps/templates/admin.html:263 msgid "Are you sure you want to shutdown?" msgstr "" -#: cps/templates/admin.html:240 +#: cps/templates/admin.html:275 msgid "Updating, please do not reload this page" msgstr "" @@ -1619,39 +1716,39 @@ msgstr "ile" msgid "In Library" msgstr "Kitaplıkta" -#: cps/templates/author.html:26 cps/templates/index.html:73 -#: cps/templates/search.html:30 cps/templates/shelf.html:19 +#: cps/templates/author.html:26 cps/templates/index.html:74 +#: cps/templates/search.html:31 cps/templates/shelf.html:20 msgid "Sort according to book date, newest first" msgstr "" -#: cps/templates/author.html:27 cps/templates/index.html:74 -#: cps/templates/search.html:31 cps/templates/shelf.html:20 +#: cps/templates/author.html:27 cps/templates/index.html:75 +#: cps/templates/search.html:32 cps/templates/shelf.html:21 msgid "Sort according to book date, oldest first" msgstr "" -#: cps/templates/author.html:28 cps/templates/index.html:75 -#: cps/templates/search.html:32 cps/templates/shelf.html:21 +#: cps/templates/author.html:28 cps/templates/index.html:76 +#: cps/templates/search.html:33 cps/templates/shelf.html:22 msgid "Sort title in alphabetical order" msgstr "" -#: cps/templates/author.html:29 cps/templates/index.html:76 -#: cps/templates/search.html:33 cps/templates/shelf.html:22 +#: cps/templates/author.html:29 cps/templates/index.html:77 +#: cps/templates/search.html:34 cps/templates/shelf.html:23 msgid "Sort title in reverse alphabetical order" msgstr "" -#: cps/templates/author.html:30 cps/templates/index.html:79 -#: cps/templates/search.html:36 cps/templates/shelf.html:25 +#: cps/templates/author.html:30 cps/templates/index.html:80 +#: cps/templates/search.html:37 cps/templates/shelf.html:26 msgid "Sort according to publishing date, newest first" msgstr "" -#: cps/templates/author.html:31 cps/templates/index.html:80 -#: cps/templates/search.html:37 cps/templates/shelf.html:26 +#: cps/templates/author.html:31 cps/templates/index.html:81 +#: cps/templates/search.html:38 cps/templates/shelf.html:27 msgid "Sort according to publishing date, oldest first" msgstr "" #: cps/templates/author.html:56 cps/templates/author.html:115 -#: cps/templates/index.html:29 cps/templates/index.html:112 -#: cps/templates/search.html:66 cps/templates/shelf.html:54 +#: cps/templates/index.html:30 cps/templates/index.html:113 +#: cps/templates/search.html:67 cps/templates/shelf.html:55 msgid "reduce" msgstr "azalt" @@ -1659,165 +1756,166 @@ msgstr "azalt" msgid "More by" msgstr "daha fazla" -#: cps/templates/book_edit.html:10 +#: cps/templates/book_edit.html:11 msgid "Delete Book" msgstr "eKitabı Sil" -#: cps/templates/book_edit.html:13 +#: cps/templates/book_edit.html:14 msgid "Delete formats:" msgstr "Biçimleri Sil:" -#: cps/templates/book_edit.html:24 +#: cps/templates/book_edit.html:25 msgid "Convert book format:" msgstr "Biçime dönüştür:" -#: cps/templates/book_edit.html:29 +#: cps/templates/book_edit.html:30 msgid "Convert from:" msgstr "Biçimden dönüştür:" -#: cps/templates/book_edit.html:31 cps/templates/book_edit.html:38 +#: cps/templates/book_edit.html:32 cps/templates/book_edit.html:39 msgid "select an option" msgstr "bir seçenek seçin" -#: cps/templates/book_edit.html:36 +#: cps/templates/book_edit.html:37 msgid "Convert to:" msgstr "Dönüştür:" -#: cps/templates/book_edit.html:45 +#: cps/templates/book_edit.html:46 msgid "Convert book" msgstr "eKitabı dönüştür" -#: cps/templates/book_edit.html:55 cps/templates/search_form.html:8 +#: cps/templates/book_edit.html:56 cps/templates/search_form.html:8 msgid "Book Title" msgstr "Kitap Adı" -#: cps/templates/book_edit.html:62 cps/templates/book_edit.html:270 -#: cps/templates/book_edit.html:288 cps/templates/search_form.html:12 +#: cps/templates/book_edit.html:63 cps/templates/book_edit.html:271 +#: cps/templates/book_edit.html:289 cps/templates/search_form.html:12 msgid "Author" msgstr "Yazar" -#: cps/templates/book_edit.html:67 cps/templates/book_edit.html:275 -#: cps/templates/book_edit.html:290 cps/templates/search_form.html:153 +#: cps/templates/book_edit.html:68 cps/templates/book_edit.html:276 +#: cps/templates/book_edit.html:291 cps/templates/search_form.html:153 msgid "Description" msgstr "Açıklama" -#: cps/templates/book_edit.html:72 +#: cps/templates/book_edit.html:73 msgid "Identifiers" msgstr "" -#: cps/templates/book_edit.html:76 cps/templates/book_edit.html:299 +#: cps/templates/book_edit.html:77 cps/templates/book_edit.html:300 msgid "Identifier Type" msgstr "" -#: cps/templates/book_edit.html:77 cps/templates/book_edit.html:300 +#: cps/templates/book_edit.html:78 cps/templates/book_edit.html:301 msgid "Identifier Value" msgstr "" -#: cps/templates/book_edit.html:78 cps/templates/book_edit.html:301 +#: cps/templates/book_edit.html:79 cps/templates/book_edit.html:302 #: cps/templates/user_table.html:24 msgid "Remove" msgstr "" -#: cps/templates/book_edit.html:82 +#: cps/templates/book_edit.html:83 msgid "Add Identifier" msgstr "" -#: cps/templates/book_edit.html:86 cps/templates/search_form.html:51 +#: cps/templates/book_edit.html:87 cps/templates/search_form.html:51 msgid "Tags" msgstr "Etiketler" -#: cps/templates/book_edit.html:94 +#: cps/templates/book_edit.html:95 msgid "Series ID" msgstr "" -#: cps/templates/book_edit.html:98 +#: cps/templates/book_edit.html:99 msgid "Rating" msgstr "Değerlendirme" -#: cps/templates/book_edit.html:103 +#: cps/templates/book_edit.html:104 msgid "Fetch Cover from URL (JPEG - Image will be downloaded and stored in database)" msgstr "" -#: cps/templates/book_edit.html:107 +#: cps/templates/book_edit.html:108 msgid "Upload Cover from Local Disk" msgstr "" -#: cps/templates/book_edit.html:112 +#: cps/templates/book_edit.html:113 msgid "Published Date" msgstr "" -#: cps/templates/book_edit.html:121 cps/templates/book_edit.html:272 -#: cps/templates/book_edit.html:289 cps/templates/detail.html:164 +#: cps/templates/book_edit.html:122 cps/templates/book_edit.html:273 +#: cps/templates/book_edit.html:290 cps/templates/detail.html:165 #: cps/templates/search_form.html:16 msgid "Publisher" msgstr "Yayınevi" -#: cps/templates/book_edit.html:125 cps/templates/detail.html:131 +#: cps/templates/book_edit.html:126 cps/templates/detail.html:132 #: cps/templates/user_edit.html:33 msgid "Language" msgstr "Dil" -#: cps/templates/book_edit.html:135 cps/templates/search_form.html:45 +#: cps/templates/book_edit.html:136 cps/templates/search_form.html:45 #: cps/templates/search_form.html:164 msgid "Yes" msgstr "Evet" -#: cps/templates/book_edit.html:136 cps/templates/search_form.html:46 +#: cps/templates/book_edit.html:137 cps/templates/search_form.html:46 #: cps/templates/search_form.html:165 msgid "No" msgstr "Hayır" -#: cps/templates/book_edit.html:200 +#: cps/templates/book_edit.html:201 msgid "Upload Format" msgstr "" -#: cps/templates/book_edit.html:208 +#: cps/templates/book_edit.html:209 msgid "View Book on Save" msgstr "" -#: cps/templates/book_edit.html:211 cps/templates/book_edit.html:229 +#: cps/templates/book_edit.html:212 cps/templates/book_edit.html:230 msgid "Fetch Metadata" msgstr "" -#: cps/templates/book_edit.html:212 cps/templates/config_db.html:53 +#: cps/templates/book_edit.html:213 cps/templates/config_db.html:53 #: cps/templates/config_edit.html:358 cps/templates/config_view_edit.html:174 -#: cps/templates/email_edit.html:65 cps/templates/shelf_edit.html:25 -#: cps/templates/shelf_order.html:41 cps/templates/user_edit.html:142 +#: cps/templates/email_edit.html:65 cps/templates/schedule_edit.html:40 +#: cps/templates/shelf_edit.html:25 cps/templates/shelf_order.html:41 +#: cps/templates/user_edit.html:142 msgid "Save" msgstr "" -#: cps/templates/book_edit.html:232 +#: cps/templates/book_edit.html:233 msgid "Keyword" msgstr "Anahtar Kelime" -#: cps/templates/book_edit.html:233 +#: cps/templates/book_edit.html:234 #, fuzzy msgid "Search keyword" msgstr "Anahtar kelime ara" -#: cps/templates/book_edit.html:239 +#: cps/templates/book_edit.html:240 msgid "Click the cover to load metadata to the form" msgstr "Forma metaveri yüklemek için kapağa tıklayın" -#: cps/templates/book_edit.html:246 cps/templates/book_edit.html:285 +#: cps/templates/book_edit.html:247 cps/templates/book_edit.html:286 msgid "Loading..." msgstr "Yükleniyor..." -#: cps/templates/book_edit.html:250 cps/templates/layout.html:63 -#: cps/templates/layout.html:186 cps/templates/modal_dialogs.html:34 +#: cps/templates/book_edit.html:251 cps/templates/layout.html:64 +#: cps/templates/layout.html:187 cps/templates/modal_dialogs.html:34 #: cps/templates/user_edit.html:163 msgid "Close" msgstr "Kapak" -#: cps/templates/book_edit.html:277 cps/templates/book_edit.html:291 +#: cps/templates/book_edit.html:278 cps/templates/book_edit.html:292 msgid "Source" msgstr "Kaynak" -#: cps/templates/book_edit.html:286 +#: cps/templates/book_edit.html:287 msgid "Search error!" msgstr "Arama hatası!" -#: cps/templates/book_edit.html:287 +#: cps/templates/book_edit.html:288 msgid "No Result(s) found! Please try another keyword." msgstr "" @@ -1926,6 +2024,7 @@ msgid "Enter " msgstr "Kayıt ol" #: cps/templates/book_table.html:113 cps/templates/modal_dialogs.html:46 +#: cps/templates/tasks.html:36 msgid "Are you really sure?" msgstr "Emin misiniz?" @@ -2338,62 +2437,62 @@ msgstr "" msgid "Add Allowed/Denied custom column values" msgstr "" -#: cps/templates/detail.html:60 cps/templates/detail.html:69 +#: cps/templates/detail.html:61 cps/templates/detail.html:70 msgid "Read in Browser" msgstr "" -#: cps/templates/detail.html:77 cps/templates/detail.html:94 +#: cps/templates/detail.html:78 cps/templates/detail.html:95 msgid "Listen in Browser" msgstr "" -#: cps/templates/detail.html:124 +#: cps/templates/detail.html:125 #, python-format msgid "Book %(index)s of %(range)s" msgstr "" -#: cps/templates/detail.html:173 +#: cps/templates/detail.html:174 msgid "Published" msgstr "" -#: cps/templates/detail.html:221 +#: cps/templates/detail.html:222 msgid "Mark As Unread" msgstr "Okunmadı olarak işaretle" -#: cps/templates/detail.html:221 +#: cps/templates/detail.html:222 msgid "Mark As Read" msgstr "Okundu olarak işaretle" -#: cps/templates/detail.html:222 +#: cps/templates/detail.html:223 msgid "Read" msgstr "Okudum" -#: cps/templates/detail.html:231 +#: cps/templates/detail.html:232 msgid "Restore from archive" msgstr "" -#: cps/templates/detail.html:231 +#: cps/templates/detail.html:232 msgid "Add to archive" msgstr "" -#: cps/templates/detail.html:232 +#: cps/templates/detail.html:233 msgid "Archived" msgstr "" -#: cps/templates/detail.html:243 +#: cps/templates/detail.html:244 msgid "Description:" msgstr "Açıklama:" -#: cps/templates/detail.html:256 cps/templates/search.html:15 +#: cps/templates/detail.html:257 cps/templates/search.html:16 msgid "Add to shelf" msgstr "Kitaplığa ekle" -#: cps/templates/detail.html:267 cps/templates/detail.html:284 -#: cps/templates/feed.xml:79 cps/templates/layout.html:137 -#: cps/templates/search.html:21 +#: cps/templates/detail.html:268 cps/templates/detail.html:285 +#: cps/templates/feed.xml:79 cps/templates/layout.html:138 +#: cps/templates/search.html:22 msgid "(Public)" msgstr "" -#: cps/templates/detail.html:298 +#: cps/templates/detail.html:299 msgid "Edit Metadata" msgstr "" @@ -2437,7 +2536,7 @@ msgstr "" msgid "Save and Send Test E-mail" msgstr "" -#: cps/templates/email_edit.html:70 cps/templates/layout.html:29 +#: cps/templates/email_edit.html:70 cps/templates/layout.html:30 #: cps/templates/shelf_order.html:42 cps/templates/user_table.html:174 msgid "Back" msgstr "Geri" @@ -2463,7 +2562,7 @@ msgstr "Servis adı girin" msgid "Denied Domains (Blacklist)" msgstr "" -#: cps/templates/feed.xml:21 cps/templates/layout.html:170 +#: cps/templates/feed.xml:21 cps/templates/layout.html:171 msgid "Next" msgstr "Sonraki" @@ -2475,6 +2574,10 @@ msgstr "" msgid "Kobo Token:" msgstr "" +#: cps/templates/grid.html:21 +msgid "List" +msgstr "" + #: cps/templates/http_error.html:31 #, fuzzy msgid "Calibre-Web Instance is unconfigured, please contact your administrator" @@ -2492,29 +2595,29 @@ msgstr "" msgid "Logout User" msgstr "" -#: cps/templates/index.html:70 +#: cps/templates/index.html:71 msgid "Sort ascending according to download count" msgstr "" -#: cps/templates/index.html:71 +#: cps/templates/index.html:72 msgid "Sort descending according to download count" msgstr "" -#: cps/templates/index.html:77 cps/templates/search.html:34 -#: cps/templates/shelf.html:23 -msgid "Sort authors in alphabetical order" -msgstr "" - #: cps/templates/index.html:78 cps/templates/search.html:35 #: cps/templates/shelf.html:24 +msgid "Sort authors in alphabetical order" +msgstr "" + +#: cps/templates/index.html:79 cps/templates/search.html:36 +#: cps/templates/shelf.html:25 msgid "Sort authors in reverse alphabetical order" msgstr "" -#: cps/templates/index.html:82 +#: cps/templates/index.html:83 msgid "Sort ascending according to series index" msgstr "" -#: cps/templates/index.html:83 +#: cps/templates/index.html:84 msgid "Sort descending according to series index" msgstr "" @@ -2578,7 +2681,7 @@ msgstr "" msgid "Books ordered by file formats" msgstr "Biçime göre sıralanmış eKitaplar" -#: cps/templates/index.xml:119 cps/templates/layout.html:135 +#: cps/templates/index.xml:119 cps/templates/layout.html:136 #: cps/templates/search_form.html:87 msgid "Shelves" msgstr "" @@ -2587,63 +2690,67 @@ msgstr "" msgid "Books organized in shelves" msgstr "" -#: cps/templates/layout.html:29 +#: cps/templates/layout.html:30 msgid "Home" msgstr "Anasayfa" -#: cps/templates/layout.html:35 +#: cps/templates/layout.html:36 msgid "Toggle Navigation" msgstr "" -#: cps/templates/layout.html:46 +#: cps/templates/layout.html:47 msgid "Search Library" msgstr "" -#: cps/templates/layout.html:63 cps/templates/layout.html:117 +#: cps/templates/layout.html:64 cps/templates/layout.html:118 msgid "Uploading..." msgstr "Yükleniyor..." -#: cps/templates/layout.html:63 +#: cps/templates/layout.html:64 msgid "Error" msgstr "Hata" -#: cps/templates/layout.html:63 +#: cps/templates/layout.html:64 msgid "Upload done, processing, please wait..." msgstr "Yükleme tamamlandı, işleniyor, lütfen bekleyin..." -#: cps/templates/layout.html:76 cps/templates/read.html:72 +#: cps/templates/layout.html:77 cps/templates/read.html:72 #: cps/templates/readcbr.html:84 cps/templates/readcbr.html:108 msgid "Settings" msgstr "Ayarlar" -#: cps/templates/layout.html:78 +#: cps/templates/layout.html:79 msgid "Account" msgstr "Hesap" -#: cps/templates/layout.html:80 +#: cps/templates/layout.html:81 msgid "Logout" msgstr "Çıkış" -#: cps/templates/layout.html:118 +#: cps/templates/layout.html:119 msgid "Please do not refresh the page" msgstr "" -#: cps/templates/layout.html:128 +#: cps/templates/layout.html:129 msgid "Browse" msgstr "Gözat" -#: cps/templates/layout.html:141 cps/templates/stats.html:3 +#: cps/templates/layout.html:142 cps/templates/stats.html:3 msgid "About" msgstr "Hakkında" -#: cps/templates/layout.html:155 +#: cps/templates/layout.html:156 msgid "Previous" msgstr "Önceki" -#: cps/templates/layout.html:182 +#: cps/templates/layout.html:183 msgid "Book Details" msgstr "eKitap Detayları" +#: cps/templates/list.html:22 +msgid "Grid" +msgstr "" + #: cps/templates/login.html:18 msgid "Remember Me" msgstr "" @@ -2748,7 +2855,7 @@ msgstr "" msgid "Select" msgstr "" -#: cps/templates/modal_dialogs.html:134 +#: cps/templates/modal_dialogs.html:134 cps/templates/tasks.html:45 #, fuzzy msgid "Ok" msgstr "Kitap" @@ -2930,15 +3037,23 @@ msgstr "" msgid "This verification link will expire in 10 minutes." msgstr "" -#: cps/templates/search.html:5 -msgid "No Results Found" +#: cps/templates/schedule_edit.html:29 +msgid "Generate Book Cover Thumbnails" +msgstr "" + +#: cps/templates/schedule_edit.html:33 +msgid "Generate Series Cover Thumbnails" msgstr "" #: cps/templates/search.html:6 +msgid "No Results Found" +msgstr "" + +#: cps/templates/search.html:7 msgid "Search Term:" msgstr "" -#: cps/templates/search.html:8 +#: cps/templates/search.html:9 msgid "Results for:" msgstr "Sonuçlar:" @@ -2991,23 +3106,23 @@ msgstr "" msgid "To:" msgstr "" -#: cps/templates/shelf.html:12 +#: cps/templates/shelf.html:13 msgid "Delete this Shelf" msgstr "Bu Kitaplığı sil" -#: cps/templates/shelf.html:13 +#: cps/templates/shelf.html:14 msgid "Edit Shelf Properties" msgstr "" -#: cps/templates/shelf.html:16 +#: cps/templates/shelf.html:17 msgid "Arrange books manually" msgstr "" -#: cps/templates/shelf.html:17 +#: cps/templates/shelf.html:18 msgid "Disable Change order" msgstr "" -#: cps/templates/shelf.html:17 +#: cps/templates/shelf.html:18 msgid "Enable Change order" msgstr "" @@ -3052,7 +3167,7 @@ msgid "System Statistics" msgstr "" #: cps/templates/stats.html:33 -msgid "Program Library" +msgid "Program" msgstr "" #: cps/templates/stats.html:34 @@ -3083,6 +3198,18 @@ msgstr "" msgid "Start Time" msgstr "" +#: cps/templates/tasks.html:20 +msgid "Actions" +msgstr "" + +#: cps/templates/tasks.html:40 +msgid "This task will be cancelled. Any progress made by this task will be saved." +msgstr "" + +#: cps/templates/tasks.html:41 +msgid "If this is a scheduled task, it will be re-ran during the next scheduled time." +msgstr "" + #: cps/templates/user_edit.html:20 msgid "Reset user Password" msgstr "Kullanıcı şifresini sıfırla" diff --git a/cps/translations/uk/LC_MESSAGES/messages.mo b/cps/translations/uk/LC_MESSAGES/messages.mo index 7dd8dec37134b4adb4d0f4902381e1632ac87729..a81ed1fb11abe70ec4282cf037508fd648ad6398 100644 GIT binary patch delta 3539 zcmYM#3rv<(9LMnkqFe+-z)%Tz1x+zTKmZ87|7a-2UmP39rC@xE}eKy?ph= z&oK$VL1pkC)Ixo^8A^N;#)Te?<0}qRF&2w49$!OEWHWZh?bhAM#~iZlW2lw4U;ti5 zW$1=&KR_+SpVsP`*zB(9Al|Jr=bbUcFBP&4a9)hdLBQXhd@d0$k(bX3N2&=*Ie zGE!js=h*%QIEMb0u>|+yF!UjqCOq8XLK(=#G@OJfxC)hlgP4t{F%tu*mjdUb1{jCz zM>82oj+u!XuiUm*qe`&Fx(Ah!MpP-BW-heC7SzCPs1#j74SW+-<4#P#@ZN6V3?xY= z4|TkzV1KMcm2ej-WBX8nPN3qnqW0EBB#vW#u^oS*X6DOVSs093`FK>ySEE*3jeN}8 zd}+YFr~$pGl{aAww%Gf(k>r`Xs7wU28cjSFyX*W9<3cmfLj{V@}ED{DXnID*=YU!zLX ziUaT}s$^Z+!ThF}Ak=fwsNLTWwWrc;|BI-=i>wYhs&Ne$au;f#gQ%1rMb+*kQXSKV z8n7J)VFG#9M2k=*D8+~88})t}D&TTd2G&`3S{q`>zf##khh}~r^}=@}+Z}f^?Ze?1GC?DPM*yQm39^T%KP zPhbYFz&xG*{alQo<2H`Rfjp&w%WyrGqh@>`wZcBsOYKb5L`qR5djplBdelTZkg}WZ zMAv)CI1!6bn{gW^5Z@f&f*&W-ips!kRLVP1H5y1m{n@CRjzvvi87g26YNbEpI1Ej3 ze~6}_Ht#YF!dg_EdekXvL`MUE#f2ZX;#fRy+c8A*r5%sUaR9!AJ1__RDPS-bp!PyB z&c_OT7O$Z)n?-#qupG4)enrJCN+FPT&OmUr~t>%gWqE}^v!nf z2ckAxB=*8wRLZAd6jtJ^Sc}S>-$?g|Ck9!QDMOXw1JpQIQ13Yb6jCepSW9sl?JCr1 zxQ=XmlQ_zKZYmCGr6fDg z-JN4m?HQ;S=Obk|Yf!0gM3v+ea>7hIdN4NM{T<0e^)Ep^zYBFdKS55oIfskUceF7J zbpDre;i2O)YV$q7XzV}6-E{e=49r1gYLm4YwbBlZ#eN(ey`PVK%zVB$k>(>T#0#jB z#uvD$PsA|o&e2@NVF@a5IVx2fk*u0JZ(Yc_K(7agszH1E*3c|Ki6 RB&T?{dIm&#Po$3w`wu;EYOMeO delta 3580 zcmYM!3ryBk7{~DgqJYB7MG$Yu>lNiDBB_W-fTpGy8ENE&VJe}h12iv{uNKR6$-+X1 zLh5LFSuGILm=I0GfE;EvX0*^=fnAxa+`529_V=vr?n%fEV#?z<)&!ZRqhTZWlYJ#3b(S!mp5__Y@ zOUF=LhGE1vB@`5(@^J$zL&h-YPyw%EZ*0L_e1sY}H_+W)fST||?2kK;k2%Iy5T3;t zyoSo4AB|dQFgl2DoD|e?IA0N%hW#)X2jF_tM5?hH9kekAg@mCmCZJ0l#!*lTv#<|lqh`1g`Ixu((!kqLnW{!j@JrNyS5O)2KxL*2`!F7Z zkk}>@_4|C(IEAP!Sl6BW>xU0$h{9^r3eTY?av3$#d$w*u+yVNc2989Xg(TF9(`@_G z$Xv`E)bq=2eGO`Y?_x4;4vNd=8b7 zEZbge+gD>c?XTes{0c{65WzIzi7pDtz;sN&xfqY{p)znB$Kq8SjXl{f1jBpgp;XT4@_9KnE&S4^aWUd)mW;1F0vVCNL98 zn#n<3vlTc9D^Xi{9F@7Vs5rl%;P#|A=>ClCsW;OtmFb0)@MX1#8K?UBA ze9S?aqB0SKA-ezLDQKq8qh_9i3Q&Sdooc`u)B`6_D{DptxQ05E zcTpK@$HDjrwPk}j$-HAs6slh`>K3G-&Q_Lf--wE{1zjraqM$vlwH`+ebRL!R8>qee z9oa3@ff_K7{0_wo)Iarw;naY61?qU%%`Y$6;8LcPV%qQe42*gcn6i*a9-qU zABwR!4SCkA#R#mxD6Gd+Y(ZsY5bx_bI15wo5Ne#iFcW)F8HRbNIAtyhN>wE)(0=>F zMPy8K!~X8Y$<&z$!igA(Q*bHj+8x2scnvk7Fb>8OI15MM7SxtDpvGy$PtbLXf>QbZ z5O>Fqk?l3jI0OGd=3pihMHwoNYiD4E~C&(S%03 zCzy74L0$)V!t1_F7Yj7*-Echjoe+4c`bkBSxMo{00n(0y7{vGzD-il7_%+Xd# zhoDkA1p_e;qi{7kuo{E$AgbTD$OSPsQHRrK6#1V^A$^oPMZ0l4^#-Jm`4?G)N#t%R zg?Xs0dK-014xj>@!XUhi0oZEm57D2xgXQnVzW5QIL~qP@F%4y)5c6>@YUM4c0Dqtp z{l>aqv9YM%6H$jQ6+dweQ>_vT\n" "Language: uk\n" @@ -15,592 +15,617 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.9.1\n" +"Generated-By: Babel 2.8.0\n" -#: cps/about.py:86 +#: cps/about.py:84 msgid "Statistics" msgstr "Статистика" -#: cps/admin.py:141 +#: cps/admin.py:146 msgid "Server restarted, please reload page" msgstr "Сервер перезавантажено, будь-ласка, перезавантажте сторінку" -#: cps/admin.py:143 +#: cps/admin.py:148 msgid "Performing shutdown of server, please close window" msgstr "Виконується зупинка серверу, будь-ласка, закрийте вікно" -#: cps/admin.py:151 +#: cps/admin.py:156 msgid "Reconnect successful" msgstr "" -#: cps/admin.py:154 +#: cps/admin.py:159 msgid "Unknown command" msgstr "" -#: cps/admin.py:176 cps/editbooks.py:713 cps/editbooks.py:892 -#: cps/editbooks.py:894 cps/editbooks.py:930 cps/editbooks.py:947 -#: cps/updater.py:608 cps/uploader.py:93 cps/uploader.py:103 +#: cps/admin.py:192 cps/editbooks.py:571 cps/editbooks.py:573 +#: cps/editbooks.py:609 cps/editbooks.py:626 cps/editbooks.py:1233 +#: cps/updater.py:613 cps/uploader.py:87 cps/uploader.py:97 msgid "Unknown" msgstr "Невідомий" -#: cps/admin.py:197 +#: cps/admin.py:217 msgid "Admin page" msgstr "Сторінка адміністратора" -#: cps/admin.py:217 +#: cps/admin.py:237 msgid "Basic Configuration" msgstr "Настройки сервера" -#: cps/admin.py:255 +#: cps/admin.py:275 msgid "UI Configuration" msgstr "Конфігурація інтерфейсу" -#: cps/admin.py:289 cps/templates/admin.html:51 +#: cps/admin.py:309 cps/templates/admin.html:51 #, fuzzy msgid "Edit Users" msgstr "Керування сервером" -#: cps/admin.py:333 cps/opds.py:529 cps/templates/grid.html:13 +#: cps/admin.py:353 cps/opds.py:532 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "" -#: cps/admin.py:360 cps/admin.py:1648 +#: cps/admin.py:380 cps/admin.py:1365 msgid "User not found" msgstr "" -#: cps/admin.py:374 +#: cps/admin.py:394 msgid "{} users deleted successfully" msgstr "" -#: cps/admin.py:397 cps/templates/config_view_edit.html:133 +#: cps/admin.py:417 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:418 cps/admin.py:424 +#: cps/admin.py:438 cps/admin.py:444 msgid "Malformed request" msgstr "" -#: cps/admin.py:436 cps/admin.py:1526 +#: cps/admin.py:456 cps/admin.py:1962 msgid "Guest Name can't be changed" msgstr "" -#: cps/admin.py:448 +#: cps/admin.py:468 msgid "Guest can't have this role" msgstr "" -#: cps/admin.py:460 cps/admin.py:1484 +#: cps/admin.py:480 cps/admin.py:1920 msgid "No admin user remaining, can't remove admin role" msgstr "" -#: cps/admin.py:464 cps/admin.py:478 +#: cps/admin.py:484 cps/admin.py:498 msgid "Value has to be true or false" msgstr "" -#: cps/admin.py:466 +#: cps/admin.py:486 msgid "Invalid role" msgstr "" -#: cps/admin.py:470 +#: cps/admin.py:490 msgid "Guest can't have this view" msgstr "" -#: cps/admin.py:480 +#: cps/admin.py:500 msgid "Invalid view" msgstr "" -#: cps/admin.py:483 +#: cps/admin.py:503 msgid "Guest's Locale is determined automatically and can't be set" msgstr "" -#: cps/admin.py:487 +#: cps/admin.py:507 msgid "No Valid Locale Given" msgstr "" -#: cps/admin.py:498 +#: cps/admin.py:518 msgid "No Valid Book Language Given" msgstr "" -#: cps/admin.py:500 cps/editbooks.py:1267 +#: cps/admin.py:520 cps/editbooks.py:438 msgid "Parameter not found" msgstr "" -#: cps/admin.py:553 +#: cps/admin.py:557 msgid "Invalid Read Column" msgstr "" -#: cps/admin.py:559 +#: cps/admin.py:563 msgid "Invalid Restricted Column" msgstr "" -#: cps/admin.py:579 cps/admin.py:1355 +#: cps/admin.py:583 cps/admin.py:1791 msgid "Calibre-Web configuration updated" msgstr "" -#: cps/admin.py:591 +#: cps/admin.py:595 msgid "Do you really want to delete the Kobo Token?" msgstr "" -#: cps/admin.py:593 +#: cps/admin.py:597 msgid "Do you really want to delete this domain?" msgstr "" -#: cps/admin.py:595 +#: cps/admin.py:599 msgid "Do you really want to delete this user?" msgstr "" -#: cps/admin.py:597 +#: cps/admin.py:601 msgid "Are you sure you want to delete this shelf?" msgstr "Ви справді хочете видалити книжкову полицю?" -#: cps/admin.py:599 +#: cps/admin.py:603 #, fuzzy msgid "Are you sure you want to change locales of selected user(s)?" msgstr "Ви справді хочете видалити книжкову полицю?" -#: cps/admin.py:601 +#: cps/admin.py:605 msgid "Are you sure you want to change visible book languages for selected user(s)?" msgstr "" -#: cps/admin.py:603 +#: cps/admin.py:607 msgid "Are you sure you want to change the selected role for the selected user(s)?" msgstr "" -#: cps/admin.py:605 +#: cps/admin.py:609 #, fuzzy msgid "Are you sure you want to change the selected restrictions for the selected user(s)?" msgstr "Ви справді хочете видалити книжкову полицю?" -#: cps/admin.py:607 +#: cps/admin.py:611 msgid "Are you sure you want to change the selected visibility restrictions for the selected user(s)?" msgstr "" -#: cps/admin.py:610 +#: cps/admin.py:614 #, fuzzy msgid "Are you sure you want to change shelf sync behavior for the selected user(s)?" msgstr "Ви справді хочете видалити книжкову полицю?" -#: cps/admin.py:612 +#: cps/admin.py:616 #, fuzzy msgid "Are you sure you want to change Calibre library location?" msgstr "Ви справді хочете видалити книжкову полицю?" -#: cps/admin.py:614 +#: cps/admin.py:618 +msgid "Calibre-Web will search for updated Covers and update Cover Thumbnails, this may take a while?" +msgstr "" + +#: cps/admin.py:620 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:764 -msgid "Tag not found" -msgstr "" - -#: cps/admin.py:776 -msgid "Invalid Action" -msgstr "" - -#: cps/admin.py:893 cps/admin.py:899 cps/admin.py:909 cps/admin.py:919 +#: cps/admin.py:862 cps/admin.py:868 cps/admin.py:878 cps/admin.py:888 #: cps/templates/modal_dialogs.html:29 cps/templates/user_table.html:41 #: cps/templates/user_table.html:58 msgid "Deny" msgstr "" -#: cps/admin.py:895 cps/admin.py:901 cps/admin.py:911 cps/admin.py:921 +#: cps/admin.py:864 cps/admin.py:870 cps/admin.py:880 cps/admin.py:890 #: cps/templates/modal_dialogs.html:28 cps/templates/user_table.html:44 #: cps/templates/user_table.html:61 msgid "Allow" msgstr "" -#: cps/admin.py:936 +#: cps/admin.py:905 msgid "{} sync entries deleted" msgstr "" -#: cps/admin.py:1059 +#: cps/admin.py:953 +msgid "Tag not found" +msgstr "" + +#: cps/admin.py:965 +msgid "Invalid Action" +msgstr "" + +#: cps/admin.py:1080 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "" -#: cps/admin.py:1104 +#: cps/admin.py:1125 msgid "Logfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1110 +#: cps/admin.py:1131 msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1140 +#: cps/admin.py:1161 msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgstr "" -#: cps/admin.py:1146 +#: cps/admin.py:1167 msgid "Please Enter a LDAP Service Account and Password" msgstr "" -#: cps/admin.py:1149 +#: cps/admin.py:1170 msgid "Please Enter a LDAP Service Account" msgstr "" -#: cps/admin.py:1154 +#: cps/admin.py:1175 #, python-format msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1156 +#: cps/admin.py:1177 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1160 +#: cps/admin.py:1181 #, python-format msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1162 +#: cps/admin.py:1183 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1169 +#: cps/admin.py:1190 #, python-format msgid "LDAP Member User Filter needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1171 +#: cps/admin.py:1192 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1178 +#: cps/admin.py:1199 msgid "LDAP CACertificate, Certificate or Key Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1223 cps/admin.py:1339 cps/admin.py:1437 cps/admin.py:1554 -#: cps/admin.py:1623 cps/editbooks.py:678 cps/editbooks.py:882 -#: cps/editbooks.py:1130 cps/shelf.py:100 cps/shelf.py:160 cps/shelf.py:203 -#: cps/shelf.py:278 cps/shelf.py:343 cps/shelf.py:380 cps/shelf.py:456 -#: cps/web.py:1742 +#: cps/admin.py:1230 cps/admin.py:1852 +msgid "Add new user" +msgstr "Додати користувача" + +#: cps/admin.py:1239 cps/templates/admin.html:100 +msgid "Edit E-mail Server Settings" +msgstr "Змінити налаштування SMTP" + +#: cps/admin.py:1258 +msgid "Gmail Account Verification Successful" +msgstr "" + +#: cps/admin.py:1277 cps/admin.py:1658 cps/admin.py:1775 cps/admin.py:1873 +#: cps/admin.py:1990 cps/editbooks.py:227 cps/editbooks.py:301 +#: cps/editbooks.py:1196 cps/shelf.py:82 cps/shelf.py:142 cps/shelf.py:185 +#: cps/shelf.py:235 cps/shelf.py:272 cps/shelf.py:343 cps/shelf.py:457 +#: cps/tasks/convert.py:136 cps/web.py:1413 #, python-format msgid "Database error: %(error)s." msgstr "" -#: cps/admin.py:1235 -msgid "DB Location is not Valid, Please Enter Correct Path" -msgstr "" - -#: cps/admin.py:1253 -msgid "DB is not Writeable" -msgstr "" - -#: cps/admin.py:1266 -msgid "Keyfile Location is not Valid, Please Enter Correct Path" -msgstr "" - -#: cps/admin.py:1270 -msgid "Certfile Location is not Valid, Please Enter Correct Path" -msgstr "" - -#: cps/admin.py:1378 -#, fuzzy -msgid "Database Settings updated" -msgstr "З'єднання з базою даних закрите" - -#: cps/admin.py:1386 -#, fuzzy -msgid "Database Configuration" -msgstr "Особливі налаштування" - -#: cps/admin.py:1402 cps/web.py:1557 -msgid "Please fill out all fields!" -msgstr "Будь-ласка, заповніть всі поля!" - -#: cps/admin.py:1410 -msgid "E-mail is not from valid domain" -msgstr "" - -#: cps/admin.py:1416 cps/admin.py:1576 -msgid "Add new user" -msgstr "Додати користувача" - -#: cps/admin.py:1427 -#, python-format -msgid "User '%(user)s' created" -msgstr "Користувач '%(user)s' додан" - -#: cps/admin.py:1433 -msgid "Found an existing account for this e-mail address or name." -msgstr "" - -#: cps/admin.py:1463 -#, python-format -msgid "User '%(nick)s' deleted" -msgstr "Користувача '%(nick)s' видалено" - -#: cps/admin.py:1465 cps/admin.py:1466 -msgid "Can't delete Guest User" -msgstr "" - -#: cps/admin.py:1469 -msgid "No admin user remaining, can't delete user" -msgstr "" - -#: cps/admin.py:1542 cps/admin.py:1667 -#, python-format -msgid "Edit User %(nick)s" -msgstr "Змінити користувача %(nick)s" - -#: cps/admin.py:1546 -#, python-format -msgid "User '%(nick)s' updated" -msgstr "Користувача '%(nick)s' оновлено" - -#: cps/admin.py:1550 cps/admin.py:1682 cps/web.py:1582 cps/web.py:1642 -msgid "An unknown error occurred. Please try again later." -msgstr "" - -#: cps/admin.py:1585 cps/templates/admin.html:100 -msgid "Edit E-mail Server Settings" -msgstr "Змінити налаштування SMTP" - -#: cps/admin.py:1604 -msgid "Gmail Account Verification Successful" -msgstr "" - -#: cps/admin.py:1630 +#: cps/admin.py:1284 #, python-format msgid "Test e-mail queued for sending to %(email)s, please check Tasks for result" msgstr "" -#: cps/admin.py:1633 +#: cps/admin.py:1287 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "" -#: cps/admin.py:1635 +#: cps/admin.py:1289 msgid "Please configure your e-mail address first..." msgstr "" -#: cps/admin.py:1637 +#: cps/admin.py:1291 msgid "E-mail server settings updated" msgstr "" -#: cps/admin.py:1679 +#: cps/admin.py:1314 cps/templates/admin.html:191 +msgid "Edit Scheduled Tasks Settings" +msgstr "" + +#: cps/admin.py:1326 +msgid "Invalid start time for task specified" +msgstr "" + +#: cps/admin.py:1331 +msgid "Invalid duration for task specified" +msgstr "" + +#: cps/admin.py:1340 +msgid "Scheduled tasks settings updated" +msgstr "" + +#: cps/admin.py:1350 cps/admin.py:1399 cps/admin.py:1986 cps/web.py:1254 +#: cps/web.py:1315 +msgid "An unknown error occurred. Please try again later." +msgstr "" + +#: cps/admin.py:1354 +msgid "Settings DB is not Writeable" +msgstr "" + +#: cps/admin.py:1384 cps/admin.py:1978 +#, python-format +msgid "Edit User %(nick)s" +msgstr "Змінити користувача %(nick)s" + +#: cps/admin.py:1396 #, python-format msgid "Password for user %(user)s reset" msgstr "" -#: cps/admin.py:1685 cps/web.py:1522 +#: cps/admin.py:1402 cps/web.py:1194 msgid "Please configure the SMTP mail settings first..." msgstr "Будь-ласка, спочатку сконфігуруйте параметри SMTP" -#: cps/admin.py:1696 +#: cps/admin.py:1413 msgid "Logfile viewer" msgstr "" -#: cps/admin.py:1762 +#: cps/admin.py:1479 msgid "Requesting update package" msgstr "Перевірка оновлень" -#: cps/admin.py:1763 +#: cps/admin.py:1480 msgid "Downloading update package" msgstr "Завантаження оновлень" -#: cps/admin.py:1764 +#: cps/admin.py:1481 msgid "Unzipping update package" msgstr "Розпакування оновлення" -#: cps/admin.py:1765 +#: cps/admin.py:1482 msgid "Replacing files" msgstr "" -#: cps/admin.py:1766 +#: cps/admin.py:1483 msgid "Database connections are closed" msgstr "З'єднання з базою даних закрите" -#: cps/admin.py:1767 +#: cps/admin.py:1484 msgid "Stopping server" msgstr "" -#: cps/admin.py:1768 +#: cps/admin.py:1485 msgid "Update finished, please press okay and reload page" msgstr "Оновлення встановлені, натисніть ok і перезавантажте сторінку" -#: cps/admin.py:1769 cps/admin.py:1770 cps/admin.py:1771 cps/admin.py:1772 -#: cps/admin.py:1773 cps/admin.py:1774 +#: cps/admin.py:1486 cps/admin.py:1487 cps/admin.py:1488 cps/admin.py:1489 +#: cps/admin.py:1490 cps/admin.py:1491 msgid "Update failed:" msgstr "" -#: cps/admin.py:1769 cps/updater.py:384 cps/updater.py:619 cps/updater.py:621 +#: cps/admin.py:1486 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 msgid "HTTP Error" msgstr "" -#: cps/admin.py:1770 cps/updater.py:386 cps/updater.py:623 +#: cps/admin.py:1487 cps/updater.py:391 cps/updater.py:628 msgid "Connection error" msgstr "" -#: cps/admin.py:1771 cps/updater.py:388 cps/updater.py:625 +#: cps/admin.py:1488 cps/updater.py:393 cps/updater.py:630 msgid "Timeout while establishing connection" msgstr "" -#: cps/admin.py:1772 cps/updater.py:390 cps/updater.py:627 +#: cps/admin.py:1489 cps/updater.py:395 cps/updater.py:632 msgid "General error" msgstr "" -#: cps/admin.py:1773 +#: cps/admin.py:1490 msgid "Update file could not be saved in temp dir" msgstr "" -#: cps/admin.py:1774 +#: cps/admin.py:1491 msgid "Files could not be replaced during update" msgstr "" -#: cps/admin.py:1798 +#: cps/admin.py:1515 msgid "Failed to extract at least One LDAP User" msgstr "" -#: cps/admin.py:1843 +#: cps/admin.py:1560 msgid "Failed to Create at Least One LDAP User" msgstr "" -#: cps/admin.py:1856 +#: cps/admin.py:1573 #, python-format msgid "Error: %(ldaperror)s" msgstr "" -#: cps/admin.py:1860 +#: cps/admin.py:1577 msgid "Error: No user returned in response of LDAP server" msgstr "" -#: cps/admin.py:1893 +#: cps/admin.py:1610 msgid "At Least One LDAP User Not Found in Database" msgstr "" -#: cps/admin.py:1895 +#: cps/admin.py:1612 msgid "{} User Successfully Imported" msgstr "" -#: cps/converter.py:30 +#: cps/admin.py:1670 +msgid "DB Location is not Valid, Please Enter Correct Path" +msgstr "" + +#: cps/admin.py:1689 +msgid "DB is not Writeable" +msgstr "" + +#: cps/admin.py:1702 +msgid "Keyfile Location is not Valid, Please Enter Correct Path" +msgstr "" + +#: cps/admin.py:1706 +msgid "Certfile Location is not Valid, Please Enter Correct Path" +msgstr "" + +#: cps/admin.py:1814 +#, fuzzy +msgid "Database Settings updated" +msgstr "З'єднання з базою даних закрите" + +#: cps/admin.py:1822 +#, fuzzy +msgid "Database Configuration" +msgstr "Особливі налаштування" + +#: cps/admin.py:1838 cps/web.py:1229 +msgid "Please fill out all fields!" +msgstr "Будь-ласка, заповніть всі поля!" + +#: cps/admin.py:1846 +msgid "E-mail is not from valid domain" +msgstr "" + +#: cps/admin.py:1863 +#, python-format +msgid "User '%(user)s' created" +msgstr "Користувач '%(user)s' додан" + +#: cps/admin.py:1869 +msgid "Found an existing account for this e-mail address or name." +msgstr "" + +#: cps/admin.py:1899 +#, python-format +msgid "User '%(nick)s' deleted" +msgstr "Користувача '%(nick)s' видалено" + +#: cps/admin.py:1901 cps/admin.py:1902 +msgid "Can't delete Guest User" +msgstr "" + +#: cps/admin.py:1905 +msgid "No admin user remaining, can't delete user" +msgstr "" + +#: cps/admin.py:1982 +#, python-format +msgid "User '%(nick)s' updated" +msgstr "Користувача '%(nick)s' оновлено" + +#: cps/converter.py:31 msgid "not installed" msgstr "не встановлено" -#: cps/converter.py:31 +#: cps/converter.py:32 msgid "Execution permissions missing" msgstr "" -#: cps/db.py:674 cps/web.py:710 cps/web.py:1222 +#: cps/db.py:681 cps/search.py:134 cps/web.py:720 #, python-format msgid "Custom Column No.%(column)d is not existing in calibre database" msgstr "" -#: cps/db.py:917 cps/templates/config_edit.html:204 +#: cps/db.py:924 cps/templates/config_edit.html:204 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 -#: cps/web.py:551 cps/web.py:585 cps/web.py:646 cps/web.py:671 cps/web.py:1003 -#: cps/web.py:1032 cps/web.py:1066 cps/web.py:1093 cps/web.py:1132 +#: cps/web.py:549 cps/web.py:583 cps/web.py:656 cps/web.py:681 cps/web.py:962 +#: cps/web.py:992 cps/web.py:1027 cps/web.py:1055 cps/web.py:1094 msgid "None" msgstr "Ні" -#: cps/editbooks.py:295 cps/editbooks.py:297 -msgid "Book Format Successfully Deleted" -msgstr "" - -#: cps/editbooks.py:304 cps/editbooks.py:306 -msgid "Book Successfully Deleted" -msgstr "" - -#: cps/editbooks.py:358 -msgid "You are missing permissions to delete books" -msgstr "" - -#: cps/editbooks.py:373 cps/editbooks.py:765 cps/web.py:518 cps/web.py:1783 -#: cps/web.py:1825 cps/web.py:1870 +#: cps/editbooks.py:109 cps/editbooks.py:890 cps/web.py:516 cps/web.py:1454 +#: cps/web.py:1496 cps/web.py:1541 msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible" msgstr "Неможливо відкрити книгу. Файл не існує або немає доступу." -#: cps/editbooks.py:408 -msgid "edit metadata" -msgstr "змінити метадані" - -#: cps/editbooks.py:457 -#, python-format -msgid "%(seriesindex)s is not a valid number, skipping" -msgstr "" - -#: cps/editbooks.py:493 cps/editbooks.py:1001 -#, python-format -msgid "'%(langname)s' is not a valid language" -msgstr "" - -#: cps/editbooks.py:634 -msgid "User has no rights to upload additional file formats" -msgstr "" - -#: cps/editbooks.py:639 cps/editbooks.py:1029 -#, python-format -msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" -msgstr "" - -#: cps/editbooks.py:643 cps/editbooks.py:1033 -msgid "File to be uploaded must have an extension" -msgstr "Завантажувальний файл повинен мати розширення" - -#: cps/editbooks.py:655 -#, python-format -msgid "Failed to create path %(path)s (Permission denied)." -msgstr "" - -#: cps/editbooks.py:660 -#, python-format -msgid "Failed to store file %(file)s." -msgstr "" - -#: cps/editbooks.py:683 -#, python-format -msgid "File format %(ext)s added to %(book)s" -msgstr "" - -#: cps/editbooks.py:697 cps/editbooks.py:809 +#: cps/editbooks.py:153 cps/editbooks.py:1216 msgid "User has no rights to upload cover" msgstr "" -#: cps/editbooks.py:828 +#: cps/editbooks.py:173 cps/editbooks.py:711 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "" -#: cps/editbooks.py:869 +#: cps/editbooks.py:214 msgid "Metadata successfully updated" msgstr "" -#: cps/editbooks.py:887 +#: cps/editbooks.py:232 msgid "Error editing book: {}" msgstr "" -#: cps/editbooks.py:951 -msgid "Uploaded book probably exists in the library, consider to change before upload new: " -msgstr "" - -#: cps/editbooks.py:1041 -#, python-format -msgid "File %(filename)s could not saved to temp dir" -msgstr "" - -#: cps/editbooks.py:1061 -#, python-format -msgid "Failed to Move Cover File %(file)s: %(error)s" -msgstr "" - -#: cps/editbooks.py:1117 +#: cps/editbooks.py:287 #, python-format msgid "File %(file)s uploaded" msgstr "" -#: cps/editbooks.py:1143 +#: cps/editbooks.py:314 msgid "Source or destination format for conversion missing" msgstr "" -#: cps/editbooks.py:1151 +#: cps/editbooks.py:322 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "" -#: cps/editbooks.py:1155 +#: cps/editbooks.py:326 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "" +#: cps/editbooks.py:630 +msgid "Uploaded book probably exists in the library, consider to change before upload new: " +msgstr "" + +#: cps/editbooks.py:685 cps/editbooks.py:1010 +#, python-format +msgid "'%(langname)s' is not a valid language" +msgstr "" + +#: cps/editbooks.py:723 cps/editbooks.py:1157 +#, python-format +msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" +msgstr "" + +#: cps/editbooks.py:727 cps/editbooks.py:1161 +msgid "File to be uploaded must have an extension" +msgstr "Завантажувальний файл повинен мати розширення" + +#: cps/editbooks.py:735 +#, python-format +msgid "File %(filename)s could not saved to temp dir" +msgstr "" + +#: cps/editbooks.py:755 +#, python-format +msgid "Failed to Move Cover File %(file)s: %(error)s" +msgstr "" + +#: cps/editbooks.py:812 cps/editbooks.py:814 +msgid "Book Format Successfully Deleted" +msgstr "" + +#: cps/editbooks.py:821 cps/editbooks.py:823 +msgid "Book Successfully Deleted" +msgstr "" + +#: cps/editbooks.py:875 +msgid "You are missing permissions to delete books" +msgstr "" + +#: cps/editbooks.py:925 +msgid "edit metadata" +msgstr "змінити метадані" + +#: cps/editbooks.py:974 +#, python-format +msgid "%(seriesindex)s is not a valid number, skipping" +msgstr "" + +#: cps/editbooks.py:1152 +msgid "User has no rights to upload additional file formats" +msgstr "" + +#: cps/editbooks.py:1173 +#, python-format +msgid "Failed to create path %(path)s (Permission denied)." +msgstr "" + +#: cps/editbooks.py:1178 +#, python-format +msgid "Failed to store file %(file)s." +msgstr "" + +#: cps/editbooks.py:1201 +#, python-format +msgid "File format %(ext)s added to %(book)s" +msgstr "" + #: cps/gdrive.py:58 msgid "Google Drive setup not completed, try to deactivate and activate Google Drive again" msgstr "" @@ -609,27 +634,27 @@ msgstr "" msgid "Callback domain is not verified, please follow steps to verify domain in google developer console" msgstr "Домен зворотнього зв'язку не підтверджено. Виконайте дії для підтвердження домену, будь-ласка" -#: cps/helper.py:81 +#: cps/helper.py:80 #, python-format msgid "%(format)s format not found for book id: %(book)d" msgstr "" -#: cps/helper.py:87 cps/tasks/convert.py:75 +#: cps/helper.py:86 cps/tasks/convert.py:75 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "" -#: cps/helper.py:92 +#: cps/helper.py:91 #, python-format msgid "%(format)s not found: %(fn)s" msgstr "" -#: cps/helper.py:97 cps/helper.py:221 cps/templates/detail.html:41 -#: cps/templates/detail.html:45 +#: cps/helper.py:96 cps/helper.py:221 cps/templates/detail.html:42 +#: cps/templates/detail.html:46 msgid "Send to Kindle" msgstr "Відправити на Kindle" -#: cps/helper.py:98 cps/helper.py:115 cps/helper.py:223 +#: cps/helper.py:97 cps/helper.py:115 cps/helper.py:223 msgid "This e-mail has been sent via Calibre-Web." msgstr "" @@ -669,130 +694,110 @@ msgstr "Відправити на Kindle" msgid "The requested file could not be read. Maybe wrong permissions?" msgstr "" -#: cps/helper.py:353 +#: cps/helper.py:341 msgid "Read status could not set: {}" msgstr "" -#: cps/helper.py:376 +#: cps/helper.py:364 #, python-format msgid "Deleting bookfolder for book %(id)s failed, path has subfolders: %(path)s" msgstr "" -#: cps/helper.py:382 +#: cps/helper.py:370 #, python-format msgid "Deleting book %(id)s failed: %(message)s" msgstr "" -#: cps/helper.py:393 +#: cps/helper.py:381 #, python-format msgid "Deleting book %(id)s from database only, book path in database not valid: %(path)s" msgstr "" -#: cps/helper.py:458 +#: cps/helper.py:446 #, python-format msgid "Rename author from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgstr "" -#: cps/helper.py:529 cps/helper.py:538 +#: cps/helper.py:518 cps/helper.py:527 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "" -#: cps/helper.py:572 +#: cps/helper.py:561 #, python-format msgid "Rename title from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgstr "" -#: cps/helper.py:592 +#: cps/helper.py:581 msgid "Error in rename file in path: {}" msgstr "" -#: cps/helper.py:610 +#: cps/helper.py:599 #, python-format msgid "Book path %(path)s not found on Google Drive" msgstr "" -#: cps/helper.py:651 cps/web.py:1737 +#: cps/helper.py:640 cps/web.py:1408 msgid "Found an existing account for this e-mail address" msgstr "" -#: cps/helper.py:659 +#: cps/helper.py:648 msgid "This username is already taken" msgstr "" -#: cps/helper.py:669 +#: cps/helper.py:658 msgid "Invalid e-mail address format" msgstr "" -#: cps/helper.py:754 -msgid "Python modul 'advocate' is not installed but is needed for cover downloads" +#: cps/helper.py:808 +msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "" -#: cps/helper.py:767 +#: cps/helper.py:818 msgid "Error Downloading Cover" msgstr "" -#: cps/helper.py:770 +#: cps/helper.py:821 msgid "Cover Format Error" msgstr "" -#: cps/helper.py:773 +#: cps/helper.py:824 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "" -#: cps/helper.py:783 +#: cps/helper.py:834 msgid "Failed to create path for cover" msgstr "" -#: cps/helper.py:799 +#: cps/helper.py:850 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "" -#: cps/helper.py:810 +#: cps/helper.py:861 msgid "Only jpg/jpeg/png/webp/bmp files are supported as coverfile" msgstr "" -#: cps/helper.py:822 +#: cps/helper.py:873 msgid "Invalid cover file content" msgstr "" -#: cps/helper.py:826 +#: cps/helper.py:877 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "" -#: cps/helper.py:878 +#: cps/helper.py:929 msgid "Unrar binary file not found" msgstr "" -#: cps/helper.py:889 +#: cps/helper.py:940 msgid "Error excecuting UnRar" msgstr "" -#: cps/helper.py:937 -msgid "Waiting" -msgstr "" - -#: cps/helper.py:939 -msgid "Failed" -msgstr "" - -#: cps/helper.py:941 -msgid "Started" -msgstr "" - -#: cps/helper.py:943 -msgid "Finished" -msgstr "" - -#: cps/helper.py:945 -msgid "Unknown Status" -msgstr "" - -#: cps/kobo_auth.py:128 +#: cps/kobo_auth.py:89 msgid "Please access Calibre-Web from non localhost to get valid api_endpoint for kobo device" msgstr "" -#: cps/kobo_auth.py:154 +#: cps/kobo_auth.py:115 msgid "Kobo Setup" msgstr "" @@ -801,7 +806,7 @@ msgstr "" msgid "Register with %(provider)s" msgstr "" -#: cps/oauth_bb.py:138 cps/remotelogin.py:130 cps/web.py:1613 +#: cps/oauth_bb.py:138 cps/remotelogin.py:130 cps/web.py:1286 #, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "Ви увійшли як користувач: '%(nickname)s'" @@ -862,12 +867,12 @@ msgstr "" msgid "Google Oauth error: {}" msgstr "" -#: cps/opds.py:298 +#: cps/opds.py:287 msgid "{} Stars" msgstr "" -#: cps/remotelogin.py:62 cps/templates/layout.html:84 -#: cps/templates/login.html:4 cps/templates/login.html:21 cps/web.py:1662 +#: cps/remotelogin.py:62 cps/templates/layout.html:85 +#: cps/templates/login.html:4 cps/templates/login.html:21 cps/web.py:1335 msgid "Login" msgstr "Ім'я користувача" @@ -883,455 +888,488 @@ msgstr "Час дії токено вичерпано" msgid "Success! Please return to your device" msgstr "Вдалося! Будь-ласка, поверніться до вашого пристрою" -#: cps/render_template.py:41 cps/web.py:407 +#: cps/render_template.py:40 cps/web.py:405 msgid "Books" msgstr "" -#: cps/render_template.py:43 +#: cps/render_template.py:42 msgid "Show recent books" msgstr "Показувати останні книги" -#: cps/render_template.py:44 cps/templates/index.xml:25 +#: cps/render_template.py:43 cps/templates/index.xml:25 msgid "Hot Books" msgstr "Популярні книги" -#: cps/render_template.py:46 +#: cps/render_template.py:45 msgid "Show Hot Books" msgstr "Показувати популярні книги" -#: cps/render_template.py:48 cps/render_template.py:53 +#: cps/render_template.py:47 cps/render_template.py:52 msgid "Downloaded Books" msgstr "" -#: cps/render_template.py:50 cps/render_template.py:55 +#: cps/render_template.py:49 cps/render_template.py:54 #: cps/templates/user_table.html:167 msgid "Show Downloaded Books" msgstr "" -#: cps/render_template.py:58 cps/templates/index.xml:32 cps/web.py:422 +#: cps/render_template.py:57 cps/templates/index.xml:32 cps/web.py:420 msgid "Top Rated Books" msgstr "Книги з найкращим рейтингом" -#: cps/render_template.py:60 cps/templates/user_table.html:161 +#: cps/render_template.py:59 cps/templates/user_table.html:161 msgid "Show Top Rated Books" msgstr "Показувати книги з найвищим рейтингом" -#: cps/render_template.py:61 cps/templates/index.xml:54 -#: cps/templates/index.xml:58 cps/web.py:729 +#: cps/render_template.py:60 cps/templates/index.xml:54 +#: cps/templates/index.xml:58 cps/web.py:739 msgid "Read Books" msgstr "Прочитані книги" -#: cps/render_template.py:63 +#: cps/render_template.py:62 msgid "Show read and unread" msgstr "Показувати прочитані та непрочитані книги" -#: cps/render_template.py:65 cps/templates/index.xml:61 -#: cps/templates/index.xml:65 cps/web.py:732 +#: cps/render_template.py:64 cps/templates/index.xml:61 +#: cps/templates/index.xml:65 cps/web.py:742 msgid "Unread Books" msgstr "Непрочитані книги" -#: cps/render_template.py:67 +#: cps/render_template.py:66 msgid "Show unread" msgstr "" -#: cps/render_template.py:68 +#: cps/render_template.py:67 msgid "Discover" msgstr "Огляд" -#: cps/render_template.py:70 cps/templates/index.xml:50 +#: cps/render_template.py:69 cps/templates/index.xml:50 #: cps/templates/user_table.html:162 msgid "Show Random Books" msgstr "Показувати випадкові книги" -#: cps/render_template.py:71 cps/templates/book_table.html:67 -#: cps/templates/index.xml:83 cps/web.py:1135 +#: cps/render_template.py:70 cps/templates/book_table.html:67 +#: cps/templates/index.xml:83 cps/web.py:1098 msgid "Categories" msgstr "Категорії" -#: cps/render_template.py:73 cps/templates/user_table.html:158 +#: cps/render_template.py:72 cps/templates/user_table.html:158 msgid "Show category selection" msgstr "Показувати вибір категорії" -#: cps/render_template.py:74 cps/templates/book_edit.html:90 +#: cps/render_template.py:73 cps/templates/book_edit.html:91 #: cps/templates/book_table.html:68 cps/templates/index.xml:90 -#: cps/templates/search_form.html:69 cps/web.py:1034 cps/web.py:1041 +#: cps/templates/search_form.html:69 cps/web.py:995 cps/web.py:1002 msgid "Series" msgstr "Серії" -#: cps/render_template.py:76 cps/templates/user_table.html:157 +#: cps/render_template.py:75 cps/templates/user_table.html:157 msgid "Show series selection" msgstr "Показувати вибір серії" -#: cps/render_template.py:77 cps/templates/book_table.html:66 +#: cps/render_template.py:76 cps/templates/book_table.html:66 #: cps/templates/index.xml:69 msgid "Authors" msgstr "Автори" -#: cps/render_template.py:79 cps/templates/user_table.html:160 +#: cps/render_template.py:78 cps/templates/user_table.html:160 msgid "Show author selection" msgstr "Показувати вибір автора" -#: cps/render_template.py:81 cps/templates/book_table.html:72 -#: cps/templates/index.xml:76 cps/web.py:1006 +#: cps/render_template.py:80 cps/templates/book_table.html:72 +#: cps/templates/index.xml:76 cps/web.py:966 msgid "Publishers" msgstr "" -#: cps/render_template.py:83 cps/templates/user_table.html:163 +#: cps/render_template.py:82 cps/templates/user_table.html:163 msgid "Show publisher selection" msgstr "" -#: cps/render_template.py:84 cps/templates/book_table.html:70 +#: cps/render_template.py:83 cps/templates/book_table.html:70 #: cps/templates/index.xml:97 cps/templates/search_form.html:107 -#: cps/web.py:1108 +#: cps/web.py:1070 msgid "Languages" msgstr "Мови" -#: cps/render_template.py:87 cps/templates/user_table.html:155 +#: cps/render_template.py:86 cps/templates/user_table.html:155 msgid "Show language selection" msgstr "Показувати вибір мови" -#: cps/render_template.py:88 cps/templates/index.xml:104 +#: cps/render_template.py:87 cps/templates/index.xml:104 msgid "Ratings" msgstr "" -#: cps/render_template.py:90 cps/templates/user_table.html:164 +#: cps/render_template.py:89 cps/templates/user_table.html:164 msgid "Show ratings selection" msgstr "" -#: cps/render_template.py:91 cps/templates/index.xml:112 +#: cps/render_template.py:90 cps/templates/index.xml:112 msgid "File formats" msgstr "" -#: cps/render_template.py:93 cps/templates/user_table.html:165 +#: cps/render_template.py:92 cps/templates/user_table.html:165 msgid "Show file formats selection" msgstr "" -#: cps/render_template.py:95 cps/web.py:755 +#: cps/render_template.py:94 cps/web.py:765 msgid "Archived Books" msgstr "" -#: cps/render_template.py:97 cps/templates/user_table.html:166 +#: cps/render_template.py:96 cps/templates/user_table.html:166 msgid "Show archived books" msgstr "" -#: cps/render_template.py:100 cps/web.py:837 +#: cps/render_template.py:99 cps/web.py:796 msgid "Books List" msgstr "" -#: cps/render_template.py:102 cps/templates/user_table.html:168 +#: cps/render_template.py:101 cps/templates/user_table.html:168 msgid "Show Books List" msgstr "" -#: cps/shelf.py:67 cps/shelf.py:121 -msgid "Invalid shelf specified" -msgstr "" - -#: cps/shelf.py:73 -#, fuzzy -msgid "Sorry you are not allowed to add a book to that shelf" -msgstr "Вибачте, але у вас немає дозволу для видалення книги з цієї полиці" - -#: cps/shelf.py:82 -#, python-format -msgid "Book is already part of the shelf: %(shelfname)s" -msgstr "" - -#: cps/shelf.py:107 -#, python-format -msgid "Book has been added to shelf: %(sname)s" -msgstr "Книга додана на книжкову полицю: %(sname)s" - -#: cps/shelf.py:126 -msgid "You are not allowed to add a book to the shelf" -msgstr "" - -#: cps/shelf.py:144 -#, python-format -msgid "Books are already part of the shelf: %(name)s" -msgstr "" - -#: cps/shelf.py:156 -#, python-format -msgid "Books have been added to shelf: %(sname)s" -msgstr "" - -#: cps/shelf.py:163 -#, python-format -msgid "Could not add books to shelf: %(sname)s" -msgstr "" - -#: cps/shelf.py:209 -#, python-format -msgid "Book has been removed from shelf: %(sname)s" -msgstr "Книга видалена з книжкової полиці: %(sname)s" - -#: cps/shelf.py:218 -msgid "Sorry you are not allowed to remove a book from this shelf" -msgstr "" - -#: cps/shelf.py:228 cps/templates/layout.html:140 -msgid "Create a Shelf" -msgstr "створити книжкову полицю" - -#: cps/shelf.py:236 -#, fuzzy -msgid "Sorry you are not allowed to edit this shelf" -msgstr "Вибачте, але у вас немає дозволу для видалення книги з цієї полиці" - -#: cps/shelf.py:238 -msgid "Edit a shelf" -msgstr "Змінити книжкову полицю" - -#: cps/shelf.py:248 -msgid "Sorry you are not allowed to create a public shelf" -msgstr "" - -#: cps/shelf.py:265 -#, python-format -msgid "Shelf %(title)s created" -msgstr "Створена книжкова полиця %(title)s" - -#: cps/shelf.py:268 -#, python-format -msgid "Shelf %(title)s changed" -msgstr "Книжкова полиця %(title)s змінена" - -#: cps/shelf.py:282 -msgid "There was an error" -msgstr "Сталась помилка" - -#: cps/shelf.py:304 -#, python-format -msgid "A public shelf with the name '%(title)s' already exists." -msgstr "" - -#: cps/shelf.py:315 -#, python-format -msgid "A private shelf with the name '%(title)s' already exists." -msgstr "" - -#: cps/shelf.py:337 -msgid "Error deleting Shelf" -msgstr "" - -#: cps/shelf.py:339 -msgid "Shelf successfully deleted" -msgstr "" - -#: cps/shelf.py:389 -#, python-format -msgid "Change order of Shelf: '%(name)s'" -msgstr "Змінити розташування книжкової полиці '%(name)s'" - -#: cps/shelf.py:461 -#, python-format -msgid "Shelf: '%(name)s'" -msgstr "Книжкова полиця: '%(name)s'" - -#: cps/shelf.py:465 -msgid "Error opening shelf. Shelf does not exist or is not accessible" -msgstr "Помилка при відкриванні полиці. Полиця не існує або до неї відсутній доступ" - -#: cps/updater.py:426 cps/updater.py:437 cps/updater.py:538 cps/updater.py:553 -msgid "Unexpected data while reading update information" -msgstr "" - -#: cps/updater.py:433 cps/updater.py:545 -msgid "No update available. You already have the latest version installed" -msgstr "" - -#: cps/updater.py:451 -msgid "A new update is available. Click on the button below to update to the latest version." -msgstr "" - -#: cps/updater.py:469 -msgid "Could not fetch update information" -msgstr "" - -#: cps/updater.py:479 -msgid "Click on the button below to update to the latest stable version." -msgstr "" - -#: cps/updater.py:488 cps/updater.py:502 cps/updater.py:513 -#, python-format -msgid "A new update is available. Click on the button below to update to version: %(version)s" -msgstr "" - -#: cps/updater.py:531 -msgid "No release information available" -msgstr "" - -#: cps/templates/index.html:5 cps/web.py:434 -msgid "Discover (Random Books)" -msgstr "Огляд (випадкові книги)" - -#: cps/web.py:470 -msgid "Hot Books (Most Downloaded)" -msgstr "Популярні книги (найбільш завантажувані)" - -#: cps/web.py:501 -#, python-format -msgid "Downloaded books by %(user)s" -msgstr "" - -#: cps/web.py:534 -#, python-format -msgid "Author: %(name)s" -msgstr "" - -#: cps/web.py:570 -#, python-format -msgid "Publisher: %(name)s" -msgstr "" - -#: cps/web.py:598 -#, python-format -msgid "Series: %(serie)s" -msgstr "Серії: %(serie)s" - -#: cps/web.py:610 -#, python-format -msgid "Rating: %(rating)s stars" -msgstr "" - -#: cps/web.py:626 -#, python-format -msgid "File format: %(format)s" -msgstr "" - -#: cps/web.py:663 -#, python-format -msgid "Category: %(name)s" -msgstr "Категорія: %(name)s" - -#: cps/web.py:690 -#, python-format -msgid "Language: %(name)s" -msgstr "Мова: %(name)s" - -#: cps/templates/layout.html:56 cps/web.py:789 cps/web.py:1444 -msgid "Advanced Search" -msgstr "Розширений пошук" - -#: cps/templates/book_edit.html:235 cps/templates/feed.xml:33 -#: cps/templates/index.xml:11 cps/templates/layout.html:45 -#: cps/templates/layout.html:48 cps/templates/search_form.html:226 -#: cps/web.py:807 cps/web.py:1164 +#: cps/search.py:48 cps/search.py:414 cps/templates/book_edit.html:236 +#: cps/templates/feed.xml:33 cps/templates/index.xml:11 +#: cps/templates/layout.html:46 cps/templates/layout.html:49 +#: cps/templates/search_form.html:226 msgid "Search" msgstr "Пошук" -#: cps/templates/admin.html:16 cps/web.py:979 -msgid "Downloads" -msgstr "DLS" - -#: cps/web.py:1068 -msgid "Ratings list" -msgstr "" - -#: cps/web.py:1095 -msgid "File formats list" -msgstr "" - -#: cps/templates/layout.html:73 cps/templates/tasks.html:7 cps/web.py:1149 -msgid "Tasks" -msgstr "" - -#: cps/web.py:1286 +#: cps/search.py:194 msgid "Published after " msgstr "" -#: cps/web.py:1293 +#: cps/search.py:201 msgid "Published before " msgstr "Опубліковано до" -#: cps/web.py:1315 +#: cps/search.py:223 #, python-format msgid "Rating <= %(rating)s" msgstr "" -#: cps/web.py:1317 +#: cps/search.py:225 #, python-format msgid "Rating >= %(rating)s" msgstr "" -#: cps/web.py:1319 +#: cps/search.py:227 #, python-format msgid "Read Status = %(status)s" msgstr "" -#: cps/web.py:1425 +#: cps/search.py:345 msgid "Error on search for custom columns, please restart Calibre-Web" msgstr "" -#: cps/web.py:1527 +#: cps/search.py:364 cps/search.py:396 cps/templates/layout.html:57 +msgid "Advanced Search" +msgstr "Розширений пошук" + +#: cps/shelf.py:49 cps/shelf.py:103 +msgid "Invalid shelf specified" +msgstr "" + +#: cps/shelf.py:55 +#, fuzzy +msgid "Sorry you are not allowed to add a book to that shelf" +msgstr "Вибачте, але у вас немає дозволу для видалення книги з цієї полиці" + +#: cps/shelf.py:64 +#, python-format +msgid "Book is already part of the shelf: %(shelfname)s" +msgstr "" + +#: cps/shelf.py:89 +#, python-format +msgid "Book has been added to shelf: %(sname)s" +msgstr "Книга додана на книжкову полицю: %(sname)s" + +#: cps/shelf.py:108 +msgid "You are not allowed to add a book to the shelf" +msgstr "" + +#: cps/shelf.py:126 +#, python-format +msgid "Books are already part of the shelf: %(name)s" +msgstr "" + +#: cps/shelf.py:138 +#, python-format +msgid "Books have been added to shelf: %(sname)s" +msgstr "" + +#: cps/shelf.py:145 +#, python-format +msgid "Could not add books to shelf: %(sname)s" +msgstr "" + +#: cps/shelf.py:191 +#, python-format +msgid "Book has been removed from shelf: %(sname)s" +msgstr "Книга видалена з книжкової полиці: %(sname)s" + +#: cps/shelf.py:200 +msgid "Sorry you are not allowed to remove a book from this shelf" +msgstr "" + +#: cps/shelf.py:210 cps/templates/layout.html:141 +msgid "Create a Shelf" +msgstr "створити книжкову полицю" + +#: cps/shelf.py:218 +#, fuzzy +msgid "Sorry you are not allowed to edit this shelf" +msgstr "Вибачте, але у вас немає дозволу для видалення книги з цієї полиці" + +#: cps/shelf.py:220 +msgid "Edit a shelf" +msgstr "Змінити книжкову полицю" + +#: cps/shelf.py:229 +msgid "Error deleting Shelf" +msgstr "" + +#: cps/shelf.py:231 +msgid "Shelf successfully deleted" +msgstr "" + +#: cps/shelf.py:281 +#, python-format +msgid "Change order of Shelf: '%(name)s'" +msgstr "Змінити розташування книжкової полиці '%(name)s'" + +#: cps/shelf.py:313 +msgid "Sorry you are not allowed to create a public shelf" +msgstr "" + +#: cps/shelf.py:330 +#, python-format +msgid "Shelf %(title)s created" +msgstr "Створена книжкова полиця %(title)s" + +#: cps/shelf.py:333 +#, python-format +msgid "Shelf %(title)s changed" +msgstr "Книжкова полиця %(title)s змінена" + +#: cps/shelf.py:347 +msgid "There was an error" +msgstr "Сталась помилка" + +#: cps/shelf.py:369 +#, python-format +msgid "A public shelf with the name '%(title)s' already exists." +msgstr "" + +#: cps/shelf.py:380 +#, python-format +msgid "A private shelf with the name '%(title)s' already exists." +msgstr "" + +#: cps/shelf.py:462 +#, python-format +msgid "Shelf: '%(name)s'" +msgstr "Книжкова полиця: '%(name)s'" + +#: cps/shelf.py:466 +msgid "Error opening shelf. Shelf does not exist or is not accessible" +msgstr "Помилка при відкриванні полиці. Полиця не існує або до неї відсутній доступ" + +#: cps/tasks_status.py:48 cps/templates/layout.html:74 +#: cps/templates/tasks.html:7 +msgid "Tasks" +msgstr "" + +#: cps/tasks_status.py:64 +msgid "Waiting" +msgstr "" + +#: cps/tasks_status.py:66 +msgid "Failed" +msgstr "" + +#: cps/tasks_status.py:68 +msgid "Started" +msgstr "" + +#: cps/tasks_status.py:70 +msgid "Finished" +msgstr "" + +#: cps/tasks_status.py:72 +msgid "Ended" +msgstr "" + +#: cps/tasks_status.py:74 +msgid "Cancelled" +msgstr "" + +#: cps/tasks_status.py:76 +msgid "Unknown Status" +msgstr "" + +#: cps/updater.py:431 cps/updater.py:442 cps/updater.py:543 cps/updater.py:558 +msgid "Unexpected data while reading update information" +msgstr "" + +#: cps/updater.py:438 cps/updater.py:550 +msgid "No update available. You already have the latest version installed" +msgstr "" + +#: cps/updater.py:456 +msgid "A new update is available. Click on the button below to update to the latest version." +msgstr "" + +#: cps/updater.py:474 +msgid "Could not fetch update information" +msgstr "" + +#: cps/updater.py:484 +msgid "Click on the button below to update to the latest stable version." +msgstr "" + +#: cps/updater.py:493 cps/updater.py:507 cps/updater.py:518 +#, python-format +msgid "A new update is available. Click on the button below to update to version: %(version)s" +msgstr "" + +#: cps/updater.py:536 +msgid "No release information available" +msgstr "" + +#: cps/templates/index.html:6 cps/web.py:432 +msgid "Discover (Random Books)" +msgstr "Огляд (випадкові книги)" + +#: cps/web.py:468 +msgid "Hot Books (Most Downloaded)" +msgstr "Популярні книги (найбільш завантажувані)" + +#: cps/web.py:499 +#, python-format +msgid "Downloaded books by %(user)s" +msgstr "" + +#: cps/web.py:532 +#, python-format +msgid "Author: %(name)s" +msgstr "" + +#: cps/web.py:568 +#, python-format +msgid "Publisher: %(name)s" +msgstr "" + +#: cps/web.py:596 +#, python-format +msgid "Series: %(serie)s" +msgstr "Серії: %(serie)s" + +#: cps/web.py:609 +msgid "Rating: None" +msgstr "" + +#: cps/web.py:618 +#, python-format +msgid "Rating: %(rating)s stars" +msgstr "" + +#: cps/web.py:636 +#, python-format +msgid "File format: %(format)s" +msgstr "" + +#: cps/web.py:673 +#, python-format +msgid "Category: %(name)s" +msgstr "Категорія: %(name)s" + +#: cps/web.py:700 +#, python-format +msgid "Language: %(name)s" +msgstr "Мова: %(name)s" + +#: cps/templates/admin.html:16 cps/web.py:938 +msgid "Downloads" +msgstr "DLS" + +#: cps/web.py:1030 +msgid "Ratings list" +msgstr "" + +#: cps/web.py:1057 +msgid "File formats list" +msgstr "" + +#: cps/web.py:1199 #, python-format msgid "Book successfully queued for sending to %(kindlemail)s" msgstr "" -#: cps/web.py:1531 +#: cps/web.py:1203 #, python-format msgid "Oops! There was an error sending this book: %(res)s" msgstr "Помилка при відправці книги: %(res)s" -#: cps/web.py:1533 +#: cps/web.py:1205 msgid "Please update your profile with a valid Send to Kindle E-mail Address." msgstr "" -#: cps/web.py:1550 +#: cps/web.py:1222 msgid "E-Mail server is not configured, please contact your administrator!" msgstr "" -#: cps/templates/layout.html:85 cps/templates/register.html:17 cps/web.py:1551 -#: cps/web.py:1558 cps/web.py:1564 cps/web.py:1583 cps/web.py:1587 -#: cps/web.py:1593 +#: cps/templates/layout.html:86 cps/templates/register.html:17 cps/web.py:1223 +#: cps/web.py:1230 cps/web.py:1236 cps/web.py:1255 cps/web.py:1260 +#: cps/web.py:1266 msgid "Register" msgstr "Зареєструватись" -#: cps/web.py:1585 +#: cps/web.py:1257 msgid "Your e-mail is not allowed to register" msgstr "" -#: cps/web.py:1588 +#: cps/web.py:1261 msgid "Confirmation e-mail was send to your e-mail account." msgstr "" -#: cps/web.py:1602 +#: cps/web.py:1275 msgid "Cannot activate LDAP authentication" msgstr "" -#: cps/web.py:1621 +#: cps/web.py:1294 #, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgstr "" -#: cps/web.py:1627 +#: cps/web.py:1300 #, python-format msgid "Could not login: %(message)s" msgstr "" -#: cps/web.py:1631 cps/web.py:1656 +#: cps/web.py:1304 cps/web.py:1329 msgid "Wrong Username or Password" msgstr "Помилка в імені користувача або паролі" -#: cps/web.py:1638 +#: cps/web.py:1311 msgid "New Password was send to your email address" msgstr "" -#: cps/web.py:1644 +#: cps/web.py:1317 msgid "Please enter valid username to reset password" msgstr "" -#: cps/web.py:1651 +#: cps/web.py:1324 #, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "" -#: cps/web.py:1717 cps/web.py:1766 +#: cps/web.py:1388 cps/web.py:1437 #, python-format msgid "%(name)s's profile" msgstr "Профіль %(name)s" -#: cps/web.py:1733 +#: cps/web.py:1404 msgid "Profile updated" msgstr "Профіль оновлено" @@ -1339,40 +1377,75 @@ msgstr "Профіль оновлено" msgid "Found no valid gmail.json file with OAuth information" msgstr "" -#: cps/tasks/convert.py:154 +#: cps/tasks/convert.py:153 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "" -#: cps/tasks/convert.py:187 +#: cps/tasks/convert.py:186 #, python-format msgid "%(format)s format not found on disk" msgstr "" -#: cps/tasks/convert.py:191 +#: cps/tasks/convert.py:190 msgid "Ebook converter failed with unknown error" msgstr "" -#: cps/tasks/convert.py:201 +#: cps/tasks/convert.py:200 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "" -#: cps/tasks/convert.py:223 +#: cps/tasks/convert.py:222 #, python-format msgid "Converted file not found or more than one file in folder %(folder)s" msgstr "" -#: cps/tasks/convert.py:246 +#: cps/tasks/convert.py:245 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "" -#: cps/tasks/convert.py:269 +#: cps/tasks/convert.py:268 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "" +#: cps/tasks/convert.py:273 +msgid "Convert" +msgstr "" + +#: cps/tasks/database.py:28 +msgid "Reconnecting Calibre database" +msgstr "" + +#: cps/tasks/mail.py:265 +msgid "E-mail" +msgstr "" + +#: cps/tasks/thumbnail.py:95 +#, python-format +msgid "Generated %(count)s cover thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:222 cps/tasks/thumbnail.py:435 +#: cps/tasks/thumbnail.py:503 +msgid "Cover Thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:281 +msgid "Generated {0} series thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:446 +msgid "Clearing cover thumbnail cache" +msgstr "" + +#: cps/tasks/upload.py:38 cps/templates/admin.html:20 +#: cps/templates/layout.html:67 cps/templates/user_table.html:145 +msgid "Upload" +msgstr "Додати нову книгу" + #: cps/templates/admin.html:9 msgid "Users" msgstr "Список користувачів" @@ -1392,7 +1465,7 @@ msgstr "" msgid "Send to Kindle E-mail Address" msgstr "Kindle" -#: cps/templates/admin.html:17 cps/templates/layout.html:76 +#: cps/templates/admin.html:17 cps/templates/layout.html:77 #: cps/templates/user_table.html:143 msgid "Admin" msgstr "Адмін" @@ -1402,13 +1475,8 @@ msgstr "Адмін" msgid "Password" msgstr "Пароль" -#: cps/templates/admin.html:20 cps/templates/layout.html:66 -#: cps/templates/user_table.html:145 -msgid "Upload" -msgstr "Додати нову книгу" - -#: cps/templates/admin.html:22 cps/templates/detail.html:18 -#: cps/templates/detail.html:27 cps/templates/shelf.html:7 +#: cps/templates/admin.html:22 cps/templates/detail.html:19 +#: cps/templates/detail.html:28 cps/templates/shelf.html:8 #: cps/templates/user_table.html:146 msgid "Download" msgstr "Завантажити" @@ -1422,7 +1490,7 @@ msgstr "" msgid "Edit" msgstr "Редагувати" -#: cps/templates/admin.html:25 cps/templates/book_edit.html:16 +#: cps/templates/admin.html:25 cps/templates/book_edit.html:17 #: cps/templates/book_table.html:100 cps/templates/modal_dialogs.html:63 #: cps/templates/modal_dialogs.html:116 cps/templates/user_edit.html:67 #: cps/templates/user_table.html:149 @@ -1535,78 +1603,107 @@ msgstr "" msgid "Edit UI Configuration" msgstr "" -#: cps/templates/admin.html:166 -msgid "Administration" -msgstr "Адміністрування" - #: cps/templates/admin.html:167 -msgid "Download Debug Package" +msgid "Scheduled Tasks" msgstr "" -#: cps/templates/admin.html:168 -msgid "View Logs" +#: cps/templates/admin.html:170 cps/templates/schedule_edit.html:12 +msgid "Time at which tasks start to run" msgstr "" -#: cps/templates/admin.html:171 -msgid "Reconnect Calibre Database" -msgstr "Повторне підключення до БД Calibre" - -#: cps/templates/admin.html:172 -msgid "Restart" -msgstr "" - -#: cps/templates/admin.html:173 -msgid "Shutdown" +#: cps/templates/admin.html:174 cps/templates/schedule_edit.html:20 +msgid "Maximum tasks duration" msgstr "" #: cps/templates/admin.html:178 -msgid "Update" +msgid "Generate book cover thumbnails" msgstr "" #: cps/templates/admin.html:182 +msgid "Generate series cover thumbnails" +msgstr "" + +#: cps/templates/admin.html:186 cps/templates/schedule_edit.html:37 +msgid "Reconnect to Calibre Library" +msgstr "" + +#: cps/templates/admin.html:193 +msgid "Refresh Thumbnail Cover Cache" +msgstr "" + +#: cps/templates/admin.html:199 +msgid "Administration" +msgstr "Адміністрування" + +#: cps/templates/admin.html:200 +msgid "Download Debug Package" +msgstr "" + +#: cps/templates/admin.html:201 +msgid "View Logs" +msgstr "" + +#: cps/templates/admin.html:204 +msgid "Reconnect Calibre Database" +msgstr "Повторне підключення до БД Calibre" + +#: cps/templates/admin.html:207 +msgid "Restart" +msgstr "" + +#: cps/templates/admin.html:208 +msgid "Shutdown" +msgstr "" + +#: cps/templates/admin.html:213 +msgid "Version Information" +msgstr "" + +#: cps/templates/admin.html:217 msgid "Version" msgstr "" -#: cps/templates/admin.html:183 +#: cps/templates/admin.html:218 msgid "Details" msgstr "" -#: cps/templates/admin.html:189 +#: cps/templates/admin.html:224 msgid "Current version" msgstr "" -#: cps/templates/admin.html:196 +#: cps/templates/admin.html:231 msgid "Check for Update" msgstr "Перевірка оновлень" -#: cps/templates/admin.html:197 +#: cps/templates/admin.html:232 msgid "Perform Update" msgstr "Встановити оновлення" -#: cps/templates/admin.html:210 +#: cps/templates/admin.html:245 msgid "Are you sure you want to restart?" msgstr "" -#: cps/templates/admin.html:215 cps/templates/admin.html:229 -#: cps/templates/admin.html:249 cps/templates/config_db.html:70 +#: cps/templates/admin.html:250 cps/templates/admin.html:264 +#: cps/templates/admin.html:284 cps/templates/config_db.html:70 msgid "OK" msgstr "Ok" -#: cps/templates/admin.html:216 cps/templates/admin.html:230 -#: cps/templates/book_edit.html:213 cps/templates/book_table.html:127 +#: cps/templates/admin.html:251 cps/templates/admin.html:265 +#: cps/templates/book_edit.html:214 cps/templates/book_table.html:127 #: cps/templates/config_db.html:54 cps/templates/config_edit.html:359 #: 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/shelf_edit.html:27 +#: cps/templates/modal_dialogs.html:135 cps/templates/schedule_edit.html:41 +#: cps/templates/shelf_edit.html:27 cps/templates/tasks.html:46 #: cps/templates/user_edit.html:144 msgid "Cancel" msgstr "" -#: cps/templates/admin.html:228 +#: cps/templates/admin.html:263 msgid "Are you sure you want to shutdown?" msgstr "" -#: cps/templates/admin.html:240 +#: cps/templates/admin.html:275 msgid "Updating, please do not reload this page" msgstr "Встановлення оновлень, будь-ласка, не оновлюйте сторінку" @@ -1618,39 +1715,39 @@ msgstr "через" msgid "In Library" msgstr "У бібліотеці" -#: cps/templates/author.html:26 cps/templates/index.html:73 -#: cps/templates/search.html:30 cps/templates/shelf.html:19 +#: cps/templates/author.html:26 cps/templates/index.html:74 +#: cps/templates/search.html:31 cps/templates/shelf.html:20 msgid "Sort according to book date, newest first" msgstr "" -#: cps/templates/author.html:27 cps/templates/index.html:74 -#: cps/templates/search.html:31 cps/templates/shelf.html:20 +#: cps/templates/author.html:27 cps/templates/index.html:75 +#: cps/templates/search.html:32 cps/templates/shelf.html:21 msgid "Sort according to book date, oldest first" msgstr "" -#: cps/templates/author.html:28 cps/templates/index.html:75 -#: cps/templates/search.html:32 cps/templates/shelf.html:21 +#: cps/templates/author.html:28 cps/templates/index.html:76 +#: cps/templates/search.html:33 cps/templates/shelf.html:22 msgid "Sort title in alphabetical order" msgstr "" -#: cps/templates/author.html:29 cps/templates/index.html:76 -#: cps/templates/search.html:33 cps/templates/shelf.html:22 +#: cps/templates/author.html:29 cps/templates/index.html:77 +#: cps/templates/search.html:34 cps/templates/shelf.html:23 msgid "Sort title in reverse alphabetical order" msgstr "" -#: cps/templates/author.html:30 cps/templates/index.html:79 -#: cps/templates/search.html:36 cps/templates/shelf.html:25 +#: cps/templates/author.html:30 cps/templates/index.html:80 +#: cps/templates/search.html:37 cps/templates/shelf.html:26 msgid "Sort according to publishing date, newest first" msgstr "" -#: cps/templates/author.html:31 cps/templates/index.html:80 -#: cps/templates/search.html:37 cps/templates/shelf.html:26 +#: cps/templates/author.html:31 cps/templates/index.html:81 +#: cps/templates/search.html:38 cps/templates/shelf.html:27 msgid "Sort according to publishing date, oldest first" msgstr "" #: cps/templates/author.html:56 cps/templates/author.html:115 -#: cps/templates/index.html:29 cps/templates/index.html:112 -#: cps/templates/search.html:66 cps/templates/shelf.html:54 +#: cps/templates/index.html:30 cps/templates/index.html:113 +#: cps/templates/search.html:67 cps/templates/shelf.html:55 msgid "reduce" msgstr "" @@ -1658,165 +1755,166 @@ msgstr "" msgid "More by" msgstr "Більше за" -#: cps/templates/book_edit.html:10 +#: cps/templates/book_edit.html:11 msgid "Delete Book" msgstr "Видалити книгу" -#: cps/templates/book_edit.html:13 +#: cps/templates/book_edit.html:14 msgid "Delete formats:" msgstr "" -#: cps/templates/book_edit.html:24 +#: cps/templates/book_edit.html:25 msgid "Convert book format:" msgstr "" -#: cps/templates/book_edit.html:29 +#: cps/templates/book_edit.html:30 msgid "Convert from:" msgstr "" -#: cps/templates/book_edit.html:31 cps/templates/book_edit.html:38 +#: cps/templates/book_edit.html:32 cps/templates/book_edit.html:39 msgid "select an option" msgstr "" -#: cps/templates/book_edit.html:36 +#: cps/templates/book_edit.html:37 msgid "Convert to:" msgstr "" -#: cps/templates/book_edit.html:45 +#: cps/templates/book_edit.html:46 msgid "Convert book" msgstr "" -#: cps/templates/book_edit.html:55 cps/templates/search_form.html:8 +#: cps/templates/book_edit.html:56 cps/templates/search_form.html:8 msgid "Book Title" msgstr "Назва книги" -#: cps/templates/book_edit.html:62 cps/templates/book_edit.html:270 -#: cps/templates/book_edit.html:288 cps/templates/search_form.html:12 +#: cps/templates/book_edit.html:63 cps/templates/book_edit.html:271 +#: cps/templates/book_edit.html:289 cps/templates/search_form.html:12 msgid "Author" msgstr "Автор" -#: cps/templates/book_edit.html:67 cps/templates/book_edit.html:275 -#: cps/templates/book_edit.html:290 cps/templates/search_form.html:153 +#: cps/templates/book_edit.html:68 cps/templates/book_edit.html:276 +#: cps/templates/book_edit.html:291 cps/templates/search_form.html:153 msgid "Description" msgstr "Опис" -#: cps/templates/book_edit.html:72 +#: cps/templates/book_edit.html:73 msgid "Identifiers" msgstr "" -#: cps/templates/book_edit.html:76 cps/templates/book_edit.html:299 +#: cps/templates/book_edit.html:77 cps/templates/book_edit.html:300 msgid "Identifier Type" msgstr "" -#: cps/templates/book_edit.html:77 cps/templates/book_edit.html:300 +#: cps/templates/book_edit.html:78 cps/templates/book_edit.html:301 msgid "Identifier Value" msgstr "" -#: cps/templates/book_edit.html:78 cps/templates/book_edit.html:301 +#: cps/templates/book_edit.html:79 cps/templates/book_edit.html:302 #: cps/templates/user_table.html:24 msgid "Remove" msgstr "" -#: cps/templates/book_edit.html:82 +#: cps/templates/book_edit.html:83 msgid "Add Identifier" msgstr "" -#: cps/templates/book_edit.html:86 cps/templates/search_form.html:51 +#: cps/templates/book_edit.html:87 cps/templates/search_form.html:51 msgid "Tags" msgstr "Теги" -#: cps/templates/book_edit.html:94 +#: cps/templates/book_edit.html:95 msgid "Series ID" msgstr "" -#: cps/templates/book_edit.html:98 +#: cps/templates/book_edit.html:99 msgid "Rating" msgstr "Рейтинг" -#: cps/templates/book_edit.html:103 +#: cps/templates/book_edit.html:104 msgid "Fetch Cover from URL (JPEG - Image will be downloaded and stored in database)" msgstr "" -#: cps/templates/book_edit.html:107 +#: cps/templates/book_edit.html:108 msgid "Upload Cover from Local Disk" msgstr "" -#: cps/templates/book_edit.html:112 +#: cps/templates/book_edit.html:113 msgid "Published Date" msgstr "Опубліковано" -#: cps/templates/book_edit.html:121 cps/templates/book_edit.html:272 -#: cps/templates/book_edit.html:289 cps/templates/detail.html:164 +#: cps/templates/book_edit.html:122 cps/templates/book_edit.html:273 +#: cps/templates/book_edit.html:290 cps/templates/detail.html:165 #: cps/templates/search_form.html:16 msgid "Publisher" msgstr "Видавець" -#: cps/templates/book_edit.html:125 cps/templates/detail.html:131 +#: cps/templates/book_edit.html:126 cps/templates/detail.html:132 #: cps/templates/user_edit.html:33 msgid "Language" msgstr "Мова" -#: cps/templates/book_edit.html:135 cps/templates/search_form.html:45 +#: cps/templates/book_edit.html:136 cps/templates/search_form.html:45 #: cps/templates/search_form.html:164 msgid "Yes" msgstr "Так" -#: cps/templates/book_edit.html:136 cps/templates/search_form.html:46 +#: cps/templates/book_edit.html:137 cps/templates/search_form.html:46 #: cps/templates/search_form.html:165 msgid "No" msgstr "Ні" -#: cps/templates/book_edit.html:200 +#: cps/templates/book_edit.html:201 msgid "Upload Format" msgstr "Формат завантаження" -#: cps/templates/book_edit.html:208 +#: cps/templates/book_edit.html:209 msgid "View Book on Save" msgstr "переглянути книгу після редагування" -#: cps/templates/book_edit.html:211 cps/templates/book_edit.html:229 +#: cps/templates/book_edit.html:212 cps/templates/book_edit.html:230 msgid "Fetch Metadata" msgstr "Отримати метадані" -#: cps/templates/book_edit.html:212 cps/templates/config_db.html:53 +#: cps/templates/book_edit.html:213 cps/templates/config_db.html:53 #: cps/templates/config_edit.html:358 cps/templates/config_view_edit.html:174 -#: cps/templates/email_edit.html:65 cps/templates/shelf_edit.html:25 -#: cps/templates/shelf_order.html:41 cps/templates/user_edit.html:142 +#: cps/templates/email_edit.html:65 cps/templates/schedule_edit.html:40 +#: cps/templates/shelf_edit.html:25 cps/templates/shelf_order.html:41 +#: cps/templates/user_edit.html:142 msgid "Save" msgstr "" -#: cps/templates/book_edit.html:232 +#: cps/templates/book_edit.html:233 msgid "Keyword" msgstr "Ключове слово" -#: cps/templates/book_edit.html:233 +#: cps/templates/book_edit.html:234 #, fuzzy msgid "Search keyword" msgstr " Пошук по ключовому слову" -#: cps/templates/book_edit.html:239 +#: cps/templates/book_edit.html:240 msgid "Click the cover to load metadata to the form" msgstr "Натисніть на обкладинку, щоб отримати метадані" -#: cps/templates/book_edit.html:246 cps/templates/book_edit.html:285 +#: cps/templates/book_edit.html:247 cps/templates/book_edit.html:286 msgid "Loading..." msgstr "Завантаження..." -#: cps/templates/book_edit.html:250 cps/templates/layout.html:63 -#: cps/templates/layout.html:186 cps/templates/modal_dialogs.html:34 +#: cps/templates/book_edit.html:251 cps/templates/layout.html:64 +#: cps/templates/layout.html:187 cps/templates/modal_dialogs.html:34 #: cps/templates/user_edit.html:163 msgid "Close" msgstr "Закрити" -#: cps/templates/book_edit.html:277 cps/templates/book_edit.html:291 +#: cps/templates/book_edit.html:278 cps/templates/book_edit.html:292 msgid "Source" msgstr "Джерело" -#: cps/templates/book_edit.html:286 +#: cps/templates/book_edit.html:287 msgid "Search error!" msgstr "Помилка пошуку!" -#: cps/templates/book_edit.html:287 +#: cps/templates/book_edit.html:288 msgid "No Result(s) found! Please try another keyword." msgstr "" @@ -1924,6 +2022,7 @@ msgid "Enter " msgstr "Зареєструватись" #: cps/templates/book_table.html:113 cps/templates/modal_dialogs.html:46 +#: cps/templates/tasks.html:36 msgid "Are you really sure?" msgstr "" @@ -2337,62 +2436,62 @@ msgstr "" msgid "Add Allowed/Denied custom column values" msgstr "" -#: cps/templates/detail.html:60 cps/templates/detail.html:69 +#: cps/templates/detail.html:61 cps/templates/detail.html:70 msgid "Read in Browser" msgstr "Відкрити в браузері" -#: cps/templates/detail.html:77 cps/templates/detail.html:94 +#: cps/templates/detail.html:78 cps/templates/detail.html:95 msgid "Listen in Browser" msgstr "" -#: cps/templates/detail.html:124 +#: cps/templates/detail.html:125 #, python-format msgid "Book %(index)s of %(range)s" msgstr "" -#: cps/templates/detail.html:173 +#: cps/templates/detail.html:174 msgid "Published" msgstr "" -#: cps/templates/detail.html:221 +#: cps/templates/detail.html:222 msgid "Mark As Unread" msgstr "" -#: cps/templates/detail.html:221 +#: cps/templates/detail.html:222 msgid "Mark As Read" msgstr "" -#: cps/templates/detail.html:222 +#: cps/templates/detail.html:223 msgid "Read" msgstr "Прочитано" -#: cps/templates/detail.html:231 +#: cps/templates/detail.html:232 msgid "Restore from archive" msgstr "" -#: cps/templates/detail.html:231 +#: cps/templates/detail.html:232 msgid "Add to archive" msgstr "" -#: cps/templates/detail.html:232 +#: cps/templates/detail.html:233 msgid "Archived" msgstr "" -#: cps/templates/detail.html:243 +#: cps/templates/detail.html:244 msgid "Description:" msgstr "Опис:" -#: cps/templates/detail.html:256 cps/templates/search.html:15 +#: cps/templates/detail.html:257 cps/templates/search.html:16 msgid "Add to shelf" msgstr "Додати на книжкову полицю" -#: cps/templates/detail.html:267 cps/templates/detail.html:284 -#: cps/templates/feed.xml:79 cps/templates/layout.html:137 -#: cps/templates/search.html:21 +#: cps/templates/detail.html:268 cps/templates/detail.html:285 +#: cps/templates/feed.xml:79 cps/templates/layout.html:138 +#: cps/templates/search.html:22 msgid "(Public)" msgstr "" -#: cps/templates/detail.html:298 +#: cps/templates/detail.html:299 msgid "Edit Metadata" msgstr "Редагувати метадані" @@ -2436,7 +2535,7 @@ msgstr "" msgid "Save and Send Test E-mail" msgstr "Зберегти налаштування і відправити тестове повідомлення" -#: cps/templates/email_edit.html:70 cps/templates/layout.html:29 +#: cps/templates/email_edit.html:70 cps/templates/layout.html:30 #: cps/templates/shelf_order.html:42 cps/templates/user_table.html:174 msgid "Back" msgstr "Назад" @@ -2462,7 +2561,7 @@ msgstr "" msgid "Denied Domains (Blacklist)" msgstr "" -#: cps/templates/feed.xml:21 cps/templates/layout.html:170 +#: cps/templates/feed.xml:21 cps/templates/layout.html:171 msgid "Next" msgstr "Далі" @@ -2474,6 +2573,10 @@ msgstr "" msgid "Kobo Token:" msgstr "" +#: cps/templates/grid.html:21 +msgid "List" +msgstr "" + #: cps/templates/http_error.html:31 msgid "Calibre-Web Instance is unconfigured, please contact your administrator" msgstr "" @@ -2490,29 +2593,29 @@ msgstr "" msgid "Logout User" msgstr "" -#: cps/templates/index.html:70 +#: cps/templates/index.html:71 msgid "Sort ascending according to download count" msgstr "" -#: cps/templates/index.html:71 +#: cps/templates/index.html:72 msgid "Sort descending according to download count" msgstr "" -#: cps/templates/index.html:77 cps/templates/search.html:34 -#: cps/templates/shelf.html:23 -msgid "Sort authors in alphabetical order" -msgstr "" - #: cps/templates/index.html:78 cps/templates/search.html:35 #: cps/templates/shelf.html:24 +msgid "Sort authors in alphabetical order" +msgstr "" + +#: cps/templates/index.html:79 cps/templates/search.html:36 +#: cps/templates/shelf.html:25 msgid "Sort authors in reverse alphabetical order" msgstr "" -#: cps/templates/index.html:82 +#: cps/templates/index.html:83 msgid "Sort ascending according to series index" msgstr "" -#: cps/templates/index.html:83 +#: cps/templates/index.html:84 msgid "Sort descending according to series index" msgstr "" @@ -2576,7 +2679,7 @@ msgstr "" msgid "Books ordered by file formats" msgstr "" -#: cps/templates/index.xml:119 cps/templates/layout.html:135 +#: cps/templates/index.xml:119 cps/templates/layout.html:136 #: cps/templates/search_form.html:87 msgid "Shelves" msgstr "" @@ -2585,63 +2688,67 @@ msgstr "" msgid "Books organized in shelves" msgstr "" -#: cps/templates/layout.html:29 +#: cps/templates/layout.html:30 msgid "Home" msgstr "" -#: cps/templates/layout.html:35 +#: cps/templates/layout.html:36 msgid "Toggle Navigation" msgstr "Включити навігацію" -#: cps/templates/layout.html:46 +#: cps/templates/layout.html:47 msgid "Search Library" msgstr "" -#: cps/templates/layout.html:63 cps/templates/layout.html:117 +#: cps/templates/layout.html:64 cps/templates/layout.html:118 msgid "Uploading..." msgstr "Завантаження..." -#: cps/templates/layout.html:63 +#: cps/templates/layout.html:64 msgid "Error" msgstr "" -#: cps/templates/layout.html:63 +#: cps/templates/layout.html:64 msgid "Upload done, processing, please wait..." msgstr "" -#: cps/templates/layout.html:76 cps/templates/read.html:72 +#: cps/templates/layout.html:77 cps/templates/read.html:72 #: cps/templates/readcbr.html:84 cps/templates/readcbr.html:108 msgid "Settings" msgstr "Налаштування" -#: cps/templates/layout.html:78 +#: cps/templates/layout.html:79 msgid "Account" msgstr "" -#: cps/templates/layout.html:80 +#: cps/templates/layout.html:81 msgid "Logout" msgstr "Вийти" -#: cps/templates/layout.html:118 +#: cps/templates/layout.html:119 msgid "Please do not refresh the page" msgstr "" -#: cps/templates/layout.html:128 +#: cps/templates/layout.html:129 msgid "Browse" msgstr "Перегляд" -#: cps/templates/layout.html:141 cps/templates/stats.html:3 +#: cps/templates/layout.html:142 cps/templates/stats.html:3 msgid "About" msgstr "Про програму" -#: cps/templates/layout.html:155 +#: cps/templates/layout.html:156 msgid "Previous" msgstr "Попередній перегляд" -#: cps/templates/layout.html:182 +#: cps/templates/layout.html:183 msgid "Book Details" msgstr "Деталі" +#: cps/templates/list.html:22 +msgid "Grid" +msgstr "" + #: cps/templates/login.html:18 msgid "Remember Me" msgstr "Запам'ятати мене" @@ -2746,7 +2853,7 @@ msgstr "" msgid "Select" msgstr "" -#: cps/templates/modal_dialogs.html:134 +#: cps/templates/modal_dialogs.html:134 cps/templates/tasks.html:45 #, fuzzy msgid "Ok" msgstr "Книга" @@ -2924,15 +3031,23 @@ msgstr "Після цього ви автоматично ввійдете в с msgid "This verification link will expire in 10 minutes." msgstr "" -#: cps/templates/search.html:5 -msgid "No Results Found" +#: cps/templates/schedule_edit.html:29 +msgid "Generate Book Cover Thumbnails" +msgstr "" + +#: cps/templates/schedule_edit.html:33 +msgid "Generate Series Cover Thumbnails" msgstr "" #: cps/templates/search.html:6 +msgid "No Results Found" +msgstr "" + +#: cps/templates/search.html:7 msgid "Search Term:" msgstr "" -#: cps/templates/search.html:8 +#: cps/templates/search.html:9 msgid "Results for:" msgstr "Результати для:" @@ -2985,23 +3100,23 @@ msgstr "" msgid "To:" msgstr "" -#: cps/templates/shelf.html:12 +#: cps/templates/shelf.html:13 msgid "Delete this Shelf" msgstr "Видалити цю книжкову полицю" -#: cps/templates/shelf.html:13 +#: cps/templates/shelf.html:14 msgid "Edit Shelf Properties" msgstr "" -#: cps/templates/shelf.html:16 +#: cps/templates/shelf.html:17 msgid "Arrange books manually" msgstr "" -#: cps/templates/shelf.html:17 +#: cps/templates/shelf.html:18 msgid "Disable Change order" msgstr "" -#: cps/templates/shelf.html:17 +#: cps/templates/shelf.html:18 msgid "Enable Change order" msgstr "" @@ -3046,8 +3161,8 @@ msgid "System Statistics" msgstr "" #: cps/templates/stats.html:33 -msgid "Program Library" -msgstr "Назва" +msgid "Program" +msgstr "" #: cps/templates/stats.html:34 msgid "Installed Version" @@ -3077,6 +3192,18 @@ msgstr "" msgid "Start Time" msgstr "" +#: cps/templates/tasks.html:20 +msgid "Actions" +msgstr "" + +#: cps/templates/tasks.html:40 +msgid "This task will be cancelled. Any progress made by this task will be saved." +msgstr "" + +#: cps/templates/tasks.html:41 +msgid "If this is a scheduled task, it will be re-ran during the next scheduled time." +msgstr "" + #: cps/templates/user_edit.html:20 msgid "Reset user Password" msgstr "" diff --git a/cps/translations/zh_Hans_CN/LC_MESSAGES/messages.mo b/cps/translations/zh_Hans_CN/LC_MESSAGES/messages.mo index a771e299c9f52a8e8d1632459b7a7444b79ae6ba..20c6919b6926761df822a4fc95ec0317e13e0983 100644 GIT binary patch delta 12169 zcmYM(2Xt4(w#V@!goGrJkc1GDKu8D#h>(P8Xi`EC^-4H9Ri_GcgRa zuo!m2lGqp3Z)`!k?|G{!sN?p62G7ewO?V77(5L2?sD9sLINm@7;MH{f15km4U?i4D z^{b5u48#ETGZaIy1jb~t|JuvSG{j&ADpjp806Sw8cDMR)RAxq@ zGBY0&aV2V^{iyf9K<)7*RKP`9F2~BNg$ghS>*1ohJ&eLnjiu6<`!mksL1tHSPcm zV}5TW1x4N6t9LqDmcY{I_MzIX-O>I;l4a`=kfV!Xp9f&#$#u<(Z z@V{1{ips!j^n)lYqo5DTTGRmBPy66DAS{iOP?=ba zTJh_st=Nys#8;^K{%TJCHNn3$=sHBVaC=z+RUeERXaXvgFQZbo8x_bYROaqr0LF49 zG(iF?Q*}`RWn(f9L~YG1RA3uhl7C&lTpF~;r%@}pfV%HD&7f8;;Y-BE z95rDl)C2=j<4i+Mv0y8h8(tfvVXqQ!P*n>VXPi7%K2dNWi`~heBBzUd0gHi(2_1)QkUv%FHFKguh}n z3~%eMV?)&07=@K_A*SFy^Ly0zMcX-3P+QRqJLvuoprF0ZMgHS`%)bZGSnR|%EFs6eGyaJ|DuY*;vKNiKgsKdGhLzv%NK|uq*hDzlb)Smr{ z)$uOY!_@!qZNMB1#Z{=S+ls|;7b?*GsOxqHm9gvA9@EhUoQBF!7xYU|m`ou8=b-{v ziv_m=J5xW68Yr2sjV8!OJ%0*ynx~m7us-#-QCoQfwRQJV0T*I0tvt+(>P-ICu`~_A zn2Z{@8ir$QRDeBD0}MqSzVR4=dy(_%oj{Ef(Z#iwL2YRohG8>|!p^9}`7|o<>0QXb z4##R5w0HYZdwIg@7qJ5Ms~Cw9Pq;ryD_{`y-l){)paK|!3Va$W;FnPgT4}z63girC z<1apiZWL;Cbt{>J+Pkx;fo`I{V2{vA^*B^L6>DG?@_XcsM;*#MjKK$}FJr0h?hIvO zW9mauU&0-z%=)J(l%{YA_2NCOjuAcF3t6aBI|G&S`KU~+Lv7hxs0_Ss?Vq3yL@l#YL9-L$P=ATO8tzljp?H8AuzX)ujX78!mmpWz z`wX?BdbtOiTI6qA9X0p^mhS0-k<#I6t|o*I@#lvienwrye)J^IBjXtcO$aG0a0{oSBa5(9G-_-g^H38kM4j%{sQ%kf6CTF0_&I8x>llZAz#!L9 z4wGr9g-TI(YwwThI381QA?mjv4=dm$)PzNzcA1F4K
PsLW$8(>SEi3;cxa*KTL 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\n" "Language: zh_CN\n" @@ -16,585 +16,610 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.9.1\n" +"Generated-By: Babel 2.8.0\n" -#: cps/about.py:86 +#: cps/about.py:84 msgid "Statistics" msgstr "统计" -#: cps/admin.py:141 +#: cps/admin.py:146 msgid "Server restarted, please reload page" msgstr "服务器已重启,请刷新页面" -#: cps/admin.py:143 +#: cps/admin.py:148 msgid "Performing shutdown of server, please close window" msgstr "正在关闭服务器,请关闭窗口" -#: cps/admin.py:151 +#: cps/admin.py:156 msgid "Reconnect successful" msgstr "重新连接成功" -#: cps/admin.py:154 +#: cps/admin.py:159 msgid "Unknown command" msgstr "未知命令" -#: cps/admin.py:176 cps/editbooks.py:713 cps/editbooks.py:892 -#: cps/editbooks.py:894 cps/editbooks.py:930 cps/editbooks.py:947 -#: cps/updater.py:608 cps/uploader.py:93 cps/uploader.py:103 +#: cps/admin.py:192 cps/editbooks.py:571 cps/editbooks.py:573 +#: cps/editbooks.py:609 cps/editbooks.py:626 cps/editbooks.py:1233 +#: cps/updater.py:613 cps/uploader.py:87 cps/uploader.py:97 msgid "Unknown" msgstr "未知" -#: cps/admin.py:197 +#: cps/admin.py:217 msgid "Admin page" msgstr "管理页" -#: cps/admin.py:217 +#: cps/admin.py:237 msgid "Basic Configuration" msgstr "基本配置" -#: cps/admin.py:255 +#: cps/admin.py:275 msgid "UI Configuration" msgstr "界面配置" -#: cps/admin.py:289 cps/templates/admin.html:51 +#: cps/admin.py:309 cps/templates/admin.html:51 msgid "Edit Users" msgstr "管理用户" -#: cps/admin.py:333 cps/opds.py:529 cps/templates/grid.html:13 +#: cps/admin.py:353 cps/opds.py:532 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "全部" -#: cps/admin.py:360 cps/admin.py:1648 +#: cps/admin.py:380 cps/admin.py:1365 msgid "User not found" msgstr "找不到用户" -#: cps/admin.py:374 +#: cps/admin.py:394 msgid "{} users deleted successfully" msgstr "成功删除 {} 个用户" -#: cps/admin.py:397 cps/templates/config_view_edit.html:133 +#: cps/admin.py:417 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:418 cps/admin.py:424 +#: cps/admin.py:438 cps/admin.py:444 msgid "Malformed request" msgstr "格式错误的请求" -#: cps/admin.py:436 cps/admin.py:1526 +#: cps/admin.py:456 cps/admin.py:1962 msgid "Guest Name can't be changed" msgstr "访客名称无法更改" -#: cps/admin.py:448 +#: cps/admin.py:468 msgid "Guest can't have this role" msgstr "游客无法拥有此角色" -#: cps/admin.py:460 cps/admin.py:1484 +#: cps/admin.py:480 cps/admin.py:1920 msgid "No admin user remaining, can't remove admin role" msgstr "理员账户不存在,无法删除管理员角色" -#: cps/admin.py:464 cps/admin.py:478 +#: cps/admin.py:484 cps/admin.py:498 msgid "Value has to be true or false" msgstr "值必须是 true 或 false" -#: cps/admin.py:466 +#: cps/admin.py:486 msgid "Invalid role" msgstr "无效角色" -#: cps/admin.py:470 +#: cps/admin.py:490 msgid "Guest can't have this view" msgstr "游客无法拥有此视图" -#: cps/admin.py:480 +#: cps/admin.py:500 msgid "Invalid view" msgstr "无效视图" -#: cps/admin.py:483 +#: cps/admin.py:503 msgid "Guest's Locale is determined automatically and can't be set" msgstr "游客的本地化是自动侦测而无法设置的" -#: cps/admin.py:487 +#: cps/admin.py:507 msgid "No Valid Locale Given" msgstr "无可用本地化" -#: cps/admin.py:498 +#: cps/admin.py:518 msgid "No Valid Book Language Given" msgstr "无有效书籍语言" -#: cps/admin.py:500 cps/editbooks.py:1267 +#: cps/admin.py:520 cps/editbooks.py:438 msgid "Parameter not found" msgstr "参数未找到" -#: cps/admin.py:553 +#: cps/admin.py:557 msgid "Invalid Read Column" msgstr "无效的阅读列" -#: cps/admin.py:559 +#: cps/admin.py:563 msgid "Invalid Restricted Column" msgstr "无效的限制列" -#: cps/admin.py:579 cps/admin.py:1355 +#: cps/admin.py:583 cps/admin.py:1791 msgid "Calibre-Web configuration updated" msgstr "Calibre-Web配置已更新" -#: cps/admin.py:591 +#: cps/admin.py:595 msgid "Do you really want to delete the Kobo Token?" msgstr "您确定删除Kobo Token吗?" -#: cps/admin.py:593 +#: cps/admin.py:597 msgid "Do you really want to delete this domain?" msgstr "您确定要删除此域吗?" -#: cps/admin.py:595 +#: cps/admin.py:599 msgid "Do you really want to delete this user?" msgstr "您确定要删除此用户吗?" -#: cps/admin.py:597 +#: cps/admin.py:601 msgid "Are you sure you want to delete this shelf?" msgstr "您确定要删除此书架吗?" -#: cps/admin.py:599 +#: cps/admin.py:603 msgid "Are you sure you want to change locales of selected user(s)?" msgstr "您确定要修改选定用户的本地化设置吗?" -#: cps/admin.py:601 +#: cps/admin.py:605 msgid "Are you sure you want to change visible book languages for selected user(s)?" msgstr "您确定要修改选定用户的可见书籍语言吗?" -#: cps/admin.py:603 +#: cps/admin.py:607 msgid "Are you sure you want to change the selected role for the selected user(s)?" msgstr "您确定要修改选定用户的选定角色吗?" -#: cps/admin.py:605 +#: cps/admin.py:609 msgid "Are you sure you want to change the selected restrictions for the selected user(s)?" msgstr "您确定要修改选定用户的选定限制吗?" -#: cps/admin.py:607 +#: cps/admin.py:611 msgid "Are you sure you want to change the selected visibility restrictions for the selected user(s)?" msgstr "您确定要修改选定用户的选定可视化限制吗?" -#: cps/admin.py:610 +#: cps/admin.py:614 msgid "Are you sure you want to change shelf sync behavior for the selected user(s)?" msgstr "您确定要更改所选用户的书架同步行为吗?" -#: cps/admin.py:612 +#: cps/admin.py:616 msgid "Are you sure you want to change Calibre library location?" msgstr "您确定要更改 Calibre 库位置吗?" -#: cps/admin.py:614 +#: cps/admin.py:618 +msgid "Calibre-Web will search for updated Covers and update Cover Thumbnails, this may take a while?" +msgstr "" + +#: cps/admin.py:620 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:764 -msgid "Tag not found" -msgstr "标签未找到" - -#: cps/admin.py:776 -msgid "Invalid Action" -msgstr "无效的动作" - -#: cps/admin.py:893 cps/admin.py:899 cps/admin.py:909 cps/admin.py:919 +#: cps/admin.py:862 cps/admin.py:868 cps/admin.py:878 cps/admin.py:888 #: cps/templates/modal_dialogs.html:29 cps/templates/user_table.html:41 #: cps/templates/user_table.html:58 msgid "Deny" msgstr "拒绝" -#: cps/admin.py:895 cps/admin.py:901 cps/admin.py:911 cps/admin.py:921 +#: cps/admin.py:864 cps/admin.py:870 cps/admin.py:880 cps/admin.py:890 #: cps/templates/modal_dialogs.html:28 cps/templates/user_table.html:44 #: cps/templates/user_table.html:61 msgid "Allow" msgstr "允许" -#: cps/admin.py:936 +#: cps/admin.py:905 msgid "{} sync entries deleted" msgstr "{} 同步项目被删除" -#: cps/admin.py:1059 +#: cps/admin.py:953 +msgid "Tag not found" +msgstr "标签未找到" + +#: cps/admin.py:965 +msgid "Invalid Action" +msgstr "无效的动作" + +#: cps/admin.py:1080 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "client_secrets.json 未为 Web 应用程序配置" -#: cps/admin.py:1104 +#: cps/admin.py:1125 msgid "Logfile Location is not Valid, Please Enter Correct Path" msgstr "日志文件路径无效,请输入正确的路径" -#: cps/admin.py:1110 +#: cps/admin.py:1131 msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgstr "访问日志路径无效,请输入正确的路径" -#: cps/admin.py:1140 +#: cps/admin.py:1161 msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgstr "请输入LDAP主机、端口、DN和用户对象标识符" -#: cps/admin.py:1146 +#: cps/admin.py:1167 msgid "Please Enter a LDAP Service Account and Password" msgstr "请输入一个LDAP服务账号和密码 " -#: cps/admin.py:1149 +#: cps/admin.py:1170 msgid "Please Enter a LDAP Service Account" msgstr "请输入一个LDAP服务账号" -#: cps/admin.py:1154 +#: cps/admin.py:1175 #, python-format msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgstr "LDAP组对象过滤器需要一个具有“%s”格式标识符" -#: cps/admin.py:1156 +#: cps/admin.py:1177 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "LDAP组对象过滤器的括号不匹配" -#: cps/admin.py:1160 +#: cps/admin.py:1181 #, python-format msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgstr "LDAP用户对象过滤器需要一个具有“%s”格式标识符" -#: cps/admin.py:1162 +#: cps/admin.py:1183 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "LDAP用户对象过滤器的括号不匹配" -#: cps/admin.py:1169 +#: cps/admin.py:1190 #, python-format msgid "LDAP Member User Filter needs to Have One \"%s\" Format Identifier" msgstr "LDAP成员用户过滤器需要有一个“%s”格式标识符" -#: cps/admin.py:1171 +#: cps/admin.py:1192 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "LDAP成员用户过滤器中有不匹配的括号" -#: cps/admin.py:1178 +#: cps/admin.py:1199 msgid "LDAP CACertificate, Certificate or Key Location is not Valid, Please Enter Correct Path" msgstr "LDAP CA证书、证书或密钥位置无效,请输入正确的路径" -#: cps/admin.py:1223 cps/admin.py:1339 cps/admin.py:1437 cps/admin.py:1554 -#: cps/admin.py:1623 cps/editbooks.py:678 cps/editbooks.py:882 -#: cps/editbooks.py:1130 cps/shelf.py:100 cps/shelf.py:160 cps/shelf.py:203 -#: cps/shelf.py:278 cps/shelf.py:343 cps/shelf.py:380 cps/shelf.py:456 -#: cps/web.py:1742 +#: cps/admin.py:1230 cps/admin.py:1852 +msgid "Add new user" +msgstr "添加新用户" + +#: cps/admin.py:1239 cps/templates/admin.html:100 +msgid "Edit E-mail Server Settings" +msgstr "编辑邮件服务器设置" + +#: cps/admin.py:1258 +msgid "Gmail Account Verification Successful" +msgstr "G-Mail账号校验成功" + +#: cps/admin.py:1277 cps/admin.py:1658 cps/admin.py:1775 cps/admin.py:1873 +#: cps/admin.py:1990 cps/editbooks.py:227 cps/editbooks.py:301 +#: cps/editbooks.py:1196 cps/shelf.py:82 cps/shelf.py:142 cps/shelf.py:185 +#: cps/shelf.py:235 cps/shelf.py:272 cps/shelf.py:343 cps/shelf.py:457 +#: cps/tasks/convert.py:136 cps/web.py:1413 #, python-format msgid "Database error: %(error)s." msgstr "数据库错误:%(error)s。" -#: cps/admin.py:1235 -msgid "DB Location is not Valid, Please Enter Correct Path" -msgstr "数据库路径无效,请输入正确的路径" - -#: cps/admin.py:1253 -msgid "DB is not Writeable" -msgstr "数据库不可写入" - -#: cps/admin.py:1266 -msgid "Keyfile Location is not Valid, Please Enter Correct Path" -msgstr "密钥文件路径无效,请输入正确的路径" - -#: cps/admin.py:1270 -msgid "Certfile Location is not Valid, Please Enter Correct Path" -msgstr "证书文件路径无效,请输入正确的路径" - -#: cps/admin.py:1378 -msgid "Database Settings updated" -msgstr "数据库设置已更新" - -#: cps/admin.py:1386 -msgid "Database Configuration" -msgstr "数据库配置" - -#: cps/admin.py:1402 cps/web.py:1557 -msgid "Please fill out all fields!" -msgstr "请填写所有字段!" - -#: cps/admin.py:1410 -msgid "E-mail is not from valid domain" -msgstr "邮箱不在有效域中" - -#: cps/admin.py:1416 cps/admin.py:1576 -msgid "Add new user" -msgstr "添加新用户" - -#: cps/admin.py:1427 -#, python-format -msgid "User '%(user)s' created" -msgstr "用户“%(user)s”已创建" - -#: cps/admin.py:1433 -msgid "Found an existing account for this e-mail address or name." -msgstr "使用此邮箱或用户名的账号已经存在。" - -#: cps/admin.py:1463 -#, python-format -msgid "User '%(nick)s' deleted" -msgstr "用户“%(nick)s”已删除" - -#: cps/admin.py:1465 cps/admin.py:1466 -msgid "Can't delete Guest User" -msgstr "无法删除游客用户" - -#: cps/admin.py:1469 -msgid "No admin user remaining, can't delete user" -msgstr "管理员账户不存在,无法删除用户" - -#: cps/admin.py:1542 cps/admin.py:1667 -#, python-format -msgid "Edit User %(nick)s" -msgstr "编辑用户 %(nick)s" - -#: cps/admin.py:1546 -#, python-format -msgid "User '%(nick)s' updated" -msgstr "用户“%(nick)s”已更新" - -#: cps/admin.py:1550 cps/admin.py:1682 cps/web.py:1582 cps/web.py:1642 -msgid "An unknown error occurred. Please try again later." -msgstr "发生一个未知错误,请稍后再试。" - -#: cps/admin.py:1585 cps/templates/admin.html:100 -msgid "Edit E-mail Server Settings" -msgstr "编辑邮件服务器设置" - -#: cps/admin.py:1604 -msgid "Gmail Account Verification Successful" -msgstr "G-Mail账号校验成功" - -#: cps/admin.py:1630 +#: cps/admin.py:1284 #, python-format msgid "Test e-mail queued for sending to %(email)s, please check Tasks for result" msgstr "发送给%(email)s的测试邮件已进入队列。请检查任务结果" -#: cps/admin.py:1633 +#: cps/admin.py:1287 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "发送测试邮件时出错:%(res)s" -#: cps/admin.py:1635 +#: cps/admin.py:1289 msgid "Please configure your e-mail address first..." msgstr "请先配置您的邮箱地址..." -#: cps/admin.py:1637 +#: cps/admin.py:1291 msgid "E-mail server settings updated" msgstr "邮件服务器设置已更新" -#: cps/admin.py:1679 +#: cps/admin.py:1314 cps/templates/admin.html:191 +msgid "Edit Scheduled Tasks Settings" +msgstr "" + +#: cps/admin.py:1326 +msgid "Invalid start time for task specified" +msgstr "" + +#: cps/admin.py:1331 +msgid "Invalid duration for task specified" +msgstr "" + +#: cps/admin.py:1340 +msgid "Scheduled tasks settings updated" +msgstr "" + +#: cps/admin.py:1350 cps/admin.py:1399 cps/admin.py:1986 cps/web.py:1254 +#: cps/web.py:1315 +msgid "An unknown error occurred. Please try again later." +msgstr "发生一个未知错误,请稍后再试。" + +#: cps/admin.py:1354 +msgid "Settings DB is not Writeable" +msgstr "" + +#: cps/admin.py:1384 cps/admin.py:1978 +#, python-format +msgid "Edit User %(nick)s" +msgstr "编辑用户 %(nick)s" + +#: cps/admin.py:1396 #, python-format msgid "Password for user %(user)s reset" msgstr "用户 %(user)s 的密码已重置" -#: cps/admin.py:1685 cps/web.py:1522 +#: cps/admin.py:1402 cps/web.py:1194 msgid "Please configure the SMTP mail settings first..." msgstr "请先配置SMTP邮箱设置..." -#: cps/admin.py:1696 +#: cps/admin.py:1413 msgid "Logfile viewer" msgstr "日志文件查看器" -#: cps/admin.py:1762 +#: cps/admin.py:1479 msgid "Requesting update package" msgstr "正在请求更新包" -#: cps/admin.py:1763 +#: cps/admin.py:1480 msgid "Downloading update package" msgstr "正在下载更新包" -#: cps/admin.py:1764 +#: cps/admin.py:1481 msgid "Unzipping update package" msgstr "正在解压更新包" -#: cps/admin.py:1765 +#: cps/admin.py:1482 msgid "Replacing files" msgstr "正在替换文件" -#: cps/admin.py:1766 +#: cps/admin.py:1483 msgid "Database connections are closed" msgstr "数据库连接已关闭" -#: cps/admin.py:1767 +#: cps/admin.py:1484 msgid "Stopping server" msgstr "正在停止服务器" -#: cps/admin.py:1768 +#: cps/admin.py:1485 msgid "Update finished, please press okay and reload page" msgstr "更新完成,请点击确定并刷新页面" -#: cps/admin.py:1769 cps/admin.py:1770 cps/admin.py:1771 cps/admin.py:1772 -#: cps/admin.py:1773 cps/admin.py:1774 +#: cps/admin.py:1486 cps/admin.py:1487 cps/admin.py:1488 cps/admin.py:1489 +#: cps/admin.py:1490 cps/admin.py:1491 msgid "Update failed:" msgstr "更新失败:" -#: cps/admin.py:1769 cps/updater.py:384 cps/updater.py:619 cps/updater.py:621 +#: cps/admin.py:1486 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 msgid "HTTP Error" msgstr "HTTP错误" -#: cps/admin.py:1770 cps/updater.py:386 cps/updater.py:623 +#: cps/admin.py:1487 cps/updater.py:391 cps/updater.py:628 msgid "Connection error" msgstr "连接错误" -#: cps/admin.py:1771 cps/updater.py:388 cps/updater.py:625 +#: cps/admin.py:1488 cps/updater.py:393 cps/updater.py:630 msgid "Timeout while establishing connection" msgstr "建立连接超时" -#: cps/admin.py:1772 cps/updater.py:390 cps/updater.py:627 +#: cps/admin.py:1489 cps/updater.py:395 cps/updater.py:632 msgid "General error" msgstr "一般错误" -#: cps/admin.py:1773 +#: cps/admin.py:1490 msgid "Update file could not be saved in temp dir" msgstr "更新文件无法保存在临时目录中" -#: cps/admin.py:1774 +#: cps/admin.py:1491 msgid "Files could not be replaced during update" msgstr "更新期间无法替换文件" -#: cps/admin.py:1798 +#: cps/admin.py:1515 msgid "Failed to extract at least One LDAP User" msgstr "未能提取至少一个LDAP用户" -#: cps/admin.py:1843 +#: cps/admin.py:1560 msgid "Failed to Create at Least One LDAP User" msgstr "未能创建至少一个LDAP用户" -#: cps/admin.py:1856 +#: cps/admin.py:1573 #, python-format msgid "Error: %(ldaperror)s" msgstr "错误:%(ldaperror)s" -#: cps/admin.py:1860 +#: cps/admin.py:1577 msgid "Error: No user returned in response of LDAP server" msgstr "错误:在LDAP服务器的响应中没有返回用户" -#: cps/admin.py:1893 +#: cps/admin.py:1610 msgid "At Least One LDAP User Not Found in Database" msgstr "数据库中没有找到至少一个LDAP用户" -#: cps/admin.py:1895 +#: cps/admin.py:1612 msgid "{} User Successfully Imported" msgstr "{} 用户被成功导入" -#: cps/converter.py:30 +#: cps/admin.py:1670 +msgid "DB Location is not Valid, Please Enter Correct Path" +msgstr "数据库路径无效,请输入正确的路径" + +#: cps/admin.py:1689 +msgid "DB is not Writeable" +msgstr "数据库不可写入" + +#: cps/admin.py:1702 +msgid "Keyfile Location is not Valid, Please Enter Correct Path" +msgstr "密钥文件路径无效,请输入正确的路径" + +#: cps/admin.py:1706 +msgid "Certfile Location is not Valid, Please Enter Correct Path" +msgstr "证书文件路径无效,请输入正确的路径" + +#: cps/admin.py:1814 +msgid "Database Settings updated" +msgstr "数据库设置已更新" + +#: cps/admin.py:1822 +msgid "Database Configuration" +msgstr "数据库配置" + +#: cps/admin.py:1838 cps/web.py:1229 +msgid "Please fill out all fields!" +msgstr "请填写所有字段!" + +#: cps/admin.py:1846 +msgid "E-mail is not from valid domain" +msgstr "邮箱不在有效域中" + +#: cps/admin.py:1863 +#, python-format +msgid "User '%(user)s' created" +msgstr "用户“%(user)s”已创建" + +#: cps/admin.py:1869 +msgid "Found an existing account for this e-mail address or name." +msgstr "使用此邮箱或用户名的账号已经存在。" + +#: cps/admin.py:1899 +#, python-format +msgid "User '%(nick)s' deleted" +msgstr "用户“%(nick)s”已删除" + +#: cps/admin.py:1901 cps/admin.py:1902 +msgid "Can't delete Guest User" +msgstr "无法删除游客用户" + +#: cps/admin.py:1905 +msgid "No admin user remaining, can't delete user" +msgstr "管理员账户不存在,无法删除用户" + +#: cps/admin.py:1982 +#, python-format +msgid "User '%(nick)s' updated" +msgstr "用户“%(nick)s”已更新" + +#: cps/converter.py:31 msgid "not installed" msgstr "未安装" -#: cps/converter.py:31 +#: cps/converter.py:32 msgid "Execution permissions missing" msgstr "缺少执行权限" -#: cps/db.py:674 cps/web.py:710 cps/web.py:1222 +#: cps/db.py:681 cps/search.py:134 cps/web.py:720 #, python-format msgid "Custom Column No.%(column)d is not existing in calibre database" msgstr "自定义列号:%(column)d在Calibre数据库中不存在" -#: cps/db.py:917 cps/templates/config_edit.html:204 +#: cps/db.py:924 cps/templates/config_edit.html:204 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 -#: cps/web.py:551 cps/web.py:585 cps/web.py:646 cps/web.py:671 cps/web.py:1003 -#: cps/web.py:1032 cps/web.py:1066 cps/web.py:1093 cps/web.py:1132 +#: cps/web.py:549 cps/web.py:583 cps/web.py:656 cps/web.py:681 cps/web.py:962 +#: cps/web.py:992 cps/web.py:1027 cps/web.py:1055 cps/web.py:1094 msgid "None" msgstr "无" -#: cps/editbooks.py:295 cps/editbooks.py:297 -msgid "Book Format Successfully Deleted" -msgstr "书籍格式已成功删除" - -#: cps/editbooks.py:304 cps/editbooks.py:306 -msgid "Book Successfully Deleted" -msgstr "书籍已成功删除" - -#: cps/editbooks.py:358 -msgid "You are missing permissions to delete books" -msgstr "您没有删除书籍的权限" - -#: cps/editbooks.py:373 cps/editbooks.py:765 cps/web.py:518 cps/web.py:1783 -#: cps/web.py:1825 cps/web.py:1870 +#: cps/editbooks.py:109 cps/editbooks.py:890 cps/web.py:516 cps/web.py:1454 +#: cps/web.py:1496 cps/web.py:1541 msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible" msgstr "糟糕!选择书名无法打开。文件不存在或者文件不可访问" -#: cps/editbooks.py:408 -msgid "edit metadata" -msgstr "编辑元数据" - -#: cps/editbooks.py:457 -#, python-format -msgid "%(seriesindex)s is not a valid number, skipping" -msgstr "%(seriesindex)s 不是一个有效的数值,忽略" - -#: cps/editbooks.py:493 cps/editbooks.py:1001 -#, python-format -msgid "'%(langname)s' is not a valid language" -msgstr "'%(langname)s' 不是一种有效语言" - -#: cps/editbooks.py:634 -msgid "User has no rights to upload additional file formats" -msgstr "用户没有权限上传其他文件格式" - -#: cps/editbooks.py:639 cps/editbooks.py:1029 -#, python-format -msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" -msgstr "不能上传文件扩展名为“%(ext)s”的文件到此服务器" - -#: cps/editbooks.py:643 cps/editbooks.py:1033 -msgid "File to be uploaded must have an extension" -msgstr "要上传的文件必须具有扩展名" - -#: cps/editbooks.py:655 -#, python-format -msgid "Failed to create path %(path)s (Permission denied)." -msgstr "创建路径 %(path)s 失败(权限拒绝)。" - -#: cps/editbooks.py:660 -#, python-format -msgid "Failed to store file %(file)s." -msgstr "保存文件 %(file)s 失败。" - -#: cps/editbooks.py:683 -#, python-format -msgid "File format %(ext)s added to %(book)s" -msgstr "已添加 %(ext)s 格式到 %(book)s" - -#: cps/editbooks.py:697 cps/editbooks.py:809 +#: cps/editbooks.py:153 cps/editbooks.py:1216 msgid "User has no rights to upload cover" msgstr "用户没有权限上传封面" -#: cps/editbooks.py:828 +#: cps/editbooks.py:173 cps/editbooks.py:711 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "标识符不区分大小写,覆盖旧标识符" -#: cps/editbooks.py:869 +#: cps/editbooks.py:214 msgid "Metadata successfully updated" msgstr "已成功更新元数据" -#: cps/editbooks.py:887 +#: cps/editbooks.py:232 msgid "Error editing book: {}" msgstr "编辑书籍时出错: {}" -#: cps/editbooks.py:951 -msgid "Uploaded book probably exists in the library, consider to change before upload new: " -msgstr "上传的书籍可能已经存在,建议修改后重新上传: " - -#: cps/editbooks.py:1041 -#, python-format -msgid "File %(filename)s could not saved to temp dir" -msgstr "文件 %(filename)s 无法保存到临时目录" - -#: cps/editbooks.py:1061 -#, python-format -msgid "Failed to Move Cover File %(file)s: %(error)s" -msgstr "移动封面文件失败 %(file)s:%(error)s" - -#: cps/editbooks.py:1117 +#: cps/editbooks.py:287 #, python-format msgid "File %(file)s uploaded" msgstr "文件 %(file)s 已上传" -#: cps/editbooks.py:1143 +#: cps/editbooks.py:314 msgid "Source or destination format for conversion missing" msgstr "转换的源或目的格式缺失" -#: cps/editbooks.py:1151 +#: cps/editbooks.py:322 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "书籍已经被成功加入到 %(book_format)s 格式转换队列" -#: cps/editbooks.py:1155 +#: cps/editbooks.py:326 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "转换此书籍时出现错误: %(res)s" +#: cps/editbooks.py:630 +msgid "Uploaded book probably exists in the library, consider to change before upload new: " +msgstr "上传的书籍可能已经存在,建议修改后重新上传: " + +#: cps/editbooks.py:685 cps/editbooks.py:1010 +#, python-format +msgid "'%(langname)s' is not a valid language" +msgstr "'%(langname)s' 不是一种有效语言" + +#: cps/editbooks.py:723 cps/editbooks.py:1157 +#, python-format +msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" +msgstr "不能上传文件扩展名为“%(ext)s”的文件到此服务器" + +#: cps/editbooks.py:727 cps/editbooks.py:1161 +msgid "File to be uploaded must have an extension" +msgstr "要上传的文件必须具有扩展名" + +#: cps/editbooks.py:735 +#, python-format +msgid "File %(filename)s could not saved to temp dir" +msgstr "文件 %(filename)s 无法保存到临时目录" + +#: cps/editbooks.py:755 +#, python-format +msgid "Failed to Move Cover File %(file)s: %(error)s" +msgstr "移动封面文件失败 %(file)s:%(error)s" + +#: cps/editbooks.py:812 cps/editbooks.py:814 +msgid "Book Format Successfully Deleted" +msgstr "书籍格式已成功删除" + +#: cps/editbooks.py:821 cps/editbooks.py:823 +msgid "Book Successfully Deleted" +msgstr "书籍已成功删除" + +#: cps/editbooks.py:875 +msgid "You are missing permissions to delete books" +msgstr "您没有删除书籍的权限" + +#: cps/editbooks.py:925 +msgid "edit metadata" +msgstr "编辑元数据" + +#: cps/editbooks.py:974 +#, python-format +msgid "%(seriesindex)s is not a valid number, skipping" +msgstr "%(seriesindex)s 不是一个有效的数值,忽略" + +#: cps/editbooks.py:1152 +msgid "User has no rights to upload additional file formats" +msgstr "用户没有权限上传其他文件格式" + +#: cps/editbooks.py:1173 +#, python-format +msgid "Failed to create path %(path)s (Permission denied)." +msgstr "创建路径 %(path)s 失败(权限拒绝)。" + +#: cps/editbooks.py:1178 +#, python-format +msgid "Failed to store file %(file)s." +msgstr "保存文件 %(file)s 失败。" + +#: cps/editbooks.py:1201 +#, python-format +msgid "File format %(ext)s added to %(book)s" +msgstr "已添加 %(ext)s 格式到 %(book)s" + #: cps/gdrive.py:58 msgid "Google Drive setup not completed, try to deactivate and activate Google Drive again" msgstr "Google Drive 设置未完成,请尝试停用并再次激活Google云端硬盘" @@ -603,27 +628,27 @@ 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:81 +#: cps/helper.py:80 #, python-format msgid "%(format)s format not found for book id: %(book)d" msgstr "找不到id为 %(book)d 的书籍的 %(format)s 格式" -#: cps/helper.py:87 cps/tasks/convert.py:75 +#: cps/helper.py:86 cps/tasks/convert.py:75 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "Google Drive %(fn)s 上找不到 %(format)s" -#: cps/helper.py:92 +#: cps/helper.py:91 #, python-format msgid "%(format)s not found: %(fn)s" msgstr "找不到 %(format)s:%(fn)s" -#: cps/helper.py:97 cps/helper.py:221 cps/templates/detail.html:41 -#: cps/templates/detail.html:45 +#: cps/helper.py:96 cps/helper.py:221 cps/templates/detail.html:42 +#: cps/templates/detail.html:46 msgid "Send to Kindle" msgstr "发送到Kindle" -#: cps/helper.py:98 cps/helper.py:115 cps/helper.py:223 +#: cps/helper.py:97 cps/helper.py:115 cps/helper.py:223 msgid "This e-mail has been sent via Calibre-Web." msgstr "此邮件已经通过Calibre-Web发送。" @@ -663,130 +688,110 @@ msgstr "%(book)s发送到Kindle" msgid "The requested file could not be read. Maybe wrong permissions?" msgstr "无法读取请求的文件。可能有错误的权限设置?" -#: cps/helper.py:353 +#: cps/helper.py:341 msgid "Read status could not set: {}" msgstr "阅读状态无法设置: {}" -#: cps/helper.py:376 +#: cps/helper.py:364 #, python-format msgid "Deleting bookfolder for book %(id)s failed, path has subfolders: %(path)s" msgstr "删除书的文件夹%(id)s失败,路径有子文件夹:%(path)s" -#: cps/helper.py:382 +#: cps/helper.py:370 #, python-format msgid "Deleting book %(id)s failed: %(message)s" msgstr "删除书籍 %(id)s失败:%(message)s" -#: cps/helper.py:393 +#: cps/helper.py:381 #, 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:458 +#: cps/helper.py:446 #, 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:529 cps/helper.py:538 +#: cps/helper.py:518 cps/helper.py:527 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "Google Drive上找不到文件 %(file)s" -#: cps/helper.py:572 +#: cps/helper.py:561 #, 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:592 +#: cps/helper.py:581 msgid "Error in rename file in path: {}" msgstr "重命名此路径: {}文件时出错" -#: cps/helper.py:610 +#: cps/helper.py:599 #, python-format msgid "Book path %(path)s not found on Google Drive" msgstr "Google Drive上找不到书籍路径 %(path)s" -#: cps/helper.py:651 cps/web.py:1737 +#: cps/helper.py:640 cps/web.py:1408 msgid "Found an existing account for this e-mail address" msgstr "使用此邮箱的账号已经存在。" -#: cps/helper.py:659 +#: cps/helper.py:648 msgid "This username is already taken" msgstr "此用户名已被使用" -#: cps/helper.py:669 +#: cps/helper.py:658 msgid "Invalid e-mail address format" msgstr "无效的邮件地址格式" -#: cps/helper.py:754 -msgid "Python modul 'advocate' is not installed but is needed for cover downloads" -msgstr "下载封面必须的 Python 模块'advocate' 未安装" +#: cps/helper.py:808 +msgid "Python module 'advocate' is not installed but is needed for cover uploads" +msgstr "" -#: cps/helper.py:767 +#: cps/helper.py:818 msgid "Error Downloading Cover" msgstr "下载封面时出错" -#: cps/helper.py:770 +#: cps/helper.py:821 msgid "Cover Format Error" msgstr "封面格式出错" -#: cps/helper.py:773 +#: cps/helper.py:824 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "您没有访问本地主机或本地网络进行封面上传" -#: cps/helper.py:783 +#: cps/helper.py:834 msgid "Failed to create path for cover" msgstr "创建封面路径失败" -#: cps/helper.py:799 +#: cps/helper.py:850 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "封面文件不是有效的图片文件,或者无法存储" -#: cps/helper.py:810 +#: cps/helper.py:861 msgid "Only jpg/jpeg/png/webp/bmp files are supported as coverfile" msgstr "封面文件只支持jpg/jpeg/png/webp/bmp文件" -#: cps/helper.py:822 +#: cps/helper.py:873 msgid "Invalid cover file content" msgstr "封面文件内容无效" -#: cps/helper.py:826 +#: cps/helper.py:877 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "仅将jpg、jpeg文件作为封面文件" -#: cps/helper.py:878 +#: cps/helper.py:929 msgid "Unrar binary file not found" msgstr "找不到Unrar执行文件" -#: cps/helper.py:889 +#: cps/helper.py:940 msgid "Error excecuting UnRar" msgstr "执行UnRar时出错" -#: cps/helper.py:937 -msgid "Waiting" -msgstr "等待中" - -#: cps/helper.py:939 -msgid "Failed" -msgstr "失败" - -#: cps/helper.py:941 -msgid "Started" -msgstr "已开始" - -#: cps/helper.py:943 -msgid "Finished" -msgstr "已完成" - -#: cps/helper.py:945 -msgid "Unknown Status" -msgstr "未知状态" - -#: cps/kobo_auth.py:128 +#: cps/kobo_auth.py:89 msgid "Please access Calibre-Web from non localhost to get valid api_endpoint for kobo device" msgstr "请不要使用localhost访问Calibre-Web,以便Kobo设备能获取有效的api_endpoint" -#: cps/kobo_auth.py:154 +#: cps/kobo_auth.py:115 msgid "Kobo Setup" msgstr "Kobo 设置" @@ -795,7 +800,7 @@ msgstr "Kobo 设置" msgid "Register with %(provider)s" msgstr "使用 %(provider)s 注册" -#: cps/oauth_bb.py:138 cps/remotelogin.py:130 cps/web.py:1613 +#: cps/oauth_bb.py:138 cps/remotelogin.py:130 cps/web.py:1286 #, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "您现在已以“%(nickname)s”身份登录" @@ -856,12 +861,12 @@ msgstr "Google Oauth 错误,请重试。" msgid "Google Oauth error: {}" msgstr "Google Oauth 错误: {}" -#: cps/opds.py:298 +#: cps/opds.py:287 msgid "{} Stars" msgstr "{} 星" -#: cps/remotelogin.py:62 cps/templates/layout.html:84 -#: cps/templates/login.html:4 cps/templates/login.html:21 cps/web.py:1662 +#: cps/remotelogin.py:62 cps/templates/layout.html:85 +#: cps/templates/login.html:4 cps/templates/login.html:21 cps/web.py:1335 msgid "Login" msgstr "登录" @@ -877,453 +882,486 @@ msgstr "Token已过期" msgid "Success! Please return to your device" msgstr "成功!请返回您的设备" -#: cps/render_template.py:41 cps/web.py:407 +#: cps/render_template.py:40 cps/web.py:405 msgid "Books" msgstr "书籍" -#: cps/render_template.py:43 +#: cps/render_template.py:42 msgid "Show recent books" msgstr "显示最近书籍" -#: cps/render_template.py:44 cps/templates/index.xml:25 +#: cps/render_template.py:43 cps/templates/index.xml:25 msgid "Hot Books" msgstr "热门书籍" -#: cps/render_template.py:46 +#: cps/render_template.py:45 msgid "Show Hot Books" msgstr "显示热门书籍" -#: cps/render_template.py:48 cps/render_template.py:53 +#: cps/render_template.py:47 cps/render_template.py:52 msgid "Downloaded Books" msgstr "下载历史" -#: cps/render_template.py:50 cps/render_template.py:55 +#: cps/render_template.py:49 cps/render_template.py:54 #: cps/templates/user_table.html:167 msgid "Show Downloaded Books" msgstr "显示下载过的书籍" -#: cps/render_template.py:58 cps/templates/index.xml:32 cps/web.py:422 +#: cps/render_template.py:57 cps/templates/index.xml:32 cps/web.py:420 msgid "Top Rated Books" msgstr "最高评分书籍" -#: cps/render_template.py:60 cps/templates/user_table.html:161 +#: cps/render_template.py:59 cps/templates/user_table.html:161 msgid "Show Top Rated Books" msgstr "显示最高评分书籍" -#: cps/render_template.py:61 cps/templates/index.xml:54 -#: cps/templates/index.xml:58 cps/web.py:729 +#: cps/render_template.py:60 cps/templates/index.xml:54 +#: cps/templates/index.xml:58 cps/web.py:739 msgid "Read Books" msgstr "已读书籍" -#: cps/render_template.py:63 +#: cps/render_template.py:62 msgid "Show read and unread" msgstr "显示阅读状态" -#: cps/render_template.py:65 cps/templates/index.xml:61 -#: cps/templates/index.xml:65 cps/web.py:732 +#: cps/render_template.py:64 cps/templates/index.xml:61 +#: cps/templates/index.xml:65 cps/web.py:742 msgid "Unread Books" msgstr "未读书籍" -#: cps/render_template.py:67 +#: cps/render_template.py:66 msgid "Show unread" msgstr "显示未读" -#: cps/render_template.py:68 +#: cps/render_template.py:67 msgid "Discover" msgstr "发现" -#: cps/render_template.py:70 cps/templates/index.xml:50 +#: cps/render_template.py:69 cps/templates/index.xml:50 #: cps/templates/user_table.html:162 msgid "Show Random Books" msgstr "显示随机书籍" -#: cps/render_template.py:71 cps/templates/book_table.html:67 -#: cps/templates/index.xml:83 cps/web.py:1135 +#: cps/render_template.py:70 cps/templates/book_table.html:67 +#: cps/templates/index.xml:83 cps/web.py:1098 msgid "Categories" msgstr "分类" -#: cps/render_template.py:73 cps/templates/user_table.html:158 +#: cps/render_template.py:72 cps/templates/user_table.html:158 msgid "Show category selection" msgstr "显示分类选择" -#: cps/render_template.py:74 cps/templates/book_edit.html:90 +#: cps/render_template.py:73 cps/templates/book_edit.html:91 #: cps/templates/book_table.html:68 cps/templates/index.xml:90 -#: cps/templates/search_form.html:69 cps/web.py:1034 cps/web.py:1041 +#: cps/templates/search_form.html:69 cps/web.py:995 cps/web.py:1002 msgid "Series" msgstr "丛书" -#: cps/render_template.py:76 cps/templates/user_table.html:157 +#: cps/render_template.py:75 cps/templates/user_table.html:157 msgid "Show series selection" msgstr "显示丛书选择" -#: cps/render_template.py:77 cps/templates/book_table.html:66 +#: cps/render_template.py:76 cps/templates/book_table.html:66 #: cps/templates/index.xml:69 msgid "Authors" msgstr "作者" -#: cps/render_template.py:79 cps/templates/user_table.html:160 +#: cps/render_template.py:78 cps/templates/user_table.html:160 msgid "Show author selection" msgstr "显示作者选择" -#: cps/render_template.py:81 cps/templates/book_table.html:72 -#: cps/templates/index.xml:76 cps/web.py:1006 +#: cps/render_template.py:80 cps/templates/book_table.html:72 +#: cps/templates/index.xml:76 cps/web.py:966 msgid "Publishers" msgstr "出版社" -#: cps/render_template.py:83 cps/templates/user_table.html:163 +#: cps/render_template.py:82 cps/templates/user_table.html:163 msgid "Show publisher selection" msgstr "显示出版社选择" -#: cps/render_template.py:84 cps/templates/book_table.html:70 +#: cps/render_template.py:83 cps/templates/book_table.html:70 #: cps/templates/index.xml:97 cps/templates/search_form.html:107 -#: cps/web.py:1108 +#: cps/web.py:1070 msgid "Languages" msgstr "语言" -#: cps/render_template.py:87 cps/templates/user_table.html:155 +#: cps/render_template.py:86 cps/templates/user_table.html:155 msgid "Show language selection" msgstr "显示语言选择" -#: cps/render_template.py:88 cps/templates/index.xml:104 +#: cps/render_template.py:87 cps/templates/index.xml:104 msgid "Ratings" msgstr "评分" -#: cps/render_template.py:90 cps/templates/user_table.html:164 +#: cps/render_template.py:89 cps/templates/user_table.html:164 msgid "Show ratings selection" msgstr "显示评分选择" -#: cps/render_template.py:91 cps/templates/index.xml:112 +#: cps/render_template.py:90 cps/templates/index.xml:112 msgid "File formats" msgstr "文件格式" -#: cps/render_template.py:93 cps/templates/user_table.html:165 +#: cps/render_template.py:92 cps/templates/user_table.html:165 msgid "Show file formats selection" msgstr "显示文件格式选择" -#: cps/render_template.py:95 cps/web.py:755 +#: cps/render_template.py:94 cps/web.py:765 msgid "Archived Books" msgstr "归档书籍" -#: cps/render_template.py:97 cps/templates/user_table.html:166 +#: cps/render_template.py:96 cps/templates/user_table.html:166 msgid "Show archived books" msgstr "显示归档书籍" -#: cps/render_template.py:100 cps/web.py:837 +#: cps/render_template.py:99 cps/web.py:796 msgid "Books List" msgstr "书籍列表" -#: cps/render_template.py:102 cps/templates/user_table.html:168 +#: cps/render_template.py:101 cps/templates/user_table.html:168 msgid "Show Books List" msgstr "显示书籍列表" -#: cps/shelf.py:67 cps/shelf.py:121 -msgid "Invalid shelf specified" -msgstr "指定的书架无效" - -#: cps/shelf.py:73 -msgid "Sorry you are not allowed to add a book to that shelf" -msgstr "对不起,您没有添加书籍到这个书架的权限" - -#: cps/shelf.py:82 -#, python-format -msgid "Book is already part of the shelf: %(shelfname)s" -msgstr "此书籍已经是书架 %(shelfname)s 的一部分" - -#: cps/shelf.py:107 -#, python-format -msgid "Book has been added to shelf: %(sname)s" -msgstr "此书籍已被添加到书架:%(sname)s" - -#: cps/shelf.py:126 -msgid "You are not allowed to add a book to the shelf" -msgstr "您没有向书架添加书籍的权限" - -#: cps/shelf.py:144 -#, python-format -msgid "Books are already part of the shelf: %(name)s" -msgstr "书籍已经在书架 %(name)s 中了" - -#: cps/shelf.py:156 -#, python-format -msgid "Books have been added to shelf: %(sname)s" -msgstr "书籍已经被添加到书架 %(sname)s 中" - -#: cps/shelf.py:163 -#, python-format -msgid "Could not add books to shelf: %(sname)s" -msgstr "无法添加书籍到书架:%(sname)s" - -#: cps/shelf.py:209 -#, python-format -msgid "Book has been removed from shelf: %(sname)s" -msgstr "此书已从书架 %(sname)s 中删除" - -#: cps/shelf.py:218 -msgid "Sorry you are not allowed to remove a book from this shelf" -msgstr "抱歉,您没有从这个书架删除书籍的权限" - -#: cps/shelf.py:228 cps/templates/layout.html:140 -msgid "Create a Shelf" -msgstr "创建书架" - -#: cps/shelf.py:236 -msgid "Sorry you are not allowed to edit this shelf" -msgstr "对不起,您没有编辑这个书架的权限" - -#: cps/shelf.py:238 -msgid "Edit a shelf" -msgstr "编辑书架" - -#: cps/shelf.py:248 -msgid "Sorry you are not allowed to create a public shelf" -msgstr "抱歉,您没有创建公开书架的权限" - -#: cps/shelf.py:265 -#, python-format -msgid "Shelf %(title)s created" -msgstr "书架 %(title)s 已创建" - -#: cps/shelf.py:268 -#, python-format -msgid "Shelf %(title)s changed" -msgstr "书架 %(title)s 已修改" - -#: cps/shelf.py:282 -msgid "There was an error" -msgstr "发生错误" - -#: cps/shelf.py:304 -#, python-format -msgid "A public shelf with the name '%(title)s' already exists." -msgstr "公共书架:%(title)s已经存在已经存在。" - -#: cps/shelf.py:315 -#, python-format -msgid "A private shelf with the name '%(title)s' already exists." -msgstr "私有书架:%(title)s已经存在已经存在。" - -#: cps/shelf.py:337 -msgid "Error deleting Shelf" -msgstr "删除书架时出错" - -#: cps/shelf.py:339 -msgid "Shelf successfully deleted" -msgstr "书架已成功删除" - -#: cps/shelf.py:389 -#, python-format -msgid "Change order of Shelf: '%(name)s'" -msgstr "修改书架 %(name)s 顺序" - -#: cps/shelf.py:461 -#, python-format -msgid "Shelf: '%(name)s'" -msgstr "书架:%(name)s" - -#: cps/shelf.py:465 -msgid "Error opening shelf. Shelf does not exist or is not accessible" -msgstr "打开书架出错。书架不存在或不可访问" - -#: cps/updater.py:426 cps/updater.py:437 cps/updater.py:538 cps/updater.py:553 -msgid "Unexpected data while reading update information" -msgstr "读取更新信息时出现意外数据" - -#: cps/updater.py:433 cps/updater.py:545 -msgid "No update available. You already have the latest version installed" -msgstr "无可用更新。您已经安装了最新版本" - -#: cps/updater.py:451 -msgid "A new update is available. Click on the button below to update to the latest version." -msgstr "有新的更新。单击下面的按钮以更新到最新版本。" - -#: cps/updater.py:469 -msgid "Could not fetch update information" -msgstr "无法获取更新信息" - -#: cps/updater.py:479 -msgid "Click on the button below to update to the latest stable version." -msgstr "点击下面按钮更新到最新稳定版本。" - -#: cps/updater.py:488 cps/updater.py:502 cps/updater.py:513 -#, python-format -msgid "A new update is available. Click on the button below to update to version: %(version)s" -msgstr "有新的更新。单击下面的按钮以更新到版本: %(version)s" - -#: cps/updater.py:531 -msgid "No release information available" -msgstr "无可用发布信息" - -#: cps/templates/index.html:5 cps/web.py:434 -msgid "Discover (Random Books)" -msgstr "发现(随机书籍)" - -#: cps/web.py:470 -msgid "Hot Books (Most Downloaded)" -msgstr "热门书籍(最多下载)" - -#: cps/web.py:501 -#, python-format -msgid "Downloaded books by %(user)s" -msgstr "%(user)s 下载过的书籍" - -#: cps/web.py:534 -#, python-format -msgid "Author: %(name)s" -msgstr "作者:%(name)s" - -#: cps/web.py:570 -#, python-format -msgid "Publisher: %(name)s" -msgstr "出版社:%(name)s" - -#: cps/web.py:598 -#, python-format -msgid "Series: %(serie)s" -msgstr "丛书:%(serie)s" - -#: cps/web.py:610 -#, python-format -msgid "Rating: %(rating)s stars" -msgstr "评分:%(rating)s 星" - -#: cps/web.py:626 -#, python-format -msgid "File format: %(format)s" -msgstr "文件格式:%(format)s" - -#: cps/web.py:663 -#, python-format -msgid "Category: %(name)s" -msgstr "分类:%(name)s" - -#: cps/web.py:690 -#, python-format -msgid "Language: %(name)s" -msgstr "语言:%(name)s" - -#: cps/templates/layout.html:56 cps/web.py:789 cps/web.py:1444 -msgid "Advanced Search" -msgstr "高级搜索" - -#: cps/templates/book_edit.html:235 cps/templates/feed.xml:33 -#: cps/templates/index.xml:11 cps/templates/layout.html:45 -#: cps/templates/layout.html:48 cps/templates/search_form.html:226 -#: cps/web.py:807 cps/web.py:1164 +#: cps/search.py:48 cps/search.py:414 cps/templates/book_edit.html:236 +#: cps/templates/feed.xml:33 cps/templates/index.xml:11 +#: cps/templates/layout.html:46 cps/templates/layout.html:49 +#: cps/templates/search_form.html:226 msgid "Search" msgstr "搜索" -#: cps/templates/admin.html:16 cps/web.py:979 -msgid "Downloads" -msgstr "下载次数" - -#: cps/web.py:1068 -msgid "Ratings list" -msgstr "评分列表" - -#: cps/web.py:1095 -msgid "File formats list" -msgstr "文件格式列表" - -#: cps/templates/layout.html:73 cps/templates/tasks.html:7 cps/web.py:1149 -msgid "Tasks" -msgstr "任务列表" - -#: cps/web.py:1286 +#: cps/search.py:194 msgid "Published after " msgstr "出版时间晚于 " -#: cps/web.py:1293 +#: cps/search.py:201 msgid "Published before " msgstr "出版时间早于 " -#: cps/web.py:1315 +#: cps/search.py:223 #, python-format msgid "Rating <= %(rating)s" msgstr "评分 <= %(rating)s" -#: cps/web.py:1317 +#: cps/search.py:225 #, python-format msgid "Rating >= %(rating)s" msgstr "评分 >= %(rating)s" -#: cps/web.py:1319 +#: cps/search.py:227 #, python-format msgid "Read Status = %(status)s" msgstr "阅读状态 = %(status)s" -#: cps/web.py:1425 +#: cps/search.py:345 msgid "Error on search for custom columns, please restart Calibre-Web" msgstr "搜索自定义列时出错,请重启 Calibre-Web" -#: cps/web.py:1527 +#: cps/search.py:364 cps/search.py:396 cps/templates/layout.html:57 +msgid "Advanced Search" +msgstr "高级搜索" + +#: cps/shelf.py:49 cps/shelf.py:103 +msgid "Invalid shelf specified" +msgstr "指定的书架无效" + +#: cps/shelf.py:55 +msgid "Sorry you are not allowed to add a book to that shelf" +msgstr "对不起,您没有添加书籍到这个书架的权限" + +#: cps/shelf.py:64 +#, python-format +msgid "Book is already part of the shelf: %(shelfname)s" +msgstr "此书籍已经是书架 %(shelfname)s 的一部分" + +#: cps/shelf.py:89 +#, python-format +msgid "Book has been added to shelf: %(sname)s" +msgstr "此书籍已被添加到书架:%(sname)s" + +#: cps/shelf.py:108 +msgid "You are not allowed to add a book to the shelf" +msgstr "您没有向书架添加书籍的权限" + +#: cps/shelf.py:126 +#, python-format +msgid "Books are already part of the shelf: %(name)s" +msgstr "书籍已经在书架 %(name)s 中了" + +#: cps/shelf.py:138 +#, python-format +msgid "Books have been added to shelf: %(sname)s" +msgstr "书籍已经被添加到书架 %(sname)s 中" + +#: cps/shelf.py:145 +#, python-format +msgid "Could not add books to shelf: %(sname)s" +msgstr "无法添加书籍到书架:%(sname)s" + +#: cps/shelf.py:191 +#, python-format +msgid "Book has been removed from shelf: %(sname)s" +msgstr "此书已从书架 %(sname)s 中删除" + +#: cps/shelf.py:200 +msgid "Sorry you are not allowed to remove a book from this shelf" +msgstr "抱歉,您没有从这个书架删除书籍的权限" + +#: cps/shelf.py:210 cps/templates/layout.html:141 +msgid "Create a Shelf" +msgstr "创建书架" + +#: cps/shelf.py:218 +msgid "Sorry you are not allowed to edit this shelf" +msgstr "对不起,您没有编辑这个书架的权限" + +#: cps/shelf.py:220 +msgid "Edit a shelf" +msgstr "编辑书架" + +#: cps/shelf.py:229 +msgid "Error deleting Shelf" +msgstr "删除书架时出错" + +#: cps/shelf.py:231 +msgid "Shelf successfully deleted" +msgstr "书架已成功删除" + +#: cps/shelf.py:281 +#, python-format +msgid "Change order of Shelf: '%(name)s'" +msgstr "修改书架 %(name)s 顺序" + +#: cps/shelf.py:313 +msgid "Sorry you are not allowed to create a public shelf" +msgstr "抱歉,您没有创建公开书架的权限" + +#: cps/shelf.py:330 +#, python-format +msgid "Shelf %(title)s created" +msgstr "书架 %(title)s 已创建" + +#: cps/shelf.py:333 +#, python-format +msgid "Shelf %(title)s changed" +msgstr "书架 %(title)s 已修改" + +#: cps/shelf.py:347 +msgid "There was an error" +msgstr "发生错误" + +#: cps/shelf.py:369 +#, python-format +msgid "A public shelf with the name '%(title)s' already exists." +msgstr "公共书架:%(title)s已经存在已经存在。" + +#: cps/shelf.py:380 +#, python-format +msgid "A private shelf with the name '%(title)s' already exists." +msgstr "私有书架:%(title)s已经存在已经存在。" + +#: cps/shelf.py:462 +#, python-format +msgid "Shelf: '%(name)s'" +msgstr "书架:%(name)s" + +#: cps/shelf.py:466 +msgid "Error opening shelf. Shelf does not exist or is not accessible" +msgstr "打开书架出错。书架不存在或不可访问" + +#: cps/tasks_status.py:48 cps/templates/layout.html:74 +#: cps/templates/tasks.html:7 +msgid "Tasks" +msgstr "任务列表" + +#: cps/tasks_status.py:64 +msgid "Waiting" +msgstr "等待中" + +#: cps/tasks_status.py:66 +msgid "Failed" +msgstr "失败" + +#: cps/tasks_status.py:68 +msgid "Started" +msgstr "已开始" + +#: cps/tasks_status.py:70 +msgid "Finished" +msgstr "已完成" + +#: cps/tasks_status.py:72 +msgid "Ended" +msgstr "" + +#: cps/tasks_status.py:74 +msgid "Cancelled" +msgstr "" + +#: cps/tasks_status.py:76 +msgid "Unknown Status" +msgstr "未知状态" + +#: cps/updater.py:431 cps/updater.py:442 cps/updater.py:543 cps/updater.py:558 +msgid "Unexpected data while reading update information" +msgstr "读取更新信息时出现意外数据" + +#: cps/updater.py:438 cps/updater.py:550 +msgid "No update available. You already have the latest version installed" +msgstr "无可用更新。您已经安装了最新版本" + +#: cps/updater.py:456 +msgid "A new update is available. Click on the button below to update to the latest version." +msgstr "有新的更新。单击下面的按钮以更新到最新版本。" + +#: cps/updater.py:474 +msgid "Could not fetch update information" +msgstr "无法获取更新信息" + +#: cps/updater.py:484 +msgid "Click on the button below to update to the latest stable version." +msgstr "点击下面按钮更新到最新稳定版本。" + +#: cps/updater.py:493 cps/updater.py:507 cps/updater.py:518 +#, python-format +msgid "A new update is available. Click on the button below to update to version: %(version)s" +msgstr "有新的更新。单击下面的按钮以更新到版本: %(version)s" + +#: cps/updater.py:536 +msgid "No release information available" +msgstr "无可用发布信息" + +#: cps/templates/index.html:6 cps/web.py:432 +msgid "Discover (Random Books)" +msgstr "发现(随机书籍)" + +#: cps/web.py:468 +msgid "Hot Books (Most Downloaded)" +msgstr "热门书籍(最多下载)" + +#: cps/web.py:499 +#, python-format +msgid "Downloaded books by %(user)s" +msgstr "%(user)s 下载过的书籍" + +#: cps/web.py:532 +#, python-format +msgid "Author: %(name)s" +msgstr "作者:%(name)s" + +#: cps/web.py:568 +#, python-format +msgid "Publisher: %(name)s" +msgstr "出版社:%(name)s" + +#: cps/web.py:596 +#, python-format +msgid "Series: %(serie)s" +msgstr "丛书:%(serie)s" + +#: cps/web.py:609 +msgid "Rating: None" +msgstr "" + +#: cps/web.py:618 +#, python-format +msgid "Rating: %(rating)s stars" +msgstr "评分:%(rating)s 星" + +#: cps/web.py:636 +#, python-format +msgid "File format: %(format)s" +msgstr "文件格式:%(format)s" + +#: cps/web.py:673 +#, python-format +msgid "Category: %(name)s" +msgstr "分类:%(name)s" + +#: cps/web.py:700 +#, python-format +msgid "Language: %(name)s" +msgstr "语言:%(name)s" + +#: cps/templates/admin.html:16 cps/web.py:938 +msgid "Downloads" +msgstr "下载次数" + +#: cps/web.py:1030 +msgid "Ratings list" +msgstr "评分列表" + +#: cps/web.py:1057 +msgid "File formats list" +msgstr "文件格式列表" + +#: cps/web.py:1199 #, python-format msgid "Book successfully queued for sending to %(kindlemail)s" msgstr "书籍已经成功加入 %(kindlemail)s 的发送队列" -#: cps/web.py:1531 +#: cps/web.py:1203 #, python-format msgid "Oops! There was an error sending this book: %(res)s" msgstr "糟糕!发送这本书籍的时候出现错误:%(res)s" -#: cps/web.py:1533 +#: cps/web.py:1205 msgid "Please update your profile with a valid Send to Kindle E-mail Address." msgstr "请先配置您的kindle邮箱。" -#: cps/web.py:1550 +#: cps/web.py:1222 msgid "E-Mail server is not configured, please contact your administrator!" msgstr "邮件服务未配置,请联系网站管理员!" -#: cps/templates/layout.html:85 cps/templates/register.html:17 cps/web.py:1551 -#: cps/web.py:1558 cps/web.py:1564 cps/web.py:1583 cps/web.py:1587 -#: cps/web.py:1593 +#: cps/templates/layout.html:86 cps/templates/register.html:17 cps/web.py:1223 +#: cps/web.py:1230 cps/web.py:1236 cps/web.py:1255 cps/web.py:1260 +#: cps/web.py:1266 msgid "Register" msgstr "注册" -#: cps/web.py:1585 +#: cps/web.py:1257 msgid "Your e-mail is not allowed to register" msgstr "您的电子邮件不允许注册" -#: cps/web.py:1588 +#: cps/web.py:1261 msgid "Confirmation e-mail was send to your e-mail account." msgstr "确认邮件已经发送到您的邮箱。" -#: cps/web.py:1602 +#: cps/web.py:1275 msgid "Cannot activate LDAP authentication" msgstr "无法激活LDAP认证" -#: cps/web.py:1621 +#: cps/web.py:1294 #, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgstr "后备登录“%(nickname)s”:无法访问LDAP服务器,或用户未知" -#: cps/web.py:1627 +#: cps/web.py:1300 #, python-format msgid "Could not login: %(message)s" msgstr "无法登录:%(message)s" -#: cps/web.py:1631 cps/web.py:1656 +#: cps/web.py:1304 cps/web.py:1329 msgid "Wrong Username or Password" msgstr "用户名或密码错误" -#: cps/web.py:1638 +#: cps/web.py:1311 msgid "New Password was send to your email address" msgstr "新密码已发送到您的邮箱" -#: cps/web.py:1644 +#: cps/web.py:1317 msgid "Please enter valid username to reset password" msgstr "请输入有效的用户名进行密码重置" -#: cps/web.py:1651 +#: cps/web.py:1324 #, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "您现在已以“%(nickname)s”登录" -#: cps/web.py:1717 cps/web.py:1766 +#: cps/web.py:1388 cps/web.py:1437 #, python-format msgid "%(name)s's profile" msgstr "%(name)s 的用户配置" -#: cps/web.py:1733 +#: cps/web.py:1404 msgid "Profile updated" msgstr "资料已更新" @@ -1331,40 +1369,75 @@ msgstr "资料已更新" msgid "Found no valid gmail.json file with OAuth information" msgstr "找不到包含 OAuth 信息的有效 gmail.json 文件" -#: cps/tasks/convert.py:154 +#: cps/tasks/convert.py:153 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "Calibre 电子书转换器%(tool)s没有发现" -#: cps/tasks/convert.py:187 +#: cps/tasks/convert.py:186 #, python-format msgid "%(format)s format not found on disk" msgstr "硬盘上找不到 %(format)s 格式" -#: cps/tasks/convert.py:191 +#: cps/tasks/convert.py:190 msgid "Ebook converter failed with unknown error" msgstr "发生未知错误,书籍转换失败" -#: cps/tasks/convert.py:201 +#: cps/tasks/convert.py:200 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "Kepubify 转换失败:%(error)s" -#: cps/tasks/convert.py:223 +#: cps/tasks/convert.py:222 #, python-format msgid "Converted file not found or more than one file in folder %(folder)s" msgstr "找不到转换后的文件或文件夹%(folder)s中有多个文件" -#: cps/tasks/convert.py:246 +#: cps/tasks/convert.py:245 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "电子书转换器失败: %(error)s" -#: cps/tasks/convert.py:269 +#: cps/tasks/convert.py:268 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "Calibre 运行失败,错误信息:%(error)s" +#: cps/tasks/convert.py:273 +msgid "Convert" +msgstr "" + +#: cps/tasks/database.py:28 +msgid "Reconnecting Calibre database" +msgstr "" + +#: cps/tasks/mail.py:265 +msgid "E-mail" +msgstr "" + +#: cps/tasks/thumbnail.py:95 +#, python-format +msgid "Generated %(count)s cover thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:222 cps/tasks/thumbnail.py:435 +#: cps/tasks/thumbnail.py:503 +msgid "Cover Thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:281 +msgid "Generated {0} series thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:446 +msgid "Clearing cover thumbnail cache" +msgstr "" + +#: cps/tasks/upload.py:38 cps/templates/admin.html:20 +#: cps/templates/layout.html:67 cps/templates/user_table.html:145 +msgid "Upload" +msgstr "上传书籍" + #: cps/templates/admin.html:9 msgid "Users" msgstr "用户列表" @@ -1384,7 +1457,7 @@ msgstr "邮箱地址" msgid "Send to Kindle E-mail Address" msgstr "接收书籍的Kindle邮箱地址" -#: cps/templates/admin.html:17 cps/templates/layout.html:76 +#: cps/templates/admin.html:17 cps/templates/layout.html:77 #: cps/templates/user_table.html:143 msgid "Admin" msgstr "管理权限" @@ -1394,13 +1467,8 @@ msgstr "管理权限" msgid "Password" msgstr "密码" -#: cps/templates/admin.html:20 cps/templates/layout.html:66 -#: cps/templates/user_table.html:145 -msgid "Upload" -msgstr "上传书籍" - -#: cps/templates/admin.html:22 cps/templates/detail.html:18 -#: cps/templates/detail.html:27 cps/templates/shelf.html:7 +#: cps/templates/admin.html:22 cps/templates/detail.html:19 +#: cps/templates/detail.html:28 cps/templates/shelf.html:8 #: cps/templates/user_table.html:146 msgid "Download" msgstr "下载书籍" @@ -1414,7 +1482,7 @@ msgstr "查看书籍" msgid "Edit" msgstr "编辑书籍" -#: cps/templates/admin.html:25 cps/templates/book_edit.html:16 +#: cps/templates/admin.html:25 cps/templates/book_edit.html:17 #: cps/templates/book_table.html:100 cps/templates/modal_dialogs.html:63 #: cps/templates/modal_dialogs.html:116 cps/templates/user_edit.html:67 #: cps/templates/user_table.html:149 @@ -1526,78 +1594,107 @@ msgstr "编辑基本配置" msgid "Edit UI Configuration" msgstr "编辑界面配置" -#: cps/templates/admin.html:166 +#: cps/templates/admin.html:167 +msgid "Scheduled Tasks" +msgstr "" + +#: cps/templates/admin.html:170 cps/templates/schedule_edit.html:12 +msgid "Time at which tasks start to run" +msgstr "" + +#: cps/templates/admin.html:174 cps/templates/schedule_edit.html:20 +msgid "Maximum tasks duration" +msgstr "" + +#: cps/templates/admin.html:178 +msgid "Generate book cover thumbnails" +msgstr "" + +#: cps/templates/admin.html:182 +msgid "Generate series cover thumbnails" +msgstr "" + +#: cps/templates/admin.html:186 cps/templates/schedule_edit.html:37 +msgid "Reconnect to Calibre Library" +msgstr "" + +#: cps/templates/admin.html:193 +msgid "Refresh Thumbnail Cover Cache" +msgstr "" + +#: cps/templates/admin.html:199 msgid "Administration" msgstr "管理" -#: cps/templates/admin.html:167 +#: cps/templates/admin.html:200 msgid "Download Debug Package" msgstr "下载Debug包" -#: cps/templates/admin.html:168 +#: cps/templates/admin.html:201 msgid "View Logs" msgstr "查看日志文件" -#: cps/templates/admin.html:171 +#: cps/templates/admin.html:204 msgid "Reconnect Calibre Database" msgstr "重新连接到Calibre数据库" -#: cps/templates/admin.html:172 +#: cps/templates/admin.html:207 msgid "Restart" msgstr "重启" -#: cps/templates/admin.html:173 +#: cps/templates/admin.html:208 msgid "Shutdown" msgstr "停止" -#: cps/templates/admin.html:178 -msgid "Update" -msgstr "更新" +#: cps/templates/admin.html:213 +msgid "Version Information" +msgstr "" -#: cps/templates/admin.html:182 +#: cps/templates/admin.html:217 msgid "Version" msgstr "版本" -#: cps/templates/admin.html:183 +#: cps/templates/admin.html:218 msgid "Details" msgstr "详情" -#: cps/templates/admin.html:189 +#: cps/templates/admin.html:224 msgid "Current version" msgstr "当前版本" -#: cps/templates/admin.html:196 +#: cps/templates/admin.html:231 msgid "Check for Update" msgstr "检查更新" -#: cps/templates/admin.html:197 +#: cps/templates/admin.html:232 msgid "Perform Update" msgstr "执行更新" -#: cps/templates/admin.html:210 +#: cps/templates/admin.html:245 msgid "Are you sure you want to restart?" msgstr "您确定要重启吗?" -#: cps/templates/admin.html:215 cps/templates/admin.html:229 -#: cps/templates/admin.html:249 cps/templates/config_db.html:70 +#: cps/templates/admin.html:250 cps/templates/admin.html:264 +#: cps/templates/admin.html:284 cps/templates/config_db.html:70 msgid "OK" msgstr "确定" -#: cps/templates/admin.html:216 cps/templates/admin.html:230 -#: cps/templates/book_edit.html:213 cps/templates/book_table.html:127 +#: cps/templates/admin.html:251 cps/templates/admin.html:265 +#: cps/templates/book_edit.html:214 cps/templates/book_table.html:127 #: cps/templates/config_db.html:54 cps/templates/config_edit.html:359 #: 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/shelf_edit.html:27 +#: cps/templates/modal_dialogs.html:135 cps/templates/schedule_edit.html:41 +#: cps/templates/shelf_edit.html:27 cps/templates/tasks.html:46 #: cps/templates/user_edit.html:144 msgid "Cancel" msgstr "取消" -#: cps/templates/admin.html:228 +#: cps/templates/admin.html:263 msgid "Are you sure you want to shutdown?" msgstr "您确定要关闭吗?" -#: cps/templates/admin.html:240 +#: cps/templates/admin.html:275 msgid "Updating, please do not reload this page" msgstr "正在更新,请不要刷新页面" @@ -1609,39 +1706,39 @@ msgstr "通过" msgid "In Library" msgstr "在书库" -#: cps/templates/author.html:26 cps/templates/index.html:73 -#: cps/templates/search.html:30 cps/templates/shelf.html:19 +#: cps/templates/author.html:26 cps/templates/index.html:74 +#: cps/templates/search.html:31 cps/templates/shelf.html:20 msgid "Sort according to book date, newest first" msgstr "按图书日期排序,最新优先" -#: cps/templates/author.html:27 cps/templates/index.html:74 -#: cps/templates/search.html:31 cps/templates/shelf.html:20 +#: cps/templates/author.html:27 cps/templates/index.html:75 +#: cps/templates/search.html:32 cps/templates/shelf.html:21 msgid "Sort according to book date, oldest first" msgstr "按图书日期排序,最旧优先" -#: cps/templates/author.html:28 cps/templates/index.html:75 -#: cps/templates/search.html:32 cps/templates/shelf.html:21 +#: cps/templates/author.html:28 cps/templates/index.html:76 +#: cps/templates/search.html:33 cps/templates/shelf.html:22 msgid "Sort title in alphabetical order" msgstr "按标题按字母顺序排序" -#: cps/templates/author.html:29 cps/templates/index.html:76 -#: cps/templates/search.html:33 cps/templates/shelf.html:22 +#: cps/templates/author.html:29 cps/templates/index.html:77 +#: cps/templates/search.html:34 cps/templates/shelf.html:23 msgid "Sort title in reverse alphabetical order" msgstr "按标题逆字母顺序排序" -#: cps/templates/author.html:30 cps/templates/index.html:79 -#: cps/templates/search.html:36 cps/templates/shelf.html:25 +#: cps/templates/author.html:30 cps/templates/index.html:80 +#: cps/templates/search.html:37 cps/templates/shelf.html:26 msgid "Sort according to publishing date, newest first" msgstr "按出版日期排序,最新优先" -#: cps/templates/author.html:31 cps/templates/index.html:80 -#: cps/templates/search.html:37 cps/templates/shelf.html:26 +#: cps/templates/author.html:31 cps/templates/index.html:81 +#: cps/templates/search.html:38 cps/templates/shelf.html:27 msgid "Sort according to publishing date, oldest first" msgstr "按出版日期排序,最旧优先" #: cps/templates/author.html:56 cps/templates/author.html:115 -#: cps/templates/index.html:29 cps/templates/index.html:112 -#: cps/templates/search.html:66 cps/templates/shelf.html:54 +#: cps/templates/index.html:30 cps/templates/index.html:113 +#: cps/templates/search.html:67 cps/templates/shelf.html:55 msgid "reduce" msgstr "减少" @@ -1649,164 +1746,165 @@ msgstr "减少" msgid "More by" msgstr "更多" -#: cps/templates/book_edit.html:10 +#: cps/templates/book_edit.html:11 msgid "Delete Book" msgstr "删除书籍" -#: cps/templates/book_edit.html:13 +#: cps/templates/book_edit.html:14 msgid "Delete formats:" msgstr "删除格式:" -#: cps/templates/book_edit.html:24 +#: cps/templates/book_edit.html:25 msgid "Convert book format:" msgstr "转换书籍格式:" -#: cps/templates/book_edit.html:29 +#: cps/templates/book_edit.html:30 msgid "Convert from:" msgstr "转换从:" -#: cps/templates/book_edit.html:31 cps/templates/book_edit.html:38 +#: cps/templates/book_edit.html:32 cps/templates/book_edit.html:39 msgid "select an option" msgstr "选择一个选项" -#: cps/templates/book_edit.html:36 +#: cps/templates/book_edit.html:37 msgid "Convert to:" msgstr "转换到:" -#: cps/templates/book_edit.html:45 +#: cps/templates/book_edit.html:46 msgid "Convert book" msgstr "转换书籍" -#: cps/templates/book_edit.html:55 cps/templates/search_form.html:8 +#: cps/templates/book_edit.html:56 cps/templates/search_form.html:8 msgid "Book Title" msgstr "书名" -#: cps/templates/book_edit.html:62 cps/templates/book_edit.html:270 -#: cps/templates/book_edit.html:288 cps/templates/search_form.html:12 +#: cps/templates/book_edit.html:63 cps/templates/book_edit.html:271 +#: cps/templates/book_edit.html:289 cps/templates/search_form.html:12 msgid "Author" msgstr "作者" -#: cps/templates/book_edit.html:67 cps/templates/book_edit.html:275 -#: cps/templates/book_edit.html:290 cps/templates/search_form.html:153 +#: cps/templates/book_edit.html:68 cps/templates/book_edit.html:276 +#: cps/templates/book_edit.html:291 cps/templates/search_form.html:153 msgid "Description" msgstr "简介" -#: cps/templates/book_edit.html:72 +#: cps/templates/book_edit.html:73 msgid "Identifiers" msgstr "书号" -#: cps/templates/book_edit.html:76 cps/templates/book_edit.html:299 +#: cps/templates/book_edit.html:77 cps/templates/book_edit.html:300 msgid "Identifier Type" msgstr "书号类型" -#: cps/templates/book_edit.html:77 cps/templates/book_edit.html:300 +#: cps/templates/book_edit.html:78 cps/templates/book_edit.html:301 msgid "Identifier Value" msgstr "书号编号" -#: cps/templates/book_edit.html:78 cps/templates/book_edit.html:301 +#: cps/templates/book_edit.html:79 cps/templates/book_edit.html:302 #: cps/templates/user_table.html:24 msgid "Remove" msgstr "移除" -#: cps/templates/book_edit.html:82 +#: cps/templates/book_edit.html:83 msgid "Add Identifier" msgstr "添加书号" -#: cps/templates/book_edit.html:86 cps/templates/search_form.html:51 +#: cps/templates/book_edit.html:87 cps/templates/search_form.html:51 msgid "Tags" msgstr "标签" -#: cps/templates/book_edit.html:94 +#: cps/templates/book_edit.html:95 msgid "Series ID" msgstr "丛书编号" -#: cps/templates/book_edit.html:98 +#: cps/templates/book_edit.html:99 msgid "Rating" msgstr "评分" -#: cps/templates/book_edit.html:103 +#: cps/templates/book_edit.html:104 msgid "Fetch Cover from URL (JPEG - Image will be downloaded and stored in database)" msgstr "从URL获取封面(JPEG - 图片将下载并存储在数据库中)" -#: cps/templates/book_edit.html:107 +#: cps/templates/book_edit.html:108 msgid "Upload Cover from Local Disk" msgstr "从本地磁盘上传封面" -#: cps/templates/book_edit.html:112 +#: cps/templates/book_edit.html:113 msgid "Published Date" msgstr "出版日期" -#: cps/templates/book_edit.html:121 cps/templates/book_edit.html:272 -#: cps/templates/book_edit.html:289 cps/templates/detail.html:164 +#: cps/templates/book_edit.html:122 cps/templates/book_edit.html:273 +#: cps/templates/book_edit.html:290 cps/templates/detail.html:165 #: cps/templates/search_form.html:16 msgid "Publisher" msgstr "出版社" -#: cps/templates/book_edit.html:125 cps/templates/detail.html:131 +#: cps/templates/book_edit.html:126 cps/templates/detail.html:132 #: cps/templates/user_edit.html:33 msgid "Language" msgstr "语言" -#: cps/templates/book_edit.html:135 cps/templates/search_form.html:45 +#: cps/templates/book_edit.html:136 cps/templates/search_form.html:45 #: cps/templates/search_form.html:164 msgid "Yes" msgstr "确认" -#: cps/templates/book_edit.html:136 cps/templates/search_form.html:46 +#: cps/templates/book_edit.html:137 cps/templates/search_form.html:46 #: cps/templates/search_form.html:165 msgid "No" msgstr "没有" -#: cps/templates/book_edit.html:200 +#: cps/templates/book_edit.html:201 msgid "Upload Format" msgstr "上传格式" -#: cps/templates/book_edit.html:208 +#: cps/templates/book_edit.html:209 msgid "View Book on Save" msgstr "查看保存书籍" -#: cps/templates/book_edit.html:211 cps/templates/book_edit.html:229 +#: cps/templates/book_edit.html:212 cps/templates/book_edit.html:230 msgid "Fetch Metadata" msgstr "获取元数据" -#: cps/templates/book_edit.html:212 cps/templates/config_db.html:53 +#: cps/templates/book_edit.html:213 cps/templates/config_db.html:53 #: cps/templates/config_edit.html:358 cps/templates/config_view_edit.html:174 -#: cps/templates/email_edit.html:65 cps/templates/shelf_edit.html:25 -#: cps/templates/shelf_order.html:41 cps/templates/user_edit.html:142 +#: cps/templates/email_edit.html:65 cps/templates/schedule_edit.html:40 +#: cps/templates/shelf_edit.html:25 cps/templates/shelf_order.html:41 +#: cps/templates/user_edit.html:142 msgid "Save" msgstr "保存" -#: cps/templates/book_edit.html:232 +#: cps/templates/book_edit.html:233 msgid "Keyword" msgstr "关键字" -#: cps/templates/book_edit.html:233 +#: cps/templates/book_edit.html:234 msgid "Search keyword" msgstr " 搜索关键字 " -#: cps/templates/book_edit.html:239 +#: cps/templates/book_edit.html:240 msgid "Click the cover to load metadata to the form" msgstr "单击封面将元数据加载到表单" -#: cps/templates/book_edit.html:246 cps/templates/book_edit.html:285 +#: cps/templates/book_edit.html:247 cps/templates/book_edit.html:286 msgid "Loading..." msgstr "加载中..." -#: cps/templates/book_edit.html:250 cps/templates/layout.html:63 -#: cps/templates/layout.html:186 cps/templates/modal_dialogs.html:34 +#: cps/templates/book_edit.html:251 cps/templates/layout.html:64 +#: cps/templates/layout.html:187 cps/templates/modal_dialogs.html:34 #: cps/templates/user_edit.html:163 msgid "Close" msgstr "关闭" -#: cps/templates/book_edit.html:277 cps/templates/book_edit.html:291 +#: cps/templates/book_edit.html:278 cps/templates/book_edit.html:292 msgid "Source" msgstr "源" -#: cps/templates/book_edit.html:286 +#: cps/templates/book_edit.html:287 msgid "Search error!" msgstr "搜索错误!" -#: cps/templates/book_edit.html:287 +#: cps/templates/book_edit.html:288 msgid "No Result(s) found! Please try another keyword." msgstr "无搜索结果!请尝试另一个关键字。" @@ -1913,6 +2011,7 @@ msgid "Enter " msgstr "输入" #: cps/templates/book_table.html:113 cps/templates/modal_dialogs.html:46 +#: cps/templates/tasks.html:36 msgid "Are you really sure?" msgstr "您真的确认?" @@ -2324,62 +2423,62 @@ msgstr "添加显示或隐藏书籍的标签值" msgid "Add Allowed/Denied custom column values" msgstr "添加显示或隐藏书籍的自定义栏目值" -#: cps/templates/detail.html:60 cps/templates/detail.html:69 +#: cps/templates/detail.html:61 cps/templates/detail.html:70 msgid "Read in Browser" msgstr "在线阅读" -#: cps/templates/detail.html:77 cps/templates/detail.html:94 +#: cps/templates/detail.html:78 cps/templates/detail.html:95 msgid "Listen in Browser" msgstr "在线听书" -#: cps/templates/detail.html:124 +#: cps/templates/detail.html:125 #, python-format msgid "Book %(index)s of %(range)s" msgstr "%(range)s 第%(index)s册" -#: cps/templates/detail.html:173 +#: cps/templates/detail.html:174 msgid "Published" msgstr "出版日期" -#: cps/templates/detail.html:221 +#: cps/templates/detail.html:222 msgid "Mark As Unread" msgstr "标为未读" -#: cps/templates/detail.html:221 +#: cps/templates/detail.html:222 msgid "Mark As Read" msgstr "标为已读" -#: cps/templates/detail.html:222 +#: cps/templates/detail.html:223 msgid "Read" msgstr "已读" -#: cps/templates/detail.html:231 +#: cps/templates/detail.html:232 msgid "Restore from archive" msgstr "从档案还原" -#: cps/templates/detail.html:231 +#: cps/templates/detail.html:232 msgid "Add to archive" msgstr "添加到归档" -#: cps/templates/detail.html:232 +#: cps/templates/detail.html:233 msgid "Archived" msgstr "归档" -#: cps/templates/detail.html:243 +#: cps/templates/detail.html:244 msgid "Description:" msgstr "简介:" -#: cps/templates/detail.html:256 cps/templates/search.html:15 +#: cps/templates/detail.html:257 cps/templates/search.html:16 msgid "Add to shelf" msgstr "添加到书架" -#: cps/templates/detail.html:267 cps/templates/detail.html:284 -#: cps/templates/feed.xml:79 cps/templates/layout.html:137 -#: cps/templates/search.html:21 +#: cps/templates/detail.html:268 cps/templates/detail.html:285 +#: cps/templates/feed.xml:79 cps/templates/layout.html:138 +#: cps/templates/search.html:22 msgid "(Public)" msgstr "(公共)" -#: cps/templates/detail.html:298 +#: cps/templates/detail.html:299 msgid "Edit Metadata" msgstr "编辑元数据" @@ -2423,7 +2522,7 @@ msgstr "附件大小限制" msgid "Save and Send Test E-mail" msgstr "保存设置并发送测试邮件" -#: cps/templates/email_edit.html:70 cps/templates/layout.html:29 +#: cps/templates/email_edit.html:70 cps/templates/layout.html:30 #: cps/templates/shelf_order.html:42 cps/templates/user_table.html:174 msgid "Back" msgstr "后退" @@ -2449,7 +2548,7 @@ msgstr "输入域名" msgid "Denied Domains (Blacklist)" msgstr "禁止注册的域名(黑名单)" -#: cps/templates/feed.xml:21 cps/templates/layout.html:170 +#: cps/templates/feed.xml:21 cps/templates/layout.html:171 msgid "Next" msgstr "下一个" @@ -2461,6 +2560,10 @@ msgstr "在文本编辑器中打开.kobo/Kobo eReader.conf,添加(或编辑 msgid "Kobo Token:" msgstr "Kobo Token:" +#: cps/templates/grid.html:21 +msgid "List" +msgstr "" + #: cps/templates/http_error.html:31 msgid "Calibre-Web Instance is unconfigured, please contact your administrator" msgstr "Calibre-Web 实例未配置,请联系您的管理员!" @@ -2477,29 +2580,29 @@ msgstr "回到首页" msgid "Logout User" msgstr "登出账号" -#: cps/templates/index.html:70 +#: cps/templates/index.html:71 msgid "Sort ascending according to download count" msgstr "按下载数排序" -#: cps/templates/index.html:71 +#: cps/templates/index.html:72 msgid "Sort descending according to download count" msgstr "按下载数逆序排序" -#: cps/templates/index.html:77 cps/templates/search.html:34 -#: cps/templates/shelf.html:23 +#: cps/templates/index.html:78 cps/templates/search.html:35 +#: cps/templates/shelf.html:24 msgid "Sort authors in alphabetical order" msgstr "按作者字母顺序排序" -#: cps/templates/index.html:78 cps/templates/search.html:35 -#: cps/templates/shelf.html:24 +#: cps/templates/index.html:79 cps/templates/search.html:36 +#: cps/templates/shelf.html:25 msgid "Sort authors in reverse alphabetical order" msgstr "按作者逆字母顺序排序" -#: cps/templates/index.html:82 +#: cps/templates/index.html:83 msgid "Sort ascending according to series index" msgstr "按丛书编号排序" -#: cps/templates/index.html:83 +#: cps/templates/index.html:84 msgid "Sort descending according to series index" msgstr "按丛书编号逆排序" @@ -2563,7 +2666,7 @@ msgstr "书籍按评分排序" msgid "Books ordered by file formats" msgstr "书籍按文件格式排序" -#: cps/templates/index.xml:119 cps/templates/layout.html:135 +#: cps/templates/index.xml:119 cps/templates/layout.html:136 #: cps/templates/search_form.html:87 msgid "Shelves" msgstr "书架列表" @@ -2572,63 +2675,67 @@ msgstr "书架列表" msgid "Books organized in shelves" msgstr "书架上的书" -#: cps/templates/layout.html:29 +#: cps/templates/layout.html:30 msgid "Home" msgstr "首页" -#: cps/templates/layout.html:35 +#: cps/templates/layout.html:36 msgid "Toggle Navigation" msgstr "切换导航" -#: cps/templates/layout.html:46 +#: cps/templates/layout.html:47 msgid "Search Library" msgstr "搜索书库" -#: cps/templates/layout.html:63 cps/templates/layout.html:117 +#: cps/templates/layout.html:64 cps/templates/layout.html:118 msgid "Uploading..." msgstr "正在上传..." -#: cps/templates/layout.html:63 +#: cps/templates/layout.html:64 msgid "Error" msgstr "错误" -#: cps/templates/layout.html:63 +#: cps/templates/layout.html:64 msgid "Upload done, processing, please wait..." msgstr "上传完成,正在处理,请稍候..." -#: cps/templates/layout.html:76 cps/templates/read.html:72 +#: cps/templates/layout.html:77 cps/templates/read.html:72 #: cps/templates/readcbr.html:84 cps/templates/readcbr.html:108 msgid "Settings" msgstr "设置" -#: cps/templates/layout.html:78 +#: cps/templates/layout.html:79 msgid "Account" msgstr "账号" -#: cps/templates/layout.html:80 +#: cps/templates/layout.html:81 msgid "Logout" msgstr "注销" -#: cps/templates/layout.html:118 +#: cps/templates/layout.html:119 msgid "Please do not refresh the page" msgstr "请不要刷新页面" -#: cps/templates/layout.html:128 +#: cps/templates/layout.html:129 msgid "Browse" msgstr "按条件浏览" -#: cps/templates/layout.html:141 cps/templates/stats.html:3 +#: cps/templates/layout.html:142 cps/templates/stats.html:3 msgid "About" msgstr "关于" -#: cps/templates/layout.html:155 +#: cps/templates/layout.html:156 msgid "Previous" msgstr "上一个" -#: cps/templates/layout.html:182 +#: cps/templates/layout.html:183 msgid "Book Details" msgstr "书籍详情" +#: cps/templates/list.html:22 +msgid "Grid" +msgstr "" + #: cps/templates/login.html:18 msgid "Remember Me" msgstr "记住我" @@ -2733,7 +2840,7 @@ msgstr "父目录" msgid "Select" msgstr "选择" -#: cps/templates/modal_dialogs.html:134 +#: cps/templates/modal_dialogs.html:134 cps/templates/tasks.html:45 msgid "Ok" msgstr "完成" @@ -2909,15 +3016,23 @@ msgstr "验证后,您将自动在新设备上登录。" msgid "This verification link will expire in 10 minutes." msgstr "此验证链接将在10分钟后失效。" -#: cps/templates/search.html:5 +#: cps/templates/schedule_edit.html:29 +msgid "Generate Book Cover Thumbnails" +msgstr "" + +#: cps/templates/schedule_edit.html:33 +msgid "Generate Series Cover Thumbnails" +msgstr "" + +#: cps/templates/search.html:6 msgid "No Results Found" msgstr "无搜索结果" -#: cps/templates/search.html:6 +#: cps/templates/search.html:7 msgid "Search Term:" msgstr "搜索项:" -#: cps/templates/search.html:8 +#: cps/templates/search.html:9 msgid "Results for:" msgstr "结果:" @@ -2969,23 +3084,23 @@ msgstr "从:" msgid "To:" msgstr "到:" -#: cps/templates/shelf.html:12 +#: cps/templates/shelf.html:13 msgid "Delete this Shelf" msgstr "删除此书架" -#: cps/templates/shelf.html:13 +#: cps/templates/shelf.html:14 msgid "Edit Shelf Properties" msgstr "编辑书架属性" -#: cps/templates/shelf.html:16 +#: cps/templates/shelf.html:17 msgid "Arrange books manually" msgstr "手动排列书籍排列顺序" -#: cps/templates/shelf.html:17 +#: cps/templates/shelf.html:18 msgid "Disable Change order" msgstr "禁止改变顺序" -#: cps/templates/shelf.html:17 +#: cps/templates/shelf.html:18 msgid "Enable Change order" msgstr "允许改变顺序" @@ -3030,8 +3145,8 @@ msgid "System Statistics" msgstr "系统统计" #: cps/templates/stats.html:33 -msgid "Program Library" -msgstr "程序名称" +msgid "Program" +msgstr "" #: cps/templates/stats.html:34 msgid "Installed Version" @@ -3061,6 +3176,18 @@ msgstr "运行时间" msgid "Start Time" msgstr "开始时间" +#: cps/templates/tasks.html:20 +msgid "Actions" +msgstr "" + +#: cps/templates/tasks.html:40 +msgid "This task will be cancelled. Any progress made by this task will be saved." +msgstr "" + +#: cps/templates/tasks.html:41 +msgid "If this is a scheduled task, it will be re-ran during the next scheduled time." +msgstr "" + #: cps/templates/user_edit.html:20 msgid "Reset user Password" msgstr "重置用户密码" diff --git a/cps/translations/zh_Hant_TW/LC_MESSAGES/messages.mo b/cps/translations/zh_Hant_TW/LC_MESSAGES/messages.mo index 4dce851ca5fceb982950afa56f2b910c30f3d249..e9dabfe3a3560e428f4ab17ae1f2d91c212de833 100644 GIT binary patch delta 11629 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 imv+y;v|#R)ja&0xSpPz3z~$`imzQqIJG0|<(f\n" "Language: zh_TW\n" @@ -16,587 +16,612 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.9.1\n" +"Generated-By: Babel 2.8.0\n" -#: cps/about.py:86 +#: cps/about.py:84 msgid "Statistics" msgstr "統計" -#: cps/admin.py:141 +#: cps/admin.py:146 msgid "Server restarted, please reload page" msgstr "服務器已重啟,請刷新頁面" -#: cps/admin.py:143 +#: cps/admin.py:148 msgid "Performing shutdown of server, please close window" msgstr "正在關閉服務器,請關閉窗口" -#: cps/admin.py:151 +#: cps/admin.py:156 msgid "Reconnect successful" msgstr "重新連接成功" -#: cps/admin.py:154 +#: cps/admin.py:159 msgid "Unknown command" msgstr "未知命令" -#: cps/admin.py:176 cps/editbooks.py:713 cps/editbooks.py:892 -#: cps/editbooks.py:894 cps/editbooks.py:930 cps/editbooks.py:947 -#: cps/updater.py:608 cps/uploader.py:93 cps/uploader.py:103 +#: cps/admin.py:192 cps/editbooks.py:571 cps/editbooks.py:573 +#: cps/editbooks.py:609 cps/editbooks.py:626 cps/editbooks.py:1233 +#: cps/updater.py:613 cps/uploader.py:87 cps/uploader.py:97 msgid "Unknown" msgstr "未知" -#: cps/admin.py:197 +#: cps/admin.py:217 msgid "Admin page" msgstr "管理頁" -#: cps/admin.py:217 +#: cps/admin.py:237 msgid "Basic Configuration" msgstr "基本配置" -#: cps/admin.py:255 +#: cps/admin.py:275 msgid "UI Configuration" msgstr "界面配置" -#: cps/admin.py:289 cps/templates/admin.html:51 +#: cps/admin.py:309 cps/templates/admin.html:51 msgid "Edit Users" msgstr "管理用戶" -#: cps/admin.py:333 cps/opds.py:529 cps/templates/grid.html:13 +#: cps/admin.py:353 cps/opds.py:532 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "全部" -#: cps/admin.py:360 cps/admin.py:1648 +#: cps/admin.py:380 cps/admin.py:1365 msgid "User not found" msgstr "找不到用戶" -#: cps/admin.py:374 +#: cps/admin.py:394 msgid "{} users deleted successfully" msgstr "成功刪除 {} 個用戶" -#: cps/admin.py:397 cps/templates/config_view_edit.html:133 +#: cps/admin.py:417 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:418 cps/admin.py:424 +#: cps/admin.py:438 cps/admin.py:444 msgid "Malformed request" msgstr "格式錯誤的請求" -#: cps/admin.py:436 cps/admin.py:1526 +#: cps/admin.py:456 cps/admin.py:1962 msgid "Guest Name can't be changed" msgstr "訪客名稱無法更改" -#: cps/admin.py:448 +#: cps/admin.py:468 msgid "Guest can't have this role" msgstr "遊客無法擁有此角色" -#: cps/admin.py:460 cps/admin.py:1484 +#: cps/admin.py:480 cps/admin.py:1920 msgid "No admin user remaining, can't remove admin role" msgstr "管理員賬戶不存在,無法刪除管理員角色" -#: cps/admin.py:464 cps/admin.py:478 +#: cps/admin.py:484 cps/admin.py:498 msgid "Value has to be true or false" msgstr "值必須是 true 或 false" -#: cps/admin.py:466 +#: cps/admin.py:486 msgid "Invalid role" msgstr "無效角色" -#: cps/admin.py:470 +#: cps/admin.py:490 msgid "Guest can't have this view" msgstr "遊客無法擁有此視圖" -#: cps/admin.py:480 +#: cps/admin.py:500 msgid "Invalid view" msgstr "無效視圖" -#: cps/admin.py:483 +#: cps/admin.py:503 msgid "Guest's Locale is determined automatically and can't be set" msgstr "訪客的本地化是自動偵測而無法設置的" -#: cps/admin.py:487 +#: cps/admin.py:507 msgid "No Valid Locale Given" msgstr "無可用本地化" -#: cps/admin.py:498 +#: cps/admin.py:518 msgid "No Valid Book Language Given" msgstr "無有效書籍語言" -#: cps/admin.py:500 cps/editbooks.py:1267 +#: cps/admin.py:520 cps/editbooks.py:438 msgid "Parameter not found" msgstr "參數未找到" -#: cps/admin.py:553 +#: cps/admin.py:557 msgid "Invalid Read Column" msgstr "無效的閱讀列" -#: cps/admin.py:559 +#: cps/admin.py:563 msgid "Invalid Restricted Column" msgstr "無效的限制列" -#: cps/admin.py:579 cps/admin.py:1355 +#: cps/admin.py:583 cps/admin.py:1791 msgid "Calibre-Web configuration updated" msgstr "Calibre-Web配置已更新" -#: cps/admin.py:591 +#: cps/admin.py:595 msgid "Do you really want to delete the Kobo Token?" msgstr "您確定刪除Kobo Token嗎?" -#: cps/admin.py:593 +#: cps/admin.py:597 msgid "Do you really want to delete this domain?" msgstr "您確定要刪除此網域嗎?" -#: cps/admin.py:595 +#: cps/admin.py:599 msgid "Do you really want to delete this user?" msgstr "您確定要刪除此用戶嗎?" -#: cps/admin.py:597 +#: cps/admin.py:601 msgid "Are you sure you want to delete this shelf?" msgstr "您確定要刪除此書架嗎?" -#: cps/admin.py:599 +#: cps/admin.py:603 msgid "Are you sure you want to change locales of selected user(s)?" msgstr "您確定要修改選定用戶的本地化設置嗎?" -#: cps/admin.py:601 +#: cps/admin.py:605 msgid "Are you sure you want to change visible book languages for selected user(s)?" msgstr "您確定要修改選定用戶的可見書籍語言嗎?" -#: cps/admin.py:603 +#: cps/admin.py:607 msgid "Are you sure you want to change the selected role for the selected user(s)?" msgstr "您確定要修改選定用戶的選定角色嗎?" -#: cps/admin.py:605 +#: cps/admin.py:609 msgid "Are you sure you want to change the selected restrictions for the selected user(s)?" msgstr "您確定要修改選定用戶的選定限制嗎?" -#: cps/admin.py:607 +#: cps/admin.py:611 msgid "Are you sure you want to change the selected visibility restrictions for the selected user(s)?" msgstr "您確定要修改選定用戶的選定可視化限制嗎?" -#: cps/admin.py:610 +#: cps/admin.py:614 msgid "Are you sure you want to change shelf sync behavior for the selected user(s)?" msgstr "您確定要更改所選用戶的書架同步行為嗎?" -#: cps/admin.py:612 +#: cps/admin.py:616 msgid "Are you sure you want to change Calibre library location?" msgstr "您確定要更改 Calibre 庫位置嗎?" -#: cps/admin.py:614 +#: cps/admin.py:618 +msgid "Calibre-Web will search for updated Covers and update Cover Thumbnails, this may take a while?" +msgstr "" + +#: cps/admin.py:620 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:764 -msgid "Tag not found" -msgstr "標籤未找到" - -#: cps/admin.py:776 -msgid "Invalid Action" -msgstr "無效的動作" - -#: cps/admin.py:893 cps/admin.py:899 cps/admin.py:909 cps/admin.py:919 +#: cps/admin.py:862 cps/admin.py:868 cps/admin.py:878 cps/admin.py:888 #: cps/templates/modal_dialogs.html:29 cps/templates/user_table.html:41 #: cps/templates/user_table.html:58 msgid "Deny" msgstr "拒絕" -#: cps/admin.py:895 cps/admin.py:901 cps/admin.py:911 cps/admin.py:921 +#: cps/admin.py:864 cps/admin.py:870 cps/admin.py:880 cps/admin.py:890 #: cps/templates/modal_dialogs.html:28 cps/templates/user_table.html:44 #: cps/templates/user_table.html:61 msgid "Allow" msgstr "允許" -#: cps/admin.py:936 +#: cps/admin.py:905 msgid "{} sync entries deleted" msgstr "" -#: cps/admin.py:1059 +#: cps/admin.py:953 +msgid "Tag not found" +msgstr "標籤未找到" + +#: cps/admin.py:965 +msgid "Invalid Action" +msgstr "無效的動作" + +#: cps/admin.py:1080 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "client_secrets.json 未為 Web 應用程序配置" -#: cps/admin.py:1104 +#: cps/admin.py:1125 msgid "Logfile Location is not Valid, Please Enter Correct Path" msgstr "日誌文件路徑無效,請輸入正確的路徑" -#: cps/admin.py:1110 +#: cps/admin.py:1131 msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgstr "訪問日誌路徑無效,請輸入正確的路徑" -#: cps/admin.py:1140 +#: cps/admin.py:1161 msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgstr "請輸入LDAP主機、端口、DN和用戶對象標識符" -#: cps/admin.py:1146 +#: cps/admin.py:1167 msgid "Please Enter a LDAP Service Account and Password" msgstr "請輸入一個LDAP服務賬號和密碼 " -#: cps/admin.py:1149 +#: cps/admin.py:1170 msgid "Please Enter a LDAP Service Account" msgstr "請輸入一個LDAP服務賬號" -#: cps/admin.py:1154 +#: cps/admin.py:1175 #, python-format msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgstr "LDAP群組對象過濾器需要一個具有“%s”格式標識符號" -#: cps/admin.py:1156 +#: cps/admin.py:1177 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "LDAP群組對象過濾器的括號不匹配" -#: cps/admin.py:1160 +#: cps/admin.py:1181 #, python-format msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgstr "LDAP用戶對象過濾器需要一個具有“%s”格式標識符" -#: cps/admin.py:1162 +#: cps/admin.py:1183 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "LDAP用戶對象過濾器的括號不匹配" -#: cps/admin.py:1169 +#: cps/admin.py:1190 #, python-format msgid "LDAP Member User Filter needs to Have One \"%s\" Format Identifier" msgstr "LDAP成員用戶過濾器需要有一個“%s”格式標識符號" -#: cps/admin.py:1171 +#: cps/admin.py:1192 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "LDAP成員用戶過濾器中有不匹配的括號" -#: cps/admin.py:1178 +#: cps/admin.py:1199 msgid "LDAP CACertificate, Certificate or Key Location is not Valid, Please Enter Correct Path" msgstr "LDAP CA證書、證書或密鑰位置無效,請輸入正確的路徑" -#: cps/admin.py:1223 cps/admin.py:1339 cps/admin.py:1437 cps/admin.py:1554 -#: cps/admin.py:1623 cps/editbooks.py:678 cps/editbooks.py:882 -#: cps/editbooks.py:1130 cps/shelf.py:100 cps/shelf.py:160 cps/shelf.py:203 -#: cps/shelf.py:278 cps/shelf.py:343 cps/shelf.py:380 cps/shelf.py:456 -#: cps/web.py:1742 +#: cps/admin.py:1230 cps/admin.py:1852 +msgid "Add new user" +msgstr "添加新用戶" + +#: cps/admin.py:1239 cps/templates/admin.html:100 +msgid "Edit E-mail Server Settings" +msgstr "編輯郵件服務器設置" + +#: cps/admin.py:1258 +msgid "Gmail Account Verification Successful" +msgstr "G-Mail賬號驗證成功" + +#: cps/admin.py:1277 cps/admin.py:1658 cps/admin.py:1775 cps/admin.py:1873 +#: cps/admin.py:1990 cps/editbooks.py:227 cps/editbooks.py:301 +#: cps/editbooks.py:1196 cps/shelf.py:82 cps/shelf.py:142 cps/shelf.py:185 +#: cps/shelf.py:235 cps/shelf.py:272 cps/shelf.py:343 cps/shelf.py:457 +#: cps/tasks/convert.py:136 cps/web.py:1413 #, python-format msgid "Database error: %(error)s." msgstr "數據庫錯誤:%(error)s。" -#: cps/admin.py:1235 -msgid "DB Location is not Valid, Please Enter Correct Path" -msgstr "數據庫路徑無效,請輸入正確的路徑" - -#: cps/admin.py:1253 -msgid "DB is not Writeable" -msgstr "數據庫不可寫入" - -#: cps/admin.py:1266 -msgid "Keyfile Location is not Valid, Please Enter Correct Path" -msgstr "密鑰文件路徑無效,請輸入正確的路徑" - -#: cps/admin.py:1270 -msgid "Certfile Location is not Valid, Please Enter Correct Path" -msgstr "證書文件路徑無效,請輸入正確的路徑" - -#: cps/admin.py:1378 -#, fuzzy -msgid "Database Settings updated" -msgstr "郵件服務器設置已更新" - -#: cps/admin.py:1386 -msgid "Database Configuration" -msgstr "數據庫配置" - -#: cps/admin.py:1402 cps/web.py:1557 -msgid "Please fill out all fields!" -msgstr "請填寫所有欄位!" - -#: cps/admin.py:1410 -msgid "E-mail is not from valid domain" -msgstr "郵箱不在有效網域中" - -#: cps/admin.py:1416 cps/admin.py:1576 -msgid "Add new user" -msgstr "添加新用戶" - -#: cps/admin.py:1427 -#, python-format -msgid "User '%(user)s' created" -msgstr "用戶“%(user)s”已創建" - -#: cps/admin.py:1433 -msgid "Found an existing account for this e-mail address or name." -msgstr "使用此郵箱或用戶名的賬號已經存在。" - -#: cps/admin.py:1463 -#, python-format -msgid "User '%(nick)s' deleted" -msgstr "用戶“%(nick)s”已刪除" - -#: cps/admin.py:1465 cps/admin.py:1466 -msgid "Can't delete Guest User" -msgstr "無法刪除訪客用戶" - -#: cps/admin.py:1469 -msgid "No admin user remaining, can't delete user" -msgstr "管理員賬戶不存在,無法刪除用戶" - -#: cps/admin.py:1542 cps/admin.py:1667 -#, python-format -msgid "Edit User %(nick)s" -msgstr "編輯用戶 %(nick)s" - -#: cps/admin.py:1546 -#, python-format -msgid "User '%(nick)s' updated" -msgstr "用戶“%(nick)s”已更新" - -#: cps/admin.py:1550 cps/admin.py:1682 cps/web.py:1582 cps/web.py:1642 -msgid "An unknown error occurred. Please try again later." -msgstr "發生一個未知錯誤,請稍後再試。" - -#: cps/admin.py:1585 cps/templates/admin.html:100 -msgid "Edit E-mail Server Settings" -msgstr "編輯郵件服務器設置" - -#: cps/admin.py:1604 -msgid "Gmail Account Verification Successful" -msgstr "G-Mail賬號驗證成功" - -#: cps/admin.py:1630 +#: cps/admin.py:1284 #, python-format msgid "Test e-mail queued for sending to %(email)s, please check Tasks for result" msgstr "發送給%(email)s的測試郵件已進入隊列。請檢查任務結果" -#: cps/admin.py:1633 +#: cps/admin.py:1287 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "發送測試郵件時出錯:%(res)s" -#: cps/admin.py:1635 +#: cps/admin.py:1289 msgid "Please configure your e-mail address first..." msgstr "請先配置您的郵箱地址..." -#: cps/admin.py:1637 +#: cps/admin.py:1291 msgid "E-mail server settings updated" msgstr "郵件服務器設置已更新" -#: cps/admin.py:1679 +#: cps/admin.py:1314 cps/templates/admin.html:191 +msgid "Edit Scheduled Tasks Settings" +msgstr "" + +#: cps/admin.py:1326 +msgid "Invalid start time for task specified" +msgstr "" + +#: cps/admin.py:1331 +msgid "Invalid duration for task specified" +msgstr "" + +#: cps/admin.py:1340 +msgid "Scheduled tasks settings updated" +msgstr "" + +#: cps/admin.py:1350 cps/admin.py:1399 cps/admin.py:1986 cps/web.py:1254 +#: cps/web.py:1315 +msgid "An unknown error occurred. Please try again later." +msgstr "發生一個未知錯誤,請稍後再試。" + +#: cps/admin.py:1354 +msgid "Settings DB is not Writeable" +msgstr "" + +#: cps/admin.py:1384 cps/admin.py:1978 +#, python-format +msgid "Edit User %(nick)s" +msgstr "編輯用戶 %(nick)s" + +#: cps/admin.py:1396 #, python-format msgid "Password for user %(user)s reset" msgstr "用戶 %(user)s 的密碼已重置" -#: cps/admin.py:1685 cps/web.py:1522 +#: cps/admin.py:1402 cps/web.py:1194 msgid "Please configure the SMTP mail settings first..." msgstr "請先配置SMTP郵箱設置..." -#: cps/admin.py:1696 +#: cps/admin.py:1413 msgid "Logfile viewer" msgstr "日誌文件查看器" -#: cps/admin.py:1762 +#: cps/admin.py:1479 msgid "Requesting update package" msgstr "正在請求更新包" -#: cps/admin.py:1763 +#: cps/admin.py:1480 msgid "Downloading update package" msgstr "正在下載更新包" -#: cps/admin.py:1764 +#: cps/admin.py:1481 msgid "Unzipping update package" msgstr "正在解壓更新包" -#: cps/admin.py:1765 +#: cps/admin.py:1482 msgid "Replacing files" msgstr "正在替換文件" -#: cps/admin.py:1766 +#: cps/admin.py:1483 msgid "Database connections are closed" msgstr "數據庫連接已關閉" -#: cps/admin.py:1767 +#: cps/admin.py:1484 msgid "Stopping server" msgstr "正在停止服務器" -#: cps/admin.py:1768 +#: cps/admin.py:1485 msgid "Update finished, please press okay and reload page" msgstr "更新完成,請點擊確定並刷新頁面" -#: cps/admin.py:1769 cps/admin.py:1770 cps/admin.py:1771 cps/admin.py:1772 -#: cps/admin.py:1773 cps/admin.py:1774 +#: cps/admin.py:1486 cps/admin.py:1487 cps/admin.py:1488 cps/admin.py:1489 +#: cps/admin.py:1490 cps/admin.py:1491 msgid "Update failed:" msgstr "更新失敗:" -#: cps/admin.py:1769 cps/updater.py:384 cps/updater.py:619 cps/updater.py:621 +#: cps/admin.py:1486 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 msgid "HTTP Error" msgstr "HTTP錯誤" -#: cps/admin.py:1770 cps/updater.py:386 cps/updater.py:623 +#: cps/admin.py:1487 cps/updater.py:391 cps/updater.py:628 msgid "Connection error" msgstr "連接錯誤" -#: cps/admin.py:1771 cps/updater.py:388 cps/updater.py:625 +#: cps/admin.py:1488 cps/updater.py:393 cps/updater.py:630 msgid "Timeout while establishing connection" msgstr "建立連接超時" -#: cps/admin.py:1772 cps/updater.py:390 cps/updater.py:627 +#: cps/admin.py:1489 cps/updater.py:395 cps/updater.py:632 msgid "General error" msgstr "一般錯誤" -#: cps/admin.py:1773 +#: cps/admin.py:1490 #, fuzzy msgid "Update file could not be saved in temp dir" msgstr "更新文件無法保存在臨時目錄中" -#: cps/admin.py:1774 +#: cps/admin.py:1491 msgid "Files could not be replaced during update" msgstr "更新時檔案無法替換變更" -#: cps/admin.py:1798 +#: cps/admin.py:1515 msgid "Failed to extract at least One LDAP User" msgstr "未能提取至少一個LDAP用戶" -#: cps/admin.py:1843 +#: cps/admin.py:1560 msgid "Failed to Create at Least One LDAP User" msgstr "未能創建至少一個LDAP用戶" -#: cps/admin.py:1856 +#: cps/admin.py:1573 #, python-format msgid "Error: %(ldaperror)s" msgstr "錯誤:%(ldaperror)s" -#: cps/admin.py:1860 +#: cps/admin.py:1577 msgid "Error: No user returned in response of LDAP server" msgstr "錯誤:在LDAP服務器的響應中沒有返回用戶" -#: cps/admin.py:1893 +#: cps/admin.py:1610 msgid "At Least One LDAP User Not Found in Database" msgstr "數據庫中沒有找到至少一個LDAP用戶" -#: cps/admin.py:1895 +#: cps/admin.py:1612 msgid "{} User Successfully Imported" msgstr "{} 用戶被成功導入" -#: cps/converter.py:30 +#: cps/admin.py:1670 +msgid "DB Location is not Valid, Please Enter Correct Path" +msgstr "數據庫路徑無效,請輸入正確的路徑" + +#: cps/admin.py:1689 +msgid "DB is not Writeable" +msgstr "數據庫不可寫入" + +#: cps/admin.py:1702 +msgid "Keyfile Location is not Valid, Please Enter Correct Path" +msgstr "密鑰文件路徑無效,請輸入正確的路徑" + +#: cps/admin.py:1706 +msgid "Certfile Location is not Valid, Please Enter Correct Path" +msgstr "證書文件路徑無效,請輸入正確的路徑" + +#: cps/admin.py:1814 +#, fuzzy +msgid "Database Settings updated" +msgstr "郵件服務器設置已更新" + +#: cps/admin.py:1822 +msgid "Database Configuration" +msgstr "數據庫配置" + +#: cps/admin.py:1838 cps/web.py:1229 +msgid "Please fill out all fields!" +msgstr "請填寫所有欄位!" + +#: cps/admin.py:1846 +msgid "E-mail is not from valid domain" +msgstr "郵箱不在有效網域中" + +#: cps/admin.py:1863 +#, python-format +msgid "User '%(user)s' created" +msgstr "用戶“%(user)s”已創建" + +#: cps/admin.py:1869 +msgid "Found an existing account for this e-mail address or name." +msgstr "使用此郵箱或用戶名的賬號已經存在。" + +#: cps/admin.py:1899 +#, python-format +msgid "User '%(nick)s' deleted" +msgstr "用戶“%(nick)s”已刪除" + +#: cps/admin.py:1901 cps/admin.py:1902 +msgid "Can't delete Guest User" +msgstr "無法刪除訪客用戶" + +#: cps/admin.py:1905 +msgid "No admin user remaining, can't delete user" +msgstr "管理員賬戶不存在,無法刪除用戶" + +#: cps/admin.py:1982 +#, python-format +msgid "User '%(nick)s' updated" +msgstr "用戶“%(nick)s”已更新" + +#: cps/converter.py:31 msgid "not installed" msgstr "未安裝" -#: cps/converter.py:31 +#: cps/converter.py:32 msgid "Execution permissions missing" msgstr "缺少執行權限" -#: cps/db.py:674 cps/web.py:710 cps/web.py:1222 +#: cps/db.py:681 cps/search.py:134 cps/web.py:720 #, python-format msgid "Custom Column No.%(column)d is not existing in calibre database" msgstr "自定義列號:%(column)d在Calibre數據庫中不存在" -#: cps/db.py:917 cps/templates/config_edit.html:204 +#: cps/db.py:924 cps/templates/config_edit.html:204 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 -#: cps/web.py:551 cps/web.py:585 cps/web.py:646 cps/web.py:671 cps/web.py:1003 -#: cps/web.py:1032 cps/web.py:1066 cps/web.py:1093 cps/web.py:1132 +#: cps/web.py:549 cps/web.py:583 cps/web.py:656 cps/web.py:681 cps/web.py:962 +#: cps/web.py:992 cps/web.py:1027 cps/web.py:1055 cps/web.py:1094 msgid "None" msgstr "無" -#: cps/editbooks.py:295 cps/editbooks.py:297 -msgid "Book Format Successfully Deleted" -msgstr "書籍格式已成功刪除" - -#: cps/editbooks.py:304 cps/editbooks.py:306 -msgid "Book Successfully Deleted" -msgstr "書籍已成功刪除" - -#: cps/editbooks.py:358 -msgid "You are missing permissions to delete books" -msgstr "" - -#: cps/editbooks.py:373 cps/editbooks.py:765 cps/web.py:518 cps/web.py:1783 -#: cps/web.py:1825 cps/web.py:1870 +#: cps/editbooks.py:109 cps/editbooks.py:890 cps/web.py:516 cps/web.py:1454 +#: cps/web.py:1496 cps/web.py:1541 msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible" msgstr "糟糕!選擇書名無法打開。文件不存在或者文件不可訪問" -#: cps/editbooks.py:408 -msgid "edit metadata" -msgstr "編輯元數據" - -#: cps/editbooks.py:457 -#, python-format -msgid "%(seriesindex)s is not a valid number, skipping" -msgstr "%(seriesindex)s 不是一個有效的數值,忽略" - -#: cps/editbooks.py:493 cps/editbooks.py:1001 -#, fuzzy, python-format -msgid "'%(langname)s' is not a valid language" -msgstr "%(langname)s 不是一種有效語言" - -#: cps/editbooks.py:634 -msgid "User has no rights to upload additional file formats" -msgstr "" - -#: cps/editbooks.py:639 cps/editbooks.py:1029 -#, python-format -msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" -msgstr "不能上傳文件附檔名為“%(ext)s”的文件到此服務器" - -#: cps/editbooks.py:643 cps/editbooks.py:1033 -msgid "File to be uploaded must have an extension" -msgstr "要上傳的文件必須具有附檔名" - -#: cps/editbooks.py:655 -#, python-format -msgid "Failed to create path %(path)s (Permission denied)." -msgstr "創建路徑 %(path)s 失敗(權限拒絕)。" - -#: cps/editbooks.py:660 -#, python-format -msgid "Failed to store file %(file)s." -msgstr "保存文件 %(file)s 失敗。" - -#: cps/editbooks.py:683 -#, python-format -msgid "File format %(ext)s added to %(book)s" -msgstr "已添加 %(ext)s 格式到 %(book)s" - -#: cps/editbooks.py:697 cps/editbooks.py:809 +#: cps/editbooks.py:153 cps/editbooks.py:1216 msgid "User has no rights to upload cover" msgstr "" -#: cps/editbooks.py:828 +#: cps/editbooks.py:173 cps/editbooks.py:711 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "標識符不區分大小寫,覆蓋舊標識符" -#: cps/editbooks.py:869 +#: cps/editbooks.py:214 msgid "Metadata successfully updated" msgstr "已成功更新元數據" -#: cps/editbooks.py:887 +#: cps/editbooks.py:232 msgid "Error editing book: {}" msgstr "" -#: cps/editbooks.py:951 -msgid "Uploaded book probably exists in the library, consider to change before upload new: " -msgstr "上傳的書籍可能已經存在,建議修改後重新上傳: " - -#: cps/editbooks.py:1041 -#, python-format -msgid "File %(filename)s could not saved to temp dir" -msgstr "文件 %(filename)s 無法保存到臨時目錄" - -#: cps/editbooks.py:1061 -#, python-format -msgid "Failed to Move Cover File %(file)s: %(error)s" -msgstr "移動封面文件失敗 %(file)s:%(error)s" - -#: cps/editbooks.py:1117 +#: cps/editbooks.py:287 #, python-format msgid "File %(file)s uploaded" msgstr "文件 %(file)s 已上傳" -#: cps/editbooks.py:1143 +#: cps/editbooks.py:314 msgid "Source or destination format for conversion missing" msgstr "轉換的來源或目的格式不存在" -#: cps/editbooks.py:1151 +#: cps/editbooks.py:322 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "書籍已經被成功加入到 %(book_format)s 格式轉換隊列" -#: cps/editbooks.py:1155 +#: cps/editbooks.py:326 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "轉換此書籍時出現錯誤: %(res)s" +#: cps/editbooks.py:630 +msgid "Uploaded book probably exists in the library, consider to change before upload new: " +msgstr "上傳的書籍可能已經存在,建議修改後重新上傳: " + +#: cps/editbooks.py:685 cps/editbooks.py:1010 +#, fuzzy, python-format +msgid "'%(langname)s' is not a valid language" +msgstr "%(langname)s 不是一種有效語言" + +#: cps/editbooks.py:723 cps/editbooks.py:1157 +#, python-format +msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" +msgstr "不能上傳文件附檔名為“%(ext)s”的文件到此服務器" + +#: cps/editbooks.py:727 cps/editbooks.py:1161 +msgid "File to be uploaded must have an extension" +msgstr "要上傳的文件必須具有附檔名" + +#: cps/editbooks.py:735 +#, python-format +msgid "File %(filename)s could not saved to temp dir" +msgstr "文件 %(filename)s 無法保存到臨時目錄" + +#: cps/editbooks.py:755 +#, python-format +msgid "Failed to Move Cover File %(file)s: %(error)s" +msgstr "移動封面文件失敗 %(file)s:%(error)s" + +#: cps/editbooks.py:812 cps/editbooks.py:814 +msgid "Book Format Successfully Deleted" +msgstr "書籍格式已成功刪除" + +#: cps/editbooks.py:821 cps/editbooks.py:823 +msgid "Book Successfully Deleted" +msgstr "書籍已成功刪除" + +#: cps/editbooks.py:875 +msgid "You are missing permissions to delete books" +msgstr "" + +#: cps/editbooks.py:925 +msgid "edit metadata" +msgstr "編輯元數據" + +#: cps/editbooks.py:974 +#, python-format +msgid "%(seriesindex)s is not a valid number, skipping" +msgstr "%(seriesindex)s 不是一個有效的數值,忽略" + +#: cps/editbooks.py:1152 +msgid "User has no rights to upload additional file formats" +msgstr "" + +#: cps/editbooks.py:1173 +#, python-format +msgid "Failed to create path %(path)s (Permission denied)." +msgstr "創建路徑 %(path)s 失敗(權限拒絕)。" + +#: cps/editbooks.py:1178 +#, python-format +msgid "Failed to store file %(file)s." +msgstr "保存文件 %(file)s 失敗。" + +#: cps/editbooks.py:1201 +#, python-format +msgid "File format %(ext)s added to %(book)s" +msgstr "已添加 %(ext)s 格式到 %(book)s" + #: cps/gdrive.py:58 msgid "Google Drive setup not completed, try to deactivate and activate Google Drive again" msgstr "Google Drive 設置未完成,請嘗試停用並再次激活Google雲端硬碟" @@ -605,27 +630,27 @@ 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:81 +#: cps/helper.py:80 #, python-format msgid "%(format)s format not found for book id: %(book)d" msgstr "找不到id為 %(book)d 的書籍的 %(format)s 格式" -#: cps/helper.py:87 cps/tasks/convert.py:75 +#: cps/helper.py:86 cps/tasks/convert.py:75 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "Google Drive %(fn)s 上找不到 %(format)s" -#: cps/helper.py:92 +#: cps/helper.py:91 #, python-format msgid "%(format)s not found: %(fn)s" msgstr "找不到 %(format)s:%(fn)s" -#: cps/helper.py:97 cps/helper.py:221 cps/templates/detail.html:41 -#: cps/templates/detail.html:45 +#: cps/helper.py:96 cps/helper.py:221 cps/templates/detail.html:42 +#: cps/templates/detail.html:46 msgid "Send to Kindle" msgstr "發送到Kindle" -#: cps/helper.py:98 cps/helper.py:115 cps/helper.py:223 +#: cps/helper.py:97 cps/helper.py:115 cps/helper.py:223 msgid "This e-mail has been sent via Calibre-Web." msgstr "此郵件已經通過Calibre-Web發送。" @@ -665,131 +690,111 @@ msgstr "%(book)s發送到Kindle" msgid "The requested file could not be read. Maybe wrong permissions?" msgstr "無法讀取請求的文件。可能有錯誤的權限設置?" -#: cps/helper.py:353 +#: cps/helper.py:341 msgid "Read status could not set: {}" msgstr "" -#: cps/helper.py:376 +#: cps/helper.py:364 #, python-format msgid "Deleting bookfolder for book %(id)s failed, path has subfolders: %(path)s" msgstr "刪除書的文件夾%(id)s失敗,路徑有子文件夾:%(path)s" -#: cps/helper.py:382 +#: cps/helper.py:370 #, python-format msgid "Deleting book %(id)s failed: %(message)s" msgstr "刪除書籍 %(id)s失敗:%(message)s" -#: cps/helper.py:393 +#: cps/helper.py:381 #, 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:458 +#: cps/helper.py:446 #, 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:529 cps/helper.py:538 +#: cps/helper.py:518 cps/helper.py:527 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "Google Drive上找不到文件 %(file)s" -#: cps/helper.py:572 +#: cps/helper.py:561 #, 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:592 +#: cps/helper.py:581 msgid "Error in rename file in path: {}" msgstr "" -#: cps/helper.py:610 +#: cps/helper.py:599 #, python-format msgid "Book path %(path)s not found on Google Drive" msgstr "Google Drive上找不到書籍路徑 %(path)s" -#: cps/helper.py:651 cps/web.py:1737 +#: cps/helper.py:640 cps/web.py:1408 msgid "Found an existing account for this e-mail address" msgstr "使用此郵箱的賬號已經存在。" -#: cps/helper.py:659 +#: cps/helper.py:648 msgid "This username is already taken" msgstr "此用戶名已被使用" -#: cps/helper.py:669 +#: cps/helper.py:658 msgid "Invalid e-mail address format" msgstr "無效的郵件地址格式" -#: cps/helper.py:754 -msgid "Python modul 'advocate' is not installed but is needed for cover downloads" +#: cps/helper.py:808 +msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "" -#: cps/helper.py:767 +#: cps/helper.py:818 msgid "Error Downloading Cover" msgstr "下載封面時出錯" -#: cps/helper.py:770 +#: cps/helper.py:821 msgid "Cover Format Error" msgstr "封面格式出錯" -#: cps/helper.py:773 +#: cps/helper.py:824 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "" -#: cps/helper.py:783 +#: cps/helper.py:834 msgid "Failed to create path for cover" msgstr "創建封面路徑失敗" -#: cps/helper.py:799 +#: cps/helper.py:850 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "封面文件不是有效的圖片文件,或者無法儲存" -#: cps/helper.py:810 +#: cps/helper.py:861 msgid "Only jpg/jpeg/png/webp/bmp files are supported as coverfile" msgstr "封面文件只支持jpg/jpeg/png/webp/bmp格式文件" -#: cps/helper.py:822 +#: cps/helper.py:873 msgid "Invalid cover file content" msgstr "" -#: cps/helper.py:826 +#: cps/helper.py:877 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "僅將jpg、jpeg文件作為封面文件" -#: cps/helper.py:878 +#: cps/helper.py:929 msgid "Unrar binary file not found" msgstr "找不到Unrar執行文件" -#: cps/helper.py:889 +#: cps/helper.py:940 msgid "Error excecuting UnRar" msgstr "執行UnRar時出錯" -#: cps/helper.py:937 -msgid "Waiting" -msgstr "等待中" - -#: cps/helper.py:939 -msgid "Failed" -msgstr "失敗" - -#: cps/helper.py:941 -msgid "Started" -msgstr "已開始" - -#: cps/helper.py:943 -msgid "Finished" -msgstr "已完成" - -#: cps/helper.py:945 -msgid "Unknown Status" -msgstr "未知狀態" - -#: cps/kobo_auth.py:128 +#: cps/kobo_auth.py:89 #, fuzzy msgid "Please access Calibre-Web from non localhost to get valid api_endpoint for kobo device" msgstr "請不要使用localhost訪問Calibre-Web,以便Kobo設備能獲取有效的api_endpoint" -#: cps/kobo_auth.py:154 +#: cps/kobo_auth.py:115 msgid "Kobo Setup" msgstr "Kobo 設置" @@ -798,7 +803,7 @@ msgstr "Kobo 設置" msgid "Register with %(provider)s" msgstr "使用 %(provider)s 註冊" -#: cps/oauth_bb.py:138 cps/remotelogin.py:130 cps/web.py:1613 +#: cps/oauth_bb.py:138 cps/remotelogin.py:130 cps/web.py:1286 #, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "您現在已以“%(nickname)s”身份登入" @@ -859,12 +864,12 @@ msgstr "Google Oauth 錯誤,請重試。" msgid "Google Oauth error: {}" msgstr "Google Oauth 錯誤: {}" -#: cps/opds.py:298 +#: cps/opds.py:287 msgid "{} Stars" msgstr "{} 星" -#: cps/remotelogin.py:62 cps/templates/layout.html:84 -#: cps/templates/login.html:4 cps/templates/login.html:21 cps/web.py:1662 +#: cps/remotelogin.py:62 cps/templates/layout.html:85 +#: cps/templates/login.html:4 cps/templates/login.html:21 cps/web.py:1335 msgid "Login" msgstr "登入" @@ -880,454 +885,487 @@ msgstr "Token已過期" msgid "Success! Please return to your device" msgstr "成功!請返回您的設備" -#: cps/render_template.py:41 cps/web.py:407 +#: cps/render_template.py:40 cps/web.py:405 msgid "Books" msgstr "書籍" -#: cps/render_template.py:43 +#: cps/render_template.py:42 msgid "Show recent books" msgstr "顯示最近書籍" -#: cps/render_template.py:44 cps/templates/index.xml:25 +#: cps/render_template.py:43 cps/templates/index.xml:25 msgid "Hot Books" msgstr "熱門書籍" -#: cps/render_template.py:46 +#: cps/render_template.py:45 msgid "Show Hot Books" msgstr "顯示熱門書籍" -#: cps/render_template.py:48 cps/render_template.py:53 +#: cps/render_template.py:47 cps/render_template.py:52 msgid "Downloaded Books" msgstr "已下載書籍" -#: cps/render_template.py:50 cps/render_template.py:55 +#: cps/render_template.py:49 cps/render_template.py:54 #: cps/templates/user_table.html:167 msgid "Show Downloaded Books" msgstr "顯示下載過的書籍" -#: cps/render_template.py:58 cps/templates/index.xml:32 cps/web.py:422 +#: cps/render_template.py:57 cps/templates/index.xml:32 cps/web.py:420 msgid "Top Rated Books" msgstr "最高評分書籍" -#: cps/render_template.py:60 cps/templates/user_table.html:161 +#: cps/render_template.py:59 cps/templates/user_table.html:161 msgid "Show Top Rated Books" msgstr "顯示最高評分書籍" -#: cps/render_template.py:61 cps/templates/index.xml:54 -#: cps/templates/index.xml:58 cps/web.py:729 +#: cps/render_template.py:60 cps/templates/index.xml:54 +#: cps/templates/index.xml:58 cps/web.py:739 msgid "Read Books" msgstr "已讀書籍" -#: cps/render_template.py:63 +#: cps/render_template.py:62 msgid "Show read and unread" msgstr "顯示閱讀狀態" -#: cps/render_template.py:65 cps/templates/index.xml:61 -#: cps/templates/index.xml:65 cps/web.py:732 +#: cps/render_template.py:64 cps/templates/index.xml:61 +#: cps/templates/index.xml:65 cps/web.py:742 msgid "Unread Books" msgstr "未讀書籍" -#: cps/render_template.py:67 +#: cps/render_template.py:66 msgid "Show unread" msgstr "顯示未讀" -#: cps/render_template.py:68 +#: cps/render_template.py:67 msgid "Discover" msgstr "發現" -#: cps/render_template.py:70 cps/templates/index.xml:50 +#: cps/render_template.py:69 cps/templates/index.xml:50 #: cps/templates/user_table.html:162 msgid "Show Random Books" msgstr "隨機顯示書籍" -#: cps/render_template.py:71 cps/templates/book_table.html:67 -#: cps/templates/index.xml:83 cps/web.py:1135 +#: cps/render_template.py:70 cps/templates/book_table.html:67 +#: cps/templates/index.xml:83 cps/web.py:1098 msgid "Categories" msgstr "分類" -#: cps/render_template.py:73 cps/templates/user_table.html:158 +#: cps/render_template.py:72 cps/templates/user_table.html:158 msgid "Show category selection" msgstr "顯示分類選擇" -#: cps/render_template.py:74 cps/templates/book_edit.html:90 +#: cps/render_template.py:73 cps/templates/book_edit.html:91 #: cps/templates/book_table.html:68 cps/templates/index.xml:90 -#: cps/templates/search_form.html:69 cps/web.py:1034 cps/web.py:1041 +#: cps/templates/search_form.html:69 cps/web.py:995 cps/web.py:1002 msgid "Series" msgstr "叢書" -#: cps/render_template.py:76 cps/templates/user_table.html:157 +#: cps/render_template.py:75 cps/templates/user_table.html:157 msgid "Show series selection" msgstr "顯示叢書選擇" -#: cps/render_template.py:77 cps/templates/book_table.html:66 +#: cps/render_template.py:76 cps/templates/book_table.html:66 #: cps/templates/index.xml:69 msgid "Authors" msgstr "作者" -#: cps/render_template.py:79 cps/templates/user_table.html:160 +#: cps/render_template.py:78 cps/templates/user_table.html:160 msgid "Show author selection" msgstr "顯示作者選擇" -#: cps/render_template.py:81 cps/templates/book_table.html:72 -#: cps/templates/index.xml:76 cps/web.py:1006 +#: cps/render_template.py:80 cps/templates/book_table.html:72 +#: cps/templates/index.xml:76 cps/web.py:966 msgid "Publishers" msgstr "出版社" -#: cps/render_template.py:83 cps/templates/user_table.html:163 +#: cps/render_template.py:82 cps/templates/user_table.html:163 msgid "Show publisher selection" msgstr "顯示出版社選擇" -#: cps/render_template.py:84 cps/templates/book_table.html:70 +#: cps/render_template.py:83 cps/templates/book_table.html:70 #: cps/templates/index.xml:97 cps/templates/search_form.html:107 -#: cps/web.py:1108 +#: cps/web.py:1070 msgid "Languages" msgstr "語言" -#: cps/render_template.py:87 cps/templates/user_table.html:155 +#: cps/render_template.py:86 cps/templates/user_table.html:155 msgid "Show language selection" msgstr "顯示語言選擇" -#: cps/render_template.py:88 cps/templates/index.xml:104 +#: cps/render_template.py:87 cps/templates/index.xml:104 msgid "Ratings" msgstr "評分" -#: cps/render_template.py:90 cps/templates/user_table.html:164 +#: cps/render_template.py:89 cps/templates/user_table.html:164 msgid "Show ratings selection" msgstr "顯示評分選擇" -#: cps/render_template.py:91 cps/templates/index.xml:112 +#: cps/render_template.py:90 cps/templates/index.xml:112 msgid "File formats" msgstr "文件格式" -#: cps/render_template.py:93 cps/templates/user_table.html:165 +#: cps/render_template.py:92 cps/templates/user_table.html:165 msgid "Show file formats selection" msgstr "顯示文件格式選擇" -#: cps/render_template.py:95 cps/web.py:755 +#: cps/render_template.py:94 cps/web.py:765 msgid "Archived Books" msgstr "歸檔書籍" -#: cps/render_template.py:97 cps/templates/user_table.html:166 +#: cps/render_template.py:96 cps/templates/user_table.html:166 msgid "Show archived books" msgstr "顯示歸檔書籍" -#: cps/render_template.py:100 cps/web.py:837 +#: cps/render_template.py:99 cps/web.py:796 msgid "Books List" msgstr "書籍列表" -#: cps/render_template.py:102 cps/templates/user_table.html:168 +#: cps/render_template.py:101 cps/templates/user_table.html:168 msgid "Show Books List" msgstr "顯示書籍列表" -#: cps/shelf.py:67 cps/shelf.py:121 -msgid "Invalid shelf specified" -msgstr "指定的書架無效" - -#: cps/shelf.py:73 -msgid "Sorry you are not allowed to add a book to that shelf" -msgstr "對不起,您沒有添加書籍到這個書架的權限" - -#: cps/shelf.py:82 -#, python-format -msgid "Book is already part of the shelf: %(shelfname)s" -msgstr "此書籍已經是書架 %(shelfname)s 的一部分" - -#: cps/shelf.py:107 -#, python-format -msgid "Book has been added to shelf: %(sname)s" -msgstr "此書籍已被添加到書架:%(sname)s" - -#: cps/shelf.py:126 -msgid "You are not allowed to add a book to the shelf" -msgstr "" - -#: cps/shelf.py:144 -#, python-format -msgid "Books are already part of the shelf: %(name)s" -msgstr "書籍已經在書架 %(name)s 中了" - -#: cps/shelf.py:156 -#, python-format -msgid "Books have been added to shelf: %(sname)s" -msgstr "書籍已經被添加到書架 %(sname)s 中" - -#: cps/shelf.py:163 -#, python-format -msgid "Could not add books to shelf: %(sname)s" -msgstr "無法添加書籍到書架:%(sname)s" - -#: cps/shelf.py:209 -#, python-format -msgid "Book has been removed from shelf: %(sname)s" -msgstr "此書已從書架 %(sname)s 中刪除" - -#: cps/shelf.py:218 -msgid "Sorry you are not allowed to remove a book from this shelf" -msgstr "" - -#: cps/shelf.py:228 cps/templates/layout.html:140 -msgid "Create a Shelf" -msgstr "創建書架" - -#: cps/shelf.py:236 -msgid "Sorry you are not allowed to edit this shelf" -msgstr "對不起,您沒有編輯這個書架的權限" - -#: cps/shelf.py:238 -msgid "Edit a shelf" -msgstr "編輯書架" - -#: cps/shelf.py:248 -msgid "Sorry you are not allowed to create a public shelf" -msgstr "" - -#: cps/shelf.py:265 -#, python-format -msgid "Shelf %(title)s created" -msgstr "書架 %(title)s 已創建" - -#: cps/shelf.py:268 -#, python-format -msgid "Shelf %(title)s changed" -msgstr "書架 %(title)s 已修改" - -#: cps/shelf.py:282 -msgid "There was an error" -msgstr "發生錯誤" - -#: cps/shelf.py:304 -#, python-format -msgid "A public shelf with the name '%(title)s' already exists." -msgstr "公共書架:%(title)s已經存在已經存在。" - -#: cps/shelf.py:315 -#, python-format -msgid "A private shelf with the name '%(title)s' already exists." -msgstr "私有書架:%(title)s已經存在。" - -#: cps/shelf.py:337 -msgid "Error deleting Shelf" -msgstr "" - -#: cps/shelf.py:339 -#, fuzzy -msgid "Shelf successfully deleted" -msgstr "書籍已成功刪除" - -#: cps/shelf.py:389 -#, python-format -msgid "Change order of Shelf: '%(name)s'" -msgstr "修改書架 %(name)s 順序" - -#: cps/shelf.py:461 -#, python-format -msgid "Shelf: '%(name)s'" -msgstr "書架:%(name)s" - -#: cps/shelf.py:465 -msgid "Error opening shelf. Shelf does not exist or is not accessible" -msgstr "打開書架出錯。書架不存在或不可訪問" - -#: cps/updater.py:426 cps/updater.py:437 cps/updater.py:538 cps/updater.py:553 -msgid "Unexpected data while reading update information" -msgstr "讀取更新信息時出現未預期數據" - -#: cps/updater.py:433 cps/updater.py:545 -msgid "No update available. You already have the latest version installed" -msgstr "無可用更新。您已經安裝了最新版本" - -#: cps/updater.py:451 -msgid "A new update is available. Click on the button below to update to the latest version." -msgstr "有新的更新。單擊下面的按鈕以更新到最新版本。" - -#: cps/updater.py:469 -msgid "Could not fetch update information" -msgstr "無法獲取更新信息" - -#: cps/updater.py:479 -msgid "Click on the button below to update to the latest stable version." -msgstr "點擊下面按鈕更新到最新穩定版本。" - -#: cps/updater.py:488 cps/updater.py:502 cps/updater.py:513 -#, python-format -msgid "A new update is available. Click on the button below to update to version: %(version)s" -msgstr "有新的更新。單擊下面的按鈕以更新到版本: %(version)s" - -#: cps/updater.py:531 -msgid "No release information available" -msgstr "無可用發佈信息" - -#: cps/templates/index.html:5 cps/web.py:434 -msgid "Discover (Random Books)" -msgstr "發現(隨機書籍)" - -#: cps/web.py:470 -msgid "Hot Books (Most Downloaded)" -msgstr "熱門書籍(最多下載)" - -#: cps/web.py:501 -#, python-format -msgid "Downloaded books by %(user)s" -msgstr "%(user)s 下載過的書籍" - -#: cps/web.py:534 -#, python-format -msgid "Author: %(name)s" -msgstr "作者:%(name)s" - -#: cps/web.py:570 -#, python-format -msgid "Publisher: %(name)s" -msgstr "出版社:%(name)s" - -#: cps/web.py:598 -#, python-format -msgid "Series: %(serie)s" -msgstr "叢書:%(serie)s" - -#: cps/web.py:610 -#, python-format -msgid "Rating: %(rating)s stars" -msgstr "評分:%(rating)s 星" - -#: cps/web.py:626 -#, python-format -msgid "File format: %(format)s" -msgstr "文件格式:%(format)s" - -#: cps/web.py:663 -#, python-format -msgid "Category: %(name)s" -msgstr "分類:%(name)s" - -#: cps/web.py:690 -#, python-format -msgid "Language: %(name)s" -msgstr "語言:%(name)s" - -#: cps/templates/layout.html:56 cps/web.py:789 cps/web.py:1444 -msgid "Advanced Search" -msgstr "進階搜尋" - -#: cps/templates/book_edit.html:235 cps/templates/feed.xml:33 -#: cps/templates/index.xml:11 cps/templates/layout.html:45 -#: cps/templates/layout.html:48 cps/templates/search_form.html:226 -#: cps/web.py:807 cps/web.py:1164 +#: cps/search.py:48 cps/search.py:414 cps/templates/book_edit.html:236 +#: cps/templates/feed.xml:33 cps/templates/index.xml:11 +#: cps/templates/layout.html:46 cps/templates/layout.html:49 +#: cps/templates/search_form.html:226 msgid "Search" msgstr "搜尋" -#: cps/templates/admin.html:16 cps/web.py:979 -msgid "Downloads" -msgstr "下載次數" - -#: cps/web.py:1068 -msgid "Ratings list" -msgstr "評分列表" - -#: cps/web.py:1095 -msgid "File formats list" -msgstr "文件格式列表" - -#: cps/templates/layout.html:73 cps/templates/tasks.html:7 cps/web.py:1149 -msgid "Tasks" -msgstr "任務列表" - -#: cps/web.py:1286 +#: cps/search.py:194 msgid "Published after " msgstr "出版時間晚於 " -#: cps/web.py:1293 +#: cps/search.py:201 msgid "Published before " msgstr "出版時間早於 " -#: cps/web.py:1315 +#: cps/search.py:223 #, python-format msgid "Rating <= %(rating)s" msgstr "評分 <= %(rating)s" -#: cps/web.py:1317 +#: cps/search.py:225 #, python-format msgid "Rating >= %(rating)s" msgstr "評分 >= %(rating)s" -#: cps/web.py:1319 +#: cps/search.py:227 #, python-format msgid "Read Status = %(status)s" msgstr "閱讀狀態 = %(status)s" -#: cps/web.py:1425 +#: cps/search.py:345 msgid "Error on search for custom columns, please restart Calibre-Web" msgstr "搜詢自定義欄位時出錯,請重啟 Calibre-Web" -#: cps/web.py:1527 +#: cps/search.py:364 cps/search.py:396 cps/templates/layout.html:57 +msgid "Advanced Search" +msgstr "進階搜尋" + +#: cps/shelf.py:49 cps/shelf.py:103 +msgid "Invalid shelf specified" +msgstr "指定的書架無效" + +#: cps/shelf.py:55 +msgid "Sorry you are not allowed to add a book to that shelf" +msgstr "對不起,您沒有添加書籍到這個書架的權限" + +#: cps/shelf.py:64 +#, python-format +msgid "Book is already part of the shelf: %(shelfname)s" +msgstr "此書籍已經是書架 %(shelfname)s 的一部分" + +#: cps/shelf.py:89 +#, python-format +msgid "Book has been added to shelf: %(sname)s" +msgstr "此書籍已被添加到書架:%(sname)s" + +#: cps/shelf.py:108 +msgid "You are not allowed to add a book to the shelf" +msgstr "" + +#: cps/shelf.py:126 +#, python-format +msgid "Books are already part of the shelf: %(name)s" +msgstr "書籍已經在書架 %(name)s 中了" + +#: cps/shelf.py:138 +#, python-format +msgid "Books have been added to shelf: %(sname)s" +msgstr "書籍已經被添加到書架 %(sname)s 中" + +#: cps/shelf.py:145 +#, python-format +msgid "Could not add books to shelf: %(sname)s" +msgstr "無法添加書籍到書架:%(sname)s" + +#: cps/shelf.py:191 +#, python-format +msgid "Book has been removed from shelf: %(sname)s" +msgstr "此書已從書架 %(sname)s 中刪除" + +#: cps/shelf.py:200 +msgid "Sorry you are not allowed to remove a book from this shelf" +msgstr "" + +#: cps/shelf.py:210 cps/templates/layout.html:141 +msgid "Create a Shelf" +msgstr "創建書架" + +#: cps/shelf.py:218 +msgid "Sorry you are not allowed to edit this shelf" +msgstr "對不起,您沒有編輯這個書架的權限" + +#: cps/shelf.py:220 +msgid "Edit a shelf" +msgstr "編輯書架" + +#: cps/shelf.py:229 +msgid "Error deleting Shelf" +msgstr "" + +#: cps/shelf.py:231 +#, fuzzy +msgid "Shelf successfully deleted" +msgstr "書籍已成功刪除" + +#: cps/shelf.py:281 +#, python-format +msgid "Change order of Shelf: '%(name)s'" +msgstr "修改書架 %(name)s 順序" + +#: cps/shelf.py:313 +msgid "Sorry you are not allowed to create a public shelf" +msgstr "" + +#: cps/shelf.py:330 +#, python-format +msgid "Shelf %(title)s created" +msgstr "書架 %(title)s 已創建" + +#: cps/shelf.py:333 +#, python-format +msgid "Shelf %(title)s changed" +msgstr "書架 %(title)s 已修改" + +#: cps/shelf.py:347 +msgid "There was an error" +msgstr "發生錯誤" + +#: cps/shelf.py:369 +#, python-format +msgid "A public shelf with the name '%(title)s' already exists." +msgstr "公共書架:%(title)s已經存在已經存在。" + +#: cps/shelf.py:380 +#, python-format +msgid "A private shelf with the name '%(title)s' already exists." +msgstr "私有書架:%(title)s已經存在。" + +#: cps/shelf.py:462 +#, python-format +msgid "Shelf: '%(name)s'" +msgstr "書架:%(name)s" + +#: cps/shelf.py:466 +msgid "Error opening shelf. Shelf does not exist or is not accessible" +msgstr "打開書架出錯。書架不存在或不可訪問" + +#: cps/tasks_status.py:48 cps/templates/layout.html:74 +#: cps/templates/tasks.html:7 +msgid "Tasks" +msgstr "任務列表" + +#: cps/tasks_status.py:64 +msgid "Waiting" +msgstr "等待中" + +#: cps/tasks_status.py:66 +msgid "Failed" +msgstr "失敗" + +#: cps/tasks_status.py:68 +msgid "Started" +msgstr "已開始" + +#: cps/tasks_status.py:70 +msgid "Finished" +msgstr "已完成" + +#: cps/tasks_status.py:72 +msgid "Ended" +msgstr "" + +#: cps/tasks_status.py:74 +msgid "Cancelled" +msgstr "" + +#: cps/tasks_status.py:76 +msgid "Unknown Status" +msgstr "未知狀態" + +#: cps/updater.py:431 cps/updater.py:442 cps/updater.py:543 cps/updater.py:558 +msgid "Unexpected data while reading update information" +msgstr "讀取更新信息時出現未預期數據" + +#: cps/updater.py:438 cps/updater.py:550 +msgid "No update available. You already have the latest version installed" +msgstr "無可用更新。您已經安裝了最新版本" + +#: cps/updater.py:456 +msgid "A new update is available. Click on the button below to update to the latest version." +msgstr "有新的更新。單擊下面的按鈕以更新到最新版本。" + +#: cps/updater.py:474 +msgid "Could not fetch update information" +msgstr "無法獲取更新信息" + +#: cps/updater.py:484 +msgid "Click on the button below to update to the latest stable version." +msgstr "點擊下面按鈕更新到最新穩定版本。" + +#: cps/updater.py:493 cps/updater.py:507 cps/updater.py:518 +#, python-format +msgid "A new update is available. Click on the button below to update to version: %(version)s" +msgstr "有新的更新。單擊下面的按鈕以更新到版本: %(version)s" + +#: cps/updater.py:536 +msgid "No release information available" +msgstr "無可用發佈信息" + +#: cps/templates/index.html:6 cps/web.py:432 +msgid "Discover (Random Books)" +msgstr "發現(隨機書籍)" + +#: cps/web.py:468 +msgid "Hot Books (Most Downloaded)" +msgstr "熱門書籍(最多下載)" + +#: cps/web.py:499 +#, python-format +msgid "Downloaded books by %(user)s" +msgstr "%(user)s 下載過的書籍" + +#: cps/web.py:532 +#, python-format +msgid "Author: %(name)s" +msgstr "作者:%(name)s" + +#: cps/web.py:568 +#, python-format +msgid "Publisher: %(name)s" +msgstr "出版社:%(name)s" + +#: cps/web.py:596 +#, python-format +msgid "Series: %(serie)s" +msgstr "叢書:%(serie)s" + +#: cps/web.py:609 +msgid "Rating: None" +msgstr "" + +#: cps/web.py:618 +#, python-format +msgid "Rating: %(rating)s stars" +msgstr "評分:%(rating)s 星" + +#: cps/web.py:636 +#, python-format +msgid "File format: %(format)s" +msgstr "文件格式:%(format)s" + +#: cps/web.py:673 +#, python-format +msgid "Category: %(name)s" +msgstr "分類:%(name)s" + +#: cps/web.py:700 +#, python-format +msgid "Language: %(name)s" +msgstr "語言:%(name)s" + +#: cps/templates/admin.html:16 cps/web.py:938 +msgid "Downloads" +msgstr "下載次數" + +#: cps/web.py:1030 +msgid "Ratings list" +msgstr "評分列表" + +#: cps/web.py:1057 +msgid "File formats list" +msgstr "文件格式列表" + +#: cps/web.py:1199 #, python-format msgid "Book successfully queued for sending to %(kindlemail)s" msgstr "書籍已經成功加入 %(kindlemail)s 的發送隊列" -#: cps/web.py:1531 +#: cps/web.py:1203 #, python-format msgid "Oops! There was an error sending this book: %(res)s" msgstr "糟糕!發送這本書籍的時候出現錯誤:%(res)s" -#: cps/web.py:1533 +#: cps/web.py:1205 msgid "Please update your profile with a valid Send to Kindle E-mail Address." msgstr "請先設置您的kindle郵箱。" -#: cps/web.py:1550 +#: cps/web.py:1222 msgid "E-Mail server is not configured, please contact your administrator!" msgstr "郵件服務未配置,請聯繫網站管理員!" -#: cps/templates/layout.html:85 cps/templates/register.html:17 cps/web.py:1551 -#: cps/web.py:1558 cps/web.py:1564 cps/web.py:1583 cps/web.py:1587 -#: cps/web.py:1593 +#: cps/templates/layout.html:86 cps/templates/register.html:17 cps/web.py:1223 +#: cps/web.py:1230 cps/web.py:1236 cps/web.py:1255 cps/web.py:1260 +#: cps/web.py:1266 msgid "Register" msgstr "註冊" -#: cps/web.py:1585 +#: cps/web.py:1257 msgid "Your e-mail is not allowed to register" msgstr "您的電子郵件不允許註冊" -#: cps/web.py:1588 +#: cps/web.py:1261 msgid "Confirmation e-mail was send to your e-mail account." msgstr "確認郵件已經發送到您的郵箱。" -#: cps/web.py:1602 +#: cps/web.py:1275 msgid "Cannot activate LDAP authentication" msgstr "無法激活LDAP認證" -#: cps/web.py:1621 +#: cps/web.py:1294 #, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgstr "備援登入“%(nickname)s”:無法訪問LDAP伺服器,或用戶未知" -#: cps/web.py:1627 +#: cps/web.py:1300 #, python-format msgid "Could not login: %(message)s" msgstr "無法登入:%(message)s" -#: cps/web.py:1631 cps/web.py:1656 +#: cps/web.py:1304 cps/web.py:1329 msgid "Wrong Username or Password" msgstr "用戶名或密碼錯誤" -#: cps/web.py:1638 +#: cps/web.py:1311 msgid "New Password was send to your email address" msgstr "新密碼已發送到您的郵箱" -#: cps/web.py:1644 +#: cps/web.py:1317 msgid "Please enter valid username to reset password" msgstr "請輸入有效的用戶名進行密碼重置" -#: cps/web.py:1651 +#: cps/web.py:1324 #, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "您現在已以“%(nickname)s”登入" -#: cps/web.py:1717 cps/web.py:1766 +#: cps/web.py:1388 cps/web.py:1437 #, python-format msgid "%(name)s's profile" msgstr "%(name)s 的用戶配置" -#: cps/web.py:1733 +#: cps/web.py:1404 msgid "Profile updated" msgstr "資料已更新" @@ -1335,40 +1373,75 @@ msgstr "資料已更新" msgid "Found no valid gmail.json file with OAuth information" msgstr "找不到包含 OAuth 信息的有效 gmail.json 文件" -#: cps/tasks/convert.py:154 +#: cps/tasks/convert.py:153 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "沒有發現Calibre 電子書轉換器%(tool)s" -#: cps/tasks/convert.py:187 +#: cps/tasks/convert.py:186 #, python-format msgid "%(format)s format not found on disk" msgstr "硬碟上找不到 %(format)s 格式" -#: cps/tasks/convert.py:191 +#: cps/tasks/convert.py:190 msgid "Ebook converter failed with unknown error" msgstr "發生未知錯誤,書籍轉換失敗" -#: cps/tasks/convert.py:201 +#: cps/tasks/convert.py:200 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "Kepubify 轉換失敗:%(error)s" -#: cps/tasks/convert.py:223 +#: cps/tasks/convert.py:222 #, python-format msgid "Converted file not found or more than one file in folder %(folder)s" msgstr "找不到轉換後的文件或文件夾%(folder)s中有多個文件" -#: cps/tasks/convert.py:246 +#: cps/tasks/convert.py:245 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "電子書轉換器失敗: %(error)s" -#: cps/tasks/convert.py:269 +#: cps/tasks/convert.py:268 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "Calibre 運行失敗,錯誤信息:%(error)s" +#: cps/tasks/convert.py:273 +msgid "Convert" +msgstr "" + +#: cps/tasks/database.py:28 +msgid "Reconnecting Calibre database" +msgstr "" + +#: cps/tasks/mail.py:265 +msgid "E-mail" +msgstr "" + +#: cps/tasks/thumbnail.py:95 +#, python-format +msgid "Generated %(count)s cover thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:222 cps/tasks/thumbnail.py:435 +#: cps/tasks/thumbnail.py:503 +msgid "Cover Thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:281 +msgid "Generated {0} series thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:446 +msgid "Clearing cover thumbnail cache" +msgstr "" + +#: cps/tasks/upload.py:38 cps/templates/admin.html:20 +#: cps/templates/layout.html:67 cps/templates/user_table.html:145 +msgid "Upload" +msgstr "上傳書籍" + #: cps/templates/admin.html:9 msgid "Users" msgstr "用戶列表" @@ -1388,7 +1461,7 @@ msgstr "郵箱地址" msgid "Send to Kindle E-mail Address" msgstr "接收書籍的Kindle郵箱地址" -#: cps/templates/admin.html:17 cps/templates/layout.html:76 +#: cps/templates/admin.html:17 cps/templates/layout.html:77 #: cps/templates/user_table.html:143 msgid "Admin" msgstr "管理權限" @@ -1398,13 +1471,8 @@ msgstr "管理權限" msgid "Password" msgstr "密碼" -#: cps/templates/admin.html:20 cps/templates/layout.html:66 -#: cps/templates/user_table.html:145 -msgid "Upload" -msgstr "上傳書籍" - -#: cps/templates/admin.html:22 cps/templates/detail.html:18 -#: cps/templates/detail.html:27 cps/templates/shelf.html:7 +#: cps/templates/admin.html:22 cps/templates/detail.html:19 +#: cps/templates/detail.html:28 cps/templates/shelf.html:8 #: cps/templates/user_table.html:146 msgid "Download" msgstr "下載書籍" @@ -1418,7 +1486,7 @@ msgstr "查看書籍" msgid "Edit" msgstr "編輯書籍" -#: cps/templates/admin.html:25 cps/templates/book_edit.html:16 +#: cps/templates/admin.html:25 cps/templates/book_edit.html:17 #: cps/templates/book_table.html:100 cps/templates/modal_dialogs.html:63 #: cps/templates/modal_dialogs.html:116 cps/templates/user_edit.html:67 #: cps/templates/user_table.html:149 @@ -1530,78 +1598,107 @@ msgstr "編輯基本配置" msgid "Edit UI Configuration" msgstr "編輯界面配置" -#: cps/templates/admin.html:166 +#: cps/templates/admin.html:167 +msgid "Scheduled Tasks" +msgstr "" + +#: cps/templates/admin.html:170 cps/templates/schedule_edit.html:12 +msgid "Time at which tasks start to run" +msgstr "" + +#: cps/templates/admin.html:174 cps/templates/schedule_edit.html:20 +msgid "Maximum tasks duration" +msgstr "" + +#: cps/templates/admin.html:178 +msgid "Generate book cover thumbnails" +msgstr "" + +#: cps/templates/admin.html:182 +msgid "Generate series cover thumbnails" +msgstr "" + +#: cps/templates/admin.html:186 cps/templates/schedule_edit.html:37 +msgid "Reconnect to Calibre Library" +msgstr "" + +#: cps/templates/admin.html:193 +msgid "Refresh Thumbnail Cover Cache" +msgstr "" + +#: cps/templates/admin.html:199 msgid "Administration" msgstr "管理" -#: cps/templates/admin.html:167 +#: cps/templates/admin.html:200 msgid "Download Debug Package" msgstr "下載除錯包" -#: cps/templates/admin.html:168 +#: cps/templates/admin.html:201 msgid "View Logs" msgstr "查看日誌文件" -#: cps/templates/admin.html:171 +#: cps/templates/admin.html:204 msgid "Reconnect Calibre Database" msgstr "重新連接到Calibre數據庫" -#: cps/templates/admin.html:172 +#: cps/templates/admin.html:207 msgid "Restart" msgstr "重啟" -#: cps/templates/admin.html:173 +#: cps/templates/admin.html:208 msgid "Shutdown" msgstr "停止" -#: cps/templates/admin.html:178 -msgid "Update" -msgstr "更新" +#: cps/templates/admin.html:213 +msgid "Version Information" +msgstr "" -#: cps/templates/admin.html:182 +#: cps/templates/admin.html:217 msgid "Version" msgstr "版本" -#: cps/templates/admin.html:183 +#: cps/templates/admin.html:218 msgid "Details" msgstr "詳情" -#: cps/templates/admin.html:189 +#: cps/templates/admin.html:224 msgid "Current version" msgstr "當前版本" -#: cps/templates/admin.html:196 +#: cps/templates/admin.html:231 msgid "Check for Update" msgstr "檢查更新" -#: cps/templates/admin.html:197 +#: cps/templates/admin.html:232 msgid "Perform Update" msgstr "執行更新" -#: cps/templates/admin.html:210 +#: cps/templates/admin.html:245 msgid "Are you sure you want to restart?" msgstr "您確定要重啟嗎?" -#: cps/templates/admin.html:215 cps/templates/admin.html:229 -#: cps/templates/admin.html:249 cps/templates/config_db.html:70 +#: cps/templates/admin.html:250 cps/templates/admin.html:264 +#: cps/templates/admin.html:284 cps/templates/config_db.html:70 msgid "OK" msgstr "確定" -#: cps/templates/admin.html:216 cps/templates/admin.html:230 -#: cps/templates/book_edit.html:213 cps/templates/book_table.html:127 +#: cps/templates/admin.html:251 cps/templates/admin.html:265 +#: cps/templates/book_edit.html:214 cps/templates/book_table.html:127 #: cps/templates/config_db.html:54 cps/templates/config_edit.html:359 #: 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/shelf_edit.html:27 +#: cps/templates/modal_dialogs.html:135 cps/templates/schedule_edit.html:41 +#: cps/templates/shelf_edit.html:27 cps/templates/tasks.html:46 #: cps/templates/user_edit.html:144 msgid "Cancel" msgstr "取消" -#: cps/templates/admin.html:228 +#: cps/templates/admin.html:263 msgid "Are you sure you want to shutdown?" msgstr "您確定要關閉嗎?" -#: cps/templates/admin.html:240 +#: cps/templates/admin.html:275 msgid "Updating, please do not reload this page" msgstr "正在更新,請不要刷新頁面" @@ -1613,39 +1710,39 @@ msgstr "通過" msgid "In Library" msgstr "在書庫" -#: cps/templates/author.html:26 cps/templates/index.html:73 -#: cps/templates/search.html:30 cps/templates/shelf.html:19 +#: cps/templates/author.html:26 cps/templates/index.html:74 +#: cps/templates/search.html:31 cps/templates/shelf.html:20 msgid "Sort according to book date, newest first" msgstr "按圖書日期排序,最新優先" -#: cps/templates/author.html:27 cps/templates/index.html:74 -#: cps/templates/search.html:31 cps/templates/shelf.html:20 +#: cps/templates/author.html:27 cps/templates/index.html:75 +#: cps/templates/search.html:32 cps/templates/shelf.html:21 msgid "Sort according to book date, oldest first" msgstr "按圖書日期排序,最舊優先" -#: cps/templates/author.html:28 cps/templates/index.html:75 -#: cps/templates/search.html:32 cps/templates/shelf.html:21 +#: cps/templates/author.html:28 cps/templates/index.html:76 +#: cps/templates/search.html:33 cps/templates/shelf.html:22 msgid "Sort title in alphabetical order" msgstr "按標題按字母順序排序" -#: cps/templates/author.html:29 cps/templates/index.html:76 -#: cps/templates/search.html:33 cps/templates/shelf.html:22 +#: cps/templates/author.html:29 cps/templates/index.html:77 +#: cps/templates/search.html:34 cps/templates/shelf.html:23 msgid "Sort title in reverse alphabetical order" msgstr "按標題逆字母順序排序" -#: cps/templates/author.html:30 cps/templates/index.html:79 -#: cps/templates/search.html:36 cps/templates/shelf.html:25 +#: cps/templates/author.html:30 cps/templates/index.html:80 +#: cps/templates/search.html:37 cps/templates/shelf.html:26 msgid "Sort according to publishing date, newest first" msgstr "按出版日期排序,最新優先" -#: cps/templates/author.html:31 cps/templates/index.html:80 -#: cps/templates/search.html:37 cps/templates/shelf.html:26 +#: cps/templates/author.html:31 cps/templates/index.html:81 +#: cps/templates/search.html:38 cps/templates/shelf.html:27 msgid "Sort according to publishing date, oldest first" msgstr "按出版日期排序,最舊優先" #: cps/templates/author.html:56 cps/templates/author.html:115 -#: cps/templates/index.html:29 cps/templates/index.html:112 -#: cps/templates/search.html:66 cps/templates/shelf.html:54 +#: cps/templates/index.html:30 cps/templates/index.html:113 +#: cps/templates/search.html:67 cps/templates/shelf.html:55 msgid "reduce" msgstr "減少" @@ -1653,165 +1750,166 @@ msgstr "減少" msgid "More by" msgstr "更多" -#: cps/templates/book_edit.html:10 +#: cps/templates/book_edit.html:11 msgid "Delete Book" msgstr "刪除書籍" -#: cps/templates/book_edit.html:13 +#: cps/templates/book_edit.html:14 msgid "Delete formats:" msgstr "刪除格式:" -#: cps/templates/book_edit.html:24 +#: cps/templates/book_edit.html:25 msgid "Convert book format:" msgstr "轉換書籍格式:" -#: cps/templates/book_edit.html:29 +#: cps/templates/book_edit.html:30 msgid "Convert from:" msgstr "轉換從:" -#: cps/templates/book_edit.html:31 cps/templates/book_edit.html:38 +#: cps/templates/book_edit.html:32 cps/templates/book_edit.html:39 msgid "select an option" msgstr "選擇一個選項" -#: cps/templates/book_edit.html:36 +#: cps/templates/book_edit.html:37 msgid "Convert to:" msgstr "轉換到:" -#: cps/templates/book_edit.html:45 +#: cps/templates/book_edit.html:46 msgid "Convert book" msgstr "轉換書籍" -#: cps/templates/book_edit.html:55 cps/templates/search_form.html:8 +#: cps/templates/book_edit.html:56 cps/templates/search_form.html:8 msgid "Book Title" msgstr "書名" -#: cps/templates/book_edit.html:62 cps/templates/book_edit.html:270 -#: cps/templates/book_edit.html:288 cps/templates/search_form.html:12 +#: cps/templates/book_edit.html:63 cps/templates/book_edit.html:271 +#: cps/templates/book_edit.html:289 cps/templates/search_form.html:12 msgid "Author" msgstr "作者" -#: cps/templates/book_edit.html:67 cps/templates/book_edit.html:275 -#: cps/templates/book_edit.html:290 cps/templates/search_form.html:153 +#: cps/templates/book_edit.html:68 cps/templates/book_edit.html:276 +#: cps/templates/book_edit.html:291 cps/templates/search_form.html:153 msgid "Description" msgstr "簡介" -#: cps/templates/book_edit.html:72 +#: cps/templates/book_edit.html:73 msgid "Identifiers" msgstr "書號" -#: cps/templates/book_edit.html:76 cps/templates/book_edit.html:299 +#: cps/templates/book_edit.html:77 cps/templates/book_edit.html:300 msgid "Identifier Type" msgstr "書號類型" -#: cps/templates/book_edit.html:77 cps/templates/book_edit.html:300 +#: cps/templates/book_edit.html:78 cps/templates/book_edit.html:301 msgid "Identifier Value" msgstr "書號編號" -#: cps/templates/book_edit.html:78 cps/templates/book_edit.html:301 +#: cps/templates/book_edit.html:79 cps/templates/book_edit.html:302 #: cps/templates/user_table.html:24 msgid "Remove" msgstr "移除" -#: cps/templates/book_edit.html:82 +#: cps/templates/book_edit.html:83 msgid "Add Identifier" msgstr "添加書號" -#: cps/templates/book_edit.html:86 cps/templates/search_form.html:51 +#: cps/templates/book_edit.html:87 cps/templates/search_form.html:51 msgid "Tags" msgstr "標籤" -#: cps/templates/book_edit.html:94 +#: cps/templates/book_edit.html:95 msgid "Series ID" msgstr "叢書編號" -#: cps/templates/book_edit.html:98 +#: cps/templates/book_edit.html:99 msgid "Rating" msgstr "評分" -#: cps/templates/book_edit.html:103 +#: cps/templates/book_edit.html:104 msgid "Fetch Cover from URL (JPEG - Image will be downloaded and stored in database)" msgstr "從URL獲取封面(JPEG - 圖片將下載並存儲在數據庫中)" -#: cps/templates/book_edit.html:107 +#: cps/templates/book_edit.html:108 msgid "Upload Cover from Local Disk" msgstr "從本地硬碟上傳封面" -#: cps/templates/book_edit.html:112 +#: cps/templates/book_edit.html:113 msgid "Published Date" msgstr "出版日期" -#: cps/templates/book_edit.html:121 cps/templates/book_edit.html:272 -#: cps/templates/book_edit.html:289 cps/templates/detail.html:164 +#: cps/templates/book_edit.html:122 cps/templates/book_edit.html:273 +#: cps/templates/book_edit.html:290 cps/templates/detail.html:165 #: cps/templates/search_form.html:16 msgid "Publisher" msgstr "出版社" -#: cps/templates/book_edit.html:125 cps/templates/detail.html:131 +#: cps/templates/book_edit.html:126 cps/templates/detail.html:132 #: cps/templates/user_edit.html:33 msgid "Language" msgstr "語言" -#: cps/templates/book_edit.html:135 cps/templates/search_form.html:45 +#: cps/templates/book_edit.html:136 cps/templates/search_form.html:45 #: cps/templates/search_form.html:164 msgid "Yes" msgstr "確認" -#: cps/templates/book_edit.html:136 cps/templates/search_form.html:46 +#: cps/templates/book_edit.html:137 cps/templates/search_form.html:46 #: cps/templates/search_form.html:165 msgid "No" msgstr "沒有" -#: cps/templates/book_edit.html:200 +#: cps/templates/book_edit.html:201 msgid "Upload Format" msgstr "上傳格式" -#: cps/templates/book_edit.html:208 +#: cps/templates/book_edit.html:209 msgid "View Book on Save" msgstr "查看保存書籍" -#: cps/templates/book_edit.html:211 cps/templates/book_edit.html:229 +#: cps/templates/book_edit.html:212 cps/templates/book_edit.html:230 msgid "Fetch Metadata" msgstr "獲取元數據" -#: cps/templates/book_edit.html:212 cps/templates/config_db.html:53 +#: cps/templates/book_edit.html:213 cps/templates/config_db.html:53 #: cps/templates/config_edit.html:358 cps/templates/config_view_edit.html:174 -#: cps/templates/email_edit.html:65 cps/templates/shelf_edit.html:25 -#: cps/templates/shelf_order.html:41 cps/templates/user_edit.html:142 +#: cps/templates/email_edit.html:65 cps/templates/schedule_edit.html:40 +#: cps/templates/shelf_edit.html:25 cps/templates/shelf_order.html:41 +#: cps/templates/user_edit.html:142 msgid "Save" msgstr "儲存" -#: cps/templates/book_edit.html:232 +#: cps/templates/book_edit.html:233 msgid "Keyword" msgstr "關鍵字" -#: cps/templates/book_edit.html:233 +#: cps/templates/book_edit.html:234 #, fuzzy msgid "Search keyword" msgstr " 搜索關鍵字 " -#: cps/templates/book_edit.html:239 +#: cps/templates/book_edit.html:240 msgid "Click the cover to load metadata to the form" msgstr "單擊封面將元數據加載到表單" -#: cps/templates/book_edit.html:246 cps/templates/book_edit.html:285 +#: cps/templates/book_edit.html:247 cps/templates/book_edit.html:286 msgid "Loading..." msgstr "加載中..." -#: cps/templates/book_edit.html:250 cps/templates/layout.html:63 -#: cps/templates/layout.html:186 cps/templates/modal_dialogs.html:34 +#: cps/templates/book_edit.html:251 cps/templates/layout.html:64 +#: cps/templates/layout.html:187 cps/templates/modal_dialogs.html:34 #: cps/templates/user_edit.html:163 msgid "Close" msgstr "關閉" -#: cps/templates/book_edit.html:277 cps/templates/book_edit.html:291 +#: cps/templates/book_edit.html:278 cps/templates/book_edit.html:292 msgid "Source" msgstr "來源" -#: cps/templates/book_edit.html:286 +#: cps/templates/book_edit.html:287 msgid "Search error!" msgstr "搜索錯誤!" -#: cps/templates/book_edit.html:287 +#: cps/templates/book_edit.html:288 msgid "No Result(s) found! Please try another keyword." msgstr "無搜索結果!請嘗試另一個關鍵字。" @@ -1920,6 +2018,7 @@ msgid "Enter " msgstr "書號" #: cps/templates/book_table.html:113 cps/templates/modal_dialogs.html:46 +#: cps/templates/tasks.html:36 msgid "Are you really sure?" msgstr "您真的確認?" @@ -2333,62 +2432,62 @@ msgstr "添加顯示或隱藏書籍的標籤值" msgid "Add Allowed/Denied custom column values" msgstr "添加顯示或隱藏書籍的自定義欄位值" -#: cps/templates/detail.html:60 cps/templates/detail.html:69 +#: cps/templates/detail.html:61 cps/templates/detail.html:70 msgid "Read in Browser" msgstr "在線閱讀" -#: cps/templates/detail.html:77 cps/templates/detail.html:94 +#: cps/templates/detail.html:78 cps/templates/detail.html:95 msgid "Listen in Browser" msgstr "在線聽書" -#: cps/templates/detail.html:124 +#: cps/templates/detail.html:125 #, python-format msgid "Book %(index)s of %(range)s" msgstr "%(range)s 第%(index)s冊" -#: cps/templates/detail.html:173 +#: cps/templates/detail.html:174 msgid "Published" msgstr "出版日期" -#: cps/templates/detail.html:221 +#: cps/templates/detail.html:222 msgid "Mark As Unread" msgstr "標為未讀" -#: cps/templates/detail.html:221 +#: cps/templates/detail.html:222 msgid "Mark As Read" msgstr "標為已讀" -#: cps/templates/detail.html:222 +#: cps/templates/detail.html:223 msgid "Read" msgstr "已讀" -#: cps/templates/detail.html:231 +#: cps/templates/detail.html:232 msgid "Restore from archive" msgstr "從歸檔檔案還原" -#: cps/templates/detail.html:231 +#: cps/templates/detail.html:232 msgid "Add to archive" msgstr "添加到歸檔" -#: cps/templates/detail.html:232 +#: cps/templates/detail.html:233 msgid "Archived" msgstr "歸檔" -#: cps/templates/detail.html:243 +#: cps/templates/detail.html:244 msgid "Description:" msgstr "簡介:" -#: cps/templates/detail.html:256 cps/templates/search.html:15 +#: cps/templates/detail.html:257 cps/templates/search.html:16 msgid "Add to shelf" msgstr "添加到書架" -#: cps/templates/detail.html:267 cps/templates/detail.html:284 -#: cps/templates/feed.xml:79 cps/templates/layout.html:137 -#: cps/templates/search.html:21 +#: cps/templates/detail.html:268 cps/templates/detail.html:285 +#: cps/templates/feed.xml:79 cps/templates/layout.html:138 +#: cps/templates/search.html:22 msgid "(Public)" msgstr "(公共)" -#: cps/templates/detail.html:298 +#: cps/templates/detail.html:299 msgid "Edit Metadata" msgstr "編輯元數據" @@ -2432,7 +2531,7 @@ msgstr "附件大小限制" msgid "Save and Send Test E-mail" msgstr "保存設置並發送測試郵件" -#: cps/templates/email_edit.html:70 cps/templates/layout.html:29 +#: cps/templates/email_edit.html:70 cps/templates/layout.html:30 #: cps/templates/shelf_order.html:42 cps/templates/user_table.html:174 msgid "Back" msgstr "後退" @@ -2458,7 +2557,7 @@ msgstr "輸入網域名" msgid "Denied Domains (Blacklist)" msgstr "禁止註冊的網域名(黑名單)" -#: cps/templates/feed.xml:21 cps/templates/layout.html:170 +#: cps/templates/feed.xml:21 cps/templates/layout.html:171 msgid "Next" msgstr "下一個" @@ -2471,6 +2570,10 @@ msgstr "在文本編輯器中打開.kobo/Kobo eReader.conf,添加(或編輯 msgid "Kobo Token:" msgstr "Kobo 同步 Token" +#: cps/templates/grid.html:21 +msgid "List" +msgstr "" + #: cps/templates/http_error.html:31 msgid "Calibre-Web Instance is unconfigured, please contact your administrator" msgstr "Calibre-Web 實例未配置,請聯繫您的系統管理員!" @@ -2487,29 +2590,29 @@ msgstr "回到首頁" msgid "Logout User" msgstr "登出賬號" -#: cps/templates/index.html:70 +#: cps/templates/index.html:71 msgid "Sort ascending according to download count" msgstr "" -#: cps/templates/index.html:71 +#: cps/templates/index.html:72 msgid "Sort descending according to download count" msgstr "" -#: cps/templates/index.html:77 cps/templates/search.html:34 -#: cps/templates/shelf.html:23 +#: cps/templates/index.html:78 cps/templates/search.html:35 +#: cps/templates/shelf.html:24 msgid "Sort authors in alphabetical order" msgstr "按作者字母順序排序" -#: cps/templates/index.html:78 cps/templates/search.html:35 -#: cps/templates/shelf.html:24 +#: cps/templates/index.html:79 cps/templates/search.html:36 +#: cps/templates/shelf.html:25 msgid "Sort authors in reverse alphabetical order" msgstr "按作者逆字母順序排序" -#: cps/templates/index.html:82 +#: cps/templates/index.html:83 msgid "Sort ascending according to series index" msgstr "按叢書編號排序" -#: cps/templates/index.html:83 +#: cps/templates/index.html:84 msgid "Sort descending according to series index" msgstr "按叢書編號逆排序" @@ -2573,7 +2676,7 @@ msgstr "書籍按評分排序" msgid "Books ordered by file formats" msgstr "書籍按文件格式排序" -#: cps/templates/index.xml:119 cps/templates/layout.html:135 +#: cps/templates/index.xml:119 cps/templates/layout.html:136 #: cps/templates/search_form.html:87 msgid "Shelves" msgstr "書架列表" @@ -2582,63 +2685,67 @@ msgstr "書架列表" msgid "Books organized in shelves" msgstr "書架上的書" -#: cps/templates/layout.html:29 +#: cps/templates/layout.html:30 msgid "Home" msgstr "首頁" -#: cps/templates/layout.html:35 +#: cps/templates/layout.html:36 msgid "Toggle Navigation" msgstr "切換導航" -#: cps/templates/layout.html:46 +#: cps/templates/layout.html:47 msgid "Search Library" msgstr "搜索書庫" -#: cps/templates/layout.html:63 cps/templates/layout.html:117 +#: cps/templates/layout.html:64 cps/templates/layout.html:118 msgid "Uploading..." msgstr "正在上傳..." -#: cps/templates/layout.html:63 +#: cps/templates/layout.html:64 msgid "Error" msgstr "錯誤" -#: cps/templates/layout.html:63 +#: cps/templates/layout.html:64 msgid "Upload done, processing, please wait..." msgstr "上傳完成,正在處理中,請稍候..." -#: cps/templates/layout.html:76 cps/templates/read.html:72 +#: cps/templates/layout.html:77 cps/templates/read.html:72 #: cps/templates/readcbr.html:84 cps/templates/readcbr.html:108 msgid "Settings" msgstr "設置" -#: cps/templates/layout.html:78 +#: cps/templates/layout.html:79 msgid "Account" msgstr "賬號" -#: cps/templates/layout.html:80 +#: cps/templates/layout.html:81 msgid "Logout" msgstr "登出" -#: cps/templates/layout.html:118 +#: cps/templates/layout.html:119 msgid "Please do not refresh the page" msgstr "請不要刷新頁面" -#: cps/templates/layout.html:128 +#: cps/templates/layout.html:129 msgid "Browse" msgstr "瀏覽" -#: cps/templates/layout.html:141 cps/templates/stats.html:3 +#: cps/templates/layout.html:142 cps/templates/stats.html:3 msgid "About" msgstr "關於" -#: cps/templates/layout.html:155 +#: cps/templates/layout.html:156 msgid "Previous" msgstr "上一個" -#: cps/templates/layout.html:182 +#: cps/templates/layout.html:183 msgid "Book Details" msgstr "書籍詳情" +#: cps/templates/list.html:22 +msgid "Grid" +msgstr "" + #: cps/templates/login.html:18 msgid "Remember Me" msgstr "記住我" @@ -2743,7 +2850,7 @@ msgstr "父目錄" msgid "Select" msgstr "選擇" -#: cps/templates/modal_dialogs.html:134 +#: cps/templates/modal_dialogs.html:134 cps/templates/tasks.html:45 msgid "Ok" msgstr "完成" @@ -2919,15 +3026,23 @@ msgstr "驗證後,您將自動在新設備上登入。" msgid "This verification link will expire in 10 minutes." msgstr "此驗證連接將在10分鐘後失效。" -#: cps/templates/search.html:5 +#: cps/templates/schedule_edit.html:29 +msgid "Generate Book Cover Thumbnails" +msgstr "" + +#: cps/templates/schedule_edit.html:33 +msgid "Generate Series Cover Thumbnails" +msgstr "" + +#: cps/templates/search.html:6 msgid "No Results Found" msgstr "無搜索結果" -#: cps/templates/search.html:6 +#: cps/templates/search.html:7 msgid "Search Term:" msgstr "搜索項:" -#: cps/templates/search.html:8 +#: cps/templates/search.html:9 msgid "Results for:" msgstr "結果:" @@ -2979,23 +3094,23 @@ msgstr "從:" msgid "To:" msgstr "到:" -#: cps/templates/shelf.html:12 +#: cps/templates/shelf.html:13 msgid "Delete this Shelf" msgstr "刪除此書架" -#: cps/templates/shelf.html:13 +#: cps/templates/shelf.html:14 msgid "Edit Shelf Properties" msgstr "編輯書架屬性" -#: cps/templates/shelf.html:16 +#: cps/templates/shelf.html:17 msgid "Arrange books manually" msgstr "手動排列書籍排列順序" -#: cps/templates/shelf.html:17 +#: cps/templates/shelf.html:18 msgid "Disable Change order" msgstr "禁止改變順序" -#: cps/templates/shelf.html:17 +#: cps/templates/shelf.html:18 msgid "Enable Change order" msgstr "允許改變順序" @@ -3040,8 +3155,8 @@ msgid "System Statistics" msgstr "系統統計" #: cps/templates/stats.html:33 -msgid "Program Library" -msgstr "程式名稱" +msgid "Program" +msgstr "" #: cps/templates/stats.html:34 msgid "Installed Version" @@ -3071,6 +3186,18 @@ msgstr "運行時間" msgid "Start Time" msgstr "開始時間" +#: cps/templates/tasks.html:20 +msgid "Actions" +msgstr "" + +#: cps/templates/tasks.html:40 +msgid "This task will be cancelled. Any progress made by this task will be saved." +msgstr "" + +#: cps/templates/tasks.html:41 +msgid "If this is a scheduled task, it will be re-ran during the next scheduled time." +msgstr "" + #: cps/templates/user_edit.html:20 msgid "Reset user Password" msgstr "重置用戶密碼" diff --git a/messages.pot b/messages.pot index 4477a138..9eb38614 100644 --- a/messages.pot +++ b/messages.pot @@ -8,592 +8,617 @@ msgid "" msgstr "" "Project-Id-Version: PROJECT VERSION\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2022-04-18 20:01+0200\n" +"POT-Creation-Date: 2022-05-01 13:22+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.9.1\n" +"Generated-By: Babel 2.8.0\n" -#: cps/about.py:86 +#: cps/about.py:84 msgid "Statistics" msgstr "" -#: cps/admin.py:141 +#: cps/admin.py:146 msgid "Server restarted, please reload page" msgstr "" -#: cps/admin.py:143 +#: cps/admin.py:148 msgid "Performing shutdown of server, please close window" msgstr "" -#: cps/admin.py:151 +#: cps/admin.py:156 msgid "Reconnect successful" msgstr "" -#: cps/admin.py:154 +#: cps/admin.py:159 msgid "Unknown command" msgstr "" -#: cps/admin.py:176 cps/editbooks.py:713 cps/editbooks.py:892 -#: cps/editbooks.py:894 cps/editbooks.py:930 cps/editbooks.py:947 -#: cps/updater.py:608 cps/uploader.py:93 cps/uploader.py:103 +#: cps/admin.py:192 cps/editbooks.py:571 cps/editbooks.py:573 +#: cps/editbooks.py:609 cps/editbooks.py:626 cps/editbooks.py:1233 +#: cps/updater.py:613 cps/uploader.py:87 cps/uploader.py:97 msgid "Unknown" msgstr "" -#: cps/admin.py:197 +#: cps/admin.py:217 msgid "Admin page" msgstr "" -#: cps/admin.py:217 +#: cps/admin.py:237 msgid "Basic Configuration" msgstr "" -#: cps/admin.py:255 +#: cps/admin.py:275 msgid "UI Configuration" msgstr "" -#: cps/admin.py:289 cps/templates/admin.html:51 +#: cps/admin.py:309 cps/templates/admin.html:51 msgid "Edit Users" msgstr "" -#: cps/admin.py:333 cps/opds.py:529 cps/templates/grid.html:13 +#: cps/admin.py:353 cps/opds.py:532 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" msgstr "" -#: cps/admin.py:360 cps/admin.py:1648 +#: cps/admin.py:380 cps/admin.py:1365 msgid "User not found" msgstr "" -#: cps/admin.py:374 +#: cps/admin.py:394 msgid "{} users deleted successfully" msgstr "" -#: cps/admin.py:397 cps/templates/config_view_edit.html:133 +#: cps/admin.py:417 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:418 cps/admin.py:424 +#: cps/admin.py:438 cps/admin.py:444 msgid "Malformed request" msgstr "" -#: cps/admin.py:436 cps/admin.py:1526 +#: cps/admin.py:456 cps/admin.py:1962 msgid "Guest Name can't be changed" msgstr "" -#: cps/admin.py:448 +#: cps/admin.py:468 msgid "Guest can't have this role" msgstr "" -#: cps/admin.py:460 cps/admin.py:1484 +#: cps/admin.py:480 cps/admin.py:1920 msgid "No admin user remaining, can't remove admin role" msgstr "" -#: cps/admin.py:464 cps/admin.py:478 +#: cps/admin.py:484 cps/admin.py:498 msgid "Value has to be true or false" msgstr "" -#: cps/admin.py:466 +#: cps/admin.py:486 msgid "Invalid role" msgstr "" -#: cps/admin.py:470 +#: cps/admin.py:490 msgid "Guest can't have this view" msgstr "" -#: cps/admin.py:480 +#: cps/admin.py:500 msgid "Invalid view" msgstr "" -#: cps/admin.py:483 +#: cps/admin.py:503 msgid "Guest's Locale is determined automatically and can't be set" msgstr "" -#: cps/admin.py:487 +#: cps/admin.py:507 msgid "No Valid Locale Given" msgstr "" -#: cps/admin.py:498 +#: cps/admin.py:518 msgid "No Valid Book Language Given" msgstr "" -#: cps/admin.py:500 cps/editbooks.py:1267 +#: cps/admin.py:520 cps/editbooks.py:438 msgid "Parameter not found" msgstr "" -#: cps/admin.py:553 +#: cps/admin.py:557 msgid "Invalid Read Column" msgstr "" -#: cps/admin.py:559 +#: cps/admin.py:563 msgid "Invalid Restricted Column" msgstr "" -#: cps/admin.py:579 cps/admin.py:1355 +#: cps/admin.py:583 cps/admin.py:1791 msgid "Calibre-Web configuration updated" msgstr "" -#: cps/admin.py:591 +#: cps/admin.py:595 msgid "Do you really want to delete the Kobo Token?" msgstr "" -#: cps/admin.py:593 +#: cps/admin.py:597 msgid "Do you really want to delete this domain?" msgstr "" -#: cps/admin.py:595 +#: cps/admin.py:599 msgid "Do you really want to delete this user?" msgstr "" -#: cps/admin.py:597 +#: cps/admin.py:601 msgid "Are you sure you want to delete this shelf?" msgstr "" -#: cps/admin.py:599 +#: cps/admin.py:603 msgid "Are you sure you want to change locales of selected user(s)?" msgstr "" -#: cps/admin.py:601 +#: cps/admin.py:605 msgid "Are you sure you want to change visible book languages for selected user(s)?" msgstr "" -#: cps/admin.py:603 +#: cps/admin.py:607 msgid "Are you sure you want to change the selected role for the selected user(s)?" msgstr "" -#: cps/admin.py:605 +#: cps/admin.py:609 msgid "Are you sure you want to change the selected restrictions for the selected user(s)?" msgstr "" -#: cps/admin.py:607 +#: cps/admin.py:611 msgid "Are you sure you want to change the selected visibility restrictions for the selected user(s)?" msgstr "" -#: cps/admin.py:610 +#: cps/admin.py:614 msgid "Are you sure you want to change shelf sync behavior for the selected user(s)?" msgstr "" -#: cps/admin.py:612 +#: cps/admin.py:616 msgid "Are you sure you want to change Calibre library location?" msgstr "" -#: cps/admin.py:614 +#: cps/admin.py:618 +msgid "Calibre-Web will search for updated Covers and update Cover Thumbnails, this may take a while?" +msgstr "" + +#: cps/admin.py:620 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:764 -msgid "Tag not found" -msgstr "" - -#: cps/admin.py:776 -msgid "Invalid Action" -msgstr "" - -#: cps/admin.py:893 cps/admin.py:899 cps/admin.py:909 cps/admin.py:919 +#: cps/admin.py:862 cps/admin.py:868 cps/admin.py:878 cps/admin.py:888 #: cps/templates/modal_dialogs.html:29 cps/templates/user_table.html:41 #: cps/templates/user_table.html:58 msgid "Deny" msgstr "" -#: cps/admin.py:895 cps/admin.py:901 cps/admin.py:911 cps/admin.py:921 +#: cps/admin.py:864 cps/admin.py:870 cps/admin.py:880 cps/admin.py:890 #: cps/templates/modal_dialogs.html:28 cps/templates/user_table.html:44 #: cps/templates/user_table.html:61 msgid "Allow" msgstr "" -#: cps/admin.py:936 +#: cps/admin.py:905 msgid "{} sync entries deleted" msgstr "" -#: cps/admin.py:1059 +#: cps/admin.py:953 +msgid "Tag not found" +msgstr "" + +#: cps/admin.py:965 +msgid "Invalid Action" +msgstr "" + +#: cps/admin.py:1080 msgid "client_secrets.json Is Not Configured For Web Application" msgstr "" -#: cps/admin.py:1104 +#: cps/admin.py:1125 msgid "Logfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1110 +#: cps/admin.py:1131 msgid "Access Logfile Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1140 +#: cps/admin.py:1161 msgid "Please Enter a LDAP Provider, Port, DN and User Object Identifier" msgstr "" -#: cps/admin.py:1146 +#: cps/admin.py:1167 msgid "Please Enter a LDAP Service Account and Password" msgstr "" -#: cps/admin.py:1149 +#: cps/admin.py:1170 msgid "Please Enter a LDAP Service Account" msgstr "" -#: cps/admin.py:1154 +#: cps/admin.py:1175 #, python-format msgid "LDAP Group Object Filter Needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1156 +#: cps/admin.py:1177 msgid "LDAP Group Object Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1160 +#: cps/admin.py:1181 #, python-format msgid "LDAP User Object Filter needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1162 +#: cps/admin.py:1183 msgid "LDAP User Object Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1169 +#: cps/admin.py:1190 #, python-format msgid "LDAP Member User Filter needs to Have One \"%s\" Format Identifier" msgstr "" -#: cps/admin.py:1171 +#: cps/admin.py:1192 msgid "LDAP Member User Filter Has Unmatched Parenthesis" msgstr "" -#: cps/admin.py:1178 +#: cps/admin.py:1199 msgid "LDAP CACertificate, Certificate or Key Location is not Valid, Please Enter Correct Path" msgstr "" -#: cps/admin.py:1223 cps/admin.py:1339 cps/admin.py:1437 cps/admin.py:1554 -#: cps/admin.py:1623 cps/editbooks.py:678 cps/editbooks.py:882 -#: cps/editbooks.py:1130 cps/shelf.py:100 cps/shelf.py:160 cps/shelf.py:203 -#: cps/shelf.py:278 cps/shelf.py:343 cps/shelf.py:380 cps/shelf.py:456 -#: cps/web.py:1742 +#: cps/admin.py:1230 cps/admin.py:1852 +msgid "Add new user" +msgstr "" + +#: cps/admin.py:1239 cps/templates/admin.html:100 +msgid "Edit E-mail Server Settings" +msgstr "" + +#: cps/admin.py:1258 +msgid "Gmail Account Verification Successful" +msgstr "" + +#: cps/admin.py:1277 cps/admin.py:1658 cps/admin.py:1775 cps/admin.py:1873 +#: cps/admin.py:1990 cps/editbooks.py:227 cps/editbooks.py:301 +#: cps/editbooks.py:1196 cps/shelf.py:82 cps/shelf.py:142 cps/shelf.py:185 +#: cps/shelf.py:235 cps/shelf.py:272 cps/shelf.py:343 cps/shelf.py:457 +#: cps/tasks/convert.py:136 cps/web.py:1413 #, python-format msgid "Database error: %(error)s." msgstr "" -#: cps/admin.py:1235 -msgid "DB Location is not Valid, Please Enter Correct Path" -msgstr "" - -#: cps/admin.py:1253 -msgid "DB is not Writeable" -msgstr "" - -#: cps/admin.py:1266 -msgid "Keyfile Location is not Valid, Please Enter Correct Path" -msgstr "" - -#: cps/admin.py:1270 -msgid "Certfile Location is not Valid, Please Enter Correct Path" -msgstr "" - -#: cps/admin.py:1378 -msgid "Database Settings updated" -msgstr "" - -#: cps/admin.py:1386 -msgid "Database Configuration" -msgstr "" - -#: cps/admin.py:1402 cps/web.py:1557 -msgid "Please fill out all fields!" -msgstr "" - -#: cps/admin.py:1410 -msgid "E-mail is not from valid domain" -msgstr "" - -#: cps/admin.py:1416 cps/admin.py:1576 -msgid "Add new user" -msgstr "" - -#: cps/admin.py:1427 -#, python-format -msgid "User '%(user)s' created" -msgstr "" - -#: cps/admin.py:1433 -msgid "Found an existing account for this e-mail address or name." -msgstr "" - -#: cps/admin.py:1463 -#, python-format -msgid "User '%(nick)s' deleted" -msgstr "" - -#: cps/admin.py:1465 cps/admin.py:1466 -msgid "Can't delete Guest User" -msgstr "" - -#: cps/admin.py:1469 -msgid "No admin user remaining, can't delete user" -msgstr "" - -#: cps/admin.py:1542 cps/admin.py:1667 -#, python-format -msgid "Edit User %(nick)s" -msgstr "" - -#: cps/admin.py:1546 -#, python-format -msgid "User '%(nick)s' updated" -msgstr "" - -#: cps/admin.py:1550 cps/admin.py:1682 cps/web.py:1582 cps/web.py:1642 -msgid "An unknown error occurred. Please try again later." -msgstr "" - -#: cps/admin.py:1585 cps/templates/admin.html:100 -msgid "Edit E-mail Server Settings" -msgstr "" - -#: cps/admin.py:1604 -msgid "Gmail Account Verification Successful" -msgstr "" - -#: cps/admin.py:1630 +#: cps/admin.py:1284 #, python-format msgid "Test e-mail queued for sending to %(email)s, please check Tasks for result" msgstr "" -#: cps/admin.py:1633 +#: cps/admin.py:1287 #, python-format msgid "There was an error sending the Test e-mail: %(res)s" msgstr "" -#: cps/admin.py:1635 +#: cps/admin.py:1289 msgid "Please configure your e-mail address first..." msgstr "" -#: cps/admin.py:1637 +#: cps/admin.py:1291 msgid "E-mail server settings updated" msgstr "" -#: cps/admin.py:1679 +#: cps/admin.py:1314 cps/templates/admin.html:191 +msgid "Edit Scheduled Tasks Settings" +msgstr "" + +#: cps/admin.py:1326 +msgid "Invalid start time for task specified" +msgstr "" + +#: cps/admin.py:1331 +msgid "Invalid duration for task specified" +msgstr "" + +#: cps/admin.py:1340 +msgid "Scheduled tasks settings updated" +msgstr "" + +#: cps/admin.py:1350 cps/admin.py:1399 cps/admin.py:1986 cps/web.py:1254 +#: cps/web.py:1315 +msgid "An unknown error occurred. Please try again later." +msgstr "" + +#: cps/admin.py:1354 +msgid "Settings DB is not Writeable" +msgstr "" + +#: cps/admin.py:1384 cps/admin.py:1978 +#, python-format +msgid "Edit User %(nick)s" +msgstr "" + +#: cps/admin.py:1396 #, python-format msgid "Password for user %(user)s reset" msgstr "" -#: cps/admin.py:1685 cps/web.py:1522 +#: cps/admin.py:1402 cps/web.py:1194 msgid "Please configure the SMTP mail settings first..." msgstr "" -#: cps/admin.py:1696 +#: cps/admin.py:1413 msgid "Logfile viewer" msgstr "" -#: cps/admin.py:1762 +#: cps/admin.py:1479 msgid "Requesting update package" msgstr "" -#: cps/admin.py:1763 +#: cps/admin.py:1480 msgid "Downloading update package" msgstr "" -#: cps/admin.py:1764 +#: cps/admin.py:1481 msgid "Unzipping update package" msgstr "" -#: cps/admin.py:1765 +#: cps/admin.py:1482 msgid "Replacing files" msgstr "" -#: cps/admin.py:1766 +#: cps/admin.py:1483 msgid "Database connections are closed" msgstr "" -#: cps/admin.py:1767 +#: cps/admin.py:1484 msgid "Stopping server" msgstr "" -#: cps/admin.py:1768 +#: cps/admin.py:1485 msgid "Update finished, please press okay and reload page" msgstr "" -#: cps/admin.py:1769 cps/admin.py:1770 cps/admin.py:1771 cps/admin.py:1772 -#: cps/admin.py:1773 cps/admin.py:1774 +#: cps/admin.py:1486 cps/admin.py:1487 cps/admin.py:1488 cps/admin.py:1489 +#: cps/admin.py:1490 cps/admin.py:1491 msgid "Update failed:" msgstr "" -#: cps/admin.py:1769 cps/updater.py:384 cps/updater.py:619 cps/updater.py:621 +#: cps/admin.py:1486 cps/updater.py:389 cps/updater.py:624 cps/updater.py:626 msgid "HTTP Error" msgstr "" -#: cps/admin.py:1770 cps/updater.py:386 cps/updater.py:623 +#: cps/admin.py:1487 cps/updater.py:391 cps/updater.py:628 msgid "Connection error" msgstr "" -#: cps/admin.py:1771 cps/updater.py:388 cps/updater.py:625 +#: cps/admin.py:1488 cps/updater.py:393 cps/updater.py:630 msgid "Timeout while establishing connection" msgstr "" -#: cps/admin.py:1772 cps/updater.py:390 cps/updater.py:627 +#: cps/admin.py:1489 cps/updater.py:395 cps/updater.py:632 msgid "General error" msgstr "" -#: cps/admin.py:1773 +#: cps/admin.py:1490 msgid "Update file could not be saved in temp dir" msgstr "" -#: cps/admin.py:1774 +#: cps/admin.py:1491 msgid "Files could not be replaced during update" msgstr "" -#: cps/admin.py:1798 +#: cps/admin.py:1515 msgid "Failed to extract at least One LDAP User" msgstr "" -#: cps/admin.py:1843 +#: cps/admin.py:1560 msgid "Failed to Create at Least One LDAP User" msgstr "" -#: cps/admin.py:1856 +#: cps/admin.py:1573 #, python-format msgid "Error: %(ldaperror)s" msgstr "" -#: cps/admin.py:1860 +#: cps/admin.py:1577 msgid "Error: No user returned in response of LDAP server" msgstr "" -#: cps/admin.py:1893 +#: cps/admin.py:1610 msgid "At Least One LDAP User Not Found in Database" msgstr "" -#: cps/admin.py:1895 +#: cps/admin.py:1612 msgid "{} User Successfully Imported" msgstr "" -#: cps/converter.py:30 -msgid "not installed" +#: cps/admin.py:1670 +msgid "DB Location is not Valid, Please Enter Correct Path" +msgstr "" + +#: cps/admin.py:1689 +msgid "DB is not Writeable" +msgstr "" + +#: cps/admin.py:1702 +msgid "Keyfile Location is not Valid, Please Enter Correct Path" +msgstr "" + +#: cps/admin.py:1706 +msgid "Certfile Location is not Valid, Please Enter Correct Path" +msgstr "" + +#: cps/admin.py:1814 +msgid "Database Settings updated" +msgstr "" + +#: cps/admin.py:1822 +msgid "Database Configuration" +msgstr "" + +#: cps/admin.py:1838 cps/web.py:1229 +msgid "Please fill out all fields!" +msgstr "" + +#: cps/admin.py:1846 +msgid "E-mail is not from valid domain" +msgstr "" + +#: cps/admin.py:1863 +#, python-format +msgid "User '%(user)s' created" +msgstr "" + +#: cps/admin.py:1869 +msgid "Found an existing account for this e-mail address or name." +msgstr "" + +#: cps/admin.py:1899 +#, python-format +msgid "User '%(nick)s' deleted" +msgstr "" + +#: cps/admin.py:1901 cps/admin.py:1902 +msgid "Can't delete Guest User" +msgstr "" + +#: cps/admin.py:1905 +msgid "No admin user remaining, can't delete user" +msgstr "" + +#: cps/admin.py:1982 +#, python-format +msgid "User '%(nick)s' updated" msgstr "" #: cps/converter.py:31 +msgid "not installed" +msgstr "" + +#: cps/converter.py:32 msgid "Execution permissions missing" msgstr "" -#: cps/db.py:674 cps/web.py:710 cps/web.py:1222 +#: cps/db.py:681 cps/search.py:134 cps/web.py:720 #, python-format msgid "Custom Column No.%(column)d is not existing in calibre database" msgstr "" -#: cps/db.py:917 cps/templates/config_edit.html:204 +#: cps/db.py:924 cps/templates/config_edit.html:204 #: cps/templates/config_view_edit.html:62 cps/templates/email_edit.html:41 -#: cps/web.py:551 cps/web.py:585 cps/web.py:646 cps/web.py:671 cps/web.py:1003 -#: cps/web.py:1032 cps/web.py:1066 cps/web.py:1093 cps/web.py:1132 +#: cps/web.py:549 cps/web.py:583 cps/web.py:656 cps/web.py:681 cps/web.py:962 +#: cps/web.py:992 cps/web.py:1027 cps/web.py:1055 cps/web.py:1094 msgid "None" msgstr "" -#: cps/editbooks.py:295 cps/editbooks.py:297 -msgid "Book Format Successfully Deleted" -msgstr "" - -#: cps/editbooks.py:304 cps/editbooks.py:306 -msgid "Book Successfully Deleted" -msgstr "" - -#: cps/editbooks.py:358 -msgid "You are missing permissions to delete books" -msgstr "" - -#: cps/editbooks.py:373 cps/editbooks.py:765 cps/web.py:518 cps/web.py:1783 -#: cps/web.py:1825 cps/web.py:1870 +#: cps/editbooks.py:109 cps/editbooks.py:890 cps/web.py:516 cps/web.py:1454 +#: cps/web.py:1496 cps/web.py:1541 msgid "Oops! Selected book title is unavailable. File does not exist or is not accessible" msgstr "" -#: cps/editbooks.py:408 -msgid "edit metadata" -msgstr "" - -#: cps/editbooks.py:457 -#, python-format -msgid "%(seriesindex)s is not a valid number, skipping" -msgstr "" - -#: cps/editbooks.py:493 cps/editbooks.py:1001 -#, python-format -msgid "'%(langname)s' is not a valid language" -msgstr "" - -#: cps/editbooks.py:634 -msgid "User has no rights to upload additional file formats" -msgstr "" - -#: cps/editbooks.py:639 cps/editbooks.py:1029 -#, python-format -msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" -msgstr "" - -#: cps/editbooks.py:643 cps/editbooks.py:1033 -msgid "File to be uploaded must have an extension" -msgstr "" - -#: cps/editbooks.py:655 -#, python-format -msgid "Failed to create path %(path)s (Permission denied)." -msgstr "" - -#: cps/editbooks.py:660 -#, python-format -msgid "Failed to store file %(file)s." -msgstr "" - -#: cps/editbooks.py:683 -#, python-format -msgid "File format %(ext)s added to %(book)s" -msgstr "" - -#: cps/editbooks.py:697 cps/editbooks.py:809 +#: cps/editbooks.py:153 cps/editbooks.py:1216 msgid "User has no rights to upload cover" msgstr "" -#: cps/editbooks.py:828 +#: cps/editbooks.py:173 cps/editbooks.py:711 msgid "Identifiers are not Case Sensitive, Overwriting Old Identifier" msgstr "" -#: cps/editbooks.py:869 +#: cps/editbooks.py:214 msgid "Metadata successfully updated" msgstr "" -#: cps/editbooks.py:887 +#: cps/editbooks.py:232 msgid "Error editing book: {}" msgstr "" -#: cps/editbooks.py:951 -msgid "Uploaded book probably exists in the library, consider to change before upload new: " -msgstr "" - -#: cps/editbooks.py:1041 -#, python-format -msgid "File %(filename)s could not saved to temp dir" -msgstr "" - -#: cps/editbooks.py:1061 -#, python-format -msgid "Failed to Move Cover File %(file)s: %(error)s" -msgstr "" - -#: cps/editbooks.py:1117 +#: cps/editbooks.py:287 #, python-format msgid "File %(file)s uploaded" msgstr "" -#: cps/editbooks.py:1143 +#: cps/editbooks.py:314 msgid "Source or destination format for conversion missing" msgstr "" -#: cps/editbooks.py:1151 +#: cps/editbooks.py:322 #, python-format msgid "Book successfully queued for converting to %(book_format)s" msgstr "" -#: cps/editbooks.py:1155 +#: cps/editbooks.py:326 #, python-format msgid "There was an error converting this book: %(res)s" msgstr "" +#: cps/editbooks.py:630 +msgid "Uploaded book probably exists in the library, consider to change before upload new: " +msgstr "" + +#: cps/editbooks.py:685 cps/editbooks.py:1010 +#, python-format +msgid "'%(langname)s' is not a valid language" +msgstr "" + +#: cps/editbooks.py:723 cps/editbooks.py:1157 +#, python-format +msgid "File extension '%(ext)s' is not allowed to be uploaded to this server" +msgstr "" + +#: cps/editbooks.py:727 cps/editbooks.py:1161 +msgid "File to be uploaded must have an extension" +msgstr "" + +#: cps/editbooks.py:735 +#, python-format +msgid "File %(filename)s could not saved to temp dir" +msgstr "" + +#: cps/editbooks.py:755 +#, python-format +msgid "Failed to Move Cover File %(file)s: %(error)s" +msgstr "" + +#: cps/editbooks.py:812 cps/editbooks.py:814 +msgid "Book Format Successfully Deleted" +msgstr "" + +#: cps/editbooks.py:821 cps/editbooks.py:823 +msgid "Book Successfully Deleted" +msgstr "" + +#: cps/editbooks.py:875 +msgid "You are missing permissions to delete books" +msgstr "" + +#: cps/editbooks.py:925 +msgid "edit metadata" +msgstr "" + +#: cps/editbooks.py:974 +#, python-format +msgid "%(seriesindex)s is not a valid number, skipping" +msgstr "" + +#: cps/editbooks.py:1152 +msgid "User has no rights to upload additional file formats" +msgstr "" + +#: cps/editbooks.py:1173 +#, python-format +msgid "Failed to create path %(path)s (Permission denied)." +msgstr "" + +#: cps/editbooks.py:1178 +#, python-format +msgid "Failed to store file %(file)s." +msgstr "" + +#: cps/editbooks.py:1201 +#, python-format +msgid "File format %(ext)s added to %(book)s" +msgstr "" + #: cps/gdrive.py:58 msgid "Google Drive setup not completed, try to deactivate and activate Google Drive again" msgstr "" @@ -602,27 +627,27 @@ msgstr "" msgid "Callback domain is not verified, please follow steps to verify domain in google developer console" msgstr "" -#: cps/helper.py:81 +#: cps/helper.py:80 #, python-format msgid "%(format)s format not found for book id: %(book)d" msgstr "" -#: cps/helper.py:87 cps/tasks/convert.py:75 +#: cps/helper.py:86 cps/tasks/convert.py:75 #, python-format msgid "%(format)s not found on Google Drive: %(fn)s" msgstr "" -#: cps/helper.py:92 +#: cps/helper.py:91 #, python-format msgid "%(format)s not found: %(fn)s" msgstr "" -#: cps/helper.py:97 cps/helper.py:221 cps/templates/detail.html:41 -#: cps/templates/detail.html:45 +#: cps/helper.py:96 cps/helper.py:221 cps/templates/detail.html:42 +#: cps/templates/detail.html:46 msgid "Send to Kindle" msgstr "" -#: cps/helper.py:98 cps/helper.py:115 cps/helper.py:223 +#: cps/helper.py:97 cps/helper.py:115 cps/helper.py:223 msgid "This e-mail has been sent via Calibre-Web." msgstr "" @@ -662,130 +687,110 @@ msgstr "" msgid "The requested file could not be read. Maybe wrong permissions?" msgstr "" -#: cps/helper.py:353 +#: cps/helper.py:341 msgid "Read status could not set: {}" msgstr "" -#: cps/helper.py:376 +#: cps/helper.py:364 #, python-format msgid "Deleting bookfolder for book %(id)s failed, path has subfolders: %(path)s" msgstr "" -#: cps/helper.py:382 +#: cps/helper.py:370 #, python-format msgid "Deleting book %(id)s failed: %(message)s" msgstr "" -#: cps/helper.py:393 +#: cps/helper.py:381 #, python-format msgid "Deleting book %(id)s from database only, book path in database not valid: %(path)s" msgstr "" -#: cps/helper.py:458 +#: cps/helper.py:446 #, python-format msgid "Rename author from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgstr "" -#: cps/helper.py:529 cps/helper.py:538 +#: cps/helper.py:518 cps/helper.py:527 #, python-format msgid "File %(file)s not found on Google Drive" msgstr "" -#: cps/helper.py:572 +#: cps/helper.py:561 #, python-format msgid "Rename title from: '%(src)s' to '%(dest)s' failed with error: %(error)s" msgstr "" -#: cps/helper.py:592 +#: cps/helper.py:581 msgid "Error in rename file in path: {}" msgstr "" -#: cps/helper.py:610 +#: cps/helper.py:599 #, python-format msgid "Book path %(path)s not found on Google Drive" msgstr "" -#: cps/helper.py:651 cps/web.py:1737 +#: cps/helper.py:640 cps/web.py:1408 msgid "Found an existing account for this e-mail address" msgstr "" -#: cps/helper.py:659 +#: cps/helper.py:648 msgid "This username is already taken" msgstr "" -#: cps/helper.py:669 +#: cps/helper.py:658 msgid "Invalid e-mail address format" msgstr "" -#: cps/helper.py:754 -msgid "Python modul 'advocate' is not installed but is needed for cover downloads" +#: cps/helper.py:808 +msgid "Python module 'advocate' is not installed but is needed for cover uploads" msgstr "" -#: cps/helper.py:767 +#: cps/helper.py:818 msgid "Error Downloading Cover" msgstr "" -#: cps/helper.py:770 +#: cps/helper.py:821 msgid "Cover Format Error" msgstr "" -#: cps/helper.py:773 +#: cps/helper.py:824 msgid "You are not allowed to access localhost or the local network for cover uploads" msgstr "" -#: cps/helper.py:783 +#: cps/helper.py:834 msgid "Failed to create path for cover" msgstr "" -#: cps/helper.py:799 +#: cps/helper.py:850 msgid "Cover-file is not a valid image file, or could not be stored" msgstr "" -#: cps/helper.py:810 +#: cps/helper.py:861 msgid "Only jpg/jpeg/png/webp/bmp files are supported as coverfile" msgstr "" -#: cps/helper.py:822 +#: cps/helper.py:873 msgid "Invalid cover file content" msgstr "" -#: cps/helper.py:826 +#: cps/helper.py:877 msgid "Only jpg/jpeg files are supported as coverfile" msgstr "" -#: cps/helper.py:878 +#: cps/helper.py:929 msgid "Unrar binary file not found" msgstr "" -#: cps/helper.py:889 +#: cps/helper.py:940 msgid "Error excecuting UnRar" msgstr "" -#: cps/helper.py:937 -msgid "Waiting" -msgstr "" - -#: cps/helper.py:939 -msgid "Failed" -msgstr "" - -#: cps/helper.py:941 -msgid "Started" -msgstr "" - -#: cps/helper.py:943 -msgid "Finished" -msgstr "" - -#: cps/helper.py:945 -msgid "Unknown Status" -msgstr "" - -#: cps/kobo_auth.py:128 +#: cps/kobo_auth.py:89 msgid "Please access Calibre-Web from non localhost to get valid api_endpoint for kobo device" msgstr "" -#: cps/kobo_auth.py:154 +#: cps/kobo_auth.py:115 msgid "Kobo Setup" msgstr "" @@ -794,7 +799,7 @@ msgstr "" msgid "Register with %(provider)s" msgstr "" -#: cps/oauth_bb.py:138 cps/remotelogin.py:130 cps/web.py:1613 +#: cps/oauth_bb.py:138 cps/remotelogin.py:130 cps/web.py:1286 #, python-format msgid "you are now logged in as: '%(nickname)s'" msgstr "" @@ -855,12 +860,12 @@ msgstr "" msgid "Google Oauth error: {}" msgstr "" -#: cps/opds.py:298 +#: cps/opds.py:287 msgid "{} Stars" msgstr "" -#: cps/remotelogin.py:62 cps/templates/layout.html:84 -#: cps/templates/login.html:4 cps/templates/login.html:21 cps/web.py:1662 +#: cps/remotelogin.py:62 cps/templates/layout.html:85 +#: cps/templates/login.html:4 cps/templates/login.html:21 cps/web.py:1335 msgid "Login" msgstr "" @@ -876,453 +881,486 @@ msgstr "" msgid "Success! Please return to your device" msgstr "" -#: cps/render_template.py:41 cps/web.py:407 +#: cps/render_template.py:40 cps/web.py:405 msgid "Books" msgstr "" -#: cps/render_template.py:43 +#: cps/render_template.py:42 msgid "Show recent books" msgstr "" -#: cps/render_template.py:44 cps/templates/index.xml:25 +#: cps/render_template.py:43 cps/templates/index.xml:25 msgid "Hot Books" msgstr "" -#: cps/render_template.py:46 +#: cps/render_template.py:45 msgid "Show Hot Books" msgstr "" -#: cps/render_template.py:48 cps/render_template.py:53 +#: cps/render_template.py:47 cps/render_template.py:52 msgid "Downloaded Books" msgstr "" -#: cps/render_template.py:50 cps/render_template.py:55 +#: cps/render_template.py:49 cps/render_template.py:54 #: cps/templates/user_table.html:167 msgid "Show Downloaded Books" msgstr "" -#: cps/render_template.py:58 cps/templates/index.xml:32 cps/web.py:422 +#: cps/render_template.py:57 cps/templates/index.xml:32 cps/web.py:420 msgid "Top Rated Books" msgstr "" -#: cps/render_template.py:60 cps/templates/user_table.html:161 +#: cps/render_template.py:59 cps/templates/user_table.html:161 msgid "Show Top Rated Books" msgstr "" -#: cps/render_template.py:61 cps/templates/index.xml:54 -#: cps/templates/index.xml:58 cps/web.py:729 +#: cps/render_template.py:60 cps/templates/index.xml:54 +#: cps/templates/index.xml:58 cps/web.py:739 msgid "Read Books" msgstr "" -#: cps/render_template.py:63 +#: cps/render_template.py:62 msgid "Show read and unread" msgstr "" -#: cps/render_template.py:65 cps/templates/index.xml:61 -#: cps/templates/index.xml:65 cps/web.py:732 +#: cps/render_template.py:64 cps/templates/index.xml:61 +#: cps/templates/index.xml:65 cps/web.py:742 msgid "Unread Books" msgstr "" -#: cps/render_template.py:67 +#: cps/render_template.py:66 msgid "Show unread" msgstr "" -#: cps/render_template.py:68 +#: cps/render_template.py:67 msgid "Discover" msgstr "" -#: cps/render_template.py:70 cps/templates/index.xml:50 +#: cps/render_template.py:69 cps/templates/index.xml:50 #: cps/templates/user_table.html:162 msgid "Show Random Books" msgstr "" -#: cps/render_template.py:71 cps/templates/book_table.html:67 -#: cps/templates/index.xml:83 cps/web.py:1135 +#: cps/render_template.py:70 cps/templates/book_table.html:67 +#: cps/templates/index.xml:83 cps/web.py:1098 msgid "Categories" msgstr "" -#: cps/render_template.py:73 cps/templates/user_table.html:158 +#: cps/render_template.py:72 cps/templates/user_table.html:158 msgid "Show category selection" msgstr "" -#: cps/render_template.py:74 cps/templates/book_edit.html:90 +#: cps/render_template.py:73 cps/templates/book_edit.html:91 #: cps/templates/book_table.html:68 cps/templates/index.xml:90 -#: cps/templates/search_form.html:69 cps/web.py:1034 cps/web.py:1041 +#: cps/templates/search_form.html:69 cps/web.py:995 cps/web.py:1002 msgid "Series" msgstr "" -#: cps/render_template.py:76 cps/templates/user_table.html:157 +#: cps/render_template.py:75 cps/templates/user_table.html:157 msgid "Show series selection" msgstr "" -#: cps/render_template.py:77 cps/templates/book_table.html:66 +#: cps/render_template.py:76 cps/templates/book_table.html:66 #: cps/templates/index.xml:69 msgid "Authors" msgstr "" -#: cps/render_template.py:79 cps/templates/user_table.html:160 +#: cps/render_template.py:78 cps/templates/user_table.html:160 msgid "Show author selection" msgstr "" -#: cps/render_template.py:81 cps/templates/book_table.html:72 -#: cps/templates/index.xml:76 cps/web.py:1006 +#: cps/render_template.py:80 cps/templates/book_table.html:72 +#: cps/templates/index.xml:76 cps/web.py:966 msgid "Publishers" msgstr "" -#: cps/render_template.py:83 cps/templates/user_table.html:163 +#: cps/render_template.py:82 cps/templates/user_table.html:163 msgid "Show publisher selection" msgstr "" -#: cps/render_template.py:84 cps/templates/book_table.html:70 +#: cps/render_template.py:83 cps/templates/book_table.html:70 #: cps/templates/index.xml:97 cps/templates/search_form.html:107 -#: cps/web.py:1108 +#: cps/web.py:1070 msgid "Languages" msgstr "" -#: cps/render_template.py:87 cps/templates/user_table.html:155 +#: cps/render_template.py:86 cps/templates/user_table.html:155 msgid "Show language selection" msgstr "" -#: cps/render_template.py:88 cps/templates/index.xml:104 +#: cps/render_template.py:87 cps/templates/index.xml:104 msgid "Ratings" msgstr "" -#: cps/render_template.py:90 cps/templates/user_table.html:164 +#: cps/render_template.py:89 cps/templates/user_table.html:164 msgid "Show ratings selection" msgstr "" -#: cps/render_template.py:91 cps/templates/index.xml:112 +#: cps/render_template.py:90 cps/templates/index.xml:112 msgid "File formats" msgstr "" -#: cps/render_template.py:93 cps/templates/user_table.html:165 +#: cps/render_template.py:92 cps/templates/user_table.html:165 msgid "Show file formats selection" msgstr "" -#: cps/render_template.py:95 cps/web.py:755 +#: cps/render_template.py:94 cps/web.py:765 msgid "Archived Books" msgstr "" -#: cps/render_template.py:97 cps/templates/user_table.html:166 +#: cps/render_template.py:96 cps/templates/user_table.html:166 msgid "Show archived books" msgstr "" -#: cps/render_template.py:100 cps/web.py:837 +#: cps/render_template.py:99 cps/web.py:796 msgid "Books List" msgstr "" -#: cps/render_template.py:102 cps/templates/user_table.html:168 +#: cps/render_template.py:101 cps/templates/user_table.html:168 msgid "Show Books List" msgstr "" -#: cps/shelf.py:67 cps/shelf.py:121 -msgid "Invalid shelf specified" -msgstr "" - -#: cps/shelf.py:73 -msgid "Sorry you are not allowed to add a book to that shelf" -msgstr "" - -#: cps/shelf.py:82 -#, python-format -msgid "Book is already part of the shelf: %(shelfname)s" -msgstr "" - -#: cps/shelf.py:107 -#, python-format -msgid "Book has been added to shelf: %(sname)s" -msgstr "" - -#: cps/shelf.py:126 -msgid "You are not allowed to add a book to the shelf" -msgstr "" - -#: cps/shelf.py:144 -#, python-format -msgid "Books are already part of the shelf: %(name)s" -msgstr "" - -#: cps/shelf.py:156 -#, python-format -msgid "Books have been added to shelf: %(sname)s" -msgstr "" - -#: cps/shelf.py:163 -#, python-format -msgid "Could not add books to shelf: %(sname)s" -msgstr "" - -#: cps/shelf.py:209 -#, python-format -msgid "Book has been removed from shelf: %(sname)s" -msgstr "" - -#: cps/shelf.py:218 -msgid "Sorry you are not allowed to remove a book from this shelf" -msgstr "" - -#: cps/shelf.py:228 cps/templates/layout.html:140 -msgid "Create a Shelf" -msgstr "" - -#: cps/shelf.py:236 -msgid "Sorry you are not allowed to edit this shelf" -msgstr "" - -#: cps/shelf.py:238 -msgid "Edit a shelf" -msgstr "" - -#: cps/shelf.py:248 -msgid "Sorry you are not allowed to create a public shelf" -msgstr "" - -#: cps/shelf.py:265 -#, python-format -msgid "Shelf %(title)s created" -msgstr "" - -#: cps/shelf.py:268 -#, python-format -msgid "Shelf %(title)s changed" -msgstr "" - -#: cps/shelf.py:282 -msgid "There was an error" -msgstr "" - -#: cps/shelf.py:304 -#, python-format -msgid "A public shelf with the name '%(title)s' already exists." -msgstr "" - -#: cps/shelf.py:315 -#, python-format -msgid "A private shelf with the name '%(title)s' already exists." -msgstr "" - -#: cps/shelf.py:337 -msgid "Error deleting Shelf" -msgstr "" - -#: cps/shelf.py:339 -msgid "Shelf successfully deleted" -msgstr "" - -#: cps/shelf.py:389 -#, python-format -msgid "Change order of Shelf: '%(name)s'" -msgstr "" - -#: cps/shelf.py:461 -#, python-format -msgid "Shelf: '%(name)s'" -msgstr "" - -#: cps/shelf.py:465 -msgid "Error opening shelf. Shelf does not exist or is not accessible" -msgstr "" - -#: cps/updater.py:426 cps/updater.py:437 cps/updater.py:538 cps/updater.py:553 -msgid "Unexpected data while reading update information" -msgstr "" - -#: cps/updater.py:433 cps/updater.py:545 -msgid "No update available. You already have the latest version installed" -msgstr "" - -#: cps/updater.py:451 -msgid "A new update is available. Click on the button below to update to the latest version." -msgstr "" - -#: cps/updater.py:469 -msgid "Could not fetch update information" -msgstr "" - -#: cps/updater.py:479 -msgid "Click on the button below to update to the latest stable version." -msgstr "" - -#: cps/updater.py:488 cps/updater.py:502 cps/updater.py:513 -#, python-format -msgid "A new update is available. Click on the button below to update to version: %(version)s" -msgstr "" - -#: cps/updater.py:531 -msgid "No release information available" -msgstr "" - -#: cps/templates/index.html:5 cps/web.py:434 -msgid "Discover (Random Books)" -msgstr "" - -#: cps/web.py:470 -msgid "Hot Books (Most Downloaded)" -msgstr "" - -#: cps/web.py:501 -#, python-format -msgid "Downloaded books by %(user)s" -msgstr "" - -#: cps/web.py:534 -#, python-format -msgid "Author: %(name)s" -msgstr "" - -#: cps/web.py:570 -#, python-format -msgid "Publisher: %(name)s" -msgstr "" - -#: cps/web.py:598 -#, python-format -msgid "Series: %(serie)s" -msgstr "" - -#: cps/web.py:610 -#, python-format -msgid "Rating: %(rating)s stars" -msgstr "" - -#: cps/web.py:626 -#, python-format -msgid "File format: %(format)s" -msgstr "" - -#: cps/web.py:663 -#, python-format -msgid "Category: %(name)s" -msgstr "" - -#: cps/web.py:690 -#, python-format -msgid "Language: %(name)s" -msgstr "" - -#: cps/templates/layout.html:56 cps/web.py:789 cps/web.py:1444 -msgid "Advanced Search" -msgstr "" - -#: cps/templates/book_edit.html:235 cps/templates/feed.xml:33 -#: cps/templates/index.xml:11 cps/templates/layout.html:45 -#: cps/templates/layout.html:48 cps/templates/search_form.html:226 -#: cps/web.py:807 cps/web.py:1164 +#: cps/search.py:48 cps/search.py:414 cps/templates/book_edit.html:236 +#: cps/templates/feed.xml:33 cps/templates/index.xml:11 +#: cps/templates/layout.html:46 cps/templates/layout.html:49 +#: cps/templates/search_form.html:226 msgid "Search" msgstr "" -#: cps/templates/admin.html:16 cps/web.py:979 -msgid "Downloads" -msgstr "" - -#: cps/web.py:1068 -msgid "Ratings list" -msgstr "" - -#: cps/web.py:1095 -msgid "File formats list" -msgstr "" - -#: cps/templates/layout.html:73 cps/templates/tasks.html:7 cps/web.py:1149 -msgid "Tasks" -msgstr "" - -#: cps/web.py:1286 +#: cps/search.py:194 msgid "Published after " msgstr "" -#: cps/web.py:1293 +#: cps/search.py:201 msgid "Published before " msgstr "" -#: cps/web.py:1315 +#: cps/search.py:223 #, python-format msgid "Rating <= %(rating)s" msgstr "" -#: cps/web.py:1317 +#: cps/search.py:225 #, python-format msgid "Rating >= %(rating)s" msgstr "" -#: cps/web.py:1319 +#: cps/search.py:227 #, python-format msgid "Read Status = %(status)s" msgstr "" -#: cps/web.py:1425 +#: cps/search.py:345 msgid "Error on search for custom columns, please restart Calibre-Web" msgstr "" -#: cps/web.py:1527 +#: cps/search.py:364 cps/search.py:396 cps/templates/layout.html:57 +msgid "Advanced Search" +msgstr "" + +#: cps/shelf.py:49 cps/shelf.py:103 +msgid "Invalid shelf specified" +msgstr "" + +#: cps/shelf.py:55 +msgid "Sorry you are not allowed to add a book to that shelf" +msgstr "" + +#: cps/shelf.py:64 +#, python-format +msgid "Book is already part of the shelf: %(shelfname)s" +msgstr "" + +#: cps/shelf.py:89 +#, python-format +msgid "Book has been added to shelf: %(sname)s" +msgstr "" + +#: cps/shelf.py:108 +msgid "You are not allowed to add a book to the shelf" +msgstr "" + +#: cps/shelf.py:126 +#, python-format +msgid "Books are already part of the shelf: %(name)s" +msgstr "" + +#: cps/shelf.py:138 +#, python-format +msgid "Books have been added to shelf: %(sname)s" +msgstr "" + +#: cps/shelf.py:145 +#, python-format +msgid "Could not add books to shelf: %(sname)s" +msgstr "" + +#: cps/shelf.py:191 +#, python-format +msgid "Book has been removed from shelf: %(sname)s" +msgstr "" + +#: cps/shelf.py:200 +msgid "Sorry you are not allowed to remove a book from this shelf" +msgstr "" + +#: cps/shelf.py:210 cps/templates/layout.html:141 +msgid "Create a Shelf" +msgstr "" + +#: cps/shelf.py:218 +msgid "Sorry you are not allowed to edit this shelf" +msgstr "" + +#: cps/shelf.py:220 +msgid "Edit a shelf" +msgstr "" + +#: cps/shelf.py:229 +msgid "Error deleting Shelf" +msgstr "" + +#: cps/shelf.py:231 +msgid "Shelf successfully deleted" +msgstr "" + +#: cps/shelf.py:281 +#, python-format +msgid "Change order of Shelf: '%(name)s'" +msgstr "" + +#: cps/shelf.py:313 +msgid "Sorry you are not allowed to create a public shelf" +msgstr "" + +#: cps/shelf.py:330 +#, python-format +msgid "Shelf %(title)s created" +msgstr "" + +#: cps/shelf.py:333 +#, python-format +msgid "Shelf %(title)s changed" +msgstr "" + +#: cps/shelf.py:347 +msgid "There was an error" +msgstr "" + +#: cps/shelf.py:369 +#, python-format +msgid "A public shelf with the name '%(title)s' already exists." +msgstr "" + +#: cps/shelf.py:380 +#, python-format +msgid "A private shelf with the name '%(title)s' already exists." +msgstr "" + +#: cps/shelf.py:462 +#, python-format +msgid "Shelf: '%(name)s'" +msgstr "" + +#: cps/shelf.py:466 +msgid "Error opening shelf. Shelf does not exist or is not accessible" +msgstr "" + +#: cps/tasks_status.py:48 cps/templates/layout.html:74 +#: cps/templates/tasks.html:7 +msgid "Tasks" +msgstr "" + +#: cps/tasks_status.py:64 +msgid "Waiting" +msgstr "" + +#: cps/tasks_status.py:66 +msgid "Failed" +msgstr "" + +#: cps/tasks_status.py:68 +msgid "Started" +msgstr "" + +#: cps/tasks_status.py:70 +msgid "Finished" +msgstr "" + +#: cps/tasks_status.py:72 +msgid "Ended" +msgstr "" + +#: cps/tasks_status.py:74 +msgid "Cancelled" +msgstr "" + +#: cps/tasks_status.py:76 +msgid "Unknown Status" +msgstr "" + +#: cps/updater.py:431 cps/updater.py:442 cps/updater.py:543 cps/updater.py:558 +msgid "Unexpected data while reading update information" +msgstr "" + +#: cps/updater.py:438 cps/updater.py:550 +msgid "No update available. You already have the latest version installed" +msgstr "" + +#: cps/updater.py:456 +msgid "A new update is available. Click on the button below to update to the latest version." +msgstr "" + +#: cps/updater.py:474 +msgid "Could not fetch update information" +msgstr "" + +#: cps/updater.py:484 +msgid "Click on the button below to update to the latest stable version." +msgstr "" + +#: cps/updater.py:493 cps/updater.py:507 cps/updater.py:518 +#, python-format +msgid "A new update is available. Click on the button below to update to version: %(version)s" +msgstr "" + +#: cps/updater.py:536 +msgid "No release information available" +msgstr "" + +#: cps/templates/index.html:6 cps/web.py:432 +msgid "Discover (Random Books)" +msgstr "" + +#: cps/web.py:468 +msgid "Hot Books (Most Downloaded)" +msgstr "" + +#: cps/web.py:499 +#, python-format +msgid "Downloaded books by %(user)s" +msgstr "" + +#: cps/web.py:532 +#, python-format +msgid "Author: %(name)s" +msgstr "" + +#: cps/web.py:568 +#, python-format +msgid "Publisher: %(name)s" +msgstr "" + +#: cps/web.py:596 +#, python-format +msgid "Series: %(serie)s" +msgstr "" + +#: cps/web.py:609 +msgid "Rating: None" +msgstr "" + +#: cps/web.py:618 +#, python-format +msgid "Rating: %(rating)s stars" +msgstr "" + +#: cps/web.py:636 +#, python-format +msgid "File format: %(format)s" +msgstr "" + +#: cps/web.py:673 +#, python-format +msgid "Category: %(name)s" +msgstr "" + +#: cps/web.py:700 +#, python-format +msgid "Language: %(name)s" +msgstr "" + +#: cps/templates/admin.html:16 cps/web.py:938 +msgid "Downloads" +msgstr "" + +#: cps/web.py:1030 +msgid "Ratings list" +msgstr "" + +#: cps/web.py:1057 +msgid "File formats list" +msgstr "" + +#: cps/web.py:1199 #, python-format msgid "Book successfully queued for sending to %(kindlemail)s" msgstr "" -#: cps/web.py:1531 +#: cps/web.py:1203 #, python-format msgid "Oops! There was an error sending this book: %(res)s" msgstr "" -#: cps/web.py:1533 +#: cps/web.py:1205 msgid "Please update your profile with a valid Send to Kindle E-mail Address." msgstr "" -#: cps/web.py:1550 +#: cps/web.py:1222 msgid "E-Mail server is not configured, please contact your administrator!" msgstr "" -#: cps/templates/layout.html:85 cps/templates/register.html:17 cps/web.py:1551 -#: cps/web.py:1558 cps/web.py:1564 cps/web.py:1583 cps/web.py:1587 -#: cps/web.py:1593 +#: cps/templates/layout.html:86 cps/templates/register.html:17 cps/web.py:1223 +#: cps/web.py:1230 cps/web.py:1236 cps/web.py:1255 cps/web.py:1260 +#: cps/web.py:1266 msgid "Register" msgstr "" -#: cps/web.py:1585 +#: cps/web.py:1257 msgid "Your e-mail is not allowed to register" msgstr "" -#: cps/web.py:1588 +#: cps/web.py:1261 msgid "Confirmation e-mail was send to your e-mail account." msgstr "" -#: cps/web.py:1602 +#: cps/web.py:1275 msgid "Cannot activate LDAP authentication" msgstr "" -#: cps/web.py:1621 +#: cps/web.py:1294 #, python-format msgid "Fallback Login as: '%(nickname)s', LDAP Server not reachable, or user not known" msgstr "" -#: cps/web.py:1627 +#: cps/web.py:1300 #, python-format msgid "Could not login: %(message)s" msgstr "" -#: cps/web.py:1631 cps/web.py:1656 +#: cps/web.py:1304 cps/web.py:1329 msgid "Wrong Username or Password" msgstr "" -#: cps/web.py:1638 +#: cps/web.py:1311 msgid "New Password was send to your email address" msgstr "" -#: cps/web.py:1644 +#: cps/web.py:1317 msgid "Please enter valid username to reset password" msgstr "" -#: cps/web.py:1651 +#: cps/web.py:1324 #, python-format msgid "You are now logged in as: '%(nickname)s'" msgstr "" -#: cps/web.py:1717 cps/web.py:1766 +#: cps/web.py:1388 cps/web.py:1437 #, python-format msgid "%(name)s's profile" msgstr "" -#: cps/web.py:1733 +#: cps/web.py:1404 msgid "Profile updated" msgstr "" @@ -1330,40 +1368,75 @@ msgstr "" msgid "Found no valid gmail.json file with OAuth information" msgstr "" -#: cps/tasks/convert.py:154 +#: cps/tasks/convert.py:153 #, python-format msgid "Calibre ebook-convert %(tool)s not found" msgstr "" -#: cps/tasks/convert.py:187 +#: cps/tasks/convert.py:186 #, python-format msgid "%(format)s format not found on disk" msgstr "" -#: cps/tasks/convert.py:191 +#: cps/tasks/convert.py:190 msgid "Ebook converter failed with unknown error" msgstr "" -#: cps/tasks/convert.py:201 +#: cps/tasks/convert.py:200 #, python-format msgid "Kepubify-converter failed: %(error)s" msgstr "" -#: cps/tasks/convert.py:223 +#: cps/tasks/convert.py:222 #, python-format msgid "Converted file not found or more than one file in folder %(folder)s" msgstr "" -#: cps/tasks/convert.py:246 +#: cps/tasks/convert.py:245 #, python-format msgid "Ebook-converter failed: %(error)s" msgstr "" -#: cps/tasks/convert.py:269 +#: cps/tasks/convert.py:268 #, python-format msgid "Calibre failed with error: %(error)s" msgstr "" +#: cps/tasks/convert.py:273 +msgid "Convert" +msgstr "" + +#: cps/tasks/database.py:28 +msgid "Reconnecting Calibre database" +msgstr "" + +#: cps/tasks/mail.py:265 +msgid "E-mail" +msgstr "" + +#: cps/tasks/thumbnail.py:95 +#, python-format +msgid "Generated %(count)s cover thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:222 cps/tasks/thumbnail.py:435 +#: cps/tasks/thumbnail.py:503 +msgid "Cover Thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:281 +msgid "Generated {0} series thumbnails" +msgstr "" + +#: cps/tasks/thumbnail.py:446 +msgid "Clearing cover thumbnail cache" +msgstr "" + +#: cps/tasks/upload.py:38 cps/templates/admin.html:20 +#: cps/templates/layout.html:67 cps/templates/user_table.html:145 +msgid "Upload" +msgstr "" + #: cps/templates/admin.html:9 msgid "Users" msgstr "" @@ -1383,7 +1456,7 @@ msgstr "" msgid "Send to Kindle E-mail Address" msgstr "" -#: cps/templates/admin.html:17 cps/templates/layout.html:76 +#: cps/templates/admin.html:17 cps/templates/layout.html:77 #: cps/templates/user_table.html:143 msgid "Admin" msgstr "" @@ -1393,13 +1466,8 @@ msgstr "" msgid "Password" msgstr "" -#: cps/templates/admin.html:20 cps/templates/layout.html:66 -#: cps/templates/user_table.html:145 -msgid "Upload" -msgstr "" - -#: cps/templates/admin.html:22 cps/templates/detail.html:18 -#: cps/templates/detail.html:27 cps/templates/shelf.html:7 +#: cps/templates/admin.html:22 cps/templates/detail.html:19 +#: cps/templates/detail.html:28 cps/templates/shelf.html:8 #: cps/templates/user_table.html:146 msgid "Download" msgstr "" @@ -1413,7 +1481,7 @@ msgstr "" msgid "Edit" msgstr "" -#: cps/templates/admin.html:25 cps/templates/book_edit.html:16 +#: cps/templates/admin.html:25 cps/templates/book_edit.html:17 #: cps/templates/book_table.html:100 cps/templates/modal_dialogs.html:63 #: cps/templates/modal_dialogs.html:116 cps/templates/user_edit.html:67 #: cps/templates/user_table.html:149 @@ -1525,78 +1593,107 @@ msgstr "" msgid "Edit UI Configuration" msgstr "" -#: cps/templates/admin.html:166 -msgid "Administration" -msgstr "" - #: cps/templates/admin.html:167 -msgid "Download Debug Package" +msgid "Scheduled Tasks" msgstr "" -#: cps/templates/admin.html:168 -msgid "View Logs" +#: cps/templates/admin.html:170 cps/templates/schedule_edit.html:12 +msgid "Time at which tasks start to run" msgstr "" -#: cps/templates/admin.html:171 -msgid "Reconnect Calibre Database" -msgstr "" - -#: cps/templates/admin.html:172 -msgid "Restart" -msgstr "" - -#: cps/templates/admin.html:173 -msgid "Shutdown" +#: cps/templates/admin.html:174 cps/templates/schedule_edit.html:20 +msgid "Maximum tasks duration" msgstr "" #: cps/templates/admin.html:178 -msgid "Update" +msgid "Generate book cover thumbnails" msgstr "" #: cps/templates/admin.html:182 +msgid "Generate series cover thumbnails" +msgstr "" + +#: cps/templates/admin.html:186 cps/templates/schedule_edit.html:37 +msgid "Reconnect to Calibre Library" +msgstr "" + +#: cps/templates/admin.html:193 +msgid "Refresh Thumbnail Cover Cache" +msgstr "" + +#: cps/templates/admin.html:199 +msgid "Administration" +msgstr "" + +#: cps/templates/admin.html:200 +msgid "Download Debug Package" +msgstr "" + +#: cps/templates/admin.html:201 +msgid "View Logs" +msgstr "" + +#: cps/templates/admin.html:204 +msgid "Reconnect Calibre Database" +msgstr "" + +#: cps/templates/admin.html:207 +msgid "Restart" +msgstr "" + +#: cps/templates/admin.html:208 +msgid "Shutdown" +msgstr "" + +#: cps/templates/admin.html:213 +msgid "Version Information" +msgstr "" + +#: cps/templates/admin.html:217 msgid "Version" msgstr "" -#: cps/templates/admin.html:183 +#: cps/templates/admin.html:218 msgid "Details" msgstr "" -#: cps/templates/admin.html:189 +#: cps/templates/admin.html:224 msgid "Current version" msgstr "" -#: cps/templates/admin.html:196 +#: cps/templates/admin.html:231 msgid "Check for Update" msgstr "" -#: cps/templates/admin.html:197 +#: cps/templates/admin.html:232 msgid "Perform Update" msgstr "" -#: cps/templates/admin.html:210 +#: cps/templates/admin.html:245 msgid "Are you sure you want to restart?" msgstr "" -#: cps/templates/admin.html:215 cps/templates/admin.html:229 -#: cps/templates/admin.html:249 cps/templates/config_db.html:70 +#: cps/templates/admin.html:250 cps/templates/admin.html:264 +#: cps/templates/admin.html:284 cps/templates/config_db.html:70 msgid "OK" msgstr "" -#: cps/templates/admin.html:216 cps/templates/admin.html:230 -#: cps/templates/book_edit.html:213 cps/templates/book_table.html:127 +#: cps/templates/admin.html:251 cps/templates/admin.html:265 +#: cps/templates/book_edit.html:214 cps/templates/book_table.html:127 #: cps/templates/config_db.html:54 cps/templates/config_edit.html:359 #: 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/shelf_edit.html:27 +#: cps/templates/modal_dialogs.html:135 cps/templates/schedule_edit.html:41 +#: cps/templates/shelf_edit.html:27 cps/templates/tasks.html:46 #: cps/templates/user_edit.html:144 msgid "Cancel" msgstr "" -#: cps/templates/admin.html:228 +#: cps/templates/admin.html:263 msgid "Are you sure you want to shutdown?" msgstr "" -#: cps/templates/admin.html:240 +#: cps/templates/admin.html:275 msgid "Updating, please do not reload this page" msgstr "" @@ -1608,39 +1705,39 @@ msgstr "" msgid "In Library" msgstr "" -#: cps/templates/author.html:26 cps/templates/index.html:73 -#: cps/templates/search.html:30 cps/templates/shelf.html:19 +#: cps/templates/author.html:26 cps/templates/index.html:74 +#: cps/templates/search.html:31 cps/templates/shelf.html:20 msgid "Sort according to book date, newest first" msgstr "" -#: cps/templates/author.html:27 cps/templates/index.html:74 -#: cps/templates/search.html:31 cps/templates/shelf.html:20 +#: cps/templates/author.html:27 cps/templates/index.html:75 +#: cps/templates/search.html:32 cps/templates/shelf.html:21 msgid "Sort according to book date, oldest first" msgstr "" -#: cps/templates/author.html:28 cps/templates/index.html:75 -#: cps/templates/search.html:32 cps/templates/shelf.html:21 +#: cps/templates/author.html:28 cps/templates/index.html:76 +#: cps/templates/search.html:33 cps/templates/shelf.html:22 msgid "Sort title in alphabetical order" msgstr "" -#: cps/templates/author.html:29 cps/templates/index.html:76 -#: cps/templates/search.html:33 cps/templates/shelf.html:22 +#: cps/templates/author.html:29 cps/templates/index.html:77 +#: cps/templates/search.html:34 cps/templates/shelf.html:23 msgid "Sort title in reverse alphabetical order" msgstr "" -#: cps/templates/author.html:30 cps/templates/index.html:79 -#: cps/templates/search.html:36 cps/templates/shelf.html:25 +#: cps/templates/author.html:30 cps/templates/index.html:80 +#: cps/templates/search.html:37 cps/templates/shelf.html:26 msgid "Sort according to publishing date, newest first" msgstr "" -#: cps/templates/author.html:31 cps/templates/index.html:80 -#: cps/templates/search.html:37 cps/templates/shelf.html:26 +#: cps/templates/author.html:31 cps/templates/index.html:81 +#: cps/templates/search.html:38 cps/templates/shelf.html:27 msgid "Sort according to publishing date, oldest first" msgstr "" #: cps/templates/author.html:56 cps/templates/author.html:115 -#: cps/templates/index.html:29 cps/templates/index.html:112 -#: cps/templates/search.html:66 cps/templates/shelf.html:54 +#: cps/templates/index.html:30 cps/templates/index.html:113 +#: cps/templates/search.html:67 cps/templates/shelf.html:55 msgid "reduce" msgstr "" @@ -1648,164 +1745,165 @@ msgstr "" msgid "More by" msgstr "" -#: cps/templates/book_edit.html:10 +#: cps/templates/book_edit.html:11 msgid "Delete Book" msgstr "" -#: cps/templates/book_edit.html:13 +#: cps/templates/book_edit.html:14 msgid "Delete formats:" msgstr "" -#: cps/templates/book_edit.html:24 +#: cps/templates/book_edit.html:25 msgid "Convert book format:" msgstr "" -#: cps/templates/book_edit.html:29 +#: cps/templates/book_edit.html:30 msgid "Convert from:" msgstr "" -#: cps/templates/book_edit.html:31 cps/templates/book_edit.html:38 +#: cps/templates/book_edit.html:32 cps/templates/book_edit.html:39 msgid "select an option" msgstr "" -#: cps/templates/book_edit.html:36 +#: cps/templates/book_edit.html:37 msgid "Convert to:" msgstr "" -#: cps/templates/book_edit.html:45 +#: cps/templates/book_edit.html:46 msgid "Convert book" msgstr "" -#: cps/templates/book_edit.html:55 cps/templates/search_form.html:8 +#: cps/templates/book_edit.html:56 cps/templates/search_form.html:8 msgid "Book Title" msgstr "" -#: cps/templates/book_edit.html:62 cps/templates/book_edit.html:270 -#: cps/templates/book_edit.html:288 cps/templates/search_form.html:12 +#: cps/templates/book_edit.html:63 cps/templates/book_edit.html:271 +#: cps/templates/book_edit.html:289 cps/templates/search_form.html:12 msgid "Author" msgstr "" -#: cps/templates/book_edit.html:67 cps/templates/book_edit.html:275 -#: cps/templates/book_edit.html:290 cps/templates/search_form.html:153 +#: cps/templates/book_edit.html:68 cps/templates/book_edit.html:276 +#: cps/templates/book_edit.html:291 cps/templates/search_form.html:153 msgid "Description" msgstr "" -#: cps/templates/book_edit.html:72 +#: cps/templates/book_edit.html:73 msgid "Identifiers" msgstr "" -#: cps/templates/book_edit.html:76 cps/templates/book_edit.html:299 +#: cps/templates/book_edit.html:77 cps/templates/book_edit.html:300 msgid "Identifier Type" msgstr "" -#: cps/templates/book_edit.html:77 cps/templates/book_edit.html:300 +#: cps/templates/book_edit.html:78 cps/templates/book_edit.html:301 msgid "Identifier Value" msgstr "" -#: cps/templates/book_edit.html:78 cps/templates/book_edit.html:301 +#: cps/templates/book_edit.html:79 cps/templates/book_edit.html:302 #: cps/templates/user_table.html:24 msgid "Remove" msgstr "" -#: cps/templates/book_edit.html:82 +#: cps/templates/book_edit.html:83 msgid "Add Identifier" msgstr "" -#: cps/templates/book_edit.html:86 cps/templates/search_form.html:51 +#: cps/templates/book_edit.html:87 cps/templates/search_form.html:51 msgid "Tags" msgstr "" -#: cps/templates/book_edit.html:94 +#: cps/templates/book_edit.html:95 msgid "Series ID" msgstr "" -#: cps/templates/book_edit.html:98 +#: cps/templates/book_edit.html:99 msgid "Rating" msgstr "" -#: cps/templates/book_edit.html:103 +#: cps/templates/book_edit.html:104 msgid "Fetch Cover from URL (JPEG - Image will be downloaded and stored in database)" msgstr "" -#: cps/templates/book_edit.html:107 +#: cps/templates/book_edit.html:108 msgid "Upload Cover from Local Disk" msgstr "" -#: cps/templates/book_edit.html:112 +#: cps/templates/book_edit.html:113 msgid "Published Date" msgstr "" -#: cps/templates/book_edit.html:121 cps/templates/book_edit.html:272 -#: cps/templates/book_edit.html:289 cps/templates/detail.html:164 +#: cps/templates/book_edit.html:122 cps/templates/book_edit.html:273 +#: cps/templates/book_edit.html:290 cps/templates/detail.html:165 #: cps/templates/search_form.html:16 msgid "Publisher" msgstr "" -#: cps/templates/book_edit.html:125 cps/templates/detail.html:131 +#: cps/templates/book_edit.html:126 cps/templates/detail.html:132 #: cps/templates/user_edit.html:33 msgid "Language" msgstr "" -#: cps/templates/book_edit.html:135 cps/templates/search_form.html:45 +#: cps/templates/book_edit.html:136 cps/templates/search_form.html:45 #: cps/templates/search_form.html:164 msgid "Yes" msgstr "" -#: cps/templates/book_edit.html:136 cps/templates/search_form.html:46 +#: cps/templates/book_edit.html:137 cps/templates/search_form.html:46 #: cps/templates/search_form.html:165 msgid "No" msgstr "" -#: cps/templates/book_edit.html:200 +#: cps/templates/book_edit.html:201 msgid "Upload Format" msgstr "" -#: cps/templates/book_edit.html:208 +#: cps/templates/book_edit.html:209 msgid "View Book on Save" msgstr "" -#: cps/templates/book_edit.html:211 cps/templates/book_edit.html:229 +#: cps/templates/book_edit.html:212 cps/templates/book_edit.html:230 msgid "Fetch Metadata" msgstr "" -#: cps/templates/book_edit.html:212 cps/templates/config_db.html:53 +#: cps/templates/book_edit.html:213 cps/templates/config_db.html:53 #: cps/templates/config_edit.html:358 cps/templates/config_view_edit.html:174 -#: cps/templates/email_edit.html:65 cps/templates/shelf_edit.html:25 -#: cps/templates/shelf_order.html:41 cps/templates/user_edit.html:142 +#: cps/templates/email_edit.html:65 cps/templates/schedule_edit.html:40 +#: cps/templates/shelf_edit.html:25 cps/templates/shelf_order.html:41 +#: cps/templates/user_edit.html:142 msgid "Save" msgstr "" -#: cps/templates/book_edit.html:232 +#: cps/templates/book_edit.html:233 msgid "Keyword" msgstr "" -#: cps/templates/book_edit.html:233 +#: cps/templates/book_edit.html:234 msgid "Search keyword" msgstr "" -#: cps/templates/book_edit.html:239 +#: cps/templates/book_edit.html:240 msgid "Click the cover to load metadata to the form" msgstr "" -#: cps/templates/book_edit.html:246 cps/templates/book_edit.html:285 +#: cps/templates/book_edit.html:247 cps/templates/book_edit.html:286 msgid "Loading..." msgstr "" -#: cps/templates/book_edit.html:250 cps/templates/layout.html:63 -#: cps/templates/layout.html:186 cps/templates/modal_dialogs.html:34 +#: cps/templates/book_edit.html:251 cps/templates/layout.html:64 +#: cps/templates/layout.html:187 cps/templates/modal_dialogs.html:34 #: cps/templates/user_edit.html:163 msgid "Close" msgstr "" -#: cps/templates/book_edit.html:277 cps/templates/book_edit.html:291 +#: cps/templates/book_edit.html:278 cps/templates/book_edit.html:292 msgid "Source" msgstr "" -#: cps/templates/book_edit.html:286 +#: cps/templates/book_edit.html:287 msgid "Search error!" msgstr "" -#: cps/templates/book_edit.html:287 +#: cps/templates/book_edit.html:288 msgid "No Result(s) found! Please try another keyword." msgstr "" @@ -1912,6 +2010,7 @@ msgid "Enter " msgstr "" #: cps/templates/book_table.html:113 cps/templates/modal_dialogs.html:46 +#: cps/templates/tasks.html:36 msgid "Are you really sure?" msgstr "" @@ -2323,62 +2422,62 @@ msgstr "" msgid "Add Allowed/Denied custom column values" msgstr "" -#: cps/templates/detail.html:60 cps/templates/detail.html:69 +#: cps/templates/detail.html:61 cps/templates/detail.html:70 msgid "Read in Browser" msgstr "" -#: cps/templates/detail.html:77 cps/templates/detail.html:94 +#: cps/templates/detail.html:78 cps/templates/detail.html:95 msgid "Listen in Browser" msgstr "" -#: cps/templates/detail.html:124 +#: cps/templates/detail.html:125 #, python-format msgid "Book %(index)s of %(range)s" msgstr "" -#: cps/templates/detail.html:173 +#: cps/templates/detail.html:174 msgid "Published" msgstr "" -#: cps/templates/detail.html:221 +#: cps/templates/detail.html:222 msgid "Mark As Unread" msgstr "" -#: cps/templates/detail.html:221 +#: cps/templates/detail.html:222 msgid "Mark As Read" msgstr "" -#: cps/templates/detail.html:222 +#: cps/templates/detail.html:223 msgid "Read" msgstr "" -#: cps/templates/detail.html:231 +#: cps/templates/detail.html:232 msgid "Restore from archive" msgstr "" -#: cps/templates/detail.html:231 +#: cps/templates/detail.html:232 msgid "Add to archive" msgstr "" -#: cps/templates/detail.html:232 +#: cps/templates/detail.html:233 msgid "Archived" msgstr "" -#: cps/templates/detail.html:243 +#: cps/templates/detail.html:244 msgid "Description:" msgstr "" -#: cps/templates/detail.html:256 cps/templates/search.html:15 +#: cps/templates/detail.html:257 cps/templates/search.html:16 msgid "Add to shelf" msgstr "" -#: cps/templates/detail.html:267 cps/templates/detail.html:284 -#: cps/templates/feed.xml:79 cps/templates/layout.html:137 -#: cps/templates/search.html:21 +#: cps/templates/detail.html:268 cps/templates/detail.html:285 +#: cps/templates/feed.xml:79 cps/templates/layout.html:138 +#: cps/templates/search.html:22 msgid "(Public)" msgstr "" -#: cps/templates/detail.html:298 +#: cps/templates/detail.html:299 msgid "Edit Metadata" msgstr "" @@ -2422,7 +2521,7 @@ msgstr "" msgid "Save and Send Test E-mail" msgstr "" -#: cps/templates/email_edit.html:70 cps/templates/layout.html:29 +#: cps/templates/email_edit.html:70 cps/templates/layout.html:30 #: cps/templates/shelf_order.html:42 cps/templates/user_table.html:174 msgid "Back" msgstr "" @@ -2448,7 +2547,7 @@ msgstr "" msgid "Denied Domains (Blacklist)" msgstr "" -#: cps/templates/feed.xml:21 cps/templates/layout.html:170 +#: cps/templates/feed.xml:21 cps/templates/layout.html:171 msgid "Next" msgstr "" @@ -2460,6 +2559,10 @@ msgstr "" msgid "Kobo Token:" msgstr "" +#: cps/templates/grid.html:21 +msgid "List" +msgstr "" + #: cps/templates/http_error.html:31 msgid "Calibre-Web Instance is unconfigured, please contact your administrator" msgstr "" @@ -2476,29 +2579,29 @@ msgstr "" msgid "Logout User" msgstr "" -#: cps/templates/index.html:70 +#: cps/templates/index.html:71 msgid "Sort ascending according to download count" msgstr "" -#: cps/templates/index.html:71 +#: cps/templates/index.html:72 msgid "Sort descending according to download count" msgstr "" -#: cps/templates/index.html:77 cps/templates/search.html:34 -#: cps/templates/shelf.html:23 -msgid "Sort authors in alphabetical order" -msgstr "" - #: cps/templates/index.html:78 cps/templates/search.html:35 #: cps/templates/shelf.html:24 +msgid "Sort authors in alphabetical order" +msgstr "" + +#: cps/templates/index.html:79 cps/templates/search.html:36 +#: cps/templates/shelf.html:25 msgid "Sort authors in reverse alphabetical order" msgstr "" -#: cps/templates/index.html:82 +#: cps/templates/index.html:83 msgid "Sort ascending according to series index" msgstr "" -#: cps/templates/index.html:83 +#: cps/templates/index.html:84 msgid "Sort descending according to series index" msgstr "" @@ -2562,7 +2665,7 @@ msgstr "" msgid "Books ordered by file formats" msgstr "" -#: cps/templates/index.xml:119 cps/templates/layout.html:135 +#: cps/templates/index.xml:119 cps/templates/layout.html:136 #: cps/templates/search_form.html:87 msgid "Shelves" msgstr "" @@ -2571,63 +2674,67 @@ msgstr "" msgid "Books organized in shelves" msgstr "" -#: cps/templates/layout.html:29 +#: cps/templates/layout.html:30 msgid "Home" msgstr "" -#: cps/templates/layout.html:35 +#: cps/templates/layout.html:36 msgid "Toggle Navigation" msgstr "" -#: cps/templates/layout.html:46 +#: cps/templates/layout.html:47 msgid "Search Library" msgstr "" -#: cps/templates/layout.html:63 cps/templates/layout.html:117 +#: cps/templates/layout.html:64 cps/templates/layout.html:118 msgid "Uploading..." msgstr "" -#: cps/templates/layout.html:63 +#: cps/templates/layout.html:64 msgid "Error" msgstr "" -#: cps/templates/layout.html:63 +#: cps/templates/layout.html:64 msgid "Upload done, processing, please wait..." msgstr "" -#: cps/templates/layout.html:76 cps/templates/read.html:72 +#: cps/templates/layout.html:77 cps/templates/read.html:72 #: cps/templates/readcbr.html:84 cps/templates/readcbr.html:108 msgid "Settings" msgstr "" -#: cps/templates/layout.html:78 +#: cps/templates/layout.html:79 msgid "Account" msgstr "" -#: cps/templates/layout.html:80 +#: cps/templates/layout.html:81 msgid "Logout" msgstr "" -#: cps/templates/layout.html:118 +#: cps/templates/layout.html:119 msgid "Please do not refresh the page" msgstr "" -#: cps/templates/layout.html:128 +#: cps/templates/layout.html:129 msgid "Browse" msgstr "" -#: cps/templates/layout.html:141 cps/templates/stats.html:3 +#: cps/templates/layout.html:142 cps/templates/stats.html:3 msgid "About" msgstr "" -#: cps/templates/layout.html:155 +#: cps/templates/layout.html:156 msgid "Previous" msgstr "" -#: cps/templates/layout.html:182 +#: cps/templates/layout.html:183 msgid "Book Details" msgstr "" +#: cps/templates/list.html:22 +msgid "Grid" +msgstr "" + #: cps/templates/login.html:18 msgid "Remember Me" msgstr "" @@ -2732,7 +2839,7 @@ msgstr "" msgid "Select" msgstr "" -#: cps/templates/modal_dialogs.html:134 +#: cps/templates/modal_dialogs.html:134 cps/templates/tasks.html:45 msgid "Ok" msgstr "" @@ -2908,15 +3015,23 @@ msgstr "" msgid "This verification link will expire in 10 minutes." msgstr "" -#: cps/templates/search.html:5 -msgid "No Results Found" +#: cps/templates/schedule_edit.html:29 +msgid "Generate Book Cover Thumbnails" +msgstr "" + +#: cps/templates/schedule_edit.html:33 +msgid "Generate Series Cover Thumbnails" msgstr "" #: cps/templates/search.html:6 +msgid "No Results Found" +msgstr "" + +#: cps/templates/search.html:7 msgid "Search Term:" msgstr "" -#: cps/templates/search.html:8 +#: cps/templates/search.html:9 msgid "Results for:" msgstr "" @@ -2968,23 +3083,23 @@ msgstr "" msgid "To:" msgstr "" -#: cps/templates/shelf.html:12 +#: cps/templates/shelf.html:13 msgid "Delete this Shelf" msgstr "" -#: cps/templates/shelf.html:13 +#: cps/templates/shelf.html:14 msgid "Edit Shelf Properties" msgstr "" -#: cps/templates/shelf.html:16 +#: cps/templates/shelf.html:17 msgid "Arrange books manually" msgstr "" -#: cps/templates/shelf.html:17 +#: cps/templates/shelf.html:18 msgid "Disable Change order" msgstr "" -#: cps/templates/shelf.html:17 +#: cps/templates/shelf.html:18 msgid "Enable Change order" msgstr "" @@ -3029,7 +3144,7 @@ msgid "System Statistics" msgstr "" #: cps/templates/stats.html:33 -msgid "Program Library" +msgid "Program" msgstr "" #: cps/templates/stats.html:34 @@ -3060,6 +3175,18 @@ msgstr "" msgid "Start Time" msgstr "" +#: cps/templates/tasks.html:20 +msgid "Actions" +msgstr "" + +#: cps/templates/tasks.html:40 +msgid "This task will be cancelled. Any progress made by this task will be saved." +msgstr "" + +#: cps/templates/tasks.html:41 +msgid "If this is a scheduled task, it will be re-ran during the next scheduled time." +msgstr "" + #: cps/templates/user_edit.html:20 msgid "Reset user Password" msgstr "" From 8cb3fe32a575916f8cddba70925027271686dca2 Mon Sep 17 00:00:00 2001 From: Ozzie Isaacs Date: Mon, 2 May 2022 17:42:06 +0200 Subject: [PATCH 06/20] Try to prevent error from #2390 --- cps/dep_check.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cps/dep_check.py b/cps/dep_check.py index 431d7019..44f3961a 100644 --- a/cps/dep_check.py +++ b/cps/dep_check.py @@ -65,7 +65,7 @@ def dependency_check(optional=False): low_check = [int(x) for x in dep[3].split('.')] high_check = [int(x) for x in dep[5].split('.')] except AttributeError: - high_check = None + high_check = [] except ValueError: d.append({'name': dep[1], 'target': "available", From 1bcb714facefed96b4b9e6701fe9bd92956f004f Mon Sep 17 00:00:00 2001 From: Ozzie Isaacs Date: Tue, 3 May 2022 18:43:07 +0200 Subject: [PATCH 07/20] Remove mature tags config option --- cps/config_sql.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cps/config_sql.py b/cps/config_sql.py index 743b2ce7..405a92ec 100644 --- a/cps/config_sql.py +++ b/cps/config_sql.py @@ -74,7 +74,7 @@ class _Settings(_Base): config_authors_max = Column(Integer, default=0) config_read_column = Column(Integer, default=0) config_title_regex = Column(String, default=r'^(A|The|An|Der|Die|Das|Den|Ein|Eine|Einen|Dem|Des|Einem|Eines)\s+') - config_mature_content_tags = Column(String, default='') + # config_mature_content_tags = Column(String, default='') config_theme = Column(Integer, default=0) config_log_level = Column(SmallInteger, default=logger.DEFAULT_LOG_LEVEL) From 0c2f67bc7b048b39f4d4a1b863815cff9f12b55c Mon Sep 17 00:00:00 2001 From: Chris Thurber Date: Wed, 4 May 2022 12:42:23 -0400 Subject: [PATCH 08/20] Updates Links in README Update links for optional pip features and GDrive integration. --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index c3422041..f75e3cb1 100644 --- a/README.md +++ b/README.md @@ -43,7 +43,7 @@ Calibre-Web is a web app providing a clean interface for browsing, reading and d #### Installation via pip (recommended) 1. To avoid problems with already installed python dependencies, it's recommended to create a virtual environment for Calibre-Web 2. Install Calibre-Web via pip with the command `pip install calibreweb` (Depending on your OS and or distro the command could also be `pip3`). -3. Optional features can also be installed via pip, please refer to [this page](https://github.com/janeczku/calibre-web/wiki/Dependencies-in-Calibre-Web-Linux-Windows) for details +3. Optional features can also be installed via pip, please refer to [this page](https://github.com/janeczku/calibre-web/wiki/Dependencies-in-Calibre-Web-Linux-and-Windows) for details 4. Calibre-Web can be started afterwards by typing `cps` In the Wiki there are also examples for: a [manual installation](https://github.com/janeczku/calibre-web/wiki/Manual-installation), [installation on Linux Mint](https://github.com/janeczku/calibre-web/wiki/How-To:Install-Calibre-Web-in-Linux-Mint-19-or-20), [installation on a Cloud Provider](https://github.com/janeczku/calibre-web/wiki/How-To:-Install-Calibre-Web-on-a-Cloud-Provider). @@ -53,7 +53,7 @@ In the Wiki there are also examples for: a [manual installation](https://github. Point your browser to `http://localhost:8083` or `http://localhost:8083/opds` for the OPDS catalog \ Login with default admin login \ Set `Location of Calibre database` to the path of the folder where your Calibre library (metadata.db) lives, push "submit" button \ -Optionally a Google Drive can be used to host the calibre library [-> Using Google Drive integration](https://github.com/janeczku/calibre-web/wiki/Configuration#using-google-drive-integration) \ +Optionally a Google Drive can be used to host the calibre library [-> Using Google Drive integration](https://github.com/janeczku/calibre-web/wiki/G-Drive-Setup#using-google-drive-integration) \ Afterwards you can configure your Calibre-Web instance ([Basic Configuration](https://github.com/janeczku/calibre-web/wiki/Configuration#basic-configuration) and [UI Configuration](https://github.com/janeczku/calibre-web/wiki/Configuration#ui-configuration) on admin page) #### Default admin login: From 056ecf0d9071c0dfee86bdd343f8b2ec73fd5801 Mon Sep 17 00:00:00 2001 From: Ozzie Isaacs Date: Wed, 4 May 2022 19:22:18 +0200 Subject: [PATCH 09/20] Fix for #2394 --- cps/helper.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/cps/helper.py b/cps/helper.py index cb9cb436..91afe727 100644 --- a/cps/helper.py +++ b/cps/helper.py @@ -241,8 +241,7 @@ def get_valid_filename(value, replace_whitespace=True, chars=128): # pipe has to be replaced with comma value = re.sub(r'[|]+', u',', value, flags=re.U) - filename_encoding_for_length = 'utf-16' if sys.platform == "win32" or sys.platform == "darwin" else 'utf-8' - value = value.encode(filename_encoding_for_length)[:chars].decode('utf-8', errors='ignore').strip() + value = value.encode('utf-8')[:chars].decode('utf-8', errors='ignore').strip() if not value: raise ValueError("Filename cannot be empty") From 5e4cf839bcbc2a30fc421dd66232edcc049933a0 Mon Sep 17 00:00:00 2001 From: Ozzie Isaacs Date: Thu, 5 May 2022 18:04:34 +0200 Subject: [PATCH 10/20] Replace "ast" by "json.loads" to handle enums with default values/colors (fix for #2398) --- cps/db.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/cps/db.py b/cps/db.py index f4dc4ccb..c4f7ed38 100644 --- a/cps/db.py +++ b/cps/db.py @@ -19,7 +19,6 @@ import os import re -import ast import json from datetime import datetime from urllib.parse import quote @@ -388,7 +387,7 @@ class CustomColumns(Base): normalized = Column(Boolean) def get_display_dict(self): - display_dict = ast.literal_eval(self.display) + display_dict = json.loads(self.display) return display_dict From c1f1952b04cc8bb489dff94d88d451eebdcbc0e7 Mon Sep 17 00:00:00 2001 From: Ozzie Isaacs Date: Fri, 6 May 2022 17:48:58 +0200 Subject: [PATCH 11/20] Updated jsonschema requirement Testupdate Fixed file mode of main.js --- cps/static/js/main.js | 0 optional-requirements.txt | 2 +- test/Calibre-Web TestSummary_Linux.html | 1086 +++++++++++++++++------ 3 files changed, 791 insertions(+), 297 deletions(-) mode change 100755 => 100644 cps/static/js/main.js diff --git a/cps/static/js/main.js b/cps/static/js/main.js old mode 100755 new mode 100644 diff --git a/optional-requirements.txt b/optional-requirements.txt index 4360d221..a0384bcd 100644 --- a/optional-requirements.txt +++ b/optional-requirements.txt @@ -41,4 +41,4 @@ natsort>=2.2.0,<8.2.0 comicapi>=2.2.0,<2.3.0 # Kobo integration -jsonschema>=3.2.0,<4.5.0 +jsonschema>=3.2.0,<4.6.0 diff --git a/test/Calibre-Web TestSummary_Linux.html b/test/Calibre-Web TestSummary_Linux.html index 027aaa81..86255e61 100644 --- a/test/Calibre-Web TestSummary_Linux.html +++ b/test/Calibre-Web TestSummary_Linux.html @@ -37,20 +37,20 @@
-

Start Time: 2022-04-30 21:05:13

+

Start Time: 2022-05-05 20:48:29

-

Stop Time: 2022-05-01 02:54:00

+

Stop Time: 2022-05-06 02:34:54

-

Duration: 4h 55 min

+

Duration: 4h 53 min

@@ -234,15 +234,15 @@ -
+ - - - - + + + + @@ -311,7 +311,47 @@ - + + + + + + + + @@ -320,16 +360,36 @@ - + - + - + @@ -337,13 +397,42 @@ + + + + + + + - + - + + - + - + - + - + - + - + - + @@ -447,12 +629,12 @@ - + - - - + + + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -551,11 +901,33 @@ - + - + @@ -587,11 +959,33 @@ - + - + @@ -684,7 +1078,7 @@
Traceback (most recent call last):
   File "/home/ozzie/Development/calibre-web-test/test/test_ebook_convert_gdrive.py", line 443, in test_thumbnail_cache
     self.assertEqual(10*2, count_files(thumbnail_cache_path))
-AssertionError: 20 != 0
+AssertionError: 20 != 9
@@ -695,13 +1089,13 @@ AssertionError: 20 != 0 -
+ + + - - @@ -709,41 +1103,103 @@ AssertionError: 20 != 0 - + - + - + - + - + - + - + + + - - @@ -751,29 +1207,91 @@ AssertionError: 20 != 0 - + - + - + - + - + - + @@ -1618,13 +2136,13 @@ AssertionError: 20 != 0 - + + + - - @@ -1632,11 +2150,31 @@ AssertionError: 20 != 0 - + - + @@ -3266,30 +3804,6 @@ AssertionError: 20 != 0 - - - - - - - - - - - - - - - - - - - - @@ -3298,13 +3812,13 @@ AssertionError: 20 != 0 - + @@ -3313,7 +3827,7 @@ AssertionError: 20 != 0 - + @@ -3322,7 +3836,7 @@ AssertionError: 20 != 0 - + @@ -3331,7 +3845,7 @@ AssertionError: 20 != 0 - + @@ -3340,7 +3854,7 @@ AssertionError: 20 != 0 - + @@ -3349,7 +3863,7 @@ AssertionError: 20 != 0 - + @@ -3358,7 +3872,7 @@ AssertionError: 20 != 0 - + @@ -3367,7 +3881,7 @@ AssertionError: 20 != 0 - + @@ -3385,13 +3899,13 @@ AssertionError: 20 != 0 - + @@ -3400,7 +3914,7 @@ AssertionError: 20 != 0 - + @@ -3409,7 +3923,7 @@ AssertionError: 20 != 0 - + @@ -3427,13 +3941,13 @@ AssertionError: 20 != 0 - + @@ -3442,7 +3956,7 @@ AssertionError: 20 != 0 - + @@ -3451,7 +3965,7 @@ AssertionError: 20 != 0 - + @@ -3460,7 +3974,7 @@ AssertionError: 20 != 0 - + @@ -3469,7 +3983,7 @@ AssertionError: 20 != 0 - + @@ -3478,7 +3992,7 @@ AssertionError: 20 != 0 - + @@ -3487,7 +4001,7 @@ AssertionError: 20 != 0 - + @@ -3496,7 +4010,7 @@ AssertionError: 20 != 0 - + @@ -3505,7 +4019,7 @@ AssertionError: 20 != 0 - + @@ -3514,7 +4028,7 @@ AssertionError: 20 != 0 - + @@ -3523,7 +4037,7 @@ AssertionError: 20 != 0 - + @@ -3532,7 +4046,7 @@ AssertionError: 20 != 0 - + @@ -3541,7 +4055,7 @@ AssertionError: 20 != 0 - + @@ -3550,19 +4064,19 @@ AssertionError: 20 != 0 - + + @@ -3585,7 +4099,7 @@ AssertionError: 20 != 0 - + @@ -3603,13 +4117,13 @@ AssertionError: 20 != 0 - + @@ -3622,18 +4136,18 @@ AssertionError: 20 != 0 - - + + - + @@ -3642,7 +4156,7 @@ AssertionError: 20 != 0 - + @@ -3651,7 +4165,7 @@ AssertionError: 20 != 0 - + @@ -3660,26 +4174,26 @@ AssertionError: 20 != 0 - + + @@ -3698,7 +4212,7 @@ AssertionError: 0.038404302739168276 not greater than or equal to 0.05 - + @@ -3707,7 +4221,7 @@ AssertionError: 0.038404302739168276 not greater than or equal to 0.05 - + @@ -3716,31 +4230,11 @@ AssertionError: 0.038404302739168276 not greater than or equal to 0.05 - + - + @@ -3754,13 +4248,13 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -3769,7 +4263,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -3778,7 +4272,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -3787,7 +4281,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -3796,7 +4290,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -3805,7 +4299,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -3814,19 +4308,19 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + + @@ -3849,7 +4343,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -3867,13 +4361,13 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -3882,7 +4376,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -3891,7 +4385,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -3900,7 +4394,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -3918,13 +4412,13 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -3933,7 +4427,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -3942,7 +4436,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -3951,7 +4445,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -3960,7 +4454,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -3969,7 +4463,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -3978,7 +4472,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -3987,7 +4481,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -3996,7 +4490,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4005,7 +4499,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4014,7 +4508,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4023,7 +4517,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4032,7 +4526,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4041,7 +4535,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4050,7 +4544,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4059,7 +4553,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4068,7 +4562,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4077,7 +4571,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4095,13 +4589,13 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4119,13 +4613,13 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4134,7 +4628,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4143,7 +4637,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4152,7 +4646,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4161,7 +4655,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4170,7 +4664,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4179,7 +4673,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4188,7 +4682,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4197,7 +4691,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4206,7 +4700,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4215,7 +4709,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4224,7 +4718,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4233,7 +4727,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4242,7 +4736,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4251,7 +4745,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4260,7 +4754,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4269,7 +4763,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4278,7 +4772,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4287,7 +4781,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4296,7 +4790,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4305,7 +4799,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4323,13 +4817,13 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4338,7 +4832,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4347,7 +4841,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4356,7 +4850,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4365,7 +4859,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4374,7 +4868,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4383,7 +4877,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4392,7 +4886,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4401,7 +4895,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4410,7 +4904,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4419,7 +4913,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4428,7 +4922,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4437,7 +4931,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4446,7 +4940,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4455,7 +4949,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4464,7 +4958,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4473,7 +4967,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4482,7 +4976,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4491,7 +4985,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4500,7 +4994,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4509,7 +5003,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4518,7 +5012,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4527,7 +5021,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4536,7 +5030,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4545,7 +5039,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4554,7 +5048,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4563,7 +5057,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4572,7 +5066,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4581,7 +5075,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4590,7 +5084,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4599,7 +5093,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4608,7 +5102,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4617,7 +5111,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4626,7 +5120,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4635,7 +5129,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4653,13 +5147,13 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4668,7 +5162,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4677,7 +5171,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4686,7 +5180,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4695,7 +5189,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4704,7 +5198,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4713,7 +5207,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4722,7 +5216,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4731,7 +5225,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4740,7 +5234,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4749,7 +5243,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4758,7 +5252,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4767,7 +5261,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4776,7 +5270,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4785,7 +5279,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4794,7 +5288,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -4805,10 +5299,10 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - - - - + + + + @@ -4987,7 +5481,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -5017,7 +5511,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -5047,7 +5541,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -5089,7 +5583,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -5125,7 +5619,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -5167,7 +5661,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -5209,13 +5703,13 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + - + @@ -5227,7 +5721,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 - + @@ -5257,7 +5751,7 @@ AssertionError: 0.03724830839072722 not greater than or equal to 0.04 From fbac3e38ac116855b930ee60fb3c997337ae17b7 Mon Sep 17 00:00:00 2001 From: Ozzie Isaacs Date: Sun, 8 May 2022 12:55:54 +0200 Subject: [PATCH 12/20] Eenabled send epubs to E-Reader devices --- README.md | 4 +- cps/admin.py | 6 +- cps/helper.py | 66 +- cps/static/js/caliBlur.js | 16 +- cps/tasks/convert.py | 16 +- cps/templates/admin.html | 2 +- cps/templates/detail.html | 16 +- cps/templates/shelfdown.html | 2 +- cps/templates/user_edit.html | 2 +- cps/templates/user_table.html | 2 +- cps/web.py | 6 +- test/Calibre-Web TestSummary_Linux.html | 824 +++++++++--------------- 12 files changed, 358 insertions(+), 604 deletions(-) mode change 100644 => 100755 README.md mode change 100644 => 100755 cps/admin.py mode change 100644 => 100755 cps/helper.py mode change 100644 => 100755 cps/static/js/caliBlur.js mode change 100644 => 100755 cps/tasks/convert.py mode change 100644 => 100755 cps/templates/admin.html mode change 100644 => 100755 cps/templates/detail.html mode change 100644 => 100755 cps/templates/shelfdown.html mode change 100644 => 100755 cps/templates/user_edit.html mode change 100644 => 100755 cps/templates/user_table.html mode change 100644 => 100755 cps/web.py diff --git a/README.md b/README.md old mode 100644 new mode 100755 index c3422041..41cb5818 --- a/README.md +++ b/README.md @@ -28,7 +28,7 @@ Calibre-Web is a web app providing a clean interface for browsing, reading and d - Support for converting eBooks through Calibre binaries - Restrict eBook download to logged-in users - Support for public user registration -- Send eBooks to Kindle devices with the click of a button +- Send eBooks to E-Readers with the click of a button - Sync your Kobo devices through Calibre-Web with your Calibre library - Support for reading eBooks directly in the browser (.txt, .epub, .pdf, .cbr, .cbt, .cbz, .djvu) - Upload new books in many formats, including audio formats (.mp3, .m4a, .m4b) @@ -65,7 +65,7 @@ Afterwards you can configure your Calibre-Web instance ([Basic Configuration](ht python 3.5+ -Optionally, to enable on-the-fly conversion from one ebook format to another when using the send-to-kindle feature, or during editing of ebooks metadata: +Optionally, to enable on-the-fly conversion from one ebook format to another when using the send-to-ereader feature, or during editing of ebooks metadata: [Download and install](https://calibre-ebook.com/download) the Calibre desktop program for your platform and enter the folder including program name (normally /opt/calibre/ebook-convert, or C:\Program Files\calibre\ebook-convert.exe) in the field "calibre's converter tool" on the setup page. diff --git a/cps/admin.py b/cps/admin.py old mode 100644 new mode 100755 index c928fe19..22127eb2 --- a/cps/admin.py +++ b/cps/admin.py @@ -1521,11 +1521,11 @@ def ldap_import_create_user(user, user_data): log.warning("LDAP User %s Already in Database", user_data) return 0, None - kindlemail = '' + ereader_mail = '' if 'mail' in user_data: useremail = user_data['mail'][0].decode('utf-8') if len(user_data['mail']) > 1: - kindlemail = user_data['mail'][1].decode('utf-8') + ereader_mail = user_data['mail'][1].decode('utf-8') else: log.debug('No Mail Field Found in LDAP Response') @@ -1541,7 +1541,7 @@ def ldap_import_create_user(user, user_data): content.name = username content.password = '' # dummy password which will be replaced by ldap one content.email = useremail - content.kindle_mail = kindlemail + content.kindle_mail = ereader_mail content.default_language = config.config_default_language content.locale = config.config_default_locale content.role = config.config_default_role diff --git a/cps/helper.py b/cps/helper.py old mode 100644 new mode 100755 index 91afe727..e8e45289 --- a/cps/helper.py +++ b/cps/helper.py @@ -72,7 +72,7 @@ except (ImportError, RuntimeError) as e: # Convert existing book entry to new format -def convert_book_format(book_id, calibre_path, old_book_format, new_book_format, user_id, kindle_mail=None): +def convert_book_format(book_id, calibre_path, old_book_format, new_book_format, user_id, ereader_mail=None): book = calibre_db.get_book(book_id) data = calibre_db.get_book_format(book.id, old_book_format) file_path = os.path.join(calibre_path, book.path, data.name) @@ -91,9 +91,9 @@ def convert_book_format(book_id, calibre_path, old_book_format, new_book_format, format=old_book_format, fn=data.name + "." + old_book_format.lower()) return error_message # read settings and append converter task to queue - if kindle_mail: + if ereader_mail: settings = config.get_mail_settings() - settings['subject'] = _('Send to Kindle') # pretranslate Subject for e-mail + settings['subject'] = _('Send to E-Reader') # pretranslate Subject for e-mail settings['body'] = _(u'This e-mail has been sent via Calibre-Web.') else: settings = dict() @@ -104,14 +104,14 @@ def convert_book_format(book_id, calibre_path, old_book_format, new_book_format, link) settings['old_book_format'] = old_book_format settings['new_book_format'] = new_book_format - WorkerThread.add(user_id, TaskConvert(file_path, book.id, txt, settings, kindle_mail, user_id)) + WorkerThread.add(user_id, TaskConvert(file_path, book.id, txt, settings, ereader_mail, user_id)) return None # Texts are not lazy translated as they are supposed to get send out as is -def send_test_mail(kindle_mail, user_name): +def send_test_mail(ereader_mail, user_name): WorkerThread.add(user_name, TaskEmail(_(u'Calibre-Web test e-mail'), None, None, - config.get_mail_settings(), kindle_mail, N_(u"Test e-mail"), + config.get_mail_settings(), ereader_mail, N_(u"Test e-mail"), _(u'This e-mail has been sent via Calibre-Web.'))) return @@ -139,26 +139,26 @@ def send_registration_mail(e_mail, user_name, default_password, resend=False): return -def check_send_to_kindle_with_converter(formats): +def check_send_to_ereader_with_converter(formats): book_formats = list() - if 'EPUB' in formats and 'MOBI' not in formats: - book_formats.append({'format': 'Mobi', + if 'EPUB' in formats and 'EPUB' not in formats: + book_formats.append({'format': 'Epub', 'convert': 1, - 'text': _('Convert %(orig)s to %(format)s and send to Kindle', - orig='Epub', - format='Mobi')}) - if 'AZW3' in formats and 'MOBI' not in formats: - book_formats.append({'format': 'Mobi', + 'text': _('Convert %(orig)s to %(format)s and send to E-Reader', + orig='Mobi', + format='Epub')}) + if 'AZW3' in formats and 'EPUB' not in formats: + book_formats.append({'format': 'Epub', 'convert': 2, - 'text': _('Convert %(orig)s to %(format)s and send to Kindle', + 'text': _('Convert %(orig)s to %(format)s and send to E-Reader', orig='Azw3', - format='Mobi')}) + format='Epub')}) return book_formats -def check_send_to_kindle(entry): +def check_send_to_ereader(entry): """ - returns all available book formats for sending to Kindle + returns all available book formats for sending to E-Reader """ formats = list() book_formats = list() @@ -166,20 +166,24 @@ def check_send_to_kindle(entry): for ele in iter(entry.data): if ele.uncompressed_size < config.mail_size: formats.append(ele.format) + if 'EPUB' in formats: + book_formats.append({'format': 'Epub', + 'convert': 0, + 'text': _('Send %(format)s to E-Reader', format='Epub')}) if 'MOBI' in formats: book_formats.append({'format': 'Mobi', 'convert': 0, - 'text': _('Send %(format)s to Kindle', format='Mobi')}) + 'text': _('Send %(format)s to E-Reader', format='Mobi')}) if 'PDF' in formats: book_formats.append({'format': 'Pdf', 'convert': 0, - 'text': _('Send %(format)s to Kindle', format='Pdf')}) + 'text': _('Send %(format)s to E-Reader', format='Pdf')}) if 'AZW' in formats: book_formats.append({'format': 'Azw', 'convert': 0, - 'text': _('Send %(format)s to Kindle', format='Azw')}) + 'text': _('Send %(format)s to E-Reader', format='Azw')}) if config.config_converterpath: - book_formats.extend(check_send_to_kindle_with_converter(formats)) + book_formats.extend(check_send_to_ereader_with_converter(formats)) return book_formats else: log.error(u'Cannot find book entry %d', entry.id) @@ -199,27 +203,27 @@ def check_read_formats(entry): # Files are processed in the following order/priority: -# 1: If Mobi file is existing, it's directly send to kindle email, -# 2: If Epub file is existing, it's converted and send to kindle email, -# 3: If Pdf file is existing, it's directly send to kindle email -def send_mail(book_id, book_format, convert, kindle_mail, calibrepath, user_id): +# 1: If Mobi file is existing, it's directly send to E-Reader email, +# 2: If Epub file is existing, it's converted and send to E-Reader email, +# 3: If Pdf file is existing, it's directly send to E-Reader email +def send_mail(book_id, book_format, convert, ereader_mail, calibrepath, user_id): """Send email with attachments""" book = calibre_db.get_book(book_id) if convert == 1: # returns None if success, otherwise errormessage - return convert_book_format(book_id, calibrepath, u'epub', book_format.lower(), user_id, kindle_mail) + return convert_book_format(book_id, calibrepath, u'epub', book_format.lower(), user_id, ereader_mail) if convert == 2: # returns None if success, otherwise errormessage - return convert_book_format(book_id, calibrepath, u'azw3', book_format.lower(), user_id, kindle_mail) + return convert_book_format(book_id, calibrepath, u'azw3', book_format.lower(), user_id, ereader_mail) for entry in iter(book.data): if entry.format.upper() == book_format.upper(): converted_file_name = entry.name + '.' + book_format.lower() link = '{}'.format(url_for('web.show_book', book_id=book_id), escape(book.title)) - email_text = N_(u"%(book)s send to Kindle", book=link) - WorkerThread.add(user_id, TaskEmail(_(u"Send to Kindle"), book.path, converted_file_name, - config.get_mail_settings(), kindle_mail, + email_text = N_(u"%(book)s send to E-Reader", book=link) + WorkerThread.add(user_id, TaskEmail(_(u"Send to E-Reader"), book.path, converted_file_name, + config.get_mail_settings(), ereader_mail, email_text, _(u'This e-mail has been sent via Calibre-Web.'))) return return _(u"The requested file could not be read. Maybe wrong permissions?") diff --git a/cps/static/js/caliBlur.js b/cps/static/js/caliBlur.js old mode 100644 new mode 100755 index f99779bd..0f179645 --- a/cps/static/js/caliBlur.js +++ b/cps/static/js/caliBlur.js @@ -201,7 +201,7 @@ if ($("body.book").length > 0) { // Move dropdown lists higher in dom, replace bootstrap toggle with own toggle. $('ul[aria-labelledby="read-in-browser"]').insertBefore(".blur-wrapper").addClass("readinbrowser-drop"); - $('ul[aria-labelledby="send-to-kindle"]').insertBefore(".blur-wrapper").addClass("sendtokindle-drop"); + $('ul[aria-labelledby="send-to-kereader"]').insertBefore(".blur-wrapper").addClass("sendtoereader-drop"); $(".leramslist").insertBefore(".blur-wrapper"); $('ul[aria-labelledby="btnGroupDrop1"]').insertBefore(".blur-wrapper").addClass("leramslist"); $("#add-to-shelves").insertBefore(".blur-wrapper"); @@ -215,7 +215,7 @@ if ($("body.book").length > 0) { }); $("#sendbtn2").click(function () { - $(".sendtokindle-drop").toggle(); + $(".sendtoereader-drop").toggle(); }); @@ -242,12 +242,12 @@ if ($("body.book").length > 0) { if ($("#sendbtn2").length > 0) { position = $("#sendbtn2").offset().left - if (position + $(".sendtokindle-drop").width() > $(window).width()) { - positionOff = position + $(".sendtokindle-drop").width() - $(window).width(); + if (position + $(".sendtoereader-drop").width() > $(window).width()) { + positionOff = position + $(".sendtoereader-drop").width() - $(window).width(); ribPosition = position - positionOff - 5 - $(".sendtokindle-drop").attr("style", "left: " + ribPosition + "px !important; right: auto; top: " + topPos + "px"); + $(".sendtoereader-drop").attr("style", "left: " + ribPosition + "px !important; right: auto; top: " + topPos + "px"); } else { - $(".sendtokindle-drop").attr("style", "left: " + position + "px !important; right: auto; top: " + topPos + "px"); + $(".sendtoereader-drop").attr("style", "left: " + position + "px !important; right: auto; top: " + topPos + "px"); } } @@ -300,7 +300,7 @@ if ($("body.book").length > 0) { $(document).mouseup(function (e) { var container = new Array(); container.push($('ul[aria-labelledby="read-in-browser"]')); - container.push($(".sendtokindle-drop")); + container.push($(".sendtoereader-drop")); container.push($(".leramslist")); container.push($("#add-to-shelves")); container.push($(".navbar-collapse.collapse.in")); @@ -666,7 +666,7 @@ $("#sendbtn").attr({ $("#sendbtn2").attr({ "data-toggle-two": "tooltip", - "title": $("#sendbtn2").text(), // "Send to Kindle", + "title": $("#sendbtn2").text(), // "Send to E-Reader", "data-placement": "bottom", "data-viewport": ".btn-toolbar" }) diff --git a/cps/tasks/convert.py b/cps/tasks/convert.py old mode 100644 new mode 100755 index 3062850d..a9f0f055 --- a/cps/tasks/convert.py +++ b/cps/tasks/convert.py @@ -41,13 +41,13 @@ log = logger.create() class TaskConvert(CalibreTask): - def __init__(self, file_path, book_id, task_message, settings, kindle_mail, user=None): + def __init__(self, file_path, book_id, task_message, settings, ereader_mail, user=None): super(TaskConvert, self).__init__(task_message) self.file_path = file_path self.book_id = book_id self.title = "" self.settings = settings - self.kindle_mail = kindle_mail + self.ereader_mail = ereader_mail self.user = user self.results = dict() @@ -85,16 +85,16 @@ class TaskConvert(CalibreTask): # Upload files to gdrive gdriveutils.updateGdriveCalibreFromLocal() self._handleSuccess() - if self.kindle_mail: - # if we're sending to kindle after converting, create a one-off task and run it immediately + if self.ereader_mail: + # if we're sending to E-Reader after converting, create a one-off task and run it immediately # todo: figure out how to incorporate this into the progress try: - EmailText = N_(u"%(book)s send to Kindle", book=escape(self.title)) + EmailText = N_(u"%(book)s send to E-Reader", book=escape(self.title)) worker_thread.add(self.user, TaskEmail(self.settings['subject'], self.results["path"], filename, self.settings, - self.kindle_mail, + self.ereader_mail, EmailText, self.settings['body'], internal=True) @@ -112,7 +112,7 @@ class TaskConvert(CalibreTask): # check to see if destination format already exists - or if book is in database # if it does - mark the conversion task as complete and return a success - # this will allow send to kindle workflow to continue to work + # this will allow send to E-Reader workflow to continue to work if os.path.isfile(file_path + format_new_ext) or\ local_db.get_book_format(self.book_id, self.settings['new_book_format']): log.info("Book id %d already converted to %s", book_id, format_new_ext) @@ -273,7 +273,7 @@ class TaskConvert(CalibreTask): return N_("Convert") def __str__(self): - return "Convert {} {}".format(self.book_id, self.kindle_mail) + return "Convert {} {}".format(self.book_id, self.ereader_mail) @property def is_cancellable(self): diff --git a/cps/templates/admin.html b/cps/templates/admin.html old mode 100644 new mode 100755 index f1c3749a..553dcbb6 --- a/cps/templates/admin.html +++ b/cps/templates/admin.html @@ -12,7 +12,7 @@ - + diff --git a/cps/templates/detail.html b/cps/templates/detail.html old mode 100644 new mode 100755 index 3af205fb..50151603 --- a/cps/templates/detail.html +++ b/cps/templates/detail.html @@ -10,7 +10,7 @@
{{ user_table_row('name', _('Enter Username'), _('Username'), true) }} {{ user_table_row('email', _('Enter E-mail Address'), _('E-mail Address'), true) }} - {{ user_table_row('kindle_mail', _('Enter Kindle E-mail Address'), _('Kindle E-mail'), false) }} + {{ user_table_row('kindle_mail', _('Enter E-Reader E-mail Address'), _('E-Reader E-mail'), false) }} {{ user_select_translations('locale', url_for('admin.table_get_locale'), _('Locale'), true) }} {{ user_select_languages('default_language', url_for('admin.table_get_default_lang'), _('Visible Book Languages'), true) }} {{ user_table_row('allowed_tags', _("Edit Allowed Tags"), _("Allowed Tags"), false, tags) }} diff --git a/cps/web.py b/cps/web.py old mode 100644 new mode 100755 index 1aa4cc1b..4a2a796b --- a/cps/web.py +++ b/cps/web.py @@ -45,7 +45,7 @@ from .search import render_search_results, render_adv_search_results from .gdriveutils import getFileFromEbooksFolder, do_gdrive_download from .helper import check_valid_domain, check_email, check_username, \ get_book_cover, get_series_cover_thumbnail, get_download_link, send_mail, generate_random_password, \ - send_registration_mail, check_send_to_kindle, check_read_formats, tags_filters, reset_password, valid_email, \ + send_registration_mail, check_send_to_ereader, check_read_formats, tags_filters, reset_password, valid_email, \ edit_book_read_status from .pagination import Pagination from .redirect import redirect_back @@ -1189,7 +1189,7 @@ def download_link(book_id, book_format, anyname): @web.route('/send///', methods=["POST"]) @login_required @download_required -def send_to_kindle(book_id, book_format, convert): +def send_to_ereader(book_id, book_format, convert): if not config.get_mail_server_configured(): flash(_(u"Please configure the SMTP mail settings first..."), category="error") elif current_user.kindle_mail: @@ -1521,7 +1521,7 @@ def show_book(book_id): entry.ordered_authors = calibre_db.order_authors([entry]) - entry.kindle_list = check_send_to_kindle(entry) + entry.email_share_list = check_send_to_ereader(entry) entry.reader_list = check_read_formats(entry) entry.audio_entries = [] diff --git a/test/Calibre-Web TestSummary_Linux.html b/test/Calibre-Web TestSummary_Linux.html index 86255e61..79fbdc61 100644 --- a/test/Calibre-Web TestSummary_Linux.html +++ b/test/Calibre-Web TestSummary_Linux.html @@ -37,20 +37,20 @@
-

Start Time: 2022-05-05 20:48:29

+

Start Time: 2022-05-07 17:19:13

-

Stop Time: 2022-05-06 02:34:54

+

Stop Time: 2022-05-07 23:07:20

-

Duration: 4h 53 min

+

Duration: 4h 55 min

@@ -234,12 +234,12 @@ -
+ - - - + + + + - + @@ -360,31 +329,11 @@ GeckoDriver.prototype._handleUserPrompts@chrome://remote/content/marionette/driv - + - + @@ -398,43 +347,23 @@ AssertionError: False is not true - + - + - + - + @@ -442,131 +371,38 @@ AssertionError: False is not true - + - + - + - + - + - + - + - + @@ -629,12 +465,12 @@ AssertionError: True is not false : Inital config failed with normal database

+
- - - + + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -901,33 +569,11 @@ AssertionError: 'Failed' != 'Finished' - + - + @@ -959,33 +605,11 @@ AssertionError: 'Failed' != 'Finished' - + - + @@ -994,8 +618,8 @@ AssertionError: 'Failed' != 'Finished' - - + + + - + @@ -1023,11 +667,33 @@ AssertionError: 'Failed' != 'Finished' - + - + @@ -1050,11 +716,31 @@ AssertionError: 'Failed' != 'Finished' - + - + @@ -1076,9 +762,9 @@ AssertionError: 'Failed' != 'Finished'
Traceback (most recent call last):
-  File "/home/ozzie/Development/calibre-web-test/test/test_ebook_convert_gdrive.py", line 443, in test_thumbnail_cache
-    self.assertEqual(10*2, count_files(thumbnail_cache_path))
-AssertionError: 20 != 9
+ File "/home/ozzie/Development/calibre-web-test/test/test_ebook_convert_gdrive.py", line 442, in test_thumbnail_cache + self.assertTrue(os.path.exists(thumbnail_cache_path)) +AssertionError: False is not true
@@ -1093,8 +779,8 @@ AssertionError: 20 != 9
- - + + + + - - + + + + + - - + + @@ -2150,31 +1836,11 @@ AttributeError: 'bool' object has no attribute 'text' - + - + @@ -4133,11 +3799,11 @@ IndexError: list index out of range - + - - + + + - + @@ -4353,11 +3999,11 @@ AssertionError: 220 != 218 - + - - + + + - + - + - + @@ -4404,12 +4090,12 @@ AssertionError: 220 != 218 - + - - - + + + + - + @@ -4562,20 +4268,64 @@ AssertionError: 220 != 218 - + - + - + - + @@ -5300,9 +5050,9 @@ AssertionError: 220 != 218 - - - + + + @@ -5751,7 +5501,7 @@ AssertionError: 220 != 218 From 8a6a8dcbe8dd86b4673d72d255867e51caebfaa3 Mon Sep 17 00:00:00 2001 From: Ozzie Isaacs Date: Mon, 9 May 2022 19:47:43 +0200 Subject: [PATCH 13/20] Transfer gevent errors to log file Transfer warnings from warnings module to logfile (#2394) --- cps/logger.py | 1 + cps/server.py | 1 + 2 files changed, 2 insertions(+) diff --git a/cps/logger.py b/cps/logger.py index fcc25c27..82853bba 100644 --- a/cps/logger.py +++ b/cps/logger.py @@ -159,6 +159,7 @@ def setup(log_file, log_level=None): r.removeHandler(h) h.close() r.addHandler(file_handler) + logging.captureWarnings(True) return "" if log_file == DEFAULT_LOG_FILE else log_file diff --git a/cps/server.py b/cps/server.py index 0ffdbd18..fb70a723 100644 --- a/cps/server.py +++ b/cps/server.py @@ -204,6 +204,7 @@ class WebServer(object): output = _readable_listen_address(self.listen_address, self.listen_port) log.info('Starting Gevent server on %s', output) self.wsgiserver = WSGIServer(sock, self.app, log=self.access_logger, handler_class=MyWSGIHandler, + error_log=log, spawn=Pool(), **ssl_args) if ssl_args: wrap_socket = self.wsgiserver.wrap_socket From 78fb7a975622f9cfa5885b92c3fe33e45e1dc2c7 Mon Sep 17 00:00:00 2001 From: ImanSharaf <78227895+ImanSharaf@users.noreply.github.com> Date: Sun, 15 May 2022 19:00:16 -0700 Subject: [PATCH 14/20] Update SECURITY.md I am the person who has reported the SQLi problem. I contacted the MITRE and they have given me this CVE number: CVE-2022-30765 --- SECURITY.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/SECURITY.md b/SECURITY.md index 1b93b5f9..f37c62dc 100644 --- a/SECURITY.md +++ b/SECURITY.md @@ -35,7 +35,7 @@ To receive fixes for security vulnerabilities it is required to always upgrade t | V 0.6.16 | It's prevented to get the name of a private shelfs. Thanks to @nhiephon |CVE-2022-0405| | V 0.6.17 | The SSRF Protection can no longer be bypassed via an HTTP redirect. Thanks to @416e6e61 |CVE-2022-0767| | V 0.6.17 | The SSRF Protection can no longer be bypassed via 0.0.0.0 and it's ipv6 equivalent. Thanks to @r0hanSH |CVE-2022-0766| -| V 0.6.18 | Possible SQL Injection is prevented in user table Thanks to Iman Sharafaldin (Forward Security) || +| V 0.6.18 | Possible SQL Injection is prevented in user table Thanks to Iman Sharafaldin (Forward Security) |CVE-2022-30765| | V 0.6.18 | The SSRF protection no longer can be bypassed by IPV6/IPV4 embedding. Thanks to @416e6e61 |CVE-2022-0939| | V 0.6.18 | The SSRF protection no longer can be bypassed to connect to other servers in the local network. Thanks to @michaellrowley |CVE-2022-0990| From 3b7cd38d5e263a46e1c67554d3fe4ac443c8c312 Mon Sep 17 00:00:00 2001 From: leexia Date: Mon, 16 May 2022 13:59:35 +0800 Subject: [PATCH 15/20] Fix grammar mistake --- cps/helper.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cps/helper.py b/cps/helper.py index e8e45289..6db991b0 100755 --- a/cps/helper.py +++ b/cps/helper.py @@ -141,7 +141,7 @@ def send_registration_mail(e_mail, user_name, default_password, resend=False): def check_send_to_ereader_with_converter(formats): book_formats = list() - if 'EPUB' in formats and 'EPUB' not in formats: + if 'MOBI' in formats and 'EPUB' not in formats: book_formats.append({'format': 'Epub', 'convert': 1, 'text': _('Convert %(orig)s to %(format)s and send to E-Reader', From 4ea80e9810a14ca3617f08a4ae5cfa6b50482e9a Mon Sep 17 00:00:00 2001 From: Ozzieisaacs Date: Sat, 21 May 2022 21:52:59 +0100 Subject: [PATCH 16/20] Code cosmetics --- cps/admin.py | 12 +++++++----- cps/babel.py | 2 ++ cps/cache_buster.py | 14 +++++++------- cps/cli.py | 19 ++++++++++--------- cps/config_sql.py | 22 ++++++++++++---------- cps/converter.py | 7 +++---- cps/debug_info.py | 1 + cps/dep_check.py | 2 +- cps/logger.py | 17 +++++++++-------- 9 files changed, 52 insertions(+), 44 deletions(-) diff --git a/cps/admin.py b/cps/admin.py index 22127eb2..3c889643 100755 --- a/cps/admin.py +++ b/cps/admin.py @@ -160,7 +160,7 @@ def shutdown(): return json.dumps(showtext), 400 -# method is available without login and not protected by CSRF to make it easy reachable, is per default switched of +# method is available without login and not protected by CSRF to make it easy reachable, is per default switched off # needed for docker applications, as changes on metadata.db from host are not visible to application @admi.route("/reconnect", methods=['GET']) def reconnect(): @@ -615,7 +615,8 @@ def load_dialogtexts(element_id): elif element_id == "db_submit": texts["main"] = _('Are you sure you want to change Calibre library location?') elif element_id == "admin_refresh_cover_cache": - texts["main"] = _('Calibre-Web will search for updated Covers and update Cover Thumbnails, this may take a while?') + texts["main"] = _('Calibre-Web will search for updated Covers ' + 'and update Cover Thumbnails, this may take a while?') elif element_id == "btnfullsync": texts["main"] = _("Are you sure you want delete Calibre-Web's sync database " "to force a full sync with your Kobo Reader?") @@ -746,6 +747,7 @@ def edit_restriction(res_type, user_id): ub.session_commit("Changed denied columns of user {} to {}".format(usr.name, usr.denied_column_value)) return "" + @admi.route("/ajax/addrestriction/", methods=['POST']) @login_required @admin_required @@ -1084,7 +1086,7 @@ def _configuration_gdrive_helper(to_save): gdrive_secrets['redirect_uris'][0] ) - # always show google drive settings, but in case of error deny support + # always show Google Drive settings, but in case of error deny support new_gdrive_value = (not gdrive_error) and ("config_use_google_drive" in to_save) if config.config_use_google_drive and not new_gdrive_value: config.config_google_drive_watch_changes_response = {} @@ -1837,7 +1839,7 @@ def _handle_new_user(to_save, content, languages, translations, kobo_support): log.info("Missing entries on new user") raise Exception(_(u"Please fill out all fields!")) content.email = check_email(to_save["email"]) - # Query User name, if not existing, change + # Query username, if not existing, change content.name = check_username(to_save["name"]) if to_save.get("kindle_mail"): content.kindle_mail = valid_email(to_save["kindle_mail"]) @@ -1956,7 +1958,7 @@ def _handle_edit_user(to_save, content, languages, translations, kobo_support): try: if to_save.get("email", content.email) != content.email: content.email = check_email(to_save["email"]) - # Query User name, if not existing, change + # Query username, if not existing, change if to_save.get("name", content.name) != content.name: if to_save.get("name") == "Guest": raise Exception(_("Guest Name can't be changed")) diff --git a/cps/babel.py b/cps/babel.py index f5ecaf5a..4da808bc 100644 --- a/cps/babel.py +++ b/cps/babel.py @@ -32,8 +32,10 @@ def get_locale(): def get_user_locale_language(user_language): return Locale.parse(user_language).get_language_name(get_locale()) + def get_available_locale(): return [Locale('en')] + babel.list_translations() + def get_available_translations(): return set(str(item) for item in get_available_locale()) diff --git a/cps/cache_buster.py b/cps/cache_buster.py index ba19afd6..0a036b63 100644 --- a/cps/cache_buster.py +++ b/cps/cache_buster.py @@ -49,7 +49,7 @@ def init_cache_busting(app): rooted_filename = os.path.join(dirpath, filename) try: with open(rooted_filename, 'rb') as f: - file_hash = hashlib.md5(f.read()).hexdigest()[:7] # nosec + file_hash = hashlib.md5(f.read()).hexdigest()[:7] # nosec # save version to tables file_path = rooted_filename.replace(static_folder, "") file_path = file_path.replace("\\", "/") # Convert Windows path to web path @@ -59,11 +59,11 @@ def init_cache_busting(app): log.debug('Finished computing cache-busting values') - def bust_filename(filename): - return hash_table.get(filename, "") + def bust_filename(file_name): + return hash_table.get(file_name, "") - def unbust_filename(filename): - return filename.split("?", 1)[0] + def unbust_filename(file_name): + return file_name.split("?", 1)[0] @app.url_defaults # pylint: disable=unused-variable @@ -76,11 +76,11 @@ def init_cache_busting(app): if file_hash: values["q"] = file_hash - def debusting_static_view(filename): + def debusting_static_view(file_name): """ Serve a request for a static file having a busted name. """ - return original_static_view(filename=unbust_filename(filename)) + return original_static_view(filename=unbust_filename(file_name)) # Replace the default static file view with our debusting view. original_static_view = app.view_functions["static"] diff --git a/cps/cli.py b/cps/cli.py index cf4f36fb..5896c7fe 100644 --- a/cps/cli.py +++ b/cps/cli.py @@ -26,26 +26,28 @@ from .constants import STABLE_VERSION as _STABLE_VERSION from .constants import NIGHTLY_VERSION as _NIGHTLY_VERSION from .constants import DEFAULT_SETTINGS_FILE, DEFAULT_GDRIVE_FILE + def version_info(): if _NIGHTLY_VERSION[1].startswith('$Format'): return "Calibre-Web version: %s - unkown git-clone" % _STABLE_VERSION['version'] return "Calibre-Web version: %s -%s" % (_STABLE_VERSION['version'], _NIGHTLY_VERSION[1]) + class CliParameter(object): def init(self): self.arg_parser() def arg_parser(self): - parser = argparse.ArgumentParser(description='Calibre Web is a web app' - ' providing a interface for browsing, reading and downloading eBooks\n', + parser = argparse.ArgumentParser(description='Calibre Web is a web app providing ' + 'a interface for browsing, reading and downloading eBooks\n', prog='cps.py') parser.add_argument('-p', metavar='path', help='path and name to settings db, e.g. /opt/cw.db') parser.add_argument('-g', metavar='path', help='path and name to gdrive db, e.g. /opt/gd.db') - parser.add_argument('-c', metavar='path', - help='path and name to SSL certfile, e.g. /opt/test.cert, works only in combination with keyfile') - parser.add_argument('-k', metavar='path', - help='path and name to SSL keyfile, e.g. /opt/test.key, works only in combination with certfile') + parser.add_argument('-c', metavar='path', help='path and name to SSL certfile, e.g. /opt/test.cert, ' + 'works only in combination with keyfile') + parser.add_argument('-k', metavar='path', help='path and name to SSL keyfile, e.g. /opt/test.key, ' + 'works only in combination with certfile') parser.add_argument('-v', '--version', action='version', help='Shows version number and exits Calibre-Web', version=version_info()) parser.add_argument('-i', metavar='ip-address', help='Server IP-Address to listen') @@ -67,7 +69,6 @@ class CliParameter(object): if os.path.isdir(self.gd_path): self.gd_path = os.path.join(self.gd_path, DEFAULT_GDRIVE_FILE) - # handle and check parameter for ssl encryption self.certfilepath = None self.keyfilepath = None @@ -96,7 +97,7 @@ class CliParameter(object): self.keyfilepath = "" # dry run updater - self.dry_run =args.d or None + self.dry_run = args.d or None # enable reconnect endpoint for docker database reconnect self.reconnect_enable = args.r or os.environ.get("CALIBRE_RECONNECT", None) # load covers from localhost @@ -112,7 +113,7 @@ class CliParameter(object): else: socket.inet_pton(socket.AF_INET, self.ip_address) else: - # on windows python < 3.4, inet_pton is not available + # on Windows python < 3.4, inet_pton is not available # inet_atom only handles IPv4 addresses socket.inet_aton(self.ip_address) except socket.error as err: diff --git a/cps/config_sql.py b/cps/config_sql.py index 405a92ec..bba3d650 100644 --- a/cps/config_sql.py +++ b/cps/config_sql.py @@ -35,6 +35,7 @@ from . import constants, logger log = logger.create() _Base = declarative_base() + class _Flask_Settings(_Base): __tablename__ = 'flask_settings' @@ -67,7 +68,7 @@ class _Settings(_Base): config_external_port = Column(Integer, default=constants.DEFAULT_PORT) config_certfile = Column(String) config_keyfile = Column(String) - config_trustedhosts = Column(String,default='') + config_trustedhosts = Column(String, default='') config_calibre_web_title = Column(String, default=u'Calibre-Web') config_books_per_page = Column(Integer, default=60) config_random_books = Column(Integer, default=4) @@ -123,7 +124,7 @@ class _Settings(_Base): config_ldap_key_path = Column(String, default="") config_ldap_dn = Column(String, default='dc=example,dc=org') config_ldap_user_object = Column(String, default='uid=%s') - config_ldap_member_user_object = Column(String, default='') # + config_ldap_member_user_object = Column(String, default='') config_ldap_openldap = Column(Boolean, default=True) config_ldap_group_object_filter = Column(String, default='(&(objectclass=posixGroup)(cn=%s))') config_ldap_group_members_field = Column(String, default='memberUid') @@ -171,7 +172,6 @@ class _ConfigSQL(object): self.config_converterpath = autodetect_calibre_binary() if self.config_kepubifypath == None: # pylint: disable=access-member-before-definition - change = True self.config_kepubifypath = autodetect_kepubify_binary() @@ -257,14 +257,14 @@ class _ConfigSQL(object): return logger.get_level_name(self.config_log_level) def get_mail_settings(self): - return {k:v for k, v in self.__dict__.items() if k.startswith('mail_')} + return {k: v for k, v in self.__dict__.items() if k.startswith('mail_')} def get_mail_server_configured(self): return bool((self.mail_server != constants.DEFAULT_MAIL_SERVER and self.mail_server_type == 0) or (self.mail_gmail_token != {} and self.mail_server_type == 1)) def get_scheduled_task_settings(self): - return {k:v for k, v in self.__dict__.items() if k.startswith('schedule_')} + return {k: v for k, v in self.__dict__.items() if k.startswith('schedule_')} def set_from_dictionary(self, dictionary, field, convertor=None, default=None, encode=None): """Possibly updates a field of this object. @@ -301,7 +301,7 @@ class _ConfigSQL(object): return storage def load(self): - '''Load all configuration values from the underlying storage.''' + """Load all configuration values from the underlying storage.""" s = self._read_from_storage() # type: _Settings for k, v in s.__dict__.items(): if k[0] != '_': @@ -334,7 +334,7 @@ class _ConfigSQL(object): self._session.rollback() def save(self): - '''Apply all configuration values to the underlying storage.''' + """Apply all configuration values to the underlying storage.""" s = self._read_from_storage() # type: _Settings for k, v in self.__dict__.items(): @@ -369,6 +369,7 @@ class _ConfigSQL(object): except AttributeError: pass + def _migrate_table(session, orm_class): changed = False @@ -390,9 +391,9 @@ def _migrate_table(session, orm_class): else: column_type = column.type alter_table = text("ALTER TABLE %s ADD COLUMN `%s` %s %s" % (orm_class.__tablename__, - column_name, - column_type, - column_default)) + column_name, + column_type, + column_default)) log.debug(alter_table) session.execute(alter_table) changed = True @@ -462,6 +463,7 @@ def load_configuration(conf, session, cli): conf.init_config(session, cli) # return conf + def get_flask_session_key(_session): flask_settings = _session.query(_Flask_Settings).one_or_none() if flask_settings == None: diff --git a/cps/converter.py b/cps/converter.py index af2a6c09..981b3909 100644 --- a/cps/converter.py +++ b/cps/converter.py @@ -54,10 +54,9 @@ def get_calibre_version(): def get_unrar_version(): unrar_version = _get_command_version(config.config_rarfile_location, r'UNRAR.*\d') if unrar_version == "not installed": - unrar_version = _get_command_version(config.config_rarfile_location, r'unrar.*\d','-V') + unrar_version = _get_command_version(config.config_rarfile_location, r'unrar.*\d', '-V') return unrar_version + def get_kepubify_version(): - return _get_command_version(config.config_kepubifypath, r'kepubify\s','--version') - - + return _get_command_version(config.config_kepubifypath, r'kepubify\s', '--version') diff --git a/cps/debug_info.py b/cps/debug_info.py index dd5e858e..64fda557 100644 --- a/cps/debug_info.py +++ b/cps/debug_info.py @@ -32,6 +32,7 @@ from .about import collect_stats log = logger.create() + def assemble_logfiles(file_name): log_list = sorted(glob.glob(file_name + '*'), reverse=True) wfd = BytesIO() diff --git a/cps/dep_check.py b/cps/dep_check.py index 44f3961a..bc015756 100644 --- a/cps/dep_check.py +++ b/cps/dep_check.py @@ -42,7 +42,7 @@ def load_dependencies(optional=False): res = re.match(r'(.*?)([<=>\s]+)([\d\.]+),?\s?([<=>\s]+)?([\d\.]+)?', line.strip()) try: if getattr(sys, 'frozen', False): - dep_version = exe_deps[res.group(1).lower().replace('_','-')] + dep_version = exe_deps[res.group(1).lower().replace('_', '-')] else: if importlib: dep_version = version(res.group(1)) diff --git a/cps/logger.py b/cps/logger.py index 82853bba..13535efb 100644 --- a/cps/logger.py +++ b/cps/logger.py @@ -54,7 +54,6 @@ class _Logger(logging.Logger): else: self.error(message, *args, **kwargs) - def debug_no_auth(self, message, *args, **kwargs): message = message.strip("\r\n") if message.startswith("send: AUTH"): @@ -66,6 +65,7 @@ class _Logger(logging.Logger): def get(name=None): return logging.getLogger(name) + def create(): parent_frame = inspect.stack(0)[1] if hasattr(parent_frame, 'frame'): @@ -75,9 +75,11 @@ def create(): parent_module = inspect.getmodule(parent_frame) return get(parent_module.__name__) + def is_debug_enabled(): return logging.root.level <= logging.DEBUG + def is_info_enabled(logger): return logging.getLogger(logger).level <= logging.INFO @@ -114,10 +116,10 @@ def get_accesslogfile(log_file): def setup(log_file, log_level=None): - ''' + """ Configure the logging output. May be called multiple times. - ''' + """ log_level = log_level or DEFAULT_LOG_LEVEL logging.setLoggerClass(_Logger) logging.getLogger(__package__).setLevel(log_level) @@ -127,7 +129,7 @@ def setup(log_file, log_level=None): # avoid spamming the log with debug messages from libraries r.setLevel(log_level) - # Otherwise name get's destroyed on windows + # Otherwise, name gets destroyed on Windows if log_file != LOG_TO_STDERR and log_file != LOG_TO_STDOUT: log_file = _absolute_log_file(log_file, DEFAULT_LOG_FILE) @@ -164,9 +166,9 @@ def setup(log_file, log_level=None): def create_access_log(log_file, log_name, formatter): - ''' + """ One-time configuration for the web server's access log. - ''' + """ log_file = _absolute_log_file(log_file, DEFAULT_ACCESS_LOG) logging.debug("access log: %s", log_file) @@ -183,8 +185,7 @@ def create_access_log(log_file, log_name, formatter): file_handler.setFormatter(formatter) access_log.addHandler(file_handler) - return access_log, \ - "" if _absolute_log_file(log_file, DEFAULT_ACCESS_LOG) == DEFAULT_ACCESS_LOG else log_file + return access_log, "" if _absolute_log_file(log_file, DEFAULT_ACCESS_LOG) == DEFAULT_ACCESS_LOG else log_file # Enable logging of smtp lib debug output From 790080f2a0d9d4709da744167954448dc1b76382 Mon Sep 17 00:00:00 2001 From: Ozzieisaacs Date: Sun, 22 May 2022 12:49:00 +0100 Subject: [PATCH 17/20] Fix Cache Buster --- cps/cache_buster.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/cps/cache_buster.py b/cps/cache_buster.py index 0a036b63..eb6b7433 100644 --- a/cps/cache_buster.py +++ b/cps/cache_buster.py @@ -76,11 +76,11 @@ def init_cache_busting(app): if file_hash: values["q"] = file_hash - def debusting_static_view(file_name): + def debusting_static_view(filename): """ Serve a request for a static file having a busted name. """ - return original_static_view(filename=unbust_filename(file_name)) + return original_static_view(filename=unbust_filename(filename)) # Replace the default static file view with our debusting view. original_static_view = app.view_functions["static"] From a3cd217cea1e3ba2c9749451da1f93d36a2ebf9a Mon Sep 17 00:00:00 2001 From: Aisha Tammy Date: Wed, 25 May 2022 12:14:09 -0400 Subject: [PATCH 18/20] allow @ in auto username detection Signed-off-by: Aisha Tammy --- cps/admin.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cps/admin.py b/cps/admin.py index 3c889643..45d69dbc 100755 --- a/cps/admin.py +++ b/cps/admin.py @@ -1994,7 +1994,7 @@ def _handle_edit_user(to_save, content, languages, translations, kobo_support): def extract_user_data_from_field(user, field): - match = re.search(field + r"=([\.\d\s\w-]+)", user, re.IGNORECASE | re.UNICODE) + match = re.search(field + r"=([@\.\d\s\w-]+)", user, re.IGNORECASE | re.UNICODE) if match: return match.group(1) else: From aa442d8c51a9ccb738bf964a0ea1d4c19533f4f1 Mon Sep 17 00:00:00 2001 From: Ozzie Isaacs Date: Tue, 31 May 2022 19:22:57 +0200 Subject: [PATCH 19/20] Update flask-login requirement --- cps/redirect.py | 2 +- requirements.txt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/cps/redirect.py b/cps/redirect.py index 9382a205..09b3101f 100644 --- a/cps/redirect.py +++ b/cps/redirect.py @@ -25,7 +25,7 @@ # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING # IN ANY WAY OUT OF THE USE OF THIS SOFTWARE AND DOCUMENTATION, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -# http://flask.pocoo.org/snippets/62/ +# https://web.archive.org/web/20120517003641/http://flask.pocoo.org/snippets/62/ from urllib.parse import urlparse, urljoin diff --git a/requirements.txt b/requirements.txt index 7a30ae06..acaf4a40 100644 --- a/requirements.txt +++ b/requirements.txt @@ -2,7 +2,7 @@ APScheduler>=3.6.3,<3.10.0 werkzeug<2.1.0 Babel>=1.3,<3.0 Flask-Babel>=0.11.1,<2.1.0 -Flask-Login>=0.3.2,<0.6.1 +Flask-Login>=0.3.2,<0.6.2 Flask-Principal>=0.3.2,<0.5.1 backports_abc>=0.4 Flask>=1.0.2,<2.1.0 From c36138b144a78efb4eb1168304c20857231c7910 Mon Sep 17 00:00:00 2001 From: Illia Maier <64944310+Illia-M@users.noreply.github.com> Date: Fri, 3 Jun 2022 08:59:18 +0300 Subject: [PATCH 20/20] Update Ukrainian translations --- cps/translations/uk/LC_MESSAGES/messages.po | 98 ++++++++++----------- 1 file changed, 49 insertions(+), 49 deletions(-) diff --git a/cps/translations/uk/LC_MESSAGES/messages.po b/cps/translations/uk/LC_MESSAGES/messages.po index 1f9548a0..e4227f3a 100644 --- a/cps/translations/uk/LC_MESSAGES/messages.po +++ b/cps/translations/uk/LC_MESSAGES/messages.po @@ -31,11 +31,11 @@ msgstr "Виконується зупинка серверу, будь-ласк #: cps/admin.py:156 msgid "Reconnect successful" -msgstr "" +msgstr "Підключення успішне" #: cps/admin.py:159 msgid "Unknown command" -msgstr "" +msgstr "Невідома команда" #: cps/admin.py:192 cps/editbooks.py:571 cps/editbooks.py:573 #: cps/editbooks.py:609 cps/editbooks.py:626 cps/editbooks.py:1233 @@ -63,15 +63,15 @@ msgstr "Керування сервером" #: cps/admin.py:353 cps/opds.py:532 cps/templates/grid.html:14 #: cps/templates/list.html:13 msgid "All" -msgstr "" +msgstr "Всі" #: cps/admin.py:380 cps/admin.py:1365 msgid "User not found" -msgstr "" +msgstr "Користувача не знайдено" #: cps/admin.py:394 msgid "{} users deleted successfully" -msgstr "" +msgstr "{} користувачі видалені успішно" #: cps/admin.py:417 cps/templates/config_view_edit.html:133 #: cps/templates/user_edit.html:45 cps/templates/user_table.html:81 @@ -100,7 +100,7 @@ msgstr "" #: cps/admin.py:486 msgid "Invalid role" -msgstr "" +msgstr "Не правильна роль" #: cps/admin.py:490 msgid "Guest can't have this view" @@ -890,7 +890,7 @@ msgstr "Вдалося! Будь-ласка, поверніться до ваш #: cps/render_template.py:40 cps/web.py:405 msgid "Books" -msgstr "" +msgstr "Книжки" #: cps/render_template.py:42 msgid "Show recent books" @@ -937,7 +937,7 @@ msgstr "Непрочитані книги" #: cps/render_template.py:66 msgid "Show unread" -msgstr "" +msgstr "Показати не прочитані" #: cps/render_template.py:67 msgid "Discover" @@ -979,7 +979,7 @@ msgstr "Показувати вибір автора" #: cps/render_template.py:80 cps/templates/book_table.html:72 #: cps/templates/index.xml:76 cps/web.py:966 msgid "Publishers" -msgstr "" +msgstr "Видавництва" #: cps/render_template.py:82 cps/templates/user_table.html:163 msgid "Show publisher selection" @@ -997,7 +997,7 @@ msgstr "Показувати вибір мови" #: cps/render_template.py:87 cps/templates/index.xml:104 msgid "Ratings" -msgstr "" +msgstr "Рейтинги" #: cps/render_template.py:89 cps/templates/user_table.html:164 msgid "Show ratings selection" @@ -1005,7 +1005,7 @@ msgstr "" #: cps/render_template.py:90 cps/templates/index.xml:112 msgid "File formats" -msgstr "" +msgstr "Формати файлів" #: cps/render_template.py:92 cps/templates/user_table.html:165 msgid "Show file formats selection" @@ -1013,7 +1013,7 @@ msgstr "" #: cps/render_template.py:94 cps/web.py:765 msgid "Archived Books" -msgstr "" +msgstr "Архівні книжки" #: cps/render_template.py:96 cps/templates/user_table.html:166 msgid "Show archived books" @@ -1021,7 +1021,7 @@ msgstr "" #: cps/render_template.py:99 cps/web.py:796 msgid "Books List" -msgstr "" +msgstr "Список книжок" #: cps/render_template.py:101 cps/templates/user_table.html:168 msgid "Show Books List" @@ -1036,21 +1036,21 @@ msgstr "Пошук" #: cps/search.py:194 msgid "Published after " -msgstr "" +msgstr "Опубліковані після " #: cps/search.py:201 msgid "Published before " -msgstr "Опубліковано до" +msgstr "Опубліковано до " #: cps/search.py:223 #, python-format msgid "Rating <= %(rating)s" -msgstr "" +msgstr "Рейтинг <= %(rating)s" #: cps/search.py:225 #, python-format msgid "Rating >= %(rating)s" -msgstr "" +msgstr "Рейтинг >= %(rating)s" #: cps/search.py:227 #, python-format @@ -2803,7 +2803,7 @@ msgstr "" #: cps/templates/modal_dialogs.html:15 msgid "Enter Tag" -msgstr "" +msgstr "Введіть тег" #: cps/templates/modal_dialogs.html:24 msgid "Add View Restriction" @@ -2831,7 +2831,7 @@ msgstr "" #: cps/templates/modal_dialogs.html:76 msgid "Choose File Location" -msgstr "" +msgstr "Оберіть розташування файлу" #: cps/templates/modal_dialogs.html:82 msgid "type" @@ -2928,15 +2928,15 @@ msgstr "" #: cps/templates/readcbr.html:125 msgid "Best" -msgstr "" +msgstr "Краще" #: cps/templates/readcbr.html:126 msgid "Width" -msgstr "" +msgstr "Ширина" #: cps/templates/readcbr.html:127 msgid "Height" -msgstr "" +msgstr "Висота" #: cps/templates/readcbr.html:128 msgid "Native" @@ -2944,7 +2944,7 @@ msgstr "" #: cps/templates/readcbr.html:133 msgid "Rotate" -msgstr "" +msgstr "Повернути" #: cps/templates/readcbr.html:144 msgid "Flip" @@ -2956,11 +2956,11 @@ msgstr "" #: cps/templates/readcbr.html:148 msgid "Vertical" -msgstr "" +msgstr "Вертикально" #: cps/templates/readcbr.html:153 msgid "Direction" -msgstr "" +msgstr "Напрям" #: cps/templates/readcbr.html:156 msgid "Left to Right" @@ -2984,11 +2984,11 @@ msgstr "" #: cps/templates/readcbr.html:174 msgid "Show" -msgstr "" +msgstr "Показати" #: cps/templates/readcbr.html:175 msgid "Hide" -msgstr "" +msgstr "Сховати" #: cps/templates/readdjvu.html:5 msgid "DJVU Reader" @@ -3078,7 +3078,7 @@ msgstr "Виключити мови" #: cps/templates/search_form.html:126 msgid "Extensions" -msgstr "" +msgstr "Розширення" #: cps/templates/search_form.html:134 msgid "Exclude Extensions" @@ -3094,11 +3094,11 @@ msgstr "" #: cps/templates/search_form.html:180 msgid "From:" -msgstr "" +msgstr "Від:" #: cps/templates/search_form.html:190 msgid "To:" -msgstr "" +msgstr "До:" #: cps/templates/shelf.html:13 msgid "Delete this Shelf" @@ -3158,11 +3158,11 @@ msgstr "Серій в цій бібліотеці" #: cps/templates/stats.html:29 msgid "System Statistics" -msgstr "" +msgstr "Статистика системи" #: cps/templates/stats.html:33 msgid "Program" -msgstr "" +msgstr "Програма" #: cps/templates/stats.html:34 msgid "Installed Version" @@ -3170,31 +3170,31 @@ msgstr "Встановлена версія" #: cps/templates/tasks.html:12 msgid "User" -msgstr "" +msgstr "Користувач" #: cps/templates/tasks.html:14 msgid "Task" -msgstr "" +msgstr "Завдання" #: cps/templates/tasks.html:15 msgid "Status" -msgstr "" +msgstr "Статус" #: cps/templates/tasks.html:16 msgid "Progress" -msgstr "" +msgstr "Прогрес" #: cps/templates/tasks.html:17 msgid "Run Time" -msgstr "" +msgstr "Тривалість" #: cps/templates/tasks.html:18 msgid "Start Time" -msgstr "" +msgstr "Час початку" #: cps/templates/tasks.html:20 msgid "Actions" -msgstr "" +msgstr "Дії" #: cps/templates/tasks.html:40 msgid "This task will be cancelled. Any progress made by this task will be saved." @@ -3206,7 +3206,7 @@ msgstr "" #: cps/templates/user_edit.html:20 msgid "Reset user Password" -msgstr "" +msgstr "Скинути пароль користувача" #: cps/templates/user_edit.html:43 msgid "Language of Books" @@ -3214,7 +3214,7 @@ msgstr "Показувати книги на мовах" #: cps/templates/user_edit.html:54 msgid "OAuth Settings" -msgstr "" +msgstr "Налаштування OAuth" #: cps/templates/user_edit.html:56 msgid "Link" @@ -3230,7 +3230,7 @@ msgstr "" #: cps/templates/user_edit.html:66 msgid "Create/View" -msgstr "" +msgstr "Створити/Переглянути" #: cps/templates/user_edit.html:70 msgid "Force full kobo sync" @@ -3254,7 +3254,7 @@ msgstr "" #: cps/templates/user_table.html:80 cps/templates/user_table.html:103 msgid "Select..." -msgstr "" +msgstr "Обрати..." #: cps/templates/user_table.html:131 #, fuzzy @@ -3274,7 +3274,7 @@ msgstr "Ваш email-адрес" #: cps/templates/user_table.html:136 #, fuzzy msgid "Enter Kindle E-mail Address" -msgstr "Kindle" +msgstr "" #: cps/templates/user_table.html:136 msgid "Kindle E-mail" @@ -3282,7 +3282,7 @@ msgstr "" #: cps/templates/user_table.html:137 msgid "Locale" -msgstr "" +msgstr "Локалізація" #: cps/templates/user_table.html:138 msgid "Visible Book Languages" @@ -3294,15 +3294,15 @@ msgstr "" #: cps/templates/user_table.html:139 msgid "Allowed Tags" -msgstr "" +msgstr "Дозволені теги" #: cps/templates/user_table.html:140 msgid "Edit Denied Tags" -msgstr "" +msgstr "Змінити заборонені теги" #: cps/templates/user_table.html:140 msgid "Denied Tags" -msgstr "" +msgstr "Заборонені теги" #: cps/templates/user_table.html:141 msgid "Edit Allowed Column Values" @@ -3327,7 +3327,7 @@ msgstr "Дозволити зміну пароля" #: cps/templates/user_table.html:147 msgid "View" -msgstr "" +msgstr "Показати" #: cps/templates/user_table.html:150 #, fuzzy
{{_('Program Library')}}{{_('Program')}} {{_('Installed Version')}}
TestCli10100012921 0 - Detail + Detail
+
TestCli - test_enable_reconnect
+
+
+ ERROR +
+ + + +
TestCli - test_environ_port_setting
TestCli - test_no_database
PASS +
+ FAIL +
+ + + +
TestCli - test_settingsdb_not_writeable
+
TestCli - test_writeonly_static_files
+
+
+ FAIL +
+ + + +
TestCliGdrivedb 44 04 0 0 @@ -353,38 +442,131 @@ -
TestCliGdrivedb - test_cli_gdrive_folder
PASS +
+ FAIL +
+ + + +
TestCliGdrivedb - test_cli_gdrive_location
PASS +
+ FAIL +
+ + + +
TestCliGdrivedb - test_gdrive_db_nonwrite
PASS +
+ FAIL +
+ + + +
TestCliGdrivedb - test_no_database
PASS +
+ FAIL +
+ + + +
TestEbookConvertCalibre 151500546 0 Detail @@ -470,74 +652,242 @@ -
TestEbookConvertCalibre - test_convert_deactivate
PASS +
+ ERROR +
+ + + +
TestEbookConvertCalibre - test_convert_email
PASS +
+ ERROR +
+ + + +
TestEbookConvertCalibre - test_convert_failed_and_email
PASS +
+ ERROR +
+ + + +
TestEbookConvertCalibre - test_convert_only
PASS +
+ ERROR +
+ + + +
TestEbookConvertCalibre - test_convert_options
PASS +
+ FAIL +
+ + + +
TestEbookConvertCalibre - test_convert_parameter
PASS +
+ ERROR +
+ + + +
TestEbookConvertCalibre - test_convert_wrong_excecutable
PASS +
+ ERROR +
+ + + +
TestEbookConvertCalibre - test_convert_xss
PASS +
+ FAIL +
+ + + +
TestEbookConvertCalibre - test_email_only
PASS +
+ FAIL +
+ + + +
TestEbookConvertCalibre - test_user_convert_xss
PASS +
+ FAIL +
+ + + +
TestEbookConvertKepubify 300 3 000 Detail
TestEbookConvertKepubify - test_convert_deactivate
PASS +
+ ERROR +
+ + + +
TestEbookConvertKepubify - test_convert_only
PASS +
+ ERROR +
+ + + +
TestEbookConvertKepubify - test_convert_wrong_excecutable
PASS +
+ ERROR +
+ + + +
TestEbookConvertGDriveKepubify 300 3 000 Detail
TestEbookConvertGDriveKepubify - test_convert_deactivate
PASS +
+ ERROR +
+ + + +
TestEbookConvertGDriveKepubify - test_convert_only
PASS +
+ ERROR +
+ + + +
TestEbookConvertGDriveKepubify - test_convert_wrong_excecutable
PASS +
+ ERROR +
+ + + +
TestLoadMetadata 100 1 000 Detail
TestLoadMetadata - test_load_metadata
PASS +
+ ERROR +
+ + + +
TestReconnect11000 - Detail -
-
TestReconnect - test_reconnect_endpoint
-
PASS
TestRegister 80 0 - Detail + Detail
TestRegister - test_forgot_password
TestRegister - test_illegal_email
TestRegister - test_limit_domain
TestRegister - test_register_no_server
TestRegister - test_registering_only_email
TestRegister - test_registering_user
TestRegister - test_registering_user_fail
TestRegister - test_user_change_password
0 0 - Detail + Detail
TestReverseProxy - test_logout
TestReverseProxy - test_move_page
TestReverseProxy - test_reverse_about
0 1 - Detail + Detail
TestShelf - test_access_shelf
TestShelf - test_add_shelf_from_search
TestShelf - test_adv_search_shelf
TestShelf - test_arrange_shelf
TestShelf - test_create_public_shelf
TestShelf - test_create_public_shelf_no_permission
TestShelf - test_delete_book_of_shelf
TestShelf - test_private_shelf
TestShelf - test_public_private_shelf
TestShelf - test_public_shelf
TestShelf - test_rename_shelf
TestShelf - test_shelf_action_non_shelf_edit_role
TestShelf - test_shelf_anonymous
TestShelf - test_shelf_database_change
- SKIP + SKIP
-
TestShelf - test_shelf_long_name
TestShelf - test_xss_shelf
0 0 - Detail + Detail
TestThumbnailsEnv - test_cover_cache_env_on_database_change
TestThumbnails 85261 0 1 - Detail + Detail
TestThumbnails - test_cache_non_writable
TestThumbnails - test_cache_of_deleted_book
TestThumbnails - test_cover_cache_on_database_change
TestThumbnails - test_cover_change_on_upload_new_cover
- FAIL + FAIL
-
TestThumbnails - test_cover_for_series
TestThumbnails - test_cover_on_upload_book
TestThumbnails - test_remove_cover_from_cache
TestThumbnails - test_sideloaded_book
-
- FAIL -
- - - -
PASS
0 1 - Detail + Detail
TestUpdater - test_check_update_nightly_errors
TestUpdater - test_check_update_nightly_request_errors
TestUpdater - test_check_update_stable_errors
TestUpdater - test_check_update_stable_versions
TestUpdater - test_perform_update
TestUpdater - test_perform_update_stable_errors
TestUpdater - test_perform_update_timeout
- SKIP + SKIP
-
TestUpdater - test_reconnect_database
TestUpdater - test_update_write_protect
0 0 - Detail + Detail
TestUploadEPubs - test_upload_epub_cover
TestUploadEPubs - test_upload_epub_cover_formats
TestUploadEPubs - test_upload_epub_duplicate
TestUploadEPubs - test_upload_epub_lang
0 0 - Detail + Detail
TestUserList - test_edit_user_email
TestUserList - test_list_visibility
TestUserList - test_user_list_admin_role
TestUserList - test_user_list_check_sort
TestUserList - test_user_list_denied_tags
TestUserList - test_user_list_download_role
TestUserList - test_user_list_edit_button
TestUserList - test_user_list_edit_email
TestUserList - test_user_list_edit_kindle
TestUserList - test_user_list_edit_language
TestUserList - test_user_list_edit_locale
TestUserList - test_user_list_edit_name
TestUserList - test_user_list_edit_visiblility
TestUserList - test_user_list_guest_edit
TestUserList - test_user_list_remove_admin
TestUserList - test_user_list_requests
TestUserList - test_user_list_search
TestUserList - test_user_list_sort
0 0 - Detail + Detail
TestUserLoad - test_user_change_vis
0 0 - Detail + Detail
TestUserTemplate - test_allow_column_restriction
TestUserTemplate - test_allow_tag_restriction
TestUserTemplate - test_archived_format_template
TestUserTemplate - test_author_user_template
TestUserTemplate - test_best_user_template
TestUserTemplate - test_category_user_template
TestUserTemplate - test_deny_column_restriction
TestUserTemplate - test_deny_tag_restriction
TestUserTemplate - test_detail_random_user_template
TestUserTemplate - test_download_user_template
TestUserTemplate - test_format_user_template
TestUserTemplate - test_hot_user_template
TestUserTemplate - test_language_user_template
TestUserTemplate - test_limit_book_languages
TestUserTemplate - test_list_user_template
TestUserTemplate - test_publisher_user_template
TestUserTemplate - test_random_user_template
TestUserTemplate - test_read_user_template
TestUserTemplate - test_recent_user_template
TestUserTemplate - test_series_user_template
TestUserTemplate - test_ui_language_settings
0 0 - Detail + Detail
TestCalibreWebVisibilitys - test_about
TestCalibreWebVisibilitys - test_admin_SMTP_Settings
TestCalibreWebVisibilitys - test_admin_add_user
TestCalibreWebVisibilitys - test_admin_change_password
TestCalibreWebVisibilitys - test_admin_change_visibility_archived
TestCalibreWebVisibilitys - test_admin_change_visibility_authors
TestCalibreWebVisibilitys - test_admin_change_visibility_category
TestCalibreWebVisibilitys - test_admin_change_visibility_file_formats
TestCalibreWebVisibilitys - test_admin_change_visibility_hot
TestCalibreWebVisibilitys - test_admin_change_visibility_language
TestCalibreWebVisibilitys - test_admin_change_visibility_publisher
TestCalibreWebVisibilitys - test_admin_change_visibility_random
TestCalibreWebVisibilitys - test_admin_change_visibility_rated
TestCalibreWebVisibilitys - test_admin_change_visibility_rating
TestCalibreWebVisibilitys - test_admin_change_visibility_read
TestCalibreWebVisibilitys - test_admin_change_visibility_series
TestCalibreWebVisibilitys - test_allow_columns
TestCalibreWebVisibilitys - test_allow_tags
TestCalibreWebVisibilitys - test_archive_books
TestCalibreWebVisibilitys - test_authors_max_settings
TestCalibreWebVisibilitys - test_change_title
TestCalibreWebVisibilitys - test_checked_logged_in
TestCalibreWebVisibilitys - test_hide_custom_column
TestCalibreWebVisibilitys - test_link_column_to_read_status
TestCalibreWebVisibilitys - test_random_books_available
TestCalibreWebVisibilitys - test_read_status_visible
TestCalibreWebVisibilitys - test_request_link_column_to_read_status
TestCalibreWebVisibilitys - test_restrict_columns
TestCalibreWebVisibilitys - test_restrict_tags
TestCalibreWebVisibilitys - test_save_views_recent
TestCalibreWebVisibilitys - test_search_functions
TestCalibreWebVisibilitys - test_search_order
TestCalibreWebVisibilitys - test_search_string
TestCalibreWebVisibilitys - test_user_email_available
TestCalibreWebVisibilitys - test_user_visibility_sidebar
0 0 - Detail + Detail
TestCalibreHelper - test_author_sort
TestCalibreHelper - test_author_sort_comma
TestCalibreHelper - test_author_sort_junior
TestCalibreHelper - test_author_sort_oneword
TestCalibreHelper - test_author_sort_roman
TestCalibreHelper - test_check_Limit_Length
TestCalibreHelper - test_check_char_replacement
TestCalibreHelper - test_check_chinese_Characters
TestCalibreHelper - test_check_deg_eur_replacement
TestCalibreHelper - test_check_doubleS
TestCalibreHelper - test_check_finish_Dot
TestCalibreHelper - test_check_high23
TestCalibreHelper - test_check_umlauts
TestCalibreHelper - test_random_password
TestCalibreHelper - test_split_authors
TestCalibreHelper - test_whitespaces
Total423413304243911214 7  
google-api-python-client2.46.02.47.0 TestCliGdrivedb
google-api-python-client2.46.02.47.0 TestEbookConvertCalibreGDrive
google-api-python-client2.46.02.47.0 TestEbookConvertGDriveKepubify
google-api-python-client2.46.02.47.0 TestEditAuthorsGdrive
google-api-python-client2.46.02.47.0 TestEditBooksOnGdrive
google-api-python-client2.46.02.47.0 TestSetupGdrive
jsonschema4.4.04.5.1 TestKoboSync
jsonschema4.4.04.5.1 TestKoboSyncBig
jsonschema4.4.04.5.1 TestLdapLogin
{{_('Username')}} {{_('E-mail Address')}}{{_('Send to Kindle E-mail Address')}}{{_('Send to E-Reader E-mail Address')}} {{_('Downloads')}}
TestCli 129211200 0 Detail @@ -311,42 +311,11 @@ -
TestCli - test_enable_reconnect
-
- ERROR -
- - - -
PASS
TestCli - test_no_database
-
- FAIL -
- - - -
PASS
TestCli - test_writeonly_static_files
-
- FAIL -
- - - -
PASS
TestCliGdrivedb 40 4 0 00 Detail
TestCliGdrivedb - test_cli_gdrive_folder
-
- FAIL -
- - - -
PASS
TestCliGdrivedb - test_cli_gdrive_location
-
- FAIL -
- - - -
PASS
TestCliGdrivedb - test_gdrive_db_nonwrite
-
- FAIL -
- - - -
PASS
TestCliGdrivedb - test_no_database
-
- FAIL -
- - - -
PASS
TestEbookConvertCalibre 155461500 0 Detail @@ -652,242 +488,74 @@ AssertionError: True is not false : Inital config failed with normal database

+
TestEbookConvertCalibre - test_convert_deactivate
-
- ERROR -
- - - -
PASS
TestEbookConvertCalibre - test_convert_email
-
- ERROR -
- - - -
PASS
TestEbookConvertCalibre - test_convert_failed_and_email
-
- ERROR -
- - - -
PASS
TestEbookConvertCalibre - test_convert_only
-
- ERROR -
- - - -
PASS
TestEbookConvertCalibre - test_convert_options
-
- FAIL -
- - - -
PASS
TestEbookConvertCalibre - test_convert_parameter
-
- ERROR -
- - - -
PASS
TestEbookConvertCalibre - test_convert_wrong_excecutable
-
- ERROR -
- - - -
PASS
TestEbookConvertCalibre - test_convert_xss
-
- FAIL -
- - - -
PASS
TestEbookConvertCalibre - test_email_only
-
- FAIL -
- - - -
PASS
TestEbookConvertCalibre - test_user_convert_xss
-
- FAIL -
- - - -
PASS
TestEbookConvertCalibreGDrive 76134 0 0 @@ -1005,11 +629,31 @@ AssertionError: 'Failed' != 'Finished' -
TestEbookConvertCalibreGDrive - test_convert_email
PASS +
+ FAIL +
+ + + +
TestEbookConvertCalibreGDrive - test_convert_only
PASS +
+ FAIL +
+ + + +
TestEbookConvertCalibreGDrive - test_email_only
PASS +
+ FAIL +
+ + + +
TestEbookConvertKepubify 3 00321 0 Detail @@ -1103,26 +789,26 @@ AssertionError: 20 != 9 -
TestEbookConvertKepubify - test_convert_deactivate
- ERROR + FAIL
-
TestEbookConvertKepubify - test_convert_wrong_excecutable
- ERROR + FAIL
-
TestEbookConvertGDriveKepubify 3 00321 0 Detail @@ -1207,26 +893,26 @@ AttributeError: 'bool' object has no attribute 'text' -
TestEbookConvertGDriveKepubify - test_convert_deactivate
- ERROR + FAIL
-
TestEbookConvertGDriveKepubify - test_convert_wrong_excecutable
- ERROR + FAIL
-
TestLoadMetadata 100 1 000 Detail
TestLoadMetadata - test_load_metadata
-
- ERROR -
- - - -
PASS
TestThumbnails 86170 0 1 @@ -4174,31 +3840,11 @@ IndexError: list index out of range -
TestThumbnails - test_cover_change_on_upload_new_cover
-
- FAIL -
- - - -
PASS
TestUploadEPubs 44022 0 0 @@ -4367,20 +4013,60 @@ AssertionError: 220 != 218 -
TestUploadEPubs - test_upload_epub_cover
PASS +
+ FAIL +
+ + + +
TestUploadEPubs - test_upload_epub_cover_formats
PASS +
+ FAIL +
+ + + +
TestUserList 1818001512 0 Detail @@ -4490,11 +4176,31 @@ AssertionError: 220 != 218 -
TestUserList - test_user_list_edit_kindle
PASS +
+ ERROR +
+ + + +
TestUserList - test_user_list_search
PASS +
+ ERROR +
+ + + +
TestUserList - test_user_list_sort
PASS +
+ FAIL +
+ + + +
Total 4243911214402114 7