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.
Files changed (359) hide show
  1. modoboa/admin/api/v2/serializers.py +1 -0
  2. modoboa/admin/app_settings.py +12 -0
  3. modoboa/admin/{management/commands/subcommands/_mx.py → dns_checker.py} +41 -111
  4. modoboa/admin/jobs.py +86 -0
  5. modoboa/admin/management/commands/modo.py +0 -2
  6. modoboa/admin/tests/test_mailbox_operations.py +4 -4
  7. modoboa/admin/tests/test_mx.py +68 -56
  8. modoboa/amavis/jobs.py +11 -0
  9. modoboa/amavis/tests/test_jobs.py +18 -0
  10. modoboa/amavis/tests/test_viewsets.py +2 -3
  11. modoboa/autoconfig/templates/autoconfig/autoconfig.xml +2 -2
  12. modoboa/autoconfig/templates/autoconfig/autodiscover.xml +14 -0
  13. modoboa/autoconfig/tests.py +2 -1
  14. modoboa/autoconfig/views.py +11 -3
  15. modoboa/calendars/backends/caldav_.py +17 -13
  16. modoboa/calendars/jobs.py +7 -0
  17. modoboa/calendars/mocks.py +4 -1
  18. modoboa/calendars/serializers.py +14 -9
  19. modoboa/calendars/tests.py +10 -9
  20. modoboa/calendars/viewsets.py +3 -1
  21. modoboa/contacts/migrations/0008_addressbook_syncing.py +18 -0
  22. modoboa/contacts/models.py +1 -0
  23. modoboa/contacts/serializers.py +5 -2
  24. modoboa/contacts/tasks.py +9 -3
  25. modoboa/contacts/tests.py +32 -6
  26. modoboa/contacts/viewsets.py +7 -1
  27. modoboa/core/api/v2/serializers.py +0 -7
  28. modoboa/core/api/v2/tests.py +0 -10
  29. modoboa/core/app_settings.py +0 -22
  30. modoboa/core/commands/deploy.py +13 -0
  31. modoboa/core/commands/templates/cron_config.py.tpl +33 -0
  32. modoboa/core/commands/templates/settings.py.tpl +21 -0
  33. modoboa/core/jobs.py +34 -0
  34. modoboa/core/management/commands/load_initial_data.py +1 -1
  35. modoboa/core/password_hashers/base.py +4 -1
  36. modoboa/core/tests/test_core.py +0 -14
  37. modoboa/core/tests/test_jobs.py +40 -0
  38. modoboa/frontend_dist/assets/{AccountAliasForm-B-hTKSFr.js → AccountAliasForm-DO6DwfjE.js} +1 -1
  39. modoboa/frontend_dist/assets/{AccountEditView-LkP_qhf_.js → AccountEditView-CCuN9mGB.js} +1 -1
  40. modoboa/frontend_dist/assets/AccountLayout-Ge7fzuZg.js +1 -0
  41. modoboa/frontend_dist/assets/AccountPasswordSubForm-PkFPblkR.js +1 -0
  42. modoboa/frontend_dist/assets/AccountView-dgseekZ8.js +1 -0
  43. modoboa/frontend_dist/assets/AddressBook-DZWOHOJj.js +1 -0
  44. modoboa/frontend_dist/assets/AdminLayout-itB_mmH_.js +1 -0
  45. modoboa/frontend_dist/assets/AlarmsView-King6zb6.js +1 -0
  46. modoboa/frontend_dist/assets/{AliasEditView-BVjNJekt.js → AliasEditView-CTjrXYPf.js} +1 -1
  47. modoboa/frontend_dist/assets/AliasRecipientForm-CI7bXqVp.js +1 -0
  48. modoboa/frontend_dist/assets/{AliasView-DvvI6cV9.js → AliasView-BN13MNN_.js} +1 -1
  49. modoboa/frontend_dist/assets/AuditTrailView-C1jQwgoo.js +1 -0
  50. modoboa/frontend_dist/assets/CalendarView-juHVIHU5.css +1 -0
  51. modoboa/frontend_dist/assets/CalendarView-rRSzqxrH.js +1 -0
  52. modoboa/frontend_dist/assets/ChoiceField-DCr12shR.js +1 -0
  53. modoboa/frontend_dist/assets/ComposeEmailForm-BmtKwFb1.js +2 -0
  54. modoboa/frontend_dist/assets/ComposeEmailForm-CVNDl-Mq.css +1 -0
  55. modoboa/frontend_dist/assets/ComposeEmailView-JW22Phrb.js +1 -0
  56. modoboa/frontend_dist/assets/ConfirmDialog-CWpdwSQ6.js +1 -0
  57. modoboa/frontend_dist/assets/ConnectedLayout-BP8pO27H.js +1 -0
  58. modoboa/frontend_dist/assets/{ConnectedLayout-C6HNXWkp.css → ConnectedLayout-Ddpb_6yT.css} +1 -1
  59. modoboa/frontend_dist/assets/CreationForm-CzelJsVQ.js +1 -0
  60. modoboa/frontend_dist/assets/DashboardView-BBkBodVj.js +1 -0
  61. modoboa/frontend_dist/assets/{DomainAdminList-BO8_4Cwt.js → DomainAdminList-DD7p3i6F.js} +1 -1
  62. modoboa/frontend_dist/assets/{DomainEditView-BXylM4aB.js → DomainEditView-DoIoNYC4.js} +1 -1
  63. modoboa/frontend_dist/assets/{DomainTransportForm-Ccw5BXyM.js → DomainTransportForm-CbiJF9z5.js} +1 -1
  64. modoboa/frontend_dist/assets/{DomainView-Bd5XQI-1.js → DomainView-BXvznFYz.js} +3 -3
  65. modoboa/frontend_dist/assets/DomainsView-ffYjiffp.js +1 -0
  66. modoboa/frontend_dist/assets/EmailField-KhhJYA4D.js +1 -0
  67. modoboa/frontend_dist/assets/EmailSchedulingForm-CQL5Vfdr.js +1 -0
  68. modoboa/frontend_dist/assets/EmailView-Bq2bHZBO.js +1 -0
  69. modoboa/frontend_dist/assets/EmptyLayout-NrTftp18.js +1 -0
  70. modoboa/frontend_dist/assets/FiltersView-SOQy0U_3.js +1 -0
  71. modoboa/frontend_dist/assets/ForwardEmailView-kEPDjWUw.js +1 -0
  72. modoboa/frontend_dist/assets/{HtmlEditor-DNn3CY-w.js → HtmlEditor-CyBl5wj2.js} +15 -15
  73. modoboa/frontend_dist/assets/IdentitiesView-CZFf4oR9.js +1 -0
  74. modoboa/frontend_dist/assets/InformationView-CAtneAqM.js +1 -0
  75. modoboa/frontend_dist/assets/{LoadingData-CnQ_aVqa.js → LoadingData-C2txD49L.js} +1 -1
  76. modoboa/frontend_dist/assets/{LoginCallbackView-Nh_gmh8e.js → LoginCallbackView-DAvty3CI.js} +1 -1
  77. modoboa/frontend_dist/assets/{LoginView-BtC9BHuJ.js → LoginView-DHYITkn4.js} +1 -1
  78. modoboa/frontend_dist/assets/MailboxView-BNg2v7mi.css +1 -0
  79. modoboa/frontend_dist/assets/MailboxView-DHg5A78D.js +5 -0
  80. modoboa/frontend_dist/assets/MenuItems-C9p70bSC.js +1 -0
  81. modoboa/frontend_dist/assets/{MessageView-C1Goz-hY.js → MessageView-CrrEJpNI.js} +1 -1
  82. modoboa/frontend_dist/assets/MessagesView-CyecRd4I.js +1 -0
  83. modoboa/frontend_dist/assets/MigrationsView-DXGKKz2h.js +1 -0
  84. modoboa/frontend_dist/assets/{ParametersForm-BegEnkQM.js → ParametersForm-DFKYkPAs.js} +1 -1
  85. modoboa/frontend_dist/assets/ParametersView-B1wT5oyt.js +1 -0
  86. modoboa/frontend_dist/assets/ParametersView-CfvVzKea.js +1 -0
  87. modoboa/frontend_dist/assets/ProviderEditView-De-8ggBp.js +1 -0
  88. modoboa/frontend_dist/assets/{ProviderGeneralForm-BAELnXh6.js → ProviderGeneralForm-DO-IpJMQ.js} +1 -1
  89. modoboa/frontend_dist/assets/ProvidersView-Bhk7sCz4.js +1 -0
  90. modoboa/frontend_dist/assets/QuarantineLayout-C1YszNmP.js +1 -0
  91. modoboa/frontend_dist/assets/QuarantineView-cElD_rS-.js +1 -0
  92. modoboa/frontend_dist/assets/ReplyEmailView-BvuOZdLl.js +1 -0
  93. modoboa/frontend_dist/assets/ResourcesForm-FWxrmVwo.js +1 -0
  94. modoboa/frontend_dist/assets/SelfServiceLayout-JHRvfvQf.js +1 -0
  95. modoboa/frontend_dist/assets/SettingsView-SIsKAXtQ.css +1 -0
  96. modoboa/frontend_dist/assets/SettingsView-s2l2Xl1L.js +6 -0
  97. modoboa/frontend_dist/assets/StatisticsView-FiidWvad.js +1 -0
  98. modoboa/frontend_dist/assets/TimeSerieChart-CdqUHiO_.js +1 -0
  99. modoboa/frontend_dist/assets/TimeSerieChart-nLIFGI0y.css +1 -0
  100. modoboa/frontend_dist/assets/UserLayout-DyvI8duf.js +1 -0
  101. modoboa/frontend_dist/assets/{VAlert-Buv8Z5G4.js → VAlert-MDbeolOo.js} +1 -1
  102. modoboa/frontend_dist/assets/VApp-DM1KLQfQ.js +1 -0
  103. modoboa/frontend_dist/assets/VAutocomplete-C9NL5_uo.css +1 -0
  104. modoboa/frontend_dist/assets/VAutocomplete-CQsWYWNX.js +1 -0
  105. modoboa/frontend_dist/assets/VAvatar-CXV_FqpP.js +1 -0
  106. modoboa/frontend_dist/assets/VBadge-7tDx7aI3.js +1 -0
  107. modoboa/frontend_dist/assets/{VCard-D7AwBs4w.js → VCard-CBtX8JF-.js} +1 -1
  108. modoboa/frontend_dist/assets/VCheckbox-zY1MApOy.js +1 -0
  109. modoboa/frontend_dist/assets/{VCheckboxBtn-B5evxN9K.js → VCheckboxBtn-B0mIT3E0.js} +1 -1
  110. modoboa/frontend_dist/assets/VColorPicker-BbCHvk6K.js +1 -0
  111. modoboa/frontend_dist/assets/{VColorPicker-B_lVDaYR.css → VColorPicker-C9m8L-6U.css} +1 -1
  112. modoboa/frontend_dist/assets/{VContainer-DY9021j4.js → VContainer-Cn-vKB3s.js} +1 -1
  113. modoboa/frontend_dist/assets/VDataTable-CNT9KOSp.js +1 -0
  114. modoboa/frontend_dist/assets/VDataTableServer-_yn4Ry6U.js +1 -0
  115. modoboa/frontend_dist/assets/VDataTableVirtual-Csxh3Gp6.js +1 -0
  116. modoboa/frontend_dist/assets/VDatePicker-_OUDqShN.css +1 -0
  117. modoboa/frontend_dist/assets/VDatePicker-iFu13xIP.js +2 -0
  118. modoboa/frontend_dist/assets/VDialog-lKtBdqnp.js +1 -0
  119. modoboa/frontend_dist/assets/VExpansionPanels-CaIvk9iF.js +1 -0
  120. modoboa/frontend_dist/assets/VFileInput-C7J_qVmk.js +1 -0
  121. modoboa/frontend_dist/assets/VForm-fdQ5d-CH.js +1 -0
  122. modoboa/frontend_dist/assets/VInput-BwHvhzAe.js +1 -0
  123. modoboa/frontend_dist/assets/VMenu-BpmJf4X2.js +1 -0
  124. modoboa/frontend_dist/assets/VMenu-C5A_5Hs5.css +1 -0
  125. modoboa/frontend_dist/assets/VPicker-B7cB3kJg.css +1 -0
  126. modoboa/frontend_dist/assets/VPicker-BZho70wU.js +1 -0
  127. modoboa/frontend_dist/assets/VProgressCircular-DRw_-iNj.js +1 -0
  128. modoboa/frontend_dist/assets/VRadioGroup--eiP5xtJ.js +1 -0
  129. modoboa/frontend_dist/assets/{VRow-DyK_Mj7R.js → VRow-83Qnr5iB.js} +1 -1
  130. modoboa/frontend_dist/assets/VSelect-BcmGFGif.js +1 -0
  131. modoboa/frontend_dist/assets/{VSelectionControl-Dkms9_P5.js → VSelectionControl-Cqi1xt-q.js} +1 -1
  132. modoboa/frontend_dist/assets/VSheet-C3MaHhtw.js +1 -0
  133. modoboa/frontend_dist/assets/VSpacer-CuSkdJZL.js +1 -0
  134. modoboa/frontend_dist/assets/VSwitch-XumUl685.js +1 -0
  135. modoboa/frontend_dist/assets/{VTable-D8ZwwC_B.js → VTable-f7wcr2AZ.js} +1 -1
  136. modoboa/frontend_dist/assets/VTabs-CDfdejXj.css +1 -0
  137. modoboa/frontend_dist/assets/VTabs-y4wNP4im.js +1 -0
  138. modoboa/frontend_dist/assets/VTextField-BPIvtrn4.js +1 -0
  139. modoboa/frontend_dist/assets/VTextField-DjbYGlzs.css +1 -0
  140. modoboa/frontend_dist/assets/VTextarea-B6bGYcC3.js +1 -0
  141. modoboa/frontend_dist/assets/VTextarea-f6vTjzFy.css +1 -0
  142. modoboa/frontend_dist/assets/VToolbar-BYDPtwf0.css +1 -0
  143. modoboa/frontend_dist/assets/VToolbar-CB6wwtYc.js +1 -0
  144. modoboa/frontend_dist/assets/VWindowItem-CDtLLEkg.js +1 -0
  145. modoboa/frontend_dist/assets/WebmailLayout-CQQAolnl.css +1 -0
  146. modoboa/frontend_dist/assets/WebmailLayout-tosQSHLS.js +1 -0
  147. modoboa/frontend_dist/assets/{accounts-BZBqbAmd.js → accounts-KUsk6LHW.js} +1 -1
  148. modoboa/frontend_dist/assets/{admin-uCrKjpln.js → admin-BW9cZW0P.js} +1 -1
  149. modoboa/frontend_dist/assets/{aliases-CFwFkX45.js → aliases-Ge0hjIsH.js} +1 -1
  150. modoboa/frontend_dist/assets/{amavis-DCy0U0TD.js → amavis-BbFeFfsk.js} +1 -1
  151. modoboa/frontend_dist/assets/{amavis-B4ScfQsG.js → amavis-DtuzP_CS.js} +1 -1
  152. modoboa/frontend_dist/assets/{contacts-DKmh2q-4.js → contacts-DMJlQTe0.js} +1 -1
  153. modoboa/frontend_dist/assets/{domains-CDE4_LDF.js → domains-Du64lcXT.js} +1 -1
  154. modoboa/frontend_dist/assets/{domains.store-a9Y5UlDV.js → domains.store-1U61jeCV.js} +1 -1
  155. modoboa/frontend_dist/assets/events-BM3in65C.js +1 -0
  156. modoboa/frontend_dist/assets/filter-Dihm6o59.js +1 -0
  157. modoboa/frontend_dist/assets/importExport-HGcNGWOm.js +1 -0
  158. modoboa/frontend_dist/assets/{index-B9q1vO3K.css → index-B1EK3MQe.css} +1 -1
  159. modoboa/frontend_dist/assets/{index-Dwg6jPTX.js → index-Dv00bmw9.js} +1 -1
  160. modoboa/frontend_dist/assets/{index-BjibLozh.js → index-jui3edpn.js} +47 -41
  161. modoboa/frontend_dist/assets/{language.store-DGuI8jG0.js → language.store-OcfdXL_-.js} +1 -1
  162. modoboa/frontend_dist/assets/languages-CF8hxo7x.js +1 -0
  163. modoboa/frontend_dist/assets/{layout-5PvsmkGR.js → layout-DOO7TRTJ.js} +1 -1
  164. modoboa/frontend_dist/assets/{layout.store-DJVcXtxk.js → layout.store-C0g-piJn.js} +1 -1
  165. modoboa/frontend_dist/assets/{logos-CMmd0hOG.js → logos-Dz2Gzei-.js} +1 -1
  166. modoboa/frontend_dist/assets/{logs-D2GOydPZ.js → logs-CLm32Weu.js} +1 -1
  167. modoboa/frontend_dist/assets/{parameters-DJdlq9sh.js → parameters-DMIAQ7cd.js} +1 -1
  168. modoboa/frontend_dist/assets/{parameters.store-DH3pPlaT.js → parameters.store-DLnFzCwV.js} +1 -1
  169. modoboa/frontend_dist/assets/{permissions-CgFJFhCp.js → permissions-CrpE0b4w.js} +1 -1
  170. modoboa/frontend_dist/assets/{ssrBoot-ChTB-PYP.js → ssrBoot-B7cr7q9U.js} +1 -1
  171. modoboa/frontend_dist/assets/{tag-CvrHE14f.js → tag-WF93n81Q.js} +1 -1
  172. modoboa/frontend_dist/assets/{theme-DFzlhSh5.js → theme-_0oOYChG.js} +1 -1
  173. modoboa/frontend_dist/assets/transports-CS61syt-.js +1 -0
  174. modoboa/frontend_dist/assets/webmail-CYDXU0DS.js +1 -0
  175. modoboa/frontend_dist/assets/webmail.store-BvHCQSjM.js +1 -0
  176. modoboa/frontend_dist/index.html +2 -2
  177. modoboa/imap_migration/models.py +3 -3
  178. modoboa/imap_migration/templates/imap_migration/offlineimap.conf +2 -2
  179. modoboa/imap_migration/tests.py +21 -0
  180. modoboa/lib/cryptutils.py +2 -2
  181. modoboa/lib/sysutils.py +1 -1
  182. modoboa/lib/tests/__init__.py +0 -1
  183. modoboa/locale/br/LC_MESSAGES/django.mo +0 -0
  184. modoboa/locale/br/LC_MESSAGES/django.po +301 -273
  185. modoboa/locale/cs/LC_MESSAGES/django.po +286 -269
  186. modoboa/locale/cs_CZ/LC_MESSAGES/django.mo +0 -0
  187. modoboa/locale/cs_CZ/LC_MESSAGES/django.po +303 -275
  188. modoboa/locale/de/LC_MESSAGES/django.mo +0 -0
  189. modoboa/locale/de/LC_MESSAGES/django.po +297 -269
  190. modoboa/locale/de_DE/LC_MESSAGES/django.mo +0 -0
  191. modoboa/locale/de_DE/LC_MESSAGES/django.po +303 -275
  192. modoboa/locale/el_GR/LC_MESSAGES/django.mo +0 -0
  193. modoboa/locale/el_GR/LC_MESSAGES/django.po +303 -275
  194. modoboa/locale/en/LC_MESSAGES/django.po +286 -269
  195. modoboa/locale/es/LC_MESSAGES/django.mo +0 -0
  196. modoboa/locale/es/LC_MESSAGES/django.po +302 -274
  197. modoboa/locale/es_MX/LC_MESSAGES/django.po +286 -269
  198. modoboa/locale/fi/LC_MESSAGES/django.mo +0 -0
  199. modoboa/locale/fi/LC_MESSAGES/django.po +299 -271
  200. modoboa/locale/fr/LC_MESSAGES/django.mo +0 -0
  201. modoboa/locale/fr/LC_MESSAGES/django.po +288 -271
  202. modoboa/locale/hu/LC_MESSAGES/django.po +286 -269
  203. modoboa/locale/it/LC_MESSAGES/django.mo +0 -0
  204. modoboa/locale/it/LC_MESSAGES/django.po +303 -275
  205. modoboa/locale/ja_JP/LC_MESSAGES/django.mo +0 -0
  206. modoboa/locale/ja_JP/LC_MESSAGES/django.po +390 -413
  207. modoboa/locale/ka/LC_MESSAGES/django.po +286 -269
  208. modoboa/locale/nl_NL/LC_MESSAGES/django.mo +0 -0
  209. modoboa/locale/nl_NL/LC_MESSAGES/django.po +299 -271
  210. modoboa/locale/no/LC_MESSAGES/django.po +286 -269
  211. modoboa/locale/pl_PL/LC_MESSAGES/django.mo +0 -0
  212. modoboa/locale/pl_PL/LC_MESSAGES/django.po +297 -269
  213. modoboa/locale/pt_BR/LC_MESSAGES/django.mo +0 -0
  214. modoboa/locale/pt_BR/LC_MESSAGES/django.po +298 -270
  215. modoboa/locale/pt_PT/LC_MESSAGES/django.mo +0 -0
  216. modoboa/locale/pt_PT/LC_MESSAGES/django.po +303 -275
  217. modoboa/locale/ro_RO/LC_MESSAGES/django.mo +0 -0
  218. modoboa/locale/ro_RO/LC_MESSAGES/django.po +299 -271
  219. modoboa/locale/ru/LC_MESSAGES/django.mo +0 -0
  220. modoboa/locale/ru/LC_MESSAGES/django.po +993 -1096
  221. modoboa/locale/si/LC_MESSAGES/django.po +286 -269
  222. modoboa/locale/sk/LC_MESSAGES/django.po +286 -269
  223. modoboa/locale/sk_SK/LC_MESSAGES/django.po +286 -269
  224. modoboa/locale/sl_SI/LC_MESSAGES/django.po +288 -269
  225. modoboa/locale/sv/LC_MESSAGES/django.mo +0 -0
  226. modoboa/locale/sv/LC_MESSAGES/django.po +297 -269
  227. modoboa/locale/tr/LC_MESSAGES/django.mo +0 -0
  228. modoboa/locale/tr/LC_MESSAGES/django.po +301 -272
  229. modoboa/locale/tr_TR/LC_MESSAGES/django.mo +0 -0
  230. modoboa/locale/tr_TR/LC_MESSAGES/django.po +291 -269
  231. modoboa/locale/uk/LC_MESSAGES/django.po +286 -269
  232. modoboa/locale/zh/LC_MESSAGES/django.po +286 -269
  233. modoboa/locale/zh_CN/LC_MESSAGES/django.po +286 -269
  234. modoboa/locale/zh_TW/LC_MESSAGES/django.mo +0 -0
  235. modoboa/locale/zh_TW/LC_MESSAGES/django.po +295 -273
  236. modoboa/maillog/jobs.py +11 -0
  237. modoboa/maillog/tests/test_views.py +5 -4
  238. modoboa/parameters/api/v2/tests.py +1 -1
  239. modoboa/policyd/management/commands/policy_daemon.py +5 -1
  240. modoboa/policyd/tests.py +4 -2
  241. modoboa/rspamd/tests.py +20 -0
  242. modoboa/templates/registration/twofactor_code_verify.html +1 -1
  243. modoboa/webmail/app_settings.py +37 -0
  244. modoboa/webmail/constants.py +21 -1
  245. modoboa/webmail/factories.py +19 -0
  246. modoboa/webmail/jobs.py +27 -0
  247. modoboa/webmail/lib/__init__.py +0 -2
  248. modoboa/webmail/lib/imapemail.py +9 -11
  249. modoboa/webmail/lib/imapheader.py +25 -13
  250. modoboa/webmail/lib/imaputils.py +51 -13
  251. modoboa/webmail/lib/sendmail.py +88 -105
  252. modoboa/webmail/lib/utils.py +109 -0
  253. modoboa/webmail/migrations/0001_initial.py +90 -0
  254. modoboa/webmail/migrations/__init__.py +0 -0
  255. modoboa/webmail/mocks.py +12 -3
  256. modoboa/webmail/models.py +102 -0
  257. modoboa/webmail/serializers.py +84 -4
  258. modoboa/webmail/tests/data.py +21 -0
  259. modoboa/webmail/tests/test_lib_imaputils.py +33 -0
  260. modoboa/webmail/tests/test_viewsets.py +108 -0
  261. modoboa/webmail/urls.py +5 -0
  262. modoboa/webmail/viewsets.py +39 -9
  263. {modoboa-2.6.5.dist-info → modoboa-2.7.0.dist-info}/METADATA +16 -13
  264. {modoboa-2.6.5.dist-info → modoboa-2.7.0.dist-info}/RECORD +269 -252
  265. {modoboa-2.6.5.dist-info → modoboa-2.7.0.dist-info}/WHEEL +1 -1
  266. modoboa/admin/management/commands/handle_mailbox_operations.py +0 -103
  267. modoboa/core/management/commands/cleanlogs.py +0 -53
  268. modoboa/frontend_dist/assets/AccountLayout-APeC9bsN.js +0 -1
  269. modoboa/frontend_dist/assets/AccountPasswordSubForm-D4vB2yQK.js +0 -1
  270. modoboa/frontend_dist/assets/AccountView-CloBP1BY.js +0 -1
  271. modoboa/frontend_dist/assets/AddressBook-C03MXg3y.js +0 -1
  272. modoboa/frontend_dist/assets/AdminLayout-DFmyKOo6.js +0 -1
  273. modoboa/frontend_dist/assets/AlarmsView-CFhH0I5d.js +0 -1
  274. modoboa/frontend_dist/assets/AliasRecipientForm-CZ_SvjtG.js +0 -1
  275. modoboa/frontend_dist/assets/AuditTrailView-Cyq25Jle.js +0 -1
  276. modoboa/frontend_dist/assets/CalendarView-C_dSXRp9.js +0 -1
  277. modoboa/frontend_dist/assets/ChoiceField-BPhUvoyr.js +0 -1
  278. modoboa/frontend_dist/assets/ComposeEmailForm-D3yUbBJX.css +0 -1
  279. modoboa/frontend_dist/assets/ComposeEmailForm-Ns5SYs4J.js +0 -1
  280. modoboa/frontend_dist/assets/ComposeEmailView-DgUfiWEH.js +0 -1
  281. modoboa/frontend_dist/assets/ConfirmDialog-BMIg94-U.js +0 -1
  282. modoboa/frontend_dist/assets/ConnectedLayout-CSXdVJtV.js +0 -1
  283. modoboa/frontend_dist/assets/CreationForm-CaAZYATm.js +0 -1
  284. modoboa/frontend_dist/assets/DashboardView-DErmyUoy.js +0 -1
  285. modoboa/frontend_dist/assets/DomainsView-CC1EwRId.js +0 -1
  286. modoboa/frontend_dist/assets/EmailField-BFgga4zp.js +0 -1
  287. modoboa/frontend_dist/assets/EmailView-DPWTch_6.js +0 -1
  288. modoboa/frontend_dist/assets/EmptyLayout-DAw7fAab.js +0 -1
  289. modoboa/frontend_dist/assets/FiltersView-Cg9lkLw0.js +0 -1
  290. modoboa/frontend_dist/assets/ForwardEmailView-Dd1sxgaP.js +0 -1
  291. modoboa/frontend_dist/assets/IdentitiesView-CiHIQ9Qt.js +0 -1
  292. modoboa/frontend_dist/assets/InformationView-Cc0aBA5j.js +0 -1
  293. modoboa/frontend_dist/assets/MailboxView-DIVABvk5.css +0 -1
  294. modoboa/frontend_dist/assets/MailboxView-DplC0IXR.js +0 -5
  295. modoboa/frontend_dist/assets/MenuItems-efx2rqwT.js +0 -1
  296. modoboa/frontend_dist/assets/MessagesView-CesYYZ9f.js +0 -1
  297. modoboa/frontend_dist/assets/MigrationsView-DSBk8T0y.js +0 -1
  298. modoboa/frontend_dist/assets/ParametersView-B8W_PAiz.js +0 -1
  299. modoboa/frontend_dist/assets/ParametersView-Dsx2M_g9.js +0 -1
  300. modoboa/frontend_dist/assets/ProviderEditView-PEAr7MA1.js +0 -1
  301. modoboa/frontend_dist/assets/ProvidersView-CHvQf3Vv.js +0 -1
  302. modoboa/frontend_dist/assets/QuarantineLayout-BWEaBK48.js +0 -1
  303. modoboa/frontend_dist/assets/QuarantineView-BzjeDhTm.js +0 -1
  304. modoboa/frontend_dist/assets/ReplyEmailView-CwQ9jsce.js +0 -1
  305. modoboa/frontend_dist/assets/ResourcesForm-noC3AXd9.js +0 -1
  306. modoboa/frontend_dist/assets/SelfServiceLayout-DQgRMu0L.js +0 -1
  307. modoboa/frontend_dist/assets/SettingsView-DJTdIeRK.css +0 -1
  308. modoboa/frontend_dist/assets/SettingsView-Dgwpfd8O.js +0 -6
  309. modoboa/frontend_dist/assets/StatisticsView-BZkVSh5o.js +0 -1
  310. modoboa/frontend_dist/assets/TimeSerieChart-BXJwhTMO.js +0 -1
  311. modoboa/frontend_dist/assets/TimeSerieChart-C3XHmlRd.css +0 -1
  312. modoboa/frontend_dist/assets/UserLayout-CWK9ICfE.js +0 -1
  313. modoboa/frontend_dist/assets/VApp-CiIBWB_Q.js +0 -1
  314. modoboa/frontend_dist/assets/VAutocomplete-DcNqTIie.js +0 -1
  315. modoboa/frontend_dist/assets/VAutocomplete-hzGuLlUI.css +0 -1
  316. modoboa/frontend_dist/assets/VAvatar-BsHplcRP.js +0 -1
  317. modoboa/frontend_dist/assets/VBadge-CavP_E2g.js +0 -1
  318. modoboa/frontend_dist/assets/VCheckbox-CKW9lz5i.js +0 -1
  319. modoboa/frontend_dist/assets/VColorPicker-Bsrz8yif.js +0 -1
  320. modoboa/frontend_dist/assets/VDataTable-ocZo8ju0.js +0 -1
  321. modoboa/frontend_dist/assets/VDataTableServer-CJfpYXQW.js +0 -1
  322. modoboa/frontend_dist/assets/VDataTableVirtual-Cr8yw49k.js +0 -1
  323. modoboa/frontend_dist/assets/VDialog-CUMh3paI.js +0 -1
  324. modoboa/frontend_dist/assets/VExpansionPanels-CkwHiKsA.js +0 -1
  325. modoboa/frontend_dist/assets/VFileInput-D5qlksIG.js +0 -1
  326. modoboa/frontend_dist/assets/VForm-ClJU5x_v.js +0 -1
  327. modoboa/frontend_dist/assets/VInput-DhzSMFXh.js +0 -1
  328. modoboa/frontend_dist/assets/VMenu-B53a3gm6.js +0 -1
  329. modoboa/frontend_dist/assets/VMenu-BEipA1lw.css +0 -1
  330. modoboa/frontend_dist/assets/VPicker-B928ZVJQ.js +0 -1
  331. modoboa/frontend_dist/assets/VPicker-ClSXs6kv.css +0 -1
  332. modoboa/frontend_dist/assets/VProgressCircular-viI3jDXe.js +0 -1
  333. modoboa/frontend_dist/assets/VRadioGroup-C0bqFrYg.js +0 -1
  334. modoboa/frontend_dist/assets/VSelect-y0E5_vPn.js +0 -1
  335. modoboa/frontend_dist/assets/VSheet-DQkh_hsX.js +0 -1
  336. modoboa/frontend_dist/assets/VSpacer-CBqB9uSt.js +0 -1
  337. modoboa/frontend_dist/assets/VSwitch-D4xdR9jz.js +0 -1
  338. modoboa/frontend_dist/assets/VTabs-D2c0KeF2.js +0 -1
  339. modoboa/frontend_dist/assets/VTabs-NzpINroH.css +0 -1
  340. modoboa/frontend_dist/assets/VTextField-Cow3HZvI.css +0 -1
  341. modoboa/frontend_dist/assets/VTextField-DvvH1ciR.js +0 -1
  342. modoboa/frontend_dist/assets/VTextarea-DHtXtzqP.js +0 -1
  343. modoboa/frontend_dist/assets/VTextarea-DyGjqrlm.css +0 -1
  344. modoboa/frontend_dist/assets/VToolbar-CB2GrZpA.css +0 -1
  345. modoboa/frontend_dist/assets/VToolbar-pvLQtmbU.js +0 -1
  346. modoboa/frontend_dist/assets/VWindowItem-DErNPSH8.js +0 -1
  347. modoboa/frontend_dist/assets/WebmailLayout-BzW0LWYp.css +0 -1
  348. modoboa/frontend_dist/assets/WebmailLayout-D7J-QJ-0.js +0 -1
  349. modoboa/frontend_dist/assets/filter-BVvMTmPG.js +0 -1
  350. modoboa/frontend_dist/assets/global.store-Bha4Z76j.js +0 -1
  351. modoboa/frontend_dist/assets/importExport-EgijWlC1.js +0 -1
  352. modoboa/frontend_dist/assets/languages-Cge6pECg.js +0 -1
  353. modoboa/frontend_dist/assets/transports-BUSYxSF4.js +0 -1
  354. modoboa/frontend_dist/assets/webmail-HVg3ZHC0.js +0 -1
  355. modoboa/frontend_dist/assets/webmail.store-D-d88s4w.js +0 -1
  356. {modoboa-2.6.5.data → modoboa-2.7.0.data}/scripts/modoboa-admin.py +0 -0
  357. {modoboa-2.6.5.dist-info → modoboa-2.7.0.dist-info}/entry_points.txt +0 -0
  358. {modoboa-2.6.5.dist-info → modoboa-2.7.0.dist-info}/licenses/LICENSE +0 -0
  359. {modoboa-2.6.5.dist-info → modoboa-2.7.0.dist-info}/top_level.txt +0 -0
@@ -10,7 +10,7 @@ msgid ""
10
10
  msgstr ""
11
11
  "Project-Id-Version: Modoboa\n"
12
12
  "Report-Msgid-Bugs-To: \n"
13
- "POT-Creation-Date: 2025-12-02 16:07+0100\n"
13
+ "POT-Creation-Date: 2026-02-04 09:30+0100\n"
14
14
  "PO-Revision-Date: 2021-10-04 13:27+0000\n"
15
15
  "Last-Translator: Simona Iacob <s@zp1.net>\n"
16
16
  "Language-Team: Romanian (Romania) (http://www.transifex.com/tonio/modoboa/"
@@ -51,14 +51,14 @@ msgid "Cannot be greater than domain quota"
51
51
  msgstr "Nu poate fi mai mare decat cota domeniului"
52
52
 
53
53
  #: admin/api/v1/serializers.py:168 admin/api/v1/serializers.py:364
54
- #: admin/api/v2/serializers.py:570 admin/models/alias.py:45
54
+ #: admin/api/v2/serializers.py:571 admin/models/alias.py:45
55
55
  msgid "Permission denied."
56
56
  msgstr "Permisiune refuzată."
57
57
 
58
58
  #: admin/api/v1/serializers.py:231 admin/api/v2/serializers.py:90
59
- #: admin/api/v2/serializers.py:491 amavis/serializers.py:39
60
- #: core/api/v2/serializers.py:255 core/api/v2/serializers.py:257
61
- #: core/api/v2/serializers.py:266 transport/backends.py:40
59
+ #: admin/api/v2/serializers.py:492 amavis/serializers.py:39
60
+ #: core/api/v2/serializers.py:248 core/api/v2/serializers.py:250
61
+ #: core/api/v2/serializers.py:259 transport/backends.py:40
62
62
  msgid "This field is required"
63
63
  msgstr "Acest câmp este necesar"
64
64
 
@@ -68,7 +68,7 @@ msgid ""
68
68
  msgstr ""
69
69
  "Lista domenilor administrate (doar reselleri și administratori de domeniu)"
70
70
 
71
- #: admin/api/v1/serializers.py:337 admin/api/v2/serializers.py:552
71
+ #: admin/api/v1/serializers.py:337 admin/api/v2/serializers.py:553
72
72
  msgid "Not allowed for this role."
73
73
  msgstr "Ne permis pentru acest rol."
74
74
 
@@ -76,13 +76,12 @@ msgstr "Ne permis pentru acest rol."
76
76
  msgid "Must be equal to mailbox full_address"
77
77
  msgstr "Trebuie să fie egal cu mailbox full_address"
78
78
 
79
- #: admin/api/v1/serializers.py:397 admin/api/v2/serializers.py:604
80
- #: calendars/serializers.py:175 calendars/serializers.py:177
81
- #: pdfcredentials/api/v2/serializers.py:91
79
+ #: admin/api/v1/serializers.py:397 admin/api/v2/serializers.py:605
80
+ #: calendars/serializers.py:182 pdfcredentials/api/v2/serializers.py:91
82
81
  msgid "This field is required."
83
82
  msgstr "Acest câmp este necesar."
84
83
 
85
- #: admin/api/v1/serializers.py:409 admin/api/v2/serializers.py:621
84
+ #: admin/api/v1/serializers.py:409 admin/api/v2/serializers.py:622
86
85
  msgid "Local domain {} does not exist"
87
86
  msgstr "Domeniu local {} nu există"
88
87
 
@@ -125,41 +124,41 @@ msgstr "Nu poți sa definești o cotă nelimitată"
125
124
  msgid "User '%s' already exists"
126
125
  msgstr "Utilizatorul '%s'  exista deja"
127
126
 
128
- #: admin/api/v2/serializers.py:255 admin/api/v2/serializers.py:261
127
+ #: admin/api/v2/serializers.py:256 admin/api/v2/serializers.py:262
129
128
  msgid "Must be a positive integer"
130
129
  msgstr "Trebuie să fie un număr întreg pozitiv"
131
130
 
132
- #: admin/api/v2/serializers.py:270
131
+ #: admin/api/v2/serializers.py:271
133
132
  msgid "openssl not found, please make sure it is installed."
134
133
  msgstr "openssl nu a fost găsit, asigurați-vă că este instalat."
135
134
 
136
- #: admin/api/v2/serializers.py:273 pdfcredentials/api/v2/serializers.py:84
135
+ #: admin/api/v2/serializers.py:274 pdfcredentials/api/v2/serializers.py:84
137
136
  msgid "Directory not found."
138
137
  msgstr "Directorul nu a fost găsit."
139
138
 
140
- #: admin/api/v2/serializers.py:284
139
+ #: admin/api/v2/serializers.py:285
141
140
  msgid "This field only allows valid IP addresses (or networks)"
142
141
  msgstr ""
143
142
 
144
- #: admin/api/v2/serializers.py:297
143
+ #: admin/api/v2/serializers.py:298
145
144
  msgid "Please disable imap migration before disabling this option."
146
145
  msgstr ""
147
146
 
148
- #: admin/api/v2/serializers.py:310
147
+ #: admin/api/v2/serializers.py:311
149
148
  msgid "Define at least one authorized network / address"
150
149
  msgstr "Definiți cel puțin o adresă de rețea autorizată"
151
150
 
152
- #: admin/api/v2/serializers.py:587
151
+ #: admin/api/v2/serializers.py:588
153
152
  msgid "The left part of an email address can't be more than 64 characters."
154
153
  msgstr ""
155
154
 
156
- #: admin/api/v2/serializers.py:609
155
+ #: admin/api/v2/serializers.py:610
157
156
  #, fuzzy
158
157
  #| msgid "A mailbox is required"
159
158
  msgid "A mailbox is required to create aliases."
160
159
  msgstr "O căsuță poștală este necesară"
161
160
 
162
- #: admin/api/v2/serializers.py:782
161
+ #: admin/api/v2/serializers.py:783
163
162
  #, fuzzy
164
163
  #| msgid "Unknown"
165
164
  msgid "Unknown status"
@@ -264,19 +263,29 @@ msgstr "Activează verificările DNSBL"
264
263
  msgid "Check every domain against major DNSBL providers"
265
264
  msgstr "Verificați fiecare domeniu folosind furnizorii DNSBL majori"
266
265
 
267
- #: admin/app_settings.py:116
266
+ #: admin/app_settings.py:117
267
+ msgid "Notify domain admins about DNS issues"
268
+ msgstr ""
269
+
270
+ #: admin/app_settings.py:120
271
+ msgid ""
272
+ "Send a notification by email to domain administrators when DNS issues are "
273
+ "encountered"
274
+ msgstr ""
275
+
276
+ #: admin/app_settings.py:128
268
277
  msgid "Custom DNS server"
269
278
  msgstr "Servere DNS personalizate"
270
279
 
271
- #: admin/app_settings.py:118
280
+ #: admin/app_settings.py:130
272
281
  msgid "Use a custom DNS server instead of local server configuration"
273
282
  msgstr "Utilizează un server DNS personalizat in locul celui local"
274
283
 
275
- #: admin/app_settings.py:126
284
+ #: admin/app_settings.py:138
276
285
  msgid "DKIM keys storage directory"
277
286
  msgstr "Folderul de stocare pentru cheile DKIM"
278
287
 
279
- #: admin/app_settings.py:128
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
  "Asigurați-vă că acest director aparține utilizatorului root și nu poate fi "
287
296
  "citit de orice user."
288
297
 
289
- #: admin/app_settings.py:137
298
+ #: admin/app_settings.py:149
290
299
  msgid "Default DKIM key length"
291
300
  msgstr "Mărimea implicită în caractere a chei DKIM"
292
301
 
293
- #: admin/app_settings.py:139
302
+ #: admin/app_settings.py:151
294
303
  msgid "Default length in bits for newly generated DKIM keys."
295
304
  msgstr "Mărimea implicită în biți pentru o cheie DKIM nou generată"
296
305
 
297
- #: admin/app_settings.py:146
306
+ #: admin/app_settings.py:158
298
307
  msgid "Default domain quota"
299
308
  msgstr "Cota-parte implicită a domeniului"
300
309
 
301
- #: admin/app_settings.py:148
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
  "Cota implicită (în MB) aplicată domeniilor nou create, care nu au nicio "
307
316
  "valoare specificată. O valoare de 0 înseamnă că nu există o cotă."
308
317
 
309
- #: admin/app_settings.py:156
318
+ #: admin/app_settings.py:168
310
319
  msgid "Default domain sending limit"
311
320
  msgstr "Limita implicită de trimitere a domeniului"
312
321
 
313
- #: admin/app_settings.py:158
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
  "Numărul de mesaje pe care domeniile nou create vor putea să le trimită pe "
319
328
  "zi. Lăsați gol pentru nicio limită."
320
329
 
321
- #: admin/app_settings.py:170 limits/app_settings.py:61
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 "Cutii poștale"
325
334
 
326
- #: admin/app_settings.py:176
335
+ #: admin/app_settings.py:188
327
336
  msgid "Handle mailboxes on filesystem"
328
337
  msgstr "Gestionați cutiile poștale în sistemul de fișiere"
329
338
 
330
- #: admin/app_settings.py:178
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
  "Redenumește sau eliminează căsuțele poștale din sistemul de fișiere atunci "
336
345
  "când se redenumesc sau se elimină în Modoboa"
337
346
 
338
- #: admin/app_settings.py:186 admin/models/domain.py:36
347
+ #: admin/app_settings.py:198 admin/models/domain.py:36
339
348
  msgid "Default mailbox quota"
340
349
  msgstr "Cota implicită pentru cutia poștală"
341
350
 
342
- #: admin/app_settings.py:188
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
  "create fără a fi specificată nicio valoare. O valoare de 0 înseamnă că nu "
353
362
  "există cotă."
354
363
 
355
- #: admin/app_settings.py:197
364
+ #: admin/app_settings.py:209
356
365
  msgid "Default mailbox sending limit"
357
366
  msgstr "Limita implicită de trimitere a căsuței poștale"
358
367
 
359
- #: admin/app_settings.py:199
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,64 +373,64 @@ msgstr ""
364
373
  "Numărul de mesaje pe care cutiile poștale nou create vor putea să le trimită "
365
374
  "pe zi. Lăsați gol pentru nicio limită."
366
375
 
367
- #: admin/app_settings.py:207
376
+ #: admin/app_settings.py:219
368
377
  msgid "Automatic account removal"
369
378
  msgstr "Ștergere automată a contului"
370
379
 
371
- #: admin/app_settings.py:209
380
+ #: admin/app_settings.py:221
372
381
  msgid "When a mailbox is removed, also remove the associated account"
373
382
  msgstr "Când se șterge o cutie poștală, șterge, de asemenea și contul asociat"
374
383
 
375
- #: admin/app_settings.py:218
384
+ #: admin/app_settings.py:230
376
385
  msgid "Automatic domain/mailbox creation"
377
386
  msgstr "Crearea automată a domeniului / cutiei poștale"
378
387
 
379
- #: admin/app_settings.py:221
388
+ #: admin/app_settings.py:233
380
389
  msgid "Create a domain and a mailbox when an account is automatically created."
381
390
  msgstr ""
382
391
  "Creați un domeniu și o căsuță poștală atunci când un cont este creat automat."
383
392
 
384
- #: admin/app_settings.py:230
393
+ #: admin/app_settings.py:242
385
394
  msgid "Create an alias when a mailbox is renamed"
386
395
  msgstr "Creați un alias când o cutie poștală este redenumită"
387
396
 
388
- #: admin/app_settings.py:233
397
+ #: admin/app_settings.py:245
389
398
  msgid "Create an alias using the old address when a mailbox is renamed."
390
399
  msgstr ""
391
400
  "Creați un alias utilizând vechea adresă atunci când o cutie poștală este "
392
401
  "redenumită."
393
402
 
394
- #: admin/app_settings.py:245
403
+ #: admin/app_settings.py:257
395
404
  #, fuzzy
396
405
  #| msgid "alias"
397
406
  msgid "Aliases"
398
407
  msgstr "alias"
399
408
 
400
- #: admin/app_settings.py:251
409
+ #: admin/app_settings.py:263
401
410
  msgid "Alias can target any domain"
402
411
  msgstr ""
403
412
 
404
- #: admin/app_settings.py:253
413
+ #: admin/app_settings.py:265
405
414
  msgid "Allow aliases to target any domain, not just the local domains."
406
415
  msgstr ""
407
416
 
408
- #: admin/app_settings.py:260
417
+ #: admin/app_settings.py:272
409
418
  msgid "Alias target block list"
410
419
  msgstr ""
411
420
 
412
- #: admin/app_settings.py:262
421
+ #: admin/app_settings.py:274
413
422
  msgid "A list of domains that aliases cannot target (comma separated)."
414
423
  msgstr ""
415
424
 
416
- #: admin/app_settings.py:270
425
+ #: admin/app_settings.py:282
417
426
  msgid "Alias target allow list"
418
427
  msgstr ""
419
428
 
420
- #: admin/app_settings.py:272
429
+ #: admin/app_settings.py:284
421
430
  msgid "A list of domains that aliases can target (comma separated)."
422
431
  msgstr ""
423
432
 
424
- #: admin/app_settings.py:326 core/api/v2/viewsets.py:174
433
+ #: admin/app_settings.py:338 core/api/v2/viewsets.py:174
425
434
  msgid "Administration"
426
435
  msgstr "Administrare"
427
436
 
@@ -441,6 +450,35 @@ msgstr "Deschis"
441
450
  msgid "Closed"
442
451
  msgstr "Închis"
443
452
 
453
+ #: admin/dns_checker.py:96
454
+ msgid "MX {} listed by DNSBL provider {}"
455
+ msgstr "MX {} listat de furnizorul DNSBL {}"
456
+
457
+ #: admin/dns_checker.py:138
458
+ msgid "Domain has no MX record"
459
+ msgstr "Domeniul nu are înregistrare MX"
460
+
461
+ #: admin/dns_checker.py:141
462
+ msgid "Domain {} has no MX record"
463
+ msgstr "Domeniul {} nu are înregistrări MX"
464
+
465
+ #: admin/dns_checker.py:159
466
+ msgid "Invalid MX record: {}"
467
+ msgstr "Înregistrare MX invalidă: {}"
468
+
469
+ #: admin/dns_checker.py:166
470
+ #, python-brace-format
471
+ msgid "MX record for domain {0} is invalid: {1}"
472
+ msgstr "Înregistrarea MX pentru domeniul {0} este invalidă: {1}"
473
+
474
+ #: admin/dns_checker.py:177
475
+ msgid "[modoboa] MX issue(s) for domain {}"
476
+ msgstr "[modoboa] Problemă(e) MX pentru domeniul {}"
477
+
478
+ #: admin/dns_checker.py:224
479
+ msgid "[modoboa] DNSBL issue(s) for domain {}"
480
+ msgstr "[modoboa] Problemă(e) DNSBL pentru domeniul {} "
481
+
444
482
  #: admin/handlers.py:179
445
483
  msgid "domain alias"
446
484
  msgstr "alias domeniu"
@@ -463,8 +501,8 @@ msgstr "Nu ești autorizat să imporți domenii"
463
501
  msgid "You are not allowed to import domain aliases."
464
502
  msgstr "Nu ești autorizat să imporți aliasuri de domenii"
465
503
 
466
- #: admin/lib.py:227 admin/tests/test_mx.py:153 admin/tests/test_mx.py:166
467
- #: admin/tests/test_mx.py:171
504
+ #: admin/lib.py:227 admin/tests/test_mx.py:139 admin/tests/test_mx.py:152
505
+ #: admin/tests/test_mx.py:157
468
506
  #, python-format
469
507
  msgid "No DNS record found for %s"
470
508
  msgstr " Nu s-a găsit nicio înregistrare DNS pentru %s"
@@ -474,11 +512,11 @@ msgstr " Nu s-a găsit nicio înregistrare DNS pentru %s"
474
512
  msgid "No %(type)s record for %(name)s"
475
513
  msgstr "Nu %(type)sînregistrati pentru %(name)s"
476
514
 
477
- #: admin/lib.py:234 admin/tests/test_mx.py:156
515
+ #: admin/lib.py:234 admin/tests/test_mx.py:142
478
516
  msgid "No working name servers found"
479
517
  msgstr "Nu s-au găsit NS-uri funcționale"
480
518
 
481
- #: admin/lib.py:237 admin/tests/test_mx.py:160
519
+ #: admin/lib.py:237 admin/tests/test_mx.py:146
482
520
  #, python-format
483
521
  msgid "DNS resolution timeout, unable to query %s at the moment"
484
522
  msgstr ""
@@ -535,35 +573,6 @@ msgstr ""
535
573
  msgid "Failed to generate DKIM public key"
536
574
  msgstr "Activați comunicarea cu API-ul public Modoboa"
537
575
 
538
- #: admin/management/commands/subcommands/_mx.py:133
539
- msgid "MX {} listed by DNSBL provider {}"
540
- msgstr "MX {} listat de furnizorul DNSBL {}"
541
-
542
- #: admin/management/commands/subcommands/_mx.py:174
543
- msgid "Domain has no MX record"
544
- msgstr "Domeniul nu are înregistrare MX"
545
-
546
- #: admin/management/commands/subcommands/_mx.py:177
547
- msgid "Domain {} has no MX record"
548
- msgstr "Domeniul {} nu are înregistrări MX"
549
-
550
- #: admin/management/commands/subcommands/_mx.py:195
551
- msgid "Invalid MX record: {}"
552
- msgstr "Înregistrare MX invalidă: {}"
553
-
554
- #: admin/management/commands/subcommands/_mx.py:202
555
- #, python-brace-format
556
- msgid "MX record for domain {0} is invalid: {1}"
557
- msgstr "Înregistrarea MX pentru domeniul {0} este invalidă: {1}"
558
-
559
- #: admin/management/commands/subcommands/_mx.py:213
560
- msgid "[modoboa] MX issue(s) for domain {}"
561
- msgstr "[modoboa] Problemă(e) MX pentru domeniul {}"
562
-
563
- #: admin/management/commands/subcommands/_mx.py:269
564
- msgid "[modoboa] DNSBL issue(s) for domain {}"
565
- msgstr "[modoboa] Problemă(e) DNSBL pentru domeniul {} "
566
-
567
576
  #: admin/models/alias.py:43
568
577
  msgid "Domain not found."
569
578
  msgstr "Domeniu negăsit"
@@ -765,17 +774,17 @@ msgid "Modoboa detected that domain %(domain)s has no valid MX record:"
765
774
  msgstr ""
766
775
  "Modoboa a detectat ca domeniul %(domain)s nu are înregistrări MX valide: "
767
776
 
768
- #: admin/tests/test_mx.py:155
777
+ #: admin/tests/test_mx.py:141
769
778
  #, python-format
770
779
  msgid "No MX record for %s"
771
780
  msgstr "Nu există înregistrări MX pentru %s"
772
781
 
773
- #: admin/tests/test_mx.py:176 admin/tests/test_mx.py:182
782
+ #: admin/tests/test_mx.py:162 admin/tests/test_mx.py:168
774
783
  #, python-format
775
784
  msgid "Invalid IP address format for %(domain)s; %(addr)s"
776
785
  msgstr "Format invalid de IP pentru %(domain)s; %(addr)s "
777
786
 
778
- #: admin/tests/test_mx.py:199
787
+ #: admin/tests/test_mx.py:185
779
788
  #, fuzzy, python-format
780
789
  #| msgid "No MX record for %s"
781
790
  msgid "No AAAA record for %s"
@@ -990,11 +999,11 @@ msgid ""
990
999
  "database)"
991
1000
  msgstr ""
992
1001
 
993
- #: amavis/app_settings.py:236 webmail/app_settings.py:118
1002
+ #: amavis/app_settings.py:236 webmail/app_settings.py:155
994
1003
  msgid "Display"
995
1004
  msgstr ""
996
1005
 
997
- #: amavis/app_settings.py:243 webmail/app_settings.py:144
1006
+ #: amavis/app_settings.py:243 webmail/app_settings.py:181
998
1007
  #, fuzzy
999
1008
  #| msgid "Number of displayed items per page"
1000
1009
  msgid "Number of displayed emails per page"
@@ -1280,7 +1289,7 @@ msgstr ""
1280
1289
  "Permiteți acestui administrator să acceseze cutiile poștale ale "
1281
1290
  "utilizatorilor"
1282
1291
 
1283
- #: calendars/app_settings.py:60 core/app_settings.py:676
1292
+ #: calendars/app_settings.py:60 core/app_settings.py:664
1284
1293
  #: rspamd/app_settings.py:45
1285
1294
  msgid "Miscellaneous"
1286
1295
  msgstr "Diverse"
@@ -1298,11 +1307,11 @@ msgstr ""
1298
1307
  msgid "Calendars"
1299
1308
  msgstr ""
1300
1309
 
1301
- #: calendars/models.py:48 calendars/models.py:65 contacts/models.py:38
1310
+ #: calendars/models.py:48 calendars/models.py:65 contacts/models.py:39
1302
1311
  msgid "Server location is not set, please fix it."
1303
1312
  msgstr ""
1304
1313
 
1305
- #: calendars/viewsets.py:197
1314
+ #: calendars/viewsets.py:199
1306
1315
  msgid "Uploaded file is too big (max: {} bytes)"
1307
1316
  msgstr ""
1308
1317
 
@@ -1389,7 +1398,7 @@ msgstr "2FA este deja activat"
1389
1398
  msgid "Failed TFA settings editing attempt from '%(addr)s' as user '%(user)s'"
1390
1399
  msgstr ""
1391
1400
 
1392
- #: core/api/v1/serializers.py:93 core/api/v2/serializers.py:445
1401
+ #: core/api/v1/serializers.py:93 core/api/v2/serializers.py:438
1393
1402
  #, fuzzy
1394
1403
  #| msgid "Old password"
1395
1404
  msgid "Invalid password"
@@ -1403,24 +1412,20 @@ msgstr "2FA nu este activat"
1403
1412
  msgid "Local"
1404
1413
  msgstr "Local"
1405
1414
 
1406
- #: core/api/v2/serializers.py:194 core/app_settings.py:17
1407
- msgid "User profile"
1408
- msgstr "Profil utilizator"
1409
-
1410
- #: core/api/v2/serializers.py:213 core/api/v2/serializers.py:221
1411
- #: core/api/v2/serializers.py:228
1415
+ #: core/api/v2/serializers.py:206 core/api/v2/serializers.py:214
1416
+ #: core/api/v2/serializers.py:221
1412
1417
  msgid "Invalid syntax"
1413
1418
  msgstr "Sintaxă invalidă"
1414
1419
 
1415
- #: core/api/v2/serializers.py:233
1420
+ #: core/api/v2/serializers.py:226
1416
1421
  msgid "Invalid rounds number"
1417
1422
  msgstr "Număr invalid de iterații"
1418
1423
 
1419
- #: core/api/v2/serializers.py:433 core/forms.py:81
1424
+ #: core/api/v2/serializers.py:426 core/forms.py:81
1420
1425
  msgid "This code is invalid"
1421
1426
  msgstr "Acest cod nu este valabil"
1422
1427
 
1423
- #: core/api/v2/serializers.py:503 core/views/auth.py:213 core/views/auth.py:266
1428
+ #: core/api/v2/serializers.py:496 core/views/auth.py:213 core/views/auth.py:266
1424
1429
  msgid "Please use the following code to recover your Modoboa password: {}"
1425
1430
  msgstr ""
1426
1431
  "Vă rugăm să folosiți următorul cod pentru a vă recupera parola Modoboa: {}"
@@ -1454,37 +1459,37 @@ msgid "Calendar"
1454
1459
  msgstr ""
1455
1460
 
1456
1461
  #: core/api/v2/viewsets.py:215 core/api/v2/viewsets.py:217
1457
- #: webmail/app_settings.py:258 webmail/app_settings.py:265
1462
+ #: webmail/app_settings.py:295 webmail/app_settings.py:302
1458
1463
  #, fuzzy
1459
1464
  #| msgid "E-mail"
1460
1465
  msgid "Webmail"
1461
1466
  msgstr "E-mail"
1462
1467
 
1463
- #: core/app_settings.py:37
1468
+ #: core/app_settings.py:25
1464
1469
  msgid "Authentication"
1465
1470
  msgstr "Autentificare"
1466
1471
 
1467
- #: core/app_settings.py:43
1472
+ #: core/app_settings.py:31
1468
1473
  msgid "Authentication type"
1469
1474
  msgstr "Tip autentificare"
1470
1475
 
1471
- #: core/app_settings.py:45
1476
+ #: core/app_settings.py:33
1472
1477
  msgid "The backend used for authentication"
1473
1478
  msgstr "Tehnologia backend folosită pentru autentificare "
1474
1479
 
1475
- #: core/app_settings.py:52
1480
+ #: core/app_settings.py:40
1476
1481
  msgid "Default password scheme"
1477
1482
  msgstr "Schema pentru parola implicită"
1478
1483
 
1479
- #: core/app_settings.py:54
1484
+ #: core/app_settings.py:42
1480
1485
  msgid "Scheme used to crypt mailbox passwords"
1481
1486
  msgstr "Schema de criptare pentru parole"
1482
1487
 
1483
- #: core/app_settings.py:61
1488
+ #: core/app_settings.py:49
1484
1489
  msgid "Rounds"
1485
1490
  msgstr "Iterații"
1486
1491
 
1487
- #: core/app_settings.py:63
1492
+ #: core/app_settings.py:51
1488
1493
  msgid ""
1489
1494
  "Number of rounds to use (only used by sha256crypt and sha512crypt). Must be "
1490
1495
  "between 1000 and 999999999, inclusive."
@@ -1493,47 +1498,47 @@ msgstr ""
1493
1498
  "sha512crypt) Trebuie să fie un număr cuprins între 1000 și 999999999 "
1494
1499
  "inclusiv."
1495
1500
 
1496
- #: core/app_settings.py:73
1501
+ #: core/app_settings.py:61
1497
1502
  msgid "Update password scheme at login"
1498
1503
  msgstr "Actualizarea schemei de parole la autentificare"
1499
1504
 
1500
- #: core/app_settings.py:76
1505
+ #: core/app_settings.py:64
1501
1506
  msgid "Update user password at login to use the default password scheme"
1502
1507
  msgstr ""
1503
1508
  "Modifică parola utilizatorului la autentificare pentru a utiliza noua schemă "
1504
1509
  "de parolă"
1505
1510
 
1506
- #: core/app_settings.py:84
1511
+ #: core/app_settings.py:72
1507
1512
  msgid "Default password"
1508
1513
  msgstr "Parola implicită"
1509
1514
 
1510
- #: core/app_settings.py:86
1515
+ #: core/app_settings.py:74
1511
1516
  msgid "Default password for automatically created accounts."
1512
1517
  msgstr "Parola implicită setată pentru conturile create automat."
1513
1518
 
1514
- #: core/app_settings.py:93
1519
+ #: core/app_settings.py:81
1515
1520
  msgid "Random password length"
1516
1521
  msgstr "Mărime parolă aleatorie"
1517
1522
 
1518
- #: core/app_settings.py:95
1523
+ #: core/app_settings.py:83
1519
1524
  msgid "Length of randomly generated passwords."
1520
1525
  msgstr "Mărimea parolelor generate aleator."
1521
1526
 
1522
- #: core/app_settings.py:103
1527
+ #: core/app_settings.py:91
1523
1528
  msgid "Allow special characters for random password"
1524
1529
  msgstr ""
1525
1530
 
1526
- #: core/app_settings.py:106
1531
+ #: core/app_settings.py:94
1527
1532
  #, fuzzy
1528
1533
  #| msgid "Length of randomly generated passwords."
1529
1534
  msgid "Enable special characters in randomly generated passwords."
1530
1535
  msgstr "Mărimea parolelor generate aleator."
1531
1536
 
1532
- #: core/app_settings.py:114
1537
+ #: core/app_settings.py:102
1533
1538
  msgid "Update password service URL"
1534
1539
  msgstr "Actualizarea URL-ului serviciului de parolă"
1535
1540
 
1536
- #: core/app_settings.py:116
1541
+ #: core/app_settings.py:104
1537
1542
  msgid ""
1538
1543
  "The URL of an external page where users will be able to update their "
1539
1544
  "password. It applies only to non local users, ie. those automatically "
@@ -1543,106 +1548,106 @@ msgstr ""
1543
1548
  "Se aplică numai utilizatorilor care nu sunt locali, adică cei creați automat "
1544
1549
  "după o autentificare externă reușită (LDAP, SMTP)."
1545
1550
 
1546
- #: core/app_settings.py:126
1551
+ #: core/app_settings.py:114
1547
1552
  msgid "Password recovery announcement"
1548
1553
  msgstr "Anunț de recuperare a parolei"
1549
1554
 
1550
- #: core/app_settings.py:128
1555
+ #: core/app_settings.py:116
1551
1556
  msgid "A temporary message that will be displayed on the reset password page."
1552
1557
  msgstr "Un mesaj temporar care va fi afișat pe pagina de resetare a parolei."
1553
1558
 
1554
- #: core/app_settings.py:137
1559
+ #: core/app_settings.py:125
1555
1560
  msgid "Enable password recovery by SMS"
1556
1561
  msgstr "Activați recuperarea parolei prin SMS"
1557
1562
 
1558
- #: core/app_settings.py:140
1563
+ #: core/app_settings.py:128
1559
1564
  msgid "Enable password recovery by SMS for users who filled a phone number."
1560
1565
  msgstr ""
1561
1566
  "Activați recuperarea parolei prin SMS pentru utilizatorii care au completat "
1562
1567
  "un număr de telefon."
1563
1568
 
1564
- #: core/app_settings.py:148
1569
+ #: core/app_settings.py:136
1565
1570
  msgid "SMS provider"
1566
1571
  msgstr "Furnizor de SMS"
1567
1572
 
1568
- #: core/app_settings.py:151
1573
+ #: core/app_settings.py:139
1569
1574
  msgid "Choose a provider to send password recovery SMS"
1570
1575
  msgstr "Alegeți un furnizor pentru a trimite SMS de recuperare a parolei"
1571
1576
 
1572
- #: core/app_settings.py:163
1577
+ #: core/app_settings.py:151
1573
1578
  msgid "LDAP"
1574
1579
  msgstr ""
1575
1580
 
1576
- #: core/app_settings.py:169 sievefilters/app_settings.py:18
1581
+ #: core/app_settings.py:157 sievefilters/app_settings.py:18
1577
1582
  #: sievefilters/app_settings.py:51 webmail/app_settings.py:36
1578
- #: webmail/app_settings.py:73
1583
+ #: webmail/app_settings.py:73 webmail/app_settings.py:119
1579
1584
  msgid "Server address"
1580
1585
  msgstr "Adresă server"
1581
1586
 
1582
- #: core/app_settings.py:171
1587
+ #: core/app_settings.py:159
1583
1588
  msgid "The IP address or the DNS name of the LDAP server"
1584
1589
  msgstr "Adresa IP sau numele DNS al serverului LDAP"
1585
1590
 
1586
- #: core/app_settings.py:178 sievefilters/app_settings.py:25
1591
+ #: core/app_settings.py:166 sievefilters/app_settings.py:25
1587
1592
  #: sievefilters/app_settings.py:67 webmail/app_settings.py:54
1588
- #: webmail/app_settings.py:91
1593
+ #: webmail/app_settings.py:91 webmail/app_settings.py:137
1589
1594
  msgid "Server port"
1590
1595
  msgstr "Port server"
1591
1596
 
1592
- #: core/app_settings.py:180
1597
+ #: core/app_settings.py:168
1593
1598
  msgid "The TCP port number used by the LDAP server"
1594
1599
  msgstr "Numărul de port TCP folosit de serverul LDAP"
1595
1600
 
1596
- #: core/app_settings.py:188
1601
+ #: core/app_settings.py:176
1597
1602
  msgid "Enable secondary server (fallback)"
1598
1603
  msgstr "Activați serverul secundar (fallback)"
1599
1604
 
1600
- #: core/app_settings.py:191
1605
+ #: core/app_settings.py:179
1601
1606
  msgid ""
1602
1607
  "Enable a secondary LDAP server which will be used if the primary one fails"
1603
1608
  msgstr ""
1604
1609
  "Activați un server LDAP secundar care va fi utilizat în cazul în care "
1605
1610
  "serverul principal eșuează"
1606
1611
 
1607
- #: core/app_settings.py:199
1612
+ #: core/app_settings.py:187
1608
1613
  msgid "Secondary server address"
1609
1614
  msgstr "Adresa serverului secundar"
1610
1615
 
1611
- #: core/app_settings.py:202
1616
+ #: core/app_settings.py:190
1612
1617
  msgid "The IP address or the DNS name of the seondary LDAP server"
1613
1618
  msgstr "Adresa IP sau numele DNS al serverului LDAP secundar"
1614
1619
 
1615
- #: core/app_settings.py:209
1620
+ #: core/app_settings.py:197
1616
1621
  msgid "Secondary server port"
1617
1622
  msgstr "Portul serverului secundar"
1618
1623
 
1619
- #: core/app_settings.py:212
1624
+ #: core/app_settings.py:200
1620
1625
  msgid "The TCP port number used by the LDAP secondary server"
1621
1626
  msgstr "Numărul portului TCP utilizat de serverul secundar LDAP"
1622
1627
 
1623
- #: core/app_settings.py:219 sievefilters/app_settings.py:58
1628
+ #: core/app_settings.py:207 sievefilters/app_settings.py:58
1624
1629
  #: webmail/app_settings.py:45
1625
1630
  msgid "Use a secured connection"
1626
1631
  msgstr "Folosește o conexiune securizată"
1627
1632
 
1628
- #: core/app_settings.py:221
1633
+ #: core/app_settings.py:209
1629
1634
  msgid "Use an SSL/STARTTLS connection to access the LDAP server"
1630
1635
  msgstr ""
1631
1636
  "Folosește o conexiune de tip SSL/STARTTLS pentru a accesa serverul LDAP"
1632
1637
 
1633
- #: core/app_settings.py:228
1638
+ #: core/app_settings.py:216
1634
1639
  msgid "Active Directory"
1635
1640
  msgstr "Active Directory"
1636
1641
 
1637
- #: core/app_settings.py:230
1642
+ #: core/app_settings.py:218
1638
1643
  msgid "Tell if the LDAP server is an Active Directory one"
1639
1644
  msgstr "Specifică daca serverul LDAP este unul de tip Active Directory"
1640
1645
 
1641
- #: core/app_settings.py:237
1646
+ #: core/app_settings.py:225
1642
1647
  msgid "Administrator groups"
1643
1648
  msgstr "Grupuri administrator"
1644
1649
 
1645
- #: core/app_settings.py:239
1650
+ #: core/app_settings.py:227
1646
1651
  msgid ""
1647
1652
  "Members of those LDAP Posix groups will be created as domain administrators. "
1648
1653
  "Use ';' characters to separate groups."
@@ -1650,47 +1655,47 @@ msgstr ""
1650
1655
  "Membrii acelor grupuri LDAP Posix vor fi create ca administratori de "
1651
1656
  "domeniu. Folosește caracterul ';' pentru a separa grupurile."
1652
1657
 
1653
- #: core/app_settings.py:248
1658
+ #: core/app_settings.py:236
1654
1659
  msgid "Group type"
1655
1660
  msgstr "Tipul de grup"
1656
1661
 
1657
- #: core/app_settings.py:250
1662
+ #: core/app_settings.py:238
1658
1663
  msgid "The LDAP group type to use with your directory."
1659
1664
  msgstr "Tipul grupului LDAP pe care îl utilizați cu directorul selectat."
1660
1665
 
1661
- #: core/app_settings.py:257
1666
+ #: core/app_settings.py:245
1662
1667
  msgid "Groups search base"
1663
1668
  msgstr "Baza pentru căutare grupuri"
1664
1669
 
1665
- #: core/app_settings.py:259
1670
+ #: core/app_settings.py:247
1666
1671
  msgid "The distinguished name of the search base used to find groups"
1667
1672
  msgstr "Numele ales al bazei de căutare utilizat pentru a găsi grupuri"
1668
1673
 
1669
- #: core/app_settings.py:267
1674
+ #: core/app_settings.py:255
1670
1675
  msgid "Password attribute"
1671
1676
  msgstr "Atributul parolă"
1672
1677
 
1673
- #: core/app_settings.py:269
1678
+ #: core/app_settings.py:257
1674
1679
  msgid "The attribute used to store user passwords"
1675
1680
  msgstr "Atributul folosit pentru a stoca parola utilizatorului"
1676
1681
 
1677
- #: core/app_settings.py:276
1682
+ #: core/app_settings.py:264
1678
1683
  msgid "LDAP authentication settings"
1679
1684
  msgstr "Setări de autentificare LDAP"
1680
1685
 
1681
- #: core/app_settings.py:284
1686
+ #: core/app_settings.py:272
1682
1687
  msgid "Authentication method"
1683
1688
  msgstr "Metoda de autentificare"
1684
1689
 
1685
- #: core/app_settings.py:287
1690
+ #: core/app_settings.py:275
1686
1691
  msgid "Choose the authentication method to use"
1687
1692
  msgstr "Alege metodă folosită pentru autentificare"
1688
1693
 
1689
- #: core/app_settings.py:294 core/app_settings.py:357
1694
+ #: core/app_settings.py:282 core/app_settings.py:345
1690
1695
  msgid "Bind DN"
1691
1696
  msgstr "Atribuie DN"
1692
1697
 
1693
- #: core/app_settings.py:296 core/app_settings.py:359
1698
+ #: core/app_settings.py:284 core/app_settings.py:347
1694
1699
  msgid ""
1695
1700
  "The distinguished name to use when binding to the LDAP server. Leave empty "
1696
1701
  "for an anonymous bind"
@@ -1698,28 +1703,28 @@ msgstr ""
1698
1703
  "Numele ales folosit la atribuirea cu servarul LDAP. Câpul necompletat se "
1699
1704
  "foloseste în cazul atribuirii anonime"
1700
1705
 
1701
- #: core/app_settings.py:305 core/app_settings.py:367
1706
+ #: core/app_settings.py:293 core/app_settings.py:355
1702
1707
  msgid "Bind password"
1703
1708
  msgstr "Parola de atribuire"
1704
1709
 
1705
- #: core/app_settings.py:307 core/app_settings.py:369
1710
+ #: core/app_settings.py:295 core/app_settings.py:357
1706
1711
  msgid "The password to use when binding to the LDAP server (with 'Bind DN')"
1707
1712
  msgstr ""
1708
1713
  "Parola folosită la momentul atribuiri cu servarul LDAP (vezi 'Atribuie DB')"
1709
1714
 
1710
- #: core/app_settings.py:317 core/app_settings.py:422
1715
+ #: core/app_settings.py:305 core/app_settings.py:410
1711
1716
  msgid "Users search base"
1712
1717
  msgstr "Căutare bază de utilizatori"
1713
1718
 
1714
- #: core/app_settings.py:319 core/app_settings.py:424
1719
+ #: core/app_settings.py:307 core/app_settings.py:412
1715
1720
  msgid "The distinguished name of the search base used to find users"
1716
1721
  msgstr "Numele ales al bazei de căutare utilizat pentru a găsi utilizatori"
1717
1722
 
1718
- #: core/app_settings.py:328 core/app_settings.py:433
1723
+ #: core/app_settings.py:316 core/app_settings.py:421
1719
1724
  msgid "Search filter"
1720
1725
  msgstr "Filtru de căutare"
1721
1726
 
1722
- #: core/app_settings.py:330 core/app_settings.py:435
1727
+ #: core/app_settings.py:318 core/app_settings.py:423
1723
1728
  msgid ""
1724
1729
  "An optional filter string (e.g. '(objectClass=person)'). In order to be "
1725
1730
  "valid, it must be enclosed in parentheses."
@@ -1727,11 +1732,11 @@ msgstr ""
1727
1732
  "Un filtru opțional (de ex. '(ObjectClass = persoană)'). Pentru a fi valid, "
1728
1733
  "trebuie să fie închis în paranteze."
1729
1734
 
1730
- #: core/app_settings.py:339
1735
+ #: core/app_settings.py:327
1731
1736
  msgid "User DN template"
1732
1737
  msgstr "Templateul DN pt utilizator"
1733
1738
 
1734
- #: core/app_settings.py:341
1739
+ #: core/app_settings.py:329
1735
1740
  #, python-format
1736
1741
  msgid ""
1737
1742
  "The template used to construct a user's DN. It should contain one "
@@ -1740,26 +1745,26 @@ msgstr ""
1740
1745
  "Templateul folosit pentru a construi un utilizator DN. Ar trebui să conțină "
1741
1746
  "un substituent (de ex. %(user)s)"
1742
1747
 
1743
- #: core/app_settings.py:350
1748
+ #: core/app_settings.py:338
1744
1749
  msgid "LDAP synchronization settings"
1745
1750
  msgstr "Setări de sincronizare LDAP"
1746
1751
 
1747
- #: core/app_settings.py:378
1752
+ #: core/app_settings.py:366
1748
1753
  msgid "Enable export to LDAP"
1749
1754
  msgstr "Activați exportul către LDAP"
1750
1755
 
1751
- #: core/app_settings.py:380
1756
+ #: core/app_settings.py:368
1752
1757
  msgid ""
1753
1758
  "Enable automatic synchronization between local database and LDAP directory"
1754
1759
  msgstr ""
1755
1760
  "Activați sincronizarea automată între baza de date locală și directorul LDAP"
1756
1761
 
1757
- #: core/app_settings.py:389
1762
+ #: core/app_settings.py:377
1758
1763
  msgid "Delete remote LDAP account when local account is deleted"
1759
1764
  msgstr ""
1760
1765
  "Ștergerea contului LDAP la distanță atunci când contul local este șters"
1761
1766
 
1762
- #: core/app_settings.py:392
1767
+ #: core/app_settings.py:380
1763
1768
  msgid ""
1764
1769
  "Delete remote LDAP account when local account is deleted, otherwise it will "
1765
1770
  "be disabled."
@@ -1767,11 +1772,11 @@ msgstr ""
1767
1772
  "Ștergeți contul LDAP la distanță atunci când contul local este șters, altfel "
1768
1773
  "acesta va fi dezactivat."
1769
1774
 
1770
- #: core/app_settings.py:401
1775
+ #: core/app_settings.py:389
1771
1776
  msgid "Account DN template"
1772
1777
  msgstr "Șablon de cont DN"
1773
1778
 
1774
- #: core/app_settings.py:403
1779
+ #: core/app_settings.py:391
1775
1780
  #, python-format
1776
1781
  msgid ""
1777
1782
  "The template used to construct an account's DN. It should contain one "
@@ -1780,209 +1785,209 @@ msgstr ""
1780
1785
  " Șablonul utilizat pentru a construi DN-ul unui cont. Acesta trebuie să "
1781
1786
  "conțină un spațiu rezervat (ie. %(user)s)"
1782
1787
 
1783
- #: core/app_settings.py:412
1788
+ #: core/app_settings.py:400
1784
1789
  msgid "Enable import from LDAP"
1785
1790
  msgstr "Activați importul din LDAP"
1786
1791
 
1787
- #: core/app_settings.py:414
1792
+ #: core/app_settings.py:402
1788
1793
  msgid "Enable account synchronization from LDAP directory to local database"
1789
1794
  msgstr ""
1790
1795
  "Activați sincronizarea conturilor din directorul LDAP în baza de date locală"
1791
1796
 
1792
- #: core/app_settings.py:444
1797
+ #: core/app_settings.py:432
1793
1798
  msgid "Username attribute"
1794
1799
  msgstr "Atributul nume de utilizator"
1795
1800
 
1796
- #: core/app_settings.py:446
1801
+ #: core/app_settings.py:434
1797
1802
  msgid "The name of the LDAP attribute where the username can be found."
1798
1803
  msgstr "Numele atributului LDAP în care poate fi găsit numele de utilizator."
1799
1804
 
1800
- #: core/app_settings.py:455
1805
+ #: core/app_settings.py:443
1801
1806
  msgid "Enable Dovecot LDAP sync"
1802
1807
  msgstr "Activați sincronizarea Dovecot LDAP"
1803
1808
 
1804
- #: core/app_settings.py:457
1809
+ #: core/app_settings.py:445
1805
1810
  msgid "LDAP authentication settings will be applied to Dovecot configuration."
1806
1811
  msgstr ""
1807
1812
  "Setările de autentificare LDAP vor fi aplicate la configurația Dovecot."
1808
1813
 
1809
- #: core/app_settings.py:465
1814
+ #: core/app_settings.py:453
1810
1815
  msgid "Dovecot LDAP config file"
1811
1816
  msgstr "Fișier de configurare Dovecot LDAP"
1812
1817
 
1813
- #: core/app_settings.py:467
1818
+ #: core/app_settings.py:455
1814
1819
  msgid ""
1815
1820
  "Location of the configuration file which contains Dovecot LDAP settings."
1816
1821
  msgstr "Locația fișierului de configurare care conține setările Dovecot LDAP."
1817
1822
 
1818
- #: core/app_settings.py:480
1823
+ #: core/app_settings.py:468
1819
1824
  msgid "Dashboard"
1820
1825
  msgstr "Bord"
1821
1826
 
1822
- #: core/app_settings.py:486
1827
+ #: core/app_settings.py:474
1823
1828
  #, fuzzy
1824
1829
  #| msgid "spam messages"
1825
1830
  msgid "Custom welcome message"
1826
1831
  msgstr "mesaje spam"
1827
1832
 
1828
- #: core/app_settings.py:488
1833
+ #: core/app_settings.py:476
1829
1834
  #, fuzzy
1830
1835
  #| msgid ""
1831
1836
  #| "A temporary message that will be displayed on the reset password page."
1832
1837
  msgid "A welcome message that will be displayed instead the default one"
1833
1838
  msgstr "Un mesaj temporar care va fi afișat pe pagina de resetare a parolei."
1834
1839
 
1835
- #: core/app_settings.py:495
1840
+ #: core/app_settings.py:483
1836
1841
  msgid "Custom RSS feed"
1837
1842
  msgstr "Feedul RSS personalizat"
1838
1843
 
1839
- #: core/app_settings.py:497
1844
+ #: core/app_settings.py:485
1840
1845
  msgid "Display custom RSS feed to resellers and domain administrators"
1841
1846
  msgstr ""
1842
1847
  "Afișează feedul RSS personalizat la reselleri și administratori de domeniu"
1843
1848
 
1844
- #: core/app_settings.py:506
1849
+ #: core/app_settings.py:494
1845
1850
  #, fuzzy
1846
1851
  #| msgid "Display custom RSS feed to resellers and domain administrators"
1847
1852
  msgid "Display custom RSS feed to super admins"
1848
1853
  msgstr ""
1849
1854
  "Afișează feedul RSS personalizat la reselleri și administratori de domeniu"
1850
1855
 
1851
- #: core/app_settings.py:509
1856
+ #: core/app_settings.py:497
1852
1857
  #, fuzzy
1853
1858
  #| msgid "Display custom RSS feed to resellers and domain administrators"
1854
1859
  msgid "Display custom RSS feed also to super administrators"
1855
1860
  msgstr ""
1856
1861
  "Afișează feedul RSS personalizat la reselleri și administratori de domeniu"
1857
1862
 
1858
- #: core/app_settings.py:517
1863
+ #: core/app_settings.py:505
1859
1864
  msgid "Hide features widget"
1860
1865
  msgstr "Ascunde widgetul de caracteristici "
1861
1866
 
1862
- #: core/app_settings.py:519
1867
+ #: core/app_settings.py:507
1863
1868
  msgid "Hide features widget for resellers and domain administrators"
1864
1869
  msgstr ""
1865
1870
  "Ascunde widgetul de caracteristici pentru reselleri și administratori de "
1866
1871
  "domeniu"
1867
1872
 
1868
- #: core/app_settings.py:531
1873
+ #: core/app_settings.py:519
1869
1874
  msgid "Theme"
1870
1875
  msgstr ""
1871
1876
 
1872
- #: core/app_settings.py:537
1877
+ #: core/app_settings.py:525
1873
1878
  msgid "Primary theme color"
1874
1879
  msgstr ""
1875
1880
 
1876
- #: core/app_settings.py:539
1881
+ #: core/app_settings.py:527
1877
1882
  msgid ""
1878
1883
  "Primary color of the theme (hexadecimal code), used as the background color "
1879
1884
  "of the left menu for example"
1880
1885
  msgstr ""
1881
1886
 
1882
- #: core/app_settings.py:548
1887
+ #: core/app_settings.py:536
1883
1888
  msgid "Primary theme color (lighter version)"
1884
1889
  msgstr ""
1885
1890
 
1886
- #: core/app_settings.py:551 core/app_settings.py:563
1891
+ #: core/app_settings.py:539 core/app_settings.py:551
1887
1892
  msgid "Primary color of the theme (hexadecimal code)"
1888
1893
  msgstr ""
1889
1894
 
1890
- #: core/app_settings.py:560
1895
+ #: core/app_settings.py:548
1891
1896
  msgid "Primary theme color (darker version)"
1892
1897
  msgstr ""
1893
1898
 
1894
- #: core/app_settings.py:571
1899
+ #: core/app_settings.py:559
1895
1900
  #, fuzzy
1896
1901
  #| msgid "Secondary email"
1897
1902
  msgid "Secondary theme color"
1898
1903
  msgstr "Email secundar"
1899
1904
 
1900
- #: core/app_settings.py:573
1905
+ #: core/app_settings.py:561
1901
1906
  msgid ""
1902
1907
  "Secondary color of the theme (hexadecimal code), used as the background "
1903
1908
  "color of some buttons for example"
1904
1909
  msgstr ""
1905
1910
 
1906
- #: core/app_settings.py:581
1911
+ #: core/app_settings.py:569
1907
1912
  msgid "Labels theme color"
1908
1913
  msgstr ""
1909
1914
 
1910
- #: core/app_settings.py:583
1915
+ #: core/app_settings.py:571
1911
1916
  msgid "Theme color for labels (hexadecimal code)"
1912
1917
  msgstr ""
1913
1918
 
1914
- #: core/app_settings.py:595
1919
+ #: core/app_settings.py:583
1915
1920
  msgid "Notifications"
1916
1921
  msgstr "Notificări"
1917
1922
 
1918
- #: core/app_settings.py:601
1923
+ #: core/app_settings.py:589
1919
1924
  msgid "Sender address"
1920
1925
  msgstr "Adresa expeditorului"
1921
1926
 
1922
- #: core/app_settings.py:603
1927
+ #: core/app_settings.py:591
1923
1928
  msgid "Email address used to send notifications."
1924
1929
  msgstr "Adresa de email folosită pentru trimiterea notificărilor."
1925
1930
 
1926
- #: core/app_settings.py:614
1931
+ #: core/app_settings.py:602
1927
1932
  msgid "Public API"
1928
1933
  msgstr "API public"
1929
1934
 
1930
- #: core/app_settings.py:620
1935
+ #: core/app_settings.py:608
1931
1936
  msgid "Enable communication"
1932
1937
  msgstr "Activați comunicarea"
1933
1938
 
1934
- #: core/app_settings.py:622 core/app_settings.py:632
1939
+ #: core/app_settings.py:610 core/app_settings.py:620
1935
1940
  msgid "Automatically checks if a newer version is available"
1936
1941
  msgstr "Verifică automat dacă este disponibilă o versiune mai nouă"
1937
1942
 
1938
- #: core/app_settings.py:629
1943
+ #: core/app_settings.py:617
1939
1944
  msgid "Check new versions"
1940
1945
  msgstr "Verifică dacă există noi versiuni"
1941
1946
 
1942
- #: core/app_settings.py:640
1947
+ #: core/app_settings.py:628
1943
1948
  msgid "Send an email when new versions are found"
1944
1949
  msgstr "Trimiteți un e-mail atunci când sunt găsite versiuni noi"
1945
1950
 
1946
- #: core/app_settings.py:644
1951
+ #: core/app_settings.py:632
1947
1952
  msgid "Send an email to notify admins about new versions"
1948
1953
  msgstr ""
1949
1954
  "Trimiteți un e-mail pentru a notifica administratorii despre noile versiuni"
1950
1955
 
1951
- #: core/app_settings.py:651 sievefilters/constants.py:25
1956
+ #: core/app_settings.py:639 sievefilters/constants.py:25
1952
1957
  msgid "Recipient"
1953
1958
  msgstr "Beneficiar"
1954
1959
 
1955
- #: core/app_settings.py:654
1960
+ #: core/app_settings.py:642
1956
1961
  msgid "Recipient of new versions notification emails."
1957
1962
  msgstr "Destinatarul e-mailurilor de notificare a noilor versiuni."
1958
1963
 
1959
- #: core/app_settings.py:661
1964
+ #: core/app_settings.py:649
1960
1965
  msgid "Send statistics"
1961
1966
  msgstr "Trimite statistici"
1962
1967
 
1963
- #: core/app_settings.py:664
1968
+ #: core/app_settings.py:652
1964
1969
  msgid "Send statistics to Modoboa public API (counters and used extensions)"
1965
1970
  msgstr ""
1966
1971
  "Trimiteți statistici către API-ul public Modoboa (contoare și extensii "
1967
1972
  "utilizate)"
1968
1973
 
1969
- #: core/app_settings.py:683
1974
+ #: core/app_settings.py:671
1970
1975
  #, fuzzy
1971
1976
  #| msgid "Inactive account threshold"
1972
1977
  msgid "Enable inactive account tracking"
1973
1978
  msgstr "Pragul pentru cont invalid"
1974
1979
 
1975
- #: core/app_settings.py:686
1980
+ #: core/app_settings.py:674
1976
1981
  msgid ""
1977
1982
  "Allow the administrator to set a threshold (in days) beyond which an account "
1978
1983
  "is considered inactive if the user hasn't logged in"
1979
1984
  msgstr ""
1980
1985
 
1981
- #: core/app_settings.py:695
1986
+ #: core/app_settings.py:683
1982
1987
  msgid "Inactive account threshold"
1983
1988
  msgstr "Pragul pentru cont invalid"
1984
1989
 
1985
- #: core/app_settings.py:698
1990
+ #: core/app_settings.py:686
1986
1991
  msgid ""
1987
1992
  "An account with a last login date greater than this threshold (in days) will "
1988
1993
  "be considered as inactive"
@@ -1990,49 +1995,39 @@ msgstr ""
1990
1995
  "Un cont cu o ultima data de conectare mai mare decat acest prag (in zile) va "
1991
1996
  "fi considerat inactiv"
1992
1997
 
1993
- #: core/app_settings.py:707
1998
+ #: core/app_settings.py:695
1994
1999
  msgid "Top notifications check interval"
1995
2000
  msgstr "Intervalul de verificare a notificărilor"
1996
2001
 
1997
- #: core/app_settings.py:710
2002
+ #: core/app_settings.py:698
1998
2003
  msgid "Interval between two top notification checks (in seconds)"
1999
2004
  msgstr ""
2000
2005
  "Intervalul dintre două verificări de notificare principală (în secunde)"
2001
2006
 
2002
- #: core/app_settings.py:717
2007
+ #: core/app_settings.py:705
2003
2008
  msgid "Maximum log record age"
2004
2009
  msgstr "Vechimea maximă a înregistrărilor log"
2005
2010
 
2006
- #: core/app_settings.py:719
2011
+ #: core/app_settings.py:707
2007
2012
  msgid "The maximum age in days of a log record"
2008
2013
  msgstr "Vechimea maximă în zilele de înregistrare a intrărilor în jurnal"
2009
2014
 
2010
- #: core/app_settings.py:727
2015
+ #: core/app_settings.py:715
2011
2016
  msgid "Retention time in message history"
2012
2017
  msgstr ""
2013
2018
 
2014
- #: core/app_settings.py:730
2019
+ #: core/app_settings.py:718
2015
2020
  msgid "Retention time (in days) of a message in the message history section"
2016
2021
  msgstr ""
2017
2022
 
2018
- #: core/app_settings.py:737
2023
+ #: core/app_settings.py:725
2019
2024
  msgid "Items per page"
2020
2025
  msgstr "Număr de itemi per pagină"
2021
2026
 
2022
- #: core/app_settings.py:739
2027
+ #: core/app_settings.py:727
2023
2028
  msgid "Number of displayed items per page"
2024
2029
  msgstr "Numărul de itemi afișați pe o pagină"
2025
2030
 
2026
- #: core/app_settings.py:746
2027
- msgid "Default top redirection"
2028
- msgstr "Redirecționarea principală implicită"
2029
-
2030
- #: core/app_settings.py:748
2031
- msgid "The default redirection used when no application is specified"
2032
- msgstr ""
2033
- "Redirecționarea implicită utilizată atunci când nu este specificată nici o "
2034
- "aplicație"
2035
-
2036
2031
  #: core/checks.py:15
2037
2032
  msgid ""
2038
2033
  "You have USE_TZ set to False, this may result in issues during transitions "
@@ -2382,7 +2377,7 @@ msgid "Not resolved"
2382
2377
  msgstr "Nedefinit"
2383
2378
 
2384
2379
  #: dmarc/models.py:10 dmarc/models.py:16 pdfcredentials/constants.py:7
2385
- #: webmail/constants.py:18
2380
+ #: webmail/constants.py:38
2386
2381
  msgid "None"
2387
2382
  msgstr ""
2388
2383
 
@@ -3355,7 +3350,7 @@ msgstr ""
3355
3350
  msgid "is not"
3356
3351
  msgstr ""
3357
3352
 
3358
- #: sievefilters/constants.py:23 webmail/lib/imapemail.py:304
3353
+ #: sievefilters/constants.py:23 webmail/lib/imapemail.py:302
3359
3354
  msgid "Subject"
3360
3355
  msgstr "Subiect"
3361
3356
 
@@ -3617,24 +3612,24 @@ msgstr ""
3617
3612
  msgid "SMTP settings"
3618
3613
  msgstr "Setări LDAP"
3619
3614
 
3620
- #: webmail/app_settings.py:75
3615
+ #: webmail/app_settings.py:75 webmail/app_settings.py:121
3621
3616
  msgid "Address of your SMTP server"
3622
3617
  msgstr ""
3623
3618
 
3624
- #: webmail/app_settings.py:82
3619
+ #: webmail/app_settings.py:82 webmail/app_settings.py:128
3625
3620
  #, fuzzy
3626
3621
  #| msgid "Use a secured connection"
3627
3622
  msgid "Secured connection mode"
3628
3623
  msgstr "Folosește o conexiune securizată"
3629
3624
 
3630
- #: webmail/app_settings.py:84
3625
+ #: webmail/app_settings.py:84 webmail/app_settings.py:130
3631
3626
  #, fuzzy
3632
3627
  #| msgid "Use an SSL/STARTTLS connection to access the LDAP server"
3633
3628
  msgid "Use a secured connection to access SMTP server"
3634
3629
  msgstr ""
3635
3630
  "Folosește o conexiune de tip SSL/STARTTLS pentru a accesa serverul LDAP"
3636
3631
 
3637
- #: webmail/app_settings.py:93
3632
+ #: webmail/app_settings.py:93 webmail/app_settings.py:139
3638
3633
  msgid "Listening port of your SMTP server"
3639
3634
  msgstr ""
3640
3635
 
@@ -3650,11 +3645,17 @@ msgstr "Metoda de autentificare"
3650
3645
  msgid "Server needs authentication"
3651
3646
  msgstr "Setări de autentificare LDAP"
3652
3647
 
3653
- #: webmail/app_settings.py:124
3648
+ #: webmail/app_settings.py:113
3649
+ #, fuzzy
3650
+ #| msgid "LDAP settings"
3651
+ msgid "Scheduling settings"
3652
+ msgstr "Setări LDAP"
3653
+
3654
+ #: webmail/app_settings.py:161
3654
3655
  msgid "Default message display mode"
3655
3656
  msgstr ""
3656
3657
 
3657
- #: webmail/app_settings.py:126
3658
+ #: webmail/app_settings.py:163
3658
3659
  #, fuzzy
3659
3660
  #| msgid "The default redirection used when no application is specified"
3660
3661
  msgid "The default mode used when displaying a message"
@@ -3662,97 +3663,97 @@ msgstr ""
3662
3663
  "Redirecționarea implicită utilizată atunci când nu este specificată nici o "
3663
3664
  "aplicație"
3664
3665
 
3665
- #: webmail/app_settings.py:133
3666
+ #: webmail/app_settings.py:170
3666
3667
  msgid "Enable HTML links display"
3667
3668
  msgstr ""
3668
3669
 
3669
- #: webmail/app_settings.py:136
3670
+ #: webmail/app_settings.py:173
3670
3671
  msgid "Enable/Disable HTML links display"
3671
3672
  msgstr ""
3672
3673
 
3673
- #: webmail/app_settings.py:147
3674
+ #: webmail/app_settings.py:184
3674
3675
  msgid "Sets the maximum number of messages displayed in a page"
3675
3676
  msgstr ""
3676
3677
 
3677
- #: webmail/app_settings.py:154
3678
+ #: webmail/app_settings.py:191
3678
3679
  msgid "Listing refresh rate"
3679
3680
  msgstr ""
3680
3681
 
3681
- #: webmail/app_settings.py:156
3682
+ #: webmail/app_settings.py:193
3682
3683
  msgid "Automatic listing refresh rate (in secconds)"
3683
3684
  msgstr ""
3684
3685
 
3685
- #: webmail/app_settings.py:163
3686
+ #: webmail/app_settings.py:200
3686
3687
  msgid "Folder container's width"
3687
3688
  msgstr ""
3688
3689
 
3689
- #: webmail/app_settings.py:165
3690
+ #: webmail/app_settings.py:202
3690
3691
  msgid "The width of the folder list container"
3691
3692
  msgstr ""
3692
3693
 
3693
- #: webmail/app_settings.py:176
3694
+ #: webmail/app_settings.py:213
3694
3695
  #, fuzzy
3695
3696
  #| msgid "Create aliases"
3696
3697
  msgid "Folders"
3697
3698
  msgstr "Crează aliasuri "
3698
3699
 
3699
- #: webmail/app_settings.py:182
3700
+ #: webmail/app_settings.py:219
3700
3701
  #, fuzzy
3701
3702
  #| msgid "Create aliases"
3702
3703
  msgid "Trash folder"
3703
3704
  msgstr "Crează aliasuri "
3704
3705
 
3705
- #: webmail/app_settings.py:184
3706
+ #: webmail/app_settings.py:221
3706
3707
  #, fuzzy
3707
3708
  #| msgid "rejected messages"
3708
3709
  msgid "Folder where deleted messages go"
3709
3710
  msgstr "mesaje rejectate"
3710
3711
 
3711
- #: webmail/app_settings.py:191
3712
+ #: webmail/app_settings.py:228
3712
3713
  #, fuzzy
3713
3714
  #| msgid "Create aliases"
3714
3715
  msgid "Sent folder"
3715
3716
  msgstr "Crează aliasuri "
3716
3717
 
3717
- #: webmail/app_settings.py:193
3718
+ #: webmail/app_settings.py:230
3718
3719
  msgid "Folder where copies of sent messages go"
3719
3720
  msgstr ""
3720
3721
 
3721
- #: webmail/app_settings.py:200
3722
+ #: webmail/app_settings.py:237
3722
3723
  #, fuzzy
3723
3724
  #| msgid "Create aliases"
3724
3725
  msgid "Drafts folder"
3725
3726
  msgstr "Crează aliasuri "
3726
3727
 
3727
- #: webmail/app_settings.py:201
3728
+ #: webmail/app_settings.py:238
3728
3729
  msgid "Folder where drafts go"
3729
3730
  msgstr ""
3730
3731
 
3731
- #: webmail/app_settings.py:207
3732
+ #: webmail/app_settings.py:244
3732
3733
  #, fuzzy
3733
3734
  #| msgid "Create aliases"
3734
3735
  msgid "Junk folder"
3735
3736
  msgstr "Crează aliasuri "
3736
3737
 
3737
- #: webmail/app_settings.py:209
3738
+ #: webmail/app_settings.py:246
3738
3739
  #, fuzzy
3739
3740
  #| msgid "rejected messages"
3740
3741
  msgid "Folder where junk messages should go"
3741
3742
  msgstr "mesaje rejectate"
3742
3743
 
3743
- #: webmail/app_settings.py:220
3744
+ #: webmail/app_settings.py:257
3744
3745
  #, fuzzy
3745
3746
  #| msgid "sent messages"
3746
3747
  msgid "Composing messages"
3747
3748
  msgstr "mesaje trimise"
3748
3749
 
3749
- #: webmail/app_settings.py:226
3750
+ #: webmail/app_settings.py:263
3750
3751
  #, fuzzy
3751
3752
  #| msgid "Default top redirection"
3752
3753
  msgid "Default editor"
3753
3754
  msgstr "Redirecționarea principală implicită"
3754
3755
 
3755
- #: webmail/app_settings.py:228
3756
+ #: webmail/app_settings.py:265
3756
3757
  #, fuzzy
3757
3758
  #| msgid "The default redirection used when no application is specified"
3758
3759
  msgid "The default editor to use when composing a message"
@@ -3760,11 +3761,11 @@ msgstr ""
3760
3761
  "Redirecționarea implicită utilizată atunci când nu este specificată nici o "
3761
3762
  "aplicație"
3762
3763
 
3763
- #: webmail/app_settings.py:235
3764
+ #: webmail/app_settings.py:272
3764
3765
  msgid "Signature text"
3765
3766
  msgstr ""
3766
3767
 
3767
- #: webmail/app_settings.py:237
3768
+ #: webmail/app_settings.py:274
3768
3769
  msgid "User defined email signature"
3769
3770
  msgstr ""
3770
3771
 
@@ -3780,47 +3781,74 @@ msgstr "Adresă server"
3780
3781
  msgid "Failed to remove attachment: "
3781
3782
  msgstr "Nu s-a reușit crearea unui cont LDAP: {}"
3782
3783
 
3783
- #: webmail/lib/imapemail.py:272
3784
+ #: webmail/lib/imapemail.py:270
3784
3785
  msgid "wrote:"
3785
3786
  msgstr ""
3786
3787
 
3787
- #: webmail/lib/imapemail.py:306
3788
+ #: webmail/lib/imapemail.py:304
3788
3789
  msgid "Date"
3789
3790
  msgstr "Dată"
3790
3791
 
3791
- #: webmail/lib/imapemail.py:322 webmail/lib/imapemail.py:325
3792
+ #: webmail/lib/imapemail.py:320 webmail/lib/imapemail.py:323
3792
3793
  #, fuzzy
3793
3794
  #| msgid "sent messages"
3794
3795
  msgid "Original message"
3795
3796
  msgstr "mesaje trimise"
3796
3797
 
3797
- #: webmail/lib/imaputils.py:221
3798
+ #: webmail/lib/imaputils.py:222
3798
3799
  msgid "Failed to retrieve hierarchy delimiter"
3799
3800
  msgstr ""
3800
3801
 
3801
- #: webmail/lib/imaputils.py:472
3802
+ #: webmail/lib/imaputils.py:478
3802
3803
  msgid "Inbox"
3803
3804
  msgstr ""
3804
3805
 
3805
- #: webmail/lib/imaputils.py:476
3806
+ #: webmail/lib/imaputils.py:482
3806
3807
  #, fuzzy
3807
3808
  #| msgid "Create aliases"
3808
3809
  msgid "Drafts"
3809
3810
  msgstr "Crează aliasuri "
3810
3811
 
3811
- #: webmail/lib/imaputils.py:481
3812
+ #: webmail/lib/imaputils.py:487
3812
3813
  msgid "Junk"
3813
3814
  msgstr ""
3814
3815
 
3815
- #: webmail/lib/imaputils.py:486
3816
+ #: webmail/lib/imaputils.py:492
3816
3817
  msgid "Sent"
3817
3818
  msgstr ""
3818
3819
 
3819
- #: webmail/lib/imaputils.py:491
3820
+ #: webmail/lib/imaputils.py:500
3821
+ msgid "Scheduled"
3822
+ msgstr ""
3823
+
3824
+ #: webmail/lib/imaputils.py:507
3820
3825
  msgid "Trash"
3821
3826
  msgstr ""
3822
3827
 
3823
- #: webmail/viewsets.py:357
3828
+ #: webmail/serializers.py:220
3829
+ msgid "Moving scheduled messages is forbidden"
3830
+ msgstr ""
3831
+
3832
+ #: webmail/serializers.py:253
3833
+ msgid "Only datetime in the future is allowed"
3834
+ msgstr ""
3835
+
3836
+ #: webmail/serializers.py:258
3837
+ msgid "Provived datetime must be one minute in the future at least"
3838
+ msgstr ""
3839
+
3840
+ #: webmail/viewsets.py:359
3824
3841
  #, python-format
3825
3842
  msgid "Attachment is too big (limit: %s)"
3826
3843
  msgstr ""
3844
+
3845
+ #~ msgid "User profile"
3846
+ #~ msgstr "Profil utilizator"
3847
+
3848
+ #~ msgid "Default top redirection"
3849
+ #~ msgstr "Redirecționarea principală implicită"
3850
+
3851
+ #~ msgid "The default redirection used when no application is specified"
3852
+ #~ msgstr ""
3853
+ #~ "Redirecționarea implicită utilizată atunci când nu este specificată nici "
3854
+ #~ "o aplicație"