modoboa 2.6.4__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 (364) 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/autoreply/models.py +4 -4
  16. modoboa/calendars/backends/caldav_.py +17 -13
  17. modoboa/calendars/jobs.py +7 -0
  18. modoboa/calendars/mocks.py +4 -1
  19. modoboa/calendars/serializers.py +14 -9
  20. modoboa/calendars/tests.py +10 -9
  21. modoboa/calendars/viewsets.py +3 -1
  22. modoboa/contacts/migrations/0008_addressbook_syncing.py +18 -0
  23. modoboa/contacts/models.py +1 -0
  24. modoboa/contacts/serializers.py +5 -2
  25. modoboa/contacts/tasks.py +9 -3
  26. modoboa/contacts/tests.py +32 -6
  27. modoboa/contacts/viewsets.py +7 -1
  28. modoboa/core/api/v2/serializers.py +0 -7
  29. modoboa/core/api/v2/tests.py +0 -10
  30. modoboa/core/app_settings.py +0 -22
  31. modoboa/core/commands/deploy.py +13 -0
  32. modoboa/core/commands/templates/cron_config.py.tpl +33 -0
  33. modoboa/core/commands/templates/settings.py.tpl +21 -0
  34. modoboa/core/jobs.py +34 -0
  35. modoboa/core/management/commands/load_initial_data.py +1 -1
  36. modoboa/core/password_hashers/base.py +4 -1
  37. modoboa/core/tests/test_core.py +0 -14
  38. modoboa/core/tests/test_jobs.py +40 -0
  39. modoboa/frontend_dist/assets/{AccountAliasForm-tLHotdIR.js → AccountAliasForm-DO6DwfjE.js} +1 -1
  40. modoboa/frontend_dist/assets/{AccountEditView-DnQIIg47.js → AccountEditView-CCuN9mGB.js} +1 -1
  41. modoboa/frontend_dist/assets/AccountLayout-Ge7fzuZg.js +1 -0
  42. modoboa/frontend_dist/assets/AccountPasswordSubForm-PkFPblkR.js +1 -0
  43. modoboa/frontend_dist/assets/AccountView-dgseekZ8.js +1 -0
  44. modoboa/frontend_dist/assets/AddressBook-DZWOHOJj.js +1 -0
  45. modoboa/frontend_dist/assets/AdminLayout-itB_mmH_.js +1 -0
  46. modoboa/frontend_dist/assets/AlarmsView-King6zb6.js +1 -0
  47. modoboa/frontend_dist/assets/{AliasEditView-n75NEN_s.js → AliasEditView-CTjrXYPf.js} +1 -1
  48. modoboa/frontend_dist/assets/AliasRecipientForm-CI7bXqVp.js +1 -0
  49. modoboa/frontend_dist/assets/{AliasView-DFIvPeIm.js → AliasView-BN13MNN_.js} +1 -1
  50. modoboa/frontend_dist/assets/AuditTrailView-C1jQwgoo.js +1 -0
  51. modoboa/frontend_dist/assets/CalendarView-juHVIHU5.css +1 -0
  52. modoboa/frontend_dist/assets/CalendarView-rRSzqxrH.js +1 -0
  53. modoboa/frontend_dist/assets/ChoiceField-DCr12shR.js +1 -0
  54. modoboa/frontend_dist/assets/ComposeEmailForm-BmtKwFb1.js +2 -0
  55. modoboa/frontend_dist/assets/ComposeEmailForm-CVNDl-Mq.css +1 -0
  56. modoboa/frontend_dist/assets/ComposeEmailView-JW22Phrb.js +1 -0
  57. modoboa/frontend_dist/assets/ConfirmDialog-CWpdwSQ6.js +1 -0
  58. modoboa/frontend_dist/assets/ConnectedLayout-BP8pO27H.js +1 -0
  59. modoboa/frontend_dist/assets/{ConnectedLayout-C6HNXWkp.css → ConnectedLayout-Ddpb_6yT.css} +1 -1
  60. modoboa/frontend_dist/assets/CreationForm-CzelJsVQ.js +1 -0
  61. modoboa/frontend_dist/assets/DashboardView-BBkBodVj.js +1 -0
  62. modoboa/frontend_dist/assets/{DomainAdminList-BjtfbhRj.js → DomainAdminList-DD7p3i6F.js} +1 -1
  63. modoboa/frontend_dist/assets/{DomainEditView-Cq5Ea4RW.js → DomainEditView-DoIoNYC4.js} +1 -1
  64. modoboa/frontend_dist/assets/{DomainTransportForm-DAXJGNLA.js → DomainTransportForm-CbiJF9z5.js} +1 -1
  65. modoboa/frontend_dist/assets/{DomainView-BfpK7U14.js → DomainView-BXvznFYz.js} +3 -3
  66. modoboa/frontend_dist/assets/DomainsView-ffYjiffp.js +1 -0
  67. modoboa/frontend_dist/assets/EmailField-KhhJYA4D.js +1 -0
  68. modoboa/frontend_dist/assets/EmailSchedulingForm-CQL5Vfdr.js +1 -0
  69. modoboa/frontend_dist/assets/EmailView-Bq2bHZBO.js +1 -0
  70. modoboa/frontend_dist/assets/EmptyLayout-NrTftp18.js +1 -0
  71. modoboa/frontend_dist/assets/FiltersView-SOQy0U_3.js +1 -0
  72. modoboa/frontend_dist/assets/ForwardEmailView-kEPDjWUw.js +1 -0
  73. modoboa/frontend_dist/assets/{HtmlEditor-D753fIAJ.js → HtmlEditor-CyBl5wj2.js} +15 -15
  74. modoboa/frontend_dist/assets/IdentitiesView-CZFf4oR9.js +1 -0
  75. modoboa/frontend_dist/assets/InformationView-CAtneAqM.js +1 -0
  76. modoboa/frontend_dist/assets/{LoadingData-Tm56XNwj.js → LoadingData-C2txD49L.js} +1 -1
  77. modoboa/frontend_dist/assets/{LoginCallbackView-DjCHUgz5.js → LoginCallbackView-DAvty3CI.js} +1 -1
  78. modoboa/frontend_dist/assets/{LoginView-D0r4XBEl.js → LoginView-DHYITkn4.js} +1 -1
  79. modoboa/frontend_dist/assets/MailboxView-BNg2v7mi.css +1 -0
  80. modoboa/frontend_dist/assets/MailboxView-DHg5A78D.js +5 -0
  81. modoboa/frontend_dist/assets/MenuItems-C9p70bSC.js +1 -0
  82. modoboa/frontend_dist/assets/{MessageView-BWh9BqzS.js → MessageView-CrrEJpNI.js} +1 -1
  83. modoboa/frontend_dist/assets/MessagesView-CyecRd4I.js +1 -0
  84. modoboa/frontend_dist/assets/MigrationsView-DXGKKz2h.js +1 -0
  85. modoboa/frontend_dist/assets/{ParametersForm-y02-GM0r.js → ParametersForm-DFKYkPAs.js} +1 -1
  86. modoboa/frontend_dist/assets/ParametersView-B1wT5oyt.js +1 -0
  87. modoboa/frontend_dist/assets/ParametersView-CfvVzKea.js +1 -0
  88. modoboa/frontend_dist/assets/ProviderEditView-De-8ggBp.js +1 -0
  89. modoboa/frontend_dist/assets/ProviderGeneralForm-DO-IpJMQ.js +1 -0
  90. modoboa/frontend_dist/assets/ProvidersView-Bhk7sCz4.js +1 -0
  91. modoboa/frontend_dist/assets/QuarantineLayout-C1YszNmP.js +1 -0
  92. modoboa/frontend_dist/assets/QuarantineView-cElD_rS-.js +1 -0
  93. modoboa/frontend_dist/assets/ReplyEmailView-BvuOZdLl.js +1 -0
  94. modoboa/frontend_dist/assets/ResourcesForm-FWxrmVwo.js +1 -0
  95. modoboa/frontend_dist/assets/SelfServiceLayout-JHRvfvQf.js +1 -0
  96. modoboa/frontend_dist/assets/SettingsView-SIsKAXtQ.css +1 -0
  97. modoboa/frontend_dist/assets/SettingsView-s2l2Xl1L.js +6 -0
  98. modoboa/frontend_dist/assets/StatisticsView-FiidWvad.js +1 -0
  99. modoboa/frontend_dist/assets/TimeSerieChart-CdqUHiO_.js +1 -0
  100. modoboa/frontend_dist/assets/TimeSerieChart-nLIFGI0y.css +1 -0
  101. modoboa/frontend_dist/assets/UserLayout-DyvI8duf.js +1 -0
  102. modoboa/frontend_dist/assets/{VAlert-CNys_LUS.js → VAlert-MDbeolOo.js} +1 -1
  103. modoboa/frontend_dist/assets/VApp-DM1KLQfQ.js +1 -0
  104. modoboa/frontend_dist/assets/VAutocomplete-C9NL5_uo.css +1 -0
  105. modoboa/frontend_dist/assets/VAutocomplete-CQsWYWNX.js +1 -0
  106. modoboa/frontend_dist/assets/VAvatar-CXV_FqpP.js +1 -0
  107. modoboa/frontend_dist/assets/VBadge-7tDx7aI3.js +1 -0
  108. modoboa/frontend_dist/assets/{VCard-BoH6kjPa.js → VCard-CBtX8JF-.js} +1 -1
  109. modoboa/frontend_dist/assets/VCheckbox-zY1MApOy.js +1 -0
  110. modoboa/frontend_dist/assets/{VCheckboxBtn-Ccl786Rg.js → VCheckboxBtn-B0mIT3E0.js} +1 -1
  111. modoboa/frontend_dist/assets/VColorPicker-BbCHvk6K.js +1 -0
  112. modoboa/frontend_dist/assets/{VColorPicker-B_lVDaYR.css → VColorPicker-C9m8L-6U.css} +1 -1
  113. modoboa/frontend_dist/assets/{VContainer-DKMcKasC.js → VContainer-Cn-vKB3s.js} +1 -1
  114. modoboa/frontend_dist/assets/VDataTable-CNT9KOSp.js +1 -0
  115. modoboa/frontend_dist/assets/VDataTableServer-_yn4Ry6U.js +1 -0
  116. modoboa/frontend_dist/assets/VDataTableVirtual-Csxh3Gp6.js +1 -0
  117. modoboa/frontend_dist/assets/VDatePicker-_OUDqShN.css +1 -0
  118. modoboa/frontend_dist/assets/VDatePicker-iFu13xIP.js +2 -0
  119. modoboa/frontend_dist/assets/VDialog-lKtBdqnp.js +1 -0
  120. modoboa/frontend_dist/assets/VExpansionPanels-CaIvk9iF.js +1 -0
  121. modoboa/frontend_dist/assets/VFileInput-C7J_qVmk.js +1 -0
  122. modoboa/frontend_dist/assets/VForm-fdQ5d-CH.js +1 -0
  123. modoboa/frontend_dist/assets/VInput-BwHvhzAe.js +1 -0
  124. modoboa/frontend_dist/assets/VMenu-BpmJf4X2.js +1 -0
  125. modoboa/frontend_dist/assets/VMenu-C5A_5Hs5.css +1 -0
  126. modoboa/frontend_dist/assets/VPicker-B7cB3kJg.css +1 -0
  127. modoboa/frontend_dist/assets/VPicker-BZho70wU.js +1 -0
  128. modoboa/frontend_dist/assets/VProgressCircular-DRw_-iNj.js +1 -0
  129. modoboa/frontend_dist/assets/VRadioGroup--eiP5xtJ.js +1 -0
  130. modoboa/frontend_dist/assets/{VRow-CuVZGqBj.js → VRow-83Qnr5iB.js} +1 -1
  131. modoboa/frontend_dist/assets/VSelect-BcmGFGif.js +1 -0
  132. modoboa/frontend_dist/assets/{VSelectionControl-uKY9Zull.js → VSelectionControl-Cqi1xt-q.js} +1 -1
  133. modoboa/frontend_dist/assets/VSheet-C3MaHhtw.js +1 -0
  134. modoboa/frontend_dist/assets/VSpacer-CuSkdJZL.js +1 -0
  135. modoboa/frontend_dist/assets/VSwitch-XumUl685.js +1 -0
  136. modoboa/frontend_dist/assets/{VTable-gDsAUSLX.js → VTable-f7wcr2AZ.js} +1 -1
  137. modoboa/frontend_dist/assets/VTabs-CDfdejXj.css +1 -0
  138. modoboa/frontend_dist/assets/VTabs-y4wNP4im.js +1 -0
  139. modoboa/frontend_dist/assets/VTextField-BPIvtrn4.js +1 -0
  140. modoboa/frontend_dist/assets/VTextField-DjbYGlzs.css +1 -0
  141. modoboa/frontend_dist/assets/VTextarea-B6bGYcC3.js +1 -0
  142. modoboa/frontend_dist/assets/VTextarea-f6vTjzFy.css +1 -0
  143. modoboa/frontend_dist/assets/VToolbar-BYDPtwf0.css +1 -0
  144. modoboa/frontend_dist/assets/VToolbar-CB6wwtYc.js +1 -0
  145. modoboa/frontend_dist/assets/VWindowItem-CDtLLEkg.js +1 -0
  146. modoboa/frontend_dist/assets/WebmailLayout-CQQAolnl.css +1 -0
  147. modoboa/frontend_dist/assets/WebmailLayout-tosQSHLS.js +1 -0
  148. modoboa/frontend_dist/assets/{accounts-DqbBlaLK.js → accounts-KUsk6LHW.js} +1 -1
  149. modoboa/frontend_dist/assets/{admin-D36m_nXq.js → admin-BW9cZW0P.js} +1 -1
  150. modoboa/frontend_dist/assets/{aliases-BtyF8GC8.js → aliases-Ge0hjIsH.js} +1 -1
  151. modoboa/frontend_dist/assets/{amavis-DySmsCJQ.js → amavis-BbFeFfsk.js} +1 -1
  152. modoboa/frontend_dist/assets/{amavis-B4QhM5Fa.js → amavis-DtuzP_CS.js} +1 -1
  153. modoboa/frontend_dist/assets/{contacts-Df8ptuMn.js → contacts-DMJlQTe0.js} +1 -1
  154. modoboa/frontend_dist/assets/{domains-CSxtTvUh.js → domains-Du64lcXT.js} +1 -1
  155. modoboa/frontend_dist/assets/domains.store-1U61jeCV.js +1 -0
  156. modoboa/frontend_dist/assets/events-BM3in65C.js +1 -0
  157. modoboa/frontend_dist/assets/filter-Dihm6o59.js +1 -0
  158. modoboa/frontend_dist/assets/importExport-HGcNGWOm.js +1 -0
  159. modoboa/frontend_dist/assets/{index-B9q1vO3K.css → index-B1EK3MQe.css} +1 -1
  160. modoboa/frontend_dist/assets/{index-Bp9Fb67E.js → index-Dv00bmw9.js} +1 -1
  161. modoboa/frontend_dist/assets/index-jui3edpn.js +1001 -0
  162. modoboa/frontend_dist/assets/{language.store-_-zrrEiS.js → language.store-OcfdXL_-.js} +1 -1
  163. modoboa/frontend_dist/assets/languages-CF8hxo7x.js +1 -0
  164. modoboa/frontend_dist/assets/{layout-CjSP_k58.js → layout-DOO7TRTJ.js} +1 -1
  165. modoboa/frontend_dist/assets/{layout.store-CF5WRevH.js → layout.store-C0g-piJn.js} +1 -1
  166. modoboa/frontend_dist/assets/{logos-95XYS6uH.js → logos-Dz2Gzei-.js} +1 -1
  167. modoboa/frontend_dist/assets/{logs-CyU_PIDh.js → logs-CLm32Weu.js} +1 -1
  168. modoboa/frontend_dist/assets/{parameters-BxAXBXU1.js → parameters-DMIAQ7cd.js} +1 -1
  169. modoboa/frontend_dist/assets/{parameters.store-CATOSoQZ.js → parameters.store-DLnFzCwV.js} +1 -1
  170. modoboa/frontend_dist/assets/{permissions-cSkGqV3M.js → permissions-CrpE0b4w.js} +1 -1
  171. modoboa/frontend_dist/assets/{ssrBoot-05WtbG6H.js → ssrBoot-B7cr7q9U.js} +1 -1
  172. modoboa/frontend_dist/assets/{tag-BmV84V2s.js → tag-WF93n81Q.js} +1 -1
  173. modoboa/frontend_dist/assets/{theme-myV4ekXo.js → theme-_0oOYChG.js} +1 -1
  174. modoboa/frontend_dist/assets/transports-CS61syt-.js +1 -0
  175. modoboa/frontend_dist/assets/webmail-CYDXU0DS.js +1 -0
  176. modoboa/frontend_dist/assets/webmail.store-BvHCQSjM.js +1 -0
  177. modoboa/frontend_dist/index.html +2 -2
  178. modoboa/imap_migration/api/v2/serializers.py +13 -0
  179. modoboa/imap_migration/models.py +3 -3
  180. modoboa/imap_migration/templates/imap_migration/offlineimap.conf +2 -2
  181. modoboa/imap_migration/tests.py +28 -0
  182. modoboa/lib/cryptutils.py +2 -2
  183. modoboa/lib/sysutils.py +1 -1
  184. modoboa/lib/tests/__init__.py +0 -1
  185. modoboa/locale/br/LC_MESSAGES/django.mo +0 -0
  186. modoboa/locale/br/LC_MESSAGES/django.po +753 -317
  187. modoboa/locale/cs/LC_MESSAGES/django.po +671 -309
  188. modoboa/locale/cs_CZ/LC_MESSAGES/django.mo +0 -0
  189. modoboa/locale/cs_CZ/LC_MESSAGES/django.po +801 -378
  190. modoboa/locale/de/LC_MESSAGES/django.mo +0 -0
  191. modoboa/locale/de/LC_MESSAGES/django.po +1116 -455
  192. modoboa/locale/de_DE/LC_MESSAGES/django.mo +0 -0
  193. modoboa/locale/de_DE/LC_MESSAGES/django.po +745 -318
  194. modoboa/locale/el_GR/LC_MESSAGES/django.mo +0 -0
  195. modoboa/locale/el_GR/LC_MESSAGES/django.po +825 -393
  196. modoboa/locale/en/LC_MESSAGES/django.po +669 -309
  197. modoboa/locale/es/LC_MESSAGES/django.mo +0 -0
  198. modoboa/locale/es/LC_MESSAGES/django.po +810 -390
  199. modoboa/locale/es_MX/LC_MESSAGES/django.po +669 -309
  200. modoboa/locale/fi/LC_MESSAGES/django.mo +0 -0
  201. modoboa/locale/fi/LC_MESSAGES/django.po +756 -316
  202. modoboa/locale/fr/LC_MESSAGES/django.mo +0 -0
  203. modoboa/locale/fr/LC_MESSAGES/django.po +674 -313
  204. modoboa/locale/hu/LC_MESSAGES/django.po +669 -309
  205. modoboa/locale/it/LC_MESSAGES/django.mo +0 -0
  206. modoboa/locale/it/LC_MESSAGES/django.po +807 -380
  207. modoboa/locale/ja_JP/LC_MESSAGES/django.mo +0 -0
  208. modoboa/locale/ja_JP/LC_MESSAGES/django.po +951 -419
  209. modoboa/locale/ka/LC_MESSAGES/django.po +669 -309
  210. modoboa/locale/nl_NL/LC_MESSAGES/django.mo +0 -0
  211. modoboa/locale/nl_NL/LC_MESSAGES/django.po +807 -387
  212. modoboa/locale/no/LC_MESSAGES/django.po +669 -309
  213. modoboa/locale/pl_PL/LC_MESSAGES/django.mo +0 -0
  214. modoboa/locale/pl_PL/LC_MESSAGES/django.po +826 -396
  215. modoboa/locale/pt_BR/LC_MESSAGES/django.mo +0 -0
  216. modoboa/locale/pt_BR/LC_MESSAGES/django.po +830 -392
  217. modoboa/locale/pt_PT/LC_MESSAGES/django.mo +0 -0
  218. modoboa/locale/pt_PT/LC_MESSAGES/django.po +788 -371
  219. modoboa/locale/ro_RO/LC_MESSAGES/django.mo +0 -0
  220. modoboa/locale/ro_RO/LC_MESSAGES/django.po +763 -316
  221. modoboa/locale/ru/LC_MESSAGES/django.mo +0 -0
  222. modoboa/locale/ru/LC_MESSAGES/django.po +1336 -1046
  223. modoboa/locale/si/LC_MESSAGES/django.po +669 -309
  224. modoboa/locale/sk/LC_MESSAGES/django.po +671 -309
  225. modoboa/locale/sk_SK/LC_MESSAGES/django.po +671 -309
  226. modoboa/locale/sl_SI/LC_MESSAGES/django.po +695 -315
  227. modoboa/locale/sv/LC_MESSAGES/django.mo +0 -0
  228. modoboa/locale/sv/LC_MESSAGES/django.po +819 -387
  229. modoboa/locale/tr/LC_MESSAGES/django.mo +0 -0
  230. modoboa/locale/tr/LC_MESSAGES/django.po +737 -315
  231. modoboa/locale/tr_TR/LC_MESSAGES/django.mo +0 -0
  232. modoboa/locale/tr_TR/LC_MESSAGES/django.po +711 -310
  233. modoboa/locale/uk/LC_MESSAGES/django.po +671 -309
  234. modoboa/locale/zh/LC_MESSAGES/django.po +668 -309
  235. modoboa/locale/zh_CN/LC_MESSAGES/django.po +668 -309
  236. modoboa/locale/zh_TW/LC_MESSAGES/django.mo +0 -0
  237. modoboa/locale/zh_TW/LC_MESSAGES/django.po +747 -316
  238. modoboa/maillog/jobs.py +11 -0
  239. modoboa/maillog/tests/test_views.py +5 -4
  240. modoboa/parameters/api/v2/tests.py +1 -1
  241. modoboa/policyd/management/commands/policy_daemon.py +5 -1
  242. modoboa/policyd/tests.py +4 -2
  243. modoboa/rspamd/tests.py +20 -0
  244. modoboa/templates/registration/twofactor_code_verify.html +1 -1
  245. modoboa/webmail/app_settings.py +37 -0
  246. modoboa/webmail/constants.py +21 -1
  247. modoboa/webmail/factories.py +19 -0
  248. modoboa/webmail/jobs.py +27 -0
  249. modoboa/webmail/lib/__init__.py +0 -2
  250. modoboa/webmail/lib/imapemail.py +9 -11
  251. modoboa/webmail/lib/imapheader.py +25 -13
  252. modoboa/webmail/lib/imaputils.py +51 -13
  253. modoboa/webmail/lib/sendmail.py +88 -105
  254. modoboa/webmail/lib/utils.py +109 -0
  255. modoboa/webmail/migrations/0001_initial.py +90 -0
  256. modoboa/webmail/migrations/__init__.py +0 -0
  257. modoboa/webmail/mocks.py +12 -3
  258. modoboa/webmail/models.py +102 -0
  259. modoboa/webmail/serializers.py +84 -4
  260. modoboa/webmail/tests/data.py +21 -0
  261. modoboa/webmail/tests/test_lib_imaputils.py +33 -0
  262. modoboa/webmail/tests/test_viewsets.py +108 -0
  263. modoboa/webmail/urls.py +5 -0
  264. modoboa/webmail/viewsets.py +39 -9
  265. {modoboa-2.6.4.dist-info → modoboa-2.7.0.dist-info}/METADATA +16 -13
  266. {modoboa-2.6.4.dist-info → modoboa-2.7.0.dist-info}/RECORD +271 -254
  267. {modoboa-2.6.4.dist-info → modoboa-2.7.0.dist-info}/WHEEL +1 -1
  268. modoboa/admin/management/commands/handle_mailbox_operations.py +0 -103
  269. modoboa/core/management/commands/cleanlogs.py +0 -53
  270. modoboa/frontend_dist/assets/AccountLayout-B2HptJzY.js +0 -1
  271. modoboa/frontend_dist/assets/AccountPasswordSubForm-DpADntAL.js +0 -1
  272. modoboa/frontend_dist/assets/AccountView-CJBGh9Oe.js +0 -1
  273. modoboa/frontend_dist/assets/AddressBook-CrFqzlzZ.js +0 -1
  274. modoboa/frontend_dist/assets/AdminLayout-BbCt7YxX.js +0 -1
  275. modoboa/frontend_dist/assets/AlarmsView-CIlt_IKQ.js +0 -1
  276. modoboa/frontend_dist/assets/AliasRecipientForm-jjj5yJJw.js +0 -1
  277. modoboa/frontend_dist/assets/AuditTrailView-sWnED3E9.js +0 -1
  278. modoboa/frontend_dist/assets/CalendarView-DSCBIvef.js +0 -1
  279. modoboa/frontend_dist/assets/ChoiceField-RDT6XcnX.js +0 -1
  280. modoboa/frontend_dist/assets/ComposeEmailForm-D3yUbBJX.css +0 -1
  281. modoboa/frontend_dist/assets/ComposeEmailForm-G3sXQAwI.js +0 -1
  282. modoboa/frontend_dist/assets/ComposeEmailView-Ce1CtFjD.js +0 -1
  283. modoboa/frontend_dist/assets/ConfirmDialog-Du7aqKbR.js +0 -1
  284. modoboa/frontend_dist/assets/ConnectedLayout-BHWaBAzH.js +0 -1
  285. modoboa/frontend_dist/assets/CreationForm-CjtILq0_.js +0 -1
  286. modoboa/frontend_dist/assets/DashboardView-DFNwusDZ.js +0 -1
  287. modoboa/frontend_dist/assets/DomainsView-CYxLy-3Y.js +0 -1
  288. modoboa/frontend_dist/assets/EmailField-DmPc4pyP.js +0 -1
  289. modoboa/frontend_dist/assets/EmailView-BE3vYZtJ.js +0 -1
  290. modoboa/frontend_dist/assets/EmptyLayout-DMwKNHfI.js +0 -1
  291. modoboa/frontend_dist/assets/FiltersView-Dps3_fAh.js +0 -1
  292. modoboa/frontend_dist/assets/ForwardEmailView-C0I00eXf.js +0 -1
  293. modoboa/frontend_dist/assets/IdentitiesView-CoGBVhZx.js +0 -1
  294. modoboa/frontend_dist/assets/InformationView-eB2ayeLD.js +0 -1
  295. modoboa/frontend_dist/assets/MailboxView-DIVABvk5.css +0 -1
  296. modoboa/frontend_dist/assets/MailboxView-DNokO2WZ.js +0 -5
  297. modoboa/frontend_dist/assets/MenuItems-dl38msRA.js +0 -1
  298. modoboa/frontend_dist/assets/MessagesView-BZ7NUOwo.js +0 -1
  299. modoboa/frontend_dist/assets/MigrationsView-DcOVgmcH.js +0 -1
  300. modoboa/frontend_dist/assets/ParametersView-B6abt-LH.js +0 -1
  301. modoboa/frontend_dist/assets/ParametersView-v0YS6WU4.js +0 -1
  302. modoboa/frontend_dist/assets/ProviderEditView-BaL9mKxJ.js +0 -1
  303. modoboa/frontend_dist/assets/ProviderGeneralForm-eoHMDO5v.js +0 -1
  304. modoboa/frontend_dist/assets/ProvidersView-Zu-G35u7.js +0 -1
  305. modoboa/frontend_dist/assets/QuarantineLayout-BHiiksnP.js +0 -1
  306. modoboa/frontend_dist/assets/QuarantineView-BOXSobRz.js +0 -1
  307. modoboa/frontend_dist/assets/ReplyEmailView-JmSiNWPy.js +0 -1
  308. modoboa/frontend_dist/assets/ResourcesForm-D0YBapCG.js +0 -1
  309. modoboa/frontend_dist/assets/SelfServiceLayout-DUmQzUDk.js +0 -1
  310. modoboa/frontend_dist/assets/SettingsView-DIvKGRBY.css +0 -1
  311. modoboa/frontend_dist/assets/SettingsView-DMuaKagM.js +0 -6
  312. modoboa/frontend_dist/assets/StatisticsView-CyY_CNcI.js +0 -1
  313. modoboa/frontend_dist/assets/TimeSerieChart-BTDBH33K.js +0 -1
  314. modoboa/frontend_dist/assets/TimeSerieChart-C3XHmlRd.css +0 -1
  315. modoboa/frontend_dist/assets/UserLayout-DwxcQr4L.js +0 -1
  316. modoboa/frontend_dist/assets/VApp-B0vRc3-6.js +0 -1
  317. modoboa/frontend_dist/assets/VAutocomplete-Huaz_-hf.js +0 -1
  318. modoboa/frontend_dist/assets/VAutocomplete-hzGuLlUI.css +0 -1
  319. modoboa/frontend_dist/assets/VAvatar-JdJfoK0C.js +0 -1
  320. modoboa/frontend_dist/assets/VBadge-Cg5iu5LG.js +0 -1
  321. modoboa/frontend_dist/assets/VCheckbox-CCLOJFKF.js +0 -1
  322. modoboa/frontend_dist/assets/VColorPicker-452uc3tY.js +0 -1
  323. modoboa/frontend_dist/assets/VDataTable-BkLLfcQK.js +0 -1
  324. modoboa/frontend_dist/assets/VDataTableServer-B_6fWBA3.js +0 -1
  325. modoboa/frontend_dist/assets/VDataTableVirtual-Ike7oqcC.js +0 -1
  326. modoboa/frontend_dist/assets/VDialog-DIUeAIpw.js +0 -1
  327. modoboa/frontend_dist/assets/VExpansionPanels-BeMgiS7A.js +0 -1
  328. modoboa/frontend_dist/assets/VFileInput-Dvj95FL5.js +0 -1
  329. modoboa/frontend_dist/assets/VForm-DkphQD3e.js +0 -1
  330. modoboa/frontend_dist/assets/VInput-CbqehdOu.js +0 -1
  331. modoboa/frontend_dist/assets/VMenu-B6SCtOwT.js +0 -1
  332. modoboa/frontend_dist/assets/VMenu-BEipA1lw.css +0 -1
  333. modoboa/frontend_dist/assets/VPicker-BUx70Wjg.js +0 -1
  334. modoboa/frontend_dist/assets/VPicker-ClSXs6kv.css +0 -1
  335. modoboa/frontend_dist/assets/VProgressCircular-DTDGzl2O.js +0 -1
  336. modoboa/frontend_dist/assets/VRadioGroup-CS9ULZ1c.js +0 -1
  337. modoboa/frontend_dist/assets/VSelect-D5IXDPEX.js +0 -1
  338. modoboa/frontend_dist/assets/VSheet-HeHw6g5_.js +0 -1
  339. modoboa/frontend_dist/assets/VSpacer-BUxSSJbH.js +0 -1
  340. modoboa/frontend_dist/assets/VSwitch-Dh_dserW.js +0 -1
  341. modoboa/frontend_dist/assets/VTabs-5XSICLQP.js +0 -1
  342. modoboa/frontend_dist/assets/VTabs-NzpINroH.css +0 -1
  343. modoboa/frontend_dist/assets/VTextField-Cow3HZvI.css +0 -1
  344. modoboa/frontend_dist/assets/VTextField-QXQFhKxm.js +0 -1
  345. modoboa/frontend_dist/assets/VTextarea-Bdy4UKmV.js +0 -1
  346. modoboa/frontend_dist/assets/VTextarea-DyGjqrlm.css +0 -1
  347. modoboa/frontend_dist/assets/VToolbar-CB2GrZpA.css +0 -1
  348. modoboa/frontend_dist/assets/VToolbar-CyrYSqJZ.js +0 -1
  349. modoboa/frontend_dist/assets/VWindowItem-kZpArwK1.js +0 -1
  350. modoboa/frontend_dist/assets/WebmailLayout-BzW0LWYp.css +0 -1
  351. modoboa/frontend_dist/assets/WebmailLayout-CNUHODnw.js +0 -1
  352. modoboa/frontend_dist/assets/domains.store-D4ZqCQ-O.js +0 -1
  353. modoboa/frontend_dist/assets/filter-DHKXX97M.js +0 -1
  354. modoboa/frontend_dist/assets/global.store-DYMmGKpn.js +0 -1
  355. modoboa/frontend_dist/assets/importExport-C-adpHJX.js +0 -1
  356. modoboa/frontend_dist/assets/index-B1bntsLR.js +0 -995
  357. modoboa/frontend_dist/assets/languages-CxjoT69j.js +0 -1
  358. modoboa/frontend_dist/assets/transports-ChdHV5hX.js +0 -1
  359. modoboa/frontend_dist/assets/webmail-B7MNMkv_.js +0 -1
  360. modoboa/frontend_dist/assets/webmail.store-Cm-h6hhE.js +0 -1
  361. {modoboa-2.6.4.data → modoboa-2.7.0.data}/scripts/modoboa-admin.py +0 -0
  362. {modoboa-2.6.4.dist-info → modoboa-2.7.0.dist-info}/entry_points.txt +0 -0
  363. {modoboa-2.6.4.dist-info → modoboa-2.7.0.dist-info}/licenses/LICENSE +0 -0
  364. {modoboa-2.6.4.dist-info → modoboa-2.7.0.dist-info}/top_level.txt +0 -0
@@ -12,7 +12,7 @@ msgid ""
12
12
  msgstr ""
13
13
  "Project-Id-Version: Modoboa\n"
14
14
  "Report-Msgid-Bugs-To: \n"
15
- "POT-Creation-Date: 2025-08-28 09:41+0200\n"
15
+ "POT-Creation-Date: 2026-02-04 09:30+0100\n"
16
16
  "PO-Revision-Date: 2018-11-22 19:31+0000\n"
17
17
  "Last-Translator: Ediz Duman <neps1192@gmail.com>\n"
18
18
  "Language-Team: Turkish (Turkey) (http://www.transifex.com/tonio/modoboa/"
@@ -46,14 +46,14 @@ msgid "Cannot be greater than domain quota"
46
46
  msgstr ""
47
47
 
48
48
  #: admin/api/v1/serializers.py:168 admin/api/v1/serializers.py:364
49
- #: admin/api/v2/serializers.py:564 admin/models/alias.py:44
49
+ #: admin/api/v2/serializers.py:571 admin/models/alias.py:45
50
50
  msgid "Permission denied."
51
51
  msgstr ""
52
52
 
53
53
  #: admin/api/v1/serializers.py:231 admin/api/v2/serializers.py:90
54
- #: admin/api/v2/serializers.py:486 core/api/v2/serializers.py:255
55
- #: core/api/v2/serializers.py:257 core/api/v2/serializers.py:266
56
- #: transport/backends.py:40
54
+ #: admin/api/v2/serializers.py:492 amavis/serializers.py:39
55
+ #: core/api/v2/serializers.py:248 core/api/v2/serializers.py:250
56
+ #: core/api/v2/serializers.py:259 transport/backends.py:40
57
57
  msgid "This field is required"
58
58
  msgstr "Bu alan gereklidir"
59
59
 
@@ -62,7 +62,7 @@ msgid ""
62
62
  "List of administered domains (resellers and domain administrators only)."
63
63
  msgstr ""
64
64
 
65
- #: admin/api/v1/serializers.py:337 admin/api/v2/serializers.py:546
65
+ #: admin/api/v1/serializers.py:337 admin/api/v2/serializers.py:553
66
66
  msgid "Not allowed for this role."
67
67
  msgstr ""
68
68
 
@@ -70,13 +70,12 @@ msgstr ""
70
70
  msgid "Must be equal to mailbox full_address"
71
71
  msgstr ""
72
72
 
73
- #: admin/api/v1/serializers.py:397 admin/api/v2/serializers.py:598
74
- #: calendars/serializers.py:175 calendars/serializers.py:177
75
- #: pdfcredentials/api/v2/serializers.py:91
73
+ #: admin/api/v1/serializers.py:397 admin/api/v2/serializers.py:605
74
+ #: calendars/serializers.py:182 pdfcredentials/api/v2/serializers.py:91
76
75
  msgid "This field is required."
77
76
  msgstr ""
78
77
 
79
- #: admin/api/v1/serializers.py:409 admin/api/v2/serializers.py:615
78
+ #: admin/api/v1/serializers.py:409 admin/api/v2/serializers.py:622
80
79
  msgid "Local domain {} does not exist"
81
80
  msgstr ""
82
81
 
@@ -84,7 +83,7 @@ msgstr ""
84
83
  msgid "A list of recipient"
85
84
  msgstr ""
86
85
 
87
- #: admin/api/v1/serializers.py:515 admin/api/v2/viewsets.py:286
86
+ #: admin/api/v1/serializers.py:515 admin/api/v2/viewsets.py:313
88
87
  msgid "This alias already exists"
89
88
  msgstr ""
90
89
 
@@ -117,47 +116,47 @@ msgstr ""
117
116
  msgid "User '%s' already exists"
118
117
  msgstr ""
119
118
 
120
- #: admin/api/v2/serializers.py:250 admin/api/v2/serializers.py:256
119
+ #: admin/api/v2/serializers.py:256 admin/api/v2/serializers.py:262
121
120
  msgid "Must be a positive integer"
122
121
  msgstr ""
123
122
 
124
- #: admin/api/v2/serializers.py:265
123
+ #: admin/api/v2/serializers.py:271
125
124
  msgid "openssl not found, please make sure it is installed."
126
125
  msgstr ""
127
126
 
128
- #: admin/api/v2/serializers.py:268 pdfcredentials/api/v2/serializers.py:84
127
+ #: admin/api/v2/serializers.py:274 pdfcredentials/api/v2/serializers.py:84
129
128
  msgid "Directory not found."
130
129
  msgstr ""
131
130
 
132
- #: admin/api/v2/serializers.py:279
131
+ #: admin/api/v2/serializers.py:285
133
132
  msgid "This field only allows valid IP addresses (or networks)"
134
133
  msgstr ""
135
134
 
136
- #: admin/api/v2/serializers.py:292
135
+ #: admin/api/v2/serializers.py:298
137
136
  msgid "Please disable imap migration before disabling this option."
138
137
  msgstr ""
139
138
 
140
- #: admin/api/v2/serializers.py:305
139
+ #: admin/api/v2/serializers.py:311
141
140
  msgid "Define at least one authorized network / address"
142
141
  msgstr ""
143
142
 
144
- #: admin/api/v2/serializers.py:581
143
+ #: admin/api/v2/serializers.py:588
145
144
  msgid "The left part of an email address can't be more than 64 characters."
146
145
  msgstr ""
147
146
 
148
- #: admin/api/v2/serializers.py:603
147
+ #: admin/api/v2/serializers.py:610
149
148
  msgid "A mailbox is required to create aliases."
150
149
  msgstr ""
151
150
 
152
- #: admin/api/v2/serializers.py:772
151
+ #: admin/api/v2/serializers.py:783
153
152
  msgid "Unknown status"
154
153
  msgstr ""
155
154
 
156
- #: admin/api/v2/viewsets.py:84
155
+ #: admin/api/v2/viewsets.py:95
157
156
  msgid "You don't have access to this domain"
158
157
  msgstr ""
159
158
 
160
- #: admin/api/v2/viewsets.py:87
159
+ #: admin/api/v2/viewsets.py:98
161
160
  msgid "You can't delete your own domain"
162
161
  msgstr ""
163
162
 
@@ -241,113 +240,151 @@ msgstr ""
241
240
  msgid "Check every domain against major DNSBL providers"
242
241
  msgstr ""
243
242
 
244
- #: admin/app_settings.py:116
243
+ #: admin/app_settings.py:117
244
+ msgid "Notify domain admins about DNS issues"
245
+ msgstr ""
246
+
247
+ #: admin/app_settings.py:120
248
+ msgid ""
249
+ "Send a notification by email to domain administrators when DNS issues are "
250
+ "encountered"
251
+ msgstr ""
252
+
253
+ #: admin/app_settings.py:128
245
254
  msgid "Custom DNS server"
246
255
  msgstr ""
247
256
 
248
- #: admin/app_settings.py:118
257
+ #: admin/app_settings.py:130
249
258
  msgid "Use a custom DNS server instead of local server configuration"
250
259
  msgstr ""
251
260
 
252
- #: admin/app_settings.py:126
261
+ #: admin/app_settings.py:138
253
262
  msgid "DKIM keys storage directory"
254
263
  msgstr ""
255
264
 
256
- #: admin/app_settings.py:128
265
+ #: admin/app_settings.py:140
257
266
  msgid ""
258
267
  "Absolute path of the directory where DKIM private keys will be stored. Make "
259
268
  "sure this directory belongs to root user and is not readable by the outside "
260
269
  "world."
261
270
  msgstr ""
262
271
 
263
- #: admin/app_settings.py:137
272
+ #: admin/app_settings.py:149
264
273
  msgid "Default DKIM key length"
265
274
  msgstr ""
266
275
 
267
- #: admin/app_settings.py:139
276
+ #: admin/app_settings.py:151
268
277
  msgid "Default length in bits for newly generated DKIM keys."
269
278
  msgstr ""
270
279
 
271
- #: admin/app_settings.py:146
280
+ #: admin/app_settings.py:158
272
281
  msgid "Default domain quota"
273
282
  msgstr ""
274
283
 
275
- #: admin/app_settings.py:148
284
+ #: admin/app_settings.py:160
276
285
  msgid ""
277
286
  "Default quota (in MB) applied to freshly created domains with no value "
278
287
  "specified. A value of 0 means no quota."
279
288
  msgstr ""
280
289
 
281
- #: admin/app_settings.py:156
290
+ #: admin/app_settings.py:168
282
291
  msgid "Default domain sending limit"
283
292
  msgstr ""
284
293
 
285
- #: admin/app_settings.py:158
294
+ #: admin/app_settings.py:170
286
295
  msgid ""
287
296
  "Number of messages freshly created domains will be allowed to send per day. "
288
297
  "Leave empty for no limit."
289
298
  msgstr ""
290
299
 
291
- #: admin/app_settings.py:170 limits/app_settings.py:61
300
+ #: admin/app_settings.py:182 limits/app_settings.py:61
292
301
  #: limits/app_settings.py:135 limits/constants.py:31 limits/constants.py:84
293
302
  msgid "Mailboxes"
294
303
  msgstr ""
295
304
 
296
- #: admin/app_settings.py:176
305
+ #: admin/app_settings.py:188
297
306
  msgid "Handle mailboxes on filesystem"
298
307
  msgstr ""
299
308
 
300
- #: admin/app_settings.py:178
309
+ #: admin/app_settings.py:190
301
310
  msgid ""
302
311
  "Rename or remove mailboxes on the filesystem when they get renamed or "
303
312
  "removed within Modoboa"
304
313
  msgstr ""
305
314
 
306
- #: admin/app_settings.py:186 admin/models/domain.py:36
315
+ #: admin/app_settings.py:198 admin/models/domain.py:36
307
316
  msgid "Default mailbox quota"
308
317
  msgstr ""
309
318
 
310
- #: admin/app_settings.py:188
319
+ #: admin/app_settings.py:200
311
320
  msgid ""
312
321
  "Default mailbox quota (in MB) applied to freshly created domains with no "
313
322
  "value specified. A value of 0 means no quota."
314
323
  msgstr ""
315
324
 
316
- #: admin/app_settings.py:197
325
+ #: admin/app_settings.py:209
317
326
  msgid "Default mailbox sending limit"
318
327
  msgstr ""
319
328
 
320
- #: admin/app_settings.py:199
329
+ #: admin/app_settings.py:211
321
330
  msgid ""
322
331
  "Number of messages freshly created mailboxes will be allowed to send per "
323
332
  "day. Leave empty for no limit."
324
333
  msgstr ""
325
334
 
326
- #: admin/app_settings.py:207
335
+ #: admin/app_settings.py:219
327
336
  msgid "Automatic account removal"
328
337
  msgstr ""
329
338
 
330
- #: admin/app_settings.py:209
339
+ #: admin/app_settings.py:221
331
340
  msgid "When a mailbox is removed, also remove the associated account"
332
341
  msgstr ""
333
342
 
334
- #: admin/app_settings.py:218
343
+ #: admin/app_settings.py:230
335
344
  msgid "Automatic domain/mailbox creation"
336
345
  msgstr ""
337
346
 
338
- #: admin/app_settings.py:221
347
+ #: admin/app_settings.py:233
339
348
  msgid "Create a domain and a mailbox when an account is automatically created."
340
349
  msgstr ""
341
350
 
342
- #: admin/app_settings.py:230
351
+ #: admin/app_settings.py:242
343
352
  msgid "Create an alias when a mailbox is renamed"
344
353
  msgstr ""
345
354
 
346
- #: admin/app_settings.py:233
355
+ #: admin/app_settings.py:245
347
356
  msgid "Create an alias using the old address when a mailbox is renamed."
348
357
  msgstr ""
349
358
 
350
- #: admin/app_settings.py:287 core/api/v2/viewsets.py:174
359
+ #: admin/app_settings.py:257
360
+ msgid "Aliases"
361
+ msgstr ""
362
+
363
+ #: admin/app_settings.py:263
364
+ msgid "Alias can target any domain"
365
+ msgstr ""
366
+
367
+ #: admin/app_settings.py:265
368
+ msgid "Allow aliases to target any domain, not just the local domains."
369
+ msgstr ""
370
+
371
+ #: admin/app_settings.py:272
372
+ msgid "Alias target block list"
373
+ msgstr ""
374
+
375
+ #: admin/app_settings.py:274
376
+ msgid "A list of domains that aliases cannot target (comma separated)."
377
+ msgstr ""
378
+
379
+ #: admin/app_settings.py:282
380
+ msgid "Alias target allow list"
381
+ msgstr ""
382
+
383
+ #: admin/app_settings.py:284
384
+ msgid "A list of domains that aliases can target (comma separated)."
385
+ msgstr ""
386
+
387
+ #: admin/app_settings.py:338 core/api/v2/viewsets.py:174
351
388
  msgid "Administration"
352
389
  msgstr "Yönetim"
353
390
 
@@ -367,6 +404,35 @@ msgstr ""
367
404
  msgid "Closed"
368
405
  msgstr ""
369
406
 
407
+ #: admin/dns_checker.py:96
408
+ msgid "MX {} listed by DNSBL provider {}"
409
+ msgstr ""
410
+
411
+ #: admin/dns_checker.py:138
412
+ msgid "Domain has no MX record"
413
+ msgstr ""
414
+
415
+ #: admin/dns_checker.py:141
416
+ msgid "Domain {} has no MX record"
417
+ msgstr ""
418
+
419
+ #: admin/dns_checker.py:159
420
+ msgid "Invalid MX record: {}"
421
+ msgstr ""
422
+
423
+ #: admin/dns_checker.py:166
424
+ #, python-brace-format
425
+ msgid "MX record for domain {0} is invalid: {1}"
426
+ msgstr ""
427
+
428
+ #: admin/dns_checker.py:177
429
+ msgid "[modoboa] MX issue(s) for domain {}"
430
+ msgstr ""
431
+
432
+ #: admin/dns_checker.py:224
433
+ msgid "[modoboa] DNSBL issue(s) for domain {}"
434
+ msgstr ""
435
+
370
436
  #: admin/handlers.py:179
371
437
  msgid "domain alias"
372
438
  msgstr ""
@@ -376,58 +442,54 @@ msgstr ""
376
442
  msgid "Account import failed (%s): domain does not exist"
377
443
  msgstr ""
378
444
 
379
- #: admin/handlers.py:242 admin/models/mailbox.py:342
380
- msgid "Mailbox {} already exists"
381
- msgstr ""
382
-
383
- #: admin/handlers.py:251
445
+ #: admin/handlers.py:246
384
446
  #, python-format
385
447
  msgid "Account import failed (%s): wrong quota value"
386
448
  msgstr ""
387
449
 
388
- #: admin/lib.py:121
450
+ #: admin/lib.py:126
389
451
  msgid "You are not allowed to import domains"
390
452
  msgstr ""
391
453
 
392
- #: admin/lib.py:130
454
+ #: admin/lib.py:135
393
455
  msgid "You are not allowed to import domain aliases."
394
456
  msgstr ""
395
457
 
396
- #: admin/lib.py:222 admin/tests/test_mx.py:153 admin/tests/test_mx.py:166
397
- #: admin/tests/test_mx.py:171
458
+ #: admin/lib.py:227 admin/tests/test_mx.py:139 admin/tests/test_mx.py:152
459
+ #: admin/tests/test_mx.py:157
398
460
  #, python-format
399
461
  msgid "No DNS record found for %s"
400
462
  msgstr ""
401
463
 
402
- #: admin/lib.py:225
464
+ #: admin/lib.py:230
403
465
  #, python-format
404
466
  msgid "No %(type)s record for %(name)s"
405
467
  msgstr ""
406
468
 
407
- #: admin/lib.py:229 admin/tests/test_mx.py:156
469
+ #: admin/lib.py:234 admin/tests/test_mx.py:142
408
470
  msgid "No working name servers found"
409
471
  msgstr ""
410
472
 
411
- #: admin/lib.py:232 admin/tests/test_mx.py:160
473
+ #: admin/lib.py:237 admin/tests/test_mx.py:146
412
474
  #, python-format
413
475
  msgid "DNS resolution timeout, unable to query %s at the moment"
414
476
  msgstr ""
415
477
 
416
- #: admin/lib.py:236
478
+ #: admin/lib.py:241
417
479
  msgid "DNS name is too long: {}"
418
480
  msgstr ""
419
481
 
420
- #: admin/lib.py:267
482
+ #: admin/lib.py:272
421
483
  #, python-brace-format
422
484
  msgid "Invalid IP address format for {domain}; {addr}"
423
485
  msgstr ""
424
486
 
425
- #: admin/lib.py:360
487
+ #: admin/lib.py:365
426
488
  #, python-format
427
489
  msgid "Object already exists: %s"
428
490
  msgstr ""
429
491
 
430
- #: admin/lib.py:364
492
+ #: admin/lib.py:369
431
493
  #, python-format
432
494
  msgid "%d objects imported successfully"
433
495
  msgstr ""
@@ -460,77 +522,52 @@ msgstr ""
460
522
  msgid "Failed to generate DKIM public key"
461
523
  msgstr ""
462
524
 
463
- #: admin/management/commands/subcommands/_mx.py:133
464
- msgid "MX {} listed by DNSBL provider {}"
465
- msgstr ""
466
-
467
- #: admin/management/commands/subcommands/_mx.py:174
468
- msgid "Domain has no MX record"
469
- msgstr ""
470
-
471
- #: admin/management/commands/subcommands/_mx.py:177
472
- msgid "Domain {} has no MX record"
473
- msgstr ""
474
-
475
- #: admin/management/commands/subcommands/_mx.py:195
476
- msgid "Invalid MX record: {}"
477
- msgstr ""
478
-
479
- #: admin/management/commands/subcommands/_mx.py:202
480
- #, python-brace-format
481
- msgid "MX record for domain {0} is invalid: {1}"
482
- msgstr ""
483
-
484
- #: admin/management/commands/subcommands/_mx.py:213
485
- msgid "[modoboa] MX issue(s) for domain {}"
486
- msgstr ""
487
-
488
- #: admin/management/commands/subcommands/_mx.py:269
489
- msgid "[modoboa] DNSBL issue(s) for domain {}"
490
- msgstr ""
491
-
492
- #: admin/models/alias.py:42
525
+ #: admin/models/alias.py:43
493
526
  msgid "Domain not found."
494
527
  msgstr ""
495
528
 
496
- #: admin/models/alias.py:97 admin/models/mailbox.py:85
529
+ #: admin/models/alias.py:117 admin/models/mailbox.py:85
497
530
  msgid "address"
498
531
  msgstr ""
499
532
 
500
- #: admin/models/alias.py:99
533
+ #: admin/models/alias.py:119
501
534
  msgid "The alias address."
502
535
  msgstr ""
503
536
 
504
- #: admin/models/alias.py:103 admin/models/domain.py:45
537
+ #: admin/models/alias.py:123 admin/models/domain.py:45
505
538
  #: admin/models/domain_alias.py:45 autoreply/models.py:25
506
539
  msgid "enabled"
507
540
  msgstr ""
508
541
 
509
- #: admin/models/alias.py:104 admin/models/domain_alias.py:46
542
+ #: admin/models/alias.py:124 admin/models/domain_alias.py:46
510
543
  msgid "Check to activate this alias"
511
544
  msgstr ""
512
545
 
513
- #: admin/models/alias.py:108
546
+ #: admin/models/alias.py:128
514
547
  msgid "Description"
515
548
  msgstr ""
516
549
 
517
- #: admin/models/alias.py:109
550
+ #: admin/models/alias.py:129
518
551
  msgid "Expire at"
519
552
  msgstr ""
520
553
 
521
- #: admin/models/alias.py:150
554
+ #: admin/models/alias.py:170
522
555
  msgid "alias"
523
556
  msgstr ""
524
557
 
525
- #: admin/models/alias.py:183
558
+ #: admin/models/alias.py:203
526
559
  msgid "Invalid address"
527
560
  msgstr ""
528
561
 
529
- #: admin/models/alias.py:202
562
+ #: admin/models/alias.py:206
563
+ msgid "Target domain not allowed"
564
+ msgstr ""
565
+
566
+ #: admin/models/alias.py:224
530
567
  msgid "Local recipient {}@{} not found"
531
568
  msgstr ""
532
569
 
533
- #: admin/models/alias.py:251
570
+ #: admin/models/alias.py:273
534
571
  msgid "Invalid line: {}"
535
572
  msgstr ""
536
573
 
@@ -638,6 +675,10 @@ msgstr ""
638
675
  msgid "Domain does not exist"
639
676
  msgstr ""
640
677
 
678
+ #: admin/models/mailbox.py:342
679
+ msgid "Mailbox {} already exists"
680
+ msgstr ""
681
+
641
682
  #: admin/templates/admin/notifications/domain_in_dnsbl.html:3
642
683
  #, python-format
643
684
  msgid ""
@@ -657,21 +698,368 @@ msgstr ""
657
698
  msgid "Modoboa detected that domain %(domain)s has no valid MX record:"
658
699
  msgstr ""
659
700
 
660
- #: admin/tests/test_mx.py:155
701
+ #: admin/tests/test_mx.py:141
661
702
  #, python-format
662
703
  msgid "No MX record for %s"
663
704
  msgstr ""
664
705
 
665
- #: admin/tests/test_mx.py:176 admin/tests/test_mx.py:182
706
+ #: admin/tests/test_mx.py:162 admin/tests/test_mx.py:168
666
707
  #, python-format
667
708
  msgid "Invalid IP address format for %(domain)s; %(addr)s"
668
709
  msgstr ""
669
710
 
670
- #: admin/tests/test_mx.py:199
711
+ #: admin/tests/test_mx.py:185
671
712
  #, python-format
672
713
  msgid "No AAAA record for %s"
673
714
  msgstr ""
674
715
 
716
+ #: amavis/app_settings.py:11
717
+ #, fuzzy
718
+ #| msgid "LDAP settings"
719
+ msgid "Amavis settings"
720
+ msgstr "LDAP ayarları"
721
+
722
+ #: amavis/app_settings.py:17
723
+ msgid "Localpart is case sensitive"
724
+ msgstr ""
725
+
726
+ #: amavis/app_settings.py:19
727
+ msgid "Value should match amavisd.conf variable $localpart_is_case_sensitive"
728
+ msgstr ""
729
+
730
+ #: amavis/app_settings.py:27
731
+ msgid "Recipient delimiter"
732
+ msgstr ""
733
+
734
+ #: amavis/app_settings.py:29
735
+ msgid "Value should match amavisd.conf variable $recipient_delimiter"
736
+ msgstr ""
737
+
738
+ #: amavis/app_settings.py:41
739
+ #, fuzzy
740
+ #| msgid "LDAP settings"
741
+ msgid "Quarantine settings"
742
+ msgstr "LDAP ayarları"
743
+
744
+ #: amavis/app_settings.py:47
745
+ #, fuzzy
746
+ #| msgid "Maximum log record age"
747
+ msgid "Maximum message age"
748
+ msgstr "Maksimum günlük kayıt yaşı"
749
+
750
+ #: amavis/app_settings.py:49
751
+ msgid "Quarantine messages maximum age (in days) before deletion"
752
+ msgstr ""
753
+
754
+ #: amavis/app_settings.py:60
755
+ msgid "Message releasing"
756
+ msgstr ""
757
+
758
+ #: amavis/app_settings.py:66
759
+ msgid "Remove released messages"
760
+ msgstr ""
761
+
762
+ #: amavis/app_settings.py:68
763
+ msgid "Remove messages marked as released while cleaning up the database"
764
+ msgstr ""
765
+
766
+ #: amavis/app_settings.py:76
767
+ #, fuzzy
768
+ #| msgid "Use a secured connection"
769
+ msgid "Amavis connection mode"
770
+ msgstr "Güvenli bir bağlantı kullan"
771
+
772
+ #: amavis/app_settings.py:78
773
+ #, fuzzy
774
+ #| msgid "Use a secured connection"
775
+ msgid "Mode used to access the PDP server"
776
+ msgstr "Güvenli bir bağlantı kullan"
777
+
778
+ #: amavis/app_settings.py:85
779
+ #, fuzzy
780
+ #| msgid "Server address"
781
+ msgid "PDP server address"
782
+ msgstr "Sunucu adresi"
783
+
784
+ #: amavis/app_settings.py:87
785
+ #, fuzzy
786
+ #| msgid "Server address"
787
+ msgid "PDP server address (if inet mode)"
788
+ msgstr "Sunucu adresi"
789
+
790
+ #: amavis/app_settings.py:95
791
+ #, fuzzy
792
+ #| msgid "Server port"
793
+ msgid "PDP server port"
794
+ msgstr "Sunucu portu"
795
+
796
+ #: amavis/app_settings.py:97
797
+ msgid "PDP server port (if inet mode)"
798
+ msgstr ""
799
+
800
+ #: amavis/app_settings.py:105
801
+ #, fuzzy
802
+ #| msgid "Server port"
803
+ msgid "PDP server socket"
804
+ msgstr "Sunucu portu"
805
+
806
+ #: amavis/app_settings.py:107
807
+ msgid "Path to the PDP server socket (if unix mode)"
808
+ msgstr ""
809
+
810
+ #: amavis/app_settings.py:115
811
+ msgid "Allow direct release"
812
+ msgstr ""
813
+
814
+ #: amavis/app_settings.py:117
815
+ msgid "Allow users to directly release their messages"
816
+ msgstr ""
817
+
818
+ #: amavis/app_settings.py:124
819
+ msgid "Enable self-service mode"
820
+ msgstr ""
821
+
822
+ #: amavis/app_settings.py:126
823
+ msgid "Activate the 'self-service' mode"
824
+ msgstr ""
825
+
826
+ #: amavis/app_settings.py:133
827
+ #, fuzzy
828
+ #| msgid "Notifications"
829
+ msgid "Notifications sender"
830
+ msgstr "Bildirimler"
831
+
832
+ #: amavis/app_settings.py:135
833
+ #, fuzzy
834
+ #| msgid "Email address used to send notifications."
835
+ msgid "The e-mail address used to send notitications"
836
+ msgstr "Bildirimlerin gönderileceği email adresi"
837
+
838
+ #: amavis/app_settings.py:146
839
+ msgid "Manual learning"
840
+ msgstr ""
841
+
842
+ #: amavis/app_settings.py:152
843
+ msgid "Enable manual learning"
844
+ msgstr ""
845
+
846
+ #: amavis/app_settings.py:154
847
+ msgid "Allow super administrators to manually train Spamassassin"
848
+ msgstr ""
849
+
850
+ #: amavis/app_settings.py:161
851
+ msgid "Is Spamassassin local?"
852
+ msgstr ""
853
+
854
+ #: amavis/app_settings.py:163
855
+ msgid "Tell if Spamassassin is running on the same server than modoboa"
856
+ msgstr ""
857
+
858
+ #: amavis/app_settings.py:171
859
+ #, fuzzy
860
+ #| msgid "Default password"
861
+ msgid "Default user"
862
+ msgstr "Varsayılan parola"
863
+
864
+ #: amavis/app_settings.py:173
865
+ msgid "Name of the user owning the default bayesian database"
866
+ msgstr ""
867
+
868
+ #: amavis/app_settings.py:181
869
+ #, fuzzy
870
+ #| msgid "Sender address"
871
+ msgid "Spamd address"
872
+ msgstr "Gönderici adresi"
873
+
874
+ #: amavis/app_settings.py:183
875
+ msgid "The IP address where spamd can be reached"
876
+ msgstr ""
877
+
878
+ #: amavis/app_settings.py:191
879
+ msgid "Spamd port"
880
+ msgstr ""
881
+
882
+ #: amavis/app_settings.py:193
883
+ msgid "The TCP port spamd is listening on"
884
+ msgstr ""
885
+
886
+ #: amavis/app_settings.py:202
887
+ msgid "Enable per-domain manual learning"
888
+ msgstr ""
889
+
890
+ #: amavis/app_settings.py:205
891
+ msgid ""
892
+ "Allow domain administrators to train Spamassassin (within dedicated per-"
893
+ "domain databases)"
894
+ msgstr ""
895
+
896
+ #: amavis/app_settings.py:215
897
+ msgid "Enable per-user manual learning"
898
+ msgstr ""
899
+
900
+ #: amavis/app_settings.py:218
901
+ msgid ""
902
+ "Allow simple users to personally train Spamassassin (within a dedicated "
903
+ "database)"
904
+ msgstr ""
905
+
906
+ #: amavis/app_settings.py:236 webmail/app_settings.py:155
907
+ msgid "Display"
908
+ msgstr ""
909
+
910
+ #: amavis/app_settings.py:243 webmail/app_settings.py:181
911
+ msgid "Number of displayed emails per page"
912
+ msgstr ""
913
+
914
+ #: amavis/app_settings.py:246
915
+ msgid "Set the maximum number of messages displayed in a page"
916
+ msgstr ""
917
+
918
+ #: amavis/app_settings.py:266 amavis/app_settings.py:273
919
+ msgid "Amavis"
920
+ msgstr ""
921
+
922
+ #: amavis/checks/settings_checks.py:8
923
+ msgid ""
924
+ "AMAVIS_DEFAULT_DATABASE_ENCODING does not match the character encoding used "
925
+ "by the Amavis database."
926
+ msgstr ""
927
+
928
+ #: amavis/checks/settings_checks.py:12
929
+ msgid ""
930
+ "Check your database character encoding and set/update "
931
+ "AMAVIS_DEFAULT_DATABASE_ENCODING."
932
+ msgstr ""
933
+
934
+ #: amavis/checks/settings_checks.py:19
935
+ msgid "Modoboa Amavis has not been tested using the selected database engine."
936
+ msgstr ""
937
+
938
+ #: amavis/checks/settings_checks.py:20
939
+ msgid "Try using PostgreSQL, MySQL or MariaDB."
940
+ msgstr ""
941
+
942
+ #: amavis/handlers.py:141
943
+ msgid "Pending requests"
944
+ msgstr ""
945
+
946
+ #: amavis/lib.py:59
947
+ #, python-format
948
+ msgid "Connection to amavis failed: %s"
949
+ msgstr ""
950
+
951
+ #: amavis/lib.py:133
952
+ msgid "Failed to find {} binary"
953
+ msgstr ""
954
+
955
+ #: amavis/lib.py:148
956
+ msgid "No recipient found"
957
+ msgstr ""
958
+
959
+ #: amavis/lib.py:159
960
+ msgid "Local domain not found"
961
+ msgstr ""
962
+
963
+ #: amavis/management/commands/amnotify.py:59
964
+ msgid "[modoboa] Pending release requests"
965
+ msgstr ""
966
+
967
+ #: amavis/models.py:101
968
+ #, fuzzy
969
+ #| msgid "Search filter"
970
+ msgid "Virus filter"
971
+ msgstr "Arama filtresi"
972
+
973
+ #: amavis/models.py:105 amavis/models.py:119 amavis/models.py:133
974
+ msgid "yes"
975
+ msgstr ""
976
+
977
+ #: amavis/models.py:106 amavis/models.py:120 amavis/models.py:134
978
+ msgid "no"
979
+ msgstr ""
980
+
981
+ #: amavis/models.py:107 amavis/models.py:121 amavis/models.py:135
982
+ msgid "default"
983
+ msgstr ""
984
+
985
+ #: amavis/models.py:111
986
+ msgid "Bypass virus checks or not. Choose 'default' to use global settings."
987
+ msgstr ""
988
+
989
+ #: amavis/models.py:115
990
+ #, fuzzy
991
+ #| msgid "Search filter"
992
+ msgid "Spam filter"
993
+ msgstr "Arama filtresi"
994
+
995
+ #: amavis/models.py:125
996
+ msgid "Bypass spam checks or not. Choose 'default' to use global settings."
997
+ msgstr ""
998
+
999
+ #: amavis/models.py:129
1000
+ #, fuzzy
1001
+ #| msgid "Search filter"
1002
+ msgid "Banned filter"
1003
+ msgstr "Arama filtresi"
1004
+
1005
+ #: amavis/models.py:139
1006
+ msgid "Bypass banned checks or not. Choose 'default' to use global settings."
1007
+ msgstr ""
1008
+
1009
+ #: amavis/models.py:170
1010
+ msgid "Spam marker"
1011
+ msgstr ""
1012
+
1013
+ #: amavis/models.py:176
1014
+ msgid ""
1015
+ "Modify spam subject using the specified text. Choose 'default' to use global "
1016
+ "settings."
1017
+ msgstr ""
1018
+
1019
+ #: amavis/templates/amavis/notifications/pending_requests.html:3
1020
+ #, python-format
1021
+ msgid "%(counter)s release request is pending for action."
1022
+ msgid_plural "%(counter)s release requests are pending for action."
1023
+ msgstr[0] ""
1024
+ msgstr[1] ""
1025
+
1026
+ #: amavis/templates/amavis/notifications/pending_requests.html:8
1027
+ msgid "Sketch:"
1028
+ msgstr ""
1029
+
1030
+ #: amavis/templates/amavis/notifications/pending_requests.html:10
1031
+ msgid "From:"
1032
+ msgstr ""
1033
+
1034
+ #: amavis/templates/amavis/notifications/pending_requests.html:11
1035
+ msgid "To:"
1036
+ msgstr ""
1037
+
1038
+ #: amavis/templates/amavis/notifications/pending_requests.html:12
1039
+ msgid "Date:"
1040
+ msgstr ""
1041
+
1042
+ #: amavis/templates/amavis/notifications/pending_requests.html:13
1043
+ #, fuzzy
1044
+ #| msgid "Subject"
1045
+ msgid "Subject:"
1046
+ msgstr "Konu"
1047
+
1048
+ #: amavis/templates/amavis/notifications/pending_requests.html:14
1049
+ msgid "Act on this message:"
1050
+ msgstr ""
1051
+
1052
+ #: amavis/templates/amavis/notifications/pending_requests.html:16
1053
+ #, python-format
1054
+ msgid "Please visit %(listingurl)s for a full listing."
1055
+ msgstr ""
1056
+
1057
+ #: amavis/viewsets.py:122
1058
+ #, fuzzy
1059
+ #| msgid "Invalid value"
1060
+ msgid "Invalid request"
1061
+ msgstr "Geçersiz değer"
1062
+
675
1063
  #: autoreply/api/v2/serializers.py:27
676
1064
  msgid "Value can't be less than 1 day"
677
1065
  msgstr ""
@@ -782,7 +1170,7 @@ msgstr "Yönetim"
782
1170
  msgid "Allow domain administrators to manage user calendars (read and write)"
783
1171
  msgstr ""
784
1172
 
785
- #: calendars/app_settings.py:60 core/app_settings.py:676
1173
+ #: calendars/app_settings.py:60 core/app_settings.py:664
786
1174
  #: rspamd/app_settings.py:45
787
1175
  msgid "Miscellaneous"
788
1176
  msgstr "Çeşitli"
@@ -796,15 +1184,15 @@ msgid ""
796
1184
  "Maximum size in bytes of imported ICS files (or KB, MB, GB if specified)"
797
1185
  msgstr ""
798
1186
 
799
- #: calendars/app_settings.py:89 core/api/v2/viewsets.py:195
1187
+ #: calendars/app_settings.py:89 core/api/v2/viewsets.py:205
800
1188
  msgid "Calendars"
801
1189
  msgstr ""
802
1190
 
803
- #: calendars/models.py:48 calendars/models.py:65 contacts/models.py:38
1191
+ #: calendars/models.py:48 calendars/models.py:65 contacts/models.py:39
804
1192
  msgid "Server location is not set, please fix it."
805
1193
  msgstr ""
806
1194
 
807
- #: calendars/viewsets.py:197
1195
+ #: calendars/viewsets.py:199
808
1196
  msgid "Uploaded file is too big (max: {} bytes)"
809
1197
  msgstr ""
810
1198
 
@@ -834,7 +1222,7 @@ msgstr "LDAP ayarları"
834
1222
  msgid "Interval in seconds between 2 synchronization requests"
835
1223
  msgstr ""
836
1224
 
837
- #: contacts/app_settings.py:51 core/api/v2/viewsets.py:185
1225
+ #: contacts/app_settings.py:51 core/api/v2/viewsets.py:195
838
1226
  msgid "Contacts"
839
1227
  msgstr ""
840
1228
 
@@ -884,12 +1272,12 @@ msgstr "Geçersiz değer"
884
1272
  msgid "2FA is already enabled"
885
1273
  msgstr ""
886
1274
 
887
- #: core/api/v1/serializers.py:86
1275
+ #: core/api/v1/serializers.py:87
888
1276
  #, python-format
889
1277
  msgid "Failed TFA settings editing attempt from '%(addr)s' as user '%(user)s'"
890
1278
  msgstr ""
891
1279
 
892
- #: core/api/v1/serializers.py:91 core/api/v2/serializers.py:445
1280
+ #: core/api/v1/serializers.py:93 core/api/v2/serializers.py:438
893
1281
  #, fuzzy
894
1282
  #| msgid "Old password"
895
1283
  msgid "Invalid password"
@@ -903,24 +1291,20 @@ msgstr ""
903
1291
  msgid "Local"
904
1292
  msgstr "Yerel"
905
1293
 
906
- #: core/api/v2/serializers.py:194 core/app_settings.py:17
907
- msgid "User profile"
908
- msgstr "Kullanıcı profili"
909
-
910
- #: core/api/v2/serializers.py:213 core/api/v2/serializers.py:221
911
- #: core/api/v2/serializers.py:228
1294
+ #: core/api/v2/serializers.py:206 core/api/v2/serializers.py:214
1295
+ #: core/api/v2/serializers.py:221
912
1296
  msgid "Invalid syntax"
913
1297
  msgstr ""
914
1298
 
915
- #: core/api/v2/serializers.py:233
1299
+ #: core/api/v2/serializers.py:226
916
1300
  msgid "Invalid rounds number"
917
1301
  msgstr ""
918
1302
 
919
- #: core/api/v2/serializers.py:433 core/forms.py:81
1303
+ #: core/api/v2/serializers.py:426 core/forms.py:81
920
1304
  msgid "This code is invalid"
921
1305
  msgstr ""
922
1306
 
923
- #: core/api/v2/serializers.py:503 core/views/auth.py:194 core/views/auth.py:247
1307
+ #: core/api/v2/serializers.py:496 core/views/auth.py:213 core/views/auth.py:266
924
1308
  msgid "Please use the following code to recover your Modoboa password: {}"
925
1309
  msgstr ""
926
1310
 
@@ -930,556 +1314,556 @@ msgstr ""
930
1314
  msgid "Administration console"
931
1315
  msgstr "Yönetim"
932
1316
 
933
- #: core/api/v2/viewsets.py:187
934
- msgid "Address book"
1317
+ #: core/api/v2/viewsets.py:184 dmarc/models.py:11
1318
+ msgid "Quarantine"
1319
+ msgstr ""
1320
+
1321
+ #: core/api/v2/viewsets.py:186
1322
+ msgid "Amavis quarantine"
935
1323
  msgstr ""
936
1324
 
937
1325
  #: core/api/v2/viewsets.py:197
1326
+ msgid "Address book"
1327
+ msgstr ""
1328
+
1329
+ #: core/api/v2/viewsets.py:207
938
1330
  msgid "Calendar"
939
1331
  msgstr ""
940
1332
 
941
- #: core/api/v2/viewsets.py:205 core/api/v2/viewsets.py:207
942
- #: webmail/app_settings.py:258 webmail/app_settings.py:265
1333
+ #: core/api/v2/viewsets.py:215 core/api/v2/viewsets.py:217
1334
+ #: webmail/app_settings.py:295 webmail/app_settings.py:302
943
1335
  #, fuzzy
944
1336
  #| msgid "E-mail"
945
1337
  msgid "Webmail"
946
1338
  msgstr "E-posta"
947
1339
 
948
- #: core/app_settings.py:37
1340
+ #: core/app_settings.py:25
949
1341
  msgid "Authentication"
950
1342
  msgstr "Yetkilendirme"
951
1343
 
952
- #: core/app_settings.py:43
1344
+ #: core/app_settings.py:31
953
1345
  msgid "Authentication type"
954
1346
  msgstr "Yetkilendirme türü"
955
1347
 
956
- #: core/app_settings.py:45
1348
+ #: core/app_settings.py:33
957
1349
  msgid "The backend used for authentication"
958
1350
  msgstr ""
959
1351
 
960
- #: core/app_settings.py:52
1352
+ #: core/app_settings.py:40
961
1353
  msgid "Default password scheme"
962
1354
  msgstr "Varsayılan parola şeması"
963
1355
 
964
- #: core/app_settings.py:54
1356
+ #: core/app_settings.py:42
965
1357
  msgid "Scheme used to crypt mailbox passwords"
966
1358
  msgstr "Mailbox parolalarını şifrelemek için kullanılacak şema"
967
1359
 
968
- #: core/app_settings.py:61
1360
+ #: core/app_settings.py:49
969
1361
  msgid "Rounds"
970
1362
  msgstr ""
971
1363
 
972
- #: core/app_settings.py:63
1364
+ #: core/app_settings.py:51
973
1365
  msgid ""
974
1366
  "Number of rounds to use (only used by sha256crypt and sha512crypt). Must be "
975
1367
  "between 1000 and 999999999, inclusive."
976
1368
  msgstr ""
977
1369
 
978
- #: core/app_settings.py:73
1370
+ #: core/app_settings.py:61
979
1371
  #, fuzzy
980
1372
  #| msgid "Update password scheme"
981
1373
  msgid "Update password scheme at login"
982
1374
  msgstr "Şifre şemasını güncelle"
983
1375
 
984
- #: core/app_settings.py:76
1376
+ #: core/app_settings.py:64
985
1377
  msgid "Update user password at login to use the default password scheme"
986
1378
  msgstr ""
987
1379
 
988
- #: core/app_settings.py:84
1380
+ #: core/app_settings.py:72
989
1381
  msgid "Default password"
990
1382
  msgstr "Varsayılan parola"
991
1383
 
992
- #: core/app_settings.py:86
1384
+ #: core/app_settings.py:74
993
1385
  msgid "Default password for automatically created accounts."
994
1386
  msgstr "Otomatik oluşturulan hesaplar için varsayılan parola."
995
1387
 
996
- #: core/app_settings.py:93
1388
+ #: core/app_settings.py:81
997
1389
  msgid "Random password length"
998
1390
  msgstr "Rastgele şifre uzunluğu"
999
1391
 
1000
- #: core/app_settings.py:95
1392
+ #: core/app_settings.py:83
1001
1393
  msgid "Length of randomly generated passwords."
1002
1394
  msgstr ""
1003
1395
 
1004
- #: core/app_settings.py:103
1396
+ #: core/app_settings.py:91
1005
1397
  msgid "Allow special characters for random password"
1006
1398
  msgstr ""
1007
1399
 
1008
- #: core/app_settings.py:106
1400
+ #: core/app_settings.py:94
1009
1401
  msgid "Enable special characters in randomly generated passwords."
1010
1402
  msgstr ""
1011
1403
 
1012
- #: core/app_settings.py:114
1404
+ #: core/app_settings.py:102
1013
1405
  #, fuzzy
1014
1406
  #| msgid "Update password scheme"
1015
1407
  msgid "Update password service URL"
1016
1408
  msgstr "Şifre şemasını güncelle"
1017
1409
 
1018
- #: core/app_settings.py:116
1410
+ #: core/app_settings.py:104
1019
1411
  msgid ""
1020
1412
  "The URL of an external page where users will be able to update their "
1021
1413
  "password. It applies only to non local users, ie. those automatically "
1022
1414
  "created after a successful external authentication (LDAP, SMTP)."
1023
1415
  msgstr ""
1024
1416
 
1025
- #: core/app_settings.py:126
1417
+ #: core/app_settings.py:114
1026
1418
  msgid "Password recovery announcement"
1027
1419
  msgstr ""
1028
1420
 
1029
- #: core/app_settings.py:128
1421
+ #: core/app_settings.py:116
1030
1422
  msgid "A temporary message that will be displayed on the reset password page."
1031
1423
  msgstr ""
1032
1424
 
1033
- #: core/app_settings.py:137
1425
+ #: core/app_settings.py:125
1034
1426
  msgid "Enable password recovery by SMS"
1035
1427
  msgstr ""
1036
1428
 
1037
- #: core/app_settings.py:140
1429
+ #: core/app_settings.py:128
1038
1430
  msgid "Enable password recovery by SMS for users who filled a phone number."
1039
1431
  msgstr ""
1040
1432
 
1041
- #: core/app_settings.py:148
1433
+ #: core/app_settings.py:136
1042
1434
  msgid "SMS provider"
1043
1435
  msgstr ""
1044
1436
 
1045
- #: core/app_settings.py:151
1437
+ #: core/app_settings.py:139
1046
1438
  msgid "Choose a provider to send password recovery SMS"
1047
1439
  msgstr ""
1048
1440
 
1049
- #: core/app_settings.py:163
1441
+ #: core/app_settings.py:151
1050
1442
  msgid "LDAP"
1051
1443
  msgstr ""
1052
1444
 
1053
- #: core/app_settings.py:169 sievefilters/app_settings.py:18
1445
+ #: core/app_settings.py:157 sievefilters/app_settings.py:18
1054
1446
  #: sievefilters/app_settings.py:51 webmail/app_settings.py:36
1055
- #: webmail/app_settings.py:73
1447
+ #: webmail/app_settings.py:73 webmail/app_settings.py:119
1056
1448
  msgid "Server address"
1057
1449
  msgstr "Sunucu adresi"
1058
1450
 
1059
- #: core/app_settings.py:171
1451
+ #: core/app_settings.py:159
1060
1452
  msgid "The IP address or the DNS name of the LDAP server"
1061
1453
  msgstr "LDAP sunucusunun adresi (DNS) ya da ip adresi"
1062
1454
 
1063
- #: core/app_settings.py:178 sievefilters/app_settings.py:25
1455
+ #: core/app_settings.py:166 sievefilters/app_settings.py:25
1064
1456
  #: sievefilters/app_settings.py:67 webmail/app_settings.py:54
1065
- #: webmail/app_settings.py:91
1457
+ #: webmail/app_settings.py:91 webmail/app_settings.py:137
1066
1458
  msgid "Server port"
1067
1459
  msgstr "Sunucu portu"
1068
1460
 
1069
- #: core/app_settings.py:180
1461
+ #: core/app_settings.py:168
1070
1462
  msgid "The TCP port number used by the LDAP server"
1071
1463
  msgstr "LDAP sunucu tarafından kullanılan TCP portu"
1072
1464
 
1073
- #: core/app_settings.py:188
1465
+ #: core/app_settings.py:176
1074
1466
  msgid "Enable secondary server (fallback)"
1075
1467
  msgstr ""
1076
1468
 
1077
- #: core/app_settings.py:191
1469
+ #: core/app_settings.py:179
1078
1470
  msgid ""
1079
1471
  "Enable a secondary LDAP server which will be used if the primary one fails"
1080
1472
  msgstr ""
1081
1473
 
1082
- #: core/app_settings.py:199
1474
+ #: core/app_settings.py:187
1083
1475
  #, fuzzy
1084
1476
  #| msgid "Server address"
1085
1477
  msgid "Secondary server address"
1086
1478
  msgstr "Sunucu adresi"
1087
1479
 
1088
- #: core/app_settings.py:202
1480
+ #: core/app_settings.py:190
1089
1481
  #, fuzzy
1090
1482
  #| msgid "The IP address or the DNS name of the LDAP server"
1091
1483
  msgid "The IP address or the DNS name of the seondary LDAP server"
1092
1484
  msgstr "LDAP sunucusunun adresi (DNS) ya da ip adresi"
1093
1485
 
1094
- #: core/app_settings.py:209
1486
+ #: core/app_settings.py:197
1095
1487
  #, fuzzy
1096
1488
  #| msgid "Server port"
1097
1489
  msgid "Secondary server port"
1098
1490
  msgstr "Sunucu portu"
1099
1491
 
1100
- #: core/app_settings.py:212
1492
+ #: core/app_settings.py:200
1101
1493
  #, fuzzy
1102
1494
  #| msgid "The TCP port number used by the LDAP server"
1103
1495
  msgid "The TCP port number used by the LDAP secondary server"
1104
1496
  msgstr "LDAP sunucu tarafından kullanılan TCP portu"
1105
1497
 
1106
- #: core/app_settings.py:219 sievefilters/app_settings.py:58
1498
+ #: core/app_settings.py:207 sievefilters/app_settings.py:58
1107
1499
  #: webmail/app_settings.py:45
1108
1500
  msgid "Use a secured connection"
1109
1501
  msgstr "Güvenli bir bağlantı kullan"
1110
1502
 
1111
- #: core/app_settings.py:221
1503
+ #: core/app_settings.py:209
1112
1504
  msgid "Use an SSL/STARTTLS connection to access the LDAP server"
1113
1505
  msgstr ""
1114
1506
 
1115
- #: core/app_settings.py:228
1507
+ #: core/app_settings.py:216
1116
1508
  msgid "Active Directory"
1117
1509
  msgstr "Active Directory"
1118
1510
 
1119
- #: core/app_settings.py:230
1511
+ #: core/app_settings.py:218
1120
1512
  msgid "Tell if the LDAP server is an Active Directory one"
1121
1513
  msgstr "LDAP sunucu bir Active Directory ise"
1122
1514
 
1123
- #: core/app_settings.py:237
1515
+ #: core/app_settings.py:225
1124
1516
  msgid "Administrator groups"
1125
1517
  msgstr "Yönetici grupları"
1126
1518
 
1127
- #: core/app_settings.py:239
1519
+ #: core/app_settings.py:227
1128
1520
  msgid ""
1129
1521
  "Members of those LDAP Posix groups will be created as domain administrators. "
1130
1522
  "Use ';' characters to separate groups."
1131
1523
  msgstr ""
1132
1524
 
1133
- #: core/app_settings.py:248
1525
+ #: core/app_settings.py:236
1134
1526
  msgid "Group type"
1135
1527
  msgstr "Grup türü"
1136
1528
 
1137
- #: core/app_settings.py:250
1529
+ #: core/app_settings.py:238
1138
1530
  msgid "The LDAP group type to use with your directory."
1139
1531
  msgstr ""
1140
1532
 
1141
- #: core/app_settings.py:257
1533
+ #: core/app_settings.py:245
1142
1534
  msgid "Groups search base"
1143
1535
  msgstr ""
1144
1536
 
1145
- #: core/app_settings.py:259
1537
+ #: core/app_settings.py:247
1146
1538
  msgid "The distinguished name of the search base used to find groups"
1147
1539
  msgstr ""
1148
1540
 
1149
- #: core/app_settings.py:267
1541
+ #: core/app_settings.py:255
1150
1542
  msgid "Password attribute"
1151
1543
  msgstr "Parola özelliği"
1152
1544
 
1153
- #: core/app_settings.py:269
1545
+ #: core/app_settings.py:257
1154
1546
  msgid "The attribute used to store user passwords"
1155
1547
  msgstr "Kullanıcı parolalarını saklamak için kullanılacak özellik"
1156
1548
 
1157
- #: core/app_settings.py:276
1549
+ #: core/app_settings.py:264
1158
1550
  #, fuzzy
1159
1551
  #| msgid "Authentication method"
1160
1552
  msgid "LDAP authentication settings"
1161
1553
  msgstr "Yetkilendirme metodu"
1162
1554
 
1163
- #: core/app_settings.py:284
1555
+ #: core/app_settings.py:272
1164
1556
  msgid "Authentication method"
1165
1557
  msgstr "Yetkilendirme metodu"
1166
1558
 
1167
- #: core/app_settings.py:287
1559
+ #: core/app_settings.py:275
1168
1560
  msgid "Choose the authentication method to use"
1169
1561
  msgstr "Kullanılacak yetkilendirme metodunu seçin"
1170
1562
 
1171
- #: core/app_settings.py:294 core/app_settings.py:357
1563
+ #: core/app_settings.py:282 core/app_settings.py:345
1172
1564
  msgid "Bind DN"
1173
1565
  msgstr ""
1174
1566
 
1175
- #: core/app_settings.py:296 core/app_settings.py:359
1567
+ #: core/app_settings.py:284 core/app_settings.py:347
1176
1568
  msgid ""
1177
1569
  "The distinguished name to use when binding to the LDAP server. Leave empty "
1178
1570
  "for an anonymous bind"
1179
1571
  msgstr ""
1180
1572
 
1181
- #: core/app_settings.py:305 core/app_settings.py:367
1573
+ #: core/app_settings.py:293 core/app_settings.py:355
1182
1574
  msgid "Bind password"
1183
1575
  msgstr ""
1184
1576
 
1185
- #: core/app_settings.py:307 core/app_settings.py:369
1577
+ #: core/app_settings.py:295 core/app_settings.py:357
1186
1578
  msgid "The password to use when binding to the LDAP server (with 'Bind DN')"
1187
1579
  msgstr ""
1188
1580
 
1189
- #: core/app_settings.py:317 core/app_settings.py:422
1581
+ #: core/app_settings.py:305 core/app_settings.py:410
1190
1582
  msgid "Users search base"
1191
1583
  msgstr ""
1192
1584
 
1193
- #: core/app_settings.py:319 core/app_settings.py:424
1585
+ #: core/app_settings.py:307 core/app_settings.py:412
1194
1586
  msgid "The distinguished name of the search base used to find users"
1195
1587
  msgstr ""
1196
1588
 
1197
- #: core/app_settings.py:328 core/app_settings.py:433
1589
+ #: core/app_settings.py:316 core/app_settings.py:421
1198
1590
  msgid "Search filter"
1199
1591
  msgstr "Arama filtresi"
1200
1592
 
1201
- #: core/app_settings.py:330 core/app_settings.py:435
1593
+ #: core/app_settings.py:318 core/app_settings.py:423
1202
1594
  msgid ""
1203
1595
  "An optional filter string (e.g. '(objectClass=person)'). In order to be "
1204
1596
  "valid, it must be enclosed in parentheses."
1205
1597
  msgstr ""
1206
1598
 
1207
- #: core/app_settings.py:339
1599
+ #: core/app_settings.py:327
1208
1600
  msgid "User DN template"
1209
1601
  msgstr ""
1210
1602
 
1211
- #: core/app_settings.py:341
1603
+ #: core/app_settings.py:329
1212
1604
  #, python-format
1213
1605
  msgid ""
1214
1606
  "The template used to construct a user's DN. It should contain one "
1215
1607
  "placeholder (ie. %(user)s)"
1216
1608
  msgstr ""
1217
1609
 
1218
- #: core/app_settings.py:350
1610
+ #: core/app_settings.py:338
1219
1611
  #, fuzzy
1220
1612
  #| msgid "LDAP settings"
1221
1613
  msgid "LDAP synchronization settings"
1222
1614
  msgstr "LDAP ayarları"
1223
1615
 
1224
- #: core/app_settings.py:378
1616
+ #: core/app_settings.py:366
1225
1617
  msgid "Enable export to LDAP"
1226
1618
  msgstr ""
1227
1619
 
1228
- #: core/app_settings.py:380
1620
+ #: core/app_settings.py:368
1229
1621
  msgid ""
1230
1622
  "Enable automatic synchronization between local database and LDAP directory"
1231
1623
  msgstr ""
1232
1624
 
1233
- #: core/app_settings.py:389
1625
+ #: core/app_settings.py:377
1234
1626
  msgid "Delete remote LDAP account when local account is deleted"
1235
1627
  msgstr ""
1236
1628
 
1237
- #: core/app_settings.py:392
1629
+ #: core/app_settings.py:380
1238
1630
  msgid ""
1239
1631
  "Delete remote LDAP account when local account is deleted, otherwise it will "
1240
1632
  "be disabled."
1241
1633
  msgstr ""
1242
1634
 
1243
- #: core/app_settings.py:401
1635
+ #: core/app_settings.py:389
1244
1636
  msgid "Account DN template"
1245
1637
  msgstr ""
1246
1638
 
1247
- #: core/app_settings.py:403
1639
+ #: core/app_settings.py:391
1248
1640
  #, python-format
1249
1641
  msgid ""
1250
1642
  "The template used to construct an account's DN. It should contain one "
1251
1643
  "placeholder (ie. %(user)s)"
1252
1644
  msgstr ""
1253
1645
 
1254
- #: core/app_settings.py:412
1646
+ #: core/app_settings.py:400
1255
1647
  msgid "Enable import from LDAP"
1256
1648
  msgstr ""
1257
1649
 
1258
- #: core/app_settings.py:414
1650
+ #: core/app_settings.py:402
1259
1651
  msgid "Enable account synchronization from LDAP directory to local database"
1260
1652
  msgstr ""
1261
1653
 
1262
- #: core/app_settings.py:444
1654
+ #: core/app_settings.py:432
1263
1655
  #, fuzzy
1264
1656
  #| msgid "Password attribute"
1265
1657
  msgid "Username attribute"
1266
1658
  msgstr "Parola özelliği"
1267
1659
 
1268
- #: core/app_settings.py:446
1660
+ #: core/app_settings.py:434
1269
1661
  msgid "The name of the LDAP attribute where the username can be found."
1270
1662
  msgstr ""
1271
1663
 
1272
- #: core/app_settings.py:455
1664
+ #: core/app_settings.py:443
1273
1665
  msgid "Enable Dovecot LDAP sync"
1274
1666
  msgstr ""
1275
1667
 
1276
- #: core/app_settings.py:457
1668
+ #: core/app_settings.py:445
1277
1669
  msgid "LDAP authentication settings will be applied to Dovecot configuration."
1278
1670
  msgstr ""
1279
1671
 
1280
- #: core/app_settings.py:465
1672
+ #: core/app_settings.py:453
1281
1673
  msgid "Dovecot LDAP config file"
1282
1674
  msgstr ""
1283
1675
 
1284
- #: core/app_settings.py:467
1676
+ #: core/app_settings.py:455
1285
1677
  msgid ""
1286
1678
  "Location of the configuration file which contains Dovecot LDAP settings."
1287
1679
  msgstr ""
1288
1680
 
1289
- #: core/app_settings.py:480
1681
+ #: core/app_settings.py:468
1290
1682
  msgid "Dashboard"
1291
1683
  msgstr "gösterge Paneli"
1292
1684
 
1293
- #: core/app_settings.py:486
1685
+ #: core/app_settings.py:474
1294
1686
  msgid "Custom welcome message"
1295
1687
  msgstr ""
1296
1688
 
1297
- #: core/app_settings.py:488
1689
+ #: core/app_settings.py:476
1298
1690
  msgid "A welcome message that will be displayed instead the default one"
1299
1691
  msgstr ""
1300
1692
 
1301
- #: core/app_settings.py:495
1693
+ #: core/app_settings.py:483
1302
1694
  msgid "Custom RSS feed"
1303
1695
  msgstr ""
1304
1696
 
1305
- #: core/app_settings.py:497
1697
+ #: core/app_settings.py:485
1306
1698
  msgid "Display custom RSS feed to resellers and domain administrators"
1307
1699
  msgstr ""
1308
1700
 
1309
- #: core/app_settings.py:506
1701
+ #: core/app_settings.py:494
1310
1702
  msgid "Display custom RSS feed to super admins"
1311
1703
  msgstr ""
1312
1704
 
1313
- #: core/app_settings.py:509
1705
+ #: core/app_settings.py:497
1314
1706
  msgid "Display custom RSS feed also to super administrators"
1315
1707
  msgstr ""
1316
1708
 
1317
- #: core/app_settings.py:517
1709
+ #: core/app_settings.py:505
1318
1710
  msgid "Hide features widget"
1319
1711
  msgstr ""
1320
1712
 
1321
- #: core/app_settings.py:519
1713
+ #: core/app_settings.py:507
1322
1714
  msgid "Hide features widget for resellers and domain administrators"
1323
1715
  msgstr ""
1324
1716
 
1325
- #: core/app_settings.py:531
1717
+ #: core/app_settings.py:519
1326
1718
  msgid "Theme"
1327
1719
  msgstr ""
1328
1720
 
1329
- #: core/app_settings.py:537
1721
+ #: core/app_settings.py:525
1330
1722
  msgid "Primary theme color"
1331
1723
  msgstr ""
1332
1724
 
1333
- #: core/app_settings.py:539
1725
+ #: core/app_settings.py:527
1334
1726
  msgid ""
1335
1727
  "Primary color of the theme (hexadecimal code), used as the background color "
1336
1728
  "of the left menu for example"
1337
1729
  msgstr ""
1338
1730
 
1339
- #: core/app_settings.py:548
1731
+ #: core/app_settings.py:536
1340
1732
  msgid "Primary theme color (lighter version)"
1341
1733
  msgstr ""
1342
1734
 
1343
- #: core/app_settings.py:551 core/app_settings.py:563
1735
+ #: core/app_settings.py:539 core/app_settings.py:551
1344
1736
  msgid "Primary color of the theme (hexadecimal code)"
1345
1737
  msgstr ""
1346
1738
 
1347
- #: core/app_settings.py:560
1739
+ #: core/app_settings.py:548
1348
1740
  msgid "Primary theme color (darker version)"
1349
1741
  msgstr ""
1350
1742
 
1351
- #: core/app_settings.py:571
1743
+ #: core/app_settings.py:559
1352
1744
  #, fuzzy
1353
1745
  #| msgid "Server port"
1354
1746
  msgid "Secondary theme color"
1355
1747
  msgstr "Sunucu portu"
1356
1748
 
1357
- #: core/app_settings.py:573
1749
+ #: core/app_settings.py:561
1358
1750
  msgid ""
1359
1751
  "Secondary color of the theme (hexadecimal code), used as the background "
1360
1752
  "color of some buttons for example"
1361
1753
  msgstr ""
1362
1754
 
1363
- #: core/app_settings.py:581
1755
+ #: core/app_settings.py:569
1364
1756
  msgid "Labels theme color"
1365
1757
  msgstr ""
1366
1758
 
1367
- #: core/app_settings.py:583
1759
+ #: core/app_settings.py:571
1368
1760
  msgid "Theme color for labels (hexadecimal code)"
1369
1761
  msgstr ""
1370
1762
 
1371
- #: core/app_settings.py:595
1763
+ #: core/app_settings.py:583
1372
1764
  msgid "Notifications"
1373
1765
  msgstr "Bildirimler"
1374
1766
 
1375
- #: core/app_settings.py:601
1767
+ #: core/app_settings.py:589
1376
1768
  msgid "Sender address"
1377
1769
  msgstr "Gönderici adresi"
1378
1770
 
1379
- #: core/app_settings.py:603
1771
+ #: core/app_settings.py:591
1380
1772
  msgid "Email address used to send notifications."
1381
1773
  msgstr "Bildirimlerin gönderileceği email adresi"
1382
1774
 
1383
- #: core/app_settings.py:614
1775
+ #: core/app_settings.py:602
1384
1776
  msgid "Public API"
1385
1777
  msgstr "Genel API"
1386
1778
 
1387
- #: core/app_settings.py:620
1779
+ #: core/app_settings.py:608
1388
1780
  msgid "Enable communication"
1389
1781
  msgstr ""
1390
1782
 
1391
- #: core/app_settings.py:622 core/app_settings.py:632
1783
+ #: core/app_settings.py:610 core/app_settings.py:620
1392
1784
  msgid "Automatically checks if a newer version is available"
1393
1785
  msgstr ""
1394
1786
 
1395
- #: core/app_settings.py:629
1787
+ #: core/app_settings.py:617
1396
1788
  msgid "Check new versions"
1397
1789
  msgstr "Yeni versiyonları kontrol et"
1398
1790
 
1399
- #: core/app_settings.py:640
1791
+ #: core/app_settings.py:628
1400
1792
  msgid "Send an email when new versions are found"
1401
1793
  msgstr ""
1402
1794
 
1403
- #: core/app_settings.py:644
1795
+ #: core/app_settings.py:632
1404
1796
  msgid "Send an email to notify admins about new versions"
1405
1797
  msgstr ""
1406
1798
 
1407
- #: core/app_settings.py:651 sievefilters/constants.py:25
1799
+ #: core/app_settings.py:639 sievefilters/constants.py:25
1408
1800
  msgid "Recipient"
1409
1801
  msgstr ""
1410
1802
 
1411
- #: core/app_settings.py:654
1803
+ #: core/app_settings.py:642
1412
1804
  msgid "Recipient of new versions notification emails."
1413
1805
  msgstr ""
1414
1806
 
1415
- #: core/app_settings.py:661
1807
+ #: core/app_settings.py:649
1416
1808
  msgid "Send statistics"
1417
1809
  msgstr "İstatistikleri gönder"
1418
1810
 
1419
- #: core/app_settings.py:664
1811
+ #: core/app_settings.py:652
1420
1812
  msgid "Send statistics to Modoboa public API (counters and used extensions)"
1421
1813
  msgstr ""
1422
1814
 
1423
- #: core/app_settings.py:683
1815
+ #: core/app_settings.py:671
1424
1816
  msgid "Enable inactive account tracking"
1425
1817
  msgstr ""
1426
1818
 
1427
- #: core/app_settings.py:686
1819
+ #: core/app_settings.py:674
1428
1820
  msgid ""
1429
1821
  "Allow the administrator to set a threshold (in days) beyond which an account "
1430
1822
  "is considered inactive if the user hasn't logged in"
1431
1823
  msgstr ""
1432
1824
 
1433
- #: core/app_settings.py:695
1825
+ #: core/app_settings.py:683
1434
1826
  msgid "Inactive account threshold"
1435
1827
  msgstr ""
1436
1828
 
1437
- #: core/app_settings.py:698
1829
+ #: core/app_settings.py:686
1438
1830
  msgid ""
1439
1831
  "An account with a last login date greater than this threshold (in days) will "
1440
1832
  "be considered as inactive"
1441
1833
  msgstr ""
1442
1834
 
1443
- #: core/app_settings.py:707
1835
+ #: core/app_settings.py:695
1444
1836
  msgid "Top notifications check interval"
1445
1837
  msgstr ""
1446
1838
 
1447
- #: core/app_settings.py:710
1839
+ #: core/app_settings.py:698
1448
1840
  msgid "Interval between two top notification checks (in seconds)"
1449
1841
  msgstr ""
1450
1842
 
1451
- #: core/app_settings.py:717
1843
+ #: core/app_settings.py:705
1452
1844
  msgid "Maximum log record age"
1453
1845
  msgstr "Maksimum günlük kayıt yaşı"
1454
1846
 
1455
- #: core/app_settings.py:719
1847
+ #: core/app_settings.py:707
1456
1848
  msgid "The maximum age in days of a log record"
1457
1849
  msgstr ""
1458
1850
 
1459
- #: core/app_settings.py:727
1851
+ #: core/app_settings.py:715
1460
1852
  msgid "Retention time in message history"
1461
1853
  msgstr ""
1462
1854
 
1463
- #: core/app_settings.py:730
1855
+ #: core/app_settings.py:718
1464
1856
  msgid "Retention time (in days) of a message in the message history section"
1465
1857
  msgstr ""
1466
1858
 
1467
- #: core/app_settings.py:737
1859
+ #: core/app_settings.py:725
1468
1860
  msgid "Items per page"
1469
1861
  msgstr "Sayfa başına öğe"
1470
1862
 
1471
- #: core/app_settings.py:739
1863
+ #: core/app_settings.py:727
1472
1864
  msgid "Number of displayed items per page"
1473
1865
  msgstr ""
1474
1866
 
1475
- #: core/app_settings.py:746
1476
- msgid "Default top redirection"
1477
- msgstr ""
1478
-
1479
- #: core/app_settings.py:748
1480
- msgid "The default redirection used when no application is specified"
1481
- msgstr ""
1482
-
1483
1867
  #: core/checks.py:15
1484
1868
  msgid ""
1485
1869
  "You have USE_TZ set to False, this may result in issues during transitions "
@@ -1609,7 +1993,7 @@ msgstr ""
1609
1993
  msgid "One or more updates are available"
1610
1994
  msgstr "Bir veya daha fazla güncelleme mevcut"
1611
1995
 
1612
- #: core/handlers.py:138
1996
+ #: core/handlers.py:140
1613
1997
  #, python-format
1614
1998
  msgid "You are still using a deprecated password scheme (%s)"
1615
1999
  msgstr ""
@@ -1768,22 +2152,22 @@ msgstr[1] "Bir veya daha fazla güncelleme mevcut"
1768
2152
  msgid "The core part of Modoboa"
1769
2153
  msgstr ""
1770
2154
 
1771
- #: core/views/auth.py:65
2155
+ #: core/views/auth.py:82
1772
2156
  #, python-format
1773
2157
  msgid "User '%s' successfully logged in"
1774
2158
  msgstr ""
1775
2159
 
1776
- #: core/views/auth.py:109
2160
+ #: core/views/auth.py:128
1777
2161
  #, python-format
1778
2162
  msgid "Password scheme mismatch. Updating %s password"
1779
2163
  msgstr ""
1780
2164
 
1781
- #: core/views/auth.py:116
2165
+ #: core/views/auth.py:135
1782
2166
  #, python-format
1783
2167
  msgid "Password hash parameter missmatch. Updating %s password"
1784
2168
  msgstr ""
1785
2169
 
1786
- #: core/views/auth.py:154
2170
+ #: core/views/auth.py:173
1787
2171
  msgid "User '{}' successfully logged out"
1788
2172
  msgstr ""
1789
2173
 
@@ -1810,14 +2194,10 @@ msgid "Not resolved"
1810
2194
  msgstr ""
1811
2195
 
1812
2196
  #: dmarc/models.py:10 dmarc/models.py:16 pdfcredentials/constants.py:7
1813
- #: webmail/constants.py:18
2197
+ #: webmail/constants.py:38
1814
2198
  msgid "None"
1815
2199
  msgstr ""
1816
2200
 
1817
- #: dmarc/models.py:11
1818
- msgid "Quarantine"
1819
- msgstr ""
1820
-
1821
2201
  #: dmarc/models.py:12
1822
2202
  #, fuzzy
1823
2203
  #| msgid "Subject"
@@ -1948,7 +2328,11 @@ msgstr ""
1948
2328
  msgid "Public key mismatchs"
1949
2329
  msgstr ""
1950
2330
 
1951
- #: imap_migration/api/v2/serializers.py:117
2331
+ #: imap_migration/api/v2/serializers.py:66
2332
+ msgid "Migrated domain with name {} already exists"
2333
+ msgstr ""
2334
+
2335
+ #: imap_migration/api/v2/serializers.py:130
1952
2336
  msgid "Access denied"
1953
2337
  msgstr ""
1954
2338
 
@@ -2641,7 +3025,7 @@ msgstr ""
2641
3025
  msgid "Rspamd"
2642
3026
  msgstr ""
2643
3027
 
2644
- #: sievefilters/api/v2/viewsets.py:193
3028
+ #: sievefilters/api/v2/viewsets.py:203
2645
3029
  #, python-format
2646
3030
  msgid "Filter %s already exists"
2647
3031
  msgstr ""
@@ -2722,7 +3106,7 @@ msgstr ""
2722
3106
  msgid "is not"
2723
3107
  msgstr ""
2724
3108
 
2725
- #: sievefilters/constants.py:23 webmail/lib/imapemail.py:304
3109
+ #: sievefilters/constants.py:23 webmail/lib/imapemail.py:302
2726
3110
  msgid "Subject"
2727
3111
  msgstr "Konu"
2728
3112
 
@@ -2962,23 +3346,23 @@ msgstr ""
2962
3346
  msgid "SMTP settings"
2963
3347
  msgstr "LDAP ayarları"
2964
3348
 
2965
- #: webmail/app_settings.py:75
3349
+ #: webmail/app_settings.py:75 webmail/app_settings.py:121
2966
3350
  msgid "Address of your SMTP server"
2967
3351
  msgstr ""
2968
3352
 
2969
- #: webmail/app_settings.py:82
3353
+ #: webmail/app_settings.py:82 webmail/app_settings.py:128
2970
3354
  #, fuzzy
2971
3355
  #| msgid "Use a secured connection"
2972
3356
  msgid "Secured connection mode"
2973
3357
  msgstr "Güvenli bir bağlantı kullan"
2974
3358
 
2975
- #: webmail/app_settings.py:84
3359
+ #: webmail/app_settings.py:84 webmail/app_settings.py:130
2976
3360
  #, fuzzy
2977
3361
  #| msgid "Use a secured connection"
2978
3362
  msgid "Use a secured connection to access SMTP server"
2979
3363
  msgstr "Güvenli bir bağlantı kullan"
2980
3364
 
2981
- #: webmail/app_settings.py:93
3365
+ #: webmail/app_settings.py:93 webmail/app_settings.py:139
2982
3366
  msgid "Listening port of your SMTP server"
2983
3367
  msgstr ""
2984
3368
 
@@ -2994,105 +3378,103 @@ msgstr "Yetkilendirme metodu"
2994
3378
  msgid "Server needs authentication"
2995
3379
  msgstr "Yetkilendirme metodu"
2996
3380
 
2997
- #: webmail/app_settings.py:118
2998
- msgid "Display"
2999
- msgstr ""
3381
+ #: webmail/app_settings.py:113
3382
+ #, fuzzy
3383
+ #| msgid "LDAP settings"
3384
+ msgid "Scheduling settings"
3385
+ msgstr "LDAP ayarları"
3000
3386
 
3001
- #: webmail/app_settings.py:124
3387
+ #: webmail/app_settings.py:161
3002
3388
  msgid "Default message display mode"
3003
3389
  msgstr ""
3004
3390
 
3005
- #: webmail/app_settings.py:126
3391
+ #: webmail/app_settings.py:163
3006
3392
  msgid "The default mode used when displaying a message"
3007
3393
  msgstr ""
3008
3394
 
3009
- #: webmail/app_settings.py:133
3395
+ #: webmail/app_settings.py:170
3010
3396
  msgid "Enable HTML links display"
3011
3397
  msgstr ""
3012
3398
 
3013
- #: webmail/app_settings.py:136
3399
+ #: webmail/app_settings.py:173
3014
3400
  msgid "Enable/Disable HTML links display"
3015
3401
  msgstr ""
3016
3402
 
3017
- #: webmail/app_settings.py:144
3018
- msgid "Number of displayed emails per page"
3019
- msgstr ""
3020
-
3021
- #: webmail/app_settings.py:147
3403
+ #: webmail/app_settings.py:184
3022
3404
  msgid "Sets the maximum number of messages displayed in a page"
3023
3405
  msgstr ""
3024
3406
 
3025
- #: webmail/app_settings.py:154
3407
+ #: webmail/app_settings.py:191
3026
3408
  msgid "Listing refresh rate"
3027
3409
  msgstr ""
3028
3410
 
3029
- #: webmail/app_settings.py:156
3411
+ #: webmail/app_settings.py:193
3030
3412
  msgid "Automatic listing refresh rate (in secconds)"
3031
3413
  msgstr ""
3032
3414
 
3033
- #: webmail/app_settings.py:163
3415
+ #: webmail/app_settings.py:200
3034
3416
  msgid "Folder container's width"
3035
3417
  msgstr ""
3036
3418
 
3037
- #: webmail/app_settings.py:165
3419
+ #: webmail/app_settings.py:202
3038
3420
  msgid "The width of the folder list container"
3039
3421
  msgstr ""
3040
3422
 
3041
- #: webmail/app_settings.py:176
3423
+ #: webmail/app_settings.py:213
3042
3424
  msgid "Folders"
3043
3425
  msgstr ""
3044
3426
 
3045
- #: webmail/app_settings.py:182
3427
+ #: webmail/app_settings.py:219
3046
3428
  msgid "Trash folder"
3047
3429
  msgstr ""
3048
3430
 
3049
- #: webmail/app_settings.py:184
3431
+ #: webmail/app_settings.py:221
3050
3432
  msgid "Folder where deleted messages go"
3051
3433
  msgstr ""
3052
3434
 
3053
- #: webmail/app_settings.py:191
3435
+ #: webmail/app_settings.py:228
3054
3436
  msgid "Sent folder"
3055
3437
  msgstr ""
3056
3438
 
3057
- #: webmail/app_settings.py:193
3439
+ #: webmail/app_settings.py:230
3058
3440
  msgid "Folder where copies of sent messages go"
3059
3441
  msgstr ""
3060
3442
 
3061
- #: webmail/app_settings.py:200
3443
+ #: webmail/app_settings.py:237
3062
3444
  msgid "Drafts folder"
3063
3445
  msgstr ""
3064
3446
 
3065
- #: webmail/app_settings.py:201
3447
+ #: webmail/app_settings.py:238
3066
3448
  msgid "Folder where drafts go"
3067
3449
  msgstr ""
3068
3450
 
3069
- #: webmail/app_settings.py:207
3451
+ #: webmail/app_settings.py:244
3070
3452
  msgid "Junk folder"
3071
3453
  msgstr ""
3072
3454
 
3073
- #: webmail/app_settings.py:209
3455
+ #: webmail/app_settings.py:246
3074
3456
  msgid "Folder where junk messages should go"
3075
3457
  msgstr ""
3076
3458
 
3077
- #: webmail/app_settings.py:220
3459
+ #: webmail/app_settings.py:257
3078
3460
  msgid "Composing messages"
3079
3461
  msgstr ""
3080
3462
 
3081
- #: webmail/app_settings.py:226
3463
+ #: webmail/app_settings.py:263
3082
3464
  #, fuzzy
3083
3465
  #| msgid "Default password"
3084
3466
  msgid "Default editor"
3085
3467
  msgstr "Varsayılan parola"
3086
3468
 
3087
- #: webmail/app_settings.py:228
3469
+ #: webmail/app_settings.py:265
3088
3470
  msgid "The default editor to use when composing a message"
3089
3471
  msgstr ""
3090
3472
 
3091
- #: webmail/app_settings.py:235
3473
+ #: webmail/app_settings.py:272
3092
3474
  msgid "Signature text"
3093
3475
  msgstr ""
3094
3476
 
3095
- #: webmail/app_settings.py:237
3477
+ #: webmail/app_settings.py:274
3096
3478
  msgid "User defined email signature"
3097
3479
  msgstr ""
3098
3480
 
@@ -3106,43 +3488,62 @@ msgstr "Sunucu adresi"
3106
3488
  msgid "Failed to remove attachment: "
3107
3489
  msgstr ""
3108
3490
 
3109
- #: webmail/lib/imapemail.py:272
3491
+ #: webmail/lib/imapemail.py:270
3110
3492
  msgid "wrote:"
3111
3493
  msgstr ""
3112
3494
 
3113
- #: webmail/lib/imapemail.py:306
3495
+ #: webmail/lib/imapemail.py:304
3114
3496
  msgid "Date"
3115
3497
  msgstr ""
3116
3498
 
3117
- #: webmail/lib/imapemail.py:322 webmail/lib/imapemail.py:325
3499
+ #: webmail/lib/imapemail.py:320 webmail/lib/imapemail.py:323
3118
3500
  msgid "Original message"
3119
3501
  msgstr ""
3120
3502
 
3121
- #: webmail/lib/imaputils.py:221
3503
+ #: webmail/lib/imaputils.py:222
3122
3504
  msgid "Failed to retrieve hierarchy delimiter"
3123
3505
  msgstr ""
3124
3506
 
3125
- #: webmail/lib/imaputils.py:472
3507
+ #: webmail/lib/imaputils.py:478
3126
3508
  msgid "Inbox"
3127
3509
  msgstr ""
3128
3510
 
3129
- #: webmail/lib/imaputils.py:476
3511
+ #: webmail/lib/imaputils.py:482
3130
3512
  msgid "Drafts"
3131
3513
  msgstr ""
3132
3514
 
3133
- #: webmail/lib/imaputils.py:481
3515
+ #: webmail/lib/imaputils.py:487
3134
3516
  msgid "Junk"
3135
3517
  msgstr ""
3136
3518
 
3137
- #: webmail/lib/imaputils.py:486
3519
+ #: webmail/lib/imaputils.py:492
3138
3520
  msgid "Sent"
3139
3521
  msgstr ""
3140
3522
 
3141
- #: webmail/lib/imaputils.py:491
3523
+ #: webmail/lib/imaputils.py:500
3524
+ msgid "Scheduled"
3525
+ msgstr ""
3526
+
3527
+ #: webmail/lib/imaputils.py:507
3142
3528
  msgid "Trash"
3143
3529
  msgstr ""
3144
3530
 
3145
- #: webmail/viewsets.py:343
3531
+ #: webmail/serializers.py:220
3532
+ msgid "Moving scheduled messages is forbidden"
3533
+ msgstr ""
3534
+
3535
+ #: webmail/serializers.py:253
3536
+ msgid "Only datetime in the future is allowed"
3537
+ msgstr ""
3538
+
3539
+ #: webmail/serializers.py:258
3540
+ msgid "Provived datetime must be one minute in the future at least"
3541
+ msgstr ""
3542
+
3543
+ #: webmail/viewsets.py:359
3146
3544
  #, python-format
3147
3545
  msgid "Attachment is too big (limit: %s)"
3148
3546
  msgstr ""
3547
+
3548
+ #~ msgid "User profile"
3549
+ #~ msgstr "Kullanıcı profili"