modoboa 2.4.10__py3-none-any.whl → 2.5.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 (331) hide show
  1. modoboa/admin/api/v1/serializers.py +1 -0
  2. modoboa/admin/api/v2/serializers.py +15 -1
  3. modoboa/admin/api/v2/tests.py +11 -1
  4. modoboa/admin/lib.py +1 -1
  5. modoboa/admin/models/mailbox.py +15 -13
  6. modoboa/admin/models/mxrecord.py +4 -0
  7. modoboa/admin/tests/test_import_.py +11 -11
  8. modoboa/amavis/__init__.py +3 -0
  9. modoboa/amavis/app_settings.py +276 -0
  10. modoboa/amavis/apps.py +18 -0
  11. modoboa/amavis/checks/__init__.py +2 -0
  12. modoboa/amavis/checks/settings_checks.py +59 -0
  13. modoboa/amavis/dbrouter.py +35 -0
  14. modoboa/amavis/factories.py +164 -0
  15. modoboa/amavis/handlers.py +146 -0
  16. modoboa/amavis/lib.py +381 -0
  17. modoboa/amavis/management/__init__.py +0 -0
  18. modoboa/amavis/management/commands/__init__.py +0 -0
  19. modoboa/amavis/management/commands/amnotify.py +99 -0
  20. modoboa/amavis/management/commands/qcleanup.py +84 -0
  21. modoboa/amavis/migrations/0001_initial.py +340 -0
  22. modoboa/amavis/migrations/__init__.py +0 -0
  23. modoboa/amavis/models.py +226 -0
  24. modoboa/amavis/serializers.py +139 -0
  25. modoboa/amavis/sql_connector.py +240 -0
  26. modoboa/amavis/sql_email.py +66 -0
  27. modoboa/amavis/tasks.py +33 -0
  28. modoboa/amavis/templates/amavis/notifications/pending_requests.html +16 -0
  29. modoboa/amavis/tests/__init__.py +0 -0
  30. modoboa/amavis/tests/sa-learn +3 -0
  31. modoboa/amavis/tests/sample_messages/quarantined-input.txt +80 -0
  32. modoboa/amavis/tests/sample_messages/quarantined-output-plain_nolinks.txt +17 -0
  33. modoboa/amavis/tests/spamc +3 -0
  34. modoboa/amavis/tests/test_checks.py +25 -0
  35. modoboa/amavis/tests/test_handlers.py +214 -0
  36. modoboa/amavis/tests/test_lib.py +90 -0
  37. modoboa/amavis/tests/test_management_commands.py +45 -0
  38. modoboa/amavis/tests/test_sql_email.py +67 -0
  39. modoboa/amavis/tests/test_utils.py +19 -0
  40. modoboa/amavis/tests/test_viewsets.py +319 -0
  41. modoboa/amavis/urls.py +11 -0
  42. modoboa/amavis/utils.py +105 -0
  43. modoboa/amavis/viewsets.py +265 -0
  44. modoboa/core/api/v1/serializers.py +7 -5
  45. modoboa/core/api/v2/serializers.py +13 -2
  46. modoboa/core/api/v2/tests.py +34 -4
  47. modoboa/core/api/v2/urls.py +10 -5
  48. modoboa/core/api/v2/views.py +23 -2
  49. modoboa/core/api/v2/viewsets.py +24 -3
  50. modoboa/core/app_settings.py +11 -0
  51. modoboa/core/fido2_auth.py +1 -2
  52. modoboa/core/handlers.py +6 -2
  53. modoboa/core/management/commands/add_allowed_hosts.py +33 -0
  54. modoboa/core/management/commands/cleanlogs.py +9 -0
  55. modoboa/core/management/commands/load_initial_data.py +10 -0
  56. modoboa/core/migrations/0025_rename_user_email_is_active_core_user_email_c0c03f_idx.py +23 -5
  57. modoboa/core/tests/test_core.py +29 -0
  58. modoboa/core/utils.py +6 -0
  59. modoboa/dnstools/api/v2/serializers.py +9 -11
  60. modoboa/frontend_dist/assets/AccountAliasForm-BuSy_1n9.js +1 -0
  61. modoboa/frontend_dist/assets/AccountEditView-qdJmLM_e.js +1 -0
  62. modoboa/frontend_dist/assets/AccountLayout-DrN7vHsX.js +1 -0
  63. modoboa/frontend_dist/assets/AccountPasswordSubForm-DZGt_Xgq.js +1 -0
  64. modoboa/frontend_dist/assets/AccountView-CO65y0vZ.js +1 -0
  65. modoboa/frontend_dist/assets/AddressBook-BZNUlhek.js +1 -0
  66. modoboa/frontend_dist/assets/AdminLayout-CTNhuwTw.js +1 -0
  67. modoboa/frontend_dist/assets/AlarmsView-9yKGbmkC.css +1 -0
  68. modoboa/frontend_dist/assets/AlarmsView-DN_JIw9g.js +1 -0
  69. modoboa/frontend_dist/assets/AliasEditView-DjpPUTp9.js +1 -0
  70. modoboa/frontend_dist/assets/{AliasRecipientForm-DVZXWaUX.js → AliasRecipientForm-B1Y8wFdP.js} +1 -1
  71. modoboa/frontend_dist/assets/AliasView-GOJ5lyQH.js +1 -0
  72. modoboa/frontend_dist/assets/AuditTrailView-fbXmq70e.js +1 -0
  73. modoboa/frontend_dist/assets/CalendarView-LlQQNEPL.js +1 -0
  74. modoboa/frontend_dist/assets/{ChoiceField-7eU7c_rI.js → ChoiceField-B3ReQHVe.js} +1 -1
  75. modoboa/frontend_dist/assets/ComposeEmailForm-Bs1fZXAL.js +1 -0
  76. modoboa/frontend_dist/assets/ComposeEmailView-s3LMl3pO.js +1 -0
  77. modoboa/frontend_dist/assets/ConfirmDialog-DY_kUHLG.js +1 -0
  78. modoboa/frontend_dist/assets/{ConnectedLayout-BaJZ3BeR.css → ConnectedLayout-Bxh21hcH.css} +1 -1
  79. modoboa/frontend_dist/assets/ConnectedLayout-UWjiYBNw.js +1 -0
  80. modoboa/frontend_dist/assets/CreationForm-ORg3fazt.js +1 -0
  81. modoboa/frontend_dist/assets/DashboardView-Dplk9itS.js +1 -0
  82. modoboa/frontend_dist/assets/{DashboardView-BLlMi6Qb.css → DashboardView-gwwVAPvt.css} +1 -1
  83. modoboa/frontend_dist/assets/DomainAdminList-DVn9x0rB.js +1 -0
  84. modoboa/frontend_dist/assets/DomainEditView-nAoL64D_.js +1 -0
  85. modoboa/frontend_dist/assets/{DomainTransportForm-DPnPGBOp.js → DomainTransportForm-CA-DNUxX.js} +1 -1
  86. modoboa/frontend_dist/assets/{DomainView-BDKoBFYr.css → DomainView-CCLYXPHx.css} +1 -1
  87. modoboa/frontend_dist/assets/DomainView-CdXPpwJG.js +5 -0
  88. modoboa/frontend_dist/assets/DomainsView-B_59gowf.js +1 -0
  89. modoboa/frontend_dist/assets/DomainsView-DZ-ss9bI.css +1 -0
  90. modoboa/frontend_dist/assets/EmailField-CwcwI5xW.js +1 -0
  91. modoboa/frontend_dist/assets/EmailView-BshxcfAK.js +1 -0
  92. modoboa/frontend_dist/assets/EmptyLayout-DFfhnhLi.js +1 -0
  93. modoboa/frontend_dist/assets/FiltersView-Cf20MSTK.js +1 -0
  94. modoboa/frontend_dist/assets/ForwardEmailView-CZG062os.js +1 -0
  95. modoboa/frontend_dist/assets/{HtmlEditor-uM4AtIGi.js → HtmlEditor-Bh4c689R.js} +1 -1
  96. modoboa/frontend_dist/assets/IdentitiesView-BXAuU1YX.js +1 -0
  97. modoboa/frontend_dist/assets/{IdentitiesView-jmuItyMZ.css → IdentitiesView-DPrrRMS5.css} +1 -1
  98. modoboa/frontend_dist/assets/InformationView-C9vvvQhJ.css +1 -0
  99. modoboa/frontend_dist/assets/InformationView-Cn5FZW7H.js +1 -0
  100. modoboa/frontend_dist/assets/{LoadingData-CVD2Aen8.js → LoadingData-CdVvm4FI.js} +1 -1
  101. modoboa/frontend_dist/assets/{LoginCallbackView-sWzBke1g.js → LoginCallbackView-B9hAH4MI.js} +1 -1
  102. modoboa/frontend_dist/assets/{LoginView-wmN73W0f.js → LoginView-tHIR4Adc.js} +1 -1
  103. modoboa/frontend_dist/assets/MailboxView-Bugu2vhg.js +1 -0
  104. modoboa/frontend_dist/assets/MenuItems-PXjiG-fs.js +1 -0
  105. modoboa/frontend_dist/assets/MessageView-Cy4STShm.js +1 -0
  106. modoboa/frontend_dist/assets/MessagesView-DdkuEgfX.js +1 -0
  107. modoboa/frontend_dist/assets/MigrationsView-CidSEjCF.js +1 -0
  108. modoboa/frontend_dist/assets/{ParametersForm-BCeQljir.js → ParametersForm-CAv4SH-E.js} +1 -1
  109. modoboa/frontend_dist/assets/ParametersView-CX7Ffemw.js +1 -0
  110. modoboa/frontend_dist/assets/ParametersView-CrbNcmV3.js +1 -0
  111. modoboa/frontend_dist/assets/ProviderEditView-CrltAQXl.js +1 -0
  112. modoboa/frontend_dist/assets/ProviderGeneralForm-BYAzVnXM.js +1 -0
  113. modoboa/frontend_dist/assets/ProvidersView-osjIY4Ex.js +1 -0
  114. modoboa/frontend_dist/assets/QuarantineLayout-B8EcU9vS.js +1 -0
  115. modoboa/frontend_dist/assets/QuarantineView-D4gOE4EQ.css +1 -0
  116. modoboa/frontend_dist/assets/QuarantineView-D8Qg0MXA.js +1 -0
  117. modoboa/frontend_dist/assets/ReplyEmailView-BABPqWhd.js +1 -0
  118. modoboa/frontend_dist/assets/ResourcesForm-OaqdRYVs.js +1 -0
  119. modoboa/frontend_dist/assets/SelfServiceLayout-d277YTGR.js +1 -0
  120. modoboa/frontend_dist/assets/SettingsView-9iNcDhkI.js +6 -0
  121. modoboa/frontend_dist/assets/StatisticsView-cHsPyGkL.js +1 -0
  122. modoboa/frontend_dist/assets/TimeSerieChart--V83dcJ9.js +1 -0
  123. modoboa/frontend_dist/assets/UserLayout-B3sBiTcZ.js +1 -0
  124. modoboa/frontend_dist/assets/VAlert-BuaaYN2h.js +1 -0
  125. modoboa/frontend_dist/assets/VApp-CKP-6zGP.js +1 -0
  126. modoboa/frontend_dist/assets/VAutocomplete-Dwv6_Rzq.js +1 -0
  127. modoboa/frontend_dist/assets/VAvatar-Cmga0vj6.js +1 -0
  128. modoboa/frontend_dist/assets/VBadge-BQrRJ9S0.css +1 -0
  129. modoboa/frontend_dist/assets/VBadge-CixeK87a.js +1 -0
  130. modoboa/frontend_dist/assets/VCard-CxH9DWoK.js +1 -0
  131. modoboa/frontend_dist/assets/VCheckbox-62GOpvvP.js +1 -0
  132. modoboa/frontend_dist/assets/{VCheckboxBtn-j7di4leN.js → VCheckboxBtn-DMoNtKT8.js} +1 -1
  133. modoboa/frontend_dist/assets/VChip-D_styETR.js +1 -0
  134. modoboa/frontend_dist/assets/VColorPicker-BHscBGQV.js +1 -0
  135. modoboa/frontend_dist/assets/VContainer-B46caNs1.js +1 -0
  136. modoboa/frontend_dist/assets/VDataTable-Bh8NbVSx.js +1 -0
  137. modoboa/frontend_dist/assets/VDataTableServer-BDR5hOmo.js +1 -0
  138. modoboa/frontend_dist/assets/VDataTableVirtual-BOQlNtIG.js +1 -0
  139. modoboa/frontend_dist/assets/{VDialog-CZqM2Ofu.js → VDialog-BcTg7w6P.js} +1 -1
  140. modoboa/frontend_dist/assets/VExpansionPanels-BmH5Jl2Z.js +1 -0
  141. modoboa/frontend_dist/assets/VFileInput-BC4yAygd.js +1 -0
  142. modoboa/frontend_dist/assets/VForm-D5iPGkde.js +1 -0
  143. modoboa/frontend_dist/assets/VInput-CcxkaOXT.css +1 -0
  144. modoboa/frontend_dist/assets/VInput-CoDJzvaW.js +1 -0
  145. modoboa/frontend_dist/assets/VMenu-gUG70-zD.js +1 -0
  146. modoboa/frontend_dist/assets/VPicker-BXuKT3zB.js +1 -0
  147. modoboa/frontend_dist/assets/VProgressCircular-BtOPiGCg.js +1 -0
  148. modoboa/frontend_dist/assets/VRadioGroup-DIFZKSn-.js +1 -0
  149. modoboa/frontend_dist/assets/{VRow-C_Ydf6yr.js → VRow-ozg66L7j.js} +1 -1
  150. modoboa/frontend_dist/assets/VSelect-C3RjAa45.js +1 -0
  151. modoboa/frontend_dist/assets/VSelectionControl-zyz-fJvC.js +1 -0
  152. modoboa/frontend_dist/assets/VSheet-BNx2X4Mk.js +1 -0
  153. modoboa/frontend_dist/assets/VSpacer-DinPiXs9.js +1 -0
  154. modoboa/frontend_dist/assets/VSwitch-DwxdeAEq.js +1 -0
  155. modoboa/frontend_dist/assets/VTable-DaLxa4FO.js +1 -0
  156. modoboa/frontend_dist/assets/VTabs-BP0Hgsgm.js +1 -0
  157. modoboa/frontend_dist/assets/VTextField-BzBVKKob.css +1 -0
  158. modoboa/frontend_dist/assets/VTextField-XoGTj1KG.js +1 -0
  159. modoboa/frontend_dist/assets/VTextarea-wBlRMIv_.js +1 -0
  160. modoboa/frontend_dist/assets/VToolbar-CFZfqeOr.js +1 -0
  161. modoboa/frontend_dist/assets/VWindowItem-BB7ETW3b.js +1 -0
  162. modoboa/frontend_dist/assets/WebmailLayout-_Hk1XhVq.js +1 -0
  163. modoboa/frontend_dist/assets/accounts-DUzbx6k8.js +1 -0
  164. modoboa/frontend_dist/assets/admin-DewTk2H8.js +1 -0
  165. modoboa/frontend_dist/assets/{aliases-c3n-dCV_.js → aliases-4sXmjwXp.js} +1 -1
  166. modoboa/frontend_dist/assets/amavis-CC0li7_T.js +1 -0
  167. modoboa/frontend_dist/assets/amavis-DK8SHE6o.js +1 -0
  168. modoboa/frontend_dist/assets/{contacts-Bqckz8sr.js → contacts-BjghrPqZ.js} +1 -1
  169. modoboa/frontend_dist/assets/{domains-nBMR-fRf.js → domains-BSawReeu.js} +1 -1
  170. modoboa/frontend_dist/assets/{domains.store-ChZgLcqP.js → domains.store-D-vWCEIK.js} +1 -1
  171. modoboa/frontend_dist/assets/{filter-D7NrAf6a.js → filter-C82FUCw_.js} +1 -1
  172. modoboa/frontend_dist/assets/forwardRefs-cvcnlhoK.js +1 -0
  173. modoboa/frontend_dist/assets/global.store-DbkcI5o2.js +1 -0
  174. modoboa/frontend_dist/assets/{importExport-Dn9vYw7T.js → importExport-DzoL4Mvc.js} +1 -1
  175. modoboa/frontend_dist/assets/index-BImkz5Jx.js +984 -0
  176. modoboa/frontend_dist/assets/index-DuzUMVLM.js +1 -0
  177. modoboa/frontend_dist/assets/layout-C5FyYCHK.js +1 -0
  178. modoboa/frontend_dist/assets/{layout.store-BxBoBlgf.js → layout.store-NXWtFIwL.js} +1 -1
  179. modoboa/frontend_dist/assets/logos-BswdveCV.js +1 -0
  180. modoboa/frontend_dist/assets/{logs-DrTzylW7.js → logs-6CbtfaZS.js} +1 -1
  181. modoboa/frontend_dist/assets/{parameters-Lgiqp7aw.js → parameters-aSQiR7kN.js} +1 -1
  182. modoboa/frontend_dist/assets/{parameters.store-C9k9DuTj.js → parameters.store-CzQqVatx.js} +1 -1
  183. modoboa/frontend_dist/assets/permissions-DNoefz-n.js +1 -0
  184. modoboa/frontend_dist/assets/{ssrBoot-BsxW6uW4.js → ssrBoot-CKUX4kcb.js} +1 -1
  185. modoboa/frontend_dist/assets/{tag-CFK9dzMJ.js → tag-B_yWNNJD.js} +1 -1
  186. modoboa/frontend_dist/assets/transports-BDNB9wR5.js +1 -0
  187. modoboa/frontend_dist/assets/{webmail-KrD8ZhNM.js → webmail-CdU6CD9b.js} +1 -1
  188. modoboa/frontend_dist/index.html +1 -1
  189. modoboa/lib/email_utils.py +2 -2
  190. modoboa/lib/permissions.py +7 -0
  191. modoboa/lib/redis.py +1 -5
  192. modoboa/lib/test_runners.py +29 -0
  193. modoboa/lib/tests/__init__.py +5 -1
  194. modoboa/locale/br/LC_MESSAGES/django.po +87 -75
  195. modoboa/locale/cs/LC_MESSAGES/django.po +82 -74
  196. modoboa/locale/cs_CZ/LC_MESSAGES/django.po +145 -121
  197. modoboa/locale/de/LC_MESSAGES/django.mo +0 -0
  198. modoboa/locale/de/LC_MESSAGES/django.po +339 -651
  199. modoboa/locale/de_DE/LC_MESSAGES/django.po +87 -75
  200. modoboa/locale/el_GR/LC_MESSAGES/django.po +160 -135
  201. modoboa/locale/en/LC_MESSAGES/django.po +82 -74
  202. modoboa/locale/es/LC_MESSAGES/django.po +158 -131
  203. modoboa/locale/es_MX/LC_MESSAGES/django.po +82 -74
  204. modoboa/locale/fi/LC_MESSAGES/django.po +87 -75
  205. modoboa/locale/fr/LC_MESSAGES/django.mo +0 -0
  206. modoboa/locale/fr/LC_MESSAGES/django.po +469 -201
  207. modoboa/locale/hu/LC_MESSAGES/django.po +82 -74
  208. modoboa/locale/it/LC_MESSAGES/django.mo +0 -0
  209. modoboa/locale/it/LC_MESSAGES/django.po +148 -122
  210. modoboa/locale/ja_JP/LC_MESSAGES/django.mo +0 -0
  211. modoboa/locale/ja_JP/LC_MESSAGES/django.po +201 -334
  212. modoboa/locale/ka/LC_MESSAGES/django.po +82 -74
  213. modoboa/locale/nl_NL/LC_MESSAGES/django.po +160 -132
  214. modoboa/locale/no/LC_MESSAGES/django.po +82 -74
  215. modoboa/locale/pl_PL/LC_MESSAGES/django.mo +0 -0
  216. modoboa/locale/pl_PL/LC_MESSAGES/django.po +172 -149
  217. modoboa/locale/pt_BR/LC_MESSAGES/django.mo +0 -0
  218. modoboa/locale/pt_BR/LC_MESSAGES/django.po +172 -144
  219. modoboa/locale/pt_PT/LC_MESSAGES/django.po +135 -112
  220. modoboa/locale/ro_RO/LC_MESSAGES/django.po +87 -75
  221. modoboa/locale/ru/LC_MESSAGES/django.po +142 -118
  222. modoboa/locale/si/LC_MESSAGES/django.po +82 -74
  223. modoboa/locale/sk/LC_MESSAGES/django.po +82 -74
  224. modoboa/locale/sk_SK/LC_MESSAGES/django.po +84 -76
  225. modoboa/locale/sl_SI/LC_MESSAGES/django.po +90 -76
  226. modoboa/locale/sv/LC_MESSAGES/django.mo +0 -0
  227. modoboa/locale/sv/LC_MESSAGES/django.po +172 -139
  228. modoboa/locale/tr/LC_MESSAGES/django.po +87 -75
  229. modoboa/locale/tr_TR/LC_MESSAGES/django.po +84 -74
  230. modoboa/locale/uk/LC_MESSAGES/django.po +82 -74
  231. modoboa/locale/zh/LC_MESSAGES/django.po +82 -74
  232. modoboa/locale/zh_CN/LC_MESSAGES/django.po +82 -74
  233. modoboa/locale/zh_TW/LC_MESSAGES/django.po +87 -75
  234. modoboa/parameters/api/v2/tests.py +2 -2
  235. modoboa/parameters/api/v2/viewsets.py +2 -0
  236. modoboa/policyd/tests.py +2 -0
  237. modoboa/urls_api_v2.py +6 -0
  238. {modoboa-2.4.10.dist-info → modoboa-2.5.0.dist-info}/METADATA +6 -4
  239. {modoboa-2.4.10.dist-info → modoboa-2.5.0.dist-info}/RECORD +244 -193
  240. modoboa/frontend_dist/assets/AccountAliasForm-DVXatAhB.js +0 -1
  241. modoboa/frontend_dist/assets/AccountEditView-DmvQjxpx.js +0 -1
  242. modoboa/frontend_dist/assets/AccountLayout-OGtZvlHR.js +0 -1
  243. modoboa/frontend_dist/assets/AccountPasswordSubForm-g3IEGrgM.js +0 -1
  244. modoboa/frontend_dist/assets/AccountView-DsxYqr3k.js +0 -1
  245. modoboa/frontend_dist/assets/AddressBook-3RoKiKon.js +0 -1
  246. modoboa/frontend_dist/assets/AdminLayout-CWfn8zaQ.js +0 -1
  247. modoboa/frontend_dist/assets/AlarmsView-Bheey-gp.css +0 -1
  248. modoboa/frontend_dist/assets/AlarmsView-D3Mh8ntf.js +0 -1
  249. modoboa/frontend_dist/assets/AliasEditView-C15eUZ11.js +0 -1
  250. modoboa/frontend_dist/assets/AliasView-Cyvc5vMb.js +0 -1
  251. modoboa/frontend_dist/assets/AuditTrailView-LI2XuLLn.js +0 -1
  252. modoboa/frontend_dist/assets/CalendarView-BpOlPh3f.js +0 -1
  253. modoboa/frontend_dist/assets/ComposeEmailForm-CNfI7ept.js +0 -1
  254. modoboa/frontend_dist/assets/ComposeEmailView-B866Xsrc.js +0 -1
  255. modoboa/frontend_dist/assets/ConfirmDialog-BvqxQsD1.js +0 -1
  256. modoboa/frontend_dist/assets/ConnectedLayout-BQ3ug6Jh.js +0 -1
  257. modoboa/frontend_dist/assets/CreationForm-C9Kh05ax.js +0 -1
  258. modoboa/frontend_dist/assets/DashboardView-Cw-gIcuB.js +0 -1
  259. modoboa/frontend_dist/assets/DomainAdminList-CsWUNKVk.js +0 -1
  260. modoboa/frontend_dist/assets/DomainEditView-DocxeOeW.js +0 -1
  261. modoboa/frontend_dist/assets/DomainView-Djc_0PsF.js +0 -5
  262. modoboa/frontend_dist/assets/DomainsView-B-Lxru7P.js +0 -1
  263. modoboa/frontend_dist/assets/DomainsView-DasJ0NdZ.css +0 -1
  264. modoboa/frontend_dist/assets/EmailField-BEKxuYni.js +0 -1
  265. modoboa/frontend_dist/assets/EmailView-BsR1Wes5.js +0 -1
  266. modoboa/frontend_dist/assets/EmptyLayout-BzPFOeLU.js +0 -1
  267. modoboa/frontend_dist/assets/FiltersView-5rmpC5cC.js +0 -1
  268. modoboa/frontend_dist/assets/ForwardEmailView-D7MbetcT.js +0 -1
  269. modoboa/frontend_dist/assets/IdentitiesView-BqjD9Lue.js +0 -1
  270. modoboa/frontend_dist/assets/InformationView-CghcvPn2.js +0 -1
  271. modoboa/frontend_dist/assets/InformationView-U5Ww-Sx1.css +0 -1
  272. modoboa/frontend_dist/assets/MailboxView-T_p-_ZtJ.js +0 -1
  273. modoboa/frontend_dist/assets/MenuItems-kHCMzR5E.js +0 -1
  274. modoboa/frontend_dist/assets/MessagesView-Cerv3xsy.js +0 -1
  275. modoboa/frontend_dist/assets/MigrationsView-7kjqPyYU.js +0 -1
  276. modoboa/frontend_dist/assets/ParametersView-DspBxVMV.js +0 -1
  277. modoboa/frontend_dist/assets/ParametersView-Dy0H5ep1.js +0 -1
  278. modoboa/frontend_dist/assets/ProviderEditView-DDLMOylC.js +0 -1
  279. modoboa/frontend_dist/assets/ProviderGeneralForm-BwOSKNHK.js +0 -1
  280. modoboa/frontend_dist/assets/ProvidersView-C99UD0WB.js +0 -1
  281. modoboa/frontend_dist/assets/ReplyEmailView-DAPBHldd.js +0 -1
  282. modoboa/frontend_dist/assets/ResourcesForm-D87PHeH0.js +0 -1
  283. modoboa/frontend_dist/assets/SettingsView-OxDo9wNd.js +0 -6
  284. modoboa/frontend_dist/assets/StatisticsView-CM__Eqku.js +0 -1
  285. modoboa/frontend_dist/assets/TimeSerieChart-C6j0uYR_.js +0 -1
  286. modoboa/frontend_dist/assets/UserLayout-CckCGnPS.js +0 -1
  287. modoboa/frontend_dist/assets/VAlert-B7mzOJIO.js +0 -1
  288. modoboa/frontend_dist/assets/VApp-BKxnjOoi.js +0 -1
  289. modoboa/frontend_dist/assets/VAutocomplete-Cc4_tcl1.js +0 -1
  290. modoboa/frontend_dist/assets/VAvatar-BAgTUIvX.js +0 -1
  291. modoboa/frontend_dist/assets/VCard-DFWiFORP.js +0 -1
  292. modoboa/frontend_dist/assets/VCheckbox-CKsH_vq3.js +0 -1
  293. modoboa/frontend_dist/assets/VChip-nZ0uhY7t.js +0 -1
  294. modoboa/frontend_dist/assets/VColorPicker-Os2aeP6J.js +0 -1
  295. modoboa/frontend_dist/assets/VContainer-Btam4lk2.js +0 -1
  296. modoboa/frontend_dist/assets/VDataTable-D_0_xJTl.js +0 -1
  297. modoboa/frontend_dist/assets/VDataTableServer-BWTt4Mzi.js +0 -1
  298. modoboa/frontend_dist/assets/VDataTableVirtual-BwVmkt4u.js +0 -1
  299. modoboa/frontend_dist/assets/VExpansionPanels-B5D6GOa3.js +0 -1
  300. modoboa/frontend_dist/assets/VFileInput-Cv9DIPki.js +0 -1
  301. modoboa/frontend_dist/assets/VForm-CpoZf60D.js +0 -1
  302. modoboa/frontend_dist/assets/VMenu-B_dVqOmo.js +0 -1
  303. modoboa/frontend_dist/assets/VPicker-CXkIGEze.js +0 -1
  304. modoboa/frontend_dist/assets/VProgressCircular-CrEXxs7k.js +0 -1
  305. modoboa/frontend_dist/assets/VRadioGroup-D8ypjYOO.js +0 -1
  306. modoboa/frontend_dist/assets/VSelect-CS51PDEt.js +0 -1
  307. modoboa/frontend_dist/assets/VSelectionControl-DiOqtY38.js +0 -1
  308. modoboa/frontend_dist/assets/VSheet-5VVWtHvs.js +0 -1
  309. modoboa/frontend_dist/assets/VSpacer-C6PZ3X24.js +0 -1
  310. modoboa/frontend_dist/assets/VSwitch-Chg5o-Cp.js +0 -1
  311. modoboa/frontend_dist/assets/VTable-KsiZ3cBz.js +0 -1
  312. modoboa/frontend_dist/assets/VTabs-tNrJIYO0.js +0 -1
  313. modoboa/frontend_dist/assets/VTextField-C-J20yj_.css +0 -1
  314. modoboa/frontend_dist/assets/VTextField-CLwRV0Cb.js +0 -1
  315. modoboa/frontend_dist/assets/VTextarea-Di8jbl8m.js +0 -1
  316. modoboa/frontend_dist/assets/VToolbar-CGwhgdmI.js +0 -1
  317. modoboa/frontend_dist/assets/VWindowItem-wWSFAGI-.js +0 -1
  318. modoboa/frontend_dist/assets/WebmailLayout-DsYThBrz.js +0 -1
  319. modoboa/frontend_dist/assets/admin-CJVLMHh9.js +0 -1
  320. modoboa/frontend_dist/assets/forwardRefs-Cpc3YYl6.js +0 -1
  321. modoboa/frontend_dist/assets/global.store-DUP26-A5.js +0 -1
  322. modoboa/frontend_dist/assets/index-DV9Li2cg.js +0 -852
  323. modoboa/frontend_dist/assets/index-DzL89N4E.js +0 -1
  324. modoboa/frontend_dist/assets/layout-CHO37cA6.js +0 -1
  325. modoboa/frontend_dist/assets/permissions-mL5hLHcW.js +0 -1
  326. modoboa/frontend_dist/assets/transports-TO08iTXJ.js +0 -1
  327. {modoboa-2.4.10.data → modoboa-2.5.0.data}/scripts/modoboa-admin.py +0 -0
  328. {modoboa-2.4.10.dist-info → modoboa-2.5.0.dist-info}/WHEEL +0 -0
  329. {modoboa-2.4.10.dist-info → modoboa-2.5.0.dist-info}/entry_points.txt +0 -0
  330. {modoboa-2.4.10.dist-info → modoboa-2.5.0.dist-info}/licenses/LICENSE +0 -0
  331. {modoboa-2.4.10.dist-info → modoboa-2.5.0.dist-info}/top_level.txt +0 -0
@@ -1,7 +1,7 @@
1
1
  # SOME DESCRIPTIVE TITLE.
2
2
  # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
3
3
  # This file is distributed under the same license as the PACKAGE package.
4
- #
4
+ #
5
5
  # Translators:
6
6
  # cwatanab <chihiro.watanabe@live.jp>, 2016
7
7
  # Ian Moone, 2014
@@ -12,90 +12,86 @@ msgid ""
12
12
  msgstr ""
13
13
  "Project-Id-Version: Modoboa\n"
14
14
  "Report-Msgid-Bugs-To: \n"
15
- "POT-Creation-Date: 2025-07-27 10:50+0200\n"
15
+ "POT-Creation-Date: 2025-08-28 09:41+0200\n"
16
16
  "PO-Revision-Date: 2011-07-01 08:15+0000\n"
17
17
  "Last-Translator: INOUE Daisuke, 2025\n"
18
- "Language-Team: Japanese (Japan) (http://app.transifex.com/tonio/modoboa/"
19
- "language/ja_JP/)\n"
20
- "Language: ja_JP\n"
18
+ "Language-Team: Japanese (Japan) (http://app.transifex.com/tonio/modoboa/language/ja_JP/)\n"
21
19
  "MIME-Version: 1.0\n"
22
20
  "Content-Type: text/plain; charset=UTF-8\n"
23
21
  "Content-Transfer-Encoding: 8bit\n"
22
+ "Language: ja_JP\n"
24
23
  "Plural-Forms: nplurals=1; plural=0;\n"
25
24
 
26
25
  #: admin/api/v1/serializers.py:39
27
26
  msgid ""
28
27
  "Quota shared between mailboxes. Can be expressed in KB, MB (default) or GB. "
29
28
  "A value of 0 means no quota."
30
- msgstr ""
31
- "すべてのメールボックス全体の容量制限。KB、MB(デフォルト)または GB で指定し"
32
- "ます。値を 0 にすると容量制限しないことを意味します。"
29
+ msgstr "すべてのメールボックス全体の容量制限。KB、MB(デフォルト)または GB で指定します。値を 0 にすると容量制限しないことを意味します。"
33
30
 
34
31
  #: admin/api/v1/serializers.py:46
35
32
  msgid "Default quota in MB applied to mailboxes. A value of 0 means no quota."
36
- msgstr ""
37
- "メールボックスの容量制限のデフォルト値を MB で指定します。値を 0 にすると容量"
38
- "制限しません。"
33
+ msgstr "メールボックスの容量制限のデフォルト値を MB で指定します。値を 0 にすると容量制限しません。"
39
34
 
40
- #: admin/api/v1/serializers.py:88
35
+ #: admin/api/v1/serializers.py:94
41
36
  msgid "domain alias with this name already exists"
42
37
  msgstr "この名前のドメインエイリアスがすでに存在します"
43
38
 
44
- #: admin/api/v1/serializers.py:98
39
+ #: admin/api/v1/serializers.py:104
45
40
  msgid "No authorized MX record found for this domain"
46
41
  msgstr "このドメインの承認済み MX レコードが見つかりません"
47
42
 
48
- #: admin/api/v1/serializers.py:116
43
+ #: admin/api/v1/serializers.py:122
49
44
  msgid "Cannot be greater than domain quota"
50
45
  msgstr "ドメインの容量制限より大きくすることはできません"
51
46
 
52
- #: admin/api/v1/serializers.py:162 admin/api/v1/serializers.py:357
53
- #: admin/api/v2/serializers.py:548 admin/models/alias.py:44
47
+ #: admin/api/v1/serializers.py:168 admin/api/v1/serializers.py:364
48
+ #: admin/api/v2/serializers.py:564 admin/models/alias.py:44
54
49
  msgid "Permission denied."
55
50
  msgstr "権限がありません。"
56
51
 
57
- #: admin/api/v1/serializers.py:224 admin/api/v2/serializers.py:88
58
- #: admin/api/v2/serializers.py:470 core/api/v2/serializers.py:235
59
- #: core/api/v2/serializers.py:237 core/api/v2/serializers.py:246
52
+ #: admin/api/v1/serializers.py:231 admin/api/v2/serializers.py:90
53
+ #: admin/api/v2/serializers.py:486 core/api/v2/serializers.py:255
54
+ #: core/api/v2/serializers.py:257 core/api/v2/serializers.py:266
60
55
  #: transport/backends.py:40
61
56
  msgid "This field is required"
62
57
  msgstr "このフィールドは必須です"
63
58
 
64
- #: admin/api/v1/serializers.py:236
59
+ #: admin/api/v1/serializers.py:243
65
60
  msgid ""
66
61
  "List of administered domains (resellers and domain administrators only)."
67
62
  msgstr "管理下ドメイン一覧 ( リセラーとドメイン管理者のみ )"
68
63
 
69
- #: admin/api/v1/serializers.py:330 admin/api/v2/serializers.py:530
64
+ #: admin/api/v1/serializers.py:337 admin/api/v2/serializers.py:546
70
65
  msgid "Not allowed for this role."
71
66
  msgstr "このロールは許可されていません。"
72
67
 
73
- #: admin/api/v1/serializers.py:348
68
+ #: admin/api/v1/serializers.py:355
74
69
  msgid "Must be equal to mailbox full_address"
75
70
  msgstr "メールボックスの full_address と同じにしてください"
76
71
 
77
- #: admin/api/v1/serializers.py:390 admin/api/v2/serializers.py:582
72
+ #: admin/api/v1/serializers.py:397 admin/api/v2/serializers.py:598
78
73
  #: calendars/serializers.py:175 calendars/serializers.py:177
74
+ #: pdfcredentials/api/v2/serializers.py:91
79
75
  msgid "This field is required."
80
76
  msgstr "このフィールドは必須です。"
81
77
 
82
- #: admin/api/v1/serializers.py:402 admin/api/v2/serializers.py:599
78
+ #: admin/api/v1/serializers.py:409 admin/api/v2/serializers.py:615
83
79
  msgid "Local domain {} does not exist"
84
80
  msgstr "ローカルドメイン {} は、存在しません"
85
81
 
86
- #: admin/api/v1/serializers.py:492
82
+ #: admin/api/v1/serializers.py:499
87
83
  msgid "A list of recipient"
88
84
  msgstr "受信者一覧"
89
85
 
90
- #: admin/api/v1/serializers.py:508 admin/api/v2/viewsets.py:286
86
+ #: admin/api/v1/serializers.py:515 admin/api/v2/viewsets.py:286
91
87
  msgid "This alias already exists"
92
88
  msgstr "このエイリアスはすでに存在します"
93
89
 
94
- #: admin/api/v1/serializers.py:544
90
+ #: admin/api/v1/serializers.py:551
95
91
  msgid "You don't have access to this domain."
96
92
  msgstr "このドメインにはアクセスできません。"
97
93
 
98
- #: admin/api/v1/serializers.py:553
94
+ #: admin/api/v1/serializers.py:560
99
95
  msgid "You don't have access to this mailbox."
100
96
  msgstr "このメールボックスにアクセスできません。"
101
97
 
@@ -103,56 +99,56 @@ msgstr "このメールボックスにアクセスできません。"
103
99
  msgid "Here is your new Modoboa password: {}"
104
100
  msgstr "Modoboa の新しいパスワード : {}"
105
101
 
106
- #: admin/api/v2/serializers.py:80
102
+ #: admin/api/v2/serializers.py:82
107
103
  msgid "DKIM keys storage directory not configured"
108
104
  msgstr "DKIM キー保存ディレクトリーを設定してください"
109
105
 
110
- #: admin/api/v2/serializers.py:92
106
+ #: admin/api/v2/serializers.py:94
111
107
  msgid "This field is valid when type is relaydomain"
112
108
  msgstr "この項目はリレードメインの設定の際に有効です"
113
109
 
114
- #: admin/api/v2/serializers.py:99
110
+ #: admin/api/v2/serializers.py:101
115
111
  msgid "You can't define an unlimited quota."
116
112
  msgstr "容量制限を無制限に設定できません。"
117
113
 
118
- #: admin/api/v2/serializers.py:133
114
+ #: admin/api/v2/serializers.py:135
119
115
  #, python-format
120
116
  msgid "User '%s' already exists"
121
117
  msgstr "ユーザー「%s」はすでに存在します"
122
118
 
123
- #: admin/api/v2/serializers.py:248 admin/api/v2/serializers.py:254
119
+ #: admin/api/v2/serializers.py:250 admin/api/v2/serializers.py:256
124
120
  msgid "Must be a positive integer"
125
121
  msgstr "正の整数を入力してください"
126
122
 
127
- #: admin/api/v2/serializers.py:263
123
+ #: admin/api/v2/serializers.py:265
128
124
  msgid "openssl not found, please make sure it is installed."
129
125
  msgstr "openssl が見つかりません。インストールを確認してください。"
130
126
 
131
- #: admin/api/v2/serializers.py:266 pdfcredentials/api/v2/serializers.py:79
127
+ #: admin/api/v2/serializers.py:268 pdfcredentials/api/v2/serializers.py:84
132
128
  msgid "Directory not found."
133
129
  msgstr "ディレクトリーが見つかりません。"
134
130
 
135
- #: admin/api/v2/serializers.py:277
131
+ #: admin/api/v2/serializers.py:279
136
132
  msgid "This field only allows valid IP addresses (or networks)"
137
133
  msgstr "有効な IP アドレス ( またはネットワーク ) を入力してください"
138
134
 
139
- #: admin/api/v2/serializers.py:290
135
+ #: admin/api/v2/serializers.py:292
140
136
  msgid "Please disable imap migration before disabling this option."
141
137
  msgstr "この設定を無効にする前に、IMAP 移行を無効にしてください。"
142
138
 
143
- #: admin/api/v2/serializers.py:303
139
+ #: admin/api/v2/serializers.py:305
144
140
  msgid "Define at least one authorized network / address"
145
141
  msgstr "認証済みのネットワークかアドレスを少なくとも 1 つ以上定義してください"
146
142
 
147
- #: admin/api/v2/serializers.py:565
143
+ #: admin/api/v2/serializers.py:581
148
144
  msgid "The left part of an email address can't be more than 64 characters."
149
145
  msgstr "メールアドレスの左部分を 64 文字以下にしてください。"
150
146
 
151
- #: admin/api/v2/serializers.py:587
147
+ #: admin/api/v2/serializers.py:603
152
148
  msgid "A mailbox is required to create aliases."
153
149
  msgstr "エイリアスを作成するにはメールボックスが必要です。"
154
150
 
155
- #: admin/api/v2/serializers.py:751
151
+ #: admin/api/v2/serializers.py:772
156
152
  msgid "Unknown status"
157
153
  msgstr "不明な状態"
158
154
 
@@ -164,14 +160,6 @@ msgstr "このドメインにはアクセスできません"
164
160
  msgid "You can't delete your own domain"
165
161
  msgstr "自分自身のドメインは削除できません"
166
162
 
167
- #: admin/api/v2/viewsets.py:407
168
- msgid "No alarm ID provided"
169
- msgstr "アラート ID が指定されていません"
170
-
171
- #: admin/api/v2/viewsets.py:411
172
- msgid "Received invalid alarm id(s)"
173
- msgstr "無効なアラート ID を受信"
174
-
175
163
  #: admin/app_settings.py:19 limits/app_settings.py:38 limits/constants.py:13
176
164
  msgid "Domains"
177
165
  msgstr "ドメイン"
@@ -190,11 +178,9 @@ msgstr "有効な MX"
190
178
 
191
179
  #: admin/app_settings.py:37
192
180
  msgid ""
193
- "A list of IP or network address every MX record should match. A warning will "
194
- "be sent if a record does not respect it."
195
- msgstr ""
196
- "各 MX レコードにマッチすることを期待する IP またはネットワークアドレスのリス"
197
- "ト。レコードが期待通りでない場合は、警告を送信します。"
181
+ "A list of IP or network address every MX record should match. A warning will"
182
+ " be sent if a record does not respect it."
183
+ msgstr "各 MX レコードにマッチすることを期待する IP またはネットワークアドレスのリスト。レコードが期待通りでない場合は、警告を送信します。"
198
184
 
199
185
  #: admin/app_settings.py:47
200
186
  msgid "New domains must use authorized MX(s)"
@@ -204,9 +190,7 @@ msgstr "新しいドメインには承認済みの MX 利用を強制"
204
190
  msgid ""
205
191
  "Prevent the creation of a new domain if its MX record does not use one of "
206
192
  "the defined addresses."
207
- msgstr ""
208
- "MX レコードが定義したアドレスのいずれかを使用していない場合、新しいドメインの"
209
- "作成を防止します。"
193
+ msgstr "MX レコードが定義したアドレスのいずれかを使用していない場合、新しいドメインの作成を防止します。"
210
194
 
211
195
  #: admin/app_settings.py:59
212
196
  msgid "Enable IPV6 checks"
@@ -230,9 +214,7 @@ msgstr "DKIM チェック有効"
230
214
 
231
215
  #: admin/app_settings.py:80
232
216
  msgid "Check if every domain with DKIM signin enabled has a valid DNS record"
233
- msgstr ""
234
- "各 DKIM 署名のあるすべてのドメインに有効な DNS レコードがあるかをチェックしま"
235
- "す"
217
+ msgstr "各 DKIM 署名のあるすべてのドメインに有効な DNS レコードがあるかをチェックします"
236
218
 
237
219
  #: admin/app_settings.py:88
238
220
  msgid "Enable DMARC checks"
@@ -264,9 +246,7 @@ msgstr "カスタム DNS サーバー"
264
246
 
265
247
  #: admin/app_settings.py:118
266
248
  msgid "Use a custom DNS server instead of local server configuration"
267
- msgstr ""
268
- "ローカルサーバーで設定された DNS サーバーではなく、カスタム DNS サーバーを利"
269
- "用します"
249
+ msgstr "ローカルサーバーで設定された DNS サーバーではなく、カスタム DNS サーバーを利用します"
270
250
 
271
251
  #: admin/app_settings.py:126
272
252
  msgid "DKIM keys storage directory"
@@ -277,9 +257,7 @@ msgid ""
277
257
  "Absolute path of the directory where DKIM private keys will be stored. Make "
278
258
  "sure this directory belongs to root user and is not readable by the outside "
279
259
  "world."
280
- msgstr ""
281
- "DKIM プライベートキーを保存するディレクトリーの絶対パス。このディレクトリー"
282
- "が root ユーザー所有で、外の世界からは読めないことを確認してください。"
260
+ msgstr "DKIM プライベートキーを保存するディレクトリーの絶対パス。このディレクトリーが root ユーザー所有で、外の世界からは読めないことを確認してください。"
283
261
 
284
262
  #: admin/app_settings.py:137
285
263
  msgid "Default DKIM key length"
@@ -297,9 +275,7 @@ msgstr "ドメイン容量制限のデフォルト"
297
275
  msgid ""
298
276
  "Default quota (in MB) applied to freshly created domains with no value "
299
277
  "specified. A value of 0 means no quota."
300
- msgstr ""
301
- "特に値をせずに新たにドメインを作成する際の容量制限のデフォルト値 ( MB ) 。値"
302
- "を 0 にすると容量制限しません。"
278
+ msgstr "特に値をせずに新たにドメインを作成する際の容量制限のデフォルト値 ( MB ) 。値を 0 にすると容量制限しません。"
303
279
 
304
280
  #: admin/app_settings.py:156
305
281
  msgid "Default domain sending limit"
@@ -309,9 +285,7 @@ msgstr "ドメイン送信通数制限のデフォルト"
309
285
  msgid ""
310
286
  "Number of messages freshly created domains will be allowed to send per day. "
311
287
  "Leave empty for no limit."
312
- msgstr ""
313
- "新たにドメインを作成する際、1 日間に送信可能なメッセージ数。空にすると制限し"
314
- "ません。"
288
+ msgstr "新たにドメインを作成する際、1 日間に送信可能なメッセージ数。空にすると制限しません。"
315
289
 
316
290
  #: admin/app_settings.py:170 limits/app_settings.py:61
317
291
  #: limits/app_settings.py:135 limits/constants.py:31 limits/constants.py:84
@@ -326,9 +300,7 @@ msgstr "ファイルシステムのメールボックスも操作"
326
300
  msgid ""
327
301
  "Rename or remove mailboxes on the filesystem when they get renamed or "
328
302
  "removed within Modoboa"
329
- msgstr ""
330
- "Modoboa でメールボックスを変名・削除すると、ファイルシステム上も変名・削除す"
331
- "る"
303
+ msgstr "Modoboa でメールボックスを変名・削除すると、ファイルシステム上も変名・削除する"
332
304
 
333
305
  #: admin/app_settings.py:186 admin/models/domain.py:36
334
306
  msgid "Default mailbox quota"
@@ -338,9 +310,7 @@ msgstr "メールボックス容量制限のデフォルト"
338
310
  msgid ""
339
311
  "Default mailbox quota (in MB) applied to freshly created domains with no "
340
312
  "value specified. A value of 0 means no quota."
341
- msgstr ""
342
- "特に値をせずに新たにドメインを作成する際の、メールボックスの容量制限のデフォ"
343
- "ルト値 ( MB ) 。値を 0 にすると容量制限しません。"
313
+ msgstr "特に値をせずに新たにドメインを作成する際の、メールボックスの容量制限のデフォルト値 ( MB ) 。値を 0 にすると容量制限しません。"
344
314
 
345
315
  #: admin/app_settings.py:197
346
316
  msgid "Default mailbox sending limit"
@@ -350,9 +320,7 @@ msgstr "メールボックス送信通数制限のデフォルト"
350
320
  msgid ""
351
321
  "Number of messages freshly created mailboxes will be allowed to send per "
352
322
  "day. Leave empty for no limit."
353
- msgstr ""
354
- "新たにメールボックスを作成する際に設定する、1 日に送信できるメッセージ数。空"
355
- "にすると制限しません。"
323
+ msgstr "新たにメールボックスを作成する際に設定する、1 日に送信できるメッセージ数。空にすると制限しません。"
356
324
 
357
325
  #: admin/app_settings.py:207
358
326
  msgid "Automatic account removal"
@@ -367,7 +335,8 @@ msgid "Automatic domain/mailbox creation"
367
335
  msgstr "自動ドメイン・メールボックス作成"
368
336
 
369
337
  #: admin/app_settings.py:221
370
- msgid "Create a domain and a mailbox when an account is automatically created."
338
+ msgid ""
339
+ "Create a domain and a mailbox when an account is automatically created."
371
340
  msgstr "アカウントを作成するとドメインとメールボックスも自動で作成します。"
372
341
 
373
342
  #: admin/app_settings.py:230
@@ -376,10 +345,9 @@ msgstr "メールボックスの変名でエイリアスを作成"
376
345
 
377
346
  #: admin/app_settings.py:233
378
347
  msgid "Create an alias using the old address when a mailbox is renamed."
379
- msgstr ""
380
- "メールボックスの名前を変更する際、古いアドレスをエイリアスとして作成します。"
348
+ msgstr "メールボックスの名前を変更する際、古いアドレスをエイリアスとして作成します。"
381
349
 
382
- #: admin/app_settings.py:287 core/api/v2/viewsets.py:162
350
+ #: admin/app_settings.py:287 core/api/v2/viewsets.py:174
383
351
  msgid "Administration"
384
352
  msgstr "管理"
385
353
 
@@ -408,7 +376,7 @@ msgstr "ドメインエイリアス"
408
376
  msgid "Account import failed (%s): domain does not exist"
409
377
  msgstr "アカウントインポート失敗 ( %s ) : ドメインがありません"
410
378
 
411
- #: admin/handlers.py:242 admin/models/mailbox.py:340
379
+ #: admin/handlers.py:242 admin/models/mailbox.py:342
412
380
  msgid "Mailbox {} already exists"
413
381
  msgstr "{} メールボックスはすでに存在します"
414
382
 
@@ -443,8 +411,7 @@ msgstr "稼働しているサーバーが見つかりません"
443
411
  #: admin/lib.py:232 admin/tests/test_mx.py:160
444
412
  #, python-format
445
413
  msgid "DNS resolution timeout, unable to query %s at the moment"
446
- msgstr ""
447
- "DNS 名前解決でタイムアウトが発生し、今のところ %s の問い合わせはできません"
414
+ msgstr "DNS 名前解決でタイムアウトが発生し、今のところ %s の問い合わせはできません"
448
415
 
449
416
  #: admin/lib.py:236
450
417
  msgid "DNS name is too long: {}"
@@ -467,8 +434,7 @@ msgstr "%d 個のオブジェクトをインポートしました"
467
434
 
468
435
  #: admin/management/commands/subcommands/_import.py:97
469
436
  msgid "CSV file is not encoded in UTF-8, attempting to guess encoding"
470
- msgstr ""
471
- "CSV ファイルが UTF-8 でエンコードされていません。エンコードの推測を試みます"
437
+ msgstr "CSV ファイルが UTF-8 でエンコードされていません。エンコードの推測を試みます"
472
438
 
473
439
  #: admin/management/commands/subcommands/_import.py:112
474
440
  #, python-format
@@ -484,9 +450,7 @@ msgstr "%(encoding)s エンコードでは CSV ファイルをデコードでき
484
450
  msgid ""
485
451
  "DKIM path non-writable (either a permission issue or the directory does not "
486
452
  "exist)"
487
- msgstr ""
488
- "DKIM パスが書き込みできません ( 権限問題か、ディレクトリーが存在しないかのい"
489
- "ずれかです )"
453
+ msgstr "DKIM パスが書き込みできません ( 権限問題か、ディレクトリーが存在しないかのいずれかです )"
490
454
 
491
455
  #: admin/management/commands/subcommands/_manage_dkim_keys.py:52
492
456
  msgid "Failed to generate DKIM private key"
@@ -630,9 +594,7 @@ msgstr "{} : ドメインの各メールボックスの容量制限の値が無
630
594
 
631
595
  #: admin/models/domain.py:350
632
596
  msgid "{}: default mailbox quota cannot be greater than domain quota"
633
- msgstr ""
634
- "{} : 各メールボックスの容量制限の値は、ドメインの容量制限の値より小さくしてく"
635
- "ださい"
597
+ msgstr "{} : 各メールボックスの容量制限の値は、ドメインの容量制限の値より小さくしてください"
636
598
 
637
599
  #: admin/models/domain_alias.py:36
638
600
  msgid "The alias name"
@@ -672,7 +634,7 @@ msgstr "容量制限の設定が必要です"
672
634
  msgid "{}: domain quota exceeded"
673
635
  msgstr "{} : ドメインの容量制限を超過"
674
636
 
675
- #: admin/models/mailbox.py:308
637
+ #: admin/models/mailbox.py:310
676
638
  msgid "Domain does not exist"
677
639
  msgstr "ドメインがありません"
678
640
 
@@ -688,10 +650,7 @@ msgid ""
688
650
  "The domain's reputation will be affected and there is a chance that emails "
689
651
  "coming from it are considered as spam. You should contact those providers "
690
652
  "and ask them to unlist detected IP address(es)."
691
- msgstr ""
692
- "ドメインの格付けが影響を与え、このドメインからのメールが SPAM とみなされる可"
693
- "能性があります。DNSBL 提供元に連絡し、検出された IP アドレスのリストからの削"
694
- "除を依頼する必要があります。"
653
+ msgstr "ドメインの格付けが影響を与え、このドメインからのメールが SPAM とみなされる可能性があります。DNSBL 提供元に連絡し、検出された IP アドレスのリストからの削除を依頼する必要があります。"
695
654
 
696
655
  #: admin/templates/admin/notifications/domain_invalid_mx.html:3
697
656
  #, python-format
@@ -754,9 +713,7 @@ msgstr "自動応答メッセージを自動生成する際の件名のデフォ
754
713
  msgid ""
755
714
  "Default content used when an auto-reply message is created automatically. "
756
715
  "The '%(name)s' macro will be replaced by the user's full name."
757
- msgstr ""
758
- "自動応答メッセージを自動生成する際の本文のデフォルト値。「%(name)s」マクロは"
759
- "ユーザーのフルネームに置き換えます。"
716
+ msgstr "自動応答メッセージを自動生成する際の本文のデフォルト値。「%(name)s」マクロはユーザーのフルネームに置き換えます。"
760
717
 
761
718
  #: autoreply/apps.py:15
762
719
  msgid "Automatic replies"
@@ -813,8 +770,7 @@ msgstr "カレンダー管理を許可"
813
770
 
814
771
  #: calendars/app_settings.py:48
815
772
  msgid "Allow domain administrators to manage user calendars (read and write)"
816
- msgstr ""
817
- "ドメイン管理者にユーザーカレンダーの管理 ( 読み取り・書き込み ) を許可します"
773
+ msgstr "ドメイン管理者にユーザーカレンダーの管理 ( 読み取り・書き込み ) を許可します"
818
774
 
819
775
  #: calendars/app_settings.py:60 core/app_settings.py:676
820
776
  #: rspamd/app_settings.py:45
@@ -828,10 +784,9 @@ msgstr "ICS ファイルの最大サイズ"
828
784
  #: calendars/app_settings.py:68
829
785
  msgid ""
830
786
  "Maximum size in bytes of imported ICS files (or KB, MB, GB if specified)"
831
- msgstr ""
832
- "インポートする ICS ファイルの最大サイズをバイト ( または KB、MB、GB ) で指定"
787
+ msgstr "インポートする ICS ファイルの最大サイズをバイト ( または KB、MB、GB ) で指定"
833
788
 
834
- #: calendars/app_settings.py:89 core/api/v2/viewsets.py:172
789
+ #: calendars/app_settings.py:89 core/api/v2/viewsets.py:195
835
790
  msgid "Calendars"
836
791
  msgstr "カレンダー"
837
792
 
@@ -855,9 +810,7 @@ msgstr "CardDAV でアドレス帳を同期します"
855
810
  msgid ""
856
811
  "Choose to synchronize or not your address book using CardDAV. You will be "
857
812
  "able to access your contacts from the outside."
858
- msgstr ""
859
- "CardDAV を使ってアドレス帳の同期を行うか・行わないかを選んでください。同期す"
860
- "ると外からアドレス帳にアクセスできます。"
813
+ msgstr "CardDAV を使ってアドレス帳の同期を行うか・行わないかを選んでください。同期すると外からアドレス帳にアクセスできます。"
861
814
 
862
815
  #: contacts/app_settings.py:29
863
816
  msgid "Synchronization frequency"
@@ -867,7 +820,7 @@ msgstr "同期する頻度"
867
820
  msgid "Interval in seconds between 2 synchronization requests"
868
821
  msgstr "同期要求の間隔 ( 秒 )"
869
822
 
870
- #: contacts/app_settings.py:51 core/api/v2/viewsets.py:179
823
+ #: contacts/app_settings.py:51 core/api/v2/viewsets.py:185
871
824
  msgid "Contacts"
872
825
  msgstr "連絡先"
873
826
 
@@ -915,12 +868,12 @@ msgstr "PIN コードが無効です"
915
868
  msgid "2FA is already enabled"
916
869
  msgstr "2FA はすでに有効です"
917
870
 
918
- #: core/api/v1/serializers.py:87
871
+ #: core/api/v1/serializers.py:86
919
872
  #, python-format
920
- msgid "Failed TFA settings editing attempt from '%s' as user '%s'"
921
- msgstr "「%s」から「%s」ユーザーの 2FA 設定変更は失敗"
873
+ msgid "Failed TFA settings editing attempt from '%(addr)s' as user '%(user)s'"
874
+ msgstr "「%(addr)s」から「%(user)s」ユーザーの 2FA 設定変更は失敗"
922
875
 
923
- #: core/api/v1/serializers.py:91 core/api/v2/serializers.py:425
876
+ #: core/api/v1/serializers.py:91 core/api/v2/serializers.py:445
924
877
  msgid "Invalid password"
925
878
  msgstr "無効なパスワード"
926
879
 
@@ -932,40 +885,41 @@ msgstr "2 要素認証が無効"
932
885
  msgid "Local"
933
886
  msgstr "ローカル"
934
887
 
935
- #: core/api/v2/serializers.py:175 core/app_settings.py:17
888
+ #: core/api/v2/serializers.py:194 core/app_settings.py:17
936
889
  msgid "User profile"
937
890
  msgstr "ユーザープロフィール"
938
891
 
939
- #: core/api/v2/serializers.py:194 core/api/v2/serializers.py:201
940
- #: core/api/v2/serializers.py:208
892
+ #: core/api/v2/serializers.py:213 core/api/v2/serializers.py:221
893
+ #: core/api/v2/serializers.py:228
941
894
  msgid "Invalid syntax"
942
895
  msgstr "不正な構文"
943
896
 
944
- #: core/api/v2/serializers.py:213
897
+ #: core/api/v2/serializers.py:233
945
898
  msgid "Invalid rounds number"
946
899
  msgstr "不正なラウンド数"
947
900
 
948
- #: core/api/v2/serializers.py:413 core/forms.py:81
901
+ #: core/api/v2/serializers.py:433 core/forms.py:81
949
902
  msgid "This code is invalid"
950
903
  msgstr "このコードは無効です"
951
904
 
952
- #: core/api/v2/serializers.py:483 core/views/auth.py:194 core/views/auth.py:247
905
+ #: core/api/v2/serializers.py:503 core/views/auth.py:194
906
+ #: core/views/auth.py:247
953
907
  msgid "Please use the following code to recover your Modoboa password: {}"
954
908
  msgstr "Modoboa のパスワード再設定で利用するコード : {}"
955
909
 
956
- #: core/api/v2/viewsets.py:164
910
+ #: core/api/v2/viewsets.py:176
957
911
  msgid "Administration console"
958
912
  msgstr "管理コンソール"
959
913
 
960
- #: core/api/v2/viewsets.py:174
961
- msgid "Calendar"
962
- msgstr "カレンダー"
963
-
964
- #: core/api/v2/viewsets.py:181
914
+ #: core/api/v2/viewsets.py:187
965
915
  msgid "Address book"
966
916
  msgstr "アドレス帳"
967
917
 
968
- #: core/api/v2/viewsets.py:186 core/api/v2/viewsets.py:188
918
+ #: core/api/v2/viewsets.py:197
919
+ msgid "Calendar"
920
+ msgstr "カレンダー"
921
+
922
+ #: core/api/v2/viewsets.py:205 core/api/v2/viewsets.py:207
969
923
  #: webmail/app_settings.py:258 webmail/app_settings.py:265
970
924
  msgid "Webmail"
971
925
  msgstr "Web メール"
@@ -998,9 +952,7 @@ msgstr "ラウンド"
998
952
  msgid ""
999
953
  "Number of rounds to use (only used by sha256crypt and sha512crypt). Must be "
1000
954
  "between 1000 and 999999999, inclusive."
1001
- msgstr ""
1002
- "ラウンド数 ( sha256crypt と sha512crypt のみ使用 ) 。1000 ~ 999999999 の間で"
1003
- "設定してください。"
955
+ msgstr "ラウンド数 ( sha256crypt と sha512crypt のみ使用 ) 。1000 ~ 999999999 の間で設定してください。"
1004
956
 
1005
957
  #: core/app_settings.py:73
1006
958
  msgid "Update password scheme at login"
@@ -1008,9 +960,7 @@ msgstr "ログイン時にパスワード スキーマを更新"
1008
960
 
1009
961
  #: core/app_settings.py:76
1010
962
  msgid "Update user password at login to use the default password scheme"
1011
- msgstr ""
1012
- "デフォルトのパスワード スキーマに切り替えるため、ログイン時にパスワードを更新"
1013
- "します"
963
+ msgstr "デフォルトのパスワード スキーマに切り替えるため、ログイン時にパスワードを更新します"
1014
964
 
1015
965
  #: core/app_settings.py:84
1016
966
  msgid "Default password"
@@ -1030,13 +980,11 @@ msgstr "ランダムで生成するパスワードの長さ。"
1030
980
 
1031
981
  #: core/app_settings.py:103
1032
982
  msgid "Allow special characters for random password"
1033
- msgstr ""
983
+ msgstr "ランダムパスワードに特殊文字を許可"
1034
984
 
1035
985
  #: core/app_settings.py:106
1036
- #, fuzzy
1037
- #| msgid "Length of randomly generated passwords."
1038
986
  msgid "Enable special characters in randomly generated passwords."
1039
- msgstr "ランダムで生成するパスワードの長さ。"
987
+ msgstr "ランダムに生成するパスワードに特殊文字を含めます"
1040
988
 
1041
989
  #: core/app_settings.py:114
1042
990
  msgid "Update password service URL"
@@ -1047,10 +995,7 @@ msgid ""
1047
995
  "The URL of an external page where users will be able to update their "
1048
996
  "password. It applies only to non local users, ie. those automatically "
1049
997
  "created after a successful external authentication (LDAP, SMTP)."
1050
- msgstr ""
1051
- "ユーザがパスワードを更新するための外部ページの URL。ローカルユーザー以外の"
1052
- "ユーザー、つまり外部認証 ( LDAP、SMTP ) が成功した後に自動作成されるユーザに"
1053
- "のみ適用されます。"
998
+ msgstr "ユーザがパスワードを更新するための外部ページの URL。ローカルユーザー以外のユーザー、つまり外部認証 ( LDAP、SMTP ) が成功した後に自動作成されるユーザにのみ適用されます。"
1054
999
 
1055
1000
  #: core/app_settings.py:126
1056
1001
  msgid "Password recovery announcement"
@@ -1107,8 +1052,7 @@ msgstr "セカンダリーサーバー ( フォールバック ) を有効にす
1107
1052
  #: core/app_settings.py:191
1108
1053
  msgid ""
1109
1054
  "Enable a secondary LDAP server which will be used if the primary one fails"
1110
- msgstr ""
1111
- "セカンダリー LDAP サーバー。プライマリーサーバーで失敗した際に利用します。"
1055
+ msgstr "セカンダリー LDAP サーバー。プライマリーサーバーで失敗した際に利用します。"
1112
1056
 
1113
1057
  #: core/app_settings.py:199
1114
1058
  msgid "Secondary server address"
@@ -1149,11 +1093,9 @@ msgstr "管理者グループ"
1149
1093
 
1150
1094
  #: core/app_settings.py:239
1151
1095
  msgid ""
1152
- "Members of those LDAP Posix groups will be created as domain administrators. "
1153
- "Use ';' characters to separate groups."
1154
- msgstr ""
1155
- "ここで指定する LDAP の Posix グループのメンバーをドメイン管理者として作成しま"
1156
- "す。複数のグループを指定する際は「;」で区切ってください。"
1096
+ "Members of those LDAP Posix groups will be created as domain administrators."
1097
+ " Use ';' characters to separate groups."
1098
+ msgstr "ここで指定する LDAP の Posix グループのメンバーをドメイン管理者として作成します。複数のグループを指定する際は「;」で区切ってください。"
1157
1099
 
1158
1100
  #: core/app_settings.py:248
1159
1101
  msgid "Group type"
@@ -1199,8 +1141,7 @@ msgstr "バインド DN"
1199
1141
  msgid ""
1200
1142
  "The distinguished name to use when binding to the LDAP server. Leave empty "
1201
1143
  "for an anonymous bind"
1202
- msgstr ""
1203
- "LDAP サーバーにバインドする際の識別名。空のままにすると匿名バインドです。"
1144
+ msgstr "LDAP サーバーにバインドする際の識別名。空のままにすると匿名バインドです。"
1204
1145
 
1205
1146
  #: core/app_settings.py:305 core/app_settings.py:367
1206
1147
  msgid "Bind password"
@@ -1226,9 +1167,7 @@ msgstr "検索フィルター"
1226
1167
  msgid ""
1227
1168
  "An optional filter string (e.g. '(objectClass=person)'). In order to be "
1228
1169
  "valid, it must be enclosed in parentheses."
1229
- msgstr ""
1230
- "オプションのフィルタ文字列 ( 例 : (objectClass=person) )。「()」カッコで囲ま"
1231
- "ないと有効になりません。"
1170
+ msgstr "オプションのフィルタ文字列 ( 例 : (objectClass=person) )。「()」カッコで囲まないと有効になりません。"
1232
1171
 
1233
1172
  #: core/app_settings.py:339
1234
1173
  msgid "User DN template"
@@ -1239,9 +1178,7 @@ msgstr "ユーザー DN テンプレート"
1239
1178
  msgid ""
1240
1179
  "The template used to construct a user's DN. It should contain one "
1241
1180
  "placeholder (ie. %(user)s)"
1242
- msgstr ""
1243
- "ユーザー DN を作成する際のテンプレート。1 つのプレースホルダー ( 例 : "
1244
- "%(user)s ) を含めてください。"
1181
+ msgstr "ユーザー DN を作成する際のテンプレート。1 つのプレースホルダー ( 例 : %(user)s ) を含めてください。"
1245
1182
 
1246
1183
  #: core/app_settings.py:350
1247
1184
  msgid "LDAP synchronization settings"
@@ -1264,9 +1201,7 @@ msgstr "ローカルアカウントを削除するとリモート LDAP のアカ
1264
1201
  msgid ""
1265
1202
  "Delete remote LDAP account when local account is deleted, otherwise it will "
1266
1203
  "be disabled."
1267
- msgstr ""
1268
- "ローカルアカウントを削除すると、リモートLDAPアカウントも削除、または無効にし"
1269
- "ます。"
1204
+ msgstr "ローカルアカウントを削除すると、リモートLDAPアカウントも削除、または無効にします。"
1270
1205
 
1271
1206
  #: core/app_settings.py:401
1272
1207
  msgid "Account DN template"
@@ -1277,9 +1212,7 @@ msgstr "アカウント DN テンプレート"
1277
1212
  msgid ""
1278
1213
  "The template used to construct an account's DN. It should contain one "
1279
1214
  "placeholder (ie. %(user)s)"
1280
- msgstr ""
1281
- "アカウント DN を作成する際のテンプレート。1 つのプレースホルダー ( 例 : "
1282
- "%(user)s ) を含めてください。"
1215
+ msgstr "アカウント DN を作成する際のテンプレート。1 つのプレースホルダー ( 例 : %(user)s ) を含めてください。"
1283
1216
 
1284
1217
  #: core/app_settings.py:412
1285
1218
  msgid "Enable import from LDAP"
@@ -1287,8 +1220,7 @@ msgstr "LDAP からのインポートを有効"
1287
1220
 
1288
1221
  #: core/app_settings.py:414
1289
1222
  msgid "Enable account synchronization from LDAP directory to local database"
1290
- msgstr ""
1291
- "LDAP ディレクトリーからローカル データベースへのアカウント同期を有効にします"
1223
+ msgstr "LDAP ディレクトリーからローカル データベースへのアカウント同期を有効にします"
1292
1224
 
1293
1225
  #: core/app_settings.py:444
1294
1226
  msgid "Username attribute"
@@ -1320,17 +1252,12 @@ msgid "Dashboard"
1320
1252
  msgstr "ダッシュボード"
1321
1253
 
1322
1254
  #: core/app_settings.py:486
1323
- #, fuzzy
1324
- #| msgid "Custom message"
1325
1255
  msgid "Custom welcome message"
1326
- msgstr "カスタムメッセージ"
1256
+ msgstr "ようこそメッセージのカスタマイズ"
1327
1257
 
1328
1258
  #: core/app_settings.py:488
1329
- #, fuzzy
1330
- #| msgid ""
1331
- #| "A temporary message that will be displayed on the reset password page."
1332
1259
  msgid "A welcome message that will be displayed instead the default one"
1333
- msgstr "パスワード再設定ページに表示する一時的なメッセージ"
1260
+ msgstr "ようこそメッセージをデフォルトのものから変更します"
1334
1261
 
1335
1262
  #: core/app_settings.py:495
1336
1263
  msgid "Custom RSS feed"
@@ -1341,16 +1268,12 @@ msgid "Display custom RSS feed to resellers and domain administrators"
1341
1268
  msgstr "リセラーとドメイン管理者に表示する独自 RSS フィードを設定します。"
1342
1269
 
1343
1270
  #: core/app_settings.py:506
1344
- #, fuzzy
1345
- #| msgid "Display custom RSS feed to resellers and domain administrators"
1346
1271
  msgid "Display custom RSS feed to super admins"
1347
- msgstr "リセラーとドメイン管理者に表示する独自 RSS フィードを設定します。"
1272
+ msgstr "スーパー管理者にカスタマイズした RSS フィードを表示します"
1348
1273
 
1349
1274
  #: core/app_settings.py:509
1350
- #, fuzzy
1351
- #| msgid "Display custom RSS feed to resellers and domain administrators"
1352
1275
  msgid "Display custom RSS feed also to super administrators"
1353
- msgstr "リセラーとドメイン管理者に表示する独自 RSS フィードを設定します。"
1276
+ msgstr "カスタマイズした RSS フィードをスーパー管理者にも表示します"
1354
1277
 
1355
1278
  #: core/app_settings.py:517
1356
1279
  msgid "Hide features widget"
@@ -1362,49 +1285,47 @@ msgstr "リセラーとドメイン管理者の機能ウィジェットを非表
1362
1285
 
1363
1286
  #: core/app_settings.py:531
1364
1287
  msgid "Theme"
1365
- msgstr ""
1288
+ msgstr "テーマ"
1366
1289
 
1367
1290
  #: core/app_settings.py:537
1368
1291
  msgid "Primary theme color"
1369
- msgstr ""
1292
+ msgstr "主要なテーマカラー"
1370
1293
 
1371
1294
  #: core/app_settings.py:539
1372
1295
  msgid ""
1373
1296
  "Primary color of the theme (hexadecimal code), used as the background color "
1374
1297
  "of the left menu for example"
1375
- msgstr ""
1298
+ msgstr "テーマの主要な色 ( 16進数コードで指定 )で、左メニューの背景色などに使います。"
1376
1299
 
1377
1300
  #: core/app_settings.py:548
1378
1301
  msgid "Primary theme color (lighter version)"
1379
- msgstr ""
1302
+ msgstr "主要なテーマカラー ( ライトバージョン )"
1380
1303
 
1381
1304
  #: core/app_settings.py:551 core/app_settings.py:563
1382
1305
  msgid "Primary color of the theme (hexadecimal code)"
1383
- msgstr ""
1306
+ msgstr "主要なテーマカラー ( 16進数カード )"
1384
1307
 
1385
1308
  #: core/app_settings.py:560
1386
1309
  msgid "Primary theme color (darker version)"
1387
- msgstr ""
1310
+ msgstr "主要なテーマカラー ( ダークバージョン )"
1388
1311
 
1389
1312
  #: core/app_settings.py:571
1390
- #, fuzzy
1391
- #| msgid "Secondary email"
1392
1313
  msgid "Secondary theme color"
1393
- msgstr "別のメールアドレス"
1314
+ msgstr "サブのテーマカラー"
1394
1315
 
1395
1316
  #: core/app_settings.py:573
1396
1317
  msgid ""
1397
1318
  "Secondary color of the theme (hexadecimal code), used as the background "
1398
1319
  "color of some buttons for example"
1399
- msgstr ""
1320
+ msgstr "テーマのサブの色 ( 16進数コードで指定 ) で、いくつかのボタンの背景色などに使います。"
1400
1321
 
1401
1322
  #: core/app_settings.py:581
1402
1323
  msgid "Labels theme color"
1403
- msgstr ""
1324
+ msgstr "ラベルテーマカラー"
1404
1325
 
1405
1326
  #: core/app_settings.py:583
1406
1327
  msgid "Theme color for labels (hexadecimal code)"
1407
- msgstr ""
1328
+ msgstr "ラベルのテーマカラー ( 16進数コード )"
1408
1329
 
1409
1330
  #: core/app_settings.py:595
1410
1331
  msgid "Notifications"
@@ -1464,11 +1385,9 @@ msgstr "非利用アカウント追跡を有効に"
1464
1385
 
1465
1386
  #: core/app_settings.py:686
1466
1387
  msgid ""
1467
- "Allow the administrator to set a threshold (in days) beyond which an account "
1468
- "is considered inactive if the user hasn't logged in"
1469
- msgstr ""
1470
- "ユーザーがログインしておらず、アカウント非利用とみなす期間 ( 日 ) を設定する"
1471
- "ことを管理者に許可します"
1388
+ "Allow the administrator to set a threshold (in days) beyond which an account"
1389
+ " is considered inactive if the user hasn't logged in"
1390
+ msgstr "ユーザーがログインしておらず、アカウント非利用とみなす期間 ( 日 ) を設定することを管理者に許可します"
1472
1391
 
1473
1392
  #: core/app_settings.py:695
1474
1393
  msgid "Inactive account threshold"
@@ -1476,11 +1395,9 @@ msgstr "アカウントを非利用とみなすログイン間隔"
1476
1395
 
1477
1396
  #: core/app_settings.py:698
1478
1397
  msgid ""
1479
- "An account with a last login date greater than this threshold (in days) will "
1480
- "be considered as inactive"
1481
- msgstr ""
1482
- "最終ログイン日が、このしきい値 ( 日数 ) よりも以前になったアカウントを非利用"
1483
- "とみなします"
1398
+ "An account with a last login date greater than this threshold (in days) will"
1399
+ " be considered as inactive"
1400
+ msgstr "最終ログイン日が、このしきい値 ( 日数 ) よりも以前になったアカウントを非利用とみなします"
1484
1401
 
1485
1402
  #: core/app_settings.py:707
1486
1403
  msgid "Top notifications check interval"
@@ -1498,19 +1415,27 @@ msgstr "最大ログ記録期間"
1498
1415
  msgid "The maximum age in days of a log record"
1499
1416
  msgstr "ログを記録する日数の最大期間"
1500
1417
 
1501
- #: core/app_settings.py:726
1418
+ #: core/app_settings.py:727
1419
+ msgid "Retention time in message history"
1420
+ msgstr "メッセージ履歴の保持期間"
1421
+
1422
+ #: core/app_settings.py:730
1423
+ msgid "Retention time (in days) of a message in the message history section"
1424
+ msgstr "メッセージ履歴セクションにメッセージを保持する期間 ( 単位 : 日 )"
1425
+
1426
+ #: core/app_settings.py:737
1502
1427
  msgid "Items per page"
1503
1428
  msgstr "ページあたりの件数"
1504
1429
 
1505
- #: core/app_settings.py:728
1430
+ #: core/app_settings.py:739
1506
1431
  msgid "Number of displayed items per page"
1507
1432
  msgstr "ページあたりに表示される項目の数"
1508
1433
 
1509
- #: core/app_settings.py:735
1434
+ #: core/app_settings.py:746
1510
1435
  msgid "Default top redirection"
1511
1436
  msgstr "デフォルトのリダイレクト先"
1512
1437
 
1513
- #: core/app_settings.py:737
1438
+ #: core/app_settings.py:748
1514
1439
  msgid "The default redirection used when no application is specified"
1515
1440
  msgstr "アプリケーションが未指定の際、デフォルトとなるリダイレクト先"
1516
1441
 
@@ -1519,9 +1444,7 @@ msgid ""
1519
1444
  "You have USE_TZ set to False, this may result in issues during transitions "
1520
1445
  "between summer/winter time (ie the same local time occuring twice due to "
1521
1446
  "clock change)."
1522
- msgstr ""
1523
- "USE_TZ を False にすると、夏時間・冬時間の移行の際に問題となる可能性がありま"
1524
- "す ( 例 : 時計が変更されることで、同じローカル時刻が 2 度発生します )。"
1447
+ msgstr "USE_TZ を False にすると、夏時間・冬時間の移行の際に問題となる可能性があります ( 例 : 時計が変更されることで、同じローカル時刻が 2 度発生します )。"
1525
1448
 
1526
1449
  #: core/checks.py:19
1527
1450
  msgid "Set `USE_TZ = True` in settings.py"
@@ -1539,25 +1462,27 @@ msgstr "パスワード スキーマをより強力なものに更新してく
1539
1462
  msgid ""
1540
1463
  "Oauth2 application for dovecot has not been found. Webmail and some other "
1541
1464
  "features won't be available."
1542
- msgstr ""
1465
+ msgstr "dovect 用の OAuth2 アプリが見つかりません。Web メールなど、いくつかの機能が使えません。"
1543
1466
 
1544
1467
  #: core/checks.py:34
1545
1468
  msgid ""
1546
- "Visit : https://modoboa.readthedocs.io/en/latest/manual_installation/dovecot."
1547
- "html#dovecot-oauth2"
1548
- msgstr ""
1469
+ "Visit : "
1470
+ "https://modoboa.readthedocs.io/en/latest/manual_installation/dovecot.html#dovecot-"
1471
+ "oauth2"
1472
+ msgstr "以下、参照 : https://modoboa.readthedocs.io/en/latest/manual_installation/dovecot.html#dovecot-oauth2"
1549
1473
 
1550
1474
  #: core/checks.py:41
1551
1475
  msgid ""
1552
1476
  "Oauth2 application for radicale has not been found. Calendar and some other "
1553
1477
  "features won't be available."
1554
- msgstr ""
1478
+ msgstr "radicale 用の OAuth2 アプリが見つかりません。カレンダーなど、いくつかの機能が使えません。"
1555
1479
 
1556
1480
  #: core/checks.py:45
1557
1481
  msgid ""
1558
- "Visit : https://modoboa.readthedocs.io/en/latest/manual_installation/"
1559
- "radicale.html#radicale-oauth2"
1560
- msgstr ""
1482
+ "Visit : "
1483
+ "https://modoboa.readthedocs.io/en/latest/manual_installation/radicale.html#radicale-"
1484
+ "oauth2"
1485
+ msgstr "以下、参照 : https://modoboa.readthedocs.io/en/latest/manual_installation/radicale.html#radicale-oauth2"
1561
1486
 
1562
1487
  #: core/constants.py:6
1563
1488
  msgid "Simple user"
@@ -1785,9 +1710,7 @@ msgid ""
1785
1710
  msgid_plural ""
1786
1711
  "\n"
1787
1712
  " The following updates are available:\n"
1788
- msgstr[0] ""
1789
- "\n"
1790
- " 以下の更新が用意されています :\n"
1713
+ msgstr[0] "\n 以下の更新が用意されています :\n"
1791
1714
 
1792
1715
  #: core/utils.py:43
1793
1716
  msgid "The core part of Modoboa"
@@ -1806,9 +1729,7 @@ msgstr "パスワード スキーマが一致しません。%s のパスワー
1806
1729
  #: core/views/auth.py:116
1807
1730
  #, python-format
1808
1731
  msgid "Password hash parameter missmatch. Updating %s password"
1809
- msgstr ""
1810
- "パスワードのハッシュ パラメーターが一致しません。%s パスワードを更新していま"
1811
- "す"
1732
+ msgstr "パスワードのハッシュ パラメーターが一致しません。%s パスワードを更新しています"
1812
1733
 
1813
1734
  #: core/views/auth.py:154
1814
1735
  msgid "User '{}' successfully logged out"
@@ -1824,8 +1745,7 @@ msgstr "逆引きを有効に"
1824
1745
 
1825
1746
  #: dmarc/forms.py:23
1826
1747
  msgid "Enable reverse DNS lookups (reports will be longer to display)"
1827
- msgstr ""
1828
- "DNS の逆引きを有効にします ( レポート表示まで時間がかかるようになります )"
1748
+ msgstr "DNS の逆引きを有効にします ( レポート表示まで時間がかかるようになります )"
1829
1749
 
1830
1750
  #: dmarc/forms.py:42
1831
1751
  msgid "DMARC"
@@ -2021,27 +1941,19 @@ msgstr "対象フォルダーフィルター"
2021
1941
  #: imap_migration/app_settings.py:76
2022
1942
  msgid ""
2023
1943
  "A comma seperated list of folders to explicitly include in sync even if "
2024
- "filtered by the Folder Filter Exclusions. Example: debian.user, debian."
2025
- "personal "
2026
- msgstr ""
2027
- "除外フォルダーフィルターで対象から外れても同期に含めるフォルダーをカンマ区切"
2028
- "りで明示します。例 : debian.user, debian.personal"
1944
+ "filtered by the Folder Filter Exclusions. Example: debian.user, "
1945
+ "debian.personal "
1946
+ msgstr "除外フォルダーフィルターで対象から外れても同期に含めるフォルダーをカンマ区切りで明示します。例 : debian.user, debian.personal"
2029
1947
 
2030
1948
  #: imap_migration/apps.py:20
2031
1949
  msgid "IMAP Migration"
2032
1950
  msgstr "IMAP 移行"
2033
1951
 
2034
- #: imap_migration/auth_backends.py:49 webmail/lib/imaputils.py:240
2035
- #, python-brace-format
2036
- msgid "Connection to IMAP server failed: {error}"
2037
- msgstr "IMAP サーバーへの接続に失敗しました : {error}"
2038
-
2039
1952
  #: imap_migration/checks.py:12
2040
1953
  msgid ""
2041
1954
  "Automatic domain/mailbox creation is disabled which means IMAP "
2042
1955
  "authentication won't work."
2043
- msgstr ""
2044
- "IMAP 認証が動作しない場合にドメイン・メールボックスの自動作成を無効にします。"
1956
+ msgstr "IMAP 認証が動作しない場合にドメイン・メールボックスの自動作成を無効にします。"
2045
1957
 
2046
1958
  #: imap_migration/checks.py:16
2047
1959
  msgid ""
@@ -2115,17 +2027,13 @@ msgstr "ドメイン管理者数"
2115
2027
  msgid ""
2116
2028
  "Maximum number of allowed domain administrators for a new administrator. (0 "
2117
2029
  "to deny any creation, -1 to allow unlimited creations)"
2118
- msgstr ""
2119
- "新しい管理者に作成を許可するドメイン管理者数の上限。( 0 で作成の拒否、-1 で無"
2120
- "制限の作成 )"
2030
+ msgstr "新しい管理者に作成を許可するドメイン管理者数の上限。( 0 で作成の拒否、-1 で無制限の作成 )"
2121
2031
 
2122
2032
  #: limits/app_settings.py:41
2123
2033
  msgid ""
2124
2034
  "Maximum number of allowed domains for a new administrator. (0 to deny any "
2125
2035
  "creation, -1 to allow unlimited creations)"
2126
- msgstr ""
2127
- "新しい管理者に作成を許可するドメイン数の上限。( 0 で作成の拒否、-1 で無制限の"
2128
- "作成 )"
2036
+ msgstr "新しい管理者に作成を許可するドメイン数の上限。( 0 で作成の拒否、-1 で無制限の作成 )"
2129
2037
 
2130
2038
  #: limits/app_settings.py:49 limits/app_settings.py:123 limits/constants.py:22
2131
2039
  #: limits/constants.py:76
@@ -2134,19 +2042,15 @@ msgstr "ドメインエイリアス"
2134
2042
 
2135
2043
  #: limits/app_settings.py:52
2136
2044
  msgid ""
2137
- "Maximum number of allowed domain aliases for a new administrator. (0 to deny "
2138
- "any creation, -1 to allow unlimited creations)"
2139
- msgstr ""
2140
- "新しい管理者に作成を許可するドメインエイリアス数の上限。( 0 で作成の拒否、-1 "
2141
- "で無制限の作成 )"
2045
+ "Maximum number of allowed domain aliases for a new administrator. (0 to deny"
2046
+ " any creation, -1 to allow unlimited creations)"
2047
+ msgstr "新しい管理者に作成を許可するドメインエイリアス数の上限。( 0 で作成の拒否、-1 で無制限の作成 )"
2142
2048
 
2143
2049
  #: limits/app_settings.py:64
2144
2050
  msgid ""
2145
2051
  "Maximum number of allowed mailboxes for a new administrator. (0 to deny any "
2146
2052
  "creation, -1 to allow unlimited creations)"
2147
- msgstr ""
2148
- "新しい管理者に作成を許可するメールボックス数の上限。( 0 で作成の拒否、-1 で無"
2149
- "制限の作成 )"
2053
+ msgstr "新しい管理者に作成を許可するメールボックス数の上限。( 0 で作成の拒否、-1 で無制限の作成 )"
2150
2054
 
2151
2055
  #: limits/app_settings.py:73 limits/app_settings.py:146 limits/constants.py:39
2152
2056
  #: limits/constants.py:92
@@ -2157,9 +2061,7 @@ msgstr "メールボックス エイリアス"
2157
2061
  msgid ""
2158
2062
  "Maximum number of allowed aliases for a new administrator. (0 to deny any "
2159
2063
  "creation, -1 to allow unlimited creations)"
2160
- msgstr ""
2161
- "新しい管理者に作成を許可するエイリアス数の上限。( 0 で作成の拒否、-1 で無制限"
2162
- "の作成 )"
2064
+ msgstr "新しい管理者に作成を許可するエイリアス数の上限。( 0 で作成の拒否、-1 で無制限の作成 )"
2163
2065
 
2164
2066
  #: limits/app_settings.py:84 limits/constants.py:59
2165
2067
  msgid "Quota"
@@ -2169,8 +2071,7 @@ msgstr "容量制限"
2169
2071
  msgid ""
2170
2072
  "The quota a reseller will be allowed to share between the domains he "
2171
2073
  "creates. (0 means no quota)"
2172
- msgstr ""
2173
- "リセラーに対して許可する、作成するドメインの容量制限の合算値。( 0 で無制限 )"
2074
+ msgstr "リセラーに対して許可する、作成するドメインの容量制限の合算値。( 0 で無制限 )"
2174
2075
 
2175
2076
  #: limits/app_settings.py:98
2176
2077
  msgid "Default per-domain limits"
@@ -2186,35 +2087,27 @@ msgstr "ドメインごとの容量制限を有効もしくは無効にします
2186
2087
 
2187
2088
  #: limits/app_settings.py:114
2188
2089
  msgid ""
2189
- "Maximum number of allowed domain administrators for a new domain. (0 to deny "
2190
- "any creation, -1 to allow unlimited creations)"
2191
- msgstr ""
2192
- "新しいドメインに作成を許可するドメイン管理者数の上限。( 0 で作成の拒否、-1 で"
2193
- "無制限の作成 )"
2090
+ "Maximum number of allowed domain administrators for a new domain. (0 to deny"
2091
+ " any creation, -1 to allow unlimited creations)"
2092
+ msgstr "新しいドメインに作成を許可するドメイン管理者数の上限。( 0 で作成の拒否、-1 で無制限の作成 )"
2194
2093
 
2195
2094
  #: limits/app_settings.py:126
2196
2095
  msgid ""
2197
2096
  "Maximum number of allowed domain aliases for a new domain. (0 to deny any "
2198
2097
  "creation, -1 to allow unlimited creations)"
2199
- msgstr ""
2200
- "新しいドメインに作成を許可するドメインエイリアス数の上限。( 0 で作成の拒"
2201
- "否、-1 で無制限の作成 )"
2098
+ msgstr "新しいドメインに作成を許可するドメインエイリアス数の上限。( 0 で作成の拒否、-1 で無制限の作成 )"
2202
2099
 
2203
2100
  #: limits/app_settings.py:138
2204
2101
  msgid ""
2205
2102
  "Maximum number of allowed mailboxes for a new domain. (0 to deny any "
2206
2103
  "creation, -1 to allow unlimited creations)"
2207
- msgstr ""
2208
- "新しいドメインに作成を許可するメールボックス数の上限。( 0 で作成の拒否、-1 で"
2209
- "無制限の作成 )"
2104
+ msgstr "新しいドメインに作成を許可するメールボックス数の上限。( 0 で作成の拒否、-1 で無制限の作成 )"
2210
2105
 
2211
2106
  #: limits/app_settings.py:149
2212
2107
  msgid ""
2213
- "Maximum number of allowed aliases for a new domain. (0 to deny any creation, "
2214
- "-1 to allow unlimited creations)"
2215
- msgstr ""
2216
- "新しいドメインに作成を許可するエイリアス数の上限。( 0 で作成の拒否、-1 で無制"
2217
- "限の作成 )"
2108
+ "Maximum number of allowed aliases for a new domain. (0 to deny any creation,"
2109
+ " -1 to allow unlimited creations)"
2110
+ msgstr "新しいドメインに作成を許可するエイリアス数の上限。( 0 で作成の拒否、-1 で無制限の作成 )"
2218
2111
 
2219
2112
  #: limits/apps.py:16
2220
2113
  msgid "Limits"
@@ -2377,11 +2270,11 @@ msgstr "アカウント"
2377
2270
  msgid "Personal account information"
2378
2271
  msgstr "個人アカウント情報"
2379
2272
 
2380
- #: pdfcredentials/api/v2/serializers.py:81
2273
+ #: pdfcredentials/api/v2/serializers.py:86
2381
2274
  msgid "Directory is not writable"
2382
2275
  msgstr "ディレクトリーが書き込み禁止"
2383
2276
 
2384
- #: pdfcredentials/api/v2/serializers.py:102
2277
+ #: pdfcredentials/api/v2/serializers.py:114
2385
2278
  msgid "No document available for this user"
2386
2279
  msgstr "このユーザーのための文書なし"
2387
2280
 
@@ -2417,8 +2310,7 @@ msgstr "ダウンロードしたら文書を削除"
2417
2310
  msgid ""
2418
2311
  "Automatically delete a document just after its first download from this "
2419
2312
  "interface"
2420
- msgstr ""
2421
- "このインターフェースからダウンロードをしたのちに、文書を自動的に削除します"
2313
+ msgstr "このインターフェースからダウンロードをしたのちに、文書を自動的に削除します"
2422
2314
 
2423
2315
  #: pdfcredentials/app_settings.py:68
2424
2316
  msgid "Generate documents only at account creation"
@@ -2428,9 +2320,7 @@ msgstr "アカウント作成時のみ文書を作成"
2428
2320
  msgid ""
2429
2321
  "Generate a new document only when a new account is created. If set to no, a "
2430
2322
  "new document will be created each time a password is updated."
2431
- msgstr ""
2432
- "新しくアカウントを作成する際にのみ、新しい文書を作成します。「いいえ」に設定"
2433
- "すると、パスワードを更新するたびに新しい文書を作成します。"
2323
+ msgstr "新しくアカウントを作成する際にのみ、新しい文書を作成します。「いいえ」に設定すると、パスワードを更新するたびに新しい文書を作成します。"
2434
2324
 
2435
2325
  #: pdfcredentials/app_settings.py:84
2436
2326
  msgid "Customization options"
@@ -2468,9 +2358,7 @@ msgstr "メールクライアント接続設定を含める"
2468
2358
  msgid ""
2469
2359
  "Include required SMTP and IMAP connection information to configure a mail "
2470
2360
  "client, a tablet or a phone"
2471
- msgstr ""
2472
- "メールクライアント、タブレットやスマートフォンに設定する際に必要な SMTP・"
2473
- "IMAP 接続の情報を含める"
2361
+ msgstr "メールクライアント、タブレットやスマートフォンに設定する際に必要な SMTP・IMAP 接続の情報を含める"
2474
2362
 
2475
2363
  #: pdfcredentials/app_settings.py:123 pdfcredentials/documents.py:133
2476
2364
  msgid "SMTP server address"
@@ -2531,14 +2419,7 @@ msgid ""
2531
2419
  "Dear %s, this document contains the credentials you will need\n"
2532
2420
  "to connect to Modoboa. Learn the content and destroy\n"
2533
2421
  "the document as soon as possible.\n"
2534
- msgstr ""
2535
- "\n"
2536
- "%s 様、この文書には Modoboa メールサーバーへの接続に必要な認証情報を記してい"
2537
- "ます。\n"
2538
- "認証情報が第三者に漏れれば、メールの内容をすべて読み取られるほか、なりすまし"
2539
- "によるメール送信も可能になります。\n"
2540
- "内容を理解し必要な設定を終えたら、厳重に管理する・廃棄するなど、対応をおねが"
2541
- "いします。\n"
2422
+ msgstr "\n%s 様、この文書には Modoboa メールサーバーへの接続に必要な認証情報を記しています。\n認証情報が第三者に漏れれば、メールの内容をすべて読み取られるほか、なりすましによるメール送信も可能になります。\n内容を理解し必要な設定を終えたら、厳重に管理する・廃棄するなど、対応をおねがいします。\n"
2542
2423
 
2543
2424
  #: pdfcredentials/documents.py:95
2544
2425
  msgid "Web panel:"
@@ -2557,10 +2438,7 @@ msgid ""
2557
2438
  "\n"
2558
2439
  "Here you can view your emails anytime online, create filters or manage\n"
2559
2440
  "your contacts.\n"
2560
- msgstr ""
2561
- "\n"
2562
- "この画面からあなたのメールをオンラインで確認できるほか、表示フィルターを\n"
2563
- "作成したり、連絡先を管理することができます。\n"
2441
+ msgstr "\nこの画面からあなたのメールをオンラインで確認できるほか、表示フィルターを\n作成したり、連絡先を管理することができます。\n"
2564
2442
 
2565
2443
  #: pdfcredentials/documents.py:126
2566
2444
  msgid "Please change your password!"
@@ -2578,9 +2456,7 @@ msgstr "この設定はパソコン、またはスマートフォンやタブレ
2578
2456
  msgid ""
2579
2457
  "Failed to create PDF_credentials directory. Please check the permissions or "
2580
2458
  "the path."
2581
- msgstr ""
2582
- "PDF_credentials ディレクトリーの作成に失敗しました。権限またはパスを確認して"
2583
- "ください。"
2459
+ msgstr "PDF_credentials ディレクトリーの作成に失敗しました。権限またはパスを確認してください。"
2584
2460
 
2585
2461
  #: pdfcredentials/handlers.py:64
2586
2462
  msgid "Download PDF credentials"
@@ -2656,11 +2532,9 @@ msgstr "キー マップ パス"
2656
2532
 
2657
2533
  #: rspamd/app_settings.py:21
2658
2534
  msgid ""
2659
- "Absolute path of the file which contains paths to DKIM private keys. Must be "
2660
- "readable by _rspamd group or user."
2661
- msgstr ""
2662
- "DKIM プライベートキー ファイルの絶対パス。_rspamd グループまたはユーザーに読"
2663
- "み取り権限が必要です。"
2535
+ "Absolute path of the file which contains paths to DKIM private keys. Must be"
2536
+ " readable by _rspamd group or user."
2537
+ msgstr "DKIM プライベートキー ファイルの絶対パス。_rspamd グループまたはユーザーに読み取り権限が必要です。"
2664
2538
 
2665
2539
  #: rspamd/app_settings.py:30
2666
2540
  msgid "Selector map path"
@@ -2670,9 +2544,7 @@ msgstr "セレクター マップ パス"
2670
2544
  msgid ""
2671
2545
  "Absolute path of the file which contains names of DKIM selectors. Must be "
2672
2546
  "readable by _rspamd group or user."
2673
- msgstr ""
2674
- "DKIM セレクター ファイルの絶対パス。_rspamd グループまたはユーザーに読み取り"
2675
- "権限が必要です。"
2547
+ msgstr "DKIM セレクター ファイルの絶対パス。_rspamd グループまたはユーザーに読み取り権限が必要です。"
2676
2548
 
2677
2549
  #: rspamd/app_settings.py:51
2678
2550
  msgid "Rspamd dashboard location"
@@ -2680,13 +2552,10 @@ msgstr "Rspamd ダッシュボードの場所"
2680
2552
 
2681
2553
  #: rspamd/app_settings.py:53
2682
2554
  msgid ""
2683
- "Location of the rspamd dashboard. Can either be a relative URL (eg. '/"
2684
- "rspamd') or a full URL (eg. 'https://rspamd.domain.tld/').Only use for "
2555
+ "Location of the rspamd dashboard. Can either be a relative URL (eg. "
2556
+ "'/rspamd') or a full URL (eg. 'https://rspamd.domain.tld/').Only use for "
2685
2557
  "guidance on the Super-Admin dashboard."
2686
- msgstr ""
2687
- "rspamd ダッシュボードの場所。相対 URL ( 例 : '/rspamd' ) またはフル URL "
2688
- "( 例 : 'https://rspamd.domain.tld/' ) のどちらでもかまいません。スーパー管理"
2689
- "者ダッシュボードからのガイドにしか利用しません。"
2558
+ msgstr "rspamd ダッシュボードの場所。相対 URL ( 例 : '/rspamd' ) またはフル URL ( 例 : 'https://rspamd.domain.tld/' ) のどちらでもかまいません。スーパー管理者ダッシュボードからのガイドにしか利用しません。"
2690
2559
 
2691
2560
  #: rspamd/apps.py:18
2692
2561
  msgid "Rspamd"
@@ -2866,8 +2735,7 @@ msgstr "パスワードがわからない?"
2866
2735
  msgid ""
2867
2736
  "Your password has been set. You may go ahead and <a href=\"%(url)s\">sign "
2868
2737
  "in</a> now."
2869
- msgstr ""
2870
- "パスワードを設定しました。<a href=\"%(url)s\">サインイン</a> で進みます。"
2738
+ msgstr "パスワードを設定しました。<a href=\"%(url)s\">サインイン</a> で進みます。"
2871
2739
 
2872
2740
  #: templates/registration/password_reset_confirm.html:8
2873
2741
  msgid "Change password"
@@ -2883,9 +2751,7 @@ msgstr "送信"
2883
2751
  msgid ""
2884
2752
  "The password reset link was invalid, possibly because it has already been "
2885
2753
  "used. Please request a new password reset."
2886
- msgstr ""
2887
- "パスワードの再設定リンクが無効です。おそらくこのリンクからはすでに操作を終え"
2888
- "たものと思われます。もう一度「パスワード再設定」の操作をしてください。"
2754
+ msgstr "パスワードの再設定リンクが無効です。おそらくこのリンクからはすでに操作を終えたものと思われます。もう一度「パスワード再設定」の操作をしてください。"
2889
2755
 
2890
2756
  #: templates/registration/password_reset_confirm_code.html:22
2891
2757
  msgid "Enter the code you've just received by SMS"
@@ -2905,11 +2771,7 @@ msgid ""
2905
2771
  "exists with the email you entered. You should receive them shortly.</p> "
2906
2772
  "<p>If you don't receive an email, please make sure you've entered your "
2907
2773
  "primary address, and check your spam folder.</p>"
2908
- msgstr ""
2909
- "<p>入力したメールアドレスが登録済みのものであれば、パスワード設定方法を記載し"
2910
- "たメールが届きます。</p> <p>メールが届かなければ、入力したアドレスが正しいも"
2911
- "のだったかどうか、または SPAM フォルダーに配信されていないかを確認してくださ"
2912
- "い。</p>"
2774
+ msgstr "<p>入力したメールアドレスが登録済みのものであれば、パスワード設定方法を記載したメールが届きます。</p> <p>メールが届かなければ、入力したアドレスが正しいものだったかどうか、または SPAM フォルダーに配信されていないかを確認してください。</p>"
2913
2775
 
2914
2776
  #: templates/registration/password_reset_email.html:4
2915
2777
  #: templates/registration/password_reset_email_v2.html:4
@@ -2917,18 +2779,14 @@ msgstr ""
2917
2779
  msgid ""
2918
2780
  "To initiate the password reset process for your %(username)s Modoboa "
2919
2781
  "account, click the link below:"
2920
- msgstr ""
2921
- "パスワードの再設定処理をはじめます。対象のアカウントは %(username)s でよろし"
2922
- "いですか? よろしければ以下のリンクをクリックしてください : "
2782
+ msgstr "パスワードの再設定処理をはじめます。対象のアカウントは %(username)s でよろしいですか? よろしければ以下のリンクをクリックしてください : "
2923
2783
 
2924
2784
  #: templates/registration/password_reset_email.html:10
2925
2785
  #: templates/registration/password_reset_email_v2.html:10
2926
2786
  msgid ""
2927
2787
  "If clicking the link above doesn't work, please copy and paste the URL in a "
2928
2788
  "new browser window instead."
2929
- msgstr ""
2930
- "上のリンクが動作しなければ、URL を Web ブラウザにコピー・貼りつけしてくださ"
2931
- "い。"
2789
+ msgstr "上のリンクが動作しなければ、URL を Web ブラウザにコピー・貼りつけしてください。"
2932
2790
 
2933
2791
  #: templates/registration/password_reset_email.html:14
2934
2792
  #: templates/registration/password_reset_email_v2.html:14
@@ -2957,11 +2815,9 @@ msgstr "ワンタイム パスワード"
2957
2815
 
2958
2816
  #: templates/registration/twofactor_code_verify.html:35
2959
2817
  msgid ""
2960
- "Enter the code from the two-factor app on your mobile device. If you've lost "
2961
- "your device, you may enter one of your recovery codes."
2962
- msgstr ""
2963
- "あなたのスマートフォンの 2 要素認証アプリのコードを入力してください。スマート"
2964
- "フォンをなくしているなどの場合は、再設定コードのいずれかを入力してください。"
2818
+ "Enter the code from the two-factor app on your mobile device. If you've lost"
2819
+ " your device, you may enter one of your recovery codes."
2820
+ msgstr "あなたのスマートフォンの 2 要素認証アプリのコードを入力してください。スマートフォンをなくしているなどの場合は、再設定コードのいずれかを入力してください。"
2965
2821
 
2966
2822
  #: templates/registration/twofactor_code_verify.html:42
2967
2823
  msgid "Verify code"
@@ -2998,8 +2854,7 @@ msgstr "最大添付サイズ"
2998
2854
 
2999
2855
  #: webmail/app_settings.py:19
3000
2856
  msgid "Maximum attachment size in bytes (or KB, MB, GB if specified)"
3001
- msgstr ""
3002
- "添付ファイルの最大サイズをバイトで ( 必要に応じて KB, MB, GB も指定可 ) "
2857
+ msgstr "添付ファイルの最大サイズをバイトで ( 必要に応じて KB, MB, GB も指定可 ) "
3003
2858
 
3004
2859
  #: webmail/app_settings.py:67
3005
2860
  msgid "SMTP settings"
@@ -3129,14 +2984,26 @@ msgstr "署名テキスト"
3129
2984
  msgid "User defined email signature"
3130
2985
  msgstr "ユーザー定義のメール署名"
3131
2986
 
2987
+ #: webmail/exceptions.py:18
2988
+ msgid "Server response"
2989
+ msgstr "サーバー応答"
2990
+
3132
2991
  #: webmail/lib/attachments.py:112
3133
2992
  msgid "Failed to remove attachment: "
3134
2993
  msgstr "添付ファイルの削除に失敗 : "
3135
2994
 
2995
+ #: webmail/lib/imapemail.py:272
2996
+ msgid "wrote:"
2997
+ msgstr " : "
2998
+
3136
2999
  #: webmail/lib/imapemail.py:306
3137
3000
  msgid "Date"
3138
3001
  msgstr "日付"
3139
3002
 
3003
+ #: webmail/lib/imapemail.py:322 webmail/lib/imapemail.py:325
3004
+ msgid "Original message"
3005
+ msgstr "元メッセージ"
3006
+
3140
3007
  #: webmail/lib/imaputils.py:221
3141
3008
  msgid "Failed to retrieve hierarchy delimiter"
3142
3009
  msgstr "階層区切りの取得に失敗"