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: හෙළබස, 2022\n"
|
|
17
17
|
"Language-Team: Sinhala (https://www.transifex.com/tonio/teams/13749/si/)\n"
|
|
@@ -44,14 +44,14 @@ msgid "Cannot be greater than domain quota"
|
|
|
44
44
|
msgstr ""
|
|
45
45
|
|
|
46
46
|
#: admin/api/v1/serializers.py:168 admin/api/v1/serializers.py:364
|
|
47
|
-
#: admin/api/v2/serializers.py:
|
|
47
|
+
#: admin/api/v2/serializers.py:571 admin/models/alias.py:45
|
|
48
48
|
msgid "Permission denied."
|
|
49
49
|
msgstr ""
|
|
50
50
|
|
|
51
51
|
#: admin/api/v1/serializers.py:231 admin/api/v2/serializers.py:90
|
|
52
|
-
#: admin/api/v2/serializers.py:
|
|
53
|
-
#: core/api/v2/serializers.py:
|
|
54
|
-
#: core/api/v2/serializers.py:
|
|
52
|
+
#: admin/api/v2/serializers.py:492 amavis/serializers.py:39
|
|
53
|
+
#: core/api/v2/serializers.py:248 core/api/v2/serializers.py:250
|
|
54
|
+
#: core/api/v2/serializers.py:259 transport/backends.py:40
|
|
55
55
|
msgid "This field is required"
|
|
56
56
|
msgstr ""
|
|
57
57
|
|
|
@@ -60,7 +60,7 @@ msgid ""
|
|
|
60
60
|
"List of administered domains (resellers and domain administrators only)."
|
|
61
61
|
msgstr ""
|
|
62
62
|
|
|
63
|
-
#: admin/api/v1/serializers.py:337 admin/api/v2/serializers.py:
|
|
63
|
+
#: admin/api/v1/serializers.py:337 admin/api/v2/serializers.py:553
|
|
64
64
|
msgid "Not allowed for this role."
|
|
65
65
|
msgstr ""
|
|
66
66
|
|
|
@@ -68,13 +68,12 @@ msgstr ""
|
|
|
68
68
|
msgid "Must be equal to mailbox full_address"
|
|
69
69
|
msgstr ""
|
|
70
70
|
|
|
71
|
-
#: admin/api/v1/serializers.py:397 admin/api/v2/serializers.py:
|
|
72
|
-
#: calendars/serializers.py:
|
|
73
|
-
#: pdfcredentials/api/v2/serializers.py:91
|
|
71
|
+
#: admin/api/v1/serializers.py:397 admin/api/v2/serializers.py:605
|
|
72
|
+
#: calendars/serializers.py:182 pdfcredentials/api/v2/serializers.py:91
|
|
74
73
|
msgid "This field is required."
|
|
75
74
|
msgstr ""
|
|
76
75
|
|
|
77
|
-
#: admin/api/v1/serializers.py:409 admin/api/v2/serializers.py:
|
|
76
|
+
#: admin/api/v1/serializers.py:409 admin/api/v2/serializers.py:622
|
|
78
77
|
msgid "Local domain {} does not exist"
|
|
79
78
|
msgstr ""
|
|
80
79
|
|
|
@@ -115,39 +114,39 @@ msgstr ""
|
|
|
115
114
|
msgid "User '%s' already exists"
|
|
116
115
|
msgstr ""
|
|
117
116
|
|
|
118
|
-
#: admin/api/v2/serializers.py:
|
|
117
|
+
#: admin/api/v2/serializers.py:256 admin/api/v2/serializers.py:262
|
|
119
118
|
msgid "Must be a positive integer"
|
|
120
119
|
msgstr ""
|
|
121
120
|
|
|
122
|
-
#: admin/api/v2/serializers.py:
|
|
121
|
+
#: admin/api/v2/serializers.py:271
|
|
123
122
|
msgid "openssl not found, please make sure it is installed."
|
|
124
123
|
msgstr ""
|
|
125
124
|
|
|
126
|
-
#: admin/api/v2/serializers.py:
|
|
125
|
+
#: admin/api/v2/serializers.py:274 pdfcredentials/api/v2/serializers.py:84
|
|
127
126
|
msgid "Directory not found."
|
|
128
127
|
msgstr ""
|
|
129
128
|
|
|
130
|
-
#: admin/api/v2/serializers.py:
|
|
129
|
+
#: admin/api/v2/serializers.py:285
|
|
131
130
|
msgid "This field only allows valid IP addresses (or networks)"
|
|
132
131
|
msgstr ""
|
|
133
132
|
|
|
134
|
-
#: admin/api/v2/serializers.py:
|
|
133
|
+
#: admin/api/v2/serializers.py:298
|
|
135
134
|
msgid "Please disable imap migration before disabling this option."
|
|
136
135
|
msgstr ""
|
|
137
136
|
|
|
138
|
-
#: admin/api/v2/serializers.py:
|
|
137
|
+
#: admin/api/v2/serializers.py:311
|
|
139
138
|
msgid "Define at least one authorized network / address"
|
|
140
139
|
msgstr ""
|
|
141
140
|
|
|
142
|
-
#: admin/api/v2/serializers.py:
|
|
141
|
+
#: admin/api/v2/serializers.py:588
|
|
143
142
|
msgid "The left part of an email address can't be more than 64 characters."
|
|
144
143
|
msgstr ""
|
|
145
144
|
|
|
146
|
-
#: admin/api/v2/serializers.py:
|
|
145
|
+
#: admin/api/v2/serializers.py:610
|
|
147
146
|
msgid "A mailbox is required to create aliases."
|
|
148
147
|
msgstr ""
|
|
149
148
|
|
|
150
|
-
#: admin/api/v2/serializers.py:
|
|
149
|
+
#: admin/api/v2/serializers.py:783
|
|
151
150
|
msgid "Unknown status"
|
|
152
151
|
msgstr ""
|
|
153
152
|
|
|
@@ -239,141 +238,151 @@ msgstr ""
|
|
|
239
238
|
msgid "Check every domain against major DNSBL providers"
|
|
240
239
|
msgstr ""
|
|
241
240
|
|
|
242
|
-
#: admin/app_settings.py:
|
|
241
|
+
#: admin/app_settings.py:117
|
|
242
|
+
msgid "Notify domain admins about DNS issues"
|
|
243
|
+
msgstr ""
|
|
244
|
+
|
|
245
|
+
#: admin/app_settings.py:120
|
|
246
|
+
msgid ""
|
|
247
|
+
"Send a notification by email to domain administrators when DNS issues are "
|
|
248
|
+
"encountered"
|
|
249
|
+
msgstr ""
|
|
250
|
+
|
|
251
|
+
#: admin/app_settings.py:128
|
|
243
252
|
msgid "Custom DNS server"
|
|
244
253
|
msgstr ""
|
|
245
254
|
|
|
246
|
-
#: admin/app_settings.py:
|
|
255
|
+
#: admin/app_settings.py:130
|
|
247
256
|
msgid "Use a custom DNS server instead of local server configuration"
|
|
248
257
|
msgstr ""
|
|
249
258
|
|
|
250
|
-
#: admin/app_settings.py:
|
|
259
|
+
#: admin/app_settings.py:138
|
|
251
260
|
msgid "DKIM keys storage directory"
|
|
252
261
|
msgstr ""
|
|
253
262
|
|
|
254
|
-
#: admin/app_settings.py:
|
|
263
|
+
#: admin/app_settings.py:140
|
|
255
264
|
msgid ""
|
|
256
265
|
"Absolute path of the directory where DKIM private keys will be stored. Make "
|
|
257
266
|
"sure this directory belongs to root user and is not readable by the outside "
|
|
258
267
|
"world."
|
|
259
268
|
msgstr ""
|
|
260
269
|
|
|
261
|
-
#: admin/app_settings.py:
|
|
270
|
+
#: admin/app_settings.py:149
|
|
262
271
|
msgid "Default DKIM key length"
|
|
263
272
|
msgstr ""
|
|
264
273
|
|
|
265
|
-
#: admin/app_settings.py:
|
|
274
|
+
#: admin/app_settings.py:151
|
|
266
275
|
msgid "Default length in bits for newly generated DKIM keys."
|
|
267
276
|
msgstr ""
|
|
268
277
|
|
|
269
|
-
#: admin/app_settings.py:
|
|
278
|
+
#: admin/app_settings.py:158
|
|
270
279
|
msgid "Default domain quota"
|
|
271
280
|
msgstr ""
|
|
272
281
|
|
|
273
|
-
#: admin/app_settings.py:
|
|
282
|
+
#: admin/app_settings.py:160
|
|
274
283
|
msgid ""
|
|
275
284
|
"Default quota (in MB) applied to freshly created domains with no value "
|
|
276
285
|
"specified. A value of 0 means no quota."
|
|
277
286
|
msgstr ""
|
|
278
287
|
|
|
279
|
-
#: admin/app_settings.py:
|
|
288
|
+
#: admin/app_settings.py:168
|
|
280
289
|
msgid "Default domain sending limit"
|
|
281
290
|
msgstr ""
|
|
282
291
|
|
|
283
|
-
#: admin/app_settings.py:
|
|
292
|
+
#: admin/app_settings.py:170
|
|
284
293
|
msgid ""
|
|
285
294
|
"Number of messages freshly created domains will be allowed to send per day. "
|
|
286
295
|
"Leave empty for no limit."
|
|
287
296
|
msgstr ""
|
|
288
297
|
|
|
289
|
-
#: admin/app_settings.py:
|
|
298
|
+
#: admin/app_settings.py:182 limits/app_settings.py:61
|
|
290
299
|
#: limits/app_settings.py:135 limits/constants.py:31 limits/constants.py:84
|
|
291
300
|
msgid "Mailboxes"
|
|
292
301
|
msgstr ""
|
|
293
302
|
|
|
294
|
-
#: admin/app_settings.py:
|
|
303
|
+
#: admin/app_settings.py:188
|
|
295
304
|
msgid "Handle mailboxes on filesystem"
|
|
296
305
|
msgstr ""
|
|
297
306
|
|
|
298
|
-
#: admin/app_settings.py:
|
|
307
|
+
#: admin/app_settings.py:190
|
|
299
308
|
msgid ""
|
|
300
309
|
"Rename or remove mailboxes on the filesystem when they get renamed or "
|
|
301
310
|
"removed within Modoboa"
|
|
302
311
|
msgstr ""
|
|
303
312
|
|
|
304
|
-
#: admin/app_settings.py:
|
|
313
|
+
#: admin/app_settings.py:198 admin/models/domain.py:36
|
|
305
314
|
msgid "Default mailbox quota"
|
|
306
315
|
msgstr ""
|
|
307
316
|
|
|
308
|
-
#: admin/app_settings.py:
|
|
317
|
+
#: admin/app_settings.py:200
|
|
309
318
|
msgid ""
|
|
310
319
|
"Default mailbox quota (in MB) applied to freshly created domains with no "
|
|
311
320
|
"value specified. A value of 0 means no quota."
|
|
312
321
|
msgstr ""
|
|
313
322
|
|
|
314
|
-
#: admin/app_settings.py:
|
|
323
|
+
#: admin/app_settings.py:209
|
|
315
324
|
msgid "Default mailbox sending limit"
|
|
316
325
|
msgstr ""
|
|
317
326
|
|
|
318
|
-
#: admin/app_settings.py:
|
|
327
|
+
#: admin/app_settings.py:211
|
|
319
328
|
msgid ""
|
|
320
329
|
"Number of messages freshly created mailboxes will be allowed to send per "
|
|
321
330
|
"day. Leave empty for no limit."
|
|
322
331
|
msgstr ""
|
|
323
332
|
|
|
324
|
-
#: admin/app_settings.py:
|
|
333
|
+
#: admin/app_settings.py:219
|
|
325
334
|
msgid "Automatic account removal"
|
|
326
335
|
msgstr ""
|
|
327
336
|
|
|
328
|
-
#: admin/app_settings.py:
|
|
337
|
+
#: admin/app_settings.py:221
|
|
329
338
|
msgid "When a mailbox is removed, also remove the associated account"
|
|
330
339
|
msgstr ""
|
|
331
340
|
|
|
332
|
-
#: admin/app_settings.py:
|
|
341
|
+
#: admin/app_settings.py:230
|
|
333
342
|
msgid "Automatic domain/mailbox creation"
|
|
334
343
|
msgstr ""
|
|
335
344
|
|
|
336
|
-
#: admin/app_settings.py:
|
|
345
|
+
#: admin/app_settings.py:233
|
|
337
346
|
msgid "Create a domain and a mailbox when an account is automatically created."
|
|
338
347
|
msgstr ""
|
|
339
348
|
|
|
340
|
-
#: admin/app_settings.py:
|
|
349
|
+
#: admin/app_settings.py:242
|
|
341
350
|
msgid "Create an alias when a mailbox is renamed"
|
|
342
351
|
msgstr ""
|
|
343
352
|
|
|
344
|
-
#: admin/app_settings.py:
|
|
353
|
+
#: admin/app_settings.py:245
|
|
345
354
|
msgid "Create an alias using the old address when a mailbox is renamed."
|
|
346
355
|
msgstr ""
|
|
347
356
|
|
|
348
|
-
#: admin/app_settings.py:
|
|
357
|
+
#: admin/app_settings.py:257
|
|
349
358
|
msgid "Aliases"
|
|
350
359
|
msgstr ""
|
|
351
360
|
|
|
352
|
-
#: admin/app_settings.py:
|
|
361
|
+
#: admin/app_settings.py:263
|
|
353
362
|
msgid "Alias can target any domain"
|
|
354
363
|
msgstr ""
|
|
355
364
|
|
|
356
|
-
#: admin/app_settings.py:
|
|
365
|
+
#: admin/app_settings.py:265
|
|
357
366
|
msgid "Allow aliases to target any domain, not just the local domains."
|
|
358
367
|
msgstr ""
|
|
359
368
|
|
|
360
|
-
#: admin/app_settings.py:
|
|
369
|
+
#: admin/app_settings.py:272
|
|
361
370
|
msgid "Alias target block list"
|
|
362
371
|
msgstr ""
|
|
363
372
|
|
|
364
|
-
#: admin/app_settings.py:
|
|
373
|
+
#: admin/app_settings.py:274
|
|
365
374
|
msgid "A list of domains that aliases cannot target (comma separated)."
|
|
366
375
|
msgstr ""
|
|
367
376
|
|
|
368
|
-
#: admin/app_settings.py:
|
|
377
|
+
#: admin/app_settings.py:282
|
|
369
378
|
msgid "Alias target allow list"
|
|
370
379
|
msgstr ""
|
|
371
380
|
|
|
372
|
-
#: admin/app_settings.py:
|
|
381
|
+
#: admin/app_settings.py:284
|
|
373
382
|
msgid "A list of domains that aliases can target (comma separated)."
|
|
374
383
|
msgstr ""
|
|
375
384
|
|
|
376
|
-
#: admin/app_settings.py:
|
|
385
|
+
#: admin/app_settings.py:338 core/api/v2/viewsets.py:174
|
|
377
386
|
msgid "Administration"
|
|
378
387
|
msgstr ""
|
|
379
388
|
|
|
@@ -393,6 +402,35 @@ msgstr ""
|
|
|
393
402
|
msgid "Closed"
|
|
394
403
|
msgstr ""
|
|
395
404
|
|
|
405
|
+
#: admin/dns_checker.py:96
|
|
406
|
+
msgid "MX {} listed by DNSBL provider {}"
|
|
407
|
+
msgstr ""
|
|
408
|
+
|
|
409
|
+
#: admin/dns_checker.py:138
|
|
410
|
+
msgid "Domain has no MX record"
|
|
411
|
+
msgstr ""
|
|
412
|
+
|
|
413
|
+
#: admin/dns_checker.py:141
|
|
414
|
+
msgid "Domain {} has no MX record"
|
|
415
|
+
msgstr ""
|
|
416
|
+
|
|
417
|
+
#: admin/dns_checker.py:159
|
|
418
|
+
msgid "Invalid MX record: {}"
|
|
419
|
+
msgstr ""
|
|
420
|
+
|
|
421
|
+
#: admin/dns_checker.py:166
|
|
422
|
+
#, python-brace-format
|
|
423
|
+
msgid "MX record for domain {0} is invalid: {1}"
|
|
424
|
+
msgstr ""
|
|
425
|
+
|
|
426
|
+
#: admin/dns_checker.py:177
|
|
427
|
+
msgid "[modoboa] MX issue(s) for domain {}"
|
|
428
|
+
msgstr ""
|
|
429
|
+
|
|
430
|
+
#: admin/dns_checker.py:224
|
|
431
|
+
msgid "[modoboa] DNSBL issue(s) for domain {}"
|
|
432
|
+
msgstr ""
|
|
433
|
+
|
|
396
434
|
#: admin/handlers.py:179
|
|
397
435
|
msgid "domain alias"
|
|
398
436
|
msgstr ""
|
|
@@ -415,8 +453,8 @@ msgstr ""
|
|
|
415
453
|
msgid "You are not allowed to import domain aliases."
|
|
416
454
|
msgstr ""
|
|
417
455
|
|
|
418
|
-
#: admin/lib.py:227 admin/tests/test_mx.py:
|
|
419
|
-
#: admin/tests/test_mx.py:
|
|
456
|
+
#: admin/lib.py:227 admin/tests/test_mx.py:139 admin/tests/test_mx.py:152
|
|
457
|
+
#: admin/tests/test_mx.py:157
|
|
420
458
|
#, python-format
|
|
421
459
|
msgid "No DNS record found for %s"
|
|
422
460
|
msgstr ""
|
|
@@ -426,11 +464,11 @@ msgstr ""
|
|
|
426
464
|
msgid "No %(type)s record for %(name)s"
|
|
427
465
|
msgstr ""
|
|
428
466
|
|
|
429
|
-
#: admin/lib.py:234 admin/tests/test_mx.py:
|
|
467
|
+
#: admin/lib.py:234 admin/tests/test_mx.py:142
|
|
430
468
|
msgid "No working name servers found"
|
|
431
469
|
msgstr ""
|
|
432
470
|
|
|
433
|
-
#: admin/lib.py:237 admin/tests/test_mx.py:
|
|
471
|
+
#: admin/lib.py:237 admin/tests/test_mx.py:146
|
|
434
472
|
#, python-format
|
|
435
473
|
msgid "DNS resolution timeout, unable to query %s at the moment"
|
|
436
474
|
msgstr ""
|
|
@@ -482,35 +520,6 @@ msgstr ""
|
|
|
482
520
|
msgid "Failed to generate DKIM public key"
|
|
483
521
|
msgstr ""
|
|
484
522
|
|
|
485
|
-
#: admin/management/commands/subcommands/_mx.py:133
|
|
486
|
-
msgid "MX {} listed by DNSBL provider {}"
|
|
487
|
-
msgstr ""
|
|
488
|
-
|
|
489
|
-
#: admin/management/commands/subcommands/_mx.py:174
|
|
490
|
-
msgid "Domain has no MX record"
|
|
491
|
-
msgstr ""
|
|
492
|
-
|
|
493
|
-
#: admin/management/commands/subcommands/_mx.py:177
|
|
494
|
-
msgid "Domain {} has no MX record"
|
|
495
|
-
msgstr ""
|
|
496
|
-
|
|
497
|
-
#: admin/management/commands/subcommands/_mx.py:195
|
|
498
|
-
msgid "Invalid MX record: {}"
|
|
499
|
-
msgstr ""
|
|
500
|
-
|
|
501
|
-
#: admin/management/commands/subcommands/_mx.py:202
|
|
502
|
-
#, python-brace-format
|
|
503
|
-
msgid "MX record for domain {0} is invalid: {1}"
|
|
504
|
-
msgstr ""
|
|
505
|
-
|
|
506
|
-
#: admin/management/commands/subcommands/_mx.py:213
|
|
507
|
-
msgid "[modoboa] MX issue(s) for domain {}"
|
|
508
|
-
msgstr ""
|
|
509
|
-
|
|
510
|
-
#: admin/management/commands/subcommands/_mx.py:269
|
|
511
|
-
msgid "[modoboa] DNSBL issue(s) for domain {}"
|
|
512
|
-
msgstr ""
|
|
513
|
-
|
|
514
523
|
#: admin/models/alias.py:43
|
|
515
524
|
msgid "Domain not found."
|
|
516
525
|
msgstr ""
|
|
@@ -687,17 +696,17 @@ msgstr ""
|
|
|
687
696
|
msgid "Modoboa detected that domain %(domain)s has no valid MX record:"
|
|
688
697
|
msgstr ""
|
|
689
698
|
|
|
690
|
-
#: admin/tests/test_mx.py:
|
|
699
|
+
#: admin/tests/test_mx.py:141
|
|
691
700
|
#, python-format
|
|
692
701
|
msgid "No MX record for %s"
|
|
693
702
|
msgstr ""
|
|
694
703
|
|
|
695
|
-
#: admin/tests/test_mx.py:
|
|
704
|
+
#: admin/tests/test_mx.py:162 admin/tests/test_mx.py:168
|
|
696
705
|
#, python-format
|
|
697
706
|
msgid "Invalid IP address format for %(domain)s; %(addr)s"
|
|
698
707
|
msgstr ""
|
|
699
708
|
|
|
700
|
-
#: admin/tests/test_mx.py:
|
|
709
|
+
#: admin/tests/test_mx.py:185
|
|
701
710
|
#, python-format
|
|
702
711
|
msgid "No AAAA record for %s"
|
|
703
712
|
msgstr ""
|
|
@@ -866,11 +875,11 @@ msgid ""
|
|
|
866
875
|
"database)"
|
|
867
876
|
msgstr ""
|
|
868
877
|
|
|
869
|
-
#: amavis/app_settings.py:236 webmail/app_settings.py:
|
|
878
|
+
#: amavis/app_settings.py:236 webmail/app_settings.py:155
|
|
870
879
|
msgid "Display"
|
|
871
880
|
msgstr ""
|
|
872
881
|
|
|
873
|
-
#: amavis/app_settings.py:243 webmail/app_settings.py:
|
|
882
|
+
#: amavis/app_settings.py:243 webmail/app_settings.py:181
|
|
874
883
|
msgid "Number of displayed emails per page"
|
|
875
884
|
msgstr ""
|
|
876
885
|
|
|
@@ -1113,7 +1122,7 @@ msgstr ""
|
|
|
1113
1122
|
msgid "Allow domain administrators to manage user calendars (read and write)"
|
|
1114
1123
|
msgstr ""
|
|
1115
1124
|
|
|
1116
|
-
#: calendars/app_settings.py:60 core/app_settings.py:
|
|
1125
|
+
#: calendars/app_settings.py:60 core/app_settings.py:664
|
|
1117
1126
|
#: rspamd/app_settings.py:45
|
|
1118
1127
|
msgid "Miscellaneous"
|
|
1119
1128
|
msgstr ""
|
|
@@ -1131,11 +1140,11 @@ msgstr ""
|
|
|
1131
1140
|
msgid "Calendars"
|
|
1132
1141
|
msgstr ""
|
|
1133
1142
|
|
|
1134
|
-
#: calendars/models.py:48 calendars/models.py:65 contacts/models.py:
|
|
1143
|
+
#: calendars/models.py:48 calendars/models.py:65 contacts/models.py:39
|
|
1135
1144
|
msgid "Server location is not set, please fix it."
|
|
1136
1145
|
msgstr ""
|
|
1137
1146
|
|
|
1138
|
-
#: calendars/viewsets.py:
|
|
1147
|
+
#: calendars/viewsets.py:199
|
|
1139
1148
|
msgid "Uploaded file is too big (max: {} bytes)"
|
|
1140
1149
|
msgstr ""
|
|
1141
1150
|
|
|
@@ -1214,7 +1223,7 @@ msgstr ""
|
|
|
1214
1223
|
msgid "Failed TFA settings editing attempt from '%(addr)s' as user '%(user)s'"
|
|
1215
1224
|
msgstr ""
|
|
1216
1225
|
|
|
1217
|
-
#: core/api/v1/serializers.py:93 core/api/v2/serializers.py:
|
|
1226
|
+
#: core/api/v1/serializers.py:93 core/api/v2/serializers.py:438
|
|
1218
1227
|
msgid "Invalid password"
|
|
1219
1228
|
msgstr ""
|
|
1220
1229
|
|
|
@@ -1226,24 +1235,20 @@ msgstr ""
|
|
|
1226
1235
|
msgid "Local"
|
|
1227
1236
|
msgstr ""
|
|
1228
1237
|
|
|
1229
|
-
#: core/api/v2/serializers.py:
|
|
1230
|
-
|
|
1231
|
-
msgstr ""
|
|
1232
|
-
|
|
1233
|
-
#: core/api/v2/serializers.py:213 core/api/v2/serializers.py:221
|
|
1234
|
-
#: core/api/v2/serializers.py:228
|
|
1238
|
+
#: core/api/v2/serializers.py:206 core/api/v2/serializers.py:214
|
|
1239
|
+
#: core/api/v2/serializers.py:221
|
|
1235
1240
|
msgid "Invalid syntax"
|
|
1236
1241
|
msgstr ""
|
|
1237
1242
|
|
|
1238
|
-
#: core/api/v2/serializers.py:
|
|
1243
|
+
#: core/api/v2/serializers.py:226
|
|
1239
1244
|
msgid "Invalid rounds number"
|
|
1240
1245
|
msgstr ""
|
|
1241
1246
|
|
|
1242
|
-
#: core/api/v2/serializers.py:
|
|
1247
|
+
#: core/api/v2/serializers.py:426 core/forms.py:81
|
|
1243
1248
|
msgid "This code is invalid"
|
|
1244
1249
|
msgstr ""
|
|
1245
1250
|
|
|
1246
|
-
#: core/api/v2/serializers.py:
|
|
1251
|
+
#: core/api/v2/serializers.py:496 core/views/auth.py:213 core/views/auth.py:266
|
|
1247
1252
|
msgid "Please use the following code to recover your Modoboa password: {}"
|
|
1248
1253
|
msgstr ""
|
|
1249
1254
|
|
|
@@ -1268,525 +1273,517 @@ msgid "Calendar"
|
|
|
1268
1273
|
msgstr ""
|
|
1269
1274
|
|
|
1270
1275
|
#: core/api/v2/viewsets.py:215 core/api/v2/viewsets.py:217
|
|
1271
|
-
#: webmail/app_settings.py:
|
|
1276
|
+
#: webmail/app_settings.py:295 webmail/app_settings.py:302
|
|
1272
1277
|
msgid "Webmail"
|
|
1273
1278
|
msgstr ""
|
|
1274
1279
|
|
|
1275
|
-
#: core/app_settings.py:
|
|
1280
|
+
#: core/app_settings.py:25
|
|
1276
1281
|
msgid "Authentication"
|
|
1277
1282
|
msgstr ""
|
|
1278
1283
|
|
|
1279
|
-
#: core/app_settings.py:
|
|
1284
|
+
#: core/app_settings.py:31
|
|
1280
1285
|
msgid "Authentication type"
|
|
1281
1286
|
msgstr ""
|
|
1282
1287
|
|
|
1283
|
-
#: core/app_settings.py:
|
|
1288
|
+
#: core/app_settings.py:33
|
|
1284
1289
|
msgid "The backend used for authentication"
|
|
1285
1290
|
msgstr ""
|
|
1286
1291
|
|
|
1287
|
-
#: core/app_settings.py:
|
|
1292
|
+
#: core/app_settings.py:40
|
|
1288
1293
|
msgid "Default password scheme"
|
|
1289
1294
|
msgstr ""
|
|
1290
1295
|
|
|
1291
|
-
#: core/app_settings.py:
|
|
1296
|
+
#: core/app_settings.py:42
|
|
1292
1297
|
msgid "Scheme used to crypt mailbox passwords"
|
|
1293
1298
|
msgstr ""
|
|
1294
1299
|
|
|
1295
|
-
#: core/app_settings.py:
|
|
1300
|
+
#: core/app_settings.py:49
|
|
1296
1301
|
msgid "Rounds"
|
|
1297
1302
|
msgstr ""
|
|
1298
1303
|
|
|
1299
|
-
#: core/app_settings.py:
|
|
1304
|
+
#: core/app_settings.py:51
|
|
1300
1305
|
msgid ""
|
|
1301
1306
|
"Number of rounds to use (only used by sha256crypt and sha512crypt). Must be "
|
|
1302
1307
|
"between 1000 and 999999999, inclusive."
|
|
1303
1308
|
msgstr ""
|
|
1304
1309
|
|
|
1305
|
-
#: core/app_settings.py:
|
|
1310
|
+
#: core/app_settings.py:61
|
|
1306
1311
|
msgid "Update password scheme at login"
|
|
1307
1312
|
msgstr ""
|
|
1308
1313
|
|
|
1309
|
-
#: core/app_settings.py:
|
|
1314
|
+
#: core/app_settings.py:64
|
|
1310
1315
|
msgid "Update user password at login to use the default password scheme"
|
|
1311
1316
|
msgstr ""
|
|
1312
1317
|
|
|
1313
|
-
#: core/app_settings.py:
|
|
1318
|
+
#: core/app_settings.py:72
|
|
1314
1319
|
msgid "Default password"
|
|
1315
1320
|
msgstr ""
|
|
1316
1321
|
|
|
1317
|
-
#: core/app_settings.py:
|
|
1322
|
+
#: core/app_settings.py:74
|
|
1318
1323
|
msgid "Default password for automatically created accounts."
|
|
1319
1324
|
msgstr ""
|
|
1320
1325
|
|
|
1321
|
-
#: core/app_settings.py:
|
|
1326
|
+
#: core/app_settings.py:81
|
|
1322
1327
|
msgid "Random password length"
|
|
1323
1328
|
msgstr ""
|
|
1324
1329
|
|
|
1325
|
-
#: core/app_settings.py:
|
|
1330
|
+
#: core/app_settings.py:83
|
|
1326
1331
|
msgid "Length of randomly generated passwords."
|
|
1327
1332
|
msgstr ""
|
|
1328
1333
|
|
|
1329
|
-
#: core/app_settings.py:
|
|
1334
|
+
#: core/app_settings.py:91
|
|
1330
1335
|
msgid "Allow special characters for random password"
|
|
1331
1336
|
msgstr ""
|
|
1332
1337
|
|
|
1333
|
-
#: core/app_settings.py:
|
|
1338
|
+
#: core/app_settings.py:94
|
|
1334
1339
|
msgid "Enable special characters in randomly generated passwords."
|
|
1335
1340
|
msgstr ""
|
|
1336
1341
|
|
|
1337
|
-
#: core/app_settings.py:
|
|
1342
|
+
#: core/app_settings.py:102
|
|
1338
1343
|
msgid "Update password service URL"
|
|
1339
1344
|
msgstr ""
|
|
1340
1345
|
|
|
1341
|
-
#: core/app_settings.py:
|
|
1346
|
+
#: core/app_settings.py:104
|
|
1342
1347
|
msgid ""
|
|
1343
1348
|
"The URL of an external page where users will be able to update their "
|
|
1344
1349
|
"password. It applies only to non local users, ie. those automatically "
|
|
1345
1350
|
"created after a successful external authentication (LDAP, SMTP)."
|
|
1346
1351
|
msgstr ""
|
|
1347
1352
|
|
|
1348
|
-
#: core/app_settings.py:
|
|
1353
|
+
#: core/app_settings.py:114
|
|
1349
1354
|
msgid "Password recovery announcement"
|
|
1350
1355
|
msgstr ""
|
|
1351
1356
|
|
|
1352
|
-
#: core/app_settings.py:
|
|
1357
|
+
#: core/app_settings.py:116
|
|
1353
1358
|
msgid "A temporary message that will be displayed on the reset password page."
|
|
1354
1359
|
msgstr ""
|
|
1355
1360
|
|
|
1356
|
-
#: core/app_settings.py:
|
|
1361
|
+
#: core/app_settings.py:125
|
|
1357
1362
|
msgid "Enable password recovery by SMS"
|
|
1358
1363
|
msgstr ""
|
|
1359
1364
|
|
|
1360
|
-
#: core/app_settings.py:
|
|
1365
|
+
#: core/app_settings.py:128
|
|
1361
1366
|
msgid "Enable password recovery by SMS for users who filled a phone number."
|
|
1362
1367
|
msgstr ""
|
|
1363
1368
|
|
|
1364
|
-
#: core/app_settings.py:
|
|
1369
|
+
#: core/app_settings.py:136
|
|
1365
1370
|
msgid "SMS provider"
|
|
1366
1371
|
msgstr ""
|
|
1367
1372
|
|
|
1368
|
-
#: core/app_settings.py:
|
|
1373
|
+
#: core/app_settings.py:139
|
|
1369
1374
|
msgid "Choose a provider to send password recovery SMS"
|
|
1370
1375
|
msgstr ""
|
|
1371
1376
|
|
|
1372
|
-
#: core/app_settings.py:
|
|
1377
|
+
#: core/app_settings.py:151
|
|
1373
1378
|
msgid "LDAP"
|
|
1374
1379
|
msgstr ""
|
|
1375
1380
|
|
|
1376
|
-
#: core/app_settings.py:
|
|
1381
|
+
#: core/app_settings.py:157 sievefilters/app_settings.py:18
|
|
1377
1382
|
#: sievefilters/app_settings.py:51 webmail/app_settings.py:36
|
|
1378
|
-
#: webmail/app_settings.py:73
|
|
1383
|
+
#: webmail/app_settings.py:73 webmail/app_settings.py:119
|
|
1379
1384
|
msgid "Server address"
|
|
1380
1385
|
msgstr ""
|
|
1381
1386
|
|
|
1382
|
-
#: core/app_settings.py:
|
|
1387
|
+
#: core/app_settings.py:159
|
|
1383
1388
|
msgid "The IP address or the DNS name of the LDAP server"
|
|
1384
1389
|
msgstr ""
|
|
1385
1390
|
|
|
1386
|
-
#: core/app_settings.py:
|
|
1391
|
+
#: core/app_settings.py:166 sievefilters/app_settings.py:25
|
|
1387
1392
|
#: sievefilters/app_settings.py:67 webmail/app_settings.py:54
|
|
1388
|
-
#: webmail/app_settings.py:91
|
|
1393
|
+
#: webmail/app_settings.py:91 webmail/app_settings.py:137
|
|
1389
1394
|
msgid "Server port"
|
|
1390
1395
|
msgstr ""
|
|
1391
1396
|
|
|
1392
|
-
#: core/app_settings.py:
|
|
1397
|
+
#: core/app_settings.py:168
|
|
1393
1398
|
msgid "The TCP port number used by the LDAP server"
|
|
1394
1399
|
msgstr ""
|
|
1395
1400
|
|
|
1396
|
-
#: core/app_settings.py:
|
|
1401
|
+
#: core/app_settings.py:176
|
|
1397
1402
|
msgid "Enable secondary server (fallback)"
|
|
1398
1403
|
msgstr ""
|
|
1399
1404
|
|
|
1400
|
-
#: core/app_settings.py:
|
|
1405
|
+
#: core/app_settings.py:179
|
|
1401
1406
|
msgid ""
|
|
1402
1407
|
"Enable a secondary LDAP server which will be used if the primary one fails"
|
|
1403
1408
|
msgstr ""
|
|
1404
1409
|
|
|
1405
|
-
#: core/app_settings.py:
|
|
1410
|
+
#: core/app_settings.py:187
|
|
1406
1411
|
msgid "Secondary server address"
|
|
1407
1412
|
msgstr ""
|
|
1408
1413
|
|
|
1409
|
-
#: core/app_settings.py:
|
|
1414
|
+
#: core/app_settings.py:190
|
|
1410
1415
|
msgid "The IP address or the DNS name of the seondary LDAP server"
|
|
1411
1416
|
msgstr ""
|
|
1412
1417
|
|
|
1413
|
-
#: core/app_settings.py:
|
|
1418
|
+
#: core/app_settings.py:197
|
|
1414
1419
|
msgid "Secondary server port"
|
|
1415
1420
|
msgstr ""
|
|
1416
1421
|
|
|
1417
|
-
#: core/app_settings.py:
|
|
1422
|
+
#: core/app_settings.py:200
|
|
1418
1423
|
msgid "The TCP port number used by the LDAP secondary server"
|
|
1419
1424
|
msgstr ""
|
|
1420
1425
|
|
|
1421
|
-
#: core/app_settings.py:
|
|
1426
|
+
#: core/app_settings.py:207 sievefilters/app_settings.py:58
|
|
1422
1427
|
#: webmail/app_settings.py:45
|
|
1423
1428
|
msgid "Use a secured connection"
|
|
1424
1429
|
msgstr ""
|
|
1425
1430
|
|
|
1426
|
-
#: core/app_settings.py:
|
|
1431
|
+
#: core/app_settings.py:209
|
|
1427
1432
|
msgid "Use an SSL/STARTTLS connection to access the LDAP server"
|
|
1428
1433
|
msgstr ""
|
|
1429
1434
|
|
|
1430
|
-
#: core/app_settings.py:
|
|
1435
|
+
#: core/app_settings.py:216
|
|
1431
1436
|
msgid "Active Directory"
|
|
1432
1437
|
msgstr ""
|
|
1433
1438
|
|
|
1434
|
-
#: core/app_settings.py:
|
|
1439
|
+
#: core/app_settings.py:218
|
|
1435
1440
|
msgid "Tell if the LDAP server is an Active Directory one"
|
|
1436
1441
|
msgstr ""
|
|
1437
1442
|
|
|
1438
|
-
#: core/app_settings.py:
|
|
1443
|
+
#: core/app_settings.py:225
|
|
1439
1444
|
msgid "Administrator groups"
|
|
1440
1445
|
msgstr ""
|
|
1441
1446
|
|
|
1442
|
-
#: core/app_settings.py:
|
|
1447
|
+
#: core/app_settings.py:227
|
|
1443
1448
|
msgid ""
|
|
1444
1449
|
"Members of those LDAP Posix groups will be created as domain administrators. "
|
|
1445
1450
|
"Use ';' characters to separate groups."
|
|
1446
1451
|
msgstr ""
|
|
1447
1452
|
|
|
1448
|
-
#: core/app_settings.py:
|
|
1453
|
+
#: core/app_settings.py:236
|
|
1449
1454
|
msgid "Group type"
|
|
1450
1455
|
msgstr ""
|
|
1451
1456
|
|
|
1452
|
-
#: core/app_settings.py:
|
|
1457
|
+
#: core/app_settings.py:238
|
|
1453
1458
|
msgid "The LDAP group type to use with your directory."
|
|
1454
1459
|
msgstr ""
|
|
1455
1460
|
|
|
1456
|
-
#: core/app_settings.py:
|
|
1461
|
+
#: core/app_settings.py:245
|
|
1457
1462
|
msgid "Groups search base"
|
|
1458
1463
|
msgstr ""
|
|
1459
1464
|
|
|
1460
|
-
#: core/app_settings.py:
|
|
1465
|
+
#: core/app_settings.py:247
|
|
1461
1466
|
msgid "The distinguished name of the search base used to find groups"
|
|
1462
1467
|
msgstr ""
|
|
1463
1468
|
|
|
1464
|
-
#: core/app_settings.py:
|
|
1469
|
+
#: core/app_settings.py:255
|
|
1465
1470
|
msgid "Password attribute"
|
|
1466
1471
|
msgstr ""
|
|
1467
1472
|
|
|
1468
|
-
#: core/app_settings.py:
|
|
1473
|
+
#: core/app_settings.py:257
|
|
1469
1474
|
msgid "The attribute used to store user passwords"
|
|
1470
1475
|
msgstr ""
|
|
1471
1476
|
|
|
1472
|
-
#: core/app_settings.py:
|
|
1477
|
+
#: core/app_settings.py:264
|
|
1473
1478
|
msgid "LDAP authentication settings"
|
|
1474
1479
|
msgstr ""
|
|
1475
1480
|
|
|
1476
|
-
#: core/app_settings.py:
|
|
1481
|
+
#: core/app_settings.py:272
|
|
1477
1482
|
msgid "Authentication method"
|
|
1478
1483
|
msgstr ""
|
|
1479
1484
|
|
|
1480
|
-
#: core/app_settings.py:
|
|
1485
|
+
#: core/app_settings.py:275
|
|
1481
1486
|
msgid "Choose the authentication method to use"
|
|
1482
1487
|
msgstr ""
|
|
1483
1488
|
|
|
1484
|
-
#: core/app_settings.py:
|
|
1489
|
+
#: core/app_settings.py:282 core/app_settings.py:345
|
|
1485
1490
|
msgid "Bind DN"
|
|
1486
1491
|
msgstr ""
|
|
1487
1492
|
|
|
1488
|
-
#: core/app_settings.py:
|
|
1493
|
+
#: core/app_settings.py:284 core/app_settings.py:347
|
|
1489
1494
|
msgid ""
|
|
1490
1495
|
"The distinguished name to use when binding to the LDAP server. Leave empty "
|
|
1491
1496
|
"for an anonymous bind"
|
|
1492
1497
|
msgstr ""
|
|
1493
1498
|
|
|
1494
|
-
#: core/app_settings.py:
|
|
1499
|
+
#: core/app_settings.py:293 core/app_settings.py:355
|
|
1495
1500
|
msgid "Bind password"
|
|
1496
1501
|
msgstr ""
|
|
1497
1502
|
|
|
1498
|
-
#: core/app_settings.py:
|
|
1503
|
+
#: core/app_settings.py:295 core/app_settings.py:357
|
|
1499
1504
|
msgid "The password to use when binding to the LDAP server (with 'Bind DN')"
|
|
1500
1505
|
msgstr ""
|
|
1501
1506
|
|
|
1502
|
-
#: core/app_settings.py:
|
|
1507
|
+
#: core/app_settings.py:305 core/app_settings.py:410
|
|
1503
1508
|
msgid "Users search base"
|
|
1504
1509
|
msgstr ""
|
|
1505
1510
|
|
|
1506
|
-
#: core/app_settings.py:
|
|
1511
|
+
#: core/app_settings.py:307 core/app_settings.py:412
|
|
1507
1512
|
msgid "The distinguished name of the search base used to find users"
|
|
1508
1513
|
msgstr ""
|
|
1509
1514
|
|
|
1510
|
-
#: core/app_settings.py:
|
|
1515
|
+
#: core/app_settings.py:316 core/app_settings.py:421
|
|
1511
1516
|
msgid "Search filter"
|
|
1512
1517
|
msgstr ""
|
|
1513
1518
|
|
|
1514
|
-
#: core/app_settings.py:
|
|
1519
|
+
#: core/app_settings.py:318 core/app_settings.py:423
|
|
1515
1520
|
msgid ""
|
|
1516
1521
|
"An optional filter string (e.g. '(objectClass=person)'). In order to be "
|
|
1517
1522
|
"valid, it must be enclosed in parentheses."
|
|
1518
1523
|
msgstr ""
|
|
1519
1524
|
|
|
1520
|
-
#: core/app_settings.py:
|
|
1525
|
+
#: core/app_settings.py:327
|
|
1521
1526
|
msgid "User DN template"
|
|
1522
1527
|
msgstr ""
|
|
1523
1528
|
|
|
1524
|
-
#: core/app_settings.py:
|
|
1529
|
+
#: core/app_settings.py:329
|
|
1525
1530
|
#, python-format
|
|
1526
1531
|
msgid ""
|
|
1527
1532
|
"The template used to construct a user's DN. It should contain one "
|
|
1528
1533
|
"placeholder (ie. %(user)s)"
|
|
1529
1534
|
msgstr ""
|
|
1530
1535
|
|
|
1531
|
-
#: core/app_settings.py:
|
|
1536
|
+
#: core/app_settings.py:338
|
|
1532
1537
|
msgid "LDAP synchronization settings"
|
|
1533
1538
|
msgstr ""
|
|
1534
1539
|
|
|
1535
|
-
#: core/app_settings.py:
|
|
1540
|
+
#: core/app_settings.py:366
|
|
1536
1541
|
msgid "Enable export to LDAP"
|
|
1537
1542
|
msgstr ""
|
|
1538
1543
|
|
|
1539
|
-
#: core/app_settings.py:
|
|
1544
|
+
#: core/app_settings.py:368
|
|
1540
1545
|
msgid ""
|
|
1541
1546
|
"Enable automatic synchronization between local database and LDAP directory"
|
|
1542
1547
|
msgstr ""
|
|
1543
1548
|
|
|
1544
|
-
#: core/app_settings.py:
|
|
1549
|
+
#: core/app_settings.py:377
|
|
1545
1550
|
msgid "Delete remote LDAP account when local account is deleted"
|
|
1546
1551
|
msgstr ""
|
|
1547
1552
|
|
|
1548
|
-
#: core/app_settings.py:
|
|
1553
|
+
#: core/app_settings.py:380
|
|
1549
1554
|
msgid ""
|
|
1550
1555
|
"Delete remote LDAP account when local account is deleted, otherwise it will "
|
|
1551
1556
|
"be disabled."
|
|
1552
1557
|
msgstr ""
|
|
1553
1558
|
|
|
1554
|
-
#: core/app_settings.py:
|
|
1559
|
+
#: core/app_settings.py:389
|
|
1555
1560
|
msgid "Account DN template"
|
|
1556
1561
|
msgstr ""
|
|
1557
1562
|
|
|
1558
|
-
#: core/app_settings.py:
|
|
1563
|
+
#: core/app_settings.py:391
|
|
1559
1564
|
#, python-format
|
|
1560
1565
|
msgid ""
|
|
1561
1566
|
"The template used to construct an account's DN. It should contain one "
|
|
1562
1567
|
"placeholder (ie. %(user)s)"
|
|
1563
1568
|
msgstr ""
|
|
1564
1569
|
|
|
1565
|
-
#: core/app_settings.py:
|
|
1570
|
+
#: core/app_settings.py:400
|
|
1566
1571
|
msgid "Enable import from LDAP"
|
|
1567
1572
|
msgstr ""
|
|
1568
1573
|
|
|
1569
|
-
#: core/app_settings.py:
|
|
1574
|
+
#: core/app_settings.py:402
|
|
1570
1575
|
msgid "Enable account synchronization from LDAP directory to local database"
|
|
1571
1576
|
msgstr ""
|
|
1572
1577
|
|
|
1573
|
-
#: core/app_settings.py:
|
|
1578
|
+
#: core/app_settings.py:432
|
|
1574
1579
|
msgid "Username attribute"
|
|
1575
1580
|
msgstr ""
|
|
1576
1581
|
|
|
1577
|
-
#: core/app_settings.py:
|
|
1582
|
+
#: core/app_settings.py:434
|
|
1578
1583
|
msgid "The name of the LDAP attribute where the username can be found."
|
|
1579
1584
|
msgstr ""
|
|
1580
1585
|
|
|
1581
|
-
#: core/app_settings.py:
|
|
1586
|
+
#: core/app_settings.py:443
|
|
1582
1587
|
msgid "Enable Dovecot LDAP sync"
|
|
1583
1588
|
msgstr ""
|
|
1584
1589
|
|
|
1585
|
-
#: core/app_settings.py:
|
|
1590
|
+
#: core/app_settings.py:445
|
|
1586
1591
|
msgid "LDAP authentication settings will be applied to Dovecot configuration."
|
|
1587
1592
|
msgstr ""
|
|
1588
1593
|
|
|
1589
|
-
#: core/app_settings.py:
|
|
1594
|
+
#: core/app_settings.py:453
|
|
1590
1595
|
msgid "Dovecot LDAP config file"
|
|
1591
1596
|
msgstr ""
|
|
1592
1597
|
|
|
1593
|
-
#: core/app_settings.py:
|
|
1598
|
+
#: core/app_settings.py:455
|
|
1594
1599
|
msgid ""
|
|
1595
1600
|
"Location of the configuration file which contains Dovecot LDAP settings."
|
|
1596
1601
|
msgstr ""
|
|
1597
1602
|
|
|
1598
|
-
#: core/app_settings.py:
|
|
1603
|
+
#: core/app_settings.py:468
|
|
1599
1604
|
msgid "Dashboard"
|
|
1600
1605
|
msgstr ""
|
|
1601
1606
|
|
|
1602
|
-
#: core/app_settings.py:
|
|
1607
|
+
#: core/app_settings.py:474
|
|
1603
1608
|
msgid "Custom welcome message"
|
|
1604
1609
|
msgstr ""
|
|
1605
1610
|
|
|
1606
|
-
#: core/app_settings.py:
|
|
1611
|
+
#: core/app_settings.py:476
|
|
1607
1612
|
msgid "A welcome message that will be displayed instead the default one"
|
|
1608
1613
|
msgstr ""
|
|
1609
1614
|
|
|
1610
|
-
#: core/app_settings.py:
|
|
1615
|
+
#: core/app_settings.py:483
|
|
1611
1616
|
msgid "Custom RSS feed"
|
|
1612
1617
|
msgstr ""
|
|
1613
1618
|
|
|
1614
|
-
#: core/app_settings.py:
|
|
1619
|
+
#: core/app_settings.py:485
|
|
1615
1620
|
msgid "Display custom RSS feed to resellers and domain administrators"
|
|
1616
1621
|
msgstr ""
|
|
1617
1622
|
|
|
1618
|
-
#: core/app_settings.py:
|
|
1623
|
+
#: core/app_settings.py:494
|
|
1619
1624
|
msgid "Display custom RSS feed to super admins"
|
|
1620
1625
|
msgstr ""
|
|
1621
1626
|
|
|
1622
|
-
#: core/app_settings.py:
|
|
1627
|
+
#: core/app_settings.py:497
|
|
1623
1628
|
msgid "Display custom RSS feed also to super administrators"
|
|
1624
1629
|
msgstr ""
|
|
1625
1630
|
|
|
1626
|
-
#: core/app_settings.py:
|
|
1631
|
+
#: core/app_settings.py:505
|
|
1627
1632
|
msgid "Hide features widget"
|
|
1628
1633
|
msgstr ""
|
|
1629
1634
|
|
|
1630
|
-
#: core/app_settings.py:
|
|
1635
|
+
#: core/app_settings.py:507
|
|
1631
1636
|
msgid "Hide features widget for resellers and domain administrators"
|
|
1632
1637
|
msgstr ""
|
|
1633
1638
|
|
|
1634
|
-
#: core/app_settings.py:
|
|
1639
|
+
#: core/app_settings.py:519
|
|
1635
1640
|
msgid "Theme"
|
|
1636
1641
|
msgstr ""
|
|
1637
1642
|
|
|
1638
|
-
#: core/app_settings.py:
|
|
1643
|
+
#: core/app_settings.py:525
|
|
1639
1644
|
msgid "Primary theme color"
|
|
1640
1645
|
msgstr ""
|
|
1641
1646
|
|
|
1642
|
-
#: core/app_settings.py:
|
|
1647
|
+
#: core/app_settings.py:527
|
|
1643
1648
|
msgid ""
|
|
1644
1649
|
"Primary color of the theme (hexadecimal code), used as the background color "
|
|
1645
1650
|
"of the left menu for example"
|
|
1646
1651
|
msgstr ""
|
|
1647
1652
|
|
|
1648
|
-
#: core/app_settings.py:
|
|
1653
|
+
#: core/app_settings.py:536
|
|
1649
1654
|
msgid "Primary theme color (lighter version)"
|
|
1650
1655
|
msgstr ""
|
|
1651
1656
|
|
|
1652
|
-
#: core/app_settings.py:
|
|
1657
|
+
#: core/app_settings.py:539 core/app_settings.py:551
|
|
1653
1658
|
msgid "Primary color of the theme (hexadecimal code)"
|
|
1654
1659
|
msgstr ""
|
|
1655
1660
|
|
|
1656
|
-
#: core/app_settings.py:
|
|
1661
|
+
#: core/app_settings.py:548
|
|
1657
1662
|
msgid "Primary theme color (darker version)"
|
|
1658
1663
|
msgstr ""
|
|
1659
1664
|
|
|
1660
|
-
#: core/app_settings.py:
|
|
1665
|
+
#: core/app_settings.py:559
|
|
1661
1666
|
msgid "Secondary theme color"
|
|
1662
1667
|
msgstr ""
|
|
1663
1668
|
|
|
1664
|
-
#: core/app_settings.py:
|
|
1669
|
+
#: core/app_settings.py:561
|
|
1665
1670
|
msgid ""
|
|
1666
1671
|
"Secondary color of the theme (hexadecimal code), used as the background "
|
|
1667
1672
|
"color of some buttons for example"
|
|
1668
1673
|
msgstr ""
|
|
1669
1674
|
|
|
1670
|
-
#: core/app_settings.py:
|
|
1675
|
+
#: core/app_settings.py:569
|
|
1671
1676
|
msgid "Labels theme color"
|
|
1672
1677
|
msgstr ""
|
|
1673
1678
|
|
|
1674
|
-
#: core/app_settings.py:
|
|
1679
|
+
#: core/app_settings.py:571
|
|
1675
1680
|
msgid "Theme color for labels (hexadecimal code)"
|
|
1676
1681
|
msgstr ""
|
|
1677
1682
|
|
|
1678
|
-
#: core/app_settings.py:
|
|
1683
|
+
#: core/app_settings.py:583
|
|
1679
1684
|
msgid "Notifications"
|
|
1680
1685
|
msgstr ""
|
|
1681
1686
|
|
|
1682
|
-
#: core/app_settings.py:
|
|
1687
|
+
#: core/app_settings.py:589
|
|
1683
1688
|
msgid "Sender address"
|
|
1684
1689
|
msgstr ""
|
|
1685
1690
|
|
|
1686
|
-
#: core/app_settings.py:
|
|
1691
|
+
#: core/app_settings.py:591
|
|
1687
1692
|
msgid "Email address used to send notifications."
|
|
1688
1693
|
msgstr ""
|
|
1689
1694
|
|
|
1690
|
-
#: core/app_settings.py:
|
|
1695
|
+
#: core/app_settings.py:602
|
|
1691
1696
|
msgid "Public API"
|
|
1692
1697
|
msgstr ""
|
|
1693
1698
|
|
|
1694
|
-
#: core/app_settings.py:
|
|
1699
|
+
#: core/app_settings.py:608
|
|
1695
1700
|
msgid "Enable communication"
|
|
1696
1701
|
msgstr ""
|
|
1697
1702
|
|
|
1698
|
-
#: core/app_settings.py:
|
|
1703
|
+
#: core/app_settings.py:610 core/app_settings.py:620
|
|
1699
1704
|
msgid "Automatically checks if a newer version is available"
|
|
1700
1705
|
msgstr ""
|
|
1701
1706
|
|
|
1702
|
-
#: core/app_settings.py:
|
|
1707
|
+
#: core/app_settings.py:617
|
|
1703
1708
|
msgid "Check new versions"
|
|
1704
1709
|
msgstr ""
|
|
1705
1710
|
|
|
1706
|
-
#: core/app_settings.py:
|
|
1711
|
+
#: core/app_settings.py:628
|
|
1707
1712
|
msgid "Send an email when new versions are found"
|
|
1708
1713
|
msgstr ""
|
|
1709
1714
|
|
|
1710
|
-
#: core/app_settings.py:
|
|
1715
|
+
#: core/app_settings.py:632
|
|
1711
1716
|
msgid "Send an email to notify admins about new versions"
|
|
1712
1717
|
msgstr ""
|
|
1713
1718
|
|
|
1714
|
-
#: core/app_settings.py:
|
|
1719
|
+
#: core/app_settings.py:639 sievefilters/constants.py:25
|
|
1715
1720
|
msgid "Recipient"
|
|
1716
1721
|
msgstr ""
|
|
1717
1722
|
|
|
1718
|
-
#: core/app_settings.py:
|
|
1723
|
+
#: core/app_settings.py:642
|
|
1719
1724
|
msgid "Recipient of new versions notification emails."
|
|
1720
1725
|
msgstr ""
|
|
1721
1726
|
|
|
1722
|
-
#: core/app_settings.py:
|
|
1727
|
+
#: core/app_settings.py:649
|
|
1723
1728
|
msgid "Send statistics"
|
|
1724
1729
|
msgstr ""
|
|
1725
1730
|
|
|
1726
|
-
#: core/app_settings.py:
|
|
1731
|
+
#: core/app_settings.py:652
|
|
1727
1732
|
msgid "Send statistics to Modoboa public API (counters and used extensions)"
|
|
1728
1733
|
msgstr ""
|
|
1729
1734
|
|
|
1730
|
-
#: core/app_settings.py:
|
|
1735
|
+
#: core/app_settings.py:671
|
|
1731
1736
|
msgid "Enable inactive account tracking"
|
|
1732
1737
|
msgstr ""
|
|
1733
1738
|
|
|
1734
|
-
#: core/app_settings.py:
|
|
1739
|
+
#: core/app_settings.py:674
|
|
1735
1740
|
msgid ""
|
|
1736
1741
|
"Allow the administrator to set a threshold (in days) beyond which an account "
|
|
1737
1742
|
"is considered inactive if the user hasn't logged in"
|
|
1738
1743
|
msgstr ""
|
|
1739
1744
|
|
|
1740
|
-
#: core/app_settings.py:
|
|
1745
|
+
#: core/app_settings.py:683
|
|
1741
1746
|
msgid "Inactive account threshold"
|
|
1742
1747
|
msgstr ""
|
|
1743
1748
|
|
|
1744
|
-
#: core/app_settings.py:
|
|
1749
|
+
#: core/app_settings.py:686
|
|
1745
1750
|
msgid ""
|
|
1746
1751
|
"An account with a last login date greater than this threshold (in days) will "
|
|
1747
1752
|
"be considered as inactive"
|
|
1748
1753
|
msgstr ""
|
|
1749
1754
|
|
|
1750
|
-
#: core/app_settings.py:
|
|
1755
|
+
#: core/app_settings.py:695
|
|
1751
1756
|
msgid "Top notifications check interval"
|
|
1752
1757
|
msgstr ""
|
|
1753
1758
|
|
|
1754
|
-
#: core/app_settings.py:
|
|
1759
|
+
#: core/app_settings.py:698
|
|
1755
1760
|
msgid "Interval between two top notification checks (in seconds)"
|
|
1756
1761
|
msgstr ""
|
|
1757
1762
|
|
|
1758
|
-
#: core/app_settings.py:
|
|
1763
|
+
#: core/app_settings.py:705
|
|
1759
1764
|
msgid "Maximum log record age"
|
|
1760
1765
|
msgstr ""
|
|
1761
1766
|
|
|
1762
|
-
#: core/app_settings.py:
|
|
1767
|
+
#: core/app_settings.py:707
|
|
1763
1768
|
msgid "The maximum age in days of a log record"
|
|
1764
1769
|
msgstr ""
|
|
1765
1770
|
|
|
1766
|
-
#: core/app_settings.py:
|
|
1771
|
+
#: core/app_settings.py:715
|
|
1767
1772
|
msgid "Retention time in message history"
|
|
1768
1773
|
msgstr ""
|
|
1769
1774
|
|
|
1770
|
-
#: core/app_settings.py:
|
|
1775
|
+
#: core/app_settings.py:718
|
|
1771
1776
|
msgid "Retention time (in days) of a message in the message history section"
|
|
1772
1777
|
msgstr ""
|
|
1773
1778
|
|
|
1774
|
-
#: core/app_settings.py:
|
|
1779
|
+
#: core/app_settings.py:725
|
|
1775
1780
|
msgid "Items per page"
|
|
1776
1781
|
msgstr ""
|
|
1777
1782
|
|
|
1778
|
-
#: core/app_settings.py:
|
|
1783
|
+
#: core/app_settings.py:727
|
|
1779
1784
|
msgid "Number of displayed items per page"
|
|
1780
1785
|
msgstr ""
|
|
1781
1786
|
|
|
1782
|
-
#: core/app_settings.py:746
|
|
1783
|
-
msgid "Default top redirection"
|
|
1784
|
-
msgstr ""
|
|
1785
|
-
|
|
1786
|
-
#: core/app_settings.py:748
|
|
1787
|
-
msgid "The default redirection used when no application is specified"
|
|
1788
|
-
msgstr ""
|
|
1789
|
-
|
|
1790
1787
|
#: core/checks.py:15
|
|
1791
1788
|
msgid ""
|
|
1792
1789
|
"You have USE_TZ set to False, this may result in issues during transitions "
|
|
@@ -2109,7 +2106,7 @@ msgid "Not resolved"
|
|
|
2109
2106
|
msgstr ""
|
|
2110
2107
|
|
|
2111
2108
|
#: dmarc/models.py:10 dmarc/models.py:16 pdfcredentials/constants.py:7
|
|
2112
|
-
#: webmail/constants.py:
|
|
2109
|
+
#: webmail/constants.py:38
|
|
2113
2110
|
msgid "None"
|
|
2114
2111
|
msgstr ""
|
|
2115
2112
|
|
|
@@ -2989,7 +2986,7 @@ msgstr ""
|
|
|
2989
2986
|
msgid "is not"
|
|
2990
2987
|
msgstr ""
|
|
2991
2988
|
|
|
2992
|
-
#: sievefilters/constants.py:23 webmail/lib/imapemail.py:
|
|
2989
|
+
#: sievefilters/constants.py:23 webmail/lib/imapemail.py:302
|
|
2993
2990
|
msgid "Subject"
|
|
2994
2991
|
msgstr ""
|
|
2995
2992
|
|
|
@@ -3215,19 +3212,19 @@ msgstr ""
|
|
|
3215
3212
|
msgid "SMTP settings"
|
|
3216
3213
|
msgstr ""
|
|
3217
3214
|
|
|
3218
|
-
#: webmail/app_settings.py:75
|
|
3215
|
+
#: webmail/app_settings.py:75 webmail/app_settings.py:121
|
|
3219
3216
|
msgid "Address of your SMTP server"
|
|
3220
3217
|
msgstr ""
|
|
3221
3218
|
|
|
3222
|
-
#: webmail/app_settings.py:82
|
|
3219
|
+
#: webmail/app_settings.py:82 webmail/app_settings.py:128
|
|
3223
3220
|
msgid "Secured connection mode"
|
|
3224
3221
|
msgstr ""
|
|
3225
3222
|
|
|
3226
|
-
#: webmail/app_settings.py:84
|
|
3223
|
+
#: webmail/app_settings.py:84 webmail/app_settings.py:130
|
|
3227
3224
|
msgid "Use a secured connection to access SMTP server"
|
|
3228
3225
|
msgstr ""
|
|
3229
3226
|
|
|
3230
|
-
#: webmail/app_settings.py:93
|
|
3227
|
+
#: webmail/app_settings.py:93 webmail/app_settings.py:139
|
|
3231
3228
|
msgid "Listening port of your SMTP server"
|
|
3232
3229
|
msgstr ""
|
|
3233
3230
|
|
|
@@ -3239,95 +3236,99 @@ msgstr ""
|
|
|
3239
3236
|
msgid "Server needs authentication"
|
|
3240
3237
|
msgstr ""
|
|
3241
3238
|
|
|
3242
|
-
#: webmail/app_settings.py:
|
|
3239
|
+
#: webmail/app_settings.py:113
|
|
3240
|
+
msgid "Scheduling settings"
|
|
3241
|
+
msgstr ""
|
|
3242
|
+
|
|
3243
|
+
#: webmail/app_settings.py:161
|
|
3243
3244
|
msgid "Default message display mode"
|
|
3244
3245
|
msgstr ""
|
|
3245
3246
|
|
|
3246
|
-
#: webmail/app_settings.py:
|
|
3247
|
+
#: webmail/app_settings.py:163
|
|
3247
3248
|
msgid "The default mode used when displaying a message"
|
|
3248
3249
|
msgstr ""
|
|
3249
3250
|
|
|
3250
|
-
#: webmail/app_settings.py:
|
|
3251
|
+
#: webmail/app_settings.py:170
|
|
3251
3252
|
msgid "Enable HTML links display"
|
|
3252
3253
|
msgstr ""
|
|
3253
3254
|
|
|
3254
|
-
#: webmail/app_settings.py:
|
|
3255
|
+
#: webmail/app_settings.py:173
|
|
3255
3256
|
msgid "Enable/Disable HTML links display"
|
|
3256
3257
|
msgstr ""
|
|
3257
3258
|
|
|
3258
|
-
#: webmail/app_settings.py:
|
|
3259
|
+
#: webmail/app_settings.py:184
|
|
3259
3260
|
msgid "Sets the maximum number of messages displayed in a page"
|
|
3260
3261
|
msgstr ""
|
|
3261
3262
|
|
|
3262
|
-
#: webmail/app_settings.py:
|
|
3263
|
+
#: webmail/app_settings.py:191
|
|
3263
3264
|
msgid "Listing refresh rate"
|
|
3264
3265
|
msgstr ""
|
|
3265
3266
|
|
|
3266
|
-
#: webmail/app_settings.py:
|
|
3267
|
+
#: webmail/app_settings.py:193
|
|
3267
3268
|
msgid "Automatic listing refresh rate (in secconds)"
|
|
3268
3269
|
msgstr ""
|
|
3269
3270
|
|
|
3270
|
-
#: webmail/app_settings.py:
|
|
3271
|
+
#: webmail/app_settings.py:200
|
|
3271
3272
|
msgid "Folder container's width"
|
|
3272
3273
|
msgstr ""
|
|
3273
3274
|
|
|
3274
|
-
#: webmail/app_settings.py:
|
|
3275
|
+
#: webmail/app_settings.py:202
|
|
3275
3276
|
msgid "The width of the folder list container"
|
|
3276
3277
|
msgstr ""
|
|
3277
3278
|
|
|
3278
|
-
#: webmail/app_settings.py:
|
|
3279
|
+
#: webmail/app_settings.py:213
|
|
3279
3280
|
msgid "Folders"
|
|
3280
3281
|
msgstr ""
|
|
3281
3282
|
|
|
3282
|
-
#: webmail/app_settings.py:
|
|
3283
|
+
#: webmail/app_settings.py:219
|
|
3283
3284
|
msgid "Trash folder"
|
|
3284
3285
|
msgstr ""
|
|
3285
3286
|
|
|
3286
|
-
#: webmail/app_settings.py:
|
|
3287
|
+
#: webmail/app_settings.py:221
|
|
3287
3288
|
msgid "Folder where deleted messages go"
|
|
3288
3289
|
msgstr ""
|
|
3289
3290
|
|
|
3290
|
-
#: webmail/app_settings.py:
|
|
3291
|
+
#: webmail/app_settings.py:228
|
|
3291
3292
|
msgid "Sent folder"
|
|
3292
3293
|
msgstr ""
|
|
3293
3294
|
|
|
3294
|
-
#: webmail/app_settings.py:
|
|
3295
|
+
#: webmail/app_settings.py:230
|
|
3295
3296
|
msgid "Folder where copies of sent messages go"
|
|
3296
3297
|
msgstr ""
|
|
3297
3298
|
|
|
3298
|
-
#: webmail/app_settings.py:
|
|
3299
|
+
#: webmail/app_settings.py:237
|
|
3299
3300
|
msgid "Drafts folder"
|
|
3300
3301
|
msgstr ""
|
|
3301
3302
|
|
|
3302
|
-
#: webmail/app_settings.py:
|
|
3303
|
+
#: webmail/app_settings.py:238
|
|
3303
3304
|
msgid "Folder where drafts go"
|
|
3304
3305
|
msgstr ""
|
|
3305
3306
|
|
|
3306
|
-
#: webmail/app_settings.py:
|
|
3307
|
+
#: webmail/app_settings.py:244
|
|
3307
3308
|
msgid "Junk folder"
|
|
3308
3309
|
msgstr ""
|
|
3309
3310
|
|
|
3310
|
-
#: webmail/app_settings.py:
|
|
3311
|
+
#: webmail/app_settings.py:246
|
|
3311
3312
|
msgid "Folder where junk messages should go"
|
|
3312
3313
|
msgstr ""
|
|
3313
3314
|
|
|
3314
|
-
#: webmail/app_settings.py:
|
|
3315
|
+
#: webmail/app_settings.py:257
|
|
3315
3316
|
msgid "Composing messages"
|
|
3316
3317
|
msgstr ""
|
|
3317
3318
|
|
|
3318
|
-
#: webmail/app_settings.py:
|
|
3319
|
+
#: webmail/app_settings.py:263
|
|
3319
3320
|
msgid "Default editor"
|
|
3320
3321
|
msgstr ""
|
|
3321
3322
|
|
|
3322
|
-
#: webmail/app_settings.py:
|
|
3323
|
+
#: webmail/app_settings.py:265
|
|
3323
3324
|
msgid "The default editor to use when composing a message"
|
|
3324
3325
|
msgstr ""
|
|
3325
3326
|
|
|
3326
|
-
#: webmail/app_settings.py:
|
|
3327
|
+
#: webmail/app_settings.py:272
|
|
3327
3328
|
msgid "Signature text"
|
|
3328
3329
|
msgstr ""
|
|
3329
3330
|
|
|
3330
|
-
#: webmail/app_settings.py:
|
|
3331
|
+
#: webmail/app_settings.py:274
|
|
3331
3332
|
msgid "User defined email signature"
|
|
3332
3333
|
msgstr ""
|
|
3333
3334
|
|
|
@@ -3341,43 +3342,59 @@ msgstr ""
|
|
|
3341
3342
|
msgid "Failed to remove attachment: "
|
|
3342
3343
|
msgstr "LDAP ගිණුම සෑදීමට අසමත් විය: {}"
|
|
3343
3344
|
|
|
3344
|
-
#: webmail/lib/imapemail.py:
|
|
3345
|
+
#: webmail/lib/imapemail.py:270
|
|
3345
3346
|
msgid "wrote:"
|
|
3346
3347
|
msgstr ""
|
|
3347
3348
|
|
|
3348
|
-
#: webmail/lib/imapemail.py:
|
|
3349
|
+
#: webmail/lib/imapemail.py:304
|
|
3349
3350
|
msgid "Date"
|
|
3350
3351
|
msgstr ""
|
|
3351
3352
|
|
|
3352
|
-
#: webmail/lib/imapemail.py:
|
|
3353
|
+
#: webmail/lib/imapemail.py:320 webmail/lib/imapemail.py:323
|
|
3353
3354
|
msgid "Original message"
|
|
3354
3355
|
msgstr ""
|
|
3355
3356
|
|
|
3356
|
-
#: webmail/lib/imaputils.py:
|
|
3357
|
+
#: webmail/lib/imaputils.py:222
|
|
3357
3358
|
msgid "Failed to retrieve hierarchy delimiter"
|
|
3358
3359
|
msgstr ""
|
|
3359
3360
|
|
|
3360
|
-
#: webmail/lib/imaputils.py:
|
|
3361
|
+
#: webmail/lib/imaputils.py:478
|
|
3361
3362
|
msgid "Inbox"
|
|
3362
3363
|
msgstr ""
|
|
3363
3364
|
|
|
3364
|
-
#: webmail/lib/imaputils.py:
|
|
3365
|
+
#: webmail/lib/imaputils.py:482
|
|
3365
3366
|
msgid "Drafts"
|
|
3366
3367
|
msgstr ""
|
|
3367
3368
|
|
|
3368
|
-
#: webmail/lib/imaputils.py:
|
|
3369
|
+
#: webmail/lib/imaputils.py:487
|
|
3369
3370
|
msgid "Junk"
|
|
3370
3371
|
msgstr ""
|
|
3371
3372
|
|
|
3372
|
-
#: webmail/lib/imaputils.py:
|
|
3373
|
+
#: webmail/lib/imaputils.py:492
|
|
3373
3374
|
msgid "Sent"
|
|
3374
3375
|
msgstr ""
|
|
3375
3376
|
|
|
3376
|
-
#: webmail/lib/imaputils.py:
|
|
3377
|
+
#: webmail/lib/imaputils.py:500
|
|
3378
|
+
msgid "Scheduled"
|
|
3379
|
+
msgstr ""
|
|
3380
|
+
|
|
3381
|
+
#: webmail/lib/imaputils.py:507
|
|
3377
3382
|
msgid "Trash"
|
|
3378
3383
|
msgstr ""
|
|
3379
3384
|
|
|
3380
|
-
#: webmail/
|
|
3385
|
+
#: webmail/serializers.py:220
|
|
3386
|
+
msgid "Moving scheduled messages is forbidden"
|
|
3387
|
+
msgstr ""
|
|
3388
|
+
|
|
3389
|
+
#: webmail/serializers.py:253
|
|
3390
|
+
msgid "Only datetime in the future is allowed"
|
|
3391
|
+
msgstr ""
|
|
3392
|
+
|
|
3393
|
+
#: webmail/serializers.py:258
|
|
3394
|
+
msgid "Provived datetime must be one minute in the future at least"
|
|
3395
|
+
msgstr ""
|
|
3396
|
+
|
|
3397
|
+
#: webmail/viewsets.py:359
|
|
3381
3398
|
#, python-format
|
|
3382
3399
|
msgid "Attachment is too big (limit: %s)"
|
|
3383
3400
|
msgstr ""
|