wagtail 5.2.1__py3-none-any.whl → 5.2.2__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 (438) hide show
  1. wagtail/__init__.py +1 -1
  2. wagtail/admin/locale/ar/LC_MESSAGES/django.po +2 -2
  3. wagtail/admin/locale/be/LC_MESSAGES/django.mo +0 -0
  4. wagtail/admin/locale/be/LC_MESSAGES/django.po +32 -7
  5. wagtail/admin/locale/be/LC_MESSAGES/djangojs.mo +0 -0
  6. wagtail/admin/locale/be/LC_MESSAGES/djangojs.po +9 -3
  7. wagtail/admin/locale/ca/LC_MESSAGES/django.mo +0 -0
  8. wagtail/admin/locale/ca/LC_MESSAGES/django.po +48 -49
  9. wagtail/admin/locale/cs/LC_MESSAGES/django.po +8 -10
  10. wagtail/admin/locale/de/LC_MESSAGES/django.po +47 -49
  11. wagtail/admin/locale/el/LC_MESSAGES/django.po +4 -4
  12. wagtail/admin/locale/es/LC_MESSAGES/django.po +38 -39
  13. wagtail/admin/locale/es_419/LC_MESSAGES/django.po +8 -8
  14. wagtail/admin/locale/et/LC_MESSAGES/django.po +12 -14
  15. wagtail/admin/locale/fa/LC_MESSAGES/django.po +18 -18
  16. wagtail/admin/locale/fi/LC_MESSAGES/django.po +18 -18
  17. wagtail/admin/locale/fr/LC_MESSAGES/django.po +42 -44
  18. wagtail/admin/locale/gl/LC_MESSAGES/django.po +52 -53
  19. wagtail/admin/locale/hi/LC_MESSAGES/djangojs.mo +0 -0
  20. wagtail/admin/locale/hi/LC_MESSAGES/djangojs.po +14 -0
  21. wagtail/admin/locale/hr_HR/LC_MESSAGES/django.po +12 -13
  22. wagtail/admin/locale/hr_HR/LC_MESSAGES/djangojs.po +2 -2
  23. wagtail/admin/locale/hu/LC_MESSAGES/django.po +42 -45
  24. wagtail/admin/locale/id_ID/LC_MESSAGES/django.po +6 -6
  25. wagtail/admin/locale/is_IS/LC_MESSAGES/django.po +49 -51
  26. wagtail/admin/locale/it/LC_MESSAGES/django.po +31 -32
  27. wagtail/admin/locale/ja/LC_MESSAGES/django.po +2 -2
  28. wagtail/admin/locale/ko/LC_MESSAGES/django.po +17 -18
  29. wagtail/admin/locale/lt/LC_MESSAGES/django.po +4 -4
  30. wagtail/admin/locale/nb/LC_MESSAGES/django.mo +0 -0
  31. wagtail/admin/locale/nb/LC_MESSAGES/django.po +488 -9
  32. wagtail/admin/locale/nb/LC_MESSAGES/djangojs.mo +0 -0
  33. wagtail/admin/locale/nb/LC_MESSAGES/djangojs.po +15 -1
  34. wagtail/admin/locale/nl/LC_MESSAGES/django.po +41 -44
  35. wagtail/admin/locale/pl/LC_MESSAGES/django.po +47 -49
  36. wagtail/admin/locale/pl/LC_MESSAGES/djangojs.po +3 -3
  37. wagtail/admin/locale/pt_BR/LC_MESSAGES/django.po +15 -16
  38. wagtail/admin/locale/pt_PT/LC_MESSAGES/django.po +20 -21
  39. wagtail/admin/locale/ro/LC_MESSAGES/django.po +50 -51
  40. wagtail/admin/locale/ru/LC_MESSAGES/django.po +57 -58
  41. wagtail/admin/locale/ru/LC_MESSAGES/djangojs.po +3 -3
  42. wagtail/admin/locale/sk_SK/LC_MESSAGES/django.po +4 -4
  43. wagtail/admin/locale/sl/LC_MESSAGES/django.po +37 -38
  44. wagtail/admin/locale/sl/LC_MESSAGES/djangojs.po +2 -2
  45. wagtail/admin/locale/sv/LC_MESSAGES/django.po +41 -43
  46. wagtail/admin/locale/tet/LC_MESSAGES/django.po +2 -2
  47. wagtail/admin/locale/th/LC_MESSAGES/django.po +2 -2
  48. wagtail/admin/locale/tr/LC_MESSAGES/django.po +4 -4
  49. wagtail/admin/locale/tr_TR/LC_MESSAGES/django.po +4 -4
  50. wagtail/admin/locale/uk/LC_MESSAGES/django.mo +0 -0
  51. wagtail/admin/locale/uk/LC_MESSAGES/django.po +23 -11
  52. wagtail/admin/locale/zh_Hans/LC_MESSAGES/django.po +4 -5
  53. wagtail/admin/locale/zh_Hant/LC_MESSAGES/django.po +2 -2
  54. wagtail/admin/mail.py +11 -10
  55. wagtail/admin/static/wagtailadmin/css/panels/draftail.css +1 -1
  56. wagtail/admin/tests/test_reports_views.py +42 -0
  57. wagtail/admin/tests/test_workflows.py +143 -0
  58. wagtail/admin/views/home.py +13 -0
  59. wagtail/admin/views/reports/aging_pages.py +2 -0
  60. wagtail/contrib/forms/locale/be/LC_MESSAGES/django.po +3 -3
  61. wagtail/contrib/forms/locale/hr_HR/LC_MESSAGES/django.po +2 -2
  62. wagtail/contrib/forms/locale/pl/LC_MESSAGES/django.po +3 -3
  63. wagtail/contrib/forms/locale/pt_BR/LC_MESSAGES/django.mo +0 -0
  64. wagtail/contrib/forms/locale/pt_BR/LC_MESSAGES/django.po +2 -2
  65. wagtail/contrib/forms/locale/ru/LC_MESSAGES/django.po +3 -3
  66. wagtail/contrib/forms/locale/sl/LC_MESSAGES/django.po +2 -2
  67. wagtail/contrib/modeladmin/locale/be/LC_MESSAGES/django.po +3 -3
  68. wagtail/contrib/modeladmin/locale/hi/LC_MESSAGES/django.mo +0 -0
  69. wagtail/contrib/modeladmin/locale/hi/LC_MESSAGES/django.po +6 -0
  70. wagtail/contrib/modeladmin/locale/hr_HR/LC_MESSAGES/django.po +2 -2
  71. wagtail/contrib/modeladmin/locale/nb/LC_MESSAGES/django.mo +0 -0
  72. wagtail/contrib/modeladmin/locale/nb/LC_MESSAGES/django.po +3 -0
  73. wagtail/contrib/modeladmin/locale/pl/LC_MESSAGES/django.po +3 -3
  74. wagtail/contrib/modeladmin/locale/pt_BR/LC_MESSAGES/django.mo +0 -0
  75. wagtail/contrib/modeladmin/locale/pt_BR/LC_MESSAGES/django.po +2 -2
  76. wagtail/contrib/modeladmin/locale/ru/LC_MESSAGES/django.po +3 -3
  77. wagtail/contrib/modeladmin/locale/sl/LC_MESSAGES/django.po +2 -2
  78. wagtail/contrib/modeladmin/locale/sr/LC_MESSAGES/django.po +2 -2
  79. wagtail/contrib/redirects/locale/ar/LC_MESSAGES/django.po +4 -4
  80. wagtail/contrib/redirects/locale/be/LC_MESSAGES/django.po +3 -3
  81. wagtail/contrib/redirects/locale/bg/LC_MESSAGES/django.po +4 -4
  82. wagtail/contrib/redirects/locale/ca/LC_MESSAGES/django.po +4 -4
  83. wagtail/contrib/redirects/locale/cs/LC_MESSAGES/django.po +4 -4
  84. wagtail/contrib/redirects/locale/cy/LC_MESSAGES/django.po +6 -6
  85. wagtail/contrib/redirects/locale/de/LC_MESSAGES/django.po +4 -5
  86. wagtail/contrib/redirects/locale/el/LC_MESSAGES/django.po +7 -7
  87. wagtail/contrib/redirects/locale/es/LC_MESSAGES/django.po +6 -6
  88. wagtail/contrib/redirects/locale/et/LC_MESSAGES/django.po +4 -4
  89. wagtail/contrib/redirects/locale/fa/LC_MESSAGES/django.po +4 -4
  90. wagtail/contrib/redirects/locale/fi/LC_MESSAGES/django.po +6 -6
  91. wagtail/contrib/redirects/locale/fr/LC_MESSAGES/django.po +4 -4
  92. wagtail/contrib/redirects/locale/gl/LC_MESSAGES/django.po +4 -4
  93. wagtail/contrib/redirects/locale/hi/LC_MESSAGES/django.mo +0 -0
  94. wagtail/contrib/redirects/locale/hi/LC_MESSAGES/django.po +6 -0
  95. wagtail/contrib/redirects/locale/hr_HR/LC_MESSAGES/django.po +8 -8
  96. wagtail/contrib/redirects/locale/hu/LC_MESSAGES/django.po +6 -6
  97. wagtail/contrib/redirects/locale/id_ID/LC_MESSAGES/django.po +4 -4
  98. wagtail/contrib/redirects/locale/is_IS/LC_MESSAGES/django.po +6 -6
  99. wagtail/contrib/redirects/locale/it/LC_MESSAGES/django.po +4 -4
  100. wagtail/contrib/redirects/locale/ja/LC_MESSAGES/django.po +2 -2
  101. wagtail/contrib/redirects/locale/ko/LC_MESSAGES/django.po +4 -4
  102. wagtail/contrib/redirects/locale/lt/LC_MESSAGES/django.po +4 -4
  103. wagtail/contrib/redirects/locale/mn/LC_MESSAGES/django.po +4 -4
  104. wagtail/contrib/redirects/locale/nb/LC_MESSAGES/django.mo +0 -0
  105. wagtail/contrib/redirects/locale/nb/LC_MESSAGES/django.po +106 -5
  106. wagtail/contrib/redirects/locale/nl/LC_MESSAGES/django.po +4 -4
  107. wagtail/contrib/redirects/locale/pl/LC_MESSAGES/django.po +9 -9
  108. wagtail/contrib/redirects/locale/pt_BR/LC_MESSAGES/django.po +5 -5
  109. wagtail/contrib/redirects/locale/pt_PT/LC_MESSAGES/django.po +4 -4
  110. wagtail/contrib/redirects/locale/ro/LC_MESSAGES/django.po +4 -4
  111. wagtail/contrib/redirects/locale/ru/LC_MESSAGES/django.po +7 -7
  112. wagtail/contrib/redirects/locale/sk_SK/LC_MESSAGES/django.po +4 -4
  113. wagtail/contrib/redirects/locale/sl/LC_MESSAGES/django.po +6 -6
  114. wagtail/contrib/redirects/locale/sr/LC_MESSAGES/django.po +2 -2
  115. wagtail/contrib/redirects/locale/sv/LC_MESSAGES/django.po +4 -4
  116. wagtail/contrib/redirects/locale/tet/LC_MESSAGES/django.po +4 -4
  117. wagtail/contrib/redirects/locale/th/LC_MESSAGES/django.po +4 -4
  118. wagtail/contrib/redirects/locale/tr/LC_MESSAGES/django.po +4 -4
  119. wagtail/contrib/redirects/locale/tr_TR/LC_MESSAGES/django.po +4 -4
  120. wagtail/contrib/redirects/locale/uk/LC_MESSAGES/django.po +4 -4
  121. wagtail/contrib/redirects/locale/zh/LC_MESSAGES/django.po +4 -4
  122. wagtail/contrib/redirects/locale/zh_Hans/LC_MESSAGES/django.po +4 -4
  123. wagtail/contrib/redirects/locale/zh_Hant/LC_MESSAGES/django.po +4 -4
  124. wagtail/contrib/search_promotions/locale/ar/LC_MESSAGES/django.po +4 -4
  125. wagtail/contrib/search_promotions/locale/be/LC_MESSAGES/django.po +7 -7
  126. wagtail/contrib/search_promotions/locale/ca/LC_MESSAGES/django.mo +0 -0
  127. wagtail/contrib/search_promotions/locale/ca/LC_MESSAGES/django.po +9 -9
  128. wagtail/contrib/search_promotions/locale/cs/LC_MESSAGES/django.po +2 -2
  129. wagtail/contrib/search_promotions/locale/cy/LC_MESSAGES/django.po +4 -4
  130. wagtail/contrib/search_promotions/locale/de/LC_MESSAGES/django.po +6 -6
  131. wagtail/contrib/search_promotions/locale/el/LC_MESSAGES/django.po +4 -4
  132. wagtail/contrib/search_promotions/locale/es/LC_MESSAGES/django.po +6 -6
  133. wagtail/contrib/search_promotions/locale/et/LC_MESSAGES/django.po +4 -4
  134. wagtail/contrib/search_promotions/locale/fa/LC_MESSAGES/django.po +4 -4
  135. wagtail/contrib/search_promotions/locale/fi/LC_MESSAGES/django.po +6 -6
  136. wagtail/contrib/search_promotions/locale/fr/LC_MESSAGES/django.po +4 -4
  137. wagtail/contrib/search_promotions/locale/gl/LC_MESSAGES/django.po +6 -6
  138. wagtail/contrib/search_promotions/locale/hi/LC_MESSAGES/django.mo +0 -0
  139. wagtail/contrib/search_promotions/locale/hi/LC_MESSAGES/django.po +3 -0
  140. wagtail/contrib/search_promotions/locale/hr_HR/LC_MESSAGES/django.po +8 -8
  141. wagtail/contrib/search_promotions/locale/hu/LC_MESSAGES/django.po +4 -4
  142. wagtail/contrib/search_promotions/locale/id_ID/LC_MESSAGES/django.po +4 -4
  143. wagtail/contrib/search_promotions/locale/is_IS/LC_MESSAGES/django.po +8 -8
  144. wagtail/contrib/search_promotions/locale/it/LC_MESSAGES/django.po +6 -6
  145. wagtail/contrib/search_promotions/locale/ja/LC_MESSAGES/django.po +4 -4
  146. wagtail/contrib/search_promotions/locale/ko/LC_MESSAGES/django.po +4 -4
  147. wagtail/contrib/search_promotions/locale/lt/LC_MESSAGES/django.po +6 -6
  148. wagtail/contrib/search_promotions/locale/nb/LC_MESSAGES/django.mo +0 -0
  149. wagtail/contrib/search_promotions/locale/nb/LC_MESSAGES/django.po +10 -4
  150. wagtail/contrib/search_promotions/locale/nl/LC_MESSAGES/django.po +6 -6
  151. wagtail/contrib/search_promotions/locale/pl/LC_MESSAGES/django.po +9 -9
  152. wagtail/contrib/search_promotions/locale/pt_BR/LC_MESSAGES/django.po +4 -4
  153. wagtail/contrib/search_promotions/locale/pt_PT/LC_MESSAGES/django.po +4 -4
  154. wagtail/contrib/search_promotions/locale/ro/LC_MESSAGES/django.po +4 -4
  155. wagtail/contrib/search_promotions/locale/ru/LC_MESSAGES/django.po +9 -9
  156. wagtail/contrib/search_promotions/locale/sk_SK/LC_MESSAGES/django.po +4 -4
  157. wagtail/contrib/search_promotions/locale/sl/LC_MESSAGES/django.po +6 -6
  158. wagtail/contrib/search_promotions/locale/sr/LC_MESSAGES/django.po +2 -2
  159. wagtail/contrib/search_promotions/locale/sv/LC_MESSAGES/django.po +4 -4
  160. wagtail/contrib/search_promotions/locale/th/LC_MESSAGES/django.po +4 -4
  161. wagtail/contrib/search_promotions/locale/tr/LC_MESSAGES/django.po +4 -4
  162. wagtail/contrib/search_promotions/locale/tr_TR/LC_MESSAGES/django.po +4 -4
  163. wagtail/contrib/search_promotions/locale/uk/LC_MESSAGES/django.po +4 -4
  164. wagtail/contrib/search_promotions/locale/zh_Hans/LC_MESSAGES/django.po +2 -2
  165. wagtail/contrib/search_promotions/locale/zh_Hant/LC_MESSAGES/django.po +2 -2
  166. wagtail/contrib/settings/locale/be/LC_MESSAGES/django.po +3 -3
  167. wagtail/contrib/settings/locale/hi/LC_MESSAGES/django.mo +0 -0
  168. wagtail/contrib/settings/locale/hi/LC_MESSAGES/django.po +27 -2
  169. wagtail/contrib/settings/locale/hr_HR/LC_MESSAGES/django.po +2 -2
  170. wagtail/contrib/settings/locale/nb/LC_MESSAGES/django.mo +0 -0
  171. wagtail/contrib/settings/locale/nb/LC_MESSAGES/django.po +13 -2
  172. wagtail/contrib/settings/locale/pl/LC_MESSAGES/django.po +3 -3
  173. wagtail/contrib/settings/locale/pt_BR/LC_MESSAGES/django.po +1 -1
  174. wagtail/contrib/settings/locale/ru/LC_MESSAGES/django.po +3 -3
  175. wagtail/contrib/settings/locale/sl/LC_MESSAGES/django.po +2 -2
  176. wagtail/contrib/settings/locale/sr/LC_MESSAGES/django.po +2 -2
  177. wagtail/contrib/settings/locale/uk/LC_MESSAGES/django.mo +0 -0
  178. wagtail/contrib/settings/locale/uk/LC_MESSAGES/django.po +10 -2
  179. wagtail/contrib/simple_translation/locale/be/LC_MESSAGES/django.mo +0 -0
  180. wagtail/contrib/simple_translation/locale/be/LC_MESSAGES/django.po +30 -3
  181. wagtail/contrib/simple_translation/locale/hr_HR/LC_MESSAGES/django.po +2 -2
  182. wagtail/contrib/simple_translation/locale/nb/LC_MESSAGES/django.mo +0 -0
  183. wagtail/contrib/simple_translation/locale/nb/LC_MESSAGES/django.po +26 -0
  184. wagtail/contrib/simple_translation/locale/pl/LC_MESSAGES/django.po +3 -3
  185. wagtail/contrib/simple_translation/locale/pt_BR/LC_MESSAGES/django.po +1 -1
  186. wagtail/contrib/simple_translation/locale/ru/LC_MESSAGES/django.po +3 -3
  187. wagtail/contrib/simple_translation/locale/sl/LC_MESSAGES/django.po +2 -2
  188. wagtail/contrib/styleguide/locale/be/LC_MESSAGES/django.po +3 -3
  189. wagtail/contrib/styleguide/locale/hi/LC_MESSAGES/django.mo +0 -0
  190. wagtail/contrib/styleguide/locale/hi/LC_MESSAGES/django.po +22 -0
  191. wagtail/contrib/styleguide/locale/hr_HR/LC_MESSAGES/django.po +2 -2
  192. wagtail/contrib/styleguide/locale/pl/LC_MESSAGES/django.po +3 -3
  193. wagtail/contrib/styleguide/locale/ru/LC_MESSAGES/django.po +3 -3
  194. wagtail/contrib/styleguide/locale/sl/LC_MESSAGES/django.po +2 -2
  195. wagtail/contrib/table_block/locale/be/LC_MESSAGES/django.po +3 -3
  196. wagtail/contrib/table_block/locale/hr_HR/LC_MESSAGES/django.po +2 -2
  197. wagtail/contrib/table_block/locale/pl/LC_MESSAGES/django.po +3 -3
  198. wagtail/contrib/table_block/locale/ru/LC_MESSAGES/django.po +3 -3
  199. wagtail/contrib/table_block/locale/sl/LC_MESSAGES/django.po +2 -2
  200. wagtail/contrib/typed_table_block/locale/ar/LC_MESSAGES/django.mo +0 -0
  201. wagtail/contrib/typed_table_block/locale/ar/LC_MESSAGES/django.po +44 -0
  202. wagtail/contrib/typed_table_block/locale/be/LC_MESSAGES/django.po +3 -3
  203. wagtail/contrib/typed_table_block/locale/pl/LC_MESSAGES/django.po +3 -3
  204. wagtail/contrib/typed_table_block/locale/pt_BR/LC_MESSAGES/django.mo +0 -0
  205. wagtail/contrib/typed_table_block/locale/pt_BR/LC_MESSAGES/django.po +2 -2
  206. wagtail/contrib/typed_table_block/locale/ru/LC_MESSAGES/django.po +3 -3
  207. wagtail/contrib/typed_table_block/locale/sl/LC_MESSAGES/django.po +2 -2
  208. wagtail/documents/locale/ar/LC_MESSAGES/django.mo +0 -0
  209. wagtail/documents/locale/ar/LC_MESSAGES/django.po +11 -10
  210. wagtail/documents/locale/be/LC_MESSAGES/django.mo +0 -0
  211. wagtail/documents/locale/be/LC_MESSAGES/django.po +17 -11
  212. wagtail/documents/locale/bg/LC_MESSAGES/django.po +4 -4
  213. wagtail/documents/locale/ca/LC_MESSAGES/django.po +10 -10
  214. wagtail/documents/locale/cs/LC_MESSAGES/django.po +6 -6
  215. wagtail/documents/locale/de/LC_MESSAGES/django.po +8 -10
  216. wagtail/documents/locale/el/LC_MESSAGES/django.po +8 -8
  217. wagtail/documents/locale/es/LC_MESSAGES/django.po +8 -8
  218. wagtail/documents/locale/et/LC_MESSAGES/django.po +6 -6
  219. wagtail/documents/locale/fa/LC_MESSAGES/django.po +8 -8
  220. wagtail/documents/locale/fi/LC_MESSAGES/django.po +10 -10
  221. wagtail/documents/locale/fr/LC_MESSAGES/django.po +6 -6
  222. wagtail/documents/locale/gl/LC_MESSAGES/django.po +8 -8
  223. wagtail/documents/locale/hi/LC_MESSAGES/django.mo +0 -0
  224. wagtail/documents/locale/hi/LC_MESSAGES/django.po +3 -0
  225. wagtail/documents/locale/hr_HR/LC_MESSAGES/django.po +14 -14
  226. wagtail/documents/locale/hu/LC_MESSAGES/django.po +8 -8
  227. wagtail/documents/locale/id_ID/LC_MESSAGES/django.po +6 -6
  228. wagtail/documents/locale/is_IS/LC_MESSAGES/django.po +8 -8
  229. wagtail/documents/locale/it/LC_MESSAGES/django.po +8 -8
  230. wagtail/documents/locale/ja/LC_MESSAGES/django.po +8 -8
  231. wagtail/documents/locale/ko/LC_MESSAGES/django.po +8 -8
  232. wagtail/documents/locale/lt/LC_MESSAGES/django.po +8 -8
  233. wagtail/documents/locale/mi/LC_MESSAGES/django.po +10 -10
  234. wagtail/documents/locale/mn/LC_MESSAGES/django.po +4 -5
  235. wagtail/documents/locale/nb/LC_MESSAGES/django.mo +0 -0
  236. wagtail/documents/locale/nb/LC_MESSAGES/django.po +158 -7
  237. wagtail/documents/locale/nl/LC_MESSAGES/django.po +8 -8
  238. wagtail/documents/locale/pl/LC_MESSAGES/django.po +11 -11
  239. wagtail/documents/locale/pt_BR/LC_MESSAGES/django.po +8 -8
  240. wagtail/documents/locale/pt_PT/LC_MESSAGES/django.po +8 -8
  241. wagtail/documents/locale/ro/LC_MESSAGES/django.po +8 -8
  242. wagtail/documents/locale/ru/LC_MESSAGES/django.po +9 -9
  243. wagtail/documents/locale/sk_SK/LC_MESSAGES/django.po +10 -10
  244. wagtail/documents/locale/sl/LC_MESSAGES/django.po +10 -10
  245. wagtail/documents/locale/sr/LC_MESSAGES/django.po +2 -2
  246. wagtail/documents/locale/sv/LC_MESSAGES/django.po +6 -6
  247. wagtail/documents/locale/th/LC_MESSAGES/django.po +8 -8
  248. wagtail/documents/locale/tr/LC_MESSAGES/django.po +8 -8
  249. wagtail/documents/locale/tr_TR/LC_MESSAGES/django.po +8 -8
  250. wagtail/documents/locale/uk/LC_MESSAGES/django.po +8 -8
  251. wagtail/documents/locale/zh/LC_MESSAGES/django.po +2 -2
  252. wagtail/documents/locale/zh_Hans/LC_MESSAGES/django.po +4 -4
  253. wagtail/documents/locale/zh_Hant/LC_MESSAGES/django.po +4 -4
  254. wagtail/embeds/locale/be/LC_MESSAGES/django.po +3 -3
  255. wagtail/embeds/locale/hr_HR/LC_MESSAGES/django.po +2 -2
  256. wagtail/embeds/locale/pl/LC_MESSAGES/django.po +3 -3
  257. wagtail/embeds/locale/ru/LC_MESSAGES/django.po +3 -3
  258. wagtail/embeds/locale/sl/LC_MESSAGES/django.po +2 -2
  259. wagtail/images/locale/ar/LC_MESSAGES/django.po +6 -6
  260. wagtail/images/locale/be/LC_MESSAGES/django.mo +0 -0
  261. wagtail/images/locale/be/LC_MESSAGES/django.po +24 -3
  262. wagtail/images/locale/ca/LC_MESSAGES/django.po +8 -8
  263. wagtail/images/locale/cs/LC_MESSAGES/django.po +8 -8
  264. wagtail/images/locale/cy/LC_MESSAGES/django.po +8 -8
  265. wagtail/images/locale/de/LC_MESSAGES/django.po +6 -6
  266. wagtail/images/locale/el/LC_MESSAGES/django.po +8 -8
  267. wagtail/images/locale/es/LC_MESSAGES/django.po +10 -10
  268. wagtail/images/locale/et/LC_MESSAGES/django.po +8 -8
  269. wagtail/images/locale/fa/LC_MESSAGES/django.po +8 -8
  270. wagtail/images/locale/fi/LC_MESSAGES/django.po +8 -8
  271. wagtail/images/locale/fr/LC_MESSAGES/django.po +6 -6
  272. wagtail/images/locale/gl/LC_MESSAGES/django.po +8 -8
  273. wagtail/images/locale/hi/LC_MESSAGES/django.mo +0 -0
  274. wagtail/images/locale/hi/LC_MESSAGES/django.po +25 -0
  275. wagtail/images/locale/hr_HR/LC_MESSAGES/django.po +8 -8
  276. wagtail/images/locale/hu/LC_MESSAGES/django.po +8 -8
  277. wagtail/images/locale/id_ID/LC_MESSAGES/django.po +6 -6
  278. wagtail/images/locale/is_IS/LC_MESSAGES/django.po +8 -8
  279. wagtail/images/locale/it/LC_MESSAGES/django.po +8 -8
  280. wagtail/images/locale/ja/LC_MESSAGES/django.po +8 -8
  281. wagtail/images/locale/ko/LC_MESSAGES/django.po +6 -6
  282. wagtail/images/locale/lt/LC_MESSAGES/django.po +8 -8
  283. wagtail/images/locale/nb/LC_MESSAGES/django.mo +0 -0
  284. wagtail/images/locale/nb/LC_MESSAGES/django.po +241 -9
  285. wagtail/images/locale/nl/LC_MESSAGES/django.po +10 -10
  286. wagtail/images/locale/pl/LC_MESSAGES/django.po +11 -11
  287. wagtail/images/locale/pt_BR/LC_MESSAGES/django.po +8 -8
  288. wagtail/images/locale/pt_PT/LC_MESSAGES/django.po +8 -8
  289. wagtail/images/locale/ro/LC_MESSAGES/django.po +8 -8
  290. wagtail/images/locale/ru/LC_MESSAGES/django.po +11 -11
  291. wagtail/images/locale/sk_SK/LC_MESSAGES/django.po +8 -8
  292. wagtail/images/locale/sl/LC_MESSAGES/django.mo +0 -0
  293. wagtail/images/locale/sl/LC_MESSAGES/django.po +46 -10
  294. wagtail/images/locale/sv/LC_MESSAGES/django.po +6 -6
  295. wagtail/images/locale/tet/LC_MESSAGES/django.po +4 -4
  296. wagtail/images/locale/th/LC_MESSAGES/django.po +8 -8
  297. wagtail/images/locale/tr/LC_MESSAGES/django.po +6 -6
  298. wagtail/images/locale/tr_TR/LC_MESSAGES/django.po +6 -6
  299. wagtail/images/locale/uk/LC_MESSAGES/django.po +8 -8
  300. wagtail/images/locale/zh_Hans/LC_MESSAGES/django.po +4 -4
  301. wagtail/images/locale/zh_Hant/LC_MESSAGES/django.po +4 -4
  302. wagtail/images/static/wagtailimages/js/focal-point-chooser.js +1 -1
  303. wagtail/locale/be/LC_MESSAGES/django.mo +0 -0
  304. wagtail/locale/be/LC_MESSAGES/django.po +11 -4
  305. wagtail/locale/hr_HR/LC_MESSAGES/django.po +2 -2
  306. wagtail/locale/nb/LC_MESSAGES/django.mo +0 -0
  307. wagtail/locale/nb/LC_MESSAGES/django.po +3 -0
  308. wagtail/locale/pl/LC_MESSAGES/django.po +3 -3
  309. wagtail/locale/pt_BR/LC_MESSAGES/django.po +1 -1
  310. wagtail/locale/ru/LC_MESSAGES/django.po +3 -3
  311. wagtail/locale/sl/LC_MESSAGES/django.po +2 -2
  312. wagtail/locale/uk/LC_MESSAGES/django.mo +0 -0
  313. wagtail/locale/uk/LC_MESSAGES/django.po +13 -0
  314. wagtail/locales/locale/be/LC_MESSAGES/django.po +3 -3
  315. wagtail/locales/locale/hr_HR/LC_MESSAGES/django.po +2 -2
  316. wagtail/locales/locale/pl/LC_MESSAGES/django.po +3 -3
  317. wagtail/locales/locale/ru/LC_MESSAGES/django.po +3 -3
  318. wagtail/locales/locale/sl/LC_MESSAGES/django.po +2 -2
  319. wagtail/project_template/requirements.txt +1 -1
  320. wagtail/query.py +1 -1
  321. wagtail/search/locale/be/LC_MESSAGES/django.po +3 -3
  322. wagtail/search/locale/hr_HR/LC_MESSAGES/django.po +2 -2
  323. wagtail/search/locale/nb/LC_MESSAGES/django.mo +0 -0
  324. wagtail/search/locale/nb/LC_MESSAGES/django.po +8 -1
  325. wagtail/search/locale/pl/LC_MESSAGES/django.po +3 -3
  326. wagtail/search/locale/pt_BR/LC_MESSAGES/django.mo +0 -0
  327. wagtail/search/locale/pt_BR/LC_MESSAGES/django.po +2 -2
  328. wagtail/search/locale/ru/LC_MESSAGES/django.po +3 -3
  329. wagtail/search/locale/sl/LC_MESSAGES/django.po +2 -2
  330. wagtail/sites/locale/be/LC_MESSAGES/django.po +3 -3
  331. wagtail/sites/locale/hi/LC_MESSAGES/django.mo +0 -0
  332. wagtail/sites/locale/hi/LC_MESSAGES/django.po +22 -0
  333. wagtail/sites/locale/hr_HR/LC_MESSAGES/django.po +2 -2
  334. wagtail/sites/locale/pl/LC_MESSAGES/django.po +3 -3
  335. wagtail/sites/locale/ru/LC_MESSAGES/django.po +3 -3
  336. wagtail/sites/locale/sl/LC_MESSAGES/django.po +2 -2
  337. wagtail/sites/locale/sr/LC_MESSAGES/django.po +2 -2
  338. wagtail/snippets/locale/ar/LC_MESSAGES/django.po +4 -4
  339. wagtail/snippets/locale/be/LC_MESSAGES/django.po +7 -7
  340. wagtail/snippets/locale/bg/LC_MESSAGES/django.po +4 -4
  341. wagtail/snippets/locale/ca/LC_MESSAGES/django.po +10 -10
  342. wagtail/snippets/locale/cs/LC_MESSAGES/django.po +4 -4
  343. wagtail/snippets/locale/cy/LC_MESSAGES/django.po +4 -4
  344. wagtail/snippets/locale/de/LC_MESSAGES/django.po +7 -7
  345. wagtail/snippets/locale/el/LC_MESSAGES/django.po +4 -4
  346. wagtail/snippets/locale/es/LC_MESSAGES/django.po +10 -10
  347. wagtail/snippets/locale/et/LC_MESSAGES/django.po +4 -4
  348. wagtail/snippets/locale/fa/LC_MESSAGES/django.po +4 -4
  349. wagtail/snippets/locale/fi/LC_MESSAGES/django.po +4 -4
  350. wagtail/snippets/locale/fr/LC_MESSAGES/django.po +9 -9
  351. wagtail/snippets/locale/gl/LC_MESSAGES/django.po +10 -10
  352. wagtail/snippets/locale/hi/LC_MESSAGES/django.mo +0 -0
  353. wagtail/snippets/locale/hi/LC_MESSAGES/django.po +25 -0
  354. wagtail/snippets/locale/hr_HR/LC_MESSAGES/django.po +12 -12
  355. wagtail/snippets/locale/hu/LC_MESSAGES/django.po +9 -9
  356. wagtail/snippets/locale/id_ID/LC_MESSAGES/django.po +4 -4
  357. wagtail/snippets/locale/is_IS/LC_MESSAGES/django.po +7 -7
  358. wagtail/snippets/locale/it/LC_MESSAGES/django.po +9 -9
  359. wagtail/snippets/locale/ja/LC_MESSAGES/django.po +4 -4
  360. wagtail/snippets/locale/ko/LC_MESSAGES/django.po +10 -10
  361. wagtail/snippets/locale/lt/LC_MESSAGES/django.po +4 -4
  362. wagtail/snippets/locale/mi/LC_MESSAGES/django.po +4 -4
  363. wagtail/snippets/locale/mn/LC_MESSAGES/django.po +4 -4
  364. wagtail/snippets/locale/nb/LC_MESSAGES/django.mo +0 -0
  365. wagtail/snippets/locale/nb/LC_MESSAGES/django.po +105 -5
  366. wagtail/snippets/locale/nl/LC_MESSAGES/django.po +12 -12
  367. wagtail/snippets/locale/pl/LC_MESSAGES/django.po +13 -13
  368. wagtail/snippets/locale/pt_BR/LC_MESSAGES/django.mo +0 -0
  369. wagtail/snippets/locale/pt_BR/LC_MESSAGES/django.po +6 -6
  370. wagtail/snippets/locale/pt_PT/LC_MESSAGES/django.po +4 -4
  371. wagtail/snippets/locale/ro/LC_MESSAGES/django.po +10 -10
  372. wagtail/snippets/locale/ru/LC_MESSAGES/django.po +12 -12
  373. wagtail/snippets/locale/sk_SK/LC_MESSAGES/django.po +2 -2
  374. wagtail/snippets/locale/sl/LC_MESSAGES/django.po +12 -12
  375. wagtail/snippets/locale/sr/LC_MESSAGES/django.po +2 -2
  376. wagtail/snippets/locale/sv/LC_MESSAGES/django.po +10 -10
  377. wagtail/snippets/locale/tet/LC_MESSAGES/django.po +4 -4
  378. wagtail/snippets/locale/th/LC_MESSAGES/django.po +4 -4
  379. wagtail/snippets/locale/tr/LC_MESSAGES/django.po +4 -4
  380. wagtail/snippets/locale/tr_TR/LC_MESSAGES/django.po +4 -4
  381. wagtail/snippets/locale/uk/LC_MESSAGES/django.po +4 -4
  382. wagtail/snippets/locale/zh/LC_MESSAGES/django.po +4 -4
  383. wagtail/snippets/locale/zh_Hans/LC_MESSAGES/django.po +4 -4
  384. wagtail/snippets/locale/zh_Hant/LC_MESSAGES/django.po +4 -4
  385. wagtail/snippets/templates/wagtailsnippets/snippets/index.html +1 -1
  386. wagtail/snippets/tests/test_viewset.py +26 -10
  387. wagtail/test/testapp/models.py +16 -0
  388. wagtail/tests/test_page_queryset.py +19 -0
  389. wagtail/tests/test_revision_model.py +23 -0
  390. wagtail/tests/test_workflow.py +20 -0
  391. wagtail/users/locale/ar/LC_MESSAGES/django.po +4 -4
  392. wagtail/users/locale/be/LC_MESSAGES/django.po +13 -13
  393. wagtail/users/locale/ca/LC_MESSAGES/django.po +12 -12
  394. wagtail/users/locale/cs/LC_MESSAGES/django.po +10 -10
  395. wagtail/users/locale/cy/LC_MESSAGES/django.po +12 -12
  396. wagtail/users/locale/de/LC_MESSAGES/django.po +10 -10
  397. wagtail/users/locale/el/LC_MESSAGES/django.po +4 -4
  398. wagtail/users/locale/es/LC_MESSAGES/django.po +12 -12
  399. wagtail/users/locale/et/LC_MESSAGES/django.po +10 -10
  400. wagtail/users/locale/fa/LC_MESSAGES/django.po +6 -6
  401. wagtail/users/locale/fi/LC_MESSAGES/django.po +12 -12
  402. wagtail/users/locale/fr/LC_MESSAGES/django.po +10 -10
  403. wagtail/users/locale/gl/LC_MESSAGES/django.po +12 -12
  404. wagtail/users/locale/hr_HR/LC_MESSAGES/django.po +16 -16
  405. wagtail/users/locale/hu/LC_MESSAGES/django.po +12 -12
  406. wagtail/users/locale/id_ID/LC_MESSAGES/django.po +4 -4
  407. wagtail/users/locale/is_IS/LC_MESSAGES/django.po +12 -12
  408. wagtail/users/locale/it/LC_MESSAGES/django.po +12 -12
  409. wagtail/users/locale/ja/LC_MESSAGES/django.po +4 -4
  410. wagtail/users/locale/ko/LC_MESSAGES/django.po +4 -4
  411. wagtail/users/locale/lt/LC_MESSAGES/django.po +4 -4
  412. wagtail/users/locale/lv/LC_MESSAGES/django.po +4 -4
  413. wagtail/users/locale/mn/LC_MESSAGES/django.po +8 -9
  414. wagtail/users/locale/nb/LC_MESSAGES/django.mo +0 -0
  415. wagtail/users/locale/nb/LC_MESSAGES/django.po +186 -5
  416. wagtail/users/locale/nl/LC_MESSAGES/django.po +10 -10
  417. wagtail/users/locale/pl/LC_MESSAGES/django.po +13 -13
  418. wagtail/users/locale/pt_BR/LC_MESSAGES/django.po +13 -13
  419. wagtail/users/locale/pt_PT/LC_MESSAGES/django.po +10 -10
  420. wagtail/users/locale/ro/LC_MESSAGES/django.po +12 -12
  421. wagtail/users/locale/ru/LC_MESSAGES/django.po +17 -17
  422. wagtail/users/locale/sk_SK/LC_MESSAGES/django.po +6 -6
  423. wagtail/users/locale/sl/LC_MESSAGES/django.po +14 -14
  424. wagtail/users/locale/sv/LC_MESSAGES/django.po +12 -12
  425. wagtail/users/locale/tet/LC_MESSAGES/django.po +4 -4
  426. wagtail/users/locale/th/LC_MESSAGES/django.po +4 -4
  427. wagtail/users/locale/tr/LC_MESSAGES/django.po +4 -4
  428. wagtail/users/locale/tr_TR/LC_MESSAGES/django.po +4 -4
  429. wagtail/users/locale/uk/LC_MESSAGES/django.po +12 -12
  430. wagtail/users/locale/zh_Hans/LC_MESSAGES/django.po +6 -6
  431. wagtail/users/locale/zh_Hant/LC_MESSAGES/django.po +2 -2
  432. wagtail-5.2.2.dist-info/METADATA +80 -0
  433. {wagtail-5.2.1.dist-info → wagtail-5.2.2.dist-info}/RECORD +437 -423
  434. {wagtail-5.2.1.dist-info → wagtail-5.2.2.dist-info}/WHEEL +1 -1
  435. wagtail-5.2.1.dist-info/METADATA +0 -79
  436. {wagtail-5.2.1.dist-info → wagtail-5.2.2.dist-info}/LICENSE +0 -0
  437. {wagtail-5.2.1.dist-info → wagtail-5.2.2.dist-info}/entry_points.txt +0 -0
  438. {wagtail-5.2.1.dist-info → wagtail-5.2.2.dist-info}/top_level.txt +0 -0
@@ -15,6 +15,11 @@ from freezegun import freeze_time
15
15
  from openpyxl import load_workbook
16
16
 
17
17
  from wagtail.admin.admin_url_finder import AdminURLFinder
18
+ from wagtail.admin.mail import (
19
+ BaseWorkflowStateEmailNotifier,
20
+ WorkflowStateApprovalEmailNotifier,
21
+ WorkflowStateRejectionEmailNotifier,
22
+ )
18
23
  from wagtail.admin.utils import (
19
24
  get_admin_base_url,
20
25
  get_latest_str,
@@ -3596,6 +3601,144 @@ class TestDashboardWithPages(BasePageWorkflowTests):
3596
3601
  "Compare with previous version",
3597
3602
  )
3598
3603
 
3604
+ def test_dashboard_after_deleting_object_in_moderation(self):
3605
+ # WorkflowState's content_object may point to a nonexistent object
3606
+ # https://github.com/wagtail/wagtail/issues/11300
3607
+ self.login(self.submitter)
3608
+ self.post("submit")
3609
+ self.object.delete()
3610
+
3611
+ response = self.client.get(reverse("wagtailadmin_home"))
3612
+ self.assertEqual(response.status_code, 200)
3613
+ self.assertNotContains(response, "Your pages and snippets in a workflow")
3614
+
3615
+ self.login(self.moderator)
3616
+ response = self.client.get(reverse("wagtailadmin_home"))
3617
+ self.assertEqual(response.status_code, 200)
3618
+ self.assertNotContains(response, "Awaiting your review")
3619
+
3599
3620
 
3600
3621
  class TestDashboardWithSnippets(TestDashboardWithPages, BaseSnippetWorkflowTests):
3601
3622
  pass
3623
+
3624
+
3625
+ class TestDashboardWithNonLockableSnippets(TestDashboardWithSnippets):
3626
+ # This model does not use LockableMixin, and it also does not have a
3627
+ # GenericRelation to WorkflowState and Revision, but it should not break
3628
+ # the dashboard.
3629
+ # See https://github.com/wagtail/wagtail/issues/11300 for more details.
3630
+ model = ModeratedModel
3631
+
3632
+
3633
+ class TestWorkflowStateEmailNotifier(BasePageWorkflowTests):
3634
+ def setUp(self):
3635
+ super().setUp()
3636
+ # Ensure a revision exists
3637
+ self.object.save_revision()
3638
+
3639
+ def test_workflowstate_email_notifier_get_recipient_users__without_triggering_user(
3640
+ self,
3641
+ ):
3642
+ self.workflow.start(self.object, user=self.submitter)
3643
+ workflow_state = self.object.current_workflow_state
3644
+
3645
+ for notifier in [
3646
+ WorkflowStateApprovalEmailNotifier(),
3647
+ WorkflowStateRejectionEmailNotifier(),
3648
+ ]:
3649
+ with self.subTest(f"Testing with {notifier}"):
3650
+ self.assertSetEqual(
3651
+ notifier.get_recipient_users(workflow_state), {self.submitter}
3652
+ )
3653
+
3654
+ def test_workflowstate_email_notifier_get_recipient_users__with_trigerring_user(
3655
+ self,
3656
+ ):
3657
+ self.workflow.start(self.object, user=self.submitter)
3658
+ workflow_state = self.object.current_workflow_state
3659
+
3660
+ for notifier in [
3661
+ WorkflowStateApprovalEmailNotifier(),
3662
+ WorkflowStateRejectionEmailNotifier(),
3663
+ ]:
3664
+ with self.subTest(f"Testing with {notifier}"):
3665
+ self.assertSetEqual(
3666
+ notifier.get_recipient_users(workflow_state, user=self.moderator),
3667
+ {self.submitter},
3668
+ )
3669
+
3670
+ def test_workflowstate_email_notifier_get_recipient_users__without_requested_by(
3671
+ self,
3672
+ ):
3673
+ self.workflow.start(self.object, user=self.submitter)
3674
+ workflow_state: WorkflowState = self.object.current_workflow_state
3675
+ workflow_state.requested_by = None
3676
+ workflow_state.save(update_fields=["requested_by"])
3677
+
3678
+ for notifier in [
3679
+ WorkflowStateApprovalEmailNotifier(),
3680
+ WorkflowStateRejectionEmailNotifier(),
3681
+ ]:
3682
+ with self.subTest(f"Testing with {notifier}"):
3683
+ self.assertSetEqual(notifier.get_recipient_users(workflow_state), set())
3684
+ self.assertSetEqual(
3685
+ notifier.get_recipient_users(workflow_state, user=self.moderator),
3686
+ set(),
3687
+ )
3688
+
3689
+ def test_workflowstate_email_notifier_get_recipient_users__with_same_requested_by_and_triggering_user(
3690
+ self,
3691
+ ):
3692
+ self.workflow.start(self.object, user=self.submitter)
3693
+ workflow_state: WorkflowState = self.object.current_workflow_state
3694
+ workflow_state.requested_by = None
3695
+ workflow_state.save(update_fields=["requested_by"])
3696
+
3697
+ for notifier in [
3698
+ WorkflowStateApprovalEmailNotifier(),
3699
+ WorkflowStateRejectionEmailNotifier(),
3700
+ ]:
3701
+ with self.subTest(f"Testing with {notifier}"):
3702
+ self.assertSetEqual(notifier.get_recipient_users(workflow_state), set())
3703
+ self.assertSetEqual(
3704
+ notifier.get_recipient_users(workflow_state, user=self.submitter),
3705
+ set(),
3706
+ )
3707
+
3708
+ @mock.patch("wagtail.admin.mail.BaseWorkflowStateEmailNotifier.get_recipient_users")
3709
+ def test_base_workflowstate_email_notifier_get_valid_recipients(
3710
+ self, mock_get_recipient_users
3711
+ ):
3712
+ notifier = BaseWorkflowStateEmailNotifier()
3713
+
3714
+ # check with an empty set
3715
+ mock_get_recipient_users.return_value = set()
3716
+ self.assertSetEqual(notifier.get_valid_recipients(self.object), set())
3717
+
3718
+ # check None values are filtered out
3719
+ mock_get_recipient_users.return_value = {None}
3720
+ self.assertSetEqual(notifier.get_valid_recipients(self.object), set())
3721
+
3722
+ # check with a valid user
3723
+ mock_get_recipient_users.return_value = {self.submitter}
3724
+ notifications = ["approved", "rejected", "submitted"]
3725
+ for notification in notifications:
3726
+ with self.subTest(f"Testing with {notification}_notifications"):
3727
+ notifier.notification = notification
3728
+ self.assertSetEqual(
3729
+ notifier.get_valid_recipients(self.object), {self.submitter}
3730
+ )
3731
+
3732
+ # remove notifications and re-test
3733
+ userprofile = UserProfile.get_for_user(self.submitter)
3734
+ updated_fields = []
3735
+ for notification in notifications:
3736
+ attribute = f"{notification}_notifications"
3737
+ setattr(userprofile, attribute, False)
3738
+ updated_fields.append(attribute)
3739
+ userprofile.save(update_fields=updated_fields)
3740
+
3741
+ for notification in notifications:
3742
+ with self.subTest(f"Testing with {notification}_notifications"):
3743
+ notifier.notification = notification
3744
+ self.assertSetEqual(notifier.get_valid_recipients(self.object), set())
@@ -161,6 +161,12 @@ class UserObjectsInWorkflowModerationPanel(Component):
161
161
  )
162
162
  .order_by("-current_task_state__started_at")
163
163
  )
164
+ # Filter out workflow states where the GenericForeignKey points to
165
+ # a nonexistent object. This can happen if the model does not define
166
+ # a GenericRelation to WorkflowState and the instance is deleted.
167
+ context["workflow_states"] = [
168
+ state for state in context["workflow_states"] if state.content_object
169
+ ]
164
170
  else:
165
171
  context["workflow_states"] = WorkflowState.objects.none()
166
172
  context["request"] = request
@@ -188,6 +194,7 @@ class WorkflowObjectsToModeratePanel(Component):
188
194
  "revision",
189
195
  "task",
190
196
  "revision__user",
197
+ "workflow_state",
191
198
  )
192
199
  .prefetch_related(
193
200
  "revision__content_object",
@@ -198,6 +205,12 @@ class WorkflowObjectsToModeratePanel(Component):
198
205
  )
199
206
  for state in states:
200
207
  obj = state.revision.content_object
208
+ # Skip task states where the revision's GenericForeignKey points to
209
+ # a nonexistent object. This can happen if the model does not define
210
+ # a GenericRelation to WorkflowState and/or Revision and the instance
211
+ # is deleted.
212
+ if not obj:
213
+ continue
201
214
  actions = state.task.specific.get_actions(obj, request.user)
202
215
  workflow_tasks = state.workflow_state.all_tasks_with_status()
203
216
 
@@ -82,6 +82,8 @@ class AgingPagesView(PageReportView):
82
82
  user_id_value, get_deleted_user_display_name(user_id=user_id_value)
83
83
  )
84
84
  page.last_published_by_user = last_published_by_user
85
+ else:
86
+ page.last_published_by_user = ""
85
87
 
86
88
  def decorate_paginated_queryset(self, queryset):
87
89
  user_ids = set(queryset.values_list("last_published_by", flat=True))
@@ -17,9 +17,9 @@ msgstr ""
17
17
  "Content-Type: text/plain; charset=UTF-8\n"
18
18
  "Content-Transfer-Encoding: 8bit\n"
19
19
  "Language: be\n"
20
- "Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
21
- "n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || "
22
- "(n%100>=11 && n%100<=14)? 2 : 3);\n"
20
+ "Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
21
+ "%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n"
22
+ "%100>=11 && n%100<=14)? 2 : 3);\n"
23
23
 
24
24
  msgid "Wagtail forms"
25
25
  msgstr "Формы Wagtail"
@@ -18,8 +18,8 @@ msgstr ""
18
18
  "Content-Type: text/plain; charset=UTF-8\n"
19
19
  "Content-Transfer-Encoding: 8bit\n"
20
20
  "Language: hr_HR\n"
21
- "Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
22
- "n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
21
+ "Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
22
+ "%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
23
23
 
24
24
  msgid "Wagtail forms"
25
25
  msgstr "Wagtail formulari"
@@ -19,9 +19,9 @@ msgstr ""
19
19
  "Content-Type: text/plain; charset=UTF-8\n"
20
20
  "Content-Transfer-Encoding: 8bit\n"
21
21
  "Language: pl\n"
22
- "Plural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && "
23
- "(n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && "
24
- "n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\n"
22
+ "Plural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n"
23
+ "%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n"
24
+ "%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\n"
25
25
 
26
26
  msgid "Wagtail forms"
27
27
  msgstr "Formularze Wagtail"
@@ -10,7 +10,7 @@
10
10
  # Guilherme Nabanete <neoheartz@gmail.com>, 2016
11
11
  # Luiz Boaretto <lboaretto@gmail.com>, 2016
12
12
  # Luiz Boaretto <lboaretto@gmail.com>, 2016-2020
13
- # Rodrigo de Almeida Sottomaior Macedo <rmsolucoeseminformatica@protonmail.com>, 2022
13
+ # Rodrigo de Almeida Sottomaior Macedo <sottomaiormacedotec@gmail.com>, 2022
14
14
  msgid ""
15
15
  msgstr ""
16
16
  "Project-Id-Version: Wagtail\n"
@@ -18,7 +18,7 @@ msgstr ""
18
18
  "POT-Creation-Date: 2023-10-19 23:14+0100\n"
19
19
  "PO-Revision-Date: 2014-09-11 15:42+0000\n"
20
20
  "Last-Translator: Rodrigo de Almeida Sottomaior Macedo "
21
- "<rmsolucoeseminformatica@protonmail.com>, 2022\n"
21
+ "<sottomaiormacedotec@gmail.com>, 2022\n"
22
22
  "Language-Team: Portuguese (Brazil) (http://app.transifex.com/torchbox/"
23
23
  "wagtail/language/pt_BR/)\n"
24
24
  "MIME-Version: 1.0\n"
@@ -27,9 +27,9 @@ msgstr ""
27
27
  "Content-Type: text/plain; charset=UTF-8\n"
28
28
  "Content-Transfer-Encoding: 8bit\n"
29
29
  "Language: ru\n"
30
- "Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
31
- "n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || "
32
- "(n%100>=11 && n%100<=14)? 2 : 3);\n"
30
+ "Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
31
+ "%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n"
32
+ "%100>=11 && n%100<=14)? 2 : 3);\n"
33
33
 
34
34
  msgid "Wagtail forms"
35
35
  msgstr "Формы Wagtail"
@@ -21,8 +21,8 @@ msgstr ""
21
21
  "Content-Type: text/plain; charset=UTF-8\n"
22
22
  "Content-Transfer-Encoding: 8bit\n"
23
23
  "Language: sl\n"
24
- "Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || "
25
- "n%100==4 ? 2 : 3);\n"
24
+ "Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n"
25
+ "%100==4 ? 2 : 3);\n"
26
26
 
27
27
  msgid "Wagtail forms"
28
28
  msgstr "Obrazci Wagtail"
@@ -16,9 +16,9 @@ msgstr ""
16
16
  "Content-Type: text/plain; charset=UTF-8\n"
17
17
  "Content-Transfer-Encoding: 8bit\n"
18
18
  "Language: be\n"
19
- "Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
20
- "n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || "
21
- "(n%100>=11 && n%100<=14)? 2 : 3);\n"
19
+ "Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
20
+ "%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n"
21
+ "%100>=11 && n%100<=14)? 2 : 3);\n"
22
22
 
23
23
  msgid "Edit"
24
24
  msgstr "Рэдагаваць"
@@ -18,5 +18,11 @@ msgstr ""
18
18
  "Language: hi\n"
19
19
  "Plural-Forms: nplurals=2; plural=(n != 1);\n"
20
20
 
21
+ msgid "Saving…"
22
+ msgstr "Saving…"
23
+
24
+ msgid "Save"
25
+ msgstr "Save"
26
+
21
27
  msgid "Editing"
22
28
  msgstr "संपादन"
@@ -17,8 +17,8 @@ msgstr ""
17
17
  "Content-Type: text/plain; charset=UTF-8\n"
18
18
  "Content-Transfer-Encoding: 8bit\n"
19
19
  "Language: hr_HR\n"
20
- "Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
21
- "n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
20
+ "Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
21
+ "%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
22
22
 
23
23
  msgid "Wagtail ModelAdmin"
24
24
  msgstr "Wagtail ModelAdmin"
@@ -210,5 +210,8 @@ msgstr "Inspiserer"
210
210
  msgid "Inspecting %(object)s"
211
211
  msgstr "Inspiserer %(object)s"
212
212
 
213
+ msgid "Action"
214
+ msgstr "Handling"
215
+
213
216
  msgid "Date"
214
217
  msgstr "Dato"
@@ -21,9 +21,9 @@ msgstr ""
21
21
  "Content-Type: text/plain; charset=UTF-8\n"
22
22
  "Content-Transfer-Encoding: 8bit\n"
23
23
  "Language: pl\n"
24
- "Plural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && "
25
- "(n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && "
26
- "n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\n"
24
+ "Plural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n"
25
+ "%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n"
26
+ "%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\n"
27
27
 
28
28
  msgid "Wagtail ModelAdmin"
29
29
  msgstr "Wagtail ModelAdmin"
@@ -4,7 +4,7 @@
4
4
  #
5
5
  # Translators:
6
6
  # Luiz Boaretto <lboaretto@gmail.com>, 2016,2019-2020
7
- # Rodrigo de Almeida Sottomaior Macedo <rmsolucoeseminformatica@protonmail.com>, 2021-2022
7
+ # Rodrigo de Almeida Sottomaior Macedo <sottomaiormacedotec@gmail.com>, 2021-2022
8
8
  msgid ""
9
9
  msgstr ""
10
10
  "Project-Id-Version: Wagtail\n"
@@ -12,7 +12,7 @@ msgstr ""
12
12
  "POT-Creation-Date: 2023-10-19 23:14+0100\n"
13
13
  "PO-Revision-Date: 2016-05-11 20:22+0000\n"
14
14
  "Last-Translator: Rodrigo de Almeida Sottomaior Macedo "
15
- "<rmsolucoeseminformatica@protonmail.com>, 2021-2022\n"
15
+ "<sottomaiormacedotec@gmail.com>, 2021-2022\n"
16
16
  "Language-Team: Portuguese (Brazil) (http://app.transifex.com/torchbox/"
17
17
  "wagtail/language/pt_BR/)\n"
18
18
  "MIME-Version: 1.0\n"
@@ -25,9 +25,9 @@ msgstr ""
25
25
  "Content-Type: text/plain; charset=UTF-8\n"
26
26
  "Content-Transfer-Encoding: 8bit\n"
27
27
  "Language: ru\n"
28
- "Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
29
- "n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || "
30
- "(n%100>=11 && n%100<=14)? 2 : 3);\n"
28
+ "Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
29
+ "%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n"
30
+ "%100>=11 && n%100<=14)? 2 : 3);\n"
31
31
 
32
32
  msgid "Wagtail ModelAdmin"
33
33
  msgstr "Управление моделями Wagtail"
@@ -18,8 +18,8 @@ msgstr ""
18
18
  "Content-Type: text/plain; charset=UTF-8\n"
19
19
  "Content-Transfer-Encoding: 8bit\n"
20
20
  "Language: sl\n"
21
- "Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || "
22
- "n%100==4 ? 2 : 3);\n"
21
+ "Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n"
22
+ "%100==4 ? 2 : 3);\n"
23
23
 
24
24
  msgid "Wagtail ModelAdmin"
25
25
  msgstr "Wagtail ModelAdmin"
@@ -16,8 +16,8 @@ msgstr ""
16
16
  "Content-Type: text/plain; charset=UTF-8\n"
17
17
  "Content-Transfer-Encoding: 8bit\n"
18
18
  "Language: sr\n"
19
- "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
20
- "n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
19
+ "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
20
+ "%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
21
21
 
22
22
  msgid "Saving…"
23
23
  msgstr "Čuvanje..."
@@ -146,11 +146,11 @@ msgstr "عذرًا ، لا توجد عمليات إعادة توجيه تطاب
146
146
 
147
147
  #, python-format
148
148
  msgid ""
149
- "No redirects have been created. Why not <a "
150
- "href=\"%(wagtailredirects_add_redirect_url)s\">add one</a>?"
149
+ "No redirects have been created. Why not <a href="
150
+ "\"%(wagtailredirects_add_redirect_url)s\">add one</a>?"
151
151
  msgstr ""
152
- "لم يتم إنشاء عمليات إعادة توجيه. لماذا لا<a "
153
- "href=\"%(wagtailredirects_add_redirect_url)s\"> تضيف واحدة</a>؟"
152
+ "لم يتم إنشاء عمليات إعادة توجيه. لماذا لا<a href="
153
+ "\"%(wagtailredirects_add_redirect_url)s\"> تضيف واحدة</a>؟"
154
154
 
155
155
  msgid "Search redirects"
156
156
  msgstr "ابحث تغييرات الاتجاه"
@@ -17,9 +17,9 @@ msgstr ""
17
17
  "Content-Type: text/plain; charset=UTF-8\n"
18
18
  "Content-Transfer-Encoding: 8bit\n"
19
19
  "Language: be\n"
20
- "Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
21
- "n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || "
22
- "(n%100>=11 && n%100<=14)? 2 : 3);\n"
20
+ "Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
21
+ "%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n"
22
+ "%100>=11 && n%100<=14)? 2 : 3);\n"
23
23
 
24
24
  msgid "Type"
25
25
  msgstr "Тып"
@@ -77,11 +77,11 @@ msgstr "Редактирайте това пренасочване"
77
77
 
78
78
  #, python-format
79
79
  msgid ""
80
- "No redirects have been created. Why not <a "
81
- "href=\"%(wagtailredirects_add_redirect_url)s\">add one</a>?"
80
+ "No redirects have been created. Why not <a href="
81
+ "\"%(wagtailredirects_add_redirect_url)s\">add one</a>?"
82
82
  msgstr ""
83
- "Няма създадени пренасочвания. Защо не <a "
84
- "href=\"%(wagtailredirects_add_redirect_url)s\">добавите един сега</a>?"
83
+ "Няма създадени пренасочвания. Защо не <a href="
84
+ "\"%(wagtailredirects_add_redirect_url)s\">добавите един сега</a>?"
85
85
 
86
86
  #, python-format
87
87
  msgid "Redirect '%(redirect_title)s' updated."
@@ -215,11 +215,11 @@ msgstr "Ho sentim, cap redirecció coincideix amb \"<em>%(query_string)s</em>\""
215
215
 
216
216
  #, python-format
217
217
  msgid ""
218
- "No redirects have been created. Why not <a "
219
- "href=\"%(wagtailredirects_add_redirect_url)s\">add one</a>?"
218
+ "No redirects have been created. Why not <a href="
219
+ "\"%(wagtailredirects_add_redirect_url)s\">add one</a>?"
220
220
  msgstr ""
221
- "No s'ha creat cap redirecció. Per què no <a "
222
- "href=\"%(wagtailredirects_add_redirect_url)s\">afegeixes una</a>?"
221
+ "No s'ha creat cap redirecció. Per què no <a href="
222
+ "\"%(wagtailredirects_add_redirect_url)s\">afegeixes una</a>?"
223
223
 
224
224
  msgid "Search redirects"
225
225
  msgstr "Cerca redireccions"
@@ -184,11 +184,11 @@ msgstr ""
184
184
 
185
185
  #, python-format
186
186
  msgid ""
187
- "No redirects have been created. Why not <a "
188
- "href=\"%(wagtailredirects_add_redirect_url)s\">add one</a>?"
187
+ "No redirects have been created. Why not <a href="
188
+ "\"%(wagtailredirects_add_redirect_url)s\">add one</a>?"
189
189
  msgstr ""
190
- "Nebyly nalezeny žádná přesměrování. Nové přesměrování můžete přidat <a "
191
- "href=\"%(wagtailredirects_add_redirect_url)s\">zde</a>?"
190
+ "Nebyly nalezeny žádná přesměrování. Nové přesměrování můžete přidat <a href="
191
+ "\"%(wagtailredirects_add_redirect_url)s\">zde</a>?"
192
192
 
193
193
  msgid "Search redirects"
194
194
  msgstr "Hledat přesměrování"
@@ -190,16 +190,16 @@ msgstr "Heb ganfod ailgyfeiriadau."
190
190
  #, python-format
191
191
  msgid "Sorry, no redirects match \"<em>%(query_string)s</em>\""
192
192
  msgstr ""
193
- "Mae'n ddrwg gennym, nid oes unrhyw ailgyfeiriadau yn cyfateb "
194
- "\"<em>%(query_string)s</em>\""
193
+ "Mae'n ddrwg gennym, nid oes unrhyw ailgyfeiriadau yn cyfateb \"<em>"
194
+ "%(query_string)s</em>\""
195
195
 
196
196
  #, python-format
197
197
  msgid ""
198
- "No redirects have been created. Why not <a "
199
- "href=\"%(wagtailredirects_add_redirect_url)s\">add one</a>?"
198
+ "No redirects have been created. Why not <a href="
199
+ "\"%(wagtailredirects_add_redirect_url)s\">add one</a>?"
200
200
  msgstr ""
201
- "Nid oes unrhyw ailgyfeiriadau wedi'u creu. Pam ddim <a "
202
- "href=\"%(wagtailredirects_add_redirect_url)s\">ychwanegu un</a>?"
201
+ "Nid oes unrhyw ailgyfeiriadau wedi'u creu. Pam ddim <a href="
202
+ "\"%(wagtailredirects_add_redirect_url)s\">ychwanegu un</a>?"
203
203
 
204
204
  msgid "Search redirects"
205
205
  msgstr "Chwilio ailgyfeiriadau"
@@ -237,12 +237,11 @@ msgstr ""
237
237
 
238
238
  #, python-format
239
239
  msgid ""
240
- "No redirects have been created. Why not <a "
241
- "href=\"%(wagtailredirects_add_redirect_url)s\">add one</a>?"
240
+ "No redirects have been created. Why not <a href="
241
+ "\"%(wagtailredirects_add_redirect_url)s\">add one</a>?"
242
242
  msgstr ""
243
- "Sie haben noch keine Weiterleitung erstellt.<a "
244
- "href=\"%(wagtailredirects_add_redirect_url)s\">Erstellen Sie doch jetzt eine!"
245
- "</a>"
243
+ "Sie haben noch keine Weiterleitung erstellt.<a href="
244
+ "\"%(wagtailredirects_add_redirect_url)s\">Erstellen Sie doch jetzt eine!</a>"
246
245
 
247
246
  msgid "Search redirects"
248
247
  msgstr "Such-Umleitungen"
@@ -64,9 +64,9 @@ msgid ""
64
64
  "Recommended. Permanent redirects ensure search engines forget the old page "
65
65
  "(the 'Redirect from') and index the new page instead."
66
66
  msgstr ""
67
- "Συνιστώμενο. Με τις μόνιμες ανακατευθύνσεις οι μηχανές αναζήτησης "
68
- "\"ξεχνούν\" την παλαιά σελίδα (\"Ανακατεύθυνση από\") και πλέον "
69
- "χρησιμοποιούν τη νέα σελίδα."
67
+ "Συνιστώμενο. Με τις μόνιμες ανακατευθύνσεις οι μηχανές αναζήτησης \"ξεχνούν"
68
+ "\" την παλαιά σελίδα (\"Ανακατεύθυνση από\") και πλέον χρησιμοποιούν τη νέα "
69
+ "σελίδα."
70
70
 
71
71
  msgid "redirect to a page"
72
72
  msgstr "προώθηση σε ιστοσελίδα"
@@ -144,11 +144,11 @@ msgstr ""
144
144
 
145
145
  #, python-format
146
146
  msgid ""
147
- "No redirects have been created. Why not <a "
148
- "href=\"%(wagtailredirects_add_redirect_url)s\">add one</a>?"
147
+ "No redirects have been created. Why not <a href="
148
+ "\"%(wagtailredirects_add_redirect_url)s\">add one</a>?"
149
149
  msgstr ""
150
- "Δεν υπάρχουν ανακατευθύνσεις. Θέλετε να <a "
151
- "href=\"%(wagtailredirects_add_redirect_url)s\">προσθέσετε μερικές</a>;"
150
+ "Δεν υπάρχουν ανακατευθύνσεις. Θέλετε να <a href="
151
+ "\"%(wagtailredirects_add_redirect_url)s\">προσθέσετε μερικές</a>;"
152
152
 
153
153
  msgid "Search redirects"
154
154
  msgstr "Αναζήτηση ανακατευθύνσεων"
@@ -224,16 +224,16 @@ msgstr[2] "Hay %(counter)s coincidencias"
224
224
  #, python-format
225
225
  msgid "Sorry, no redirects match \"<em>%(query_string)s</em>\""
226
226
  msgstr ""
227
- "Lo sentimos, no hay coincidencias en las redirecciones "
228
- "\"<em>%(query_string)s</em>\""
227
+ "Lo sentimos, no hay coincidencias en las redirecciones \"<em>"
228
+ "%(query_string)s</em>\""
229
229
 
230
230
  #, python-format
231
231
  msgid ""
232
- "No redirects have been created. Why not <a "
233
- "href=\"%(wagtailredirects_add_redirect_url)s\">add one</a>?"
232
+ "No redirects have been created. Why not <a href="
233
+ "\"%(wagtailredirects_add_redirect_url)s\">add one</a>?"
234
234
  msgstr ""
235
- "No se han creado redirecciones. ¿Por qué no <a "
236
- "href=\"%(wagtailredirects_add_redirect_url)s\">añadir una</a>?"
235
+ "No se han creado redirecciones. ¿Por qué no <a href="
236
+ "\"%(wagtailredirects_add_redirect_url)s\">añadir una</a>?"
237
237
 
238
238
  msgid "Search redirects"
239
239
  msgstr "Buscar redirecciones"
@@ -170,11 +170,11 @@ msgstr ""
170
170
 
171
171
  #, python-format
172
172
  msgid ""
173
- "No redirects have been created. Why not <a "
174
- "href=\"%(wagtailredirects_add_redirect_url)s\">add one</a>?"
173
+ "No redirects have been created. Why not <a href="
174
+ "\"%(wagtailredirects_add_redirect_url)s\">add one</a>?"
175
175
  msgstr ""
176
- "Ümbersuunamisi pole loodud. Miks mitte <a "
177
- "href=\"%(wagtailredirects_add_redirect_url)s\">lisada üks</a>?"
176
+ "Ümbersuunamisi pole loodud. Miks mitte <a href="
177
+ "\"%(wagtailredirects_add_redirect_url)s\">lisada üks</a>?"
178
178
 
179
179
  msgid "Search redirects"
180
180
  msgstr "Otsingu ümbersuunamised"
@@ -140,11 +140,11 @@ msgstr "متاسفانه هیچ ریدایرکتی منطبق با «<em>%(query
140
140
 
141
141
  #, python-format
142
142
  msgid ""
143
- "No redirects have been created. Why not <a "
144
- "href=\"%(wagtailredirects_add_redirect_url)s\">add one</a>?"
143
+ "No redirects have been created. Why not <a href="
144
+ "\"%(wagtailredirects_add_redirect_url)s\">add one</a>?"
145
145
  msgstr ""
146
- "هیچ ریدایرکتی ایجاد نشده. می‌توانید یکی را <a "
147
- "href=\"%(wagtailredirects_add_redirect_url)s\">ایجاد</a> کنید"
146
+ "هیچ ریدایرکتی ایجاد نشده. می‌توانید یکی را <a href="
147
+ "\"%(wagtailredirects_add_redirect_url)s\">ایجاد</a> کنید"
148
148
 
149
149
  msgid "Search redirects"
150
150
  msgstr "ریدایرکت های جستجو"