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
|
@@ -7,7 +7,7 @@ msgid ""
|
|
|
7
7
|
msgstr ""
|
|
8
8
|
"Project-Id-Version: \n"
|
|
9
9
|
"Report-Msgid-Bugs-To: \n"
|
|
10
|
-
"POT-Creation-Date:
|
|
10
|
+
"POT-Creation-Date: 2026-02-04 09:30+0100\n"
|
|
11
11
|
"PO-Revision-Date: 2023-02-17 22:03+0200\n"
|
|
12
12
|
"Last-Translator: Ossi Mäntylahti <ossiman@gmail.com>\n"
|
|
13
13
|
"Language-Team: \n"
|
|
@@ -47,14 +47,14 @@ msgid "Cannot be greater than domain quota"
|
|
|
47
47
|
msgstr "Ei voi olla suurempi kuin verkkotunnuksen kiintiö"
|
|
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 "Lupa evätty."
|
|
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 "Tämä kenttä on pakollinen"
|
|
60
60
|
|
|
@@ -65,7 +65,7 @@ msgstr ""
|
|
|
65
65
|
"Luettelo hallinnoiduista verkkotunnuksista (vain jälleenmyyjät ja "
|
|
66
66
|
"verkkotunnusten ylläpitäjät)."
|
|
67
67
|
|
|
68
|
-
#: admin/api/v1/serializers.py:337 admin/api/v2/serializers.py:
|
|
68
|
+
#: admin/api/v1/serializers.py:337 admin/api/v2/serializers.py:553
|
|
69
69
|
msgid "Not allowed for this role."
|
|
70
70
|
msgstr "Ei sallittu tässä roolissa."
|
|
71
71
|
|
|
@@ -73,13 +73,12 @@ msgstr "Ei sallittu tässä roolissa."
|
|
|
73
73
|
msgid "Must be equal to mailbox full_address"
|
|
74
74
|
msgstr "Täytyy olla yhtä suuri kuin postilaatikon koko osoite"
|
|
75
75
|
|
|
76
|
-
#: admin/api/v1/serializers.py:397 admin/api/v2/serializers.py:
|
|
77
|
-
#: calendars/serializers.py:
|
|
78
|
-
#: pdfcredentials/api/v2/serializers.py:91
|
|
76
|
+
#: admin/api/v1/serializers.py:397 admin/api/v2/serializers.py:605
|
|
77
|
+
#: calendars/serializers.py:182 pdfcredentials/api/v2/serializers.py:91
|
|
79
78
|
msgid "This field is required."
|
|
80
79
|
msgstr "Tämä kenttä on pakollinen."
|
|
81
80
|
|
|
82
|
-
#: admin/api/v1/serializers.py:409 admin/api/v2/serializers.py:
|
|
81
|
+
#: admin/api/v1/serializers.py:409 admin/api/v2/serializers.py:622
|
|
83
82
|
msgid "Local domain {} does not exist"
|
|
84
83
|
msgstr "Paikallista verkkotunnusta {} ei ole olemassa"
|
|
85
84
|
|
|
@@ -122,41 +121,41 @@ msgstr "Et voi määritellä rajoittamatonta kiintiötä."
|
|
|
122
121
|
msgid "User '%s' already exists"
|
|
123
122
|
msgstr "Käyttäjä '%s' on jo olemassa"
|
|
124
123
|
|
|
125
|
-
#: admin/api/v2/serializers.py:
|
|
124
|
+
#: admin/api/v2/serializers.py:256 admin/api/v2/serializers.py:262
|
|
126
125
|
msgid "Must be a positive integer"
|
|
127
126
|
msgstr "Täytyy olla positiivinen kokonaisluku"
|
|
128
127
|
|
|
129
|
-
#: admin/api/v2/serializers.py:
|
|
128
|
+
#: admin/api/v2/serializers.py:271
|
|
130
129
|
msgid "openssl not found, please make sure it is installed."
|
|
131
130
|
msgstr "openssl ei löydy, varmista, että se on asennettu."
|
|
132
131
|
|
|
133
|
-
#: admin/api/v2/serializers.py:
|
|
132
|
+
#: admin/api/v2/serializers.py:274 pdfcredentials/api/v2/serializers.py:84
|
|
134
133
|
msgid "Directory not found."
|
|
135
134
|
msgstr "Hakemistoa ei löydy."
|
|
136
135
|
|
|
137
|
-
#: admin/api/v2/serializers.py:
|
|
136
|
+
#: admin/api/v2/serializers.py:285
|
|
138
137
|
msgid "This field only allows valid IP addresses (or networks)"
|
|
139
138
|
msgstr ""
|
|
140
139
|
|
|
141
|
-
#: admin/api/v2/serializers.py:
|
|
140
|
+
#: admin/api/v2/serializers.py:298
|
|
142
141
|
msgid "Please disable imap migration before disabling this option."
|
|
143
142
|
msgstr ""
|
|
144
143
|
|
|
145
|
-
#: admin/api/v2/serializers.py:
|
|
144
|
+
#: admin/api/v2/serializers.py:311
|
|
146
145
|
msgid "Define at least one authorized network / address"
|
|
147
146
|
msgstr "Määritä vähintään yksi valtuutettu verkko/osoite"
|
|
148
147
|
|
|
149
|
-
#: admin/api/v2/serializers.py:
|
|
148
|
+
#: admin/api/v2/serializers.py:588
|
|
150
149
|
msgid "The left part of an email address can't be more than 64 characters."
|
|
151
150
|
msgstr ""
|
|
152
151
|
|
|
153
|
-
#: admin/api/v2/serializers.py:
|
|
152
|
+
#: admin/api/v2/serializers.py:610
|
|
154
153
|
#, fuzzy
|
|
155
154
|
#| msgid "A mailbox is required"
|
|
156
155
|
msgid "A mailbox is required to create aliases."
|
|
157
156
|
msgstr "Tarvitaan postilaatikko"
|
|
158
157
|
|
|
159
|
-
#: admin/api/v2/serializers.py:
|
|
158
|
+
#: admin/api/v2/serializers.py:783
|
|
160
159
|
#, fuzzy
|
|
161
160
|
#| msgid "Unknown tag {}"
|
|
162
161
|
msgid "Unknown status"
|
|
@@ -263,20 +262,30 @@ msgid "Check every domain against major DNSBL providers"
|
|
|
263
262
|
msgstr ""
|
|
264
263
|
"Tarkista jokainen verkkotunnus merkittävimmistä DNSBL-palveluntarjoajista"
|
|
265
264
|
|
|
266
|
-
#: admin/app_settings.py:
|
|
265
|
+
#: admin/app_settings.py:117
|
|
266
|
+
msgid "Notify domain admins about DNS issues"
|
|
267
|
+
msgstr ""
|
|
268
|
+
|
|
269
|
+
#: admin/app_settings.py:120
|
|
270
|
+
msgid ""
|
|
271
|
+
"Send a notification by email to domain administrators when DNS issues are "
|
|
272
|
+
"encountered"
|
|
273
|
+
msgstr ""
|
|
274
|
+
|
|
275
|
+
#: admin/app_settings.py:128
|
|
267
276
|
msgid "Custom DNS server"
|
|
268
277
|
msgstr "Mukautettu DNS-palvelin"
|
|
269
278
|
|
|
270
|
-
#: admin/app_settings.py:
|
|
279
|
+
#: admin/app_settings.py:130
|
|
271
280
|
msgid "Use a custom DNS server instead of local server configuration"
|
|
272
281
|
msgstr ""
|
|
273
282
|
"Käytä mukautettua DNS-palvelinta paikallisen palvelinkonfiguraation sijasta"
|
|
274
283
|
|
|
275
|
-
#: admin/app_settings.py:
|
|
284
|
+
#: admin/app_settings.py:138
|
|
276
285
|
msgid "DKIM keys storage directory"
|
|
277
286
|
msgstr "DKIM-avainten tallennushakemisto"
|
|
278
287
|
|
|
279
|
-
#: admin/app_settings.py:
|
|
288
|
+
#: admin/app_settings.py:140
|
|
280
289
|
msgid ""
|
|
281
290
|
"Absolute path of the directory where DKIM private keys will be stored. Make "
|
|
282
291
|
"sure this directory belongs to root user and is not readable by the outside "
|
|
@@ -286,19 +295,19 @@ msgstr ""
|
|
|
286
295
|
"että tämä hakemisto kuuluu root-käyttäjälle eikä ole ulkomaailman "
|
|
287
296
|
"luettavissa."
|
|
288
297
|
|
|
289
|
-
#: admin/app_settings.py:
|
|
298
|
+
#: admin/app_settings.py:149
|
|
290
299
|
msgid "Default DKIM key length"
|
|
291
300
|
msgstr "DKIM-avaimen oletuspituus"
|
|
292
301
|
|
|
293
|
-
#: admin/app_settings.py:
|
|
302
|
+
#: admin/app_settings.py:151
|
|
294
303
|
msgid "Default length in bits for newly generated DKIM keys."
|
|
295
304
|
msgstr "Uusien luotujen DKIM-avainten oletuspituus bitteinä."
|
|
296
305
|
|
|
297
|
-
#: admin/app_settings.py:
|
|
306
|
+
#: admin/app_settings.py:158
|
|
298
307
|
msgid "Default domain quota"
|
|
299
308
|
msgstr "Verkkotunnuksen oletuskiintiö"
|
|
300
309
|
|
|
301
|
-
#: admin/app_settings.py:
|
|
310
|
+
#: admin/app_settings.py:160
|
|
302
311
|
msgid ""
|
|
303
312
|
"Default quota (in MB) applied to freshly created domains with no value "
|
|
304
313
|
"specified. A value of 0 means no quota."
|
|
@@ -306,11 +315,11 @@ msgstr ""
|
|
|
306
315
|
"Oletuskiintiö (megatavua), jota sovelletaan juuri luotuihin toimialueisiin, "
|
|
307
316
|
"joille ei ole määritetty arvoa. Arvo 0 tarkoittaa, että kiintiötä ei ole."
|
|
308
317
|
|
|
309
|
-
#: admin/app_settings.py:
|
|
318
|
+
#: admin/app_settings.py:168
|
|
310
319
|
msgid "Default domain sending limit"
|
|
311
320
|
msgstr "Oletusarvo verkkotunnuksen lähetysrajalle"
|
|
312
321
|
|
|
313
|
-
#: admin/app_settings.py:
|
|
322
|
+
#: admin/app_settings.py:170
|
|
314
323
|
msgid ""
|
|
315
324
|
"Number of messages freshly created domains will be allowed to send per day. "
|
|
316
325
|
"Leave empty for no limit."
|
|
@@ -318,16 +327,16 @@ msgstr ""
|
|
|
318
327
|
"Viestien määrä, jonka juuri luodut verkkotunnukset saavat lähettää päivässä. "
|
|
319
328
|
"Jätä tyhjäksi, jos et halua rajoitusta."
|
|
320
329
|
|
|
321
|
-
#: admin/app_settings.py:
|
|
330
|
+
#: admin/app_settings.py:182 limits/app_settings.py:61
|
|
322
331
|
#: limits/app_settings.py:135 limits/constants.py:31 limits/constants.py:84
|
|
323
332
|
msgid "Mailboxes"
|
|
324
333
|
msgstr "Postilaatikot"
|
|
325
334
|
|
|
326
|
-
#: admin/app_settings.py:
|
|
335
|
+
#: admin/app_settings.py:188
|
|
327
336
|
msgid "Handle mailboxes on filesystem"
|
|
328
337
|
msgstr "Käsittele postilaatikoita tiedostojärjestelmässä"
|
|
329
338
|
|
|
330
|
-
#: admin/app_settings.py:
|
|
339
|
+
#: admin/app_settings.py:190
|
|
331
340
|
msgid ""
|
|
332
341
|
"Rename or remove mailboxes on the filesystem when they get renamed or "
|
|
333
342
|
"removed within Modoboa"
|
|
@@ -335,11 +344,11 @@ msgstr ""
|
|
|
335
344
|
"Nimeä uudelleen tai poista postilaatikot tiedostojärjestelmästä, kun ne "
|
|
336
345
|
"nimetään uudelleen tai poistetaan Modoboassa"
|
|
337
346
|
|
|
338
|
-
#: admin/app_settings.py:
|
|
347
|
+
#: admin/app_settings.py:198 admin/models/domain.py:36
|
|
339
348
|
msgid "Default mailbox quota"
|
|
340
349
|
msgstr "Oletuspostilaatikkokiintiö"
|
|
341
350
|
|
|
342
|
-
#: admin/app_settings.py:
|
|
351
|
+
#: admin/app_settings.py:200
|
|
343
352
|
#, fuzzy
|
|
344
353
|
#| msgid ""
|
|
345
354
|
#| "Default mailbox quota (in MB) applied to freshly created mailboxes with "
|
|
@@ -352,11 +361,11 @@ msgstr ""
|
|
|
352
361
|
"postilaatikoihin, joille ei ole määritetty arvoa. Arvo 0 tarkoittaa, ettei "
|
|
353
362
|
"kiintiötä ole."
|
|
354
363
|
|
|
355
|
-
#: admin/app_settings.py:
|
|
364
|
+
#: admin/app_settings.py:209
|
|
356
365
|
msgid "Default mailbox sending limit"
|
|
357
366
|
msgstr "Oletuspostilaatikon lähetysraja"
|
|
358
367
|
|
|
359
|
-
#: admin/app_settings.py:
|
|
368
|
+
#: admin/app_settings.py:211
|
|
360
369
|
msgid ""
|
|
361
370
|
"Number of messages freshly created mailboxes will be allowed to send per "
|
|
362
371
|
"day. Leave empty for no limit."
|
|
@@ -364,63 +373,63 @@ msgstr ""
|
|
|
364
373
|
"Viestien määrä, jonka juuri luodut postilaatikot saavat lähettää päivässä. "
|
|
365
374
|
"Jätä tyhjäksi, jos et halua rajoitusta."
|
|
366
375
|
|
|
367
|
-
#: admin/app_settings.py:
|
|
376
|
+
#: admin/app_settings.py:219
|
|
368
377
|
msgid "Automatic account removal"
|
|
369
378
|
msgstr "Tilin automaattinen poistaminen"
|
|
370
379
|
|
|
371
|
-
#: admin/app_settings.py:
|
|
380
|
+
#: admin/app_settings.py:221
|
|
372
381
|
msgid "When a mailbox is removed, also remove the associated account"
|
|
373
382
|
msgstr "Kun postilaatikko poistetaan, poistetaan myös siihen liittyvä tili"
|
|
374
383
|
|
|
375
|
-
#: admin/app_settings.py:
|
|
384
|
+
#: admin/app_settings.py:230
|
|
376
385
|
msgid "Automatic domain/mailbox creation"
|
|
377
386
|
msgstr "Automaattinen verkkotunnuksen/sähköpostilaatikon luominen"
|
|
378
387
|
|
|
379
|
-
#: admin/app_settings.py:
|
|
388
|
+
#: admin/app_settings.py:233
|
|
380
389
|
msgid "Create a domain and a mailbox when an account is automatically created."
|
|
381
390
|
msgstr "Luo verkkotunnus ja postilaatikko, kun tili luodaan automaattisesti."
|
|
382
391
|
|
|
383
|
-
#: admin/app_settings.py:
|
|
392
|
+
#: admin/app_settings.py:242
|
|
384
393
|
msgid "Create an alias when a mailbox is renamed"
|
|
385
394
|
msgstr "Luo alias, kun postilaatikko nimetään uudelleen"
|
|
386
395
|
|
|
387
|
-
#: admin/app_settings.py:
|
|
396
|
+
#: admin/app_settings.py:245
|
|
388
397
|
msgid "Create an alias using the old address when a mailbox is renamed."
|
|
389
398
|
msgstr ""
|
|
390
399
|
"Luo alias, joka käyttää vanhaa osoitetta, kun postilaatikko nimetään "
|
|
391
400
|
"uudelleen."
|
|
392
401
|
|
|
393
|
-
#: admin/app_settings.py:
|
|
402
|
+
#: admin/app_settings.py:257
|
|
394
403
|
#, fuzzy
|
|
395
404
|
#| msgid "alias"
|
|
396
405
|
msgid "Aliases"
|
|
397
406
|
msgstr "alias"
|
|
398
407
|
|
|
399
|
-
#: admin/app_settings.py:
|
|
408
|
+
#: admin/app_settings.py:263
|
|
400
409
|
msgid "Alias can target any domain"
|
|
401
410
|
msgstr ""
|
|
402
411
|
|
|
403
|
-
#: admin/app_settings.py:
|
|
412
|
+
#: admin/app_settings.py:265
|
|
404
413
|
msgid "Allow aliases to target any domain, not just the local domains."
|
|
405
414
|
msgstr ""
|
|
406
415
|
|
|
407
|
-
#: admin/app_settings.py:
|
|
416
|
+
#: admin/app_settings.py:272
|
|
408
417
|
msgid "Alias target block list"
|
|
409
418
|
msgstr ""
|
|
410
419
|
|
|
411
|
-
#: admin/app_settings.py:
|
|
420
|
+
#: admin/app_settings.py:274
|
|
412
421
|
msgid "A list of domains that aliases cannot target (comma separated)."
|
|
413
422
|
msgstr ""
|
|
414
423
|
|
|
415
|
-
#: admin/app_settings.py:
|
|
424
|
+
#: admin/app_settings.py:282
|
|
416
425
|
msgid "Alias target allow list"
|
|
417
426
|
msgstr ""
|
|
418
427
|
|
|
419
|
-
#: admin/app_settings.py:
|
|
428
|
+
#: admin/app_settings.py:284
|
|
420
429
|
msgid "A list of domains that aliases can target (comma separated)."
|
|
421
430
|
msgstr ""
|
|
422
431
|
|
|
423
|
-
#: admin/app_settings.py:
|
|
432
|
+
#: admin/app_settings.py:338 core/api/v2/viewsets.py:174
|
|
424
433
|
msgid "Administration"
|
|
425
434
|
msgstr "Hallinnointinäkymä"
|
|
426
435
|
|
|
@@ -440,6 +449,35 @@ msgstr "Avattu"
|
|
|
440
449
|
msgid "Closed"
|
|
441
450
|
msgstr "Suljettu"
|
|
442
451
|
|
|
452
|
+
#: admin/dns_checker.py:96
|
|
453
|
+
msgid "MX {} listed by DNSBL provider {}"
|
|
454
|
+
msgstr "MX {} DNSBL-palveluntarjoajan listaama {}"
|
|
455
|
+
|
|
456
|
+
#: admin/dns_checker.py:138
|
|
457
|
+
msgid "Domain has no MX record"
|
|
458
|
+
msgstr "Verkkotunnuksella ei ole MX-tietuetta"
|
|
459
|
+
|
|
460
|
+
#: admin/dns_checker.py:141
|
|
461
|
+
msgid "Domain {} has no MX record"
|
|
462
|
+
msgstr "Verkkotunnuksella {} ei ole MX-tietuetta"
|
|
463
|
+
|
|
464
|
+
#: admin/dns_checker.py:159
|
|
465
|
+
msgid "Invalid MX record: {}"
|
|
466
|
+
msgstr "Virheellinen MX-tietue: {}"
|
|
467
|
+
|
|
468
|
+
#: admin/dns_checker.py:166
|
|
469
|
+
#, python-brace-format
|
|
470
|
+
msgid "MX record for domain {0} is invalid: {1}"
|
|
471
|
+
msgstr "Verkkotunnuksen {0} MX-tietue on virheellinen: {1}"
|
|
472
|
+
|
|
473
|
+
#: admin/dns_checker.py:177
|
|
474
|
+
msgid "[modoboa] MX issue(s) for domain {}"
|
|
475
|
+
msgstr "[modoboa] MX-ongelma(t) verkkotunnukselle {}"
|
|
476
|
+
|
|
477
|
+
#: admin/dns_checker.py:224
|
|
478
|
+
msgid "[modoboa] DNSBL issue(s) for domain {}"
|
|
479
|
+
msgstr "[modoboa] DNSBL ongelma(t) verkkotunnukselle {}"
|
|
480
|
+
|
|
443
481
|
#: admin/handlers.py:179
|
|
444
482
|
msgid "domain alias"
|
|
445
483
|
msgstr "verkkotunnuksen alias"
|
|
@@ -462,8 +500,8 @@ msgstr "Sinulla ei ole oikeutta tuoda verkkotunnuksia"
|
|
|
462
500
|
msgid "You are not allowed to import domain aliases."
|
|
463
501
|
msgstr "Sinulla ei ole oikeutta tuoda verkkotunnuksia."
|
|
464
502
|
|
|
465
|
-
#: admin/lib.py:227 admin/tests/test_mx.py:
|
|
466
|
-
#: admin/tests/test_mx.py:
|
|
503
|
+
#: admin/lib.py:227 admin/tests/test_mx.py:139 admin/tests/test_mx.py:152
|
|
504
|
+
#: admin/tests/test_mx.py:157
|
|
467
505
|
#, python-format
|
|
468
506
|
msgid "No DNS record found for %s"
|
|
469
507
|
msgstr "DNS-tietuetta ei löytynyt %s"
|
|
@@ -473,11 +511,11 @@ msgstr "DNS-tietuetta ei löytynyt %s"
|
|
|
473
511
|
msgid "No %(type)s record for %(name)s"
|
|
474
512
|
msgstr "Ei %(type)s-tietueelle %(name)s"
|
|
475
513
|
|
|
476
|
-
#: admin/lib.py:234 admin/tests/test_mx.py:
|
|
514
|
+
#: admin/lib.py:234 admin/tests/test_mx.py:142
|
|
477
515
|
msgid "No working name servers found"
|
|
478
516
|
msgstr "Toimivia nimipalvelimia ei löytynyt"
|
|
479
517
|
|
|
480
|
-
#: admin/lib.py:237 admin/tests/test_mx.py:
|
|
518
|
+
#: admin/lib.py:237 admin/tests/test_mx.py:146
|
|
481
519
|
#, python-format
|
|
482
520
|
msgid "DNS resolution timeout, unable to query %s at the moment"
|
|
483
521
|
msgstr "DNS-kyselyn aikakatkaisu, kysely %s ei onnistu tällä hetkellä"
|
|
@@ -531,35 +569,6 @@ msgstr ""
|
|
|
531
569
|
msgid "Failed to generate DKIM public key"
|
|
532
570
|
msgstr "Ota käyttöön viestintä Modoboan julkisen API:n kanssa"
|
|
533
571
|
|
|
534
|
-
#: admin/management/commands/subcommands/_mx.py:133
|
|
535
|
-
msgid "MX {} listed by DNSBL provider {}"
|
|
536
|
-
msgstr "MX {} DNSBL-palveluntarjoajan listaama {}"
|
|
537
|
-
|
|
538
|
-
#: admin/management/commands/subcommands/_mx.py:174
|
|
539
|
-
msgid "Domain has no MX record"
|
|
540
|
-
msgstr "Verkkotunnuksella ei ole MX-tietuetta"
|
|
541
|
-
|
|
542
|
-
#: admin/management/commands/subcommands/_mx.py:177
|
|
543
|
-
msgid "Domain {} has no MX record"
|
|
544
|
-
msgstr "Verkkotunnuksella {} ei ole MX-tietuetta"
|
|
545
|
-
|
|
546
|
-
#: admin/management/commands/subcommands/_mx.py:195
|
|
547
|
-
msgid "Invalid MX record: {}"
|
|
548
|
-
msgstr "Virheellinen MX-tietue: {}"
|
|
549
|
-
|
|
550
|
-
#: admin/management/commands/subcommands/_mx.py:202
|
|
551
|
-
#, python-brace-format
|
|
552
|
-
msgid "MX record for domain {0} is invalid: {1}"
|
|
553
|
-
msgstr "Verkkotunnuksen {0} MX-tietue on virheellinen: {1}"
|
|
554
|
-
|
|
555
|
-
#: admin/management/commands/subcommands/_mx.py:213
|
|
556
|
-
msgid "[modoboa] MX issue(s) for domain {}"
|
|
557
|
-
msgstr "[modoboa] MX-ongelma(t) verkkotunnukselle {}"
|
|
558
|
-
|
|
559
|
-
#: admin/management/commands/subcommands/_mx.py:269
|
|
560
|
-
msgid "[modoboa] DNSBL issue(s) for domain {}"
|
|
561
|
-
msgstr "[modoboa] DNSBL ongelma(t) verkkotunnukselle {}"
|
|
562
|
-
|
|
563
572
|
#: admin/models/alias.py:43
|
|
564
573
|
msgid "Domain not found."
|
|
565
574
|
msgstr "Verkkotunnusta ei löydy."
|
|
@@ -759,17 +768,17 @@ msgstr ""
|
|
|
759
768
|
"Modoboa havaitsi, että verkkotunnuksella %(domain)s ei ole voimassa olevaa "
|
|
760
769
|
"MX-tietuetta:"
|
|
761
770
|
|
|
762
|
-
#: admin/tests/test_mx.py:
|
|
771
|
+
#: admin/tests/test_mx.py:141
|
|
763
772
|
#, python-format
|
|
764
773
|
msgid "No MX record for %s"
|
|
765
774
|
msgstr "Ei MX-tietuetta %s"
|
|
766
775
|
|
|
767
|
-
#: admin/tests/test_mx.py:
|
|
776
|
+
#: admin/tests/test_mx.py:162 admin/tests/test_mx.py:168
|
|
768
777
|
#, python-format
|
|
769
778
|
msgid "Invalid IP address format for %(domain)s; %(addr)s"
|
|
770
779
|
msgstr "Virheellinen IP-osoiteformaatti %(domain)s; %(addr)s"
|
|
771
780
|
|
|
772
|
-
#: admin/tests/test_mx.py:
|
|
781
|
+
#: admin/tests/test_mx.py:185
|
|
773
782
|
#, fuzzy, python-format
|
|
774
783
|
#| msgid "No MX record for %s"
|
|
775
784
|
msgid "No AAAA record for %s"
|
|
@@ -979,11 +988,11 @@ msgid ""
|
|
|
979
988
|
"database)"
|
|
980
989
|
msgstr ""
|
|
981
990
|
|
|
982
|
-
#: amavis/app_settings.py:236 webmail/app_settings.py:
|
|
991
|
+
#: amavis/app_settings.py:236 webmail/app_settings.py:155
|
|
983
992
|
msgid "Display"
|
|
984
993
|
msgstr ""
|
|
985
994
|
|
|
986
|
-
#: amavis/app_settings.py:243 webmail/app_settings.py:
|
|
995
|
+
#: amavis/app_settings.py:243 webmail/app_settings.py:181
|
|
987
996
|
#, fuzzy
|
|
988
997
|
#| msgid "Number of displayed items per page"
|
|
989
998
|
msgid "Number of displayed emails per page"
|
|
@@ -1266,7 +1275,7 @@ msgstr "Luo verkkotunnuksen ylläpitäjä"
|
|
|
1266
1275
|
msgid "Allow domain administrators to manage user calendars (read and write)"
|
|
1267
1276
|
msgstr "Salli tämän järjestelmänvalvojan pääsy käyttäjien postilaatikoihin"
|
|
1268
1277
|
|
|
1269
|
-
#: calendars/app_settings.py:60 core/app_settings.py:
|
|
1278
|
+
#: calendars/app_settings.py:60 core/app_settings.py:664
|
|
1270
1279
|
#: rspamd/app_settings.py:45
|
|
1271
1280
|
msgid "Miscellaneous"
|
|
1272
1281
|
msgstr "Sekalaiset"
|
|
@@ -1284,11 +1293,11 @@ msgstr ""
|
|
|
1284
1293
|
msgid "Calendars"
|
|
1285
1294
|
msgstr ""
|
|
1286
1295
|
|
|
1287
|
-
#: calendars/models.py:48 calendars/models.py:65 contacts/models.py:
|
|
1296
|
+
#: calendars/models.py:48 calendars/models.py:65 contacts/models.py:39
|
|
1288
1297
|
msgid "Server location is not set, please fix it."
|
|
1289
1298
|
msgstr ""
|
|
1290
1299
|
|
|
1291
|
-
#: calendars/viewsets.py:
|
|
1300
|
+
#: calendars/viewsets.py:199
|
|
1292
1301
|
msgid "Uploaded file is too big (max: {} bytes)"
|
|
1293
1302
|
msgstr ""
|
|
1294
1303
|
|
|
@@ -1375,7 +1384,7 @@ msgstr "Kaksivaiheinen tunnistus (2FA) on jo käytössä"
|
|
|
1375
1384
|
msgid "Failed TFA settings editing attempt from '%(addr)s' as user '%(user)s'"
|
|
1376
1385
|
msgstr ""
|
|
1377
1386
|
|
|
1378
|
-
#: core/api/v1/serializers.py:93 core/api/v2/serializers.py:
|
|
1387
|
+
#: core/api/v1/serializers.py:93 core/api/v2/serializers.py:438
|
|
1379
1388
|
#, fuzzy
|
|
1380
1389
|
#| msgid "Old password"
|
|
1381
1390
|
msgid "Invalid password"
|
|
@@ -1389,24 +1398,20 @@ msgstr "Kaksivaiheinen tunnistautuminen (2FA) ei ole käytössä"
|
|
|
1389
1398
|
msgid "Local"
|
|
1390
1399
|
msgstr "Paikallinen"
|
|
1391
1400
|
|
|
1392
|
-
#: core/api/v2/serializers.py:
|
|
1393
|
-
|
|
1394
|
-
msgstr "Käyttäjäprofiili"
|
|
1395
|
-
|
|
1396
|
-
#: core/api/v2/serializers.py:213 core/api/v2/serializers.py:221
|
|
1397
|
-
#: core/api/v2/serializers.py:228
|
|
1401
|
+
#: core/api/v2/serializers.py:206 core/api/v2/serializers.py:214
|
|
1402
|
+
#: core/api/v2/serializers.py:221
|
|
1398
1403
|
msgid "Invalid syntax"
|
|
1399
1404
|
msgstr "Virheellinen syntaksi"
|
|
1400
1405
|
|
|
1401
|
-
#: core/api/v2/serializers.py:
|
|
1406
|
+
#: core/api/v2/serializers.py:226
|
|
1402
1407
|
msgid "Invalid rounds number"
|
|
1403
1408
|
msgstr "Virheellinen kierrosluku"
|
|
1404
1409
|
|
|
1405
|
-
#: core/api/v2/serializers.py:
|
|
1410
|
+
#: core/api/v2/serializers.py:426 core/forms.py:81
|
|
1406
1411
|
msgid "This code is invalid"
|
|
1407
1412
|
msgstr "Tämä koodi on virheellinen"
|
|
1408
1413
|
|
|
1409
|
-
#: core/api/v2/serializers.py:
|
|
1414
|
+
#: core/api/v2/serializers.py:496 core/views/auth.py:213 core/views/auth.py:266
|
|
1410
1415
|
msgid "Please use the following code to recover your Modoboa password: {}"
|
|
1411
1416
|
msgstr "Käytä seuraavaa koodia saadaksesi takaisin Modoboa-salasanasi: {}"
|
|
1412
1417
|
|
|
@@ -1439,37 +1444,37 @@ msgid "Calendar"
|
|
|
1439
1444
|
msgstr ""
|
|
1440
1445
|
|
|
1441
1446
|
#: core/api/v2/viewsets.py:215 core/api/v2/viewsets.py:217
|
|
1442
|
-
#: webmail/app_settings.py:
|
|
1447
|
+
#: webmail/app_settings.py:295 webmail/app_settings.py:302
|
|
1443
1448
|
#, fuzzy
|
|
1444
1449
|
#| msgid "E-mail"
|
|
1445
1450
|
msgid "Webmail"
|
|
1446
1451
|
msgstr "Sähköpostiosoite"
|
|
1447
1452
|
|
|
1448
|
-
#: core/app_settings.py:
|
|
1453
|
+
#: core/app_settings.py:25
|
|
1449
1454
|
msgid "Authentication"
|
|
1450
1455
|
msgstr "Tunnistautuminen"
|
|
1451
1456
|
|
|
1452
|
-
#: core/app_settings.py:
|
|
1457
|
+
#: core/app_settings.py:31
|
|
1453
1458
|
msgid "Authentication type"
|
|
1454
1459
|
msgstr "Autentikointityyppi"
|
|
1455
1460
|
|
|
1456
|
-
#: core/app_settings.py:
|
|
1461
|
+
#: core/app_settings.py:33
|
|
1457
1462
|
msgid "The backend used for authentication"
|
|
1458
1463
|
msgstr "Tunnistautumiseen käytettävä taustajärjestelmä"
|
|
1459
1464
|
|
|
1460
|
-
#: core/app_settings.py:
|
|
1465
|
+
#: core/app_settings.py:40
|
|
1461
1466
|
msgid "Default password scheme"
|
|
1462
1467
|
msgstr "Oletussalasanojen järjestelmä"
|
|
1463
1468
|
|
|
1464
|
-
#: core/app_settings.py:
|
|
1469
|
+
#: core/app_settings.py:42
|
|
1465
1470
|
msgid "Scheme used to crypt mailbox passwords"
|
|
1466
1471
|
msgstr "Sähköpostilaatikon salasanojen salaamiseen käytetty järjestelmä"
|
|
1467
1472
|
|
|
1468
|
-
#: core/app_settings.py:
|
|
1473
|
+
#: core/app_settings.py:49
|
|
1469
1474
|
msgid "Rounds"
|
|
1470
1475
|
msgstr "Kierrokset"
|
|
1471
1476
|
|
|
1472
|
-
#: core/app_settings.py:
|
|
1477
|
+
#: core/app_settings.py:51
|
|
1473
1478
|
msgid ""
|
|
1474
1479
|
"Number of rounds to use (only used by sha256crypt and sha512crypt). Must be "
|
|
1475
1480
|
"between 1000 and 999999999, inclusive."
|
|
@@ -1477,47 +1482,47 @@ msgstr ""
|
|
|
1477
1482
|
"Käytettävien kierrosten määrä (vain sha256crypt ja sha512crypt käyttävät). "
|
|
1478
1483
|
"Arvon on oltava välillä 1000 ja 99999999999."
|
|
1479
1484
|
|
|
1480
|
-
#: core/app_settings.py:
|
|
1485
|
+
#: core/app_settings.py:61
|
|
1481
1486
|
msgid "Update password scheme at login"
|
|
1482
1487
|
msgstr "Päivitä salasanajärjestelmä kirjautumisen yhteydessä"
|
|
1483
1488
|
|
|
1484
|
-
#: core/app_settings.py:
|
|
1489
|
+
#: core/app_settings.py:64
|
|
1485
1490
|
msgid "Update user password at login to use the default password scheme"
|
|
1486
1491
|
msgstr ""
|
|
1487
1492
|
"Päivitä käyttäjän salasana sisäänkirjautumisen yhteydessä käyttämään "
|
|
1488
1493
|
"oletussalasanajärjestelmää"
|
|
1489
1494
|
|
|
1490
|
-
#: core/app_settings.py:
|
|
1495
|
+
#: core/app_settings.py:72
|
|
1491
1496
|
msgid "Default password"
|
|
1492
1497
|
msgstr "Oletussalasana"
|
|
1493
1498
|
|
|
1494
|
-
#: core/app_settings.py:
|
|
1499
|
+
#: core/app_settings.py:74
|
|
1495
1500
|
msgid "Default password for automatically created accounts."
|
|
1496
1501
|
msgstr "Automaattisesti luotujen tilien oletussalasana."
|
|
1497
1502
|
|
|
1498
|
-
#: core/app_settings.py:
|
|
1503
|
+
#: core/app_settings.py:81
|
|
1499
1504
|
msgid "Random password length"
|
|
1500
1505
|
msgstr "Satunnaisen salasanan pituus"
|
|
1501
1506
|
|
|
1502
|
-
#: core/app_settings.py:
|
|
1507
|
+
#: core/app_settings.py:83
|
|
1503
1508
|
msgid "Length of randomly generated passwords."
|
|
1504
1509
|
msgstr "Satunnaisesti luotujen salasanojen pituus."
|
|
1505
1510
|
|
|
1506
|
-
#: core/app_settings.py:
|
|
1511
|
+
#: core/app_settings.py:91
|
|
1507
1512
|
msgid "Allow special characters for random password"
|
|
1508
1513
|
msgstr ""
|
|
1509
1514
|
|
|
1510
|
-
#: core/app_settings.py:
|
|
1515
|
+
#: core/app_settings.py:94
|
|
1511
1516
|
#, fuzzy
|
|
1512
1517
|
#| msgid "Length of randomly generated passwords."
|
|
1513
1518
|
msgid "Enable special characters in randomly generated passwords."
|
|
1514
1519
|
msgstr "Satunnaisesti luotujen salasanojen pituus."
|
|
1515
1520
|
|
|
1516
|
-
#: core/app_settings.py:
|
|
1521
|
+
#: core/app_settings.py:102
|
|
1517
1522
|
msgid "Update password service URL"
|
|
1518
1523
|
msgstr "Päivitä salasanapalvelun URL-osoite"
|
|
1519
1524
|
|
|
1520
|
-
#: core/app_settings.py:
|
|
1525
|
+
#: core/app_settings.py:104
|
|
1521
1526
|
msgid ""
|
|
1522
1527
|
"The URL of an external page where users will be able to update their "
|
|
1523
1528
|
"password. It applies only to non local users, ie. those automatically "
|
|
@@ -1527,106 +1532,106 @@ msgstr ""
|
|
|
1527
1532
|
"Koskee vain muita kuin paikallisia käyttäjiä. Eli niitä, jotka luodaan "
|
|
1528
1533
|
"automaattisesti onnistuneen ulkoisen todennuksen jälkeen (LDAP, SMTP)."
|
|
1529
1534
|
|
|
1530
|
-
#: core/app_settings.py:
|
|
1535
|
+
#: core/app_settings.py:114
|
|
1531
1536
|
msgid "Password recovery announcement"
|
|
1532
1537
|
msgstr "Ilmoitus salasanan palautuksesta"
|
|
1533
1538
|
|
|
1534
|
-
#: core/app_settings.py:
|
|
1539
|
+
#: core/app_settings.py:116
|
|
1535
1540
|
msgid "A temporary message that will be displayed on the reset password page."
|
|
1536
1541
|
msgstr "Väliaikainen viesti, joka näytetään salasanan nollaussivulla."
|
|
1537
1542
|
|
|
1538
|
-
#: core/app_settings.py:
|
|
1543
|
+
#: core/app_settings.py:125
|
|
1539
1544
|
msgid "Enable password recovery by SMS"
|
|
1540
1545
|
msgstr "Ota salasanan palautus käyttöön tekstiviestillä"
|
|
1541
1546
|
|
|
1542
|
-
#: core/app_settings.py:
|
|
1547
|
+
#: core/app_settings.py:128
|
|
1543
1548
|
msgid "Enable password recovery by SMS for users who filled a phone number."
|
|
1544
1549
|
msgstr ""
|
|
1545
1550
|
"Ota käyttöön salasanan palautus tekstiviestillä käyttäjille, jotka ovat "
|
|
1546
1551
|
"täyttäneet puhelinnumeron."
|
|
1547
1552
|
|
|
1548
|
-
#: core/app_settings.py:
|
|
1553
|
+
#: core/app_settings.py:136
|
|
1549
1554
|
msgid "SMS provider"
|
|
1550
1555
|
msgstr "SMS-palveluntarjoaja"
|
|
1551
1556
|
|
|
1552
|
-
#: core/app_settings.py:
|
|
1557
|
+
#: core/app_settings.py:139
|
|
1553
1558
|
msgid "Choose a provider to send password recovery SMS"
|
|
1554
1559
|
msgstr ""
|
|
1555
1560
|
"Valitse palveluntarjoaja, joka lähettää salasanan palautustekstiviestin"
|
|
1556
1561
|
|
|
1557
|
-
#: core/app_settings.py:
|
|
1562
|
+
#: core/app_settings.py:151
|
|
1558
1563
|
msgid "LDAP"
|
|
1559
1564
|
msgstr ""
|
|
1560
1565
|
|
|
1561
|
-
#: core/app_settings.py:
|
|
1566
|
+
#: core/app_settings.py:157 sievefilters/app_settings.py:18
|
|
1562
1567
|
#: sievefilters/app_settings.py:51 webmail/app_settings.py:36
|
|
1563
|
-
#: webmail/app_settings.py:73
|
|
1568
|
+
#: webmail/app_settings.py:73 webmail/app_settings.py:119
|
|
1564
1569
|
msgid "Server address"
|
|
1565
1570
|
msgstr "Palvelimen osoite"
|
|
1566
1571
|
|
|
1567
|
-
#: core/app_settings.py:
|
|
1572
|
+
#: core/app_settings.py:159
|
|
1568
1573
|
msgid "The IP address or the DNS name of the LDAP server"
|
|
1569
1574
|
msgstr "LDAP-palvelimen IP-osoite tai DNS-nimi"
|
|
1570
1575
|
|
|
1571
|
-
#: core/app_settings.py:
|
|
1576
|
+
#: core/app_settings.py:166 sievefilters/app_settings.py:25
|
|
1572
1577
|
#: sievefilters/app_settings.py:67 webmail/app_settings.py:54
|
|
1573
|
-
#: webmail/app_settings.py:91
|
|
1578
|
+
#: webmail/app_settings.py:91 webmail/app_settings.py:137
|
|
1574
1579
|
msgid "Server port"
|
|
1575
1580
|
msgstr "Palvelimen portti"
|
|
1576
1581
|
|
|
1577
|
-
#: core/app_settings.py:
|
|
1582
|
+
#: core/app_settings.py:168
|
|
1578
1583
|
msgid "The TCP port number used by the LDAP server"
|
|
1579
1584
|
msgstr "LDAP-palvelimen käyttämän TCP-portin numero"
|
|
1580
1585
|
|
|
1581
|
-
#: core/app_settings.py:
|
|
1586
|
+
#: core/app_settings.py:176
|
|
1582
1587
|
msgid "Enable secondary server (fallback)"
|
|
1583
1588
|
msgstr "Toisen palvelimen käyttöönotto (varapalvelin)"
|
|
1584
1589
|
|
|
1585
|
-
#: core/app_settings.py:
|
|
1590
|
+
#: core/app_settings.py:179
|
|
1586
1591
|
msgid ""
|
|
1587
1592
|
"Enable a secondary LDAP server which will be used if the primary one fails"
|
|
1588
1593
|
msgstr ""
|
|
1589
1594
|
"Ota käyttöön toissijainen LDAP-palvelin, jota käytetään, jos ensisijainen "
|
|
1590
1595
|
"palvelin ei toimi"
|
|
1591
1596
|
|
|
1592
|
-
#: core/app_settings.py:
|
|
1597
|
+
#: core/app_settings.py:187
|
|
1593
1598
|
msgid "Secondary server address"
|
|
1594
1599
|
msgstr "Toisen palvelimen osoite"
|
|
1595
1600
|
|
|
1596
|
-
#: core/app_settings.py:
|
|
1601
|
+
#: core/app_settings.py:190
|
|
1597
1602
|
msgid "The IP address or the DNS name of the seondary LDAP server"
|
|
1598
1603
|
msgstr "Toisen LDAP-palvelimen IP-osoite tai DNS-nimi"
|
|
1599
1604
|
|
|
1600
|
-
#: core/app_settings.py:
|
|
1605
|
+
#: core/app_settings.py:197
|
|
1601
1606
|
msgid "Secondary server port"
|
|
1602
1607
|
msgstr "Toisen palvelimen portti"
|
|
1603
1608
|
|
|
1604
|
-
#: core/app_settings.py:
|
|
1609
|
+
#: core/app_settings.py:200
|
|
1605
1610
|
msgid "The TCP port number used by the LDAP secondary server"
|
|
1606
1611
|
msgstr "LDAP:n toissijaisen palvelimen käyttämä TCP-portin numero"
|
|
1607
1612
|
|
|
1608
|
-
#: core/app_settings.py:
|
|
1613
|
+
#: core/app_settings.py:207 sievefilters/app_settings.py:58
|
|
1609
1614
|
#: webmail/app_settings.py:45
|
|
1610
1615
|
msgid "Use a secured connection"
|
|
1611
1616
|
msgstr "Käytä suojattua yhteyttä"
|
|
1612
1617
|
|
|
1613
|
-
#: core/app_settings.py:
|
|
1618
|
+
#: core/app_settings.py:209
|
|
1614
1619
|
msgid "Use an SSL/STARTTLS connection to access the LDAP server"
|
|
1615
1620
|
msgstr "Käytä SSL/STARTTLS-yhteyttä LDAP-palvelimen käyttämiseen"
|
|
1616
1621
|
|
|
1617
|
-
#: core/app_settings.py:
|
|
1622
|
+
#: core/app_settings.py:216
|
|
1618
1623
|
msgid "Active Directory"
|
|
1619
1624
|
msgstr "Active Directory"
|
|
1620
1625
|
|
|
1621
|
-
#: core/app_settings.py:
|
|
1626
|
+
#: core/app_settings.py:218
|
|
1622
1627
|
msgid "Tell if the LDAP server is an Active Directory one"
|
|
1623
1628
|
msgstr "Kerro, onko LDAP-palvelin Active Directory -palvelin"
|
|
1624
1629
|
|
|
1625
|
-
#: core/app_settings.py:
|
|
1630
|
+
#: core/app_settings.py:225
|
|
1626
1631
|
msgid "Administrator groups"
|
|
1627
1632
|
msgstr "Järjestelmänvalvojien ryhmät"
|
|
1628
1633
|
|
|
1629
|
-
#: core/app_settings.py:
|
|
1634
|
+
#: core/app_settings.py:227
|
|
1630
1635
|
msgid ""
|
|
1631
1636
|
"Members of those LDAP Posix groups will be created as domain administrators. "
|
|
1632
1637
|
"Use ';' characters to separate groups."
|
|
@@ -1634,47 +1639,47 @@ msgstr ""
|
|
|
1634
1639
|
"Näiden LDAP Posix -ryhmien jäsenet luodaan verkkotunnuksen "
|
|
1635
1640
|
"järjestelmänvalvojiksi. Käytä ';'-merkkejä ryhmien erottamiseen."
|
|
1636
1641
|
|
|
1637
|
-
#: core/app_settings.py:
|
|
1642
|
+
#: core/app_settings.py:236
|
|
1638
1643
|
msgid "Group type"
|
|
1639
1644
|
msgstr "Ryhmän tyyppi"
|
|
1640
1645
|
|
|
1641
|
-
#: core/app_settings.py:
|
|
1646
|
+
#: core/app_settings.py:238
|
|
1642
1647
|
msgid "The LDAP group type to use with your directory."
|
|
1643
1648
|
msgstr "LDAP-ryhmän tyyppi, jota käytetään hakemiston kanssa."
|
|
1644
1649
|
|
|
1645
|
-
#: core/app_settings.py:
|
|
1650
|
+
#: core/app_settings.py:245
|
|
1646
1651
|
msgid "Groups search base"
|
|
1647
1652
|
msgstr "Ryhmien hakupohja"
|
|
1648
1653
|
|
|
1649
|
-
#: core/app_settings.py:
|
|
1654
|
+
#: core/app_settings.py:247
|
|
1650
1655
|
msgid "The distinguished name of the search base used to find groups"
|
|
1651
1656
|
msgstr "Ryhmien etsimiseen käytettävän hakupohjan erottuva nimi"
|
|
1652
1657
|
|
|
1653
|
-
#: core/app_settings.py:
|
|
1658
|
+
#: core/app_settings.py:255
|
|
1654
1659
|
msgid "Password attribute"
|
|
1655
1660
|
msgstr "Salasana-attribuutti"
|
|
1656
1661
|
|
|
1657
|
-
#: core/app_settings.py:
|
|
1662
|
+
#: core/app_settings.py:257
|
|
1658
1663
|
msgid "The attribute used to store user passwords"
|
|
1659
1664
|
msgstr "Määrite, jota käytetään käyttäjien salasanojen tallentamiseen"
|
|
1660
1665
|
|
|
1661
|
-
#: core/app_settings.py:
|
|
1666
|
+
#: core/app_settings.py:264
|
|
1662
1667
|
msgid "LDAP authentication settings"
|
|
1663
1668
|
msgstr "LDAP-todennusasetukset"
|
|
1664
1669
|
|
|
1665
|
-
#: core/app_settings.py:
|
|
1670
|
+
#: core/app_settings.py:272
|
|
1666
1671
|
msgid "Authentication method"
|
|
1667
1672
|
msgstr "Tunnistusmenetelmä"
|
|
1668
1673
|
|
|
1669
|
-
#: core/app_settings.py:
|
|
1674
|
+
#: core/app_settings.py:275
|
|
1670
1675
|
msgid "Choose the authentication method to use"
|
|
1671
1676
|
msgstr "Valitse käytettävä todennusmenetelmä"
|
|
1672
1677
|
|
|
1673
|
-
#: core/app_settings.py:
|
|
1678
|
+
#: core/app_settings.py:282 core/app_settings.py:345
|
|
1674
1679
|
msgid "Bind DN"
|
|
1675
1680
|
msgstr "Sido DN"
|
|
1676
1681
|
|
|
1677
|
-
#: core/app_settings.py:
|
|
1682
|
+
#: core/app_settings.py:284 core/app_settings.py:347
|
|
1678
1683
|
msgid ""
|
|
1679
1684
|
"The distinguished name to use when binding to the LDAP server. Leave empty "
|
|
1680
1685
|
"for an anonymous bind"
|
|
@@ -1682,29 +1687,29 @@ msgstr ""
|
|
|
1682
1687
|
"Erotusnimi, jota käytetään LDAP-palvelimeen sitoutumisessa. Jätä tyhjäksi "
|
|
1683
1688
|
"anonyymiä sidontaa varten"
|
|
1684
1689
|
|
|
1685
|
-
#: core/app_settings.py:
|
|
1690
|
+
#: core/app_settings.py:293 core/app_settings.py:355
|
|
1686
1691
|
msgid "Bind password"
|
|
1687
1692
|
msgstr "Sido salasana"
|
|
1688
1693
|
|
|
1689
|
-
#: core/app_settings.py:
|
|
1694
|
+
#: core/app_settings.py:295 core/app_settings.py:357
|
|
1690
1695
|
msgid "The password to use when binding to the LDAP server (with 'Bind DN')"
|
|
1691
1696
|
msgstr ""
|
|
1692
1697
|
"Salasana, jota käytetään LDAP-palvelimeen sitoutumisessa (komennolla 'Bind "
|
|
1693
1698
|
"DN')"
|
|
1694
1699
|
|
|
1695
|
-
#: core/app_settings.py:
|
|
1700
|
+
#: core/app_settings.py:305 core/app_settings.py:410
|
|
1696
1701
|
msgid "Users search base"
|
|
1697
1702
|
msgstr "Käyttäjien hakupohja"
|
|
1698
1703
|
|
|
1699
|
-
#: core/app_settings.py:
|
|
1704
|
+
#: core/app_settings.py:307 core/app_settings.py:412
|
|
1700
1705
|
msgid "The distinguished name of the search base used to find users"
|
|
1701
1706
|
msgstr "Käyttäjien etsimiseen käytettävän hakupohjan erisnimi"
|
|
1702
1707
|
|
|
1703
|
-
#: core/app_settings.py:
|
|
1708
|
+
#: core/app_settings.py:316 core/app_settings.py:421
|
|
1704
1709
|
msgid "Search filter"
|
|
1705
1710
|
msgstr "Etsi suodatin"
|
|
1706
1711
|
|
|
1707
|
-
#: core/app_settings.py:
|
|
1712
|
+
#: core/app_settings.py:318 core/app_settings.py:423
|
|
1708
1713
|
msgid ""
|
|
1709
1714
|
"An optional filter string (e.g. '(objectClass=person)'). In order to be "
|
|
1710
1715
|
"valid, it must be enclosed in parentheses."
|
|
@@ -1712,11 +1717,11 @@ msgstr ""
|
|
|
1712
1717
|
"Valinnainen suodatinmerkkijono (esim. '(objectClass=person)'). Tämän on "
|
|
1713
1718
|
"oltava suluissa."
|
|
1714
1719
|
|
|
1715
|
-
#: core/app_settings.py:
|
|
1720
|
+
#: core/app_settings.py:327
|
|
1716
1721
|
msgid "User DN template"
|
|
1717
1722
|
msgstr "Käyttäjän DN-malli"
|
|
1718
1723
|
|
|
1719
|
-
#: core/app_settings.py:
|
|
1724
|
+
#: core/app_settings.py:329
|
|
1720
1725
|
#, python-format
|
|
1721
1726
|
msgid ""
|
|
1722
1727
|
"The template used to construct a user's DN. It should contain one "
|
|
@@ -1725,26 +1730,26 @@ msgstr ""
|
|
|
1725
1730
|
"Käyttäjän DN:n rakentamiseen käytettävä malli. Sen tulisi sisältää yksi "
|
|
1726
1731
|
"paikanvaraaja (eli %(user)s)"
|
|
1727
1732
|
|
|
1728
|
-
#: core/app_settings.py:
|
|
1733
|
+
#: core/app_settings.py:338
|
|
1729
1734
|
msgid "LDAP synchronization settings"
|
|
1730
1735
|
msgstr "LDAP-synkronointiasetukset"
|
|
1731
1736
|
|
|
1732
|
-
#: core/app_settings.py:
|
|
1737
|
+
#: core/app_settings.py:366
|
|
1733
1738
|
msgid "Enable export to LDAP"
|
|
1734
1739
|
msgstr "Ota käyttöön vienti LDAP:iin"
|
|
1735
1740
|
|
|
1736
|
-
#: core/app_settings.py:
|
|
1741
|
+
#: core/app_settings.py:368
|
|
1737
1742
|
msgid ""
|
|
1738
1743
|
"Enable automatic synchronization between local database and LDAP directory"
|
|
1739
1744
|
msgstr ""
|
|
1740
1745
|
"Ota käyttöön automaattinen synkronointi paikallisen tietokannan ja LDAP-"
|
|
1741
1746
|
"hakemiston välillä"
|
|
1742
1747
|
|
|
1743
|
-
#: core/app_settings.py:
|
|
1748
|
+
#: core/app_settings.py:377
|
|
1744
1749
|
msgid "Delete remote LDAP account when local account is deleted"
|
|
1745
1750
|
msgstr "Etäisen LDAP-tilin poistaminen, kun paikallinen tili poistetaan"
|
|
1746
1751
|
|
|
1747
|
-
#: core/app_settings.py:
|
|
1752
|
+
#: core/app_settings.py:380
|
|
1748
1753
|
msgid ""
|
|
1749
1754
|
"Delete remote LDAP account when local account is deleted, otherwise it will "
|
|
1750
1755
|
"be disabled."
|
|
@@ -1752,11 +1757,11 @@ msgstr ""
|
|
|
1752
1757
|
"Poista etä-LDAP-tili, kun paikallinen tili poistetaan. Muuten se poistetaan "
|
|
1753
1758
|
"käytöstä."
|
|
1754
1759
|
|
|
1755
|
-
#: core/app_settings.py:
|
|
1760
|
+
#: core/app_settings.py:389
|
|
1756
1761
|
msgid "Account DN template"
|
|
1757
1762
|
msgstr "Tilin DN-malli"
|
|
1758
1763
|
|
|
1759
|
-
#: core/app_settings.py:
|
|
1764
|
+
#: core/app_settings.py:391
|
|
1760
1765
|
#, python-format
|
|
1761
1766
|
msgid ""
|
|
1762
1767
|
"The template used to construct an account's DN. It should contain one "
|
|
@@ -1765,207 +1770,207 @@ msgstr ""
|
|
|
1765
1770
|
"Malli, jota käytetään tilin DN:n muodostamiseen. Sen tulisi sisältää yksi "
|
|
1766
1771
|
"paikanvaraaja (eli %(user)s)"
|
|
1767
1772
|
|
|
1768
|
-
#: core/app_settings.py:
|
|
1773
|
+
#: core/app_settings.py:400
|
|
1769
1774
|
msgid "Enable import from LDAP"
|
|
1770
1775
|
msgstr "Ota käyttöön tuonti LDAP:stä"
|
|
1771
1776
|
|
|
1772
|
-
#: core/app_settings.py:
|
|
1777
|
+
#: core/app_settings.py:402
|
|
1773
1778
|
msgid "Enable account synchronization from LDAP directory to local database"
|
|
1774
1779
|
msgstr ""
|
|
1775
1780
|
"Tilien synkronoinnin käyttöönotto LDAP-hakemistosta paikalliseen tietokantaan"
|
|
1776
1781
|
|
|
1777
|
-
#: core/app_settings.py:
|
|
1782
|
+
#: core/app_settings.py:432
|
|
1778
1783
|
msgid "Username attribute"
|
|
1779
1784
|
msgstr "Käyttäjätunnus-määrite"
|
|
1780
1785
|
|
|
1781
|
-
#: core/app_settings.py:
|
|
1786
|
+
#: core/app_settings.py:434
|
|
1782
1787
|
msgid "The name of the LDAP attribute where the username can be found."
|
|
1783
1788
|
msgstr "Sen LDAP-attribuutin nimi, josta käyttäjänimi löytyy."
|
|
1784
1789
|
|
|
1785
|
-
#: core/app_settings.py:
|
|
1790
|
+
#: core/app_settings.py:443
|
|
1786
1791
|
msgid "Enable Dovecot LDAP sync"
|
|
1787
1792
|
msgstr "Ota Dovecot LDAP-synkronointi käyttöön"
|
|
1788
1793
|
|
|
1789
|
-
#: core/app_settings.py:
|
|
1794
|
+
#: core/app_settings.py:445
|
|
1790
1795
|
msgid "LDAP authentication settings will be applied to Dovecot configuration."
|
|
1791
1796
|
msgstr "LDAP-todennusasetuksia sovelletaan Dovecot-konfiguraatioon."
|
|
1792
1797
|
|
|
1793
|
-
#: core/app_settings.py:
|
|
1798
|
+
#: core/app_settings.py:453
|
|
1794
1799
|
msgid "Dovecot LDAP config file"
|
|
1795
1800
|
msgstr "Dovecot LDAP -asetustiedosto"
|
|
1796
1801
|
|
|
1797
|
-
#: core/app_settings.py:
|
|
1802
|
+
#: core/app_settings.py:455
|
|
1798
1803
|
msgid ""
|
|
1799
1804
|
"Location of the configuration file which contains Dovecot LDAP settings."
|
|
1800
1805
|
msgstr "Dovecotin LDAP-asetukset sisältävän määritystiedoston sijainti."
|
|
1801
1806
|
|
|
1802
|
-
#: core/app_settings.py:
|
|
1807
|
+
#: core/app_settings.py:468
|
|
1803
1808
|
msgid "Dashboard"
|
|
1804
1809
|
msgstr "Työpöytä"
|
|
1805
1810
|
|
|
1806
|
-
#: core/app_settings.py:
|
|
1811
|
+
#: core/app_settings.py:474
|
|
1807
1812
|
#, fuzzy
|
|
1808
1813
|
#| msgid "spam messages"
|
|
1809
1814
|
msgid "Custom welcome message"
|
|
1810
1815
|
msgstr "roskapostiviestit"
|
|
1811
1816
|
|
|
1812
|
-
#: core/app_settings.py:
|
|
1817
|
+
#: core/app_settings.py:476
|
|
1813
1818
|
#, fuzzy
|
|
1814
1819
|
#| msgid ""
|
|
1815
1820
|
#| "A temporary message that will be displayed on the reset password page."
|
|
1816
1821
|
msgid "A welcome message that will be displayed instead the default one"
|
|
1817
1822
|
msgstr "Väliaikainen viesti, joka näytetään salasanan nollaussivulla."
|
|
1818
1823
|
|
|
1819
|
-
#: core/app_settings.py:
|
|
1824
|
+
#: core/app_settings.py:483
|
|
1820
1825
|
msgid "Custom RSS feed"
|
|
1821
1826
|
msgstr "Mukautettu RSS-syöte"
|
|
1822
1827
|
|
|
1823
|
-
#: core/app_settings.py:
|
|
1828
|
+
#: core/app_settings.py:485
|
|
1824
1829
|
msgid "Display custom RSS feed to resellers and domain administrators"
|
|
1825
1830
|
msgstr ""
|
|
1826
1831
|
"Näytä mukautettu RSS-syöte jälleenmyyjille ja verkkotunnuksen ylläpitäjille"
|
|
1827
1832
|
|
|
1828
|
-
#: core/app_settings.py:
|
|
1833
|
+
#: core/app_settings.py:494
|
|
1829
1834
|
#, fuzzy
|
|
1830
1835
|
#| msgid "Display custom RSS feed to resellers and domain administrators"
|
|
1831
1836
|
msgid "Display custom RSS feed to super admins"
|
|
1832
1837
|
msgstr ""
|
|
1833
1838
|
"Näytä mukautettu RSS-syöte jälleenmyyjille ja verkkotunnuksen ylläpitäjille"
|
|
1834
1839
|
|
|
1835
|
-
#: core/app_settings.py:
|
|
1840
|
+
#: core/app_settings.py:497
|
|
1836
1841
|
#, fuzzy
|
|
1837
1842
|
#| msgid "Display custom RSS feed to resellers and domain administrators"
|
|
1838
1843
|
msgid "Display custom RSS feed also to super administrators"
|
|
1839
1844
|
msgstr ""
|
|
1840
1845
|
"Näytä mukautettu RSS-syöte jälleenmyyjille ja verkkotunnuksen ylläpitäjille"
|
|
1841
1846
|
|
|
1842
|
-
#: core/app_settings.py:
|
|
1847
|
+
#: core/app_settings.py:505
|
|
1843
1848
|
msgid "Hide features widget"
|
|
1844
1849
|
msgstr "Piilota ominaisuudet-widget"
|
|
1845
1850
|
|
|
1846
|
-
#: core/app_settings.py:
|
|
1851
|
+
#: core/app_settings.py:507
|
|
1847
1852
|
msgid "Hide features widget for resellers and domain administrators"
|
|
1848
1853
|
msgstr ""
|
|
1849
1854
|
"Piilota ominaisuudet-widget jälleenmyyjiltä ja verkkotunnuksen ylläpitäjiltä"
|
|
1850
1855
|
|
|
1851
|
-
#: core/app_settings.py:
|
|
1856
|
+
#: core/app_settings.py:519
|
|
1852
1857
|
msgid "Theme"
|
|
1853
1858
|
msgstr ""
|
|
1854
1859
|
|
|
1855
|
-
#: core/app_settings.py:
|
|
1860
|
+
#: core/app_settings.py:525
|
|
1856
1861
|
msgid "Primary theme color"
|
|
1857
1862
|
msgstr ""
|
|
1858
1863
|
|
|
1859
|
-
#: core/app_settings.py:
|
|
1864
|
+
#: core/app_settings.py:527
|
|
1860
1865
|
msgid ""
|
|
1861
1866
|
"Primary color of the theme (hexadecimal code), used as the background color "
|
|
1862
1867
|
"of the left menu for example"
|
|
1863
1868
|
msgstr ""
|
|
1864
1869
|
|
|
1865
|
-
#: core/app_settings.py:
|
|
1870
|
+
#: core/app_settings.py:536
|
|
1866
1871
|
msgid "Primary theme color (lighter version)"
|
|
1867
1872
|
msgstr ""
|
|
1868
1873
|
|
|
1869
|
-
#: core/app_settings.py:
|
|
1874
|
+
#: core/app_settings.py:539 core/app_settings.py:551
|
|
1870
1875
|
msgid "Primary color of the theme (hexadecimal code)"
|
|
1871
1876
|
msgstr ""
|
|
1872
1877
|
|
|
1873
|
-
#: core/app_settings.py:
|
|
1878
|
+
#: core/app_settings.py:548
|
|
1874
1879
|
msgid "Primary theme color (darker version)"
|
|
1875
1880
|
msgstr ""
|
|
1876
1881
|
|
|
1877
|
-
#: core/app_settings.py:
|
|
1882
|
+
#: core/app_settings.py:559
|
|
1878
1883
|
#, fuzzy
|
|
1879
1884
|
#| msgid "Secondary email"
|
|
1880
1885
|
msgid "Secondary theme color"
|
|
1881
1886
|
msgstr "Toissijainen sähköpostiosoite"
|
|
1882
1887
|
|
|
1883
|
-
#: core/app_settings.py:
|
|
1888
|
+
#: core/app_settings.py:561
|
|
1884
1889
|
msgid ""
|
|
1885
1890
|
"Secondary color of the theme (hexadecimal code), used as the background "
|
|
1886
1891
|
"color of some buttons for example"
|
|
1887
1892
|
msgstr ""
|
|
1888
1893
|
|
|
1889
|
-
#: core/app_settings.py:
|
|
1894
|
+
#: core/app_settings.py:569
|
|
1890
1895
|
msgid "Labels theme color"
|
|
1891
1896
|
msgstr ""
|
|
1892
1897
|
|
|
1893
|
-
#: core/app_settings.py:
|
|
1898
|
+
#: core/app_settings.py:571
|
|
1894
1899
|
msgid "Theme color for labels (hexadecimal code)"
|
|
1895
1900
|
msgstr ""
|
|
1896
1901
|
|
|
1897
|
-
#: core/app_settings.py:
|
|
1902
|
+
#: core/app_settings.py:583
|
|
1898
1903
|
msgid "Notifications"
|
|
1899
1904
|
msgstr "Ilmoitukset"
|
|
1900
1905
|
|
|
1901
|
-
#: core/app_settings.py:
|
|
1906
|
+
#: core/app_settings.py:589
|
|
1902
1907
|
msgid "Sender address"
|
|
1903
1908
|
msgstr "Lähettäjän osoite"
|
|
1904
1909
|
|
|
1905
|
-
#: core/app_settings.py:
|
|
1910
|
+
#: core/app_settings.py:591
|
|
1906
1911
|
msgid "Email address used to send notifications."
|
|
1907
1912
|
msgstr "Ilmoitusten lähettämiseen käytettävä sähköpostiosoite."
|
|
1908
1913
|
|
|
1909
|
-
#: core/app_settings.py:
|
|
1914
|
+
#: core/app_settings.py:602
|
|
1910
1915
|
msgid "Public API"
|
|
1911
1916
|
msgstr "Julkinen API"
|
|
1912
1917
|
|
|
1913
|
-
#: core/app_settings.py:
|
|
1918
|
+
#: core/app_settings.py:608
|
|
1914
1919
|
msgid "Enable communication"
|
|
1915
1920
|
msgstr "Ota viestintä käyttöön"
|
|
1916
1921
|
|
|
1917
|
-
#: core/app_settings.py:
|
|
1922
|
+
#: core/app_settings.py:610 core/app_settings.py:620
|
|
1918
1923
|
msgid "Automatically checks if a newer version is available"
|
|
1919
1924
|
msgstr "Tarkistaa automaattisesti, onko uudempi versio saatavana"
|
|
1920
1925
|
|
|
1921
|
-
#: core/app_settings.py:
|
|
1926
|
+
#: core/app_settings.py:617
|
|
1922
1927
|
msgid "Check new versions"
|
|
1923
1928
|
msgstr "Tarkista uudet versiot"
|
|
1924
1929
|
|
|
1925
|
-
#: core/app_settings.py:
|
|
1930
|
+
#: core/app_settings.py:628
|
|
1926
1931
|
msgid "Send an email when new versions are found"
|
|
1927
1932
|
msgstr "Lähetä sähköpostia, kun uusia versioita löytyy"
|
|
1928
1933
|
|
|
1929
|
-
#: core/app_settings.py:
|
|
1934
|
+
#: core/app_settings.py:632
|
|
1930
1935
|
msgid "Send an email to notify admins about new versions"
|
|
1931
1936
|
msgstr ""
|
|
1932
1937
|
"Lähetä sähköpostiviesti, joka ilmoittaa ylläpitäjille uusista versioista"
|
|
1933
1938
|
|
|
1934
|
-
#: core/app_settings.py:
|
|
1939
|
+
#: core/app_settings.py:639 sievefilters/constants.py:25
|
|
1935
1940
|
msgid "Recipient"
|
|
1936
1941
|
msgstr "Vastaanottaja"
|
|
1937
1942
|
|
|
1938
|
-
#: core/app_settings.py:
|
|
1943
|
+
#: core/app_settings.py:642
|
|
1939
1944
|
msgid "Recipient of new versions notification emails."
|
|
1940
1945
|
msgstr "Uusia versioita koskevien ilmoitussähköpostiviestien vastaanottaja."
|
|
1941
1946
|
|
|
1942
|
-
#: core/app_settings.py:
|
|
1947
|
+
#: core/app_settings.py:649
|
|
1943
1948
|
msgid "Send statistics"
|
|
1944
1949
|
msgstr "Lähetä tilastot"
|
|
1945
1950
|
|
|
1946
|
-
#: core/app_settings.py:
|
|
1951
|
+
#: core/app_settings.py:652
|
|
1947
1952
|
msgid "Send statistics to Modoboa public API (counters and used extensions)"
|
|
1948
1953
|
msgstr ""
|
|
1949
1954
|
"Lähetä tilastoja Modoboan julkiseen API:han (laskurit ja käytetyt "
|
|
1950
1955
|
"laajennukset)"
|
|
1951
1956
|
|
|
1952
|
-
#: core/app_settings.py:
|
|
1957
|
+
#: core/app_settings.py:671
|
|
1953
1958
|
#, fuzzy
|
|
1954
1959
|
#| msgid "Inactive account threshold"
|
|
1955
1960
|
msgid "Enable inactive account tracking"
|
|
1956
1961
|
msgstr "Inaktiivisen tilin kynnysarvo"
|
|
1957
1962
|
|
|
1958
|
-
#: core/app_settings.py:
|
|
1963
|
+
#: core/app_settings.py:674
|
|
1959
1964
|
msgid ""
|
|
1960
1965
|
"Allow the administrator to set a threshold (in days) beyond which an account "
|
|
1961
1966
|
"is considered inactive if the user hasn't logged in"
|
|
1962
1967
|
msgstr ""
|
|
1963
1968
|
|
|
1964
|
-
#: core/app_settings.py:
|
|
1969
|
+
#: core/app_settings.py:683
|
|
1965
1970
|
msgid "Inactive account threshold"
|
|
1966
1971
|
msgstr "Inaktiivisen tilin kynnysarvo"
|
|
1967
1972
|
|
|
1968
|
-
#: core/app_settings.py:
|
|
1973
|
+
#: core/app_settings.py:686
|
|
1969
1974
|
msgid ""
|
|
1970
1975
|
"An account with a last login date greater than this threshold (in days) will "
|
|
1971
1976
|
"be considered as inactive"
|
|
@@ -1973,48 +1978,38 @@ msgstr ""
|
|
|
1973
1978
|
"Tiliä, jonka viimeisin kirjautumispäivä on suurempi kuin tämä kynnysarvo "
|
|
1974
1979
|
"(päivinä), pidetään inaktiivisena"
|
|
1975
1980
|
|
|
1976
|
-
#: core/app_settings.py:
|
|
1981
|
+
#: core/app_settings.py:695
|
|
1977
1982
|
msgid "Top notifications check interval"
|
|
1978
1983
|
msgstr "Ylimpien ilmoitusten tarkistusväli"
|
|
1979
1984
|
|
|
1980
|
-
#: core/app_settings.py:
|
|
1985
|
+
#: core/app_settings.py:698
|
|
1981
1986
|
msgid "Interval between two top notification checks (in seconds)"
|
|
1982
1987
|
msgstr "Kahden ylimmän ilmoituksen tarkistuksen välinen aika (sekunteina)"
|
|
1983
1988
|
|
|
1984
|
-
#: core/app_settings.py:
|
|
1989
|
+
#: core/app_settings.py:705
|
|
1985
1990
|
msgid "Maximum log record age"
|
|
1986
1991
|
msgstr "Lokitiedoston enimmäisikä"
|
|
1987
1992
|
|
|
1988
|
-
#: core/app_settings.py:
|
|
1993
|
+
#: core/app_settings.py:707
|
|
1989
1994
|
msgid "The maximum age in days of a log record"
|
|
1990
1995
|
msgstr "Lokitietueen enimmäisikä päivinä"
|
|
1991
1996
|
|
|
1992
|
-
#: core/app_settings.py:
|
|
1997
|
+
#: core/app_settings.py:715
|
|
1993
1998
|
msgid "Retention time in message history"
|
|
1994
1999
|
msgstr ""
|
|
1995
2000
|
|
|
1996
|
-
#: core/app_settings.py:
|
|
2001
|
+
#: core/app_settings.py:718
|
|
1997
2002
|
msgid "Retention time (in days) of a message in the message history section"
|
|
1998
2003
|
msgstr ""
|
|
1999
2004
|
|
|
2000
|
-
#: core/app_settings.py:
|
|
2005
|
+
#: core/app_settings.py:725
|
|
2001
2006
|
msgid "Items per page"
|
|
2002
2007
|
msgstr "Kohteita per sivu"
|
|
2003
2008
|
|
|
2004
|
-
#: core/app_settings.py:
|
|
2009
|
+
#: core/app_settings.py:727
|
|
2005
2010
|
msgid "Number of displayed items per page"
|
|
2006
2011
|
msgstr "Näytettävien kohteiden määrä sivua kohti"
|
|
2007
2012
|
|
|
2008
|
-
#: core/app_settings.py:746
|
|
2009
|
-
msgid "Default top redirection"
|
|
2010
|
-
msgstr "Oletusarvoinen ylhäältä uudelleenohjaus"
|
|
2011
|
-
|
|
2012
|
-
#: core/app_settings.py:748
|
|
2013
|
-
msgid "The default redirection used when no application is specified"
|
|
2014
|
-
msgstr ""
|
|
2015
|
-
"Oletusarvoinen uudelleenohjaus, jota käytetään, kun sovellusta ei ole "
|
|
2016
|
-
"määritetty"
|
|
2017
|
-
|
|
2018
2013
|
#: core/checks.py:15
|
|
2019
2014
|
msgid ""
|
|
2020
2015
|
"You have USE_TZ set to False, this may result in issues during transitions "
|
|
@@ -2356,7 +2351,7 @@ msgid "Not resolved"
|
|
|
2356
2351
|
msgstr "Ei määritelty"
|
|
2357
2352
|
|
|
2358
2353
|
#: dmarc/models.py:10 dmarc/models.py:16 pdfcredentials/constants.py:7
|
|
2359
|
-
#: webmail/constants.py:
|
|
2354
|
+
#: webmail/constants.py:38
|
|
2360
2355
|
msgid "None"
|
|
2361
2356
|
msgstr ""
|
|
2362
2357
|
|
|
@@ -3326,7 +3321,7 @@ msgstr ""
|
|
|
3326
3321
|
msgid "is not"
|
|
3327
3322
|
msgstr ""
|
|
3328
3323
|
|
|
3329
|
-
#: sievefilters/constants.py:23 webmail/lib/imapemail.py:
|
|
3324
|
+
#: sievefilters/constants.py:23 webmail/lib/imapemail.py:302
|
|
3330
3325
|
msgid "Subject"
|
|
3331
3326
|
msgstr "Aihe"
|
|
3332
3327
|
|
|
@@ -3588,25 +3583,25 @@ msgstr ""
|
|
|
3588
3583
|
msgid "SMTP settings"
|
|
3589
3584
|
msgstr "LDAP-asetukset"
|
|
3590
3585
|
|
|
3591
|
-
#: webmail/app_settings.py:75
|
|
3586
|
+
#: webmail/app_settings.py:75 webmail/app_settings.py:121
|
|
3592
3587
|
#, fuzzy
|
|
3593
3588
|
#| msgid "IP address of your Modoboa server"
|
|
3594
3589
|
msgid "Address of your SMTP server"
|
|
3595
3590
|
msgstr "Modoboa-palvelimen IP-osoite"
|
|
3596
3591
|
|
|
3597
|
-
#: webmail/app_settings.py:82
|
|
3592
|
+
#: webmail/app_settings.py:82 webmail/app_settings.py:128
|
|
3598
3593
|
#, fuzzy
|
|
3599
3594
|
#| msgid "Use a secured connection"
|
|
3600
3595
|
msgid "Secured connection mode"
|
|
3601
3596
|
msgstr "Käytä suojattua yhteyttä"
|
|
3602
3597
|
|
|
3603
|
-
#: webmail/app_settings.py:84
|
|
3598
|
+
#: webmail/app_settings.py:84 webmail/app_settings.py:130
|
|
3604
3599
|
#, fuzzy
|
|
3605
3600
|
#| msgid "Use an SSL/STARTTLS connection to access the LDAP server"
|
|
3606
3601
|
msgid "Use a secured connection to access SMTP server"
|
|
3607
3602
|
msgstr "Käytä SSL/STARTTLS-yhteyttä LDAP-palvelimen käyttämiseen"
|
|
3608
3603
|
|
|
3609
|
-
#: webmail/app_settings.py:93
|
|
3604
|
+
#: webmail/app_settings.py:93 webmail/app_settings.py:139
|
|
3610
3605
|
#, fuzzy
|
|
3611
3606
|
#| msgid "IP address of your Modoboa server"
|
|
3612
3607
|
msgid "Listening port of your SMTP server"
|
|
@@ -3623,11 +3618,17 @@ msgstr "Tunnistusmenetelmä"
|
|
|
3623
3618
|
msgid "Server needs authentication"
|
|
3624
3619
|
msgstr "LDAP-todennusasetukset"
|
|
3625
3620
|
|
|
3626
|
-
#: webmail/app_settings.py:
|
|
3621
|
+
#: webmail/app_settings.py:113
|
|
3622
|
+
#, fuzzy
|
|
3623
|
+
#| msgid "LDAP settings"
|
|
3624
|
+
msgid "Scheduling settings"
|
|
3625
|
+
msgstr "LDAP-asetukset"
|
|
3626
|
+
|
|
3627
|
+
#: webmail/app_settings.py:161
|
|
3627
3628
|
msgid "Default message display mode"
|
|
3628
3629
|
msgstr ""
|
|
3629
3630
|
|
|
3630
|
-
#: webmail/app_settings.py:
|
|
3631
|
+
#: webmail/app_settings.py:163
|
|
3631
3632
|
#, fuzzy
|
|
3632
3633
|
#| msgid "The default redirection used when no application is specified"
|
|
3633
3634
|
msgid "The default mode used when displaying a message"
|
|
@@ -3635,97 +3636,97 @@ msgstr ""
|
|
|
3635
3636
|
"Oletusarvoinen uudelleenohjaus, jota käytetään, kun sovellusta ei ole "
|
|
3636
3637
|
"määritetty"
|
|
3637
3638
|
|
|
3638
|
-
#: webmail/app_settings.py:
|
|
3639
|
+
#: webmail/app_settings.py:170
|
|
3639
3640
|
msgid "Enable HTML links display"
|
|
3640
3641
|
msgstr ""
|
|
3641
3642
|
|
|
3642
|
-
#: webmail/app_settings.py:
|
|
3643
|
+
#: webmail/app_settings.py:173
|
|
3643
3644
|
msgid "Enable/Disable HTML links display"
|
|
3644
3645
|
msgstr ""
|
|
3645
3646
|
|
|
3646
|
-
#: webmail/app_settings.py:
|
|
3647
|
+
#: webmail/app_settings.py:184
|
|
3647
3648
|
msgid "Sets the maximum number of messages displayed in a page"
|
|
3648
3649
|
msgstr ""
|
|
3649
3650
|
|
|
3650
|
-
#: webmail/app_settings.py:
|
|
3651
|
+
#: webmail/app_settings.py:191
|
|
3651
3652
|
msgid "Listing refresh rate"
|
|
3652
3653
|
msgstr ""
|
|
3653
3654
|
|
|
3654
|
-
#: webmail/app_settings.py:
|
|
3655
|
+
#: webmail/app_settings.py:193
|
|
3655
3656
|
msgid "Automatic listing refresh rate (in secconds)"
|
|
3656
3657
|
msgstr ""
|
|
3657
3658
|
|
|
3658
|
-
#: webmail/app_settings.py:
|
|
3659
|
+
#: webmail/app_settings.py:200
|
|
3659
3660
|
msgid "Folder container's width"
|
|
3660
3661
|
msgstr ""
|
|
3661
3662
|
|
|
3662
|
-
#: webmail/app_settings.py:
|
|
3663
|
+
#: webmail/app_settings.py:202
|
|
3663
3664
|
msgid "The width of the folder list container"
|
|
3664
3665
|
msgstr ""
|
|
3665
3666
|
|
|
3666
|
-
#: webmail/app_settings.py:
|
|
3667
|
+
#: webmail/app_settings.py:213
|
|
3667
3668
|
#, fuzzy
|
|
3668
3669
|
#| msgid "Create aliases"
|
|
3669
3670
|
msgid "Folders"
|
|
3670
3671
|
msgstr "Luo aliaksia"
|
|
3671
3672
|
|
|
3672
|
-
#: webmail/app_settings.py:
|
|
3673
|
+
#: webmail/app_settings.py:219
|
|
3673
3674
|
#, fuzzy
|
|
3674
3675
|
#| msgid "Create aliases"
|
|
3675
3676
|
msgid "Trash folder"
|
|
3676
3677
|
msgstr "Luo aliaksia"
|
|
3677
3678
|
|
|
3678
|
-
#: webmail/app_settings.py:
|
|
3679
|
+
#: webmail/app_settings.py:221
|
|
3679
3680
|
#, fuzzy
|
|
3680
3681
|
#| msgid "rejected messages"
|
|
3681
3682
|
msgid "Folder where deleted messages go"
|
|
3682
3683
|
msgstr "hylätyt viestit"
|
|
3683
3684
|
|
|
3684
|
-
#: webmail/app_settings.py:
|
|
3685
|
+
#: webmail/app_settings.py:228
|
|
3685
3686
|
#, fuzzy
|
|
3686
3687
|
#| msgid "Create aliases"
|
|
3687
3688
|
msgid "Sent folder"
|
|
3688
3689
|
msgstr "Luo aliaksia"
|
|
3689
3690
|
|
|
3690
|
-
#: webmail/app_settings.py:
|
|
3691
|
+
#: webmail/app_settings.py:230
|
|
3691
3692
|
msgid "Folder where copies of sent messages go"
|
|
3692
3693
|
msgstr ""
|
|
3693
3694
|
|
|
3694
|
-
#: webmail/app_settings.py:
|
|
3695
|
+
#: webmail/app_settings.py:237
|
|
3695
3696
|
#, fuzzy
|
|
3696
3697
|
#| msgid "Create aliases"
|
|
3697
3698
|
msgid "Drafts folder"
|
|
3698
3699
|
msgstr "Luo aliaksia"
|
|
3699
3700
|
|
|
3700
|
-
#: webmail/app_settings.py:
|
|
3701
|
+
#: webmail/app_settings.py:238
|
|
3701
3702
|
msgid "Folder where drafts go"
|
|
3702
3703
|
msgstr ""
|
|
3703
3704
|
|
|
3704
|
-
#: webmail/app_settings.py:
|
|
3705
|
+
#: webmail/app_settings.py:244
|
|
3705
3706
|
#, fuzzy
|
|
3706
3707
|
#| msgid "Create aliases"
|
|
3707
3708
|
msgid "Junk folder"
|
|
3708
3709
|
msgstr "Luo aliaksia"
|
|
3709
3710
|
|
|
3710
|
-
#: webmail/app_settings.py:
|
|
3711
|
+
#: webmail/app_settings.py:246
|
|
3711
3712
|
#, fuzzy
|
|
3712
3713
|
#| msgid "rejected messages"
|
|
3713
3714
|
msgid "Folder where junk messages should go"
|
|
3714
3715
|
msgstr "hylätyt viestit"
|
|
3715
3716
|
|
|
3716
|
-
#: webmail/app_settings.py:
|
|
3717
|
+
#: webmail/app_settings.py:257
|
|
3717
3718
|
#, fuzzy
|
|
3718
3719
|
#| msgid "sent messages"
|
|
3719
3720
|
msgid "Composing messages"
|
|
3720
3721
|
msgstr "lähetetyt viestit"
|
|
3721
3722
|
|
|
3722
|
-
#: webmail/app_settings.py:
|
|
3723
|
+
#: webmail/app_settings.py:263
|
|
3723
3724
|
#, fuzzy
|
|
3724
3725
|
#| msgid "Default top redirection"
|
|
3725
3726
|
msgid "Default editor"
|
|
3726
3727
|
msgstr "Oletusarvoinen ylhäältä uudelleenohjaus"
|
|
3727
3728
|
|
|
3728
|
-
#: webmail/app_settings.py:
|
|
3729
|
+
#: webmail/app_settings.py:265
|
|
3729
3730
|
#, fuzzy
|
|
3730
3731
|
#| msgid "The default redirection used when no application is specified"
|
|
3731
3732
|
msgid "The default editor to use when composing a message"
|
|
@@ -3733,11 +3734,11 @@ msgstr ""
|
|
|
3733
3734
|
"Oletusarvoinen uudelleenohjaus, jota käytetään, kun sovellusta ei ole "
|
|
3734
3735
|
"määritetty"
|
|
3735
3736
|
|
|
3736
|
-
#: webmail/app_settings.py:
|
|
3737
|
+
#: webmail/app_settings.py:272
|
|
3737
3738
|
msgid "Signature text"
|
|
3738
3739
|
msgstr ""
|
|
3739
3740
|
|
|
3740
|
-
#: webmail/app_settings.py:
|
|
3741
|
+
#: webmail/app_settings.py:274
|
|
3741
3742
|
msgid "User defined email signature"
|
|
3742
3743
|
msgstr ""
|
|
3743
3744
|
|
|
@@ -3753,47 +3754,74 @@ msgstr "Palvelimen osoite"
|
|
|
3753
3754
|
msgid "Failed to remove attachment: "
|
|
3754
3755
|
msgstr "LDAP-tilin luominen epäonnistui: {}"
|
|
3755
3756
|
|
|
3756
|
-
#: webmail/lib/imapemail.py:
|
|
3757
|
+
#: webmail/lib/imapemail.py:270
|
|
3757
3758
|
msgid "wrote:"
|
|
3758
3759
|
msgstr ""
|
|
3759
3760
|
|
|
3760
|
-
#: webmail/lib/imapemail.py:
|
|
3761
|
+
#: webmail/lib/imapemail.py:304
|
|
3761
3762
|
msgid "Date"
|
|
3762
3763
|
msgstr "Päivämäärä"
|
|
3763
3764
|
|
|
3764
|
-
#: webmail/lib/imapemail.py:
|
|
3765
|
+
#: webmail/lib/imapemail.py:320 webmail/lib/imapemail.py:323
|
|
3765
3766
|
#, fuzzy
|
|
3766
3767
|
#| msgid "sent messages"
|
|
3767
3768
|
msgid "Original message"
|
|
3768
3769
|
msgstr "lähetetyt viestit"
|
|
3769
3770
|
|
|
3770
|
-
#: webmail/lib/imaputils.py:
|
|
3771
|
+
#: webmail/lib/imaputils.py:222
|
|
3771
3772
|
msgid "Failed to retrieve hierarchy delimiter"
|
|
3772
3773
|
msgstr ""
|
|
3773
3774
|
|
|
3774
|
-
#: webmail/lib/imaputils.py:
|
|
3775
|
+
#: webmail/lib/imaputils.py:478
|
|
3775
3776
|
msgid "Inbox"
|
|
3776
3777
|
msgstr ""
|
|
3777
3778
|
|
|
3778
|
-
#: webmail/lib/imaputils.py:
|
|
3779
|
+
#: webmail/lib/imaputils.py:482
|
|
3779
3780
|
#, fuzzy
|
|
3780
3781
|
#| msgid "Create aliases"
|
|
3781
3782
|
msgid "Drafts"
|
|
3782
3783
|
msgstr "Luo aliaksia"
|
|
3783
3784
|
|
|
3784
|
-
#: webmail/lib/imaputils.py:
|
|
3785
|
+
#: webmail/lib/imaputils.py:487
|
|
3785
3786
|
msgid "Junk"
|
|
3786
3787
|
msgstr ""
|
|
3787
3788
|
|
|
3788
|
-
#: webmail/lib/imaputils.py:
|
|
3789
|
+
#: webmail/lib/imaputils.py:492
|
|
3789
3790
|
msgid "Sent"
|
|
3790
3791
|
msgstr ""
|
|
3791
3792
|
|
|
3792
|
-
#: webmail/lib/imaputils.py:
|
|
3793
|
+
#: webmail/lib/imaputils.py:500
|
|
3794
|
+
msgid "Scheduled"
|
|
3795
|
+
msgstr ""
|
|
3796
|
+
|
|
3797
|
+
#: webmail/lib/imaputils.py:507
|
|
3793
3798
|
msgid "Trash"
|
|
3794
3799
|
msgstr ""
|
|
3795
3800
|
|
|
3796
|
-
#: webmail/
|
|
3801
|
+
#: webmail/serializers.py:220
|
|
3802
|
+
msgid "Moving scheduled messages is forbidden"
|
|
3803
|
+
msgstr ""
|
|
3804
|
+
|
|
3805
|
+
#: webmail/serializers.py:253
|
|
3806
|
+
msgid "Only datetime in the future is allowed"
|
|
3807
|
+
msgstr ""
|
|
3808
|
+
|
|
3809
|
+
#: webmail/serializers.py:258
|
|
3810
|
+
msgid "Provived datetime must be one minute in the future at least"
|
|
3811
|
+
msgstr ""
|
|
3812
|
+
|
|
3813
|
+
#: webmail/viewsets.py:359
|
|
3797
3814
|
#, python-format
|
|
3798
3815
|
msgid "Attachment is too big (limit: %s)"
|
|
3799
3816
|
msgstr ""
|
|
3817
|
+
|
|
3818
|
+
#~ msgid "User profile"
|
|
3819
|
+
#~ msgstr "Käyttäjäprofiili"
|
|
3820
|
+
|
|
3821
|
+
#~ msgid "Default top redirection"
|
|
3822
|
+
#~ msgstr "Oletusarvoinen ylhäältä uudelleenohjaus"
|
|
3823
|
+
|
|
3824
|
+
#~ msgid "The default redirection used when no application is specified"
|
|
3825
|
+
#~ msgstr ""
|
|
3826
|
+
#~ "Oletusarvoinen uudelleenohjaus, jota käytetään, kun sovellusta ei ole "
|
|
3827
|
+
#~ "määritetty"
|