diff --git a/aleksis/core/locale/ar/LC_MESSAGES/django.po b/aleksis/core/locale/ar/LC_MESSAGES/django.po
index fb1798fff0394bf91072242e77249e8c1ec34ba4..7c475008f800e2ab26d51154f5050eb6a6e1dc32 100644
--- a/aleksis/core/locale/ar/LC_MESSAGES/django.po
+++ b/aleksis/core/locale/ar/LC_MESSAGES/django.po
@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: AlekSIS (School Information System) 0.1\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2023-02-27 13:23+0100\n"
+"POT-Creation-Date: 2023-05-09 18:40+0200\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -18,28 +18,32 @@ msgstr ""
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\n"
 
-#: aleksis/core/apps.py:155
+#: aleksis/core/apps.py:151
+msgid "You have been logged out successfully."
+msgstr ""
+
+#: aleksis/core/apps.py:161
 msgid "OpenID Connect scope"
 msgstr ""
 
-#: aleksis/core/apps.py:156
+#: aleksis/core/apps.py:162
 msgid "Given name, family name, link to profile and picture if existing."
 msgstr ""
 
-#: aleksis/core/apps.py:157
+#: aleksis/core/apps.py:163
 msgid "Full home postal address"
 msgstr ""
 
-#: aleksis/core/apps.py:158
+#: aleksis/core/apps.py:164
 msgid "Email address"
 msgstr ""
 
-#: aleksis/core/apps.py:159
+#: aleksis/core/apps.py:165
 msgid "Home and mobile phone"
 msgstr ""
 
-#: aleksis/core/apps.py:160 aleksis/core/forms.py:220
-#: aleksis/core/models.py:494 aleksis/core/templates/core/group/list.html:8
+#: aleksis/core/apps.py:166 aleksis/core/forms.py:221
+#: aleksis/core/models.py:495 aleksis/core/templates/core/group/list.html:8
 #: aleksis/core/templates/core/group/list.html:9
 msgid "Groups"
 msgstr ""
@@ -98,172 +102,172 @@ msgstr ""
 msgid "Content type"
 msgstr ""
 
-#: aleksis/core/filters.py:113 aleksis/core/models.py:720
+#: aleksis/core/filters.py:113 aleksis/core/models.py:721
 msgid "User"
 msgstr ""
 
-#: aleksis/core/filters.py:135 aleksis/core/models.py:493
+#: aleksis/core/filters.py:135 aleksis/core/models.py:494
 msgid "Group"
 msgstr ""
 
-#: aleksis/core/forms.py:50 aleksis/core/forms.py:581
+#: aleksis/core/forms.py:51 aleksis/core/forms.py:582
 msgid "Base data"
 msgstr ""
 
-#: aleksis/core/forms.py:55 aleksis/core/tables.py:47
+#: aleksis/core/forms.py:56 aleksis/core/tables.py:47
 msgid "Address"
 msgstr ""
 
-#: aleksis/core/forms.py:56 aleksis/core/forms.py:590
+#: aleksis/core/forms.py:57 aleksis/core/forms.py:591
 msgid "Contact data"
 msgstr ""
 
-#: aleksis/core/forms.py:58
+#: aleksis/core/forms.py:59
 msgid "Advanced personal data"
 msgstr ""
 
-#: aleksis/core/forms.py:106
+#: aleksis/core/forms.py:107
 msgid "New user"
 msgstr ""
 
-#: aleksis/core/forms.py:106
+#: aleksis/core/forms.py:107
 msgid "Create a new account"
 msgstr ""
 
-#: aleksis/core/forms.py:132
+#: aleksis/core/forms.py:133
 msgid "You cannot set a new username when also selecting an existing user."
 msgstr ""
 
-#: aleksis/core/forms.py:136
+#: aleksis/core/forms.py:137
 msgid "This username is already in use."
 msgstr ""
 
-#: aleksis/core/forms.py:153 aleksis/core/models.py:141
+#: aleksis/core/forms.py:154 aleksis/core/models.py:142
 msgid "School term"
 msgstr ""
 
-#: aleksis/core/forms.py:154
+#: aleksis/core/forms.py:155
 msgid "Common data"
 msgstr ""
 
-#: aleksis/core/forms.py:155 aleksis/core/forms.py:207
-#: aleksis/core/models.py:164 aleksis/core/templates/core/person/list.html:8
+#: aleksis/core/forms.py:156 aleksis/core/forms.py:208
+#: aleksis/core/models.py:165 aleksis/core/templates/core/person/list.html:8
 #: aleksis/core/templates/core/person/list.html:9
 msgid "Persons"
 msgstr ""
 
-#: aleksis/core/forms.py:156 aleksis/core/forms.py:592
+#: aleksis/core/forms.py:157 aleksis/core/forms.py:593
 msgid "Additional data"
 msgstr ""
 
-#: aleksis/core/forms.py:157 aleksis/core/models.py:217
-#: aleksis/core/models.py:546 aleksis/core/tables.py:46
+#: aleksis/core/forms.py:158 aleksis/core/models.py:218
+#: aleksis/core/models.py:547 aleksis/core/tables.py:46
 msgid "Photo"
 msgstr ""
 
-#: aleksis/core/forms.py:199 aleksis/core/forms.py:202
-#: aleksis/core/models.py:84
+#: aleksis/core/forms.py:200 aleksis/core/forms.py:203
+#: aleksis/core/models.py:85
 msgid "Date"
 msgstr ""
 
-#: aleksis/core/forms.py:200 aleksis/core/forms.py:203
-#: aleksis/core/models.py:92
+#: aleksis/core/forms.py:201 aleksis/core/forms.py:204
+#: aleksis/core/models.py:93
 msgid "Time"
 msgstr ""
 
-#: aleksis/core/forms.py:233
+#: aleksis/core/forms.py:234
 msgid "From when until when should the announcement be displayed?"
 msgstr ""
 
-#: aleksis/core/forms.py:236
+#: aleksis/core/forms.py:237
 msgid "Who should see the announcement?"
 msgstr ""
 
-#: aleksis/core/forms.py:237
+#: aleksis/core/forms.py:238
 msgid "Write your announcement:"
 msgstr ""
 
-#: aleksis/core/forms.py:276
+#: aleksis/core/forms.py:277
 msgid "You are not allowed to create announcements which are only valid in the past."
 msgstr ""
 
-#: aleksis/core/forms.py:280
+#: aleksis/core/forms.py:281
 msgid "The from date and time must be earlier then the until date and time."
 msgstr ""
 
-#: aleksis/core/forms.py:289
+#: aleksis/core/forms.py:290
 msgid "You need at least one recipient."
 msgstr ""
 
-#: aleksis/core/forms.py:398
+#: aleksis/core/forms.py:399
 msgid "Invitation code"
 msgstr ""
 
-#: aleksis/core/forms.py:399
+#: aleksis/core/forms.py:400
 msgid "Please enter your invitation code."
 msgstr ""
 
-#: aleksis/core/forms.py:418 aleksis/core/models.py:192
+#: aleksis/core/forms.py:419 aleksis/core/models.py:193
 msgid "First name"
 msgstr ""
 
-#: aleksis/core/forms.py:419 aleksis/core/models.py:193
+#: aleksis/core/forms.py:420 aleksis/core/models.py:194
 msgid "Last name"
 msgstr ""
 
-#: aleksis/core/forms.py:428
+#: aleksis/core/forms.py:429
 msgid "A person is using this e-mail address"
 msgstr ""
 
-#: aleksis/core/forms.py:456
+#: aleksis/core/forms.py:457
 msgid "Who should get the permission?"
 msgstr ""
 
-#: aleksis/core/forms.py:457
+#: aleksis/core/forms.py:458
 msgid "On what?"
 msgstr ""
 
-#: aleksis/core/forms.py:483
+#: aleksis/core/forms.py:484
 msgid "Select objects which the permission should be granted for:"
 msgstr ""
 
-#: aleksis/core/forms.py:486
+#: aleksis/core/forms.py:487
 msgid "Grant the permission for all objects"
 msgstr ""
 
-#: aleksis/core/forms.py:494
+#: aleksis/core/forms.py:495
 msgid "You must select at least one group or person which should get the permission."
 msgstr ""
 
-#: aleksis/core/forms.py:499
+#: aleksis/core/forms.py:500
 msgid "You must grant the permission to all objects or to specific objects."
 msgstr ""
 
-#: aleksis/core/forms.py:586
+#: aleksis/core/forms.py:587
 msgid "Address data"
 msgstr ""
 
-#: aleksis/core/forms.py:598
+#: aleksis/core/forms.py:599
 msgid "Account data"
 msgstr ""
 
-#: aleksis/core/forms.py:605
+#: aleksis/core/forms.py:606
 msgid "Password"
 msgstr ""
 
-#: aleksis/core/forms.py:608
+#: aleksis/core/forms.py:609
 msgid "Password (again)"
 msgstr ""
 
-#: aleksis/core/forms.py:761
+#: aleksis/core/forms.py:762
 msgid "The selected action does not exist."
 msgstr ""
 
-#: aleksis/core/forms.py:772
+#: aleksis/core/forms.py:773
 msgid "You do not have permission to run {} on all selected objects."
 msgstr ""
 
-#: aleksis/core/forms.py:828
+#: aleksis/core/forms.py:829
 msgid "No valid selection."
 msgstr ""
 
@@ -291,658 +295,658 @@ msgstr ""
 msgid "Linked school term"
 msgstr ""
 
-#: aleksis/core/models.py:82
+#: aleksis/core/models.py:83
 msgid "Boolean (Yes/No)"
 msgstr ""
 
-#: aleksis/core/models.py:83
+#: aleksis/core/models.py:84
 msgid "Text (one line)"
 msgstr ""
 
-#: aleksis/core/models.py:85
+#: aleksis/core/models.py:86
 msgid "Date and time"
 msgstr ""
 
-#: aleksis/core/models.py:86
+#: aleksis/core/models.py:87
 msgid "Decimal number"
 msgstr ""
 
-#: aleksis/core/models.py:87 aleksis/core/models.py:210
+#: aleksis/core/models.py:88 aleksis/core/models.py:211
 msgid "E-mail address"
 msgstr ""
 
-#: aleksis/core/models.py:88
+#: aleksis/core/models.py:89
 msgid "Integer"
 msgstr ""
 
-#: aleksis/core/models.py:89
+#: aleksis/core/models.py:90
 msgid "IP address"
 msgstr ""
 
-#: aleksis/core/models.py:90
+#: aleksis/core/models.py:91
 msgid "Boolean or empty (Yes/No/Neither)"
 msgstr ""
 
-#: aleksis/core/models.py:91
+#: aleksis/core/models.py:92
 msgid "Text (multi-line)"
 msgstr ""
 
-#: aleksis/core/models.py:93
+#: aleksis/core/models.py:94
 msgid "URL / Link"
 msgstr ""
 
-#: aleksis/core/models.py:105 aleksis/core/models.py:1077
+#: aleksis/core/models.py:106 aleksis/core/models.py:1078
 msgid "Name"
 msgstr ""
 
-#: aleksis/core/models.py:107
+#: aleksis/core/models.py:108
 msgid "Start date"
 msgstr ""
 
-#: aleksis/core/models.py:108
+#: aleksis/core/models.py:109
 msgid "End date"
 msgstr ""
 
-#: aleksis/core/models.py:127
+#: aleksis/core/models.py:128
 msgid "The start date must be earlier than the end date."
 msgstr ""
 
-#: aleksis/core/models.py:134
+#: aleksis/core/models.py:135
 msgid "There is already a school term for this time or a part of this time."
 msgstr ""
 
-#: aleksis/core/models.py:142
+#: aleksis/core/models.py:143
 #: aleksis/core/templates/core/school_term/list.html:8
 #: aleksis/core/templates/core/school_term/list.html:9
 msgid "School terms"
 msgstr ""
 
-#: aleksis/core/models.py:163 aleksis/core/models.py:1026
+#: aleksis/core/models.py:164 aleksis/core/models.py:1027
 msgid "Person"
 msgstr ""
 
-#: aleksis/core/models.py:166
+#: aleksis/core/models.py:167
 msgid "Can view address"
 msgstr ""
 
-#: aleksis/core/models.py:167
+#: aleksis/core/models.py:168
 msgid "Can view contact details"
 msgstr ""
 
-#: aleksis/core/models.py:168
+#: aleksis/core/models.py:169
 msgid "Can view photo"
 msgstr ""
 
-#: aleksis/core/models.py:169
+#: aleksis/core/models.py:170
 msgid "Can view avatar image"
 msgstr ""
 
-#: aleksis/core/models.py:170
+#: aleksis/core/models.py:171
 msgid "Can view persons groups"
 msgstr ""
 
-#: aleksis/core/models.py:171
+#: aleksis/core/models.py:172
 msgid "Can view personal details"
 msgstr ""
 
-#: aleksis/core/models.py:181
+#: aleksis/core/models.py:182
 msgid "female"
 msgstr ""
 
-#: aleksis/core/models.py:181
+#: aleksis/core/models.py:182
 msgid "male"
 msgstr ""
 
-#: aleksis/core/models.py:181
+#: aleksis/core/models.py:182
 msgid "other"
 msgstr ""
 
-#: aleksis/core/models.py:189 aleksis/core/models.py:1353
+#: aleksis/core/models.py:190 aleksis/core/models.py:1382
 msgid "Linked user"
 msgstr ""
 
-#: aleksis/core/models.py:195
+#: aleksis/core/models.py:196
 msgid "Additional name(s)"
 msgstr ""
 
-#: aleksis/core/models.py:199 aleksis/core/models.py:511
-#: aleksis/core/models.py:1439
+#: aleksis/core/models.py:200 aleksis/core/models.py:512
+#: aleksis/core/models.py:1468
 msgid "Short name"
 msgstr ""
 
-#: aleksis/core/models.py:202
+#: aleksis/core/models.py:203
 msgid "Street"
 msgstr ""
 
-#: aleksis/core/models.py:203
+#: aleksis/core/models.py:204
 msgid "Street number"
 msgstr ""
 
-#: aleksis/core/models.py:204
+#: aleksis/core/models.py:205
 msgid "Postal code"
 msgstr ""
 
-#: aleksis/core/models.py:205
+#: aleksis/core/models.py:206
 msgid "Place"
 msgstr ""
 
-#: aleksis/core/models.py:207
+#: aleksis/core/models.py:208
 msgid "Home phone"
 msgstr ""
 
-#: aleksis/core/models.py:208
+#: aleksis/core/models.py:209
 msgid "Mobile phone"
 msgstr ""
 
-#: aleksis/core/models.py:212
+#: aleksis/core/models.py:213
 msgid "Date of birth"
 msgstr ""
 
-#: aleksis/core/models.py:213
+#: aleksis/core/models.py:214
 msgid "Place of birth"
 msgstr ""
 
-#: aleksis/core/models.py:214
+#: aleksis/core/models.py:215
 msgid "Sex"
 msgstr ""
 
-#: aleksis/core/models.py:221 aleksis/core/models.py:550
+#: aleksis/core/models.py:222 aleksis/core/models.py:551
 msgid "This is an official photo, used for official documents and for internal use cases."
 msgstr ""
 
-#: aleksis/core/models.py:226 aleksis/core/models.py:554
+#: aleksis/core/models.py:227 aleksis/core/models.py:555
 msgid "Display picture / Avatar"
 msgstr ""
 
-#: aleksis/core/models.py:229 aleksis/core/models.py:557
+#: aleksis/core/models.py:230 aleksis/core/models.py:558
 msgid "This is a picture or an avatar for public display."
 msgstr ""
 
-#: aleksis/core/models.py:234
+#: aleksis/core/models.py:235
 msgid "Guardians / Parents"
 msgstr ""
 
-#: aleksis/core/models.py:241
+#: aleksis/core/models.py:242
 msgid "Primary group"
 msgstr ""
 
-#: aleksis/core/models.py:244 aleksis/core/models.py:724
-#: aleksis/core/models.py:748 aleksis/core/models.py:843
-#: aleksis/core/models.py:1112
+#: aleksis/core/models.py:245 aleksis/core/models.py:725
+#: aleksis/core/models.py:749 aleksis/core/models.py:844
+#: aleksis/core/models.py:1113
 msgid "Description"
 msgstr ""
 
-#: aleksis/core/models.py:464
+#: aleksis/core/models.py:465
 msgid "Title of field"
 msgstr ""
 
-#: aleksis/core/models.py:466
+#: aleksis/core/models.py:467
 msgid "Type of field"
 msgstr ""
 
-#: aleksis/core/models.py:468
+#: aleksis/core/models.py:469
 msgid "Required"
 msgstr ""
 
-#: aleksis/core/models.py:469
+#: aleksis/core/models.py:470
 msgid "Help text / description"
 msgstr ""
 
-#: aleksis/core/models.py:475
+#: aleksis/core/models.py:476
 msgid "Addtitional field for groups"
 msgstr ""
 
-#: aleksis/core/models.py:476
+#: aleksis/core/models.py:477
 msgid "Addtitional fields for groups"
 msgstr ""
 
-#: aleksis/core/models.py:496
+#: aleksis/core/models.py:497
 msgid "Can assign child groups to groups"
 msgstr ""
 
-#: aleksis/core/models.py:497
+#: aleksis/core/models.py:498
 msgid "Can view statistics about group."
 msgstr ""
 
-#: aleksis/core/models.py:509 aleksis/core/models.py:1440
+#: aleksis/core/models.py:510 aleksis/core/models.py:1469
 msgid "Long name"
 msgstr ""
 
-#: aleksis/core/models.py:519 aleksis/core/templates/core/group/full.html:105
+#: aleksis/core/models.py:520 aleksis/core/templates/core/group/full.html:105
 msgid "Members"
 msgstr ""
 
-#: aleksis/core/models.py:522 aleksis/core/templates/core/group/full.html:102
+#: aleksis/core/models.py:523 aleksis/core/templates/core/group/full.html:102
 msgid "Owners"
 msgstr ""
 
-#: aleksis/core/models.py:529 aleksis/core/templates/core/group/full.html:59
+#: aleksis/core/models.py:530 aleksis/core/templates/core/group/full.html:59
 msgid "Parent groups"
 msgstr ""
 
-#: aleksis/core/models.py:537
+#: aleksis/core/models.py:538
 msgid "Type of group"
 msgstr ""
 
-#: aleksis/core/models.py:542
+#: aleksis/core/models.py:543
 #: aleksis/core/templates/core/additional_field/list.html:8
 #: aleksis/core/templates/core/additional_field/list.html:9
 msgid "Additional fields"
 msgstr ""
 
-#: aleksis/core/models.py:723 aleksis/core/models.py:747
-#: aleksis/core/models.py:842 aleksis/core/models.py:1270
+#: aleksis/core/models.py:724 aleksis/core/models.py:748
+#: aleksis/core/models.py:843 aleksis/core/models.py:1299
 #: aleksis/core/templates/core/announcement/list.html:18
 msgid "Title"
 msgstr ""
 
-#: aleksis/core/models.py:726
+#: aleksis/core/models.py:727
 msgid "Application"
 msgstr ""
 
-#: aleksis/core/models.py:732
+#: aleksis/core/models.py:733
 msgid "Activity"
 msgstr ""
 
-#: aleksis/core/models.py:733
+#: aleksis/core/models.py:734
 msgid "Activities"
 msgstr ""
 
-#: aleksis/core/models.py:739
+#: aleksis/core/models.py:740
 msgid "Sender"
 msgstr ""
 
-#: aleksis/core/models.py:744
+#: aleksis/core/models.py:745
 msgid "Recipient"
 msgstr ""
 
-#: aleksis/core/models.py:749 aleksis/core/models.py:1078
+#: aleksis/core/models.py:750 aleksis/core/models.py:1079
 msgid "Link"
 msgstr ""
 
-#: aleksis/core/models.py:752 aleksis/core/models.py:1079
-#: aleksis/core/models.py:1400
+#: aleksis/core/models.py:753 aleksis/core/models.py:1080
+#: aleksis/core/models.py:1429
 #: aleksis/core/templates/oauth2_provider/application/detail.html:26
 msgid "Icon"
 msgstr ""
 
-#: aleksis/core/models.py:755
+#: aleksis/core/models.py:756
 msgid "Send notification at"
 msgstr ""
 
-#: aleksis/core/models.py:757
+#: aleksis/core/models.py:758
 msgid "Read"
 msgstr ""
 
-#: aleksis/core/models.py:758
+#: aleksis/core/models.py:759
 msgid "Sent"
 msgstr ""
 
-#: aleksis/core/models.py:775
+#: aleksis/core/models.py:776
 msgid "Notification"
 msgstr ""
 
-#: aleksis/core/models.py:776 aleksis/core/preferences.py:29
+#: aleksis/core/models.py:777 aleksis/core/preferences.py:29
 msgid "Notifications"
 msgstr ""
 
-#: aleksis/core/models.py:844
+#: aleksis/core/models.py:845
 msgid "Link to detailed view"
 msgstr ""
 
-#: aleksis/core/models.py:847
+#: aleksis/core/models.py:848
 msgid "Date and time from when to show"
 msgstr ""
 
-#: aleksis/core/models.py:850
+#: aleksis/core/models.py:851
 msgid "Date and time until when to show"
 msgstr ""
 
-#: aleksis/core/models.py:875
+#: aleksis/core/models.py:876
 msgid "Announcement"
 msgstr ""
 
-#: aleksis/core/models.py:876
+#: aleksis/core/models.py:877
 #: aleksis/core/templates/core/announcement/list.html:7
 #: aleksis/core/templates/core/announcement/list.html:8
 msgid "Announcements"
 msgstr ""
 
-#: aleksis/core/models.py:913
+#: aleksis/core/models.py:914
 msgid "Announcement recipient"
 msgstr ""
 
-#: aleksis/core/models.py:914
+#: aleksis/core/models.py:915
 msgid "Announcement recipients"
 msgstr ""
 
-#: aleksis/core/models.py:934
+#: aleksis/core/models.py:935
 msgid "Widget Title"
 msgstr ""
 
-#: aleksis/core/models.py:935
+#: aleksis/core/models.py:936
 msgid "Activate Widget"
 msgstr ""
 
-#: aleksis/core/models.py:936
+#: aleksis/core/models.py:937
 msgid "Widget is broken"
 msgstr ""
 
-#: aleksis/core/models.py:939
+#: aleksis/core/models.py:940
 msgid "Size on mobile devices"
 msgstr ""
 
-#: aleksis/core/models.py:940
+#: aleksis/core/models.py:941
 msgid "<= 600 px, 12 columns"
 msgstr ""
 
-#: aleksis/core/models.py:945
+#: aleksis/core/models.py:946
 msgid "Size on tablet devices"
 msgstr ""
 
-#: aleksis/core/models.py:946
+#: aleksis/core/models.py:947
 msgid "> 600 px, 12 columns"
 msgstr ""
 
-#: aleksis/core/models.py:951
+#: aleksis/core/models.py:952
 msgid "Size on desktop devices"
 msgstr ""
 
-#: aleksis/core/models.py:952
+#: aleksis/core/models.py:953
 msgid "> 992 px, 12 columns"
 msgstr ""
 
-#: aleksis/core/models.py:957
+#: aleksis/core/models.py:958
 msgid "Size on large desktop devices"
 msgstr ""
 
-#: aleksis/core/models.py:958
+#: aleksis/core/models.py:959
 msgid "> 1200 px>, 12 columns"
 msgstr ""
 
-#: aleksis/core/models.py:989
+#: aleksis/core/models.py:990
 msgid "Can edit default dashboard"
 msgstr ""
 
-#: aleksis/core/models.py:990
+#: aleksis/core/models.py:991
 msgid "Dashboard Widget"
 msgstr ""
 
-#: aleksis/core/models.py:991
+#: aleksis/core/models.py:992
 msgid "Dashboard Widgets"
 msgstr ""
 
-#: aleksis/core/models.py:997
+#: aleksis/core/models.py:998
 msgid "URL"
 msgstr ""
 
-#: aleksis/core/models.py:998
+#: aleksis/core/models.py:999
 msgid "Icon URL"
 msgstr ""
 
-#: aleksis/core/models.py:1004
+#: aleksis/core/models.py:1005
 msgid "External link widget"
 msgstr ""
 
-#: aleksis/core/models.py:1005
+#: aleksis/core/models.py:1006
 msgid "External link widgets"
 msgstr ""
 
-#: aleksis/core/models.py:1011
+#: aleksis/core/models.py:1012
 msgid "Content"
 msgstr ""
 
-#: aleksis/core/models.py:1017
+#: aleksis/core/models.py:1018
 msgid "Static content widget"
 msgstr ""
 
-#: aleksis/core/models.py:1018
+#: aleksis/core/models.py:1019
 msgid "Static content widgets"
 msgstr ""
 
-#: aleksis/core/models.py:1023
+#: aleksis/core/models.py:1024
 msgid "Dashboard widget"
 msgstr ""
 
-#: aleksis/core/models.py:1028
+#: aleksis/core/models.py:1029
 msgid "Order"
 msgstr ""
 
-#: aleksis/core/models.py:1029
+#: aleksis/core/models.py:1030
 msgid "Part of the default dashboard"
 msgstr ""
 
-#: aleksis/core/models.py:1044
+#: aleksis/core/models.py:1045
 msgid "Dashboard widget order"
 msgstr ""
 
-#: aleksis/core/models.py:1045
+#: aleksis/core/models.py:1046
 msgid "Dashboard widget orders"
 msgstr ""
 
-#: aleksis/core/models.py:1051
+#: aleksis/core/models.py:1052
 msgid "Menu ID"
 msgstr ""
 
-#: aleksis/core/models.py:1064
+#: aleksis/core/models.py:1065
 msgid "Custom menu"
 msgstr ""
 
-#: aleksis/core/models.py:1065
+#: aleksis/core/models.py:1066
 msgid "Custom menus"
 msgstr ""
 
-#: aleksis/core/models.py:1075
+#: aleksis/core/models.py:1076
 msgid "Menu"
 msgstr ""
 
-#: aleksis/core/models.py:1085
+#: aleksis/core/models.py:1086
 msgid "Custom menu item"
 msgstr ""
 
-#: aleksis/core/models.py:1086
+#: aleksis/core/models.py:1087
 msgid "Custom menu items"
 msgstr ""
 
-#: aleksis/core/models.py:1111
+#: aleksis/core/models.py:1112
 msgid "Title of type"
 msgstr ""
 
-#: aleksis/core/models.py:1118 aleksis/core/templates/core/group/full.html:50
+#: aleksis/core/models.py:1119 aleksis/core/templates/core/group/full.html:50
 msgid "Group type"
 msgstr ""
 
-#: aleksis/core/models.py:1119
+#: aleksis/core/models.py:1120
 #: aleksis/core/templates/core/group_type/list.html:8
 #: aleksis/core/templates/core/group_type/list.html:9
 msgid "Group types"
 msgstr ""
 
-#: aleksis/core/models.py:1132
+#: aleksis/core/models.py:1133
 msgid "Can view system status"
 msgstr ""
 
-#: aleksis/core/models.py:1133
+#: aleksis/core/models.py:1134
 msgid "Can manage data"
 msgstr ""
 
-#: aleksis/core/models.py:1134
+#: aleksis/core/models.py:1135
 msgid "Can impersonate"
 msgstr ""
 
-#: aleksis/core/models.py:1135
+#: aleksis/core/models.py:1136
 msgid "Can use search"
 msgstr ""
 
-#: aleksis/core/models.py:1136
+#: aleksis/core/models.py:1137
 msgid "Can change site preferences"
 msgstr ""
 
-#: aleksis/core/models.py:1137
+#: aleksis/core/models.py:1138
 msgid "Can change person preferences"
 msgstr ""
 
-#: aleksis/core/models.py:1138
+#: aleksis/core/models.py:1139
 msgid "Can change group preferences"
 msgstr ""
 
-#: aleksis/core/models.py:1139
+#: aleksis/core/models.py:1140
 msgid "Can test PDF generation"
 msgstr ""
 
-#: aleksis/core/models.py:1140
+#: aleksis/core/models.py:1141
 msgid "Can invite persons"
 msgstr ""
 
-#: aleksis/core/models.py:1176
+#: aleksis/core/models.py:1177
 msgid "Related data check task"
 msgstr ""
 
-#: aleksis/core/models.py:1184
+#: aleksis/core/models.py:1185
 msgid "Issue solved"
 msgstr ""
 
-#: aleksis/core/models.py:1185
+#: aleksis/core/models.py:1186
 msgid "Notification sent"
 msgstr ""
 
-#: aleksis/core/models.py:1198
+#: aleksis/core/models.py:1199
 msgid "Data check result"
 msgstr ""
 
-#: aleksis/core/models.py:1199
+#: aleksis/core/models.py:1200
 msgid "Data check results"
 msgstr ""
 
-#: aleksis/core/models.py:1201
+#: aleksis/core/models.py:1202
 msgid "Can run data checks"
 msgstr ""
 
-#: aleksis/core/models.py:1202
+#: aleksis/core/models.py:1203
 msgid "Can solve data check problems"
 msgstr ""
 
-#: aleksis/core/models.py:1209
+#: aleksis/core/models.py:1210
 msgid "E-Mail address"
 msgstr ""
 
-#: aleksis/core/models.py:1241
+#: aleksis/core/models.py:1270
 msgid "Owner"
 msgstr ""
 
-#: aleksis/core/models.py:1245
+#: aleksis/core/models.py:1274
 msgid "File expires at"
 msgstr ""
 
-#: aleksis/core/models.py:1248
+#: aleksis/core/models.py:1277
 msgid "Generated HTML file"
 msgstr ""
 
-#: aleksis/core/models.py:1251
+#: aleksis/core/models.py:1280
 msgid "Generated PDF file"
 msgstr ""
 
-#: aleksis/core/models.py:1258
+#: aleksis/core/models.py:1287
 msgid "PDF file"
 msgstr ""
 
-#: aleksis/core/models.py:1259
+#: aleksis/core/models.py:1288
 msgid "PDF files"
 msgstr ""
 
-#: aleksis/core/models.py:1264
+#: aleksis/core/models.py:1293
 msgid "Task result"
 msgstr ""
 
-#: aleksis/core/models.py:1267
+#: aleksis/core/models.py:1296
 msgid "Task user"
 msgstr ""
 
-#: aleksis/core/models.py:1271
+#: aleksis/core/models.py:1300
 msgid "Back URL"
 msgstr ""
 
-#: aleksis/core/models.py:1272
+#: aleksis/core/models.py:1301
 msgid "Progress title"
 msgstr ""
 
-#: aleksis/core/models.py:1273
+#: aleksis/core/models.py:1302
 msgid "Error message"
 msgstr ""
 
-#: aleksis/core/models.py:1274
+#: aleksis/core/models.py:1303
 msgid "Success message"
 msgstr ""
 
-#: aleksis/core/models.py:1275
+#: aleksis/core/models.py:1304
 msgid "Redirect on success URL"
 msgstr ""
 
-#: aleksis/core/models.py:1277
+#: aleksis/core/models.py:1306
 msgid "Additional button title"
 msgstr ""
 
-#: aleksis/core/models.py:1279
+#: aleksis/core/models.py:1308
 msgid "Additional button URL"
 msgstr ""
 
-#: aleksis/core/models.py:1281
+#: aleksis/core/models.py:1310
 msgid "Additional button icon"
 msgstr ""
 
-#: aleksis/core/models.py:1283
+#: aleksis/core/models.py:1312
 msgid "Result fetched"
 msgstr ""
 
-#: aleksis/core/models.py:1308
+#: aleksis/core/models.py:1337
 msgid "Background task completed successfully"
 msgstr ""
 
-#: aleksis/core/models.py:1309
+#: aleksis/core/models.py:1338
 msgid "The background task '{}' has been completed successfully."
 msgstr ""
 
-#: aleksis/core/models.py:1315
+#: aleksis/core/models.py:1344
 msgid "Background task failed"
 msgstr ""
 
-#: aleksis/core/models.py:1316
+#: aleksis/core/models.py:1345
 msgid "The background task '{}' has failed."
 msgstr ""
 
-#: aleksis/core/models.py:1325
+#: aleksis/core/models.py:1354
 msgid "Background task"
 msgstr ""
 
-#: aleksis/core/models.py:1339
+#: aleksis/core/models.py:1368
 msgid "Task user assignment"
 msgstr ""
 
-#: aleksis/core/models.py:1340
+#: aleksis/core/models.py:1369
 msgid "Task user assignments"
 msgstr ""
 
-#: aleksis/core/models.py:1356
+#: aleksis/core/models.py:1385
 msgid "Additional attributes"
 msgstr ""
 
-#: aleksis/core/models.py:1394
+#: aleksis/core/models.py:1423
 msgid "Allowed scopes that clients can request"
 msgstr ""
 
-#: aleksis/core/models.py:1404
+#: aleksis/core/models.py:1433
 msgid "This image will be shown as icon in the authorization flow. It should be squared."
 msgstr ""
 
-#: aleksis/core/models.py:1449
+#: aleksis/core/models.py:1478
 msgid "Can view room timetable"
 msgstr ""
 
-#: aleksis/core/models.py:1451
+#: aleksis/core/models.py:1480
 msgid "Room"
 msgstr ""
 
-#: aleksis/core/models.py:1452
+#: aleksis/core/models.py:1481
 msgid "Rooms"
 msgstr ""
 
@@ -1154,15 +1158,15 @@ msgstr ""
 msgid "Country for phone number parsing"
 msgstr ""
 
-#: aleksis/core/settings.py:549
+#: aleksis/core/settings.py:551
 msgid "English"
 msgstr ""
 
-#: aleksis/core/settings.py:550
+#: aleksis/core/settings.py:552
 msgid "German"
 msgstr ""
 
-#: aleksis/core/settings.py:551
+#: aleksis/core/settings.py:553
 msgid "Ukrainian"
 msgstr ""
 
@@ -1174,14 +1178,14 @@ msgid "Edit"
 msgstr ""
 
 #: aleksis/core/tables.py:27 aleksis/core/tables.py:148
-#: aleksis/core/tables.py:192
+#: aleksis/core/tables.py:185
 #: aleksis/core/templates/core/announcement/list.html:22
 msgid "Actions"
 msgstr ""
 
 #: aleksis/core/tables.py:115 aleksis/core/tables.py:116
 #: aleksis/core/tables.py:130 aleksis/core/tables.py:146
-#: aleksis/core/tables.py:190
+#: aleksis/core/tables.py:183
 #: aleksis/core/templates/core/announcement/list.html:42
 #: aleksis/core/templates/core/group/full.html:33
 #: aleksis/core/templates/core/pages/delete.html:22
@@ -1230,7 +1234,7 @@ msgid ""
 "          "
 msgstr ""
 
-#: aleksis/core/templates/500.html:21
+#: aleksis/core/templates/500.html:21 aleksis/core/templates/offline.html:22
 msgid "Retry"
 msgstr ""
 
@@ -1544,62 +1548,62 @@ msgstr ""
 msgid "Edit default dashboard"
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:9
 #: aleksis/core/templates/core/data_check/list.html:10
+#: aleksis/core/templates/core/data_check/list.html:11
 msgid "Data checks"
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:15
+#: aleksis/core/templates/core/data_check/list.html:16
 msgid "Check data again"
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:22
+#: aleksis/core/templates/core/data_check/list.html:23
 msgid "The system detected some problems with your data."
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:23
+#: aleksis/core/templates/core/data_check/list.html:24
 msgid ""
 "Please go through all data and check whether some extra action is\n"
 "          needed."
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:31
+#: aleksis/core/templates/core/data_check/list.html:32
 msgid "Everything is fine."
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:32
+#: aleksis/core/templates/core/data_check/list.html:33
 msgid "The system hasn't detected any problems with your data."
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:40
+#: aleksis/core/templates/core/data_check/list.html:41
 msgid "Detected problems"
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:45
+#: aleksis/core/templates/core/data_check/list.html:46
 msgid "Affected object"
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:46
+#: aleksis/core/templates/core/data_check/list.html:47
 msgid "Detected problem"
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:47
+#: aleksis/core/templates/core/data_check/list.html:48
 msgid "Show details"
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:48
+#: aleksis/core/templates/core/data_check/list.html:49
 msgid "Options to solve the problem"
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:63
+#: aleksis/core/templates/core/data_check/list.html:65
 msgid "Show object"
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:86
+#: aleksis/core/templates/core/data_check/list.html:89
 msgid "Registered checks"
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:90
+#: aleksis/core/templates/core/data_check/list.html:93
 msgid ""
 "\n"
 "            The system will check for the following problems:\n"
@@ -1821,83 +1825,83 @@ msgstr ""
 msgid "System checks"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:22
+#: aleksis/core/templates/core/pages/system_status.html:26
 msgid "Maintenance mode enabled"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:24
+#: aleksis/core/templates/core/pages/system_status.html:28
 msgid ""
 "\n"
-"                Only admin and visitors from internal IPs can access the site.\n"
-"              "
+"                  Only admin and visitors from internal IPs can access the site.\n"
+"                "
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:36
+#: aleksis/core/templates/core/pages/system_status.html:39
 msgid "Maintenance mode disabled"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:37
+#: aleksis/core/templates/core/pages/system_status.html:40
 msgid "Everyone can access the site."
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:47
+#: aleksis/core/templates/core/pages/system_status.html:51
 msgid "Debug mode enabled"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:49
+#: aleksis/core/templates/core/pages/system_status.html:53
 msgid ""
 "\n"
 "                The web server throws back debug information on errors. Do not use in production!\n"
 "              "
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:56
+#: aleksis/core/templates/core/pages/system_status.html:60
 msgid "Debug mode disabled"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:58
+#: aleksis/core/templates/core/pages/system_status.html:62
 msgid ""
 "\n"
 "                Debug mode is disabled. Default error pages are displayed on errors.\n"
 "              "
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:71
+#: aleksis/core/templates/core/pages/system_status.html:75
 msgid "System health checks"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:77
+#: aleksis/core/templates/core/pages/system_status.html:81
 msgid "Service"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:78
-#: aleksis/core/templates/core/pages/system_status.html:119
+#: aleksis/core/templates/core/pages/system_status.html:82
+#: aleksis/core/templates/core/pages/system_status.html:123
 msgid "Status"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:79
+#: aleksis/core/templates/core/pages/system_status.html:83
 msgid "Time taken"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:100
+#: aleksis/core/templates/core/pages/system_status.html:104
 msgid "seconds"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:111
+#: aleksis/core/templates/core/pages/system_status.html:115
 msgid "Celery task results"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:116
+#: aleksis/core/templates/core/pages/system_status.html:120
 #: aleksis/core/templates/templated_email/celery_failure.email:9
 #: aleksis/core/templates/templated_email/celery_failure.email:28
 msgid "Task"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:117
+#: aleksis/core/templates/core/pages/system_status.html:121
 msgid "ID"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:118
+#: aleksis/core/templates/core/pages/system_status.html:122
 msgid "Date done"
 msgstr ""
 
@@ -2121,11 +2125,11 @@ msgstr ""
 msgid "Generate invitation code"
 msgstr ""
 
-#: aleksis/core/templates/invitations/forms/_invite.html:29
+#: aleksis/core/templates/invitations/forms/_invite.html:30
 msgid "Generate code"
 msgstr ""
 
-#: aleksis/core/templates/invitations/forms/_invite.html:33
+#: aleksis/core/templates/invitations/forms/_invite.html:34
 msgid "Invitations"
 msgstr ""
 
@@ -2141,7 +2145,6 @@ msgstr ""
 
 #: aleksis/core/templates/oauth2_provider/application/create.html:14
 #: aleksis/core/templates/oauth2_provider/application/edit.html:14
-#: aleksis/core/templates/oauth2_provider/authorized-token-delete.html:24
 #: aleksis/core/templates/two_factor/_wizard_actions.html:6
 msgid "Cancel"
 msgstr ""
@@ -2215,43 +2218,19 @@ msgstr ""
 msgid "Disallow"
 msgstr ""
 
-#: aleksis/core/templates/oauth2_provider/authorized-token-delete.html:5
-#: aleksis/core/templates/oauth2_provider/authorized-token-delete.html:6
-#: aleksis/core/templates/oauth2_provider/authorized-tokens.html:23
-msgid "Revoke access"
-msgstr ""
-
-#: aleksis/core/templates/oauth2_provider/authorized-token-delete.html:12
-msgid "Are you sure to revoke the access for this application?"
-msgstr ""
-
-#: aleksis/core/templates/oauth2_provider/authorized-token-delete.html:20
-msgid "Revoke"
-msgstr ""
-
-#: aleksis/core/templates/oauth2_provider/authorized-tokens.html:5
-#: aleksis/core/templates/oauth2_provider/authorized-tokens.html:6
-msgid "Authorized applications"
-msgstr ""
-
-#: aleksis/core/templates/oauth2_provider/authorized-tokens.html:33
-msgid "No authorized applications."
-msgstr ""
-
 #: aleksis/core/templates/offline.html:5
 msgid "Network error"
 msgstr ""
 
 #: aleksis/core/templates/offline.html:10
-msgid "Page not available offline."
+msgid "No connection to server."
 msgstr ""
 
 #: aleksis/core/templates/offline.html:14
 msgid ""
 "\n"
-"      This page is not available offline. Since you probably don't have an internet connection, check to see if your WiFi\n"
-"      or mobile data is turned on and try again. If you think you are connected, please contact the system\n"
-"      administrators:\n"
+"      This page is not available without a connection to the server. Please check your internet connection and try again.\n"
+"      If you are connected and the error persists, please contact the system administrators:\n"
 "    "
 msgstr ""
 
@@ -2369,6 +2348,8 @@ msgstr ""
 
 #: aleksis/core/templates/templated_email/base.email:5
 #: aleksis/core/templates/templated_email/base.email:16
+#: aleksis/core/templates/templated_email/invitation.email:6
+#: aleksis/core/templates/templated_email/invitation.email:14
 msgid "Hello"
 msgstr ""
 
@@ -2436,6 +2417,23 @@ msgstr ""
 msgid "Count of objects with new problems"
 msgstr ""
 
+#: aleksis/core/templates/templated_email/invitation.email:4
+#, python-format
+msgid "Invitation to register on %(site)s"
+msgstr ""
+
+#: aleksis/core/templates/templated_email/invitation.email:6
+#: aleksis/core/templates/templated_email/invitation.email:14
+#, python-format
+msgid "Hello %(person)s"
+msgstr ""
+
+#: aleksis/core/templates/templated_email/invitation.email:9
+#: aleksis/core/templates/templated_email/invitation.email:18
+#, python-format
+msgid "you have been invited to register on %(site)s. If you would like to accept this invitation, please click on the following link:"
+msgstr ""
+
 #: aleksis/core/templates/templated_email/notification.email:4
 msgid "New notification for"
 msgstr ""
@@ -2815,148 +2813,156 @@ msgstr ""
 msgid "Download PDF"
 msgstr ""
 
-#: aleksis/core/views.py:280
+#: aleksis/core/views.py:285
 msgid "The school term has been created."
 msgstr ""
 
-#: aleksis/core/views.py:292
+#: aleksis/core/views.py:297
 msgid "The school term has been saved."
 msgstr ""
 
-#: aleksis/core/views.py:396
+#: aleksis/core/views.py:401
 msgid "The child groups were successfully saved."
 msgstr ""
 
-#: aleksis/core/views.py:415 aleksis/core/views.py:425
+#: aleksis/core/views.py:420 aleksis/core/views.py:430
 msgid "The person has been saved."
 msgstr ""
 
-#: aleksis/core/views.py:475
+#: aleksis/core/views.py:480
 msgid "The group has been saved."
 msgstr ""
 
-#: aleksis/core/views.py:558
+#: aleksis/core/views.py:528
+msgid "Maintenance mode was turned on successfully."
+msgstr ""
+
+#: aleksis/core/views.py:530
+msgid "Maintenance mode was turned off successfully."
+msgstr ""
+
+#: aleksis/core/views.py:588
 msgid "The announcement has been saved."
 msgstr ""
 
-#: aleksis/core/views.py:574
+#: aleksis/core/views.py:604
 msgid "The announcement has been deleted."
 msgstr ""
 
-#: aleksis/core/views.py:643
+#: aleksis/core/views.py:673
 msgid "The requested preference registry does not exist"
 msgstr ""
 
-#: aleksis/core/views.py:662
+#: aleksis/core/views.py:692
 msgid "The preferences have been saved successfully."
 msgstr ""
 
-#: aleksis/core/views.py:686
+#: aleksis/core/views.py:716
 msgid "The person has been deleted."
 msgstr ""
 
-#: aleksis/core/views.py:700
+#: aleksis/core/views.py:730
 msgid "The group has been deleted."
 msgstr ""
 
-#: aleksis/core/views.py:732
+#: aleksis/core/views.py:762
 msgid "The additional field has been saved."
 msgstr ""
 
-#: aleksis/core/views.py:767
+#: aleksis/core/views.py:797
 msgid "The additional field has been deleted."
 msgstr ""
 
-#: aleksis/core/views.py:792
+#: aleksis/core/views.py:822
 msgid "The group type has been saved."
 msgstr ""
 
-#: aleksis/core/views.py:823
+#: aleksis/core/views.py:853
 msgid "The group type has been deleted."
 msgstr ""
 
-#: aleksis/core/views.py:858
+#: aleksis/core/views.py:888
 msgid "Progress: Run data checks"
 msgstr ""
 
-#: aleksis/core/views.py:859
+#: aleksis/core/views.py:889
 msgid "Run data checks …"
 msgstr ""
 
-#: aleksis/core/views.py:860
+#: aleksis/core/views.py:890
 msgid "The data checks were run successfully."
 msgstr ""
 
-#: aleksis/core/views.py:861
+#: aleksis/core/views.py:891
 msgid "There was a problem while running data checks."
 msgstr ""
 
-#: aleksis/core/views.py:878
+#: aleksis/core/views.py:908
 #, python-brace-format
 msgid "The solve option '{solve_option_obj.verbose_name}' "
 msgstr ""
 
-#: aleksis/core/views.py:888
+#: aleksis/core/views.py:918
 msgid "The requested solve option does not exist"
 msgstr ""
 
-#: aleksis/core/views.py:921
+#: aleksis/core/views.py:951
 msgid "The dashboard widget has been saved."
 msgstr ""
 
-#: aleksis/core/views.py:951
+#: aleksis/core/views.py:981
 msgid "The dashboard widget has been created."
 msgstr ""
 
-#: aleksis/core/views.py:961
+#: aleksis/core/views.py:991
 msgid "The dashboard widget has been deleted."
 msgstr ""
 
-#: aleksis/core/views.py:1033
+#: aleksis/core/views.py:1063
 msgid "Your dashboard configuration has been saved successfully."
 msgstr ""
 
-#: aleksis/core/views.py:1035
+#: aleksis/core/views.py:1065
 msgid "The configuration of the default dashboard has been saved successfully."
 msgstr ""
 
-#: aleksis/core/views.py:1106
+#: aleksis/core/views.py:1136
 #, python-brace-format
 msgid "The invitation was successfully created. The invitation code is {code}"
 msgstr ""
 
-#: aleksis/core/views.py:1203
+#: aleksis/core/views.py:1233
 msgid "We have successfully assigned the permissions."
 msgstr ""
 
-#: aleksis/core/views.py:1213
+#: aleksis/core/views.py:1243
 msgid "The global user permission has been deleted."
 msgstr ""
 
-#: aleksis/core/views.py:1223
+#: aleksis/core/views.py:1253
 msgid "The global group permission has been deleted."
 msgstr ""
 
-#: aleksis/core/views.py:1233
+#: aleksis/core/views.py:1263
 msgid "The object user permission has been deleted."
 msgstr ""
 
-#: aleksis/core/views.py:1243
+#: aleksis/core/views.py:1273
 msgid "The object group permission has been deleted."
 msgstr ""
 
-#: aleksis/core/views.py:1352
+#: aleksis/core/views.py:1382
 msgid "The third-party account could not be disconnected because it is the only login method available."
 msgstr ""
 
-#: aleksis/core/views.py:1359
+#: aleksis/core/views.py:1389
 msgid "The third-party account has been successfully disconnected."
 msgstr ""
 
-#: aleksis/core/views.py:1435
+#: aleksis/core/views.py:1465
 msgid "Person was invited successfully and an email with further instructions has been send to them."
 msgstr ""
 
-#: aleksis/core/views.py:1446
+#: aleksis/core/views.py:1476
 msgid "Person was already invited."
 msgstr ""
diff --git a/aleksis/core/locale/de_DE/LC_MESSAGES/django.po b/aleksis/core/locale/de_DE/LC_MESSAGES/django.po
index d5da39be87e2e7b0525ff3adfd98c109acb8efc6..93bc589faedcb32954ef931de31c5400d4b078a3 100644
--- a/aleksis/core/locale/de_DE/LC_MESSAGES/django.po
+++ b/aleksis/core/locale/de_DE/LC_MESSAGES/django.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: AlekSIS (School Information System) 0.1\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2023-02-27 13:23+0100\n"
+"POT-Creation-Date: 2023-05-09 18:40+0200\n"
 "PO-Revision-Date: 2023-02-27 12:57+0000\n"
 "Last-Translator: Jonathan Weth <teckids@jonathanweth.de>\n"
 "Language-Team: German <https://translate.edugit.org/projects/aleksis/aleksis-core/de/>\n"
@@ -18,28 +18,34 @@ msgstr ""
 "Plural-Forms: nplurals=2; plural=n != 1;\n"
 "X-Generator: Weblate 4.12.1\n"
 
-#: aleksis/core/apps.py:155
+#: aleksis/core/apps.py:151
+#, fuzzy
+#| msgid "The preferences have been saved successfully."
+msgid "You have been logged out successfully."
+msgstr "Die Einstellungen wurde gespeichert."
+
+#: aleksis/core/apps.py:161
 msgid "OpenID Connect scope"
 msgstr "OpenID-Connect-Scope"
 
-#: aleksis/core/apps.py:156
+#: aleksis/core/apps.py:162
 msgid "Given name, family name, link to profile and picture if existing."
 msgstr "Vorname, Nachname, Link zum Profil und Bild falls vorhanden."
 
-#: aleksis/core/apps.py:157
+#: aleksis/core/apps.py:163
 msgid "Full home postal address"
 msgstr "Vollständige Postanschrift"
 
-#: aleksis/core/apps.py:158
+#: aleksis/core/apps.py:164
 msgid "Email address"
 msgstr "E-Mail-Adresse"
 
-#: aleksis/core/apps.py:159
+#: aleksis/core/apps.py:165
 msgid "Home and mobile phone"
 msgstr "Festnetz- und Mobilfunknummer"
 
-#: aleksis/core/apps.py:160 aleksis/core/forms.py:220
-#: aleksis/core/models.py:494 aleksis/core/templates/core/group/list.html:8
+#: aleksis/core/apps.py:166 aleksis/core/forms.py:221
+#: aleksis/core/models.py:495 aleksis/core/templates/core/group/list.html:8
 #: aleksis/core/templates/core/group/list.html:9
 msgid "Groups"
 msgstr "Gruppen"
@@ -98,172 +104,172 @@ msgstr "Berechtigung"
 msgid "Content type"
 msgstr "Inhaltstyp"
 
-#: aleksis/core/filters.py:113 aleksis/core/models.py:720
+#: aleksis/core/filters.py:113 aleksis/core/models.py:721
 msgid "User"
 msgstr "Benutzer"
 
-#: aleksis/core/filters.py:135 aleksis/core/models.py:493
+#: aleksis/core/filters.py:135 aleksis/core/models.py:494
 msgid "Group"
 msgstr "Gruppe"
 
-#: aleksis/core/forms.py:50 aleksis/core/forms.py:581
+#: aleksis/core/forms.py:51 aleksis/core/forms.py:582
 msgid "Base data"
 msgstr "Basisdaten"
 
-#: aleksis/core/forms.py:55 aleksis/core/tables.py:47
+#: aleksis/core/forms.py:56 aleksis/core/tables.py:47
 msgid "Address"
 msgstr "Adresse"
 
-#: aleksis/core/forms.py:56 aleksis/core/forms.py:590
+#: aleksis/core/forms.py:57 aleksis/core/forms.py:591
 msgid "Contact data"
 msgstr "Kontaktdaten"
 
-#: aleksis/core/forms.py:58
+#: aleksis/core/forms.py:59
 msgid "Advanced personal data"
 msgstr "Zusätzliche persönliche Daten"
 
-#: aleksis/core/forms.py:106
+#: aleksis/core/forms.py:107
 msgid "New user"
 msgstr "Neuer Benutzer"
 
-#: aleksis/core/forms.py:106
+#: aleksis/core/forms.py:107
 msgid "Create a new account"
 msgstr "Neues Benutzerkonto erstellen"
 
-#: aleksis/core/forms.py:132
+#: aleksis/core/forms.py:133
 msgid "You cannot set a new username when also selecting an existing user."
 msgstr "Sie können keine neuen Benutzer erstellen, wenn Sie gleichzeitig einen existierenden Benutzer auswählen."
 
-#: aleksis/core/forms.py:136
+#: aleksis/core/forms.py:137
 msgid "This username is already in use."
 msgstr "Dieser Benutzername wird bereits genutzt."
 
-#: aleksis/core/forms.py:153 aleksis/core/models.py:141
+#: aleksis/core/forms.py:154 aleksis/core/models.py:142
 msgid "School term"
 msgstr "Schuljahr"
 
-#: aleksis/core/forms.py:154
+#: aleksis/core/forms.py:155
 msgid "Common data"
 msgstr "Allgemeine Daten"
 
-#: aleksis/core/forms.py:155 aleksis/core/forms.py:207
-#: aleksis/core/models.py:164 aleksis/core/templates/core/person/list.html:8
+#: aleksis/core/forms.py:156 aleksis/core/forms.py:208
+#: aleksis/core/models.py:165 aleksis/core/templates/core/person/list.html:8
 #: aleksis/core/templates/core/person/list.html:9
 msgid "Persons"
 msgstr "Personen"
 
-#: aleksis/core/forms.py:156 aleksis/core/forms.py:592
+#: aleksis/core/forms.py:157 aleksis/core/forms.py:593
 msgid "Additional data"
 msgstr "Zusätzliche Daten"
 
-#: aleksis/core/forms.py:157 aleksis/core/models.py:217
-#: aleksis/core/models.py:546 aleksis/core/tables.py:46
+#: aleksis/core/forms.py:158 aleksis/core/models.py:218
+#: aleksis/core/models.py:547 aleksis/core/tables.py:46
 msgid "Photo"
 msgstr "Foto"
 
-#: aleksis/core/forms.py:199 aleksis/core/forms.py:202
-#: aleksis/core/models.py:84
+#: aleksis/core/forms.py:200 aleksis/core/forms.py:203
+#: aleksis/core/models.py:85
 msgid "Date"
 msgstr "Datum"
 
-#: aleksis/core/forms.py:200 aleksis/core/forms.py:203
-#: aleksis/core/models.py:92
+#: aleksis/core/forms.py:201 aleksis/core/forms.py:204
+#: aleksis/core/models.py:93
 msgid "Time"
 msgstr "Zeit"
 
-#: aleksis/core/forms.py:233
+#: aleksis/core/forms.py:234
 msgid "From when until when should the announcement be displayed?"
 msgstr "Von wann bis wann soll die Ankündigung angezeigt werden?"
 
-#: aleksis/core/forms.py:236
+#: aleksis/core/forms.py:237
 msgid "Who should see the announcement?"
 msgstr "Wer soll die Ankündigung sehen?"
 
-#: aleksis/core/forms.py:237
+#: aleksis/core/forms.py:238
 msgid "Write your announcement:"
 msgstr "Schreiben Sie ihre Ankündigung:"
 
-#: aleksis/core/forms.py:276
+#: aleksis/core/forms.py:277
 msgid "You are not allowed to create announcements which are only valid in the past."
 msgstr "Sie dürfen keine Ankündigungen erstellen, die nur für die Vergangenheit gültig sind."
 
-#: aleksis/core/forms.py:280
+#: aleksis/core/forms.py:281
 msgid "The from date and time must be earlier then the until date and time."
 msgstr "Das Startdatum und die Startzeit müssen vor dem Enddatum und der Endzeit sein."
 
-#: aleksis/core/forms.py:289
+#: aleksis/core/forms.py:290
 msgid "You need at least one recipient."
 msgstr "Sie benötigen mindestens einen Empfänger."
 
-#: aleksis/core/forms.py:398
+#: aleksis/core/forms.py:399
 msgid "Invitation code"
 msgstr "Einladungscode"
 
-#: aleksis/core/forms.py:399
+#: aleksis/core/forms.py:400
 msgid "Please enter your invitation code."
 msgstr "Bitte geben Sie Ihren Einladungscode ein."
 
-#: aleksis/core/forms.py:418 aleksis/core/models.py:192
+#: aleksis/core/forms.py:419 aleksis/core/models.py:193
 msgid "First name"
 msgstr "Vorname"
 
-#: aleksis/core/forms.py:419 aleksis/core/models.py:193
+#: aleksis/core/forms.py:420 aleksis/core/models.py:194
 msgid "Last name"
 msgstr "Nachname"
 
-#: aleksis/core/forms.py:428
+#: aleksis/core/forms.py:429
 msgid "A person is using this e-mail address"
 msgstr "Eine Person nutzt diese E-Mail-Adresse"
 
-#: aleksis/core/forms.py:456
+#: aleksis/core/forms.py:457
 msgid "Who should get the permission?"
 msgstr "Wer soll die Berechtigung erhalten?"
 
-#: aleksis/core/forms.py:457
+#: aleksis/core/forms.py:458
 msgid "On what?"
 msgstr "Auf was?"
 
-#: aleksis/core/forms.py:483
+#: aleksis/core/forms.py:484
 msgid "Select objects which the permission should be granted for:"
 msgstr "Wählen Sie die Objekte aus, für welche die Berechtigung vergeben werden soll:"
 
-#: aleksis/core/forms.py:486
+#: aleksis/core/forms.py:487
 msgid "Grant the permission for all objects"
 msgstr "Vergebe die Berechtigung für alle Objekte"
 
-#: aleksis/core/forms.py:494
+#: aleksis/core/forms.py:495
 msgid "You must select at least one group or person which should get the permission."
 msgstr "Sie müssen mindestens eine Gruppe oder Person auswählen, welche die Berechtigung erhalten soll."
 
-#: aleksis/core/forms.py:499
+#: aleksis/core/forms.py:500
 msgid "You must grant the permission to all objects or to specific objects."
 msgstr "Sie müssen die Berechtigung auf alle Objekte oder für spezifische Objekte vergeben."
 
-#: aleksis/core/forms.py:586
+#: aleksis/core/forms.py:587
 msgid "Address data"
 msgstr "Adressdaten"
 
-#: aleksis/core/forms.py:598
+#: aleksis/core/forms.py:599
 msgid "Account data"
 msgstr "Kontodaten"
 
-#: aleksis/core/forms.py:605
+#: aleksis/core/forms.py:606
 msgid "Password"
 msgstr "Passwort"
 
-#: aleksis/core/forms.py:608
+#: aleksis/core/forms.py:609
 msgid "Password (again)"
 msgstr "Passwort wiederholen"
 
-#: aleksis/core/forms.py:761
+#: aleksis/core/forms.py:762
 msgid "The selected action does not exist."
 msgstr "Die ausgewählte Aktion existiert nicht."
 
-#: aleksis/core/forms.py:772
+#: aleksis/core/forms.py:773
 msgid "You do not have permission to run {} on all selected objects."
 msgstr "Sie haben nicht die Berechtigung, {} auf alle ausgewählten Objekte auszuführen."
 
-#: aleksis/core/forms.py:828
+#: aleksis/core/forms.py:829
 msgid "No valid selection."
 msgstr "Keine gültige Auswahl."
 
@@ -291,658 +297,658 @@ msgstr "Kein Backupergebnis gefunden!"
 msgid "Linked school term"
 msgstr "Zugeordnetes Schuljahr"
 
-#: aleksis/core/models.py:82
+#: aleksis/core/models.py:83
 msgid "Boolean (Yes/No)"
 msgstr "Boolean (Ja/Nein)"
 
-#: aleksis/core/models.py:83
+#: aleksis/core/models.py:84
 msgid "Text (one line)"
 msgstr "Text (eine Zeile)"
 
-#: aleksis/core/models.py:85
+#: aleksis/core/models.py:86
 msgid "Date and time"
 msgstr "Datum und Uhrzeit"
 
-#: aleksis/core/models.py:86
+#: aleksis/core/models.py:87
 msgid "Decimal number"
 msgstr "Dezimalzahl"
 
-#: aleksis/core/models.py:87 aleksis/core/models.py:210
+#: aleksis/core/models.py:88 aleksis/core/models.py:211
 msgid "E-mail address"
 msgstr "E-Mail-Adresse"
 
-#: aleksis/core/models.py:88
+#: aleksis/core/models.py:89
 msgid "Integer"
 msgstr "Ganze Zahl"
 
-#: aleksis/core/models.py:89
+#: aleksis/core/models.py:90
 msgid "IP address"
 msgstr "IP-Adresse"
 
-#: aleksis/core/models.py:90
+#: aleksis/core/models.py:91
 msgid "Boolean or empty (Yes/No/Neither)"
 msgstr "Boolean oder leer (Ja/Nein/weder)"
 
-#: aleksis/core/models.py:91
+#: aleksis/core/models.py:92
 msgid "Text (multi-line)"
 msgstr "Text (mehrzeilig)"
 
-#: aleksis/core/models.py:93
+#: aleksis/core/models.py:94
 msgid "URL / Link"
 msgstr "URL / Link"
 
-#: aleksis/core/models.py:105 aleksis/core/models.py:1077
+#: aleksis/core/models.py:106 aleksis/core/models.py:1078
 msgid "Name"
 msgstr "Name"
 
-#: aleksis/core/models.py:107
+#: aleksis/core/models.py:108
 msgid "Start date"
 msgstr "Startdatum"
 
-#: aleksis/core/models.py:108
+#: aleksis/core/models.py:109
 msgid "End date"
 msgstr "Enddatum"
 
-#: aleksis/core/models.py:127
+#: aleksis/core/models.py:128
 msgid "The start date must be earlier than the end date."
 msgstr "Das Startdatum muss vor dem Enddatum liegen."
 
-#: aleksis/core/models.py:134
+#: aleksis/core/models.py:135
 msgid "There is already a school term for this time or a part of this time."
 msgstr "Es gibt bereits ein Schuljahr für diesen Zeitraum oder einen Teilzeitraum."
 
-#: aleksis/core/models.py:142
+#: aleksis/core/models.py:143
 #: aleksis/core/templates/core/school_term/list.html:8
 #: aleksis/core/templates/core/school_term/list.html:9
 msgid "School terms"
 msgstr "Schuljahre"
 
-#: aleksis/core/models.py:163 aleksis/core/models.py:1026
+#: aleksis/core/models.py:164 aleksis/core/models.py:1027
 msgid "Person"
 msgstr "Person"
 
-#: aleksis/core/models.py:166
+#: aleksis/core/models.py:167
 msgid "Can view address"
 msgstr "Kann Adresse sehen"
 
-#: aleksis/core/models.py:167
+#: aleksis/core/models.py:168
 msgid "Can view contact details"
 msgstr "Kann Kontaktdetails sehen"
 
-#: aleksis/core/models.py:168
+#: aleksis/core/models.py:169
 msgid "Can view photo"
 msgstr "Kann Foto sehen"
 
-#: aleksis/core/models.py:169
+#: aleksis/core/models.py:170
 msgid "Can view avatar image"
 msgstr "Kann Avatar-Bild sehen"
 
-#: aleksis/core/models.py:170
+#: aleksis/core/models.py:171
 msgid "Can view persons groups"
 msgstr "Kann Gruppen einer Person sehen"
 
-#: aleksis/core/models.py:171
+#: aleksis/core/models.py:172
 msgid "Can view personal details"
 msgstr "Kann persönliche Daten sehen"
 
-#: aleksis/core/models.py:181
+#: aleksis/core/models.py:182
 msgid "female"
 msgstr "weiblich"
 
-#: aleksis/core/models.py:181
+#: aleksis/core/models.py:182
 msgid "male"
 msgstr "männlich"
 
-#: aleksis/core/models.py:181
+#: aleksis/core/models.py:182
 msgid "other"
 msgstr "andere"
 
-#: aleksis/core/models.py:189 aleksis/core/models.py:1353
+#: aleksis/core/models.py:190 aleksis/core/models.py:1382
 msgid "Linked user"
 msgstr "Verknüpfter Benutzer"
 
-#: aleksis/core/models.py:195
+#: aleksis/core/models.py:196
 msgid "Additional name(s)"
 msgstr "Zusätzliche Namen"
 
-#: aleksis/core/models.py:199 aleksis/core/models.py:511
-#: aleksis/core/models.py:1439
+#: aleksis/core/models.py:200 aleksis/core/models.py:512
+#: aleksis/core/models.py:1468
 msgid "Short name"
 msgstr "Kurzname"
 
-#: aleksis/core/models.py:202
+#: aleksis/core/models.py:203
 msgid "Street"
 msgstr "Straße"
 
-#: aleksis/core/models.py:203
+#: aleksis/core/models.py:204
 msgid "Street number"
 msgstr "Hausnummer"
 
-#: aleksis/core/models.py:204
+#: aleksis/core/models.py:205
 msgid "Postal code"
 msgstr "Postleitzahl"
 
-#: aleksis/core/models.py:205
+#: aleksis/core/models.py:206
 msgid "Place"
 msgstr "Ort"
 
-#: aleksis/core/models.py:207
+#: aleksis/core/models.py:208
 msgid "Home phone"
 msgstr "Festnetz"
 
-#: aleksis/core/models.py:208
+#: aleksis/core/models.py:209
 msgid "Mobile phone"
 msgstr "Handy"
 
-#: aleksis/core/models.py:212
+#: aleksis/core/models.py:213
 msgid "Date of birth"
 msgstr "Geburtsdatum"
 
-#: aleksis/core/models.py:213
+#: aleksis/core/models.py:214
 msgid "Place of birth"
 msgstr "Geburtsort"
 
-#: aleksis/core/models.py:214
+#: aleksis/core/models.py:215
 msgid "Sex"
 msgstr "Geschlecht"
 
-#: aleksis/core/models.py:221 aleksis/core/models.py:550
+#: aleksis/core/models.py:222 aleksis/core/models.py:551
 msgid "This is an official photo, used for official documents and for internal use cases."
 msgstr "Dies ist ein offizielles Foto, genutzt für offizielle Dokumente und interne Zwecke."
 
-#: aleksis/core/models.py:226 aleksis/core/models.py:554
+#: aleksis/core/models.py:227 aleksis/core/models.py:555
 msgid "Display picture / Avatar"
 msgstr "Bild/Avatar anzeigen"
 
-#: aleksis/core/models.py:229 aleksis/core/models.py:557
+#: aleksis/core/models.py:230 aleksis/core/models.py:558
 msgid "This is a picture or an avatar for public display."
 msgstr "Dies ist ein Bild oder ein Avatar für die öffentliche Darstellung."
 
-#: aleksis/core/models.py:234
+#: aleksis/core/models.py:235
 msgid "Guardians / Parents"
 msgstr "Erziehungsberechtigte / Eltern"
 
-#: aleksis/core/models.py:241
+#: aleksis/core/models.py:242
 msgid "Primary group"
 msgstr "Primärgruppe"
 
-#: aleksis/core/models.py:244 aleksis/core/models.py:724
-#: aleksis/core/models.py:748 aleksis/core/models.py:843
-#: aleksis/core/models.py:1112
+#: aleksis/core/models.py:245 aleksis/core/models.py:725
+#: aleksis/core/models.py:749 aleksis/core/models.py:844
+#: aleksis/core/models.py:1113
 msgid "Description"
 msgstr "Beschreibung"
 
-#: aleksis/core/models.py:464
+#: aleksis/core/models.py:465
 msgid "Title of field"
 msgstr "Feldtitel"
 
-#: aleksis/core/models.py:466
+#: aleksis/core/models.py:467
 msgid "Type of field"
 msgstr "Feldtyp"
 
-#: aleksis/core/models.py:468
+#: aleksis/core/models.py:469
 msgid "Required"
 msgstr "Pflichtfeld"
 
-#: aleksis/core/models.py:469
+#: aleksis/core/models.py:470
 msgid "Help text / description"
 msgstr "Hilfetext/Beschreibung"
 
-#: aleksis/core/models.py:475
+#: aleksis/core/models.py:476
 msgid "Addtitional field for groups"
 msgstr "Zusätzliche Felder für Gruppen"
 
-#: aleksis/core/models.py:476
+#: aleksis/core/models.py:477
 msgid "Addtitional fields for groups"
 msgstr "Zusätzliche Felder für Gruppen"
 
-#: aleksis/core/models.py:496
+#: aleksis/core/models.py:497
 msgid "Can assign child groups to groups"
 msgstr "Kann Kindgruppen zu Gruppen zuordnen"
 
-#: aleksis/core/models.py:497
+#: aleksis/core/models.py:498
 msgid "Can view statistics about group."
 msgstr "Kann Statistiken über Gruppen sehen."
 
-#: aleksis/core/models.py:509 aleksis/core/models.py:1440
+#: aleksis/core/models.py:510 aleksis/core/models.py:1469
 msgid "Long name"
 msgstr "Langname"
 
-#: aleksis/core/models.py:519 aleksis/core/templates/core/group/full.html:105
+#: aleksis/core/models.py:520 aleksis/core/templates/core/group/full.html:105
 msgid "Members"
 msgstr "Mitglieder"
 
-#: aleksis/core/models.py:522 aleksis/core/templates/core/group/full.html:102
+#: aleksis/core/models.py:523 aleksis/core/templates/core/group/full.html:102
 msgid "Owners"
 msgstr "Leiter/-innen"
 
-#: aleksis/core/models.py:529 aleksis/core/templates/core/group/full.html:59
+#: aleksis/core/models.py:530 aleksis/core/templates/core/group/full.html:59
 msgid "Parent groups"
 msgstr "Ãœbergeordnete Gruppen"
 
-#: aleksis/core/models.py:537
+#: aleksis/core/models.py:538
 msgid "Type of group"
 msgstr "Gruppentyp"
 
-#: aleksis/core/models.py:542
+#: aleksis/core/models.py:543
 #: aleksis/core/templates/core/additional_field/list.html:8
 #: aleksis/core/templates/core/additional_field/list.html:9
 msgid "Additional fields"
 msgstr "Zusätzliche Felder"
 
-#: aleksis/core/models.py:723 aleksis/core/models.py:747
-#: aleksis/core/models.py:842 aleksis/core/models.py:1270
+#: aleksis/core/models.py:724 aleksis/core/models.py:748
+#: aleksis/core/models.py:843 aleksis/core/models.py:1299
 #: aleksis/core/templates/core/announcement/list.html:18
 msgid "Title"
 msgstr "Titel"
 
-#: aleksis/core/models.py:726
+#: aleksis/core/models.py:727
 msgid "Application"
 msgstr "Anwendung"
 
-#: aleksis/core/models.py:732
+#: aleksis/core/models.py:733
 msgid "Activity"
 msgstr "Aktivität"
 
-#: aleksis/core/models.py:733
+#: aleksis/core/models.py:734
 msgid "Activities"
 msgstr "Aktivitäten"
 
-#: aleksis/core/models.py:739
+#: aleksis/core/models.py:740
 msgid "Sender"
 msgstr "Absender"
 
-#: aleksis/core/models.py:744
+#: aleksis/core/models.py:745
 msgid "Recipient"
 msgstr "Empfänger"
 
-#: aleksis/core/models.py:749 aleksis/core/models.py:1078
+#: aleksis/core/models.py:750 aleksis/core/models.py:1079
 msgid "Link"
 msgstr "Link"
 
-#: aleksis/core/models.py:752 aleksis/core/models.py:1079
-#: aleksis/core/models.py:1400
+#: aleksis/core/models.py:753 aleksis/core/models.py:1080
+#: aleksis/core/models.py:1429
 #: aleksis/core/templates/oauth2_provider/application/detail.html:26
 msgid "Icon"
 msgstr "Symbol"
 
-#: aleksis/core/models.py:755
+#: aleksis/core/models.py:756
 msgid "Send notification at"
 msgstr "Benachrichtigung schicken am"
 
-#: aleksis/core/models.py:757
+#: aleksis/core/models.py:758
 msgid "Read"
 msgstr "Gelesen"
 
-#: aleksis/core/models.py:758
+#: aleksis/core/models.py:759
 msgid "Sent"
 msgstr "Versandt"
 
-#: aleksis/core/models.py:775
+#: aleksis/core/models.py:776
 msgid "Notification"
 msgstr "Benachrichtigung"
 
-#: aleksis/core/models.py:776 aleksis/core/preferences.py:29
+#: aleksis/core/models.py:777 aleksis/core/preferences.py:29
 msgid "Notifications"
 msgstr "Benachrichtigungen"
 
-#: aleksis/core/models.py:844
+#: aleksis/core/models.py:845
 msgid "Link to detailed view"
 msgstr "Link zur detaillierten Ansicht"
 
-#: aleksis/core/models.py:847
+#: aleksis/core/models.py:848
 msgid "Date and time from when to show"
 msgstr "Datum und Uhrzeit des Anzeigestarts"
 
-#: aleksis/core/models.py:850
+#: aleksis/core/models.py:851
 msgid "Date and time until when to show"
 msgstr "Anzeigezeitraum"
 
-#: aleksis/core/models.py:875
+#: aleksis/core/models.py:876
 msgid "Announcement"
 msgstr "Ankündigung"
 
-#: aleksis/core/models.py:876
+#: aleksis/core/models.py:877
 #: aleksis/core/templates/core/announcement/list.html:7
 #: aleksis/core/templates/core/announcement/list.html:8
 msgid "Announcements"
 msgstr "Ankündigungen"
 
-#: aleksis/core/models.py:913
+#: aleksis/core/models.py:914
 msgid "Announcement recipient"
 msgstr "Empfänger der Ankündigung"
 
-#: aleksis/core/models.py:914
+#: aleksis/core/models.py:915
 msgid "Announcement recipients"
 msgstr "Empfänger der Ankündigung"
 
-#: aleksis/core/models.py:934
+#: aleksis/core/models.py:935
 msgid "Widget Title"
 msgstr "Widget-Titel"
 
-#: aleksis/core/models.py:935
+#: aleksis/core/models.py:936
 msgid "Activate Widget"
 msgstr "Widget aktivieren"
 
-#: aleksis/core/models.py:936
+#: aleksis/core/models.py:937
 msgid "Widget is broken"
 msgstr "Widget ist kaputt"
 
-#: aleksis/core/models.py:939
+#: aleksis/core/models.py:940
 msgid "Size on mobile devices"
 msgstr "Größe auf Mobilgeräten"
 
-#: aleksis/core/models.py:940
+#: aleksis/core/models.py:941
 msgid "<= 600 px, 12 columns"
 msgstr "<= 600 px, 12 Spalten"
 
-#: aleksis/core/models.py:945
+#: aleksis/core/models.py:946
 msgid "Size on tablet devices"
 msgstr "Größe auf Tablets"
 
-#: aleksis/core/models.py:946
+#: aleksis/core/models.py:947
 msgid "> 600 px, 12 columns"
 msgstr "> 600px, 12 Spalten"
 
-#: aleksis/core/models.py:951
+#: aleksis/core/models.py:952
 msgid "Size on desktop devices"
 msgstr "Größe auf Desktopgeräten"
 
-#: aleksis/core/models.py:952
+#: aleksis/core/models.py:953
 msgid "> 992 px, 12 columns"
 msgstr "> 992 px, 12 Spalten"
 
-#: aleksis/core/models.py:957
+#: aleksis/core/models.py:958
 msgid "Size on large desktop devices"
 msgstr "Größe auf großen Desktopgeräten"
 
-#: aleksis/core/models.py:958
+#: aleksis/core/models.py:959
 msgid "> 1200 px>, 12 columns"
 msgstr "> 1200 px, 12 Spalten"
 
-#: aleksis/core/models.py:989
+#: aleksis/core/models.py:990
 msgid "Can edit default dashboard"
 msgstr "Kann Standarddashboard bearbeiten"
 
-#: aleksis/core/models.py:990
+#: aleksis/core/models.py:991
 msgid "Dashboard Widget"
 msgstr "Dashboard-Widget"
 
-#: aleksis/core/models.py:991
+#: aleksis/core/models.py:992
 msgid "Dashboard Widgets"
 msgstr "Dashboard-Widgets"
 
-#: aleksis/core/models.py:997
+#: aleksis/core/models.py:998
 msgid "URL"
 msgstr "URL"
 
-#: aleksis/core/models.py:998
+#: aleksis/core/models.py:999
 msgid "Icon URL"
 msgstr "Symbol-URL"
 
-#: aleksis/core/models.py:1004
+#: aleksis/core/models.py:1005
 msgid "External link widget"
 msgstr "Externer-Link-Widget"
 
-#: aleksis/core/models.py:1005
+#: aleksis/core/models.py:1006
 msgid "External link widgets"
 msgstr "Externer-Link-Widgets"
 
-#: aleksis/core/models.py:1011
+#: aleksis/core/models.py:1012
 msgid "Content"
 msgstr "Inhalt"
 
-#: aleksis/core/models.py:1017
+#: aleksis/core/models.py:1018
 msgid "Static content widget"
 msgstr "Statischer-Inhalt-Widget"
 
-#: aleksis/core/models.py:1018
+#: aleksis/core/models.py:1019
 msgid "Static content widgets"
 msgstr "Statischer-Inhalt-Widgets"
 
-#: aleksis/core/models.py:1023
+#: aleksis/core/models.py:1024
 msgid "Dashboard widget"
 msgstr "Dashboard-Widget"
 
-#: aleksis/core/models.py:1028
+#: aleksis/core/models.py:1029
 msgid "Order"
 msgstr "Reihenfolge"
 
-#: aleksis/core/models.py:1029
+#: aleksis/core/models.py:1030
 msgid "Part of the default dashboard"
 msgstr "Teil des Standarddashboards"
 
-#: aleksis/core/models.py:1044
+#: aleksis/core/models.py:1045
 msgid "Dashboard widget order"
 msgstr "Reihenfolge der Dashboard-Widgets"
 
-#: aleksis/core/models.py:1045
+#: aleksis/core/models.py:1046
 msgid "Dashboard widget orders"
 msgstr "Reihenfolgen der Dashboard-Widgets"
 
-#: aleksis/core/models.py:1051
+#: aleksis/core/models.py:1052
 msgid "Menu ID"
 msgstr "Menü-ID"
 
-#: aleksis/core/models.py:1064
+#: aleksis/core/models.py:1065
 msgid "Custom menu"
 msgstr "Benutzerdefiniertes Menü"
 
-#: aleksis/core/models.py:1065
+#: aleksis/core/models.py:1066
 msgid "Custom menus"
 msgstr "Benutzerdefinierte Menüs"
 
-#: aleksis/core/models.py:1075
+#: aleksis/core/models.py:1076
 msgid "Menu"
 msgstr "Menü"
 
-#: aleksis/core/models.py:1085
+#: aleksis/core/models.py:1086
 msgid "Custom menu item"
 msgstr "Benutzerdefiniertes Menüelement"
 
-#: aleksis/core/models.py:1086
+#: aleksis/core/models.py:1087
 msgid "Custom menu items"
 msgstr "Benutzerdefinierte Menüelemente"
 
-#: aleksis/core/models.py:1111
+#: aleksis/core/models.py:1112
 msgid "Title of type"
 msgstr "Titel des Typs"
 
-#: aleksis/core/models.py:1118 aleksis/core/templates/core/group/full.html:50
+#: aleksis/core/models.py:1119 aleksis/core/templates/core/group/full.html:50
 msgid "Group type"
 msgstr "Gruppentyp"
 
-#: aleksis/core/models.py:1119
+#: aleksis/core/models.py:1120
 #: aleksis/core/templates/core/group_type/list.html:8
 #: aleksis/core/templates/core/group_type/list.html:9
 msgid "Group types"
 msgstr "Gruppentypen"
 
-#: aleksis/core/models.py:1132
+#: aleksis/core/models.py:1133
 msgid "Can view system status"
 msgstr "Kann Systemstatus sehen"
 
-#: aleksis/core/models.py:1133
+#: aleksis/core/models.py:1134
 msgid "Can manage data"
 msgstr "Kann Daten verwalten"
 
-#: aleksis/core/models.py:1134
+#: aleksis/core/models.py:1135
 msgid "Can impersonate"
 msgstr "Kann sich verkleiden"
 
-#: aleksis/core/models.py:1135
+#: aleksis/core/models.py:1136
 msgid "Can use search"
 msgstr "Kann Suche benutzen"
 
-#: aleksis/core/models.py:1136
+#: aleksis/core/models.py:1137
 msgid "Can change site preferences"
 msgstr "Kann Konfiguration ändern"
 
-#: aleksis/core/models.py:1137
+#: aleksis/core/models.py:1138
 msgid "Can change person preferences"
 msgstr "Kann Einstellungen einer Person verändern"
 
-#: aleksis/core/models.py:1138
+#: aleksis/core/models.py:1139
 msgid "Can change group preferences"
 msgstr "Kann Einstellungen einer Gruppe verändern"
 
-#: aleksis/core/models.py:1139
+#: aleksis/core/models.py:1140
 msgid "Can test PDF generation"
 msgstr "Kann die PDF-Generierung testen"
 
-#: aleksis/core/models.py:1140
+#: aleksis/core/models.py:1141
 msgid "Can invite persons"
 msgstr "Kann Personen einladen"
 
-#: aleksis/core/models.py:1176
+#: aleksis/core/models.py:1177
 msgid "Related data check task"
 msgstr "Zugehörige Datenprüfungsaufgabe"
 
-#: aleksis/core/models.py:1184
+#: aleksis/core/models.py:1185
 msgid "Issue solved"
 msgstr "Problem gelöst"
 
-#: aleksis/core/models.py:1185
+#: aleksis/core/models.py:1186
 msgid "Notification sent"
 msgstr "Benachrichtigung gesendet"
 
-#: aleksis/core/models.py:1198
+#: aleksis/core/models.py:1199
 msgid "Data check result"
 msgstr "Datenprüfungsergebnis"
 
-#: aleksis/core/models.py:1199
+#: aleksis/core/models.py:1200
 msgid "Data check results"
 msgstr "Datenprüfungsergebnisse"
 
-#: aleksis/core/models.py:1201
+#: aleksis/core/models.py:1202
 msgid "Can run data checks"
 msgstr "Kann Datenprüfungen ausführen"
 
-#: aleksis/core/models.py:1202
+#: aleksis/core/models.py:1203
 msgid "Can solve data check problems"
 msgstr "Kann Datenprüfungsprobleme lösen"
 
-#: aleksis/core/models.py:1209
+#: aleksis/core/models.py:1210
 msgid "E-Mail address"
 msgstr "E-Mail-Adresse"
 
-#: aleksis/core/models.py:1241
+#: aleksis/core/models.py:1270
 msgid "Owner"
 msgstr "Leiter"
 
-#: aleksis/core/models.py:1245
+#: aleksis/core/models.py:1274
 msgid "File expires at"
 msgstr "Datei abgelaufen am"
 
-#: aleksis/core/models.py:1248
+#: aleksis/core/models.py:1277
 msgid "Generated HTML file"
 msgstr "Generierte HTML-Datei"
 
-#: aleksis/core/models.py:1251
+#: aleksis/core/models.py:1280
 msgid "Generated PDF file"
 msgstr "Generierte PDF-Datei"
 
-#: aleksis/core/models.py:1258
+#: aleksis/core/models.py:1287
 msgid "PDF file"
 msgstr "PDF-Datei"
 
-#: aleksis/core/models.py:1259
+#: aleksis/core/models.py:1288
 msgid "PDF files"
 msgstr "PDF-Dateien"
 
-#: aleksis/core/models.py:1264
+#: aleksis/core/models.py:1293
 msgid "Task result"
 msgstr "Task-Ergebnis"
 
-#: aleksis/core/models.py:1267
+#: aleksis/core/models.py:1296
 msgid "Task user"
 msgstr "Task-Benutzer"
 
-#: aleksis/core/models.py:1271
+#: aleksis/core/models.py:1300
 msgid "Back URL"
 msgstr "Zurück-URL"
 
-#: aleksis/core/models.py:1272
+#: aleksis/core/models.py:1301
 msgid "Progress title"
 msgstr "Fortschritt-Titel"
 
-#: aleksis/core/models.py:1273
+#: aleksis/core/models.py:1302
 msgid "Error message"
 msgstr "Fehlernachricht"
 
-#: aleksis/core/models.py:1274
+#: aleksis/core/models.py:1303
 msgid "Success message"
 msgstr "Erfolgsnachricht"
 
-#: aleksis/core/models.py:1275
+#: aleksis/core/models.py:1304
 msgid "Redirect on success URL"
 msgstr "URL, auf die bei Erfolg weitergeleitet wird"
 
-#: aleksis/core/models.py:1277
+#: aleksis/core/models.py:1306
 msgid "Additional button title"
 msgstr "Titel des zusätzlichen Buttons"
 
-#: aleksis/core/models.py:1279
+#: aleksis/core/models.py:1308
 msgid "Additional button URL"
 msgstr "URL des zusätzlichen Buttons"
 
-#: aleksis/core/models.py:1281
+#: aleksis/core/models.py:1310
 msgid "Additional button icon"
 msgstr "Symbol des zusätzlichen Buttons"
 
-#: aleksis/core/models.py:1283
+#: aleksis/core/models.py:1312
 msgid "Result fetched"
 msgstr "Ergebnis abgerufen"
 
-#: aleksis/core/models.py:1308
+#: aleksis/core/models.py:1337
 msgid "Background task completed successfully"
 msgstr "Hintergrundaufgabe erfolgreich fertiggestellt"
 
-#: aleksis/core/models.py:1309
+#: aleksis/core/models.py:1338
 msgid "The background task '{}' has been completed successfully."
 msgstr "Die Hintergrundaufgabe '{}' wurde erfolgreich fertiggestellt."
 
-#: aleksis/core/models.py:1315
+#: aleksis/core/models.py:1344
 msgid "Background task failed"
 msgstr "Hintergrundaufgabe fehlgeschlagen"
 
-#: aleksis/core/models.py:1316
+#: aleksis/core/models.py:1345
 msgid "The background task '{}' has failed."
 msgstr "Die Hintergrundaufgabe '{}' ist fehlgeschlagen."
 
-#: aleksis/core/models.py:1325
+#: aleksis/core/models.py:1354
 msgid "Background task"
 msgstr "Hintergrundaufgabe"
 
-#: aleksis/core/models.py:1339
+#: aleksis/core/models.py:1368
 msgid "Task user assignment"
 msgstr "Task-Benutzer-Zuordnung"
 
-#: aleksis/core/models.py:1340
+#: aleksis/core/models.py:1369
 msgid "Task user assignments"
 msgstr "Task-Benutzer-Zuordnungen"
 
-#: aleksis/core/models.py:1356
+#: aleksis/core/models.py:1385
 msgid "Additional attributes"
 msgstr "Zusätzliche Attribute"
 
-#: aleksis/core/models.py:1394
+#: aleksis/core/models.py:1423
 msgid "Allowed scopes that clients can request"
 msgstr "Erlaubte Scopes, die ein Client anfordern kann"
 
-#: aleksis/core/models.py:1404
+#: aleksis/core/models.py:1433
 msgid "This image will be shown as icon in the authorization flow. It should be squared."
 msgstr "Dieses Bild wird im Autorisierungs-Vorgang als Symbol angezeigt werden. Es sollte rechteckig sein."
 
-#: aleksis/core/models.py:1449
+#: aleksis/core/models.py:1478
 msgid "Can view room timetable"
 msgstr "Kann Raum-Stundenplan sehen"
 
-#: aleksis/core/models.py:1451
+#: aleksis/core/models.py:1480
 msgid "Room"
 msgstr "Raum"
 
-#: aleksis/core/models.py:1452
+#: aleksis/core/models.py:1481
 msgid "Rooms"
 msgstr "Räume"
 
@@ -1154,15 +1160,15 @@ msgstr "Automatisch das Dashboard und seine Widgets aktualisieren (auf der ganze
 msgid "Country for phone number parsing"
 msgstr "Land für das Einlesen von Telefonnummern"
 
-#: aleksis/core/settings.py:549
+#: aleksis/core/settings.py:551
 msgid "English"
 msgstr "Englisch"
 
-#: aleksis/core/settings.py:550
+#: aleksis/core/settings.py:552
 msgid "German"
 msgstr "Deutsch"
 
-#: aleksis/core/settings.py:551
+#: aleksis/core/settings.py:553
 msgid "Ukrainian"
 msgstr "Ukrainisch"
 
@@ -1174,14 +1180,14 @@ msgid "Edit"
 msgstr "Bearbeiten"
 
 #: aleksis/core/tables.py:27 aleksis/core/tables.py:148
-#: aleksis/core/tables.py:192
+#: aleksis/core/tables.py:185
 #: aleksis/core/templates/core/announcement/list.html:22
 msgid "Actions"
 msgstr "Aktionen"
 
 #: aleksis/core/tables.py:115 aleksis/core/tables.py:116
 #: aleksis/core/tables.py:130 aleksis/core/tables.py:146
-#: aleksis/core/tables.py:190
+#: aleksis/core/tables.py:183
 #: aleksis/core/templates/core/announcement/list.html:42
 #: aleksis/core/templates/core/group/full.html:33
 #: aleksis/core/templates/core/pages/delete.html:22
@@ -1246,7 +1252,7 @@ msgstr ""
 "      Sie können diese auch direkt kontaktieren:\n"
 "          "
 
-#: aleksis/core/templates/500.html:21
+#: aleksis/core/templates/500.html:21 aleksis/core/templates/offline.html:22
 msgid "Retry"
 msgstr "Wiederholen"
 
@@ -1601,20 +1607,20 @@ msgstr "%(name)s erstellen"
 msgid "Edit default dashboard"
 msgstr "Standard-Dashboard bearbeiten"
 
-#: aleksis/core/templates/core/data_check/list.html:9
 #: aleksis/core/templates/core/data_check/list.html:10
+#: aleksis/core/templates/core/data_check/list.html:11
 msgid "Data checks"
 msgstr "Datenprüfungen"
 
-#: aleksis/core/templates/core/data_check/list.html:15
+#: aleksis/core/templates/core/data_check/list.html:16
 msgid "Check data again"
 msgstr "Daten erneut prüfen"
 
-#: aleksis/core/templates/core/data_check/list.html:22
+#: aleksis/core/templates/core/data_check/list.html:23
 msgid "The system detected some problems with your data."
 msgstr "Das System hat einige Problemen mit Ihren Daten gefunden."
 
-#: aleksis/core/templates/core/data_check/list.html:23
+#: aleksis/core/templates/core/data_check/list.html:24
 msgid ""
 "Please go through all data and check whether some extra action is\n"
 "          needed."
@@ -1622,43 +1628,43 @@ msgstr ""
 "Bitte gehen Sie alle Daten durch und prüfen Sie, ob weitere Aktionen\n"
 "notwendig sind."
 
-#: aleksis/core/templates/core/data_check/list.html:31
+#: aleksis/core/templates/core/data_check/list.html:32
 msgid "Everything is fine."
 msgstr "Alles ist gut."
 
-#: aleksis/core/templates/core/data_check/list.html:32
+#: aleksis/core/templates/core/data_check/list.html:33
 msgid "The system hasn't detected any problems with your data."
 msgstr "Das System hat keine Probleme mit Ihren Daten entdeckt."
 
-#: aleksis/core/templates/core/data_check/list.html:40
+#: aleksis/core/templates/core/data_check/list.html:41
 msgid "Detected problems"
 msgstr "Gefundene Probleme"
 
-#: aleksis/core/templates/core/data_check/list.html:45
+#: aleksis/core/templates/core/data_check/list.html:46
 msgid "Affected object"
 msgstr "Betroffenes Objekt"
 
-#: aleksis/core/templates/core/data_check/list.html:46
+#: aleksis/core/templates/core/data_check/list.html:47
 msgid "Detected problem"
 msgstr "Entdecktes Problem"
 
-#: aleksis/core/templates/core/data_check/list.html:47
+#: aleksis/core/templates/core/data_check/list.html:48
 msgid "Show details"
 msgstr "Details anzeigen"
 
-#: aleksis/core/templates/core/data_check/list.html:48
+#: aleksis/core/templates/core/data_check/list.html:49
 msgid "Options to solve the problem"
 msgstr "Optionen, das Problem zu lösen"
 
-#: aleksis/core/templates/core/data_check/list.html:63
+#: aleksis/core/templates/core/data_check/list.html:65
 msgid "Show object"
 msgstr "Objekt anzeigen"
 
-#: aleksis/core/templates/core/data_check/list.html:86
+#: aleksis/core/templates/core/data_check/list.html:89
 msgid "Registered checks"
 msgstr "Registrierte Prüfungen"
 
-#: aleksis/core/templates/core/data_check/list.html:90
+#: aleksis/core/templates/core/data_check/list.html:93
 msgid ""
 "\n"
 "            The system will check for the following problems:\n"
@@ -1915,33 +1921,38 @@ msgstr "Systemstatus"
 msgid "System checks"
 msgstr "Systemprüfungen"
 
-#: aleksis/core/templates/core/pages/system_status.html:22
+#: aleksis/core/templates/core/pages/system_status.html:26
 msgid "Maintenance mode enabled"
 msgstr "Wartungsmodus aktiviert"
 
-#: aleksis/core/templates/core/pages/system_status.html:24
+#: aleksis/core/templates/core/pages/system_status.html:28
+#, fuzzy
+#| msgid ""
+#| "\n"
+#| "                Only admin and visitors from internal IPs can access the site.\n"
+#| "              "
 msgid ""
 "\n"
-"                Only admin and visitors from internal IPs can access the site.\n"
-"              "
+"                  Only admin and visitors from internal IPs can access the site.\n"
+"                "
 msgstr ""
 "\n"
 "                Nur Administratoren und Besucher von internen IP-Adressen können die Seite aufrufen.\n"
 "              "
 
-#: aleksis/core/templates/core/pages/system_status.html:36
+#: aleksis/core/templates/core/pages/system_status.html:39
 msgid "Maintenance mode disabled"
 msgstr "Wartungsmodus deaktiviert"
 
-#: aleksis/core/templates/core/pages/system_status.html:37
+#: aleksis/core/templates/core/pages/system_status.html:40
 msgid "Everyone can access the site."
 msgstr "Jeder kann die Seite aufrufen."
 
-#: aleksis/core/templates/core/pages/system_status.html:47
+#: aleksis/core/templates/core/pages/system_status.html:51
 msgid "Debug mode enabled"
 msgstr "Debug-Modus aktiviert"
 
-#: aleksis/core/templates/core/pages/system_status.html:49
+#: aleksis/core/templates/core/pages/system_status.html:53
 msgid ""
 "\n"
 "                The web server throws back debug information on errors. Do not use in production!\n"
@@ -1951,11 +1962,11 @@ msgstr ""
 "                Der Server gibt Debug-Informationen bei Fehlern zurück. Nicht im Produktivbetrieb nutzen!\n"
 "              "
 
-#: aleksis/core/templates/core/pages/system_status.html:56
+#: aleksis/core/templates/core/pages/system_status.html:60
 msgid "Debug mode disabled"
 msgstr "Debug-Modus deaktivert"
 
-#: aleksis/core/templates/core/pages/system_status.html:58
+#: aleksis/core/templates/core/pages/system_status.html:62
 msgid ""
 "\n"
 "                Debug mode is disabled. Default error pages are displayed on errors.\n"
@@ -1965,42 +1976,42 @@ msgstr ""
 "                Debug-Modus ist deaktiviert. Standard-Fehlerseiten werden bei Fehlern angezeigt.\n"
 "              "
 
-#: aleksis/core/templates/core/pages/system_status.html:71
+#: aleksis/core/templates/core/pages/system_status.html:75
 msgid "System health checks"
 msgstr "Systemprüfungen"
 
-#: aleksis/core/templates/core/pages/system_status.html:77
+#: aleksis/core/templates/core/pages/system_status.html:81
 msgid "Service"
 msgstr "Dienst"
 
-#: aleksis/core/templates/core/pages/system_status.html:78
-#: aleksis/core/templates/core/pages/system_status.html:119
+#: aleksis/core/templates/core/pages/system_status.html:82
+#: aleksis/core/templates/core/pages/system_status.html:123
 msgid "Status"
 msgstr "Status"
 
-#: aleksis/core/templates/core/pages/system_status.html:79
+#: aleksis/core/templates/core/pages/system_status.html:83
 msgid "Time taken"
 msgstr "Dauer"
 
-#: aleksis/core/templates/core/pages/system_status.html:100
+#: aleksis/core/templates/core/pages/system_status.html:104
 msgid "seconds"
 msgstr "Sekunden"
 
-#: aleksis/core/templates/core/pages/system_status.html:111
+#: aleksis/core/templates/core/pages/system_status.html:115
 msgid "Celery task results"
 msgstr "Celery Task-Ergebnisse"
 
-#: aleksis/core/templates/core/pages/system_status.html:116
+#: aleksis/core/templates/core/pages/system_status.html:120
 #: aleksis/core/templates/templated_email/celery_failure.email:9
 #: aleksis/core/templates/templated_email/celery_failure.email:28
 msgid "Task"
 msgstr "Task"
 
-#: aleksis/core/templates/core/pages/system_status.html:117
+#: aleksis/core/templates/core/pages/system_status.html:121
 msgid "ID"
 msgstr "ID"
 
-#: aleksis/core/templates/core/pages/system_status.html:118
+#: aleksis/core/templates/core/pages/system_status.html:122
 msgid "Date done"
 msgstr "Erledigungszeitpunkt"
 
@@ -2246,11 +2257,11 @@ msgstr "Mit E-Mail-Adresse einladen"
 msgid "Generate invitation code"
 msgstr "Einladungscode generieren"
 
-#: aleksis/core/templates/invitations/forms/_invite.html:29
+#: aleksis/core/templates/invitations/forms/_invite.html:30
 msgid "Generate code"
 msgstr "Code generieren"
 
-#: aleksis/core/templates/invitations/forms/_invite.html:33
+#: aleksis/core/templates/invitations/forms/_invite.html:34
 msgid "Invitations"
 msgstr "Einladungen"
 
@@ -2266,7 +2277,6 @@ msgstr "OAuth2-Anwendung registrieren"
 
 #: aleksis/core/templates/oauth2_provider/application/create.html:14
 #: aleksis/core/templates/oauth2_provider/application/edit.html:14
-#: aleksis/core/templates/oauth2_provider/authorized-token-delete.html:24
 #: aleksis/core/templates/two_factor/_wizard_actions.html:6
 msgid "Cancel"
 msgstr "Abbrechen"
@@ -2340,43 +2350,26 @@ msgstr "Erlauben"
 msgid "Disallow"
 msgstr "Verbieten"
 
-#: aleksis/core/templates/oauth2_provider/authorized-token-delete.html:5
-#: aleksis/core/templates/oauth2_provider/authorized-token-delete.html:6
-#: aleksis/core/templates/oauth2_provider/authorized-tokens.html:23
-msgid "Revoke access"
-msgstr "Zugriff zurückziehen"
-
-#: aleksis/core/templates/oauth2_provider/authorized-token-delete.html:12
-msgid "Are you sure to revoke the access for this application?"
-msgstr "Sind Sie sicher, dass Sie den Zugriff für diese Anwendung zurückziehen möchten?"
-
-#: aleksis/core/templates/oauth2_provider/authorized-token-delete.html:20
-msgid "Revoke"
-msgstr "Zurückziehen"
-
-#: aleksis/core/templates/oauth2_provider/authorized-tokens.html:5
-#: aleksis/core/templates/oauth2_provider/authorized-tokens.html:6
-msgid "Authorized applications"
-msgstr "Autorisierte Anwendungen"
-
-#: aleksis/core/templates/oauth2_provider/authorized-tokens.html:33
-msgid "No authorized applications."
-msgstr "Keine autorisierten Anwendungen."
-
 #: aleksis/core/templates/offline.html:5
 msgid "Network error"
 msgstr "Netzwerkfehler"
 
 #: aleksis/core/templates/offline.html:10
-msgid "Page not available offline."
-msgstr "Seite nicht offline verfügbar."
+msgid "No connection to server."
+msgstr ""
 
 #: aleksis/core/templates/offline.html:14
+#, fuzzy
+#| msgid ""
+#| "\n"
+#| "      This page is not available offline. Since you probably don't have an internet connection, check to see if your WiFi\n"
+#| "      or mobile data is turned on and try again. If you think you are connected, please contact the system\n"
+#| "      administrators:\n"
+#| "    "
 msgid ""
 "\n"
-"      This page is not available offline. Since you probably don't have an internet connection, check to see if your WiFi\n"
-"      or mobile data is turned on and try again. If you think you are connected, please contact the system\n"
-"      administrators:\n"
+"      This page is not available without a connection to the server. Please check your internet connection and try again.\n"
+"      If you are connected and the error persists, please contact the system administrators:\n"
 "    "
 msgstr ""
 "\n"
@@ -2517,6 +2510,8 @@ msgstr ""
 
 #: aleksis/core/templates/templated_email/base.email:5
 #: aleksis/core/templates/templated_email/base.email:16
+#: aleksis/core/templates/templated_email/invitation.email:6
+#: aleksis/core/templates/templated_email/invitation.email:14
 msgid "Hello"
 msgstr "Hallo"
 
@@ -2593,6 +2588,24 @@ msgstr "Problembeschreibung"
 msgid "Count of objects with new problems"
 msgstr "Anzahl der Objekte mit neuen Problemen"
 
+#: aleksis/core/templates/templated_email/invitation.email:4
+#, python-format
+msgid "Invitation to register on %(site)s"
+msgstr ""
+
+#: aleksis/core/templates/templated_email/invitation.email:6
+#: aleksis/core/templates/templated_email/invitation.email:14
+#, fuzzy, python-format
+#| msgid "Selected persons"
+msgid "Hello %(person)s"
+msgstr "Ausgewählte Personen"
+
+#: aleksis/core/templates/templated_email/invitation.email:9
+#: aleksis/core/templates/templated_email/invitation.email:18
+#, python-format
+msgid "you have been invited to register on %(site)s. If you would like to accept this invitation, please click on the following link:"
+msgstr ""
+
 #: aleksis/core/templates/templated_email/notification.email:4
 msgid "New notification for"
 msgstr "Neue Benachrichtigung für"
@@ -3070,152 +3083,180 @@ msgstr "Es ist ein Fehler beim Generieren der PDF-Datei aufgetreten."
 msgid "Download PDF"
 msgstr "PDF herunterladen"
 
-#: aleksis/core/views.py:280
+#: aleksis/core/views.py:285
 msgid "The school term has been created."
 msgstr "Das Schuljahr wurde erstellt."
 
-#: aleksis/core/views.py:292
+#: aleksis/core/views.py:297
 msgid "The school term has been saved."
 msgstr "Das Schuljahr wurde gespeichert."
 
-#: aleksis/core/views.py:396
+#: aleksis/core/views.py:401
 msgid "The child groups were successfully saved."
 msgstr "Die Untergruppen wurden gespeichert."
 
-#: aleksis/core/views.py:415 aleksis/core/views.py:425
+#: aleksis/core/views.py:420 aleksis/core/views.py:430
 msgid "The person has been saved."
 msgstr "Die Person wurde gespeichert."
 
-#: aleksis/core/views.py:475
+#: aleksis/core/views.py:480
 msgid "The group has been saved."
 msgstr "Die Gruppe wurde gespeichert."
 
-#: aleksis/core/views.py:558
+#: aleksis/core/views.py:528
+#, fuzzy
+#| msgid "The data checks were run successfully."
+msgid "Maintenance mode was turned on successfully."
+msgstr "Die Datenprüfungen wurden erfolgreich ausgeführt."
+
+#: aleksis/core/views.py:530
+msgid "Maintenance mode was turned off successfully."
+msgstr ""
+
+#: aleksis/core/views.py:588
 msgid "The announcement has been saved."
 msgstr "Die Ankündigung wurde gespeichert."
 
-#: aleksis/core/views.py:574
+#: aleksis/core/views.py:604
 msgid "The announcement has been deleted."
 msgstr "Ankündigung wurde gelöscht."
 
-#: aleksis/core/views.py:643
+#: aleksis/core/views.py:673
 msgid "The requested preference registry does not exist"
 msgstr "Das angeforderte Einstellungsregister existiert nicht"
 
-#: aleksis/core/views.py:662
+#: aleksis/core/views.py:692
 msgid "The preferences have been saved successfully."
 msgstr "Die Einstellungen wurde gespeichert."
 
-#: aleksis/core/views.py:686
+#: aleksis/core/views.py:716
 msgid "The person has been deleted."
 msgstr "Die Person wurde gelöscht."
 
-#: aleksis/core/views.py:700
+#: aleksis/core/views.py:730
 msgid "The group has been deleted."
 msgstr "Die Gruppe wurde gelöscht."
 
-#: aleksis/core/views.py:732
+#: aleksis/core/views.py:762
 msgid "The additional field has been saved."
 msgstr "Das zusätzliche Feld wurde gespeichert."
 
-#: aleksis/core/views.py:767
+#: aleksis/core/views.py:797
 msgid "The additional field has been deleted."
 msgstr "Das zusätzliche Feld wurde gelöscht."
 
-#: aleksis/core/views.py:792
+#: aleksis/core/views.py:822
 msgid "The group type has been saved."
 msgstr "Der Gruppentyp wurde gespeichert."
 
-#: aleksis/core/views.py:823
+#: aleksis/core/views.py:853
 msgid "The group type has been deleted."
 msgstr "Der Gruppentyp wurde gelöscht."
 
-#: aleksis/core/views.py:858
+#: aleksis/core/views.py:888
 msgid "Progress: Run data checks"
 msgstr "Fortschritt: Datenprüfungen ausführen"
 
-#: aleksis/core/views.py:859
+#: aleksis/core/views.py:889
 msgid "Run data checks …"
 msgstr "Datenprüfungen laufen …"
 
-#: aleksis/core/views.py:860
+#: aleksis/core/views.py:890
 msgid "The data checks were run successfully."
 msgstr "Die Datenprüfungen wurden erfolgreich ausgeführt."
 
-#: aleksis/core/views.py:861
+#: aleksis/core/views.py:891
 msgid "There was a problem while running data checks."
 msgstr "Es gab ein Problem beim Ausführen der Datenprüfungen."
 
-#: aleksis/core/views.py:878
+#: aleksis/core/views.py:908
 #, python-brace-format
 msgid "The solve option '{solve_option_obj.verbose_name}' "
 msgstr "Die Lösungsoption \"{solve_option_obj.verbose_name}\" "
 
-#: aleksis/core/views.py:888
+#: aleksis/core/views.py:918
 msgid "The requested solve option does not exist"
 msgstr "Die angeforderte Lösungsoption existiert nicht"
 
-#: aleksis/core/views.py:921
+#: aleksis/core/views.py:951
 msgid "The dashboard widget has been saved."
 msgstr "Das Dashboard-Widget wurde gespeichert."
 
-#: aleksis/core/views.py:951
+#: aleksis/core/views.py:981
 msgid "The dashboard widget has been created."
 msgstr "Das Dashboard-Widget wurde erstellt."
 
-#: aleksis/core/views.py:961
+#: aleksis/core/views.py:991
 msgid "The dashboard widget has been deleted."
 msgstr "Das Dashboard-Widget wurde gelöscht."
 
-#: aleksis/core/views.py:1033
+#: aleksis/core/views.py:1063
 msgid "Your dashboard configuration has been saved successfully."
 msgstr "Ihre Dashboardkonfiguration wurde erfolgreich gespeichert."
 
-#: aleksis/core/views.py:1035
+#: aleksis/core/views.py:1065
 msgid "The configuration of the default dashboard has been saved successfully."
 msgstr "Die Konfiguration des Standard-Dashboardes wurde erfolgreich gespeichert."
 
-#: aleksis/core/views.py:1106
+#: aleksis/core/views.py:1136
 #, python-brace-format
 msgid "The invitation was successfully created. The invitation code is {code}"
 msgstr "Die Einladung wurde erfolgreich erstellt. Der Einladungscode ist {code}"
 
-#: aleksis/core/views.py:1203
+#: aleksis/core/views.py:1233
 msgid "We have successfully assigned the permissions."
 msgstr "Wir haben die Berechtigungen erfolgreich zugewiesen."
 
-#: aleksis/core/views.py:1213
+#: aleksis/core/views.py:1243
 msgid "The global user permission has been deleted."
 msgstr "Die globale Benutzerberechtigung wurde gelöscht."
 
-#: aleksis/core/views.py:1223
+#: aleksis/core/views.py:1253
 msgid "The global group permission has been deleted."
 msgstr "Die globale Gruppenberechtigung wurde gelöscht."
 
-#: aleksis/core/views.py:1233
+#: aleksis/core/views.py:1263
 msgid "The object user permission has been deleted."
 msgstr "Die Objekt-Benutzerberechtigung wurde gelöscht."
 
-#: aleksis/core/views.py:1243
+#: aleksis/core/views.py:1273
 msgid "The object group permission has been deleted."
 msgstr "Die Objekt-Gruppenberechtigung wurde gelöscht."
 
-#: aleksis/core/views.py:1352
+#: aleksis/core/views.py:1382
 msgid "The third-party account could not be disconnected because it is the only login method available."
 msgstr "Das Drittanbieter-Konto konnte nicht deaktiviert werden, weil es die einzige verfügbare Anmeldeoption ist."
 
-#: aleksis/core/views.py:1359
+#: aleksis/core/views.py:1389
 msgid "The third-party account has been successfully disconnected."
 msgstr "Das Drittanbieter-Konto wurde erfolgreich getrennt."
 
-#: aleksis/core/views.py:1435
+#: aleksis/core/views.py:1465
 msgid "Person was invited successfully and an email with further instructions has been send to them."
 msgstr "Die Person wurde erfolgreich eingeladen und eine E-Mail mit weiteren Anweisungen wurde an sie verschickt."
 
-#: aleksis/core/views.py:1446
+#: aleksis/core/views.py:1476
 msgid "Person was already invited."
 msgstr "Person wurde bereits eingeladen."
 
+#~ msgid "Revoke access"
+#~ msgstr "Zugriff zurückziehen"
+
+#~ msgid "Are you sure to revoke the access for this application?"
+#~ msgstr "Sind Sie sicher, dass Sie den Zugriff für diese Anwendung zurückziehen möchten?"
+
+#~ msgid "Revoke"
+#~ msgstr "Zurückziehen"
+
+#~ msgid "Authorized applications"
+#~ msgstr "Autorisierte Anwendungen"
+
+#~ msgid "No authorized applications."
+#~ msgstr "Keine autorisierten Anwendungen."
+
+#~ msgid "Page not available offline."
+#~ msgstr "Seite nicht offline verfügbar."
+
 #~ msgid ""
 #~ "The maintenance mode is currently enabled. Please try again\n"
 #~ "          later."
diff --git a/aleksis/core/locale/fr/LC_MESSAGES/django.po b/aleksis/core/locale/fr/LC_MESSAGES/django.po
index 225b1a398e823d1b3a053bfd39c4ba7130561b07..2b3c3874af650baf3f812cf740ee2a3f1a9af29e 100644
--- a/aleksis/core/locale/fr/LC_MESSAGES/django.po
+++ b/aleksis/core/locale/fr/LC_MESSAGES/django.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: AlekSIS (School Information System) 0.1\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2023-02-27 13:23+0100\n"
+"POT-Creation-Date: 2023-05-09 18:40+0200\n"
 "PO-Revision-Date: 2021-06-16 12:00+0000\n"
 "Last-Translator: Jonathan Weth <teckids@jonathanweth.de>\n"
 "Language-Team: French <https://translate.edugit.org/projects/aleksis/aleksis/fr/>\n"
@@ -18,30 +18,34 @@ msgstr ""
 "Plural-Forms: nplurals=2; plural=n > 1;\n"
 "X-Generator: Weblate 4.4\n"
 
-#: aleksis/core/apps.py:155
+#: aleksis/core/apps.py:151
+msgid "You have been logged out successfully."
+msgstr ""
+
+#: aleksis/core/apps.py:161
 msgid "OpenID Connect scope"
 msgstr ""
 
-#: aleksis/core/apps.py:156
+#: aleksis/core/apps.py:162
 msgid "Given name, family name, link to profile and picture if existing."
 msgstr ""
 
-#: aleksis/core/apps.py:157
+#: aleksis/core/apps.py:163
 msgid "Full home postal address"
 msgstr ""
 
-#: aleksis/core/apps.py:158
+#: aleksis/core/apps.py:164
 #, fuzzy
 #| msgid "Contact details"
 msgid "Email address"
 msgstr "Détails de contact"
 
-#: aleksis/core/apps.py:159
+#: aleksis/core/apps.py:165
 msgid "Home and mobile phone"
 msgstr ""
 
-#: aleksis/core/apps.py:160 aleksis/core/forms.py:220
-#: aleksis/core/models.py:494 aleksis/core/templates/core/group/list.html:8
+#: aleksis/core/apps.py:166 aleksis/core/forms.py:221
+#: aleksis/core/models.py:495 aleksis/core/templates/core/group/list.html:8
 #: aleksis/core/templates/core/group/list.html:9
 #, fuzzy
 #| msgid "Group"
@@ -104,184 +108,184 @@ msgstr ""
 msgid "Content type"
 msgstr ""
 
-#: aleksis/core/filters.py:113 aleksis/core/models.py:720
+#: aleksis/core/filters.py:113 aleksis/core/models.py:721
 msgid "User"
 msgstr ""
 
-#: aleksis/core/filters.py:135 aleksis/core/models.py:493
+#: aleksis/core/filters.py:135 aleksis/core/models.py:494
 msgid "Group"
 msgstr "groupe"
 
-#: aleksis/core/forms.py:50 aleksis/core/forms.py:581
+#: aleksis/core/forms.py:51 aleksis/core/forms.py:582
 msgid "Base data"
 msgstr ""
 
-#: aleksis/core/forms.py:55 aleksis/core/tables.py:47
+#: aleksis/core/forms.py:56 aleksis/core/tables.py:47
 msgid "Address"
 msgstr ""
 
-#: aleksis/core/forms.py:56 aleksis/core/forms.py:590
+#: aleksis/core/forms.py:57 aleksis/core/forms.py:591
 #, fuzzy
 #| msgid "Contact details"
 msgid "Contact data"
 msgstr "Détails de contact"
 
-#: aleksis/core/forms.py:58
+#: aleksis/core/forms.py:59
 #, fuzzy
 #| msgid "Contact details"
 msgid "Advanced personal data"
 msgstr "Détails de contact"
 
-#: aleksis/core/forms.py:106
+#: aleksis/core/forms.py:107
 msgid "New user"
 msgstr ""
 
-#: aleksis/core/forms.py:106
+#: aleksis/core/forms.py:107
 msgid "Create a new account"
 msgstr ""
 
-#: aleksis/core/forms.py:132
+#: aleksis/core/forms.py:133
 msgid "You cannot set a new username when also selecting an existing user."
 msgstr ""
 
-#: aleksis/core/forms.py:136
+#: aleksis/core/forms.py:137
 msgid "This username is already in use."
 msgstr "Cet nom est deja en utilisation."
 
-#: aleksis/core/forms.py:153 aleksis/core/models.py:141
+#: aleksis/core/forms.py:154 aleksis/core/models.py:142
 msgid "School term"
 msgstr ""
 
-#: aleksis/core/forms.py:154
+#: aleksis/core/forms.py:155
 #, fuzzy
 #| msgid "Contact details"
 msgid "Common data"
 msgstr "Détails de contact"
 
-#: aleksis/core/forms.py:155 aleksis/core/forms.py:207
-#: aleksis/core/models.py:164 aleksis/core/templates/core/person/list.html:8
+#: aleksis/core/forms.py:156 aleksis/core/forms.py:208
+#: aleksis/core/models.py:165 aleksis/core/templates/core/person/list.html:8
 #: aleksis/core/templates/core/person/list.html:9
 #, fuzzy
 #| msgid "Person"
 msgid "Persons"
 msgstr "Personne"
 
-#: aleksis/core/forms.py:156 aleksis/core/forms.py:592
+#: aleksis/core/forms.py:157 aleksis/core/forms.py:593
 #, fuzzy
 #| msgid "Contact details"
 msgid "Additional data"
 msgstr "Détails de contact"
 
-#: aleksis/core/forms.py:157 aleksis/core/models.py:217
-#: aleksis/core/models.py:546 aleksis/core/tables.py:46
+#: aleksis/core/forms.py:158 aleksis/core/models.py:218
+#: aleksis/core/models.py:547 aleksis/core/tables.py:46
 msgid "Photo"
 msgstr ""
 
-#: aleksis/core/forms.py:199 aleksis/core/forms.py:202
-#: aleksis/core/models.py:84
+#: aleksis/core/forms.py:200 aleksis/core/forms.py:203
+#: aleksis/core/models.py:85
 msgid "Date"
 msgstr "Date"
 
-#: aleksis/core/forms.py:200 aleksis/core/forms.py:203
-#: aleksis/core/models.py:92
+#: aleksis/core/forms.py:201 aleksis/core/forms.py:204
+#: aleksis/core/models.py:93
 msgid "Time"
 msgstr ""
 
-#: aleksis/core/forms.py:233
+#: aleksis/core/forms.py:234
 msgid "From when until when should the announcement be displayed?"
 msgstr ""
 
-#: aleksis/core/forms.py:236
+#: aleksis/core/forms.py:237
 msgid "Who should see the announcement?"
 msgstr ""
 
-#: aleksis/core/forms.py:237
+#: aleksis/core/forms.py:238
 msgid "Write your announcement:"
 msgstr ""
 
-#: aleksis/core/forms.py:276
+#: aleksis/core/forms.py:277
 msgid "You are not allowed to create announcements which are only valid in the past."
 msgstr ""
 
-#: aleksis/core/forms.py:280
+#: aleksis/core/forms.py:281
 msgid "The from date and time must be earlier then the until date and time."
 msgstr ""
 
-#: aleksis/core/forms.py:289
+#: aleksis/core/forms.py:290
 msgid "You need at least one recipient."
 msgstr ""
 
-#: aleksis/core/forms.py:398
+#: aleksis/core/forms.py:399
 msgid "Invitation code"
 msgstr ""
 
-#: aleksis/core/forms.py:399
+#: aleksis/core/forms.py:400
 msgid "Please enter your invitation code."
 msgstr ""
 
-#: aleksis/core/forms.py:418 aleksis/core/models.py:192
+#: aleksis/core/forms.py:419 aleksis/core/models.py:193
 msgid "First name"
 msgstr "Prénom"
 
-#: aleksis/core/forms.py:419 aleksis/core/models.py:193
+#: aleksis/core/forms.py:420 aleksis/core/models.py:194
 msgid "Last name"
 msgstr "Nom de famille"
 
-#: aleksis/core/forms.py:428
+#: aleksis/core/forms.py:429
 msgid "A person is using this e-mail address"
 msgstr ""
 
-#: aleksis/core/forms.py:456
+#: aleksis/core/forms.py:457
 msgid "Who should get the permission?"
 msgstr ""
 
-#: aleksis/core/forms.py:457
+#: aleksis/core/forms.py:458
 msgid "On what?"
 msgstr ""
 
-#: aleksis/core/forms.py:483
+#: aleksis/core/forms.py:484
 msgid "Select objects which the permission should be granted for:"
 msgstr ""
 
-#: aleksis/core/forms.py:486
+#: aleksis/core/forms.py:487
 msgid "Grant the permission for all objects"
 msgstr ""
 
-#: aleksis/core/forms.py:494
+#: aleksis/core/forms.py:495
 msgid "You must select at least one group or person which should get the permission."
 msgstr ""
 
-#: aleksis/core/forms.py:499
+#: aleksis/core/forms.py:500
 msgid "You must grant the permission to all objects or to specific objects."
 msgstr ""
 
-#: aleksis/core/forms.py:586
+#: aleksis/core/forms.py:587
 msgid "Address data"
 msgstr ""
 
-#: aleksis/core/forms.py:598
+#: aleksis/core/forms.py:599
 #, fuzzy
 #| msgid "Contact details"
 msgid "Account data"
 msgstr "Détails de contact"
 
-#: aleksis/core/forms.py:605
+#: aleksis/core/forms.py:606
 msgid "Password"
 msgstr ""
 
-#: aleksis/core/forms.py:608
+#: aleksis/core/forms.py:609
 msgid "Password (again)"
 msgstr ""
 
-#: aleksis/core/forms.py:761
+#: aleksis/core/forms.py:762
 msgid "The selected action does not exist."
 msgstr ""
 
-#: aleksis/core/forms.py:772
+#: aleksis/core/forms.py:773
 msgid "You do not have permission to run {} on all selected objects."
 msgstr ""
 
-#: aleksis/core/forms.py:828
+#: aleksis/core/forms.py:829
 msgid "No valid selection."
 msgstr ""
 
@@ -309,494 +313,494 @@ msgstr ""
 msgid "Linked school term"
 msgstr ""
 
-#: aleksis/core/models.py:82
+#: aleksis/core/models.py:83
 msgid "Boolean (Yes/No)"
 msgstr ""
 
-#: aleksis/core/models.py:83
+#: aleksis/core/models.py:84
 msgid "Text (one line)"
 msgstr ""
 
-#: aleksis/core/models.py:85
+#: aleksis/core/models.py:86
 msgid "Date and time"
 msgstr ""
 
-#: aleksis/core/models.py:86
+#: aleksis/core/models.py:87
 msgid "Decimal number"
 msgstr ""
 
-#: aleksis/core/models.py:87 aleksis/core/models.py:210
+#: aleksis/core/models.py:88 aleksis/core/models.py:211
 msgid "E-mail address"
 msgstr ""
 
-#: aleksis/core/models.py:88
+#: aleksis/core/models.py:89
 msgid "Integer"
 msgstr ""
 
-#: aleksis/core/models.py:89
+#: aleksis/core/models.py:90
 msgid "IP address"
 msgstr ""
 
-#: aleksis/core/models.py:90
+#: aleksis/core/models.py:91
 msgid "Boolean or empty (Yes/No/Neither)"
 msgstr ""
 
-#: aleksis/core/models.py:91
+#: aleksis/core/models.py:92
 msgid "Text (multi-line)"
 msgstr ""
 
-#: aleksis/core/models.py:93
+#: aleksis/core/models.py:94
 msgid "URL / Link"
 msgstr ""
 
-#: aleksis/core/models.py:105 aleksis/core/models.py:1077
+#: aleksis/core/models.py:106 aleksis/core/models.py:1078
 msgid "Name"
 msgstr ""
 
-#: aleksis/core/models.py:107
+#: aleksis/core/models.py:108
 #, fuzzy
 #| msgid "Contact details"
 msgid "Start date"
 msgstr "Détails de contact"
 
-#: aleksis/core/models.py:108
+#: aleksis/core/models.py:109
 msgid "End date"
 msgstr ""
 
-#: aleksis/core/models.py:127
+#: aleksis/core/models.py:128
 msgid "The start date must be earlier than the end date."
 msgstr ""
 
-#: aleksis/core/models.py:134
+#: aleksis/core/models.py:135
 msgid "There is already a school term for this time or a part of this time."
 msgstr ""
 
-#: aleksis/core/models.py:142
+#: aleksis/core/models.py:143
 #: aleksis/core/templates/core/school_term/list.html:8
 #: aleksis/core/templates/core/school_term/list.html:9
 msgid "School terms"
 msgstr ""
 
-#: aleksis/core/models.py:163 aleksis/core/models.py:1026
+#: aleksis/core/models.py:164 aleksis/core/models.py:1027
 msgid "Person"
 msgstr "Personne"
 
-#: aleksis/core/models.py:166
+#: aleksis/core/models.py:167
 #, fuzzy
 #| msgid "Contact details"
 msgid "Can view address"
 msgstr "Détails de contact"
 
-#: aleksis/core/models.py:167
+#: aleksis/core/models.py:168
 #, fuzzy
 #| msgid "Contact details"
 msgid "Can view contact details"
 msgstr "Détails de contact"
 
-#: aleksis/core/models.py:168
+#: aleksis/core/models.py:169
 #, fuzzy
 #| msgid "Contact details"
 msgid "Can view photo"
 msgstr "Détails de contact"
 
-#: aleksis/core/models.py:169
+#: aleksis/core/models.py:170
 #, fuzzy
 #| msgid "Contact details"
 msgid "Can view avatar image"
 msgstr "Détails de contact"
 
-#: aleksis/core/models.py:170
+#: aleksis/core/models.py:171
 #, fuzzy
 #| msgid "Contact details"
 msgid "Can view persons groups"
 msgstr "Détails de contact"
 
-#: aleksis/core/models.py:171
+#: aleksis/core/models.py:172
 #, fuzzy
 #| msgid "Contact details"
 msgid "Can view personal details"
 msgstr "Détails de contact"
 
-#: aleksis/core/models.py:181
+#: aleksis/core/models.py:182
 msgid "female"
 msgstr ""
 
-#: aleksis/core/models.py:181
+#: aleksis/core/models.py:182
 msgid "male"
 msgstr ""
 
-#: aleksis/core/models.py:181
+#: aleksis/core/models.py:182
 msgid "other"
 msgstr ""
 
-#: aleksis/core/models.py:189 aleksis/core/models.py:1353
+#: aleksis/core/models.py:190 aleksis/core/models.py:1382
 msgid "Linked user"
 msgstr ""
 
-#: aleksis/core/models.py:195
+#: aleksis/core/models.py:196
 msgid "Additional name(s)"
 msgstr ""
 
-#: aleksis/core/models.py:199 aleksis/core/models.py:511
-#: aleksis/core/models.py:1439
+#: aleksis/core/models.py:200 aleksis/core/models.py:512
+#: aleksis/core/models.py:1468
 #, fuzzy
 #| msgid "First name"
 msgid "Short name"
 msgstr "Prénom"
 
-#: aleksis/core/models.py:202
+#: aleksis/core/models.py:203
 msgid "Street"
 msgstr ""
 
-#: aleksis/core/models.py:203
+#: aleksis/core/models.py:204
 msgid "Street number"
 msgstr ""
 
-#: aleksis/core/models.py:204
+#: aleksis/core/models.py:205
 msgid "Postal code"
 msgstr ""
 
-#: aleksis/core/models.py:205
+#: aleksis/core/models.py:206
 msgid "Place"
 msgstr ""
 
-#: aleksis/core/models.py:207
+#: aleksis/core/models.py:208
 msgid "Home phone"
 msgstr ""
 
-#: aleksis/core/models.py:208
+#: aleksis/core/models.py:209
 msgid "Mobile phone"
 msgstr ""
 
-#: aleksis/core/models.py:212
+#: aleksis/core/models.py:213
 msgid "Date of birth"
 msgstr "Date d'anniversaire"
 
-#: aleksis/core/models.py:213
+#: aleksis/core/models.py:214
 #, fuzzy
 #| msgid "Date of birth"
 msgid "Place of birth"
 msgstr "Date d'anniversaire"
 
-#: aleksis/core/models.py:214
+#: aleksis/core/models.py:215
 msgid "Sex"
 msgstr "Sexe"
 
-#: aleksis/core/models.py:221 aleksis/core/models.py:550
+#: aleksis/core/models.py:222 aleksis/core/models.py:551
 msgid "This is an official photo, used for official documents and for internal use cases."
 msgstr ""
 
-#: aleksis/core/models.py:226 aleksis/core/models.py:554
+#: aleksis/core/models.py:227 aleksis/core/models.py:555
 msgid "Display picture / Avatar"
 msgstr ""
 
-#: aleksis/core/models.py:229 aleksis/core/models.py:557
+#: aleksis/core/models.py:230 aleksis/core/models.py:558
 msgid "This is a picture or an avatar for public display."
 msgstr ""
 
-#: aleksis/core/models.py:234
+#: aleksis/core/models.py:235
 msgid "Guardians / Parents"
 msgstr ""
 
-#: aleksis/core/models.py:241
+#: aleksis/core/models.py:242
 msgid "Primary group"
 msgstr ""
 
-#: aleksis/core/models.py:244 aleksis/core/models.py:724
-#: aleksis/core/models.py:748 aleksis/core/models.py:843
-#: aleksis/core/models.py:1112
+#: aleksis/core/models.py:245 aleksis/core/models.py:725
+#: aleksis/core/models.py:749 aleksis/core/models.py:844
+#: aleksis/core/models.py:1113
 msgid "Description"
 msgstr "Description"
 
-#: aleksis/core/models.py:464
+#: aleksis/core/models.py:465
 msgid "Title of field"
 msgstr ""
 
-#: aleksis/core/models.py:466
+#: aleksis/core/models.py:467
 msgid "Type of field"
 msgstr ""
 
-#: aleksis/core/models.py:468
+#: aleksis/core/models.py:469
 msgid "Required"
 msgstr ""
 
-#: aleksis/core/models.py:469
+#: aleksis/core/models.py:470
 #, fuzzy
 #| msgid "Description"
 msgid "Help text / description"
 msgstr "Description"
 
-#: aleksis/core/models.py:475
+#: aleksis/core/models.py:476
 msgid "Addtitional field for groups"
 msgstr ""
 
-#: aleksis/core/models.py:476
+#: aleksis/core/models.py:477
 msgid "Addtitional fields for groups"
 msgstr ""
 
-#: aleksis/core/models.py:496
+#: aleksis/core/models.py:497
 msgid "Can assign child groups to groups"
 msgstr ""
 
-#: aleksis/core/models.py:497
+#: aleksis/core/models.py:498
 #, fuzzy
 #| msgid "Contact details"
 msgid "Can view statistics about group."
 msgstr "Détails de contact"
 
-#: aleksis/core/models.py:509 aleksis/core/models.py:1440
+#: aleksis/core/models.py:510 aleksis/core/models.py:1469
 #, fuzzy
 #| msgid "Last name"
 msgid "Long name"
 msgstr "Nom de famille"
 
-#: aleksis/core/models.py:519 aleksis/core/templates/core/group/full.html:105
+#: aleksis/core/models.py:520 aleksis/core/templates/core/group/full.html:105
 msgid "Members"
 msgstr ""
 
-#: aleksis/core/models.py:522 aleksis/core/templates/core/group/full.html:102
+#: aleksis/core/models.py:523 aleksis/core/templates/core/group/full.html:102
 msgid "Owners"
 msgstr "Propriétaires"
 
-#: aleksis/core/models.py:529 aleksis/core/templates/core/group/full.html:59
+#: aleksis/core/models.py:530 aleksis/core/templates/core/group/full.html:59
 msgid "Parent groups"
 msgstr ""
 
-#: aleksis/core/models.py:537
+#: aleksis/core/models.py:538
 msgid "Type of group"
 msgstr ""
 
-#: aleksis/core/models.py:542
+#: aleksis/core/models.py:543
 #: aleksis/core/templates/core/additional_field/list.html:8
 #: aleksis/core/templates/core/additional_field/list.html:9
 msgid "Additional fields"
 msgstr ""
 
-#: aleksis/core/models.py:723 aleksis/core/models.py:747
-#: aleksis/core/models.py:842 aleksis/core/models.py:1270
+#: aleksis/core/models.py:724 aleksis/core/models.py:748
+#: aleksis/core/models.py:843 aleksis/core/models.py:1299
 #: aleksis/core/templates/core/announcement/list.html:18
 msgid "Title"
 msgstr ""
 
-#: aleksis/core/models.py:726
+#: aleksis/core/models.py:727
 msgid "Application"
 msgstr ""
 
-#: aleksis/core/models.py:732
+#: aleksis/core/models.py:733
 msgid "Activity"
 msgstr ""
 
-#: aleksis/core/models.py:733
+#: aleksis/core/models.py:734
 msgid "Activities"
 msgstr ""
 
-#: aleksis/core/models.py:739
+#: aleksis/core/models.py:740
 msgid "Sender"
 msgstr ""
 
-#: aleksis/core/models.py:744
+#: aleksis/core/models.py:745
 msgid "Recipient"
 msgstr ""
 
-#: aleksis/core/models.py:749 aleksis/core/models.py:1078
+#: aleksis/core/models.py:750 aleksis/core/models.py:1079
 msgid "Link"
 msgstr ""
 
-#: aleksis/core/models.py:752 aleksis/core/models.py:1079
-#: aleksis/core/models.py:1400
+#: aleksis/core/models.py:753 aleksis/core/models.py:1080
+#: aleksis/core/models.py:1429
 #: aleksis/core/templates/oauth2_provider/application/detail.html:26
 msgid "Icon"
 msgstr ""
 
-#: aleksis/core/models.py:755
+#: aleksis/core/models.py:756
 msgid "Send notification at"
 msgstr ""
 
-#: aleksis/core/models.py:757
+#: aleksis/core/models.py:758
 msgid "Read"
 msgstr ""
 
-#: aleksis/core/models.py:758
+#: aleksis/core/models.py:759
 msgid "Sent"
 msgstr ""
 
-#: aleksis/core/models.py:775
+#: aleksis/core/models.py:776
 msgid "Notification"
 msgstr ""
 
-#: aleksis/core/models.py:776 aleksis/core/preferences.py:29
+#: aleksis/core/models.py:777 aleksis/core/preferences.py:29
 msgid "Notifications"
 msgstr ""
 
-#: aleksis/core/models.py:844
+#: aleksis/core/models.py:845
 msgid "Link to detailed view"
 msgstr ""
 
-#: aleksis/core/models.py:847
+#: aleksis/core/models.py:848
 msgid "Date and time from when to show"
 msgstr ""
 
-#: aleksis/core/models.py:850
+#: aleksis/core/models.py:851
 msgid "Date and time until when to show"
 msgstr ""
 
-#: aleksis/core/models.py:875
+#: aleksis/core/models.py:876
 msgid "Announcement"
 msgstr ""
 
-#: aleksis/core/models.py:876
+#: aleksis/core/models.py:877
 #: aleksis/core/templates/core/announcement/list.html:7
 #: aleksis/core/templates/core/announcement/list.html:8
 msgid "Announcements"
 msgstr ""
 
-#: aleksis/core/models.py:913
+#: aleksis/core/models.py:914
 msgid "Announcement recipient"
 msgstr ""
 
-#: aleksis/core/models.py:914
+#: aleksis/core/models.py:915
 msgid "Announcement recipients"
 msgstr ""
 
-#: aleksis/core/models.py:934
+#: aleksis/core/models.py:935
 msgid "Widget Title"
 msgstr ""
 
-#: aleksis/core/models.py:935
+#: aleksis/core/models.py:936
 msgid "Activate Widget"
 msgstr ""
 
-#: aleksis/core/models.py:936
+#: aleksis/core/models.py:937
 msgid "Widget is broken"
 msgstr ""
 
-#: aleksis/core/models.py:939
+#: aleksis/core/models.py:940
 msgid "Size on mobile devices"
 msgstr ""
 
-#: aleksis/core/models.py:940
+#: aleksis/core/models.py:941
 msgid "<= 600 px, 12 columns"
 msgstr ""
 
-#: aleksis/core/models.py:945
+#: aleksis/core/models.py:946
 msgid "Size on tablet devices"
 msgstr ""
 
-#: aleksis/core/models.py:946
+#: aleksis/core/models.py:947
 msgid "> 600 px, 12 columns"
 msgstr ""
 
-#: aleksis/core/models.py:951
+#: aleksis/core/models.py:952
 msgid "Size on desktop devices"
 msgstr ""
 
-#: aleksis/core/models.py:952
+#: aleksis/core/models.py:953
 msgid "> 992 px, 12 columns"
 msgstr ""
 
-#: aleksis/core/models.py:957
+#: aleksis/core/models.py:958
 msgid "Size on large desktop devices"
 msgstr ""
 
-#: aleksis/core/models.py:958
+#: aleksis/core/models.py:959
 msgid "> 1200 px>, 12 columns"
 msgstr ""
 
-#: aleksis/core/models.py:989
+#: aleksis/core/models.py:990
 msgid "Can edit default dashboard"
 msgstr ""
 
-#: aleksis/core/models.py:990
+#: aleksis/core/models.py:991
 msgid "Dashboard Widget"
 msgstr ""
 
-#: aleksis/core/models.py:991
+#: aleksis/core/models.py:992
 msgid "Dashboard Widgets"
 msgstr ""
 
-#: aleksis/core/models.py:997
+#: aleksis/core/models.py:998
 msgid "URL"
 msgstr ""
 
-#: aleksis/core/models.py:998
+#: aleksis/core/models.py:999
 msgid "Icon URL"
 msgstr ""
 
-#: aleksis/core/models.py:1004
+#: aleksis/core/models.py:1005
 msgid "External link widget"
 msgstr ""
 
-#: aleksis/core/models.py:1005
+#: aleksis/core/models.py:1006
 msgid "External link widgets"
 msgstr ""
 
-#: aleksis/core/models.py:1011
+#: aleksis/core/models.py:1012
 msgid "Content"
 msgstr ""
 
-#: aleksis/core/models.py:1017
+#: aleksis/core/models.py:1018
 msgid "Static content widget"
 msgstr ""
 
-#: aleksis/core/models.py:1018
+#: aleksis/core/models.py:1019
 msgid "Static content widgets"
 msgstr ""
 
-#: aleksis/core/models.py:1023
+#: aleksis/core/models.py:1024
 msgid "Dashboard widget"
 msgstr ""
 
-#: aleksis/core/models.py:1028
+#: aleksis/core/models.py:1029
 msgid "Order"
 msgstr ""
 
-#: aleksis/core/models.py:1029
+#: aleksis/core/models.py:1030
 msgid "Part of the default dashboard"
 msgstr ""
 
-#: aleksis/core/models.py:1044
+#: aleksis/core/models.py:1045
 msgid "Dashboard widget order"
 msgstr ""
 
-#: aleksis/core/models.py:1045
+#: aleksis/core/models.py:1046
 msgid "Dashboard widget orders"
 msgstr ""
 
-#: aleksis/core/models.py:1051
+#: aleksis/core/models.py:1052
 msgid "Menu ID"
 msgstr ""
 
-#: aleksis/core/models.py:1064
+#: aleksis/core/models.py:1065
 msgid "Custom menu"
 msgstr ""
 
-#: aleksis/core/models.py:1065
+#: aleksis/core/models.py:1066
 msgid "Custom menus"
 msgstr ""
 
-#: aleksis/core/models.py:1075
+#: aleksis/core/models.py:1076
 msgid "Menu"
 msgstr ""
 
-#: aleksis/core/models.py:1085
+#: aleksis/core/models.py:1086
 msgid "Custom menu item"
 msgstr ""
 
-#: aleksis/core/models.py:1086
+#: aleksis/core/models.py:1087
 msgid "Custom menu items"
 msgstr ""
 
-#: aleksis/core/models.py:1111
+#: aleksis/core/models.py:1112
 msgid "Title of type"
 msgstr ""
 
-#: aleksis/core/models.py:1118 aleksis/core/templates/core/group/full.html:50
+#: aleksis/core/models.py:1119 aleksis/core/templates/core/group/full.html:50
 #, fuzzy
 #| msgid "Group"
 msgid "Group type"
 msgstr "Groupe"
 
-#: aleksis/core/models.py:1119
+#: aleksis/core/models.py:1120
 #: aleksis/core/templates/core/group_type/list.html:8
 #: aleksis/core/templates/core/group_type/list.html:9
 #, fuzzy
@@ -804,211 +808,211 @@ msgstr "Groupe"
 msgid "Group types"
 msgstr "Groupe"
 
-#: aleksis/core/models.py:1132
+#: aleksis/core/models.py:1133
 #, fuzzy
 #| msgid "Contact details"
 msgid "Can view system status"
 msgstr "Détails de contact"
 
-#: aleksis/core/models.py:1133
+#: aleksis/core/models.py:1134
 msgid "Can manage data"
 msgstr ""
 
-#: aleksis/core/models.py:1134
+#: aleksis/core/models.py:1135
 #, fuzzy
 #| msgid "Contact details"
 msgid "Can impersonate"
 msgstr "Détails de contact"
 
-#: aleksis/core/models.py:1135
+#: aleksis/core/models.py:1136
 msgid "Can use search"
 msgstr ""
 
-#: aleksis/core/models.py:1136
+#: aleksis/core/models.py:1137
 msgid "Can change site preferences"
 msgstr ""
 
-#: aleksis/core/models.py:1137
+#: aleksis/core/models.py:1138
 msgid "Can change person preferences"
 msgstr ""
 
-#: aleksis/core/models.py:1138
+#: aleksis/core/models.py:1139
 msgid "Can change group preferences"
 msgstr ""
 
-#: aleksis/core/models.py:1139
+#: aleksis/core/models.py:1140
 msgid "Can test PDF generation"
 msgstr ""
 
-#: aleksis/core/models.py:1140
+#: aleksis/core/models.py:1141
 #, fuzzy
 #| msgid "Contact details"
 msgid "Can invite persons"
 msgstr "Détails de contact"
 
-#: aleksis/core/models.py:1176
+#: aleksis/core/models.py:1177
 msgid "Related data check task"
 msgstr ""
 
-#: aleksis/core/models.py:1184
+#: aleksis/core/models.py:1185
 msgid "Issue solved"
 msgstr ""
 
-#: aleksis/core/models.py:1185
+#: aleksis/core/models.py:1186
 msgid "Notification sent"
 msgstr ""
 
-#: aleksis/core/models.py:1198
+#: aleksis/core/models.py:1199
 msgid "Data check result"
 msgstr ""
 
-#: aleksis/core/models.py:1199
+#: aleksis/core/models.py:1200
 msgid "Data check results"
 msgstr ""
 
-#: aleksis/core/models.py:1201
+#: aleksis/core/models.py:1202
 msgid "Can run data checks"
 msgstr ""
 
-#: aleksis/core/models.py:1202
+#: aleksis/core/models.py:1203
 msgid "Can solve data check problems"
 msgstr ""
 
-#: aleksis/core/models.py:1209
+#: aleksis/core/models.py:1210
 #, fuzzy
 #| msgid "Contact details"
 msgid "E-Mail address"
 msgstr "Détails de contact"
 
-#: aleksis/core/models.py:1241
+#: aleksis/core/models.py:1270
 #, fuzzy
 #| msgid "Owners"
 msgid "Owner"
 msgstr "Propriétaires"
 
-#: aleksis/core/models.py:1245
+#: aleksis/core/models.py:1274
 msgid "File expires at"
 msgstr ""
 
-#: aleksis/core/models.py:1248
+#: aleksis/core/models.py:1277
 msgid "Generated HTML file"
 msgstr ""
 
-#: aleksis/core/models.py:1251
+#: aleksis/core/models.py:1280
 msgid "Generated PDF file"
 msgstr ""
 
-#: aleksis/core/models.py:1258
+#: aleksis/core/models.py:1287
 msgid "PDF file"
 msgstr ""
 
-#: aleksis/core/models.py:1259
+#: aleksis/core/models.py:1288
 msgid "PDF files"
 msgstr ""
 
-#: aleksis/core/models.py:1264
+#: aleksis/core/models.py:1293
 msgid "Task result"
 msgstr ""
 
-#: aleksis/core/models.py:1267
+#: aleksis/core/models.py:1296
 msgid "Task user"
 msgstr ""
 
-#: aleksis/core/models.py:1271
+#: aleksis/core/models.py:1300
 msgid "Back URL"
 msgstr ""
 
-#: aleksis/core/models.py:1272
+#: aleksis/core/models.py:1301
 msgid "Progress title"
 msgstr ""
 
-#: aleksis/core/models.py:1273
+#: aleksis/core/models.py:1302
 msgid "Error message"
 msgstr ""
 
-#: aleksis/core/models.py:1274
+#: aleksis/core/models.py:1303
 msgid "Success message"
 msgstr ""
 
-#: aleksis/core/models.py:1275
+#: aleksis/core/models.py:1304
 msgid "Redirect on success URL"
 msgstr ""
 
-#: aleksis/core/models.py:1277
+#: aleksis/core/models.py:1306
 #, fuzzy
 #| msgid "Contact details"
 msgid "Additional button title"
 msgstr "Détails de contact"
 
-#: aleksis/core/models.py:1279
+#: aleksis/core/models.py:1308
 #, fuzzy
 #| msgid "Contact details"
 msgid "Additional button URL"
 msgstr "Détails de contact"
 
-#: aleksis/core/models.py:1281
+#: aleksis/core/models.py:1310
 #, fuzzy
 #| msgid "Contact details"
 msgid "Additional button icon"
 msgstr "Détails de contact"
 
-#: aleksis/core/models.py:1283
+#: aleksis/core/models.py:1312
 msgid "Result fetched"
 msgstr ""
 
-#: aleksis/core/models.py:1308
+#: aleksis/core/models.py:1337
 msgid "Background task completed successfully"
 msgstr ""
 
-#: aleksis/core/models.py:1309
+#: aleksis/core/models.py:1338
 msgid "The background task '{}' has been completed successfully."
 msgstr ""
 
-#: aleksis/core/models.py:1315
+#: aleksis/core/models.py:1344
 msgid "Background task failed"
 msgstr ""
 
-#: aleksis/core/models.py:1316
+#: aleksis/core/models.py:1345
 msgid "The background task '{}' has failed."
 msgstr ""
 
-#: aleksis/core/models.py:1325
+#: aleksis/core/models.py:1354
 msgid "Background task"
 msgstr ""
 
-#: aleksis/core/models.py:1339
+#: aleksis/core/models.py:1368
 msgid "Task user assignment"
 msgstr ""
 
-#: aleksis/core/models.py:1340
+#: aleksis/core/models.py:1369
 msgid "Task user assignments"
 msgstr ""
 
-#: aleksis/core/models.py:1356
+#: aleksis/core/models.py:1385
 #, fuzzy
 #| msgid "Contact details"
 msgid "Additional attributes"
 msgstr "Détails de contact"
 
-#: aleksis/core/models.py:1394
+#: aleksis/core/models.py:1423
 msgid "Allowed scopes that clients can request"
 msgstr ""
 
-#: aleksis/core/models.py:1404
+#: aleksis/core/models.py:1433
 msgid "This image will be shown as icon in the authorization flow. It should be squared."
 msgstr ""
 
-#: aleksis/core/models.py:1449
+#: aleksis/core/models.py:1478
 #, fuzzy
 #| msgid "Contact details"
 msgid "Can view room timetable"
 msgstr "Détails de contact"
 
-#: aleksis/core/models.py:1451
+#: aleksis/core/models.py:1480
 msgid "Room"
 msgstr ""
 
-#: aleksis/core/models.py:1452
+#: aleksis/core/models.py:1481
 msgid "Rooms"
 msgstr ""
 
@@ -1230,15 +1234,15 @@ msgstr ""
 msgid "Country for phone number parsing"
 msgstr ""
 
-#: aleksis/core/settings.py:549
+#: aleksis/core/settings.py:551
 msgid "English"
 msgstr ""
 
-#: aleksis/core/settings.py:550
+#: aleksis/core/settings.py:552
 msgid "German"
 msgstr ""
 
-#: aleksis/core/settings.py:551
+#: aleksis/core/settings.py:553
 msgid "Ukrainian"
 msgstr ""
 
@@ -1250,14 +1254,14 @@ msgid "Edit"
 msgstr ""
 
 #: aleksis/core/tables.py:27 aleksis/core/tables.py:148
-#: aleksis/core/tables.py:192
+#: aleksis/core/tables.py:185
 #: aleksis/core/templates/core/announcement/list.html:22
 msgid "Actions"
 msgstr ""
 
 #: aleksis/core/tables.py:115 aleksis/core/tables.py:116
 #: aleksis/core/tables.py:130 aleksis/core/tables.py:146
-#: aleksis/core/tables.py:190
+#: aleksis/core/tables.py:183
 #: aleksis/core/templates/core/announcement/list.html:42
 #: aleksis/core/templates/core/group/full.html:33
 #: aleksis/core/templates/core/pages/delete.html:22
@@ -1306,7 +1310,7 @@ msgid ""
 "          "
 msgstr ""
 
-#: aleksis/core/templates/500.html:21
+#: aleksis/core/templates/500.html:21 aleksis/core/templates/offline.html:22
 msgid "Retry"
 msgstr ""
 
@@ -1624,64 +1628,64 @@ msgstr "Détails de contact"
 msgid "Edit default dashboard"
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:9
 #: aleksis/core/templates/core/data_check/list.html:10
+#: aleksis/core/templates/core/data_check/list.html:11
 msgid "Data checks"
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:15
+#: aleksis/core/templates/core/data_check/list.html:16
 msgid "Check data again"
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:22
+#: aleksis/core/templates/core/data_check/list.html:23
 msgid "The system detected some problems with your data."
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:23
+#: aleksis/core/templates/core/data_check/list.html:24
 msgid ""
 "Please go through all data and check whether some extra action is\n"
 "          needed."
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:31
+#: aleksis/core/templates/core/data_check/list.html:32
 msgid "Everything is fine."
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:32
+#: aleksis/core/templates/core/data_check/list.html:33
 msgid "The system hasn't detected any problems with your data."
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:40
+#: aleksis/core/templates/core/data_check/list.html:41
 msgid "Detected problems"
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:45
+#: aleksis/core/templates/core/data_check/list.html:46
 msgid "Affected object"
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:46
+#: aleksis/core/templates/core/data_check/list.html:47
 msgid "Detected problem"
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:47
+#: aleksis/core/templates/core/data_check/list.html:48
 #, fuzzy
 #| msgid "Contact details"
 msgid "Show details"
 msgstr "Détails de contact"
 
-#: aleksis/core/templates/core/data_check/list.html:48
+#: aleksis/core/templates/core/data_check/list.html:49
 msgid "Options to solve the problem"
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:63
+#: aleksis/core/templates/core/data_check/list.html:65
 msgid "Show object"
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:86
+#: aleksis/core/templates/core/data_check/list.html:89
 msgid "Registered checks"
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:90
+#: aleksis/core/templates/core/data_check/list.html:93
 msgid ""
 "\n"
 "            The system will check for the following problems:\n"
@@ -1907,83 +1911,83 @@ msgstr ""
 msgid "System checks"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:22
+#: aleksis/core/templates/core/pages/system_status.html:26
 msgid "Maintenance mode enabled"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:24
+#: aleksis/core/templates/core/pages/system_status.html:28
 msgid ""
 "\n"
-"                Only admin and visitors from internal IPs can access the site.\n"
-"              "
+"                  Only admin and visitors from internal IPs can access the site.\n"
+"                "
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:36
+#: aleksis/core/templates/core/pages/system_status.html:39
 msgid "Maintenance mode disabled"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:37
+#: aleksis/core/templates/core/pages/system_status.html:40
 msgid "Everyone can access the site."
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:47
+#: aleksis/core/templates/core/pages/system_status.html:51
 msgid "Debug mode enabled"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:49
+#: aleksis/core/templates/core/pages/system_status.html:53
 msgid ""
 "\n"
 "                The web server throws back debug information on errors. Do not use in production!\n"
 "              "
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:56
+#: aleksis/core/templates/core/pages/system_status.html:60
 msgid "Debug mode disabled"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:58
+#: aleksis/core/templates/core/pages/system_status.html:62
 msgid ""
 "\n"
 "                Debug mode is disabled. Default error pages are displayed on errors.\n"
 "              "
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:71
+#: aleksis/core/templates/core/pages/system_status.html:75
 msgid "System health checks"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:77
+#: aleksis/core/templates/core/pages/system_status.html:81
 msgid "Service"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:78
-#: aleksis/core/templates/core/pages/system_status.html:119
+#: aleksis/core/templates/core/pages/system_status.html:82
+#: aleksis/core/templates/core/pages/system_status.html:123
 msgid "Status"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:79
+#: aleksis/core/templates/core/pages/system_status.html:83
 msgid "Time taken"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:100
+#: aleksis/core/templates/core/pages/system_status.html:104
 msgid "seconds"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:111
+#: aleksis/core/templates/core/pages/system_status.html:115
 msgid "Celery task results"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:116
+#: aleksis/core/templates/core/pages/system_status.html:120
 #: aleksis/core/templates/templated_email/celery_failure.email:9
 #: aleksis/core/templates/templated_email/celery_failure.email:28
 msgid "Task"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:117
+#: aleksis/core/templates/core/pages/system_status.html:121
 msgid "ID"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:118
+#: aleksis/core/templates/core/pages/system_status.html:122
 #, fuzzy
 #| msgid "Date"
 msgid "Date done"
@@ -2215,11 +2219,11 @@ msgstr "Détails de contact"
 msgid "Generate invitation code"
 msgstr ""
 
-#: aleksis/core/templates/invitations/forms/_invite.html:29
+#: aleksis/core/templates/invitations/forms/_invite.html:30
 msgid "Generate code"
 msgstr ""
 
-#: aleksis/core/templates/invitations/forms/_invite.html:33
+#: aleksis/core/templates/invitations/forms/_invite.html:34
 msgid "Invitations"
 msgstr ""
 
@@ -2237,7 +2241,6 @@ msgstr "Détails de contact"
 
 #: aleksis/core/templates/oauth2_provider/application/create.html:14
 #: aleksis/core/templates/oauth2_provider/application/edit.html:14
-#: aleksis/core/templates/oauth2_provider/authorized-token-delete.html:24
 #: aleksis/core/templates/two_factor/_wizard_actions.html:6
 msgid "Cancel"
 msgstr ""
@@ -2316,45 +2319,19 @@ msgstr ""
 msgid "Disallow"
 msgstr ""
 
-#: aleksis/core/templates/oauth2_provider/authorized-token-delete.html:5
-#: aleksis/core/templates/oauth2_provider/authorized-token-delete.html:6
-#: aleksis/core/templates/oauth2_provider/authorized-tokens.html:23
-msgid "Revoke access"
-msgstr ""
-
-#: aleksis/core/templates/oauth2_provider/authorized-token-delete.html:12
-msgid "Are you sure to revoke the access for this application?"
-msgstr ""
-
-#: aleksis/core/templates/oauth2_provider/authorized-token-delete.html:20
-msgid "Revoke"
-msgstr ""
-
-#: aleksis/core/templates/oauth2_provider/authorized-tokens.html:5
-#: aleksis/core/templates/oauth2_provider/authorized-tokens.html:6
-msgid "Authorized applications"
-msgstr ""
-
-#: aleksis/core/templates/oauth2_provider/authorized-tokens.html:33
-#, fuzzy
-#| msgid "Contact details"
-msgid "No authorized applications."
-msgstr "Détails de contact"
-
 #: aleksis/core/templates/offline.html:5
 msgid "Network error"
 msgstr ""
 
 #: aleksis/core/templates/offline.html:10
-msgid "Page not available offline."
+msgid "No connection to server."
 msgstr ""
 
 #: aleksis/core/templates/offline.html:14
 msgid ""
 "\n"
-"      This page is not available offline. Since you probably don't have an internet connection, check to see if your WiFi\n"
-"      or mobile data is turned on and try again. If you think you are connected, please contact the system\n"
-"      administrators:\n"
+"      This page is not available without a connection to the server. Please check your internet connection and try again.\n"
+"      If you are connected and the error persists, please contact the system administrators:\n"
 "    "
 msgstr ""
 
@@ -2472,6 +2449,8 @@ msgstr ""
 
 #: aleksis/core/templates/templated_email/base.email:5
 #: aleksis/core/templates/templated_email/base.email:16
+#: aleksis/core/templates/templated_email/invitation.email:6
+#: aleksis/core/templates/templated_email/invitation.email:14
 msgid "Hello"
 msgstr ""
 
@@ -2545,6 +2524,23 @@ msgstr "Description"
 msgid "Count of objects with new problems"
 msgstr ""
 
+#: aleksis/core/templates/templated_email/invitation.email:4
+#, python-format
+msgid "Invitation to register on %(site)s"
+msgstr ""
+
+#: aleksis/core/templates/templated_email/invitation.email:6
+#: aleksis/core/templates/templated_email/invitation.email:14
+#, python-format
+msgid "Hello %(person)s"
+msgstr ""
+
+#: aleksis/core/templates/templated_email/invitation.email:9
+#: aleksis/core/templates/templated_email/invitation.email:18
+#, python-format
+msgid "you have been invited to register on %(site)s. If you would like to accept this invitation, please click on the following link:"
+msgstr ""
+
 #: aleksis/core/templates/templated_email/notification.email:4
 msgid "New notification for"
 msgstr ""
@@ -2925,154 +2921,167 @@ msgstr ""
 msgid "Download PDF"
 msgstr ""
 
-#: aleksis/core/views.py:280
+#: aleksis/core/views.py:285
 msgid "The school term has been created."
 msgstr ""
 
-#: aleksis/core/views.py:292
+#: aleksis/core/views.py:297
 msgid "The school term has been saved."
 msgstr ""
 
-#: aleksis/core/views.py:396
+#: aleksis/core/views.py:401
 msgid "The child groups were successfully saved."
 msgstr ""
 
-#: aleksis/core/views.py:415 aleksis/core/views.py:425
+#: aleksis/core/views.py:420 aleksis/core/views.py:430
 msgid "The person has been saved."
 msgstr ""
 
-#: aleksis/core/views.py:475
+#: aleksis/core/views.py:480
 msgid "The group has been saved."
 msgstr ""
 
-#: aleksis/core/views.py:558
+#: aleksis/core/views.py:528
+msgid "Maintenance mode was turned on successfully."
+msgstr ""
+
+#: aleksis/core/views.py:530
+msgid "Maintenance mode was turned off successfully."
+msgstr ""
+
+#: aleksis/core/views.py:588
 msgid "The announcement has been saved."
 msgstr ""
 
-#: aleksis/core/views.py:574
+#: aleksis/core/views.py:604
 msgid "The announcement has been deleted."
 msgstr ""
 
-#: aleksis/core/views.py:643
+#: aleksis/core/views.py:673
 msgid "The requested preference registry does not exist"
 msgstr ""
 
-#: aleksis/core/views.py:662
+#: aleksis/core/views.py:692
 msgid "The preferences have been saved successfully."
 msgstr ""
 
-#: aleksis/core/views.py:686
+#: aleksis/core/views.py:716
 msgid "The person has been deleted."
 msgstr ""
 
-#: aleksis/core/views.py:700
+#: aleksis/core/views.py:730
 msgid "The group has been deleted."
 msgstr ""
 
-#: aleksis/core/views.py:732
+#: aleksis/core/views.py:762
 msgid "The additional field has been saved."
 msgstr ""
 
-#: aleksis/core/views.py:767
+#: aleksis/core/views.py:797
 msgid "The additional field has been deleted."
 msgstr ""
 
-#: aleksis/core/views.py:792
+#: aleksis/core/views.py:822
 msgid "The group type has been saved."
 msgstr ""
 
-#: aleksis/core/views.py:823
+#: aleksis/core/views.py:853
 msgid "The group type has been deleted."
 msgstr ""
 
-#: aleksis/core/views.py:858
+#: aleksis/core/views.py:888
 msgid "Progress: Run data checks"
 msgstr ""
 
-#: aleksis/core/views.py:859
+#: aleksis/core/views.py:889
 msgid "Run data checks …"
 msgstr ""
 
-#: aleksis/core/views.py:860
+#: aleksis/core/views.py:890
 msgid "The data checks were run successfully."
 msgstr ""
 
-#: aleksis/core/views.py:861
+#: aleksis/core/views.py:891
 msgid "There was a problem while running data checks."
 msgstr ""
 
-#: aleksis/core/views.py:878
+#: aleksis/core/views.py:908
 #, python-brace-format
 msgid "The solve option '{solve_option_obj.verbose_name}' "
 msgstr ""
 
-#: aleksis/core/views.py:888
+#: aleksis/core/views.py:918
 msgid "The requested solve option does not exist"
 msgstr ""
 
-#: aleksis/core/views.py:921
+#: aleksis/core/views.py:951
 msgid "The dashboard widget has been saved."
 msgstr ""
 
-#: aleksis/core/views.py:951
+#: aleksis/core/views.py:981
 msgid "The dashboard widget has been created."
 msgstr ""
 
-#: aleksis/core/views.py:961
+#: aleksis/core/views.py:991
 msgid "The dashboard widget has been deleted."
 msgstr ""
 
-#: aleksis/core/views.py:1033
+#: aleksis/core/views.py:1063
 msgid "Your dashboard configuration has been saved successfully."
 msgstr ""
 
-#: aleksis/core/views.py:1035
+#: aleksis/core/views.py:1065
 msgid "The configuration of the default dashboard has been saved successfully."
 msgstr ""
 
-#: aleksis/core/views.py:1106
+#: aleksis/core/views.py:1136
 #, python-brace-format
 msgid "The invitation was successfully created. The invitation code is {code}"
 msgstr ""
 
-#: aleksis/core/views.py:1203
+#: aleksis/core/views.py:1233
 msgid "We have successfully assigned the permissions."
 msgstr ""
 
-#: aleksis/core/views.py:1213
+#: aleksis/core/views.py:1243
 msgid "The global user permission has been deleted."
 msgstr ""
 
-#: aleksis/core/views.py:1223
+#: aleksis/core/views.py:1253
 msgid "The global group permission has been deleted."
 msgstr ""
 
-#: aleksis/core/views.py:1233
+#: aleksis/core/views.py:1263
 msgid "The object user permission has been deleted."
 msgstr ""
 
-#: aleksis/core/views.py:1243
+#: aleksis/core/views.py:1273
 msgid "The object group permission has been deleted."
 msgstr ""
 
-#: aleksis/core/views.py:1352
+#: aleksis/core/views.py:1382
 msgid "The third-party account could not be disconnected because it is the only login method available."
 msgstr ""
 
-#: aleksis/core/views.py:1359
+#: aleksis/core/views.py:1389
 msgid "The third-party account has been successfully disconnected."
 msgstr ""
 
-#: aleksis/core/views.py:1435
+#: aleksis/core/views.py:1465
 msgid "Person was invited successfully and an email with further instructions has been send to them."
 msgstr ""
 
-#: aleksis/core/views.py:1446
+#: aleksis/core/views.py:1476
 #, fuzzy
 #| msgid "This username is already in use."
 msgid "Person was already invited."
 msgstr "Cet nom est deja en utilisation."
 
+#, fuzzy
+#~| msgid "Contact details"
+#~ msgid "No authorized applications."
+#~ msgstr "Détails de contact"
+
 #, fuzzy
 #~| msgid "Contact details"
 #~ msgid "Invite person"
diff --git a/aleksis/core/locale/la/LC_MESSAGES/django.po b/aleksis/core/locale/la/LC_MESSAGES/django.po
index eac7e9fda18c24a985b1eabe0c42196bad449502..1b6172ee3bd421884b89c300b56ff44c0edd5683 100644
--- a/aleksis/core/locale/la/LC_MESSAGES/django.po
+++ b/aleksis/core/locale/la/LC_MESSAGES/django.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2023-02-27 13:23+0100\n"
+"POT-Creation-Date: 2023-05-09 18:40+0200\n"
 "PO-Revision-Date: 2020-12-19 12:57+0000\n"
 "Last-Translator: Julian <leuckerj@gmail.com>\n"
 "Language-Team: Latin <https://translate.edugit.org/projects/aleksis/aleksis/la/>\n"
@@ -18,34 +18,38 @@ msgstr ""
 "Plural-Forms: nplurals=2; plural=n != 1;\n"
 "X-Generator: Weblate 4.3.2\n"
 
-#: aleksis/core/apps.py:155
+#: aleksis/core/apps.py:151
+msgid "You have been logged out successfully."
+msgstr ""
+
+#: aleksis/core/apps.py:161
 msgid "OpenID Connect scope"
 msgstr ""
 
-#: aleksis/core/apps.py:156
+#: aleksis/core/apps.py:162
 msgid "Given name, family name, link to profile and picture if existing."
 msgstr ""
 
-#: aleksis/core/apps.py:157
+#: aleksis/core/apps.py:163
 #, fuzzy
 #| msgid "E-mail address"
 msgid "Full home postal address"
 msgstr "Inscriptio electronica"
 
-#: aleksis/core/apps.py:158
+#: aleksis/core/apps.py:164
 #, fuzzy
 #| msgid "E-mail address"
 msgid "Email address"
 msgstr "Inscriptio electronica"
 
-#: aleksis/core/apps.py:159
+#: aleksis/core/apps.py:165
 #, fuzzy
 #| msgid "Mobile phone"
 msgid "Home and mobile phone"
 msgstr "Numerus telephoni mobilis"
 
-#: aleksis/core/apps.py:160 aleksis/core/forms.py:220
-#: aleksis/core/models.py:494 aleksis/core/templates/core/group/list.html:8
+#: aleksis/core/apps.py:166 aleksis/core/forms.py:221
+#: aleksis/core/models.py:495 aleksis/core/templates/core/group/list.html:8
 #: aleksis/core/templates/core/group/list.html:9
 msgid "Groups"
 msgstr "Greges"
@@ -108,188 +112,188 @@ msgstr ""
 msgid "Content type"
 msgstr ""
 
-#: aleksis/core/filters.py:113 aleksis/core/models.py:720
+#: aleksis/core/filters.py:113 aleksis/core/models.py:721
 msgid "User"
 msgstr ""
 
-#: aleksis/core/filters.py:135 aleksis/core/models.py:493
+#: aleksis/core/filters.py:135 aleksis/core/models.py:494
 msgid "Group"
 msgstr "Grex"
 
-#: aleksis/core/forms.py:50 aleksis/core/forms.py:581
+#: aleksis/core/forms.py:51 aleksis/core/forms.py:582
 msgid "Base data"
 msgstr ""
 
-#: aleksis/core/forms.py:55 aleksis/core/tables.py:47
+#: aleksis/core/forms.py:56 aleksis/core/tables.py:47
 #, fuzzy
 #| msgid "E-mail address"
 msgid "Address"
 msgstr "Inscriptio electronica"
 
-#: aleksis/core/forms.py:56 aleksis/core/forms.py:590
+#: aleksis/core/forms.py:57 aleksis/core/forms.py:591
 msgid "Contact data"
 msgstr ""
 
-#: aleksis/core/forms.py:58
+#: aleksis/core/forms.py:59
 msgid "Advanced personal data"
 msgstr ""
 
-#: aleksis/core/forms.py:106
+#: aleksis/core/forms.py:107
 msgid "New user"
 msgstr ""
 
-#: aleksis/core/forms.py:106
+#: aleksis/core/forms.py:107
 #, fuzzy
 #| msgid "Persons and accounts"
 msgid "Create a new account"
 msgstr "Personae et computi"
 
-#: aleksis/core/forms.py:132
+#: aleksis/core/forms.py:133
 msgid "You cannot set a new username when also selecting an existing user."
 msgstr ""
 
-#: aleksis/core/forms.py:136
+#: aleksis/core/forms.py:137
 msgid "This username is already in use."
 msgstr ""
 
-#: aleksis/core/forms.py:153 aleksis/core/models.py:141
+#: aleksis/core/forms.py:154 aleksis/core/models.py:142
 msgid "School term"
 msgstr "Anus scolae"
 
-#: aleksis/core/forms.py:154
+#: aleksis/core/forms.py:155
 #, fuzzy
 #| msgid "Data management"
 msgid "Common data"
 msgstr "Adminstratio datarum"
 
-#: aleksis/core/forms.py:155 aleksis/core/forms.py:207
-#: aleksis/core/models.py:164 aleksis/core/templates/core/person/list.html:8
+#: aleksis/core/forms.py:156 aleksis/core/forms.py:208
+#: aleksis/core/models.py:165 aleksis/core/templates/core/person/list.html:8
 #: aleksis/core/templates/core/person/list.html:9
 msgid "Persons"
 msgstr "personae"
 
-#: aleksis/core/forms.py:156 aleksis/core/forms.py:592
+#: aleksis/core/forms.py:157 aleksis/core/forms.py:593
 #, fuzzy
 #| msgid "Additional name(s)"
 msgid "Additional data"
 msgstr "addita nomines"
 
-#: aleksis/core/forms.py:157 aleksis/core/models.py:217
-#: aleksis/core/models.py:546 aleksis/core/tables.py:46
+#: aleksis/core/forms.py:158 aleksis/core/models.py:218
+#: aleksis/core/models.py:547 aleksis/core/tables.py:46
 msgid "Photo"
 msgstr "Photographia"
 
-#: aleksis/core/forms.py:199 aleksis/core/forms.py:202
-#: aleksis/core/models.py:84
+#: aleksis/core/forms.py:200 aleksis/core/forms.py:203
+#: aleksis/core/models.py:85
 msgid "Date"
 msgstr "dies"
 
-#: aleksis/core/forms.py:200 aleksis/core/forms.py:203
-#: aleksis/core/models.py:92
+#: aleksis/core/forms.py:201 aleksis/core/forms.py:204
+#: aleksis/core/models.py:93
 msgid "Time"
 msgstr "tempus"
 
-#: aleksis/core/forms.py:233
+#: aleksis/core/forms.py:234
 msgid "From when until when should the announcement be displayed?"
 msgstr ""
 
-#: aleksis/core/forms.py:236
+#: aleksis/core/forms.py:237
 msgid "Who should see the announcement?"
 msgstr "Quis nuntium videatne?"
 
-#: aleksis/core/forms.py:237
+#: aleksis/core/forms.py:238
 msgid "Write your announcement:"
 msgstr "Scribe nuntium:"
 
-#: aleksis/core/forms.py:276
+#: aleksis/core/forms.py:277
 msgid "You are not allowed to create announcements which are only valid in the past."
 msgstr ""
 
-#: aleksis/core/forms.py:280
+#: aleksis/core/forms.py:281
 msgid "The from date and time must be earlier then the until date and time."
 msgstr ""
 
-#: aleksis/core/forms.py:289
+#: aleksis/core/forms.py:290
 msgid "You need at least one recipient."
 msgstr ""
 
-#: aleksis/core/forms.py:398
+#: aleksis/core/forms.py:399
 msgid "Invitation code"
 msgstr ""
 
-#: aleksis/core/forms.py:399
+#: aleksis/core/forms.py:400
 msgid "Please enter your invitation code."
 msgstr ""
 
-#: aleksis/core/forms.py:418 aleksis/core/models.py:192
+#: aleksis/core/forms.py:419 aleksis/core/models.py:193
 msgid "First name"
 msgstr "Primus nomen"
 
-#: aleksis/core/forms.py:419 aleksis/core/models.py:193
+#: aleksis/core/forms.py:420 aleksis/core/models.py:194
 msgid "Last name"
 msgstr "Secondus nomen"
 
-#: aleksis/core/forms.py:428
+#: aleksis/core/forms.py:429
 #, fuzzy
 #| msgid "E-mail address"
 msgid "A person is using this e-mail address"
 msgstr "Inscriptio electronica"
 
-#: aleksis/core/forms.py:456
+#: aleksis/core/forms.py:457
 #, fuzzy
 #| msgid "Who should see the announcement?"
 msgid "Who should get the permission?"
 msgstr "Quis nuntium videatne?"
 
-#: aleksis/core/forms.py:457
+#: aleksis/core/forms.py:458
 msgid "On what?"
 msgstr ""
 
-#: aleksis/core/forms.py:483
+#: aleksis/core/forms.py:484
 msgid "Select objects which the permission should be granted for:"
 msgstr ""
 
-#: aleksis/core/forms.py:486
+#: aleksis/core/forms.py:487
 msgid "Grant the permission for all objects"
 msgstr ""
 
-#: aleksis/core/forms.py:494
+#: aleksis/core/forms.py:495
 msgid "You must select at least one group or person which should get the permission."
 msgstr ""
 
-#: aleksis/core/forms.py:499
+#: aleksis/core/forms.py:500
 msgid "You must grant the permission to all objects or to specific objects."
 msgstr ""
 
-#: aleksis/core/forms.py:586
+#: aleksis/core/forms.py:587
 #, fuzzy
 #| msgid "E-mail address"
 msgid "Address data"
 msgstr "Inscriptio electronica"
 
-#: aleksis/core/forms.py:598
+#: aleksis/core/forms.py:599
 #, fuzzy
 #| msgid "Data management"
 msgid "Account data"
 msgstr "Adminstratio datarum"
 
-#: aleksis/core/forms.py:605
+#: aleksis/core/forms.py:606
 msgid "Password"
 msgstr ""
 
-#: aleksis/core/forms.py:608
+#: aleksis/core/forms.py:609
 msgid "Password (again)"
 msgstr ""
 
-#: aleksis/core/forms.py:761
+#: aleksis/core/forms.py:762
 msgid "The selected action does not exist."
 msgstr ""
 
-#: aleksis/core/forms.py:772
+#: aleksis/core/forms.py:773
 msgid "You do not have permission to run {} on all selected objects."
 msgstr ""
 
-#: aleksis/core/forms.py:828
+#: aleksis/core/forms.py:829
 msgid "No valid selection."
 msgstr ""
 
@@ -321,266 +325,266 @@ msgstr ""
 msgid "Linked school term"
 msgstr "Muta anum scolae"
 
-#: aleksis/core/models.py:82
+#: aleksis/core/models.py:83
 msgid "Boolean (Yes/No)"
 msgstr ""
 
-#: aleksis/core/models.py:83
+#: aleksis/core/models.py:84
 msgid "Text (one line)"
 msgstr ""
 
-#: aleksis/core/models.py:85
+#: aleksis/core/models.py:86
 msgid "Date and time"
 msgstr "Dies et hora"
 
-#: aleksis/core/models.py:86
+#: aleksis/core/models.py:87
 msgid "Decimal number"
 msgstr ""
 
-#: aleksis/core/models.py:87 aleksis/core/models.py:210
+#: aleksis/core/models.py:88 aleksis/core/models.py:211
 msgid "E-mail address"
 msgstr "Inscriptio electronica"
 
-#: aleksis/core/models.py:88
+#: aleksis/core/models.py:89
 msgid "Integer"
 msgstr ""
 
-#: aleksis/core/models.py:89
+#: aleksis/core/models.py:90
 #, fuzzy
 #| msgid "E-mail address"
 msgid "IP address"
 msgstr "Inscriptio electronica"
 
-#: aleksis/core/models.py:90
+#: aleksis/core/models.py:91
 msgid "Boolean or empty (Yes/No/Neither)"
 msgstr ""
 
-#: aleksis/core/models.py:91
+#: aleksis/core/models.py:92
 msgid "Text (multi-line)"
 msgstr ""
 
-#: aleksis/core/models.py:93
+#: aleksis/core/models.py:94
 msgid "URL / Link"
 msgstr ""
 
-#: aleksis/core/models.py:105 aleksis/core/models.py:1077
+#: aleksis/core/models.py:106 aleksis/core/models.py:1078
 msgid "Name"
 msgstr "Nomen"
 
-#: aleksis/core/models.py:107
+#: aleksis/core/models.py:108
 msgid "Start date"
 msgstr ""
 
-#: aleksis/core/models.py:108
+#: aleksis/core/models.py:109
 msgid "End date"
 msgstr ""
 
-#: aleksis/core/models.py:127
+#: aleksis/core/models.py:128
 msgid "The start date must be earlier than the end date."
 msgstr ""
 
-#: aleksis/core/models.py:134
+#: aleksis/core/models.py:135
 msgid "There is already a school term for this time or a part of this time."
 msgstr ""
 
-#: aleksis/core/models.py:142
+#: aleksis/core/models.py:143
 #: aleksis/core/templates/core/school_term/list.html:8
 #: aleksis/core/templates/core/school_term/list.html:9
 msgid "School terms"
 msgstr "ani scolae"
 
-#: aleksis/core/models.py:163 aleksis/core/models.py:1026
+#: aleksis/core/models.py:164 aleksis/core/models.py:1027
 msgid "Person"
 msgstr "Persona"
 
-#: aleksis/core/models.py:166
+#: aleksis/core/models.py:167
 #, fuzzy
 #| msgid "E-mail address"
 msgid "Can view address"
 msgstr "Inscriptio electronica"
 
-#: aleksis/core/models.py:167
+#: aleksis/core/models.py:168
 #, fuzzy
 #| msgid "E-mail address"
 msgid "Can view contact details"
 msgstr "Inscriptio electronica"
 
-#: aleksis/core/models.py:168
+#: aleksis/core/models.py:169
 #, fuzzy
 #| msgid "E-mail address"
 msgid "Can view photo"
 msgstr "Inscriptio electronica"
 
-#: aleksis/core/models.py:169
+#: aleksis/core/models.py:170
 #, fuzzy
 #| msgid "E-mail address"
 msgid "Can view avatar image"
 msgstr "Inscriptio electronica"
 
-#: aleksis/core/models.py:170
+#: aleksis/core/models.py:171
 #, fuzzy
 #| msgid "Persons and accounts"
 msgid "Can view persons groups"
 msgstr "Personae et computi"
 
-#: aleksis/core/models.py:171
+#: aleksis/core/models.py:172
 #, fuzzy
 #| msgid "Stop impersonation"
 msgid "Can view personal details"
 msgstr "Simulandum aliquem finire"
 
-#: aleksis/core/models.py:181
+#: aleksis/core/models.py:182
 msgid "female"
 msgstr "femininum"
 
-#: aleksis/core/models.py:181
+#: aleksis/core/models.py:182
 msgid "male"
 msgstr "maskulinum"
 
-#: aleksis/core/models.py:181
+#: aleksis/core/models.py:182
 msgid "other"
 msgstr ""
 
-#: aleksis/core/models.py:189 aleksis/core/models.py:1353
+#: aleksis/core/models.py:190 aleksis/core/models.py:1382
 msgid "Linked user"
 msgstr ""
 
-#: aleksis/core/models.py:195
+#: aleksis/core/models.py:196
 msgid "Additional name(s)"
 msgstr "addita nomines"
 
-#: aleksis/core/models.py:199 aleksis/core/models.py:511
-#: aleksis/core/models.py:1439
+#: aleksis/core/models.py:200 aleksis/core/models.py:512
+#: aleksis/core/models.py:1468
 msgid "Short name"
 msgstr "Breve nomen"
 
-#: aleksis/core/models.py:202
+#: aleksis/core/models.py:203
 msgid "Street"
 msgstr "Via"
 
-#: aleksis/core/models.py:203
+#: aleksis/core/models.py:204
 msgid "Street number"
 msgstr "Numerus domini"
 
-#: aleksis/core/models.py:204
+#: aleksis/core/models.py:205
 msgid "Postal code"
 msgstr "Numerus directorius"
 
-#: aleksis/core/models.py:205
+#: aleksis/core/models.py:206
 msgid "Place"
 msgstr "Urbs"
 
-#: aleksis/core/models.py:207
+#: aleksis/core/models.py:208
 msgid "Home phone"
 msgstr "Numerus telephoni domi"
 
-#: aleksis/core/models.py:208
+#: aleksis/core/models.py:209
 msgid "Mobile phone"
 msgstr "Numerus telephoni mobilis"
 
-#: aleksis/core/models.py:212
+#: aleksis/core/models.py:213
 msgid "Date of birth"
 msgstr "Dies natalis"
 
-#: aleksis/core/models.py:213
+#: aleksis/core/models.py:214
 #, fuzzy
 #| msgid "Date of birth"
 msgid "Place of birth"
 msgstr "Dies natalis"
 
-#: aleksis/core/models.py:214
+#: aleksis/core/models.py:215
 msgid "Sex"
 msgstr "Genus"
 
-#: aleksis/core/models.py:221 aleksis/core/models.py:550
+#: aleksis/core/models.py:222 aleksis/core/models.py:551
 msgid "This is an official photo, used for official documents and for internal use cases."
 msgstr ""
 
-#: aleksis/core/models.py:226 aleksis/core/models.py:554
+#: aleksis/core/models.py:227 aleksis/core/models.py:555
 msgid "Display picture / Avatar"
 msgstr ""
 
-#: aleksis/core/models.py:229 aleksis/core/models.py:557
+#: aleksis/core/models.py:230 aleksis/core/models.py:558
 msgid "This is a picture or an avatar for public display."
 msgstr ""
 
-#: aleksis/core/models.py:234
+#: aleksis/core/models.py:235
 msgid "Guardians / Parents"
 msgstr "Parentes"
 
-#: aleksis/core/models.py:241
+#: aleksis/core/models.py:242
 msgid "Primary group"
 msgstr ""
 
-#: aleksis/core/models.py:244 aleksis/core/models.py:724
-#: aleksis/core/models.py:748 aleksis/core/models.py:843
-#: aleksis/core/models.py:1112
+#: aleksis/core/models.py:245 aleksis/core/models.py:725
+#: aleksis/core/models.py:749 aleksis/core/models.py:844
+#: aleksis/core/models.py:1113
 msgid "Description"
 msgstr "Descriptio"
 
-#: aleksis/core/models.py:464
+#: aleksis/core/models.py:465
 msgid "Title of field"
 msgstr ""
 
-#: aleksis/core/models.py:466
+#: aleksis/core/models.py:467
 msgid "Type of field"
 msgstr ""
 
-#: aleksis/core/models.py:468
+#: aleksis/core/models.py:469
 msgid "Required"
 msgstr ""
 
-#: aleksis/core/models.py:469
+#: aleksis/core/models.py:470
 #, fuzzy
 #| msgid "Site description"
 msgid "Help text / description"
 msgstr "Descriptio paginae"
 
-#: aleksis/core/models.py:475
+#: aleksis/core/models.py:476
 #, fuzzy
 #| msgid "Additional name(s)"
 msgid "Addtitional field for groups"
 msgstr "addita nomines"
 
-#: aleksis/core/models.py:476
+#: aleksis/core/models.py:477
 #, fuzzy
 #| msgid "Additional name(s)"
 msgid "Addtitional fields for groups"
 msgstr "addita nomines"
 
-#: aleksis/core/models.py:496
+#: aleksis/core/models.py:497
 msgid "Can assign child groups to groups"
 msgstr ""
 
-#: aleksis/core/models.py:497
+#: aleksis/core/models.py:498
 #, fuzzy
 #| msgid "Persons and accounts"
 msgid "Can view statistics about group."
 msgstr "Personae et computi"
 
-#: aleksis/core/models.py:509 aleksis/core/models.py:1440
+#: aleksis/core/models.py:510 aleksis/core/models.py:1469
 #, fuzzy
 #| msgid "Last name"
 msgid "Long name"
 msgstr "Secondus nomen"
 
-#: aleksis/core/models.py:519 aleksis/core/templates/core/group/full.html:105
+#: aleksis/core/models.py:520 aleksis/core/templates/core/group/full.html:105
 msgid "Members"
 msgstr ""
 
-#: aleksis/core/models.py:522 aleksis/core/templates/core/group/full.html:102
+#: aleksis/core/models.py:523 aleksis/core/templates/core/group/full.html:102
 msgid "Owners"
 msgstr ""
 
-#: aleksis/core/models.py:529 aleksis/core/templates/core/group/full.html:59
+#: aleksis/core/models.py:530 aleksis/core/templates/core/group/full.html:59
 msgid "Parent groups"
 msgstr ""
 
-#: aleksis/core/models.py:537
+#: aleksis/core/models.py:538
 msgid "Type of group"
 msgstr ""
 
-#: aleksis/core/models.py:542
+#: aleksis/core/models.py:543
 #: aleksis/core/templates/core/additional_field/list.html:8
 #: aleksis/core/templates/core/additional_field/list.html:9
 #, fuzzy
@@ -588,259 +592,259 @@ msgstr ""
 msgid "Additional fields"
 msgstr "addita nomines"
 
-#: aleksis/core/models.py:723 aleksis/core/models.py:747
-#: aleksis/core/models.py:842 aleksis/core/models.py:1270
+#: aleksis/core/models.py:724 aleksis/core/models.py:748
+#: aleksis/core/models.py:843 aleksis/core/models.py:1299
 #: aleksis/core/templates/core/announcement/list.html:18
 msgid "Title"
 msgstr "Titulus"
 
-#: aleksis/core/models.py:726
+#: aleksis/core/models.py:727
 msgid "Application"
 msgstr ""
 
-#: aleksis/core/models.py:732
+#: aleksis/core/models.py:733
 msgid "Activity"
 msgstr ""
 
-#: aleksis/core/models.py:733
+#: aleksis/core/models.py:734
 msgid "Activities"
 msgstr ""
 
-#: aleksis/core/models.py:739
+#: aleksis/core/models.py:740
 msgid "Sender"
 msgstr "Mittens"
 
-#: aleksis/core/models.py:744
+#: aleksis/core/models.py:745
 msgid "Recipient"
 msgstr ""
 
-#: aleksis/core/models.py:749 aleksis/core/models.py:1078
+#: aleksis/core/models.py:750 aleksis/core/models.py:1079
 msgid "Link"
 msgstr ""
 
-#: aleksis/core/models.py:752 aleksis/core/models.py:1079
-#: aleksis/core/models.py:1400
+#: aleksis/core/models.py:753 aleksis/core/models.py:1080
+#: aleksis/core/models.py:1429
 #: aleksis/core/templates/oauth2_provider/application/detail.html:26
 msgid "Icon"
 msgstr "Nota"
 
-#: aleksis/core/models.py:755
+#: aleksis/core/models.py:756
 #, fuzzy
 #| msgid "Notification"
 msgid "Send notification at"
 msgstr "Nuntius"
 
-#: aleksis/core/models.py:757
+#: aleksis/core/models.py:758
 msgid "Read"
 msgstr ""
 
-#: aleksis/core/models.py:758
+#: aleksis/core/models.py:759
 msgid "Sent"
 msgstr ""
 
-#: aleksis/core/models.py:775
+#: aleksis/core/models.py:776
 #, fuzzy
 #| msgid "Notifications"
 msgid "Notification"
 msgstr "Nuntii"
 
-#: aleksis/core/models.py:776 aleksis/core/preferences.py:29
+#: aleksis/core/models.py:777 aleksis/core/preferences.py:29
 msgid "Notifications"
 msgstr "Nuntii"
 
-#: aleksis/core/models.py:844
+#: aleksis/core/models.py:845
 msgid "Link to detailed view"
 msgstr ""
 
-#: aleksis/core/models.py:847
+#: aleksis/core/models.py:848
 msgid "Date and time from when to show"
 msgstr ""
 
-#: aleksis/core/models.py:850
+#: aleksis/core/models.py:851
 msgid "Date and time until when to show"
 msgstr ""
 
-#: aleksis/core/models.py:875
+#: aleksis/core/models.py:876
 #, fuzzy
 #| msgid "Announcements"
 msgid "Announcement"
 msgstr "Nuntii"
 
-#: aleksis/core/models.py:876
+#: aleksis/core/models.py:877
 #: aleksis/core/templates/core/announcement/list.html:7
 #: aleksis/core/templates/core/announcement/list.html:8
 msgid "Announcements"
 msgstr "Nuntii"
 
-#: aleksis/core/models.py:913
+#: aleksis/core/models.py:914
 #, fuzzy
 #| msgid "Announcements"
 msgid "Announcement recipient"
 msgstr "Nuntii"
 
-#: aleksis/core/models.py:914
+#: aleksis/core/models.py:915
 #, fuzzy
 #| msgid "Announcements"
 msgid "Announcement recipients"
 msgstr "Nuntii"
 
-#: aleksis/core/models.py:934
+#: aleksis/core/models.py:935
 #, fuzzy
 #| msgid "Site title"
 msgid "Widget Title"
 msgstr "Titulus paginae"
 
-#: aleksis/core/models.py:935
+#: aleksis/core/models.py:936
 msgid "Activate Widget"
 msgstr ""
 
-#: aleksis/core/models.py:936
+#: aleksis/core/models.py:937
 #, fuzzy
 #| msgid "Site title"
 msgid "Widget is broken"
 msgstr "Titulus paginae"
 
-#: aleksis/core/models.py:939
+#: aleksis/core/models.py:940
 msgid "Size on mobile devices"
 msgstr ""
 
-#: aleksis/core/models.py:940
+#: aleksis/core/models.py:941
 msgid "<= 600 px, 12 columns"
 msgstr ""
 
-#: aleksis/core/models.py:945
+#: aleksis/core/models.py:946
 msgid "Size on tablet devices"
 msgstr ""
 
-#: aleksis/core/models.py:946
+#: aleksis/core/models.py:947
 msgid "> 600 px, 12 columns"
 msgstr ""
 
-#: aleksis/core/models.py:951
+#: aleksis/core/models.py:952
 msgid "Size on desktop devices"
 msgstr ""
 
-#: aleksis/core/models.py:952
+#: aleksis/core/models.py:953
 msgid "> 992 px, 12 columns"
 msgstr ""
 
-#: aleksis/core/models.py:957
+#: aleksis/core/models.py:958
 msgid "Size on large desktop devices"
 msgstr ""
 
-#: aleksis/core/models.py:958
+#: aleksis/core/models.py:959
 msgid "> 1200 px>, 12 columns"
 msgstr ""
 
-#: aleksis/core/models.py:989
+#: aleksis/core/models.py:990
 #, fuzzy
 #| msgid "Dashboard"
 msgid "Can edit default dashboard"
 msgstr "Forum"
 
-#: aleksis/core/models.py:990
+#: aleksis/core/models.py:991
 #, fuzzy
 #| msgid "Dashboard"
 msgid "Dashboard Widget"
 msgstr "Forum"
 
-#: aleksis/core/models.py:991
+#: aleksis/core/models.py:992
 #, fuzzy
 #| msgid "Dashboard"
 msgid "Dashboard Widgets"
 msgstr "Forum"
 
-#: aleksis/core/models.py:997
+#: aleksis/core/models.py:998
 msgid "URL"
 msgstr ""
 
-#: aleksis/core/models.py:998
+#: aleksis/core/models.py:999
 #, fuzzy
 #| msgid "Icon"
 msgid "Icon URL"
 msgstr "Nota"
 
-#: aleksis/core/models.py:1004
+#: aleksis/core/models.py:1005
 msgid "External link widget"
 msgstr ""
 
-#: aleksis/core/models.py:1005
+#: aleksis/core/models.py:1006
 msgid "External link widgets"
 msgstr ""
 
-#: aleksis/core/models.py:1011
+#: aleksis/core/models.py:1012
 msgid "Content"
 msgstr ""
 
-#: aleksis/core/models.py:1017
+#: aleksis/core/models.py:1018
 msgid "Static content widget"
 msgstr ""
 
-#: aleksis/core/models.py:1018
+#: aleksis/core/models.py:1019
 msgid "Static content widgets"
 msgstr ""
 
-#: aleksis/core/models.py:1023
+#: aleksis/core/models.py:1024
 #, fuzzy
 #| msgid "Dashboard"
 msgid "Dashboard widget"
 msgstr "Forum"
 
-#: aleksis/core/models.py:1028
+#: aleksis/core/models.py:1029
 msgid "Order"
 msgstr ""
 
-#: aleksis/core/models.py:1029
+#: aleksis/core/models.py:1030
 msgid "Part of the default dashboard"
 msgstr ""
 
-#: aleksis/core/models.py:1044
+#: aleksis/core/models.py:1045
 #, fuzzy
 #| msgid "Dashboard"
 msgid "Dashboard widget order"
 msgstr "Forum"
 
-#: aleksis/core/models.py:1045
+#: aleksis/core/models.py:1046
 #, fuzzy
 #| msgid "Dashboard"
 msgid "Dashboard widget orders"
 msgstr "Forum"
 
-#: aleksis/core/models.py:1051
+#: aleksis/core/models.py:1052
 msgid "Menu ID"
 msgstr ""
 
-#: aleksis/core/models.py:1064
+#: aleksis/core/models.py:1065
 msgid "Custom menu"
 msgstr ""
 
-#: aleksis/core/models.py:1065
+#: aleksis/core/models.py:1066
 msgid "Custom menus"
 msgstr ""
 
-#: aleksis/core/models.py:1075
+#: aleksis/core/models.py:1076
 msgid "Menu"
 msgstr ""
 
-#: aleksis/core/models.py:1085
+#: aleksis/core/models.py:1086
 msgid "Custom menu item"
 msgstr ""
 
-#: aleksis/core/models.py:1086
+#: aleksis/core/models.py:1087
 msgid "Custom menu items"
 msgstr ""
 
-#: aleksis/core/models.py:1111
+#: aleksis/core/models.py:1112
 msgid "Title of type"
 msgstr ""
 
-#: aleksis/core/models.py:1118 aleksis/core/templates/core/group/full.html:50
+#: aleksis/core/models.py:1119 aleksis/core/templates/core/group/full.html:50
 #, fuzzy
 #| msgid "Group"
 msgid "Group type"
 msgstr "Grex"
 
-#: aleksis/core/models.py:1119
+#: aleksis/core/models.py:1120
 #: aleksis/core/templates/core/group_type/list.html:8
 #: aleksis/core/templates/core/group_type/list.html:9
 #, fuzzy
@@ -848,215 +852,215 @@ msgstr "Grex"
 msgid "Group types"
 msgstr "Greges"
 
-#: aleksis/core/models.py:1132
+#: aleksis/core/models.py:1133
 #, fuzzy
 #| msgid "System status"
 msgid "Can view system status"
 msgstr "Status systemae"
 
-#: aleksis/core/models.py:1133
+#: aleksis/core/models.py:1134
 #, fuzzy
 #| msgid "Data management"
 msgid "Can manage data"
 msgstr "Adminstratio datarum"
 
-#: aleksis/core/models.py:1134
+#: aleksis/core/models.py:1135
 #, fuzzy
 #| msgid "Stop impersonation"
 msgid "Can impersonate"
 msgstr "Simulandum aliquem finire"
 
-#: aleksis/core/models.py:1135
+#: aleksis/core/models.py:1136
 msgid "Can use search"
 msgstr ""
 
-#: aleksis/core/models.py:1136
+#: aleksis/core/models.py:1137
 msgid "Can change site preferences"
 msgstr ""
 
-#: aleksis/core/models.py:1137
+#: aleksis/core/models.py:1138
 msgid "Can change person preferences"
 msgstr ""
 
-#: aleksis/core/models.py:1138
+#: aleksis/core/models.py:1139
 msgid "Can change group preferences"
 msgstr ""
 
-#: aleksis/core/models.py:1139
+#: aleksis/core/models.py:1140
 msgid "Can test PDF generation"
 msgstr ""
 
-#: aleksis/core/models.py:1140
+#: aleksis/core/models.py:1141
 #, fuzzy
 #| msgid "Stop impersonation"
 msgid "Can invite persons"
 msgstr "Simulandum aliquem finire"
 
-#: aleksis/core/models.py:1176
+#: aleksis/core/models.py:1177
 msgid "Related data check task"
 msgstr ""
 
-#: aleksis/core/models.py:1184
+#: aleksis/core/models.py:1185
 msgid "Issue solved"
 msgstr ""
 
-#: aleksis/core/models.py:1185
+#: aleksis/core/models.py:1186
 #, fuzzy
 #| msgid "Notifications"
 msgid "Notification sent"
 msgstr "Nuntii"
 
-#: aleksis/core/models.py:1198
+#: aleksis/core/models.py:1199
 msgid "Data check result"
 msgstr ""
 
-#: aleksis/core/models.py:1199
+#: aleksis/core/models.py:1200
 msgid "Data check results"
 msgstr ""
 
-#: aleksis/core/models.py:1201
+#: aleksis/core/models.py:1202
 msgid "Can run data checks"
 msgstr ""
 
-#: aleksis/core/models.py:1202
+#: aleksis/core/models.py:1203
 msgid "Can solve data check problems"
 msgstr ""
 
-#: aleksis/core/models.py:1209
+#: aleksis/core/models.py:1210
 #, fuzzy
 #| msgid "E-mail address"
 msgid "E-Mail address"
 msgstr "Inscriptio electronica"
 
-#: aleksis/core/models.py:1241
+#: aleksis/core/models.py:1270
 msgid "Owner"
 msgstr ""
 
-#: aleksis/core/models.py:1245
+#: aleksis/core/models.py:1274
 msgid "File expires at"
 msgstr ""
 
-#: aleksis/core/models.py:1248
+#: aleksis/core/models.py:1277
 msgid "Generated HTML file"
 msgstr ""
 
-#: aleksis/core/models.py:1251
+#: aleksis/core/models.py:1280
 msgid "Generated PDF file"
 msgstr ""
 
-#: aleksis/core/models.py:1258
+#: aleksis/core/models.py:1287
 msgid "PDF file"
 msgstr ""
 
-#: aleksis/core/models.py:1259
+#: aleksis/core/models.py:1288
 msgid "PDF files"
 msgstr ""
 
-#: aleksis/core/models.py:1264
+#: aleksis/core/models.py:1293
 msgid "Task result"
 msgstr ""
 
-#: aleksis/core/models.py:1267
+#: aleksis/core/models.py:1296
 msgid "Task user"
 msgstr ""
 
-#: aleksis/core/models.py:1271
+#: aleksis/core/models.py:1300
 #, fuzzy
 #| msgid "Icon"
 msgid "Back URL"
 msgstr "Nota"
 
-#: aleksis/core/models.py:1272
+#: aleksis/core/models.py:1301
 msgid "Progress title"
 msgstr ""
 
-#: aleksis/core/models.py:1273
+#: aleksis/core/models.py:1302
 msgid "Error message"
 msgstr ""
 
-#: aleksis/core/models.py:1274
+#: aleksis/core/models.py:1303
 msgid "Success message"
 msgstr ""
 
-#: aleksis/core/models.py:1275
+#: aleksis/core/models.py:1304
 msgid "Redirect on success URL"
 msgstr ""
 
-#: aleksis/core/models.py:1277
+#: aleksis/core/models.py:1306
 #, fuzzy
 #| msgid "Additional name(s)"
 msgid "Additional button title"
 msgstr "addita nomines"
 
-#: aleksis/core/models.py:1279
+#: aleksis/core/models.py:1308
 #, fuzzy
 #| msgid "Additional name(s)"
 msgid "Additional button URL"
 msgstr "addita nomines"
 
-#: aleksis/core/models.py:1281
+#: aleksis/core/models.py:1310
 #, fuzzy
 #| msgid "Additional name(s)"
 msgid "Additional button icon"
 msgstr "addita nomines"
 
-#: aleksis/core/models.py:1283
+#: aleksis/core/models.py:1312
 msgid "Result fetched"
 msgstr ""
 
-#: aleksis/core/models.py:1308
+#: aleksis/core/models.py:1337
 msgid "Background task completed successfully"
 msgstr ""
 
-#: aleksis/core/models.py:1309
+#: aleksis/core/models.py:1338
 msgid "The background task '{}' has been completed successfully."
 msgstr ""
 
-#: aleksis/core/models.py:1315
+#: aleksis/core/models.py:1344
 msgid "Background task failed"
 msgstr ""
 
-#: aleksis/core/models.py:1316
+#: aleksis/core/models.py:1345
 msgid "The background task '{}' has failed."
 msgstr ""
 
-#: aleksis/core/models.py:1325
+#: aleksis/core/models.py:1354
 msgid "Background task"
 msgstr ""
 
-#: aleksis/core/models.py:1339
+#: aleksis/core/models.py:1368
 msgid "Task user assignment"
 msgstr ""
 
-#: aleksis/core/models.py:1340
+#: aleksis/core/models.py:1369
 msgid "Task user assignments"
 msgstr ""
 
-#: aleksis/core/models.py:1356
+#: aleksis/core/models.py:1385
 #, fuzzy
 #| msgid "Additional name(s)"
 msgid "Additional attributes"
 msgstr "addita nomines"
 
-#: aleksis/core/models.py:1394
+#: aleksis/core/models.py:1423
 msgid "Allowed scopes that clients can request"
 msgstr ""
 
-#: aleksis/core/models.py:1404
+#: aleksis/core/models.py:1433
 msgid "This image will be shown as icon in the authorization flow. It should be squared."
 msgstr ""
 
-#: aleksis/core/models.py:1449
+#: aleksis/core/models.py:1478
 #, fuzzy
 #| msgid "E-mail address"
 msgid "Can view room timetable"
 msgstr "Inscriptio electronica"
 
-#: aleksis/core/models.py:1451
+#: aleksis/core/models.py:1480
 msgid "Room"
 msgstr ""
 
-#: aleksis/core/models.py:1452
+#: aleksis/core/models.py:1481
 msgid "Rooms"
 msgstr ""
 
@@ -1286,15 +1290,15 @@ msgstr ""
 msgid "Country for phone number parsing"
 msgstr ""
 
-#: aleksis/core/settings.py:549
+#: aleksis/core/settings.py:551
 msgid "English"
 msgstr "Britannicus"
 
-#: aleksis/core/settings.py:550
+#: aleksis/core/settings.py:552
 msgid "German"
 msgstr "Germanus"
 
-#: aleksis/core/settings.py:551
+#: aleksis/core/settings.py:553
 msgid "Ukrainian"
 msgstr ""
 
@@ -1306,7 +1310,7 @@ msgid "Edit"
 msgstr ""
 
 #: aleksis/core/tables.py:27 aleksis/core/tables.py:148
-#: aleksis/core/tables.py:192
+#: aleksis/core/tables.py:185
 #: aleksis/core/templates/core/announcement/list.html:22
 #, fuzzy
 #| msgid "Notifications"
@@ -1315,7 +1319,7 @@ msgstr "Nuntii"
 
 #: aleksis/core/tables.py:115 aleksis/core/tables.py:116
 #: aleksis/core/tables.py:130 aleksis/core/tables.py:146
-#: aleksis/core/tables.py:190
+#: aleksis/core/tables.py:183
 #: aleksis/core/templates/core/announcement/list.html:42
 #: aleksis/core/templates/core/group/full.html:33
 #: aleksis/core/templates/core/pages/delete.html:22
@@ -1364,7 +1368,7 @@ msgid ""
 "          "
 msgstr ""
 
-#: aleksis/core/templates/500.html:21
+#: aleksis/core/templates/500.html:21 aleksis/core/templates/offline.html:22
 msgid "Retry"
 msgstr ""
 
@@ -1704,66 +1708,66 @@ msgstr "Simulandum aliquem finire"
 msgid "Edit default dashboard"
 msgstr "Forum"
 
-#: aleksis/core/templates/core/data_check/list.html:9
 #: aleksis/core/templates/core/data_check/list.html:10
+#: aleksis/core/templates/core/data_check/list.html:11
 #, fuzzy
 #| msgid "System status"
 msgid "Data checks"
 msgstr "Status systemae"
 
-#: aleksis/core/templates/core/data_check/list.html:15
+#: aleksis/core/templates/core/data_check/list.html:16
 msgid "Check data again"
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:22
+#: aleksis/core/templates/core/data_check/list.html:23
 msgid "The system detected some problems with your data."
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:23
+#: aleksis/core/templates/core/data_check/list.html:24
 msgid ""
 "Please go through all data and check whether some extra action is\n"
 "          needed."
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:31
+#: aleksis/core/templates/core/data_check/list.html:32
 msgid "Everything is fine."
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:32
+#: aleksis/core/templates/core/data_check/list.html:33
 msgid "The system hasn't detected any problems with your data."
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:40
+#: aleksis/core/templates/core/data_check/list.html:41
 msgid "Detected problems"
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:45
+#: aleksis/core/templates/core/data_check/list.html:46
 msgid "Affected object"
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:46
+#: aleksis/core/templates/core/data_check/list.html:47
 msgid "Detected problem"
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:47
+#: aleksis/core/templates/core/data_check/list.html:48
 msgid "Show details"
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:48
+#: aleksis/core/templates/core/data_check/list.html:49
 msgid "Options to solve the problem"
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:63
+#: aleksis/core/templates/core/data_check/list.html:65
 msgid "Show object"
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:86
+#: aleksis/core/templates/core/data_check/list.html:89
 #, fuzzy
 #| msgid "System status"
 msgid "Registered checks"
 msgstr "Status systemae"
 
-#: aleksis/core/templates/core/data_check/list.html:90
+#: aleksis/core/templates/core/data_check/list.html:93
 msgid ""
 "\n"
 "            The system will check for the following problems:\n"
@@ -1999,87 +2003,87 @@ msgstr "Status systemae"
 msgid "System checks"
 msgstr "Status systemae"
 
-#: aleksis/core/templates/core/pages/system_status.html:22
+#: aleksis/core/templates/core/pages/system_status.html:26
 msgid "Maintenance mode enabled"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:24
+#: aleksis/core/templates/core/pages/system_status.html:28
 msgid ""
 "\n"
-"                Only admin and visitors from internal IPs can access the site.\n"
-"              "
+"                  Only admin and visitors from internal IPs can access the site.\n"
+"                "
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:36
+#: aleksis/core/templates/core/pages/system_status.html:39
 msgid "Maintenance mode disabled"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:37
+#: aleksis/core/templates/core/pages/system_status.html:40
 msgid "Everyone can access the site."
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:47
+#: aleksis/core/templates/core/pages/system_status.html:51
 msgid "Debug mode enabled"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:49
+#: aleksis/core/templates/core/pages/system_status.html:53
 msgid ""
 "\n"
 "                The web server throws back debug information on errors. Do not use in production!\n"
 "              "
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:56
+#: aleksis/core/templates/core/pages/system_status.html:60
 msgid "Debug mode disabled"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:58
+#: aleksis/core/templates/core/pages/system_status.html:62
 msgid ""
 "\n"
 "                Debug mode is disabled. Default error pages are displayed on errors.\n"
 "              "
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:71
+#: aleksis/core/templates/core/pages/system_status.html:75
 #, fuzzy
 #| msgid "System status"
 msgid "System health checks"
 msgstr "Status systemae"
 
-#: aleksis/core/templates/core/pages/system_status.html:77
+#: aleksis/core/templates/core/pages/system_status.html:81
 msgid "Service"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:78
-#: aleksis/core/templates/core/pages/system_status.html:119
+#: aleksis/core/templates/core/pages/system_status.html:82
+#: aleksis/core/templates/core/pages/system_status.html:123
 #, fuzzy
 #| msgid "System status"
 msgid "Status"
 msgstr "Status systemae"
 
-#: aleksis/core/templates/core/pages/system_status.html:79
+#: aleksis/core/templates/core/pages/system_status.html:83
 msgid "Time taken"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:100
+#: aleksis/core/templates/core/pages/system_status.html:104
 msgid "seconds"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:111
+#: aleksis/core/templates/core/pages/system_status.html:115
 msgid "Celery task results"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:116
+#: aleksis/core/templates/core/pages/system_status.html:120
 #: aleksis/core/templates/templated_email/celery_failure.email:9
 #: aleksis/core/templates/templated_email/celery_failure.email:28
 msgid "Task"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:117
+#: aleksis/core/templates/core/pages/system_status.html:121
 msgid "ID"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:118
+#: aleksis/core/templates/core/pages/system_status.html:122
 #, fuzzy
 #| msgid "Date"
 msgid "Date done"
@@ -2317,11 +2321,11 @@ msgstr "Inscriptio electronica"
 msgid "Generate invitation code"
 msgstr ""
 
-#: aleksis/core/templates/invitations/forms/_invite.html:29
+#: aleksis/core/templates/invitations/forms/_invite.html:30
 msgid "Generate code"
 msgstr ""
 
-#: aleksis/core/templates/invitations/forms/_invite.html:33
+#: aleksis/core/templates/invitations/forms/_invite.html:34
 msgid "Invitations"
 msgstr ""
 
@@ -2339,7 +2343,6 @@ msgstr "Nuntii"
 
 #: aleksis/core/templates/oauth2_provider/application/create.html:14
 #: aleksis/core/templates/oauth2_provider/application/edit.html:14
-#: aleksis/core/templates/oauth2_provider/authorized-token-delete.html:24
 #: aleksis/core/templates/two_factor/_wizard_actions.html:6
 msgid "Cancel"
 msgstr ""
@@ -2424,47 +2427,19 @@ msgstr ""
 msgid "Disallow"
 msgstr ""
 
-#: aleksis/core/templates/oauth2_provider/authorized-token-delete.html:5
-#: aleksis/core/templates/oauth2_provider/authorized-token-delete.html:6
-#: aleksis/core/templates/oauth2_provider/authorized-tokens.html:23
-msgid "Revoke access"
-msgstr ""
-
-#: aleksis/core/templates/oauth2_provider/authorized-token-delete.html:12
-msgid "Are you sure to revoke the access for this application?"
-msgstr ""
-
-#: aleksis/core/templates/oauth2_provider/authorized-token-delete.html:20
-msgid "Revoke"
-msgstr ""
-
-#: aleksis/core/templates/oauth2_provider/authorized-tokens.html:5
-#: aleksis/core/templates/oauth2_provider/authorized-tokens.html:6
-#, fuzzy
-#| msgid "Notifications"
-msgid "Authorized applications"
-msgstr "Nuntii"
-
-#: aleksis/core/templates/oauth2_provider/authorized-tokens.html:33
-#, fuzzy
-#| msgid "Notifications"
-msgid "No authorized applications."
-msgstr "Nuntii"
-
 #: aleksis/core/templates/offline.html:5
 msgid "Network error"
 msgstr ""
 
 #: aleksis/core/templates/offline.html:10
-msgid "Page not available offline."
+msgid "No connection to server."
 msgstr ""
 
 #: aleksis/core/templates/offline.html:14
 msgid ""
 "\n"
-"      This page is not available offline. Since you probably don't have an internet connection, check to see if your WiFi\n"
-"      or mobile data is turned on and try again. If you think you are connected, please contact the system\n"
-"      administrators:\n"
+"      This page is not available without a connection to the server. Please check your internet connection and try again.\n"
+"      If you are connected and the error persists, please contact the system administrators:\n"
 "    "
 msgstr ""
 
@@ -2584,6 +2559,8 @@ msgstr ""
 
 #: aleksis/core/templates/templated_email/base.email:5
 #: aleksis/core/templates/templated_email/base.email:16
+#: aleksis/core/templates/templated_email/invitation.email:6
+#: aleksis/core/templates/templated_email/invitation.email:14
 msgid "Hello"
 msgstr ""
 
@@ -2657,6 +2634,23 @@ msgstr "Descriptio paginae"
 msgid "Count of objects with new problems"
 msgstr ""
 
+#: aleksis/core/templates/templated_email/invitation.email:4
+#, python-format
+msgid "Invitation to register on %(site)s"
+msgstr ""
+
+#: aleksis/core/templates/templated_email/invitation.email:6
+#: aleksis/core/templates/templated_email/invitation.email:14
+#, python-format
+msgid "Hello %(person)s"
+msgstr ""
+
+#: aleksis/core/templates/templated_email/invitation.email:9
+#: aleksis/core/templates/templated_email/invitation.email:18
+#, python-format
+msgid "you have been invited to register on %(site)s. If you would like to accept this invitation, please click on the following link:"
+msgstr ""
+
 #: aleksis/core/templates/templated_email/notification.email:4
 #, fuzzy
 #| msgid "Notification"
@@ -3044,156 +3038,174 @@ msgstr ""
 msgid "Download PDF"
 msgstr ""
 
-#: aleksis/core/views.py:280
+#: aleksis/core/views.py:285
 msgid "The school term has been created."
 msgstr ""
 
-#: aleksis/core/views.py:292
+#: aleksis/core/views.py:297
 msgid "The school term has been saved."
 msgstr ""
 
-#: aleksis/core/views.py:396
+#: aleksis/core/views.py:401
 msgid "The child groups were successfully saved."
 msgstr ""
 
-#: aleksis/core/views.py:415 aleksis/core/views.py:425
+#: aleksis/core/views.py:420 aleksis/core/views.py:430
 msgid "The person has been saved."
 msgstr ""
 
-#: aleksis/core/views.py:475
+#: aleksis/core/views.py:480
 msgid "The group has been saved."
 msgstr ""
 
-#: aleksis/core/views.py:558
+#: aleksis/core/views.py:528
+msgid "Maintenance mode was turned on successfully."
+msgstr ""
+
+#: aleksis/core/views.py:530
+msgid "Maintenance mode was turned off successfully."
+msgstr ""
+
+#: aleksis/core/views.py:588
 msgid "The announcement has been saved."
 msgstr ""
 
-#: aleksis/core/views.py:574
+#: aleksis/core/views.py:604
 msgid "The announcement has been deleted."
 msgstr ""
 
-#: aleksis/core/views.py:643
+#: aleksis/core/views.py:673
 msgid "The requested preference registry does not exist"
 msgstr ""
 
-#: aleksis/core/views.py:662
+#: aleksis/core/views.py:692
 msgid "The preferences have been saved successfully."
 msgstr ""
 
-#: aleksis/core/views.py:686
+#: aleksis/core/views.py:716
 msgid "The person has been deleted."
 msgstr ""
 
-#: aleksis/core/views.py:700
+#: aleksis/core/views.py:730
 msgid "The group has been deleted."
 msgstr ""
 
-#: aleksis/core/views.py:732
+#: aleksis/core/views.py:762
 #, fuzzy
 #| msgid "Additional name(s)"
 msgid "The additional field has been saved."
 msgstr "addita nomines"
 
-#: aleksis/core/views.py:767
+#: aleksis/core/views.py:797
 msgid "The additional field has been deleted."
 msgstr ""
 
-#: aleksis/core/views.py:792
+#: aleksis/core/views.py:822
 msgid "The group type has been saved."
 msgstr ""
 
-#: aleksis/core/views.py:823
+#: aleksis/core/views.py:853
 msgid "The group type has been deleted."
 msgstr ""
 
-#: aleksis/core/views.py:858
+#: aleksis/core/views.py:888
 msgid "Progress: Run data checks"
 msgstr ""
 
-#: aleksis/core/views.py:859
+#: aleksis/core/views.py:889
 #, fuzzy
 #| msgid "System status"
 msgid "Run data checks …"
 msgstr "Status systemae"
 
-#: aleksis/core/views.py:860
+#: aleksis/core/views.py:890
 msgid "The data checks were run successfully."
 msgstr ""
 
-#: aleksis/core/views.py:861
+#: aleksis/core/views.py:891
 msgid "There was a problem while running data checks."
 msgstr ""
 
-#: aleksis/core/views.py:878
+#: aleksis/core/views.py:908
 #, python-brace-format
 msgid "The solve option '{solve_option_obj.verbose_name}' "
 msgstr ""
 
-#: aleksis/core/views.py:888
+#: aleksis/core/views.py:918
 msgid "The requested solve option does not exist"
 msgstr ""
 
-#: aleksis/core/views.py:921
+#: aleksis/core/views.py:951
 msgid "The dashboard widget has been saved."
 msgstr ""
 
-#: aleksis/core/views.py:951
+#: aleksis/core/views.py:981
 msgid "The dashboard widget has been created."
 msgstr ""
 
-#: aleksis/core/views.py:961
+#: aleksis/core/views.py:991
 msgid "The dashboard widget has been deleted."
 msgstr ""
 
-#: aleksis/core/views.py:1033
+#: aleksis/core/views.py:1063
 msgid "Your dashboard configuration has been saved successfully."
 msgstr ""
 
-#: aleksis/core/views.py:1035
+#: aleksis/core/views.py:1065
 msgid "The configuration of the default dashboard has been saved successfully."
 msgstr ""
 
-#: aleksis/core/views.py:1106
+#: aleksis/core/views.py:1136
 #, python-brace-format
 msgid "The invitation was successfully created. The invitation code is {code}"
 msgstr ""
 
-#: aleksis/core/views.py:1203
+#: aleksis/core/views.py:1233
 msgid "We have successfully assigned the permissions."
 msgstr ""
 
-#: aleksis/core/views.py:1213
+#: aleksis/core/views.py:1243
 msgid "The global user permission has been deleted."
 msgstr ""
 
-#: aleksis/core/views.py:1223
+#: aleksis/core/views.py:1253
 msgid "The global group permission has been deleted."
 msgstr ""
 
-#: aleksis/core/views.py:1233
+#: aleksis/core/views.py:1263
 msgid "The object user permission has been deleted."
 msgstr ""
 
-#: aleksis/core/views.py:1243
+#: aleksis/core/views.py:1273
 msgid "The object group permission has been deleted."
 msgstr ""
 
-#: aleksis/core/views.py:1352
+#: aleksis/core/views.py:1382
 msgid "The third-party account could not be disconnected because it is the only login method available."
 msgstr ""
 
-#: aleksis/core/views.py:1359
+#: aleksis/core/views.py:1389
 msgid "The third-party account has been successfully disconnected."
 msgstr ""
 
-#: aleksis/core/views.py:1435
+#: aleksis/core/views.py:1465
 msgid "Person was invited successfully and an email with further instructions has been send to them."
 msgstr ""
 
-#: aleksis/core/views.py:1446
+#: aleksis/core/views.py:1476
 msgid "Person was already invited."
 msgstr ""
 
+#, fuzzy
+#~| msgid "Notifications"
+#~ msgid "Authorized applications"
+#~ msgstr "Nuntii"
+
+#, fuzzy
+#~| msgid "Notifications"
+#~ msgid "No authorized applications."
+#~ msgstr "Nuntii"
+
 #~ msgid "Dashboard"
 #~ msgstr "Forum"
 
diff --git a/aleksis/core/locale/nb_NO/LC_MESSAGES/django.po b/aleksis/core/locale/nb_NO/LC_MESSAGES/django.po
index 7b3dcf5cecf2eb898338532c3ca412d75eda3df5..fb8bc425d974f814c8bf58710d9b1b06d975be5a 100644
--- a/aleksis/core/locale/nb_NO/LC_MESSAGES/django.po
+++ b/aleksis/core/locale/nb_NO/LC_MESSAGES/django.po
@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: AlekSIS (School Information System) 0.1\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2023-02-27 13:23+0100\n"
+"POT-Creation-Date: 2023-05-09 18:40+0200\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -17,28 +17,32 @@ msgstr ""
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: aleksis/core/apps.py:155
+#: aleksis/core/apps.py:151
+msgid "You have been logged out successfully."
+msgstr ""
+
+#: aleksis/core/apps.py:161
 msgid "OpenID Connect scope"
 msgstr ""
 
-#: aleksis/core/apps.py:156
+#: aleksis/core/apps.py:162
 msgid "Given name, family name, link to profile and picture if existing."
 msgstr ""
 
-#: aleksis/core/apps.py:157
+#: aleksis/core/apps.py:163
 msgid "Full home postal address"
 msgstr ""
 
-#: aleksis/core/apps.py:158
+#: aleksis/core/apps.py:164
 msgid "Email address"
 msgstr ""
 
-#: aleksis/core/apps.py:159
+#: aleksis/core/apps.py:165
 msgid "Home and mobile phone"
 msgstr ""
 
-#: aleksis/core/apps.py:160 aleksis/core/forms.py:220
-#: aleksis/core/models.py:494 aleksis/core/templates/core/group/list.html:8
+#: aleksis/core/apps.py:166 aleksis/core/forms.py:221
+#: aleksis/core/models.py:495 aleksis/core/templates/core/group/list.html:8
 #: aleksis/core/templates/core/group/list.html:9
 msgid "Groups"
 msgstr ""
@@ -97,172 +101,172 @@ msgstr ""
 msgid "Content type"
 msgstr ""
 
-#: aleksis/core/filters.py:113 aleksis/core/models.py:720
+#: aleksis/core/filters.py:113 aleksis/core/models.py:721
 msgid "User"
 msgstr ""
 
-#: aleksis/core/filters.py:135 aleksis/core/models.py:493
+#: aleksis/core/filters.py:135 aleksis/core/models.py:494
 msgid "Group"
 msgstr ""
 
-#: aleksis/core/forms.py:50 aleksis/core/forms.py:581
+#: aleksis/core/forms.py:51 aleksis/core/forms.py:582
 msgid "Base data"
 msgstr ""
 
-#: aleksis/core/forms.py:55 aleksis/core/tables.py:47
+#: aleksis/core/forms.py:56 aleksis/core/tables.py:47
 msgid "Address"
 msgstr ""
 
-#: aleksis/core/forms.py:56 aleksis/core/forms.py:590
+#: aleksis/core/forms.py:57 aleksis/core/forms.py:591
 msgid "Contact data"
 msgstr ""
 
-#: aleksis/core/forms.py:58
+#: aleksis/core/forms.py:59
 msgid "Advanced personal data"
 msgstr ""
 
-#: aleksis/core/forms.py:106
+#: aleksis/core/forms.py:107
 msgid "New user"
 msgstr ""
 
-#: aleksis/core/forms.py:106
+#: aleksis/core/forms.py:107
 msgid "Create a new account"
 msgstr ""
 
-#: aleksis/core/forms.py:132
+#: aleksis/core/forms.py:133
 msgid "You cannot set a new username when also selecting an existing user."
 msgstr ""
 
-#: aleksis/core/forms.py:136
+#: aleksis/core/forms.py:137
 msgid "This username is already in use."
 msgstr ""
 
-#: aleksis/core/forms.py:153 aleksis/core/models.py:141
+#: aleksis/core/forms.py:154 aleksis/core/models.py:142
 msgid "School term"
 msgstr ""
 
-#: aleksis/core/forms.py:154
+#: aleksis/core/forms.py:155
 msgid "Common data"
 msgstr ""
 
-#: aleksis/core/forms.py:155 aleksis/core/forms.py:207
-#: aleksis/core/models.py:164 aleksis/core/templates/core/person/list.html:8
+#: aleksis/core/forms.py:156 aleksis/core/forms.py:208
+#: aleksis/core/models.py:165 aleksis/core/templates/core/person/list.html:8
 #: aleksis/core/templates/core/person/list.html:9
 msgid "Persons"
 msgstr ""
 
-#: aleksis/core/forms.py:156 aleksis/core/forms.py:592
+#: aleksis/core/forms.py:157 aleksis/core/forms.py:593
 msgid "Additional data"
 msgstr ""
 
-#: aleksis/core/forms.py:157 aleksis/core/models.py:217
-#: aleksis/core/models.py:546 aleksis/core/tables.py:46
+#: aleksis/core/forms.py:158 aleksis/core/models.py:218
+#: aleksis/core/models.py:547 aleksis/core/tables.py:46
 msgid "Photo"
 msgstr ""
 
-#: aleksis/core/forms.py:199 aleksis/core/forms.py:202
-#: aleksis/core/models.py:84
+#: aleksis/core/forms.py:200 aleksis/core/forms.py:203
+#: aleksis/core/models.py:85
 msgid "Date"
 msgstr ""
 
-#: aleksis/core/forms.py:200 aleksis/core/forms.py:203
-#: aleksis/core/models.py:92
+#: aleksis/core/forms.py:201 aleksis/core/forms.py:204
+#: aleksis/core/models.py:93
 msgid "Time"
 msgstr ""
 
-#: aleksis/core/forms.py:233
+#: aleksis/core/forms.py:234
 msgid "From when until when should the announcement be displayed?"
 msgstr ""
 
-#: aleksis/core/forms.py:236
+#: aleksis/core/forms.py:237
 msgid "Who should see the announcement?"
 msgstr ""
 
-#: aleksis/core/forms.py:237
+#: aleksis/core/forms.py:238
 msgid "Write your announcement:"
 msgstr ""
 
-#: aleksis/core/forms.py:276
+#: aleksis/core/forms.py:277
 msgid "You are not allowed to create announcements which are only valid in the past."
 msgstr ""
 
-#: aleksis/core/forms.py:280
+#: aleksis/core/forms.py:281
 msgid "The from date and time must be earlier then the until date and time."
 msgstr ""
 
-#: aleksis/core/forms.py:289
+#: aleksis/core/forms.py:290
 msgid "You need at least one recipient."
 msgstr ""
 
-#: aleksis/core/forms.py:398
+#: aleksis/core/forms.py:399
 msgid "Invitation code"
 msgstr ""
 
-#: aleksis/core/forms.py:399
+#: aleksis/core/forms.py:400
 msgid "Please enter your invitation code."
 msgstr ""
 
-#: aleksis/core/forms.py:418 aleksis/core/models.py:192
+#: aleksis/core/forms.py:419 aleksis/core/models.py:193
 msgid "First name"
 msgstr ""
 
-#: aleksis/core/forms.py:419 aleksis/core/models.py:193
+#: aleksis/core/forms.py:420 aleksis/core/models.py:194
 msgid "Last name"
 msgstr ""
 
-#: aleksis/core/forms.py:428
+#: aleksis/core/forms.py:429
 msgid "A person is using this e-mail address"
 msgstr ""
 
-#: aleksis/core/forms.py:456
+#: aleksis/core/forms.py:457
 msgid "Who should get the permission?"
 msgstr ""
 
-#: aleksis/core/forms.py:457
+#: aleksis/core/forms.py:458
 msgid "On what?"
 msgstr ""
 
-#: aleksis/core/forms.py:483
+#: aleksis/core/forms.py:484
 msgid "Select objects which the permission should be granted for:"
 msgstr ""
 
-#: aleksis/core/forms.py:486
+#: aleksis/core/forms.py:487
 msgid "Grant the permission for all objects"
 msgstr ""
 
-#: aleksis/core/forms.py:494
+#: aleksis/core/forms.py:495
 msgid "You must select at least one group or person which should get the permission."
 msgstr ""
 
-#: aleksis/core/forms.py:499
+#: aleksis/core/forms.py:500
 msgid "You must grant the permission to all objects or to specific objects."
 msgstr ""
 
-#: aleksis/core/forms.py:586
+#: aleksis/core/forms.py:587
 msgid "Address data"
 msgstr ""
 
-#: aleksis/core/forms.py:598
+#: aleksis/core/forms.py:599
 msgid "Account data"
 msgstr ""
 
-#: aleksis/core/forms.py:605
+#: aleksis/core/forms.py:606
 msgid "Password"
 msgstr ""
 
-#: aleksis/core/forms.py:608
+#: aleksis/core/forms.py:609
 msgid "Password (again)"
 msgstr ""
 
-#: aleksis/core/forms.py:761
+#: aleksis/core/forms.py:762
 msgid "The selected action does not exist."
 msgstr ""
 
-#: aleksis/core/forms.py:772
+#: aleksis/core/forms.py:773
 msgid "You do not have permission to run {} on all selected objects."
 msgstr ""
 
-#: aleksis/core/forms.py:828
+#: aleksis/core/forms.py:829
 msgid "No valid selection."
 msgstr ""
 
@@ -290,658 +294,658 @@ msgstr ""
 msgid "Linked school term"
 msgstr ""
 
-#: aleksis/core/models.py:82
+#: aleksis/core/models.py:83
 msgid "Boolean (Yes/No)"
 msgstr ""
 
-#: aleksis/core/models.py:83
+#: aleksis/core/models.py:84
 msgid "Text (one line)"
 msgstr ""
 
-#: aleksis/core/models.py:85
+#: aleksis/core/models.py:86
 msgid "Date and time"
 msgstr ""
 
-#: aleksis/core/models.py:86
+#: aleksis/core/models.py:87
 msgid "Decimal number"
 msgstr ""
 
-#: aleksis/core/models.py:87 aleksis/core/models.py:210
+#: aleksis/core/models.py:88 aleksis/core/models.py:211
 msgid "E-mail address"
 msgstr ""
 
-#: aleksis/core/models.py:88
+#: aleksis/core/models.py:89
 msgid "Integer"
 msgstr ""
 
-#: aleksis/core/models.py:89
+#: aleksis/core/models.py:90
 msgid "IP address"
 msgstr ""
 
-#: aleksis/core/models.py:90
+#: aleksis/core/models.py:91
 msgid "Boolean or empty (Yes/No/Neither)"
 msgstr ""
 
-#: aleksis/core/models.py:91
+#: aleksis/core/models.py:92
 msgid "Text (multi-line)"
 msgstr ""
 
-#: aleksis/core/models.py:93
+#: aleksis/core/models.py:94
 msgid "URL / Link"
 msgstr ""
 
-#: aleksis/core/models.py:105 aleksis/core/models.py:1077
+#: aleksis/core/models.py:106 aleksis/core/models.py:1078
 msgid "Name"
 msgstr ""
 
-#: aleksis/core/models.py:107
+#: aleksis/core/models.py:108
 msgid "Start date"
 msgstr ""
 
-#: aleksis/core/models.py:108
+#: aleksis/core/models.py:109
 msgid "End date"
 msgstr ""
 
-#: aleksis/core/models.py:127
+#: aleksis/core/models.py:128
 msgid "The start date must be earlier than the end date."
 msgstr ""
 
-#: aleksis/core/models.py:134
+#: aleksis/core/models.py:135
 msgid "There is already a school term for this time or a part of this time."
 msgstr ""
 
-#: aleksis/core/models.py:142
+#: aleksis/core/models.py:143
 #: aleksis/core/templates/core/school_term/list.html:8
 #: aleksis/core/templates/core/school_term/list.html:9
 msgid "School terms"
 msgstr ""
 
-#: aleksis/core/models.py:163 aleksis/core/models.py:1026
+#: aleksis/core/models.py:164 aleksis/core/models.py:1027
 msgid "Person"
 msgstr ""
 
-#: aleksis/core/models.py:166
+#: aleksis/core/models.py:167
 msgid "Can view address"
 msgstr ""
 
-#: aleksis/core/models.py:167
+#: aleksis/core/models.py:168
 msgid "Can view contact details"
 msgstr ""
 
-#: aleksis/core/models.py:168
+#: aleksis/core/models.py:169
 msgid "Can view photo"
 msgstr ""
 
-#: aleksis/core/models.py:169
+#: aleksis/core/models.py:170
 msgid "Can view avatar image"
 msgstr ""
 
-#: aleksis/core/models.py:170
+#: aleksis/core/models.py:171
 msgid "Can view persons groups"
 msgstr ""
 
-#: aleksis/core/models.py:171
+#: aleksis/core/models.py:172
 msgid "Can view personal details"
 msgstr ""
 
-#: aleksis/core/models.py:181
+#: aleksis/core/models.py:182
 msgid "female"
 msgstr ""
 
-#: aleksis/core/models.py:181
+#: aleksis/core/models.py:182
 msgid "male"
 msgstr ""
 
-#: aleksis/core/models.py:181
+#: aleksis/core/models.py:182
 msgid "other"
 msgstr ""
 
-#: aleksis/core/models.py:189 aleksis/core/models.py:1353
+#: aleksis/core/models.py:190 aleksis/core/models.py:1382
 msgid "Linked user"
 msgstr ""
 
-#: aleksis/core/models.py:195
+#: aleksis/core/models.py:196
 msgid "Additional name(s)"
 msgstr ""
 
-#: aleksis/core/models.py:199 aleksis/core/models.py:511
-#: aleksis/core/models.py:1439
+#: aleksis/core/models.py:200 aleksis/core/models.py:512
+#: aleksis/core/models.py:1468
 msgid "Short name"
 msgstr ""
 
-#: aleksis/core/models.py:202
+#: aleksis/core/models.py:203
 msgid "Street"
 msgstr ""
 
-#: aleksis/core/models.py:203
+#: aleksis/core/models.py:204
 msgid "Street number"
 msgstr ""
 
-#: aleksis/core/models.py:204
+#: aleksis/core/models.py:205
 msgid "Postal code"
 msgstr ""
 
-#: aleksis/core/models.py:205
+#: aleksis/core/models.py:206
 msgid "Place"
 msgstr ""
 
-#: aleksis/core/models.py:207
+#: aleksis/core/models.py:208
 msgid "Home phone"
 msgstr ""
 
-#: aleksis/core/models.py:208
+#: aleksis/core/models.py:209
 msgid "Mobile phone"
 msgstr ""
 
-#: aleksis/core/models.py:212
+#: aleksis/core/models.py:213
 msgid "Date of birth"
 msgstr ""
 
-#: aleksis/core/models.py:213
+#: aleksis/core/models.py:214
 msgid "Place of birth"
 msgstr ""
 
-#: aleksis/core/models.py:214
+#: aleksis/core/models.py:215
 msgid "Sex"
 msgstr ""
 
-#: aleksis/core/models.py:221 aleksis/core/models.py:550
+#: aleksis/core/models.py:222 aleksis/core/models.py:551
 msgid "This is an official photo, used for official documents and for internal use cases."
 msgstr ""
 
-#: aleksis/core/models.py:226 aleksis/core/models.py:554
+#: aleksis/core/models.py:227 aleksis/core/models.py:555
 msgid "Display picture / Avatar"
 msgstr ""
 
-#: aleksis/core/models.py:229 aleksis/core/models.py:557
+#: aleksis/core/models.py:230 aleksis/core/models.py:558
 msgid "This is a picture or an avatar for public display."
 msgstr ""
 
-#: aleksis/core/models.py:234
+#: aleksis/core/models.py:235
 msgid "Guardians / Parents"
 msgstr ""
 
-#: aleksis/core/models.py:241
+#: aleksis/core/models.py:242
 msgid "Primary group"
 msgstr ""
 
-#: aleksis/core/models.py:244 aleksis/core/models.py:724
-#: aleksis/core/models.py:748 aleksis/core/models.py:843
-#: aleksis/core/models.py:1112
+#: aleksis/core/models.py:245 aleksis/core/models.py:725
+#: aleksis/core/models.py:749 aleksis/core/models.py:844
+#: aleksis/core/models.py:1113
 msgid "Description"
 msgstr ""
 
-#: aleksis/core/models.py:464
+#: aleksis/core/models.py:465
 msgid "Title of field"
 msgstr ""
 
-#: aleksis/core/models.py:466
+#: aleksis/core/models.py:467
 msgid "Type of field"
 msgstr ""
 
-#: aleksis/core/models.py:468
+#: aleksis/core/models.py:469
 msgid "Required"
 msgstr ""
 
-#: aleksis/core/models.py:469
+#: aleksis/core/models.py:470
 msgid "Help text / description"
 msgstr ""
 
-#: aleksis/core/models.py:475
+#: aleksis/core/models.py:476
 msgid "Addtitional field for groups"
 msgstr ""
 
-#: aleksis/core/models.py:476
+#: aleksis/core/models.py:477
 msgid "Addtitional fields for groups"
 msgstr ""
 
-#: aleksis/core/models.py:496
+#: aleksis/core/models.py:497
 msgid "Can assign child groups to groups"
 msgstr ""
 
-#: aleksis/core/models.py:497
+#: aleksis/core/models.py:498
 msgid "Can view statistics about group."
 msgstr ""
 
-#: aleksis/core/models.py:509 aleksis/core/models.py:1440
+#: aleksis/core/models.py:510 aleksis/core/models.py:1469
 msgid "Long name"
 msgstr ""
 
-#: aleksis/core/models.py:519 aleksis/core/templates/core/group/full.html:105
+#: aleksis/core/models.py:520 aleksis/core/templates/core/group/full.html:105
 msgid "Members"
 msgstr ""
 
-#: aleksis/core/models.py:522 aleksis/core/templates/core/group/full.html:102
+#: aleksis/core/models.py:523 aleksis/core/templates/core/group/full.html:102
 msgid "Owners"
 msgstr ""
 
-#: aleksis/core/models.py:529 aleksis/core/templates/core/group/full.html:59
+#: aleksis/core/models.py:530 aleksis/core/templates/core/group/full.html:59
 msgid "Parent groups"
 msgstr ""
 
-#: aleksis/core/models.py:537
+#: aleksis/core/models.py:538
 msgid "Type of group"
 msgstr ""
 
-#: aleksis/core/models.py:542
+#: aleksis/core/models.py:543
 #: aleksis/core/templates/core/additional_field/list.html:8
 #: aleksis/core/templates/core/additional_field/list.html:9
 msgid "Additional fields"
 msgstr ""
 
-#: aleksis/core/models.py:723 aleksis/core/models.py:747
-#: aleksis/core/models.py:842 aleksis/core/models.py:1270
+#: aleksis/core/models.py:724 aleksis/core/models.py:748
+#: aleksis/core/models.py:843 aleksis/core/models.py:1299
 #: aleksis/core/templates/core/announcement/list.html:18
 msgid "Title"
 msgstr ""
 
-#: aleksis/core/models.py:726
+#: aleksis/core/models.py:727
 msgid "Application"
 msgstr ""
 
-#: aleksis/core/models.py:732
+#: aleksis/core/models.py:733
 msgid "Activity"
 msgstr ""
 
-#: aleksis/core/models.py:733
+#: aleksis/core/models.py:734
 msgid "Activities"
 msgstr ""
 
-#: aleksis/core/models.py:739
+#: aleksis/core/models.py:740
 msgid "Sender"
 msgstr ""
 
-#: aleksis/core/models.py:744
+#: aleksis/core/models.py:745
 msgid "Recipient"
 msgstr ""
 
-#: aleksis/core/models.py:749 aleksis/core/models.py:1078
+#: aleksis/core/models.py:750 aleksis/core/models.py:1079
 msgid "Link"
 msgstr ""
 
-#: aleksis/core/models.py:752 aleksis/core/models.py:1079
-#: aleksis/core/models.py:1400
+#: aleksis/core/models.py:753 aleksis/core/models.py:1080
+#: aleksis/core/models.py:1429
 #: aleksis/core/templates/oauth2_provider/application/detail.html:26
 msgid "Icon"
 msgstr ""
 
-#: aleksis/core/models.py:755
+#: aleksis/core/models.py:756
 msgid "Send notification at"
 msgstr ""
 
-#: aleksis/core/models.py:757
+#: aleksis/core/models.py:758
 msgid "Read"
 msgstr ""
 
-#: aleksis/core/models.py:758
+#: aleksis/core/models.py:759
 msgid "Sent"
 msgstr ""
 
-#: aleksis/core/models.py:775
+#: aleksis/core/models.py:776
 msgid "Notification"
 msgstr ""
 
-#: aleksis/core/models.py:776 aleksis/core/preferences.py:29
+#: aleksis/core/models.py:777 aleksis/core/preferences.py:29
 msgid "Notifications"
 msgstr ""
 
-#: aleksis/core/models.py:844
+#: aleksis/core/models.py:845
 msgid "Link to detailed view"
 msgstr ""
 
-#: aleksis/core/models.py:847
+#: aleksis/core/models.py:848
 msgid "Date and time from when to show"
 msgstr ""
 
-#: aleksis/core/models.py:850
+#: aleksis/core/models.py:851
 msgid "Date and time until when to show"
 msgstr ""
 
-#: aleksis/core/models.py:875
+#: aleksis/core/models.py:876
 msgid "Announcement"
 msgstr ""
 
-#: aleksis/core/models.py:876
+#: aleksis/core/models.py:877
 #: aleksis/core/templates/core/announcement/list.html:7
 #: aleksis/core/templates/core/announcement/list.html:8
 msgid "Announcements"
 msgstr ""
 
-#: aleksis/core/models.py:913
+#: aleksis/core/models.py:914
 msgid "Announcement recipient"
 msgstr ""
 
-#: aleksis/core/models.py:914
+#: aleksis/core/models.py:915
 msgid "Announcement recipients"
 msgstr ""
 
-#: aleksis/core/models.py:934
+#: aleksis/core/models.py:935
 msgid "Widget Title"
 msgstr ""
 
-#: aleksis/core/models.py:935
+#: aleksis/core/models.py:936
 msgid "Activate Widget"
 msgstr ""
 
-#: aleksis/core/models.py:936
+#: aleksis/core/models.py:937
 msgid "Widget is broken"
 msgstr ""
 
-#: aleksis/core/models.py:939
+#: aleksis/core/models.py:940
 msgid "Size on mobile devices"
 msgstr ""
 
-#: aleksis/core/models.py:940
+#: aleksis/core/models.py:941
 msgid "<= 600 px, 12 columns"
 msgstr ""
 
-#: aleksis/core/models.py:945
+#: aleksis/core/models.py:946
 msgid "Size on tablet devices"
 msgstr ""
 
-#: aleksis/core/models.py:946
+#: aleksis/core/models.py:947
 msgid "> 600 px, 12 columns"
 msgstr ""
 
-#: aleksis/core/models.py:951
+#: aleksis/core/models.py:952
 msgid "Size on desktop devices"
 msgstr ""
 
-#: aleksis/core/models.py:952
+#: aleksis/core/models.py:953
 msgid "> 992 px, 12 columns"
 msgstr ""
 
-#: aleksis/core/models.py:957
+#: aleksis/core/models.py:958
 msgid "Size on large desktop devices"
 msgstr ""
 
-#: aleksis/core/models.py:958
+#: aleksis/core/models.py:959
 msgid "> 1200 px>, 12 columns"
 msgstr ""
 
-#: aleksis/core/models.py:989
+#: aleksis/core/models.py:990
 msgid "Can edit default dashboard"
 msgstr ""
 
-#: aleksis/core/models.py:990
+#: aleksis/core/models.py:991
 msgid "Dashboard Widget"
 msgstr ""
 
-#: aleksis/core/models.py:991
+#: aleksis/core/models.py:992
 msgid "Dashboard Widgets"
 msgstr ""
 
-#: aleksis/core/models.py:997
+#: aleksis/core/models.py:998
 msgid "URL"
 msgstr ""
 
-#: aleksis/core/models.py:998
+#: aleksis/core/models.py:999
 msgid "Icon URL"
 msgstr ""
 
-#: aleksis/core/models.py:1004
+#: aleksis/core/models.py:1005
 msgid "External link widget"
 msgstr ""
 
-#: aleksis/core/models.py:1005
+#: aleksis/core/models.py:1006
 msgid "External link widgets"
 msgstr ""
 
-#: aleksis/core/models.py:1011
+#: aleksis/core/models.py:1012
 msgid "Content"
 msgstr ""
 
-#: aleksis/core/models.py:1017
+#: aleksis/core/models.py:1018
 msgid "Static content widget"
 msgstr ""
 
-#: aleksis/core/models.py:1018
+#: aleksis/core/models.py:1019
 msgid "Static content widgets"
 msgstr ""
 
-#: aleksis/core/models.py:1023
+#: aleksis/core/models.py:1024
 msgid "Dashboard widget"
 msgstr ""
 
-#: aleksis/core/models.py:1028
+#: aleksis/core/models.py:1029
 msgid "Order"
 msgstr ""
 
-#: aleksis/core/models.py:1029
+#: aleksis/core/models.py:1030
 msgid "Part of the default dashboard"
 msgstr ""
 
-#: aleksis/core/models.py:1044
+#: aleksis/core/models.py:1045
 msgid "Dashboard widget order"
 msgstr ""
 
-#: aleksis/core/models.py:1045
+#: aleksis/core/models.py:1046
 msgid "Dashboard widget orders"
 msgstr ""
 
-#: aleksis/core/models.py:1051
+#: aleksis/core/models.py:1052
 msgid "Menu ID"
 msgstr ""
 
-#: aleksis/core/models.py:1064
+#: aleksis/core/models.py:1065
 msgid "Custom menu"
 msgstr ""
 
-#: aleksis/core/models.py:1065
+#: aleksis/core/models.py:1066
 msgid "Custom menus"
 msgstr ""
 
-#: aleksis/core/models.py:1075
+#: aleksis/core/models.py:1076
 msgid "Menu"
 msgstr ""
 
-#: aleksis/core/models.py:1085
+#: aleksis/core/models.py:1086
 msgid "Custom menu item"
 msgstr ""
 
-#: aleksis/core/models.py:1086
+#: aleksis/core/models.py:1087
 msgid "Custom menu items"
 msgstr ""
 
-#: aleksis/core/models.py:1111
+#: aleksis/core/models.py:1112
 msgid "Title of type"
 msgstr ""
 
-#: aleksis/core/models.py:1118 aleksis/core/templates/core/group/full.html:50
+#: aleksis/core/models.py:1119 aleksis/core/templates/core/group/full.html:50
 msgid "Group type"
 msgstr ""
 
-#: aleksis/core/models.py:1119
+#: aleksis/core/models.py:1120
 #: aleksis/core/templates/core/group_type/list.html:8
 #: aleksis/core/templates/core/group_type/list.html:9
 msgid "Group types"
 msgstr ""
 
-#: aleksis/core/models.py:1132
+#: aleksis/core/models.py:1133
 msgid "Can view system status"
 msgstr ""
 
-#: aleksis/core/models.py:1133
+#: aleksis/core/models.py:1134
 msgid "Can manage data"
 msgstr ""
 
-#: aleksis/core/models.py:1134
+#: aleksis/core/models.py:1135
 msgid "Can impersonate"
 msgstr ""
 
-#: aleksis/core/models.py:1135
+#: aleksis/core/models.py:1136
 msgid "Can use search"
 msgstr ""
 
-#: aleksis/core/models.py:1136
+#: aleksis/core/models.py:1137
 msgid "Can change site preferences"
 msgstr ""
 
-#: aleksis/core/models.py:1137
+#: aleksis/core/models.py:1138
 msgid "Can change person preferences"
 msgstr ""
 
-#: aleksis/core/models.py:1138
+#: aleksis/core/models.py:1139
 msgid "Can change group preferences"
 msgstr ""
 
-#: aleksis/core/models.py:1139
+#: aleksis/core/models.py:1140
 msgid "Can test PDF generation"
 msgstr ""
 
-#: aleksis/core/models.py:1140
+#: aleksis/core/models.py:1141
 msgid "Can invite persons"
 msgstr ""
 
-#: aleksis/core/models.py:1176
+#: aleksis/core/models.py:1177
 msgid "Related data check task"
 msgstr ""
 
-#: aleksis/core/models.py:1184
+#: aleksis/core/models.py:1185
 msgid "Issue solved"
 msgstr ""
 
-#: aleksis/core/models.py:1185
+#: aleksis/core/models.py:1186
 msgid "Notification sent"
 msgstr ""
 
-#: aleksis/core/models.py:1198
+#: aleksis/core/models.py:1199
 msgid "Data check result"
 msgstr ""
 
-#: aleksis/core/models.py:1199
+#: aleksis/core/models.py:1200
 msgid "Data check results"
 msgstr ""
 
-#: aleksis/core/models.py:1201
+#: aleksis/core/models.py:1202
 msgid "Can run data checks"
 msgstr ""
 
-#: aleksis/core/models.py:1202
+#: aleksis/core/models.py:1203
 msgid "Can solve data check problems"
 msgstr ""
 
-#: aleksis/core/models.py:1209
+#: aleksis/core/models.py:1210
 msgid "E-Mail address"
 msgstr ""
 
-#: aleksis/core/models.py:1241
+#: aleksis/core/models.py:1270
 msgid "Owner"
 msgstr ""
 
-#: aleksis/core/models.py:1245
+#: aleksis/core/models.py:1274
 msgid "File expires at"
 msgstr ""
 
-#: aleksis/core/models.py:1248
+#: aleksis/core/models.py:1277
 msgid "Generated HTML file"
 msgstr ""
 
-#: aleksis/core/models.py:1251
+#: aleksis/core/models.py:1280
 msgid "Generated PDF file"
 msgstr ""
 
-#: aleksis/core/models.py:1258
+#: aleksis/core/models.py:1287
 msgid "PDF file"
 msgstr ""
 
-#: aleksis/core/models.py:1259
+#: aleksis/core/models.py:1288
 msgid "PDF files"
 msgstr ""
 
-#: aleksis/core/models.py:1264
+#: aleksis/core/models.py:1293
 msgid "Task result"
 msgstr ""
 
-#: aleksis/core/models.py:1267
+#: aleksis/core/models.py:1296
 msgid "Task user"
 msgstr ""
 
-#: aleksis/core/models.py:1271
+#: aleksis/core/models.py:1300
 msgid "Back URL"
 msgstr ""
 
-#: aleksis/core/models.py:1272
+#: aleksis/core/models.py:1301
 msgid "Progress title"
 msgstr ""
 
-#: aleksis/core/models.py:1273
+#: aleksis/core/models.py:1302
 msgid "Error message"
 msgstr ""
 
-#: aleksis/core/models.py:1274
+#: aleksis/core/models.py:1303
 msgid "Success message"
 msgstr ""
 
-#: aleksis/core/models.py:1275
+#: aleksis/core/models.py:1304
 msgid "Redirect on success URL"
 msgstr ""
 
-#: aleksis/core/models.py:1277
+#: aleksis/core/models.py:1306
 msgid "Additional button title"
 msgstr ""
 
-#: aleksis/core/models.py:1279
+#: aleksis/core/models.py:1308
 msgid "Additional button URL"
 msgstr ""
 
-#: aleksis/core/models.py:1281
+#: aleksis/core/models.py:1310
 msgid "Additional button icon"
 msgstr ""
 
-#: aleksis/core/models.py:1283
+#: aleksis/core/models.py:1312
 msgid "Result fetched"
 msgstr ""
 
-#: aleksis/core/models.py:1308
+#: aleksis/core/models.py:1337
 msgid "Background task completed successfully"
 msgstr ""
 
-#: aleksis/core/models.py:1309
+#: aleksis/core/models.py:1338
 msgid "The background task '{}' has been completed successfully."
 msgstr ""
 
-#: aleksis/core/models.py:1315
+#: aleksis/core/models.py:1344
 msgid "Background task failed"
 msgstr ""
 
-#: aleksis/core/models.py:1316
+#: aleksis/core/models.py:1345
 msgid "The background task '{}' has failed."
 msgstr ""
 
-#: aleksis/core/models.py:1325
+#: aleksis/core/models.py:1354
 msgid "Background task"
 msgstr ""
 
-#: aleksis/core/models.py:1339
+#: aleksis/core/models.py:1368
 msgid "Task user assignment"
 msgstr ""
 
-#: aleksis/core/models.py:1340
+#: aleksis/core/models.py:1369
 msgid "Task user assignments"
 msgstr ""
 
-#: aleksis/core/models.py:1356
+#: aleksis/core/models.py:1385
 msgid "Additional attributes"
 msgstr ""
 
-#: aleksis/core/models.py:1394
+#: aleksis/core/models.py:1423
 msgid "Allowed scopes that clients can request"
 msgstr ""
 
-#: aleksis/core/models.py:1404
+#: aleksis/core/models.py:1433
 msgid "This image will be shown as icon in the authorization flow. It should be squared."
 msgstr ""
 
-#: aleksis/core/models.py:1449
+#: aleksis/core/models.py:1478
 msgid "Can view room timetable"
 msgstr ""
 
-#: aleksis/core/models.py:1451
+#: aleksis/core/models.py:1480
 msgid "Room"
 msgstr ""
 
-#: aleksis/core/models.py:1452
+#: aleksis/core/models.py:1481
 msgid "Rooms"
 msgstr ""
 
@@ -1153,15 +1157,15 @@ msgstr ""
 msgid "Country for phone number parsing"
 msgstr ""
 
-#: aleksis/core/settings.py:549
+#: aleksis/core/settings.py:551
 msgid "English"
 msgstr ""
 
-#: aleksis/core/settings.py:550
+#: aleksis/core/settings.py:552
 msgid "German"
 msgstr ""
 
-#: aleksis/core/settings.py:551
+#: aleksis/core/settings.py:553
 msgid "Ukrainian"
 msgstr ""
 
@@ -1173,14 +1177,14 @@ msgid "Edit"
 msgstr ""
 
 #: aleksis/core/tables.py:27 aleksis/core/tables.py:148
-#: aleksis/core/tables.py:192
+#: aleksis/core/tables.py:185
 #: aleksis/core/templates/core/announcement/list.html:22
 msgid "Actions"
 msgstr ""
 
 #: aleksis/core/tables.py:115 aleksis/core/tables.py:116
 #: aleksis/core/tables.py:130 aleksis/core/tables.py:146
-#: aleksis/core/tables.py:190
+#: aleksis/core/tables.py:183
 #: aleksis/core/templates/core/announcement/list.html:42
 #: aleksis/core/templates/core/group/full.html:33
 #: aleksis/core/templates/core/pages/delete.html:22
@@ -1229,7 +1233,7 @@ msgid ""
 "          "
 msgstr ""
 
-#: aleksis/core/templates/500.html:21
+#: aleksis/core/templates/500.html:21 aleksis/core/templates/offline.html:22
 msgid "Retry"
 msgstr ""
 
@@ -1543,62 +1547,62 @@ msgstr ""
 msgid "Edit default dashboard"
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:9
 #: aleksis/core/templates/core/data_check/list.html:10
+#: aleksis/core/templates/core/data_check/list.html:11
 msgid "Data checks"
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:15
+#: aleksis/core/templates/core/data_check/list.html:16
 msgid "Check data again"
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:22
+#: aleksis/core/templates/core/data_check/list.html:23
 msgid "The system detected some problems with your data."
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:23
+#: aleksis/core/templates/core/data_check/list.html:24
 msgid ""
 "Please go through all data and check whether some extra action is\n"
 "          needed."
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:31
+#: aleksis/core/templates/core/data_check/list.html:32
 msgid "Everything is fine."
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:32
+#: aleksis/core/templates/core/data_check/list.html:33
 msgid "The system hasn't detected any problems with your data."
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:40
+#: aleksis/core/templates/core/data_check/list.html:41
 msgid "Detected problems"
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:45
+#: aleksis/core/templates/core/data_check/list.html:46
 msgid "Affected object"
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:46
+#: aleksis/core/templates/core/data_check/list.html:47
 msgid "Detected problem"
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:47
+#: aleksis/core/templates/core/data_check/list.html:48
 msgid "Show details"
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:48
+#: aleksis/core/templates/core/data_check/list.html:49
 msgid "Options to solve the problem"
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:63
+#: aleksis/core/templates/core/data_check/list.html:65
 msgid "Show object"
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:86
+#: aleksis/core/templates/core/data_check/list.html:89
 msgid "Registered checks"
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:90
+#: aleksis/core/templates/core/data_check/list.html:93
 msgid ""
 "\n"
 "            The system will check for the following problems:\n"
@@ -1820,83 +1824,83 @@ msgstr ""
 msgid "System checks"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:22
+#: aleksis/core/templates/core/pages/system_status.html:26
 msgid "Maintenance mode enabled"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:24
+#: aleksis/core/templates/core/pages/system_status.html:28
 msgid ""
 "\n"
-"                Only admin and visitors from internal IPs can access the site.\n"
-"              "
+"                  Only admin and visitors from internal IPs can access the site.\n"
+"                "
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:36
+#: aleksis/core/templates/core/pages/system_status.html:39
 msgid "Maintenance mode disabled"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:37
+#: aleksis/core/templates/core/pages/system_status.html:40
 msgid "Everyone can access the site."
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:47
+#: aleksis/core/templates/core/pages/system_status.html:51
 msgid "Debug mode enabled"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:49
+#: aleksis/core/templates/core/pages/system_status.html:53
 msgid ""
 "\n"
 "                The web server throws back debug information on errors. Do not use in production!\n"
 "              "
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:56
+#: aleksis/core/templates/core/pages/system_status.html:60
 msgid "Debug mode disabled"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:58
+#: aleksis/core/templates/core/pages/system_status.html:62
 msgid ""
 "\n"
 "                Debug mode is disabled. Default error pages are displayed on errors.\n"
 "              "
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:71
+#: aleksis/core/templates/core/pages/system_status.html:75
 msgid "System health checks"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:77
+#: aleksis/core/templates/core/pages/system_status.html:81
 msgid "Service"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:78
-#: aleksis/core/templates/core/pages/system_status.html:119
+#: aleksis/core/templates/core/pages/system_status.html:82
+#: aleksis/core/templates/core/pages/system_status.html:123
 msgid "Status"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:79
+#: aleksis/core/templates/core/pages/system_status.html:83
 msgid "Time taken"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:100
+#: aleksis/core/templates/core/pages/system_status.html:104
 msgid "seconds"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:111
+#: aleksis/core/templates/core/pages/system_status.html:115
 msgid "Celery task results"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:116
+#: aleksis/core/templates/core/pages/system_status.html:120
 #: aleksis/core/templates/templated_email/celery_failure.email:9
 #: aleksis/core/templates/templated_email/celery_failure.email:28
 msgid "Task"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:117
+#: aleksis/core/templates/core/pages/system_status.html:121
 msgid "ID"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:118
+#: aleksis/core/templates/core/pages/system_status.html:122
 msgid "Date done"
 msgstr ""
 
@@ -2120,11 +2124,11 @@ msgstr ""
 msgid "Generate invitation code"
 msgstr ""
 
-#: aleksis/core/templates/invitations/forms/_invite.html:29
+#: aleksis/core/templates/invitations/forms/_invite.html:30
 msgid "Generate code"
 msgstr ""
 
-#: aleksis/core/templates/invitations/forms/_invite.html:33
+#: aleksis/core/templates/invitations/forms/_invite.html:34
 msgid "Invitations"
 msgstr ""
 
@@ -2140,7 +2144,6 @@ msgstr ""
 
 #: aleksis/core/templates/oauth2_provider/application/create.html:14
 #: aleksis/core/templates/oauth2_provider/application/edit.html:14
-#: aleksis/core/templates/oauth2_provider/authorized-token-delete.html:24
 #: aleksis/core/templates/two_factor/_wizard_actions.html:6
 msgid "Cancel"
 msgstr ""
@@ -2214,43 +2217,19 @@ msgstr ""
 msgid "Disallow"
 msgstr ""
 
-#: aleksis/core/templates/oauth2_provider/authorized-token-delete.html:5
-#: aleksis/core/templates/oauth2_provider/authorized-token-delete.html:6
-#: aleksis/core/templates/oauth2_provider/authorized-tokens.html:23
-msgid "Revoke access"
-msgstr ""
-
-#: aleksis/core/templates/oauth2_provider/authorized-token-delete.html:12
-msgid "Are you sure to revoke the access for this application?"
-msgstr ""
-
-#: aleksis/core/templates/oauth2_provider/authorized-token-delete.html:20
-msgid "Revoke"
-msgstr ""
-
-#: aleksis/core/templates/oauth2_provider/authorized-tokens.html:5
-#: aleksis/core/templates/oauth2_provider/authorized-tokens.html:6
-msgid "Authorized applications"
-msgstr ""
-
-#: aleksis/core/templates/oauth2_provider/authorized-tokens.html:33
-msgid "No authorized applications."
-msgstr ""
-
 #: aleksis/core/templates/offline.html:5
 msgid "Network error"
 msgstr ""
 
 #: aleksis/core/templates/offline.html:10
-msgid "Page not available offline."
+msgid "No connection to server."
 msgstr ""
 
 #: aleksis/core/templates/offline.html:14
 msgid ""
 "\n"
-"      This page is not available offline. Since you probably don't have an internet connection, check to see if your WiFi\n"
-"      or mobile data is turned on and try again. If you think you are connected, please contact the system\n"
-"      administrators:\n"
+"      This page is not available without a connection to the server. Please check your internet connection and try again.\n"
+"      If you are connected and the error persists, please contact the system administrators:\n"
 "    "
 msgstr ""
 
@@ -2368,6 +2347,8 @@ msgstr ""
 
 #: aleksis/core/templates/templated_email/base.email:5
 #: aleksis/core/templates/templated_email/base.email:16
+#: aleksis/core/templates/templated_email/invitation.email:6
+#: aleksis/core/templates/templated_email/invitation.email:14
 msgid "Hello"
 msgstr ""
 
@@ -2435,6 +2416,23 @@ msgstr ""
 msgid "Count of objects with new problems"
 msgstr ""
 
+#: aleksis/core/templates/templated_email/invitation.email:4
+#, python-format
+msgid "Invitation to register on %(site)s"
+msgstr ""
+
+#: aleksis/core/templates/templated_email/invitation.email:6
+#: aleksis/core/templates/templated_email/invitation.email:14
+#, python-format
+msgid "Hello %(person)s"
+msgstr ""
+
+#: aleksis/core/templates/templated_email/invitation.email:9
+#: aleksis/core/templates/templated_email/invitation.email:18
+#, python-format
+msgid "you have been invited to register on %(site)s. If you would like to accept this invitation, please click on the following link:"
+msgstr ""
+
 #: aleksis/core/templates/templated_email/notification.email:4
 msgid "New notification for"
 msgstr ""
@@ -2814,149 +2812,157 @@ msgstr ""
 msgid "Download PDF"
 msgstr ""
 
-#: aleksis/core/views.py:280
+#: aleksis/core/views.py:285
 msgid "The school term has been created."
 msgstr ""
 
-#: aleksis/core/views.py:292
+#: aleksis/core/views.py:297
 msgid "The school term has been saved."
 msgstr ""
 
-#: aleksis/core/views.py:396
+#: aleksis/core/views.py:401
 msgid "The child groups were successfully saved."
 msgstr ""
 
-#: aleksis/core/views.py:415 aleksis/core/views.py:425
+#: aleksis/core/views.py:420 aleksis/core/views.py:430
 msgid "The person has been saved."
 msgstr ""
 
-#: aleksis/core/views.py:475
+#: aleksis/core/views.py:480
 msgid "The group has been saved."
 msgstr ""
 
-#: aleksis/core/views.py:558
+#: aleksis/core/views.py:528
+msgid "Maintenance mode was turned on successfully."
+msgstr ""
+
+#: aleksis/core/views.py:530
+msgid "Maintenance mode was turned off successfully."
+msgstr ""
+
+#: aleksis/core/views.py:588
 msgid "The announcement has been saved."
 msgstr ""
 
-#: aleksis/core/views.py:574
+#: aleksis/core/views.py:604
 msgid "The announcement has been deleted."
 msgstr ""
 
-#: aleksis/core/views.py:643
+#: aleksis/core/views.py:673
 msgid "The requested preference registry does not exist"
 msgstr ""
 
-#: aleksis/core/views.py:662
+#: aleksis/core/views.py:692
 msgid "The preferences have been saved successfully."
 msgstr ""
 
-#: aleksis/core/views.py:686
+#: aleksis/core/views.py:716
 msgid "The person has been deleted."
 msgstr ""
 
-#: aleksis/core/views.py:700
+#: aleksis/core/views.py:730
 msgid "The group has been deleted."
 msgstr ""
 
-#: aleksis/core/views.py:732
+#: aleksis/core/views.py:762
 msgid "The additional field has been saved."
 msgstr ""
 
-#: aleksis/core/views.py:767
+#: aleksis/core/views.py:797
 msgid "The additional field has been deleted."
 msgstr ""
 
-#: aleksis/core/views.py:792
+#: aleksis/core/views.py:822
 msgid "The group type has been saved."
 msgstr ""
 
-#: aleksis/core/views.py:823
+#: aleksis/core/views.py:853
 msgid "The group type has been deleted."
 msgstr ""
 
-#: aleksis/core/views.py:858
+#: aleksis/core/views.py:888
 msgid "Progress: Run data checks"
 msgstr ""
 
-#: aleksis/core/views.py:859
+#: aleksis/core/views.py:889
 msgid "Run data checks …"
 msgstr ""
 
-#: aleksis/core/views.py:860
+#: aleksis/core/views.py:890
 msgid "The data checks were run successfully."
 msgstr ""
 
-#: aleksis/core/views.py:861
+#: aleksis/core/views.py:891
 msgid "There was a problem while running data checks."
 msgstr ""
 
-#: aleksis/core/views.py:878
+#: aleksis/core/views.py:908
 #, python-brace-format
 msgid "The solve option '{solve_option_obj.verbose_name}' "
 msgstr ""
 
-#: aleksis/core/views.py:888
+#: aleksis/core/views.py:918
 msgid "The requested solve option does not exist"
 msgstr ""
 
-#: aleksis/core/views.py:921
+#: aleksis/core/views.py:951
 msgid "The dashboard widget has been saved."
 msgstr ""
 
-#: aleksis/core/views.py:951
+#: aleksis/core/views.py:981
 msgid "The dashboard widget has been created."
 msgstr ""
 
-#: aleksis/core/views.py:961
+#: aleksis/core/views.py:991
 msgid "The dashboard widget has been deleted."
 msgstr ""
 
-#: aleksis/core/views.py:1033
+#: aleksis/core/views.py:1063
 msgid "Your dashboard configuration has been saved successfully."
 msgstr ""
 
-#: aleksis/core/views.py:1035
+#: aleksis/core/views.py:1065
 msgid "The configuration of the default dashboard has been saved successfully."
 msgstr ""
 
-#: aleksis/core/views.py:1106
+#: aleksis/core/views.py:1136
 #, python-brace-format
 msgid "The invitation was successfully created. The invitation code is {code}"
 msgstr ""
 
-#: aleksis/core/views.py:1203
+#: aleksis/core/views.py:1233
 msgid "We have successfully assigned the permissions."
 msgstr ""
 
-#: aleksis/core/views.py:1213
+#: aleksis/core/views.py:1243
 msgid "The global user permission has been deleted."
 msgstr ""
 
-#: aleksis/core/views.py:1223
+#: aleksis/core/views.py:1253
 msgid "The global group permission has been deleted."
 msgstr ""
 
-#: aleksis/core/views.py:1233
+#: aleksis/core/views.py:1263
 msgid "The object user permission has been deleted."
 msgstr ""
 
-#: aleksis/core/views.py:1243
+#: aleksis/core/views.py:1273
 msgid "The object group permission has been deleted."
 msgstr ""
 
-#: aleksis/core/views.py:1352
+#: aleksis/core/views.py:1382
 msgid "The third-party account could not be disconnected because it is the only login method available."
 msgstr ""
 
-#: aleksis/core/views.py:1359
+#: aleksis/core/views.py:1389
 msgid "The third-party account has been successfully disconnected."
 msgstr ""
 
-#: aleksis/core/views.py:1435
+#: aleksis/core/views.py:1465
 msgid "Person was invited successfully and an email with further instructions has been send to them."
 msgstr ""
 
-#: aleksis/core/views.py:1446
+#: aleksis/core/views.py:1476
 msgid "Person was already invited."
 msgstr ""
 
diff --git a/aleksis/core/locale/ru/LC_MESSAGES/django.po b/aleksis/core/locale/ru/LC_MESSAGES/django.po
index bbc0d0554c170e9e0c1954b5076d624da0e2e8e1..ac2e3f0fd5a295ab08281388f545cbe3bfed179b 100644
--- a/aleksis/core/locale/ru/LC_MESSAGES/django.po
+++ b/aleksis/core/locale/ru/LC_MESSAGES/django.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2023-02-27 13:23+0100\n"
+"POT-Creation-Date: 2023-05-09 18:40+0200\n"
 "PO-Revision-Date: 2023-02-08 22:40+0000\n"
 "Last-Translator: Serhii Horichenko <m@sgg.im>\n"
 "Language-Team: Russian <https://translate.edugit.org/projects/aleksis/aleksis-core/ru/>\n"
@@ -18,28 +18,34 @@ msgstr ""
 "Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n"
 "X-Generator: Weblate 4.12.1\n"
 
-#: aleksis/core/apps.py:155
+#: aleksis/core/apps.py:151
+#, fuzzy
+#| msgid "The preferences have been saved successfully."
+msgid "You have been logged out successfully."
+msgstr "Свойства сохранены."
+
+#: aleksis/core/apps.py:161
 msgid "OpenID Connect scope"
 msgstr "Граница действия OpenID Connect"
 
-#: aleksis/core/apps.py:156
+#: aleksis/core/apps.py:162
 msgid "Given name, family name, link to profile and picture if existing."
 msgstr "Имя, фамилия, ссылка на профиль и фото, если есть."
 
-#: aleksis/core/apps.py:157
+#: aleksis/core/apps.py:163
 msgid "Full home postal address"
 msgstr "Полный домашний почтовый адрес"
 
-#: aleksis/core/apps.py:158
+#: aleksis/core/apps.py:164
 msgid "Email address"
 msgstr "Адрес эл.почты"
 
-#: aleksis/core/apps.py:159
+#: aleksis/core/apps.py:165
 msgid "Home and mobile phone"
 msgstr "Домашний и мобильный телефоны"
 
-#: aleksis/core/apps.py:160 aleksis/core/forms.py:220
-#: aleksis/core/models.py:494 aleksis/core/templates/core/group/list.html:8
+#: aleksis/core/apps.py:166 aleksis/core/forms.py:221
+#: aleksis/core/models.py:495 aleksis/core/templates/core/group/list.html:8
 #: aleksis/core/templates/core/group/list.html:9
 msgid "Groups"
 msgstr "Группы"
@@ -98,172 +104,172 @@ msgstr "Разрешение"
 msgid "Content type"
 msgstr "Тип содержимого"
 
-#: aleksis/core/filters.py:113 aleksis/core/models.py:720
+#: aleksis/core/filters.py:113 aleksis/core/models.py:721
 msgid "User"
 msgstr "Пользователь"
 
-#: aleksis/core/filters.py:135 aleksis/core/models.py:493
+#: aleksis/core/filters.py:135 aleksis/core/models.py:494
 msgid "Group"
 msgstr "Группа"
 
-#: aleksis/core/forms.py:50 aleksis/core/forms.py:581
+#: aleksis/core/forms.py:51 aleksis/core/forms.py:582
 msgid "Base data"
 msgstr "Основные данные"
 
-#: aleksis/core/forms.py:55 aleksis/core/tables.py:47
+#: aleksis/core/forms.py:56 aleksis/core/tables.py:47
 msgid "Address"
 msgstr "Адрес"
 
-#: aleksis/core/forms.py:56 aleksis/core/forms.py:590
+#: aleksis/core/forms.py:57 aleksis/core/forms.py:591
 msgid "Contact data"
 msgstr "Контактные данные"
 
-#: aleksis/core/forms.py:58
+#: aleksis/core/forms.py:59
 msgid "Advanced personal data"
 msgstr "Дополнительные личные данные"
 
-#: aleksis/core/forms.py:106
+#: aleksis/core/forms.py:107
 msgid "New user"
 msgstr "Новый пользователь"
 
-#: aleksis/core/forms.py:106
+#: aleksis/core/forms.py:107
 msgid "Create a new account"
 msgstr "Создать новую учётную запись"
 
-#: aleksis/core/forms.py:132
+#: aleksis/core/forms.py:133
 msgid "You cannot set a new username when also selecting an existing user."
 msgstr "После выбора существующего пользователя создать новый логин нельзя."
 
-#: aleksis/core/forms.py:136
+#: aleksis/core/forms.py:137
 msgid "This username is already in use."
 msgstr "Этот логин уже занят."
 
-#: aleksis/core/forms.py:153 aleksis/core/models.py:141
+#: aleksis/core/forms.py:154 aleksis/core/models.py:142
 msgid "School term"
 msgstr "Учебный год"
 
-#: aleksis/core/forms.py:154
+#: aleksis/core/forms.py:155
 msgid "Common data"
 msgstr "Общие данные"
 
-#: aleksis/core/forms.py:155 aleksis/core/forms.py:207
-#: aleksis/core/models.py:164 aleksis/core/templates/core/person/list.html:8
+#: aleksis/core/forms.py:156 aleksis/core/forms.py:208
+#: aleksis/core/models.py:165 aleksis/core/templates/core/person/list.html:8
 #: aleksis/core/templates/core/person/list.html:9
 msgid "Persons"
 msgstr "Люди"
 
-#: aleksis/core/forms.py:156 aleksis/core/forms.py:592
+#: aleksis/core/forms.py:157 aleksis/core/forms.py:593
 msgid "Additional data"
 msgstr "Дополнительные данные"
 
-#: aleksis/core/forms.py:157 aleksis/core/models.py:217
-#: aleksis/core/models.py:546 aleksis/core/tables.py:46
+#: aleksis/core/forms.py:158 aleksis/core/models.py:218
+#: aleksis/core/models.py:547 aleksis/core/tables.py:46
 msgid "Photo"
 msgstr "Фото"
 
-#: aleksis/core/forms.py:199 aleksis/core/forms.py:202
-#: aleksis/core/models.py:84
+#: aleksis/core/forms.py:200 aleksis/core/forms.py:203
+#: aleksis/core/models.py:85
 msgid "Date"
 msgstr "Дата"
 
-#: aleksis/core/forms.py:200 aleksis/core/forms.py:203
-#: aleksis/core/models.py:92
+#: aleksis/core/forms.py:201 aleksis/core/forms.py:204
+#: aleksis/core/models.py:93
 msgid "Time"
 msgstr "Время"
 
-#: aleksis/core/forms.py:233
+#: aleksis/core/forms.py:234
 msgid "From when until when should the announcement be displayed?"
 msgstr "С какого и по какое время это объявление должно отображаться?"
 
-#: aleksis/core/forms.py:236
+#: aleksis/core/forms.py:237
 msgid "Who should see the announcement?"
 msgstr "Кто должен видеть это объявление?"
 
-#: aleksis/core/forms.py:237
+#: aleksis/core/forms.py:238
 msgid "Write your announcement:"
 msgstr "Напишите свое объявление:"
 
-#: aleksis/core/forms.py:276
+#: aleksis/core/forms.py:277
 msgid "You are not allowed to create announcements which are only valid in the past."
 msgstr "Объявления для прошлого Вам создавать не разрешено."
 
-#: aleksis/core/forms.py:280
+#: aleksis/core/forms.py:281
 msgid "The from date and time must be earlier then the until date and time."
 msgstr "Дата и время начала должны быть до даты и времени окончания."
 
-#: aleksis/core/forms.py:289
+#: aleksis/core/forms.py:290
 msgid "You need at least one recipient."
 msgstr "Нужен хотя бы один получатель."
 
-#: aleksis/core/forms.py:398
+#: aleksis/core/forms.py:399
 msgid "Invitation code"
 msgstr "Код приглашения"
 
-#: aleksis/core/forms.py:399
+#: aleksis/core/forms.py:400
 msgid "Please enter your invitation code."
 msgstr "Укажите, пожалуйста, код приглашения."
 
-#: aleksis/core/forms.py:418 aleksis/core/models.py:192
+#: aleksis/core/forms.py:419 aleksis/core/models.py:193
 msgid "First name"
 msgstr "Имя"
 
-#: aleksis/core/forms.py:419 aleksis/core/models.py:193
+#: aleksis/core/forms.py:420 aleksis/core/models.py:194
 msgid "Last name"
 msgstr "Фамилия"
 
-#: aleksis/core/forms.py:428
+#: aleksis/core/forms.py:429
 msgid "A person is using this e-mail address"
 msgstr "Этот эл.адрес кем-то используется"
 
-#: aleksis/core/forms.py:456
+#: aleksis/core/forms.py:457
 msgid "Who should get the permission?"
 msgstr "Кто должен получить такое разрешение?"
 
-#: aleksis/core/forms.py:457
+#: aleksis/core/forms.py:458
 msgid "On what?"
 msgstr "В случае чего?"
 
-#: aleksis/core/forms.py:483
+#: aleksis/core/forms.py:484
 msgid "Select objects which the permission should be granted for:"
 msgstr "Отметьте объекты, к которым будет предоставлен доступ:"
 
-#: aleksis/core/forms.py:486
+#: aleksis/core/forms.py:487
 msgid "Grant the permission for all objects"
 msgstr "Предоставить доступ ко всем объектам"
 
-#: aleksis/core/forms.py:494
+#: aleksis/core/forms.py:495
 msgid "You must select at least one group or person which should get the permission."
 msgstr "Вам нужно выбрать хотя бы одну группу или физлицо, кто получит доступ."
 
-#: aleksis/core/forms.py:499
+#: aleksis/core/forms.py:500
 msgid "You must grant the permission to all objects or to specific objects."
 msgstr "Вы должны предоставить доступ ко всем или к конкретным объектам."
 
-#: aleksis/core/forms.py:586
+#: aleksis/core/forms.py:587
 msgid "Address data"
 msgstr "Подробности адреса"
 
-#: aleksis/core/forms.py:598
+#: aleksis/core/forms.py:599
 msgid "Account data"
 msgstr "Данные учётной записи"
 
-#: aleksis/core/forms.py:605
+#: aleksis/core/forms.py:606
 msgid "Password"
 msgstr "Пароль"
 
-#: aleksis/core/forms.py:608
+#: aleksis/core/forms.py:609
 msgid "Password (again)"
 msgstr "Пароль (ещё раз)"
 
-#: aleksis/core/forms.py:761
+#: aleksis/core/forms.py:762
 msgid "The selected action does not exist."
 msgstr "Выбранное действие не существует."
 
-#: aleksis/core/forms.py:772
+#: aleksis/core/forms.py:773
 msgid "You do not have permission to run {} on all selected objects."
 msgstr "У Вас нет разрешения на запуск {} на всех выбранных объектах."
 
-#: aleksis/core/forms.py:828
+#: aleksis/core/forms.py:829
 msgid "No valid selection."
 msgstr "Неправильный выбор."
 
@@ -291,658 +297,658 @@ msgstr "Результат резервного копирования не на
 msgid "Linked school term"
 msgstr "Связанный учебный год"
 
-#: aleksis/core/models.py:82
+#: aleksis/core/models.py:83
 msgid "Boolean (Yes/No)"
 msgstr "Булево (Да/Нет)"
 
-#: aleksis/core/models.py:83
+#: aleksis/core/models.py:84
 msgid "Text (one line)"
 msgstr "Текст (одна строка)"
 
-#: aleksis/core/models.py:85
+#: aleksis/core/models.py:86
 msgid "Date and time"
 msgstr "Дата и время"
 
-#: aleksis/core/models.py:86
+#: aleksis/core/models.py:87
 msgid "Decimal number"
 msgstr "Десятичное число"
 
-#: aleksis/core/models.py:87 aleksis/core/models.py:210
+#: aleksis/core/models.py:88 aleksis/core/models.py:211
 msgid "E-mail address"
 msgstr "Адрес эл.почты"
 
-#: aleksis/core/models.py:88
+#: aleksis/core/models.py:89
 msgid "Integer"
 msgstr "Целое"
 
-#: aleksis/core/models.py:89
+#: aleksis/core/models.py:90
 msgid "IP address"
 msgstr "IP адрес"
 
-#: aleksis/core/models.py:90
+#: aleksis/core/models.py:91
 msgid "Boolean or empty (Yes/No/Neither)"
 msgstr "Булево или пустое (Да/Нет/Ничего)"
 
-#: aleksis/core/models.py:91
+#: aleksis/core/models.py:92
 msgid "Text (multi-line)"
 msgstr "Текст (многострочный)"
 
-#: aleksis/core/models.py:93
+#: aleksis/core/models.py:94
 msgid "URL / Link"
 msgstr "URL / Ссылка"
 
-#: aleksis/core/models.py:105 aleksis/core/models.py:1077
+#: aleksis/core/models.py:106 aleksis/core/models.py:1078
 msgid "Name"
 msgstr "Имя"
 
-#: aleksis/core/models.py:107
+#: aleksis/core/models.py:108
 msgid "Start date"
 msgstr "Дата начала"
 
-#: aleksis/core/models.py:108
+#: aleksis/core/models.py:109
 msgid "End date"
 msgstr "Дата окончания"
 
-#: aleksis/core/models.py:127
+#: aleksis/core/models.py:128
 msgid "The start date must be earlier than the end date."
 msgstr "Дата начала должна быть ранее даты окончания."
 
-#: aleksis/core/models.py:134
+#: aleksis/core/models.py:135
 msgid "There is already a school term for this time or a part of this time."
 msgstr "На это время или на его часть уже запланирован учебный год."
 
-#: aleksis/core/models.py:142
+#: aleksis/core/models.py:143
 #: aleksis/core/templates/core/school_term/list.html:8
 #: aleksis/core/templates/core/school_term/list.html:9
 msgid "School terms"
 msgstr "Учебный год"
 
-#: aleksis/core/models.py:163 aleksis/core/models.py:1026
+#: aleksis/core/models.py:164 aleksis/core/models.py:1027
 msgid "Person"
 msgstr "Физлицо"
 
-#: aleksis/core/models.py:166
+#: aleksis/core/models.py:167
 msgid "Can view address"
 msgstr "Может видеть адрес"
 
-#: aleksis/core/models.py:167
+#: aleksis/core/models.py:168
 msgid "Can view contact details"
 msgstr "Может видеть контактные данные"
 
-#: aleksis/core/models.py:168
+#: aleksis/core/models.py:169
 msgid "Can view photo"
 msgstr "Может видеть фото"
 
-#: aleksis/core/models.py:169
+#: aleksis/core/models.py:170
 msgid "Can view avatar image"
 msgstr "Может видеть аватар"
 
-#: aleksis/core/models.py:170
+#: aleksis/core/models.py:171
 msgid "Can view persons groups"
 msgstr "Может видеть группы лиц"
 
-#: aleksis/core/models.py:171
+#: aleksis/core/models.py:172
 msgid "Can view personal details"
 msgstr "Может видеть личные данные"
 
-#: aleksis/core/models.py:181
+#: aleksis/core/models.py:182
 msgid "female"
 msgstr "жен"
 
-#: aleksis/core/models.py:181
+#: aleksis/core/models.py:182
 msgid "male"
 msgstr "муж"
 
-#: aleksis/core/models.py:181
+#: aleksis/core/models.py:182
 msgid "other"
 msgstr "другой"
 
-#: aleksis/core/models.py:189 aleksis/core/models.py:1353
+#: aleksis/core/models.py:190 aleksis/core/models.py:1382
 msgid "Linked user"
 msgstr "Связанный пользователь"
 
-#: aleksis/core/models.py:195
+#: aleksis/core/models.py:196
 msgid "Additional name(s)"
 msgstr "Дополнительные имена"
 
-#: aleksis/core/models.py:199 aleksis/core/models.py:511
-#: aleksis/core/models.py:1439
+#: aleksis/core/models.py:200 aleksis/core/models.py:512
+#: aleksis/core/models.py:1468
 msgid "Short name"
 msgstr "Короткое имя"
 
-#: aleksis/core/models.py:202
+#: aleksis/core/models.py:203
 msgid "Street"
 msgstr "Улица"
 
-#: aleksis/core/models.py:203
+#: aleksis/core/models.py:204
 msgid "Street number"
 msgstr "Номер дома"
 
-#: aleksis/core/models.py:204
+#: aleksis/core/models.py:205
 msgid "Postal code"
 msgstr "Почтовый индекс"
 
-#: aleksis/core/models.py:205
+#: aleksis/core/models.py:206
 msgid "Place"
 msgstr "Город/место"
 
-#: aleksis/core/models.py:207
+#: aleksis/core/models.py:208
 msgid "Home phone"
 msgstr "Домашний телефон"
 
-#: aleksis/core/models.py:208
+#: aleksis/core/models.py:209
 msgid "Mobile phone"
 msgstr "Мобильный телефон"
 
-#: aleksis/core/models.py:212
+#: aleksis/core/models.py:213
 msgid "Date of birth"
 msgstr "Дата рождения"
 
-#: aleksis/core/models.py:213
+#: aleksis/core/models.py:214
 msgid "Place of birth"
 msgstr "Место рождения"
 
-#: aleksis/core/models.py:214
+#: aleksis/core/models.py:215
 msgid "Sex"
 msgstr "Пол"
 
-#: aleksis/core/models.py:221 aleksis/core/models.py:550
+#: aleksis/core/models.py:222 aleksis/core/models.py:551
 msgid "This is an official photo, used for official documents and for internal use cases."
 msgstr "Это официальное фото, которое используется для документов и внутренних нужд."
 
-#: aleksis/core/models.py:226 aleksis/core/models.py:554
+#: aleksis/core/models.py:227 aleksis/core/models.py:555
 msgid "Display picture / Avatar"
 msgstr "Отобразить фото/аватар"
 
-#: aleksis/core/models.py:229 aleksis/core/models.py:557
+#: aleksis/core/models.py:230 aleksis/core/models.py:558
 msgid "This is a picture or an avatar for public display."
 msgstr "Это фото или аватар для общего отображения."
 
-#: aleksis/core/models.py:234
+#: aleksis/core/models.py:235
 msgid "Guardians / Parents"
 msgstr "Опекуны / Родители"
 
-#: aleksis/core/models.py:241
+#: aleksis/core/models.py:242
 msgid "Primary group"
 msgstr "Основная группа"
 
-#: aleksis/core/models.py:244 aleksis/core/models.py:724
-#: aleksis/core/models.py:748 aleksis/core/models.py:843
-#: aleksis/core/models.py:1112
+#: aleksis/core/models.py:245 aleksis/core/models.py:725
+#: aleksis/core/models.py:749 aleksis/core/models.py:844
+#: aleksis/core/models.py:1113
 msgid "Description"
 msgstr "Описание"
 
-#: aleksis/core/models.py:464
+#: aleksis/core/models.py:465
 msgid "Title of field"
 msgstr "Название поля"
 
-#: aleksis/core/models.py:466
+#: aleksis/core/models.py:467
 msgid "Type of field"
 msgstr "Тип поля"
 
-#: aleksis/core/models.py:468
+#: aleksis/core/models.py:469
 msgid "Required"
 msgstr "Необходимое"
 
-#: aleksis/core/models.py:469
+#: aleksis/core/models.py:470
 msgid "Help text / description"
 msgstr "Вспомогательный текст / описание"
 
-#: aleksis/core/models.py:475
+#: aleksis/core/models.py:476
 msgid "Addtitional field for groups"
 msgstr "Дополнительное поле для групп"
 
-#: aleksis/core/models.py:476
+#: aleksis/core/models.py:477
 msgid "Addtitional fields for groups"
 msgstr "Дополнительные поля для групп"
 
-#: aleksis/core/models.py:496
+#: aleksis/core/models.py:497
 msgid "Can assign child groups to groups"
 msgstr "Может определять дочерние группы в группы"
 
-#: aleksis/core/models.py:497
+#: aleksis/core/models.py:498
 msgid "Can view statistics about group."
 msgstr "Может видеть статистику группы."
 
-#: aleksis/core/models.py:509 aleksis/core/models.py:1440
+#: aleksis/core/models.py:510 aleksis/core/models.py:1469
 msgid "Long name"
 msgstr "Длинное имя"
 
-#: aleksis/core/models.py:519 aleksis/core/templates/core/group/full.html:105
+#: aleksis/core/models.py:520 aleksis/core/templates/core/group/full.html:105
 msgid "Members"
 msgstr "Участники"
 
-#: aleksis/core/models.py:522 aleksis/core/templates/core/group/full.html:102
+#: aleksis/core/models.py:523 aleksis/core/templates/core/group/full.html:102
 msgid "Owners"
 msgstr "Владельцы"
 
-#: aleksis/core/models.py:529 aleksis/core/templates/core/group/full.html:59
+#: aleksis/core/models.py:530 aleksis/core/templates/core/group/full.html:59
 msgid "Parent groups"
 msgstr "Родительские группы"
 
-#: aleksis/core/models.py:537
+#: aleksis/core/models.py:538
 msgid "Type of group"
 msgstr "Тип группы"
 
-#: aleksis/core/models.py:542
+#: aleksis/core/models.py:543
 #: aleksis/core/templates/core/additional_field/list.html:8
 #: aleksis/core/templates/core/additional_field/list.html:9
 msgid "Additional fields"
 msgstr "Дополнительные поля"
 
-#: aleksis/core/models.py:723 aleksis/core/models.py:747
-#: aleksis/core/models.py:842 aleksis/core/models.py:1270
+#: aleksis/core/models.py:724 aleksis/core/models.py:748
+#: aleksis/core/models.py:843 aleksis/core/models.py:1299
 #: aleksis/core/templates/core/announcement/list.html:18
 msgid "Title"
 msgstr "Название"
 
-#: aleksis/core/models.py:726
+#: aleksis/core/models.py:727
 msgid "Application"
 msgstr "Приложение"
 
-#: aleksis/core/models.py:732
+#: aleksis/core/models.py:733
 msgid "Activity"
 msgstr "Активность"
 
-#: aleksis/core/models.py:733
+#: aleksis/core/models.py:734
 msgid "Activities"
 msgstr "Активности"
 
-#: aleksis/core/models.py:739
+#: aleksis/core/models.py:740
 msgid "Sender"
 msgstr "Отправитель"
 
-#: aleksis/core/models.py:744
+#: aleksis/core/models.py:745
 msgid "Recipient"
 msgstr "Получатель"
 
-#: aleksis/core/models.py:749 aleksis/core/models.py:1078
+#: aleksis/core/models.py:750 aleksis/core/models.py:1079
 msgid "Link"
 msgstr "Ссылка"
 
-#: aleksis/core/models.py:752 aleksis/core/models.py:1079
-#: aleksis/core/models.py:1400
+#: aleksis/core/models.py:753 aleksis/core/models.py:1080
+#: aleksis/core/models.py:1429
 #: aleksis/core/templates/oauth2_provider/application/detail.html:26
 msgid "Icon"
 msgstr "Иконка"
 
-#: aleksis/core/models.py:755
+#: aleksis/core/models.py:756
 msgid "Send notification at"
 msgstr "Отправить уведомление в"
 
-#: aleksis/core/models.py:757
+#: aleksis/core/models.py:758
 msgid "Read"
 msgstr "Читать"
 
-#: aleksis/core/models.py:758
+#: aleksis/core/models.py:759
 msgid "Sent"
 msgstr "Отправлено"
 
-#: aleksis/core/models.py:775
+#: aleksis/core/models.py:776
 msgid "Notification"
 msgstr "Уведомление"
 
-#: aleksis/core/models.py:776 aleksis/core/preferences.py:29
+#: aleksis/core/models.py:777 aleksis/core/preferences.py:29
 msgid "Notifications"
 msgstr "Уведомления"
 
-#: aleksis/core/models.py:844
+#: aleksis/core/models.py:845
 msgid "Link to detailed view"
 msgstr "Ссылка на подробный обзор"
 
-#: aleksis/core/models.py:847
+#: aleksis/core/models.py:848
 msgid "Date and time from when to show"
 msgstr "Дата и время, с которого показывать"
 
-#: aleksis/core/models.py:850
+#: aleksis/core/models.py:851
 msgid "Date and time until when to show"
 msgstr "Дата и время, по какое показывать"
 
-#: aleksis/core/models.py:875
+#: aleksis/core/models.py:876
 msgid "Announcement"
 msgstr "Объявление"
 
-#: aleksis/core/models.py:876
+#: aleksis/core/models.py:877
 #: aleksis/core/templates/core/announcement/list.html:7
 #: aleksis/core/templates/core/announcement/list.html:8
 msgid "Announcements"
 msgstr "Объявление"
 
-#: aleksis/core/models.py:913
+#: aleksis/core/models.py:914
 msgid "Announcement recipient"
 msgstr "Получатель объявления"
 
-#: aleksis/core/models.py:914
+#: aleksis/core/models.py:915
 msgid "Announcement recipients"
 msgstr "Получатели объявления"
 
-#: aleksis/core/models.py:934
+#: aleksis/core/models.py:935
 msgid "Widget Title"
 msgstr "Название виджета"
 
-#: aleksis/core/models.py:935
+#: aleksis/core/models.py:936
 msgid "Activate Widget"
 msgstr "Активировать виджет"
 
-#: aleksis/core/models.py:936
+#: aleksis/core/models.py:937
 msgid "Widget is broken"
 msgstr "Виджет поломался"
 
-#: aleksis/core/models.py:939
+#: aleksis/core/models.py:940
 msgid "Size on mobile devices"
 msgstr "Размер на мобильных"
 
-#: aleksis/core/models.py:940
+#: aleksis/core/models.py:941
 msgid "<= 600 px, 12 columns"
 msgstr "<= 600 пикс, 12 столбцов"
 
-#: aleksis/core/models.py:945
+#: aleksis/core/models.py:946
 msgid "Size on tablet devices"
 msgstr "Размер на планшетах"
 
-#: aleksis/core/models.py:946
+#: aleksis/core/models.py:947
 msgid "> 600 px, 12 columns"
 msgstr "> 600 пикс, 12 столбцов"
 
-#: aleksis/core/models.py:951
+#: aleksis/core/models.py:952
 msgid "Size on desktop devices"
 msgstr "Размер на ПК"
 
-#: aleksis/core/models.py:952
+#: aleksis/core/models.py:953
 msgid "> 992 px, 12 columns"
 msgstr "> 992 пикс, 12 столбцов"
 
-#: aleksis/core/models.py:957
+#: aleksis/core/models.py:958
 msgid "Size on large desktop devices"
 msgstr "Размер для больших экранов"
 
-#: aleksis/core/models.py:958
+#: aleksis/core/models.py:959
 msgid "> 1200 px>, 12 columns"
 msgstr "> 1200 пикс, 12 столбцов"
 
-#: aleksis/core/models.py:989
+#: aleksis/core/models.py:990
 msgid "Can edit default dashboard"
 msgstr "Может редактировать типовую/стандартную информпанель"
 
-#: aleksis/core/models.py:990
+#: aleksis/core/models.py:991
 msgid "Dashboard Widget"
 msgstr "Виджет информпанели"
 
-#: aleksis/core/models.py:991
+#: aleksis/core/models.py:992
 msgid "Dashboard Widgets"
 msgstr "Виджеты информпанели"
 
-#: aleksis/core/models.py:997
+#: aleksis/core/models.py:998
 msgid "URL"
 msgstr "URL"
 
-#: aleksis/core/models.py:998
+#: aleksis/core/models.py:999
 msgid "Icon URL"
 msgstr "Иконка URL"
 
-#: aleksis/core/models.py:1004
+#: aleksis/core/models.py:1005
 msgid "External link widget"
 msgstr "Внешняя ссылка на виджет"
 
-#: aleksis/core/models.py:1005
+#: aleksis/core/models.py:1006
 msgid "External link widgets"
 msgstr "Внешние ссылки на виджеты"
 
-#: aleksis/core/models.py:1011
+#: aleksis/core/models.py:1012
 msgid "Content"
 msgstr "Содержимое"
 
-#: aleksis/core/models.py:1017
+#: aleksis/core/models.py:1018
 msgid "Static content widget"
 msgstr "Виджет с постоянным содержимым"
 
-#: aleksis/core/models.py:1018
+#: aleksis/core/models.py:1019
 msgid "Static content widgets"
 msgstr "Виджеты с постоянным содержимым"
 
-#: aleksis/core/models.py:1023
+#: aleksis/core/models.py:1024
 msgid "Dashboard widget"
 msgstr "Виджет информпанели"
 
-#: aleksis/core/models.py:1028
+#: aleksis/core/models.py:1029
 msgid "Order"
 msgstr "Порядок"
 
-#: aleksis/core/models.py:1029
+#: aleksis/core/models.py:1030
 msgid "Part of the default dashboard"
 msgstr "Часть типовой информпанели"
 
-#: aleksis/core/models.py:1044
+#: aleksis/core/models.py:1045
 msgid "Dashboard widget order"
 msgstr "Порядок виджета на информпанели"
 
-#: aleksis/core/models.py:1045
+#: aleksis/core/models.py:1046
 msgid "Dashboard widget orders"
 msgstr "Порядок виджетов на информпанели"
 
-#: aleksis/core/models.py:1051
+#: aleksis/core/models.py:1052
 msgid "Menu ID"
 msgstr "Меню ID"
 
-#: aleksis/core/models.py:1064
+#: aleksis/core/models.py:1065
 msgid "Custom menu"
 msgstr "Пользовательское меню"
 
-#: aleksis/core/models.py:1065
+#: aleksis/core/models.py:1066
 msgid "Custom menus"
 msgstr "Пользовательские меню"
 
-#: aleksis/core/models.py:1075
+#: aleksis/core/models.py:1076
 msgid "Menu"
 msgstr "Меню"
 
-#: aleksis/core/models.py:1085
+#: aleksis/core/models.py:1086
 msgid "Custom menu item"
 msgstr "Пункт пользовательского меню"
 
-#: aleksis/core/models.py:1086
+#: aleksis/core/models.py:1087
 msgid "Custom menu items"
 msgstr "Пункты пользовательского меню"
 
-#: aleksis/core/models.py:1111
+#: aleksis/core/models.py:1112
 msgid "Title of type"
 msgstr "Название типа"
 
-#: aleksis/core/models.py:1118 aleksis/core/templates/core/group/full.html:50
+#: aleksis/core/models.py:1119 aleksis/core/templates/core/group/full.html:50
 msgid "Group type"
 msgstr "Тип группы"
 
-#: aleksis/core/models.py:1119
+#: aleksis/core/models.py:1120
 #: aleksis/core/templates/core/group_type/list.html:8
 #: aleksis/core/templates/core/group_type/list.html:9
 msgid "Group types"
 msgstr "Типы групп"
 
-#: aleksis/core/models.py:1132
+#: aleksis/core/models.py:1133
 msgid "Can view system status"
 msgstr "Может просматривать состояние системы"
 
-#: aleksis/core/models.py:1133
+#: aleksis/core/models.py:1134
 msgid "Can manage data"
 msgstr "Может управлять данными"
 
-#: aleksis/core/models.py:1134
+#: aleksis/core/models.py:1135
 msgid "Can impersonate"
 msgstr "Может маскироваться"
 
-#: aleksis/core/models.py:1135
+#: aleksis/core/models.py:1136
 msgid "Can use search"
 msgstr "Может использовать поиск"
 
-#: aleksis/core/models.py:1136
+#: aleksis/core/models.py:1137
 msgid "Can change site preferences"
 msgstr "Может менять свойства сайта"
 
-#: aleksis/core/models.py:1137
+#: aleksis/core/models.py:1138
 msgid "Can change person preferences"
 msgstr "Может менять персональные свойства"
 
-#: aleksis/core/models.py:1138
+#: aleksis/core/models.py:1139
 msgid "Can change group preferences"
 msgstr "Может менять свойства группы"
 
-#: aleksis/core/models.py:1139
+#: aleksis/core/models.py:1140
 msgid "Can test PDF generation"
 msgstr "Может генерировать тестовые PDF"
 
-#: aleksis/core/models.py:1140
+#: aleksis/core/models.py:1141
 msgid "Can invite persons"
 msgstr "Может приглашать других"
 
-#: aleksis/core/models.py:1176
+#: aleksis/core/models.py:1177
 msgid "Related data check task"
 msgstr "Задание проверки связанных данных"
 
-#: aleksis/core/models.py:1184
+#: aleksis/core/models.py:1185
 msgid "Issue solved"
 msgstr "Проблема решена"
 
-#: aleksis/core/models.py:1185
+#: aleksis/core/models.py:1186
 msgid "Notification sent"
 msgstr "Уведомление отправлено"
 
-#: aleksis/core/models.py:1198
+#: aleksis/core/models.py:1199
 msgid "Data check result"
 msgstr "Результат проверки данных"
 
-#: aleksis/core/models.py:1199
+#: aleksis/core/models.py:1200
 msgid "Data check results"
 msgstr "Результаты проверки данных"
 
-#: aleksis/core/models.py:1201
+#: aleksis/core/models.py:1202
 msgid "Can run data checks"
 msgstr "Может запускать проверки данных"
 
-#: aleksis/core/models.py:1202
+#: aleksis/core/models.py:1203
 msgid "Can solve data check problems"
 msgstr "Может решать проблемы проверки данных"
 
-#: aleksis/core/models.py:1209
+#: aleksis/core/models.py:1210
 msgid "E-Mail address"
 msgstr "Адрес эл.почты"
 
-#: aleksis/core/models.py:1241
+#: aleksis/core/models.py:1270
 msgid "Owner"
 msgstr "Владелец"
 
-#: aleksis/core/models.py:1245
+#: aleksis/core/models.py:1274
 msgid "File expires at"
 msgstr "Файл действителен до"
 
-#: aleksis/core/models.py:1248
+#: aleksis/core/models.py:1277
 msgid "Generated HTML file"
 msgstr "Сгенерированный файл HTML"
 
-#: aleksis/core/models.py:1251
+#: aleksis/core/models.py:1280
 msgid "Generated PDF file"
 msgstr "Сгенерированный файл PDF"
 
-#: aleksis/core/models.py:1258
+#: aleksis/core/models.py:1287
 msgid "PDF file"
 msgstr "Файл PDF"
 
-#: aleksis/core/models.py:1259
+#: aleksis/core/models.py:1288
 msgid "PDF files"
 msgstr "Файлы PDF"
 
-#: aleksis/core/models.py:1264
+#: aleksis/core/models.py:1293
 msgid "Task result"
 msgstr "Результат задания"
 
-#: aleksis/core/models.py:1267
+#: aleksis/core/models.py:1296
 msgid "Task user"
 msgstr "Пользователь задания"
 
-#: aleksis/core/models.py:1271
+#: aleksis/core/models.py:1300
 msgid "Back URL"
 msgstr "URL для возврата"
 
-#: aleksis/core/models.py:1272
+#: aleksis/core/models.py:1301
 msgid "Progress title"
 msgstr "Название процесса"
 
-#: aleksis/core/models.py:1273
+#: aleksis/core/models.py:1302
 msgid "Error message"
 msgstr "Сообщение об ошибке"
 
-#: aleksis/core/models.py:1274
+#: aleksis/core/models.py:1303
 msgid "Success message"
 msgstr "Сообщение об успехе"
 
-#: aleksis/core/models.py:1275
+#: aleksis/core/models.py:1304
 msgid "Redirect on success URL"
 msgstr "URL для перенаправления в случае успеха"
 
-#: aleksis/core/models.py:1277
+#: aleksis/core/models.py:1306
 msgid "Additional button title"
 msgstr "Название дополнительной кнопки"
 
-#: aleksis/core/models.py:1279
+#: aleksis/core/models.py:1308
 msgid "Additional button URL"
 msgstr "URL дополнительной кнопки"
 
-#: aleksis/core/models.py:1281
+#: aleksis/core/models.py:1310
 msgid "Additional button icon"
 msgstr "Иконка дополнительной кнопки"
 
-#: aleksis/core/models.py:1283
+#: aleksis/core/models.py:1312
 msgid "Result fetched"
 msgstr "Полученный результат"
 
-#: aleksis/core/models.py:1308
+#: aleksis/core/models.py:1337
 msgid "Background task completed successfully"
 msgstr "Фоновое задание успешно завершено"
 
-#: aleksis/core/models.py:1309
+#: aleksis/core/models.py:1338
 msgid "The background task '{}' has been completed successfully."
 msgstr "Фоновое задание \"{}\" успешно завершено."
 
-#: aleksis/core/models.py:1315
+#: aleksis/core/models.py:1344
 msgid "Background task failed"
 msgstr "Ошибка фонового задания"
 
-#: aleksis/core/models.py:1316
+#: aleksis/core/models.py:1345
 msgid "The background task '{}' has failed."
 msgstr "Ошибка фонового задания \"{}\"."
 
-#: aleksis/core/models.py:1325
+#: aleksis/core/models.py:1354
 msgid "Background task"
 msgstr "Фоновое задание"
 
-#: aleksis/core/models.py:1339
+#: aleksis/core/models.py:1368
 msgid "Task user assignment"
 msgstr "Назначение пользователя задания"
 
-#: aleksis/core/models.py:1340
+#: aleksis/core/models.py:1369
 msgid "Task user assignments"
 msgstr "Назначения пользователей задания"
 
-#: aleksis/core/models.py:1356
+#: aleksis/core/models.py:1385
 msgid "Additional attributes"
 msgstr "Дополнительные атрибуты"
 
-#: aleksis/core/models.py:1394
+#: aleksis/core/models.py:1423
 msgid "Allowed scopes that clients can request"
 msgstr "Разрешённые пределы действия, которые могут запрашивать клиенты"
 
-#: aleksis/core/models.py:1404
+#: aleksis/core/models.py:1433
 msgid "This image will be shown as icon in the authorization flow. It should be squared."
 msgstr "Это изображение будет использоваться в качестве значка во время авторизации. Должно быть квадратным."
 
-#: aleksis/core/models.py:1449
+#: aleksis/core/models.py:1478
 msgid "Can view room timetable"
 msgstr "Может просмативать расписание комнаты"
 
-#: aleksis/core/models.py:1451
+#: aleksis/core/models.py:1480
 msgid "Room"
 msgstr "Комната"
 
-#: aleksis/core/models.py:1452
+#: aleksis/core/models.py:1481
 msgid "Rooms"
 msgstr "Комнаты"
 
@@ -1154,15 +1160,15 @@ msgstr "Автоматически обновлять информпанель 
 msgid "Country for phone number parsing"
 msgstr "Страна для парсинга номера телефона"
 
-#: aleksis/core/settings.py:549
+#: aleksis/core/settings.py:551
 msgid "English"
 msgstr "Английский"
 
-#: aleksis/core/settings.py:550
+#: aleksis/core/settings.py:552
 msgid "German"
 msgstr "Немецкий"
 
-#: aleksis/core/settings.py:551
+#: aleksis/core/settings.py:553
 msgid "Ukrainian"
 msgstr "Украинский"
 
@@ -1174,14 +1180,14 @@ msgid "Edit"
 msgstr "Редактировать"
 
 #: aleksis/core/tables.py:27 aleksis/core/tables.py:148
-#: aleksis/core/tables.py:192
+#: aleksis/core/tables.py:185
 #: aleksis/core/templates/core/announcement/list.html:22
 msgid "Actions"
 msgstr "Действия"
 
 #: aleksis/core/tables.py:115 aleksis/core/tables.py:116
 #: aleksis/core/tables.py:130 aleksis/core/tables.py:146
-#: aleksis/core/tables.py:190
+#: aleksis/core/tables.py:183
 #: aleksis/core/templates/core/announcement/list.html:42
 #: aleksis/core/templates/core/group/full.html:33
 #: aleksis/core/templates/core/pages/delete.html:22
@@ -1246,7 +1252,7 @@ msgstr ""
 "            Вы также можете обратиться к ним непосредственно:\n"
 "          "
 
-#: aleksis/core/templates/500.html:21
+#: aleksis/core/templates/500.html:21 aleksis/core/templates/offline.html:22
 msgid "Retry"
 msgstr "Попытаться ещё"
 
@@ -1602,20 +1608,20 @@ msgstr "Создать %(name)s"
 msgid "Edit default dashboard"
 msgstr "Редактировать стандартную информпанель"
 
-#: aleksis/core/templates/core/data_check/list.html:9
 #: aleksis/core/templates/core/data_check/list.html:10
+#: aleksis/core/templates/core/data_check/list.html:11
 msgid "Data checks"
 msgstr "Проверки данных"
 
-#: aleksis/core/templates/core/data_check/list.html:15
+#: aleksis/core/templates/core/data_check/list.html:16
 msgid "Check data again"
 msgstr "Проверить данные ещё раз"
 
-#: aleksis/core/templates/core/data_check/list.html:22
+#: aleksis/core/templates/core/data_check/list.html:23
 msgid "The system detected some problems with your data."
 msgstr "Система обнаружила некоторые проблемы с Вашими данными."
 
-#: aleksis/core/templates/core/data_check/list.html:23
+#: aleksis/core/templates/core/data_check/list.html:24
 msgid ""
 "Please go through all data and check whether some extra action is\n"
 "          needed."
@@ -1623,43 +1629,43 @@ msgstr ""
 "Пожалуйста, пересмотрите внимательно все данные и проверьте не нужно ли\n"
 "          что-то сделать."
 
-#: aleksis/core/templates/core/data_check/list.html:31
+#: aleksis/core/templates/core/data_check/list.html:32
 msgid "Everything is fine."
 msgstr "Всё прекрасно."
 
-#: aleksis/core/templates/core/data_check/list.html:32
+#: aleksis/core/templates/core/data_check/list.html:33
 msgid "The system hasn't detected any problems with your data."
 msgstr "Система не обнаружила никаких проблем с Вашими данными."
 
-#: aleksis/core/templates/core/data_check/list.html:40
+#: aleksis/core/templates/core/data_check/list.html:41
 msgid "Detected problems"
 msgstr "Обнаруженные проблемы"
 
-#: aleksis/core/templates/core/data_check/list.html:45
+#: aleksis/core/templates/core/data_check/list.html:46
 msgid "Affected object"
 msgstr "Зависимые объекты"
 
-#: aleksis/core/templates/core/data_check/list.html:46
+#: aleksis/core/templates/core/data_check/list.html:47
 msgid "Detected problem"
 msgstr "Обнаружена проблема"
 
-#: aleksis/core/templates/core/data_check/list.html:47
+#: aleksis/core/templates/core/data_check/list.html:48
 msgid "Show details"
 msgstr "Подробнее"
 
-#: aleksis/core/templates/core/data_check/list.html:48
+#: aleksis/core/templates/core/data_check/list.html:49
 msgid "Options to solve the problem"
 msgstr "Варианты решения проблемы"
 
-#: aleksis/core/templates/core/data_check/list.html:63
+#: aleksis/core/templates/core/data_check/list.html:65
 msgid "Show object"
 msgstr "Посмотреть объект"
 
-#: aleksis/core/templates/core/data_check/list.html:86
+#: aleksis/core/templates/core/data_check/list.html:89
 msgid "Registered checks"
 msgstr "Зарегистрированные проверки"
 
-#: aleksis/core/templates/core/data_check/list.html:90
+#: aleksis/core/templates/core/data_check/list.html:93
 msgid ""
 "\n"
 "            The system will check for the following problems:\n"
@@ -1916,33 +1922,38 @@ msgstr "Состояние системы"
 msgid "System checks"
 msgstr "Системные проверки"
 
-#: aleksis/core/templates/core/pages/system_status.html:22
+#: aleksis/core/templates/core/pages/system_status.html:26
 msgid "Maintenance mode enabled"
 msgstr "Включен режим обслуживания"
 
-#: aleksis/core/templates/core/pages/system_status.html:24
+#: aleksis/core/templates/core/pages/system_status.html:28
+#, fuzzy
+#| msgid ""
+#| "\n"
+#| "                Only admin and visitors from internal IPs can access the site.\n"
+#| "              "
 msgid ""
 "\n"
-"                Only admin and visitors from internal IPs can access the site.\n"
-"              "
+"                  Only admin and visitors from internal IPs can access the site.\n"
+"                "
 msgstr ""
 "\n"
 "                Доступ к сайту имеют только администратор и пользователи с внутренними IP-адресами.\n"
 "              "
 
-#: aleksis/core/templates/core/pages/system_status.html:36
+#: aleksis/core/templates/core/pages/system_status.html:39
 msgid "Maintenance mode disabled"
 msgstr "Режим обслуживания выключен"
 
-#: aleksis/core/templates/core/pages/system_status.html:37
+#: aleksis/core/templates/core/pages/system_status.html:40
 msgid "Everyone can access the site."
 msgstr "Доступ к сайту есть у всех."
 
-#: aleksis/core/templates/core/pages/system_status.html:47
+#: aleksis/core/templates/core/pages/system_status.html:51
 msgid "Debug mode enabled"
 msgstr "Режим отладки включен"
 
-#: aleksis/core/templates/core/pages/system_status.html:49
+#: aleksis/core/templates/core/pages/system_status.html:53
 msgid ""
 "\n"
 "                The web server throws back debug information on errors. Do not use in production!\n"
@@ -1952,11 +1963,11 @@ msgstr ""
 "                Веб-сервер во время ошибок пишет отладочную информацию. Не используйте в продакшене!\n"
 "              "
 
-#: aleksis/core/templates/core/pages/system_status.html:56
+#: aleksis/core/templates/core/pages/system_status.html:60
 msgid "Debug mode disabled"
 msgstr "Режим отладки отключен"
 
-#: aleksis/core/templates/core/pages/system_status.html:58
+#: aleksis/core/templates/core/pages/system_status.html:62
 msgid ""
 "\n"
 "                Debug mode is disabled. Default error pages are displayed on errors.\n"
@@ -1966,42 +1977,42 @@ msgstr ""
 "                Режим отладки отключен. В случае ошибок будут отображаться стандартные страницы об ошибках.\n"
 "              "
 
-#: aleksis/core/templates/core/pages/system_status.html:71
+#: aleksis/core/templates/core/pages/system_status.html:75
 msgid "System health checks"
 msgstr "Проверки работы системы"
 
-#: aleksis/core/templates/core/pages/system_status.html:77
+#: aleksis/core/templates/core/pages/system_status.html:81
 msgid "Service"
 msgstr "Служба"
 
-#: aleksis/core/templates/core/pages/system_status.html:78
-#: aleksis/core/templates/core/pages/system_status.html:119
+#: aleksis/core/templates/core/pages/system_status.html:82
+#: aleksis/core/templates/core/pages/system_status.html:123
 msgid "Status"
 msgstr "Состояние"
 
-#: aleksis/core/templates/core/pages/system_status.html:79
+#: aleksis/core/templates/core/pages/system_status.html:83
 msgid "Time taken"
 msgstr "Продолжительность"
 
-#: aleksis/core/templates/core/pages/system_status.html:100
+#: aleksis/core/templates/core/pages/system_status.html:104
 msgid "seconds"
 msgstr "сек"
 
-#: aleksis/core/templates/core/pages/system_status.html:111
+#: aleksis/core/templates/core/pages/system_status.html:115
 msgid "Celery task results"
 msgstr "Результаты выполнения Celery"
 
-#: aleksis/core/templates/core/pages/system_status.html:116
+#: aleksis/core/templates/core/pages/system_status.html:120
 #: aleksis/core/templates/templated_email/celery_failure.email:9
 #: aleksis/core/templates/templated_email/celery_failure.email:28
 msgid "Task"
 msgstr "Задания"
 
-#: aleksis/core/templates/core/pages/system_status.html:117
+#: aleksis/core/templates/core/pages/system_status.html:121
 msgid "ID"
 msgstr "ID"
 
-#: aleksis/core/templates/core/pages/system_status.html:118
+#: aleksis/core/templates/core/pages/system_status.html:122
 msgid "Date done"
 msgstr "Время завершения"
 
@@ -2250,11 +2261,11 @@ msgstr "Приглашение по эл.почте"
 msgid "Generate invitation code"
 msgstr "Создать код приглашения"
 
-#: aleksis/core/templates/invitations/forms/_invite.html:29
+#: aleksis/core/templates/invitations/forms/_invite.html:30
 msgid "Generate code"
 msgstr "Генерирование кода"
 
-#: aleksis/core/templates/invitations/forms/_invite.html:33
+#: aleksis/core/templates/invitations/forms/_invite.html:34
 msgid "Invitations"
 msgstr "Приглашения"
 
@@ -2270,7 +2281,6 @@ msgstr "Регистрация приложения OAuth2"
 
 #: aleksis/core/templates/oauth2_provider/application/create.html:14
 #: aleksis/core/templates/oauth2_provider/application/edit.html:14
-#: aleksis/core/templates/oauth2_provider/authorized-token-delete.html:24
 #: aleksis/core/templates/two_factor/_wizard_actions.html:6
 msgid "Cancel"
 msgstr "Отменить"
@@ -2344,43 +2354,26 @@ msgstr "Разрешить"
 msgid "Disallow"
 msgstr "Запретить"
 
-#: aleksis/core/templates/oauth2_provider/authorized-token-delete.html:5
-#: aleksis/core/templates/oauth2_provider/authorized-token-delete.html:6
-#: aleksis/core/templates/oauth2_provider/authorized-tokens.html:23
-msgid "Revoke access"
-msgstr "Отозвать доступ"
-
-#: aleksis/core/templates/oauth2_provider/authorized-token-delete.html:12
-msgid "Are you sure to revoke the access for this application?"
-msgstr "Ви действительно хотите отозвать доступ для этого приложения?"
-
-#: aleksis/core/templates/oauth2_provider/authorized-token-delete.html:20
-msgid "Revoke"
-msgstr "Отозвать"
-
-#: aleksis/core/templates/oauth2_provider/authorized-tokens.html:5
-#: aleksis/core/templates/oauth2_provider/authorized-tokens.html:6
-msgid "Authorized applications"
-msgstr "Авторизованные приложения"
-
-#: aleksis/core/templates/oauth2_provider/authorized-tokens.html:33
-msgid "No authorized applications."
-msgstr "Авторизованных приложений нет."
-
 #: aleksis/core/templates/offline.html:5
 msgid "Network error"
 msgstr "Ошибка сети"
 
 #: aleksis/core/templates/offline.html:10
-msgid "Page not available offline."
-msgstr "В автономном режиме страница не доступна."
+msgid "No connection to server."
+msgstr ""
 
 #: aleksis/core/templates/offline.html:14
+#, fuzzy
+#| msgid ""
+#| "\n"
+#| "      This page is not available offline. Since you probably don't have an internet connection, check to see if your WiFi\n"
+#| "      or mobile data is turned on and try again. If you think you are connected, please contact the system\n"
+#| "      administrators:\n"
+#| "    "
 msgid ""
 "\n"
-"      This page is not available offline. Since you probably don't have an internet connection, check to see if your WiFi\n"
-"      or mobile data is turned on and try again. If you think you are connected, please contact the system\n"
-"      administrators:\n"
+"      This page is not available without a connection to the server. Please check your internet connection and try again.\n"
+"      If you are connected and the error persists, please contact the system administrators:\n"
 "    "
 msgstr ""
 "\n"
@@ -2521,6 +2514,8 @@ msgstr ""
 
 #: aleksis/core/templates/templated_email/base.email:5
 #: aleksis/core/templates/templated_email/base.email:16
+#: aleksis/core/templates/templated_email/invitation.email:6
+#: aleksis/core/templates/templated_email/invitation.email:14
 msgid "Hello"
 msgstr "Привет"
 
@@ -2597,6 +2592,24 @@ msgstr "Описание проблемы"
 msgid "Count of objects with new problems"
 msgstr "Количество объектов с новыми проблемами"
 
+#: aleksis/core/templates/templated_email/invitation.email:4
+#, python-format
+msgid "Invitation to register on %(site)s"
+msgstr ""
+
+#: aleksis/core/templates/templated_email/invitation.email:6
+#: aleksis/core/templates/templated_email/invitation.email:14
+#, fuzzy, python-format
+#| msgid "Selected persons"
+msgid "Hello %(person)s"
+msgstr "Выбранные физлица"
+
+#: aleksis/core/templates/templated_email/invitation.email:9
+#: aleksis/core/templates/templated_email/invitation.email:18
+#, python-format
+msgid "you have been invited to register on %(site)s. If you would like to accept this invitation, please click on the following link:"
+msgstr ""
+
 #: aleksis/core/templates/templated_email/notification.email:4
 msgid "New notification for"
 msgstr "Новое уведомление для"
@@ -3138,152 +3151,180 @@ msgstr "Во время создания файла PDF возникла про
 msgid "Download PDF"
 msgstr "Скачать PDF"
 
-#: aleksis/core/views.py:280
+#: aleksis/core/views.py:285
 msgid "The school term has been created."
 msgstr "Учебный год создан."
 
-#: aleksis/core/views.py:292
+#: aleksis/core/views.py:297
 msgid "The school term has been saved."
 msgstr "Учебный год сохранён."
 
-#: aleksis/core/views.py:396
+#: aleksis/core/views.py:401
 msgid "The child groups were successfully saved."
 msgstr "Дочерние группы сохранены."
 
-#: aleksis/core/views.py:415 aleksis/core/views.py:425
+#: aleksis/core/views.py:420 aleksis/core/views.py:430
 msgid "The person has been saved."
 msgstr "Физлицо сохранено."
 
-#: aleksis/core/views.py:475
+#: aleksis/core/views.py:480
 msgid "The group has been saved."
 msgstr "Группа сохранена."
 
-#: aleksis/core/views.py:558
+#: aleksis/core/views.py:528
+#, fuzzy
+#| msgid "The data checks were run successfully."
+msgid "Maintenance mode was turned on successfully."
+msgstr "Проверка данных успешно запущена."
+
+#: aleksis/core/views.py:530
+msgid "Maintenance mode was turned off successfully."
+msgstr ""
+
+#: aleksis/core/views.py:588
 msgid "The announcement has been saved."
 msgstr "Объявление сохранено."
 
-#: aleksis/core/views.py:574
+#: aleksis/core/views.py:604
 msgid "The announcement has been deleted."
 msgstr "Объявление удалено."
 
-#: aleksis/core/views.py:643
+#: aleksis/core/views.py:673
 msgid "The requested preference registry does not exist"
 msgstr "Журнал с запрошенными свойствами не существует"
 
-#: aleksis/core/views.py:662
+#: aleksis/core/views.py:692
 msgid "The preferences have been saved successfully."
 msgstr "Свойства сохранены."
 
-#: aleksis/core/views.py:686
+#: aleksis/core/views.py:716
 msgid "The person has been deleted."
 msgstr "Физлицо удалено."
 
-#: aleksis/core/views.py:700
+#: aleksis/core/views.py:730
 msgid "The group has been deleted."
 msgstr "Группа удалена."
 
-#: aleksis/core/views.py:732
+#: aleksis/core/views.py:762
 msgid "The additional field has been saved."
 msgstr "Дополнительное поле сохранено."
 
-#: aleksis/core/views.py:767
+#: aleksis/core/views.py:797
 msgid "The additional field has been deleted."
 msgstr "Дополнительное поле удалено."
 
-#: aleksis/core/views.py:792
+#: aleksis/core/views.py:822
 msgid "The group type has been saved."
 msgstr "Тип группы сохранён."
 
-#: aleksis/core/views.py:823
+#: aleksis/core/views.py:853
 msgid "The group type has been deleted."
 msgstr "Тип группы удалён."
 
-#: aleksis/core/views.py:858
+#: aleksis/core/views.py:888
 msgid "Progress: Run data checks"
 msgstr "В процессе: Запуск проверки данных"
 
-#: aleksis/core/views.py:859
+#: aleksis/core/views.py:889
 msgid "Run data checks …"
 msgstr "Запускается проверка данных …"
 
-#: aleksis/core/views.py:860
+#: aleksis/core/views.py:890
 msgid "The data checks were run successfully."
 msgstr "Проверка данных успешно запущена."
 
-#: aleksis/core/views.py:861
+#: aleksis/core/views.py:891
 msgid "There was a problem while running data checks."
 msgstr "Во время запуска проверки данных возникла проблема."
 
-#: aleksis/core/views.py:878
+#: aleksis/core/views.py:908
 #, python-brace-format
 msgid "The solve option '{solve_option_obj.verbose_name}' "
 msgstr "Вариант решения \"{solve_option_obj.verbose_name}\" "
 
-#: aleksis/core/views.py:888
+#: aleksis/core/views.py:918
 msgid "The requested solve option does not exist"
 msgstr "Запрошенный вариант решения не существует"
 
-#: aleksis/core/views.py:921
+#: aleksis/core/views.py:951
 msgid "The dashboard widget has been saved."
 msgstr "Виджет информпанели сохранён."
 
-#: aleksis/core/views.py:951
+#: aleksis/core/views.py:981
 msgid "The dashboard widget has been created."
 msgstr "Виджет информпанели создан."
 
-#: aleksis/core/views.py:961
+#: aleksis/core/views.py:991
 msgid "The dashboard widget has been deleted."
 msgstr "Виджет информпанели удалён."
 
-#: aleksis/core/views.py:1033
+#: aleksis/core/views.py:1063
 msgid "Your dashboard configuration has been saved successfully."
 msgstr "Ваша конфигурация информпанели сохранена."
 
-#: aleksis/core/views.py:1035
+#: aleksis/core/views.py:1065
 msgid "The configuration of the default dashboard has been saved successfully."
 msgstr "Конфигурация типовой/стандартной информпанели."
 
-#: aleksis/core/views.py:1106
+#: aleksis/core/views.py:1136
 #, python-brace-format
 msgid "The invitation was successfully created. The invitation code is {code}"
 msgstr "Приглашение успешно создано. Код приглашения: {code}"
 
-#: aleksis/core/views.py:1203
+#: aleksis/core/views.py:1233
 msgid "We have successfully assigned the permissions."
 msgstr "Мы успешно назначили доступы."
 
-#: aleksis/core/views.py:1213
+#: aleksis/core/views.py:1243
 msgid "The global user permission has been deleted."
 msgstr "Глобальный пользовательский доступ удалён."
 
-#: aleksis/core/views.py:1223
+#: aleksis/core/views.py:1253
 msgid "The global group permission has been deleted."
 msgstr "Глобальный групповой доступ удалён."
 
-#: aleksis/core/views.py:1233
+#: aleksis/core/views.py:1263
 msgid "The object user permission has been deleted."
 msgstr "Объектный пользовательский доступ удалён."
 
-#: aleksis/core/views.py:1243
+#: aleksis/core/views.py:1273
 msgid "The object group permission has been deleted."
 msgstr "Объектный групповой доступ удалён."
 
-#: aleksis/core/views.py:1352
+#: aleksis/core/views.py:1382
 msgid "The third-party account could not be disconnected because it is the only login method available."
 msgstr "Учётную запись третьей стороны нельзя отключить, т.к. это единственный способ входа."
 
-#: aleksis/core/views.py:1359
+#: aleksis/core/views.py:1389
 msgid "The third-party account has been successfully disconnected."
 msgstr "Учётная запись третьей стороны успешно отключена."
 
-#: aleksis/core/views.py:1435
+#: aleksis/core/views.py:1465
 msgid "Person was invited successfully and an email with further instructions has been send to them."
 msgstr "Владелец указанного эл.адреса успешно приглашён. Инструкции о дальнейших действиях отправлены на эл.почту."
 
-#: aleksis/core/views.py:1446
+#: aleksis/core/views.py:1476
 msgid "Person was already invited."
 msgstr "Кто-то уже пригласил его/её."
 
+#~ msgid "Revoke access"
+#~ msgstr "Отозвать доступ"
+
+#~ msgid "Are you sure to revoke the access for this application?"
+#~ msgstr "Ви действительно хотите отозвать доступ для этого приложения?"
+
+#~ msgid "Revoke"
+#~ msgstr "Отозвать"
+
+#~ msgid "Authorized applications"
+#~ msgstr "Авторизованные приложения"
+
+#~ msgid "No authorized applications."
+#~ msgstr "Авторизованных приложений нет."
+
+#~ msgid "Page not available offline."
+#~ msgstr "В автономном режиме страница не доступна."
+
 #~ msgid ""
 #~ "\n"
 #~ "            This page is currently unavailable. If this error persists, contact your site administrators:\n"
diff --git a/aleksis/core/locale/tr_TR/LC_MESSAGES/django.po b/aleksis/core/locale/tr_TR/LC_MESSAGES/django.po
index 2ceb99c7153d0eb412ca3504ce97224f6b6909fd..1b5c47ccd08980e07aac8228d3be70924eca2ede 100644
--- a/aleksis/core/locale/tr_TR/LC_MESSAGES/django.po
+++ b/aleksis/core/locale/tr_TR/LC_MESSAGES/django.po
@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: AlekSIS (School Information System) 0.1\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2023-02-27 13:23+0100\n"
+"POT-Creation-Date: 2023-05-09 18:40+0200\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -17,28 +17,32 @@ msgstr ""
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: aleksis/core/apps.py:155
+#: aleksis/core/apps.py:151
+msgid "You have been logged out successfully."
+msgstr ""
+
+#: aleksis/core/apps.py:161
 msgid "OpenID Connect scope"
 msgstr ""
 
-#: aleksis/core/apps.py:156
+#: aleksis/core/apps.py:162
 msgid "Given name, family name, link to profile and picture if existing."
 msgstr ""
 
-#: aleksis/core/apps.py:157
+#: aleksis/core/apps.py:163
 msgid "Full home postal address"
 msgstr ""
 
-#: aleksis/core/apps.py:158
+#: aleksis/core/apps.py:164
 msgid "Email address"
 msgstr ""
 
-#: aleksis/core/apps.py:159
+#: aleksis/core/apps.py:165
 msgid "Home and mobile phone"
 msgstr ""
 
-#: aleksis/core/apps.py:160 aleksis/core/forms.py:220
-#: aleksis/core/models.py:494 aleksis/core/templates/core/group/list.html:8
+#: aleksis/core/apps.py:166 aleksis/core/forms.py:221
+#: aleksis/core/models.py:495 aleksis/core/templates/core/group/list.html:8
 #: aleksis/core/templates/core/group/list.html:9
 msgid "Groups"
 msgstr ""
@@ -97,172 +101,172 @@ msgstr ""
 msgid "Content type"
 msgstr ""
 
-#: aleksis/core/filters.py:113 aleksis/core/models.py:720
+#: aleksis/core/filters.py:113 aleksis/core/models.py:721
 msgid "User"
 msgstr ""
 
-#: aleksis/core/filters.py:135 aleksis/core/models.py:493
+#: aleksis/core/filters.py:135 aleksis/core/models.py:494
 msgid "Group"
 msgstr ""
 
-#: aleksis/core/forms.py:50 aleksis/core/forms.py:581
+#: aleksis/core/forms.py:51 aleksis/core/forms.py:582
 msgid "Base data"
 msgstr ""
 
-#: aleksis/core/forms.py:55 aleksis/core/tables.py:47
+#: aleksis/core/forms.py:56 aleksis/core/tables.py:47
 msgid "Address"
 msgstr ""
 
-#: aleksis/core/forms.py:56 aleksis/core/forms.py:590
+#: aleksis/core/forms.py:57 aleksis/core/forms.py:591
 msgid "Contact data"
 msgstr ""
 
-#: aleksis/core/forms.py:58
+#: aleksis/core/forms.py:59
 msgid "Advanced personal data"
 msgstr ""
 
-#: aleksis/core/forms.py:106
+#: aleksis/core/forms.py:107
 msgid "New user"
 msgstr ""
 
-#: aleksis/core/forms.py:106
+#: aleksis/core/forms.py:107
 msgid "Create a new account"
 msgstr ""
 
-#: aleksis/core/forms.py:132
+#: aleksis/core/forms.py:133
 msgid "You cannot set a new username when also selecting an existing user."
 msgstr ""
 
-#: aleksis/core/forms.py:136
+#: aleksis/core/forms.py:137
 msgid "This username is already in use."
 msgstr ""
 
-#: aleksis/core/forms.py:153 aleksis/core/models.py:141
+#: aleksis/core/forms.py:154 aleksis/core/models.py:142
 msgid "School term"
 msgstr ""
 
-#: aleksis/core/forms.py:154
+#: aleksis/core/forms.py:155
 msgid "Common data"
 msgstr ""
 
-#: aleksis/core/forms.py:155 aleksis/core/forms.py:207
-#: aleksis/core/models.py:164 aleksis/core/templates/core/person/list.html:8
+#: aleksis/core/forms.py:156 aleksis/core/forms.py:208
+#: aleksis/core/models.py:165 aleksis/core/templates/core/person/list.html:8
 #: aleksis/core/templates/core/person/list.html:9
 msgid "Persons"
 msgstr ""
 
-#: aleksis/core/forms.py:156 aleksis/core/forms.py:592
+#: aleksis/core/forms.py:157 aleksis/core/forms.py:593
 msgid "Additional data"
 msgstr ""
 
-#: aleksis/core/forms.py:157 aleksis/core/models.py:217
-#: aleksis/core/models.py:546 aleksis/core/tables.py:46
+#: aleksis/core/forms.py:158 aleksis/core/models.py:218
+#: aleksis/core/models.py:547 aleksis/core/tables.py:46
 msgid "Photo"
 msgstr ""
 
-#: aleksis/core/forms.py:199 aleksis/core/forms.py:202
-#: aleksis/core/models.py:84
+#: aleksis/core/forms.py:200 aleksis/core/forms.py:203
+#: aleksis/core/models.py:85
 msgid "Date"
 msgstr ""
 
-#: aleksis/core/forms.py:200 aleksis/core/forms.py:203
-#: aleksis/core/models.py:92
+#: aleksis/core/forms.py:201 aleksis/core/forms.py:204
+#: aleksis/core/models.py:93
 msgid "Time"
 msgstr ""
 
-#: aleksis/core/forms.py:233
+#: aleksis/core/forms.py:234
 msgid "From when until when should the announcement be displayed?"
 msgstr ""
 
-#: aleksis/core/forms.py:236
+#: aleksis/core/forms.py:237
 msgid "Who should see the announcement?"
 msgstr ""
 
-#: aleksis/core/forms.py:237
+#: aleksis/core/forms.py:238
 msgid "Write your announcement:"
 msgstr ""
 
-#: aleksis/core/forms.py:276
+#: aleksis/core/forms.py:277
 msgid "You are not allowed to create announcements which are only valid in the past."
 msgstr ""
 
-#: aleksis/core/forms.py:280
+#: aleksis/core/forms.py:281
 msgid "The from date and time must be earlier then the until date and time."
 msgstr ""
 
-#: aleksis/core/forms.py:289
+#: aleksis/core/forms.py:290
 msgid "You need at least one recipient."
 msgstr ""
 
-#: aleksis/core/forms.py:398
+#: aleksis/core/forms.py:399
 msgid "Invitation code"
 msgstr ""
 
-#: aleksis/core/forms.py:399
+#: aleksis/core/forms.py:400
 msgid "Please enter your invitation code."
 msgstr ""
 
-#: aleksis/core/forms.py:418 aleksis/core/models.py:192
+#: aleksis/core/forms.py:419 aleksis/core/models.py:193
 msgid "First name"
 msgstr ""
 
-#: aleksis/core/forms.py:419 aleksis/core/models.py:193
+#: aleksis/core/forms.py:420 aleksis/core/models.py:194
 msgid "Last name"
 msgstr ""
 
-#: aleksis/core/forms.py:428
+#: aleksis/core/forms.py:429
 msgid "A person is using this e-mail address"
 msgstr ""
 
-#: aleksis/core/forms.py:456
+#: aleksis/core/forms.py:457
 msgid "Who should get the permission?"
 msgstr ""
 
-#: aleksis/core/forms.py:457
+#: aleksis/core/forms.py:458
 msgid "On what?"
 msgstr ""
 
-#: aleksis/core/forms.py:483
+#: aleksis/core/forms.py:484
 msgid "Select objects which the permission should be granted for:"
 msgstr ""
 
-#: aleksis/core/forms.py:486
+#: aleksis/core/forms.py:487
 msgid "Grant the permission for all objects"
 msgstr ""
 
-#: aleksis/core/forms.py:494
+#: aleksis/core/forms.py:495
 msgid "You must select at least one group or person which should get the permission."
 msgstr ""
 
-#: aleksis/core/forms.py:499
+#: aleksis/core/forms.py:500
 msgid "You must grant the permission to all objects or to specific objects."
 msgstr ""
 
-#: aleksis/core/forms.py:586
+#: aleksis/core/forms.py:587
 msgid "Address data"
 msgstr ""
 
-#: aleksis/core/forms.py:598
+#: aleksis/core/forms.py:599
 msgid "Account data"
 msgstr ""
 
-#: aleksis/core/forms.py:605
+#: aleksis/core/forms.py:606
 msgid "Password"
 msgstr ""
 
-#: aleksis/core/forms.py:608
+#: aleksis/core/forms.py:609
 msgid "Password (again)"
 msgstr ""
 
-#: aleksis/core/forms.py:761
+#: aleksis/core/forms.py:762
 msgid "The selected action does not exist."
 msgstr ""
 
-#: aleksis/core/forms.py:772
+#: aleksis/core/forms.py:773
 msgid "You do not have permission to run {} on all selected objects."
 msgstr ""
 
-#: aleksis/core/forms.py:828
+#: aleksis/core/forms.py:829
 msgid "No valid selection."
 msgstr ""
 
@@ -290,658 +294,658 @@ msgstr ""
 msgid "Linked school term"
 msgstr ""
 
-#: aleksis/core/models.py:82
+#: aleksis/core/models.py:83
 msgid "Boolean (Yes/No)"
 msgstr ""
 
-#: aleksis/core/models.py:83
+#: aleksis/core/models.py:84
 msgid "Text (one line)"
 msgstr ""
 
-#: aleksis/core/models.py:85
+#: aleksis/core/models.py:86
 msgid "Date and time"
 msgstr ""
 
-#: aleksis/core/models.py:86
+#: aleksis/core/models.py:87
 msgid "Decimal number"
 msgstr ""
 
-#: aleksis/core/models.py:87 aleksis/core/models.py:210
+#: aleksis/core/models.py:88 aleksis/core/models.py:211
 msgid "E-mail address"
 msgstr ""
 
-#: aleksis/core/models.py:88
+#: aleksis/core/models.py:89
 msgid "Integer"
 msgstr ""
 
-#: aleksis/core/models.py:89
+#: aleksis/core/models.py:90
 msgid "IP address"
 msgstr ""
 
-#: aleksis/core/models.py:90
+#: aleksis/core/models.py:91
 msgid "Boolean or empty (Yes/No/Neither)"
 msgstr ""
 
-#: aleksis/core/models.py:91
+#: aleksis/core/models.py:92
 msgid "Text (multi-line)"
 msgstr ""
 
-#: aleksis/core/models.py:93
+#: aleksis/core/models.py:94
 msgid "URL / Link"
 msgstr ""
 
-#: aleksis/core/models.py:105 aleksis/core/models.py:1077
+#: aleksis/core/models.py:106 aleksis/core/models.py:1078
 msgid "Name"
 msgstr ""
 
-#: aleksis/core/models.py:107
+#: aleksis/core/models.py:108
 msgid "Start date"
 msgstr ""
 
-#: aleksis/core/models.py:108
+#: aleksis/core/models.py:109
 msgid "End date"
 msgstr ""
 
-#: aleksis/core/models.py:127
+#: aleksis/core/models.py:128
 msgid "The start date must be earlier than the end date."
 msgstr ""
 
-#: aleksis/core/models.py:134
+#: aleksis/core/models.py:135
 msgid "There is already a school term for this time or a part of this time."
 msgstr ""
 
-#: aleksis/core/models.py:142
+#: aleksis/core/models.py:143
 #: aleksis/core/templates/core/school_term/list.html:8
 #: aleksis/core/templates/core/school_term/list.html:9
 msgid "School terms"
 msgstr ""
 
-#: aleksis/core/models.py:163 aleksis/core/models.py:1026
+#: aleksis/core/models.py:164 aleksis/core/models.py:1027
 msgid "Person"
 msgstr ""
 
-#: aleksis/core/models.py:166
+#: aleksis/core/models.py:167
 msgid "Can view address"
 msgstr ""
 
-#: aleksis/core/models.py:167
+#: aleksis/core/models.py:168
 msgid "Can view contact details"
 msgstr ""
 
-#: aleksis/core/models.py:168
+#: aleksis/core/models.py:169
 msgid "Can view photo"
 msgstr ""
 
-#: aleksis/core/models.py:169
+#: aleksis/core/models.py:170
 msgid "Can view avatar image"
 msgstr ""
 
-#: aleksis/core/models.py:170
+#: aleksis/core/models.py:171
 msgid "Can view persons groups"
 msgstr ""
 
-#: aleksis/core/models.py:171
+#: aleksis/core/models.py:172
 msgid "Can view personal details"
 msgstr ""
 
-#: aleksis/core/models.py:181
+#: aleksis/core/models.py:182
 msgid "female"
 msgstr ""
 
-#: aleksis/core/models.py:181
+#: aleksis/core/models.py:182
 msgid "male"
 msgstr ""
 
-#: aleksis/core/models.py:181
+#: aleksis/core/models.py:182
 msgid "other"
 msgstr ""
 
-#: aleksis/core/models.py:189 aleksis/core/models.py:1353
+#: aleksis/core/models.py:190 aleksis/core/models.py:1382
 msgid "Linked user"
 msgstr ""
 
-#: aleksis/core/models.py:195
+#: aleksis/core/models.py:196
 msgid "Additional name(s)"
 msgstr ""
 
-#: aleksis/core/models.py:199 aleksis/core/models.py:511
-#: aleksis/core/models.py:1439
+#: aleksis/core/models.py:200 aleksis/core/models.py:512
+#: aleksis/core/models.py:1468
 msgid "Short name"
 msgstr ""
 
-#: aleksis/core/models.py:202
+#: aleksis/core/models.py:203
 msgid "Street"
 msgstr ""
 
-#: aleksis/core/models.py:203
+#: aleksis/core/models.py:204
 msgid "Street number"
 msgstr ""
 
-#: aleksis/core/models.py:204
+#: aleksis/core/models.py:205
 msgid "Postal code"
 msgstr ""
 
-#: aleksis/core/models.py:205
+#: aleksis/core/models.py:206
 msgid "Place"
 msgstr ""
 
-#: aleksis/core/models.py:207
+#: aleksis/core/models.py:208
 msgid "Home phone"
 msgstr ""
 
-#: aleksis/core/models.py:208
+#: aleksis/core/models.py:209
 msgid "Mobile phone"
 msgstr ""
 
-#: aleksis/core/models.py:212
+#: aleksis/core/models.py:213
 msgid "Date of birth"
 msgstr ""
 
-#: aleksis/core/models.py:213
+#: aleksis/core/models.py:214
 msgid "Place of birth"
 msgstr ""
 
-#: aleksis/core/models.py:214
+#: aleksis/core/models.py:215
 msgid "Sex"
 msgstr ""
 
-#: aleksis/core/models.py:221 aleksis/core/models.py:550
+#: aleksis/core/models.py:222 aleksis/core/models.py:551
 msgid "This is an official photo, used for official documents and for internal use cases."
 msgstr ""
 
-#: aleksis/core/models.py:226 aleksis/core/models.py:554
+#: aleksis/core/models.py:227 aleksis/core/models.py:555
 msgid "Display picture / Avatar"
 msgstr ""
 
-#: aleksis/core/models.py:229 aleksis/core/models.py:557
+#: aleksis/core/models.py:230 aleksis/core/models.py:558
 msgid "This is a picture or an avatar for public display."
 msgstr ""
 
-#: aleksis/core/models.py:234
+#: aleksis/core/models.py:235
 msgid "Guardians / Parents"
 msgstr ""
 
-#: aleksis/core/models.py:241
+#: aleksis/core/models.py:242
 msgid "Primary group"
 msgstr ""
 
-#: aleksis/core/models.py:244 aleksis/core/models.py:724
-#: aleksis/core/models.py:748 aleksis/core/models.py:843
-#: aleksis/core/models.py:1112
+#: aleksis/core/models.py:245 aleksis/core/models.py:725
+#: aleksis/core/models.py:749 aleksis/core/models.py:844
+#: aleksis/core/models.py:1113
 msgid "Description"
 msgstr ""
 
-#: aleksis/core/models.py:464
+#: aleksis/core/models.py:465
 msgid "Title of field"
 msgstr ""
 
-#: aleksis/core/models.py:466
+#: aleksis/core/models.py:467
 msgid "Type of field"
 msgstr ""
 
-#: aleksis/core/models.py:468
+#: aleksis/core/models.py:469
 msgid "Required"
 msgstr ""
 
-#: aleksis/core/models.py:469
+#: aleksis/core/models.py:470
 msgid "Help text / description"
 msgstr ""
 
-#: aleksis/core/models.py:475
+#: aleksis/core/models.py:476
 msgid "Addtitional field for groups"
 msgstr ""
 
-#: aleksis/core/models.py:476
+#: aleksis/core/models.py:477
 msgid "Addtitional fields for groups"
 msgstr ""
 
-#: aleksis/core/models.py:496
+#: aleksis/core/models.py:497
 msgid "Can assign child groups to groups"
 msgstr ""
 
-#: aleksis/core/models.py:497
+#: aleksis/core/models.py:498
 msgid "Can view statistics about group."
 msgstr ""
 
-#: aleksis/core/models.py:509 aleksis/core/models.py:1440
+#: aleksis/core/models.py:510 aleksis/core/models.py:1469
 msgid "Long name"
 msgstr ""
 
-#: aleksis/core/models.py:519 aleksis/core/templates/core/group/full.html:105
+#: aleksis/core/models.py:520 aleksis/core/templates/core/group/full.html:105
 msgid "Members"
 msgstr ""
 
-#: aleksis/core/models.py:522 aleksis/core/templates/core/group/full.html:102
+#: aleksis/core/models.py:523 aleksis/core/templates/core/group/full.html:102
 msgid "Owners"
 msgstr ""
 
-#: aleksis/core/models.py:529 aleksis/core/templates/core/group/full.html:59
+#: aleksis/core/models.py:530 aleksis/core/templates/core/group/full.html:59
 msgid "Parent groups"
 msgstr ""
 
-#: aleksis/core/models.py:537
+#: aleksis/core/models.py:538
 msgid "Type of group"
 msgstr ""
 
-#: aleksis/core/models.py:542
+#: aleksis/core/models.py:543
 #: aleksis/core/templates/core/additional_field/list.html:8
 #: aleksis/core/templates/core/additional_field/list.html:9
 msgid "Additional fields"
 msgstr ""
 
-#: aleksis/core/models.py:723 aleksis/core/models.py:747
-#: aleksis/core/models.py:842 aleksis/core/models.py:1270
+#: aleksis/core/models.py:724 aleksis/core/models.py:748
+#: aleksis/core/models.py:843 aleksis/core/models.py:1299
 #: aleksis/core/templates/core/announcement/list.html:18
 msgid "Title"
 msgstr ""
 
-#: aleksis/core/models.py:726
+#: aleksis/core/models.py:727
 msgid "Application"
 msgstr ""
 
-#: aleksis/core/models.py:732
+#: aleksis/core/models.py:733
 msgid "Activity"
 msgstr ""
 
-#: aleksis/core/models.py:733
+#: aleksis/core/models.py:734
 msgid "Activities"
 msgstr ""
 
-#: aleksis/core/models.py:739
+#: aleksis/core/models.py:740
 msgid "Sender"
 msgstr ""
 
-#: aleksis/core/models.py:744
+#: aleksis/core/models.py:745
 msgid "Recipient"
 msgstr ""
 
-#: aleksis/core/models.py:749 aleksis/core/models.py:1078
+#: aleksis/core/models.py:750 aleksis/core/models.py:1079
 msgid "Link"
 msgstr ""
 
-#: aleksis/core/models.py:752 aleksis/core/models.py:1079
-#: aleksis/core/models.py:1400
+#: aleksis/core/models.py:753 aleksis/core/models.py:1080
+#: aleksis/core/models.py:1429
 #: aleksis/core/templates/oauth2_provider/application/detail.html:26
 msgid "Icon"
 msgstr ""
 
-#: aleksis/core/models.py:755
+#: aleksis/core/models.py:756
 msgid "Send notification at"
 msgstr ""
 
-#: aleksis/core/models.py:757
+#: aleksis/core/models.py:758
 msgid "Read"
 msgstr ""
 
-#: aleksis/core/models.py:758
+#: aleksis/core/models.py:759
 msgid "Sent"
 msgstr ""
 
-#: aleksis/core/models.py:775
+#: aleksis/core/models.py:776
 msgid "Notification"
 msgstr ""
 
-#: aleksis/core/models.py:776 aleksis/core/preferences.py:29
+#: aleksis/core/models.py:777 aleksis/core/preferences.py:29
 msgid "Notifications"
 msgstr ""
 
-#: aleksis/core/models.py:844
+#: aleksis/core/models.py:845
 msgid "Link to detailed view"
 msgstr ""
 
-#: aleksis/core/models.py:847
+#: aleksis/core/models.py:848
 msgid "Date and time from when to show"
 msgstr ""
 
-#: aleksis/core/models.py:850
+#: aleksis/core/models.py:851
 msgid "Date and time until when to show"
 msgstr ""
 
-#: aleksis/core/models.py:875
+#: aleksis/core/models.py:876
 msgid "Announcement"
 msgstr ""
 
-#: aleksis/core/models.py:876
+#: aleksis/core/models.py:877
 #: aleksis/core/templates/core/announcement/list.html:7
 #: aleksis/core/templates/core/announcement/list.html:8
 msgid "Announcements"
 msgstr ""
 
-#: aleksis/core/models.py:913
+#: aleksis/core/models.py:914
 msgid "Announcement recipient"
 msgstr ""
 
-#: aleksis/core/models.py:914
+#: aleksis/core/models.py:915
 msgid "Announcement recipients"
 msgstr ""
 
-#: aleksis/core/models.py:934
+#: aleksis/core/models.py:935
 msgid "Widget Title"
 msgstr ""
 
-#: aleksis/core/models.py:935
+#: aleksis/core/models.py:936
 msgid "Activate Widget"
 msgstr ""
 
-#: aleksis/core/models.py:936
+#: aleksis/core/models.py:937
 msgid "Widget is broken"
 msgstr ""
 
-#: aleksis/core/models.py:939
+#: aleksis/core/models.py:940
 msgid "Size on mobile devices"
 msgstr ""
 
-#: aleksis/core/models.py:940
+#: aleksis/core/models.py:941
 msgid "<= 600 px, 12 columns"
 msgstr ""
 
-#: aleksis/core/models.py:945
+#: aleksis/core/models.py:946
 msgid "Size on tablet devices"
 msgstr ""
 
-#: aleksis/core/models.py:946
+#: aleksis/core/models.py:947
 msgid "> 600 px, 12 columns"
 msgstr ""
 
-#: aleksis/core/models.py:951
+#: aleksis/core/models.py:952
 msgid "Size on desktop devices"
 msgstr ""
 
-#: aleksis/core/models.py:952
+#: aleksis/core/models.py:953
 msgid "> 992 px, 12 columns"
 msgstr ""
 
-#: aleksis/core/models.py:957
+#: aleksis/core/models.py:958
 msgid "Size on large desktop devices"
 msgstr ""
 
-#: aleksis/core/models.py:958
+#: aleksis/core/models.py:959
 msgid "> 1200 px>, 12 columns"
 msgstr ""
 
-#: aleksis/core/models.py:989
+#: aleksis/core/models.py:990
 msgid "Can edit default dashboard"
 msgstr ""
 
-#: aleksis/core/models.py:990
+#: aleksis/core/models.py:991
 msgid "Dashboard Widget"
 msgstr ""
 
-#: aleksis/core/models.py:991
+#: aleksis/core/models.py:992
 msgid "Dashboard Widgets"
 msgstr ""
 
-#: aleksis/core/models.py:997
+#: aleksis/core/models.py:998
 msgid "URL"
 msgstr ""
 
-#: aleksis/core/models.py:998
+#: aleksis/core/models.py:999
 msgid "Icon URL"
 msgstr ""
 
-#: aleksis/core/models.py:1004
+#: aleksis/core/models.py:1005
 msgid "External link widget"
 msgstr ""
 
-#: aleksis/core/models.py:1005
+#: aleksis/core/models.py:1006
 msgid "External link widgets"
 msgstr ""
 
-#: aleksis/core/models.py:1011
+#: aleksis/core/models.py:1012
 msgid "Content"
 msgstr ""
 
-#: aleksis/core/models.py:1017
+#: aleksis/core/models.py:1018
 msgid "Static content widget"
 msgstr ""
 
-#: aleksis/core/models.py:1018
+#: aleksis/core/models.py:1019
 msgid "Static content widgets"
 msgstr ""
 
-#: aleksis/core/models.py:1023
+#: aleksis/core/models.py:1024
 msgid "Dashboard widget"
 msgstr ""
 
-#: aleksis/core/models.py:1028
+#: aleksis/core/models.py:1029
 msgid "Order"
 msgstr ""
 
-#: aleksis/core/models.py:1029
+#: aleksis/core/models.py:1030
 msgid "Part of the default dashboard"
 msgstr ""
 
-#: aleksis/core/models.py:1044
+#: aleksis/core/models.py:1045
 msgid "Dashboard widget order"
 msgstr ""
 
-#: aleksis/core/models.py:1045
+#: aleksis/core/models.py:1046
 msgid "Dashboard widget orders"
 msgstr ""
 
-#: aleksis/core/models.py:1051
+#: aleksis/core/models.py:1052
 msgid "Menu ID"
 msgstr ""
 
-#: aleksis/core/models.py:1064
+#: aleksis/core/models.py:1065
 msgid "Custom menu"
 msgstr ""
 
-#: aleksis/core/models.py:1065
+#: aleksis/core/models.py:1066
 msgid "Custom menus"
 msgstr ""
 
-#: aleksis/core/models.py:1075
+#: aleksis/core/models.py:1076
 msgid "Menu"
 msgstr ""
 
-#: aleksis/core/models.py:1085
+#: aleksis/core/models.py:1086
 msgid "Custom menu item"
 msgstr ""
 
-#: aleksis/core/models.py:1086
+#: aleksis/core/models.py:1087
 msgid "Custom menu items"
 msgstr ""
 
-#: aleksis/core/models.py:1111
+#: aleksis/core/models.py:1112
 msgid "Title of type"
 msgstr ""
 
-#: aleksis/core/models.py:1118 aleksis/core/templates/core/group/full.html:50
+#: aleksis/core/models.py:1119 aleksis/core/templates/core/group/full.html:50
 msgid "Group type"
 msgstr ""
 
-#: aleksis/core/models.py:1119
+#: aleksis/core/models.py:1120
 #: aleksis/core/templates/core/group_type/list.html:8
 #: aleksis/core/templates/core/group_type/list.html:9
 msgid "Group types"
 msgstr ""
 
-#: aleksis/core/models.py:1132
+#: aleksis/core/models.py:1133
 msgid "Can view system status"
 msgstr ""
 
-#: aleksis/core/models.py:1133
+#: aleksis/core/models.py:1134
 msgid "Can manage data"
 msgstr ""
 
-#: aleksis/core/models.py:1134
+#: aleksis/core/models.py:1135
 msgid "Can impersonate"
 msgstr ""
 
-#: aleksis/core/models.py:1135
+#: aleksis/core/models.py:1136
 msgid "Can use search"
 msgstr ""
 
-#: aleksis/core/models.py:1136
+#: aleksis/core/models.py:1137
 msgid "Can change site preferences"
 msgstr ""
 
-#: aleksis/core/models.py:1137
+#: aleksis/core/models.py:1138
 msgid "Can change person preferences"
 msgstr ""
 
-#: aleksis/core/models.py:1138
+#: aleksis/core/models.py:1139
 msgid "Can change group preferences"
 msgstr ""
 
-#: aleksis/core/models.py:1139
+#: aleksis/core/models.py:1140
 msgid "Can test PDF generation"
 msgstr ""
 
-#: aleksis/core/models.py:1140
+#: aleksis/core/models.py:1141
 msgid "Can invite persons"
 msgstr ""
 
-#: aleksis/core/models.py:1176
+#: aleksis/core/models.py:1177
 msgid "Related data check task"
 msgstr ""
 
-#: aleksis/core/models.py:1184
+#: aleksis/core/models.py:1185
 msgid "Issue solved"
 msgstr ""
 
-#: aleksis/core/models.py:1185
+#: aleksis/core/models.py:1186
 msgid "Notification sent"
 msgstr ""
 
-#: aleksis/core/models.py:1198
+#: aleksis/core/models.py:1199
 msgid "Data check result"
 msgstr ""
 
-#: aleksis/core/models.py:1199
+#: aleksis/core/models.py:1200
 msgid "Data check results"
 msgstr ""
 
-#: aleksis/core/models.py:1201
+#: aleksis/core/models.py:1202
 msgid "Can run data checks"
 msgstr ""
 
-#: aleksis/core/models.py:1202
+#: aleksis/core/models.py:1203
 msgid "Can solve data check problems"
 msgstr ""
 
-#: aleksis/core/models.py:1209
+#: aleksis/core/models.py:1210
 msgid "E-Mail address"
 msgstr ""
 
-#: aleksis/core/models.py:1241
+#: aleksis/core/models.py:1270
 msgid "Owner"
 msgstr ""
 
-#: aleksis/core/models.py:1245
+#: aleksis/core/models.py:1274
 msgid "File expires at"
 msgstr ""
 
-#: aleksis/core/models.py:1248
+#: aleksis/core/models.py:1277
 msgid "Generated HTML file"
 msgstr ""
 
-#: aleksis/core/models.py:1251
+#: aleksis/core/models.py:1280
 msgid "Generated PDF file"
 msgstr ""
 
-#: aleksis/core/models.py:1258
+#: aleksis/core/models.py:1287
 msgid "PDF file"
 msgstr ""
 
-#: aleksis/core/models.py:1259
+#: aleksis/core/models.py:1288
 msgid "PDF files"
 msgstr ""
 
-#: aleksis/core/models.py:1264
+#: aleksis/core/models.py:1293
 msgid "Task result"
 msgstr ""
 
-#: aleksis/core/models.py:1267
+#: aleksis/core/models.py:1296
 msgid "Task user"
 msgstr ""
 
-#: aleksis/core/models.py:1271
+#: aleksis/core/models.py:1300
 msgid "Back URL"
 msgstr ""
 
-#: aleksis/core/models.py:1272
+#: aleksis/core/models.py:1301
 msgid "Progress title"
 msgstr ""
 
-#: aleksis/core/models.py:1273
+#: aleksis/core/models.py:1302
 msgid "Error message"
 msgstr ""
 
-#: aleksis/core/models.py:1274
+#: aleksis/core/models.py:1303
 msgid "Success message"
 msgstr ""
 
-#: aleksis/core/models.py:1275
+#: aleksis/core/models.py:1304
 msgid "Redirect on success URL"
 msgstr ""
 
-#: aleksis/core/models.py:1277
+#: aleksis/core/models.py:1306
 msgid "Additional button title"
 msgstr ""
 
-#: aleksis/core/models.py:1279
+#: aleksis/core/models.py:1308
 msgid "Additional button URL"
 msgstr ""
 
-#: aleksis/core/models.py:1281
+#: aleksis/core/models.py:1310
 msgid "Additional button icon"
 msgstr ""
 
-#: aleksis/core/models.py:1283
+#: aleksis/core/models.py:1312
 msgid "Result fetched"
 msgstr ""
 
-#: aleksis/core/models.py:1308
+#: aleksis/core/models.py:1337
 msgid "Background task completed successfully"
 msgstr ""
 
-#: aleksis/core/models.py:1309
+#: aleksis/core/models.py:1338
 msgid "The background task '{}' has been completed successfully."
 msgstr ""
 
-#: aleksis/core/models.py:1315
+#: aleksis/core/models.py:1344
 msgid "Background task failed"
 msgstr ""
 
-#: aleksis/core/models.py:1316
+#: aleksis/core/models.py:1345
 msgid "The background task '{}' has failed."
 msgstr ""
 
-#: aleksis/core/models.py:1325
+#: aleksis/core/models.py:1354
 msgid "Background task"
 msgstr ""
 
-#: aleksis/core/models.py:1339
+#: aleksis/core/models.py:1368
 msgid "Task user assignment"
 msgstr ""
 
-#: aleksis/core/models.py:1340
+#: aleksis/core/models.py:1369
 msgid "Task user assignments"
 msgstr ""
 
-#: aleksis/core/models.py:1356
+#: aleksis/core/models.py:1385
 msgid "Additional attributes"
 msgstr ""
 
-#: aleksis/core/models.py:1394
+#: aleksis/core/models.py:1423
 msgid "Allowed scopes that clients can request"
 msgstr ""
 
-#: aleksis/core/models.py:1404
+#: aleksis/core/models.py:1433
 msgid "This image will be shown as icon in the authorization flow. It should be squared."
 msgstr ""
 
-#: aleksis/core/models.py:1449
+#: aleksis/core/models.py:1478
 msgid "Can view room timetable"
 msgstr ""
 
-#: aleksis/core/models.py:1451
+#: aleksis/core/models.py:1480
 msgid "Room"
 msgstr ""
 
-#: aleksis/core/models.py:1452
+#: aleksis/core/models.py:1481
 msgid "Rooms"
 msgstr ""
 
@@ -1153,15 +1157,15 @@ msgstr ""
 msgid "Country for phone number parsing"
 msgstr ""
 
-#: aleksis/core/settings.py:549
+#: aleksis/core/settings.py:551
 msgid "English"
 msgstr ""
 
-#: aleksis/core/settings.py:550
+#: aleksis/core/settings.py:552
 msgid "German"
 msgstr ""
 
-#: aleksis/core/settings.py:551
+#: aleksis/core/settings.py:553
 msgid "Ukrainian"
 msgstr ""
 
@@ -1173,14 +1177,14 @@ msgid "Edit"
 msgstr ""
 
 #: aleksis/core/tables.py:27 aleksis/core/tables.py:148
-#: aleksis/core/tables.py:192
+#: aleksis/core/tables.py:185
 #: aleksis/core/templates/core/announcement/list.html:22
 msgid "Actions"
 msgstr ""
 
 #: aleksis/core/tables.py:115 aleksis/core/tables.py:116
 #: aleksis/core/tables.py:130 aleksis/core/tables.py:146
-#: aleksis/core/tables.py:190
+#: aleksis/core/tables.py:183
 #: aleksis/core/templates/core/announcement/list.html:42
 #: aleksis/core/templates/core/group/full.html:33
 #: aleksis/core/templates/core/pages/delete.html:22
@@ -1229,7 +1233,7 @@ msgid ""
 "          "
 msgstr ""
 
-#: aleksis/core/templates/500.html:21
+#: aleksis/core/templates/500.html:21 aleksis/core/templates/offline.html:22
 msgid "Retry"
 msgstr ""
 
@@ -1543,62 +1547,62 @@ msgstr ""
 msgid "Edit default dashboard"
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:9
 #: aleksis/core/templates/core/data_check/list.html:10
+#: aleksis/core/templates/core/data_check/list.html:11
 msgid "Data checks"
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:15
+#: aleksis/core/templates/core/data_check/list.html:16
 msgid "Check data again"
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:22
+#: aleksis/core/templates/core/data_check/list.html:23
 msgid "The system detected some problems with your data."
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:23
+#: aleksis/core/templates/core/data_check/list.html:24
 msgid ""
 "Please go through all data and check whether some extra action is\n"
 "          needed."
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:31
+#: aleksis/core/templates/core/data_check/list.html:32
 msgid "Everything is fine."
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:32
+#: aleksis/core/templates/core/data_check/list.html:33
 msgid "The system hasn't detected any problems with your data."
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:40
+#: aleksis/core/templates/core/data_check/list.html:41
 msgid "Detected problems"
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:45
+#: aleksis/core/templates/core/data_check/list.html:46
 msgid "Affected object"
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:46
+#: aleksis/core/templates/core/data_check/list.html:47
 msgid "Detected problem"
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:47
+#: aleksis/core/templates/core/data_check/list.html:48
 msgid "Show details"
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:48
+#: aleksis/core/templates/core/data_check/list.html:49
 msgid "Options to solve the problem"
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:63
+#: aleksis/core/templates/core/data_check/list.html:65
 msgid "Show object"
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:86
+#: aleksis/core/templates/core/data_check/list.html:89
 msgid "Registered checks"
 msgstr ""
 
-#: aleksis/core/templates/core/data_check/list.html:90
+#: aleksis/core/templates/core/data_check/list.html:93
 msgid ""
 "\n"
 "            The system will check for the following problems:\n"
@@ -1820,83 +1824,83 @@ msgstr ""
 msgid "System checks"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:22
+#: aleksis/core/templates/core/pages/system_status.html:26
 msgid "Maintenance mode enabled"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:24
+#: aleksis/core/templates/core/pages/system_status.html:28
 msgid ""
 "\n"
-"                Only admin and visitors from internal IPs can access the site.\n"
-"              "
+"                  Only admin and visitors from internal IPs can access the site.\n"
+"                "
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:36
+#: aleksis/core/templates/core/pages/system_status.html:39
 msgid "Maintenance mode disabled"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:37
+#: aleksis/core/templates/core/pages/system_status.html:40
 msgid "Everyone can access the site."
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:47
+#: aleksis/core/templates/core/pages/system_status.html:51
 msgid "Debug mode enabled"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:49
+#: aleksis/core/templates/core/pages/system_status.html:53
 msgid ""
 "\n"
 "                The web server throws back debug information on errors. Do not use in production!\n"
 "              "
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:56
+#: aleksis/core/templates/core/pages/system_status.html:60
 msgid "Debug mode disabled"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:58
+#: aleksis/core/templates/core/pages/system_status.html:62
 msgid ""
 "\n"
 "                Debug mode is disabled. Default error pages are displayed on errors.\n"
 "              "
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:71
+#: aleksis/core/templates/core/pages/system_status.html:75
 msgid "System health checks"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:77
+#: aleksis/core/templates/core/pages/system_status.html:81
 msgid "Service"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:78
-#: aleksis/core/templates/core/pages/system_status.html:119
+#: aleksis/core/templates/core/pages/system_status.html:82
+#: aleksis/core/templates/core/pages/system_status.html:123
 msgid "Status"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:79
+#: aleksis/core/templates/core/pages/system_status.html:83
 msgid "Time taken"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:100
+#: aleksis/core/templates/core/pages/system_status.html:104
 msgid "seconds"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:111
+#: aleksis/core/templates/core/pages/system_status.html:115
 msgid "Celery task results"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:116
+#: aleksis/core/templates/core/pages/system_status.html:120
 #: aleksis/core/templates/templated_email/celery_failure.email:9
 #: aleksis/core/templates/templated_email/celery_failure.email:28
 msgid "Task"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:117
+#: aleksis/core/templates/core/pages/system_status.html:121
 msgid "ID"
 msgstr ""
 
-#: aleksis/core/templates/core/pages/system_status.html:118
+#: aleksis/core/templates/core/pages/system_status.html:122
 msgid "Date done"
 msgstr ""
 
@@ -2120,11 +2124,11 @@ msgstr ""
 msgid "Generate invitation code"
 msgstr ""
 
-#: aleksis/core/templates/invitations/forms/_invite.html:29
+#: aleksis/core/templates/invitations/forms/_invite.html:30
 msgid "Generate code"
 msgstr ""
 
-#: aleksis/core/templates/invitations/forms/_invite.html:33
+#: aleksis/core/templates/invitations/forms/_invite.html:34
 msgid "Invitations"
 msgstr ""
 
@@ -2140,7 +2144,6 @@ msgstr ""
 
 #: aleksis/core/templates/oauth2_provider/application/create.html:14
 #: aleksis/core/templates/oauth2_provider/application/edit.html:14
-#: aleksis/core/templates/oauth2_provider/authorized-token-delete.html:24
 #: aleksis/core/templates/two_factor/_wizard_actions.html:6
 msgid "Cancel"
 msgstr ""
@@ -2214,43 +2217,19 @@ msgstr ""
 msgid "Disallow"
 msgstr ""
 
-#: aleksis/core/templates/oauth2_provider/authorized-token-delete.html:5
-#: aleksis/core/templates/oauth2_provider/authorized-token-delete.html:6
-#: aleksis/core/templates/oauth2_provider/authorized-tokens.html:23
-msgid "Revoke access"
-msgstr ""
-
-#: aleksis/core/templates/oauth2_provider/authorized-token-delete.html:12
-msgid "Are you sure to revoke the access for this application?"
-msgstr ""
-
-#: aleksis/core/templates/oauth2_provider/authorized-token-delete.html:20
-msgid "Revoke"
-msgstr ""
-
-#: aleksis/core/templates/oauth2_provider/authorized-tokens.html:5
-#: aleksis/core/templates/oauth2_provider/authorized-tokens.html:6
-msgid "Authorized applications"
-msgstr ""
-
-#: aleksis/core/templates/oauth2_provider/authorized-tokens.html:33
-msgid "No authorized applications."
-msgstr ""
-
 #: aleksis/core/templates/offline.html:5
 msgid "Network error"
 msgstr ""
 
 #: aleksis/core/templates/offline.html:10
-msgid "Page not available offline."
+msgid "No connection to server."
 msgstr ""
 
 #: aleksis/core/templates/offline.html:14
 msgid ""
 "\n"
-"      This page is not available offline. Since you probably don't have an internet connection, check to see if your WiFi\n"
-"      or mobile data is turned on and try again. If you think you are connected, please contact the system\n"
-"      administrators:\n"
+"      This page is not available without a connection to the server. Please check your internet connection and try again.\n"
+"      If you are connected and the error persists, please contact the system administrators:\n"
 "    "
 msgstr ""
 
@@ -2368,6 +2347,8 @@ msgstr ""
 
 #: aleksis/core/templates/templated_email/base.email:5
 #: aleksis/core/templates/templated_email/base.email:16
+#: aleksis/core/templates/templated_email/invitation.email:6
+#: aleksis/core/templates/templated_email/invitation.email:14
 msgid "Hello"
 msgstr ""
 
@@ -2435,6 +2416,23 @@ msgstr ""
 msgid "Count of objects with new problems"
 msgstr ""
 
+#: aleksis/core/templates/templated_email/invitation.email:4
+#, python-format
+msgid "Invitation to register on %(site)s"
+msgstr ""
+
+#: aleksis/core/templates/templated_email/invitation.email:6
+#: aleksis/core/templates/templated_email/invitation.email:14
+#, python-format
+msgid "Hello %(person)s"
+msgstr ""
+
+#: aleksis/core/templates/templated_email/invitation.email:9
+#: aleksis/core/templates/templated_email/invitation.email:18
+#, python-format
+msgid "you have been invited to register on %(site)s. If you would like to accept this invitation, please click on the following link:"
+msgstr ""
+
 #: aleksis/core/templates/templated_email/notification.email:4
 msgid "New notification for"
 msgstr ""
@@ -2814,148 +2812,156 @@ msgstr ""
 msgid "Download PDF"
 msgstr ""
 
-#: aleksis/core/views.py:280
+#: aleksis/core/views.py:285
 msgid "The school term has been created."
 msgstr ""
 
-#: aleksis/core/views.py:292
+#: aleksis/core/views.py:297
 msgid "The school term has been saved."
 msgstr ""
 
-#: aleksis/core/views.py:396
+#: aleksis/core/views.py:401
 msgid "The child groups were successfully saved."
 msgstr ""
 
-#: aleksis/core/views.py:415 aleksis/core/views.py:425
+#: aleksis/core/views.py:420 aleksis/core/views.py:430
 msgid "The person has been saved."
 msgstr ""
 
-#: aleksis/core/views.py:475
+#: aleksis/core/views.py:480
 msgid "The group has been saved."
 msgstr ""
 
-#: aleksis/core/views.py:558
+#: aleksis/core/views.py:528
+msgid "Maintenance mode was turned on successfully."
+msgstr ""
+
+#: aleksis/core/views.py:530
+msgid "Maintenance mode was turned off successfully."
+msgstr ""
+
+#: aleksis/core/views.py:588
 msgid "The announcement has been saved."
 msgstr ""
 
-#: aleksis/core/views.py:574
+#: aleksis/core/views.py:604
 msgid "The announcement has been deleted."
 msgstr ""
 
-#: aleksis/core/views.py:643
+#: aleksis/core/views.py:673
 msgid "The requested preference registry does not exist"
 msgstr ""
 
-#: aleksis/core/views.py:662
+#: aleksis/core/views.py:692
 msgid "The preferences have been saved successfully."
 msgstr ""
 
-#: aleksis/core/views.py:686
+#: aleksis/core/views.py:716
 msgid "The person has been deleted."
 msgstr ""
 
-#: aleksis/core/views.py:700
+#: aleksis/core/views.py:730
 msgid "The group has been deleted."
 msgstr ""
 
-#: aleksis/core/views.py:732
+#: aleksis/core/views.py:762
 msgid "The additional field has been saved."
 msgstr ""
 
-#: aleksis/core/views.py:767
+#: aleksis/core/views.py:797
 msgid "The additional field has been deleted."
 msgstr ""
 
-#: aleksis/core/views.py:792
+#: aleksis/core/views.py:822
 msgid "The group type has been saved."
 msgstr ""
 
-#: aleksis/core/views.py:823
+#: aleksis/core/views.py:853
 msgid "The group type has been deleted."
 msgstr ""
 
-#: aleksis/core/views.py:858
+#: aleksis/core/views.py:888
 msgid "Progress: Run data checks"
 msgstr ""
 
-#: aleksis/core/views.py:859
+#: aleksis/core/views.py:889
 msgid "Run data checks …"
 msgstr ""
 
-#: aleksis/core/views.py:860
+#: aleksis/core/views.py:890
 msgid "The data checks were run successfully."
 msgstr ""
 
-#: aleksis/core/views.py:861
+#: aleksis/core/views.py:891
 msgid "There was a problem while running data checks."
 msgstr ""
 
-#: aleksis/core/views.py:878
+#: aleksis/core/views.py:908
 #, python-brace-format
 msgid "The solve option '{solve_option_obj.verbose_name}' "
 msgstr ""
 
-#: aleksis/core/views.py:888
+#: aleksis/core/views.py:918
 msgid "The requested solve option does not exist"
 msgstr ""
 
-#: aleksis/core/views.py:921
+#: aleksis/core/views.py:951
 msgid "The dashboard widget has been saved."
 msgstr ""
 
-#: aleksis/core/views.py:951
+#: aleksis/core/views.py:981
 msgid "The dashboard widget has been created."
 msgstr ""
 
-#: aleksis/core/views.py:961
+#: aleksis/core/views.py:991
 msgid "The dashboard widget has been deleted."
 msgstr ""
 
-#: aleksis/core/views.py:1033
+#: aleksis/core/views.py:1063
 msgid "Your dashboard configuration has been saved successfully."
 msgstr ""
 
-#: aleksis/core/views.py:1035
+#: aleksis/core/views.py:1065
 msgid "The configuration of the default dashboard has been saved successfully."
 msgstr ""
 
-#: aleksis/core/views.py:1106
+#: aleksis/core/views.py:1136
 #, python-brace-format
 msgid "The invitation was successfully created. The invitation code is {code}"
 msgstr ""
 
-#: aleksis/core/views.py:1203
+#: aleksis/core/views.py:1233
 msgid "We have successfully assigned the permissions."
 msgstr ""
 
-#: aleksis/core/views.py:1213
+#: aleksis/core/views.py:1243
 msgid "The global user permission has been deleted."
 msgstr ""
 
-#: aleksis/core/views.py:1223
+#: aleksis/core/views.py:1253
 msgid "The global group permission has been deleted."
 msgstr ""
 
-#: aleksis/core/views.py:1233
+#: aleksis/core/views.py:1263
 msgid "The object user permission has been deleted."
 msgstr ""
 
-#: aleksis/core/views.py:1243
+#: aleksis/core/views.py:1273
 msgid "The object group permission has been deleted."
 msgstr ""
 
-#: aleksis/core/views.py:1352
+#: aleksis/core/views.py:1382
 msgid "The third-party account could not be disconnected because it is the only login method available."
 msgstr ""
 
-#: aleksis/core/views.py:1359
+#: aleksis/core/views.py:1389
 msgid "The third-party account has been successfully disconnected."
 msgstr ""
 
-#: aleksis/core/views.py:1435
+#: aleksis/core/views.py:1465
 msgid "Person was invited successfully and an email with further instructions has been send to them."
 msgstr ""
 
-#: aleksis/core/views.py:1446
+#: aleksis/core/views.py:1476
 msgid "Person was already invited."
 msgstr ""
diff --git a/aleksis/core/locale/uk/LC_MESSAGES/django.po b/aleksis/core/locale/uk/LC_MESSAGES/django.po
index 2436f531c3722353bcb6f90f73a621130efeed91..92274997c4861c040f92fc4a407c074c3ed0dba7 100644
--- a/aleksis/core/locale/uk/LC_MESSAGES/django.po
+++ b/aleksis/core/locale/uk/LC_MESSAGES/django.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2023-02-27 13:23+0100\n"
+"POT-Creation-Date: 2023-05-09 18:40+0200\n"
 "PO-Revision-Date: 2023-02-08 22:40+0000\n"
 "Last-Translator: Serhii Horichenko <m@sgg.im>\n"
 "Language-Team: Ukrainian <https://translate.edugit.org/projects/aleksis/aleksis-core/uk/>\n"
@@ -18,28 +18,34 @@ msgstr ""
 "Plural-Forms: nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\n"
 "X-Generator: Weblate 4.12.1\n"
 
-#: aleksis/core/apps.py:155
+#: aleksis/core/apps.py:151
+#, fuzzy
+#| msgid "The preferences have been saved successfully."
+msgid "You have been logged out successfully."
+msgstr "Властивості збережені."
+
+#: aleksis/core/apps.py:161
 msgid "OpenID Connect scope"
 msgstr "Межа дії OpenID Connect"
 
-#: aleksis/core/apps.py:156
+#: aleksis/core/apps.py:162
 msgid "Given name, family name, link to profile and picture if existing."
 msgstr "Ім'я, прізвище, посилання на профіль та фото, якщо є в наявності."
 
-#: aleksis/core/apps.py:157
+#: aleksis/core/apps.py:163
 msgid "Full home postal address"
 msgstr "Повна домашня поштова адреса"
 
-#: aleksis/core/apps.py:158
+#: aleksis/core/apps.py:164
 msgid "Email address"
 msgstr "Ел.адреса"
 
-#: aleksis/core/apps.py:159
+#: aleksis/core/apps.py:165
 msgid "Home and mobile phone"
 msgstr "Домашній та мобільний телефони"
 
-#: aleksis/core/apps.py:160 aleksis/core/forms.py:220
-#: aleksis/core/models.py:494 aleksis/core/templates/core/group/list.html:8
+#: aleksis/core/apps.py:166 aleksis/core/forms.py:221
+#: aleksis/core/models.py:495 aleksis/core/templates/core/group/list.html:8
 #: aleksis/core/templates/core/group/list.html:9
 msgid "Groups"
 msgstr "Групи"
@@ -98,172 +104,172 @@ msgstr "Дозвіл"
 msgid "Content type"
 msgstr "Тип змісту"
 
-#: aleksis/core/filters.py:113 aleksis/core/models.py:720
+#: aleksis/core/filters.py:113 aleksis/core/models.py:721
 msgid "User"
 msgstr "Користувач"
 
-#: aleksis/core/filters.py:135 aleksis/core/models.py:493
+#: aleksis/core/filters.py:135 aleksis/core/models.py:494
 msgid "Group"
 msgstr "Група"
 
-#: aleksis/core/forms.py:50 aleksis/core/forms.py:581
+#: aleksis/core/forms.py:51 aleksis/core/forms.py:582
 msgid "Base data"
 msgstr "Основні дані"
 
-#: aleksis/core/forms.py:55 aleksis/core/tables.py:47
+#: aleksis/core/forms.py:56 aleksis/core/tables.py:47
 msgid "Address"
 msgstr "Адреса"
 
-#: aleksis/core/forms.py:56 aleksis/core/forms.py:590
+#: aleksis/core/forms.py:57 aleksis/core/forms.py:591
 msgid "Contact data"
 msgstr "Контактні дані"
 
-#: aleksis/core/forms.py:58
+#: aleksis/core/forms.py:59
 msgid "Advanced personal data"
 msgstr "Додаткові особисті дані"
 
-#: aleksis/core/forms.py:106
+#: aleksis/core/forms.py:107
 msgid "New user"
 msgstr "Новий користувач"
 
-#: aleksis/core/forms.py:106
+#: aleksis/core/forms.py:107
 msgid "Create a new account"
 msgstr "Створити новий обліковий запис"
 
-#: aleksis/core/forms.py:132
+#: aleksis/core/forms.py:133
 msgid "You cannot set a new username when also selecting an existing user."
 msgstr "Обравши вже існуючого користувача неможливо створити новий логін."
 
-#: aleksis/core/forms.py:136
+#: aleksis/core/forms.py:137
 msgid "This username is already in use."
 msgstr "Такий логін вже зайнятий."
 
-#: aleksis/core/forms.py:153 aleksis/core/models.py:141
+#: aleksis/core/forms.py:154 aleksis/core/models.py:142
 msgid "School term"
 msgstr "Навчальний рік"
 
-#: aleksis/core/forms.py:154
+#: aleksis/core/forms.py:155
 msgid "Common data"
 msgstr "Загальні дані"
 
-#: aleksis/core/forms.py:155 aleksis/core/forms.py:207
-#: aleksis/core/models.py:164 aleksis/core/templates/core/person/list.html:8
+#: aleksis/core/forms.py:156 aleksis/core/forms.py:208
+#: aleksis/core/models.py:165 aleksis/core/templates/core/person/list.html:8
 #: aleksis/core/templates/core/person/list.html:9
 msgid "Persons"
 msgstr "Особи"
 
-#: aleksis/core/forms.py:156 aleksis/core/forms.py:592
+#: aleksis/core/forms.py:157 aleksis/core/forms.py:593
 msgid "Additional data"
 msgstr "Додаткові дані"
 
-#: aleksis/core/forms.py:157 aleksis/core/models.py:217
-#: aleksis/core/models.py:546 aleksis/core/tables.py:46
+#: aleksis/core/forms.py:158 aleksis/core/models.py:218
+#: aleksis/core/models.py:547 aleksis/core/tables.py:46
 msgid "Photo"
 msgstr "Фото"
 
-#: aleksis/core/forms.py:199 aleksis/core/forms.py:202
-#: aleksis/core/models.py:84
+#: aleksis/core/forms.py:200 aleksis/core/forms.py:203
+#: aleksis/core/models.py:85
 msgid "Date"
 msgstr "Дата"
 
-#: aleksis/core/forms.py:200 aleksis/core/forms.py:203
-#: aleksis/core/models.py:92
+#: aleksis/core/forms.py:201 aleksis/core/forms.py:204
+#: aleksis/core/models.py:93
 msgid "Time"
 msgstr "Час"
 
-#: aleksis/core/forms.py:233
+#: aleksis/core/forms.py:234
 msgid "From when until when should the announcement be displayed?"
 msgstr "З якого по який час повинно відображатися це оголошення?"
 
-#: aleksis/core/forms.py:236
+#: aleksis/core/forms.py:237
 msgid "Who should see the announcement?"
 msgstr "Хто повинен бачити це оголошення?"
 
-#: aleksis/core/forms.py:237
+#: aleksis/core/forms.py:238
 msgid "Write your announcement:"
 msgstr "Складіть своє оголошеня:"
 
-#: aleksis/core/forms.py:276
+#: aleksis/core/forms.py:277
 msgid "You are not allowed to create announcements which are only valid in the past."
 msgstr "Оголошення для минулого Вам створювати не дозволено."
 
-#: aleksis/core/forms.py:280
+#: aleksis/core/forms.py:281
 msgid "The from date and time must be earlier then the until date and time."
 msgstr "Дата і час початку повинні бути раніше за дату і час закінчення."
 
-#: aleksis/core/forms.py:289
+#: aleksis/core/forms.py:290
 msgid "You need at least one recipient."
 msgstr "Вам потрібен принаймні один отримувач."
 
-#: aleksis/core/forms.py:398
+#: aleksis/core/forms.py:399
 msgid "Invitation code"
 msgstr "Код запрошення"
 
-#: aleksis/core/forms.py:399
+#: aleksis/core/forms.py:400
 msgid "Please enter your invitation code."
 msgstr "Напишіть, будь ласка, свій код запрошення."
 
-#: aleksis/core/forms.py:418 aleksis/core/models.py:192
+#: aleksis/core/forms.py:419 aleksis/core/models.py:193
 msgid "First name"
 msgstr "Ім'я"
 
-#: aleksis/core/forms.py:419 aleksis/core/models.py:193
+#: aleksis/core/forms.py:420 aleksis/core/models.py:194
 msgid "Last name"
 msgstr "Прізвище"
 
-#: aleksis/core/forms.py:428
+#: aleksis/core/forms.py:429
 msgid "A person is using this e-mail address"
 msgstr "Цією ел.адресою хтось користується"
 
-#: aleksis/core/forms.py:456
+#: aleksis/core/forms.py:457
 msgid "Who should get the permission?"
 msgstr "Хто повинен отримати такий дозвіл?"
 
-#: aleksis/core/forms.py:457
+#: aleksis/core/forms.py:458
 msgid "On what?"
 msgstr "В разі чого?"
 
-#: aleksis/core/forms.py:483
+#: aleksis/core/forms.py:484
 msgid "Select objects which the permission should be granted for:"
 msgstr "Оберіть об'єкти, до яких буде наданий дозвіл:"
 
-#: aleksis/core/forms.py:486
+#: aleksis/core/forms.py:487
 msgid "Grant the permission for all objects"
 msgstr "Надати дозвіл до всіх об'єктів"
 
-#: aleksis/core/forms.py:494
+#: aleksis/core/forms.py:495
 msgid "You must select at least one group or person which should get the permission."
 msgstr "Ви повинні обрати принаймні одну групу або особу, хто буде мати дозвіл."
 
-#: aleksis/core/forms.py:499
+#: aleksis/core/forms.py:500
 msgid "You must grant the permission to all objects or to specific objects."
 msgstr "Ви повинні надати дозвіл до всіх або до конкретних об'єктів."
 
-#: aleksis/core/forms.py:586
+#: aleksis/core/forms.py:587
 msgid "Address data"
 msgstr "Дані адреси"
 
-#: aleksis/core/forms.py:598
+#: aleksis/core/forms.py:599
 msgid "Account data"
 msgstr "Дані облікового запису"
 
-#: aleksis/core/forms.py:605
+#: aleksis/core/forms.py:606
 msgid "Password"
 msgstr "Пароль"
 
-#: aleksis/core/forms.py:608
+#: aleksis/core/forms.py:609
 msgid "Password (again)"
 msgstr "Пароль (ще раз)"
 
-#: aleksis/core/forms.py:761
+#: aleksis/core/forms.py:762
 msgid "The selected action does not exist."
 msgstr "Обрана дія не існує."
 
-#: aleksis/core/forms.py:772
+#: aleksis/core/forms.py:773
 msgid "You do not have permission to run {} on all selected objects."
 msgstr "У Вас відсутній дозвіл на запуск {} на усіх обраних об'єктах."
 
-#: aleksis/core/forms.py:828
+#: aleksis/core/forms.py:829
 msgid "No valid selection."
 msgstr "Неправильний вибір."
 
@@ -291,658 +297,658 @@ msgstr "Результат резервного копіювання не зна
 msgid "Linked school term"
 msgstr "Пов'язаний навчальний рік"
 
-#: aleksis/core/models.py:82
+#: aleksis/core/models.py:83
 msgid "Boolean (Yes/No)"
 msgstr "Логічне (Так/Ні)"
 
-#: aleksis/core/models.py:83
+#: aleksis/core/models.py:84
 msgid "Text (one line)"
 msgstr "Текст (один рядок)"
 
-#: aleksis/core/models.py:85
+#: aleksis/core/models.py:86
 msgid "Date and time"
 msgstr "Дата і час"
 
-#: aleksis/core/models.py:86
+#: aleksis/core/models.py:87
 msgid "Decimal number"
 msgstr "Десятичне число"
 
-#: aleksis/core/models.py:87 aleksis/core/models.py:210
+#: aleksis/core/models.py:88 aleksis/core/models.py:211
 msgid "E-mail address"
 msgstr "Адреса ел.пошти"
 
-#: aleksis/core/models.py:88
+#: aleksis/core/models.py:89
 msgid "Integer"
 msgstr "Ціле"
 
-#: aleksis/core/models.py:89
+#: aleksis/core/models.py:90
 msgid "IP address"
 msgstr "IP адреса"
 
-#: aleksis/core/models.py:90
+#: aleksis/core/models.py:91
 msgid "Boolean or empty (Yes/No/Neither)"
 msgstr "Логічне або порожнє (Так/Ні/Нічого)"
 
-#: aleksis/core/models.py:91
+#: aleksis/core/models.py:92
 msgid "Text (multi-line)"
 msgstr "Текст (багаторядковий)"
 
-#: aleksis/core/models.py:93
+#: aleksis/core/models.py:94
 msgid "URL / Link"
 msgstr "URL / Посилання"
 
-#: aleksis/core/models.py:105 aleksis/core/models.py:1077
+#: aleksis/core/models.py:106 aleksis/core/models.py:1078
 msgid "Name"
 msgstr "Повне ім'я"
 
-#: aleksis/core/models.py:107
+#: aleksis/core/models.py:108
 msgid "Start date"
 msgstr "Дата початку"
 
-#: aleksis/core/models.py:108
+#: aleksis/core/models.py:109
 msgid "End date"
 msgstr "Дата закінчення"
 
-#: aleksis/core/models.py:127
+#: aleksis/core/models.py:128
 msgid "The start date must be earlier than the end date."
 msgstr "Початкова дата повинна бути раніше кінцевої."
 
-#: aleksis/core/models.py:134
+#: aleksis/core/models.py:135
 msgid "There is already a school term for this time or a part of this time."
 msgstr "На цей час або на частину цього часу вже припадає навчальний рік."
 
-#: aleksis/core/models.py:142
+#: aleksis/core/models.py:143
 #: aleksis/core/templates/core/school_term/list.html:8
 #: aleksis/core/templates/core/school_term/list.html:9
 msgid "School terms"
 msgstr "Навчальний рік"
 
-#: aleksis/core/models.py:163 aleksis/core/models.py:1026
+#: aleksis/core/models.py:164 aleksis/core/models.py:1027
 msgid "Person"
 msgstr "Особа"
 
-#: aleksis/core/models.py:166
+#: aleksis/core/models.py:167
 msgid "Can view address"
 msgstr "Може бачити адресу"
 
-#: aleksis/core/models.py:167
+#: aleksis/core/models.py:168
 msgid "Can view contact details"
 msgstr "Може бачити контактні дані"
 
-#: aleksis/core/models.py:168
+#: aleksis/core/models.py:169
 msgid "Can view photo"
 msgstr "Може бачити фото"
 
-#: aleksis/core/models.py:169
+#: aleksis/core/models.py:170
 msgid "Can view avatar image"
 msgstr "Може бачити аватар"
 
-#: aleksis/core/models.py:170
+#: aleksis/core/models.py:171
 msgid "Can view persons groups"
 msgstr "Може бачити групи особи"
 
-#: aleksis/core/models.py:171
+#: aleksis/core/models.py:172
 msgid "Can view personal details"
 msgstr "Може бачити особисті дані"
 
-#: aleksis/core/models.py:181
+#: aleksis/core/models.py:182
 msgid "female"
 msgstr "жін"
 
-#: aleksis/core/models.py:181
+#: aleksis/core/models.py:182
 msgid "male"
 msgstr "чол"
 
-#: aleksis/core/models.py:181
+#: aleksis/core/models.py:182
 msgid "other"
 msgstr "інший"
 
-#: aleksis/core/models.py:189 aleksis/core/models.py:1353
+#: aleksis/core/models.py:190 aleksis/core/models.py:1382
 msgid "Linked user"
 msgstr "Пов'язаний користувач"
 
-#: aleksis/core/models.py:195
+#: aleksis/core/models.py:196
 msgid "Additional name(s)"
 msgstr "Додаткові імена"
 
-#: aleksis/core/models.py:199 aleksis/core/models.py:511
-#: aleksis/core/models.py:1439
+#: aleksis/core/models.py:200 aleksis/core/models.py:512
+#: aleksis/core/models.py:1468
 msgid "Short name"
 msgstr "Коротке ім'я"
 
-#: aleksis/core/models.py:202
+#: aleksis/core/models.py:203
 msgid "Street"
 msgstr "Вулиця"
 
-#: aleksis/core/models.py:203
+#: aleksis/core/models.py:204
 msgid "Street number"
 msgstr "Номер будинку"
 
-#: aleksis/core/models.py:204
+#: aleksis/core/models.py:205
 msgid "Postal code"
 msgstr "Поштовий індекс"
 
-#: aleksis/core/models.py:205
+#: aleksis/core/models.py:206
 msgid "Place"
 msgstr "Місто"
 
-#: aleksis/core/models.py:207
+#: aleksis/core/models.py:208
 msgid "Home phone"
 msgstr "Домашній телефон"
 
-#: aleksis/core/models.py:208
+#: aleksis/core/models.py:209
 msgid "Mobile phone"
 msgstr "Мобільний телефон"
 
-#: aleksis/core/models.py:212
+#: aleksis/core/models.py:213
 msgid "Date of birth"
 msgstr "Дата народження"
 
-#: aleksis/core/models.py:213
+#: aleksis/core/models.py:214
 msgid "Place of birth"
 msgstr "Місце народження"
 
-#: aleksis/core/models.py:214
+#: aleksis/core/models.py:215
 msgid "Sex"
 msgstr "Стать"
 
-#: aleksis/core/models.py:221 aleksis/core/models.py:550
+#: aleksis/core/models.py:222 aleksis/core/models.py:551
 msgid "This is an official photo, used for official documents and for internal use cases."
 msgstr "Це офіційне фото, яке використовується для документів та внутрішніх потреб."
 
-#: aleksis/core/models.py:226 aleksis/core/models.py:554
+#: aleksis/core/models.py:227 aleksis/core/models.py:555
 msgid "Display picture / Avatar"
 msgstr "Відобразити фото/аватар"
 
-#: aleksis/core/models.py:229 aleksis/core/models.py:557
+#: aleksis/core/models.py:230 aleksis/core/models.py:558
 msgid "This is a picture or an avatar for public display."
 msgstr "Це фото або аватар для загального відображення."
 
-#: aleksis/core/models.py:234
+#: aleksis/core/models.py:235
 msgid "Guardians / Parents"
 msgstr "Опікуни / батьки"
 
-#: aleksis/core/models.py:241
+#: aleksis/core/models.py:242
 msgid "Primary group"
 msgstr "Основна група"
 
-#: aleksis/core/models.py:244 aleksis/core/models.py:724
-#: aleksis/core/models.py:748 aleksis/core/models.py:843
-#: aleksis/core/models.py:1112
+#: aleksis/core/models.py:245 aleksis/core/models.py:725
+#: aleksis/core/models.py:749 aleksis/core/models.py:844
+#: aleksis/core/models.py:1113
 msgid "Description"
 msgstr "Опис"
 
-#: aleksis/core/models.py:464
+#: aleksis/core/models.py:465
 msgid "Title of field"
 msgstr "Назва поля"
 
-#: aleksis/core/models.py:466
+#: aleksis/core/models.py:467
 msgid "Type of field"
 msgstr "Тип поля"
 
-#: aleksis/core/models.py:468
+#: aleksis/core/models.py:469
 msgid "Required"
 msgstr "Необхідне"
 
-#: aleksis/core/models.py:469
+#: aleksis/core/models.py:470
 msgid "Help text / description"
 msgstr "Допоміжний текст/опис"
 
-#: aleksis/core/models.py:475
+#: aleksis/core/models.py:476
 msgid "Addtitional field for groups"
 msgstr "Додаткове поле для груп"
 
-#: aleksis/core/models.py:476
+#: aleksis/core/models.py:477
 msgid "Addtitional fields for groups"
 msgstr "Додаткові поля для груп"
 
-#: aleksis/core/models.py:496
+#: aleksis/core/models.py:497
 msgid "Can assign child groups to groups"
 msgstr "Може призначати підлеглі групи до груп"
 
-#: aleksis/core/models.py:497
+#: aleksis/core/models.py:498
 msgid "Can view statistics about group."
 msgstr "Може бачити статистику групи."
 
-#: aleksis/core/models.py:509 aleksis/core/models.py:1440
+#: aleksis/core/models.py:510 aleksis/core/models.py:1469
 msgid "Long name"
 msgstr "Довге ім'я"
 
-#: aleksis/core/models.py:519 aleksis/core/templates/core/group/full.html:105
+#: aleksis/core/models.py:520 aleksis/core/templates/core/group/full.html:105
 msgid "Members"
 msgstr "Учасники"
 
-#: aleksis/core/models.py:522 aleksis/core/templates/core/group/full.html:102
+#: aleksis/core/models.py:523 aleksis/core/templates/core/group/full.html:102
 msgid "Owners"
 msgstr "Власники"
 
-#: aleksis/core/models.py:529 aleksis/core/templates/core/group/full.html:59
+#: aleksis/core/models.py:530 aleksis/core/templates/core/group/full.html:59
 msgid "Parent groups"
 msgstr "Батьківські групи"
 
-#: aleksis/core/models.py:537
+#: aleksis/core/models.py:538
 msgid "Type of group"
 msgstr "Тип групи"
 
-#: aleksis/core/models.py:542
+#: aleksis/core/models.py:543
 #: aleksis/core/templates/core/additional_field/list.html:8
 #: aleksis/core/templates/core/additional_field/list.html:9
 msgid "Additional fields"
 msgstr "Додаткові поля"
 
-#: aleksis/core/models.py:723 aleksis/core/models.py:747
-#: aleksis/core/models.py:842 aleksis/core/models.py:1270
+#: aleksis/core/models.py:724 aleksis/core/models.py:748
+#: aleksis/core/models.py:843 aleksis/core/models.py:1299
 #: aleksis/core/templates/core/announcement/list.html:18
 msgid "Title"
 msgstr "Назва"
 
-#: aleksis/core/models.py:726
+#: aleksis/core/models.py:727
 msgid "Application"
 msgstr "Додаток"
 
-#: aleksis/core/models.py:732
+#: aleksis/core/models.py:733
 msgid "Activity"
 msgstr "Активність"
 
-#: aleksis/core/models.py:733
+#: aleksis/core/models.py:734
 msgid "Activities"
 msgstr "Активності"
 
-#: aleksis/core/models.py:739
+#: aleksis/core/models.py:740
 msgid "Sender"
 msgstr "Відправник"
 
-#: aleksis/core/models.py:744
+#: aleksis/core/models.py:745
 msgid "Recipient"
 msgstr "Отримувач"
 
-#: aleksis/core/models.py:749 aleksis/core/models.py:1078
+#: aleksis/core/models.py:750 aleksis/core/models.py:1079
 msgid "Link"
 msgstr "Посилання"
 
-#: aleksis/core/models.py:752 aleksis/core/models.py:1079
-#: aleksis/core/models.py:1400
+#: aleksis/core/models.py:753 aleksis/core/models.py:1080
+#: aleksis/core/models.py:1429
 #: aleksis/core/templates/oauth2_provider/application/detail.html:26
 msgid "Icon"
 msgstr "Піктограма"
 
-#: aleksis/core/models.py:755
+#: aleksis/core/models.py:756
 msgid "Send notification at"
 msgstr "Надіслати сповіщення о"
 
-#: aleksis/core/models.py:757
+#: aleksis/core/models.py:758
 msgid "Read"
 msgstr "Читати"
 
-#: aleksis/core/models.py:758
+#: aleksis/core/models.py:759
 msgid "Sent"
 msgstr "Надіслано"
 
-#: aleksis/core/models.py:775
+#: aleksis/core/models.py:776
 msgid "Notification"
 msgstr "Сповіщення"
 
-#: aleksis/core/models.py:776 aleksis/core/preferences.py:29
+#: aleksis/core/models.py:777 aleksis/core/preferences.py:29
 msgid "Notifications"
 msgstr "Сповіщення"
 
-#: aleksis/core/models.py:844
+#: aleksis/core/models.py:845
 msgid "Link to detailed view"
 msgstr "Посилання на детальний перегляд"
 
-#: aleksis/core/models.py:847
+#: aleksis/core/models.py:848
 msgid "Date and time from when to show"
 msgstr "Дата і час, з якого показувати"
 
-#: aleksis/core/models.py:850
+#: aleksis/core/models.py:851
 msgid "Date and time until when to show"
 msgstr "Дата і час, до якого показувати"
 
-#: aleksis/core/models.py:875
+#: aleksis/core/models.py:876
 msgid "Announcement"
 msgstr "Оголошення"
 
-#: aleksis/core/models.py:876
+#: aleksis/core/models.py:877
 #: aleksis/core/templates/core/announcement/list.html:7
 #: aleksis/core/templates/core/announcement/list.html:8
 msgid "Announcements"
 msgstr "Оголошення"
 
-#: aleksis/core/models.py:913
+#: aleksis/core/models.py:914
 msgid "Announcement recipient"
 msgstr "Отримувач оголошення"
 
-#: aleksis/core/models.py:914
+#: aleksis/core/models.py:915
 msgid "Announcement recipients"
 msgstr "Отримувачі оголошення"
 
-#: aleksis/core/models.py:934
+#: aleksis/core/models.py:935
 msgid "Widget Title"
 msgstr "Назва віджета"
 
-#: aleksis/core/models.py:935
+#: aleksis/core/models.py:936
 msgid "Activate Widget"
 msgstr "Активувати віджет"
 
-#: aleksis/core/models.py:936
+#: aleksis/core/models.py:937
 msgid "Widget is broken"
 msgstr "Віджет зламався"
 
-#: aleksis/core/models.py:939
+#: aleksis/core/models.py:940
 msgid "Size on mobile devices"
 msgstr "Розмір на мобільних"
 
-#: aleksis/core/models.py:940
+#: aleksis/core/models.py:941
 msgid "<= 600 px, 12 columns"
 msgstr "<= 600 пікс, 12 стовпчиків"
 
-#: aleksis/core/models.py:945
+#: aleksis/core/models.py:946
 msgid "Size on tablet devices"
 msgstr "Розмір на планшетах"
 
-#: aleksis/core/models.py:946
+#: aleksis/core/models.py:947
 msgid "> 600 px, 12 columns"
 msgstr "> 600 пікс, 12 стовпчиків"
 
-#: aleksis/core/models.py:951
+#: aleksis/core/models.py:952
 msgid "Size on desktop devices"
 msgstr "Розмір на ПК"
 
-#: aleksis/core/models.py:952
+#: aleksis/core/models.py:953
 msgid "> 992 px, 12 columns"
 msgstr "> 992 пікс, 12 стовпчиків"
 
-#: aleksis/core/models.py:957
+#: aleksis/core/models.py:958
 msgid "Size on large desktop devices"
 msgstr "Розмір на великих екранах"
 
-#: aleksis/core/models.py:958
+#: aleksis/core/models.py:959
 msgid "> 1200 px>, 12 columns"
 msgstr "> 1200 пікс, 12 стовпчиків"
 
-#: aleksis/core/models.py:989
+#: aleksis/core/models.py:990
 msgid "Can edit default dashboard"
 msgstr "Може редагувати типову/стандартну інформпанель"
 
-#: aleksis/core/models.py:990
+#: aleksis/core/models.py:991
 msgid "Dashboard Widget"
 msgstr "Віджет інформпанелі"
 
-#: aleksis/core/models.py:991
+#: aleksis/core/models.py:992
 msgid "Dashboard Widgets"
 msgstr "Віджети інформпанелі"
 
-#: aleksis/core/models.py:997
+#: aleksis/core/models.py:998
 msgid "URL"
 msgstr "URL"
 
-#: aleksis/core/models.py:998
+#: aleksis/core/models.py:999
 msgid "Icon URL"
 msgstr "Піктограма URL"
 
-#: aleksis/core/models.py:1004
+#: aleksis/core/models.py:1005
 msgid "External link widget"
 msgstr "Зовнішнє посилання на віджет"
 
-#: aleksis/core/models.py:1005
+#: aleksis/core/models.py:1006
 msgid "External link widgets"
 msgstr "Зовнішні посилання на віджети"
 
-#: aleksis/core/models.py:1011
+#: aleksis/core/models.py:1012
 msgid "Content"
 msgstr "Зміст"
 
-#: aleksis/core/models.py:1017
+#: aleksis/core/models.py:1018
 msgid "Static content widget"
 msgstr "Віджет з постійним змістом"
 
-#: aleksis/core/models.py:1018
+#: aleksis/core/models.py:1019
 msgid "Static content widgets"
 msgstr "Віджети з постійним змістом"
 
-#: aleksis/core/models.py:1023
+#: aleksis/core/models.py:1024
 msgid "Dashboard widget"
 msgstr "Віджет інформпанелі"
 
-#: aleksis/core/models.py:1028
+#: aleksis/core/models.py:1029
 msgid "Order"
 msgstr "Порядок"
 
-#: aleksis/core/models.py:1029
+#: aleksis/core/models.py:1030
 msgid "Part of the default dashboard"
 msgstr "Частина типової інформпанелі"
 
-#: aleksis/core/models.py:1044
+#: aleksis/core/models.py:1045
 msgid "Dashboard widget order"
 msgstr "Порядок віджету на інформпанелі"
 
-#: aleksis/core/models.py:1045
+#: aleksis/core/models.py:1046
 msgid "Dashboard widget orders"
 msgstr "Порядок віджетів на інформпанелі"
 
-#: aleksis/core/models.py:1051
+#: aleksis/core/models.py:1052
 msgid "Menu ID"
 msgstr "Меню ID"
 
-#: aleksis/core/models.py:1064
+#: aleksis/core/models.py:1065
 msgid "Custom menu"
 msgstr "Користувацьке меню"
 
-#: aleksis/core/models.py:1065
+#: aleksis/core/models.py:1066
 msgid "Custom menus"
 msgstr "Користувацькі меню"
 
-#: aleksis/core/models.py:1075
+#: aleksis/core/models.py:1076
 msgid "Menu"
 msgstr "Меню"
 
-#: aleksis/core/models.py:1085
+#: aleksis/core/models.py:1086
 msgid "Custom menu item"
 msgstr "Пункт користувацького меню"
 
-#: aleksis/core/models.py:1086
+#: aleksis/core/models.py:1087
 msgid "Custom menu items"
 msgstr "Пункти користувацького меню"
 
-#: aleksis/core/models.py:1111
+#: aleksis/core/models.py:1112
 msgid "Title of type"
 msgstr "Назва типу"
 
-#: aleksis/core/models.py:1118 aleksis/core/templates/core/group/full.html:50
+#: aleksis/core/models.py:1119 aleksis/core/templates/core/group/full.html:50
 msgid "Group type"
 msgstr "Тип групи"
 
-#: aleksis/core/models.py:1119
+#: aleksis/core/models.py:1120
 #: aleksis/core/templates/core/group_type/list.html:8
 #: aleksis/core/templates/core/group_type/list.html:9
 msgid "Group types"
 msgstr "Типи груп"
 
-#: aleksis/core/models.py:1132
+#: aleksis/core/models.py:1133
 msgid "Can view system status"
 msgstr "Може переглядати стан системи"
 
-#: aleksis/core/models.py:1133
+#: aleksis/core/models.py:1134
 msgid "Can manage data"
 msgstr "Може керувати даними"
 
-#: aleksis/core/models.py:1134
+#: aleksis/core/models.py:1135
 msgid "Can impersonate"
 msgstr "Може маскуватися"
 
-#: aleksis/core/models.py:1135
+#: aleksis/core/models.py:1136
 msgid "Can use search"
 msgstr "Може шукати"
 
-#: aleksis/core/models.py:1136
+#: aleksis/core/models.py:1137
 msgid "Can change site preferences"
 msgstr "Може змінювати властивості сайту"
 
-#: aleksis/core/models.py:1137
+#: aleksis/core/models.py:1138
 msgid "Can change person preferences"
 msgstr "Може змінювати властивості особи"
 
-#: aleksis/core/models.py:1138
+#: aleksis/core/models.py:1139
 msgid "Can change group preferences"
 msgstr "Може змінювати властивості групи"
 
-#: aleksis/core/models.py:1139
+#: aleksis/core/models.py:1140
 msgid "Can test PDF generation"
 msgstr "Може генерувати тестові PDF"
 
-#: aleksis/core/models.py:1140
+#: aleksis/core/models.py:1141
 msgid "Can invite persons"
 msgstr "Може запрошувати осіб"
 
-#: aleksis/core/models.py:1176
+#: aleksis/core/models.py:1177
 msgid "Related data check task"
 msgstr "Завдання перевірки пов'язаних даних"
 
-#: aleksis/core/models.py:1184
+#: aleksis/core/models.py:1185
 msgid "Issue solved"
 msgstr "Проблема вирішена"
 
-#: aleksis/core/models.py:1185
+#: aleksis/core/models.py:1186
 msgid "Notification sent"
 msgstr "Сповіщення надіслане"
 
-#: aleksis/core/models.py:1198
+#: aleksis/core/models.py:1199
 msgid "Data check result"
 msgstr "Результат перевірки даних"
 
-#: aleksis/core/models.py:1199
+#: aleksis/core/models.py:1200
 msgid "Data check results"
 msgstr "Результати перевірки даних"
 
-#: aleksis/core/models.py:1201
+#: aleksis/core/models.py:1202
 msgid "Can run data checks"
 msgstr "Може запускати перевірки даних"
 
-#: aleksis/core/models.py:1202
+#: aleksis/core/models.py:1203
 msgid "Can solve data check problems"
 msgstr "Може розв'язувати проблеми перевірки даних"
 
-#: aleksis/core/models.py:1209
+#: aleksis/core/models.py:1210
 msgid "E-Mail address"
 msgstr "Адреса ел.пошти"
 
-#: aleksis/core/models.py:1241
+#: aleksis/core/models.py:1270
 msgid "Owner"
 msgstr "Власник"
 
-#: aleksis/core/models.py:1245
+#: aleksis/core/models.py:1274
 msgid "File expires at"
 msgstr "Файл дійсний до"
 
-#: aleksis/core/models.py:1248
+#: aleksis/core/models.py:1277
 msgid "Generated HTML file"
 msgstr "Згенерований файл HTML"
 
-#: aleksis/core/models.py:1251
+#: aleksis/core/models.py:1280
 msgid "Generated PDF file"
 msgstr "Згенерований файл PDF"
 
-#: aleksis/core/models.py:1258
+#: aleksis/core/models.py:1287
 msgid "PDF file"
 msgstr "Файл PDF"
 
-#: aleksis/core/models.py:1259
+#: aleksis/core/models.py:1288
 msgid "PDF files"
 msgstr "Файли PDF"
 
-#: aleksis/core/models.py:1264
+#: aleksis/core/models.py:1293
 msgid "Task result"
 msgstr "Результат завдання"
 
-#: aleksis/core/models.py:1267
+#: aleksis/core/models.py:1296
 msgid "Task user"
 msgstr "Користувач завдання"
 
-#: aleksis/core/models.py:1271
+#: aleksis/core/models.py:1300
 msgid "Back URL"
 msgstr "URL для повернення"
 
-#: aleksis/core/models.py:1272
+#: aleksis/core/models.py:1301
 msgid "Progress title"
 msgstr "Назва процесу"
 
-#: aleksis/core/models.py:1273
+#: aleksis/core/models.py:1302
 msgid "Error message"
 msgstr "Повідомлення про помилку"
 
-#: aleksis/core/models.py:1274
+#: aleksis/core/models.py:1303
 msgid "Success message"
 msgstr "Повідомлення про успіх"
 
-#: aleksis/core/models.py:1275
+#: aleksis/core/models.py:1304
 msgid "Redirect on success URL"
 msgstr "Посилання для перенаправлення в разі успіху"
 
-#: aleksis/core/models.py:1277
+#: aleksis/core/models.py:1306
 msgid "Additional button title"
 msgstr "Назва додаткової кнопки"
 
-#: aleksis/core/models.py:1279
+#: aleksis/core/models.py:1308
 msgid "Additional button URL"
 msgstr "Посилання додаткової кнопки"
 
-#: aleksis/core/models.py:1281
+#: aleksis/core/models.py:1310
 msgid "Additional button icon"
 msgstr "Піктограма додаткової кнопки"
 
-#: aleksis/core/models.py:1283
+#: aleksis/core/models.py:1312
 msgid "Result fetched"
 msgstr "Отриманий результат"
 
-#: aleksis/core/models.py:1308
+#: aleksis/core/models.py:1337
 msgid "Background task completed successfully"
 msgstr "Фонове завдання успішно завершене"
 
-#: aleksis/core/models.py:1309
+#: aleksis/core/models.py:1338
 msgid "The background task '{}' has been completed successfully."
 msgstr "Фонове завдання '{}' було успішно завершене."
 
-#: aleksis/core/models.py:1315
+#: aleksis/core/models.py:1344
 msgid "Background task failed"
 msgstr "Збій фонового завдання"
 
-#: aleksis/core/models.py:1316
+#: aleksis/core/models.py:1345
 msgid "The background task '{}' has failed."
 msgstr "У фонового завдання '{}' стався збій."
 
-#: aleksis/core/models.py:1325
+#: aleksis/core/models.py:1354
 msgid "Background task"
 msgstr "Фонове завдання"
 
-#: aleksis/core/models.py:1339
+#: aleksis/core/models.py:1368
 msgid "Task user assignment"
 msgstr "Призначення користувача завдання"
 
-#: aleksis/core/models.py:1340
+#: aleksis/core/models.py:1369
 msgid "Task user assignments"
 msgstr "Призначення користувачів завдання"
 
-#: aleksis/core/models.py:1356
+#: aleksis/core/models.py:1385
 msgid "Additional attributes"
 msgstr "Додаткові атрибути"
 
-#: aleksis/core/models.py:1394
+#: aleksis/core/models.py:1423
 msgid "Allowed scopes that clients can request"
 msgstr "Дозволені межі дії, які можуть запитувати клієнти"
 
-#: aleksis/core/models.py:1404
+#: aleksis/core/models.py:1433
 msgid "This image will be shown as icon in the authorization flow. It should be squared."
 msgstr "Це зображення буде іконкою під час авторизації. Воно повинне бути квадратним."
 
-#: aleksis/core/models.py:1449
+#: aleksis/core/models.py:1478
 msgid "Can view room timetable"
 msgstr "Може переглядати розклад кімнати"
 
-#: aleksis/core/models.py:1451
+#: aleksis/core/models.py:1480
 msgid "Room"
 msgstr "Кімната"
 
-#: aleksis/core/models.py:1452
+#: aleksis/core/models.py:1481
 msgid "Rooms"
 msgstr "Кімнати"
 
@@ -1154,15 +1160,15 @@ msgstr "Автоматично оновлювати інформпанель т
 msgid "Country for phone number parsing"
 msgstr "Країна для розбору номера телефона"
 
-#: aleksis/core/settings.py:549
+#: aleksis/core/settings.py:551
 msgid "English"
 msgstr "Англійська"
 
-#: aleksis/core/settings.py:550
+#: aleksis/core/settings.py:552
 msgid "German"
 msgstr "Німецька"
 
-#: aleksis/core/settings.py:551
+#: aleksis/core/settings.py:553
 msgid "Ukrainian"
 msgstr "Українська"
 
@@ -1174,14 +1180,14 @@ msgid "Edit"
 msgstr "Редагувати"
 
 #: aleksis/core/tables.py:27 aleksis/core/tables.py:148
-#: aleksis/core/tables.py:192
+#: aleksis/core/tables.py:185
 #: aleksis/core/templates/core/announcement/list.html:22
 msgid "Actions"
 msgstr "Дії"
 
 #: aleksis/core/tables.py:115 aleksis/core/tables.py:116
 #: aleksis/core/tables.py:130 aleksis/core/tables.py:146
-#: aleksis/core/tables.py:190
+#: aleksis/core/tables.py:183
 #: aleksis/core/templates/core/announcement/list.html:42
 #: aleksis/core/templates/core/group/full.html:33
 #: aleksis/core/templates/core/pages/delete.html:22
@@ -1246,7 +1252,7 @@ msgstr ""
 "            Ви також можете звернутися до них безпосередньо:\n"
 "          "
 
-#: aleksis/core/templates/500.html:21
+#: aleksis/core/templates/500.html:21 aleksis/core/templates/offline.html:22
 msgid "Retry"
 msgstr "Спробувати ще"
 
@@ -1602,20 +1608,20 @@ msgstr "Створити %(name)s"
 msgid "Edit default dashboard"
 msgstr "Редагувати типову/стандартну інформпанель"
 
-#: aleksis/core/templates/core/data_check/list.html:9
 #: aleksis/core/templates/core/data_check/list.html:10
+#: aleksis/core/templates/core/data_check/list.html:11
 msgid "Data checks"
 msgstr "Перевірки даних"
 
-#: aleksis/core/templates/core/data_check/list.html:15
+#: aleksis/core/templates/core/data_check/list.html:16
 msgid "Check data again"
 msgstr "Перевірити дані ще раз"
 
-#: aleksis/core/templates/core/data_check/list.html:22
+#: aleksis/core/templates/core/data_check/list.html:23
 msgid "The system detected some problems with your data."
 msgstr "Система виявила деякі проблеми з Вашими даними."
 
-#: aleksis/core/templates/core/data_check/list.html:23
+#: aleksis/core/templates/core/data_check/list.html:24
 msgid ""
 "Please go through all data and check whether some extra action is\n"
 "          needed."
@@ -1623,43 +1629,43 @@ msgstr ""
 "Будь ласка, уважно перегляньте усі дані і перевірте чи не потрібно\n"
 "          щось зробити."
 
-#: aleksis/core/templates/core/data_check/list.html:31
+#: aleksis/core/templates/core/data_check/list.html:32
 msgid "Everything is fine."
 msgstr "Все чудово."
 
-#: aleksis/core/templates/core/data_check/list.html:32
+#: aleksis/core/templates/core/data_check/list.html:33
 msgid "The system hasn't detected any problems with your data."
 msgstr "Система не виявила жодних проблем з Вашими даними."
 
-#: aleksis/core/templates/core/data_check/list.html:40
+#: aleksis/core/templates/core/data_check/list.html:41
 msgid "Detected problems"
 msgstr "Виявлені проблеми"
 
-#: aleksis/core/templates/core/data_check/list.html:45
+#: aleksis/core/templates/core/data_check/list.html:46
 msgid "Affected object"
 msgstr "Залежні об'єкти"
 
-#: aleksis/core/templates/core/data_check/list.html:46
+#: aleksis/core/templates/core/data_check/list.html:47
 msgid "Detected problem"
 msgstr "Виявлена проблема"
 
-#: aleksis/core/templates/core/data_check/list.html:47
+#: aleksis/core/templates/core/data_check/list.html:48
 msgid "Show details"
 msgstr "Детальніше"
 
-#: aleksis/core/templates/core/data_check/list.html:48
+#: aleksis/core/templates/core/data_check/list.html:49
 msgid "Options to solve the problem"
 msgstr "Варіанти вирішення проблеми"
 
-#: aleksis/core/templates/core/data_check/list.html:63
+#: aleksis/core/templates/core/data_check/list.html:65
 msgid "Show object"
 msgstr "Переглянути об'єкт"
 
-#: aleksis/core/templates/core/data_check/list.html:86
+#: aleksis/core/templates/core/data_check/list.html:89
 msgid "Registered checks"
 msgstr "Зареєстровані перевірки"
 
-#: aleksis/core/templates/core/data_check/list.html:90
+#: aleksis/core/templates/core/data_check/list.html:93
 msgid ""
 "\n"
 "            The system will check for the following problems:\n"
@@ -1916,33 +1922,38 @@ msgstr "Стан системи"
 msgid "System checks"
 msgstr "Системні перевірки"
 
-#: aleksis/core/templates/core/pages/system_status.html:22
+#: aleksis/core/templates/core/pages/system_status.html:26
 msgid "Maintenance mode enabled"
 msgstr "Активований режим обслуговування"
 
-#: aleksis/core/templates/core/pages/system_status.html:24
+#: aleksis/core/templates/core/pages/system_status.html:28
+#, fuzzy
+#| msgid ""
+#| "\n"
+#| "                Only admin and visitors from internal IPs can access the site.\n"
+#| "              "
 msgid ""
 "\n"
-"                Only admin and visitors from internal IPs can access the site.\n"
-"              "
+"                  Only admin and visitors from internal IPs can access the site.\n"
+"                "
 msgstr ""
 "\n"
 "                Доступ до сайту мають лише адміністратор та відвідувачі з внутрішніми IP-адресами.\n"
 "              "
 
-#: aleksis/core/templates/core/pages/system_status.html:36
+#: aleksis/core/templates/core/pages/system_status.html:39
 msgid "Maintenance mode disabled"
 msgstr "Режим обслуговування деактивований"
 
-#: aleksis/core/templates/core/pages/system_status.html:37
+#: aleksis/core/templates/core/pages/system_status.html:40
 msgid "Everyone can access the site."
 msgstr "Доступ до сайту мають усі."
 
-#: aleksis/core/templates/core/pages/system_status.html:47
+#: aleksis/core/templates/core/pages/system_status.html:51
 msgid "Debug mode enabled"
 msgstr "Активований режим налагодження"
 
-#: aleksis/core/templates/core/pages/system_status.html:49
+#: aleksis/core/templates/core/pages/system_status.html:53
 msgid ""
 "\n"
 "                The web server throws back debug information on errors. Do not use in production!\n"
@@ -1952,11 +1963,11 @@ msgstr ""
 "                Веб-сервер кидає під час помилок інформацію щодо налагодження. Не використовуйте в продакшені!\n"
 "              "
 
-#: aleksis/core/templates/core/pages/system_status.html:56
+#: aleksis/core/templates/core/pages/system_status.html:60
 msgid "Debug mode disabled"
 msgstr "Режим налагодження деактивований"
 
-#: aleksis/core/templates/core/pages/system_status.html:58
+#: aleksis/core/templates/core/pages/system_status.html:62
 msgid ""
 "\n"
 "                Debug mode is disabled. Default error pages are displayed on errors.\n"
@@ -1966,42 +1977,42 @@ msgstr ""
 "                Режим налагодження деактивований. В разі збоїв відображатимуться типові сторінки помилок.\n"
 "              "
 
-#: aleksis/core/templates/core/pages/system_status.html:71
+#: aleksis/core/templates/core/pages/system_status.html:75
 msgid "System health checks"
 msgstr "Перевірки роботи системи"
 
-#: aleksis/core/templates/core/pages/system_status.html:77
+#: aleksis/core/templates/core/pages/system_status.html:81
 msgid "Service"
 msgstr "Служба"
 
-#: aleksis/core/templates/core/pages/system_status.html:78
-#: aleksis/core/templates/core/pages/system_status.html:119
+#: aleksis/core/templates/core/pages/system_status.html:82
+#: aleksis/core/templates/core/pages/system_status.html:123
 msgid "Status"
 msgstr "Стан"
 
-#: aleksis/core/templates/core/pages/system_status.html:79
+#: aleksis/core/templates/core/pages/system_status.html:83
 msgid "Time taken"
 msgstr "Тривалість"
 
-#: aleksis/core/templates/core/pages/system_status.html:100
+#: aleksis/core/templates/core/pages/system_status.html:104
 msgid "seconds"
 msgstr "сек"
 
-#: aleksis/core/templates/core/pages/system_status.html:111
+#: aleksis/core/templates/core/pages/system_status.html:115
 msgid "Celery task results"
 msgstr "Результати виконання Celery"
 
-#: aleksis/core/templates/core/pages/system_status.html:116
+#: aleksis/core/templates/core/pages/system_status.html:120
 #: aleksis/core/templates/templated_email/celery_failure.email:9
 #: aleksis/core/templates/templated_email/celery_failure.email:28
 msgid "Task"
 msgstr "Завдання"
 
-#: aleksis/core/templates/core/pages/system_status.html:117
+#: aleksis/core/templates/core/pages/system_status.html:121
 msgid "ID"
 msgstr "ID"
 
-#: aleksis/core/templates/core/pages/system_status.html:118
+#: aleksis/core/templates/core/pages/system_status.html:122
 msgid "Date done"
 msgstr "Час завершення"
 
@@ -2250,11 +2261,11 @@ msgstr "Запрошення ел.поштою"
 msgid "Generate invitation code"
 msgstr "Створити код запрошення"
 
-#: aleksis/core/templates/invitations/forms/_invite.html:29
+#: aleksis/core/templates/invitations/forms/_invite.html:30
 msgid "Generate code"
 msgstr "Генерація коду"
 
-#: aleksis/core/templates/invitations/forms/_invite.html:33
+#: aleksis/core/templates/invitations/forms/_invite.html:34
 msgid "Invitations"
 msgstr "Запрошення"
 
@@ -2270,7 +2281,6 @@ msgstr "Реєстрація додатку OAuth2"
 
 #: aleksis/core/templates/oauth2_provider/application/create.html:14
 #: aleksis/core/templates/oauth2_provider/application/edit.html:14
-#: aleksis/core/templates/oauth2_provider/authorized-token-delete.html:24
 #: aleksis/core/templates/two_factor/_wizard_actions.html:6
 msgid "Cancel"
 msgstr "Скасувати"
@@ -2344,43 +2354,26 @@ msgstr "Дозволити"
 msgid "Disallow"
 msgstr "Заборонити"
 
-#: aleksis/core/templates/oauth2_provider/authorized-token-delete.html:5
-#: aleksis/core/templates/oauth2_provider/authorized-token-delete.html:6
-#: aleksis/core/templates/oauth2_provider/authorized-tokens.html:23
-msgid "Revoke access"
-msgstr "Відкликати доступ"
-
-#: aleksis/core/templates/oauth2_provider/authorized-token-delete.html:12
-msgid "Are you sure to revoke the access for this application?"
-msgstr "Ви дійсно хочете відкликати доступ для цього додатку?"
-
-#: aleksis/core/templates/oauth2_provider/authorized-token-delete.html:20
-msgid "Revoke"
-msgstr "Відкликати"
-
-#: aleksis/core/templates/oauth2_provider/authorized-tokens.html:5
-#: aleksis/core/templates/oauth2_provider/authorized-tokens.html:6
-msgid "Authorized applications"
-msgstr "Авторизовані додатки"
-
-#: aleksis/core/templates/oauth2_provider/authorized-tokens.html:33
-msgid "No authorized applications."
-msgstr "Авторизованих додатків немає."
-
 #: aleksis/core/templates/offline.html:5
 msgid "Network error"
 msgstr "Помилка мережі"
 
 #: aleksis/core/templates/offline.html:10
-msgid "Page not available offline."
-msgstr "Сторінка в автономному режимі не доступна."
+msgid "No connection to server."
+msgstr ""
 
 #: aleksis/core/templates/offline.html:14
+#, fuzzy
+#| msgid ""
+#| "\n"
+#| "      This page is not available offline. Since you probably don't have an internet connection, check to see if your WiFi\n"
+#| "      or mobile data is turned on and try again. If you think you are connected, please contact the system\n"
+#| "      administrators:\n"
+#| "    "
 msgid ""
 "\n"
-"      This page is not available offline. Since you probably don't have an internet connection, check to see if your WiFi\n"
-"      or mobile data is turned on and try again. If you think you are connected, please contact the system\n"
-"      administrators:\n"
+"      This page is not available without a connection to the server. Please check your internet connection and try again.\n"
+"      If you are connected and the error persists, please contact the system administrators:\n"
 "    "
 msgstr ""
 "\n"
@@ -2521,6 +2514,8 @@ msgstr ""
 
 #: aleksis/core/templates/templated_email/base.email:5
 #: aleksis/core/templates/templated_email/base.email:16
+#: aleksis/core/templates/templated_email/invitation.email:6
+#: aleksis/core/templates/templated_email/invitation.email:14
 msgid "Hello"
 msgstr "Привіт"
 
@@ -2597,6 +2592,24 @@ msgstr "Опис проблеми"
 msgid "Count of objects with new problems"
 msgstr "Кількість об'єктів з новими проблемами"
 
+#: aleksis/core/templates/templated_email/invitation.email:4
+#, python-format
+msgid "Invitation to register on %(site)s"
+msgstr ""
+
+#: aleksis/core/templates/templated_email/invitation.email:6
+#: aleksis/core/templates/templated_email/invitation.email:14
+#, fuzzy, python-format
+#| msgid "Selected persons"
+msgid "Hello %(person)s"
+msgstr "Позначені особи"
+
+#: aleksis/core/templates/templated_email/invitation.email:9
+#: aleksis/core/templates/templated_email/invitation.email:18
+#, python-format
+msgid "you have been invited to register on %(site)s. If you would like to accept this invitation, please click on the following link:"
+msgstr ""
+
 #: aleksis/core/templates/templated_email/notification.email:4
 msgid "New notification for"
 msgstr "Нове сповіщення для"
@@ -3138,152 +3151,180 @@ msgstr "Під час створення файлу PDF виникла проб
 msgid "Download PDF"
 msgstr "Звантажити PDF"
 
-#: aleksis/core/views.py:280
+#: aleksis/core/views.py:285
 msgid "The school term has been created."
 msgstr "Навчальний рік створений."
 
-#: aleksis/core/views.py:292
+#: aleksis/core/views.py:297
 msgid "The school term has been saved."
 msgstr "Навчальний рік збережений."
 
-#: aleksis/core/views.py:396
+#: aleksis/core/views.py:401
 msgid "The child groups were successfully saved."
 msgstr "Підлеглі групи збережені."
 
-#: aleksis/core/views.py:415 aleksis/core/views.py:425
+#: aleksis/core/views.py:420 aleksis/core/views.py:430
 msgid "The person has been saved."
 msgstr "Особа збережена."
 
-#: aleksis/core/views.py:475
+#: aleksis/core/views.py:480
 msgid "The group has been saved."
 msgstr "Група збережена."
 
-#: aleksis/core/views.py:558
+#: aleksis/core/views.py:528
+#, fuzzy
+#| msgid "The data checks were run successfully."
+msgid "Maintenance mode was turned on successfully."
+msgstr "Перевірка даних успішно запущена."
+
+#: aleksis/core/views.py:530
+msgid "Maintenance mode was turned off successfully."
+msgstr ""
+
+#: aleksis/core/views.py:588
 msgid "The announcement has been saved."
 msgstr "Оголошення збережене."
 
-#: aleksis/core/views.py:574
+#: aleksis/core/views.py:604
 msgid "The announcement has been deleted."
 msgstr "Оголошення видалене."
 
-#: aleksis/core/views.py:643
+#: aleksis/core/views.py:673
 msgid "The requested preference registry does not exist"
 msgstr "Журналу із запитаними властивостями не існує"
 
-#: aleksis/core/views.py:662
+#: aleksis/core/views.py:692
 msgid "The preferences have been saved successfully."
 msgstr "Властивості збережені."
 
-#: aleksis/core/views.py:686
+#: aleksis/core/views.py:716
 msgid "The person has been deleted."
 msgstr "Особа видалена."
 
-#: aleksis/core/views.py:700
+#: aleksis/core/views.py:730
 msgid "The group has been deleted."
 msgstr "Група видалена."
 
-#: aleksis/core/views.py:732
+#: aleksis/core/views.py:762
 msgid "The additional field has been saved."
 msgstr "Додаткове поле збережене."
 
-#: aleksis/core/views.py:767
+#: aleksis/core/views.py:797
 msgid "The additional field has been deleted."
 msgstr "Додаткове поле видалене."
 
-#: aleksis/core/views.py:792
+#: aleksis/core/views.py:822
 msgid "The group type has been saved."
 msgstr "Тип групи збережений."
 
-#: aleksis/core/views.py:823
+#: aleksis/core/views.py:853
 msgid "The group type has been deleted."
 msgstr "Тип групи видалений."
 
-#: aleksis/core/views.py:858
+#: aleksis/core/views.py:888
 msgid "Progress: Run data checks"
 msgstr "Перебіг: Запуск перевірки даних"
 
-#: aleksis/core/views.py:859
+#: aleksis/core/views.py:889
 msgid "Run data checks …"
 msgstr "Запускається перевірка даних …"
 
-#: aleksis/core/views.py:860
+#: aleksis/core/views.py:890
 msgid "The data checks were run successfully."
 msgstr "Перевірка даних успішно запущена."
 
-#: aleksis/core/views.py:861
+#: aleksis/core/views.py:891
 msgid "There was a problem while running data checks."
 msgstr "Під час запуску перевірки даних виникла проблема."
 
-#: aleksis/core/views.py:878
+#: aleksis/core/views.py:908
 #, python-brace-format
 msgid "The solve option '{solve_option_obj.verbose_name}' "
 msgstr "Варіант розв'язання \"{solve_option_obj.verbose_name}\" "
 
-#: aleksis/core/views.py:888
+#: aleksis/core/views.py:918
 msgid "The requested solve option does not exist"
 msgstr "Запитаний варіант розв'язання не існує"
 
-#: aleksis/core/views.py:921
+#: aleksis/core/views.py:951
 msgid "The dashboard widget has been saved."
 msgstr "Віджет інформпанелі збережений."
 
-#: aleksis/core/views.py:951
+#: aleksis/core/views.py:981
 msgid "The dashboard widget has been created."
 msgstr "Віджет інформпанелі створений."
 
-#: aleksis/core/views.py:961
+#: aleksis/core/views.py:991
 msgid "The dashboard widget has been deleted."
 msgstr "Віджет інформпанелі видалений."
 
-#: aleksis/core/views.py:1033
+#: aleksis/core/views.py:1063
 msgid "Your dashboard configuration has been saved successfully."
 msgstr "Ваша конфігурація інформпанелі збережена."
 
-#: aleksis/core/views.py:1035
+#: aleksis/core/views.py:1065
 msgid "The configuration of the default dashboard has been saved successfully."
 msgstr "Конфігурація типової/стандартної інформпанелі збережена."
 
-#: aleksis/core/views.py:1106
+#: aleksis/core/views.py:1136
 #, python-brace-format
 msgid "The invitation was successfully created. The invitation code is {code}"
 msgstr "Запрошення успішно створене. Код запрошення: {code}"
 
-#: aleksis/core/views.py:1203
+#: aleksis/core/views.py:1233
 msgid "We have successfully assigned the permissions."
 msgstr "Ми успішно призначили дозволи."
 
-#: aleksis/core/views.py:1213
+#: aleksis/core/views.py:1243
 msgid "The global user permission has been deleted."
 msgstr "Глобальний користувацький дозвіл видалений."
 
-#: aleksis/core/views.py:1223
+#: aleksis/core/views.py:1253
 msgid "The global group permission has been deleted."
 msgstr "Глобальний груповий дозвіл видалений."
 
-#: aleksis/core/views.py:1233
+#: aleksis/core/views.py:1263
 msgid "The object user permission has been deleted."
 msgstr "Об'єктний користувацький дозвіл видалений."
 
-#: aleksis/core/views.py:1243
+#: aleksis/core/views.py:1273
 msgid "The object group permission has been deleted."
 msgstr "Об'єктний груповий дозвіл видалений."
 
-#: aleksis/core/views.py:1352
+#: aleksis/core/views.py:1382
 msgid "The third-party account could not be disconnected because it is the only login method available."
 msgstr "Обліковий запис третьої сторони не можна від'єднати оскільки він єдиний спосіб для входу."
 
-#: aleksis/core/views.py:1359
+#: aleksis/core/views.py:1389
 msgid "The third-party account has been successfully disconnected."
 msgstr "Обліковий запис третьої сторони успішно від'єднаний."
 
-#: aleksis/core/views.py:1435
+#: aleksis/core/views.py:1465
 msgid "Person was invited successfully and an email with further instructions has been send to them."
 msgstr "Особа успішно запрошена. Лист з інструкціями щодо наступних дій надісланий на її ел.пошту."
 
-#: aleksis/core/views.py:1446
+#: aleksis/core/views.py:1476
 msgid "Person was already invited."
 msgstr "Особа вже була запрошена."
 
+#~ msgid "Revoke access"
+#~ msgstr "Відкликати доступ"
+
+#~ msgid "Are you sure to revoke the access for this application?"
+#~ msgstr "Ви дійсно хочете відкликати доступ для цього додатку?"
+
+#~ msgid "Revoke"
+#~ msgstr "Відкликати"
+
+#~ msgid "Authorized applications"
+#~ msgstr "Авторизовані додатки"
+
+#~ msgid "No authorized applications."
+#~ msgstr "Авторизованих додатків немає."
+
+#~ msgid "Page not available offline."
+#~ msgstr "Сторінка в автономному режимі не доступна."
+
 #~ msgid ""
 #~ "\n"
 #~ "            This page is currently unavailable. If this error persists, contact your site administrators:\n"