modoboa 2.6.5__py3-none-any.whl → 2.7.0__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/admin/api/v2/serializers.py +1 -0
- modoboa/admin/app_settings.py +12 -0
- modoboa/admin/{management/commands/subcommands/_mx.py → dns_checker.py} +41 -111
- modoboa/admin/jobs.py +86 -0
- modoboa/admin/management/commands/modo.py +0 -2
- modoboa/admin/tests/test_mailbox_operations.py +4 -4
- modoboa/admin/tests/test_mx.py +68 -56
- modoboa/amavis/jobs.py +11 -0
- modoboa/amavis/tests/test_jobs.py +18 -0
- modoboa/amavis/tests/test_viewsets.py +2 -3
- modoboa/autoconfig/templates/autoconfig/autoconfig.xml +2 -2
- modoboa/autoconfig/templates/autoconfig/autodiscover.xml +14 -0
- modoboa/autoconfig/tests.py +2 -1
- modoboa/autoconfig/views.py +11 -3
- modoboa/calendars/backends/caldav_.py +17 -13
- modoboa/calendars/jobs.py +7 -0
- modoboa/calendars/mocks.py +4 -1
- modoboa/calendars/serializers.py +14 -9
- modoboa/calendars/tests.py +10 -9
- modoboa/calendars/viewsets.py +3 -1
- modoboa/contacts/migrations/0008_addressbook_syncing.py +18 -0
- modoboa/contacts/models.py +1 -0
- modoboa/contacts/serializers.py +5 -2
- modoboa/contacts/tasks.py +9 -3
- modoboa/contacts/tests.py +32 -6
- modoboa/contacts/viewsets.py +7 -1
- modoboa/core/api/v2/serializers.py +0 -7
- modoboa/core/api/v2/tests.py +0 -10
- modoboa/core/app_settings.py +0 -22
- modoboa/core/commands/deploy.py +13 -0
- modoboa/core/commands/templates/cron_config.py.tpl +33 -0
- modoboa/core/commands/templates/settings.py.tpl +21 -0
- modoboa/core/jobs.py +34 -0
- modoboa/core/management/commands/load_initial_data.py +1 -1
- modoboa/core/password_hashers/base.py +4 -1
- modoboa/core/tests/test_core.py +0 -14
- modoboa/core/tests/test_jobs.py +40 -0
- modoboa/frontend_dist/assets/{AccountAliasForm-B-hTKSFr.js → AccountAliasForm-DO6DwfjE.js} +1 -1
- modoboa/frontend_dist/assets/{AccountEditView-LkP_qhf_.js → AccountEditView-CCuN9mGB.js} +1 -1
- modoboa/frontend_dist/assets/AccountLayout-Ge7fzuZg.js +1 -0
- modoboa/frontend_dist/assets/AccountPasswordSubForm-PkFPblkR.js +1 -0
- modoboa/frontend_dist/assets/AccountView-dgseekZ8.js +1 -0
- modoboa/frontend_dist/assets/AddressBook-DZWOHOJj.js +1 -0
- modoboa/frontend_dist/assets/AdminLayout-itB_mmH_.js +1 -0
- modoboa/frontend_dist/assets/AlarmsView-King6zb6.js +1 -0
- modoboa/frontend_dist/assets/{AliasEditView-BVjNJekt.js → AliasEditView-CTjrXYPf.js} +1 -1
- modoboa/frontend_dist/assets/AliasRecipientForm-CI7bXqVp.js +1 -0
- modoboa/frontend_dist/assets/{AliasView-DvvI6cV9.js → AliasView-BN13MNN_.js} +1 -1
- modoboa/frontend_dist/assets/AuditTrailView-C1jQwgoo.js +1 -0
- modoboa/frontend_dist/assets/CalendarView-juHVIHU5.css +1 -0
- modoboa/frontend_dist/assets/CalendarView-rRSzqxrH.js +1 -0
- modoboa/frontend_dist/assets/ChoiceField-DCr12shR.js +1 -0
- modoboa/frontend_dist/assets/ComposeEmailForm-BmtKwFb1.js +2 -0
- modoboa/frontend_dist/assets/ComposeEmailForm-CVNDl-Mq.css +1 -0
- modoboa/frontend_dist/assets/ComposeEmailView-JW22Phrb.js +1 -0
- modoboa/frontend_dist/assets/ConfirmDialog-CWpdwSQ6.js +1 -0
- modoboa/frontend_dist/assets/ConnectedLayout-BP8pO27H.js +1 -0
- modoboa/frontend_dist/assets/{ConnectedLayout-C6HNXWkp.css → ConnectedLayout-Ddpb_6yT.css} +1 -1
- modoboa/frontend_dist/assets/CreationForm-CzelJsVQ.js +1 -0
- modoboa/frontend_dist/assets/DashboardView-BBkBodVj.js +1 -0
- modoboa/frontend_dist/assets/{DomainAdminList-BO8_4Cwt.js → DomainAdminList-DD7p3i6F.js} +1 -1
- modoboa/frontend_dist/assets/{DomainEditView-BXylM4aB.js → DomainEditView-DoIoNYC4.js} +1 -1
- modoboa/frontend_dist/assets/{DomainTransportForm-Ccw5BXyM.js → DomainTransportForm-CbiJF9z5.js} +1 -1
- modoboa/frontend_dist/assets/{DomainView-Bd5XQI-1.js → DomainView-BXvznFYz.js} +3 -3
- modoboa/frontend_dist/assets/DomainsView-ffYjiffp.js +1 -0
- modoboa/frontend_dist/assets/EmailField-KhhJYA4D.js +1 -0
- modoboa/frontend_dist/assets/EmailSchedulingForm-CQL5Vfdr.js +1 -0
- modoboa/frontend_dist/assets/EmailView-Bq2bHZBO.js +1 -0
- modoboa/frontend_dist/assets/EmptyLayout-NrTftp18.js +1 -0
- modoboa/frontend_dist/assets/FiltersView-SOQy0U_3.js +1 -0
- modoboa/frontend_dist/assets/ForwardEmailView-kEPDjWUw.js +1 -0
- modoboa/frontend_dist/assets/{HtmlEditor-DNn3CY-w.js → HtmlEditor-CyBl5wj2.js} +15 -15
- modoboa/frontend_dist/assets/IdentitiesView-CZFf4oR9.js +1 -0
- modoboa/frontend_dist/assets/InformationView-CAtneAqM.js +1 -0
- modoboa/frontend_dist/assets/{LoadingData-CnQ_aVqa.js → LoadingData-C2txD49L.js} +1 -1
- modoboa/frontend_dist/assets/{LoginCallbackView-Nh_gmh8e.js → LoginCallbackView-DAvty3CI.js} +1 -1
- modoboa/frontend_dist/assets/{LoginView-BtC9BHuJ.js → LoginView-DHYITkn4.js} +1 -1
- modoboa/frontend_dist/assets/MailboxView-BNg2v7mi.css +1 -0
- modoboa/frontend_dist/assets/MailboxView-DHg5A78D.js +5 -0
- modoboa/frontend_dist/assets/MenuItems-C9p70bSC.js +1 -0
- modoboa/frontend_dist/assets/{MessageView-C1Goz-hY.js → MessageView-CrrEJpNI.js} +1 -1
- modoboa/frontend_dist/assets/MessagesView-CyecRd4I.js +1 -0
- modoboa/frontend_dist/assets/MigrationsView-DXGKKz2h.js +1 -0
- modoboa/frontend_dist/assets/{ParametersForm-BegEnkQM.js → ParametersForm-DFKYkPAs.js} +1 -1
- modoboa/frontend_dist/assets/ParametersView-B1wT5oyt.js +1 -0
- modoboa/frontend_dist/assets/ParametersView-CfvVzKea.js +1 -0
- modoboa/frontend_dist/assets/ProviderEditView-De-8ggBp.js +1 -0
- modoboa/frontend_dist/assets/{ProviderGeneralForm-BAELnXh6.js → ProviderGeneralForm-DO-IpJMQ.js} +1 -1
- modoboa/frontend_dist/assets/ProvidersView-Bhk7sCz4.js +1 -0
- modoboa/frontend_dist/assets/QuarantineLayout-C1YszNmP.js +1 -0
- modoboa/frontend_dist/assets/QuarantineView-cElD_rS-.js +1 -0
- modoboa/frontend_dist/assets/ReplyEmailView-BvuOZdLl.js +1 -0
- modoboa/frontend_dist/assets/ResourcesForm-FWxrmVwo.js +1 -0
- modoboa/frontend_dist/assets/SelfServiceLayout-JHRvfvQf.js +1 -0
- modoboa/frontend_dist/assets/SettingsView-SIsKAXtQ.css +1 -0
- modoboa/frontend_dist/assets/SettingsView-s2l2Xl1L.js +6 -0
- modoboa/frontend_dist/assets/StatisticsView-FiidWvad.js +1 -0
- modoboa/frontend_dist/assets/TimeSerieChart-CdqUHiO_.js +1 -0
- modoboa/frontend_dist/assets/TimeSerieChart-nLIFGI0y.css +1 -0
- modoboa/frontend_dist/assets/UserLayout-DyvI8duf.js +1 -0
- modoboa/frontend_dist/assets/{VAlert-Buv8Z5G4.js → VAlert-MDbeolOo.js} +1 -1
- modoboa/frontend_dist/assets/VApp-DM1KLQfQ.js +1 -0
- modoboa/frontend_dist/assets/VAutocomplete-C9NL5_uo.css +1 -0
- modoboa/frontend_dist/assets/VAutocomplete-CQsWYWNX.js +1 -0
- modoboa/frontend_dist/assets/VAvatar-CXV_FqpP.js +1 -0
- modoboa/frontend_dist/assets/VBadge-7tDx7aI3.js +1 -0
- modoboa/frontend_dist/assets/{VCard-D7AwBs4w.js → VCard-CBtX8JF-.js} +1 -1
- modoboa/frontend_dist/assets/VCheckbox-zY1MApOy.js +1 -0
- modoboa/frontend_dist/assets/{VCheckboxBtn-B5evxN9K.js → VCheckboxBtn-B0mIT3E0.js} +1 -1
- modoboa/frontend_dist/assets/VColorPicker-BbCHvk6K.js +1 -0
- modoboa/frontend_dist/assets/{VColorPicker-B_lVDaYR.css → VColorPicker-C9m8L-6U.css} +1 -1
- modoboa/frontend_dist/assets/{VContainer-DY9021j4.js → VContainer-Cn-vKB3s.js} +1 -1
- modoboa/frontend_dist/assets/VDataTable-CNT9KOSp.js +1 -0
- modoboa/frontend_dist/assets/VDataTableServer-_yn4Ry6U.js +1 -0
- modoboa/frontend_dist/assets/VDataTableVirtual-Csxh3Gp6.js +1 -0
- modoboa/frontend_dist/assets/VDatePicker-_OUDqShN.css +1 -0
- modoboa/frontend_dist/assets/VDatePicker-iFu13xIP.js +2 -0
- modoboa/frontend_dist/assets/VDialog-lKtBdqnp.js +1 -0
- modoboa/frontend_dist/assets/VExpansionPanels-CaIvk9iF.js +1 -0
- modoboa/frontend_dist/assets/VFileInput-C7J_qVmk.js +1 -0
- modoboa/frontend_dist/assets/VForm-fdQ5d-CH.js +1 -0
- modoboa/frontend_dist/assets/VInput-BwHvhzAe.js +1 -0
- modoboa/frontend_dist/assets/VMenu-BpmJf4X2.js +1 -0
- modoboa/frontend_dist/assets/VMenu-C5A_5Hs5.css +1 -0
- modoboa/frontend_dist/assets/VPicker-B7cB3kJg.css +1 -0
- modoboa/frontend_dist/assets/VPicker-BZho70wU.js +1 -0
- modoboa/frontend_dist/assets/VProgressCircular-DRw_-iNj.js +1 -0
- modoboa/frontend_dist/assets/VRadioGroup--eiP5xtJ.js +1 -0
- modoboa/frontend_dist/assets/{VRow-DyK_Mj7R.js → VRow-83Qnr5iB.js} +1 -1
- modoboa/frontend_dist/assets/VSelect-BcmGFGif.js +1 -0
- modoboa/frontend_dist/assets/{VSelectionControl-Dkms9_P5.js → VSelectionControl-Cqi1xt-q.js} +1 -1
- modoboa/frontend_dist/assets/VSheet-C3MaHhtw.js +1 -0
- modoboa/frontend_dist/assets/VSpacer-CuSkdJZL.js +1 -0
- modoboa/frontend_dist/assets/VSwitch-XumUl685.js +1 -0
- modoboa/frontend_dist/assets/{VTable-D8ZwwC_B.js → VTable-f7wcr2AZ.js} +1 -1
- modoboa/frontend_dist/assets/VTabs-CDfdejXj.css +1 -0
- modoboa/frontend_dist/assets/VTabs-y4wNP4im.js +1 -0
- modoboa/frontend_dist/assets/VTextField-BPIvtrn4.js +1 -0
- modoboa/frontend_dist/assets/VTextField-DjbYGlzs.css +1 -0
- modoboa/frontend_dist/assets/VTextarea-B6bGYcC3.js +1 -0
- modoboa/frontend_dist/assets/VTextarea-f6vTjzFy.css +1 -0
- modoboa/frontend_dist/assets/VToolbar-BYDPtwf0.css +1 -0
- modoboa/frontend_dist/assets/VToolbar-CB6wwtYc.js +1 -0
- modoboa/frontend_dist/assets/VWindowItem-CDtLLEkg.js +1 -0
- modoboa/frontend_dist/assets/WebmailLayout-CQQAolnl.css +1 -0
- modoboa/frontend_dist/assets/WebmailLayout-tosQSHLS.js +1 -0
- modoboa/frontend_dist/assets/{accounts-BZBqbAmd.js → accounts-KUsk6LHW.js} +1 -1
- modoboa/frontend_dist/assets/{admin-uCrKjpln.js → admin-BW9cZW0P.js} +1 -1
- modoboa/frontend_dist/assets/{aliases-CFwFkX45.js → aliases-Ge0hjIsH.js} +1 -1
- modoboa/frontend_dist/assets/{amavis-DCy0U0TD.js → amavis-BbFeFfsk.js} +1 -1
- modoboa/frontend_dist/assets/{amavis-B4ScfQsG.js → amavis-DtuzP_CS.js} +1 -1
- modoboa/frontend_dist/assets/{contacts-DKmh2q-4.js → contacts-DMJlQTe0.js} +1 -1
- modoboa/frontend_dist/assets/{domains-CDE4_LDF.js → domains-Du64lcXT.js} +1 -1
- modoboa/frontend_dist/assets/{domains.store-a9Y5UlDV.js → domains.store-1U61jeCV.js} +1 -1
- modoboa/frontend_dist/assets/events-BM3in65C.js +1 -0
- modoboa/frontend_dist/assets/filter-Dihm6o59.js +1 -0
- modoboa/frontend_dist/assets/importExport-HGcNGWOm.js +1 -0
- modoboa/frontend_dist/assets/{index-B9q1vO3K.css → index-B1EK3MQe.css} +1 -1
- modoboa/frontend_dist/assets/{index-Dwg6jPTX.js → index-Dv00bmw9.js} +1 -1
- modoboa/frontend_dist/assets/{index-BjibLozh.js → index-jui3edpn.js} +47 -41
- modoboa/frontend_dist/assets/{language.store-DGuI8jG0.js → language.store-OcfdXL_-.js} +1 -1
- modoboa/frontend_dist/assets/languages-CF8hxo7x.js +1 -0
- modoboa/frontend_dist/assets/{layout-5PvsmkGR.js → layout-DOO7TRTJ.js} +1 -1
- modoboa/frontend_dist/assets/{layout.store-DJVcXtxk.js → layout.store-C0g-piJn.js} +1 -1
- modoboa/frontend_dist/assets/{logos-CMmd0hOG.js → logos-Dz2Gzei-.js} +1 -1
- modoboa/frontend_dist/assets/{logs-D2GOydPZ.js → logs-CLm32Weu.js} +1 -1
- modoboa/frontend_dist/assets/{parameters-DJdlq9sh.js → parameters-DMIAQ7cd.js} +1 -1
- modoboa/frontend_dist/assets/{parameters.store-DH3pPlaT.js → parameters.store-DLnFzCwV.js} +1 -1
- modoboa/frontend_dist/assets/{permissions-CgFJFhCp.js → permissions-CrpE0b4w.js} +1 -1
- modoboa/frontend_dist/assets/{ssrBoot-ChTB-PYP.js → ssrBoot-B7cr7q9U.js} +1 -1
- modoboa/frontend_dist/assets/{tag-CvrHE14f.js → tag-WF93n81Q.js} +1 -1
- modoboa/frontend_dist/assets/{theme-DFzlhSh5.js → theme-_0oOYChG.js} +1 -1
- modoboa/frontend_dist/assets/transports-CS61syt-.js +1 -0
- modoboa/frontend_dist/assets/webmail-CYDXU0DS.js +1 -0
- modoboa/frontend_dist/assets/webmail.store-BvHCQSjM.js +1 -0
- modoboa/frontend_dist/index.html +2 -2
- modoboa/imap_migration/models.py +3 -3
- modoboa/imap_migration/templates/imap_migration/offlineimap.conf +2 -2
- modoboa/imap_migration/tests.py +21 -0
- modoboa/lib/cryptutils.py +2 -2
- modoboa/lib/sysutils.py +1 -1
- modoboa/lib/tests/__init__.py +0 -1
- modoboa/locale/br/LC_MESSAGES/django.mo +0 -0
- modoboa/locale/br/LC_MESSAGES/django.po +301 -273
- modoboa/locale/cs/LC_MESSAGES/django.po +286 -269
- modoboa/locale/cs_CZ/LC_MESSAGES/django.mo +0 -0
- modoboa/locale/cs_CZ/LC_MESSAGES/django.po +303 -275
- modoboa/locale/de/LC_MESSAGES/django.mo +0 -0
- modoboa/locale/de/LC_MESSAGES/django.po +297 -269
- modoboa/locale/de_DE/LC_MESSAGES/django.mo +0 -0
- modoboa/locale/de_DE/LC_MESSAGES/django.po +303 -275
- modoboa/locale/el_GR/LC_MESSAGES/django.mo +0 -0
- modoboa/locale/el_GR/LC_MESSAGES/django.po +303 -275
- modoboa/locale/en/LC_MESSAGES/django.po +286 -269
- modoboa/locale/es/LC_MESSAGES/django.mo +0 -0
- modoboa/locale/es/LC_MESSAGES/django.po +302 -274
- modoboa/locale/es_MX/LC_MESSAGES/django.po +286 -269
- modoboa/locale/fi/LC_MESSAGES/django.mo +0 -0
- modoboa/locale/fi/LC_MESSAGES/django.po +299 -271
- modoboa/locale/fr/LC_MESSAGES/django.mo +0 -0
- modoboa/locale/fr/LC_MESSAGES/django.po +288 -271
- modoboa/locale/hu/LC_MESSAGES/django.po +286 -269
- modoboa/locale/it/LC_MESSAGES/django.mo +0 -0
- modoboa/locale/it/LC_MESSAGES/django.po +303 -275
- modoboa/locale/ja_JP/LC_MESSAGES/django.mo +0 -0
- modoboa/locale/ja_JP/LC_MESSAGES/django.po +390 -413
- modoboa/locale/ka/LC_MESSAGES/django.po +286 -269
- modoboa/locale/nl_NL/LC_MESSAGES/django.mo +0 -0
- modoboa/locale/nl_NL/LC_MESSAGES/django.po +299 -271
- modoboa/locale/no/LC_MESSAGES/django.po +286 -269
- modoboa/locale/pl_PL/LC_MESSAGES/django.mo +0 -0
- modoboa/locale/pl_PL/LC_MESSAGES/django.po +297 -269
- modoboa/locale/pt_BR/LC_MESSAGES/django.mo +0 -0
- modoboa/locale/pt_BR/LC_MESSAGES/django.po +298 -270
- modoboa/locale/pt_PT/LC_MESSAGES/django.mo +0 -0
- modoboa/locale/pt_PT/LC_MESSAGES/django.po +303 -275
- modoboa/locale/ro_RO/LC_MESSAGES/django.mo +0 -0
- modoboa/locale/ro_RO/LC_MESSAGES/django.po +299 -271
- modoboa/locale/ru/LC_MESSAGES/django.mo +0 -0
- modoboa/locale/ru/LC_MESSAGES/django.po +993 -1096
- modoboa/locale/si/LC_MESSAGES/django.po +286 -269
- modoboa/locale/sk/LC_MESSAGES/django.po +286 -269
- modoboa/locale/sk_SK/LC_MESSAGES/django.po +286 -269
- modoboa/locale/sl_SI/LC_MESSAGES/django.po +288 -269
- modoboa/locale/sv/LC_MESSAGES/django.mo +0 -0
- modoboa/locale/sv/LC_MESSAGES/django.po +297 -269
- modoboa/locale/tr/LC_MESSAGES/django.mo +0 -0
- modoboa/locale/tr/LC_MESSAGES/django.po +301 -272
- modoboa/locale/tr_TR/LC_MESSAGES/django.mo +0 -0
- modoboa/locale/tr_TR/LC_MESSAGES/django.po +291 -269
- modoboa/locale/uk/LC_MESSAGES/django.po +286 -269
- modoboa/locale/zh/LC_MESSAGES/django.po +286 -269
- modoboa/locale/zh_CN/LC_MESSAGES/django.po +286 -269
- modoboa/locale/zh_TW/LC_MESSAGES/django.mo +0 -0
- modoboa/locale/zh_TW/LC_MESSAGES/django.po +295 -273
- modoboa/maillog/jobs.py +11 -0
- modoboa/maillog/tests/test_views.py +5 -4
- modoboa/parameters/api/v2/tests.py +1 -1
- modoboa/policyd/management/commands/policy_daemon.py +5 -1
- modoboa/policyd/tests.py +4 -2
- modoboa/rspamd/tests.py +20 -0
- modoboa/templates/registration/twofactor_code_verify.html +1 -1
- modoboa/webmail/app_settings.py +37 -0
- modoboa/webmail/constants.py +21 -1
- modoboa/webmail/factories.py +19 -0
- modoboa/webmail/jobs.py +27 -0
- modoboa/webmail/lib/__init__.py +0 -2
- modoboa/webmail/lib/imapemail.py +9 -11
- modoboa/webmail/lib/imapheader.py +25 -13
- modoboa/webmail/lib/imaputils.py +51 -13
- modoboa/webmail/lib/sendmail.py +88 -105
- modoboa/webmail/lib/utils.py +109 -0
- modoboa/webmail/migrations/0001_initial.py +90 -0
- modoboa/webmail/migrations/__init__.py +0 -0
- modoboa/webmail/mocks.py +12 -3
- modoboa/webmail/models.py +102 -0
- modoboa/webmail/serializers.py +84 -4
- modoboa/webmail/tests/data.py +21 -0
- modoboa/webmail/tests/test_lib_imaputils.py +33 -0
- modoboa/webmail/tests/test_viewsets.py +108 -0
- modoboa/webmail/urls.py +5 -0
- modoboa/webmail/viewsets.py +39 -9
- {modoboa-2.6.5.dist-info → modoboa-2.7.0.dist-info}/METADATA +16 -13
- {modoboa-2.6.5.dist-info → modoboa-2.7.0.dist-info}/RECORD +269 -252
- {modoboa-2.6.5.dist-info → modoboa-2.7.0.dist-info}/WHEEL +1 -1
- modoboa/admin/management/commands/handle_mailbox_operations.py +0 -103
- modoboa/core/management/commands/cleanlogs.py +0 -53
- modoboa/frontend_dist/assets/AccountLayout-APeC9bsN.js +0 -1
- modoboa/frontend_dist/assets/AccountPasswordSubForm-D4vB2yQK.js +0 -1
- modoboa/frontend_dist/assets/AccountView-CloBP1BY.js +0 -1
- modoboa/frontend_dist/assets/AddressBook-C03MXg3y.js +0 -1
- modoboa/frontend_dist/assets/AdminLayout-DFmyKOo6.js +0 -1
- modoboa/frontend_dist/assets/AlarmsView-CFhH0I5d.js +0 -1
- modoboa/frontend_dist/assets/AliasRecipientForm-CZ_SvjtG.js +0 -1
- modoboa/frontend_dist/assets/AuditTrailView-Cyq25Jle.js +0 -1
- modoboa/frontend_dist/assets/CalendarView-C_dSXRp9.js +0 -1
- modoboa/frontend_dist/assets/ChoiceField-BPhUvoyr.js +0 -1
- modoboa/frontend_dist/assets/ComposeEmailForm-D3yUbBJX.css +0 -1
- modoboa/frontend_dist/assets/ComposeEmailForm-Ns5SYs4J.js +0 -1
- modoboa/frontend_dist/assets/ComposeEmailView-DgUfiWEH.js +0 -1
- modoboa/frontend_dist/assets/ConfirmDialog-BMIg94-U.js +0 -1
- modoboa/frontend_dist/assets/ConnectedLayout-CSXdVJtV.js +0 -1
- modoboa/frontend_dist/assets/CreationForm-CaAZYATm.js +0 -1
- modoboa/frontend_dist/assets/DashboardView-DErmyUoy.js +0 -1
- modoboa/frontend_dist/assets/DomainsView-CC1EwRId.js +0 -1
- modoboa/frontend_dist/assets/EmailField-BFgga4zp.js +0 -1
- modoboa/frontend_dist/assets/EmailView-DPWTch_6.js +0 -1
- modoboa/frontend_dist/assets/EmptyLayout-DAw7fAab.js +0 -1
- modoboa/frontend_dist/assets/FiltersView-Cg9lkLw0.js +0 -1
- modoboa/frontend_dist/assets/ForwardEmailView-Dd1sxgaP.js +0 -1
- modoboa/frontend_dist/assets/IdentitiesView-CiHIQ9Qt.js +0 -1
- modoboa/frontend_dist/assets/InformationView-Cc0aBA5j.js +0 -1
- modoboa/frontend_dist/assets/MailboxView-DIVABvk5.css +0 -1
- modoboa/frontend_dist/assets/MailboxView-DplC0IXR.js +0 -5
- modoboa/frontend_dist/assets/MenuItems-efx2rqwT.js +0 -1
- modoboa/frontend_dist/assets/MessagesView-CesYYZ9f.js +0 -1
- modoboa/frontend_dist/assets/MigrationsView-DSBk8T0y.js +0 -1
- modoboa/frontend_dist/assets/ParametersView-B8W_PAiz.js +0 -1
- modoboa/frontend_dist/assets/ParametersView-Dsx2M_g9.js +0 -1
- modoboa/frontend_dist/assets/ProviderEditView-PEAr7MA1.js +0 -1
- modoboa/frontend_dist/assets/ProvidersView-CHvQf3Vv.js +0 -1
- modoboa/frontend_dist/assets/QuarantineLayout-BWEaBK48.js +0 -1
- modoboa/frontend_dist/assets/QuarantineView-BzjeDhTm.js +0 -1
- modoboa/frontend_dist/assets/ReplyEmailView-CwQ9jsce.js +0 -1
- modoboa/frontend_dist/assets/ResourcesForm-noC3AXd9.js +0 -1
- modoboa/frontend_dist/assets/SelfServiceLayout-DQgRMu0L.js +0 -1
- modoboa/frontend_dist/assets/SettingsView-DJTdIeRK.css +0 -1
- modoboa/frontend_dist/assets/SettingsView-Dgwpfd8O.js +0 -6
- modoboa/frontend_dist/assets/StatisticsView-BZkVSh5o.js +0 -1
- modoboa/frontend_dist/assets/TimeSerieChart-BXJwhTMO.js +0 -1
- modoboa/frontend_dist/assets/TimeSerieChart-C3XHmlRd.css +0 -1
- modoboa/frontend_dist/assets/UserLayout-CWK9ICfE.js +0 -1
- modoboa/frontend_dist/assets/VApp-CiIBWB_Q.js +0 -1
- modoboa/frontend_dist/assets/VAutocomplete-DcNqTIie.js +0 -1
- modoboa/frontend_dist/assets/VAutocomplete-hzGuLlUI.css +0 -1
- modoboa/frontend_dist/assets/VAvatar-BsHplcRP.js +0 -1
- modoboa/frontend_dist/assets/VBadge-CavP_E2g.js +0 -1
- modoboa/frontend_dist/assets/VCheckbox-CKW9lz5i.js +0 -1
- modoboa/frontend_dist/assets/VColorPicker-Bsrz8yif.js +0 -1
- modoboa/frontend_dist/assets/VDataTable-ocZo8ju0.js +0 -1
- modoboa/frontend_dist/assets/VDataTableServer-CJfpYXQW.js +0 -1
- modoboa/frontend_dist/assets/VDataTableVirtual-Cr8yw49k.js +0 -1
- modoboa/frontend_dist/assets/VDialog-CUMh3paI.js +0 -1
- modoboa/frontend_dist/assets/VExpansionPanels-CkwHiKsA.js +0 -1
- modoboa/frontend_dist/assets/VFileInput-D5qlksIG.js +0 -1
- modoboa/frontend_dist/assets/VForm-ClJU5x_v.js +0 -1
- modoboa/frontend_dist/assets/VInput-DhzSMFXh.js +0 -1
- modoboa/frontend_dist/assets/VMenu-B53a3gm6.js +0 -1
- modoboa/frontend_dist/assets/VMenu-BEipA1lw.css +0 -1
- modoboa/frontend_dist/assets/VPicker-B928ZVJQ.js +0 -1
- modoboa/frontend_dist/assets/VPicker-ClSXs6kv.css +0 -1
- modoboa/frontend_dist/assets/VProgressCircular-viI3jDXe.js +0 -1
- modoboa/frontend_dist/assets/VRadioGroup-C0bqFrYg.js +0 -1
- modoboa/frontend_dist/assets/VSelect-y0E5_vPn.js +0 -1
- modoboa/frontend_dist/assets/VSheet-DQkh_hsX.js +0 -1
- modoboa/frontend_dist/assets/VSpacer-CBqB9uSt.js +0 -1
- modoboa/frontend_dist/assets/VSwitch-D4xdR9jz.js +0 -1
- modoboa/frontend_dist/assets/VTabs-D2c0KeF2.js +0 -1
- modoboa/frontend_dist/assets/VTabs-NzpINroH.css +0 -1
- modoboa/frontend_dist/assets/VTextField-Cow3HZvI.css +0 -1
- modoboa/frontend_dist/assets/VTextField-DvvH1ciR.js +0 -1
- modoboa/frontend_dist/assets/VTextarea-DHtXtzqP.js +0 -1
- modoboa/frontend_dist/assets/VTextarea-DyGjqrlm.css +0 -1
- modoboa/frontend_dist/assets/VToolbar-CB2GrZpA.css +0 -1
- modoboa/frontend_dist/assets/VToolbar-pvLQtmbU.js +0 -1
- modoboa/frontend_dist/assets/VWindowItem-DErNPSH8.js +0 -1
- modoboa/frontend_dist/assets/WebmailLayout-BzW0LWYp.css +0 -1
- modoboa/frontend_dist/assets/WebmailLayout-D7J-QJ-0.js +0 -1
- modoboa/frontend_dist/assets/filter-BVvMTmPG.js +0 -1
- modoboa/frontend_dist/assets/global.store-Bha4Z76j.js +0 -1
- modoboa/frontend_dist/assets/importExport-EgijWlC1.js +0 -1
- modoboa/frontend_dist/assets/languages-Cge6pECg.js +0 -1
- modoboa/frontend_dist/assets/transports-BUSYxSF4.js +0 -1
- modoboa/frontend_dist/assets/webmail-HVg3ZHC0.js +0 -1
- modoboa/frontend_dist/assets/webmail.store-D-d88s4w.js +0 -1
- {modoboa-2.6.5.data → modoboa-2.7.0.data}/scripts/modoboa-admin.py +0 -0
- {modoboa-2.6.5.dist-info → modoboa-2.7.0.dist-info}/entry_points.txt +0 -0
- {modoboa-2.6.5.dist-info → modoboa-2.7.0.dist-info}/licenses/LICENSE +0 -0
- {modoboa-2.6.5.dist-info → modoboa-2.7.0.dist-info}/top_level.txt +0 -0
|
@@ -11,7 +11,7 @@ msgid ""
|
|
|
11
11
|
msgstr ""
|
|
12
12
|
"Project-Id-Version: PACKAGE VERSION\n"
|
|
13
13
|
"Report-Msgid-Bugs-To: \n"
|
|
14
|
-
"POT-Creation-Date:
|
|
14
|
+
"POT-Creation-Date: 2026-02-04 09:30+0100\n"
|
|
15
15
|
"PO-Revision-Date: 2020-05-11 18:45+0000\n"
|
|
16
16
|
"Last-Translator: Taras Havryliuk <admin@web4u.in.ua>, 2021\n"
|
|
17
17
|
"Language-Team: Ukrainian (https://www.transifex.com/tonio/teams/13749/uk/)\n"
|
|
@@ -47,14 +47,14 @@ msgid "Cannot be greater than domain quota"
|
|
|
47
47
|
msgstr ""
|
|
48
48
|
|
|
49
49
|
#: admin/api/v1/serializers.py:168 admin/api/v1/serializers.py:364
|
|
50
|
-
#: admin/api/v2/serializers.py:
|
|
50
|
+
#: admin/api/v2/serializers.py:571 admin/models/alias.py:45
|
|
51
51
|
msgid "Permission denied."
|
|
52
52
|
msgstr ""
|
|
53
53
|
|
|
54
54
|
#: admin/api/v1/serializers.py:231 admin/api/v2/serializers.py:90
|
|
55
|
-
#: admin/api/v2/serializers.py:
|
|
56
|
-
#: core/api/v2/serializers.py:
|
|
57
|
-
#: core/api/v2/serializers.py:
|
|
55
|
+
#: admin/api/v2/serializers.py:492 amavis/serializers.py:39
|
|
56
|
+
#: core/api/v2/serializers.py:248 core/api/v2/serializers.py:250
|
|
57
|
+
#: core/api/v2/serializers.py:259 transport/backends.py:40
|
|
58
58
|
msgid "This field is required"
|
|
59
59
|
msgstr ""
|
|
60
60
|
|
|
@@ -63,7 +63,7 @@ msgid ""
|
|
|
63
63
|
"List of administered domains (resellers and domain administrators only)."
|
|
64
64
|
msgstr ""
|
|
65
65
|
|
|
66
|
-
#: admin/api/v1/serializers.py:337 admin/api/v2/serializers.py:
|
|
66
|
+
#: admin/api/v1/serializers.py:337 admin/api/v2/serializers.py:553
|
|
67
67
|
msgid "Not allowed for this role."
|
|
68
68
|
msgstr ""
|
|
69
69
|
|
|
@@ -71,13 +71,12 @@ msgstr ""
|
|
|
71
71
|
msgid "Must be equal to mailbox full_address"
|
|
72
72
|
msgstr ""
|
|
73
73
|
|
|
74
|
-
#: admin/api/v1/serializers.py:397 admin/api/v2/serializers.py:
|
|
75
|
-
#: calendars/serializers.py:
|
|
76
|
-
#: pdfcredentials/api/v2/serializers.py:91
|
|
74
|
+
#: admin/api/v1/serializers.py:397 admin/api/v2/serializers.py:605
|
|
75
|
+
#: calendars/serializers.py:182 pdfcredentials/api/v2/serializers.py:91
|
|
77
76
|
msgid "This field is required."
|
|
78
77
|
msgstr ""
|
|
79
78
|
|
|
80
|
-
#: admin/api/v1/serializers.py:409 admin/api/v2/serializers.py:
|
|
79
|
+
#: admin/api/v1/serializers.py:409 admin/api/v2/serializers.py:622
|
|
81
80
|
msgid "Local domain {} does not exist"
|
|
82
81
|
msgstr ""
|
|
83
82
|
|
|
@@ -118,39 +117,39 @@ msgstr ""
|
|
|
118
117
|
msgid "User '%s' already exists"
|
|
119
118
|
msgstr ""
|
|
120
119
|
|
|
121
|
-
#: admin/api/v2/serializers.py:
|
|
120
|
+
#: admin/api/v2/serializers.py:256 admin/api/v2/serializers.py:262
|
|
122
121
|
msgid "Must be a positive integer"
|
|
123
122
|
msgstr ""
|
|
124
123
|
|
|
125
|
-
#: admin/api/v2/serializers.py:
|
|
124
|
+
#: admin/api/v2/serializers.py:271
|
|
126
125
|
msgid "openssl not found, please make sure it is installed."
|
|
127
126
|
msgstr ""
|
|
128
127
|
|
|
129
|
-
#: admin/api/v2/serializers.py:
|
|
128
|
+
#: admin/api/v2/serializers.py:274 pdfcredentials/api/v2/serializers.py:84
|
|
130
129
|
msgid "Directory not found."
|
|
131
130
|
msgstr ""
|
|
132
131
|
|
|
133
|
-
#: admin/api/v2/serializers.py:
|
|
132
|
+
#: admin/api/v2/serializers.py:285
|
|
134
133
|
msgid "This field only allows valid IP addresses (or networks)"
|
|
135
134
|
msgstr ""
|
|
136
135
|
|
|
137
|
-
#: admin/api/v2/serializers.py:
|
|
136
|
+
#: admin/api/v2/serializers.py:298
|
|
138
137
|
msgid "Please disable imap migration before disabling this option."
|
|
139
138
|
msgstr ""
|
|
140
139
|
|
|
141
|
-
#: admin/api/v2/serializers.py:
|
|
140
|
+
#: admin/api/v2/serializers.py:311
|
|
142
141
|
msgid "Define at least one authorized network / address"
|
|
143
142
|
msgstr ""
|
|
144
143
|
|
|
145
|
-
#: admin/api/v2/serializers.py:
|
|
144
|
+
#: admin/api/v2/serializers.py:588
|
|
146
145
|
msgid "The left part of an email address can't be more than 64 characters."
|
|
147
146
|
msgstr ""
|
|
148
147
|
|
|
149
|
-
#: admin/api/v2/serializers.py:
|
|
148
|
+
#: admin/api/v2/serializers.py:610
|
|
150
149
|
msgid "A mailbox is required to create aliases."
|
|
151
150
|
msgstr ""
|
|
152
151
|
|
|
153
|
-
#: admin/api/v2/serializers.py:
|
|
152
|
+
#: admin/api/v2/serializers.py:783
|
|
154
153
|
msgid "Unknown status"
|
|
155
154
|
msgstr ""
|
|
156
155
|
|
|
@@ -242,141 +241,151 @@ msgstr ""
|
|
|
242
241
|
msgid "Check every domain against major DNSBL providers"
|
|
243
242
|
msgstr ""
|
|
244
243
|
|
|
245
|
-
#: admin/app_settings.py:
|
|
244
|
+
#: admin/app_settings.py:117
|
|
245
|
+
msgid "Notify domain admins about DNS issues"
|
|
246
|
+
msgstr ""
|
|
247
|
+
|
|
248
|
+
#: admin/app_settings.py:120
|
|
249
|
+
msgid ""
|
|
250
|
+
"Send a notification by email to domain administrators when DNS issues are "
|
|
251
|
+
"encountered"
|
|
252
|
+
msgstr ""
|
|
253
|
+
|
|
254
|
+
#: admin/app_settings.py:128
|
|
246
255
|
msgid "Custom DNS server"
|
|
247
256
|
msgstr ""
|
|
248
257
|
|
|
249
|
-
#: admin/app_settings.py:
|
|
258
|
+
#: admin/app_settings.py:130
|
|
250
259
|
msgid "Use a custom DNS server instead of local server configuration"
|
|
251
260
|
msgstr ""
|
|
252
261
|
|
|
253
|
-
#: admin/app_settings.py:
|
|
262
|
+
#: admin/app_settings.py:138
|
|
254
263
|
msgid "DKIM keys storage directory"
|
|
255
264
|
msgstr ""
|
|
256
265
|
|
|
257
|
-
#: admin/app_settings.py:
|
|
266
|
+
#: admin/app_settings.py:140
|
|
258
267
|
msgid ""
|
|
259
268
|
"Absolute path of the directory where DKIM private keys will be stored. Make "
|
|
260
269
|
"sure this directory belongs to root user and is not readable by the outside "
|
|
261
270
|
"world."
|
|
262
271
|
msgstr ""
|
|
263
272
|
|
|
264
|
-
#: admin/app_settings.py:
|
|
273
|
+
#: admin/app_settings.py:149
|
|
265
274
|
msgid "Default DKIM key length"
|
|
266
275
|
msgstr ""
|
|
267
276
|
|
|
268
|
-
#: admin/app_settings.py:
|
|
277
|
+
#: admin/app_settings.py:151
|
|
269
278
|
msgid "Default length in bits for newly generated DKIM keys."
|
|
270
279
|
msgstr ""
|
|
271
280
|
|
|
272
|
-
#: admin/app_settings.py:
|
|
281
|
+
#: admin/app_settings.py:158
|
|
273
282
|
msgid "Default domain quota"
|
|
274
283
|
msgstr ""
|
|
275
284
|
|
|
276
|
-
#: admin/app_settings.py:
|
|
285
|
+
#: admin/app_settings.py:160
|
|
277
286
|
msgid ""
|
|
278
287
|
"Default quota (in MB) applied to freshly created domains with no value "
|
|
279
288
|
"specified. A value of 0 means no quota."
|
|
280
289
|
msgstr ""
|
|
281
290
|
|
|
282
|
-
#: admin/app_settings.py:
|
|
291
|
+
#: admin/app_settings.py:168
|
|
283
292
|
msgid "Default domain sending limit"
|
|
284
293
|
msgstr ""
|
|
285
294
|
|
|
286
|
-
#: admin/app_settings.py:
|
|
295
|
+
#: admin/app_settings.py:170
|
|
287
296
|
msgid ""
|
|
288
297
|
"Number of messages freshly created domains will be allowed to send per day. "
|
|
289
298
|
"Leave empty for no limit."
|
|
290
299
|
msgstr ""
|
|
291
300
|
|
|
292
|
-
#: admin/app_settings.py:
|
|
301
|
+
#: admin/app_settings.py:182 limits/app_settings.py:61
|
|
293
302
|
#: limits/app_settings.py:135 limits/constants.py:31 limits/constants.py:84
|
|
294
303
|
msgid "Mailboxes"
|
|
295
304
|
msgstr ""
|
|
296
305
|
|
|
297
|
-
#: admin/app_settings.py:
|
|
306
|
+
#: admin/app_settings.py:188
|
|
298
307
|
msgid "Handle mailboxes on filesystem"
|
|
299
308
|
msgstr ""
|
|
300
309
|
|
|
301
|
-
#: admin/app_settings.py:
|
|
310
|
+
#: admin/app_settings.py:190
|
|
302
311
|
msgid ""
|
|
303
312
|
"Rename or remove mailboxes on the filesystem when they get renamed or "
|
|
304
313
|
"removed within Modoboa"
|
|
305
314
|
msgstr ""
|
|
306
315
|
|
|
307
|
-
#: admin/app_settings.py:
|
|
316
|
+
#: admin/app_settings.py:198 admin/models/domain.py:36
|
|
308
317
|
msgid "Default mailbox quota"
|
|
309
318
|
msgstr ""
|
|
310
319
|
|
|
311
|
-
#: admin/app_settings.py:
|
|
320
|
+
#: admin/app_settings.py:200
|
|
312
321
|
msgid ""
|
|
313
322
|
"Default mailbox quota (in MB) applied to freshly created domains with no "
|
|
314
323
|
"value specified. A value of 0 means no quota."
|
|
315
324
|
msgstr ""
|
|
316
325
|
|
|
317
|
-
#: admin/app_settings.py:
|
|
326
|
+
#: admin/app_settings.py:209
|
|
318
327
|
msgid "Default mailbox sending limit"
|
|
319
328
|
msgstr ""
|
|
320
329
|
|
|
321
|
-
#: admin/app_settings.py:
|
|
330
|
+
#: admin/app_settings.py:211
|
|
322
331
|
msgid ""
|
|
323
332
|
"Number of messages freshly created mailboxes will be allowed to send per "
|
|
324
333
|
"day. Leave empty for no limit."
|
|
325
334
|
msgstr ""
|
|
326
335
|
|
|
327
|
-
#: admin/app_settings.py:
|
|
336
|
+
#: admin/app_settings.py:219
|
|
328
337
|
msgid "Automatic account removal"
|
|
329
338
|
msgstr ""
|
|
330
339
|
|
|
331
|
-
#: admin/app_settings.py:
|
|
340
|
+
#: admin/app_settings.py:221
|
|
332
341
|
msgid "When a mailbox is removed, also remove the associated account"
|
|
333
342
|
msgstr ""
|
|
334
343
|
|
|
335
|
-
#: admin/app_settings.py:
|
|
344
|
+
#: admin/app_settings.py:230
|
|
336
345
|
msgid "Automatic domain/mailbox creation"
|
|
337
346
|
msgstr ""
|
|
338
347
|
|
|
339
|
-
#: admin/app_settings.py:
|
|
348
|
+
#: admin/app_settings.py:233
|
|
340
349
|
msgid "Create a domain and a mailbox when an account is automatically created."
|
|
341
350
|
msgstr ""
|
|
342
351
|
|
|
343
|
-
#: admin/app_settings.py:
|
|
352
|
+
#: admin/app_settings.py:242
|
|
344
353
|
msgid "Create an alias when a mailbox is renamed"
|
|
345
354
|
msgstr ""
|
|
346
355
|
|
|
347
|
-
#: admin/app_settings.py:
|
|
356
|
+
#: admin/app_settings.py:245
|
|
348
357
|
msgid "Create an alias using the old address when a mailbox is renamed."
|
|
349
358
|
msgstr ""
|
|
350
359
|
|
|
351
|
-
#: admin/app_settings.py:
|
|
360
|
+
#: admin/app_settings.py:257
|
|
352
361
|
msgid "Aliases"
|
|
353
362
|
msgstr ""
|
|
354
363
|
|
|
355
|
-
#: admin/app_settings.py:
|
|
364
|
+
#: admin/app_settings.py:263
|
|
356
365
|
msgid "Alias can target any domain"
|
|
357
366
|
msgstr ""
|
|
358
367
|
|
|
359
|
-
#: admin/app_settings.py:
|
|
368
|
+
#: admin/app_settings.py:265
|
|
360
369
|
msgid "Allow aliases to target any domain, not just the local domains."
|
|
361
370
|
msgstr ""
|
|
362
371
|
|
|
363
|
-
#: admin/app_settings.py:
|
|
372
|
+
#: admin/app_settings.py:272
|
|
364
373
|
msgid "Alias target block list"
|
|
365
374
|
msgstr ""
|
|
366
375
|
|
|
367
|
-
#: admin/app_settings.py:
|
|
376
|
+
#: admin/app_settings.py:274
|
|
368
377
|
msgid "A list of domains that aliases cannot target (comma separated)."
|
|
369
378
|
msgstr ""
|
|
370
379
|
|
|
371
|
-
#: admin/app_settings.py:
|
|
380
|
+
#: admin/app_settings.py:282
|
|
372
381
|
msgid "Alias target allow list"
|
|
373
382
|
msgstr ""
|
|
374
383
|
|
|
375
|
-
#: admin/app_settings.py:
|
|
384
|
+
#: admin/app_settings.py:284
|
|
376
385
|
msgid "A list of domains that aliases can target (comma separated)."
|
|
377
386
|
msgstr ""
|
|
378
387
|
|
|
379
|
-
#: admin/app_settings.py:
|
|
388
|
+
#: admin/app_settings.py:338 core/api/v2/viewsets.py:174
|
|
380
389
|
msgid "Administration"
|
|
381
390
|
msgstr ""
|
|
382
391
|
|
|
@@ -396,6 +405,35 @@ msgstr ""
|
|
|
396
405
|
msgid "Closed"
|
|
397
406
|
msgstr ""
|
|
398
407
|
|
|
408
|
+
#: admin/dns_checker.py:96
|
|
409
|
+
msgid "MX {} listed by DNSBL provider {}"
|
|
410
|
+
msgstr ""
|
|
411
|
+
|
|
412
|
+
#: admin/dns_checker.py:138
|
|
413
|
+
msgid "Domain has no MX record"
|
|
414
|
+
msgstr ""
|
|
415
|
+
|
|
416
|
+
#: admin/dns_checker.py:141
|
|
417
|
+
msgid "Domain {} has no MX record"
|
|
418
|
+
msgstr ""
|
|
419
|
+
|
|
420
|
+
#: admin/dns_checker.py:159
|
|
421
|
+
msgid "Invalid MX record: {}"
|
|
422
|
+
msgstr ""
|
|
423
|
+
|
|
424
|
+
#: admin/dns_checker.py:166
|
|
425
|
+
#, python-brace-format
|
|
426
|
+
msgid "MX record for domain {0} is invalid: {1}"
|
|
427
|
+
msgstr ""
|
|
428
|
+
|
|
429
|
+
#: admin/dns_checker.py:177
|
|
430
|
+
msgid "[modoboa] MX issue(s) for domain {}"
|
|
431
|
+
msgstr ""
|
|
432
|
+
|
|
433
|
+
#: admin/dns_checker.py:224
|
|
434
|
+
msgid "[modoboa] DNSBL issue(s) for domain {}"
|
|
435
|
+
msgstr ""
|
|
436
|
+
|
|
399
437
|
#: admin/handlers.py:179
|
|
400
438
|
msgid "domain alias"
|
|
401
439
|
msgstr ""
|
|
@@ -418,8 +456,8 @@ msgstr ""
|
|
|
418
456
|
msgid "You are not allowed to import domain aliases."
|
|
419
457
|
msgstr ""
|
|
420
458
|
|
|
421
|
-
#: admin/lib.py:227 admin/tests/test_mx.py:
|
|
422
|
-
#: admin/tests/test_mx.py:
|
|
459
|
+
#: admin/lib.py:227 admin/tests/test_mx.py:139 admin/tests/test_mx.py:152
|
|
460
|
+
#: admin/tests/test_mx.py:157
|
|
423
461
|
#, python-format
|
|
424
462
|
msgid "No DNS record found for %s"
|
|
425
463
|
msgstr ""
|
|
@@ -429,11 +467,11 @@ msgstr ""
|
|
|
429
467
|
msgid "No %(type)s record for %(name)s"
|
|
430
468
|
msgstr ""
|
|
431
469
|
|
|
432
|
-
#: admin/lib.py:234 admin/tests/test_mx.py:
|
|
470
|
+
#: admin/lib.py:234 admin/tests/test_mx.py:142
|
|
433
471
|
msgid "No working name servers found"
|
|
434
472
|
msgstr ""
|
|
435
473
|
|
|
436
|
-
#: admin/lib.py:237 admin/tests/test_mx.py:
|
|
474
|
+
#: admin/lib.py:237 admin/tests/test_mx.py:146
|
|
437
475
|
#, python-format
|
|
438
476
|
msgid "DNS resolution timeout, unable to query %s at the moment"
|
|
439
477
|
msgstr ""
|
|
@@ -485,35 +523,6 @@ msgstr ""
|
|
|
485
523
|
msgid "Failed to generate DKIM public key"
|
|
486
524
|
msgstr ""
|
|
487
525
|
|
|
488
|
-
#: admin/management/commands/subcommands/_mx.py:133
|
|
489
|
-
msgid "MX {} listed by DNSBL provider {}"
|
|
490
|
-
msgstr ""
|
|
491
|
-
|
|
492
|
-
#: admin/management/commands/subcommands/_mx.py:174
|
|
493
|
-
msgid "Domain has no MX record"
|
|
494
|
-
msgstr ""
|
|
495
|
-
|
|
496
|
-
#: admin/management/commands/subcommands/_mx.py:177
|
|
497
|
-
msgid "Domain {} has no MX record"
|
|
498
|
-
msgstr ""
|
|
499
|
-
|
|
500
|
-
#: admin/management/commands/subcommands/_mx.py:195
|
|
501
|
-
msgid "Invalid MX record: {}"
|
|
502
|
-
msgstr ""
|
|
503
|
-
|
|
504
|
-
#: admin/management/commands/subcommands/_mx.py:202
|
|
505
|
-
#, python-brace-format
|
|
506
|
-
msgid "MX record for domain {0} is invalid: {1}"
|
|
507
|
-
msgstr ""
|
|
508
|
-
|
|
509
|
-
#: admin/management/commands/subcommands/_mx.py:213
|
|
510
|
-
msgid "[modoboa] MX issue(s) for domain {}"
|
|
511
|
-
msgstr ""
|
|
512
|
-
|
|
513
|
-
#: admin/management/commands/subcommands/_mx.py:269
|
|
514
|
-
msgid "[modoboa] DNSBL issue(s) for domain {}"
|
|
515
|
-
msgstr ""
|
|
516
|
-
|
|
517
526
|
#: admin/models/alias.py:43
|
|
518
527
|
msgid "Domain not found."
|
|
519
528
|
msgstr ""
|
|
@@ -690,17 +699,17 @@ msgstr ""
|
|
|
690
699
|
msgid "Modoboa detected that domain %(domain)s has no valid MX record:"
|
|
691
700
|
msgstr ""
|
|
692
701
|
|
|
693
|
-
#: admin/tests/test_mx.py:
|
|
702
|
+
#: admin/tests/test_mx.py:141
|
|
694
703
|
#, python-format
|
|
695
704
|
msgid "No MX record for %s"
|
|
696
705
|
msgstr ""
|
|
697
706
|
|
|
698
|
-
#: admin/tests/test_mx.py:
|
|
707
|
+
#: admin/tests/test_mx.py:162 admin/tests/test_mx.py:168
|
|
699
708
|
#, python-format
|
|
700
709
|
msgid "Invalid IP address format for %(domain)s; %(addr)s"
|
|
701
710
|
msgstr ""
|
|
702
711
|
|
|
703
|
-
#: admin/tests/test_mx.py:
|
|
712
|
+
#: admin/tests/test_mx.py:185
|
|
704
713
|
#, python-format
|
|
705
714
|
msgid "No AAAA record for %s"
|
|
706
715
|
msgstr ""
|
|
@@ -869,11 +878,11 @@ msgid ""
|
|
|
869
878
|
"database)"
|
|
870
879
|
msgstr ""
|
|
871
880
|
|
|
872
|
-
#: amavis/app_settings.py:236 webmail/app_settings.py:
|
|
881
|
+
#: amavis/app_settings.py:236 webmail/app_settings.py:155
|
|
873
882
|
msgid "Display"
|
|
874
883
|
msgstr ""
|
|
875
884
|
|
|
876
|
-
#: amavis/app_settings.py:243 webmail/app_settings.py:
|
|
885
|
+
#: amavis/app_settings.py:243 webmail/app_settings.py:181
|
|
877
886
|
msgid "Number of displayed emails per page"
|
|
878
887
|
msgstr ""
|
|
879
888
|
|
|
@@ -1118,7 +1127,7 @@ msgstr ""
|
|
|
1118
1127
|
msgid "Allow domain administrators to manage user calendars (read and write)"
|
|
1119
1128
|
msgstr ""
|
|
1120
1129
|
|
|
1121
|
-
#: calendars/app_settings.py:60 core/app_settings.py:
|
|
1130
|
+
#: calendars/app_settings.py:60 core/app_settings.py:664
|
|
1122
1131
|
#: rspamd/app_settings.py:45
|
|
1123
1132
|
msgid "Miscellaneous"
|
|
1124
1133
|
msgstr ""
|
|
@@ -1136,11 +1145,11 @@ msgstr ""
|
|
|
1136
1145
|
msgid "Calendars"
|
|
1137
1146
|
msgstr ""
|
|
1138
1147
|
|
|
1139
|
-
#: calendars/models.py:48 calendars/models.py:65 contacts/models.py:
|
|
1148
|
+
#: calendars/models.py:48 calendars/models.py:65 contacts/models.py:39
|
|
1140
1149
|
msgid "Server location is not set, please fix it."
|
|
1141
1150
|
msgstr ""
|
|
1142
1151
|
|
|
1143
|
-
#: calendars/viewsets.py:
|
|
1152
|
+
#: calendars/viewsets.py:199
|
|
1144
1153
|
msgid "Uploaded file is too big (max: {} bytes)"
|
|
1145
1154
|
msgstr ""
|
|
1146
1155
|
|
|
@@ -1219,7 +1228,7 @@ msgstr ""
|
|
|
1219
1228
|
msgid "Failed TFA settings editing attempt from '%(addr)s' as user '%(user)s'"
|
|
1220
1229
|
msgstr ""
|
|
1221
1230
|
|
|
1222
|
-
#: core/api/v1/serializers.py:93 core/api/v2/serializers.py:
|
|
1231
|
+
#: core/api/v1/serializers.py:93 core/api/v2/serializers.py:438
|
|
1223
1232
|
msgid "Invalid password"
|
|
1224
1233
|
msgstr ""
|
|
1225
1234
|
|
|
@@ -1231,24 +1240,20 @@ msgstr ""
|
|
|
1231
1240
|
msgid "Local"
|
|
1232
1241
|
msgstr ""
|
|
1233
1242
|
|
|
1234
|
-
#: core/api/v2/serializers.py:
|
|
1235
|
-
|
|
1236
|
-
msgstr ""
|
|
1237
|
-
|
|
1238
|
-
#: core/api/v2/serializers.py:213 core/api/v2/serializers.py:221
|
|
1239
|
-
#: core/api/v2/serializers.py:228
|
|
1243
|
+
#: core/api/v2/serializers.py:206 core/api/v2/serializers.py:214
|
|
1244
|
+
#: core/api/v2/serializers.py:221
|
|
1240
1245
|
msgid "Invalid syntax"
|
|
1241
1246
|
msgstr ""
|
|
1242
1247
|
|
|
1243
|
-
#: core/api/v2/serializers.py:
|
|
1248
|
+
#: core/api/v2/serializers.py:226
|
|
1244
1249
|
msgid "Invalid rounds number"
|
|
1245
1250
|
msgstr ""
|
|
1246
1251
|
|
|
1247
|
-
#: core/api/v2/serializers.py:
|
|
1252
|
+
#: core/api/v2/serializers.py:426 core/forms.py:81
|
|
1248
1253
|
msgid "This code is invalid"
|
|
1249
1254
|
msgstr ""
|
|
1250
1255
|
|
|
1251
|
-
#: core/api/v2/serializers.py:
|
|
1256
|
+
#: core/api/v2/serializers.py:496 core/views/auth.py:213 core/views/auth.py:266
|
|
1252
1257
|
msgid "Please use the following code to recover your Modoboa password: {}"
|
|
1253
1258
|
msgstr ""
|
|
1254
1259
|
|
|
@@ -1273,525 +1278,517 @@ msgid "Calendar"
|
|
|
1273
1278
|
msgstr ""
|
|
1274
1279
|
|
|
1275
1280
|
#: core/api/v2/viewsets.py:215 core/api/v2/viewsets.py:217
|
|
1276
|
-
#: webmail/app_settings.py:
|
|
1281
|
+
#: webmail/app_settings.py:295 webmail/app_settings.py:302
|
|
1277
1282
|
msgid "Webmail"
|
|
1278
1283
|
msgstr ""
|
|
1279
1284
|
|
|
1280
|
-
#: core/app_settings.py:
|
|
1285
|
+
#: core/app_settings.py:25
|
|
1281
1286
|
msgid "Authentication"
|
|
1282
1287
|
msgstr ""
|
|
1283
1288
|
|
|
1284
|
-
#: core/app_settings.py:
|
|
1289
|
+
#: core/app_settings.py:31
|
|
1285
1290
|
msgid "Authentication type"
|
|
1286
1291
|
msgstr ""
|
|
1287
1292
|
|
|
1288
|
-
#: core/app_settings.py:
|
|
1293
|
+
#: core/app_settings.py:33
|
|
1289
1294
|
msgid "The backend used for authentication"
|
|
1290
1295
|
msgstr ""
|
|
1291
1296
|
|
|
1292
|
-
#: core/app_settings.py:
|
|
1297
|
+
#: core/app_settings.py:40
|
|
1293
1298
|
msgid "Default password scheme"
|
|
1294
1299
|
msgstr ""
|
|
1295
1300
|
|
|
1296
|
-
#: core/app_settings.py:
|
|
1301
|
+
#: core/app_settings.py:42
|
|
1297
1302
|
msgid "Scheme used to crypt mailbox passwords"
|
|
1298
1303
|
msgstr ""
|
|
1299
1304
|
|
|
1300
|
-
#: core/app_settings.py:
|
|
1305
|
+
#: core/app_settings.py:49
|
|
1301
1306
|
msgid "Rounds"
|
|
1302
1307
|
msgstr ""
|
|
1303
1308
|
|
|
1304
|
-
#: core/app_settings.py:
|
|
1309
|
+
#: core/app_settings.py:51
|
|
1305
1310
|
msgid ""
|
|
1306
1311
|
"Number of rounds to use (only used by sha256crypt and sha512crypt). Must be "
|
|
1307
1312
|
"between 1000 and 999999999, inclusive."
|
|
1308
1313
|
msgstr ""
|
|
1309
1314
|
|
|
1310
|
-
#: core/app_settings.py:
|
|
1315
|
+
#: core/app_settings.py:61
|
|
1311
1316
|
msgid "Update password scheme at login"
|
|
1312
1317
|
msgstr ""
|
|
1313
1318
|
|
|
1314
|
-
#: core/app_settings.py:
|
|
1319
|
+
#: core/app_settings.py:64
|
|
1315
1320
|
msgid "Update user password at login to use the default password scheme"
|
|
1316
1321
|
msgstr ""
|
|
1317
1322
|
|
|
1318
|
-
#: core/app_settings.py:
|
|
1323
|
+
#: core/app_settings.py:72
|
|
1319
1324
|
msgid "Default password"
|
|
1320
1325
|
msgstr ""
|
|
1321
1326
|
|
|
1322
|
-
#: core/app_settings.py:
|
|
1327
|
+
#: core/app_settings.py:74
|
|
1323
1328
|
msgid "Default password for automatically created accounts."
|
|
1324
1329
|
msgstr ""
|
|
1325
1330
|
|
|
1326
|
-
#: core/app_settings.py:
|
|
1331
|
+
#: core/app_settings.py:81
|
|
1327
1332
|
msgid "Random password length"
|
|
1328
1333
|
msgstr ""
|
|
1329
1334
|
|
|
1330
|
-
#: core/app_settings.py:
|
|
1335
|
+
#: core/app_settings.py:83
|
|
1331
1336
|
msgid "Length of randomly generated passwords."
|
|
1332
1337
|
msgstr ""
|
|
1333
1338
|
|
|
1334
|
-
#: core/app_settings.py:
|
|
1339
|
+
#: core/app_settings.py:91
|
|
1335
1340
|
msgid "Allow special characters for random password"
|
|
1336
1341
|
msgstr ""
|
|
1337
1342
|
|
|
1338
|
-
#: core/app_settings.py:
|
|
1343
|
+
#: core/app_settings.py:94
|
|
1339
1344
|
msgid "Enable special characters in randomly generated passwords."
|
|
1340
1345
|
msgstr ""
|
|
1341
1346
|
|
|
1342
|
-
#: core/app_settings.py:
|
|
1347
|
+
#: core/app_settings.py:102
|
|
1343
1348
|
msgid "Update password service URL"
|
|
1344
1349
|
msgstr ""
|
|
1345
1350
|
|
|
1346
|
-
#: core/app_settings.py:
|
|
1351
|
+
#: core/app_settings.py:104
|
|
1347
1352
|
msgid ""
|
|
1348
1353
|
"The URL of an external page where users will be able to update their "
|
|
1349
1354
|
"password. It applies only to non local users, ie. those automatically "
|
|
1350
1355
|
"created after a successful external authentication (LDAP, SMTP)."
|
|
1351
1356
|
msgstr ""
|
|
1352
1357
|
|
|
1353
|
-
#: core/app_settings.py:
|
|
1358
|
+
#: core/app_settings.py:114
|
|
1354
1359
|
msgid "Password recovery announcement"
|
|
1355
1360
|
msgstr ""
|
|
1356
1361
|
|
|
1357
|
-
#: core/app_settings.py:
|
|
1362
|
+
#: core/app_settings.py:116
|
|
1358
1363
|
msgid "A temporary message that will be displayed on the reset password page."
|
|
1359
1364
|
msgstr ""
|
|
1360
1365
|
|
|
1361
|
-
#: core/app_settings.py:
|
|
1366
|
+
#: core/app_settings.py:125
|
|
1362
1367
|
msgid "Enable password recovery by SMS"
|
|
1363
1368
|
msgstr ""
|
|
1364
1369
|
|
|
1365
|
-
#: core/app_settings.py:
|
|
1370
|
+
#: core/app_settings.py:128
|
|
1366
1371
|
msgid "Enable password recovery by SMS for users who filled a phone number."
|
|
1367
1372
|
msgstr ""
|
|
1368
1373
|
|
|
1369
|
-
#: core/app_settings.py:
|
|
1374
|
+
#: core/app_settings.py:136
|
|
1370
1375
|
msgid "SMS provider"
|
|
1371
1376
|
msgstr ""
|
|
1372
1377
|
|
|
1373
|
-
#: core/app_settings.py:
|
|
1378
|
+
#: core/app_settings.py:139
|
|
1374
1379
|
msgid "Choose a provider to send password recovery SMS"
|
|
1375
1380
|
msgstr ""
|
|
1376
1381
|
|
|
1377
|
-
#: core/app_settings.py:
|
|
1382
|
+
#: core/app_settings.py:151
|
|
1378
1383
|
msgid "LDAP"
|
|
1379
1384
|
msgstr ""
|
|
1380
1385
|
|
|
1381
|
-
#: core/app_settings.py:
|
|
1386
|
+
#: core/app_settings.py:157 sievefilters/app_settings.py:18
|
|
1382
1387
|
#: sievefilters/app_settings.py:51 webmail/app_settings.py:36
|
|
1383
|
-
#: webmail/app_settings.py:73
|
|
1388
|
+
#: webmail/app_settings.py:73 webmail/app_settings.py:119
|
|
1384
1389
|
msgid "Server address"
|
|
1385
1390
|
msgstr ""
|
|
1386
1391
|
|
|
1387
|
-
#: core/app_settings.py:
|
|
1392
|
+
#: core/app_settings.py:159
|
|
1388
1393
|
msgid "The IP address or the DNS name of the LDAP server"
|
|
1389
1394
|
msgstr ""
|
|
1390
1395
|
|
|
1391
|
-
#: core/app_settings.py:
|
|
1396
|
+
#: core/app_settings.py:166 sievefilters/app_settings.py:25
|
|
1392
1397
|
#: sievefilters/app_settings.py:67 webmail/app_settings.py:54
|
|
1393
|
-
#: webmail/app_settings.py:91
|
|
1398
|
+
#: webmail/app_settings.py:91 webmail/app_settings.py:137
|
|
1394
1399
|
msgid "Server port"
|
|
1395
1400
|
msgstr ""
|
|
1396
1401
|
|
|
1397
|
-
#: core/app_settings.py:
|
|
1402
|
+
#: core/app_settings.py:168
|
|
1398
1403
|
msgid "The TCP port number used by the LDAP server"
|
|
1399
1404
|
msgstr ""
|
|
1400
1405
|
|
|
1401
|
-
#: core/app_settings.py:
|
|
1406
|
+
#: core/app_settings.py:176
|
|
1402
1407
|
msgid "Enable secondary server (fallback)"
|
|
1403
1408
|
msgstr ""
|
|
1404
1409
|
|
|
1405
|
-
#: core/app_settings.py:
|
|
1410
|
+
#: core/app_settings.py:179
|
|
1406
1411
|
msgid ""
|
|
1407
1412
|
"Enable a secondary LDAP server which will be used if the primary one fails"
|
|
1408
1413
|
msgstr ""
|
|
1409
1414
|
|
|
1410
|
-
#: core/app_settings.py:
|
|
1415
|
+
#: core/app_settings.py:187
|
|
1411
1416
|
msgid "Secondary server address"
|
|
1412
1417
|
msgstr ""
|
|
1413
1418
|
|
|
1414
|
-
#: core/app_settings.py:
|
|
1419
|
+
#: core/app_settings.py:190
|
|
1415
1420
|
msgid "The IP address or the DNS name of the seondary LDAP server"
|
|
1416
1421
|
msgstr ""
|
|
1417
1422
|
|
|
1418
|
-
#: core/app_settings.py:
|
|
1423
|
+
#: core/app_settings.py:197
|
|
1419
1424
|
msgid "Secondary server port"
|
|
1420
1425
|
msgstr ""
|
|
1421
1426
|
|
|
1422
|
-
#: core/app_settings.py:
|
|
1427
|
+
#: core/app_settings.py:200
|
|
1423
1428
|
msgid "The TCP port number used by the LDAP secondary server"
|
|
1424
1429
|
msgstr ""
|
|
1425
1430
|
|
|
1426
|
-
#: core/app_settings.py:
|
|
1431
|
+
#: core/app_settings.py:207 sievefilters/app_settings.py:58
|
|
1427
1432
|
#: webmail/app_settings.py:45
|
|
1428
1433
|
msgid "Use a secured connection"
|
|
1429
1434
|
msgstr ""
|
|
1430
1435
|
|
|
1431
|
-
#: core/app_settings.py:
|
|
1436
|
+
#: core/app_settings.py:209
|
|
1432
1437
|
msgid "Use an SSL/STARTTLS connection to access the LDAP server"
|
|
1433
1438
|
msgstr ""
|
|
1434
1439
|
|
|
1435
|
-
#: core/app_settings.py:
|
|
1440
|
+
#: core/app_settings.py:216
|
|
1436
1441
|
msgid "Active Directory"
|
|
1437
1442
|
msgstr ""
|
|
1438
1443
|
|
|
1439
|
-
#: core/app_settings.py:
|
|
1444
|
+
#: core/app_settings.py:218
|
|
1440
1445
|
msgid "Tell if the LDAP server is an Active Directory one"
|
|
1441
1446
|
msgstr ""
|
|
1442
1447
|
|
|
1443
|
-
#: core/app_settings.py:
|
|
1448
|
+
#: core/app_settings.py:225
|
|
1444
1449
|
msgid "Administrator groups"
|
|
1445
1450
|
msgstr ""
|
|
1446
1451
|
|
|
1447
|
-
#: core/app_settings.py:
|
|
1452
|
+
#: core/app_settings.py:227
|
|
1448
1453
|
msgid ""
|
|
1449
1454
|
"Members of those LDAP Posix groups will be created as domain administrators. "
|
|
1450
1455
|
"Use ';' characters to separate groups."
|
|
1451
1456
|
msgstr ""
|
|
1452
1457
|
|
|
1453
|
-
#: core/app_settings.py:
|
|
1458
|
+
#: core/app_settings.py:236
|
|
1454
1459
|
msgid "Group type"
|
|
1455
1460
|
msgstr ""
|
|
1456
1461
|
|
|
1457
|
-
#: core/app_settings.py:
|
|
1462
|
+
#: core/app_settings.py:238
|
|
1458
1463
|
msgid "The LDAP group type to use with your directory."
|
|
1459
1464
|
msgstr ""
|
|
1460
1465
|
|
|
1461
|
-
#: core/app_settings.py:
|
|
1466
|
+
#: core/app_settings.py:245
|
|
1462
1467
|
msgid "Groups search base"
|
|
1463
1468
|
msgstr ""
|
|
1464
1469
|
|
|
1465
|
-
#: core/app_settings.py:
|
|
1470
|
+
#: core/app_settings.py:247
|
|
1466
1471
|
msgid "The distinguished name of the search base used to find groups"
|
|
1467
1472
|
msgstr ""
|
|
1468
1473
|
|
|
1469
|
-
#: core/app_settings.py:
|
|
1474
|
+
#: core/app_settings.py:255
|
|
1470
1475
|
msgid "Password attribute"
|
|
1471
1476
|
msgstr ""
|
|
1472
1477
|
|
|
1473
|
-
#: core/app_settings.py:
|
|
1478
|
+
#: core/app_settings.py:257
|
|
1474
1479
|
msgid "The attribute used to store user passwords"
|
|
1475
1480
|
msgstr ""
|
|
1476
1481
|
|
|
1477
|
-
#: core/app_settings.py:
|
|
1482
|
+
#: core/app_settings.py:264
|
|
1478
1483
|
msgid "LDAP authentication settings"
|
|
1479
1484
|
msgstr ""
|
|
1480
1485
|
|
|
1481
|
-
#: core/app_settings.py:
|
|
1486
|
+
#: core/app_settings.py:272
|
|
1482
1487
|
msgid "Authentication method"
|
|
1483
1488
|
msgstr ""
|
|
1484
1489
|
|
|
1485
|
-
#: core/app_settings.py:
|
|
1490
|
+
#: core/app_settings.py:275
|
|
1486
1491
|
msgid "Choose the authentication method to use"
|
|
1487
1492
|
msgstr ""
|
|
1488
1493
|
|
|
1489
|
-
#: core/app_settings.py:
|
|
1494
|
+
#: core/app_settings.py:282 core/app_settings.py:345
|
|
1490
1495
|
msgid "Bind DN"
|
|
1491
1496
|
msgstr ""
|
|
1492
1497
|
|
|
1493
|
-
#: core/app_settings.py:
|
|
1498
|
+
#: core/app_settings.py:284 core/app_settings.py:347
|
|
1494
1499
|
msgid ""
|
|
1495
1500
|
"The distinguished name to use when binding to the LDAP server. Leave empty "
|
|
1496
1501
|
"for an anonymous bind"
|
|
1497
1502
|
msgstr ""
|
|
1498
1503
|
|
|
1499
|
-
#: core/app_settings.py:
|
|
1504
|
+
#: core/app_settings.py:293 core/app_settings.py:355
|
|
1500
1505
|
msgid "Bind password"
|
|
1501
1506
|
msgstr ""
|
|
1502
1507
|
|
|
1503
|
-
#: core/app_settings.py:
|
|
1508
|
+
#: core/app_settings.py:295 core/app_settings.py:357
|
|
1504
1509
|
msgid "The password to use when binding to the LDAP server (with 'Bind DN')"
|
|
1505
1510
|
msgstr ""
|
|
1506
1511
|
|
|
1507
|
-
#: core/app_settings.py:
|
|
1512
|
+
#: core/app_settings.py:305 core/app_settings.py:410
|
|
1508
1513
|
msgid "Users search base"
|
|
1509
1514
|
msgstr ""
|
|
1510
1515
|
|
|
1511
|
-
#: core/app_settings.py:
|
|
1516
|
+
#: core/app_settings.py:307 core/app_settings.py:412
|
|
1512
1517
|
msgid "The distinguished name of the search base used to find users"
|
|
1513
1518
|
msgstr ""
|
|
1514
1519
|
|
|
1515
|
-
#: core/app_settings.py:
|
|
1520
|
+
#: core/app_settings.py:316 core/app_settings.py:421
|
|
1516
1521
|
msgid "Search filter"
|
|
1517
1522
|
msgstr ""
|
|
1518
1523
|
|
|
1519
|
-
#: core/app_settings.py:
|
|
1524
|
+
#: core/app_settings.py:318 core/app_settings.py:423
|
|
1520
1525
|
msgid ""
|
|
1521
1526
|
"An optional filter string (e.g. '(objectClass=person)'). In order to be "
|
|
1522
1527
|
"valid, it must be enclosed in parentheses."
|
|
1523
1528
|
msgstr ""
|
|
1524
1529
|
|
|
1525
|
-
#: core/app_settings.py:
|
|
1530
|
+
#: core/app_settings.py:327
|
|
1526
1531
|
msgid "User DN template"
|
|
1527
1532
|
msgstr ""
|
|
1528
1533
|
|
|
1529
|
-
#: core/app_settings.py:
|
|
1534
|
+
#: core/app_settings.py:329
|
|
1530
1535
|
#, python-format
|
|
1531
1536
|
msgid ""
|
|
1532
1537
|
"The template used to construct a user's DN. It should contain one "
|
|
1533
1538
|
"placeholder (ie. %(user)s)"
|
|
1534
1539
|
msgstr ""
|
|
1535
1540
|
|
|
1536
|
-
#: core/app_settings.py:
|
|
1541
|
+
#: core/app_settings.py:338
|
|
1537
1542
|
msgid "LDAP synchronization settings"
|
|
1538
1543
|
msgstr ""
|
|
1539
1544
|
|
|
1540
|
-
#: core/app_settings.py:
|
|
1545
|
+
#: core/app_settings.py:366
|
|
1541
1546
|
msgid "Enable export to LDAP"
|
|
1542
1547
|
msgstr ""
|
|
1543
1548
|
|
|
1544
|
-
#: core/app_settings.py:
|
|
1549
|
+
#: core/app_settings.py:368
|
|
1545
1550
|
msgid ""
|
|
1546
1551
|
"Enable automatic synchronization between local database and LDAP directory"
|
|
1547
1552
|
msgstr ""
|
|
1548
1553
|
|
|
1549
|
-
#: core/app_settings.py:
|
|
1554
|
+
#: core/app_settings.py:377
|
|
1550
1555
|
msgid "Delete remote LDAP account when local account is deleted"
|
|
1551
1556
|
msgstr ""
|
|
1552
1557
|
|
|
1553
|
-
#: core/app_settings.py:
|
|
1558
|
+
#: core/app_settings.py:380
|
|
1554
1559
|
msgid ""
|
|
1555
1560
|
"Delete remote LDAP account when local account is deleted, otherwise it will "
|
|
1556
1561
|
"be disabled."
|
|
1557
1562
|
msgstr ""
|
|
1558
1563
|
|
|
1559
|
-
#: core/app_settings.py:
|
|
1564
|
+
#: core/app_settings.py:389
|
|
1560
1565
|
msgid "Account DN template"
|
|
1561
1566
|
msgstr ""
|
|
1562
1567
|
|
|
1563
|
-
#: core/app_settings.py:
|
|
1568
|
+
#: core/app_settings.py:391
|
|
1564
1569
|
#, python-format
|
|
1565
1570
|
msgid ""
|
|
1566
1571
|
"The template used to construct an account's DN. It should contain one "
|
|
1567
1572
|
"placeholder (ie. %(user)s)"
|
|
1568
1573
|
msgstr ""
|
|
1569
1574
|
|
|
1570
|
-
#: core/app_settings.py:
|
|
1575
|
+
#: core/app_settings.py:400
|
|
1571
1576
|
msgid "Enable import from LDAP"
|
|
1572
1577
|
msgstr ""
|
|
1573
1578
|
|
|
1574
|
-
#: core/app_settings.py:
|
|
1579
|
+
#: core/app_settings.py:402
|
|
1575
1580
|
msgid "Enable account synchronization from LDAP directory to local database"
|
|
1576
1581
|
msgstr ""
|
|
1577
1582
|
|
|
1578
|
-
#: core/app_settings.py:
|
|
1583
|
+
#: core/app_settings.py:432
|
|
1579
1584
|
msgid "Username attribute"
|
|
1580
1585
|
msgstr ""
|
|
1581
1586
|
|
|
1582
|
-
#: core/app_settings.py:
|
|
1587
|
+
#: core/app_settings.py:434
|
|
1583
1588
|
msgid "The name of the LDAP attribute where the username can be found."
|
|
1584
1589
|
msgstr ""
|
|
1585
1590
|
|
|
1586
|
-
#: core/app_settings.py:
|
|
1591
|
+
#: core/app_settings.py:443
|
|
1587
1592
|
msgid "Enable Dovecot LDAP sync"
|
|
1588
1593
|
msgstr ""
|
|
1589
1594
|
|
|
1590
|
-
#: core/app_settings.py:
|
|
1595
|
+
#: core/app_settings.py:445
|
|
1591
1596
|
msgid "LDAP authentication settings will be applied to Dovecot configuration."
|
|
1592
1597
|
msgstr ""
|
|
1593
1598
|
|
|
1594
|
-
#: core/app_settings.py:
|
|
1599
|
+
#: core/app_settings.py:453
|
|
1595
1600
|
msgid "Dovecot LDAP config file"
|
|
1596
1601
|
msgstr ""
|
|
1597
1602
|
|
|
1598
|
-
#: core/app_settings.py:
|
|
1603
|
+
#: core/app_settings.py:455
|
|
1599
1604
|
msgid ""
|
|
1600
1605
|
"Location of the configuration file which contains Dovecot LDAP settings."
|
|
1601
1606
|
msgstr ""
|
|
1602
1607
|
|
|
1603
|
-
#: core/app_settings.py:
|
|
1608
|
+
#: core/app_settings.py:468
|
|
1604
1609
|
msgid "Dashboard"
|
|
1605
1610
|
msgstr ""
|
|
1606
1611
|
|
|
1607
|
-
#: core/app_settings.py:
|
|
1612
|
+
#: core/app_settings.py:474
|
|
1608
1613
|
msgid "Custom welcome message"
|
|
1609
1614
|
msgstr ""
|
|
1610
1615
|
|
|
1611
|
-
#: core/app_settings.py:
|
|
1616
|
+
#: core/app_settings.py:476
|
|
1612
1617
|
msgid "A welcome message that will be displayed instead the default one"
|
|
1613
1618
|
msgstr ""
|
|
1614
1619
|
|
|
1615
|
-
#: core/app_settings.py:
|
|
1620
|
+
#: core/app_settings.py:483
|
|
1616
1621
|
msgid "Custom RSS feed"
|
|
1617
1622
|
msgstr ""
|
|
1618
1623
|
|
|
1619
|
-
#: core/app_settings.py:
|
|
1624
|
+
#: core/app_settings.py:485
|
|
1620
1625
|
msgid "Display custom RSS feed to resellers and domain administrators"
|
|
1621
1626
|
msgstr ""
|
|
1622
1627
|
|
|
1623
|
-
#: core/app_settings.py:
|
|
1628
|
+
#: core/app_settings.py:494
|
|
1624
1629
|
msgid "Display custom RSS feed to super admins"
|
|
1625
1630
|
msgstr ""
|
|
1626
1631
|
|
|
1627
|
-
#: core/app_settings.py:
|
|
1632
|
+
#: core/app_settings.py:497
|
|
1628
1633
|
msgid "Display custom RSS feed also to super administrators"
|
|
1629
1634
|
msgstr ""
|
|
1630
1635
|
|
|
1631
|
-
#: core/app_settings.py:
|
|
1636
|
+
#: core/app_settings.py:505
|
|
1632
1637
|
msgid "Hide features widget"
|
|
1633
1638
|
msgstr ""
|
|
1634
1639
|
|
|
1635
|
-
#: core/app_settings.py:
|
|
1640
|
+
#: core/app_settings.py:507
|
|
1636
1641
|
msgid "Hide features widget for resellers and domain administrators"
|
|
1637
1642
|
msgstr ""
|
|
1638
1643
|
|
|
1639
|
-
#: core/app_settings.py:
|
|
1644
|
+
#: core/app_settings.py:519
|
|
1640
1645
|
msgid "Theme"
|
|
1641
1646
|
msgstr ""
|
|
1642
1647
|
|
|
1643
|
-
#: core/app_settings.py:
|
|
1648
|
+
#: core/app_settings.py:525
|
|
1644
1649
|
msgid "Primary theme color"
|
|
1645
1650
|
msgstr ""
|
|
1646
1651
|
|
|
1647
|
-
#: core/app_settings.py:
|
|
1652
|
+
#: core/app_settings.py:527
|
|
1648
1653
|
msgid ""
|
|
1649
1654
|
"Primary color of the theme (hexadecimal code), used as the background color "
|
|
1650
1655
|
"of the left menu for example"
|
|
1651
1656
|
msgstr ""
|
|
1652
1657
|
|
|
1653
|
-
#: core/app_settings.py:
|
|
1658
|
+
#: core/app_settings.py:536
|
|
1654
1659
|
msgid "Primary theme color (lighter version)"
|
|
1655
1660
|
msgstr ""
|
|
1656
1661
|
|
|
1657
|
-
#: core/app_settings.py:
|
|
1662
|
+
#: core/app_settings.py:539 core/app_settings.py:551
|
|
1658
1663
|
msgid "Primary color of the theme (hexadecimal code)"
|
|
1659
1664
|
msgstr ""
|
|
1660
1665
|
|
|
1661
|
-
#: core/app_settings.py:
|
|
1666
|
+
#: core/app_settings.py:548
|
|
1662
1667
|
msgid "Primary theme color (darker version)"
|
|
1663
1668
|
msgstr ""
|
|
1664
1669
|
|
|
1665
|
-
#: core/app_settings.py:
|
|
1670
|
+
#: core/app_settings.py:559
|
|
1666
1671
|
msgid "Secondary theme color"
|
|
1667
1672
|
msgstr ""
|
|
1668
1673
|
|
|
1669
|
-
#: core/app_settings.py:
|
|
1674
|
+
#: core/app_settings.py:561
|
|
1670
1675
|
msgid ""
|
|
1671
1676
|
"Secondary color of the theme (hexadecimal code), used as the background "
|
|
1672
1677
|
"color of some buttons for example"
|
|
1673
1678
|
msgstr ""
|
|
1674
1679
|
|
|
1675
|
-
#: core/app_settings.py:
|
|
1680
|
+
#: core/app_settings.py:569
|
|
1676
1681
|
msgid "Labels theme color"
|
|
1677
1682
|
msgstr ""
|
|
1678
1683
|
|
|
1679
|
-
#: core/app_settings.py:
|
|
1684
|
+
#: core/app_settings.py:571
|
|
1680
1685
|
msgid "Theme color for labels (hexadecimal code)"
|
|
1681
1686
|
msgstr ""
|
|
1682
1687
|
|
|
1683
|
-
#: core/app_settings.py:
|
|
1688
|
+
#: core/app_settings.py:583
|
|
1684
1689
|
msgid "Notifications"
|
|
1685
1690
|
msgstr ""
|
|
1686
1691
|
|
|
1687
|
-
#: core/app_settings.py:
|
|
1692
|
+
#: core/app_settings.py:589
|
|
1688
1693
|
msgid "Sender address"
|
|
1689
1694
|
msgstr ""
|
|
1690
1695
|
|
|
1691
|
-
#: core/app_settings.py:
|
|
1696
|
+
#: core/app_settings.py:591
|
|
1692
1697
|
msgid "Email address used to send notifications."
|
|
1693
1698
|
msgstr ""
|
|
1694
1699
|
|
|
1695
|
-
#: core/app_settings.py:
|
|
1700
|
+
#: core/app_settings.py:602
|
|
1696
1701
|
msgid "Public API"
|
|
1697
1702
|
msgstr ""
|
|
1698
1703
|
|
|
1699
|
-
#: core/app_settings.py:
|
|
1704
|
+
#: core/app_settings.py:608
|
|
1700
1705
|
msgid "Enable communication"
|
|
1701
1706
|
msgstr ""
|
|
1702
1707
|
|
|
1703
|
-
#: core/app_settings.py:
|
|
1708
|
+
#: core/app_settings.py:610 core/app_settings.py:620
|
|
1704
1709
|
msgid "Automatically checks if a newer version is available"
|
|
1705
1710
|
msgstr ""
|
|
1706
1711
|
|
|
1707
|
-
#: core/app_settings.py:
|
|
1712
|
+
#: core/app_settings.py:617
|
|
1708
1713
|
msgid "Check new versions"
|
|
1709
1714
|
msgstr ""
|
|
1710
1715
|
|
|
1711
|
-
#: core/app_settings.py:
|
|
1716
|
+
#: core/app_settings.py:628
|
|
1712
1717
|
msgid "Send an email when new versions are found"
|
|
1713
1718
|
msgstr ""
|
|
1714
1719
|
|
|
1715
|
-
#: core/app_settings.py:
|
|
1720
|
+
#: core/app_settings.py:632
|
|
1716
1721
|
msgid "Send an email to notify admins about new versions"
|
|
1717
1722
|
msgstr ""
|
|
1718
1723
|
|
|
1719
|
-
#: core/app_settings.py:
|
|
1724
|
+
#: core/app_settings.py:639 sievefilters/constants.py:25
|
|
1720
1725
|
msgid "Recipient"
|
|
1721
1726
|
msgstr ""
|
|
1722
1727
|
|
|
1723
|
-
#: core/app_settings.py:
|
|
1728
|
+
#: core/app_settings.py:642
|
|
1724
1729
|
msgid "Recipient of new versions notification emails."
|
|
1725
1730
|
msgstr ""
|
|
1726
1731
|
|
|
1727
|
-
#: core/app_settings.py:
|
|
1732
|
+
#: core/app_settings.py:649
|
|
1728
1733
|
msgid "Send statistics"
|
|
1729
1734
|
msgstr ""
|
|
1730
1735
|
|
|
1731
|
-
#: core/app_settings.py:
|
|
1736
|
+
#: core/app_settings.py:652
|
|
1732
1737
|
msgid "Send statistics to Modoboa public API (counters and used extensions)"
|
|
1733
1738
|
msgstr ""
|
|
1734
1739
|
|
|
1735
|
-
#: core/app_settings.py:
|
|
1740
|
+
#: core/app_settings.py:671
|
|
1736
1741
|
msgid "Enable inactive account tracking"
|
|
1737
1742
|
msgstr ""
|
|
1738
1743
|
|
|
1739
|
-
#: core/app_settings.py:
|
|
1744
|
+
#: core/app_settings.py:674
|
|
1740
1745
|
msgid ""
|
|
1741
1746
|
"Allow the administrator to set a threshold (in days) beyond which an account "
|
|
1742
1747
|
"is considered inactive if the user hasn't logged in"
|
|
1743
1748
|
msgstr ""
|
|
1744
1749
|
|
|
1745
|
-
#: core/app_settings.py:
|
|
1750
|
+
#: core/app_settings.py:683
|
|
1746
1751
|
msgid "Inactive account threshold"
|
|
1747
1752
|
msgstr ""
|
|
1748
1753
|
|
|
1749
|
-
#: core/app_settings.py:
|
|
1754
|
+
#: core/app_settings.py:686
|
|
1750
1755
|
msgid ""
|
|
1751
1756
|
"An account with a last login date greater than this threshold (in days) will "
|
|
1752
1757
|
"be considered as inactive"
|
|
1753
1758
|
msgstr ""
|
|
1754
1759
|
|
|
1755
|
-
#: core/app_settings.py:
|
|
1760
|
+
#: core/app_settings.py:695
|
|
1756
1761
|
msgid "Top notifications check interval"
|
|
1757
1762
|
msgstr ""
|
|
1758
1763
|
|
|
1759
|
-
#: core/app_settings.py:
|
|
1764
|
+
#: core/app_settings.py:698
|
|
1760
1765
|
msgid "Interval between two top notification checks (in seconds)"
|
|
1761
1766
|
msgstr ""
|
|
1762
1767
|
|
|
1763
|
-
#: core/app_settings.py:
|
|
1768
|
+
#: core/app_settings.py:705
|
|
1764
1769
|
msgid "Maximum log record age"
|
|
1765
1770
|
msgstr ""
|
|
1766
1771
|
|
|
1767
|
-
#: core/app_settings.py:
|
|
1772
|
+
#: core/app_settings.py:707
|
|
1768
1773
|
msgid "The maximum age in days of a log record"
|
|
1769
1774
|
msgstr ""
|
|
1770
1775
|
|
|
1771
|
-
#: core/app_settings.py:
|
|
1776
|
+
#: core/app_settings.py:715
|
|
1772
1777
|
msgid "Retention time in message history"
|
|
1773
1778
|
msgstr ""
|
|
1774
1779
|
|
|
1775
|
-
#: core/app_settings.py:
|
|
1780
|
+
#: core/app_settings.py:718
|
|
1776
1781
|
msgid "Retention time (in days) of a message in the message history section"
|
|
1777
1782
|
msgstr ""
|
|
1778
1783
|
|
|
1779
|
-
#: core/app_settings.py:
|
|
1784
|
+
#: core/app_settings.py:725
|
|
1780
1785
|
msgid "Items per page"
|
|
1781
1786
|
msgstr ""
|
|
1782
1787
|
|
|
1783
|
-
#: core/app_settings.py:
|
|
1788
|
+
#: core/app_settings.py:727
|
|
1784
1789
|
msgid "Number of displayed items per page"
|
|
1785
1790
|
msgstr ""
|
|
1786
1791
|
|
|
1787
|
-
#: core/app_settings.py:746
|
|
1788
|
-
msgid "Default top redirection"
|
|
1789
|
-
msgstr ""
|
|
1790
|
-
|
|
1791
|
-
#: core/app_settings.py:748
|
|
1792
|
-
msgid "The default redirection used when no application is specified"
|
|
1793
|
-
msgstr ""
|
|
1794
|
-
|
|
1795
1792
|
#: core/checks.py:15
|
|
1796
1793
|
msgid ""
|
|
1797
1794
|
"You have USE_TZ set to False, this may result in issues during transitions "
|
|
@@ -2124,7 +2121,7 @@ msgid "Not resolved"
|
|
|
2124
2121
|
msgstr ""
|
|
2125
2122
|
|
|
2126
2123
|
#: dmarc/models.py:10 dmarc/models.py:16 pdfcredentials/constants.py:7
|
|
2127
|
-
#: webmail/constants.py:
|
|
2124
|
+
#: webmail/constants.py:38
|
|
2128
2125
|
msgid "None"
|
|
2129
2126
|
msgstr ""
|
|
2130
2127
|
|
|
@@ -3004,7 +3001,7 @@ msgstr ""
|
|
|
3004
3001
|
msgid "is not"
|
|
3005
3002
|
msgstr ""
|
|
3006
3003
|
|
|
3007
|
-
#: sievefilters/constants.py:23 webmail/lib/imapemail.py:
|
|
3004
|
+
#: sievefilters/constants.py:23 webmail/lib/imapemail.py:302
|
|
3008
3005
|
msgid "Subject"
|
|
3009
3006
|
msgstr ""
|
|
3010
3007
|
|
|
@@ -3230,19 +3227,19 @@ msgstr ""
|
|
|
3230
3227
|
msgid "SMTP settings"
|
|
3231
3228
|
msgstr ""
|
|
3232
3229
|
|
|
3233
|
-
#: webmail/app_settings.py:75
|
|
3230
|
+
#: webmail/app_settings.py:75 webmail/app_settings.py:121
|
|
3234
3231
|
msgid "Address of your SMTP server"
|
|
3235
3232
|
msgstr ""
|
|
3236
3233
|
|
|
3237
|
-
#: webmail/app_settings.py:82
|
|
3234
|
+
#: webmail/app_settings.py:82 webmail/app_settings.py:128
|
|
3238
3235
|
msgid "Secured connection mode"
|
|
3239
3236
|
msgstr ""
|
|
3240
3237
|
|
|
3241
|
-
#: webmail/app_settings.py:84
|
|
3238
|
+
#: webmail/app_settings.py:84 webmail/app_settings.py:130
|
|
3242
3239
|
msgid "Use a secured connection to access SMTP server"
|
|
3243
3240
|
msgstr ""
|
|
3244
3241
|
|
|
3245
|
-
#: webmail/app_settings.py:93
|
|
3242
|
+
#: webmail/app_settings.py:93 webmail/app_settings.py:139
|
|
3246
3243
|
msgid "Listening port of your SMTP server"
|
|
3247
3244
|
msgstr ""
|
|
3248
3245
|
|
|
@@ -3254,95 +3251,99 @@ msgstr ""
|
|
|
3254
3251
|
msgid "Server needs authentication"
|
|
3255
3252
|
msgstr ""
|
|
3256
3253
|
|
|
3257
|
-
#: webmail/app_settings.py:
|
|
3254
|
+
#: webmail/app_settings.py:113
|
|
3255
|
+
msgid "Scheduling settings"
|
|
3256
|
+
msgstr ""
|
|
3257
|
+
|
|
3258
|
+
#: webmail/app_settings.py:161
|
|
3258
3259
|
msgid "Default message display mode"
|
|
3259
3260
|
msgstr ""
|
|
3260
3261
|
|
|
3261
|
-
#: webmail/app_settings.py:
|
|
3262
|
+
#: webmail/app_settings.py:163
|
|
3262
3263
|
msgid "The default mode used when displaying a message"
|
|
3263
3264
|
msgstr ""
|
|
3264
3265
|
|
|
3265
|
-
#: webmail/app_settings.py:
|
|
3266
|
+
#: webmail/app_settings.py:170
|
|
3266
3267
|
msgid "Enable HTML links display"
|
|
3267
3268
|
msgstr ""
|
|
3268
3269
|
|
|
3269
|
-
#: webmail/app_settings.py:
|
|
3270
|
+
#: webmail/app_settings.py:173
|
|
3270
3271
|
msgid "Enable/Disable HTML links display"
|
|
3271
3272
|
msgstr ""
|
|
3272
3273
|
|
|
3273
|
-
#: webmail/app_settings.py:
|
|
3274
|
+
#: webmail/app_settings.py:184
|
|
3274
3275
|
msgid "Sets the maximum number of messages displayed in a page"
|
|
3275
3276
|
msgstr ""
|
|
3276
3277
|
|
|
3277
|
-
#: webmail/app_settings.py:
|
|
3278
|
+
#: webmail/app_settings.py:191
|
|
3278
3279
|
msgid "Listing refresh rate"
|
|
3279
3280
|
msgstr ""
|
|
3280
3281
|
|
|
3281
|
-
#: webmail/app_settings.py:
|
|
3282
|
+
#: webmail/app_settings.py:193
|
|
3282
3283
|
msgid "Automatic listing refresh rate (in secconds)"
|
|
3283
3284
|
msgstr ""
|
|
3284
3285
|
|
|
3285
|
-
#: webmail/app_settings.py:
|
|
3286
|
+
#: webmail/app_settings.py:200
|
|
3286
3287
|
msgid "Folder container's width"
|
|
3287
3288
|
msgstr ""
|
|
3288
3289
|
|
|
3289
|
-
#: webmail/app_settings.py:
|
|
3290
|
+
#: webmail/app_settings.py:202
|
|
3290
3291
|
msgid "The width of the folder list container"
|
|
3291
3292
|
msgstr ""
|
|
3292
3293
|
|
|
3293
|
-
#: webmail/app_settings.py:
|
|
3294
|
+
#: webmail/app_settings.py:213
|
|
3294
3295
|
msgid "Folders"
|
|
3295
3296
|
msgstr ""
|
|
3296
3297
|
|
|
3297
|
-
#: webmail/app_settings.py:
|
|
3298
|
+
#: webmail/app_settings.py:219
|
|
3298
3299
|
msgid "Trash folder"
|
|
3299
3300
|
msgstr ""
|
|
3300
3301
|
|
|
3301
|
-
#: webmail/app_settings.py:
|
|
3302
|
+
#: webmail/app_settings.py:221
|
|
3302
3303
|
msgid "Folder where deleted messages go"
|
|
3303
3304
|
msgstr ""
|
|
3304
3305
|
|
|
3305
|
-
#: webmail/app_settings.py:
|
|
3306
|
+
#: webmail/app_settings.py:228
|
|
3306
3307
|
msgid "Sent folder"
|
|
3307
3308
|
msgstr ""
|
|
3308
3309
|
|
|
3309
|
-
#: webmail/app_settings.py:
|
|
3310
|
+
#: webmail/app_settings.py:230
|
|
3310
3311
|
msgid "Folder where copies of sent messages go"
|
|
3311
3312
|
msgstr ""
|
|
3312
3313
|
|
|
3313
|
-
#: webmail/app_settings.py:
|
|
3314
|
+
#: webmail/app_settings.py:237
|
|
3314
3315
|
msgid "Drafts folder"
|
|
3315
3316
|
msgstr ""
|
|
3316
3317
|
|
|
3317
|
-
#: webmail/app_settings.py:
|
|
3318
|
+
#: webmail/app_settings.py:238
|
|
3318
3319
|
msgid "Folder where drafts go"
|
|
3319
3320
|
msgstr ""
|
|
3320
3321
|
|
|
3321
|
-
#: webmail/app_settings.py:
|
|
3322
|
+
#: webmail/app_settings.py:244
|
|
3322
3323
|
msgid "Junk folder"
|
|
3323
3324
|
msgstr ""
|
|
3324
3325
|
|
|
3325
|
-
#: webmail/app_settings.py:
|
|
3326
|
+
#: webmail/app_settings.py:246
|
|
3326
3327
|
msgid "Folder where junk messages should go"
|
|
3327
3328
|
msgstr ""
|
|
3328
3329
|
|
|
3329
|
-
#: webmail/app_settings.py:
|
|
3330
|
+
#: webmail/app_settings.py:257
|
|
3330
3331
|
msgid "Composing messages"
|
|
3331
3332
|
msgstr ""
|
|
3332
3333
|
|
|
3333
|
-
#: webmail/app_settings.py:
|
|
3334
|
+
#: webmail/app_settings.py:263
|
|
3334
3335
|
msgid "Default editor"
|
|
3335
3336
|
msgstr ""
|
|
3336
3337
|
|
|
3337
|
-
#: webmail/app_settings.py:
|
|
3338
|
+
#: webmail/app_settings.py:265
|
|
3338
3339
|
msgid "The default editor to use when composing a message"
|
|
3339
3340
|
msgstr ""
|
|
3340
3341
|
|
|
3341
|
-
#: webmail/app_settings.py:
|
|
3342
|
+
#: webmail/app_settings.py:272
|
|
3342
3343
|
msgid "Signature text"
|
|
3343
3344
|
msgstr ""
|
|
3344
3345
|
|
|
3345
|
-
#: webmail/app_settings.py:
|
|
3346
|
+
#: webmail/app_settings.py:274
|
|
3346
3347
|
msgid "User defined email signature"
|
|
3347
3348
|
msgstr ""
|
|
3348
3349
|
|
|
@@ -3356,43 +3357,59 @@ msgstr ""
|
|
|
3356
3357
|
msgid "Failed to remove attachment: "
|
|
3357
3358
|
msgstr "Не вдалося створити обліковий запис LDAP: {}"
|
|
3358
3359
|
|
|
3359
|
-
#: webmail/lib/imapemail.py:
|
|
3360
|
+
#: webmail/lib/imapemail.py:270
|
|
3360
3361
|
msgid "wrote:"
|
|
3361
3362
|
msgstr ""
|
|
3362
3363
|
|
|
3363
|
-
#: webmail/lib/imapemail.py:
|
|
3364
|
+
#: webmail/lib/imapemail.py:304
|
|
3364
3365
|
msgid "Date"
|
|
3365
3366
|
msgstr ""
|
|
3366
3367
|
|
|
3367
|
-
#: webmail/lib/imapemail.py:
|
|
3368
|
+
#: webmail/lib/imapemail.py:320 webmail/lib/imapemail.py:323
|
|
3368
3369
|
msgid "Original message"
|
|
3369
3370
|
msgstr ""
|
|
3370
3371
|
|
|
3371
|
-
#: webmail/lib/imaputils.py:
|
|
3372
|
+
#: webmail/lib/imaputils.py:222
|
|
3372
3373
|
msgid "Failed to retrieve hierarchy delimiter"
|
|
3373
3374
|
msgstr ""
|
|
3374
3375
|
|
|
3375
|
-
#: webmail/lib/imaputils.py:
|
|
3376
|
+
#: webmail/lib/imaputils.py:478
|
|
3376
3377
|
msgid "Inbox"
|
|
3377
3378
|
msgstr ""
|
|
3378
3379
|
|
|
3379
|
-
#: webmail/lib/imaputils.py:
|
|
3380
|
+
#: webmail/lib/imaputils.py:482
|
|
3380
3381
|
msgid "Drafts"
|
|
3381
3382
|
msgstr ""
|
|
3382
3383
|
|
|
3383
|
-
#: webmail/lib/imaputils.py:
|
|
3384
|
+
#: webmail/lib/imaputils.py:487
|
|
3384
3385
|
msgid "Junk"
|
|
3385
3386
|
msgstr ""
|
|
3386
3387
|
|
|
3387
|
-
#: webmail/lib/imaputils.py:
|
|
3388
|
+
#: webmail/lib/imaputils.py:492
|
|
3388
3389
|
msgid "Sent"
|
|
3389
3390
|
msgstr ""
|
|
3390
3391
|
|
|
3391
|
-
#: webmail/lib/imaputils.py:
|
|
3392
|
+
#: webmail/lib/imaputils.py:500
|
|
3393
|
+
msgid "Scheduled"
|
|
3394
|
+
msgstr ""
|
|
3395
|
+
|
|
3396
|
+
#: webmail/lib/imaputils.py:507
|
|
3392
3397
|
msgid "Trash"
|
|
3393
3398
|
msgstr ""
|
|
3394
3399
|
|
|
3395
|
-
#: webmail/
|
|
3400
|
+
#: webmail/serializers.py:220
|
|
3401
|
+
msgid "Moving scheduled messages is forbidden"
|
|
3402
|
+
msgstr ""
|
|
3403
|
+
|
|
3404
|
+
#: webmail/serializers.py:253
|
|
3405
|
+
msgid "Only datetime in the future is allowed"
|
|
3406
|
+
msgstr ""
|
|
3407
|
+
|
|
3408
|
+
#: webmail/serializers.py:258
|
|
3409
|
+
msgid "Provived datetime must be one minute in the future at least"
|
|
3410
|
+
msgstr ""
|
|
3411
|
+
|
|
3412
|
+
#: webmail/viewsets.py:359
|
|
3396
3413
|
#, python-format
|
|
3397
3414
|
msgid "Attachment is too big (limit: %s)"
|
|
3398
3415
|
msgstr ""
|