wbcore 1.59.15__py2.py3-none-any.whl → 1.60.0__py2.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 (105) hide show
  1. wbcore/admin.py +0 -1
  2. wbcore/configurations/configurations/apps.py +1 -0
  3. wbcore/contrib/agenda/locale/de/LC_MESSAGES/django.po +17 -18
  4. wbcore/contrib/agenda/locale/en/LC_MESSAGES/django.po +17 -17
  5. wbcore/contrib/agenda/locale/fr/LC_MESSAGES/django.po +17 -18
  6. wbcore/contrib/agenda/models/calendar_item.py +9 -0
  7. wbcore/contrib/authentication/authentication.py +1 -3
  8. wbcore/contrib/authentication/configurations.py +0 -1
  9. wbcore/contrib/authentication/locale/de/LC_MESSAGES/django.po +47 -48
  10. wbcore/contrib/authentication/locale/en/LC_MESSAGES/django.po +47 -47
  11. wbcore/contrib/authentication/locale/fr/LC_MESSAGES/django.po +47 -48
  12. wbcore/contrib/authentication/models/users.py +18 -0
  13. wbcore/contrib/color/admin.py +1 -0
  14. wbcore/contrib/color/factories.py +1 -0
  15. wbcore/contrib/content_type/__init__.py +0 -0
  16. wbcore/contrib/content_type/apps.py +5 -0
  17. wbcore/{filters/fields/content_type.py → contrib/content_type/filters.py} +18 -0
  18. wbcore/{content_type → contrib/content_type}/serializers.py +2 -2
  19. wbcore/contrib/content_type/urls.py +15 -0
  20. wbcore/contrib/directory/factories/contacts.py +1 -0
  21. wbcore/contrib/directory/locale/de/LC_MESSAGES/django.po +307 -271
  22. wbcore/contrib/directory/locale/en/LC_MESSAGES/django.po +305 -268
  23. wbcore/contrib/directory/locale/fr/LC_MESSAGES/django.po +305 -269
  24. wbcore/contrib/directory/migrations/0015_alter_emailcontact_address_and_more.py +47 -0
  25. wbcore/contrib/directory/models/contacts.py +15 -22
  26. wbcore/contrib/directory/models/entries.py +82 -2
  27. wbcore/contrib/directory/models/relationships.py +5 -9
  28. wbcore/contrib/directory/tests/test_models.py +5 -3
  29. wbcore/contrib/directory/viewsets/endpoints/__init__.py +2 -0
  30. wbcore/contrib/directory/viewsets/endpoints/entries.py +10 -0
  31. wbcore/contrib/directory/viewsets/entries.py +9 -2
  32. wbcore/contrib/documents/locale/de/LC_MESSAGES/django.po +26 -23
  33. wbcore/contrib/documents/locale/en/LC_MESSAGES/django.po +26 -22
  34. wbcore/contrib/documents/locale/fr/LC_MESSAGES/django.po +26 -23
  35. wbcore/contrib/documents/serializers/document_model_relationships.py +1 -1
  36. wbcore/contrib/documents/viewsets/documents.py +1 -1
  37. wbcore/contrib/guardian/__init__.py +0 -0
  38. wbcore/contrib/guardian/filters.py +1 -0
  39. wbcore/contrib/guardian/models/mixins.py +1 -0
  40. wbcore/contrib/guardian/tasks.py +1 -0
  41. wbcore/contrib/guardian/tests/test_model_mixins.py +1 -0
  42. wbcore/contrib/guardian/tests/test_tasks.py +1 -0
  43. wbcore/contrib/guardian/tests/test_utils.py +1 -0
  44. wbcore/contrib/guardian/tests/test_viewsets.py +1 -0
  45. wbcore/contrib/guardian/urls.py +1 -0
  46. wbcore/contrib/guardian/utils.py +1 -0
  47. wbcore/contrib/guardian/viewsets/configs/buttons.py +1 -0
  48. wbcore/contrib/guardian/viewsets/configs/endpoints.py +1 -0
  49. wbcore/contrib/guardian/viewsets/viewsets.py +1 -0
  50. wbcore/contrib/io/locale/de/LC_MESSAGES/django.po +28 -28
  51. wbcore/contrib/io/locale/en/LC_MESSAGES/django.po +28 -28
  52. wbcore/contrib/io/locale/fr/LC_MESSAGES/django.po +28 -28
  53. wbcore/contrib/notifications/backends/firebase/backends.py +2 -2
  54. wbcore/contrib/notifications/dispatch.py +1 -3
  55. wbcore/contrib/notifications/locale/de/LC_MESSAGES/django.po +2 -3
  56. wbcore/contrib/notifications/locale/en/LC_MESSAGES/django.po +2 -2
  57. wbcore/contrib/notifications/locale/fr/LC_MESSAGES/django.po +2 -3
  58. wbcore/contrib/notifications/models/notification_types.py +5 -7
  59. wbcore/contrib/notifications/models/notifications.py +2 -2
  60. wbcore/contrib/notifications/models/tokens.py +2 -2
  61. wbcore/contrib/tags/filters.py +1 -1
  62. wbcore/contrib/tags/serializers.py +2 -2
  63. wbcore/contrib/workflow/locale/de/LC_MESSAGES/django.po +75 -76
  64. wbcore/contrib/workflow/locale/en/LC_MESSAGES/django.po +75 -75
  65. wbcore/contrib/workflow/locale/fr/LC_MESSAGES/django.po +75 -76
  66. wbcore/contrib/workflow/serializers/process.py +4 -4
  67. wbcore/contrib/workflow/serializers/workflow.py +1 -1
  68. wbcore/filters/__init__.py +0 -1
  69. wbcore/filters/fields/__init__.py +0 -1
  70. wbcore/frontend_user_configuration.py +3 -2
  71. wbcore/locale/de/LC_MESSAGES/django.po +159 -129
  72. wbcore/locale/en/LC_MESSAGES/django.po +158 -129
  73. wbcore/locale/fr/LC_MESSAGES/django.po +159 -129
  74. wbcore/menus/menus.py +8 -5
  75. wbcore/metadata/configs/buttons/view_config.py +4 -1
  76. wbcore/metadata/configs/display/models.py +4 -5
  77. wbcore/metadata/configs/endpoints.py +7 -5
  78. wbcore/migrations/0015_delete_genericmodel.py +16 -0
  79. wbcore/models/base.py +0 -11
  80. wbcore/release_notes/models.py +2 -4
  81. wbcore/serializers/fields/fields.py +4 -2
  82. wbcore/serializers/fields/number.py +9 -0
  83. wbcore/shares/config.py +2 -2
  84. wbcore/signals/merge.py +1 -0
  85. wbcore/test/utils.py +3 -1
  86. wbcore/tests/test_permissions/test_backend.py +1 -3
  87. wbcore/tests/test_something.py +2 -2
  88. wbcore/urls.py +5 -10
  89. wbcore/utils/models.py +73 -4
  90. wbcore/utils/views.py +54 -53
  91. wbcore/viewsets/mixins.py +1 -1
  92. wbcore/viewsets/viewsets.py +1 -1
  93. {wbcore-1.59.15.dist-info → wbcore-1.60.0.dist-info}/METADATA +1 -1
  94. {wbcore-1.59.15.dist-info → wbcore-1.60.0.dist-info}/RECORD +99 -99
  95. wbcore/content_type/filters.py +0 -20
  96. wbcore/pandas/__init__.py +0 -53
  97. wbcore/pandas/fields.py +0 -25
  98. wbcore/pandas/filterset.py +0 -9
  99. wbcore/pandas/utils.py +0 -25
  100. wbcore/pandas/views.py +0 -9
  101. /wbcore/{content_type → contrib/color}/__init__.py +0 -0
  102. /wbcore/{content_type → contrib/content_type}/admin.py +0 -0
  103. /wbcore/{content_type → contrib/content_type}/utils.py +0 -0
  104. /wbcore/{content_type → contrib/content_type}/viewsets.py +0 -0
  105. {wbcore-1.59.15.dist-info → wbcore-1.60.0.dist-info}/WHEEL +0 -0
@@ -7,7 +7,7 @@ msgid ""
7
7
  msgstr ""
8
8
  "Project-Id-Version: PACKAGE VERSION\n"
9
9
  "Report-Msgid-Bugs-To: \n"
10
- "POT-Creation-Date: 2025-05-30 13:27+0200\n"
10
+ "POT-Creation-Date: 2026-01-16 14:04+0100\n"
11
11
  "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
12
12
  "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
13
13
  "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -16,7 +16,7 @@ msgstr ""
16
16
  "Content-Type: text/plain; charset=UTF-8\n"
17
17
  "Content-Transfer-Encoding: 8bit\n"
18
18
 
19
- #: admin.py:38 contrib/example_app/viewsets/displays/league.py:151
19
+ #: admin.py:37 contrib/example_app/viewsets/displays/league.py:151
20
20
  #: contrib/example_app/viewsets/displays/league.py:271
21
21
  #: contrib/example_app/viewsets/displays/league.py:346
22
22
  #: contrib/example_app/viewsets/displays/team.py:101
@@ -24,7 +24,7 @@ msgstr ""
24
24
  msgid "Main Information"
25
25
  msgstr ""
26
26
 
27
- #: admin.py:109
27
+ #: admin.py:108
28
28
  #, python-brace-format
29
29
  msgid "Your CSV file has been imported ( {imports} imported, {errors} errors)"
30
30
  msgstr ""
@@ -34,7 +34,7 @@ msgstr ""
34
34
  msgid "Clear Cache"
35
35
  msgstr ""
36
36
 
37
- #: configurations/configurations/wbcore.py:22
37
+ #: configurations/configurations/wbcore.py:21
38
38
  msgid "Check out our upcoming beta version"
39
39
  msgstr ""
40
40
 
@@ -42,7 +42,7 @@ msgstr ""
42
42
  msgid "Rates"
43
43
  msgstr ""
44
44
 
45
- #: contrib/example_app/filters/event.py:18 contrib/example_app/models.py:125
45
+ #: contrib/example_app/filters/event.py:18 contrib/example_app/models.py:127
46
46
  #: contrib/example_app/viewsets/menu/menus.py:30
47
47
  #: contrib/example_app/viewsets/menu/menus.py:94
48
48
  #: contrib/example_app/viewsets/titles/person.py:9
@@ -52,13 +52,13 @@ msgstr ""
52
52
  #: contrib/example_app/filters/event.py:24
53
53
  #: contrib/example_app/filters/event.py:25
54
54
  #: contrib/example_app/filters/event.py:72
55
- #: contrib/example_app/filters/event.py:73 contrib/example_app/models.py:831
55
+ #: contrib/example_app/filters/event.py:73 contrib/example_app/models.py:833
56
56
  #: contrib/example_app/serializers/match_event.py:129
57
57
  #: contrib/example_app/viewsets/displays/event.py:20
58
58
  msgid "Minute"
59
59
  msgstr ""
60
60
 
61
- #: contrib/example_app/filters/event.py:27 contrib/example_app/models.py:923
61
+ #: contrib/example_app/filters/event.py:27 contrib/example_app/models.py:925
62
62
  #: contrib/example_app/viewsets/displays/sport.py:52
63
63
  #: contrib/example_app/viewsets/displays/sport.py:56
64
64
  #: contrib/example_app/viewsets/menu/menus.py:83
@@ -66,8 +66,8 @@ msgstr ""
66
66
  msgid "Event Types"
67
67
  msgstr ""
68
68
 
69
- #: contrib/example_app/filters/event.py:41 contrib/example_app/models.py:586
70
- #: contrib/example_app/models.py:829
69
+ #: contrib/example_app/filters/event.py:41 contrib/example_app/models.py:588
70
+ #: contrib/example_app/models.py:831
71
71
  #: contrib/example_app/viewsets/displays/event.py:17
72
72
  #: contrib/example_app/viewsets/titles/match.py:15
73
73
  msgid "Match"
@@ -78,7 +78,7 @@ msgstr ""
78
78
  #: contrib/example_app/filters/teamresult.py:15
79
79
  #: contrib/example_app/filters/teamresult.py:16
80
80
  #: contrib/example_app/filters/teamresult.py:30
81
- #: contrib/example_app/models.py:267 contrib/example_app/models.py:883
81
+ #: contrib/example_app/models.py:269 contrib/example_app/models.py:885
82
82
  #: contrib/example_app/viewsets/displays/event.py:12
83
83
  #: contrib/example_app/viewsets/displays/teamresult.py:17
84
84
  msgid "Points"
@@ -86,7 +86,7 @@ msgstr ""
86
86
 
87
87
  #: contrib/example_app/filters/event.py:63
88
88
  #: contrib/example_app/filters/league.py:70
89
- #: contrib/example_app/filters/match.py:54 contrib/example_app/models.py:163
89
+ #: contrib/example_app/filters/match.py:54 contrib/example_app/models.py:165
90
90
  #: contrib/example_app/viewsets/menu/menus.py:38
91
91
  #: contrib/example_app/viewsets/titles/sport.py:8
92
92
  msgid "Sports"
@@ -97,7 +97,7 @@ msgid "Period"
97
97
  msgstr ""
98
98
 
99
99
  #: contrib/example_app/filters/league.py:10
100
- #: contrib/example_app/filters/league.py:15 contrib/example_app/models.py:193
100
+ #: contrib/example_app/filters/league.py:15 contrib/example_app/models.py:195
101
101
  msgid "Established Date"
102
102
  msgstr ""
103
103
 
@@ -111,7 +111,7 @@ msgstr ""
111
111
 
112
112
  #: contrib/example_app/filters/league.py:35
113
113
  #: contrib/example_app/filters/teamresult.py:9
114
- #: contrib/example_app/models.py:258 contrib/example_app/models.py:722
114
+ #: contrib/example_app/models.py:260 contrib/example_app/models.py:724
115
115
  #: contrib/example_app/viewsets/displays/event.py:70
116
116
  #: contrib/example_app/viewsets/displays/teamresult.py:9
117
117
  #: contrib/example_app/viewsets/menus.py:6
@@ -120,47 +120,47 @@ msgid "Team"
120
120
  msgstr ""
121
121
 
122
122
  #: contrib/example_app/filters/league.py:42
123
- #: contrib/example_app/filters/league.py:45 contrib/example_app/models.py:203
123
+ #: contrib/example_app/filters/league.py:45 contrib/example_app/models.py:205
124
124
  #: contrib/example_app/viewsets/displays/league.py:23
125
125
  msgid "Points Per Win"
126
126
  msgstr ""
127
127
 
128
128
  #: contrib/example_app/filters/league.py:48
129
- #: contrib/example_app/filters/league.py:51 contrib/example_app/models.py:204
129
+ #: contrib/example_app/filters/league.py:51 contrib/example_app/models.py:206
130
130
  #: contrib/example_app/viewsets/displays/league.py:24
131
131
  msgid "Points Per Draw"
132
132
  msgstr ""
133
133
 
134
134
  #: contrib/example_app/filters/league.py:54
135
- #: contrib/example_app/filters/league.py:57 contrib/example_app/models.py:205
135
+ #: contrib/example_app/filters/league.py:57 contrib/example_app/models.py:207
136
136
  #: contrib/example_app/viewsets/displays/league.py:25
137
137
  msgid "Points Per Loss"
138
138
  msgstr ""
139
139
 
140
140
  #: contrib/example_app/filters/match.py:16
141
- #: contrib/example_app/filters/match.py:21 contrib/example_app/models.py:389
141
+ #: contrib/example_app/filters/match.py:21 contrib/example_app/models.py:391
142
142
  #: contrib/example_app/viewsets/displays/match.py:24
143
143
  msgid "Date Time"
144
144
  msgstr ""
145
145
 
146
- #: contrib/example_app/filters/match.py:26 contrib/example_app/models.py:381
146
+ #: contrib/example_app/filters/match.py:26 contrib/example_app/models.py:383
147
147
  #: contrib/example_app/viewsets/displays/match.py:19
148
148
  msgid "Home"
149
149
  msgstr ""
150
150
 
151
- #: contrib/example_app/filters/match.py:33 contrib/example_app/models.py:387
151
+ #: contrib/example_app/filters/match.py:33 contrib/example_app/models.py:389
152
152
  #: contrib/example_app/viewsets/displays/match.py:21
153
153
  msgid "Away"
154
154
  msgstr ""
155
155
 
156
156
  #: contrib/example_app/filters/match.py:39
157
- #: contrib/example_app/filters/match.py:40 contrib/example_app/models.py:401
157
+ #: contrib/example_app/filters/match.py:40 contrib/example_app/models.py:403
158
158
  #: contrib/example_app/viewsets/displays/match.py:20
159
159
  msgid "Home Score"
160
160
  msgstr ""
161
161
 
162
162
  #: contrib/example_app/filters/match.py:41
163
- #: contrib/example_app/filters/match.py:42 contrib/example_app/models.py:402
163
+ #: contrib/example_app/filters/match.py:42 contrib/example_app/models.py:404
164
164
  #: contrib/example_app/viewsets/displays/match.py:22
165
165
  msgid "Away Score"
166
166
  msgstr ""
@@ -169,19 +169,19 @@ msgstr ""
169
169
  msgid "Referees"
170
170
  msgstr ""
171
171
 
172
- #: contrib/example_app/filters/match.py:51 contrib/example_app/models.py:398
172
+ #: contrib/example_app/filters/match.py:51 contrib/example_app/models.py:400
173
173
  msgid "Status"
174
174
  msgstr ""
175
175
 
176
176
  #: contrib/example_app/filters/match.py:68
177
177
  #: contrib/example_app/filters/match.py:88
178
- #: contrib/example_app/filters/team.py:73 contrib/example_app/models.py:359
178
+ #: contrib/example_app/filters/team.py:73 contrib/example_app/models.py:361
179
179
  #: contrib/example_app/viewsets/menu/menus.py:22
180
180
  #: contrib/example_app/viewsets/titles/stadium.py:8
181
181
  msgid "Stadiums"
182
182
  msgstr ""
183
183
 
184
- #: contrib/example_app/filters/match.py:78 contrib/example_app/models.py:227
184
+ #: contrib/example_app/filters/match.py:78 contrib/example_app/models.py:229
185
185
  #: contrib/example_app/viewsets/displays/sport.py:31
186
186
  #: contrib/example_app/viewsets/displays/sport.py:35
187
187
  #: contrib/example_app/viewsets/menu/menus.py:14
@@ -198,8 +198,8 @@ msgstr ""
198
198
  msgid "All persons participating in a selected Match."
199
199
  msgstr ""
200
200
 
201
- #: contrib/example_app/filters/person.py:38 contrib/example_app/models.py:69
202
- #: contrib/example_app/models.py:73
201
+ #: contrib/example_app/filters/person.py:38 contrib/example_app/models.py:71
202
+ #: contrib/example_app/models.py:75
203
203
  #: contrib/example_app/serializers/person_team.py:209
204
204
  #: contrib/example_app/viewsets/displays/person.py:13
205
205
  #: contrib/example_app/viewsets/menu/menus.py:59
@@ -207,13 +207,13 @@ msgstr ""
207
207
  msgid "Roles"
208
208
  msgstr ""
209
209
 
210
- #: contrib/example_app/filters/person.py:55 contrib/example_app/models.py:760
210
+ #: contrib/example_app/filters/person.py:55 contrib/example_app/models.py:762
211
211
  #: contrib/example_app/viewsets/displays/person.py:19
212
212
  msgid "Former Teams"
213
213
  msgstr ""
214
214
 
215
215
  #: contrib/example_app/filters/person.py:61
216
- #: contrib/example_app/filters/person.py:62 contrib/example_app/models.py:766
216
+ #: contrib/example_app/filters/person.py:62 contrib/example_app/models.py:768
217
217
  #: contrib/example_app/viewsets/displays/person.py:22
218
218
  msgid "Market Value"
219
219
  msgstr ""
@@ -252,7 +252,7 @@ msgid "Cities"
252
252
  msgstr ""
253
253
 
254
254
  #: contrib/example_app/filters/team.py:11
255
- #: contrib/example_app/filters/team.py:16 contrib/example_app/models.py:658
255
+ #: contrib/example_app/filters/team.py:16 contrib/example_app/models.py:660
256
256
  #: contrib/example_app/viewsets/displays/team.py:19
257
257
  msgid "Founded Date"
258
258
  msgstr ""
@@ -275,41 +275,41 @@ msgstr ""
275
275
 
276
276
  #: contrib/example_app/filters/teamresult.py:18
277
277
  #: contrib/example_app/filters/teamresult.py:21
278
- #: contrib/example_app/models.py:268
278
+ #: contrib/example_app/models.py:270
279
279
  #: contrib/example_app/viewsets/displays/teamresult.py:14
280
280
  msgid "Match Points For"
281
281
  msgstr ""
282
282
 
283
283
  #: contrib/example_app/filters/teamresult.py:24
284
284
  #: contrib/example_app/filters/teamresult.py:27
285
- #: contrib/example_app/models.py:269
285
+ #: contrib/example_app/models.py:271
286
286
  #: contrib/example_app/viewsets/displays/teamresult.py:15
287
287
  msgid "Match Points Against"
288
288
  msgstr ""
289
289
 
290
290
  #: contrib/example_app/filters/teamresult.py:29
291
- #: contrib/example_app/models.py:271
291
+ #: contrib/example_app/models.py:273
292
292
  #: contrib/example_app/viewsets/displays/teamresult.py:11
293
293
  msgid "Wins"
294
294
  msgstr ""
295
295
 
296
296
  #: contrib/example_app/filters/teamresult.py:31
297
297
  #: contrib/example_app/filters/teamresult.py:32
298
- #: contrib/example_app/models.py:272
298
+ #: contrib/example_app/models.py:274
299
299
  #: contrib/example_app/viewsets/displays/teamresult.py:12
300
300
  msgid "Draws"
301
301
  msgstr ""
302
302
 
303
303
  #: contrib/example_app/filters/teamresult.py:33
304
304
  #: contrib/example_app/filters/teamresult.py:34
305
- #: contrib/example_app/models.py:273
305
+ #: contrib/example_app/models.py:275
306
306
  #: contrib/example_app/viewsets/displays/teamresult.py:13
307
307
  msgid "Losses"
308
308
  msgstr ""
309
309
 
310
310
  #: contrib/example_app/filters/teamresult.py:43
311
- #: contrib/example_app/models.py:226 contrib/example_app/models.py:264
312
- #: contrib/example_app/models.py:416
311
+ #: contrib/example_app/models.py:228 contrib/example_app/models.py:266
312
+ #: contrib/example_app/models.py:418
313
313
  #: contrib/example_app/viewsets/displays/match.py:23
314
314
  #: contrib/example_app/viewsets/displays/season.py:12
315
315
  #: contrib/example_app/viewsets/displays/season.py:25
@@ -320,36 +320,36 @@ msgstr ""
320
320
  msgid "League"
321
321
  msgstr ""
322
322
 
323
- #: contrib/example_app/models.py:39
323
+ #: contrib/example_app/models.py:41
324
324
  #: contrib/example_app/viewsets/displays/role.py:14
325
325
  msgid "Title"
326
326
  msgstr ""
327
327
 
328
- #: contrib/example_app/models.py:68
328
+ #: contrib/example_app/models.py:70
329
329
  #: contrib/example_app/viewsets/titles/role.py:14
330
330
  msgid "Role"
331
331
  msgstr ""
332
332
 
333
- #: contrib/example_app/models.py:74
333
+ #: contrib/example_app/models.py:76
334
334
  #: contrib/example_app/viewsets/displays/person.py:11
335
335
  msgid "First Name"
336
336
  msgstr ""
337
337
 
338
- #: contrib/example_app/models.py:75
338
+ #: contrib/example_app/models.py:77
339
339
  #: contrib/example_app/viewsets/displays/person.py:12
340
340
  msgid "Last Name"
341
341
  msgstr ""
342
342
 
343
- #: contrib/example_app/models.py:93
343
+ #: contrib/example_app/models.py:95
344
344
  #, python-brace-format
345
345
  msgid " (Coach of {self.coached_team.name})"
346
346
  msgstr ""
347
347
 
348
- #: contrib/example_app/models.py:95
348
+ #: contrib/example_app/models.py:97
349
349
  msgid " (Commissioner of {self.commissioned_leagues.first().name})"
350
350
  msgstr ""
351
351
 
352
- #: contrib/example_app/models.py:124 contrib/example_app/models.py:823
352
+ #: contrib/example_app/models.py:126 contrib/example_app/models.py:825
353
353
  #: contrib/example_app/serializers/match_event.py:117
354
354
  #: contrib/example_app/viewsets/displays/event.py:19
355
355
  #: contrib/example_app/viewsets/displays/event.py:63
@@ -360,29 +360,29 @@ msgstr ""
360
360
  msgid "Person"
361
361
  msgstr ""
362
362
 
363
- #: contrib/example_app/models.py:129 contrib/example_app/models.py:177
364
- #: contrib/example_app/models.py:308 contrib/example_app/models.py:881
363
+ #: contrib/example_app/models.py:131 contrib/example_app/models.py:179
364
+ #: contrib/example_app/models.py:310 contrib/example_app/models.py:883
365
365
  #: contrib/example_app/viewsets/displays/event.py:10
366
366
  #: contrib/example_app/viewsets/displays/league.py:21
367
367
  #: contrib/example_app/viewsets/displays/person.py:171
368
368
  #: contrib/example_app/viewsets/displays/sport.py:21
369
369
  #: contrib/example_app/viewsets/displays/stadium.py:21
370
370
  #: contrib/example_app/viewsets/displays/team.py:24
371
- #: contrib/example_app/viewsets/displays/team.py:197 utils/models.py:64
371
+ #: contrib/example_app/viewsets/displays/team.py:197 utils/models.py:68
372
372
  msgid "Name"
373
373
  msgstr ""
374
374
 
375
- #: contrib/example_app/models.py:131
375
+ #: contrib/example_app/models.py:133
376
376
  #: contrib/example_app/viewsets/displays/sport.py:23
377
377
  msgid "Rules"
378
378
  msgstr ""
379
379
 
380
- #: contrib/example_app/models.py:132
380
+ #: contrib/example_app/models.py:134
381
381
  msgid "Match Duration (min)"
382
382
  msgstr ""
383
383
 
384
- #: contrib/example_app/models.py:162 contrib/example_app/models.py:182
385
- #: contrib/example_app/models.py:429 contrib/example_app/models.py:891
384
+ #: contrib/example_app/models.py:164 contrib/example_app/models.py:184
385
+ #: contrib/example_app/models.py:431 contrib/example_app/models.py:893
386
386
  #: contrib/example_app/viewsets/displays/event.py:11
387
387
  #: contrib/example_app/viewsets/displays/league.py:22
388
388
  #: contrib/example_app/viewsets/menus.py:38
@@ -390,22 +390,22 @@ msgstr ""
390
390
  msgid "Sport"
391
391
  msgstr ""
392
392
 
393
- #: contrib/example_app/models.py:191
393
+ #: contrib/example_app/models.py:193
394
394
  #: contrib/example_app/viewsets/displays/league.py:26
395
395
  msgid "Country"
396
396
  msgstr ""
397
397
 
398
- #: contrib/example_app/models.py:200
398
+ #: contrib/example_app/models.py:202
399
399
  #: contrib/example_app/viewsets/displays/league.py:28
400
400
  msgid "Commissioner"
401
401
  msgstr ""
402
402
 
403
- #: contrib/example_app/models.py:202 contrib/example_app/models.py:689
403
+ #: contrib/example_app/models.py:204 contrib/example_app/models.py:691
404
404
  #: contrib/example_app/viewsets/displays/league.py:29
405
405
  msgid "Website"
406
406
  msgstr ""
407
407
 
408
- #: contrib/example_app/models.py:212 contrib/example_app/models.py:723
408
+ #: contrib/example_app/models.py:214 contrib/example_app/models.py:725
409
409
  #: contrib/example_app/viewsets/displays/stadium.py:62
410
410
  #: contrib/example_app/viewsets/displays/stadium.py:66
411
411
  #: contrib/example_app/viewsets/menu/menus.py:6
@@ -413,159 +413,159 @@ msgstr ""
413
413
  msgid "Teams"
414
414
  msgstr ""
415
415
 
416
- #: contrib/example_app/models.py:270
416
+ #: contrib/example_app/models.py:272
417
417
  #: contrib/example_app/viewsets/displays/teamresult.py:16
418
418
  msgid "Match Point Difference"
419
419
  msgstr ""
420
420
 
421
- #: contrib/example_app/models.py:274
421
+ #: contrib/example_app/models.py:276
422
422
  #: contrib/example_app/viewsets/displays/teamresult.py:18
423
423
  msgid "Form"
424
424
  msgstr ""
425
425
 
426
- #: contrib/example_app/models.py:277
426
+ #: contrib/example_app/models.py:279
427
427
  msgid "{} in {}"
428
428
  msgstr ""
429
429
 
430
- #: contrib/example_app/models.py:284
430
+ #: contrib/example_app/models.py:286
431
431
  msgid "Team Result"
432
432
  msgstr ""
433
433
 
434
- #: contrib/example_app/models.py:285
434
+ #: contrib/example_app/models.py:287
435
435
  #: contrib/example_app/viewsets/titles/teamresult.py:8
436
436
  msgid "Team Results"
437
437
  msgstr ""
438
438
 
439
- #: contrib/example_app/models.py:315 contrib/example_app/models.py:654
439
+ #: contrib/example_app/models.py:317 contrib/example_app/models.py:656
440
440
  #: contrib/example_app/viewsets/displays/stadium.py:22
441
441
  #: contrib/example_app/viewsets/displays/team.py:18
442
442
  msgid "City"
443
443
  msgstr ""
444
444
 
445
- #: contrib/example_app/models.py:319
445
+ #: contrib/example_app/models.py:321
446
446
  msgid "Standing Capacity"
447
447
  msgstr ""
448
448
 
449
- #: contrib/example_app/models.py:320
449
+ #: contrib/example_app/models.py:322
450
450
  msgid "Seating Capacity"
451
451
  msgstr ""
452
452
 
453
- #: contrib/example_app/models.py:324
453
+ #: contrib/example_app/models.py:326
454
454
  msgid "Guest Rating"
455
455
  msgstr ""
456
456
 
457
- #: contrib/example_app/models.py:358 contrib/example_app/models.py:394
457
+ #: contrib/example_app/models.py:360 contrib/example_app/models.py:396
458
458
  #: contrib/example_app/viewsets/displays/match.py:25
459
459
  #: contrib/example_app/viewsets/menus.py:22
460
460
  #: contrib/example_app/viewsets/titles/stadium.py:14
461
461
  msgid "Stadium"
462
462
  msgstr ""
463
463
 
464
- #: contrib/example_app/models.py:364
464
+ #: contrib/example_app/models.py:366
465
465
  msgid "Scheduled"
466
466
  msgstr ""
467
467
 
468
- #: contrib/example_app/models.py:365
468
+ #: contrib/example_app/models.py:367
469
469
  msgid "Ongoing"
470
470
  msgstr ""
471
471
 
472
- #: contrib/example_app/models.py:366
472
+ #: contrib/example_app/models.py:368
473
473
  msgid "Finished"
474
474
  msgstr ""
475
475
 
476
- #: contrib/example_app/models.py:451 reversion/viewsets/buttons.py:44
476
+ #: contrib/example_app/models.py:453 reversion/viewsets/buttons.py:44
477
477
  #: utils/serializers.py:8
478
478
  msgid "Start"
479
479
  msgstr ""
480
480
 
481
- #: contrib/example_app/models.py:452
481
+ #: contrib/example_app/models.py:454
482
482
  msgid "Starting"
483
483
  msgstr ""
484
484
 
485
- #: contrib/example_app/models.py:453
485
+ #: contrib/example_app/models.py:455
486
486
  msgid "Are you sure you want to start the match?"
487
487
  msgstr ""
488
488
 
489
- #: contrib/example_app/models.py:471 utils/serializers.py:9
489
+ #: contrib/example_app/models.py:473 utils/serializers.py:9
490
490
  msgid "End"
491
491
  msgstr ""
492
492
 
493
- #: contrib/example_app/models.py:472
493
+ #: contrib/example_app/models.py:474
494
494
  msgid "Ending"
495
495
  msgstr ""
496
496
 
497
- #: contrib/example_app/models.py:473
497
+ #: contrib/example_app/models.py:475
498
498
  msgid "Are you sure you want to end the match?"
499
499
  msgstr ""
500
500
 
501
- #: contrib/example_app/models.py:587
501
+ #: contrib/example_app/models.py:589
502
502
  #: contrib/example_app/viewsets/menu/menus.py:67
503
503
  #: contrib/example_app/viewsets/titles/match.py:9
504
504
  msgid "Matches"
505
505
  msgstr ""
506
506
 
507
- #: contrib/example_app/models.py:665
507
+ #: contrib/example_app/models.py:667
508
508
  #: contrib/example_app/viewsets/buttons/team.py:17
509
509
  #: contrib/example_app/viewsets/displays/team.py:20
510
510
  msgid "Coach"
511
511
  msgstr ""
512
512
 
513
- #: contrib/example_app/models.py:673
513
+ #: contrib/example_app/models.py:675
514
514
  #: contrib/example_app/serializers/person_team.py:86
515
515
  #: contrib/example_app/viewsets/displays/team.py:21
516
516
  msgid "Home Stadium"
517
517
  msgstr ""
518
518
 
519
- #: contrib/example_app/models.py:680
519
+ #: contrib/example_app/models.py:682
520
520
  msgid "Opponents"
521
521
  msgstr ""
522
522
 
523
- #: contrib/example_app/models.py:686
523
+ #: contrib/example_app/models.py:688
524
524
  msgid "Email Address"
525
525
  msgstr ""
526
526
 
527
- #: contrib/example_app/models.py:687
527
+ #: contrib/example_app/models.py:689
528
528
  msgid "Phone Number"
529
529
  msgstr ""
530
530
 
531
- #: contrib/example_app/models.py:747
531
+ #: contrib/example_app/models.py:749
532
532
  #: contrib/example_app/viewsets/displays/person.py:17
533
533
  msgid "Position"
534
534
  msgstr ""
535
535
 
536
- #: contrib/example_app/models.py:754
536
+ #: contrib/example_app/models.py:756
537
537
  #: contrib/example_app/serializers/person_team.py:214
538
538
  #: contrib/example_app/viewsets/displays/person.py:18
539
539
  msgid "Current Team"
540
540
  msgstr ""
541
541
 
542
- #: contrib/example_app/models.py:768
542
+ #: contrib/example_app/models.py:770
543
543
  msgid "Is Active"
544
544
  msgstr ""
545
545
 
546
- #: contrib/example_app/models.py:769
546
+ #: contrib/example_app/models.py:771
547
547
  msgid "Is Injured"
548
548
  msgstr ""
549
549
 
550
- #: contrib/example_app/models.py:773
550
+ #: contrib/example_app/models.py:775
551
551
  msgid "Player Strength"
552
552
  msgstr ""
553
553
 
554
- #: contrib/example_app/models.py:778
554
+ #: contrib/example_app/models.py:780
555
555
  msgid "Game Activity"
556
556
  msgstr ""
557
557
 
558
- #: contrib/example_app/models.py:790
558
+ #: contrib/example_app/models.py:792
559
559
  #, python-brace-format
560
560
  msgid " ({self.position} at {self.current_team.name})"
561
561
  msgstr ""
562
562
 
563
- #: contrib/example_app/models.py:792
563
+ #: contrib/example_app/models.py:794
564
564
  #, python-brace-format
565
565
  msgid " ({self.current_team.name})"
566
566
  msgstr ""
567
567
 
568
- #: contrib/example_app/models.py:813
568
+ #: contrib/example_app/models.py:815
569
569
  #: contrib/example_app/viewsets/displays/person.py:113
570
570
  #: contrib/example_app/viewsets/displays/person.py:220
571
571
  #: contrib/example_app/viewsets/menus.py:46
@@ -573,7 +573,7 @@ msgstr ""
573
573
  msgid "Player"
574
574
  msgstr ""
575
575
 
576
- #: contrib/example_app/models.py:814
576
+ #: contrib/example_app/models.py:816
577
577
  #: contrib/example_app/viewsets/displays/team.py:54
578
578
  #: contrib/example_app/viewsets/displays/team.py:58
579
579
  #: contrib/example_app/viewsets/menu/menus.py:51
@@ -581,22 +581,22 @@ msgstr ""
581
581
  msgid "Players"
582
582
  msgstr ""
583
583
 
584
- #: contrib/example_app/models.py:818
584
+ #: contrib/example_app/models.py:820
585
585
  msgid "Event Description"
586
586
  msgstr ""
587
587
 
588
- #: contrib/example_app/models.py:836 contrib/example_app/models.py:922
588
+ #: contrib/example_app/models.py:838 contrib/example_app/models.py:924
589
589
  #: contrib/example_app/viewsets/displays/event.py:18
590
590
  #: contrib/example_app/viewsets/titles/event.py:32
591
591
  msgid "Event Type"
592
592
  msgstr ""
593
593
 
594
- #: contrib/example_app/models.py:870
594
+ #: contrib/example_app/models.py:872
595
595
  #: contrib/example_app/viewsets/titles/event.py:15
596
596
  msgid "Event"
597
597
  msgstr ""
598
598
 
599
- #: contrib/example_app/models.py:871
599
+ #: contrib/example_app/models.py:873
600
600
  #: contrib/example_app/viewsets/displays/match.py:60
601
601
  #: contrib/example_app/viewsets/displays/match.py:64
602
602
  #: contrib/example_app/viewsets/menu/menus.py:75
@@ -605,22 +605,22 @@ msgstr ""
605
605
  msgid "Events"
606
606
  msgstr ""
607
607
 
608
- #: contrib/example_app/models.py:884
608
+ #: contrib/example_app/models.py:886
609
609
  msgid "Number of points awarded to a player's team per event"
610
610
  msgstr ""
611
611
 
612
- #: contrib/example_app/models.py:895
613
- #: contrib/example_app/viewsets/displays/event.py:13 utils/models.py:259
612
+ #: contrib/example_app/models.py:897
613
+ #: contrib/example_app/viewsets/displays/event.py:13 utils/models.py:267
614
614
  msgid "Icon"
615
615
  msgstr ""
616
616
 
617
- #: contrib/example_app/models.py:975
617
+ #: contrib/example_app/models.py:977
618
618
  #: contrib/example_app/viewsets/displays/season.py:37
619
619
  #: contrib/example_app/viewsets/menu/menus.py:46
620
620
  msgid "Season"
621
621
  msgstr ""
622
622
 
623
- #: contrib/example_app/models.py:976
623
+ #: contrib/example_app/models.py:978
624
624
  msgid "Seasons"
625
625
  msgstr ""
626
626
 
@@ -719,7 +719,7 @@ msgstr ""
719
719
  msgid "Homepage"
720
720
  msgstr ""
721
721
 
722
- #: contrib/example_app/viewsets/displays/event.py:14 utils/models.py:249
722
+ #: contrib/example_app/viewsets/displays/event.py:14 utils/models.py:257
723
723
  msgid "Color"
724
724
  msgstr ""
725
725
 
@@ -922,58 +922,87 @@ msgstr ""
922
922
  msgid "Create Team In {}"
923
923
  msgstr ""
924
924
 
925
- #: contrib/guardian/models/mixins.py:25
925
+ #: contrib/guardian/models/mixins.py:27
926
926
  msgid "Internal"
927
927
  msgstr ""
928
928
 
929
- #: contrib/guardian/models/mixins.py:26
929
+ #: contrib/guardian/models/mixins.py:28
930
930
  msgid "Public"
931
931
  msgstr ""
932
932
 
933
- #: contrib/guardian/models/mixins.py:27
933
+ #: contrib/guardian/models/mixins.py:29
934
934
  msgid "Private"
935
935
  msgstr ""
936
936
 
937
- #: dynamic_preferences_registry.py:18
937
+ #: dynamic_preferences_registry.py:19
938
938
  msgid "Retention Period in Days"
939
939
  msgstr ""
940
940
 
941
- #: dynamic_preferences_registry.py:20
941
+ #: dynamic_preferences_registry.py:21
942
942
  msgid ""
943
943
  "When an object cannot be deleted and is disabled instead, it gets hidden "
944
944
  "from the queryset but not deleted. For compliance reasons we enable the "
945
945
  "retention for a specific period of days (defaults to a year)"
946
946
  msgstr ""
947
947
 
948
- #: dynamic_preferences_registry.py:31 dynamic_preferences_registry.py:32
948
+ #: dynamic_preferences_registry.py:32 dynamic_preferences_registry.py:33
949
949
  msgid "System User Email"
950
950
  msgstr ""
951
951
 
952
- #: dynamic_preferences_registry.py:48 dynamic_preferences_registry.py:49
952
+ #: dynamic_preferences_registry.py:49
953
953
  msgid "System Language"
954
954
  msgstr ""
955
955
 
956
- #: dynamic_preferences_registry.py:74 dynamic_preferences_registry.py:75
956
+ #: dynamic_preferences_registry.py:50
957
+ msgid "Select the language you want the Workbench to display."
958
+ msgstr ""
959
+
960
+ #: dynamic_preferences_registry.py:62
961
+ msgid "Timezone"
962
+ msgstr ""
963
+
964
+ #: dynamic_preferences_registry.py:63
965
+ msgid ""
966
+ "Pick the timezone in which you want the workbench's dates to be displayed in."
967
+ msgstr ""
968
+
969
+ #: dynamic_preferences_registry.py:88
957
970
  msgid "Date Format"
958
971
  msgstr ""
959
972
 
960
- #: dynamic_preferences_registry.py:97 dynamic_preferences_registry.py:98
973
+ #: dynamic_preferences_registry.py:89
974
+ msgid "Choose how you want dates to appear throughout the Workbench."
975
+ msgstr ""
976
+
977
+ #: dynamic_preferences_registry.py:111
961
978
  msgid "Time Format"
962
979
  msgstr ""
963
980
 
964
- #: frontend_user_configuration.py:40 frontend_user_configuration.py:41
981
+ #: dynamic_preferences_registry.py:112
982
+ msgid "Choose how you want times to appear throughout the Workbench."
983
+ msgstr ""
984
+
985
+ #: dynamic_preferences_registry.py:130
986
+ msgid "Number Format"
987
+ msgstr ""
988
+
989
+ #: dynamic_preferences_registry.py:131
990
+ msgid "Choose how you want numbers to appear throughout the Workbench."
991
+ msgstr ""
992
+
993
+ #: frontend_user_configuration.py:41 frontend_user_configuration.py:42
965
994
  msgid "Frontend User Settings"
966
995
  msgstr ""
967
996
 
968
- #: frontend_user_configuration.py:60
997
+ #: frontend_user_configuration.py:61
969
998
  msgid "Is Root"
970
999
  msgstr ""
971
1000
 
972
- #: frontend_user_configuration.py:62
1001
+ #: frontend_user_configuration.py:63
973
1002
  msgid "Parent Configuration"
974
1003
  msgstr ""
975
1004
 
976
- #: frontend_user_configuration.py:64
1005
+ #: frontend_user_configuration.py:65
977
1006
  msgid "Config"
978
1007
  msgstr ""
979
1008
 
@@ -985,24 +1014,24 @@ msgstr ""
985
1014
  msgid "Default empty image placeholder URL"
986
1015
  msgstr ""
987
1016
 
988
- #: markdown/models.py:29
1017
+ #: markdown/models.py:23
989
1018
  msgid "Asset"
990
1019
  msgstr ""
991
1020
 
992
- #: markdown/models.py:30
1021
+ #: markdown/models.py:24
993
1022
  msgid "Assets"
994
1023
  msgstr ""
995
1024
 
996
- #: metadata/configs/buttons/buttons.py:93
1025
+ #: metadata/configs/buttons/buttons.py:88
997
1026
  msgid "<p>Are you sure you want to proceed?</p>"
998
1027
  msgstr ""
999
1028
 
1000
- #: metadata/configs/buttons/buttons.py:96 viewsets/utils.py:14
1029
+ #: metadata/configs/buttons/buttons.py:91 viewsets/utils.py:14
1001
1030
  msgid "Confirm"
1002
1031
  msgstr ""
1003
1032
 
1004
- #: metadata/configs/buttons/buttons.py:98
1005
- #: metadata/configs/buttons/buttons.py:99 release_notes/buttons.py:22
1033
+ #: metadata/configs/buttons/buttons.py:93
1034
+ #: metadata/configs/buttons/buttons.py:94 release_notes/buttons.py:22
1006
1035
  #: viewsets/utils.py:15
1007
1036
  msgid "Cancel"
1008
1037
  msgstr ""
@@ -1075,11 +1104,11 @@ msgstr ""
1075
1104
  msgid "What's new? What's improved? What's fixed?"
1076
1105
  msgstr ""
1077
1106
 
1078
- #: release_notes/models.py:59
1107
+ #: release_notes/models.py:57
1079
1108
  msgid "Release Note"
1080
1109
  msgstr ""
1081
1110
 
1082
- #: release_notes/models.py:60
1111
+ #: release_notes/models.py:58
1083
1112
  msgid "Release Notes"
1084
1113
  msgstr ""
1085
1114
 
@@ -1125,7 +1154,7 @@ msgstr ""
1125
1154
  msgid "User"
1126
1155
  msgstr ""
1127
1156
 
1128
- #: reversion/viewsets/displays.py:27 reversion/viewsets/titles.py:18
1157
+ #: reversion/viewsets/displays.py:27 reversion/viewsets/titles.py:19
1129
1158
  msgid "Versions"
1130
1159
  msgstr ""
1131
1160
 
@@ -1141,7 +1170,7 @@ msgstr ""
1141
1170
  msgid "Creation Date"
1142
1171
  msgstr ""
1143
1172
 
1144
- #: reversion/viewsets/titles.py:15
1173
+ #: reversion/viewsets/titles.py:18
1145
1174
  #, python-brace-format
1146
1175
  msgid "Versions For {obj}"
1147
1176
  msgstr ""
@@ -1205,30 +1234,30 @@ msgstr ""
1205
1234
  msgid "You need to enable JavaScript to run this app."
1206
1235
  msgstr ""
1207
1236
 
1208
- #: utils/models.py:103
1237
+ #: utils/models.py:107
1209
1238
  msgid "Pending"
1210
1239
  msgstr ""
1211
1240
 
1212
- #: utils/models.py:104
1241
+ #: utils/models.py:108
1213
1242
  msgid "Denied"
1214
1243
  msgstr ""
1215
1244
 
1216
- #: utils/models.py:105
1245
+ #: utils/models.py:109
1217
1246
  msgid "Approved"
1218
1247
  msgstr ""
1219
1248
 
1220
- #: utils/models.py:189
1249
+ #: utils/models.py:197
1221
1250
  msgid "Default"
1222
1251
  msgstr ""
1223
1252
 
1224
- #: utils/views.py:117 utils/views.py:118 utils/views.py:119
1253
+ #: utils/views.py:119 utils/views.py:120 utils/views.py:121
1225
1254
  msgid "Clone"
1226
1255
  msgstr ""
1227
1256
 
1228
- #: utils/views.py:120
1257
+ #: utils/views.py:122
1229
1258
  msgid "<strong>Clone {}</strong> \"{}\""
1230
1259
  msgstr ""
1231
1260
 
1232
- #: utils/views.py:201 utils/views.py:202 utils/views.py:203
1261
+ #: utils/views.py:188 utils/views.py:189 utils/views.py:190
1233
1262
  msgid "Merge"
1234
1263
  msgstr ""