modoboa 2.6.4__py3-none-any.whl → 2.6.5__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- modoboa/autoreply/models.py +4 -4
- modoboa/frontend_dist/assets/{AccountAliasForm-tLHotdIR.js → AccountAliasForm-B-hTKSFr.js} +1 -1
- modoboa/frontend_dist/assets/{AccountEditView-DnQIIg47.js → AccountEditView-LkP_qhf_.js} +1 -1
- modoboa/frontend_dist/assets/AccountLayout-APeC9bsN.js +1 -0
- modoboa/frontend_dist/assets/{AccountPasswordSubForm-DpADntAL.js → AccountPasswordSubForm-D4vB2yQK.js} +1 -1
- modoboa/frontend_dist/assets/{AccountView-CJBGh9Oe.js → AccountView-CloBP1BY.js} +1 -1
- modoboa/frontend_dist/assets/{AddressBook-CrFqzlzZ.js → AddressBook-C03MXg3y.js} +1 -1
- modoboa/frontend_dist/assets/{AdminLayout-BbCt7YxX.js → AdminLayout-DFmyKOo6.js} +1 -1
- modoboa/frontend_dist/assets/{AlarmsView-CIlt_IKQ.js → AlarmsView-CFhH0I5d.js} +1 -1
- modoboa/frontend_dist/assets/{AliasEditView-n75NEN_s.js → AliasEditView-BVjNJekt.js} +1 -1
- modoboa/frontend_dist/assets/{AliasRecipientForm-jjj5yJJw.js → AliasRecipientForm-CZ_SvjtG.js} +1 -1
- modoboa/frontend_dist/assets/{AliasView-DFIvPeIm.js → AliasView-DvvI6cV9.js} +1 -1
- modoboa/frontend_dist/assets/{AuditTrailView-sWnED3E9.js → AuditTrailView-Cyq25Jle.js} +1 -1
- modoboa/frontend_dist/assets/CalendarView-C_dSXRp9.js +1 -0
- modoboa/frontend_dist/assets/{ChoiceField-RDT6XcnX.js → ChoiceField-BPhUvoyr.js} +1 -1
- modoboa/frontend_dist/assets/{ComposeEmailForm-G3sXQAwI.js → ComposeEmailForm-Ns5SYs4J.js} +1 -1
- modoboa/frontend_dist/assets/ComposeEmailView-DgUfiWEH.js +1 -0
- modoboa/frontend_dist/assets/{ConfirmDialog-Du7aqKbR.js → ConfirmDialog-BMIg94-U.js} +1 -1
- modoboa/frontend_dist/assets/{ConnectedLayout-BHWaBAzH.js → ConnectedLayout-CSXdVJtV.js} +1 -1
- modoboa/frontend_dist/assets/{CreationForm-CjtILq0_.js → CreationForm-CaAZYATm.js} +1 -1
- modoboa/frontend_dist/assets/{DashboardView-DFNwusDZ.js → DashboardView-DErmyUoy.js} +1 -1
- modoboa/frontend_dist/assets/{DomainAdminList-BjtfbhRj.js → DomainAdminList-BO8_4Cwt.js} +1 -1
- modoboa/frontend_dist/assets/{DomainEditView-Cq5Ea4RW.js → DomainEditView-BXylM4aB.js} +1 -1
- modoboa/frontend_dist/assets/{DomainTransportForm-DAXJGNLA.js → DomainTransportForm-Ccw5BXyM.js} +1 -1
- modoboa/frontend_dist/assets/{DomainView-BfpK7U14.js → DomainView-Bd5XQI-1.js} +1 -1
- modoboa/frontend_dist/assets/{DomainsView-CYxLy-3Y.js → DomainsView-CC1EwRId.js} +1 -1
- modoboa/frontend_dist/assets/{EmailField-DmPc4pyP.js → EmailField-BFgga4zp.js} +1 -1
- modoboa/frontend_dist/assets/{EmailView-BE3vYZtJ.js → EmailView-DPWTch_6.js} +1 -1
- modoboa/frontend_dist/assets/EmptyLayout-DAw7fAab.js +1 -0
- modoboa/frontend_dist/assets/{FiltersView-Dps3_fAh.js → FiltersView-Cg9lkLw0.js} +1 -1
- modoboa/frontend_dist/assets/ForwardEmailView-Dd1sxgaP.js +1 -0
- modoboa/frontend_dist/assets/{HtmlEditor-D753fIAJ.js → HtmlEditor-DNn3CY-w.js} +1 -1
- modoboa/frontend_dist/assets/{IdentitiesView-CoGBVhZx.js → IdentitiesView-CiHIQ9Qt.js} +1 -1
- modoboa/frontend_dist/assets/{InformationView-eB2ayeLD.js → InformationView-Cc0aBA5j.js} +1 -1
- modoboa/frontend_dist/assets/{LoadingData-Tm56XNwj.js → LoadingData-CnQ_aVqa.js} +1 -1
- modoboa/frontend_dist/assets/{LoginCallbackView-DjCHUgz5.js → LoginCallbackView-Nh_gmh8e.js} +1 -1
- modoboa/frontend_dist/assets/{LoginView-D0r4XBEl.js → LoginView-BtC9BHuJ.js} +1 -1
- modoboa/frontend_dist/assets/{MailboxView-DNokO2WZ.js → MailboxView-DplC0IXR.js} +1 -1
- modoboa/frontend_dist/assets/{MenuItems-dl38msRA.js → MenuItems-efx2rqwT.js} +1 -1
- modoboa/frontend_dist/assets/{MessageView-BWh9BqzS.js → MessageView-C1Goz-hY.js} +1 -1
- modoboa/frontend_dist/assets/{MessagesView-BZ7NUOwo.js → MessagesView-CesYYZ9f.js} +1 -1
- modoboa/frontend_dist/assets/{MigrationsView-DcOVgmcH.js → MigrationsView-DSBk8T0y.js} +1 -1
- modoboa/frontend_dist/assets/{ParametersForm-y02-GM0r.js → ParametersForm-BegEnkQM.js} +1 -1
- modoboa/frontend_dist/assets/ParametersView-B8W_PAiz.js +1 -0
- modoboa/frontend_dist/assets/ParametersView-Dsx2M_g9.js +1 -0
- modoboa/frontend_dist/assets/ProviderEditView-PEAr7MA1.js +1 -0
- modoboa/frontend_dist/assets/ProviderGeneralForm-BAELnXh6.js +1 -0
- modoboa/frontend_dist/assets/ProvidersView-CHvQf3Vv.js +1 -0
- modoboa/frontend_dist/assets/QuarantineLayout-BWEaBK48.js +1 -0
- modoboa/frontend_dist/assets/{QuarantineView-BOXSobRz.js → QuarantineView-BzjeDhTm.js} +1 -1
- modoboa/frontend_dist/assets/ReplyEmailView-CwQ9jsce.js +1 -0
- modoboa/frontend_dist/assets/{ResourcesForm-D0YBapCG.js → ResourcesForm-noC3AXd9.js} +1 -1
- modoboa/frontend_dist/assets/SelfServiceLayout-DQgRMu0L.js +1 -0
- modoboa/frontend_dist/assets/{SettingsView-DIvKGRBY.css → SettingsView-DJTdIeRK.css} +1 -1
- modoboa/frontend_dist/assets/{SettingsView-DMuaKagM.js → SettingsView-Dgwpfd8O.js} +2 -2
- modoboa/frontend_dist/assets/{StatisticsView-CyY_CNcI.js → StatisticsView-BZkVSh5o.js} +1 -1
- modoboa/frontend_dist/assets/{TimeSerieChart-BTDBH33K.js → TimeSerieChart-BXJwhTMO.js} +1 -1
- modoboa/frontend_dist/assets/UserLayout-CWK9ICfE.js +1 -0
- modoboa/frontend_dist/assets/{VAlert-CNys_LUS.js → VAlert-Buv8Z5G4.js} +1 -1
- modoboa/frontend_dist/assets/{VApp-B0vRc3-6.js → VApp-CiIBWB_Q.js} +1 -1
- modoboa/frontend_dist/assets/{VAutocomplete-Huaz_-hf.js → VAutocomplete-DcNqTIie.js} +1 -1
- modoboa/frontend_dist/assets/{VAvatar-JdJfoK0C.js → VAvatar-BsHplcRP.js} +1 -1
- modoboa/frontend_dist/assets/{VBadge-Cg5iu5LG.js → VBadge-CavP_E2g.js} +1 -1
- modoboa/frontend_dist/assets/{VCard-BoH6kjPa.js → VCard-D7AwBs4w.js} +1 -1
- modoboa/frontend_dist/assets/{VCheckbox-CCLOJFKF.js → VCheckbox-CKW9lz5i.js} +1 -1
- modoboa/frontend_dist/assets/{VCheckboxBtn-Ccl786Rg.js → VCheckboxBtn-B5evxN9K.js} +1 -1
- modoboa/frontend_dist/assets/{VColorPicker-452uc3tY.js → VColorPicker-Bsrz8yif.js} +1 -1
- modoboa/frontend_dist/assets/{VContainer-DKMcKasC.js → VContainer-DY9021j4.js} +1 -1
- modoboa/frontend_dist/assets/{VDataTable-BkLLfcQK.js → VDataTable-ocZo8ju0.js} +1 -1
- modoboa/frontend_dist/assets/{VDataTableServer-B_6fWBA3.js → VDataTableServer-CJfpYXQW.js} +1 -1
- modoboa/frontend_dist/assets/{VDataTableVirtual-Ike7oqcC.js → VDataTableVirtual-Cr8yw49k.js} +1 -1
- modoboa/frontend_dist/assets/{VDialog-DIUeAIpw.js → VDialog-CUMh3paI.js} +1 -1
- modoboa/frontend_dist/assets/{VExpansionPanels-BeMgiS7A.js → VExpansionPanels-CkwHiKsA.js} +1 -1
- modoboa/frontend_dist/assets/{VFileInput-Dvj95FL5.js → VFileInput-D5qlksIG.js} +1 -1
- modoboa/frontend_dist/assets/{VForm-DkphQD3e.js → VForm-ClJU5x_v.js} +1 -1
- modoboa/frontend_dist/assets/{VInput-CbqehdOu.js → VInput-DhzSMFXh.js} +1 -1
- modoboa/frontend_dist/assets/{VMenu-B6SCtOwT.js → VMenu-B53a3gm6.js} +1 -1
- modoboa/frontend_dist/assets/{VPicker-BUx70Wjg.js → VPicker-B928ZVJQ.js} +1 -1
- modoboa/frontend_dist/assets/{VProgressCircular-DTDGzl2O.js → VProgressCircular-viI3jDXe.js} +1 -1
- modoboa/frontend_dist/assets/{VRadioGroup-CS9ULZ1c.js → VRadioGroup-C0bqFrYg.js} +1 -1
- modoboa/frontend_dist/assets/{VRow-CuVZGqBj.js → VRow-DyK_Mj7R.js} +1 -1
- modoboa/frontend_dist/assets/{VSelect-D5IXDPEX.js → VSelect-y0E5_vPn.js} +1 -1
- modoboa/frontend_dist/assets/{VSelectionControl-uKY9Zull.js → VSelectionControl-Dkms9_P5.js} +1 -1
- modoboa/frontend_dist/assets/{VSheet-HeHw6g5_.js → VSheet-DQkh_hsX.js} +1 -1
- modoboa/frontend_dist/assets/VSpacer-CBqB9uSt.js +1 -0
- modoboa/frontend_dist/assets/{VSwitch-Dh_dserW.js → VSwitch-D4xdR9jz.js} +1 -1
- modoboa/frontend_dist/assets/{VTable-gDsAUSLX.js → VTable-D8ZwwC_B.js} +1 -1
- modoboa/frontend_dist/assets/{VTabs-5XSICLQP.js → VTabs-D2c0KeF2.js} +1 -1
- modoboa/frontend_dist/assets/{VTextField-QXQFhKxm.js → VTextField-DvvH1ciR.js} +1 -1
- modoboa/frontend_dist/assets/{VTextarea-Bdy4UKmV.js → VTextarea-DHtXtzqP.js} +1 -1
- modoboa/frontend_dist/assets/{VToolbar-CyrYSqJZ.js → VToolbar-pvLQtmbU.js} +1 -1
- modoboa/frontend_dist/assets/{VWindowItem-kZpArwK1.js → VWindowItem-DErNPSH8.js} +1 -1
- modoboa/frontend_dist/assets/{WebmailLayout-CNUHODnw.js → WebmailLayout-D7J-QJ-0.js} +1 -1
- modoboa/frontend_dist/assets/{accounts-DqbBlaLK.js → accounts-BZBqbAmd.js} +1 -1
- modoboa/frontend_dist/assets/{admin-D36m_nXq.js → admin-uCrKjpln.js} +1 -1
- modoboa/frontend_dist/assets/{aliases-BtyF8GC8.js → aliases-CFwFkX45.js} +1 -1
- modoboa/frontend_dist/assets/{amavis-B4QhM5Fa.js → amavis-B4ScfQsG.js} +1 -1
- modoboa/frontend_dist/assets/{amavis-DySmsCJQ.js → amavis-DCy0U0TD.js} +1 -1
- modoboa/frontend_dist/assets/{contacts-Df8ptuMn.js → contacts-DKmh2q-4.js} +1 -1
- modoboa/frontend_dist/assets/{domains-CSxtTvUh.js → domains-CDE4_LDF.js} +1 -1
- modoboa/frontend_dist/assets/domains.store-a9Y5UlDV.js +1 -0
- modoboa/frontend_dist/assets/{filter-DHKXX97M.js → filter-BVvMTmPG.js} +1 -1
- modoboa/frontend_dist/assets/{global.store-DYMmGKpn.js → global.store-Bha4Z76j.js} +1 -1
- modoboa/frontend_dist/assets/{importExport-C-adpHJX.js → importExport-EgijWlC1.js} +1 -1
- modoboa/frontend_dist/assets/index-BjibLozh.js +995 -0
- modoboa/frontend_dist/assets/{index-Bp9Fb67E.js → index-Dwg6jPTX.js} +1 -1
- modoboa/frontend_dist/assets/{language.store-_-zrrEiS.js → language.store-DGuI8jG0.js} +1 -1
- modoboa/frontend_dist/assets/languages-Cge6pECg.js +1 -0
- modoboa/frontend_dist/assets/{layout-CjSP_k58.js → layout-5PvsmkGR.js} +1 -1
- modoboa/frontend_dist/assets/{layout.store-CF5WRevH.js → layout.store-DJVcXtxk.js} +1 -1
- modoboa/frontend_dist/assets/{logos-95XYS6uH.js → logos-CMmd0hOG.js} +1 -1
- modoboa/frontend_dist/assets/{logs-CyU_PIDh.js → logs-D2GOydPZ.js} +1 -1
- modoboa/frontend_dist/assets/{parameters-BxAXBXU1.js → parameters-DJdlq9sh.js} +1 -1
- modoboa/frontend_dist/assets/{parameters.store-CATOSoQZ.js → parameters.store-DH3pPlaT.js} +1 -1
- modoboa/frontend_dist/assets/{permissions-cSkGqV3M.js → permissions-CgFJFhCp.js} +1 -1
- modoboa/frontend_dist/assets/{ssrBoot-05WtbG6H.js → ssrBoot-ChTB-PYP.js} +1 -1
- modoboa/frontend_dist/assets/{tag-BmV84V2s.js → tag-CvrHE14f.js} +1 -1
- modoboa/frontend_dist/assets/{theme-myV4ekXo.js → theme-DFzlhSh5.js} +1 -1
- modoboa/frontend_dist/assets/transports-BUSYxSF4.js +1 -0
- modoboa/frontend_dist/assets/{webmail-B7MNMkv_.js → webmail-HVg3ZHC0.js} +1 -1
- modoboa/frontend_dist/assets/{webmail.store-Cm-h6hhE.js → webmail.store-D-d88s4w.js} +1 -1
- modoboa/frontend_dist/index.html +1 -1
- modoboa/imap_migration/api/v2/serializers.py +13 -0
- modoboa/imap_migration/tests.py +7 -0
- modoboa/locale/br/LC_MESSAGES/django.po +487 -79
- modoboa/locale/cs/LC_MESSAGES/django.po +420 -75
- modoboa/locale/cs_CZ/LC_MESSAGES/django.po +534 -139
- modoboa/locale/de/LC_MESSAGES/django.mo +0 -0
- modoboa/locale/de/LC_MESSAGES/django.po +853 -220
- modoboa/locale/de_DE/LC_MESSAGES/django.po +476 -77
- modoboa/locale/el_GR/LC_MESSAGES/django.po +558 -154
- modoboa/locale/en/LC_MESSAGES/django.po +418 -75
- modoboa/locale/es/LC_MESSAGES/django.po +543 -151
- modoboa/locale/es_MX/LC_MESSAGES/django.po +418 -75
- modoboa/locale/fi/LC_MESSAGES/django.po +491 -79
- modoboa/locale/fr/LC_MESSAGES/django.mo +0 -0
- modoboa/locale/fr/LC_MESSAGES/django.po +420 -76
- modoboa/locale/hu/LC_MESSAGES/django.po +418 -75
- modoboa/locale/it/LC_MESSAGES/django.po +540 -141
- modoboa/locale/ja_JP/LC_MESSAGES/django.mo +0 -0
- modoboa/locale/ja_JP/LC_MESSAGES/django.po +735 -180
- modoboa/locale/ka/LC_MESSAGES/django.po +418 -75
- modoboa/locale/nl_NL/LC_MESSAGES/django.po +544 -152
- modoboa/locale/no/LC_MESSAGES/django.po +418 -75
- modoboa/locale/pl_PL/LC_MESSAGES/django.po +564 -162
- modoboa/locale/pt_BR/LC_MESSAGES/django.po +567 -157
- modoboa/locale/pt_PT/LC_MESSAGES/django.po +521 -132
- modoboa/locale/ro_RO/LC_MESSAGES/django.po +498 -79
- modoboa/locale/ru/LC_MESSAGES/django.po +530 -137
- modoboa/locale/si/LC_MESSAGES/django.po +418 -75
- modoboa/locale/sk/LC_MESSAGES/django.po +420 -75
- modoboa/locale/sk_SK/LC_MESSAGES/django.po +420 -75
- modoboa/locale/sl_SI/LC_MESSAGES/django.po +441 -80
- modoboa/locale/sv/LC_MESSAGES/django.po +556 -152
- modoboa/locale/tr/LC_MESSAGES/django.po +470 -77
- modoboa/locale/tr_TR/LC_MESSAGES/django.po +454 -75
- modoboa/locale/uk/LC_MESSAGES/django.po +420 -75
- modoboa/locale/zh/LC_MESSAGES/django.po +417 -75
- modoboa/locale/zh_CN/LC_MESSAGES/django.po +417 -75
- modoboa/locale/zh_TW/LC_MESSAGES/django.po +486 -77
- {modoboa-2.6.4.dist-info → modoboa-2.6.5.dist-info}/METADATA +1 -1
- {modoboa-2.6.4.dist-info → modoboa-2.6.5.dist-info}/RECORD +167 -167
- modoboa/frontend_dist/assets/AccountLayout-B2HptJzY.js +0 -1
- modoboa/frontend_dist/assets/CalendarView-DSCBIvef.js +0 -1
- modoboa/frontend_dist/assets/ComposeEmailView-Ce1CtFjD.js +0 -1
- modoboa/frontend_dist/assets/EmptyLayout-DMwKNHfI.js +0 -1
- modoboa/frontend_dist/assets/ForwardEmailView-C0I00eXf.js +0 -1
- modoboa/frontend_dist/assets/ParametersView-B6abt-LH.js +0 -1
- modoboa/frontend_dist/assets/ParametersView-v0YS6WU4.js +0 -1
- modoboa/frontend_dist/assets/ProviderEditView-BaL9mKxJ.js +0 -1
- modoboa/frontend_dist/assets/ProviderGeneralForm-eoHMDO5v.js +0 -1
- modoboa/frontend_dist/assets/ProvidersView-Zu-G35u7.js +0 -1
- modoboa/frontend_dist/assets/QuarantineLayout-BHiiksnP.js +0 -1
- modoboa/frontend_dist/assets/ReplyEmailView-JmSiNWPy.js +0 -1
- modoboa/frontend_dist/assets/SelfServiceLayout-DUmQzUDk.js +0 -1
- modoboa/frontend_dist/assets/UserLayout-DwxcQr4L.js +0 -1
- modoboa/frontend_dist/assets/VSpacer-BUxSSJbH.js +0 -1
- modoboa/frontend_dist/assets/domains.store-D4ZqCQ-O.js +0 -1
- modoboa/frontend_dist/assets/index-B1bntsLR.js +0 -995
- modoboa/frontend_dist/assets/languages-CxjoT69j.js +0 -1
- modoboa/frontend_dist/assets/transports-ChdHV5hX.js +0 -1
- {modoboa-2.6.4.data → modoboa-2.6.5.data}/scripts/modoboa-admin.py +0 -0
- {modoboa-2.6.4.dist-info → modoboa-2.6.5.dist-info}/WHEEL +0 -0
- {modoboa-2.6.4.dist-info → modoboa-2.6.5.dist-info}/entry_points.txt +0 -0
- {modoboa-2.6.4.dist-info → modoboa-2.6.5.dist-info}/licenses/LICENSE +0 -0
- {modoboa-2.6.4.dist-info → modoboa-2.6.5.dist-info}/top_level.txt +0 -0
|
@@ -10,7 +10,7 @@ msgid ""
|
|
|
10
10
|
msgstr ""
|
|
11
11
|
"Project-Id-Version: Modoboa\n"
|
|
12
12
|
"Report-Msgid-Bugs-To: \n"
|
|
13
|
-
"POT-Creation-Date: 2025-
|
|
13
|
+
"POT-Creation-Date: 2025-12-02 16:07+0100\n"
|
|
14
14
|
"PO-Revision-Date: 2018-07-06 08:26+0000\n"
|
|
15
15
|
"Last-Translator: akong <akong@aspa.idv.tw>\n"
|
|
16
16
|
"Language-Team: Chinese (Taiwan) (http://www.transifex.com/tonio/modoboa/"
|
|
@@ -48,14 +48,14 @@ msgid "Cannot be greater than domain quota"
|
|
|
48
48
|
msgstr "不可以超過網域配額"
|
|
49
49
|
|
|
50
50
|
#: admin/api/v1/serializers.py:168 admin/api/v1/serializers.py:364
|
|
51
|
-
#: admin/api/v2/serializers.py:
|
|
51
|
+
#: admin/api/v2/serializers.py:570 admin/models/alias.py:45
|
|
52
52
|
msgid "Permission denied."
|
|
53
53
|
msgstr "權限不足"
|
|
54
54
|
|
|
55
55
|
#: admin/api/v1/serializers.py:231 admin/api/v2/serializers.py:90
|
|
56
|
-
#: admin/api/v2/serializers.py:
|
|
57
|
-
#: core/api/v2/serializers.py:
|
|
58
|
-
#: transport/backends.py:40
|
|
56
|
+
#: admin/api/v2/serializers.py:491 amavis/serializers.py:39
|
|
57
|
+
#: core/api/v2/serializers.py:255 core/api/v2/serializers.py:257
|
|
58
|
+
#: core/api/v2/serializers.py:266 transport/backends.py:40
|
|
59
59
|
msgid "This field is required"
|
|
60
60
|
msgstr "這個欄位是必填的"
|
|
61
61
|
|
|
@@ -64,7 +64,7 @@ msgid ""
|
|
|
64
64
|
"List of administered domains (resellers and domain administrators only)."
|
|
65
65
|
msgstr "管理員網域列表 (只有經銷商和網域管理員)。"
|
|
66
66
|
|
|
67
|
-
#: admin/api/v1/serializers.py:337 admin/api/v2/serializers.py:
|
|
67
|
+
#: admin/api/v1/serializers.py:337 admin/api/v2/serializers.py:552
|
|
68
68
|
msgid "Not allowed for this role."
|
|
69
69
|
msgstr "不允許這個身份"
|
|
70
70
|
|
|
@@ -72,13 +72,13 @@ msgstr "不允許這個身份"
|
|
|
72
72
|
msgid "Must be equal to mailbox full_address"
|
|
73
73
|
msgstr "必須跟信箱完整位址一樣"
|
|
74
74
|
|
|
75
|
-
#: admin/api/v1/serializers.py:397 admin/api/v2/serializers.py:
|
|
75
|
+
#: admin/api/v1/serializers.py:397 admin/api/v2/serializers.py:604
|
|
76
76
|
#: calendars/serializers.py:175 calendars/serializers.py:177
|
|
77
77
|
#: pdfcredentials/api/v2/serializers.py:91
|
|
78
78
|
msgid "This field is required."
|
|
79
79
|
msgstr "這個欄位是必填的"
|
|
80
80
|
|
|
81
|
-
#: admin/api/v1/serializers.py:409 admin/api/v2/serializers.py:
|
|
81
|
+
#: admin/api/v1/serializers.py:409 admin/api/v2/serializers.py:621
|
|
82
82
|
msgid "Local domain {} does not exist"
|
|
83
83
|
msgstr "本機網域 {} 不存在"
|
|
84
84
|
|
|
@@ -86,7 +86,7 @@ msgstr "本機網域 {} 不存在"
|
|
|
86
86
|
msgid "A list of recipient"
|
|
87
87
|
msgstr "收件人列表"
|
|
88
88
|
|
|
89
|
-
#: admin/api/v1/serializers.py:515 admin/api/v2/viewsets.py:
|
|
89
|
+
#: admin/api/v1/serializers.py:515 admin/api/v2/viewsets.py:313
|
|
90
90
|
#, fuzzy
|
|
91
91
|
#| msgid "User '%s' already exists"
|
|
92
92
|
msgid "This alias already exists"
|
|
@@ -121,51 +121,51 @@ msgstr "您不可以定義無限制配額。"
|
|
|
121
121
|
msgid "User '%s' already exists"
|
|
122
122
|
msgstr "使用者 '%s' 已存在"
|
|
123
123
|
|
|
124
|
-
#: admin/api/v2/serializers.py:
|
|
124
|
+
#: admin/api/v2/serializers.py:255 admin/api/v2/serializers.py:261
|
|
125
125
|
msgid "Must be a positive integer"
|
|
126
126
|
msgstr "必須是正整數"
|
|
127
127
|
|
|
128
|
-
#: admin/api/v2/serializers.py:
|
|
128
|
+
#: admin/api/v2/serializers.py:270
|
|
129
129
|
msgid "openssl not found, please make sure it is installed."
|
|
130
130
|
msgstr "openssl 找不到,請確認已安裝。"
|
|
131
131
|
|
|
132
|
-
#: admin/api/v2/serializers.py:
|
|
132
|
+
#: admin/api/v2/serializers.py:273 pdfcredentials/api/v2/serializers.py:84
|
|
133
133
|
msgid "Directory not found."
|
|
134
134
|
msgstr "目錄不存在"
|
|
135
135
|
|
|
136
|
-
#: admin/api/v2/serializers.py:
|
|
136
|
+
#: admin/api/v2/serializers.py:284
|
|
137
137
|
msgid "This field only allows valid IP addresses (or networks)"
|
|
138
138
|
msgstr ""
|
|
139
139
|
|
|
140
|
-
#: admin/api/v2/serializers.py:
|
|
140
|
+
#: admin/api/v2/serializers.py:297
|
|
141
141
|
msgid "Please disable imap migration before disabling this option."
|
|
142
142
|
msgstr ""
|
|
143
143
|
|
|
144
|
-
#: admin/api/v2/serializers.py:
|
|
144
|
+
#: admin/api/v2/serializers.py:310
|
|
145
145
|
msgid "Define at least one authorized network / address"
|
|
146
146
|
msgstr "定義至少一個已驗證網路/位址"
|
|
147
147
|
|
|
148
|
-
#: admin/api/v2/serializers.py:
|
|
148
|
+
#: admin/api/v2/serializers.py:587
|
|
149
149
|
msgid "The left part of an email address can't be more than 64 characters."
|
|
150
150
|
msgstr ""
|
|
151
151
|
|
|
152
|
-
#: admin/api/v2/serializers.py:
|
|
152
|
+
#: admin/api/v2/serializers.py:609
|
|
153
153
|
#, fuzzy
|
|
154
154
|
#| msgid "A mailbox is required"
|
|
155
155
|
msgid "A mailbox is required to create aliases."
|
|
156
156
|
msgstr "信箱是必要的"
|
|
157
157
|
|
|
158
|
-
#: admin/api/v2/serializers.py:
|
|
158
|
+
#: admin/api/v2/serializers.py:782
|
|
159
159
|
#, fuzzy
|
|
160
160
|
#| msgid "Unknown"
|
|
161
161
|
msgid "Unknown status"
|
|
162
162
|
msgstr "未知"
|
|
163
163
|
|
|
164
|
-
#: admin/api/v2/viewsets.py:
|
|
164
|
+
#: admin/api/v2/viewsets.py:95
|
|
165
165
|
msgid "You don't have access to this domain"
|
|
166
166
|
msgstr "您無權訪問此網域"
|
|
167
167
|
|
|
168
|
-
#: admin/api/v2/viewsets.py:
|
|
168
|
+
#: admin/api/v2/viewsets.py:98
|
|
169
169
|
msgid "You can't delete your own domain"
|
|
170
170
|
msgstr "您不可以刪除您擁有的網域"
|
|
171
171
|
|
|
@@ -385,7 +385,37 @@ msgstr "當信箱更名時會建立別名"
|
|
|
385
385
|
msgid "Create an alias using the old address when a mailbox is renamed."
|
|
386
386
|
msgstr "當信箱更名時建立別名並使用在舊的位址。"
|
|
387
387
|
|
|
388
|
-
#: admin/app_settings.py:
|
|
388
|
+
#: admin/app_settings.py:245
|
|
389
|
+
#, fuzzy
|
|
390
|
+
#| msgid "alias"
|
|
391
|
+
msgid "Aliases"
|
|
392
|
+
msgstr "別名"
|
|
393
|
+
|
|
394
|
+
#: admin/app_settings.py:251
|
|
395
|
+
msgid "Alias can target any domain"
|
|
396
|
+
msgstr ""
|
|
397
|
+
|
|
398
|
+
#: admin/app_settings.py:253
|
|
399
|
+
msgid "Allow aliases to target any domain, not just the local domains."
|
|
400
|
+
msgstr ""
|
|
401
|
+
|
|
402
|
+
#: admin/app_settings.py:260
|
|
403
|
+
msgid "Alias target block list"
|
|
404
|
+
msgstr ""
|
|
405
|
+
|
|
406
|
+
#: admin/app_settings.py:262
|
|
407
|
+
msgid "A list of domains that aliases cannot target (comma separated)."
|
|
408
|
+
msgstr ""
|
|
409
|
+
|
|
410
|
+
#: admin/app_settings.py:270
|
|
411
|
+
msgid "Alias target allow list"
|
|
412
|
+
msgstr ""
|
|
413
|
+
|
|
414
|
+
#: admin/app_settings.py:272
|
|
415
|
+
msgid "A list of domains that aliases can target (comma separated)."
|
|
416
|
+
msgstr ""
|
|
417
|
+
|
|
418
|
+
#: admin/app_settings.py:326 core/api/v2/viewsets.py:174
|
|
389
419
|
msgid "Administration"
|
|
390
420
|
msgstr "管理員"
|
|
391
421
|
|
|
@@ -416,61 +446,57 @@ msgstr "網域別名"
|
|
|
416
446
|
msgid "Account import failed (%s): domain does not exist"
|
|
417
447
|
msgstr "帳號匯入失敗 (%s): 網域不存在"
|
|
418
448
|
|
|
419
|
-
#: admin/handlers.py:
|
|
420
|
-
msgid "Mailbox {} already exists"
|
|
421
|
-
msgstr "信箱 {} 已存在"
|
|
422
|
-
|
|
423
|
-
#: admin/handlers.py:251
|
|
449
|
+
#: admin/handlers.py:246
|
|
424
450
|
#, python-format
|
|
425
451
|
msgid "Account import failed (%s): wrong quota value"
|
|
426
452
|
msgstr "帳號匯入失敗 (%s): 錯誤配額"
|
|
427
453
|
|
|
428
|
-
#: admin/lib.py:
|
|
454
|
+
#: admin/lib.py:126
|
|
429
455
|
msgid "You are not allowed to import domains"
|
|
430
456
|
msgstr "您未允許匯入網域"
|
|
431
457
|
|
|
432
|
-
#: admin/lib.py:
|
|
458
|
+
#: admin/lib.py:135
|
|
433
459
|
msgid "You are not allowed to import domain aliases."
|
|
434
460
|
msgstr "您未允許匯入網域別名。"
|
|
435
461
|
|
|
436
|
-
#: admin/lib.py:
|
|
462
|
+
#: admin/lib.py:227 admin/tests/test_mx.py:153 admin/tests/test_mx.py:166
|
|
437
463
|
#: admin/tests/test_mx.py:171
|
|
438
464
|
#, fuzzy, python-format
|
|
439
465
|
#| msgid "No DNS records found for %s"
|
|
440
466
|
msgid "No DNS record found for %s"
|
|
441
467
|
msgstr "沒有找到 %s 的 DNS 紀錄"
|
|
442
468
|
|
|
443
|
-
#: admin/lib.py:
|
|
469
|
+
#: admin/lib.py:230
|
|
444
470
|
#, fuzzy, python-format
|
|
445
471
|
#| msgid "No MX record for %s"
|
|
446
472
|
msgid "No %(type)s record for %(name)s"
|
|
447
473
|
msgstr "沒有 %s 的 MX 紀錄"
|
|
448
474
|
|
|
449
|
-
#: admin/lib.py:
|
|
475
|
+
#: admin/lib.py:234 admin/tests/test_mx.py:156
|
|
450
476
|
msgid "No working name servers found"
|
|
451
477
|
msgstr "沒有找到執行中的名稱伺服器"
|
|
452
478
|
|
|
453
|
-
#: admin/lib.py:
|
|
479
|
+
#: admin/lib.py:237 admin/tests/test_mx.py:160
|
|
454
480
|
#, python-format
|
|
455
481
|
msgid "DNS resolution timeout, unable to query %s at the moment"
|
|
456
482
|
msgstr "DNS 解析逾時,無法查詢 %s 在這個時間點"
|
|
457
483
|
|
|
458
|
-
#: admin/lib.py:
|
|
484
|
+
#: admin/lib.py:241
|
|
459
485
|
msgid "DNS name is too long: {}"
|
|
460
486
|
msgstr ""
|
|
461
487
|
|
|
462
|
-
#: admin/lib.py:
|
|
488
|
+
#: admin/lib.py:272
|
|
463
489
|
#, fuzzy, python-brace-format
|
|
464
490
|
#| msgid "Invalid IP address format for %(domain)s; %(addr)s"
|
|
465
491
|
msgid "Invalid IP address format for {domain}; {addr}"
|
|
466
492
|
msgstr "無效的 IP 位址格式 %(domain)s; %(addr)s"
|
|
467
493
|
|
|
468
|
-
#: admin/lib.py:
|
|
494
|
+
#: admin/lib.py:365
|
|
469
495
|
#, python-format
|
|
470
496
|
msgid "Object already exists: %s"
|
|
471
497
|
msgstr "元件已存在: %s"
|
|
472
498
|
|
|
473
|
-
#: admin/lib.py:
|
|
499
|
+
#: admin/lib.py:369
|
|
474
500
|
#, python-format
|
|
475
501
|
msgid "%d objects imported successfully"
|
|
476
502
|
msgstr "%d 元件已匯入成功"
|
|
@@ -538,48 +564,54 @@ msgstr "[modoboa] 此網域的 MX 問題(s) {}"
|
|
|
538
564
|
msgid "[modoboa] DNSBL issue(s) for domain {}"
|
|
539
565
|
msgstr "[modoboa] 此網域的 DNSBL 問題(s) {}"
|
|
540
566
|
|
|
541
|
-
#: admin/models/alias.py:
|
|
567
|
+
#: admin/models/alias.py:43
|
|
542
568
|
msgid "Domain not found."
|
|
543
569
|
msgstr "網域不存在。"
|
|
544
570
|
|
|
545
|
-
#: admin/models/alias.py:
|
|
571
|
+
#: admin/models/alias.py:117 admin/models/mailbox.py:85
|
|
546
572
|
msgid "address"
|
|
547
573
|
msgstr "地址"
|
|
548
574
|
|
|
549
|
-
#: admin/models/alias.py:
|
|
575
|
+
#: admin/models/alias.py:119
|
|
550
576
|
msgid "The alias address."
|
|
551
577
|
msgstr "別名位址。"
|
|
552
578
|
|
|
553
|
-
#: admin/models/alias.py:
|
|
579
|
+
#: admin/models/alias.py:123 admin/models/domain.py:45
|
|
554
580
|
#: admin/models/domain_alias.py:45 autoreply/models.py:25
|
|
555
581
|
msgid "enabled"
|
|
556
582
|
msgstr "已啟用"
|
|
557
583
|
|
|
558
|
-
#: admin/models/alias.py:
|
|
584
|
+
#: admin/models/alias.py:124 admin/models/domain_alias.py:46
|
|
559
585
|
msgid "Check to activate this alias"
|
|
560
586
|
msgstr "點擊啟用這個別名"
|
|
561
587
|
|
|
562
|
-
#: admin/models/alias.py:
|
|
588
|
+
#: admin/models/alias.py:128
|
|
563
589
|
msgid "Description"
|
|
564
590
|
msgstr "描述"
|
|
565
591
|
|
|
566
|
-
#: admin/models/alias.py:
|
|
592
|
+
#: admin/models/alias.py:129
|
|
567
593
|
msgid "Expire at"
|
|
568
594
|
msgstr "過期在"
|
|
569
595
|
|
|
570
|
-
#: admin/models/alias.py:
|
|
596
|
+
#: admin/models/alias.py:170
|
|
571
597
|
msgid "alias"
|
|
572
598
|
msgstr "別名"
|
|
573
599
|
|
|
574
|
-
#: admin/models/alias.py:
|
|
600
|
+
#: admin/models/alias.py:203
|
|
575
601
|
msgid "Invalid address"
|
|
576
602
|
msgstr "無效位址"
|
|
577
603
|
|
|
578
|
-
#: admin/models/alias.py:
|
|
604
|
+
#: admin/models/alias.py:206
|
|
605
|
+
#, fuzzy
|
|
606
|
+
#| msgid "The domain name"
|
|
607
|
+
msgid "Target domain not allowed"
|
|
608
|
+
msgstr "網域名稱"
|
|
609
|
+
|
|
610
|
+
#: admin/models/alias.py:224
|
|
579
611
|
msgid "Local recipient {}@{} not found"
|
|
580
612
|
msgstr "本機收件人 {}@{} 未找到"
|
|
581
613
|
|
|
582
|
-
#: admin/models/alias.py:
|
|
614
|
+
#: admin/models/alias.py:273
|
|
583
615
|
#, fuzzy
|
|
584
616
|
#| msgid "Invalid line: %s"
|
|
585
617
|
msgid "Invalid line: {}"
|
|
@@ -699,6 +731,10 @@ msgstr "網域配額已超過"
|
|
|
699
731
|
msgid "Domain does not exist"
|
|
700
732
|
msgstr "網域不存在"
|
|
701
733
|
|
|
734
|
+
#: admin/models/mailbox.py:342
|
|
735
|
+
msgid "Mailbox {} already exists"
|
|
736
|
+
msgstr "信箱 {} 已存在"
|
|
737
|
+
|
|
702
738
|
#: admin/templates/admin/notifications/domain_in_dnsbl.html:3
|
|
703
739
|
#, python-format
|
|
704
740
|
msgid ""
|
|
@@ -736,6 +772,376 @@ msgstr "無效的 IP 位址格式 %(domain)s; %(addr)s"
|
|
|
736
772
|
msgid "No AAAA record for %s"
|
|
737
773
|
msgstr "沒有 %s 的 MX 紀錄"
|
|
738
774
|
|
|
775
|
+
#: amavis/app_settings.py:11
|
|
776
|
+
#, fuzzy
|
|
777
|
+
#| msgid "LDAP settings"
|
|
778
|
+
msgid "Amavis settings"
|
|
779
|
+
msgstr "IMAP 設定"
|
|
780
|
+
|
|
781
|
+
#: amavis/app_settings.py:17
|
|
782
|
+
msgid "Localpart is case sensitive"
|
|
783
|
+
msgstr ""
|
|
784
|
+
|
|
785
|
+
#: amavis/app_settings.py:19
|
|
786
|
+
msgid "Value should match amavisd.conf variable $localpart_is_case_sensitive"
|
|
787
|
+
msgstr ""
|
|
788
|
+
|
|
789
|
+
#: amavis/app_settings.py:27
|
|
790
|
+
msgid "Recipient delimiter"
|
|
791
|
+
msgstr ""
|
|
792
|
+
|
|
793
|
+
#: amavis/app_settings.py:29
|
|
794
|
+
msgid "Value should match amavisd.conf variable $recipient_delimiter"
|
|
795
|
+
msgstr ""
|
|
796
|
+
|
|
797
|
+
#: amavis/app_settings.py:41
|
|
798
|
+
#, fuzzy
|
|
799
|
+
#| msgid "Quantity"
|
|
800
|
+
msgid "Quarantine settings"
|
|
801
|
+
msgstr "數量"
|
|
802
|
+
|
|
803
|
+
#: amavis/app_settings.py:47
|
|
804
|
+
#, fuzzy
|
|
805
|
+
#| msgid "Maximum log record age"
|
|
806
|
+
msgid "Maximum message age"
|
|
807
|
+
msgstr "最大日誌紀錄時間"
|
|
808
|
+
|
|
809
|
+
#: amavis/app_settings.py:49
|
|
810
|
+
msgid "Quarantine messages maximum age (in days) before deletion"
|
|
811
|
+
msgstr ""
|
|
812
|
+
|
|
813
|
+
#: amavis/app_settings.py:60
|
|
814
|
+
msgid "Message releasing"
|
|
815
|
+
msgstr ""
|
|
816
|
+
|
|
817
|
+
#: amavis/app_settings.py:66
|
|
818
|
+
#, fuzzy
|
|
819
|
+
#| msgid "Show greylisted messages"
|
|
820
|
+
msgid "Remove released messages"
|
|
821
|
+
msgstr "顯示灰名單郵件"
|
|
822
|
+
|
|
823
|
+
#: amavis/app_settings.py:68
|
|
824
|
+
msgid "Remove messages marked as released while cleaning up the database"
|
|
825
|
+
msgstr ""
|
|
826
|
+
|
|
827
|
+
#: amavis/app_settings.py:76
|
|
828
|
+
#, fuzzy
|
|
829
|
+
#| msgid "Use a secured connection"
|
|
830
|
+
msgid "Amavis connection mode"
|
|
831
|
+
msgstr "安全連線模式"
|
|
832
|
+
|
|
833
|
+
#: amavis/app_settings.py:78
|
|
834
|
+
#, fuzzy
|
|
835
|
+
#| msgid "Use an SSL/STARTTLS connection to access the LDAP server"
|
|
836
|
+
msgid "Mode used to access the PDP server"
|
|
837
|
+
msgstr "使用 SSL/STARTTLS 連線到 LDAP 伺服器"
|
|
838
|
+
|
|
839
|
+
#: amavis/app_settings.py:85
|
|
840
|
+
#, fuzzy
|
|
841
|
+
#| msgid "Server address"
|
|
842
|
+
msgid "PDP server address"
|
|
843
|
+
msgstr "伺服器地址"
|
|
844
|
+
|
|
845
|
+
#: amavis/app_settings.py:87
|
|
846
|
+
#, fuzzy
|
|
847
|
+
#| msgid "Server address"
|
|
848
|
+
msgid "PDP server address (if inet mode)"
|
|
849
|
+
msgstr "伺服器地址"
|
|
850
|
+
|
|
851
|
+
#: amavis/app_settings.py:95
|
|
852
|
+
#, fuzzy
|
|
853
|
+
#| msgid "Server port"
|
|
854
|
+
msgid "PDP server port"
|
|
855
|
+
msgstr "伺服器連接埠"
|
|
856
|
+
|
|
857
|
+
#: amavis/app_settings.py:97
|
|
858
|
+
msgid "PDP server port (if inet mode)"
|
|
859
|
+
msgstr ""
|
|
860
|
+
|
|
861
|
+
#: amavis/app_settings.py:105
|
|
862
|
+
#, fuzzy
|
|
863
|
+
#| msgid "Server port"
|
|
864
|
+
msgid "PDP server socket"
|
|
865
|
+
msgstr "伺服器連接埠"
|
|
866
|
+
|
|
867
|
+
#: amavis/app_settings.py:107
|
|
868
|
+
msgid "Path to the PDP server socket (if unix mode)"
|
|
869
|
+
msgstr ""
|
|
870
|
+
|
|
871
|
+
#: amavis/app_settings.py:115
|
|
872
|
+
msgid "Allow direct release"
|
|
873
|
+
msgstr ""
|
|
874
|
+
|
|
875
|
+
#: amavis/app_settings.py:117
|
|
876
|
+
msgid "Allow users to directly release their messages"
|
|
877
|
+
msgstr ""
|
|
878
|
+
|
|
879
|
+
#: amavis/app_settings.py:124
|
|
880
|
+
msgid "Enable self-service mode"
|
|
881
|
+
msgstr ""
|
|
882
|
+
|
|
883
|
+
#: amavis/app_settings.py:126
|
|
884
|
+
msgid "Activate the 'self-service' mode"
|
|
885
|
+
msgstr ""
|
|
886
|
+
|
|
887
|
+
#: amavis/app_settings.py:133
|
|
888
|
+
#, fuzzy
|
|
889
|
+
#| msgid "Notifications"
|
|
890
|
+
msgid "Notifications sender"
|
|
891
|
+
msgstr "通知"
|
|
892
|
+
|
|
893
|
+
#: amavis/app_settings.py:135
|
|
894
|
+
#, fuzzy
|
|
895
|
+
#| msgid "Email address used to send notifications."
|
|
896
|
+
msgid "The e-mail address used to send notitications"
|
|
897
|
+
msgstr "郵件地址用於寄送通知。"
|
|
898
|
+
|
|
899
|
+
#: amavis/app_settings.py:146
|
|
900
|
+
msgid "Manual learning"
|
|
901
|
+
msgstr ""
|
|
902
|
+
|
|
903
|
+
#: amavis/app_settings.py:152
|
|
904
|
+
msgid "Enable manual learning"
|
|
905
|
+
msgstr ""
|
|
906
|
+
|
|
907
|
+
#: amavis/app_settings.py:154
|
|
908
|
+
#, fuzzy
|
|
909
|
+
#| msgid "Allow this administrator to access user mailboxes"
|
|
910
|
+
msgid "Allow super administrators to manually train Spamassassin"
|
|
911
|
+
msgstr "允許這個管理者來存取使用者信箱"
|
|
912
|
+
|
|
913
|
+
#: amavis/app_settings.py:161
|
|
914
|
+
msgid "Is Spamassassin local?"
|
|
915
|
+
msgstr ""
|
|
916
|
+
|
|
917
|
+
#: amavis/app_settings.py:163
|
|
918
|
+
msgid "Tell if Spamassassin is running on the same server than modoboa"
|
|
919
|
+
msgstr ""
|
|
920
|
+
|
|
921
|
+
#: amavis/app_settings.py:171
|
|
922
|
+
#, fuzzy
|
|
923
|
+
#| msgid "Default subject"
|
|
924
|
+
msgid "Default user"
|
|
925
|
+
msgstr "預設編輯器"
|
|
926
|
+
|
|
927
|
+
#: amavis/app_settings.py:173
|
|
928
|
+
msgid "Name of the user owning the default bayesian database"
|
|
929
|
+
msgstr ""
|
|
930
|
+
|
|
931
|
+
#: amavis/app_settings.py:181
|
|
932
|
+
#, fuzzy
|
|
933
|
+
#| msgid "Sender address"
|
|
934
|
+
msgid "Spamd address"
|
|
935
|
+
msgstr "伺服器位址"
|
|
936
|
+
|
|
937
|
+
#: amavis/app_settings.py:183
|
|
938
|
+
msgid "The IP address where spamd can be reached"
|
|
939
|
+
msgstr ""
|
|
940
|
+
|
|
941
|
+
#: amavis/app_settings.py:191
|
|
942
|
+
msgid "Spamd port"
|
|
943
|
+
msgstr ""
|
|
944
|
+
|
|
945
|
+
#: amavis/app_settings.py:193
|
|
946
|
+
msgid "The TCP port spamd is listening on"
|
|
947
|
+
msgstr ""
|
|
948
|
+
|
|
949
|
+
#: amavis/app_settings.py:202
|
|
950
|
+
#, fuzzy
|
|
951
|
+
#| msgid "Enable per-domain limits"
|
|
952
|
+
msgid "Enable per-domain manual learning"
|
|
953
|
+
msgstr "啟用每個網域限制"
|
|
954
|
+
|
|
955
|
+
#: amavis/app_settings.py:205
|
|
956
|
+
#, fuzzy
|
|
957
|
+
#| msgid "Allow this administrator to access user mailboxes"
|
|
958
|
+
msgid ""
|
|
959
|
+
"Allow domain administrators to train Spamassassin (within dedicated per-"
|
|
960
|
+
"domain databases)"
|
|
961
|
+
msgstr "允許這個管理者來存取使用者信箱"
|
|
962
|
+
|
|
963
|
+
#: amavis/app_settings.py:215
|
|
964
|
+
#, fuzzy
|
|
965
|
+
#| msgid "Enable per-domain limits"
|
|
966
|
+
msgid "Enable per-user manual learning"
|
|
967
|
+
msgstr "啟用每個網域限制"
|
|
968
|
+
|
|
969
|
+
#: amavis/app_settings.py:218
|
|
970
|
+
msgid ""
|
|
971
|
+
"Allow simple users to personally train Spamassassin (within a dedicated "
|
|
972
|
+
"database)"
|
|
973
|
+
msgstr ""
|
|
974
|
+
|
|
975
|
+
#: amavis/app_settings.py:236 webmail/app_settings.py:118
|
|
976
|
+
msgid "Display"
|
|
977
|
+
msgstr "顯示"
|
|
978
|
+
|
|
979
|
+
#: amavis/app_settings.py:243 webmail/app_settings.py:144
|
|
980
|
+
msgid "Number of displayed emails per page"
|
|
981
|
+
msgstr "每一頁顯示郵件數量"
|
|
982
|
+
|
|
983
|
+
#: amavis/app_settings.py:246
|
|
984
|
+
#, fuzzy
|
|
985
|
+
#| msgid "Sets the maximum number of messages displayed in a page"
|
|
986
|
+
msgid "Set the maximum number of messages displayed in a page"
|
|
987
|
+
msgstr "設定最大每一頁顯示郵件數量"
|
|
988
|
+
|
|
989
|
+
#: amavis/app_settings.py:266 amavis/app_settings.py:273
|
|
990
|
+
msgid "Amavis"
|
|
991
|
+
msgstr ""
|
|
992
|
+
|
|
993
|
+
#: amavis/checks/settings_checks.py:8
|
|
994
|
+
msgid ""
|
|
995
|
+
"AMAVIS_DEFAULT_DATABASE_ENCODING does not match the character encoding used "
|
|
996
|
+
"by the Amavis database."
|
|
997
|
+
msgstr ""
|
|
998
|
+
|
|
999
|
+
#: amavis/checks/settings_checks.py:12
|
|
1000
|
+
msgid ""
|
|
1001
|
+
"Check your database character encoding and set/update "
|
|
1002
|
+
"AMAVIS_DEFAULT_DATABASE_ENCODING."
|
|
1003
|
+
msgstr ""
|
|
1004
|
+
|
|
1005
|
+
#: amavis/checks/settings_checks.py:19
|
|
1006
|
+
msgid "Modoboa Amavis has not been tested using the selected database engine."
|
|
1007
|
+
msgstr ""
|
|
1008
|
+
|
|
1009
|
+
#: amavis/checks/settings_checks.py:20
|
|
1010
|
+
msgid "Try using PostgreSQL, MySQL or MariaDB."
|
|
1011
|
+
msgstr ""
|
|
1012
|
+
|
|
1013
|
+
#: amavis/handlers.py:141
|
|
1014
|
+
msgid "Pending requests"
|
|
1015
|
+
msgstr ""
|
|
1016
|
+
|
|
1017
|
+
#: amavis/lib.py:59
|
|
1018
|
+
#, python-format
|
|
1019
|
+
msgid "Connection to amavis failed: %s"
|
|
1020
|
+
msgstr ""
|
|
1021
|
+
|
|
1022
|
+
#: amavis/lib.py:133
|
|
1023
|
+
#, fuzzy
|
|
1024
|
+
#| msgid "Failed to locate rrdtool binary."
|
|
1025
|
+
msgid "Failed to find {} binary"
|
|
1026
|
+
msgstr "指定 rrdtools 位置失敗。"
|
|
1027
|
+
|
|
1028
|
+
#: amavis/lib.py:148
|
|
1029
|
+
#, fuzzy
|
|
1030
|
+
#| msgid "Local recipient {}@{} not found"
|
|
1031
|
+
msgid "No recipient found"
|
|
1032
|
+
msgstr "本機收件人 {}@{} 未找到"
|
|
1033
|
+
|
|
1034
|
+
#: amavis/lib.py:159
|
|
1035
|
+
#, fuzzy
|
|
1036
|
+
#| msgid "Domain not found."
|
|
1037
|
+
msgid "Local domain not found"
|
|
1038
|
+
msgstr "網域不存在。"
|
|
1039
|
+
|
|
1040
|
+
#: amavis/management/commands/amnotify.py:59
|
|
1041
|
+
#, fuzzy
|
|
1042
|
+
#| msgid "%s: limit reached"
|
|
1043
|
+
msgid "[modoboa] Pending release requests"
|
|
1044
|
+
msgstr "%s: 已達到上限"
|
|
1045
|
+
|
|
1046
|
+
#: amavis/models.py:101
|
|
1047
|
+
#, fuzzy
|
|
1048
|
+
#| msgid "Search filter"
|
|
1049
|
+
msgid "Virus filter"
|
|
1050
|
+
msgstr "搜尋過濾器"
|
|
1051
|
+
|
|
1052
|
+
#: amavis/models.py:105 amavis/models.py:119 amavis/models.py:133
|
|
1053
|
+
msgid "yes"
|
|
1054
|
+
msgstr ""
|
|
1055
|
+
|
|
1056
|
+
#: amavis/models.py:106 amavis/models.py:120 amavis/models.py:134
|
|
1057
|
+
msgid "no"
|
|
1058
|
+
msgstr ""
|
|
1059
|
+
|
|
1060
|
+
#: amavis/models.py:107 amavis/models.py:121 amavis/models.py:135
|
|
1061
|
+
msgid "default"
|
|
1062
|
+
msgstr ""
|
|
1063
|
+
|
|
1064
|
+
#: amavis/models.py:111
|
|
1065
|
+
msgid "Bypass virus checks or not. Choose 'default' to use global settings."
|
|
1066
|
+
msgstr ""
|
|
1067
|
+
|
|
1068
|
+
#: amavis/models.py:115
|
|
1069
|
+
#, fuzzy
|
|
1070
|
+
#| msgid "Search filter"
|
|
1071
|
+
msgid "Spam filter"
|
|
1072
|
+
msgstr "搜尋過濾器"
|
|
1073
|
+
|
|
1074
|
+
#: amavis/models.py:125
|
|
1075
|
+
msgid "Bypass spam checks or not. Choose 'default' to use global settings."
|
|
1076
|
+
msgstr ""
|
|
1077
|
+
|
|
1078
|
+
#: amavis/models.py:129
|
|
1079
|
+
#, fuzzy
|
|
1080
|
+
#| msgid "Search filter"
|
|
1081
|
+
msgid "Banned filter"
|
|
1082
|
+
msgstr "搜尋過濾器"
|
|
1083
|
+
|
|
1084
|
+
#: amavis/models.py:139
|
|
1085
|
+
msgid "Bypass banned checks or not. Choose 'default' to use global settings."
|
|
1086
|
+
msgstr ""
|
|
1087
|
+
|
|
1088
|
+
#: amavis/models.py:170
|
|
1089
|
+
msgid "Spam marker"
|
|
1090
|
+
msgstr ""
|
|
1091
|
+
|
|
1092
|
+
#: amavis/models.py:176
|
|
1093
|
+
msgid ""
|
|
1094
|
+
"Modify spam subject using the specified text. Choose 'default' to use global "
|
|
1095
|
+
"settings."
|
|
1096
|
+
msgstr ""
|
|
1097
|
+
|
|
1098
|
+
#: amavis/templates/amavis/notifications/pending_requests.html:3
|
|
1099
|
+
#, python-format
|
|
1100
|
+
msgid "%(counter)s release request is pending for action."
|
|
1101
|
+
msgid_plural "%(counter)s release requests are pending for action."
|
|
1102
|
+
msgstr[0] ""
|
|
1103
|
+
|
|
1104
|
+
#: amavis/templates/amavis/notifications/pending_requests.html:8
|
|
1105
|
+
msgid "Sketch:"
|
|
1106
|
+
msgstr ""
|
|
1107
|
+
|
|
1108
|
+
#: amavis/templates/amavis/notifications/pending_requests.html:10
|
|
1109
|
+
msgid "From:"
|
|
1110
|
+
msgstr ""
|
|
1111
|
+
|
|
1112
|
+
#: amavis/templates/amavis/notifications/pending_requests.html:11
|
|
1113
|
+
msgid "To:"
|
|
1114
|
+
msgstr ""
|
|
1115
|
+
|
|
1116
|
+
#: amavis/templates/amavis/notifications/pending_requests.html:12
|
|
1117
|
+
#, fuzzy
|
|
1118
|
+
#| msgid "Date"
|
|
1119
|
+
msgid "Date:"
|
|
1120
|
+
msgstr "日期"
|
|
1121
|
+
|
|
1122
|
+
#: amavis/templates/amavis/notifications/pending_requests.html:13
|
|
1123
|
+
#, fuzzy
|
|
1124
|
+
#| msgid "Subject"
|
|
1125
|
+
msgid "Subject:"
|
|
1126
|
+
msgstr "主旨"
|
|
1127
|
+
|
|
1128
|
+
#: amavis/templates/amavis/notifications/pending_requests.html:14
|
|
1129
|
+
#, fuzzy
|
|
1130
|
+
#| msgid "sent messages"
|
|
1131
|
+
msgid "Act on this message:"
|
|
1132
|
+
msgstr "已發訊息"
|
|
1133
|
+
|
|
1134
|
+
#: amavis/templates/amavis/notifications/pending_requests.html:16
|
|
1135
|
+
#, python-format
|
|
1136
|
+
msgid "Please visit %(listingurl)s for a full listing."
|
|
1137
|
+
msgstr ""
|
|
1138
|
+
|
|
1139
|
+
#: amavis/viewsets.py:122
|
|
1140
|
+
#, fuzzy
|
|
1141
|
+
#| msgid "Invalid address"
|
|
1142
|
+
msgid "Invalid request"
|
|
1143
|
+
msgstr "無效位址"
|
|
1144
|
+
|
|
739
1145
|
#: autoreply/api/v2/serializers.py:27
|
|
740
1146
|
msgid "Value can't be less than 1 day"
|
|
741
1147
|
msgstr ""
|
|
@@ -871,7 +1277,7 @@ msgid ""
|
|
|
871
1277
|
"Maximum size in bytes of imported ICS files (or KB, MB, GB if specified)"
|
|
872
1278
|
msgstr ""
|
|
873
1279
|
|
|
874
|
-
#: calendars/app_settings.py:89 core/api/v2/viewsets.py:
|
|
1280
|
+
#: calendars/app_settings.py:89 core/api/v2/viewsets.py:205
|
|
875
1281
|
msgid "Calendars"
|
|
876
1282
|
msgstr ""
|
|
877
1283
|
|
|
@@ -909,7 +1315,7 @@ msgstr "LDAP 設定"
|
|
|
909
1315
|
msgid "Interval in seconds between 2 synchronization requests"
|
|
910
1316
|
msgstr ""
|
|
911
1317
|
|
|
912
|
-
#: contacts/app_settings.py:51 core/api/v2/viewsets.py:
|
|
1318
|
+
#: contacts/app_settings.py:51 core/api/v2/viewsets.py:195
|
|
913
1319
|
#, fuzzy
|
|
914
1320
|
#| msgid "Domains"
|
|
915
1321
|
msgid "Contacts"
|
|
@@ -961,12 +1367,12 @@ msgstr "無效的線"
|
|
|
961
1367
|
msgid "2FA is already enabled"
|
|
962
1368
|
msgstr ""
|
|
963
1369
|
|
|
964
|
-
#: core/api/v1/serializers.py:
|
|
1370
|
+
#: core/api/v1/serializers.py:87
|
|
965
1371
|
#, python-format
|
|
966
1372
|
msgid "Failed TFA settings editing attempt from '%(addr)s' as user '%(user)s'"
|
|
967
1373
|
msgstr ""
|
|
968
1374
|
|
|
969
|
-
#: core/api/v1/serializers.py:
|
|
1375
|
+
#: core/api/v1/serializers.py:93 core/api/v2/serializers.py:445
|
|
970
1376
|
#, fuzzy
|
|
971
1377
|
#| msgid "Old password"
|
|
972
1378
|
msgid "Invalid password"
|
|
@@ -997,7 +1403,7 @@ msgstr ""
|
|
|
997
1403
|
msgid "This code is invalid"
|
|
998
1404
|
msgstr ""
|
|
999
1405
|
|
|
1000
|
-
#: core/api/v2/serializers.py:503 core/views/auth.py:
|
|
1406
|
+
#: core/api/v2/serializers.py:503 core/views/auth.py:213 core/views/auth.py:266
|
|
1001
1407
|
msgid "Please use the following code to recover your Modoboa password: {}"
|
|
1002
1408
|
msgstr ""
|
|
1003
1409
|
|
|
@@ -1007,17 +1413,29 @@ msgstr ""
|
|
|
1007
1413
|
msgid "Administration console"
|
|
1008
1414
|
msgstr "管理員"
|
|
1009
1415
|
|
|
1010
|
-
#: core/api/v2/viewsets.py:
|
|
1416
|
+
#: core/api/v2/viewsets.py:184 dmarc/models.py:11
|
|
1417
|
+
#, fuzzy
|
|
1418
|
+
#| msgid "Quantity"
|
|
1419
|
+
msgid "Quarantine"
|
|
1420
|
+
msgstr "數量"
|
|
1421
|
+
|
|
1422
|
+
#: core/api/v2/viewsets.py:186
|
|
1423
|
+
#, fuzzy
|
|
1424
|
+
#| msgid "Quantity"
|
|
1425
|
+
msgid "Amavis quarantine"
|
|
1426
|
+
msgstr "數量"
|
|
1427
|
+
|
|
1428
|
+
#: core/api/v2/viewsets.py:197
|
|
1011
1429
|
#, fuzzy
|
|
1012
1430
|
#| msgid "Address"
|
|
1013
1431
|
msgid "Address book"
|
|
1014
1432
|
msgstr "地址"
|
|
1015
1433
|
|
|
1016
|
-
#: core/api/v2/viewsets.py:
|
|
1434
|
+
#: core/api/v2/viewsets.py:207
|
|
1017
1435
|
msgid "Calendar"
|
|
1018
1436
|
msgstr ""
|
|
1019
1437
|
|
|
1020
|
-
#: core/api/v2/viewsets.py:
|
|
1438
|
+
#: core/api/v2/viewsets.py:215 core/api/v2/viewsets.py:217
|
|
1021
1439
|
#: webmail/app_settings.py:258 webmail/app_settings.py:265
|
|
1022
1440
|
#, fuzzy
|
|
1023
1441
|
#| msgid "E-mail"
|
|
@@ -1710,7 +2128,7 @@ msgstr "您不可以刪除您擁有的帳號"
|
|
|
1710
2128
|
msgid "One or more updates are available"
|
|
1711
2129
|
msgstr "一個或多個可用的更新"
|
|
1712
2130
|
|
|
1713
|
-
#: core/handlers.py:
|
|
2131
|
+
#: core/handlers.py:140
|
|
1714
2132
|
#, python-format
|
|
1715
2133
|
msgid "You are still using a deprecated password scheme (%s)"
|
|
1716
2134
|
msgstr ""
|
|
@@ -1866,22 +2284,22 @@ msgstr[0] "一個或多個可用的更新"
|
|
|
1866
2284
|
msgid "The core part of Modoboa"
|
|
1867
2285
|
msgstr "Modoboa 的核心部分"
|
|
1868
2286
|
|
|
1869
|
-
#: core/views/auth.py:
|
|
2287
|
+
#: core/views/auth.py:82
|
|
1870
2288
|
#, python-format
|
|
1871
2289
|
msgid "User '%s' successfully logged in"
|
|
1872
2290
|
msgstr ""
|
|
1873
2291
|
|
|
1874
|
-
#: core/views/auth.py:
|
|
2292
|
+
#: core/views/auth.py:128
|
|
1875
2293
|
#, python-format
|
|
1876
2294
|
msgid "Password scheme mismatch. Updating %s password"
|
|
1877
2295
|
msgstr ""
|
|
1878
2296
|
|
|
1879
|
-
#: core/views/auth.py:
|
|
2297
|
+
#: core/views/auth.py:135
|
|
1880
2298
|
#, python-format
|
|
1881
2299
|
msgid "Password hash parameter missmatch. Updating %s password"
|
|
1882
2300
|
msgstr ""
|
|
1883
2301
|
|
|
1884
|
-
#: core/views/auth.py:
|
|
2302
|
+
#: core/views/auth.py:173
|
|
1885
2303
|
msgid "User '{}' successfully logged out"
|
|
1886
2304
|
msgstr ""
|
|
1887
2305
|
|
|
@@ -1914,12 +2332,6 @@ msgstr "未定義"
|
|
|
1914
2332
|
msgid "None"
|
|
1915
2333
|
msgstr "沒有"
|
|
1916
2334
|
|
|
1917
|
-
#: dmarc/models.py:11
|
|
1918
|
-
#, fuzzy
|
|
1919
|
-
#| msgid "Quantity"
|
|
1920
|
-
msgid "Quarantine"
|
|
1921
|
-
msgstr "數量"
|
|
1922
|
-
|
|
1923
2335
|
#: dmarc/models.py:12
|
|
1924
2336
|
#, fuzzy
|
|
1925
2337
|
#| msgid "Subject"
|
|
@@ -2050,7 +2462,12 @@ msgstr ""
|
|
|
2050
2462
|
msgid "Public key mismatchs"
|
|
2051
2463
|
msgstr ""
|
|
2052
2464
|
|
|
2053
|
-
#: imap_migration/api/v2/serializers.py:
|
|
2465
|
+
#: imap_migration/api/v2/serializers.py:66
|
|
2466
|
+
#, fuzzy
|
|
2467
|
+
msgid "Migrated domain with name {} already exists"
|
|
2468
|
+
msgstr "這個名稱的別名已存在"
|
|
2469
|
+
|
|
2470
|
+
#: imap_migration/api/v2/serializers.py:130
|
|
2054
2471
|
#, fuzzy
|
|
2055
2472
|
#| msgid "Access updated"
|
|
2056
2473
|
msgid "Access denied"
|
|
@@ -2768,7 +3185,7 @@ msgstr ""
|
|
|
2768
3185
|
msgid "Rspamd"
|
|
2769
3186
|
msgstr ""
|
|
2770
3187
|
|
|
2771
|
-
#: sievefilters/api/v2/viewsets.py:
|
|
3188
|
+
#: sievefilters/api/v2/viewsets.py:203
|
|
2772
3189
|
#, fuzzy, python-format
|
|
2773
3190
|
#| msgid "User '%s' already exists"
|
|
2774
3191
|
msgid "Filter %s already exists"
|
|
@@ -3135,10 +3552,6 @@ msgstr "必須驗證"
|
|
|
3135
3552
|
msgid "Server needs authentication"
|
|
3136
3553
|
msgstr "伺服器需要驗證"
|
|
3137
3554
|
|
|
3138
|
-
#: webmail/app_settings.py:118
|
|
3139
|
-
msgid "Display"
|
|
3140
|
-
msgstr "顯示"
|
|
3141
|
-
|
|
3142
3555
|
#: webmail/app_settings.py:124
|
|
3143
3556
|
msgid "Default message display mode"
|
|
3144
3557
|
msgstr "預設訊息顯示模式"
|
|
@@ -3155,10 +3568,6 @@ msgstr "啟用 HTMK 顯示連結"
|
|
|
3155
3568
|
msgid "Enable/Disable HTML links display"
|
|
3156
3569
|
msgstr "啟用/停用 HTMK 顯示連結"
|
|
3157
3570
|
|
|
3158
|
-
#: webmail/app_settings.py:144
|
|
3159
|
-
msgid "Number of displayed emails per page"
|
|
3160
|
-
msgstr "每一頁顯示郵件數量"
|
|
3161
|
-
|
|
3162
3571
|
#: webmail/app_settings.py:147
|
|
3163
3572
|
msgid "Sets the maximum number of messages displayed in a page"
|
|
3164
3573
|
msgstr "設定最大每一頁顯示郵件數量"
|
|
@@ -3304,7 +3713,7 @@ msgstr "寄件夾"
|
|
|
3304
3713
|
msgid "Trash"
|
|
3305
3714
|
msgstr "垃圾筒"
|
|
3306
3715
|
|
|
3307
|
-
#: webmail/viewsets.py:
|
|
3716
|
+
#: webmail/viewsets.py:357
|
|
3308
3717
|
#, python-format
|
|
3309
3718
|
msgid "Attachment is too big (limit: %s)"
|
|
3310
3719
|
msgstr "附件太大 (限制: %s)"
|