modoboa 2.4.11__py3-none-any.whl → 2.5.1__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 +14 -0
- modoboa/amavis/__init__.py +3 -0
- modoboa/amavis/app_settings.py +276 -0
- modoboa/amavis/apps.py +18 -0
- modoboa/amavis/checks/__init__.py +2 -0
- modoboa/amavis/checks/settings_checks.py +59 -0
- modoboa/amavis/dbrouter.py +35 -0
- modoboa/amavis/factories.py +164 -0
- modoboa/amavis/handlers.py +146 -0
- modoboa/amavis/lib.py +381 -0
- modoboa/amavis/management/__init__.py +0 -0
- modoboa/amavis/management/commands/__init__.py +0 -0
- modoboa/amavis/management/commands/amnotify.py +99 -0
- modoboa/amavis/management/commands/qcleanup.py +84 -0
- modoboa/amavis/migrations/0001_initial.py +340 -0
- modoboa/amavis/migrations/__init__.py +0 -0
- modoboa/amavis/models.py +226 -0
- modoboa/amavis/serializers.py +139 -0
- modoboa/amavis/sql_connector.py +240 -0
- modoboa/amavis/sql_email.py +66 -0
- modoboa/amavis/tasks.py +33 -0
- modoboa/amavis/templates/amavis/notifications/pending_requests.html +16 -0
- modoboa/amavis/tests/__init__.py +0 -0
- modoboa/amavis/tests/sa-learn +3 -0
- modoboa/amavis/tests/sample_messages/quarantined-input.txt +80 -0
- modoboa/amavis/tests/sample_messages/quarantined-output-plain_nolinks.txt +17 -0
- modoboa/amavis/tests/spamc +3 -0
- modoboa/amavis/tests/test_checks.py +25 -0
- modoboa/amavis/tests/test_handlers.py +214 -0
- modoboa/amavis/tests/test_lib.py +90 -0
- modoboa/amavis/tests/test_management_commands.py +45 -0
- modoboa/amavis/tests/test_sql_email.py +67 -0
- modoboa/amavis/tests/test_utils.py +19 -0
- modoboa/amavis/tests/test_viewsets.py +319 -0
- modoboa/amavis/urls.py +11 -0
- modoboa/amavis/utils.py +105 -0
- modoboa/amavis/viewsets.py +265 -0
- modoboa/core/api/v1/serializers.py +7 -5
- modoboa/core/api/v2/serializers.py +4 -2
- modoboa/core/api/v2/tests.py +16 -4
- modoboa/core/api/v2/urls.py +5 -5
- modoboa/core/api/v2/views.py +6 -2
- modoboa/core/api/v2/viewsets.py +24 -3
- modoboa/core/commands/deploy.py +3 -0
- modoboa/core/commands/templates/settings.py.tpl +12 -11
- modoboa/core/handlers.py +6 -2
- modoboa/core/management/commands/add_allowed_hosts.py +33 -0
- modoboa/core/management/commands/load_initial_data.py +10 -0
- modoboa/core/migrations/0025_rename_user_email_is_active_core_user_email_c0c03f_idx.py +23 -5
- modoboa/core/tests/test_core.py +24 -0
- modoboa/core/utils.py +3 -0
- modoboa/frontend_dist/assets/AccountAliasForm-C0oHHyZL.js +1 -0
- modoboa/frontend_dist/assets/AccountEditView-lgSJ2Se8.js +1 -0
- modoboa/frontend_dist/assets/AccountLayout-U386K8zy.js +1 -0
- modoboa/frontend_dist/assets/AccountPasswordSubForm-YsaE_cDx.js +1 -0
- modoboa/frontend_dist/assets/AccountView-1jfKFDwb.js +1 -0
- modoboa/frontend_dist/assets/AddressBook-CwN64Zls.js +1 -0
- modoboa/frontend_dist/assets/AdminLayout-Cxm1lggg.js +1 -0
- modoboa/frontend_dist/assets/AlarmsView-9yKGbmkC.css +1 -0
- modoboa/frontend_dist/assets/AlarmsView-Bcjsicac.js +1 -0
- modoboa/frontend_dist/assets/AliasEditView-k3rVt1tG.js +1 -0
- modoboa/frontend_dist/assets/{AliasRecipientForm-IOae6sjF.js → AliasRecipientForm-IehUzKok.js} +1 -1
- modoboa/frontend_dist/assets/AliasView-DMzA10eD.js +1 -0
- modoboa/frontend_dist/assets/AuditTrailView-5dnGX5El.js +1 -0
- modoboa/frontend_dist/assets/CalendarView-DZONeDA9.js +1 -0
- modoboa/frontend_dist/assets/{ChoiceField-DJ_c78Cm.js → ChoiceField-DnwXRkht.js} +1 -1
- modoboa/frontend_dist/assets/ComposeEmailForm-kghmfNuE.js +1 -0
- modoboa/frontend_dist/assets/ComposeEmailView-DLv3wk1k.js +1 -0
- modoboa/frontend_dist/assets/ConfirmDialog-CcPrCKuI.js +1 -0
- modoboa/frontend_dist/assets/{ConnectedLayout-Dvwmicnc.css → ConnectedLayout-Bxh21hcH.css} +1 -1
- modoboa/frontend_dist/assets/ConnectedLayout-CWlBK7Hf.js +1 -0
- modoboa/frontend_dist/assets/CreationForm-CW4lxnPg.js +1 -0
- modoboa/frontend_dist/assets/DashboardView-DXVZMbMo.js +1 -0
- modoboa/frontend_dist/assets/DomainAdminList-C3jcDDc3.js +1 -0
- modoboa/frontend_dist/assets/DomainEditView-ph8AaElX.js +1 -0
- modoboa/frontend_dist/assets/{DomainTransportForm-C2xo0Yd7.js → DomainTransportForm-NCz6Bl-h.js} +1 -1
- modoboa/frontend_dist/assets/DomainView-BgMSSuU-.js +5 -0
- modoboa/frontend_dist/assets/{DomainView-BDKoBFYr.css → DomainView-CCLYXPHx.css} +1 -1
- modoboa/frontend_dist/assets/DomainsView-CEEU9btK.js +1 -0
- modoboa/frontend_dist/assets/DomainsView-DZ-ss9bI.css +1 -0
- modoboa/frontend_dist/assets/EmailField-DeqDPm5j.js +1 -0
- modoboa/frontend_dist/assets/EmailView-DczVhVO0.js +1 -0
- modoboa/frontend_dist/assets/EmptyLayout-BXgcfMLH.js +1 -0
- modoboa/frontend_dist/assets/FiltersView-nJj_gSCx.js +1 -0
- modoboa/frontend_dist/assets/ForwardEmailView-Bgv3JQb6.js +1 -0
- modoboa/frontend_dist/assets/{HtmlEditor-CJ9umKeO.js → HtmlEditor-BWRdelVw.js} +1 -1
- modoboa/frontend_dist/assets/{IdentitiesView-0ziuQ5s-.css → IdentitiesView-DPrrRMS5.css} +1 -1
- modoboa/frontend_dist/assets/IdentitiesView-Dld9IloZ.js +1 -0
- modoboa/frontend_dist/assets/InformationView-BBWKSX8D.js +1 -0
- modoboa/frontend_dist/assets/InformationView-C9vvvQhJ.css +1 -0
- modoboa/frontend_dist/assets/{LoadingData-CYwX3Jpn.js → LoadingData-G57nJ_JV.js} +1 -1
- modoboa/frontend_dist/assets/{LoginCallbackView-E01qkKn0.js → LoginCallbackView-DjyE2SG_.js} +1 -1
- modoboa/frontend_dist/assets/{LoginView-Cy4uFV9h.js → LoginView-CqCCXYLo.js} +1 -1
- modoboa/frontend_dist/assets/{MailboxView-B-aI4XBq.css → MailboxView-CfStlWhk.css} +1 -1
- modoboa/frontend_dist/assets/MailboxView-DRrs9eLO.js +1 -0
- modoboa/frontend_dist/assets/MenuItems-BqIZW5av.js +1 -0
- modoboa/frontend_dist/assets/MessageView-D_6tx_gd.js +1 -0
- modoboa/frontend_dist/assets/MessagesView-BH7JIR03.js +1 -0
- modoboa/frontend_dist/assets/MigrationsView-Cv_So9T-.js +1 -0
- modoboa/frontend_dist/assets/{ParametersForm-BZM0QSvg.js → ParametersForm-3qXttTuQ.js} +1 -1
- modoboa/frontend_dist/assets/ParametersView-3Ns04cpQ.js +1 -0
- modoboa/frontend_dist/assets/ParametersView-B5B5Dt6K.js +1 -0
- modoboa/frontend_dist/assets/ProviderEditView-zh7CY832.js +1 -0
- modoboa/frontend_dist/assets/ProviderGeneralForm-BQU7t3ma.js +1 -0
- modoboa/frontend_dist/assets/ProvidersView-CoF_ZkZA.js +1 -0
- modoboa/frontend_dist/assets/QuarantineLayout-CYBsrbJM.js +1 -0
- modoboa/frontend_dist/assets/QuarantineView-D4gOE4EQ.css +1 -0
- modoboa/frontend_dist/assets/QuarantineView-DNvpoycb.js +1 -0
- modoboa/frontend_dist/assets/ReplyEmailView-D1XTcglu.js +1 -0
- modoboa/frontend_dist/assets/ResourcesForm-BW8rUGgZ.js +1 -0
- modoboa/frontend_dist/assets/SelfServiceLayout-DfDHiYeX.js +1 -0
- modoboa/frontend_dist/assets/{SettingsView-BxLJBFY0.js → SettingsView-gQiJ2NVb.js} +2 -2
- modoboa/frontend_dist/assets/StatisticsView-DYalet_q.js +1 -0
- modoboa/frontend_dist/assets/TimeSerieChart-BZ2htbFk.js +1 -0
- modoboa/frontend_dist/assets/UserLayout-zUtHi-z-.js +1 -0
- modoboa/frontend_dist/assets/VAlert-4r6LxKtg.js +1 -0
- modoboa/frontend_dist/assets/VApp-CX_C7AUN.js +1 -0
- modoboa/frontend_dist/assets/VAutocomplete-DNKmBvyZ.js +1 -0
- modoboa/frontend_dist/assets/VAvatar-DbuoZWmf.js +1 -0
- modoboa/frontend_dist/assets/VBadge-BQrRJ9S0.css +1 -0
- modoboa/frontend_dist/assets/VBadge-Bv2nvUmC.js +1 -0
- modoboa/frontend_dist/assets/VCard-DzjUT5OP.js +1 -0
- modoboa/frontend_dist/assets/VCheckbox-dr7UFjl4.js +1 -0
- modoboa/frontend_dist/assets/{VCheckboxBtn-Dt810gWf.js → VCheckboxBtn-CpFdBnTv.js} +1 -1
- modoboa/frontend_dist/assets/VChip-CaQvfmkw.js +1 -0
- modoboa/frontend_dist/assets/VColorPicker-ByGpCW5O.js +1 -0
- modoboa/frontend_dist/assets/{VContainer-DvTbsotR.js → VContainer-74Dnn8Ux.js} +1 -1
- modoboa/frontend_dist/assets/VDataTable-CL7yHvG7.js +1 -0
- modoboa/frontend_dist/assets/VDataTableServer-BqvNcIdw.js +1 -0
- modoboa/frontend_dist/assets/VDataTableVirtual--KsOP8i6.js +1 -0
- modoboa/frontend_dist/assets/{VDialog-Bk6EWNhz.js → VDialog-DmTGCGR0.js} +1 -1
- modoboa/frontend_dist/assets/VExpansionPanels-B7sSTCwd.js +1 -0
- modoboa/frontend_dist/assets/VFileInput-SULIc6F3.js +1 -0
- modoboa/frontend_dist/assets/VForm-DsRLc-sa.js +1 -0
- modoboa/frontend_dist/assets/VInput-CcxkaOXT.css +1 -0
- modoboa/frontend_dist/assets/VInput-DVKUObZe.js +1 -0
- modoboa/frontend_dist/assets/VMenu-nv0XOgg0.js +1 -0
- modoboa/frontend_dist/assets/VPicker-DnDSWJHJ.js +1 -0
- modoboa/frontend_dist/assets/VProgressCircular-qK6p5X_Y.js +1 -0
- modoboa/frontend_dist/assets/VRadioGroup-CbiPLy0t.js +1 -0
- modoboa/frontend_dist/assets/{VRow-BF35mT1S.js → VRow-DJ0NB63-.js} +1 -1
- modoboa/frontend_dist/assets/VSelect-CxCFMHyF.js +1 -0
- modoboa/frontend_dist/assets/VSelectionControl-C-6A4us5.js +1 -0
- modoboa/frontend_dist/assets/VSheet-DI6SxLnG.js +1 -0
- modoboa/frontend_dist/assets/VSpacer-CoJVmx8k.js +1 -0
- modoboa/frontend_dist/assets/VSwitch-DPnjPQuU.js +1 -0
- modoboa/frontend_dist/assets/VTable-ldTxgQPW.js +1 -0
- modoboa/frontend_dist/assets/VTabs-aS8WSL9I.js +1 -0
- modoboa/frontend_dist/assets/VTextField-BzBVKKob.css +1 -0
- modoboa/frontend_dist/assets/VTextField-DKbr4H5w.js +1 -0
- modoboa/frontend_dist/assets/VTextarea-BttkFsM4.js +1 -0
- modoboa/frontend_dist/assets/VToolbar-BxX3W2kR.js +1 -0
- modoboa/frontend_dist/assets/VWindowItem-Cvqvdegd.js +1 -0
- modoboa/frontend_dist/assets/WebmailLayout-BT2k6U7q.js +1 -0
- modoboa/frontend_dist/assets/accounts-CC2F0a0c.js +1 -0
- modoboa/frontend_dist/assets/{admin-o-HRGnmT.js → admin-CHCHFGI6.js} +1 -1
- modoboa/frontend_dist/assets/{aliases-DDVeehyg.js → aliases-C9bUD4Ws.js} +1 -1
- modoboa/frontend_dist/assets/amavis-BhzV4rgf.js +1 -0
- modoboa/frontend_dist/assets/amavis-DCVJxuui.js +1 -0
- modoboa/frontend_dist/assets/{contacts-C84DY-Q1.js → contacts-Dxz6eWpf.js} +1 -1
- modoboa/frontend_dist/assets/{domains-Bgn4ixHL.js → domains-C2cornvL.js} +1 -1
- modoboa/frontend_dist/assets/{domains.store-DTE-V7Y1.js → domains.store-BLKRipG8.js} +1 -1
- modoboa/frontend_dist/assets/{filter-CnffiQAW.js → filter-rmxrcjKk.js} +1 -1
- modoboa/frontend_dist/assets/forwardRefs-CpzzjgpX.js +1 -0
- modoboa/frontend_dist/assets/global.store-DndbMXYb.js +1 -0
- modoboa/frontend_dist/assets/{importExport-BlQYb0NO.js → importExport-C3uqrcok.js} +1 -1
- modoboa/frontend_dist/assets/index-LhNzkzAh.js +984 -0
- modoboa/frontend_dist/assets/layout-DbjDe3Wl.js +1 -0
- modoboa/frontend_dist/assets/{layout.store-DkjrAoXt.js → layout.store-Vq5mvIp7.js} +1 -1
- modoboa/frontend_dist/assets/{logos-q8SEyAa4.js → logos-Bvcy0usu.js} +1 -1
- modoboa/frontend_dist/assets/{logs-B7IJ7LBa.js → logs-BuItINky.js} +1 -1
- modoboa/frontend_dist/assets/{parameters-A6iBEYQq.js → parameters-C8IYEP7q.js} +1 -1
- modoboa/frontend_dist/assets/{parameters.store-BiXS4_6w.js → parameters.store-1cwSP2JP.js} +1 -1
- modoboa/frontend_dist/assets/permissions-DQjAcO9S.js +1 -0
- modoboa/frontend_dist/assets/{ssrBoot-AzTdjPjk.js → ssrBoot-BxIQ9ccA.js} +1 -1
- modoboa/frontend_dist/assets/{tag-BnSYRTcD.js → tag-3cfI1_f7.js} +1 -1
- modoboa/frontend_dist/assets/transports-D4Jk4-AP.js +1 -0
- modoboa/frontend_dist/assets/{webmail-CSH_3l6R.js → webmail-B2IUjaxM.js} +1 -1
- modoboa/frontend_dist/index.html +1 -1
- modoboa/lib/email_utils.py +2 -2
- modoboa/lib/permissions.py +7 -0
- modoboa/lib/test_runners.py +29 -0
- modoboa/lib/tests/__init__.py +5 -1
- modoboa/locale/br/LC_MESSAGES/django.po +87 -75
- modoboa/locale/cs/LC_MESSAGES/django.po +82 -74
- modoboa/locale/cs_CZ/LC_MESSAGES/django.po +145 -121
- modoboa/locale/de/LC_MESSAGES/django.mo +0 -0
- modoboa/locale/de/LC_MESSAGES/django.po +339 -651
- modoboa/locale/de_DE/LC_MESSAGES/django.po +87 -75
- modoboa/locale/el_GR/LC_MESSAGES/django.po +160 -135
- modoboa/locale/en/LC_MESSAGES/django.po +82 -74
- modoboa/locale/es/LC_MESSAGES/django.po +158 -131
- modoboa/locale/es_MX/LC_MESSAGES/django.po +82 -74
- modoboa/locale/fi/LC_MESSAGES/django.po +87 -75
- modoboa/locale/fr/LC_MESSAGES/django.mo +0 -0
- modoboa/locale/fr/LC_MESSAGES/django.po +469 -201
- modoboa/locale/hu/LC_MESSAGES/django.po +82 -74
- modoboa/locale/it/LC_MESSAGES/django.mo +0 -0
- modoboa/locale/it/LC_MESSAGES/django.po +148 -122
- modoboa/locale/ja_JP/LC_MESSAGES/django.mo +0 -0
- modoboa/locale/ja_JP/LC_MESSAGES/django.po +80 -72
- modoboa/locale/ka/LC_MESSAGES/django.po +82 -74
- modoboa/locale/nl_NL/LC_MESSAGES/django.po +160 -132
- modoboa/locale/no/LC_MESSAGES/django.po +82 -74
- modoboa/locale/pl_PL/LC_MESSAGES/django.mo +0 -0
- modoboa/locale/pl_PL/LC_MESSAGES/django.po +172 -149
- modoboa/locale/pt_BR/LC_MESSAGES/django.mo +0 -0
- modoboa/locale/pt_BR/LC_MESSAGES/django.po +172 -144
- modoboa/locale/pt_PT/LC_MESSAGES/django.po +135 -112
- modoboa/locale/ro_RO/LC_MESSAGES/django.po +87 -75
- modoboa/locale/ru/LC_MESSAGES/django.po +142 -118
- modoboa/locale/si/LC_MESSAGES/django.po +82 -74
- modoboa/locale/sk/LC_MESSAGES/django.po +82 -74
- modoboa/locale/sk_SK/LC_MESSAGES/django.po +84 -76
- modoboa/locale/sl_SI/LC_MESSAGES/django.po +90 -76
- modoboa/locale/sv/LC_MESSAGES/django.mo +0 -0
- modoboa/locale/sv/LC_MESSAGES/django.po +172 -139
- modoboa/locale/tr/LC_MESSAGES/django.po +87 -75
- modoboa/locale/tr_TR/LC_MESSAGES/django.po +84 -74
- modoboa/locale/uk/LC_MESSAGES/django.po +82 -74
- modoboa/locale/zh/LC_MESSAGES/django.po +82 -74
- modoboa/locale/zh_CN/LC_MESSAGES/django.po +82 -74
- modoboa/locale/zh_TW/LC_MESSAGES/django.po +87 -75
- modoboa/parameters/api/v2/tests.py +2 -2
- modoboa/parameters/api/v2/viewsets.py +2 -0
- modoboa/policyd/tests.py +2 -0
- modoboa/urls_api_v2.py +6 -0
- modoboa/webmail/lib/imaputils.py +2 -2
- {modoboa-2.4.11.dist-info → modoboa-2.5.1.dist-info}/METADATA +6 -4
- {modoboa-2.4.11.dist-info → modoboa-2.5.1.dist-info}/RECORD +235 -185
- modoboa/frontend_dist/assets/AccountAliasForm-BV6KvTu6.js +0 -1
- modoboa/frontend_dist/assets/AccountEditView-DDOFyfBD.js +0 -1
- modoboa/frontend_dist/assets/AccountLayout-rX51xgxT.js +0 -1
- modoboa/frontend_dist/assets/AccountPasswordSubForm-D9S6LaeH.js +0 -1
- modoboa/frontend_dist/assets/AccountView-cmvaZNq3.js +0 -1
- modoboa/frontend_dist/assets/AddressBook-DCJxL8SU.js +0 -1
- modoboa/frontend_dist/assets/AdminLayout-r0wfG2lO.js +0 -1
- modoboa/frontend_dist/assets/AlarmsView-Bheey-gp.css +0 -1
- modoboa/frontend_dist/assets/AlarmsView-C0bqC4PA.js +0 -1
- modoboa/frontend_dist/assets/AliasEditView-DVoWoCGY.js +0 -1
- modoboa/frontend_dist/assets/AliasView-DrONZXOh.js +0 -1
- modoboa/frontend_dist/assets/AuditTrailView-OTkoZaMU.js +0 -1
- modoboa/frontend_dist/assets/CalendarView-CqF4_Ui9.js +0 -1
- modoboa/frontend_dist/assets/ComposeEmailForm-DO5_GB3e.js +0 -1
- modoboa/frontend_dist/assets/ComposeEmailView-A91HCBsN.js +0 -1
- modoboa/frontend_dist/assets/ConfirmDialog-BBcgdAnO.js +0 -1
- modoboa/frontend_dist/assets/ConnectedLayout-1oRW-Rql.js +0 -1
- modoboa/frontend_dist/assets/CreationForm-71YJbjsA.js +0 -1
- modoboa/frontend_dist/assets/DashboardView-CdLpSfUl.js +0 -1
- modoboa/frontend_dist/assets/DomainAdminList-BjC4KsqI.js +0 -1
- modoboa/frontend_dist/assets/DomainEditView-CQjKwYxl.js +0 -1
- modoboa/frontend_dist/assets/DomainView-BhhuZI_N.js +0 -5
- modoboa/frontend_dist/assets/DomainsView-Cft4BP8Z.js +0 -1
- modoboa/frontend_dist/assets/DomainsView-DasJ0NdZ.css +0 -1
- modoboa/frontend_dist/assets/EmailField-C8umy0EU.js +0 -1
- modoboa/frontend_dist/assets/EmailView-ki7uEQPD.js +0 -1
- modoboa/frontend_dist/assets/EmptyLayout-DaA1XH9n.js +0 -1
- modoboa/frontend_dist/assets/FiltersView-FYFZxG4B.js +0 -1
- modoboa/frontend_dist/assets/ForwardEmailView-cUbnSYCF.js +0 -1
- modoboa/frontend_dist/assets/IdentitiesView-njNo8N5n.js +0 -1
- modoboa/frontend_dist/assets/InformationView-D1h38POt.js +0 -1
- modoboa/frontend_dist/assets/InformationView-U5Ww-Sx1.css +0 -1
- modoboa/frontend_dist/assets/MailboxView-IlrLWm_H.js +0 -1
- modoboa/frontend_dist/assets/MenuItems-BAtHWzAE.js +0 -1
- modoboa/frontend_dist/assets/MessagesView-OSpjixFq.js +0 -1
- modoboa/frontend_dist/assets/MigrationsView-DKNOsVzF.js +0 -1
- modoboa/frontend_dist/assets/ParametersView-C4bXASiq.js +0 -1
- modoboa/frontend_dist/assets/ParametersView-CYXgNmc1.js +0 -1
- modoboa/frontend_dist/assets/ProviderEditView-CyxCWTST.js +0 -1
- modoboa/frontend_dist/assets/ProviderGeneralForm-BYPjNHqB.js +0 -1
- modoboa/frontend_dist/assets/ProvidersView-CxrMkRyk.js +0 -1
- modoboa/frontend_dist/assets/ReplyEmailView-Dkw9-N26.js +0 -1
- modoboa/frontend_dist/assets/ResourcesForm-CuUvrOdY.js +0 -1
- modoboa/frontend_dist/assets/StatisticsView-BN7QsZMT.js +0 -1
- modoboa/frontend_dist/assets/TimeSerieChart-BMN8BeFZ.js +0 -1
- modoboa/frontend_dist/assets/UserLayout-B6-JQg4F.js +0 -1
- modoboa/frontend_dist/assets/VAlert-DIQTrRif.js +0 -1
- modoboa/frontend_dist/assets/VApp-CpkYA7js.js +0 -1
- modoboa/frontend_dist/assets/VAutocomplete-C4IpXyl8.js +0 -1
- modoboa/frontend_dist/assets/VAvatar-Lpb-Dion.js +0 -1
- modoboa/frontend_dist/assets/VCard-er_isjE_.js +0 -1
- modoboa/frontend_dist/assets/VCheckbox-D-u8JXP1.js +0 -1
- modoboa/frontend_dist/assets/VChip-B4iSpj8_.js +0 -1
- modoboa/frontend_dist/assets/VColorPicker-BAjGDsXv.js +0 -1
- modoboa/frontend_dist/assets/VDataTable-4JRjbtgF.js +0 -1
- modoboa/frontend_dist/assets/VDataTableServer-tIDT1m3-.js +0 -1
- modoboa/frontend_dist/assets/VDataTableVirtual-BlnO18u_.js +0 -1
- modoboa/frontend_dist/assets/VExpansionPanels-CwGtXDhr.js +0 -1
- modoboa/frontend_dist/assets/VFileInput-D1_7ZkO_.js +0 -1
- modoboa/frontend_dist/assets/VForm-DAkW4nfy.js +0 -1
- modoboa/frontend_dist/assets/VMenu-BPFJwj2f.js +0 -1
- modoboa/frontend_dist/assets/VPicker-CfT82M8N.js +0 -1
- modoboa/frontend_dist/assets/VProgressCircular-w75-3ogi.js +0 -1
- modoboa/frontend_dist/assets/VRadioGroup-0j6DNC_k.js +0 -1
- modoboa/frontend_dist/assets/VSelect-Cs4ARbAS.js +0 -1
- modoboa/frontend_dist/assets/VSelectionControl-Dg-XyRRS.js +0 -1
- modoboa/frontend_dist/assets/VSheet-Btq_Mu4s.js +0 -1
- modoboa/frontend_dist/assets/VSpacer-C7xukQmu.js +0 -1
- modoboa/frontend_dist/assets/VSwitch-Cs1NQrmk.js +0 -1
- modoboa/frontend_dist/assets/VTable-CNz2SGk4.js +0 -1
- modoboa/frontend_dist/assets/VTabs-B1fyVn4M.js +0 -1
- modoboa/frontend_dist/assets/VTextField-BdyvgvkG.js +0 -1
- modoboa/frontend_dist/assets/VTextField-C-J20yj_.css +0 -1
- modoboa/frontend_dist/assets/VTextarea-DnOMpe0Q.js +0 -1
- modoboa/frontend_dist/assets/VToolbar-BiCiBxBJ.js +0 -1
- modoboa/frontend_dist/assets/VWindowItem-ChWm_kz3.js +0 -1
- modoboa/frontend_dist/assets/WebmailLayout-o4uEkp9e.js +0 -1
- modoboa/frontend_dist/assets/forwardRefs-Dvjn_Xq4.js +0 -1
- modoboa/frontend_dist/assets/global.store-BaiD63EN.js +0 -1
- modoboa/frontend_dist/assets/index-I1VDlN4g.js +0 -984
- modoboa/frontend_dist/assets/layout-D8ZJPiJ_.js +0 -1
- modoboa/frontend_dist/assets/permissions-CITHLHVg.js +0 -1
- modoboa/frontend_dist/assets/transports-Dz7c6kIy.js +0 -1
- {modoboa-2.4.11.data → modoboa-2.5.1.data}/scripts/modoboa-admin.py +0 -0
- {modoboa-2.4.11.dist-info → modoboa-2.5.1.dist-info}/WHEEL +0 -0
- {modoboa-2.4.11.dist-info → modoboa-2.5.1.dist-info}/entry_points.txt +0 -0
- {modoboa-2.4.11.dist-info → modoboa-2.5.1.dist-info}/licenses/LICENSE +0 -0
- {modoboa-2.4.11.dist-info → modoboa-2.5.1.dist-info}/top_level.txt +0 -0
|
@@ -16,11 +16,10 @@ msgid ""
|
|
|
16
16
|
msgstr ""
|
|
17
17
|
"Project-Id-Version: Modoboa\n"
|
|
18
18
|
"Report-Msgid-Bugs-To: \n"
|
|
19
|
-
"POT-Creation-Date: 2025-
|
|
19
|
+
"POT-Creation-Date: 2025-08-28 09:41+0200\n"
|
|
20
20
|
"PO-Revision-Date: 2020-05-06 11:16+0000\n"
|
|
21
21
|
"Last-Translator: Antoine Nguyen <tonio@ngyn.org>\n"
|
|
22
|
-
"Language-Team: Spanish (http://www.transifex.com/tonio/modoboa/language/"
|
|
23
|
-
"es/)\n"
|
|
22
|
+
"Language-Team: Spanish (http://www.transifex.com/tonio/modoboa/language/es/)\n"
|
|
24
23
|
"Language: es\n"
|
|
25
24
|
"MIME-Version: 1.0\n"
|
|
26
25
|
"Content-Type: text/plain; charset=UTF-8\n"
|
|
@@ -42,74 +41,75 @@ msgid "Default quota in MB applied to mailboxes. A value of 0 means no quota."
|
|
|
42
41
|
msgstr ""
|
|
43
42
|
"Cuota de mailbox predeterminda en MB. Un valor de 0 significa ningún limite."
|
|
44
43
|
|
|
45
|
-
#: admin/api/v1/serializers.py:
|
|
44
|
+
#: admin/api/v1/serializers.py:94
|
|
46
45
|
#, fuzzy
|
|
47
46
|
msgid "domain alias with this name already exists"
|
|
48
47
|
msgstr "Ya existe un alias con este nombre"
|
|
49
48
|
|
|
50
|
-
#: admin/api/v1/serializers.py:
|
|
49
|
+
#: admin/api/v1/serializers.py:104
|
|
51
50
|
#, fuzzy
|
|
52
51
|
#| msgid "No MX record found for this domain."
|
|
53
52
|
msgid "No authorized MX record found for this domain"
|
|
54
53
|
msgstr "No se encontró ningún registro MX para este dominio."
|
|
55
54
|
|
|
56
|
-
#: admin/api/v1/serializers.py:
|
|
55
|
+
#: admin/api/v1/serializers.py:122
|
|
57
56
|
msgid "Cannot be greater than domain quota"
|
|
58
57
|
msgstr "No puede superar la cuota de dominio"
|
|
59
58
|
|
|
60
|
-
#: admin/api/v1/serializers.py:
|
|
61
|
-
#: admin/api/v2/serializers.py:
|
|
59
|
+
#: admin/api/v1/serializers.py:168 admin/api/v1/serializers.py:364
|
|
60
|
+
#: admin/api/v2/serializers.py:564 admin/models/alias.py:44
|
|
62
61
|
msgid "Permission denied."
|
|
63
62
|
msgstr "Permiso denegado."
|
|
64
63
|
|
|
65
|
-
#: admin/api/v1/serializers.py:
|
|
66
|
-
#: admin/api/v2/serializers.py:
|
|
67
|
-
#: core/api/v2/serializers.py:
|
|
64
|
+
#: admin/api/v1/serializers.py:231 admin/api/v2/serializers.py:90
|
|
65
|
+
#: admin/api/v2/serializers.py:486 core/api/v2/serializers.py:255
|
|
66
|
+
#: core/api/v2/serializers.py:257 core/api/v2/serializers.py:266
|
|
68
67
|
#: transport/backends.py:40
|
|
69
68
|
msgid "This field is required"
|
|
70
69
|
msgstr "Este campo es obligatorio"
|
|
71
70
|
|
|
72
|
-
#: admin/api/v1/serializers.py:
|
|
71
|
+
#: admin/api/v1/serializers.py:243
|
|
73
72
|
msgid ""
|
|
74
73
|
"List of administered domains (resellers and domain administrators only)."
|
|
75
74
|
msgstr ""
|
|
76
75
|
"Lista de dominios administrados (sólo distribuidores y administradores de "
|
|
77
76
|
"dominio)."
|
|
78
77
|
|
|
79
|
-
#: admin/api/v1/serializers.py:
|
|
78
|
+
#: admin/api/v1/serializers.py:337 admin/api/v2/serializers.py:546
|
|
80
79
|
msgid "Not allowed for this role."
|
|
81
80
|
msgstr "No estás autorizado para esta función."
|
|
82
81
|
|
|
83
|
-
#: admin/api/v1/serializers.py:
|
|
82
|
+
#: admin/api/v1/serializers.py:355
|
|
84
83
|
msgid "Must be equal to mailbox full_address"
|
|
85
84
|
msgstr "Debe ser igual a la dirección completa del buzón"
|
|
86
85
|
|
|
87
|
-
#: admin/api/v1/serializers.py:
|
|
86
|
+
#: admin/api/v1/serializers.py:397 admin/api/v2/serializers.py:598
|
|
88
87
|
#: calendars/serializers.py:175 calendars/serializers.py:177
|
|
88
|
+
#: pdfcredentials/api/v2/serializers.py:91
|
|
89
89
|
msgid "This field is required."
|
|
90
90
|
msgstr "Este campo es obligatorio."
|
|
91
91
|
|
|
92
|
-
#: admin/api/v1/serializers.py:
|
|
92
|
+
#: admin/api/v1/serializers.py:409 admin/api/v2/serializers.py:615
|
|
93
93
|
msgid "Local domain {} does not exist"
|
|
94
94
|
msgstr "El dominio local {} no existe"
|
|
95
95
|
|
|
96
|
-
#: admin/api/v1/serializers.py:
|
|
96
|
+
#: admin/api/v1/serializers.py:499
|
|
97
97
|
msgid "A list of recipient"
|
|
98
98
|
msgstr "Lista de destinatarios"
|
|
99
99
|
|
|
100
|
-
#: admin/api/v1/serializers.py:
|
|
100
|
+
#: admin/api/v1/serializers.py:515 admin/api/v2/viewsets.py:286
|
|
101
101
|
#, fuzzy
|
|
102
102
|
#| msgid "User '%s' already exists"
|
|
103
103
|
msgid "This alias already exists"
|
|
104
104
|
msgstr "El usuario '%s' ya existe"
|
|
105
105
|
|
|
106
|
-
#: admin/api/v1/serializers.py:
|
|
106
|
+
#: admin/api/v1/serializers.py:551
|
|
107
107
|
#, fuzzy
|
|
108
108
|
#| msgid "You don't have access to this domain"
|
|
109
109
|
msgid "You don't have access to this domain."
|
|
110
110
|
msgstr "No tienes acceso a este dominio"
|
|
111
111
|
|
|
112
|
-
#: admin/api/v1/serializers.py:
|
|
112
|
+
#: admin/api/v1/serializers.py:560
|
|
113
113
|
#, fuzzy
|
|
114
114
|
#| msgid "You don't have access to this domain"
|
|
115
115
|
msgid "You don't have access to this mailbox."
|
|
@@ -119,60 +119,60 @@ msgstr "No tienes acceso a este dominio"
|
|
|
119
119
|
msgid "Here is your new Modoboa password: {}"
|
|
120
120
|
msgstr ""
|
|
121
121
|
|
|
122
|
-
#: admin/api/v2/serializers.py:
|
|
122
|
+
#: admin/api/v2/serializers.py:82
|
|
123
123
|
msgid "DKIM keys storage directory not configured"
|
|
124
124
|
msgstr ""
|
|
125
125
|
|
|
126
|
-
#: admin/api/v2/serializers.py:
|
|
126
|
+
#: admin/api/v2/serializers.py:94
|
|
127
127
|
msgid "This field is valid when type is relaydomain"
|
|
128
128
|
msgstr ""
|
|
129
129
|
|
|
130
|
-
#: admin/api/v2/serializers.py:
|
|
130
|
+
#: admin/api/v2/serializers.py:101
|
|
131
131
|
msgid "You can't define an unlimited quota."
|
|
132
132
|
msgstr "No puede definir una cuota ilimitada."
|
|
133
133
|
|
|
134
|
-
#: admin/api/v2/serializers.py:
|
|
134
|
+
#: admin/api/v2/serializers.py:135
|
|
135
135
|
#, python-format
|
|
136
136
|
msgid "User '%s' already exists"
|
|
137
137
|
msgstr "El usuario '%s' ya existe"
|
|
138
138
|
|
|
139
|
-
#: admin/api/v2/serializers.py:
|
|
139
|
+
#: admin/api/v2/serializers.py:250 admin/api/v2/serializers.py:256
|
|
140
140
|
msgid "Must be a positive integer"
|
|
141
141
|
msgstr "Debe ser un entero positivo"
|
|
142
142
|
|
|
143
|
-
#: admin/api/v2/serializers.py:
|
|
143
|
+
#: admin/api/v2/serializers.py:265
|
|
144
144
|
msgid "openssl not found, please make sure it is installed."
|
|
145
145
|
msgstr ""
|
|
146
146
|
|
|
147
|
-
#: admin/api/v2/serializers.py:
|
|
147
|
+
#: admin/api/v2/serializers.py:268 pdfcredentials/api/v2/serializers.py:84
|
|
148
148
|
#, fuzzy
|
|
149
149
|
#| msgid "Domain not found."
|
|
150
150
|
msgid "Directory not found."
|
|
151
151
|
msgstr "Dominio no encontrado."
|
|
152
152
|
|
|
153
|
-
#: admin/api/v2/serializers.py:
|
|
153
|
+
#: admin/api/v2/serializers.py:279
|
|
154
154
|
msgid "This field only allows valid IP addresses (or networks)"
|
|
155
155
|
msgstr ""
|
|
156
156
|
|
|
157
|
-
#: admin/api/v2/serializers.py:
|
|
157
|
+
#: admin/api/v2/serializers.py:292
|
|
158
158
|
msgid "Please disable imap migration before disabling this option."
|
|
159
159
|
msgstr ""
|
|
160
160
|
|
|
161
|
-
#: admin/api/v2/serializers.py:
|
|
161
|
+
#: admin/api/v2/serializers.py:305
|
|
162
162
|
msgid "Define at least one authorized network / address"
|
|
163
163
|
msgstr ""
|
|
164
164
|
|
|
165
|
-
#: admin/api/v2/serializers.py:
|
|
165
|
+
#: admin/api/v2/serializers.py:581
|
|
166
166
|
msgid "The left part of an email address can't be more than 64 characters."
|
|
167
167
|
msgstr ""
|
|
168
168
|
|
|
169
|
-
#: admin/api/v2/serializers.py:
|
|
169
|
+
#: admin/api/v2/serializers.py:603
|
|
170
170
|
#, fuzzy
|
|
171
171
|
#| msgid "A mailbox is required"
|
|
172
172
|
msgid "A mailbox is required to create aliases."
|
|
173
173
|
msgstr "Es obligatorio un buzón"
|
|
174
174
|
|
|
175
|
-
#: admin/api/v2/serializers.py:
|
|
175
|
+
#: admin/api/v2/serializers.py:772
|
|
176
176
|
#, fuzzy
|
|
177
177
|
#| msgid "Unknown"
|
|
178
178
|
msgid "Unknown status"
|
|
@@ -186,14 +186,6 @@ msgstr "No tienes acceso a este dominio"
|
|
|
186
186
|
msgid "You can't delete your own domain"
|
|
187
187
|
msgstr "No puedo eliminar su propio dominio"
|
|
188
188
|
|
|
189
|
-
#: admin/api/v2/viewsets.py:407
|
|
190
|
-
msgid "No alarm ID provided"
|
|
191
|
-
msgstr ""
|
|
192
|
-
|
|
193
|
-
#: admin/api/v2/viewsets.py:411
|
|
194
|
-
msgid "Received invalid alarm id(s)"
|
|
195
|
-
msgstr ""
|
|
196
|
-
|
|
197
189
|
#: admin/app_settings.py:19 limits/app_settings.py:38 limits/constants.py:13
|
|
198
190
|
msgid "Domains"
|
|
199
191
|
msgstr "Dominios"
|
|
@@ -212,8 +204,8 @@ msgstr "MX Validos"
|
|
|
212
204
|
|
|
213
205
|
#: admin/app_settings.py:37
|
|
214
206
|
msgid ""
|
|
215
|
-
"A list of IP or network address every MX record should match. A warning will
|
|
216
|
-
"be sent if a record does not respect it."
|
|
207
|
+
"A list of IP or network address every MX record should match. A warning will"
|
|
208
|
+
" be sent if a record does not respect it."
|
|
217
209
|
msgstr ""
|
|
218
210
|
"Una lista de IP o dirección de red, cada registro MX debe coincidir. Se "
|
|
219
211
|
"enviará una advertencia si un registro no la respeta."
|
|
@@ -330,8 +322,9 @@ msgid ""
|
|
|
330
322
|
"Default quota (in MB) applied to freshly created domains with no value "
|
|
331
323
|
"specified. A value of 0 means no quota."
|
|
332
324
|
msgstr ""
|
|
333
|
-
"Cuota por defecto (en MB) que se aplica a la creación de nuevos dominios que
|
|
334
|
-
"no tuvieran un valor especificado. Un valor de 0 significa que no hay
|
|
325
|
+
"Cuota por defecto (en MB) que se aplica a la creación de nuevos dominios que"
|
|
326
|
+
" no tuvieran un valor especificado. Un valor de 0 significa que no hay "
|
|
327
|
+
"cuota."
|
|
335
328
|
|
|
336
329
|
#: admin/app_settings.py:156
|
|
337
330
|
#, fuzzy
|
|
@@ -403,8 +396,10 @@ msgid "Automatic domain/mailbox creation"
|
|
|
403
396
|
msgstr "Creación automática de dominio/buzón"
|
|
404
397
|
|
|
405
398
|
#: admin/app_settings.py:221
|
|
406
|
-
msgid "
|
|
407
|
-
|
|
399
|
+
msgid ""
|
|
400
|
+
"Create a domain and a mailbox when an account is automatically created."
|
|
401
|
+
msgstr ""
|
|
402
|
+
"Crear un dominio y un buzón cuando se cree automáticamente una cuenta."
|
|
408
403
|
|
|
409
404
|
#: admin/app_settings.py:230
|
|
410
405
|
msgid "Create an alias when a mailbox is renamed"
|
|
@@ -414,7 +409,7 @@ msgstr ""
|
|
|
414
409
|
msgid "Create an alias using the old address when a mailbox is renamed."
|
|
415
410
|
msgstr ""
|
|
416
411
|
|
|
417
|
-
#: admin/app_settings.py:287 core/api/v2/viewsets.py:
|
|
412
|
+
#: admin/app_settings.py:287 core/api/v2/viewsets.py:174
|
|
418
413
|
msgid "Administration"
|
|
419
414
|
msgstr "Administración"
|
|
420
415
|
|
|
@@ -444,7 +439,7 @@ msgstr "alias del dominio"
|
|
|
444
439
|
msgid "Account import failed (%s): domain does not exist"
|
|
445
440
|
msgstr "Falló la importación de la cuenta (%s): el dominio no existe"
|
|
446
441
|
|
|
447
|
-
#: admin/handlers.py:242 admin/models/mailbox.py:
|
|
442
|
+
#: admin/handlers.py:242 admin/models/mailbox.py:342
|
|
448
443
|
msgid "Mailbox {} already exists"
|
|
449
444
|
msgstr "El buzón {} ya existe"
|
|
450
445
|
|
|
@@ -723,7 +718,7 @@ msgstr "Una cuota es obligatoria"
|
|
|
723
718
|
msgid "{}: domain quota exceeded"
|
|
724
719
|
msgstr "Cuota de dominio excedida"
|
|
725
720
|
|
|
726
|
-
#: admin/models/mailbox.py:
|
|
721
|
+
#: admin/models/mailbox.py:310
|
|
727
722
|
msgid "Domain does not exist"
|
|
728
723
|
msgstr "El dominio no existe"
|
|
729
724
|
|
|
@@ -733,8 +728,8 @@ msgid ""
|
|
|
733
728
|
"Modoboa detected that domain %(domain)s is listed by the following DNSBL "
|
|
734
729
|
"providers:"
|
|
735
730
|
msgstr ""
|
|
736
|
-
"Modoboa detectó que el(los) dominio(s) %(domain)s está(n) listado(s) por los
|
|
737
|
-
"siguientes proveedores DNSBL:"
|
|
731
|
+
"Modoboa detectó que el(los) dominio(s) %(domain)s está(n) listado(s) por los"
|
|
732
|
+
" siguientes proveedores DNSBL:"
|
|
738
733
|
|
|
739
734
|
#: admin/templates/admin/notifications/domain_in_dnsbl.html:11
|
|
740
735
|
msgid ""
|
|
@@ -743,16 +738,16 @@ msgid ""
|
|
|
743
738
|
"and ask them to unlist detected IP address(es)."
|
|
744
739
|
msgstr ""
|
|
745
740
|
"La reputación de los dominios se verán afectados y existe la posibilidad de "
|
|
746
|
-
"que los mensajes de correo electrónico procedentes de él se consideren spam.
|
|
747
|
-
"Debe comunicarse con estos proveedores y pedirles que elimine la(s) "
|
|
741
|
+
"que los mensajes de correo electrónico procedentes de él se consideren spam."
|
|
742
|
+
" Debe comunicarse con estos proveedores y pedirles que elimine la(s) "
|
|
748
743
|
"dirección(es) IP detectada(s)."
|
|
749
744
|
|
|
750
745
|
#: admin/templates/admin/notifications/domain_invalid_mx.html:3
|
|
751
746
|
#, python-format
|
|
752
747
|
msgid "Modoboa detected that domain %(domain)s has no valid MX record:"
|
|
753
748
|
msgstr ""
|
|
754
|
-
"Modoboa detectó que el(los) dominio(s) %(domain)s está(n) listado(s) por los
|
|
755
|
-
"siguientes proveedores DNSBL:"
|
|
749
|
+
"Modoboa detectó que el(los) dominio(s) %(domain)s está(n) listado(s) por los"
|
|
750
|
+
" siguientes proveedores DNSBL:"
|
|
756
751
|
|
|
757
752
|
#: admin/tests/test_mx.py:155
|
|
758
753
|
#, fuzzy, python-format
|
|
@@ -795,13 +790,15 @@ msgstr "General"
|
|
|
795
790
|
|
|
796
791
|
#: autoreply/app_settings.py:18
|
|
797
792
|
#, fuzzy
|
|
798
|
-
#| msgid "
|
|
793
|
+
#| msgid ""
|
|
794
|
+
#| "Timeout in seconds between two auto-replies to the same recipient"
|
|
799
795
|
msgid "Period between two auto-replies"
|
|
800
796
|
msgstr "Tiempo en segundos entre dos autorespuestas para el mismo emisor"
|
|
801
797
|
|
|
802
798
|
#: autoreply/app_settings.py:20
|
|
803
799
|
#, fuzzy
|
|
804
|
-
#| msgid "
|
|
800
|
+
#| msgid ""
|
|
801
|
+
#| "Timeout in seconds between two auto-replies to the same recipient"
|
|
805
802
|
msgid ""
|
|
806
803
|
"Number of days to wait before sending a new auto-reply to the same recipient"
|
|
807
804
|
msgstr "Tiempo en segundos entre dos autorespuestas para el mismo emisor"
|
|
@@ -910,7 +907,7 @@ msgid ""
|
|
|
910
907
|
"Maximum size in bytes of imported ICS files (or KB, MB, GB if specified)"
|
|
911
908
|
msgstr ""
|
|
912
909
|
|
|
913
|
-
#: calendars/app_settings.py:89 core/api/v2/viewsets.py:
|
|
910
|
+
#: calendars/app_settings.py:89 core/api/v2/viewsets.py:195
|
|
914
911
|
msgid "Calendars"
|
|
915
912
|
msgstr ""
|
|
916
913
|
|
|
@@ -946,7 +943,7 @@ msgstr "Frecuencia de sincronización"
|
|
|
946
943
|
msgid "Interval in seconds between 2 synchronization requests"
|
|
947
944
|
msgstr "Intervalo en segundos entre 2 peticiones de sincronización"
|
|
948
945
|
|
|
949
|
-
#: contacts/app_settings.py:51 core/api/v2/viewsets.py:
|
|
946
|
+
#: contacts/app_settings.py:51 core/api/v2/viewsets.py:185
|
|
950
947
|
#, fuzzy
|
|
951
948
|
#| msgid "Domains"
|
|
952
949
|
msgid "Contacts"
|
|
@@ -1000,12 +997,12 @@ msgstr "Registros MX de {}"
|
|
|
1000
997
|
msgid "2FA is already enabled"
|
|
1001
998
|
msgstr ""
|
|
1002
999
|
|
|
1003
|
-
#: core/api/v1/serializers.py:
|
|
1000
|
+
#: core/api/v1/serializers.py:86
|
|
1004
1001
|
#, python-format
|
|
1005
|
-
msgid "Failed TFA settings editing attempt from '%s' as user '%s'"
|
|
1002
|
+
msgid "Failed TFA settings editing attempt from '%(addr)s' as user '%(user)s'"
|
|
1006
1003
|
msgstr ""
|
|
1007
1004
|
|
|
1008
|
-
#: core/api/v1/serializers.py:91 core/api/v2/serializers.py:
|
|
1005
|
+
#: core/api/v1/serializers.py:91 core/api/v2/serializers.py:445
|
|
1009
1006
|
#, fuzzy
|
|
1010
1007
|
#| msgid "Old password"
|
|
1011
1008
|
msgid "Invalid password"
|
|
@@ -1019,44 +1016,45 @@ msgstr ""
|
|
|
1019
1016
|
msgid "Local"
|
|
1020
1017
|
msgstr "Local"
|
|
1021
1018
|
|
|
1022
|
-
#: core/api/v2/serializers.py:
|
|
1019
|
+
#: core/api/v2/serializers.py:194 core/app_settings.py:17
|
|
1023
1020
|
msgid "User profile"
|
|
1024
1021
|
msgstr "Perfil de usuario"
|
|
1025
1022
|
|
|
1026
|
-
#: core/api/v2/serializers.py:
|
|
1027
|
-
#: core/api/v2/serializers.py:
|
|
1023
|
+
#: core/api/v2/serializers.py:213 core/api/v2/serializers.py:221
|
|
1024
|
+
#: core/api/v2/serializers.py:228
|
|
1028
1025
|
msgid "Invalid syntax"
|
|
1029
1026
|
msgstr "Sintaxis inválida"
|
|
1030
1027
|
|
|
1031
|
-
#: core/api/v2/serializers.py:
|
|
1028
|
+
#: core/api/v2/serializers.py:233
|
|
1032
1029
|
msgid "Invalid rounds number"
|
|
1033
1030
|
msgstr "Número de rondas inváldo"
|
|
1034
1031
|
|
|
1035
|
-
#: core/api/v2/serializers.py:
|
|
1032
|
+
#: core/api/v2/serializers.py:433 core/forms.py:81
|
|
1036
1033
|
msgid "This code is invalid"
|
|
1037
1034
|
msgstr ""
|
|
1038
1035
|
|
|
1039
|
-
#: core/api/v2/serializers.py:
|
|
1036
|
+
#: core/api/v2/serializers.py:503 core/views/auth.py:194
|
|
1037
|
+
#: core/views/auth.py:247
|
|
1040
1038
|
msgid "Please use the following code to recover your Modoboa password: {}"
|
|
1041
1039
|
msgstr ""
|
|
1042
1040
|
|
|
1043
|
-
#: core/api/v2/viewsets.py:
|
|
1041
|
+
#: core/api/v2/viewsets.py:176
|
|
1044
1042
|
#, fuzzy
|
|
1045
1043
|
#| msgid "Administration"
|
|
1046
1044
|
msgid "Administration console"
|
|
1047
1045
|
msgstr "Administración"
|
|
1048
1046
|
|
|
1049
|
-
#: core/api/v2/viewsets.py:
|
|
1050
|
-
msgid "Calendar"
|
|
1051
|
-
msgstr ""
|
|
1052
|
-
|
|
1053
|
-
#: core/api/v2/viewsets.py:181
|
|
1047
|
+
#: core/api/v2/viewsets.py:187
|
|
1054
1048
|
#, fuzzy
|
|
1055
1049
|
#| msgid "Address"
|
|
1056
1050
|
msgid "Address book"
|
|
1057
1051
|
msgstr "Libro de direcciones"
|
|
1058
1052
|
|
|
1059
|
-
#: core/api/v2/viewsets.py:
|
|
1053
|
+
#: core/api/v2/viewsets.py:197
|
|
1054
|
+
msgid "Calendar"
|
|
1055
|
+
msgstr ""
|
|
1056
|
+
|
|
1057
|
+
#: core/api/v2/viewsets.py:205 core/api/v2/viewsets.py:207
|
|
1060
1058
|
#: webmail/app_settings.py:258 webmail/app_settings.py:265
|
|
1061
1059
|
#, fuzzy
|
|
1062
1060
|
#| msgid "E-mail"
|
|
@@ -1092,8 +1090,8 @@ msgid ""
|
|
|
1092
1090
|
"Number of rounds to use (only used by sha256crypt and sha512crypt). Must be "
|
|
1093
1091
|
"between 1000 and 999999999, inclusive."
|
|
1094
1092
|
msgstr ""
|
|
1095
|
-
"Número de rondas a usar (sólo utilizado por sha256crypr y sha512crypt). Debe
|
|
1096
|
-
"estar entre 1000 y 999999999, incluído."
|
|
1093
|
+
"Número de rondas a usar (sólo utilizado por sha256crypr y sha512crypt). Debe"
|
|
1094
|
+
" estar entre 1000 y 999999999, incluído."
|
|
1097
1095
|
|
|
1098
1096
|
#: core/app_settings.py:73
|
|
1099
1097
|
msgid "Update password scheme at login"
|
|
@@ -1238,11 +1236,11 @@ msgstr "Administrador de grupos"
|
|
|
1238
1236
|
|
|
1239
1237
|
#: core/app_settings.py:239
|
|
1240
1238
|
msgid ""
|
|
1241
|
-
"Members of those LDAP Posix groups will be created as domain administrators.
|
|
1242
|
-
"Use ';' characters to separate groups."
|
|
1239
|
+
"Members of those LDAP Posix groups will be created as domain administrators."
|
|
1240
|
+
" Use ';' characters to separate groups."
|
|
1243
1241
|
msgstr ""
|
|
1244
|
-
"Los miembros de esos grupos Posix LDAP serán creados como administradores de
|
|
1245
|
-
"dominio. Use caracteres \";\" para separar los grupos."
|
|
1242
|
+
"Los miembros de esos grupos Posix LDAP serán creados como administradores de"
|
|
1243
|
+
" dominio. Use caracteres \";\" para separar los grupos."
|
|
1246
1244
|
|
|
1247
1245
|
#: core/app_settings.py:248
|
|
1248
1246
|
msgid "Group type"
|
|
@@ -1289,8 +1287,8 @@ msgid ""
|
|
|
1289
1287
|
"The distinguished name to use when binding to the LDAP server. Leave empty "
|
|
1290
1288
|
"for an anonymous bind"
|
|
1291
1289
|
msgstr ""
|
|
1292
|
-
"El nombre distinguido a usar cuando nos unimos al servidor LDAP. Dejar vació
|
|
1293
|
-
"para una unión anónima"
|
|
1290
|
+
"El nombre distinguido a usar cuando nos unimos al servidor LDAP. Dejar vació"
|
|
1291
|
+
" para una unión anónima"
|
|
1294
1292
|
|
|
1295
1293
|
#: core/app_settings.py:305 core/app_settings.py:367
|
|
1296
1294
|
msgid "Bind password"
|
|
@@ -1428,7 +1426,8 @@ msgstr ""
|
|
|
1428
1426
|
|
|
1429
1427
|
#: core/app_settings.py:506
|
|
1430
1428
|
#, fuzzy
|
|
1431
|
-
#| msgid "
|
|
1429
|
+
#| msgid ""
|
|
1430
|
+
#| "Display custom RSS feed to resellers and domain administrators"
|
|
1432
1431
|
msgid "Display custom RSS feed to super admins"
|
|
1433
1432
|
msgstr ""
|
|
1434
1433
|
"Mostrar una fuente de agregación RSS personalizada a revendedores y "
|
|
@@ -1436,7 +1435,8 @@ msgstr ""
|
|
|
1436
1435
|
|
|
1437
1436
|
#: core/app_settings.py:509
|
|
1438
1437
|
#, fuzzy
|
|
1439
|
-
#| msgid "
|
|
1438
|
+
#| msgid ""
|
|
1439
|
+
#| "Display custom RSS feed to resellers and domain administrators"
|
|
1440
1440
|
msgid "Display custom RSS feed also to super administrators"
|
|
1441
1441
|
msgstr ""
|
|
1442
1442
|
"Mostrar una fuente de agregación RSS personalizada a revendedores y "
|
|
@@ -1560,8 +1560,8 @@ msgstr "Límite para cuentas inactivas"
|
|
|
1560
1560
|
|
|
1561
1561
|
#: core/app_settings.py:686
|
|
1562
1562
|
msgid ""
|
|
1563
|
-
"Allow the administrator to set a threshold (in days) beyond which an account
|
|
1564
|
-
"is considered inactive if the user hasn't logged in"
|
|
1563
|
+
"Allow the administrator to set a threshold (in days) beyond which an account"
|
|
1564
|
+
" is considered inactive if the user hasn't logged in"
|
|
1565
1565
|
msgstr ""
|
|
1566
1566
|
|
|
1567
1567
|
#: core/app_settings.py:695
|
|
@@ -1570,8 +1570,8 @@ msgstr "Límite para cuentas inactivas"
|
|
|
1570
1570
|
|
|
1571
1571
|
#: core/app_settings.py:698
|
|
1572
1572
|
msgid ""
|
|
1573
|
-
"An account with a last login date greater than this threshold (in days) will
|
|
1574
|
-
"be considered as inactive"
|
|
1573
|
+
"An account with a last login date greater than this threshold (in days) will"
|
|
1574
|
+
" be considered as inactive"
|
|
1575
1575
|
msgstr ""
|
|
1576
1576
|
"Una cuenta inactiva con una fecha de inicio de sesión previa a este límite "
|
|
1577
1577
|
"(en días) se considerará como cuenta inactiva"
|
|
@@ -1592,19 +1592,27 @@ msgstr "Máximo tiempo de almacenamiento del log"
|
|
|
1592
1592
|
msgid "The maximum age in days of a log record"
|
|
1593
1593
|
msgstr "El tiempo máximo de almacenamiento del log en días"
|
|
1594
1594
|
|
|
1595
|
-
#: core/app_settings.py:
|
|
1595
|
+
#: core/app_settings.py:727
|
|
1596
|
+
msgid "Retention time in message history"
|
|
1597
|
+
msgstr ""
|
|
1598
|
+
|
|
1599
|
+
#: core/app_settings.py:730
|
|
1600
|
+
msgid "Retention time (in days) of a message in the message history section"
|
|
1601
|
+
msgstr ""
|
|
1602
|
+
|
|
1603
|
+
#: core/app_settings.py:737
|
|
1596
1604
|
msgid "Items per page"
|
|
1597
1605
|
msgstr "Items por página"
|
|
1598
1606
|
|
|
1599
|
-
#: core/app_settings.py:
|
|
1607
|
+
#: core/app_settings.py:739
|
|
1600
1608
|
msgid "Number of displayed items per page"
|
|
1601
1609
|
msgstr "Número de elementos mostrado por página"
|
|
1602
1610
|
|
|
1603
|
-
#: core/app_settings.py:
|
|
1611
|
+
#: core/app_settings.py:746
|
|
1604
1612
|
msgid "Default top redirection"
|
|
1605
1613
|
msgstr "Redirección principal por defecto"
|
|
1606
1614
|
|
|
1607
|
-
#: core/app_settings.py:
|
|
1615
|
+
#: core/app_settings.py:748
|
|
1608
1616
|
msgid "The default redirection used when no application is specified"
|
|
1609
1617
|
msgstr ""
|
|
1610
1618
|
"La redirección que será usada cuando ninguna aplicación sea especificada."
|
|
@@ -1615,9 +1623,9 @@ msgid ""
|
|
|
1615
1623
|
"between summer/winter time (ie the same local time occuring twice due to "
|
|
1616
1624
|
"clock change)."
|
|
1617
1625
|
msgstr ""
|
|
1618
|
-
"A fijado USE_TZ como falso, lo que puede llevar a problemas en la transición
|
|
1619
|
-
"entre los horarios de verano e invierno (p.ej., que la misma hora exista
|
|
1620
|
-
"veces debido a cambios del reloj)."
|
|
1626
|
+
"A fijado USE_TZ como falso, lo que puede llevar a problemas en la transición"
|
|
1627
|
+
" entre los horarios de verano e invierno (p.ej., que la misma hora exista "
|
|
1628
|
+
"dos veces debido a cambios del reloj)."
|
|
1621
1629
|
|
|
1622
1630
|
#: core/checks.py:19
|
|
1623
1631
|
msgid "Set `USE_TZ = True` in settings.py"
|
|
@@ -1639,8 +1647,9 @@ msgstr ""
|
|
|
1639
1647
|
|
|
1640
1648
|
#: core/checks.py:34
|
|
1641
1649
|
msgid ""
|
|
1642
|
-
"Visit :
|
|
1643
|
-
"html#dovecot-
|
|
1650
|
+
"Visit : "
|
|
1651
|
+
"https://modoboa.readthedocs.io/en/latest/manual_installation/dovecot.html#dovecot-"
|
|
1652
|
+
"oauth2"
|
|
1644
1653
|
msgstr ""
|
|
1645
1654
|
|
|
1646
1655
|
#: core/checks.py:41
|
|
@@ -1651,8 +1660,9 @@ msgstr ""
|
|
|
1651
1660
|
|
|
1652
1661
|
#: core/checks.py:45
|
|
1653
1662
|
msgid ""
|
|
1654
|
-
"Visit :
|
|
1655
|
-
"radicale.html#radicale-
|
|
1663
|
+
"Visit : "
|
|
1664
|
+
"https://modoboa.readthedocs.io/en/latest/manual_installation/radicale.html#radicale-"
|
|
1665
|
+
"oauth2"
|
|
1656
1666
|
msgstr ""
|
|
1657
1667
|
|
|
1658
1668
|
#: core/constants.py:6
|
|
@@ -1953,7 +1963,7 @@ msgstr "Nada"
|
|
|
1953
1963
|
#, fuzzy
|
|
1954
1964
|
#| msgid "Quantity"
|
|
1955
1965
|
msgid "Quarantine"
|
|
1956
|
-
msgstr "
|
|
1966
|
+
msgstr "Cuarentena"
|
|
1957
1967
|
|
|
1958
1968
|
#: dmarc/models.py:12
|
|
1959
1969
|
#, fuzzy
|
|
@@ -2144,20 +2154,14 @@ msgstr ""
|
|
|
2144
2154
|
#: imap_migration/app_settings.py:76
|
|
2145
2155
|
msgid ""
|
|
2146
2156
|
"A comma seperated list of folders to explicitly include in sync even if "
|
|
2147
|
-
"filtered by the Folder Filter Exclusions. Example: debian.user,
|
|
2148
|
-
"personal "
|
|
2157
|
+
"filtered by the Folder Filter Exclusions. Example: debian.user, "
|
|
2158
|
+
"debian.personal "
|
|
2149
2159
|
msgstr ""
|
|
2150
2160
|
|
|
2151
2161
|
#: imap_migration/apps.py:20
|
|
2152
2162
|
msgid "IMAP Migration"
|
|
2153
2163
|
msgstr ""
|
|
2154
2164
|
|
|
2155
|
-
#: imap_migration/auth_backends.py:49 webmail/lib/imaputils.py:240
|
|
2156
|
-
#, fuzzy, python-brace-format
|
|
2157
|
-
#| msgid "Connection to IMAP server failed: %s"
|
|
2158
|
-
msgid "Connection to IMAP server failed: {error}"
|
|
2159
|
-
msgstr "Falló la conexión con el servidor IMAP: %s"
|
|
2160
|
-
|
|
2161
2165
|
#: imap_migration/checks.py:12
|
|
2162
2166
|
msgid ""
|
|
2163
2167
|
"Automatic domain/mailbox creation is disabled which means IMAP "
|
|
@@ -2263,10 +2267,11 @@ msgstr "Alias del dominio"
|
|
|
2263
2267
|
|
|
2264
2268
|
#: limits/app_settings.py:52
|
|
2265
2269
|
#, fuzzy
|
|
2266
|
-
#| msgid "
|
|
2270
|
+
#| msgid ""
|
|
2271
|
+
#| "Maximum number of allowed domain aliases for a new administrator"
|
|
2267
2272
|
msgid ""
|
|
2268
|
-
"Maximum number of allowed domain aliases for a new administrator. (0 to deny
|
|
2269
|
-
"any creation, -1 to allow unlimited creations)"
|
|
2273
|
+
"Maximum number of allowed domain aliases for a new administrator. (0 to deny"
|
|
2274
|
+
" any creation, -1 to allow unlimited creations)"
|
|
2270
2275
|
msgstr ""
|
|
2271
2276
|
"Número máximo permitido de alias de dominio para un nuevo administrador"
|
|
2272
2277
|
|
|
@@ -2320,15 +2325,16 @@ msgstr ""
|
|
|
2320
2325
|
#| msgid ""
|
|
2321
2326
|
#| "Maximum number of allowed domain administrators for a new administrator"
|
|
2322
2327
|
msgid ""
|
|
2323
|
-
"Maximum number of allowed domain administrators for a new domain. (0 to deny
|
|
2324
|
-
"any creation, -1 to allow unlimited creations)"
|
|
2328
|
+
"Maximum number of allowed domain administrators for a new domain. (0 to deny"
|
|
2329
|
+
" any creation, -1 to allow unlimited creations)"
|
|
2325
2330
|
msgstr ""
|
|
2326
2331
|
"Número máximo de dominios permitido de administradores para un nuevo "
|
|
2327
2332
|
"administrador"
|
|
2328
2333
|
|
|
2329
2334
|
#: limits/app_settings.py:126
|
|
2330
2335
|
#, fuzzy
|
|
2331
|
-
#| msgid "
|
|
2336
|
+
#| msgid ""
|
|
2337
|
+
#| "Maximum number of allowed domain aliases for a new administrator"
|
|
2332
2338
|
msgid ""
|
|
2333
2339
|
"Maximum number of allowed domain aliases for a new domain. (0 to deny any "
|
|
2334
2340
|
"creation, -1 to allow unlimited creations)"
|
|
@@ -2347,8 +2353,8 @@ msgstr "Número máximo de mailboxes permitidas para un nuevo administrador"
|
|
|
2347
2353
|
#, fuzzy
|
|
2348
2354
|
#| msgid "Maximum number of allowed aliases for a new administrator"
|
|
2349
2355
|
msgid ""
|
|
2350
|
-
"Maximum number of allowed aliases for a new domain. (0 to deny any creation,
|
|
2351
|
-
"-1 to allow unlimited creations)"
|
|
2356
|
+
"Maximum number of allowed aliases for a new domain. (0 to deny any creation,"
|
|
2357
|
+
" -1 to allow unlimited creations)"
|
|
2352
2358
|
msgstr "Número máxido de alias permitidos para un nuevo administrador"
|
|
2353
2359
|
|
|
2354
2360
|
#: limits/apps.py:16
|
|
@@ -2524,13 +2530,13 @@ msgstr "Cuentas"
|
|
|
2524
2530
|
msgid "Personal account information"
|
|
2525
2531
|
msgstr "Actualizar su información personal"
|
|
2526
2532
|
|
|
2527
|
-
#: pdfcredentials/api/v2/serializers.py:
|
|
2533
|
+
#: pdfcredentials/api/v2/serializers.py:86
|
|
2528
2534
|
#, fuzzy
|
|
2529
2535
|
#| msgid "Domain not found."
|
|
2530
2536
|
msgid "Directory is not writable"
|
|
2531
2537
|
msgstr "Dominio no encontrado."
|
|
2532
2538
|
|
|
2533
|
-
#: pdfcredentials/api/v2/serializers.py:
|
|
2539
|
+
#: pdfcredentials/api/v2/serializers.py:114
|
|
2534
2540
|
#, fuzzy
|
|
2535
2541
|
#| msgid "No information available for this domain."
|
|
2536
2542
|
msgid "No document available for this user"
|
|
@@ -2821,8 +2827,8 @@ msgstr ""
|
|
|
2821
2827
|
|
|
2822
2828
|
#: rspamd/app_settings.py:21
|
|
2823
2829
|
msgid ""
|
|
2824
|
-
"Absolute path of the file which contains paths to DKIM private keys. Must be
|
|
2825
|
-
"readable by _rspamd group or user."
|
|
2830
|
+
"Absolute path of the file which contains paths to DKIM private keys. Must be"
|
|
2831
|
+
" readable by _rspamd group or user."
|
|
2826
2832
|
msgstr ""
|
|
2827
2833
|
|
|
2828
2834
|
#: rspamd/app_settings.py:30
|
|
@@ -2841,8 +2847,8 @@ msgstr ""
|
|
|
2841
2847
|
|
|
2842
2848
|
#: rspamd/app_settings.py:53
|
|
2843
2849
|
msgid ""
|
|
2844
|
-
"Location of the rspamd dashboard. Can either be a relative URL (eg.
|
|
2845
|
-
"rspamd') or a full URL (eg. 'https://rspamd.domain.tld/').Only use for "
|
|
2850
|
+
"Location of the rspamd dashboard. Can either be a relative URL (eg. "
|
|
2851
|
+
"'/rspamd') or a full URL (eg. 'https://rspamd.domain.tld/').Only use for "
|
|
2846
2852
|
"guidance on the Super-Admin dashboard."
|
|
2847
2853
|
msgstr ""
|
|
2848
2854
|
|
|
@@ -2992,7 +2998,8 @@ msgstr "Detener procesamiento"
|
|
|
2992
2998
|
|
|
2993
2999
|
#: sievefilters/lib.py:49
|
|
2994
3000
|
msgid "Connection to MANAGESIEVE server failed, check your configuration"
|
|
2995
|
-
msgstr "
|
|
3001
|
+
msgstr ""
|
|
3002
|
+
"La conexión al servidor MANAGESIEVE falló, verifique su configuración."
|
|
2996
3003
|
|
|
2997
3004
|
#: sievefilters/lib.py:76
|
|
2998
3005
|
#, fuzzy
|
|
@@ -3093,10 +3100,10 @@ msgid ""
|
|
|
3093
3100
|
"primary address, and check your spam folder.</p>"
|
|
3094
3101
|
msgstr ""
|
|
3095
3102
|
"<p>Si existe una cuenta con el correo electrónico introducido, recibirá en "
|
|
3096
|
-
"breves instantes instrucciones via email para cambiar su
|
|
3097
|
-
"p><p>Si no recibe el correo, por favor compruebe que la
|
|
3098
|
-
"electrónico introducida es su dirección principal y
|
|
3099
|
-
"correo basura.</p>"
|
|
3103
|
+
"breves instantes instrucciones via email para cambiar su "
|
|
3104
|
+
"contraseña.</p><p>Si no recibe el correo, por favor compruebe que la "
|
|
3105
|
+
"dirección de correo electrónico introducida es su dirección principal y "
|
|
3106
|
+
"revise su directorio de correo basura.</p>"
|
|
3100
3107
|
|
|
3101
3108
|
#: templates/registration/password_reset_email.html:4
|
|
3102
3109
|
#: templates/registration/password_reset_email_v2.html:4
|
|
@@ -3148,8 +3155,8 @@ msgstr "Contraseña anterior"
|
|
|
3148
3155
|
|
|
3149
3156
|
#: templates/registration/twofactor_code_verify.html:35
|
|
3150
3157
|
msgid ""
|
|
3151
|
-
"Enter the code from the two-factor app on your mobile device. If you've lost
|
|
3152
|
-
"your device, you may enter one of your recovery codes."
|
|
3158
|
+
"Enter the code from the two-factor app on your mobile device. If you've lost"
|
|
3159
|
+
" your device, you may enter one of your recovery codes."
|
|
3153
3160
|
msgstr ""
|
|
3154
3161
|
|
|
3155
3162
|
#: templates/registration/twofactor_code_verify.html:42
|
|
@@ -3354,16 +3361,32 @@ msgstr "Texto de la firma"
|
|
|
3354
3361
|
msgid "User defined email signature"
|
|
3355
3362
|
msgstr "Firma de correo definida por el usuario"
|
|
3356
3363
|
|
|
3364
|
+
#: webmail/exceptions.py:18
|
|
3365
|
+
#, fuzzy
|
|
3366
|
+
#| msgid "Server address"
|
|
3367
|
+
msgid "Server response"
|
|
3368
|
+
msgstr "Dirección del servidor"
|
|
3369
|
+
|
|
3357
3370
|
#: webmail/lib/attachments.py:112
|
|
3358
3371
|
#, fuzzy
|
|
3359
3372
|
#| msgid "Failed to remove filter"
|
|
3360
3373
|
msgid "Failed to remove attachment: "
|
|
3361
3374
|
msgstr "Fallo al eliminar el adjunto:"
|
|
3362
3375
|
|
|
3376
|
+
#: webmail/lib/imapemail.py:272
|
|
3377
|
+
msgid "wrote:"
|
|
3378
|
+
msgstr ""
|
|
3379
|
+
|
|
3363
3380
|
#: webmail/lib/imapemail.py:306
|
|
3364
3381
|
msgid "Date"
|
|
3365
3382
|
msgstr "Fecha"
|
|
3366
3383
|
|
|
3384
|
+
#: webmail/lib/imapemail.py:322 webmail/lib/imapemail.py:325
|
|
3385
|
+
#, fuzzy
|
|
3386
|
+
#| msgid "sent messages"
|
|
3387
|
+
msgid "Original message"
|
|
3388
|
+
msgstr "Todos los mensajes"
|
|
3389
|
+
|
|
3367
3390
|
#: webmail/lib/imaputils.py:221
|
|
3368
3391
|
msgid "Failed to retrieve hierarchy delimiter"
|
|
3369
3392
|
msgstr "Fallo al recuperar el delimitador jerárquico"
|
|
@@ -3394,3 +3417,7 @@ msgstr ""
|
|
|
3394
3417
|
#, python-format
|
|
3395
3418
|
msgid "Attachment is too big (limit: %s)"
|
|
3396
3419
|
msgstr "EL adjunto es demasiado grande (límite: %s)"
|
|
3420
|
+
|
|
3421
|
+
#, fuzzy, python-brace-format
|
|
3422
|
+
#~ msgid "Connection to IMAP server failed: {error}"
|
|
3423
|
+
#~ msgstr "Falló la conexión con el servidor IMAP: %s"
|