diff --git a/aleksis/core/locale/ar/LC_MESSAGES/django.po b/aleksis/core/locale/ar/LC_MESSAGES/django.po
index b37f8d899c618c8a11292660bf0a46d7430f1517..eb22c793d02c0e2cc192b386abf757a81e527c22 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: 2020-04-28 13:31+0000\n"
+"POT-Creation-Date: 2020-05-03 15:05+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"
@@ -16,96 +16,89 @@ msgstr ""
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "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"
+"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"
 
-#: forms.py:38 forms.py:113
+#: forms.py:46
 msgid "You cannot set a new username when also selecting an existing user."
 msgstr ""
 
-#: forms.py:41 forms.py:116
+#: forms.py:50
 msgid "This username is already in use."
 msgstr ""
 
-#: forms.py:61
+#: forms.py:74
 msgid "Base data"
 msgstr ""
 
-#: forms.py:67
+#: forms.py:80
 msgid "Address"
 msgstr ""
 
-#: forms.py:68
+#: forms.py:81
 msgid "Contact data"
 msgstr ""
 
-#: forms.py:70
+#: forms.py:83
 msgid "Advanced personal data"
 msgstr ""
 
-#: forms.py:103
+#: forms.py:116
 msgid "New user"
 msgstr ""
 
-#: forms.py:103
+#: forms.py:116
 msgid "Create a new account"
 msgstr ""
 
-#: forms.py:130
+#: forms.py:128
 msgid "Common data"
 msgstr ""
 
-#: forms.py:131 forms.py:188 menus.py:126 models.py:97
+#: forms.py:129 forms.py:169 menus.py:141 models.py:53
 #: templates/core/persons.html:8 templates/core/persons.html:9
 msgid "Persons"
 msgstr ""
 
-#: forms.py:160
-msgid "School name"
-msgstr ""
-
-#: forms.py:161 models.py:40
-msgid "School logo"
-msgstr ""
-
-#: forms.py:181 forms.py:184
+#: forms.py:162 forms.py:165 models.py:31
 msgid "Date"
 msgstr ""
 
-#: forms.py:182 forms.py:185
+#: forms.py:163 forms.py:166 models.py:39
 msgid "Time"
 msgstr ""
 
-#: forms.py:190 menus.py:134 models.py:257 templates/core/groups.html:8
-#: templates/core/groups.html:9 templates/core/person_full.html:95
+#: forms.py:171 menus.py:149 models.py:248 templates/core/groups.html:8
+#: templates/core/groups.html:9 templates/core/person_full.html:106
 msgid "Groups"
 msgstr ""
 
-#: forms.py:194
+#: forms.py:175
 msgid "From when until when should the announcement be displayed?"
 msgstr ""
 
-#: forms.py:197
+#: forms.py:178
 msgid "Who should see the announcement?"
 msgstr ""
 
-#: forms.py:198
+#: forms.py:179
 msgid "Write your announcement:"
 msgstr ""
 
-#: forms.py:237
-msgid "You are not allowed to create announcements which are only valid in the past."
+#: forms.py:216
+msgid ""
+"You are not allowed to create announcements which are only valid in the past."
 msgstr ""
 
-#: forms.py:241
+#: forms.py:220
 msgid "The from date and time must be earlier then the until date and time."
 msgstr ""
 
-#: forms.py:249
+#: forms.py:229
 msgid "You need at least one recipient."
 msgstr ""
 
-#: menus.py:7 templates/registration/login.html:21
-#: templates/two_factor/core/login.html:6
+#: menus.py:7 templates/two_factor/core/login.html:6
 #: templates/two_factor/core/login.html:10
 #: templates/two_factor/core/login.html:73
 msgid "Login"
@@ -123,489 +116,563 @@ msgstr ""
 msgid "Stop impersonation"
 msgstr ""
 
-#: menus.py:35 templates/core/base.html:58
+#: menus.py:35 templates/core/base.html:56
 msgid "Logout"
 msgstr ""
 
 #: menus.py:41
-msgid "Two factor auth"
+msgid "2FA"
 msgstr ""
 
-#: menus.py:50
+#: menus.py:47
 msgid "Me"
 msgstr ""
 
-#: menus.py:61
+#: menus.py:56 templates/dynamic_preferences/form.html:5
+msgid "Preferences"
+msgstr ""
+
+#: menus.py:67
 msgid "Admin"
 msgstr ""
 
-#: menus.py:69 models.py:437 templates/core/announcement/list.html:7
+#: menus.py:75 models.py:479 templates/core/announcement/list.html:7
 #: templates/core/announcement/list.html:8
 msgid "Announcements"
 msgstr ""
 
-#: menus.py:77 templates/core/data_management.html:6
+#: menus.py:86 templates/core/data_management.html:6
 #: templates/core/data_management.html:7
 msgid "Data management"
 msgstr ""
 
-#: menus.py:85 templates/core/system_status.html:5
+#: menus.py:94 templates/core/system_status.html:5
 #: templates/core/system_status.html:7
 msgid "System status"
 msgstr ""
 
-#: menus.py:93
+#: menus.py:105
 msgid "Impersonation"
 msgstr ""
 
-#: menus.py:101
-msgid "Manage school"
+#: menus.py:113
+msgid "Configuration"
 msgstr ""
 
-#: menus.py:109
+#: menus.py:124
 msgid "Backend Admin"
 msgstr ""
 
-#: menus.py:119
+#: menus.py:132
 msgid "People"
 msgstr ""
 
-#: menus.py:142
+#: menus.py:157
 msgid "Persons and accounts"
 msgstr ""
 
-#: menus.py:151
+#: menus.py:168
 msgid "Groups and child groups"
 msgstr ""
 
-#: menus.py:163 templates/core/groups_child_groups.html:7
+#: menus.py:183 templates/core/groups_child_groups.html:7
 #: templates/core/groups_child_groups.html:9
 msgid "Assign child groups to groups"
 msgstr ""
 
-#: menus.py:171
-msgid "Edit school information"
+#: models.py:29
+msgid "Boolean (Yes/No)"
 msgstr ""
 
-#: menus.py:172 templates/core/edit_schoolterm.html:8
-#: templates/core/edit_schoolterm.html:9
-msgid "Edit school term"
+#: models.py:30
+msgid "Text (one line)"
 msgstr ""
 
-#: models.py:33 models.py:559
-msgid "Name"
+#: models.py:32
+msgid "Date and time"
 msgstr ""
 
-#: models.py:35
-msgid "Official name"
+#: models.py:33
+msgid "Decimal number"
 msgstr ""
 
-#: models.py:37
-msgid "Official name of the school, e.g. as given by supervisory authority"
-msgstr ""
-
-#: models.py:53
-msgid "School"
-msgstr ""
-
-#: models.py:54
-msgid "Schools"
+#: models.py:34 models.py:94
+msgid "E-mail address"
 msgstr ""
 
-#: models.py:62
-msgid "Visible caption of the term"
+#: models.py:35
+msgid "Integer"
 msgstr ""
 
-#: models.py:64
-msgid "Effective start date of term"
+#: models.py:36
+msgid "IP address"
 msgstr ""
 
-#: models.py:65
-msgid "Effective end date of term"
+#: models.py:37
+msgid "Boolean or empty (Yes/No/Neither)"
 msgstr ""
 
-#: models.py:85
-msgid "School term"
+#: models.py:38
+msgid "Text (multi-line)"
 msgstr ""
 
-#: models.py:86
-msgid "School terms"
+#: models.py:40
+msgid "URL / Link"
 msgstr ""
 
-#: models.py:96 templates/core/persons_accounts.html:36
+#: models.py:52 templates/core/persons_accounts.html:36
 msgid "Person"
 msgstr ""
 
-#: models.py:99
+#: models.py:55
 msgid "Can view address"
 msgstr ""
 
-#: models.py:100
+#: models.py:56
 msgid "Can view contact details"
 msgstr ""
 
-#: models.py:101
+#: models.py:57
 msgid "Can view photo"
 msgstr ""
 
-#: models.py:102
+#: models.py:58
 msgid "Can view persons groups"
 msgstr ""
 
-#: models.py:103
+#: models.py:59
 msgid "Can view personal details"
 msgstr ""
 
-#: models.py:108
+#: models.py:64
 msgid "female"
 msgstr ""
 
-#: models.py:108
+#: models.py:64
 msgid "male"
 msgstr ""
 
-#: models.py:113
+#: models.py:72
+msgid "Linked user"
+msgstr ""
+
+#: models.py:74
 msgid "Is person active?"
 msgstr ""
 
-#: models.py:115
+#: models.py:76
 msgid "First name"
 msgstr ""
 
-#: models.py:116
+#: models.py:77
 msgid "Last name"
 msgstr ""
 
-#: models.py:118
+#: models.py:79
 msgid "Additional name(s)"
 msgstr ""
 
-#: models.py:122
+#: models.py:83 models.py:255
 msgid "Short name"
 msgstr ""
 
-#: models.py:125
+#: models.py:86
 msgid "Street"
 msgstr ""
 
-#: models.py:126
+#: models.py:87
 msgid "Street number"
 msgstr ""
 
-#: models.py:127
+#: models.py:88
 msgid "Postal code"
 msgstr ""
 
-#: models.py:128
+#: models.py:89
 msgid "Place"
 msgstr ""
 
-#: models.py:130
+#: models.py:91
 msgid "Home phone"
 msgstr ""
 
-#: models.py:131
+#: models.py:92
 msgid "Mobile phone"
 msgstr ""
 
-#: models.py:133
-msgid "E-mail address"
-msgstr ""
-
-#: models.py:135
+#: models.py:96
 msgid "Date of birth"
 msgstr ""
 
-#: models.py:136
+#: models.py:97
 msgid "Sex"
 msgstr ""
 
-#: models.py:138
+#: models.py:99
 msgid "Photo"
 msgstr ""
 
-#: models.py:142
+#: models.py:104
 msgid "Guardians / Parents"
 msgstr ""
 
-#: models.py:147 models.py:310 models.py:327 models.py:406 models.py:574
+#: models.py:111
+msgid "Primary group"
+msgstr ""
+
+#: models.py:114 models.py:341 models.py:365 models.py:448 models.py:634
 msgid "Description"
 msgstr ""
 
-#: models.py:256
+#: models.py:229
+msgid "Title of field"
+msgstr ""
+
+#: models.py:231
+msgid "Type of field"
+msgstr ""
+
+#: models.py:235
+msgid "Addtitional field for groups"
+msgstr ""
+
+#: models.py:236
+msgid "Addtitional fields for groups"
+msgstr ""
+
+#: models.py:247
 msgid "Group"
 msgstr ""
 
-#: models.py:259
+#: models.py:249
 msgid "Can assign child groups to groups"
 msgstr ""
 
-#: models.py:264
-msgid "Long name of group"
+#: models.py:253
+msgid "Long name"
 msgstr ""
 
-#: models.py:265
-msgid "Short name of group"
+#: models.py:263 templates/core/group_full.html:37
+msgid "Members"
 msgstr ""
 
-#: models.py:274
+#: models.py:266 templates/core/group_full.html:34
+msgid "Owners"
+msgstr ""
+
+#: models.py:273
 msgid "Parent groups"
 msgstr ""
 
-#: models.py:278
+#: models.py:281
 msgid "Type of group"
 msgstr ""
 
-#: models.py:309 models.py:326 models.py:405
+#: models.py:285
+msgid "Additional fields"
+msgstr ""
+
+#: models.py:337
+msgid "User"
+msgstr ""
+
+#: models.py:340 models.py:364 models.py:447
 #: templates/core/announcement/list.html:18
 msgid "Title"
 msgstr ""
 
-#: models.py:312
+#: models.py:343
 msgid "Application"
 msgstr ""
 
-#: models.py:318
+#: models.py:349
 msgid "Activity"
 msgstr ""
 
-#: models.py:319
+#: models.py:350
 msgid "Activities"
 msgstr ""
 
-#: models.py:323
+#: models.py:356
 msgid "Sender"
 msgstr ""
 
-#: models.py:328 models.py:407 models.py:560
+#: models.py:361
+msgid "Recipient"
+msgstr ""
+
+#: models.py:366 models.py:614
 msgid "Link"
 msgstr ""
 
-#: models.py:330
+#: models.py:368
 msgid "Read"
 msgstr ""
 
-#: models.py:331
+#: models.py:369
 msgid "Sent"
 msgstr ""
 
-#: models.py:343
+#: models.py:382
 msgid "Notification"
 msgstr ""
 
-#: models.py:344
+#: models.py:383
 msgid "Notifications"
 msgstr ""
 
-#: models.py:410
+#: models.py:449
+msgid "Link to detailed view"
+msgstr ""
+
+#: models.py:452
 msgid "Date and time from when to show"
 msgstr ""
 
-#: models.py:413
+#: models.py:455
 msgid "Date and time until when to show"
 msgstr ""
 
-#: models.py:436
+#: models.py:478
 msgid "Announcement"
 msgstr ""
 
-#: models.py:464
+#: models.py:515
 msgid "Announcement recipient"
 msgstr ""
 
-#: models.py:465
+#: models.py:516
 msgid "Announcement recipients"
 msgstr ""
 
-#: models.py:515
+#: models.py:566
 msgid "Widget Title"
 msgstr ""
 
-#: models.py:516
+#: models.py:567
 msgid "Activate Widget"
 msgstr ""
 
-#: models.py:528
+#: models.py:584
 msgid "Dashboard Widget"
 msgstr ""
 
-#: models.py:529
+#: models.py:585
 msgid "Dashboard Widgets"
 msgstr ""
 
-#: models.py:533
+#: models.py:591
 msgid "Menu ID"
 msgstr ""
 
-#: models.py:534
-msgid "Menu name"
-msgstr ""
-
-#: models.py:551
+#: models.py:603
 msgid "Custom menu"
 msgstr ""
 
-#: models.py:552
+#: models.py:604
 msgid "Custom menus"
 msgstr ""
 
-#: models.py:557
+#: models.py:611
 msgid "Menu"
 msgstr ""
 
-#: models.py:562
+#: models.py:613
+msgid "Name"
+msgstr ""
+
+#: models.py:616
 msgid "Icon"
 msgstr ""
 
-#: models.py:569
+#: models.py:623
 msgid "Custom menu item"
 msgstr ""
 
-#: models.py:570
+#: models.py:624
 msgid "Custom menu items"
 msgstr ""
 
-#: models.py:573
+#: models.py:633
 msgid "Title of type"
 msgstr ""
 
-#: models.py:577
+#: models.py:637
 msgid "Group type"
 msgstr ""
 
-#: models.py:578
+#: models.py:638
 msgid "Group types"
 msgstr ""
 
-#: models.py:585
+#: models.py:647
 msgid "Can view system status"
 msgstr ""
 
-#: models.py:586
+#: models.py:648
 msgid "Can link persons to accounts"
 msgstr ""
 
-#: models.py:587
+#: models.py:649
 msgid "Can manage data"
 msgstr ""
 
-#: models.py:588
+#: models.py:650
 msgid "Can impersonate"
 msgstr ""
 
-#: models.py:589
+#: models.py:651
 msgid "Can use search"
 msgstr ""
 
-#: settings.py:262
-msgid "German"
+#: models.py:652
+msgid "Can change site preferences"
 msgstr ""
 
-#: settings.py:263
-msgid "English"
+#: models.py:653
+msgid "Can change person preferences"
 msgstr ""
 
-#: settings.py:264
-msgid "French"
+#: models.py:654
+msgid "Can change group preferences"
 msgstr ""
 
-#: settings.py:384
+#: preferences.py:26
 msgid "Site title"
 msgstr ""
 
-#: settings.py:385
+#: preferences.py:35
 msgid "Site description"
 msgstr ""
 
-#: settings.py:386
+#: preferences.py:44
 msgid "Primary colour"
 msgstr ""
 
-#: settings.py:387
+#: preferences.py:53
 msgid "Secondary colour"
 msgstr ""
 
-#: settings.py:388
+#: preferences.py:61
+msgid "Logo"
+msgstr ""
+
+#: preferences.py:69
+msgid "Favicon"
+msgstr ""
+
+#: preferences.py:77
+msgid "PWA-Icon"
+msgstr ""
+
+#: preferences.py:86
 msgid "Mail out name"
 msgstr ""
 
-#: settings.py:389
+#: preferences.py:95
 msgid "Mail out address"
 msgstr ""
 
-#: settings.py:390
+#: preferences.py:105
 msgid "Link to privacy policy"
 msgstr ""
 
-#: settings.py:391
+#: preferences.py:115
 msgid "Link to imprint"
 msgstr ""
 
-#: settings.py:392
-msgid "Name format of adresses"
+#: preferences.py:125
+msgid "Name format for addressing"
 msgstr ""
 
-#: settings.py:393
-msgid "Channels to allow for notifications"
+#: preferences.py:141
+msgid "Channels to use for notifications"
 msgstr ""
 
-#: settings.py:394
+#: preferences.py:151
 msgid "Regular expression to match primary group, e.g. '^Class .*'"
 msgstr ""
 
+#: preferences.py:160
+msgid "Display name of the school"
+msgstr ""
+
+#: preferences.py:169
+msgid "Official name of the school, e.g. as given by supervisory authority"
+msgstr ""
+
+#: settings.py:276
+msgid "English"
+msgstr ""
+
+#: settings.py:277
+msgid "German"
+msgstr ""
+
+#: settings.py:278
+msgid "French"
+msgstr ""
+
+#: templates/403.html:10 templates/404.html:10 templates/500.html:10
+msgid "Error"
+msgstr ""
+
 #: templates/403.html:10
-msgid "Error (403): You are not allowed to access the requested page or object."
+msgid ""
+"You are not allowed to access the requested page or\n"
+"          object."
 msgstr ""
 
-#: templates/403.html:12
+#: templates/403.html:13 templates/404.html:17
 msgid ""
 "\n"
-"      If you think this is an error in AlekSIS, please contact your site\n"
-"     administrators:\n"
-"     "
+"            If you think this is an error in AlekSIS, please contact your "
+"site\n"
+"            administrators:\n"
+"          "
 msgstr ""
 
 #: templates/404.html:10
-msgid "Error (404): The requested page or object was not found."
-msgstr ""
-
-#: templates/404.html:12
 msgid ""
-"\n"
-"      If you were redirected by a link on an external page,\n"
-"      it is possible that that link was outdated.\n"
-"     "
+"The requested page or object was not\n"
+"          found."
 msgstr ""
 
-#: templates/404.html:16
+#: templates/404.html:13
 msgid ""
 "\n"
-"      If you think this is an error in AlekSIS, please contact your site\n"
-"      administrators:\n"
-"     "
+"            If you were redirected by a link on an external page,\n"
+"            it is possible that that link was outdated.\n"
+"          "
 msgstr ""
 
 #: templates/500.html:10
-msgid "Error (500): An unexpected error has occured.."
+msgid ""
+"An unexpected error has\n"
+"          occured."
 msgstr ""
 
-#: templates/500.html:12
+#: templates/500.html:13
 msgid ""
 "\n"
-"      Your site administrators will automatically be notified about this\n"
-"     error.\n"
-"     "
+"            Your site administrators will automatically be notified about "
+"this\n"
+"            error. You can also contact them directly:\n"
+"          "
 msgstr ""
 
 #: templates/503.html:10
-msgid "The maintenance mode is currently enabled. Please try again later."
+msgid ""
+"The maintenance mode is currently enabled. Please try again\n"
+"          later."
 msgstr ""
 
-#: templates/503.html:12
+#: templates/503.html:13
 msgid ""
 "\n"
-"      This page is currently unavailable. If this error stays, contact your site administrators:\n"
-"     "
+"            This page is currently unavailable. If this error persists, "
+"contact your site administrators:\n"
+"          "
 msgstr ""
 
 #: templates/core/about.html:6 templates/core/about.html:15
@@ -619,9 +686,11 @@ msgstr ""
 #: templates/core/about.html:17
 msgid ""
 "\n"
-"              This platform is powered by AlekSIS, a web-based school information system (SIS) which can be used\n"
-"              to manage and/or publish organisational subjects of educational institutions. AlekSIS is free software and\n"
-"              can be used by everyone.\n"
+"              This platform is powered by AlekSIS, a web-based school "
+"information system (SIS) which can be used\n"
+"              to manage and/or publish organisational artifacts of "
+"educational institutions. AlekSIS is free software and\n"
+"              can be used by anyone.\n"
 "            "
 msgstr ""
 
@@ -640,8 +709,10 @@ msgstr ""
 #: templates/core/about.html:37
 msgid ""
 "\n"
-"              The core and the official apps of AlekSIS are licenced under the EUPL, version 1.2 or later. For licence\n"
-"              information from third-party apps, if installed, see directly at the respective components below. The\n"
+"              The core and the official apps of AlekSIS are licenced under "
+"the EUPL, version 1.2 or later. For licence\n"
+"              information from third-party apps, if installed, refer to the "
+"respective components below. The\n"
 "              licences are marked like this:\n"
 "            "
 msgstr ""
@@ -704,8 +775,8 @@ msgstr ""
 msgid "Actions"
 msgstr ""
 
-#: templates/core/announcement/list.html:36 templates/core/group_full.html:15
-#: templates/core/person_full.html:18
+#: templates/core/announcement/list.html:36 templates/core/group_full.html:22
+#: templates/core/person_full.html:21
 msgid "Edit"
 msgstr ""
 
@@ -741,28 +812,28 @@ msgid ""
 "            "
 msgstr ""
 
-#: templates/core/base.html:56
+#: templates/core/base.html:54
 msgid "Logged in as"
 msgstr ""
 
-#: templates/core/base.html:79 templates/search/search.html:7
+#: templates/core/base.html:76 templates/search/search.html:7
 #: templates/search/search.html:22
 msgid "Search"
 msgstr ""
 
-#: templates/core/base.html:151
+#: templates/core/base.html:148
 msgid "About AlekSIS — The Free School Information System"
 msgstr ""
 
-#: templates/core/base.html:159
+#: templates/core/base.html:156
 msgid "Impress"
 msgstr ""
 
-#: templates/core/base.html:167
+#: templates/core/base.html:164
 msgid "Privacy Policy"
 msgstr ""
 
-#: templates/core/base_print.html:60
+#: templates/core/base_print.html:62
 msgid "Powered by AlekSIS"
 msgstr ""
 
@@ -774,16 +845,8 @@ msgstr ""
 msgid "Edit person"
 msgstr ""
 
-#: templates/core/edit_school.html:8 templates/core/edit_school.html:9
-msgid "Edit school"
-msgstr ""
-
-#: templates/core/group_full.html:19
-msgid "Owners"
-msgstr ""
-
-#: templates/core/group_full.html:22
-msgid "Members"
+#: templates/core/group_full.html:28 templates/core/person_full.html:28
+msgid "Change preferences"
 msgstr ""
 
 #: templates/core/groups.html:14
@@ -793,8 +856,9 @@ msgstr ""
 #: templates/core/groups_child_groups.html:18
 msgid ""
 "\n"
-"          You can use this to assign child groups to groups. Please use the filters below to select groups you want to\n"
-"          change and click at \"Next\".\n"
+"          You can use this to assign child groups to groups. Please use the "
+"filters below to select groups you want to\n"
+"          change and click \"Next\".\n"
 "        "
 msgstr ""
 
@@ -826,11 +890,16 @@ msgid "Current group:"
 msgstr ""
 
 #: templates/core/groups_child_groups.html:78
+msgid "Please be careful!"
+msgstr ""
+
+#: templates/core/groups_child_groups.html:79
 msgid ""
 "\n"
-"            <strong>Please be careful!</strong><br/>\n"
-"            If you click on \"Back\" or \"Next\" the current group assignments are not saved.\n"
-"            If you click on save, you will overwrite all existing child group relations for this group with what you\n"
+"            If you click \"Back\" or \"Next\" the current group assignments "
+"are not saved.\n"
+"            If you click \"Save\", you will overwrite all existing child "
+"group relations for this group with what you\n"
 "            selected on this page.\n"
 "          "
 msgstr ""
@@ -863,51 +932,45 @@ msgstr ""
 msgid "Home"
 msgstr ""
 
-#: templates/core/index.html:11
-msgid "AlekSIS (School Information System)"
-msgstr ""
-
-#: templates/core/index.html:43
+#: templates/core/index.html:42
 msgid "Last activities"
 msgstr ""
 
-#: templates/core/index.html:61
+#: templates/core/index.html:60
 msgid "No activities available yet."
 msgstr ""
 
-#: templates/core/index.html:66
+#: templates/core/index.html:65
 msgid "Recent notifications"
 msgstr ""
 
-#: templates/core/index.html:82
+#: templates/core/index.html:81
 msgid "More information →"
 msgstr ""
 
-#: templates/core/index.html:89
+#: templates/core/index.html:88
 msgid "No notifications available yet."
 msgstr ""
 
-#: templates/core/no_person.html:11
+#: templates/core/no_person.html:12
 msgid ""
 "\n"
-"          Your user account is not linked to a person. This means you\n"
-"          cannot access any school-related information. Please contact\n"
-"          the managers of AlekSIS at your school.\n"
-"        "
-msgstr ""
-
-#: templates/core/offline.html:6
-msgid "No internet connection."
+"            Your administrator account is not linked to any person. "
+"Therefore,\n"
+"            a dummy person has been linked to your account.\n"
+"          "
 msgstr ""
 
-#: templates/core/offline.html:9
+#: templates/core/no_person.html:19
 msgid ""
 "\n"
-"        There was an error accessing this page. You probably don't have an internet connection. Check to see if your WiFi or mobile data is turned on and try again. If you think you are connected, please contact the system administrators:\n"
-"      "
+"            Your user account is not linked to a person. This means you\n"
+"            cannot access any school-related information. Please contact\n"
+"            the managers of AlekSIS at your school.\n"
+"          "
 msgstr ""
 
-#: templates/core/person_full.html:23
+#: templates/core/person_full.html:34
 msgid "Contact details"
 msgstr ""
 
@@ -920,7 +983,8 @@ msgstr ""
 msgid ""
 "\n"
 "        You can use this form to assign user accounts to persons. Use the\n"
-"        dropdowns to select existing accounts; use the text fields to create new\n"
+"        dropdowns to select existing accounts; use the text fields to create "
+"new\n"
 "        accounts on-the-fly. The latter will create a new account with the\n"
 "        entered username and copy all other details from the person.\n"
 "      "
@@ -939,11 +1003,6 @@ msgstr ""
 msgid "New account"
 msgstr ""
 
-#: templates/core/school_management.html:6
-#: templates/core/school_management.html:7
-msgid "School management"
-msgstr ""
-
 #: templates/core/system_status.html:12
 msgid "System checks"
 msgstr ""
@@ -955,7 +1014,8 @@ msgstr ""
 #: templates/core/system_status.html:23
 msgid ""
 "\n"
-"                Only admin and visitors from internal IPs can access thesite.\n"
+"                Only admin and visitors from internal IPs can access "
+"thesite.\n"
 "              "
 msgstr ""
 
@@ -974,7 +1034,8 @@ msgstr ""
 #: templates/core/system_status.html:47
 msgid ""
 "\n"
-"                The web server throws back debug information on errors. Do not use in production!\n"
+"                The web server throws back debug information on errors. Do "
+"not use in production!\n"
 "              "
 msgstr ""
 
@@ -985,105 +1046,51 @@ msgstr ""
 #: templates/core/system_status.html:56
 msgid ""
 "\n"
-"                Debug mode is disabled. Default error pages are displayed on errors.\n"
+"                Debug mode is disabled. Default error pages are displayed on "
+"errors.\n"
 "              "
 msgstr ""
 
-#: templates/impersonate/list_users.html:8
-msgid "Impersonate user"
-msgstr ""
-
-#: templates/martor/editor.html:27
-msgid "Uploading... please wait..."
-msgstr ""
-
-#: templates/martor/editor.html:36
-msgid "Nothing to preview"
-msgstr ""
-
-#: templates/martor/emoji.html:4
-msgid "Select Emoji to Insert"
+#: templates/dynamic_preferences/form.html:9
+msgid "Site preferences"
 msgstr ""
 
-#: templates/martor/emoji.html:8
-msgid "Preparing emojis..."
+#: templates/dynamic_preferences/form.html:11
+msgid "My preferences"
 msgstr ""
 
-#: templates/martor/guide.html:8
-msgid "Markdown Guide"
-msgstr ""
-
-#: templates/martor/guide.html:9
+#: templates/dynamic_preferences/form.html:13
 #, python-format
-msgid ""
-"This site is powered by Markdown. For full\n"
-"            documentation,\n"
-"            <a href=\"%(doc_url)s\" target=\"_blank\">click here</a>"
-msgstr ""
-
-#: templates/martor/guide.html:15 templates/martor/toolbar.html:42
-msgid "Code"
-msgstr ""
-
-#: templates/martor/guide.html:16
-msgid "Or"
-msgstr ""
-
-#: templates/martor/guide.html:19
-msgid "... to Get"
-msgstr ""
-
-#: templates/martor/toolbar.html:3
-msgid "Bold"
+msgid "Preferences for %(instance)s"
 msgstr ""
 
-#: templates/martor/toolbar.html:6
-msgid "Italic"
+#: templates/dynamic_preferences/form.html:25
+msgid "Save preferences"
 msgstr ""
 
-#: templates/martor/toolbar.html:10
-msgid "Horizontal Line"
+#: templates/dynamic_preferences/sections.html:7
+msgid "All"
 msgstr ""
 
-#: templates/martor/toolbar.html:15
-msgid "Heading"
-msgstr ""
-
-#: templates/martor/toolbar.html:20 templates/martor/toolbar.html:23
-#: templates/martor/toolbar.html:26
-msgid "H"
-msgstr ""
-
-#: templates/martor/toolbar.html:31
-msgid "Pre or Code"
-msgstr ""
-
-#: templates/martor/toolbar.html:38
-msgid "Pre"
-msgstr ""
-
-#: templates/martor/toolbar.html:48
-msgid "Quote"
-msgstr ""
-
-#: templates/martor/toolbar.html:52
-msgid "Unordered List"
-msgstr ""
-
-#: templates/martor/toolbar.html:56
-msgid "Ordered List"
-msgstr ""
-
-#: templates/martor/toolbar.html:60
-msgid "URL/Link"
+#: templates/impersonate/list_users.html:8
+msgid "Impersonate user"
 msgstr ""
 
-#: templates/martor/toolbar.html:82
-msgid "Full Screen"
+#: templates/offline.html:6
+msgid ""
+"No internet\n"
+"    connection."
 msgstr ""
 
-#: templates/martor/toolbar.html:86
-msgid "Markdown Guide (Help)"
+#: templates/offline.html:10
+msgid ""
+"\n"
+"      There was an error accessing this page. 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"
+"    "
 msgstr ""
 
 #: templates/search/search.html:8
@@ -1106,6 +1113,32 @@ msgstr ""
 msgid "Please enter a search term above."
 msgstr ""
 
+#: templates/templated_email/notification.email:3
+msgid "New notification for"
+msgstr ""
+
+#: templates/templated_email/notification.email:7
+msgid "Dear"
+msgstr ""
+
+#: templates/templated_email/notification.email:8
+msgid "we got a new notification for you:"
+msgstr ""
+
+#: templates/templated_email/notification.email:12
+msgid "More information"
+msgstr ""
+
+#: templates/templated_email/notification.email:16
+#, python-format
+msgid ""
+"\n"
+"    <p>By %(trans_sender)s at %(trans_created_at)s</p>\n"
+"\n"
+"    <i>Your AlekSIS team</i>\n"
+"    "
+msgstr ""
+
 #: templates/two_factor/_base_focus.html:6
 #: templates/two_factor/core/otp_required.html:22
 #: templates/two_factor/core/setup.html:5
@@ -1128,8 +1161,10 @@ msgid ""
 "\n"
 "        Backup tokens can be used when your primary and backup\n"
 "        phone numbers aren't available. The backup tokens below can be used\n"
-"        for login verification. If you've used up all your backup tokens, you\n"
-"        can generate a new set of backup tokens. Only the backup tokens shown\n"
+"        for login verification. If you've used up all your backup tokens, "
+"you\n"
+"        can generate a new set of backup tokens. Only the backup tokens "
+"shown\n"
 "        below will be valid.\n"
 "      "
 msgstr ""
@@ -1154,7 +1189,8 @@ msgid "Generate Tokens"
 msgstr ""
 
 #: templates/two_factor/core/login.html:16
-msgid "You have no permission to view this page. Please login with an other account."
+msgid ""
+"You have no permission to view this page. Please login with an other account."
 msgstr ""
 
 #: templates/two_factor/core/login.html:25
@@ -1182,7 +1218,8 @@ msgstr ""
 #: templates/two_factor/core/login.html:38
 msgid ""
 "Use this form for entering backup tokens for logging in.\n"
-"            These tokens have been generated for you to print and keep safe. Please\n"
+"            These tokens have been generated for you to print and keep safe. "
+"Please\n"
 "            enter one of these backup tokens to login to your account."
 msgstr ""
 
@@ -1205,7 +1242,8 @@ msgstr ""
 #: templates/two_factor/core/otp_required.html:10
 msgid ""
 "The page you requested, enforces users to verify using\n"
-"          two-factor authentication for security reasons. You need to enable these\n"
+"          two-factor authentication for security reasons. You need to enable "
+"these\n"
 "          security features in order to access this page."
 msgstr ""
 
@@ -1282,7 +1320,8 @@ msgstr ""
 #: templates/two_factor/core/setup.html:50
 msgid ""
 "\n"
-"            We are calling your phone right now, please enter the digits you hear.\n"
+"            We are calling your phone right now, please enter the digits you "
+"hear.\n"
 "          "
 msgstr ""
 
@@ -1296,9 +1335,12 @@ msgstr ""
 #: templates/two_factor/core/setup.html:63
 msgid ""
 "\n"
-"          We've encountered an issue with the selected authentication method. Please\n"
-"          go back and verify that you entered your information correctly, try\n"
-"          again, or use a different authentication method instead. If the issue\n"
+"          We've encountered an issue with the selected authentication "
+"method. Please\n"
+"          go back and verify that you entered your information correctly, "
+"try\n"
+"          again, or use a different authentication method instead. If the "
+"issue\n"
 "          persists, contact the site administrator.\n"
 "        "
 msgstr ""
@@ -1320,7 +1362,8 @@ msgstr ""
 #: templates/two_factor/core/setup_complete.html:14
 msgid ""
 "\n"
-"        Congratulations, you've successfully enabled two-factor authentication.\n"
+"        Congratulations, you've successfully enabled two-factor "
+"authentication.\n"
 "      "
 msgstr ""
 
@@ -1338,7 +1381,8 @@ msgstr ""
 msgid ""
 "\n"
 "          However, it might happen that you don't have access to\n"
-"          your primary token device. To enable account recovery, generate backup codes\n"
+"          your primary token device. To enable account recovery, generate "
+"backup codes\n"
 "          or add a phone number.\n"
 "        "
 msgstr ""
@@ -1356,7 +1400,9 @@ msgid "Disable Two-Factor Authentication"
 msgstr ""
 
 #: templates/two_factor/profile/disable.html:12
-msgid "You are about to disable two-factor authentication. This weakens your account security, are you sure?"
+msgid ""
+"You are about to disable two-factor authentication. This weakens your "
+"account security, are you sure?"
 msgstr ""
 
 #: templates/two_factor/profile/disable.html:26
@@ -1439,42 +1485,34 @@ msgid ""
 "      "
 msgstr ""
 
-#: util/notifications.py:66
+#: util/notifications.py:65
 msgid "E-Mail"
 msgstr ""
 
-#: util/notifications.py:67
+#: util/notifications.py:66
 msgid "SMS"
 msgstr ""
 
-#: views.py:205
+#: views.py:212
 msgid "The child groups were successfully saved."
 msgstr ""
 
-#: views.py:235
+#: views.py:240
 msgid "The person has been saved."
 msgstr ""
 
-#: views.py:265
+#: views.py:276
 msgid "The group has been saved."
 msgstr ""
 
-#: views.py:306
-msgid "The school has been saved."
-msgstr ""
-
-#: views.py:325
-msgid "The term has been saved."
-msgstr ""
-
-#: views.py:342
-msgid "You are not allowed to mark notifications from other users as read!"
-msgstr ""
-
-#: views.py:383
+#: views.py:348
 msgid "The announcement has been saved."
 msgstr ""
 
-#: views.py:396
+#: views.py:364
 msgid "The announcement has been deleted."
 msgstr ""
+
+#: views.py:435
+msgid "The preferences have been saved successfully."
+msgstr ""
diff --git a/aleksis/core/locale/de_DE/LC_MESSAGES/django.po b/aleksis/core/locale/de_DE/LC_MESSAGES/django.po
index acdf5427f92e777eab0cdd0be099829247def54f..cb4ad225a11f13f0f3e2fac6d14a5f61d7c6624f 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: 2020-05-03 10:36+0000\n"
+"POT-Creation-Date: 2020-05-03 15:05+0200\n"
 "PO-Revision-Date: 2020-05-03 10:33+0000\n"
 "Last-Translator: Jonathan Weth <teckids@jonathanweth.de>\n"
 "Language-Team: German <https://translate.edugit.org/projects/aleksis/aleksis/"
@@ -19,650 +19,638 @@ msgstr ""
 "Plural-Forms: nplurals=2; plural=n != 1;\n"
 "X-Generator: Weblate 4.0.1\n"
 
-#: aleksis/core/forms.py:46
+#: forms.py:46
 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:50
+#: forms.py:50
 msgid "This username is already in use."
 msgstr "Dieser Benutzername wird bereits genutzt."
 
-#: aleksis/core/forms.py:74
+#: forms.py:74
 msgid "Base data"
 msgstr "Basisdaten"
 
-#: aleksis/core/forms.py:80
+#: forms.py:80
 msgid "Address"
 msgstr "Adresse"
 
-#: aleksis/core/forms.py:81
+#: forms.py:81
 msgid "Contact data"
 msgstr "Kontaktdaten"
 
-#: aleksis/core/forms.py:83
+#: forms.py:83
 msgid "Advanced personal data"
 msgstr "Zusätzliche persönliche Daten"
 
-#: aleksis/core/forms.py:116
+#: forms.py:116
 msgid "New user"
 msgstr "Neuer Benutzer"
 
-#: aleksis/core/forms.py:116
+#: forms.py:116
 msgid "Create a new account"
 msgstr "Neues Benutzerkonto erstellen"
 
-#: aleksis/core/forms.py:128
+#: forms.py:128
 msgid "Common data"
 msgstr "Allgemeine Daten"
 
-#: aleksis/core/forms.py:129 aleksis/core/forms.py:169
-#: aleksis/core/menus.py:141 aleksis/core/models.py:53
-#: aleksis/core/templates/core/persons.html:8
-#: aleksis/core/templates/core/persons.html:9
+#: forms.py:129 forms.py:169 menus.py:141 models.py:53
+#: templates/core/persons.html:8 templates/core/persons.html:9
 msgid "Persons"
 msgstr "Personen"
 
-#: aleksis/core/forms.py:162 aleksis/core/forms.py:165
-#: aleksis/core/models.py:31
+#: forms.py:162 forms.py:165 models.py:31
 msgid "Date"
 msgstr "Datum"
 
-#: aleksis/core/forms.py:163 aleksis/core/forms.py:166
-#: aleksis/core/models.py:39
+#: forms.py:163 forms.py:166 models.py:39
 msgid "Time"
 msgstr "Zeit"
 
-#: aleksis/core/forms.py:171 aleksis/core/menus.py:149
-#: aleksis/core/models.py:248 aleksis/core/templates/core/groups.html:8
-#: aleksis/core/templates/core/groups.html:9
-#: aleksis/core/templates/core/person_full.html:106
+#: forms.py:171 menus.py:149 models.py:248 templates/core/groups.html:8
+#: templates/core/groups.html:9 templates/core/person_full.html:106
 msgid "Groups"
 msgstr "Gruppen"
 
-#: aleksis/core/forms.py:175
+#: forms.py:175
 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:178
+#: forms.py:178
 msgid "Who should see the announcement?"
 msgstr "Wer soll die Ankündigung sehen?"
 
-#: aleksis/core/forms.py:179
+#: forms.py:179
 msgid "Write your announcement:"
 msgstr "Schreiben Sie ihre Ankündigung:"
 
-#: aleksis/core/forms.py:216
+#: forms.py:216
 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:220
+#: forms.py:220
 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:229
+#: forms.py:229
 msgid "You need at least one recipient."
 msgstr "Sie benötigen mindestens einen Empfänger."
 
-#: aleksis/core/menus.py:7 aleksis/core/templates/two_factor/core/login.html:6
-#: aleksis/core/templates/two_factor/core/login.html:10
-#: aleksis/core/templates/two_factor/core/login.html:73
+#: menus.py:7 templates/two_factor/core/login.html:6
+#: templates/two_factor/core/login.html:10
+#: templates/two_factor/core/login.html:73
 msgid "Login"
 msgstr "Anmelden"
 
-#: aleksis/core/menus.py:13
+#: menus.py:13
 msgid "Dashboard"
 msgstr "Dashboard"
 
-#: aleksis/core/menus.py:19
+#: menus.py:19
 msgid "Account"
 msgstr "Konto"
 
-#: aleksis/core/menus.py:26
+#: menus.py:26
 msgid "Stop impersonation"
 msgstr "Verkleidung beenden"
 
-#: aleksis/core/menus.py:35 aleksis/core/templates/core/base.html:56
+#: menus.py:35 templates/core/base.html:56
 msgid "Logout"
 msgstr "Abmelden"
 
-#: aleksis/core/menus.py:41
+#: menus.py:41
 msgid "2FA"
 msgstr ""
 
-#: aleksis/core/menus.py:47
+#: menus.py:47
 msgid "Me"
 msgstr "Mich"
 
-#: aleksis/core/menus.py:56
-#: aleksis/core/templates/dynamic_preferences/form.html:5
+#: menus.py:56 templates/dynamic_preferences/form.html:5
 msgid "Preferences"
 msgstr "Einstellungen"
 
-#: aleksis/core/menus.py:67
+#: menus.py:67
 msgid "Admin"
 msgstr "Admin"
 
-#: aleksis/core/menus.py:75 aleksis/core/models.py:479
-#: aleksis/core/templates/core/announcement/list.html:7
-#: aleksis/core/templates/core/announcement/list.html:8
+#: menus.py:75 models.py:479 templates/core/announcement/list.html:7
+#: templates/core/announcement/list.html:8
 msgid "Announcements"
 msgstr "Ankündigungen"
 
-#: aleksis/core/menus.py:86 aleksis/core/templates/core/data_management.html:6
-#: aleksis/core/templates/core/data_management.html:7
+#: menus.py:86 templates/core/data_management.html:6
+#: templates/core/data_management.html:7
 msgid "Data management"
 msgstr "Datenverwaltung"
 
-#: aleksis/core/menus.py:94 aleksis/core/templates/core/system_status.html:5
-#: aleksis/core/templates/core/system_status.html:7
+#: menus.py:94 templates/core/system_status.html:5
+#: templates/core/system_status.html:7
 msgid "System status"
 msgstr "Systemstatus"
 
-#: aleksis/core/menus.py:105
+#: menus.py:105
 msgid "Impersonation"
 msgstr "Verkleidung"
 
-#: aleksis/core/menus.py:113
+#: menus.py:113
 msgid "Configuration"
 msgstr "Konfiguration"
 
-#: aleksis/core/menus.py:124
+#: menus.py:124
 msgid "Backend Admin"
 msgstr "Backend-Administration"
 
-#: aleksis/core/menus.py:132
+#: menus.py:132
 msgid "People"
 msgstr "Leute"
 
-#: aleksis/core/menus.py:157
+#: menus.py:157
 msgid "Persons and accounts"
 msgstr "Personen und Konten"
 
-#: aleksis/core/menus.py:168
+#: menus.py:168
 msgid "Groups and child groups"
 msgstr "Gruppen und Kindgruppen"
 
-#: aleksis/core/menus.py:183
-#: aleksis/core/templates/core/groups_child_groups.html:7
-#: aleksis/core/templates/core/groups_child_groups.html:9
+#: menus.py:183 templates/core/groups_child_groups.html:7
+#: templates/core/groups_child_groups.html:9
 msgid "Assign child groups to groups"
 msgstr "Kindgruppen zu Gruppen zuordnen"
 
-#: aleksis/core/models.py:29
+#: models.py:29
 msgid "Boolean (Yes/No)"
 msgstr ""
 
-#: aleksis/core/models.py:30
+#: models.py:30
 msgid "Text (one line)"
 msgstr ""
 
-#: aleksis/core/models.py:32
+#: models.py:32
 #, fuzzy
 #| msgid "Save and next"
 msgid "Date and time"
 msgstr "Speichern und weiter"
 
-#: aleksis/core/models.py:33
+#: models.py:33
 msgid "Decimal number"
 msgstr ""
 
-#: aleksis/core/models.py:34 aleksis/core/models.py:94
+#: models.py:34 models.py:94
 msgid "E-mail address"
 msgstr "E-Mail-Adresse"
 
-#: aleksis/core/models.py:35
+#: models.py:35
 msgid "Integer"
 msgstr ""
 
-#: aleksis/core/models.py:36
+#: models.py:36
 #, fuzzy
 #| msgid "Address"
 msgid "IP address"
 msgstr "Adresse"
 
-#: aleksis/core/models.py:37
+#: models.py:37
 msgid "Boolean or empty (Yes/No/Neither)"
 msgstr ""
 
-#: aleksis/core/models.py:38
+#: models.py:38
 msgid "Text (multi-line)"
 msgstr ""
 
-#: aleksis/core/models.py:40
+#: models.py:40
 #, fuzzy
 #| msgid "URL/Link"
 msgid "URL / Link"
 msgstr "URL/Link"
 
-#: aleksis/core/models.py:52
-#: aleksis/core/templates/core/persons_accounts.html:36
+#: models.py:52 templates/core/persons_accounts.html:36
 msgid "Person"
 msgstr "Person"
 
-#: aleksis/core/models.py:55
+#: models.py:55
 msgid "Can view address"
 msgstr "Kann Adresse sehen"
 
-#: aleksis/core/models.py:56
+#: models.py:56
 msgid "Can view contact details"
 msgstr "Kann Kontaktdetails sehen"
 
-#: aleksis/core/models.py:57
+#: models.py:57
 msgid "Can view photo"
 msgstr "Kann Foto sehen"
 
-#: aleksis/core/models.py:58
+#: models.py:58
 msgid "Can view persons groups"
 msgstr "Kann Gruppen einer Person sehen"
 
-#: aleksis/core/models.py:59
+#: models.py:59
 msgid "Can view personal details"
 msgstr "Kann persönliche Daten sehen"
 
-#: aleksis/core/models.py:64
+#: models.py:64
 msgid "female"
 msgstr "weiblich"
 
-#: aleksis/core/models.py:64
+#: models.py:64
 msgid "male"
 msgstr "männlich"
 
-#: aleksis/core/models.py:72
+#: models.py:72
 #, fuzzy
 #| msgid "New user"
 msgid "Linked user"
 msgstr "Neuer Benutzer"
 
-#: aleksis/core/models.py:74
+#: models.py:74
 msgid "Is person active?"
 msgstr "Ist die Person aktiv?"
 
-#: aleksis/core/models.py:76
+#: models.py:76
 msgid "First name"
 msgstr "Vorname"
 
-#: aleksis/core/models.py:77
+#: models.py:77
 msgid "Last name"
 msgstr "Nachname"
 
-#: aleksis/core/models.py:79
+#: models.py:79
 msgid "Additional name(s)"
 msgstr "Zusätzliche Namen"
 
-#: aleksis/core/models.py:83 aleksis/core/models.py:255
+#: models.py:83 models.py:255
 msgid "Short name"
 msgstr "Kurzname"
 
-#: aleksis/core/models.py:86
+#: models.py:86
 msgid "Street"
 msgstr "Straße"
 
-#: aleksis/core/models.py:87
+#: models.py:87
 msgid "Street number"
 msgstr "Hausnummer"
 
-#: aleksis/core/models.py:88
+#: models.py:88
 msgid "Postal code"
 msgstr "Postleitzahl"
 
-#: aleksis/core/models.py:89
+#: models.py:89
 msgid "Place"
 msgstr "Ort"
 
-#: aleksis/core/models.py:91
+#: models.py:91
 msgid "Home phone"
 msgstr "Festnetz"
 
-#: aleksis/core/models.py:92
+#: models.py:92
 msgid "Mobile phone"
 msgstr "Handy"
 
-#: aleksis/core/models.py:96
+#: models.py:96
 msgid "Date of birth"
 msgstr "Geburtsdatum"
 
-#: aleksis/core/models.py:97
+#: models.py:97
 msgid "Sex"
 msgstr "Geschlecht"
 
-#: aleksis/core/models.py:99
+#: models.py:99
 msgid "Photo"
 msgstr "Foto"
 
-#: aleksis/core/models.py:104
+#: models.py:104
 msgid "Guardians / Parents"
 msgstr "Erziehungsberechtigte / Eltern"
 
-#: aleksis/core/models.py:111
+#: models.py:111
 #, fuzzy
 #| msgid "Primary colour"
 msgid "Primary group"
 msgstr "Primärfarbe"
 
-#: aleksis/core/models.py:114 aleksis/core/models.py:341
-#: aleksis/core/models.py:365 aleksis/core/models.py:448
-#: aleksis/core/models.py:634
+#: models.py:114 models.py:341 models.py:365 models.py:448 models.py:634
 msgid "Description"
 msgstr "Beschreibung"
 
-#: aleksis/core/models.py:229
+#: models.py:229
 msgid "Title of field"
 msgstr "Feldtitel"
 
-#: aleksis/core/models.py:231
+#: models.py:231
 msgid "Type of field"
 msgstr "Feldtyp"
 
-#: aleksis/core/models.py:235
+#: models.py:235
 #, fuzzy
 #| msgid "Addtitional fields"
 msgid "Addtitional field for groups"
 msgstr "Zusätzliche Felder"
 
-#: aleksis/core/models.py:236
+#: models.py:236
 #, fuzzy
 #| msgid "Addtitional fields"
 msgid "Addtitional fields for groups"
 msgstr "Zusätzliche Felder"
 
-#: aleksis/core/models.py:247
+#: models.py:247
 msgid "Group"
 msgstr "Gruppe"
 
-#: aleksis/core/models.py:249
+#: models.py:249
 msgid "Can assign child groups to groups"
 msgstr "Kann Kindgruppen zu Gruppen zuordnen"
 
-#: aleksis/core/models.py:253
+#: models.py:253
 #, fuzzy
 #| msgid "Long name of group"
 msgid "Long name"
 msgstr "Langer Name der Gruppe"
 
-#: aleksis/core/models.py:263 aleksis/core/templates/core/group_full.html:37
+#: models.py:263 templates/core/group_full.html:37
 msgid "Members"
 msgstr "Mitglieder"
 
-#: aleksis/core/models.py:266 aleksis/core/templates/core/group_full.html:34
+#: models.py:266 templates/core/group_full.html:34
 msgid "Owners"
 msgstr "Leiter/-innen"
 
-#: aleksis/core/models.py:273
+#: models.py:273
 msgid "Parent groups"
 msgstr "Ãœbergeordnete Gruppen"
 
-#: aleksis/core/models.py:281
+#: models.py:281
 msgid "Type of group"
 msgstr "Gruppentyp"
 
-#: aleksis/core/models.py:285
+#: models.py:285
 #, fuzzy
 #| msgid "Addtitional fields"
 msgid "Additional fields"
 msgstr "Zusätzliche Felder"
 
-#: aleksis/core/models.py:337
+#: models.py:337
 msgid "User"
 msgstr ""
 
-#: aleksis/core/models.py:340 aleksis/core/models.py:364
-#: aleksis/core/models.py:447
-#: aleksis/core/templates/core/announcement/list.html:18
+#: models.py:340 models.py:364 models.py:447
+#: templates/core/announcement/list.html:18
 msgid "Title"
 msgstr "Titel"
 
-#: aleksis/core/models.py:343
+#: models.py:343
 msgid "Application"
 msgstr "Anwendung"
 
-#: aleksis/core/models.py:349
+#: models.py:349
 msgid "Activity"
 msgstr "Aktivität"
 
-#: aleksis/core/models.py:350
+#: models.py:350
 msgid "Activities"
 msgstr "Aktivitäten"
 
-#: aleksis/core/models.py:356
+#: models.py:356
 msgid "Sender"
 msgstr "Absender"
 
-#: aleksis/core/models.py:361
+#: models.py:361
 #, fuzzy
 #| msgid "Recipients"
 msgid "Recipient"
 msgstr "Empfänger"
 
-#: aleksis/core/models.py:366 aleksis/core/models.py:614
+#: models.py:366 models.py:614
 msgid "Link"
 msgstr "Link"
 
-#: aleksis/core/models.py:368
+#: models.py:368
 msgid "Read"
 msgstr "Gelesen"
 
-#: aleksis/core/models.py:369
+#: models.py:369
 msgid "Sent"
 msgstr "Versandt"
 
-#: aleksis/core/models.py:382
+#: models.py:382
+#, fuzzy
+#| msgid "Notifications"
 msgid "Notification"
-msgstr "Benachrichtigung"
+msgstr "Benachrichtigungen"
 
-#: aleksis/core/models.py:383
+#: models.py:383
 msgid "Notifications"
 msgstr "Benachrichtigungen"
 
-#: aleksis/core/models.py:449
+#: models.py:449
 msgid "Link to detailed view"
 msgstr ""
 
-#: aleksis/core/models.py:452
+#: models.py:452
 msgid "Date and time from when to show"
 msgstr "Datum und Uhrzeit des Anzeigestarts"
 
-#: aleksis/core/models.py:455
+#: models.py:455
 msgid "Date and time until when to show"
 msgstr "Anzeigezeitraum"
 
-#: aleksis/core/models.py:478
+#: models.py:478
 msgid "Announcement"
 msgstr "Ankündigung"
 
-#: aleksis/core/models.py:515
+#: models.py:515
 msgid "Announcement recipient"
 msgstr "Empfänger der Ankündigung"
 
-#: aleksis/core/models.py:516
+#: models.py:516
 msgid "Announcement recipients"
 msgstr "Empfänger der Ankündigung"
 
-#: aleksis/core/models.py:566
+#: models.py:566
 msgid "Widget Title"
 msgstr "Widget-Titel"
 
-#: aleksis/core/models.py:567
+#: models.py:567
 msgid "Activate Widget"
 msgstr "Widget aktivieren"
 
-#: aleksis/core/models.py:584
+#: models.py:584
 msgid "Dashboard Widget"
 msgstr "Dashboard-Widget"
 
-#: aleksis/core/models.py:585
+#: models.py:585
 msgid "Dashboard Widgets"
 msgstr "Dashboard-Widgets"
 
-#: aleksis/core/models.py:591
+#: models.py:591
 msgid "Menu ID"
 msgstr "Menü-ID"
 
-#: aleksis/core/models.py:603
+#: models.py:603
 msgid "Custom menu"
 msgstr "Benutzerdefiniertes Menü"
 
-#: aleksis/core/models.py:604
+#: models.py:604
 msgid "Custom menus"
 msgstr "Benutzerdefinierte Menüs"
 
-#: aleksis/core/models.py:611
+#: models.py:611
 msgid "Menu"
 msgstr "Menü"
 
-#: aleksis/core/models.py:613
+#: models.py:613
 msgid "Name"
 msgstr "Name"
 
-#: aleksis/core/models.py:616
+#: models.py:616
 msgid "Icon"
 msgstr "Symbol"
 
-#: aleksis/core/models.py:623
+#: models.py:623
 msgid "Custom menu item"
 msgstr "Benutzerdefiniertes Menüelement"
 
-#: aleksis/core/models.py:624
+#: models.py:624
 msgid "Custom menu items"
 msgstr "Benutzerdefinierte Menüelemente"
 
-#: aleksis/core/models.py:633
+#: models.py:633
 msgid "Title of type"
 msgstr "Titel des Typs"
 
-#: aleksis/core/models.py:637
+#: models.py:637
 msgid "Group type"
 msgstr "Gruppentyp"
 
-#: aleksis/core/models.py:638
+#: models.py:638
 msgid "Group types"
 msgstr "Gruppentypen"
 
-#: aleksis/core/models.py:647
+#: models.py:647
 msgid "Can view system status"
 msgstr "Kann Systemstatus sehen"
 
-#: aleksis/core/models.py:648
+#: models.py:648
 msgid "Can link persons to accounts"
 msgstr "Kann Personen mit Benutzerkonten verknüpfen"
 
-#: aleksis/core/models.py:649
+#: models.py:649
 msgid "Can manage data"
 msgstr "Kann Daten verwalten"
 
-#: aleksis/core/models.py:650
+#: models.py:650
 msgid "Can impersonate"
 msgstr "Kann sich verkleiden"
 
-#: aleksis/core/models.py:651
+#: models.py:651
 msgid "Can use search"
 msgstr "Kann Suche benutzen"
 
-#: aleksis/core/models.py:652
+#: models.py:652
 msgid "Can change site preferences"
 msgstr "Kann Konfiguration ändern"
 
-#: aleksis/core/models.py:653
+#: models.py:653
 msgid "Can change person preferences"
 msgstr "Kann Einstellungen einer Person verändern"
 
-#: aleksis/core/models.py:654
+#: models.py:654
 msgid "Can change group preferences"
 msgstr "Kann Einstellungen einer Gruppe verändern"
 
-#: aleksis/core/preferences.py:33
+#: preferences.py:26
 msgid "Site title"
 msgstr "Seitentitel"
 
-#: aleksis/core/preferences.py:42
+#: preferences.py:35
 msgid "Site description"
 msgstr "Seitenbeschreibung"
 
-#: aleksis/core/preferences.py:51
+#: preferences.py:44
 msgid "Primary colour"
 msgstr "Primärfarbe"
 
-#: aleksis/core/preferences.py:60
+#: preferences.py:53
 msgid "Secondary colour"
 msgstr "Akzentfarbe"
 
-#: aleksis/core/preferences.py:68
+#: preferences.py:61
 #, fuzzy
 #| msgid "Logout"
 msgid "Logo"
 msgstr "Abmelden"
 
-#: aleksis/core/preferences.py:76
+#: preferences.py:69
 msgid "Favicon"
 msgstr ""
 
-#: aleksis/core/preferences.py:84
+#: preferences.py:77
 #, fuzzy
 #| msgid "Icon"
 msgid "PWA-Icon"
 msgstr "Symbol"
 
-#: aleksis/core/preferences.py:93
+#: preferences.py:86
 msgid "Mail out name"
 msgstr "Ausgangsmailname"
 
-#: aleksis/core/preferences.py:102
+#: preferences.py:95
 msgid "Mail out address"
 msgstr "E-Mail-Ausgangsadresse"
 
-#: aleksis/core/preferences.py:112
+#: preferences.py:105
 msgid "Link to privacy policy"
 msgstr "Link zur Datenschutzerklärung"
 
-#: aleksis/core/preferences.py:122
+#: preferences.py:115
 msgid "Link to imprint"
 msgstr "Link zum Impressum"
 
-#: aleksis/core/preferences.py:132
+#: preferences.py:125
 msgid "Name format for addressing"
 msgstr "Namensformat für Anreden"
 
-#: aleksis/core/preferences.py:148
+#: preferences.py:141
 msgid "Channels to use for notifications"
 msgstr "Aktivierte Benachrichtungskanäle"
 
-#: aleksis/core/preferences.py:158
+#: preferences.py:151
 msgid "Regular expression to match primary group, e.g. '^Class .*'"
 msgstr "Regulärer Ausdruck um Primärgruppen zu finden, z. B.  '^Class .*'"
 
-#: aleksis/core/preferences.py:167
+#: preferences.py:160
 msgid "Display name of the school"
 msgstr "Sichtbarer Name der Schule"
 
-#: aleksis/core/preferences.py:176
+#: preferences.py:169
 msgid "Official name of the school, e.g. as given by supervisory authority"
 msgstr ""
 "Offizieller Name der Schule, wie er z.B. von der Behörde vorgegeben ist"
 
-#: aleksis/core/settings.py:276
-msgid "German"
-msgstr "Deutsch"
-
-#: aleksis/core/settings.py:277
+#: settings.py:276
 msgid "English"
 msgstr "Englisch"
 
-#: aleksis/core/settings.py:278
+#: settings.py:277
+msgid "German"
+msgstr "Deutsch"
+
+#: settings.py:278
 msgid "French"
 msgstr "Französisch"
 
-#: aleksis/core/templates/403.html:10 aleksis/core/templates/404.html:10
-#: aleksis/core/templates/500.html:10
+#: templates/403.html:10 templates/404.html:10 templates/500.html:10
 msgid "Error"
 msgstr ""
 
-#: aleksis/core/templates/403.html:10
+#: templates/403.html:10
 #, fuzzy
 #| msgid ""
 #| "Error (403): You are not allowed to access the requested page or object."
@@ -673,7 +661,7 @@ msgstr ""
 "Fehler(403): Es ist Ihnen nicht erlaubt, auf die angefragte Seite oder das "
 "angefragte Objekt zuzugreifen."
 
-#: aleksis/core/templates/403.html:13 aleksis/core/templates/404.html:17
+#: templates/403.html:13 templates/404.html:17
 #, fuzzy
 #| msgid ""
 #| "\n"
@@ -693,7 +681,7 @@ msgstr ""
 "     Systemadministratoren:\n"
 "     "
 
-#: aleksis/core/templates/404.html:10
+#: templates/404.html:10
 #, fuzzy
 #| msgid "Error (404): The requested page or object was not found."
 msgid ""
@@ -703,7 +691,7 @@ msgstr ""
 "Fehler (404): Die angefragte Seite oder das angefragte Objekt wurde nicht "
 "gefunden."
 
-#: aleksis/core/templates/404.html:13
+#: templates/404.html:13
 #, fuzzy
 #| msgid ""
 #| "\n"
@@ -722,7 +710,7 @@ msgstr ""
 "      ist es möglich, dass dieser veraltet war.\n"
 "     "
 
-#: aleksis/core/templates/500.html:10
+#: templates/500.html:10
 #, fuzzy
 #| msgid "Error (500): An unexpected error has occured.."
 msgid ""
@@ -730,7 +718,7 @@ msgid ""
 "          occured."
 msgstr "Error (500): Ein unerwarteter Fehler ist aufgetreten.."
 
-#: aleksis/core/templates/500.html:13
+#: templates/500.html:13
 #, fuzzy
 #| msgid ""
 #| "\n"
@@ -749,7 +737,7 @@ msgstr ""
 "informiert.\n"
 "     "
 
-#: aleksis/core/templates/503.html:10
+#: templates/503.html:10
 #, fuzzy
 #| msgid "The maintenance mode is currently enabled. Please try again later."
 msgid ""
@@ -759,7 +747,7 @@ msgstr ""
 "Der Wartungsmodus ist aktuell aktiviert. Bitte versuchen Sie es später "
 "erneut."
 
-#: aleksis/core/templates/503.html:13
+#: templates/503.html:13
 #, fuzzy
 #| msgid ""
 #| "\n"
@@ -778,16 +766,15 @@ msgstr ""
 "     Systemadministratoren:\n"
 "     "
 
-#: aleksis/core/templates/core/about.html:6
-#: aleksis/core/templates/core/about.html:15
+#: templates/core/about.html:6 templates/core/about.html:15
 msgid "About AlekSIS"
 msgstr "Ãœber AlekSIS"
 
-#: aleksis/core/templates/core/about.html:7
+#: templates/core/about.html:7
 msgid "AlekSIS – The Free School Information System"
 msgstr "AlekSIS – The Free School Information System"
 
-#: aleksis/core/templates/core/about.html:17
+#: templates/core/about.html:17
 #, fuzzy
 #| msgid ""
 #| "\n"
@@ -811,19 +798,19 @@ msgstr ""
 "verwalten oder zu publizieren.\n"
 "      "
 
-#: aleksis/core/templates/core/about.html:25
+#: templates/core/about.html:25
 msgid "Website of AlekSIS"
 msgstr "Website von AlekSIS"
 
-#: aleksis/core/templates/core/about.html:26
+#: templates/core/about.html:26
 msgid "Source code"
 msgstr "Quellcode"
 
-#: aleksis/core/templates/core/about.html:35
+#: templates/core/about.html:35
 msgid "Licence information"
 msgstr "Lizenzinformationen"
 
-#: aleksis/core/templates/core/about.html:37
+#: templates/core/about.html:37
 #, fuzzy
 #| msgid ""
 #| "\n"
@@ -850,23 +837,23 @@ msgstr ""
 "sind wie folgt markiert:\n"
 "            "
 
-#: aleksis/core/templates/core/about.html:45
+#: templates/core/about.html:45
 msgid "Free/Open Source Licence"
 msgstr "Freie/Open Source Lizenz"
 
-#: aleksis/core/templates/core/about.html:46
+#: templates/core/about.html:46
 msgid "Other Licence"
 msgstr "Andere Lizenz"
 
-#: aleksis/core/templates/core/about.html:50
+#: templates/core/about.html:50
 msgid "Full licence text"
 msgstr "Kompletter Lizenztext"
 
-#: aleksis/core/templates/core/about.html:51
+#: templates/core/about.html:51
 msgid "More information about the EUPL"
 msgstr "Weitere Informationen über die EUPL"
 
-#: aleksis/core/templates/core/about.html:90
+#: templates/core/about.html:90
 #, python-format
 msgid ""
 "\n"
@@ -877,56 +864,54 @@ msgstr ""
 "                    Diese App ist unter %(licence)s lizenziert.\n"
 "                  "
 
-#: aleksis/core/templates/core/announcement/form.html:10
-#: aleksis/core/templates/core/announcement/form.html:17
+#: templates/core/announcement/form.html:10
+#: templates/core/announcement/form.html:17
 msgid "Edit announcement"
 msgstr "Ankündigung bearbeiten"
 
-#: aleksis/core/templates/core/announcement/form.html:12
+#: templates/core/announcement/form.html:12
 msgid "Publish announcement"
 msgstr "Ankündigung veröffentlichen"
 
-#: aleksis/core/templates/core/announcement/form.html:19
-#: aleksis/core/templates/core/announcement/list.html:13
+#: templates/core/announcement/form.html:19
+#: templates/core/announcement/list.html:13
 msgid "Publish new announcement"
 msgstr "Neue Ankündigung veröffentlichen"
 
-#: aleksis/core/templates/core/announcement/form.html:30
+#: templates/core/announcement/form.html:30
 msgid "Save und publish announcement"
 msgstr "Ankündigung speichern und veröffentlichen"
 
-#: aleksis/core/templates/core/announcement/list.html:19
+#: templates/core/announcement/list.html:19
 msgid "Valid from"
 msgstr "Gültig von"
 
-#: aleksis/core/templates/core/announcement/list.html:20
+#: templates/core/announcement/list.html:20
 msgid "Valid until"
 msgstr "Gültig bis"
 
-#: aleksis/core/templates/core/announcement/list.html:21
+#: templates/core/announcement/list.html:21
 msgid "Recipients"
 msgstr "Empfänger"
 
-#: aleksis/core/templates/core/announcement/list.html:22
+#: templates/core/announcement/list.html:22
 msgid "Actions"
 msgstr "Aktionen"
 
-#: aleksis/core/templates/core/announcement/list.html:36
-#: aleksis/core/templates/core/group_full.html:22
-#: aleksis/core/templates/core/person_full.html:21
+#: templates/core/announcement/list.html:36 templates/core/group_full.html:22
+#: templates/core/person_full.html:21
 msgid "Edit"
 msgstr "Bearbeiten"
 
-#: aleksis/core/templates/core/announcement/list.html:42
+#: templates/core/announcement/list.html:42
 msgid "Delete"
 msgstr "Löschen"
 
-#: aleksis/core/templates/core/announcement/list.html:50
+#: templates/core/announcement/list.html:50
 msgid "There are no announcements."
 msgstr "Es gibt aktuell keine Ankündigungen."
 
-#: aleksis/core/templates/core/announcements.html:9
-#: aleksis/core/templates/core/announcements.html:36
+#: templates/core/announcements.html:9 templates/core/announcements.html:36
 #, python-format
 msgid ""
 "\n"
@@ -937,7 +922,7 @@ msgstr ""
 "              Gültig für %(from)s\n"
 "            "
 
-#: aleksis/core/templates/core/announcements.html:13
+#: templates/core/announcements.html:13
 #, python-format
 msgid ""
 "\n"
@@ -948,7 +933,7 @@ msgstr ""
 "              Gültig von %(from)s bis %(until)s\n"
 "            "
 
-#: aleksis/core/templates/core/announcements.html:40
+#: templates/core/announcements.html:40
 #, python-format
 msgid ""
 "\n"
@@ -959,52 +944,48 @@ msgstr ""
 "              Gültig von %(from)s – %(until)s\n"
 "            "
 
-#: aleksis/core/templates/core/base.html:54
+#: templates/core/base.html:54
 msgid "Logged in as"
 msgstr "Angemeldet als"
 
-#: aleksis/core/templates/core/base.html:76
-#: aleksis/core/templates/search/search.html:7
-#: aleksis/core/templates/search/search.html:22
+#: templates/core/base.html:76 templates/search/search.html:7
+#: templates/search/search.html:22
 msgid "Search"
 msgstr "Suchen"
 
-#: aleksis/core/templates/core/base.html:148
+#: templates/core/base.html:148
 msgid "About AlekSIS — The Free School Information System"
 msgstr "Über AlekSIS — The Free School Information System"
 
-#: aleksis/core/templates/core/base.html:156
+#: templates/core/base.html:156
 msgid "Impress"
 msgstr "Impressum"
 
-#: aleksis/core/templates/core/base.html:164
+#: templates/core/base.html:164
 msgid "Privacy Policy"
 msgstr "Datenschutzerklärung"
 
-#: aleksis/core/templates/core/base_print.html:62
+#: templates/core/base_print.html:62
 msgid "Powered by AlekSIS"
 msgstr "Betrieben mit AlekSIS"
 
-#: aleksis/core/templates/core/edit_group.html:6
-#: aleksis/core/templates/core/edit_group.html:7
+#: templates/core/edit_group.html:6 templates/core/edit_group.html:7
 msgid "Edit group"
 msgstr "Gruppe editieren"
 
-#: aleksis/core/templates/core/edit_person.html:8
-#: aleksis/core/templates/core/edit_person.html:9
+#: templates/core/edit_person.html:8 templates/core/edit_person.html:9
 msgid "Edit person"
 msgstr "Person editieren"
 
-#: aleksis/core/templates/core/group_full.html:28
-#: aleksis/core/templates/core/person_full.html:28
+#: templates/core/group_full.html:28 templates/core/person_full.html:28
 msgid "Change preferences"
 msgstr "Einstellungen ändern"
 
-#: aleksis/core/templates/core/groups.html:14
+#: templates/core/groups.html:14
 msgid "Create group"
 msgstr "Gruppe erstellen"
 
-#: aleksis/core/templates/core/groups_child_groups.html:18
+#: templates/core/groups_child_groups.html:18
 #, fuzzy
 #| msgid ""
 #| "\n"
@@ -1025,23 +1006,23 @@ msgstr ""
 "auszuwählen, die Sie ändern möchten und klicken auf \"Weiter\".\n"
 "        "
 
-#: aleksis/core/templates/core/groups_child_groups.html:31
+#: templates/core/groups_child_groups.html:31
 msgid "Update selection"
 msgstr "Auswahl aktualisieren"
 
-#: aleksis/core/templates/core/groups_child_groups.html:35
+#: templates/core/groups_child_groups.html:35
 msgid "Clear all filters"
 msgstr "Alle Filter leeren"
 
-#: aleksis/core/templates/core/groups_child_groups.html:39
+#: templates/core/groups_child_groups.html:39
 msgid "Currently selected groups"
 msgstr "Aktuell ausgewählte Gruppen"
 
-#: aleksis/core/templates/core/groups_child_groups.html:52
+#: templates/core/groups_child_groups.html:52
 msgid "Start assigning child groups for this groups"
 msgstr "Zuordnung von Kindgruppen zu Gruppen starten"
 
-#: aleksis/core/templates/core/groups_child_groups.html:61
+#: templates/core/groups_child_groups.html:61
 msgid ""
 "\n"
 "            Please select some groups in order to go on with assigning.\n"
@@ -1051,15 +1032,15 @@ msgstr ""
 "            Bitte wählen Sie Gruppen aus, um Gruppen zuzuordnen.\n"
 "          "
 
-#: aleksis/core/templates/core/groups_child_groups.html:72
+#: templates/core/groups_child_groups.html:72
 msgid "Current group:"
 msgstr "Aktuelle Gruppe:"
 
-#: aleksis/core/templates/core/groups_child_groups.html:78
+#: templates/core/groups_child_groups.html:78
 msgid "Please be careful!"
 msgstr ""
 
-#: aleksis/core/templates/core/groups_child_groups.html:79
+#: templates/core/groups_child_groups.html:79
 msgid ""
 "\n"
 "            If you click \"Back\" or \"Next\" the current group assignments "
@@ -1070,55 +1051,57 @@ msgid ""
 "          "
 msgstr ""
 
-#: aleksis/core/templates/core/groups_child_groups.html:93
-#: aleksis/core/templates/core/groups_child_groups.html:128
-#: aleksis/core/templates/two_factor/_wizard_actions.html:15
-#: aleksis/core/templates/two_factor/_wizard_actions.html:20
+#: templates/core/groups_child_groups.html:93
+#: templates/core/groups_child_groups.html:128
+#: templates/two_factor/_wizard_actions.html:15
+#: templates/two_factor/_wizard_actions.html:20
 msgid "Back"
 msgstr "Zurück"
 
-#: aleksis/core/templates/core/groups_child_groups.html:99
-#: aleksis/core/templates/core/groups_child_groups.html:134
-#: aleksis/core/templates/two_factor/_wizard_actions.html:26
+#: templates/core/groups_child_groups.html:99
+#: templates/core/groups_child_groups.html:134
+#: templates/two_factor/_wizard_actions.html:26
 msgid "Next"
 msgstr "Weiter"
 
-#: aleksis/core/templates/core/groups_child_groups.html:106
-#: aleksis/core/templates/core/groups_child_groups.html:141
-#: aleksis/core/templates/core/save_button.html:3
+#: templates/core/groups_child_groups.html:106
+#: templates/core/groups_child_groups.html:141
+#: templates/core/save_button.html:3
 msgid "Save"
 msgstr "Speichern"
 
-#: aleksis/core/templates/core/groups_child_groups.html:112
-#: aleksis/core/templates/core/groups_child_groups.html:147
+#: templates/core/groups_child_groups.html:112
+#: templates/core/groups_child_groups.html:147
 msgid "Save and next"
 msgstr "Speichern und weiter"
 
-#: aleksis/core/templates/core/index.html:4
+#: templates/core/index.html:4
 msgid "Home"
 msgstr "Startseite"
 
-#: aleksis/core/templates/core/index.html:42
+#: templates/core/index.html:42
 msgid "Last activities"
 msgstr "Letzte Aktivitäten"
 
-#: aleksis/core/templates/core/index.html:60
+#: templates/core/index.html:60
 msgid "No activities available yet."
 msgstr "Aktuell keine Aktivitäten verfügbar."
 
-#: aleksis/core/templates/core/index.html:65
+#: templates/core/index.html:65
 msgid "Recent notifications"
 msgstr "Letzte Benachrichtigungen"
 
-#: aleksis/core/templates/core/index.html:81
+#: templates/core/index.html:81
+#, fuzzy
+#| msgid "More information →"
 msgid "More information →"
 msgstr "Mehr Informationen →"
 
-#: aleksis/core/templates/core/index.html:88
+#: templates/core/index.html:88
 msgid "No notifications available yet."
 msgstr "Aktuell keine Benachrichtigungen verfügbar."
 
-#: aleksis/core/templates/core/no_person.html:12
+#: templates/core/no_person.html:12
 #, fuzzy
 #| msgid ""
 #| "\n"
@@ -1141,7 +1124,7 @@ msgstr ""
 "        die Verwaltenden von AlekSIS an Ihrer Schule.\n"
 "        "
 
-#: aleksis/core/templates/core/no_person.html:19
+#: templates/core/no_person.html:19
 #, fuzzy
 #| msgid ""
 #| "\n"
@@ -1164,16 +1147,16 @@ msgstr ""
 "        die Verwaltenden von AlekSIS an Ihrer Schule.\n"
 "        "
 
-#: aleksis/core/templates/core/person_full.html:34
+#: templates/core/person_full.html:34
 msgid "Contact details"
 msgstr "Kontaktdetails"
 
-#: aleksis/core/templates/core/persons_accounts.html:7
-#: aleksis/core/templates/core/persons_accounts.html:9
+#: templates/core/persons_accounts.html:7
+#: templates/core/persons_accounts.html:9
 msgid "Link persons to accounts"
 msgstr "Personen mit Benutzerkonten verknüpfen"
 
-#: aleksis/core/templates/core/persons_accounts.html:16
+#: templates/core/persons_accounts.html:16
 msgid ""
 "\n"
 "        You can use this form to assign user accounts to persons. Use the\n"
@@ -1192,28 +1175,28 @@ msgstr ""
 "    eingegebenen Benutzernamen und kopiert alle anderen Daten der Person.\n"
 "      "
 
-#: aleksis/core/templates/core/persons_accounts.html:31
-#: aleksis/core/templates/core/persons_accounts.html:55
+#: templates/core/persons_accounts.html:31
+#: templates/core/persons_accounts.html:55
 msgid "Update"
 msgstr "Aktualisieren"
 
-#: aleksis/core/templates/core/persons_accounts.html:37
+#: templates/core/persons_accounts.html:37
 msgid "Existing account"
 msgstr "Existierendes Konto"
 
-#: aleksis/core/templates/core/persons_accounts.html:38
+#: templates/core/persons_accounts.html:38
 msgid "New account"
 msgstr "Neues Konto"
 
-#: aleksis/core/templates/core/system_status.html:12
+#: templates/core/system_status.html:12
 msgid "System checks"
 msgstr "Systemprüfungen"
 
-#: aleksis/core/templates/core/system_status.html:21
+#: templates/core/system_status.html:21
 msgid "Maintenance mode enabled"
 msgstr "Wartungsmodus aktiviert"
 
-#: aleksis/core/templates/core/system_status.html:23
+#: templates/core/system_status.html:23
 msgid ""
 "\n"
 "                Only admin and visitors from internal IPs can access "
@@ -1225,19 +1208,19 @@ msgstr ""
 "können die Seite aufrufen.\n"
 "              "
 
-#: aleksis/core/templates/core/system_status.html:34
+#: templates/core/system_status.html:34
 msgid "Maintenance mode disabled"
 msgstr "Wartungsmodus deaktiviert"
 
-#: aleksis/core/templates/core/system_status.html:35
+#: templates/core/system_status.html:35
 msgid "Everyone can access the site."
 msgstr "Jeder kann die Seite aufrufen."
 
-#: aleksis/core/templates/core/system_status.html:45
+#: templates/core/system_status.html:45
 msgid "Debug mode enabled"
 msgstr "Debug-Modus aktiviert"
 
-#: aleksis/core/templates/core/system_status.html:47
+#: templates/core/system_status.html:47
 msgid ""
 "\n"
 "                The web server throws back debug information on errors. Do "
@@ -1249,11 +1232,11 @@ msgstr ""
 "Nicht im Produktivbetrieb nutzen!\n"
 "              "
 
-#: aleksis/core/templates/core/system_status.html:54
+#: templates/core/system_status.html:54
 msgid "Debug mode disabled"
 msgstr "Debug-Modus deaktivert"
 
-#: aleksis/core/templates/core/system_status.html:56
+#: templates/core/system_status.html:56
 msgid ""
 "\n"
 "                Debug mode is disabled. Default error pages are displayed on "
@@ -1265,32 +1248,38 @@ msgstr ""
 "bei Fehlern angezeigt.\n"
 "              "
 
-#: aleksis/core/templates/dynamic_preferences/form.html:9
+#: templates/dynamic_preferences/form.html:9
+#, fuzzy
+#| msgid "Change preferences"
 msgid "Site preferences"
-msgstr ""
+msgstr "Einstellungen ändern"
 
-#: aleksis/core/templates/dynamic_preferences/form.html:11
+#: templates/dynamic_preferences/form.html:11
+#, fuzzy
+#| msgid "Preferences"
 msgid "My preferences"
-msgstr ""
+msgstr "Einstellungen"
 
-#: aleksis/core/templates/dynamic_preferences/form.html:13
+#: templates/dynamic_preferences/form.html:13
 #, python-format
 msgid "Preferences for %(instance)s"
 msgstr ""
 
-#: aleksis/core/templates/dynamic_preferences/form.html:25
+#: templates/dynamic_preferences/form.html:25
+#, fuzzy
+#| msgid "Change preferences"
 msgid "Save preferences"
-msgstr ""
+msgstr "Einstellungen ändern"
 
-#: aleksis/core/templates/dynamic_preferences/sections.html:7
+#: templates/dynamic_preferences/sections.html:7
 msgid "All"
 msgstr ""
 
-#: aleksis/core/templates/impersonate/list_users.html:8
+#: templates/impersonate/list_users.html:8
 msgid "Impersonate user"
 msgstr "Als Benutzer verkleiden"
 
-#: aleksis/core/templates/offline.html:6
+#: templates/offline.html:6
 #, fuzzy
 #| msgid "No internet connection."
 msgid ""
@@ -1298,7 +1287,7 @@ msgid ""
 "    connection."
 msgstr "Keine Internetverbindung."
 
-#: aleksis/core/templates/offline.html:10
+#: templates/offline.html:10
 #, fuzzy
 #| msgid ""
 #| "\n"
@@ -1324,44 +1313,78 @@ msgstr ""
 "Systemadministratoren:\n"
 "      "
 
-#: aleksis/core/templates/search/search.html:8
+#: templates/search/search.html:8
+#, fuzzy
+#| msgid "Search"
 msgid "Global Search"
-msgstr ""
+msgstr "Suchen"
 
-#: aleksis/core/templates/search/search.html:15
+#: templates/search/search.html:15
+#, fuzzy
+#| msgid "Search"
 msgid "Search Term"
-msgstr ""
+msgstr "Suchen"
 
-#: aleksis/core/templates/search/search.html:26
+#: templates/search/search.html:26
 msgid "Results"
 msgstr ""
 
-#: aleksis/core/templates/search/search.html:38
+#: templates/search/search.html:38
 msgid "No search results could be found to your search."
 msgstr ""
 
-#: aleksis/core/templates/search/search.html:87
+#: templates/search/search.html:87
 msgid "Please enter a search term above."
 msgstr ""
 
-#: aleksis/core/templates/two_factor/_base_focus.html:6
-#: aleksis/core/templates/two_factor/core/otp_required.html:22
-#: aleksis/core/templates/two_factor/core/setup.html:5
-#: aleksis/core/templates/two_factor/profile/profile.html:87
+#: templates/templated_email/notification.email:3
+#, fuzzy
+#| msgid "Notification"
+msgid "New notification for"
+msgstr "Benachrichtigung"
+
+#: templates/templated_email/notification.email:7
+msgid "Dear"
+msgstr ""
+
+#: templates/templated_email/notification.email:8
+msgid "we got a new notification for you:"
+msgstr ""
+
+#: templates/templated_email/notification.email:12
+#, fuzzy
+#| msgid "More information →"
+msgid "More information"
+msgstr "Mehr Informationen →"
+
+#: templates/templated_email/notification.email:16
+#, python-format
+msgid ""
+"\n"
+"    <p>By %(trans_sender)s at %(trans_created_at)s</p>\n"
+"\n"
+"    <i>Your AlekSIS team</i>\n"
+"    "
+msgstr ""
+
+#: templates/two_factor/_base_focus.html:6
+#: templates/two_factor/core/otp_required.html:22
+#: templates/two_factor/core/setup.html:5
+#: templates/two_factor/profile/profile.html:87
 msgid "Enable Two-Factor Authentication"
 msgstr "Zwei-Faktor-Authentifizierung aktivieren"
 
-#: aleksis/core/templates/two_factor/_wizard_actions.html:6
+#: templates/two_factor/_wizard_actions.html:6
 msgid "Cancel"
 msgstr "Abbrechen"
 
-#: aleksis/core/templates/two_factor/core/backup_tokens.html:5
-#: aleksis/core/templates/two_factor/core/backup_tokens.html:9
-#: aleksis/core/templates/two_factor/profile/profile.html:46
+#: templates/two_factor/core/backup_tokens.html:5
+#: templates/two_factor/core/backup_tokens.html:9
+#: templates/two_factor/profile/profile.html:46
 msgid "Backup Tokens"
 msgstr "Backup-Token"
 
-#: aleksis/core/templates/two_factor/core/backup_tokens.html:14
+#: templates/two_factor/core/backup_tokens.html:14
 msgid ""
 "\n"
 "        Backup tokens can be used when your primary and backup\n"
@@ -1383,7 +1406,7 @@ msgstr ""
 "angezeigt.\n"
 "      "
 
-#: aleksis/core/templates/two_factor/core/backup_tokens.html:33
+#: templates/two_factor/core/backup_tokens.html:33
 msgid ""
 "\n"
 "          Print these tokens and keep them somewhere safe.\n"
@@ -1393,28 +1416,28 @@ msgstr ""
 "          Drucken Sie diese Tokens aus und bewahren Sie sie gut auf.\n"
 "        "
 
-#: aleksis/core/templates/two_factor/core/backup_tokens.html:39
+#: templates/two_factor/core/backup_tokens.html:39
 msgid "You don't have any backup codes yet."
 msgstr "Sie haben aktuell keine Backup-Codes."
 
-#: aleksis/core/templates/two_factor/core/backup_tokens.html:45
+#: templates/two_factor/core/backup_tokens.html:45
 msgid "Back to Account Security"
 msgstr "Zurück zur Kontosicherheit"
 
-#: aleksis/core/templates/two_factor/core/backup_tokens.html:49
+#: templates/two_factor/core/backup_tokens.html:49
 msgid "Generate Tokens"
 msgstr "Tokens generieren"
 
-#: aleksis/core/templates/two_factor/core/login.html:16
+#: templates/two_factor/core/login.html:16
 msgid ""
 "You have no permission to view this page. Please login with an other account."
 msgstr ""
 
-#: aleksis/core/templates/two_factor/core/login.html:25
+#: templates/two_factor/core/login.html:25
 msgid "Please login to see this page."
 msgstr ""
 
-#: aleksis/core/templates/two_factor/core/login.html:28
+#: templates/two_factor/core/login.html:28
 #, fuzzy
 #| msgid ""
 #| "We are calling your phone right now, please enter the\n"
@@ -1426,7 +1449,7 @@ msgstr ""
 "Wir rufen Ihr Telefon jetzt an, bitte geben Sie die\n"
 "              Zahlen ein, die Sie hören."
 
-#: aleksis/core/templates/two_factor/core/login.html:31
+#: templates/two_factor/core/login.html:31
 #, fuzzy
 #| msgid ""
 #| "We sent you a text message, please enter the tokens we\n"
@@ -1439,7 +1462,7 @@ msgstr ""
 "ein,\n"
 "            die wir Ihnen geschickt haben."
 
-#: aleksis/core/templates/two_factor/core/login.html:34
+#: templates/two_factor/core/login.html:34
 #, fuzzy
 #| msgid ""
 #| "Please enter the tokens generated by your token\n"
@@ -1451,7 +1474,7 @@ msgstr ""
 "Bitte geben Sie den von Ihrem Token-Generator\n"
 "            generierten Token ein."
 
-#: aleksis/core/templates/two_factor/core/login.html:38
+#: templates/two_factor/core/login.html:38
 msgid ""
 "Use this form for entering backup tokens for logging in.\n"
 "            These tokens have been generated for you to print and keep safe. "
@@ -1459,23 +1482,23 @@ msgid ""
 "            enter one of these backup tokens to login to your account."
 msgstr ""
 
-#: aleksis/core/templates/two_factor/core/login.html:56
+#: templates/two_factor/core/login.html:56
 msgid "Or, alternatively, use one of your backup phones:"
 msgstr "Oder, alternativ, nutzen Sie eins Ihrer Backup-Telefone:"
 
-#: aleksis/core/templates/two_factor/core/login.html:66
+#: templates/two_factor/core/login.html:66
 msgid "As a last resort, you can use a backup token:"
 msgstr "Als letzte Möglichkeit können Sie einen Backup-Token nutzen:"
 
-#: aleksis/core/templates/two_factor/core/login.html:69
+#: templates/two_factor/core/login.html:69
 msgid "Use Backup Token"
 msgstr "Backup-Token nutzen"
 
-#: aleksis/core/templates/two_factor/core/otp_required.html:9
+#: templates/two_factor/core/otp_required.html:9
 msgid "Permission Denied"
 msgstr "Zugriff verwehrt"
 
-#: aleksis/core/templates/two_factor/core/otp_required.html:10
+#: templates/two_factor/core/otp_required.html:10
 msgid ""
 "The page you requested, enforces users to verify using\n"
 "          two-factor authentication for security reasons. You need to enable "
@@ -1487,7 +1510,7 @@ msgstr ""
 "diese\n"
 "          Sicherheitsfunktion aktivieren, um diese Seite aufzurufen."
 
-#: aleksis/core/templates/two_factor/core/otp_required.html:14
+#: templates/two_factor/core/otp_required.html:14
 msgid ""
 "Two-factor authentication is not enabled for your\n"
 "          account. Enable two-factor authentication for enhanced account\n"
@@ -1497,29 +1520,29 @@ msgstr ""
 "          Aktivieren Sie Zwei-Faktor-Authentifizierung für eine verbesserte\n"
 "          Accountsicherheit."
 
-#: aleksis/core/templates/two_factor/core/otp_required.html:19
+#: templates/two_factor/core/otp_required.html:19
 msgid "Go back"
 msgstr "Zurück"
 
-#: aleksis/core/templates/two_factor/core/phone_register.html:5
-#: aleksis/core/templates/two_factor/core/phone_register.html:9
+#: templates/two_factor/core/phone_register.html:5
+#: templates/two_factor/core/phone_register.html:9
 msgid "Add Backup Phone"
 msgstr "Backup-Telefon hinzufügen"
 
-#: aleksis/core/templates/two_factor/core/phone_register.html:12
+#: templates/two_factor/core/phone_register.html:12
 msgid ""
 "You'll be adding a backup phone number to your\n"
 "      account. This number will be used if your primary method of\n"
 "      registration is not available."
 msgstr ""
 
-#: aleksis/core/templates/two_factor/core/phone_register.html:16
+#: templates/two_factor/core/phone_register.html:16
 msgid ""
 "We've sent a token to your phone number. Please\n"
 "      enter the token you've received."
 msgstr ""
 
-#: aleksis/core/templates/two_factor/core/setup.html:9
+#: templates/two_factor/core/setup.html:9
 msgid ""
 "\n"
 "        You are about to take your account security to the\n"
@@ -1528,14 +1551,14 @@ msgid ""
 "      "
 msgstr ""
 
-#: aleksis/core/templates/two_factor/core/setup.html:17
+#: templates/two_factor/core/setup.html:17
 msgid ""
 "\n"
 "        Please select which authentication method you would like to use:\n"
 "      "
 msgstr ""
 
-#: aleksis/core/templates/two_factor/core/setup.html:23
+#: templates/two_factor/core/setup.html:23
 msgid ""
 "\n"
 "        To start using a token generator, please use your\n"
@@ -1544,7 +1567,7 @@ msgid ""
 "      "
 msgstr ""
 
-#: aleksis/core/templates/two_factor/core/setup.html:34
+#: templates/two_factor/core/setup.html:34
 msgid ""
 "\n"
 "        Please enter the phone number you wish to receive the\n"
@@ -1552,7 +1575,7 @@ msgid ""
 "      "
 msgstr ""
 
-#: aleksis/core/templates/two_factor/core/setup.html:41
+#: templates/two_factor/core/setup.html:41
 msgid ""
 "\n"
 "        Please enter the phone number you wish to be called on.\n"
@@ -1560,15 +1583,21 @@ msgid ""
 "      "
 msgstr ""
 
-#: aleksis/core/templates/two_factor/core/setup.html:50
+#: templates/two_factor/core/setup.html:50
+#, fuzzy
+#| msgid ""
+#| "We are calling your phone right now, please enter the\n"
+#| "            digits you hear."
 msgid ""
 "\n"
 "            We are calling your phone right now, please enter the digits you "
 "hear.\n"
 "          "
 msgstr ""
+"Wir rufen Ihr Telefon jetzt an, bitte geben Sie die\n"
+"              Zahlen ein, die Sie hören."
 
-#: aleksis/core/templates/two_factor/core/setup.html:56
+#: templates/two_factor/core/setup.html:56
 msgid ""
 "\n"
 "            We sent you a text message, please enter the tokens we sent.\n"
@@ -1579,7 +1608,7 @@ msgstr ""
 "diesen ein.\n"
 "          "
 
-#: aleksis/core/templates/two_factor/core/setup.html:63
+#: templates/two_factor/core/setup.html:63
 msgid ""
 "\n"
 "          We've encountered an issue with the selected authentication "
@@ -1592,7 +1621,7 @@ msgid ""
 "        "
 msgstr ""
 
-#: aleksis/core/templates/two_factor/core/setup.html:73
+#: templates/two_factor/core/setup.html:73
 msgid ""
 "\n"
 "        To identify and verify your YubiKey, please insert a\n"
@@ -1601,12 +1630,12 @@ msgid ""
 "      "
 msgstr ""
 
-#: aleksis/core/templates/two_factor/core/setup_complete.html:5
-#: aleksis/core/templates/two_factor/core/setup_complete.html:9
+#: templates/two_factor/core/setup_complete.html:5
+#: templates/two_factor/core/setup_complete.html:9
 msgid "Two-Factor Authentication successfully enabled"
 msgstr "Zwei-Faktor-Authentifizierung erfolgreich aktiviert"
 
-#: aleksis/core/templates/two_factor/core/setup_complete.html:14
+#: templates/two_factor/core/setup_complete.html:14
 msgid ""
 "\n"
 "        Congratulations, you've successfully enabled two-factor "
@@ -1618,17 +1647,17 @@ msgstr ""
 "aktiviert.\n"
 "      "
 
-#: aleksis/core/templates/two_factor/core/setup_complete.html:24
-#: aleksis/core/templates/two_factor/core/setup_complete.html:44
+#: templates/two_factor/core/setup_complete.html:24
+#: templates/two_factor/core/setup_complete.html:44
 msgid "Back to Profile"
 msgstr "Zurück zum Profil"
 
-#: aleksis/core/templates/two_factor/core/setup_complete.html:28
-#: aleksis/core/templates/two_factor/core/setup_complete.html:48
+#: templates/two_factor/core/setup_complete.html:28
+#: templates/two_factor/core/setup_complete.html:48
 msgid "Generate backup codes"
 msgstr "Backup-Codes generieren"
 
-#: aleksis/core/templates/two_factor/core/setup_complete.html:34
+#: templates/two_factor/core/setup_complete.html:34
 msgid ""
 "\n"
 "          However, it might happen that you don't have access to\n"
@@ -1638,19 +1667,19 @@ msgid ""
 "        "
 msgstr ""
 
-#: aleksis/core/templates/two_factor/core/setup_complete.html:52
-#: aleksis/core/templates/two_factor/profile/profile.html:41
+#: templates/two_factor/core/setup_complete.html:52
+#: templates/two_factor/profile/profile.html:41
 msgid "Add Phone Number"
 msgstr "Telefonnummer hinzufügen"
 
-#: aleksis/core/templates/two_factor/profile/disable.html:5
-#: aleksis/core/templates/two_factor/profile/disable.html:9
-#: aleksis/core/templates/two_factor/profile/profile.html:63
-#: aleksis/core/templates/two_factor/profile/profile.html:73
+#: templates/two_factor/profile/disable.html:5
+#: templates/two_factor/profile/disable.html:9
+#: templates/two_factor/profile/profile.html:63
+#: templates/two_factor/profile/profile.html:73
 msgid "Disable Two-Factor Authentication"
 msgstr "Zwei-Faktor-Authentifizierung deaktiveren"
 
-#: aleksis/core/templates/two_factor/profile/disable.html:12
+#: templates/two_factor/profile/disable.html:12
 msgid ""
 "You are about to disable two-factor authentication. This weakens your "
 "account security, are you sure?"
@@ -1658,49 +1687,49 @@ msgstr ""
 "Sie sind dabei, Zwei-Faktor-Authentifizierung zu deaktivieren. Das "
 "verschlechtert Ihre Kontosicherheit. Sind Sie sicher?"
 
-#: aleksis/core/templates/two_factor/profile/disable.html:26
+#: templates/two_factor/profile/disable.html:26
 msgid "Disable"
 msgstr "Deaktivieren"
 
-#: aleksis/core/templates/two_factor/profile/profile.html:5
-#: aleksis/core/templates/two_factor/profile/profile.html:10
+#: templates/two_factor/profile/profile.html:5
+#: templates/two_factor/profile/profile.html:10
 msgid "Account Security"
 msgstr "Kontosicherheit"
 
-#: aleksis/core/templates/two_factor/profile/profile.html:15
+#: templates/two_factor/profile/profile.html:15
 msgid "Tokens will be generated by your token generator."
 msgstr "Tokens werden von Ihrem Token-Generator generiert."
 
-#: aleksis/core/templates/two_factor/profile/profile.html:17
+#: templates/two_factor/profile/profile.html:17
 #, python-format
 msgid "Primary method: %(primary)s"
 msgstr "Primäre Methode: %(primary)s"
 
-#: aleksis/core/templates/two_factor/profile/profile.html:19
+#: templates/two_factor/profile/profile.html:19
 msgid "Tokens will be generated by your YubiKey."
 msgstr "Tokens werden von Ihrem YubiKey generiert."
 
-#: aleksis/core/templates/two_factor/profile/profile.html:23
+#: templates/two_factor/profile/profile.html:23
 msgid "Backup Phone Numbers"
 msgstr "Backup-Telefonnummern"
 
-#: aleksis/core/templates/two_factor/profile/profile.html:24
+#: templates/two_factor/profile/profile.html:24
 msgid ""
 "If your primary method is not available, we are able to\n"
 "        send backup tokens to the phone numbers listed below."
 msgstr ""
 
-#: aleksis/core/templates/two_factor/profile/profile.html:33
+#: templates/two_factor/profile/profile.html:33
 msgid "Unregister"
 msgstr "Abmelden"
 
-#: aleksis/core/templates/two_factor/profile/profile.html:48
+#: templates/two_factor/profile/profile.html:48
 msgid ""
 "If you don't have any device with you, you can access\n"
 "        your account using backup tokens."
 msgstr ""
 
-#: aleksis/core/templates/two_factor/profile/profile.html:50
+#: templates/two_factor/profile/profile.html:50
 #, python-format
 msgid ""
 "\n"
@@ -1719,19 +1748,32 @@ msgstr[1] ""
 "        Sie haben %(counter)s Backup-Tokens übrig.\n"
 "      "
 
-#: aleksis/core/templates/two_factor/profile/profile.html:59
+#: templates/two_factor/profile/profile.html:59
 msgid "Show Codes"
 msgstr "Codes anzeigen"
 
-#: aleksis/core/templates/two_factor/profile/profile.html:65
+#: templates/two_factor/profile/profile.html:65
+#, fuzzy
+#| msgid ""
+#| "Two-factor authentication is not enabled for your\n"
+#| "          account. Enable two-factor authentication for enhanced account\n"
+#| "          security."
 msgid ""
 "\n"
 "        However we strongly discourage you to do so, you can\n"
 "        also disable two-factor authentication for your account.\n"
 "      "
 msgstr ""
+"Die Zwei-Faktor-Authentifizierung ist nicht für Ihren Account aktiviert.\n"
+"          Aktivieren Sie Zwei-Faktor-Authentifizierung für eine verbesserte\n"
+"          Accountsicherheit."
 
-#: aleksis/core/templates/two_factor/profile/profile.html:78
+#: templates/two_factor/profile/profile.html:78
+#, fuzzy
+#| msgid ""
+#| "Two-factor authentication is not enabled for your\n"
+#| "          account. Enable two-factor authentication for enhanced account\n"
+#| "          security."
 msgid ""
 "\n"
 "        Two-factor authentication is not enabled for your\n"
@@ -1739,38 +1781,41 @@ msgid ""
 "        security.\n"
 "      "
 msgstr ""
+"Die Zwei-Faktor-Authentifizierung ist nicht für Ihren Account aktiviert.\n"
+"          Aktivieren Sie Zwei-Faktor-Authentifizierung für eine verbesserte\n"
+"          Accountsicherheit."
 
-#: aleksis/core/util/notifications.py:65
+#: util/notifications.py:65
 msgid "E-Mail"
 msgstr "E-Mail"
 
-#: aleksis/core/util/notifications.py:66
+#: util/notifications.py:66
 msgid "SMS"
 msgstr "SMS"
 
-#: aleksis/core/views.py:212
+#: views.py:212
 #, fuzzy
 #| msgid "The group has been saved."
 msgid "The child groups were successfully saved."
 msgstr "Die Gruppe wurde gespeichert."
 
-#: aleksis/core/views.py:240
+#: views.py:240
 msgid "The person has been saved."
 msgstr "Die Person wurde gespeichert."
 
-#: aleksis/core/views.py:276
+#: views.py:276
 msgid "The group has been saved."
 msgstr "Die Gruppe wurde gespeichert."
 
-#: aleksis/core/views.py:348
+#: views.py:348
 msgid "The announcement has been saved."
 msgstr "Die Ankündigung wurde gespeichert."
 
-#: aleksis/core/views.py:364
+#: views.py:364
 msgid "The announcement has been deleted."
 msgstr "Ankündigung wurde gelöscht."
 
-#: aleksis/core/views.py:434
+#: views.py:435
 #, fuzzy
 #| msgid "The person has been saved."
 msgid "The preferences have been saved successfully."
diff --git a/aleksis/core/locale/fr/LC_MESSAGES/django.po b/aleksis/core/locale/fr/LC_MESSAGES/django.po
index 20d4d6fb92bb74fb89d6323aadcdc44179bd31e8..70b2c8d063236bd4c6861b1f02ebb441679631e8 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: 2020-05-03 10:36+0000\n"
+"POT-Creation-Date: 2020-05-03 15:05+0200\n"
 "PO-Revision-Date: 2020-04-27 13:03+0000\n"
 "Last-Translator: Marlene Grundey <grundema@katharineum.de>\n"
 "Language-Team: French <https://translate.edugit.org/projects/aleksis/aleksis/"
@@ -19,637 +19,649 @@ msgstr ""
 "Plural-Forms: nplurals=2; plural=n > 1;\n"
 "X-Generator: Weblate 4.0.1\n"
 
-#: aleksis/core/forms.py:46
+#: forms.py:46
 msgid "You cannot set a new username when also selecting an existing user."
 msgstr ""
 
-#: aleksis/core/forms.py:50
+#: forms.py:50
 msgid "This username is already in use."
 msgstr ""
 
-#: aleksis/core/forms.py:74
+#: forms.py:74
 msgid "Base data"
 msgstr ""
 
-#: aleksis/core/forms.py:80
+#: forms.py:80
 msgid "Address"
 msgstr ""
 
-#: aleksis/core/forms.py:81
+#: forms.py:81
 #, fuzzy
 #| msgid "Contact details"
 msgid "Contact data"
 msgstr "Détails de contact"
 
-#: aleksis/core/forms.py:83
+#: forms.py:83
+#, fuzzy
+#| msgid "Contact details"
 msgid "Advanced personal data"
-msgstr ""
+msgstr "Détails de contact"
 
-#: aleksis/core/forms.py:116
+#: forms.py:116
 msgid "New user"
 msgstr ""
 
-#: aleksis/core/forms.py:116
+#: forms.py:116
 msgid "Create a new account"
 msgstr ""
 
-#: aleksis/core/forms.py:128
+#: forms.py:128
+#, fuzzy
+#| msgid "Contact details"
 msgid "Common data"
-msgstr ""
+msgstr "Détails de contact"
 
-#: aleksis/core/forms.py:129 aleksis/core/forms.py:169
-#: aleksis/core/menus.py:141 aleksis/core/models.py:53
-#: aleksis/core/templates/core/persons.html:8
-#: aleksis/core/templates/core/persons.html:9
+#: forms.py:129 forms.py:169 menus.py:141 models.py:53
+#: templates/core/persons.html:8 templates/core/persons.html:9
+#, fuzzy
+#| msgid "Person"
 msgid "Persons"
-msgstr ""
+msgstr "Personne"
 
-#: aleksis/core/forms.py:162 aleksis/core/forms.py:165
-#: aleksis/core/models.py:31
+#: forms.py:162 forms.py:165 models.py:31
 msgid "Date"
 msgstr "Date"
 
-#: aleksis/core/forms.py:163 aleksis/core/forms.py:166
-#: aleksis/core/models.py:39
+#: forms.py:163 forms.py:166 models.py:39
 msgid "Time"
 msgstr ""
 
-#: aleksis/core/forms.py:171 aleksis/core/menus.py:149
-#: aleksis/core/models.py:248 aleksis/core/templates/core/groups.html:8
-#: aleksis/core/templates/core/groups.html:9
-#: aleksis/core/templates/core/person_full.html:106
+#: forms.py:171 menus.py:149 models.py:248 templates/core/groups.html:8
+#: templates/core/groups.html:9 templates/core/person_full.html:106
+#, fuzzy
+#| msgid "Group"
 msgid "Groups"
-msgstr ""
+msgstr "Groupe"
 
-#: aleksis/core/forms.py:175
+#: forms.py:175
 msgid "From when until when should the announcement be displayed?"
 msgstr ""
 
-#: aleksis/core/forms.py:178
+#: forms.py:178
 msgid "Who should see the announcement?"
 msgstr ""
 
-#: aleksis/core/forms.py:179
+#: forms.py:179
 msgid "Write your announcement:"
 msgstr ""
 
-#: aleksis/core/forms.py:216
+#: forms.py:216
 msgid ""
 "You are not allowed to create announcements which are only valid in the past."
 msgstr ""
 
-#: aleksis/core/forms.py:220
+#: forms.py:220
 msgid "The from date and time must be earlier then the until date and time."
 msgstr ""
 
-#: aleksis/core/forms.py:229
+#: forms.py:229
 msgid "You need at least one recipient."
 msgstr ""
 
-#: aleksis/core/menus.py:7 aleksis/core/templates/two_factor/core/login.html:6
-#: aleksis/core/templates/two_factor/core/login.html:10
-#: aleksis/core/templates/two_factor/core/login.html:73
+#: menus.py:7 templates/two_factor/core/login.html:6
+#: templates/two_factor/core/login.html:10
+#: templates/two_factor/core/login.html:73
 msgid "Login"
 msgstr ""
 
-#: aleksis/core/menus.py:13
+#: menus.py:13
 msgid "Dashboard"
 msgstr ""
 
-#: aleksis/core/menus.py:19
+#: menus.py:19
 msgid "Account"
 msgstr ""
 
-#: aleksis/core/menus.py:26
+#: menus.py:26
 msgid "Stop impersonation"
 msgstr ""
 
-#: aleksis/core/menus.py:35 aleksis/core/templates/core/base.html:56
+#: menus.py:35 templates/core/base.html:56
 msgid "Logout"
 msgstr ""
 
-#: aleksis/core/menus.py:41
+#: menus.py:41
 msgid "2FA"
 msgstr ""
 
-#: aleksis/core/menus.py:47
+#: menus.py:47
 msgid "Me"
 msgstr ""
 
-#: aleksis/core/menus.py:56
-#: aleksis/core/templates/dynamic_preferences/form.html:5
+#: menus.py:56 templates/dynamic_preferences/form.html:5
 msgid "Preferences"
 msgstr ""
 
-#: aleksis/core/menus.py:67
+#: menus.py:67
 msgid "Admin"
 msgstr ""
 
-#: aleksis/core/menus.py:75 aleksis/core/models.py:479
-#: aleksis/core/templates/core/announcement/list.html:7
-#: aleksis/core/templates/core/announcement/list.html:8
+#: menus.py:75 models.py:479 templates/core/announcement/list.html:7
+#: templates/core/announcement/list.html:8
 msgid "Announcements"
 msgstr ""
 
-#: aleksis/core/menus.py:86 aleksis/core/templates/core/data_management.html:6
-#: aleksis/core/templates/core/data_management.html:7
+#: menus.py:86 templates/core/data_management.html:6
+#: templates/core/data_management.html:7
 msgid "Data management"
 msgstr ""
 
-#: aleksis/core/menus.py:94 aleksis/core/templates/core/system_status.html:5
-#: aleksis/core/templates/core/system_status.html:7
+#: menus.py:94 templates/core/system_status.html:5
+#: templates/core/system_status.html:7
 msgid "System status"
 msgstr ""
 
-#: aleksis/core/menus.py:105
+#: menus.py:105
 msgid "Impersonation"
 msgstr ""
 
-#: aleksis/core/menus.py:113
+#: menus.py:113
 msgid "Configuration"
 msgstr ""
 
-#: aleksis/core/menus.py:124
+#: menus.py:124
 msgid "Backend Admin"
 msgstr ""
 
-#: aleksis/core/menus.py:132
+#: menus.py:132
 msgid "People"
 msgstr ""
 
-#: aleksis/core/menus.py:157
+#: menus.py:157
 msgid "Persons and accounts"
 msgstr ""
 
-#: aleksis/core/menus.py:168
+#: menus.py:168
 msgid "Groups and child groups"
 msgstr ""
 
-#: aleksis/core/menus.py:183
-#: aleksis/core/templates/core/groups_child_groups.html:7
-#: aleksis/core/templates/core/groups_child_groups.html:9
+#: menus.py:183 templates/core/groups_child_groups.html:7
+#: templates/core/groups_child_groups.html:9
 msgid "Assign child groups to groups"
 msgstr ""
 
-#: aleksis/core/models.py:29
+#: models.py:29
 msgid "Boolean (Yes/No)"
 msgstr ""
 
-#: aleksis/core/models.py:30
+#: models.py:30
 msgid "Text (one line)"
 msgstr ""
 
-#: aleksis/core/models.py:32
+#: models.py:32
 msgid "Date and time"
 msgstr ""
 
-#: aleksis/core/models.py:33
+#: models.py:33
 msgid "Decimal number"
 msgstr ""
 
-#: aleksis/core/models.py:34 aleksis/core/models.py:94
+#: models.py:34 models.py:94
 msgid "E-mail address"
 msgstr ""
 
-#: aleksis/core/models.py:35
+#: models.py:35
 msgid "Integer"
 msgstr ""
 
-#: aleksis/core/models.py:36
+#: models.py:36
 msgid "IP address"
 msgstr ""
 
-#: aleksis/core/models.py:37
+#: models.py:37
 msgid "Boolean or empty (Yes/No/Neither)"
 msgstr ""
 
-#: aleksis/core/models.py:38
+#: models.py:38
 msgid "Text (multi-line)"
 msgstr ""
 
-#: aleksis/core/models.py:40
+#: models.py:40
 msgid "URL / Link"
 msgstr ""
 
-#: aleksis/core/models.py:52
-#: aleksis/core/templates/core/persons_accounts.html:36
+#: models.py:52 templates/core/persons_accounts.html:36
 msgid "Person"
 msgstr "Personne"
 
-#: aleksis/core/models.py:55
+#: models.py:55
+#, fuzzy
+#| msgid "Contact details"
 msgid "Can view address"
-msgstr ""
+msgstr "Détails de contact"
 
-#: aleksis/core/models.py:56
+#: models.py:56
 #, fuzzy
 #| msgid "Contact details"
 msgid "Can view contact details"
 msgstr "Détails de contact"
 
-#: aleksis/core/models.py:57
+#: models.py:57
+#, fuzzy
+#| msgid "Contact details"
 msgid "Can view photo"
-msgstr ""
+msgstr "Détails de contact"
 
-#: aleksis/core/models.py:58
+#: models.py:58
+#, fuzzy
+#| msgid "Contact details"
 msgid "Can view persons groups"
-msgstr ""
+msgstr "Détails de contact"
 
-#: aleksis/core/models.py:59
+#: models.py:59
 #, fuzzy
 #| msgid "Contact details"
 msgid "Can view personal details"
 msgstr "Détails de contact"
 
-#: aleksis/core/models.py:64
+#: models.py:64
 msgid "female"
 msgstr ""
 
-#: aleksis/core/models.py:64
+#: models.py:64
 msgid "male"
 msgstr ""
 
-#: aleksis/core/models.py:72
+#: models.py:72
 msgid "Linked user"
 msgstr ""
 
-#: aleksis/core/models.py:74
+#: models.py:74
 msgid "Is person active?"
 msgstr ""
 
-#: aleksis/core/models.py:76
+#: models.py:76
 msgid "First name"
 msgstr "Prénom"
 
-#: aleksis/core/models.py:77
+#: models.py:77
 msgid "Last name"
 msgstr "Nom de famille"
 
-#: aleksis/core/models.py:79
+#: models.py:79
 msgid "Additional name(s)"
 msgstr ""
 
-#: aleksis/core/models.py:83 aleksis/core/models.py:255
+#: models.py:83 models.py:255
+#, fuzzy
+#| msgid "First name"
 msgid "Short name"
-msgstr ""
+msgstr "Prénom"
 
-#: aleksis/core/models.py:86
+#: models.py:86
 msgid "Street"
 msgstr ""
 
-#: aleksis/core/models.py:87
+#: models.py:87
 msgid "Street number"
 msgstr ""
 
-#: aleksis/core/models.py:88
+#: models.py:88
 msgid "Postal code"
 msgstr ""
 
-#: aleksis/core/models.py:89
+#: models.py:89
 msgid "Place"
 msgstr ""
 
-#: aleksis/core/models.py:91
+#: models.py:91
 msgid "Home phone"
 msgstr ""
 
-#: aleksis/core/models.py:92
+#: models.py:92
 msgid "Mobile phone"
 msgstr ""
 
-#: aleksis/core/models.py:96
+#: models.py:96
 msgid "Date of birth"
 msgstr "Date d'anniversaire"
 
-#: aleksis/core/models.py:97
+#: models.py:97
 msgid "Sex"
 msgstr "Sexe"
 
-#: aleksis/core/models.py:99
+#: models.py:99
 msgid "Photo"
 msgstr ""
 
-#: aleksis/core/models.py:104
+#: models.py:104
 msgid "Guardians / Parents"
 msgstr ""
 
-#: aleksis/core/models.py:111
+#: models.py:111
 msgid "Primary group"
 msgstr ""
 
-#: aleksis/core/models.py:114 aleksis/core/models.py:341
-#: aleksis/core/models.py:365 aleksis/core/models.py:448
-#: aleksis/core/models.py:634
+#: models.py:114 models.py:341 models.py:365 models.py:448 models.py:634
 msgid "Description"
 msgstr "Description"
 
-#: aleksis/core/models.py:229
+#: models.py:229
 msgid "Title of field"
 msgstr ""
 
-#: aleksis/core/models.py:231
+#: models.py:231
 msgid "Type of field"
 msgstr ""
 
-#: aleksis/core/models.py:235
+#: models.py:235
 msgid "Addtitional field for groups"
 msgstr ""
 
-#: aleksis/core/models.py:236
+#: models.py:236
 msgid "Addtitional fields for groups"
 msgstr ""
 
-#: aleksis/core/models.py:247
+#: models.py:247
 msgid "Group"
 msgstr "Groupe"
 
-#: aleksis/core/models.py:249
+#: models.py:249
 msgid "Can assign child groups to groups"
 msgstr ""
 
-#: aleksis/core/models.py:253
+#: models.py:253
 #, fuzzy
 #| msgid "Last name"
 msgid "Long name"
 msgstr "Nom de famille"
 
-#: aleksis/core/models.py:263 aleksis/core/templates/core/group_full.html:37
+#: models.py:263 templates/core/group_full.html:37
 msgid "Members"
 msgstr ""
 
-#: aleksis/core/models.py:266 aleksis/core/templates/core/group_full.html:34
+#: models.py:266 templates/core/group_full.html:34
 msgid "Owners"
 msgstr "Propriétaires"
 
-#: aleksis/core/models.py:273
+#: models.py:273
 msgid "Parent groups"
 msgstr ""
 
-#: aleksis/core/models.py:281
+#: models.py:281
 msgid "Type of group"
 msgstr ""
 
-#: aleksis/core/models.py:285
+#: models.py:285
 msgid "Additional fields"
 msgstr ""
 
-#: aleksis/core/models.py:337
+#: models.py:337
 msgid "User"
 msgstr ""
 
-#: aleksis/core/models.py:340 aleksis/core/models.py:364
-#: aleksis/core/models.py:447
-#: aleksis/core/templates/core/announcement/list.html:18
+#: models.py:340 models.py:364 models.py:447
+#: templates/core/announcement/list.html:18
 msgid "Title"
 msgstr ""
 
-#: aleksis/core/models.py:343
+#: models.py:343
 msgid "Application"
 msgstr ""
 
-#: aleksis/core/models.py:349
+#: models.py:349
 msgid "Activity"
 msgstr ""
 
-#: aleksis/core/models.py:350
+#: models.py:350
 msgid "Activities"
 msgstr ""
 
-#: aleksis/core/models.py:356
+#: models.py:356
 msgid "Sender"
 msgstr ""
 
-#: aleksis/core/models.py:361
+#: models.py:361
 msgid "Recipient"
 msgstr ""
 
-#: aleksis/core/models.py:366 aleksis/core/models.py:614
+#: models.py:366 models.py:614
 msgid "Link"
 msgstr ""
 
-#: aleksis/core/models.py:368
+#: models.py:368
 msgid "Read"
 msgstr ""
 
-#: aleksis/core/models.py:369
+#: models.py:369
 msgid "Sent"
 msgstr ""
 
-#: aleksis/core/models.py:382
+#: models.py:382
 msgid "Notification"
 msgstr ""
 
-#: aleksis/core/models.py:383
+#: models.py:383
 msgid "Notifications"
 msgstr ""
 
-#: aleksis/core/models.py:449
+#: models.py:449
 msgid "Link to detailed view"
 msgstr ""
 
-#: aleksis/core/models.py:452
+#: models.py:452
 msgid "Date and time from when to show"
 msgstr ""
 
-#: aleksis/core/models.py:455
+#: models.py:455
 msgid "Date and time until when to show"
 msgstr ""
 
-#: aleksis/core/models.py:478
+#: models.py:478
 msgid "Announcement"
 msgstr ""
 
-#: aleksis/core/models.py:515
+#: models.py:515
 msgid "Announcement recipient"
 msgstr ""
 
-#: aleksis/core/models.py:516
+#: models.py:516
 msgid "Announcement recipients"
 msgstr ""
 
-#: aleksis/core/models.py:566
+#: models.py:566
 msgid "Widget Title"
 msgstr ""
 
-#: aleksis/core/models.py:567
+#: models.py:567
 msgid "Activate Widget"
 msgstr ""
 
-#: aleksis/core/models.py:584
+#: models.py:584
 msgid "Dashboard Widget"
 msgstr ""
 
-#: aleksis/core/models.py:585
+#: models.py:585
 msgid "Dashboard Widgets"
 msgstr ""
 
-#: aleksis/core/models.py:591
+#: models.py:591
 msgid "Menu ID"
 msgstr ""
 
-#: aleksis/core/models.py:603
+#: models.py:603
 msgid "Custom menu"
 msgstr ""
 
-#: aleksis/core/models.py:604
+#: models.py:604
 msgid "Custom menus"
 msgstr ""
 
-#: aleksis/core/models.py:611
+#: models.py:611
 msgid "Menu"
 msgstr ""
 
-#: aleksis/core/models.py:613
+#: models.py:613
 msgid "Name"
 msgstr ""
 
-#: aleksis/core/models.py:616
+#: models.py:616
 msgid "Icon"
 msgstr ""
 
-#: aleksis/core/models.py:623
+#: models.py:623
 msgid "Custom menu item"
 msgstr ""
 
-#: aleksis/core/models.py:624
+#: models.py:624
 msgid "Custom menu items"
 msgstr ""
 
-#: aleksis/core/models.py:633
+#: models.py:633
 msgid "Title of type"
 msgstr ""
 
-#: aleksis/core/models.py:637
+#: models.py:637
 #, fuzzy
 #| msgid "Group"
 msgid "Group type"
 msgstr "Groupe"
 
-#: aleksis/core/models.py:638
+#: models.py:638
 #, fuzzy
 #| msgid "Group"
 msgid "Group types"
 msgstr "Groupe"
 
-#: aleksis/core/models.py:647
+#: models.py:647
+#, fuzzy
+#| msgid "Contact details"
 msgid "Can view system status"
-msgstr ""
+msgstr "Détails de contact"
 
-#: aleksis/core/models.py:648
+#: models.py:648
+#, fuzzy
+#| msgid "Contact details"
 msgid "Can link persons to accounts"
-msgstr ""
+msgstr "Détails de contact"
 
-#: aleksis/core/models.py:649
+#: models.py:649
 msgid "Can manage data"
 msgstr ""
 
-#: aleksis/core/models.py:650
+#: models.py:650
+#, fuzzy
+#| msgid "Contact details"
 msgid "Can impersonate"
-msgstr ""
+msgstr "Détails de contact"
 
-#: aleksis/core/models.py:651
+#: models.py:651
 msgid "Can use search"
 msgstr ""
 
-#: aleksis/core/models.py:652
+#: models.py:652
 msgid "Can change site preferences"
 msgstr ""
 
-#: aleksis/core/models.py:653
+#: models.py:653
 msgid "Can change person preferences"
 msgstr ""
 
-#: aleksis/core/models.py:654
+#: models.py:654
 msgid "Can change group preferences"
 msgstr ""
 
-#: aleksis/core/preferences.py:33
+#: preferences.py:26
 msgid "Site title"
 msgstr ""
 
-#: aleksis/core/preferences.py:42
+#: preferences.py:35
+#, fuzzy
+#| msgid "Description"
 msgid "Site description"
-msgstr ""
+msgstr "Description"
 
-#: aleksis/core/preferences.py:51
+#: preferences.py:44
 msgid "Primary colour"
 msgstr ""
 
-#: aleksis/core/preferences.py:60
+#: preferences.py:53
 msgid "Secondary colour"
 msgstr ""
 
-#: aleksis/core/preferences.py:68
+#: preferences.py:61
 msgid "Logo"
 msgstr ""
 
-#: aleksis/core/preferences.py:76
+#: preferences.py:69
 msgid "Favicon"
 msgstr ""
 
-#: aleksis/core/preferences.py:84
+#: preferences.py:77
 msgid "PWA-Icon"
 msgstr ""
 
-#: aleksis/core/preferences.py:93
+#: preferences.py:86
+#, fuzzy
+#| msgid "Last name"
 msgid "Mail out name"
-msgstr ""
+msgstr "Nom de famille"
 
-#: aleksis/core/preferences.py:102
+#: preferences.py:95
 msgid "Mail out address"
 msgstr ""
 
-#: aleksis/core/preferences.py:112
+#: preferences.py:105
 msgid "Link to privacy policy"
 msgstr ""
 
-#: aleksis/core/preferences.py:122
+#: preferences.py:115
 msgid "Link to imprint"
 msgstr ""
 
-#: aleksis/core/preferences.py:132
+#: preferences.py:125
 msgid "Name format for addressing"
 msgstr ""
 
-#: aleksis/core/preferences.py:148
+#: preferences.py:141
 msgid "Channels to use for notifications"
 msgstr ""
 
-#: aleksis/core/preferences.py:158
+#: preferences.py:151
 msgid "Regular expression to match primary group, e.g. '^Class .*'"
 msgstr ""
 
-#: aleksis/core/preferences.py:167
+#: preferences.py:160
 msgid "Display name of the school"
 msgstr ""
 
-#: aleksis/core/preferences.py:176
+#: preferences.py:169
 msgid "Official name of the school, e.g. as given by supervisory authority"
 msgstr ""
 
-#: aleksis/core/settings.py:276
-msgid "German"
+#: settings.py:276
+msgid "English"
 msgstr ""
 
-#: aleksis/core/settings.py:277
-msgid "English"
+#: settings.py:277
+msgid "German"
 msgstr ""
 
-#: aleksis/core/settings.py:278
+#: settings.py:278
 msgid "French"
 msgstr ""
 
-#: aleksis/core/templates/403.html:10 aleksis/core/templates/404.html:10
-#: aleksis/core/templates/500.html:10
+#: templates/403.html:10 templates/404.html:10 templates/500.html:10
 msgid "Error"
 msgstr ""
 
-#: aleksis/core/templates/403.html:10
+#: templates/403.html:10
 msgid ""
 "You are not allowed to access the requested page or\n"
 "          object."
 msgstr ""
 
-#: aleksis/core/templates/403.html:13 aleksis/core/templates/404.html:17
+#: templates/403.html:13 templates/404.html:17
 msgid ""
 "\n"
 "            If you think this is an error in AlekSIS, please contact your "
@@ -658,13 +670,13 @@ msgid ""
 "          "
 msgstr ""
 
-#: aleksis/core/templates/404.html:10
+#: templates/404.html:10
 msgid ""
 "The requested page or object was not\n"
 "          found."
 msgstr ""
 
-#: aleksis/core/templates/404.html:13
+#: templates/404.html:13
 msgid ""
 "\n"
 "            If you were redirected by a link on an external page,\n"
@@ -672,13 +684,13 @@ msgid ""
 "          "
 msgstr ""
 
-#: aleksis/core/templates/500.html:10
+#: templates/500.html:10
 msgid ""
 "An unexpected error has\n"
 "          occured."
 msgstr ""
 
-#: aleksis/core/templates/500.html:13
+#: templates/500.html:13
 msgid ""
 "\n"
 "            Your site administrators will automatically be notified about "
@@ -687,13 +699,13 @@ msgid ""
 "          "
 msgstr ""
 
-#: aleksis/core/templates/503.html:10
+#: templates/503.html:10
 msgid ""
 "The maintenance mode is currently enabled. Please try again\n"
 "          later."
 msgstr ""
 
-#: aleksis/core/templates/503.html:13
+#: templates/503.html:13
 msgid ""
 "\n"
 "            This page is currently unavailable. If this error persists, "
@@ -701,16 +713,15 @@ msgid ""
 "          "
 msgstr ""
 
-#: aleksis/core/templates/core/about.html:6
-#: aleksis/core/templates/core/about.html:15
+#: templates/core/about.html:6 templates/core/about.html:15
 msgid "About AlekSIS"
 msgstr ""
 
-#: aleksis/core/templates/core/about.html:7
+#: templates/core/about.html:7
 msgid "AlekSIS – The Free School Information System"
 msgstr ""
 
-#: aleksis/core/templates/core/about.html:17
+#: templates/core/about.html:17
 msgid ""
 "\n"
 "              This platform is powered by AlekSIS, a web-based school "
@@ -721,19 +732,19 @@ msgid ""
 "            "
 msgstr ""
 
-#: aleksis/core/templates/core/about.html:25
+#: templates/core/about.html:25
 msgid "Website of AlekSIS"
 msgstr ""
 
-#: aleksis/core/templates/core/about.html:26
+#: templates/core/about.html:26
 msgid "Source code"
 msgstr ""
 
-#: aleksis/core/templates/core/about.html:35
+#: templates/core/about.html:35
 msgid "Licence information"
 msgstr ""
 
-#: aleksis/core/templates/core/about.html:37
+#: templates/core/about.html:37
 msgid ""
 "\n"
 "              The core and the official apps of AlekSIS are licenced under "
@@ -744,23 +755,23 @@ msgid ""
 "            "
 msgstr ""
 
-#: aleksis/core/templates/core/about.html:45
+#: templates/core/about.html:45
 msgid "Free/Open Source Licence"
 msgstr ""
 
-#: aleksis/core/templates/core/about.html:46
+#: templates/core/about.html:46
 msgid "Other Licence"
 msgstr ""
 
-#: aleksis/core/templates/core/about.html:50
+#: templates/core/about.html:50
 msgid "Full licence text"
 msgstr ""
 
-#: aleksis/core/templates/core/about.html:51
+#: templates/core/about.html:51
 msgid "More information about the EUPL"
 msgstr ""
 
-#: aleksis/core/templates/core/about.html:90
+#: templates/core/about.html:90
 #, python-format
 msgid ""
 "\n"
@@ -768,56 +779,54 @@ msgid ""
 "                  "
 msgstr ""
 
-#: aleksis/core/templates/core/announcement/form.html:10
-#: aleksis/core/templates/core/announcement/form.html:17
+#: templates/core/announcement/form.html:10
+#: templates/core/announcement/form.html:17
 msgid "Edit announcement"
 msgstr ""
 
-#: aleksis/core/templates/core/announcement/form.html:12
+#: templates/core/announcement/form.html:12
 msgid "Publish announcement"
 msgstr ""
 
-#: aleksis/core/templates/core/announcement/form.html:19
-#: aleksis/core/templates/core/announcement/list.html:13
+#: templates/core/announcement/form.html:19
+#: templates/core/announcement/list.html:13
 msgid "Publish new announcement"
 msgstr ""
 
-#: aleksis/core/templates/core/announcement/form.html:30
+#: templates/core/announcement/form.html:30
 msgid "Save und publish announcement"
 msgstr ""
 
-#: aleksis/core/templates/core/announcement/list.html:19
+#: templates/core/announcement/list.html:19
 msgid "Valid from"
 msgstr ""
 
-#: aleksis/core/templates/core/announcement/list.html:20
+#: templates/core/announcement/list.html:20
 msgid "Valid until"
 msgstr ""
 
-#: aleksis/core/templates/core/announcement/list.html:21
+#: templates/core/announcement/list.html:21
 msgid "Recipients"
 msgstr ""
 
-#: aleksis/core/templates/core/announcement/list.html:22
+#: templates/core/announcement/list.html:22
 msgid "Actions"
 msgstr ""
 
-#: aleksis/core/templates/core/announcement/list.html:36
-#: aleksis/core/templates/core/group_full.html:22
-#: aleksis/core/templates/core/person_full.html:21
+#: templates/core/announcement/list.html:36 templates/core/group_full.html:22
+#: templates/core/person_full.html:21
 msgid "Edit"
 msgstr ""
 
-#: aleksis/core/templates/core/announcement/list.html:42
+#: templates/core/announcement/list.html:42
 msgid "Delete"
 msgstr ""
 
-#: aleksis/core/templates/core/announcement/list.html:50
+#: templates/core/announcement/list.html:50
 msgid "There are no announcements."
 msgstr ""
 
-#: aleksis/core/templates/core/announcements.html:9
-#: aleksis/core/templates/core/announcements.html:36
+#: templates/core/announcements.html:9 templates/core/announcements.html:36
 #, python-format
 msgid ""
 "\n"
@@ -825,7 +834,7 @@ msgid ""
 "            "
 msgstr ""
 
-#: aleksis/core/templates/core/announcements.html:13
+#: templates/core/announcements.html:13
 #, python-format
 msgid ""
 "\n"
@@ -833,7 +842,7 @@ msgid ""
 "            "
 msgstr ""
 
-#: aleksis/core/templates/core/announcements.html:40
+#: templates/core/announcements.html:40
 #, python-format
 msgid ""
 "\n"
@@ -841,52 +850,48 @@ msgid ""
 "            "
 msgstr ""
 
-#: aleksis/core/templates/core/base.html:54
+#: templates/core/base.html:54
 msgid "Logged in as"
 msgstr ""
 
-#: aleksis/core/templates/core/base.html:76
-#: aleksis/core/templates/search/search.html:7
-#: aleksis/core/templates/search/search.html:22
+#: templates/core/base.html:76 templates/search/search.html:7
+#: templates/search/search.html:22
 msgid "Search"
 msgstr ""
 
-#: aleksis/core/templates/core/base.html:148
+#: templates/core/base.html:148
 msgid "About AlekSIS — The Free School Information System"
 msgstr ""
 
-#: aleksis/core/templates/core/base.html:156
+#: templates/core/base.html:156
 msgid "Impress"
 msgstr ""
 
-#: aleksis/core/templates/core/base.html:164
+#: templates/core/base.html:164
 msgid "Privacy Policy"
 msgstr ""
 
-#: aleksis/core/templates/core/base_print.html:62
+#: templates/core/base_print.html:62
 msgid "Powered by AlekSIS"
 msgstr ""
 
-#: aleksis/core/templates/core/edit_group.html:6
-#: aleksis/core/templates/core/edit_group.html:7
+#: templates/core/edit_group.html:6 templates/core/edit_group.html:7
 msgid "Edit group"
 msgstr ""
 
-#: aleksis/core/templates/core/edit_person.html:8
-#: aleksis/core/templates/core/edit_person.html:9
+#: templates/core/edit_person.html:8 templates/core/edit_person.html:9
 msgid "Edit person"
 msgstr ""
 
-#: aleksis/core/templates/core/group_full.html:28
-#: aleksis/core/templates/core/person_full.html:28
+#: templates/core/group_full.html:28 templates/core/person_full.html:28
 msgid "Change preferences"
 msgstr ""
 
-#: aleksis/core/templates/core/groups.html:14
+#: templates/core/groups.html:14
 msgid "Create group"
 msgstr ""
 
-#: aleksis/core/templates/core/groups_child_groups.html:18
+#: templates/core/groups_child_groups.html:18
 msgid ""
 "\n"
 "          You can use this to assign child groups to groups. Please use the "
@@ -895,38 +900,38 @@ msgid ""
 "        "
 msgstr ""
 
-#: aleksis/core/templates/core/groups_child_groups.html:31
+#: templates/core/groups_child_groups.html:31
 msgid "Update selection"
 msgstr ""
 
-#: aleksis/core/templates/core/groups_child_groups.html:35
+#: templates/core/groups_child_groups.html:35
 msgid "Clear all filters"
 msgstr ""
 
-#: aleksis/core/templates/core/groups_child_groups.html:39
+#: templates/core/groups_child_groups.html:39
 msgid "Currently selected groups"
 msgstr ""
 
-#: aleksis/core/templates/core/groups_child_groups.html:52
+#: templates/core/groups_child_groups.html:52
 msgid "Start assigning child groups for this groups"
 msgstr ""
 
-#: aleksis/core/templates/core/groups_child_groups.html:61
+#: templates/core/groups_child_groups.html:61
 msgid ""
 "\n"
 "            Please select some groups in order to go on with assigning.\n"
 "          "
 msgstr ""
 
-#: aleksis/core/templates/core/groups_child_groups.html:72
+#: templates/core/groups_child_groups.html:72
 msgid "Current group:"
 msgstr ""
 
-#: aleksis/core/templates/core/groups_child_groups.html:78
+#: templates/core/groups_child_groups.html:78
 msgid "Please be careful!"
 msgstr ""
 
-#: aleksis/core/templates/core/groups_child_groups.html:79
+#: templates/core/groups_child_groups.html:79
 msgid ""
 "\n"
 "            If you click \"Back\" or \"Next\" the current group assignments "
@@ -937,55 +942,55 @@ msgid ""
 "          "
 msgstr ""
 
-#: aleksis/core/templates/core/groups_child_groups.html:93
-#: aleksis/core/templates/core/groups_child_groups.html:128
-#: aleksis/core/templates/two_factor/_wizard_actions.html:15
-#: aleksis/core/templates/two_factor/_wizard_actions.html:20
+#: templates/core/groups_child_groups.html:93
+#: templates/core/groups_child_groups.html:128
+#: templates/two_factor/_wizard_actions.html:15
+#: templates/two_factor/_wizard_actions.html:20
 msgid "Back"
 msgstr ""
 
-#: aleksis/core/templates/core/groups_child_groups.html:99
-#: aleksis/core/templates/core/groups_child_groups.html:134
-#: aleksis/core/templates/two_factor/_wizard_actions.html:26
+#: templates/core/groups_child_groups.html:99
+#: templates/core/groups_child_groups.html:134
+#: templates/two_factor/_wizard_actions.html:26
 msgid "Next"
 msgstr ""
 
-#: aleksis/core/templates/core/groups_child_groups.html:106
-#: aleksis/core/templates/core/groups_child_groups.html:141
-#: aleksis/core/templates/core/save_button.html:3
+#: templates/core/groups_child_groups.html:106
+#: templates/core/groups_child_groups.html:141
+#: templates/core/save_button.html:3
 msgid "Save"
 msgstr ""
 
-#: aleksis/core/templates/core/groups_child_groups.html:112
-#: aleksis/core/templates/core/groups_child_groups.html:147
+#: templates/core/groups_child_groups.html:112
+#: templates/core/groups_child_groups.html:147
 msgid "Save and next"
 msgstr ""
 
-#: aleksis/core/templates/core/index.html:4
+#: templates/core/index.html:4
 msgid "Home"
 msgstr ""
 
-#: aleksis/core/templates/core/index.html:42
+#: templates/core/index.html:42
 msgid "Last activities"
 msgstr ""
 
-#: aleksis/core/templates/core/index.html:60
+#: templates/core/index.html:60
 msgid "No activities available yet."
 msgstr ""
 
-#: aleksis/core/templates/core/index.html:65
+#: templates/core/index.html:65
 msgid "Recent notifications"
 msgstr ""
 
-#: aleksis/core/templates/core/index.html:81
+#: templates/core/index.html:81
 msgid "More information →"
 msgstr ""
 
-#: aleksis/core/templates/core/index.html:88
+#: templates/core/index.html:88
 msgid "No notifications available yet."
 msgstr ""
 
-#: aleksis/core/templates/core/no_person.html:12
+#: templates/core/no_person.html:12
 msgid ""
 "\n"
 "            Your administrator account is not linked to any person. "
@@ -994,7 +999,7 @@ msgid ""
 "          "
 msgstr ""
 
-#: aleksis/core/templates/core/no_person.html:19
+#: templates/core/no_person.html:19
 msgid ""
 "\n"
 "            Your user account is not linked to a person. This means you\n"
@@ -1003,16 +1008,16 @@ msgid ""
 "          "
 msgstr ""
 
-#: aleksis/core/templates/core/person_full.html:34
+#: templates/core/person_full.html:34
 msgid "Contact details"
 msgstr "Détails de contact"
 
-#: aleksis/core/templates/core/persons_accounts.html:7
-#: aleksis/core/templates/core/persons_accounts.html:9
+#: templates/core/persons_accounts.html:7
+#: templates/core/persons_accounts.html:9
 msgid "Link persons to accounts"
 msgstr ""
 
-#: aleksis/core/templates/core/persons_accounts.html:16
+#: templates/core/persons_accounts.html:16
 msgid ""
 "\n"
 "        You can use this form to assign user accounts to persons. Use the\n"
@@ -1023,28 +1028,28 @@ msgid ""
 "      "
 msgstr ""
 
-#: aleksis/core/templates/core/persons_accounts.html:31
-#: aleksis/core/templates/core/persons_accounts.html:55
+#: templates/core/persons_accounts.html:31
+#: templates/core/persons_accounts.html:55
 msgid "Update"
 msgstr ""
 
-#: aleksis/core/templates/core/persons_accounts.html:37
+#: templates/core/persons_accounts.html:37
 msgid "Existing account"
 msgstr ""
 
-#: aleksis/core/templates/core/persons_accounts.html:38
+#: templates/core/persons_accounts.html:38
 msgid "New account"
 msgstr ""
 
-#: aleksis/core/templates/core/system_status.html:12
+#: templates/core/system_status.html:12
 msgid "System checks"
 msgstr ""
 
-#: aleksis/core/templates/core/system_status.html:21
+#: templates/core/system_status.html:21
 msgid "Maintenance mode enabled"
 msgstr ""
 
-#: aleksis/core/templates/core/system_status.html:23
+#: templates/core/system_status.html:23
 msgid ""
 "\n"
 "                Only admin and visitors from internal IPs can access "
@@ -1052,19 +1057,19 @@ msgid ""
 "              "
 msgstr ""
 
-#: aleksis/core/templates/core/system_status.html:34
+#: templates/core/system_status.html:34
 msgid "Maintenance mode disabled"
 msgstr ""
 
-#: aleksis/core/templates/core/system_status.html:35
+#: templates/core/system_status.html:35
 msgid "Everyone can access the site."
 msgstr ""
 
-#: aleksis/core/templates/core/system_status.html:45
+#: templates/core/system_status.html:45
 msgid "Debug mode enabled"
 msgstr ""
 
-#: aleksis/core/templates/core/system_status.html:47
+#: templates/core/system_status.html:47
 msgid ""
 "\n"
 "                The web server throws back debug information on errors. Do "
@@ -1072,11 +1077,11 @@ msgid ""
 "              "
 msgstr ""
 
-#: aleksis/core/templates/core/system_status.html:54
+#: templates/core/system_status.html:54
 msgid "Debug mode disabled"
 msgstr ""
 
-#: aleksis/core/templates/core/system_status.html:56
+#: templates/core/system_status.html:56
 msgid ""
 "\n"
 "                Debug mode is disabled. Default error pages are displayed on "
@@ -1084,38 +1089,38 @@ msgid ""
 "              "
 msgstr ""
 
-#: aleksis/core/templates/dynamic_preferences/form.html:9
+#: templates/dynamic_preferences/form.html:9
 msgid "Site preferences"
 msgstr ""
 
-#: aleksis/core/templates/dynamic_preferences/form.html:11
+#: templates/dynamic_preferences/form.html:11
 msgid "My preferences"
 msgstr ""
 
-#: aleksis/core/templates/dynamic_preferences/form.html:13
+#: templates/dynamic_preferences/form.html:13
 #, python-format
 msgid "Preferences for %(instance)s"
 msgstr ""
 
-#: aleksis/core/templates/dynamic_preferences/form.html:25
+#: templates/dynamic_preferences/form.html:25
 msgid "Save preferences"
 msgstr ""
 
-#: aleksis/core/templates/dynamic_preferences/sections.html:7
+#: templates/dynamic_preferences/sections.html:7
 msgid "All"
 msgstr ""
 
-#: aleksis/core/templates/impersonate/list_users.html:8
+#: templates/impersonate/list_users.html:8
 msgid "Impersonate user"
 msgstr ""
 
-#: aleksis/core/templates/offline.html:6
+#: templates/offline.html:6
 msgid ""
 "No internet\n"
 "    connection."
 msgstr ""
 
-#: aleksis/core/templates/offline.html:10
+#: templates/offline.html:10
 msgid ""
 "\n"
 "      There was an error accessing this page. You probably don't have an "
@@ -1126,44 +1131,70 @@ msgid ""
 "    "
 msgstr ""
 
-#: aleksis/core/templates/search/search.html:8
+#: templates/search/search.html:8
 msgid "Global Search"
 msgstr ""
 
-#: aleksis/core/templates/search/search.html:15
+#: templates/search/search.html:15
 msgid "Search Term"
 msgstr ""
 
-#: aleksis/core/templates/search/search.html:26
+#: templates/search/search.html:26
 msgid "Results"
 msgstr ""
 
-#: aleksis/core/templates/search/search.html:38
+#: templates/search/search.html:38
 msgid "No search results could be found to your search."
 msgstr ""
 
-#: aleksis/core/templates/search/search.html:87
+#: templates/search/search.html:87
 msgid "Please enter a search term above."
 msgstr ""
 
-#: aleksis/core/templates/two_factor/_base_focus.html:6
-#: aleksis/core/templates/two_factor/core/otp_required.html:22
-#: aleksis/core/templates/two_factor/core/setup.html:5
-#: aleksis/core/templates/two_factor/profile/profile.html:87
+#: templates/templated_email/notification.email:3
+msgid "New notification for"
+msgstr ""
+
+#: templates/templated_email/notification.email:7
+msgid "Dear"
+msgstr ""
+
+#: templates/templated_email/notification.email:8
+msgid "we got a new notification for you:"
+msgstr ""
+
+#: templates/templated_email/notification.email:12
+msgid "More information"
+msgstr ""
+
+#: templates/templated_email/notification.email:16
+#, python-format
+msgid ""
+"\n"
+"    <p>By %(trans_sender)s at %(trans_created_at)s</p>\n"
+"\n"
+"    <i>Your AlekSIS team</i>\n"
+"    "
+msgstr ""
+
+#: templates/two_factor/_base_focus.html:6
+#: templates/two_factor/core/otp_required.html:22
+#: templates/two_factor/core/setup.html:5
+#: templates/two_factor/profile/profile.html:87
 msgid "Enable Two-Factor Authentication"
 msgstr ""
 
-#: aleksis/core/templates/two_factor/_wizard_actions.html:6
+#: templates/two_factor/_wizard_actions.html:6
 msgid "Cancel"
 msgstr ""
 
-#: aleksis/core/templates/two_factor/core/backup_tokens.html:5
-#: aleksis/core/templates/two_factor/core/backup_tokens.html:9
-#: aleksis/core/templates/two_factor/profile/profile.html:46
+#: templates/two_factor/core/backup_tokens.html:5
+#: templates/two_factor/core/backup_tokens.html:9
+#: templates/two_factor/profile/profile.html:46
 msgid "Backup Tokens"
 msgstr ""
 
-#: aleksis/core/templates/two_factor/core/backup_tokens.html:14
+#: templates/two_factor/core/backup_tokens.html:14
 msgid ""
 "\n"
 "        Backup tokens can be used when your primary and backup\n"
@@ -1176,53 +1207,53 @@ msgid ""
 "      "
 msgstr ""
 
-#: aleksis/core/templates/two_factor/core/backup_tokens.html:33
+#: templates/two_factor/core/backup_tokens.html:33
 msgid ""
 "\n"
 "          Print these tokens and keep them somewhere safe.\n"
 "        "
 msgstr ""
 
-#: aleksis/core/templates/two_factor/core/backup_tokens.html:39
+#: templates/two_factor/core/backup_tokens.html:39
 msgid "You don't have any backup codes yet."
 msgstr ""
 
-#: aleksis/core/templates/two_factor/core/backup_tokens.html:45
+#: templates/two_factor/core/backup_tokens.html:45
 msgid "Back to Account Security"
 msgstr ""
 
-#: aleksis/core/templates/two_factor/core/backup_tokens.html:49
+#: templates/two_factor/core/backup_tokens.html:49
 msgid "Generate Tokens"
 msgstr ""
 
-#: aleksis/core/templates/two_factor/core/login.html:16
+#: templates/two_factor/core/login.html:16
 msgid ""
 "You have no permission to view this page. Please login with an other account."
 msgstr ""
 
-#: aleksis/core/templates/two_factor/core/login.html:25
+#: templates/two_factor/core/login.html:25
 msgid "Please login to see this page."
 msgstr ""
 
-#: aleksis/core/templates/two_factor/core/login.html:28
+#: templates/two_factor/core/login.html:28
 msgid ""
 "We are calling your phone right now, please enter the\n"
 "              digits you hear."
 msgstr ""
 
-#: aleksis/core/templates/two_factor/core/login.html:31
+#: templates/two_factor/core/login.html:31
 msgid ""
 "We sent you a text message, please enter the tokens we\n"
 "              sent."
 msgstr ""
 
-#: aleksis/core/templates/two_factor/core/login.html:34
+#: templates/two_factor/core/login.html:34
 msgid ""
 "Please enter the tokens generated by your token\n"
 "              generator."
 msgstr ""
 
-#: aleksis/core/templates/two_factor/core/login.html:38
+#: templates/two_factor/core/login.html:38
 msgid ""
 "Use this form for entering backup tokens for logging in.\n"
 "            These tokens have been generated for you to print and keep safe. "
@@ -1230,23 +1261,23 @@ msgid ""
 "            enter one of these backup tokens to login to your account."
 msgstr ""
 
-#: aleksis/core/templates/two_factor/core/login.html:56
+#: templates/two_factor/core/login.html:56
 msgid "Or, alternatively, use one of your backup phones:"
 msgstr ""
 
-#: aleksis/core/templates/two_factor/core/login.html:66
+#: templates/two_factor/core/login.html:66
 msgid "As a last resort, you can use a backup token:"
 msgstr ""
 
-#: aleksis/core/templates/two_factor/core/login.html:69
+#: templates/two_factor/core/login.html:69
 msgid "Use Backup Token"
 msgstr ""
 
-#: aleksis/core/templates/two_factor/core/otp_required.html:9
+#: templates/two_factor/core/otp_required.html:9
 msgid "Permission Denied"
 msgstr ""
 
-#: aleksis/core/templates/two_factor/core/otp_required.html:10
+#: templates/two_factor/core/otp_required.html:10
 msgid ""
 "The page you requested, enforces users to verify using\n"
 "          two-factor authentication for security reasons. You need to enable "
@@ -1254,36 +1285,36 @@ msgid ""
 "          security features in order to access this page."
 msgstr ""
 
-#: aleksis/core/templates/two_factor/core/otp_required.html:14
+#: templates/two_factor/core/otp_required.html:14
 msgid ""
 "Two-factor authentication is not enabled for your\n"
 "          account. Enable two-factor authentication for enhanced account\n"
 "          security."
 msgstr ""
 
-#: aleksis/core/templates/two_factor/core/otp_required.html:19
+#: templates/two_factor/core/otp_required.html:19
 msgid "Go back"
 msgstr ""
 
-#: aleksis/core/templates/two_factor/core/phone_register.html:5
-#: aleksis/core/templates/two_factor/core/phone_register.html:9
+#: templates/two_factor/core/phone_register.html:5
+#: templates/two_factor/core/phone_register.html:9
 msgid "Add Backup Phone"
 msgstr ""
 
-#: aleksis/core/templates/two_factor/core/phone_register.html:12
+#: templates/two_factor/core/phone_register.html:12
 msgid ""
 "You'll be adding a backup phone number to your\n"
 "      account. This number will be used if your primary method of\n"
 "      registration is not available."
 msgstr ""
 
-#: aleksis/core/templates/two_factor/core/phone_register.html:16
+#: templates/two_factor/core/phone_register.html:16
 msgid ""
 "We've sent a token to your phone number. Please\n"
 "      enter the token you've received."
 msgstr ""
 
-#: aleksis/core/templates/two_factor/core/setup.html:9
+#: templates/two_factor/core/setup.html:9
 msgid ""
 "\n"
 "        You are about to take your account security to the\n"
@@ -1292,14 +1323,14 @@ msgid ""
 "      "
 msgstr ""
 
-#: aleksis/core/templates/two_factor/core/setup.html:17
+#: templates/two_factor/core/setup.html:17
 msgid ""
 "\n"
 "        Please select which authentication method you would like to use:\n"
 "      "
 msgstr ""
 
-#: aleksis/core/templates/two_factor/core/setup.html:23
+#: templates/two_factor/core/setup.html:23
 msgid ""
 "\n"
 "        To start using a token generator, please use your\n"
@@ -1308,7 +1339,7 @@ msgid ""
 "      "
 msgstr ""
 
-#: aleksis/core/templates/two_factor/core/setup.html:34
+#: templates/two_factor/core/setup.html:34
 msgid ""
 "\n"
 "        Please enter the phone number you wish to receive the\n"
@@ -1316,7 +1347,7 @@ msgid ""
 "      "
 msgstr ""
 
-#: aleksis/core/templates/two_factor/core/setup.html:41
+#: templates/two_factor/core/setup.html:41
 msgid ""
 "\n"
 "        Please enter the phone number you wish to be called on.\n"
@@ -1324,7 +1355,7 @@ msgid ""
 "      "
 msgstr ""
 
-#: aleksis/core/templates/two_factor/core/setup.html:50
+#: templates/two_factor/core/setup.html:50
 msgid ""
 "\n"
 "            We are calling your phone right now, please enter the digits you "
@@ -1332,14 +1363,14 @@ msgid ""
 "          "
 msgstr ""
 
-#: aleksis/core/templates/two_factor/core/setup.html:56
+#: templates/two_factor/core/setup.html:56
 msgid ""
 "\n"
 "            We sent you a text message, please enter the tokens we sent.\n"
 "          "
 msgstr ""
 
-#: aleksis/core/templates/two_factor/core/setup.html:63
+#: templates/two_factor/core/setup.html:63
 msgid ""
 "\n"
 "          We've encountered an issue with the selected authentication "
@@ -1352,7 +1383,7 @@ msgid ""
 "        "
 msgstr ""
 
-#: aleksis/core/templates/two_factor/core/setup.html:73
+#: templates/two_factor/core/setup.html:73
 msgid ""
 "\n"
 "        To identify and verify your YubiKey, please insert a\n"
@@ -1361,12 +1392,12 @@ msgid ""
 "      "
 msgstr ""
 
-#: aleksis/core/templates/two_factor/core/setup_complete.html:5
-#: aleksis/core/templates/two_factor/core/setup_complete.html:9
+#: templates/two_factor/core/setup_complete.html:5
+#: templates/two_factor/core/setup_complete.html:9
 msgid "Two-Factor Authentication successfully enabled"
 msgstr ""
 
-#: aleksis/core/templates/two_factor/core/setup_complete.html:14
+#: templates/two_factor/core/setup_complete.html:14
 msgid ""
 "\n"
 "        Congratulations, you've successfully enabled two-factor "
@@ -1374,17 +1405,17 @@ msgid ""
 "      "
 msgstr ""
 
-#: aleksis/core/templates/two_factor/core/setup_complete.html:24
-#: aleksis/core/templates/two_factor/core/setup_complete.html:44
+#: templates/two_factor/core/setup_complete.html:24
+#: templates/two_factor/core/setup_complete.html:44
 msgid "Back to Profile"
 msgstr ""
 
-#: aleksis/core/templates/two_factor/core/setup_complete.html:28
-#: aleksis/core/templates/two_factor/core/setup_complete.html:48
+#: templates/two_factor/core/setup_complete.html:28
+#: templates/two_factor/core/setup_complete.html:48
 msgid "Generate backup codes"
 msgstr ""
 
-#: aleksis/core/templates/two_factor/core/setup_complete.html:34
+#: templates/two_factor/core/setup_complete.html:34
 msgid ""
 "\n"
 "          However, it might happen that you don't have access to\n"
@@ -1394,67 +1425,67 @@ msgid ""
 "        "
 msgstr ""
 
-#: aleksis/core/templates/two_factor/core/setup_complete.html:52
-#: aleksis/core/templates/two_factor/profile/profile.html:41
+#: templates/two_factor/core/setup_complete.html:52
+#: templates/two_factor/profile/profile.html:41
 msgid "Add Phone Number"
 msgstr ""
 
-#: aleksis/core/templates/two_factor/profile/disable.html:5
-#: aleksis/core/templates/two_factor/profile/disable.html:9
-#: aleksis/core/templates/two_factor/profile/profile.html:63
-#: aleksis/core/templates/two_factor/profile/profile.html:73
+#: templates/two_factor/profile/disable.html:5
+#: templates/two_factor/profile/disable.html:9
+#: templates/two_factor/profile/profile.html:63
+#: templates/two_factor/profile/profile.html:73
 msgid "Disable Two-Factor Authentication"
 msgstr ""
 
-#: aleksis/core/templates/two_factor/profile/disable.html:12
+#: templates/two_factor/profile/disable.html:12
 msgid ""
 "You are about to disable two-factor authentication. This weakens your "
 "account security, are you sure?"
 msgstr ""
 
-#: aleksis/core/templates/two_factor/profile/disable.html:26
+#: templates/two_factor/profile/disable.html:26
 msgid "Disable"
 msgstr ""
 
-#: aleksis/core/templates/two_factor/profile/profile.html:5
-#: aleksis/core/templates/two_factor/profile/profile.html:10
+#: templates/two_factor/profile/profile.html:5
+#: templates/two_factor/profile/profile.html:10
 msgid "Account Security"
 msgstr ""
 
-#: aleksis/core/templates/two_factor/profile/profile.html:15
+#: templates/two_factor/profile/profile.html:15
 msgid "Tokens will be generated by your token generator."
 msgstr ""
 
-#: aleksis/core/templates/two_factor/profile/profile.html:17
+#: templates/two_factor/profile/profile.html:17
 #, python-format
 msgid "Primary method: %(primary)s"
 msgstr ""
 
-#: aleksis/core/templates/two_factor/profile/profile.html:19
+#: templates/two_factor/profile/profile.html:19
 msgid "Tokens will be generated by your YubiKey."
 msgstr ""
 
-#: aleksis/core/templates/two_factor/profile/profile.html:23
+#: templates/two_factor/profile/profile.html:23
 msgid "Backup Phone Numbers"
 msgstr ""
 
-#: aleksis/core/templates/two_factor/profile/profile.html:24
+#: templates/two_factor/profile/profile.html:24
 msgid ""
 "If your primary method is not available, we are able to\n"
 "        send backup tokens to the phone numbers listed below."
 msgstr ""
 
-#: aleksis/core/templates/two_factor/profile/profile.html:33
+#: templates/two_factor/profile/profile.html:33
 msgid "Unregister"
 msgstr ""
 
-#: aleksis/core/templates/two_factor/profile/profile.html:48
+#: templates/two_factor/profile/profile.html:48
 msgid ""
 "If you don't have any device with you, you can access\n"
 "        your account using backup tokens."
 msgstr ""
 
-#: aleksis/core/templates/two_factor/profile/profile.html:50
+#: templates/two_factor/profile/profile.html:50
 #, python-format
 msgid ""
 "\n"
@@ -1467,11 +1498,11 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: aleksis/core/templates/two_factor/profile/profile.html:59
+#: templates/two_factor/profile/profile.html:59
 msgid "Show Codes"
 msgstr ""
 
-#: aleksis/core/templates/two_factor/profile/profile.html:65
+#: templates/two_factor/profile/profile.html:65
 msgid ""
 "\n"
 "        However we strongly discourage you to do so, you can\n"
@@ -1479,7 +1510,7 @@ msgid ""
 "      "
 msgstr ""
 
-#: aleksis/core/templates/two_factor/profile/profile.html:78
+#: templates/two_factor/profile/profile.html:78
 msgid ""
 "\n"
 "        Two-factor authentication is not enabled for your\n"
@@ -1488,34 +1519,34 @@ msgid ""
 "      "
 msgstr ""
 
-#: aleksis/core/util/notifications.py:65
+#: util/notifications.py:65
 msgid "E-Mail"
 msgstr ""
 
-#: aleksis/core/util/notifications.py:66
+#: util/notifications.py:66
 msgid "SMS"
 msgstr ""
 
-#: aleksis/core/views.py:212
+#: views.py:212
 msgid "The child groups were successfully saved."
 msgstr ""
 
-#: aleksis/core/views.py:240
+#: views.py:240
 msgid "The person has been saved."
 msgstr ""
 
-#: aleksis/core/views.py:276
+#: views.py:276
 msgid "The group has been saved."
 msgstr ""
 
-#: aleksis/core/views.py:348
+#: views.py:348
 msgid "The announcement has been saved."
 msgstr ""
 
-#: aleksis/core/views.py:364
+#: views.py:364
 msgid "The announcement has been deleted."
 msgstr ""
 
-#: aleksis/core/views.py:434
+#: views.py:435
 msgid "The preferences have been saved successfully."
 msgstr ""
diff --git a/aleksis/core/locale/la/LC_MESSAGES/django.po b/aleksis/core/locale/la/LC_MESSAGES/django.po
index 44781798c562f98fea25e97afbabeecfdecc389b..44a1a45c49036479dec1fcdc60517e943c26c8f8 100644
--- a/aleksis/core/locale/la/LC_MESSAGES/django.po
+++ b/aleksis/core/locale/la/LC_MESSAGES/django.po
@@ -7,10 +7,11 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2020-04-28 13:31+0000\n"
+"POT-Creation-Date: 2020-05-03 15:05+0200\n"
 "PO-Revision-Date: 2020-04-27 13:03+0000\n"
 "Last-Translator: Julian <leuckerj@gmail.com>\n"
-"Language-Team: Latin <https://translate.edugit.org/projects/aleksis/aleksis/la/>\n"
+"Language-Team: Latin <https://translate.edugit.org/projects/aleksis/aleksis/"
+"la/>\n"
 "Language: la\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -18,96 +19,92 @@ msgstr ""
 "Plural-Forms: nplurals=2; plural=n != 1;\n"
 "X-Generator: Weblate 4.0.1\n"
 
-#: forms.py:38 forms.py:113
+#: forms.py:46
 msgid "You cannot set a new username when also selecting an existing user."
 msgstr ""
 
-#: forms.py:41 forms.py:116
+#: forms.py:50
 msgid "This username is already in use."
 msgstr ""
 
-#: forms.py:61
+#: forms.py:74
 msgid "Base data"
 msgstr ""
 
-#: forms.py:67
+#: forms.py:80
+#, fuzzy
+#| msgid "E-mail address"
 msgid "Address"
-msgstr ""
+msgstr "Inscriptio electronica"
 
-#: forms.py:68
+#: forms.py:81
 msgid "Contact data"
 msgstr ""
 
-#: forms.py:70
+#: forms.py:83
 msgid "Advanced personal data"
 msgstr ""
 
-#: forms.py:103
+#: forms.py:116
 msgid "New user"
 msgstr ""
 
-#: forms.py:103
+#: forms.py:116
+#, fuzzy
+#| msgid "Persons and accounts"
 msgid "Create a new account"
-msgstr ""
+msgstr "Personae et computi"
 
-#: forms.py:130
+#: forms.py:128
+#, fuzzy
+#| msgid "Data management"
 msgid "Common data"
-msgstr ""
+msgstr "Adminstratio datarum"
 
-#: forms.py:131 forms.py:188 menus.py:126 models.py:97
+#: forms.py:129 forms.py:169 menus.py:141 models.py:53
 #: templates/core/persons.html:8 templates/core/persons.html:9
 msgid "Persons"
 msgstr "personae"
 
-#: forms.py:160
-#, fuzzy
-#| msgid "Short name"
-msgid "School name"
-msgstr "Breve nomen"
-
-#: forms.py:161 models.py:40
-msgid "School logo"
-msgstr "Imago scolae"
-
-#: forms.py:181 forms.py:184
+#: forms.py:162 forms.py:165 models.py:31
 msgid "Date"
 msgstr "dies"
 
-#: forms.py:182 forms.py:185
+#: forms.py:163 forms.py:166 models.py:39
 msgid "Time"
 msgstr "tempus"
 
-#: forms.py:190 menus.py:134 models.py:257 templates/core/groups.html:8
-#: templates/core/groups.html:9 templates/core/person_full.html:95
+#: forms.py:171 menus.py:149 models.py:248 templates/core/groups.html:8
+#: templates/core/groups.html:9 templates/core/person_full.html:106
 msgid "Groups"
 msgstr "Greges"
 
-#: forms.py:194
+#: forms.py:175
 msgid "From when until when should the announcement be displayed?"
 msgstr ""
 
-#: forms.py:197
+#: forms.py:178
 msgid "Who should see the announcement?"
 msgstr "Quis nuntium videatne?"
 
-#: forms.py:198
+#: forms.py:179
 msgid "Write your announcement:"
 msgstr "Scribe nuntium:"
 
-#: forms.py:237
-msgid "You are not allowed to create announcements which are only valid in the past."
+#: forms.py:216
+msgid ""
+"You are not allowed to create announcements which are only valid in the past."
 msgstr ""
 
-#: forms.py:241
+#: forms.py:220
 msgid "The from date and time must be earlier then the until date and time."
 msgstr ""
 
-#: forms.py:249
+#: forms.py:229
 msgid "You need at least one recipient."
 msgstr ""
 
-#: menus.py:7 templates/registration/login.html:21
-#: templates/two_factor/core/login.html:6
+#: menus.py:7 templates/two_factor/core/login.html:6
 #: templates/two_factor/core/login.html:10
 #: templates/two_factor/core/login.html:73
 msgid "Login"
@@ -125,503 +122,621 @@ msgstr ""
 msgid "Stop impersonation"
 msgstr "Simulandum aliquem finire"
 
-#: menus.py:35 templates/core/base.html:58
+#: menus.py:35 templates/core/base.html:56
 msgid "Logout"
 msgstr "nomen retractare"
 
 #: menus.py:41
-msgid "Two factor auth"
+msgid "2FA"
 msgstr ""
 
-#: menus.py:50
+#: menus.py:47
 msgid "Me"
 msgstr ""
 
-#: menus.py:61
+#: menus.py:56 templates/dynamic_preferences/form.html:5
+msgid "Preferences"
+msgstr ""
+
+#: menus.py:67
 msgid "Admin"
 msgstr "Administratio"
 
-#: menus.py:69 models.py:437 templates/core/announcement/list.html:7
+#: menus.py:75 models.py:479 templates/core/announcement/list.html:7
 #: templates/core/announcement/list.html:8
 msgid "Announcements"
 msgstr "Nuntii"
 
-#: menus.py:77 templates/core/data_management.html:6
+#: menus.py:86 templates/core/data_management.html:6
 #: templates/core/data_management.html:7
 msgid "Data management"
 msgstr "Adminstratio datarum"
 
-#: menus.py:85 templates/core/system_status.html:5
+#: menus.py:94 templates/core/system_status.html:5
 #: templates/core/system_status.html:7
 msgid "System status"
 msgstr "Status systemae"
 
-#: menus.py:93
+#: menus.py:105
 msgid "Impersonation"
 msgstr "Simulare aliquem"
 
-#: menus.py:101
-msgid "Manage school"
-msgstr "Administra scholam"
+#: menus.py:113
+#, fuzzy
+#| msgid "Notification"
+msgid "Configuration"
+msgstr "Nuntius"
 
-#: menus.py:109
+#: menus.py:124
 msgid "Backend Admin"
 msgstr ""
 
-#: menus.py:119
+#: menus.py:132
 msgid "People"
 msgstr "Personae"
 
-#: menus.py:142
+#: menus.py:157
 msgid "Persons and accounts"
 msgstr "Personae et computi"
 
-#: menus.py:151
+#: menus.py:168
 msgid "Groups and child groups"
 msgstr ""
 
-#: menus.py:163 templates/core/groups_child_groups.html:7
+#: menus.py:183 templates/core/groups_child_groups.html:7
 #: templates/core/groups_child_groups.html:9
 msgid "Assign child groups to groups"
 msgstr ""
 
-#: menus.py:171
-msgid "Edit school information"
-msgstr "Muta informationes scolae"
+#: models.py:29
+msgid "Boolean (Yes/No)"
+msgstr ""
 
-#: menus.py:172 templates/core/edit_schoolterm.html:8
-#: templates/core/edit_schoolterm.html:9
-msgid "Edit school term"
-msgstr "Muta anum scolae"
+#: models.py:30
+msgid "Text (one line)"
+msgstr ""
 
-#: models.py:33 models.py:559
-msgid "Name"
-msgstr "Nomen"
+#: models.py:32
+msgid "Date and time"
+msgstr ""
 
-#: models.py:35
-msgid "Official name"
-msgstr "Officialis nomen"
+#: models.py:33
+msgid "Decimal number"
+msgstr ""
 
-#: models.py:37
-msgid "Official name of the school, e.g. as given by supervisory authority"
-msgstr "Officialis nomen scolae, e. g."
+#: models.py:34 models.py:94
+msgid "E-mail address"
+msgstr "Inscriptio electronica"
 
-#: models.py:53
-msgid "School"
-msgstr "Scola"
+#: models.py:35
+msgid "Integer"
+msgstr ""
 
-#: models.py:54
-msgid "Schools"
-msgstr "Scholae"
+#: models.py:36
+#, fuzzy
+#| msgid "E-mail address"
+msgid "IP address"
+msgstr "Inscriptio electronica"
 
-#: models.py:62
-msgid "Visible caption of the term"
+#: models.py:37
+msgid "Boolean or empty (Yes/No/Neither)"
 msgstr ""
 
-#: models.py:64
-msgid "Effective start date of term"
+#: models.py:38
+msgid "Text (multi-line)"
 msgstr ""
 
-#: models.py:65
-msgid "Effective end date of term"
+#: models.py:40
+msgid "URL / Link"
 msgstr ""
 
-#: models.py:85
-msgid "School term"
-msgstr "Anus scolae"
-
-#: models.py:86
-msgid "School terms"
-msgstr "ani scolae"
-
-#: models.py:96 templates/core/persons_accounts.html:36
+#: models.py:52 templates/core/persons_accounts.html:36
 msgid "Person"
 msgstr "Persona"
 
-#: models.py:99
+#: models.py:55
 #, fuzzy
 #| msgid "E-mail address"
 msgid "Can view address"
 msgstr "Inscriptio electronica"
 
-#: models.py:100
+#: models.py:56
+#, fuzzy
+#| msgid "E-mail address"
 msgid "Can view contact details"
-msgstr ""
+msgstr "Inscriptio electronica"
 
-#: models.py:101
+#: models.py:57
+#, fuzzy
+#| msgid "E-mail address"
 msgid "Can view photo"
-msgstr ""
+msgstr "Inscriptio electronica"
 
-#: models.py:102
+#: models.py:58
+#, fuzzy
+#| msgid "Persons and accounts"
 msgid "Can view persons groups"
-msgstr ""
+msgstr "Personae et computi"
 
-#: models.py:103
+#: models.py:59
+#, fuzzy
+#| msgid "Stop impersonation"
 msgid "Can view personal details"
-msgstr ""
+msgstr "Simulandum aliquem finire"
 
-#: models.py:108
+#: models.py:64
 msgid "female"
 msgstr "femininum"
 
-#: models.py:108
+#: models.py:64
 msgid "male"
 msgstr "maskulinum"
 
-#: models.py:113
-msgid "Is person active?"
+#: models.py:72
+msgid "Linked user"
 msgstr ""
 
-#: models.py:115
+#: models.py:74
+#, fuzzy
+#| msgid "Impersonation"
+msgid "Is person active?"
+msgstr "Simulare aliquem"
+
+#: models.py:76
 msgid "First name"
 msgstr "Primus nomen"
 
-#: models.py:116
+#: models.py:77
 msgid "Last name"
 msgstr "Secondus nomen"
 
-#: models.py:118
+#: models.py:79
 msgid "Additional name(s)"
 msgstr "addita nomines"
 
-#: models.py:122
+#: models.py:83 models.py:255
 msgid "Short name"
 msgstr "Breve nomen"
 
-#: models.py:125
+#: models.py:86
 msgid "Street"
 msgstr "Via"
 
-#: models.py:126
+#: models.py:87
 msgid "Street number"
 msgstr "Numerus domini"
 
-#: models.py:127
+#: models.py:88
 msgid "Postal code"
 msgstr "Numerus directorius"
 
-#: models.py:128
+#: models.py:89
 msgid "Place"
 msgstr "Urbs"
 
-#: models.py:130
+#: models.py:91
 msgid "Home phone"
 msgstr "Numerus telephoni domi"
 
-#: models.py:131
+#: models.py:92
 msgid "Mobile phone"
 msgstr "Numerus telephoni mobilis"
 
-#: models.py:133
-msgid "E-mail address"
-msgstr "Inscriptio electronica"
-
-#: models.py:135
+#: models.py:96
 msgid "Date of birth"
 msgstr "Dies natalis"
 
-#: models.py:136
+#: models.py:97
 msgid "Sex"
 msgstr "Genus"
 
-#: models.py:138
+#: models.py:99
 msgid "Photo"
 msgstr "Photographia"
 
-#: models.py:142
+#: models.py:104
 msgid "Guardians / Parents"
 msgstr "Parentes"
 
-#: models.py:147 models.py:310 models.py:327 models.py:406 models.py:574
+#: models.py:111
+msgid "Primary group"
+msgstr ""
+
+#: models.py:114 models.py:341 models.py:365 models.py:448 models.py:634
 msgid "Description"
 msgstr "Descriptio"
 
-#: models.py:256
+#: models.py:229
+msgid "Title of field"
+msgstr ""
+
+#: models.py:231
+msgid "Type of field"
+msgstr ""
+
+#: models.py:235
+#, fuzzy
+#| msgid "Additional name(s)"
+msgid "Addtitional field for groups"
+msgstr "addita nomines"
+
+#: models.py:236
+#, fuzzy
+#| msgid "Additional name(s)"
+msgid "Addtitional fields for groups"
+msgstr "addita nomines"
+
+#: models.py:247
 msgid "Group"
 msgstr "Grex"
 
-#: models.py:259
+#: models.py:249
 msgid "Can assign child groups to groups"
 msgstr ""
 
-#: models.py:264
-msgid "Long name of group"
+#: models.py:253
+#, fuzzy
+#| msgid "Last name"
+msgid "Long name"
+msgstr "Secondus nomen"
+
+#: models.py:263 templates/core/group_full.html:37
+msgid "Members"
 msgstr ""
 
-#: models.py:265
-msgid "Short name of group"
+#: models.py:266 templates/core/group_full.html:34
+msgid "Owners"
 msgstr ""
 
-#: models.py:274
+#: models.py:273
 msgid "Parent groups"
 msgstr ""
 
-#: models.py:278
+#: models.py:281
 msgid "Type of group"
 msgstr ""
 
-#: models.py:309 models.py:326 models.py:405
+#: models.py:285
+#, fuzzy
+#| msgid "Additional name(s)"
+msgid "Additional fields"
+msgstr "addita nomines"
+
+#: models.py:337
+msgid "User"
+msgstr ""
+
+#: models.py:340 models.py:364 models.py:447
 #: templates/core/announcement/list.html:18
 msgid "Title"
 msgstr "Titulus"
 
-#: models.py:312
+#: models.py:343
 msgid "Application"
 msgstr ""
 
-#: models.py:318
+#: models.py:349
 msgid "Activity"
 msgstr ""
 
-#: models.py:319
+#: models.py:350
 msgid "Activities"
 msgstr ""
 
-#: models.py:323
+#: models.py:356
 msgid "Sender"
 msgstr "Mittens"
 
-#: models.py:328 models.py:407 models.py:560
+#: models.py:361
+msgid "Recipient"
+msgstr ""
+
+#: models.py:366 models.py:614
 msgid "Link"
 msgstr ""
 
-#: models.py:330
+#: models.py:368
 msgid "Read"
 msgstr ""
 
-#: models.py:331
+#: models.py:369
 msgid "Sent"
 msgstr ""
 
-#: models.py:343
+#: models.py:382
+#, fuzzy
+#| msgid "Notifications"
 msgid "Notification"
-msgstr "Nuntius"
+msgstr "Nuntii"
 
-#: models.py:344
+#: models.py:383
 msgid "Notifications"
 msgstr "Nuntii"
 
-#: models.py:410
+#: models.py:449
+msgid "Link to detailed view"
+msgstr ""
+
+#: models.py:452
 msgid "Date and time from when to show"
 msgstr ""
 
-#: models.py:413
+#: models.py:455
 msgid "Date and time until when to show"
 msgstr ""
 
-#: models.py:436
+#: models.py:478
+#, fuzzy
+#| msgid "Announcements"
 msgid "Announcement"
-msgstr ""
+msgstr "Nuntii"
 
-#: models.py:464
+#: models.py:515
+#, fuzzy
+#| msgid "Announcements"
 msgid "Announcement recipient"
-msgstr ""
+msgstr "Nuntii"
 
-#: models.py:465
+#: models.py:516
+#, fuzzy
+#| msgid "Announcements"
 msgid "Announcement recipients"
-msgstr ""
+msgstr "Nuntii"
 
-#: models.py:515
+#: models.py:566
+#, fuzzy
+#| msgid "Site title"
 msgid "Widget Title"
-msgstr ""
+msgstr "Titulus paginae"
 
-#: models.py:516
+#: models.py:567
 msgid "Activate Widget"
 msgstr ""
 
-#: models.py:528
+#: models.py:584
+#, fuzzy
+#| msgid "Dashboard"
 msgid "Dashboard Widget"
-msgstr ""
+msgstr "Forum"
 
-#: models.py:529
+#: models.py:585
+#, fuzzy
+#| msgid "Dashboard"
 msgid "Dashboard Widgets"
-msgstr ""
+msgstr "Forum"
 
-#: models.py:533
+#: models.py:591
 msgid "Menu ID"
 msgstr ""
 
-#: models.py:534
-msgid "Menu name"
-msgstr ""
-
-#: models.py:551
+#: models.py:603
 msgid "Custom menu"
 msgstr ""
 
-#: models.py:552
+#: models.py:604
 msgid "Custom menus"
 msgstr ""
 
-#: models.py:557
+#: models.py:611
 msgid "Menu"
 msgstr ""
 
-#: models.py:562
+#: models.py:613
+msgid "Name"
+msgstr "Nomen"
+
+#: models.py:616
 msgid "Icon"
 msgstr "Nota"
 
-#: models.py:569
+#: models.py:623
 msgid "Custom menu item"
 msgstr ""
 
-#: models.py:570
+#: models.py:624
 msgid "Custom menu items"
 msgstr ""
 
-#: models.py:573
+#: models.py:633
 msgid "Title of type"
 msgstr ""
 
-#: models.py:577
+#: models.py:637
 #, fuzzy
 #| msgid "Group"
 msgid "Group type"
 msgstr "Grex"
 
-#: models.py:578
+#: models.py:638
 #, fuzzy
 #| msgid "Groups"
 msgid "Group types"
 msgstr "Greges"
 
-#: models.py:585
+#: models.py:647
 #, fuzzy
 #| msgid "System status"
 msgid "Can view system status"
 msgstr "Status systemae"
 
-#: models.py:586
+#: models.py:648
 #, fuzzy
 #| msgid "Persons and accounts"
 msgid "Can link persons to accounts"
 msgstr "Personae et computi"
 
-#: models.py:587
+#: models.py:649
 #, fuzzy
 #| msgid "Data management"
 msgid "Can manage data"
 msgstr "Adminstratio datarum"
 
-#: models.py:588
+#: models.py:650
 #, fuzzy
 #| msgid "Stop impersonation"
 msgid "Can impersonate"
 msgstr "Simulandum aliquem finire"
 
-#: models.py:589
+#: models.py:651
 msgid "Can use search"
 msgstr ""
 
-#: settings.py:262
-msgid "German"
-msgstr "Germanus"
+#: models.py:652
+msgid "Can change site preferences"
+msgstr ""
 
-#: settings.py:263
-msgid "English"
-msgstr "Britannicus"
+#: models.py:653
+msgid "Can change person preferences"
+msgstr ""
 
-#: settings.py:264
-msgid "French"
+#: models.py:654
+msgid "Can change group preferences"
 msgstr ""
 
-#: settings.py:384
+#: preferences.py:26
 msgid "Site title"
 msgstr "Titulus paginae"
 
-#: settings.py:385
+#: preferences.py:35
 msgid "Site description"
 msgstr "Descriptio paginae"
 
-#: settings.py:386
+#: preferences.py:44
 msgid "Primary colour"
 msgstr ""
 
-#: settings.py:387
+#: preferences.py:53
 msgid "Secondary colour"
 msgstr ""
 
-#: settings.py:388
-msgid "Mail out name"
+#: preferences.py:61
+#, fuzzy
+#| msgid "Logout"
+msgid "Logo"
+msgstr "nomen retractare"
+
+#: preferences.py:69
+msgid "Favicon"
 msgstr ""
 
-#: settings.py:389
+#: preferences.py:77
+#, fuzzy
+#| msgid "Icon"
+msgid "PWA-Icon"
+msgstr "Nota"
+
+#: preferences.py:86
+#, fuzzy
+#| msgid "Last name"
+msgid "Mail out name"
+msgstr "Secondus nomen"
+
+#: preferences.py:95
+#, fuzzy
+#| msgid "E-mail address"
 msgid "Mail out address"
-msgstr ""
+msgstr "Inscriptio electronica"
 
-#: settings.py:390
+#: preferences.py:105
 msgid "Link to privacy policy"
 msgstr ""
 
-#: settings.py:391
+#: preferences.py:115
 msgid "Link to imprint"
 msgstr ""
 
-#: settings.py:392
-msgid "Name format of adresses"
+#: preferences.py:125
+msgid "Name format for addressing"
 msgstr ""
 
-#: settings.py:393
-msgid "Channels to allow for notifications"
+#: preferences.py:141
+msgid "Channels to use for notifications"
 msgstr ""
 
-#: settings.py:394
+#: preferences.py:151
 msgid "Regular expression to match primary group, e.g. '^Class .*'"
 msgstr ""
 
+#: preferences.py:160
+msgid "Display name of the school"
+msgstr ""
+
+#: preferences.py:169
+msgid "Official name of the school, e.g. as given by supervisory authority"
+msgstr "Officialis nomen scolae, e. g."
+
+#: settings.py:276
+msgid "English"
+msgstr "Britannicus"
+
+#: settings.py:277
+msgid "German"
+msgstr "Germanus"
+
+#: settings.py:278
+msgid "French"
+msgstr ""
+
+#: templates/403.html:10 templates/404.html:10 templates/500.html:10
+msgid "Error"
+msgstr ""
+
 #: templates/403.html:10
-msgid "Error (403): You are not allowed to access the requested page or object."
+msgid ""
+"You are not allowed to access the requested page or\n"
+"          object."
 msgstr ""
 
-#: templates/403.html:12
+#: templates/403.html:13 templates/404.html:17
 msgid ""
 "\n"
-"      If you think this is an error in AlekSIS, please contact your site\n"
-"     administrators:\n"
-"     "
+"            If you think this is an error in AlekSIS, please contact your "
+"site\n"
+"            administrators:\n"
+"          "
 msgstr ""
 
 #: templates/404.html:10
-msgid "Error (404): The requested page or object was not found."
-msgstr ""
-
-#: templates/404.html:12
 msgid ""
-"\n"
-"      If you were redirected by a link on an external page,\n"
-"      it is possible that that link was outdated.\n"
-"     "
+"The requested page or object was not\n"
+"          found."
 msgstr ""
 
-#: templates/404.html:16
+#: templates/404.html:13
 msgid ""
 "\n"
-"      If you think this is an error in AlekSIS, please contact your site\n"
-"      administrators:\n"
-"     "
+"            If you were redirected by a link on an external page,\n"
+"            it is possible that that link was outdated.\n"
+"          "
 msgstr ""
 
 #: templates/500.html:10
-msgid "Error (500): An unexpected error has occured.."
+msgid ""
+"An unexpected error has\n"
+"          occured."
 msgstr ""
 
-#: templates/500.html:12
+#: templates/500.html:13
 msgid ""
 "\n"
-"      Your site administrators will automatically be notified about this\n"
-"     error.\n"
-"     "
+"            Your site administrators will automatically be notified about "
+"this\n"
+"            error. You can also contact them directly:\n"
+"          "
 msgstr ""
 
 #: templates/503.html:10
-msgid "The maintenance mode is currently enabled. Please try again later."
+msgid ""
+"The maintenance mode is currently enabled. Please try again\n"
+"          later."
 msgstr ""
 
-#: templates/503.html:12
+#: templates/503.html:13
 msgid ""
 "\n"
-"      This page is currently unavailable. If this error stays, contact your site administrators:\n"
-"     "
+"            This page is currently unavailable. If this error persists, "
+"contact your site administrators:\n"
+"          "
 msgstr ""
 
 #: templates/core/about.html:6 templates/core/about.html:15
@@ -635,9 +750,11 @@ msgstr ""
 #: templates/core/about.html:17
 msgid ""
 "\n"
-"              This platform is powered by AlekSIS, a web-based school information system (SIS) which can be used\n"
-"              to manage and/or publish organisational subjects of educational institutions. AlekSIS is free software and\n"
-"              can be used by everyone.\n"
+"              This platform is powered by AlekSIS, a web-based school "
+"information system (SIS) which can be used\n"
+"              to manage and/or publish organisational artifacts of "
+"educational institutions. AlekSIS is free software and\n"
+"              can be used by anyone.\n"
 "            "
 msgstr ""
 
@@ -658,8 +775,10 @@ msgstr "Muta informationes scolae"
 #: templates/core/about.html:37
 msgid ""
 "\n"
-"              The core and the official apps of AlekSIS are licenced under the EUPL, version 1.2 or later. For licence\n"
-"              information from third-party apps, if installed, see directly at the respective components below. The\n"
+"              The core and the official apps of AlekSIS are licenced under "
+"the EUPL, version 1.2 or later. For licence\n"
+"              information from third-party apps, if installed, refer to the "
+"respective components below. The\n"
 "              licences are marked like this:\n"
 "            "
 msgstr ""
@@ -677,8 +796,10 @@ msgid "Full licence text"
 msgstr ""
 
 #: templates/core/about.html:51
+#, fuzzy
+#| msgid "Edit school information"
 msgid "More information about the EUPL"
-msgstr ""
+msgstr "Muta informationes scolae"
 
 #: templates/core/about.html:90
 #, python-format
@@ -690,21 +811,29 @@ msgstr ""
 
 #: templates/core/announcement/form.html:10
 #: templates/core/announcement/form.html:17
+#, fuzzy
+#| msgid "Announcements"
 msgid "Edit announcement"
-msgstr ""
+msgstr "Nuntii"
 
 #: templates/core/announcement/form.html:12
+#, fuzzy
+#| msgid "Announcements"
 msgid "Publish announcement"
-msgstr ""
+msgstr "Nuntii"
 
 #: templates/core/announcement/form.html:19
 #: templates/core/announcement/list.html:13
+#, fuzzy
+#| msgid "Who should see the announcement?"
 msgid "Publish new announcement"
-msgstr ""
+msgstr "Quis nuntium videatne?"
 
 #: templates/core/announcement/form.html:30
+#, fuzzy
+#| msgid "Who should see the announcement?"
 msgid "Save und publish announcement"
-msgstr ""
+msgstr "Quis nuntium videatne?"
 
 #: templates/core/announcement/list.html:19
 msgid "Valid from"
@@ -719,11 +848,13 @@ msgid "Recipients"
 msgstr ""
 
 #: templates/core/announcement/list.html:22
+#, fuzzy
+#| msgid "Notifications"
 msgid "Actions"
-msgstr ""
+msgstr "Nuntii"
 
-#: templates/core/announcement/list.html:36 templates/core/group_full.html:15
-#: templates/core/person_full.html:18
+#: templates/core/announcement/list.html:36 templates/core/group_full.html:22
+#: templates/core/person_full.html:21
 msgid "Edit"
 msgstr ""
 
@@ -732,8 +863,10 @@ msgid "Delete"
 msgstr ""
 
 #: templates/core/announcement/list.html:50
+#, fuzzy
+#| msgid "Write your announcement:"
 msgid "There are no announcements."
-msgstr ""
+msgstr "Scribe nuntium:"
 
 #: templates/core/announcements.html:9 templates/core/announcements.html:36
 #, python-format
@@ -759,28 +892,28 @@ msgid ""
 "            "
 msgstr ""
 
-#: templates/core/base.html:56
+#: templates/core/base.html:54
 msgid "Logged in as"
 msgstr ""
 
-#: templates/core/base.html:79 templates/search/search.html:7
+#: templates/core/base.html:76 templates/search/search.html:7
 #: templates/search/search.html:22
 msgid "Search"
 msgstr ""
 
-#: templates/core/base.html:151
+#: templates/core/base.html:148
 msgid "About AlekSIS — The Free School Information System"
 msgstr ""
 
-#: templates/core/base.html:159
+#: templates/core/base.html:156
 msgid "Impress"
 msgstr ""
 
-#: templates/core/base.html:167
+#: templates/core/base.html:164
 msgid "Privacy Policy"
 msgstr ""
 
-#: templates/core/base_print.html:60
+#: templates/core/base_print.html:62
 msgid "Powered by AlekSIS"
 msgstr ""
 
@@ -792,16 +925,8 @@ msgstr ""
 msgid "Edit person"
 msgstr ""
 
-#: templates/core/edit_school.html:8 templates/core/edit_school.html:9
-msgid "Edit school"
-msgstr ""
-
-#: templates/core/group_full.html:19
-msgid "Owners"
-msgstr ""
-
-#: templates/core/group_full.html:22
-msgid "Members"
+#: templates/core/group_full.html:28 templates/core/person_full.html:28
+msgid "Change preferences"
 msgstr ""
 
 #: templates/core/groups.html:14
@@ -811,8 +936,9 @@ msgstr ""
 #: templates/core/groups_child_groups.html:18
 msgid ""
 "\n"
-"          You can use this to assign child groups to groups. Please use the filters below to select groups you want to\n"
-"          change and click at \"Next\".\n"
+"          You can use this to assign child groups to groups. Please use the "
+"filters below to select groups you want to\n"
+"          change and click \"Next\".\n"
 "        "
 msgstr ""
 
@@ -844,11 +970,16 @@ msgid "Current group:"
 msgstr ""
 
 #: templates/core/groups_child_groups.html:78
+msgid "Please be careful!"
+msgstr ""
+
+#: templates/core/groups_child_groups.html:79
 msgid ""
 "\n"
-"            <strong>Please be careful!</strong><br/>\n"
-"            If you click on \"Back\" or \"Next\" the current group assignments are not saved.\n"
-"            If you click on save, you will overwrite all existing child group relations for this group with what you\n"
+"            If you click \"Back\" or \"Next\" the current group assignments "
+"are not saved.\n"
+"            If you click \"Save\", you will overwrite all existing child "
+"group relations for this group with what you\n"
 "            selected on this page.\n"
 "          "
 msgstr ""
@@ -881,64 +1012,65 @@ msgstr ""
 msgid "Home"
 msgstr ""
 
-#: templates/core/index.html:11
-msgid "AlekSIS (School Information System)"
-msgstr ""
-
-#: templates/core/index.html:43
+#: templates/core/index.html:42
 msgid "Last activities"
 msgstr ""
 
-#: templates/core/index.html:61
+#: templates/core/index.html:60
 msgid "No activities available yet."
 msgstr ""
 
-#: templates/core/index.html:66
+#: templates/core/index.html:65
+#, fuzzy
+#| msgid "Notifications"
 msgid "Recent notifications"
-msgstr ""
+msgstr "Nuntii"
 
-#: templates/core/index.html:82
+#: templates/core/index.html:81
+#, fuzzy
+#| msgid "Edit school information"
 msgid "More information →"
-msgstr ""
+msgstr "Muta informationes scolae"
 
-#: templates/core/index.html:89
+#: templates/core/index.html:88
 msgid "No notifications available yet."
 msgstr ""
 
-#: templates/core/no_person.html:11
+#: templates/core/no_person.html:12
 msgid ""
 "\n"
-"          Your user account is not linked to a person. This means you\n"
-"          cannot access any school-related information. Please contact\n"
-"          the managers of AlekSIS at your school.\n"
-"        "
-msgstr ""
-
-#: templates/core/offline.html:6
-msgid "No internet connection."
+"            Your administrator account is not linked to any person. "
+"Therefore,\n"
+"            a dummy person has been linked to your account.\n"
+"          "
 msgstr ""
 
-#: templates/core/offline.html:9
+#: templates/core/no_person.html:19
 msgid ""
 "\n"
-"        There was an error accessing this page. You probably don't have an internet connection. Check to see if your WiFi or mobile data is turned on and try again. If you think you are connected, please contact the system administrators:\n"
-"      "
+"            Your user account is not linked to a person. This means you\n"
+"            cannot access any school-related information. Please contact\n"
+"            the managers of AlekSIS at your school.\n"
+"          "
 msgstr ""
 
-#: templates/core/person_full.html:23
+#: templates/core/person_full.html:34
 msgid "Contact details"
 msgstr ""
 
 #: templates/core/persons_accounts.html:7
 #: templates/core/persons_accounts.html:9
+#, fuzzy
+#| msgid "Persons and accounts"
 msgid "Link persons to accounts"
-msgstr ""
+msgstr "Personae et computi"
 
 #: templates/core/persons_accounts.html:16
 msgid ""
 "\n"
 "        You can use this form to assign user accounts to persons. Use the\n"
-"        dropdowns to select existing accounts; use the text fields to create new\n"
+"        dropdowns to select existing accounts; use the text fields to create "
+"new\n"
 "        accounts on-the-fly. The latter will create a new account with the\n"
 "        entered username and copy all other details from the person.\n"
 "      "
@@ -957,14 +1089,11 @@ msgstr ""
 msgid "New account"
 msgstr ""
 
-#: templates/core/school_management.html:6
-#: templates/core/school_management.html:7
-msgid "School management"
-msgstr ""
-
 #: templates/core/system_status.html:12
+#, fuzzy
+#| msgid "System status"
 msgid "System checks"
-msgstr ""
+msgstr "Status systemae"
 
 #: templates/core/system_status.html:21
 msgid "Maintenance mode enabled"
@@ -973,7 +1102,8 @@ msgstr ""
 #: templates/core/system_status.html:23
 msgid ""
 "\n"
-"                Only admin and visitors from internal IPs can access thesite.\n"
+"                Only admin and visitors from internal IPs can access "
+"thesite.\n"
 "              "
 msgstr ""
 
@@ -992,7 +1122,8 @@ msgstr ""
 #: templates/core/system_status.html:47
 msgid ""
 "\n"
-"                The web server throws back debug information on errors. Do not use in production!\n"
+"                The web server throws back debug information on errors. Do "
+"not use in production!\n"
 "              "
 msgstr ""
 
@@ -1003,105 +1134,53 @@ msgstr ""
 #: templates/core/system_status.html:56
 msgid ""
 "\n"
-"                Debug mode is disabled. Default error pages are displayed on errors.\n"
+"                Debug mode is disabled. Default error pages are displayed on "
+"errors.\n"
 "              "
 msgstr ""
 
-#: templates/impersonate/list_users.html:8
-msgid "Impersonate user"
-msgstr ""
-
-#: templates/martor/editor.html:27
-msgid "Uploading... please wait..."
-msgstr ""
-
-#: templates/martor/editor.html:36
-msgid "Nothing to preview"
-msgstr ""
-
-#: templates/martor/emoji.html:4
-msgid "Select Emoji to Insert"
-msgstr ""
-
-#: templates/martor/emoji.html:8
-msgid "Preparing emojis..."
+#: templates/dynamic_preferences/form.html:9
+msgid "Site preferences"
 msgstr ""
 
-#: templates/martor/guide.html:8
-msgid "Markdown Guide"
+#: templates/dynamic_preferences/form.html:11
+msgid "My preferences"
 msgstr ""
 
-#: templates/martor/guide.html:9
+#: templates/dynamic_preferences/form.html:13
 #, python-format
-msgid ""
-"This site is powered by Markdown. For full\n"
-"            documentation,\n"
-"            <a href=\"%(doc_url)s\" target=\"_blank\">click here</a>"
-msgstr ""
-
-#: templates/martor/guide.html:15 templates/martor/toolbar.html:42
-msgid "Code"
-msgstr ""
-
-#: templates/martor/guide.html:16
-msgid "Or"
+msgid "Preferences for %(instance)s"
 msgstr ""
 
-#: templates/martor/guide.html:19
-msgid "... to Get"
+#: templates/dynamic_preferences/form.html:25
+msgid "Save preferences"
 msgstr ""
 
-#: templates/martor/toolbar.html:3
-msgid "Bold"
+#: templates/dynamic_preferences/sections.html:7
+msgid "All"
 msgstr ""
 
-#: templates/martor/toolbar.html:6
-msgid "Italic"
-msgstr ""
-
-#: templates/martor/toolbar.html:10
-msgid "Horizontal Line"
-msgstr ""
-
-#: templates/martor/toolbar.html:15
-msgid "Heading"
-msgstr ""
-
-#: templates/martor/toolbar.html:20 templates/martor/toolbar.html:23
-#: templates/martor/toolbar.html:26
-msgid "H"
-msgstr ""
-
-#: templates/martor/toolbar.html:31
-msgid "Pre or Code"
-msgstr ""
-
-#: templates/martor/toolbar.html:38
-msgid "Pre"
-msgstr ""
-
-#: templates/martor/toolbar.html:48
-msgid "Quote"
-msgstr ""
-
-#: templates/martor/toolbar.html:52
-msgid "Unordered List"
-msgstr ""
-
-#: templates/martor/toolbar.html:56
-msgid "Ordered List"
-msgstr ""
-
-#: templates/martor/toolbar.html:60
-msgid "URL/Link"
-msgstr ""
+#: templates/impersonate/list_users.html:8
+#, fuzzy
+#| msgid "Impersonation"
+msgid "Impersonate user"
+msgstr "Simulare aliquem"
 
-#: templates/martor/toolbar.html:82
-msgid "Full Screen"
+#: templates/offline.html:6
+msgid ""
+"No internet\n"
+"    connection."
 msgstr ""
 
-#: templates/martor/toolbar.html:86
-msgid "Markdown Guide (Help)"
+#: templates/offline.html:10
+msgid ""
+"\n"
+"      There was an error accessing this page. 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"
+"    "
 msgstr ""
 
 #: templates/search/search.html:8
@@ -1124,6 +1203,36 @@ msgstr ""
 msgid "Please enter a search term above."
 msgstr ""
 
+#: templates/templated_email/notification.email:3
+#, fuzzy
+#| msgid "Notification"
+msgid "New notification for"
+msgstr "Nuntius"
+
+#: templates/templated_email/notification.email:7
+msgid "Dear"
+msgstr ""
+
+#: templates/templated_email/notification.email:8
+msgid "we got a new notification for you:"
+msgstr ""
+
+#: templates/templated_email/notification.email:12
+#, fuzzy
+#| msgid "Edit school information"
+msgid "More information"
+msgstr "Muta informationes scolae"
+
+#: templates/templated_email/notification.email:16
+#, python-format
+msgid ""
+"\n"
+"    <p>By %(trans_sender)s at %(trans_created_at)s</p>\n"
+"\n"
+"    <i>Your AlekSIS team</i>\n"
+"    "
+msgstr ""
+
 #: templates/two_factor/_base_focus.html:6
 #: templates/two_factor/core/otp_required.html:22
 #: templates/two_factor/core/setup.html:5
@@ -1146,8 +1255,10 @@ msgid ""
 "\n"
 "        Backup tokens can be used when your primary and backup\n"
 "        phone numbers aren't available. The backup tokens below can be used\n"
-"        for login verification. If you've used up all your backup tokens, you\n"
-"        can generate a new set of backup tokens. Only the backup tokens shown\n"
+"        for login verification. If you've used up all your backup tokens, "
+"you\n"
+"        can generate a new set of backup tokens. Only the backup tokens "
+"shown\n"
 "        below will be valid.\n"
 "      "
 msgstr ""
@@ -1172,7 +1283,8 @@ msgid "Generate Tokens"
 msgstr ""
 
 #: templates/two_factor/core/login.html:16
-msgid "You have no permission to view this page. Please login with an other account."
+msgid ""
+"You have no permission to view this page. Please login with an other account."
 msgstr ""
 
 #: templates/two_factor/core/login.html:25
@@ -1200,7 +1312,8 @@ msgstr ""
 #: templates/two_factor/core/login.html:38
 msgid ""
 "Use this form for entering backup tokens for logging in.\n"
-"            These tokens have been generated for you to print and keep safe. Please\n"
+"            These tokens have been generated for you to print and keep safe. "
+"Please\n"
 "            enter one of these backup tokens to login to your account."
 msgstr ""
 
@@ -1223,7 +1336,8 @@ msgstr ""
 #: templates/two_factor/core/otp_required.html:10
 msgid ""
 "The page you requested, enforces users to verify using\n"
-"          two-factor authentication for security reasons. You need to enable these\n"
+"          two-factor authentication for security reasons. You need to enable "
+"these\n"
 "          security features in order to access this page."
 msgstr ""
 
@@ -1300,7 +1414,8 @@ msgstr ""
 #: templates/two_factor/core/setup.html:50
 msgid ""
 "\n"
-"            We are calling your phone right now, please enter the digits you hear.\n"
+"            We are calling your phone right now, please enter the digits you "
+"hear.\n"
 "          "
 msgstr ""
 
@@ -1314,9 +1429,12 @@ msgstr ""
 #: templates/two_factor/core/setup.html:63
 msgid ""
 "\n"
-"          We've encountered an issue with the selected authentication method. Please\n"
-"          go back and verify that you entered your information correctly, try\n"
-"          again, or use a different authentication method instead. If the issue\n"
+"          We've encountered an issue with the selected authentication "
+"method. Please\n"
+"          go back and verify that you entered your information correctly, "
+"try\n"
+"          again, or use a different authentication method instead. If the "
+"issue\n"
 "          persists, contact the site administrator.\n"
 "        "
 msgstr ""
@@ -1338,7 +1456,8 @@ msgstr ""
 #: templates/two_factor/core/setup_complete.html:14
 msgid ""
 "\n"
-"        Congratulations, you've successfully enabled two-factor authentication.\n"
+"        Congratulations, you've successfully enabled two-factor "
+"authentication.\n"
 "      "
 msgstr ""
 
@@ -1356,7 +1475,8 @@ msgstr ""
 msgid ""
 "\n"
 "          However, it might happen that you don't have access to\n"
-"          your primary token device. To enable account recovery, generate backup codes\n"
+"          your primary token device. To enable account recovery, generate "
+"backup codes\n"
 "          or add a phone number.\n"
 "        "
 msgstr ""
@@ -1374,7 +1494,9 @@ msgid "Disable Two-Factor Authentication"
 msgstr ""
 
 #: templates/two_factor/profile/disable.html:12
-msgid "You are about to disable two-factor authentication. This weakens your account security, are you sure?"
+msgid ""
+"You are about to disable two-factor authentication. This weakens your "
+"account security, are you sure?"
 msgstr ""
 
 #: templates/two_factor/profile/disable.html:26
@@ -1453,42 +1575,66 @@ msgid ""
 "      "
 msgstr ""
 
-#: util/notifications.py:66
+#: util/notifications.py:65
 msgid "E-Mail"
 msgstr ""
 
-#: util/notifications.py:67
+#: util/notifications.py:66
 msgid "SMS"
 msgstr ""
 
-#: views.py:205
+#: views.py:212
 msgid "The child groups were successfully saved."
 msgstr ""
 
-#: views.py:235
+#: views.py:240
 msgid "The person has been saved."
 msgstr ""
 
-#: views.py:265
+#: views.py:276
 msgid "The group has been saved."
 msgstr ""
 
-#: views.py:306
-msgid "The school has been saved."
+#: views.py:348
+msgid "The announcement has been saved."
 msgstr ""
 
-#: views.py:325
-msgid "The term has been saved."
+#: views.py:364
+msgid "The announcement has been deleted."
 msgstr ""
 
-#: views.py:342
-msgid "You are not allowed to mark notifications from other users as read!"
+#: views.py:435
+msgid "The preferences have been saved successfully."
 msgstr ""
 
-#: views.py:383
-msgid "The announcement has been saved."
-msgstr ""
+#, fuzzy
+#~| msgid "Short name"
+#~ msgid "School name"
+#~ msgstr "Breve nomen"
 
-#: views.py:396
-msgid "The announcement has been deleted."
-msgstr ""
+#~ msgid "School logo"
+#~ msgstr "Imago scolae"
+
+#~ msgid "Manage school"
+#~ msgstr "Administra scholam"
+
+#~ msgid "Edit school information"
+#~ msgstr "Muta informationes scolae"
+
+#~ msgid "Edit school term"
+#~ msgstr "Muta anum scolae"
+
+#~ msgid "Official name"
+#~ msgstr "Officialis nomen"
+
+#~ msgid "School"
+#~ msgstr "Scola"
+
+#~ msgid "Schools"
+#~ msgstr "Scholae"
+
+#~ msgid "School term"
+#~ msgstr "Anus scolae"
+
+#~ msgid "School terms"
+#~ msgstr "ani scolae"
diff --git a/aleksis/core/locale/nb_NO/LC_MESSAGES/django.po b/aleksis/core/locale/nb_NO/LC_MESSAGES/django.po
index 5916059b505b17617956b0368023cbd423836719..dc3dca38a072d490b1588bae2ccf1c4a38bf344c 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: 2020-04-28 13:31+0000\n"
+"POT-Creation-Date: 2020-05-03 15:05+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,94 +17,86 @@ msgstr ""
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: forms.py:38 forms.py:113
+#: forms.py:46
 msgid "You cannot set a new username when also selecting an existing user."
 msgstr ""
 
-#: forms.py:41 forms.py:116
+#: forms.py:50
 msgid "This username is already in use."
 msgstr ""
 
-#: forms.py:61
+#: forms.py:74
 msgid "Base data"
 msgstr ""
 
-#: forms.py:67
+#: forms.py:80
 msgid "Address"
 msgstr ""
 
-#: forms.py:68
+#: forms.py:81
 msgid "Contact data"
 msgstr ""
 
-#: forms.py:70
+#: forms.py:83
 msgid "Advanced personal data"
 msgstr ""
 
-#: forms.py:103
+#: forms.py:116
 msgid "New user"
 msgstr ""
 
-#: forms.py:103
+#: forms.py:116
 msgid "Create a new account"
 msgstr ""
 
-#: forms.py:130
+#: forms.py:128
 msgid "Common data"
 msgstr ""
 
-#: forms.py:131 forms.py:188 menus.py:126 models.py:97
+#: forms.py:129 forms.py:169 menus.py:141 models.py:53
 #: templates/core/persons.html:8 templates/core/persons.html:9
 msgid "Persons"
 msgstr ""
 
-#: forms.py:160
-msgid "School name"
-msgstr ""
-
-#: forms.py:161 models.py:40
-msgid "School logo"
-msgstr ""
-
-#: forms.py:181 forms.py:184
+#: forms.py:162 forms.py:165 models.py:31
 msgid "Date"
 msgstr ""
 
-#: forms.py:182 forms.py:185
+#: forms.py:163 forms.py:166 models.py:39
 msgid "Time"
 msgstr ""
 
-#: forms.py:190 menus.py:134 models.py:257 templates/core/groups.html:8
-#: templates/core/groups.html:9 templates/core/person_full.html:95
+#: forms.py:171 menus.py:149 models.py:248 templates/core/groups.html:8
+#: templates/core/groups.html:9 templates/core/person_full.html:106
 msgid "Groups"
 msgstr ""
 
-#: forms.py:194
+#: forms.py:175
 msgid "From when until when should the announcement be displayed?"
 msgstr ""
 
-#: forms.py:197
+#: forms.py:178
 msgid "Who should see the announcement?"
 msgstr ""
 
-#: forms.py:198
+#: forms.py:179
 msgid "Write your announcement:"
 msgstr ""
 
-#: forms.py:237
-msgid "You are not allowed to create announcements which are only valid in the past."
+#: forms.py:216
+msgid ""
+"You are not allowed to create announcements which are only valid in the past."
 msgstr ""
 
-#: forms.py:241
+#: forms.py:220
 msgid "The from date and time must be earlier then the until date and time."
 msgstr ""
 
-#: forms.py:249
+#: forms.py:229
 msgid "You need at least one recipient."
 msgstr ""
 
-#: menus.py:7 templates/registration/login.html:21
-#: templates/two_factor/core/login.html:6
+#: menus.py:7 templates/two_factor/core/login.html:6
 #: templates/two_factor/core/login.html:10
 #: templates/two_factor/core/login.html:73
 msgid "Login"
@@ -122,489 +114,563 @@ msgstr ""
 msgid "Stop impersonation"
 msgstr ""
 
-#: menus.py:35 templates/core/base.html:58
+#: menus.py:35 templates/core/base.html:56
 msgid "Logout"
 msgstr ""
 
 #: menus.py:41
-msgid "Two factor auth"
+msgid "2FA"
 msgstr ""
 
-#: menus.py:50
+#: menus.py:47
 msgid "Me"
 msgstr ""
 
-#: menus.py:61
+#: menus.py:56 templates/dynamic_preferences/form.html:5
+msgid "Preferences"
+msgstr ""
+
+#: menus.py:67
 msgid "Admin"
 msgstr ""
 
-#: menus.py:69 models.py:437 templates/core/announcement/list.html:7
+#: menus.py:75 models.py:479 templates/core/announcement/list.html:7
 #: templates/core/announcement/list.html:8
 msgid "Announcements"
 msgstr ""
 
-#: menus.py:77 templates/core/data_management.html:6
+#: menus.py:86 templates/core/data_management.html:6
 #: templates/core/data_management.html:7
 msgid "Data management"
 msgstr ""
 
-#: menus.py:85 templates/core/system_status.html:5
+#: menus.py:94 templates/core/system_status.html:5
 #: templates/core/system_status.html:7
 msgid "System status"
 msgstr ""
 
-#: menus.py:93
+#: menus.py:105
 msgid "Impersonation"
 msgstr ""
 
-#: menus.py:101
-msgid "Manage school"
+#: menus.py:113
+msgid "Configuration"
 msgstr ""
 
-#: menus.py:109
+#: menus.py:124
 msgid "Backend Admin"
 msgstr ""
 
-#: menus.py:119
+#: menus.py:132
 msgid "People"
 msgstr ""
 
-#: menus.py:142
+#: menus.py:157
 msgid "Persons and accounts"
 msgstr ""
 
-#: menus.py:151
+#: menus.py:168
 msgid "Groups and child groups"
 msgstr ""
 
-#: menus.py:163 templates/core/groups_child_groups.html:7
+#: menus.py:183 templates/core/groups_child_groups.html:7
 #: templates/core/groups_child_groups.html:9
 msgid "Assign child groups to groups"
 msgstr ""
 
-#: menus.py:171
-msgid "Edit school information"
+#: models.py:29
+msgid "Boolean (Yes/No)"
 msgstr ""
 
-#: menus.py:172 templates/core/edit_schoolterm.html:8
-#: templates/core/edit_schoolterm.html:9
-msgid "Edit school term"
+#: models.py:30
+msgid "Text (one line)"
 msgstr ""
 
-#: models.py:33 models.py:559
-msgid "Name"
+#: models.py:32
+msgid "Date and time"
 msgstr ""
 
-#: models.py:35
-msgid "Official name"
+#: models.py:33
+msgid "Decimal number"
 msgstr ""
 
-#: models.py:37
-msgid "Official name of the school, e.g. as given by supervisory authority"
-msgstr ""
-
-#: models.py:53
-msgid "School"
-msgstr ""
-
-#: models.py:54
-msgid "Schools"
+#: models.py:34 models.py:94
+msgid "E-mail address"
 msgstr ""
 
-#: models.py:62
-msgid "Visible caption of the term"
+#: models.py:35
+msgid "Integer"
 msgstr ""
 
-#: models.py:64
-msgid "Effective start date of term"
+#: models.py:36
+msgid "IP address"
 msgstr ""
 
-#: models.py:65
-msgid "Effective end date of term"
+#: models.py:37
+msgid "Boolean or empty (Yes/No/Neither)"
 msgstr ""
 
-#: models.py:85
-msgid "School term"
+#: models.py:38
+msgid "Text (multi-line)"
 msgstr ""
 
-#: models.py:86
-msgid "School terms"
+#: models.py:40
+msgid "URL / Link"
 msgstr ""
 
-#: models.py:96 templates/core/persons_accounts.html:36
+#: models.py:52 templates/core/persons_accounts.html:36
 msgid "Person"
 msgstr ""
 
-#: models.py:99
+#: models.py:55
 msgid "Can view address"
 msgstr ""
 
-#: models.py:100
+#: models.py:56
 msgid "Can view contact details"
 msgstr ""
 
-#: models.py:101
+#: models.py:57
 msgid "Can view photo"
 msgstr ""
 
-#: models.py:102
+#: models.py:58
 msgid "Can view persons groups"
 msgstr ""
 
-#: models.py:103
+#: models.py:59
 msgid "Can view personal details"
 msgstr ""
 
-#: models.py:108
+#: models.py:64
 msgid "female"
 msgstr ""
 
-#: models.py:108
+#: models.py:64
 msgid "male"
 msgstr ""
 
-#: models.py:113
+#: models.py:72
+msgid "Linked user"
+msgstr ""
+
+#: models.py:74
 msgid "Is person active?"
 msgstr ""
 
-#: models.py:115
+#: models.py:76
 msgid "First name"
 msgstr ""
 
-#: models.py:116
+#: models.py:77
 msgid "Last name"
 msgstr ""
 
-#: models.py:118
+#: models.py:79
 msgid "Additional name(s)"
 msgstr ""
 
-#: models.py:122
+#: models.py:83 models.py:255
 msgid "Short name"
 msgstr ""
 
-#: models.py:125
+#: models.py:86
 msgid "Street"
 msgstr ""
 
-#: models.py:126
+#: models.py:87
 msgid "Street number"
 msgstr ""
 
-#: models.py:127
+#: models.py:88
 msgid "Postal code"
 msgstr ""
 
-#: models.py:128
+#: models.py:89
 msgid "Place"
 msgstr ""
 
-#: models.py:130
+#: models.py:91
 msgid "Home phone"
 msgstr ""
 
-#: models.py:131
+#: models.py:92
 msgid "Mobile phone"
 msgstr ""
 
-#: models.py:133
-msgid "E-mail address"
-msgstr ""
-
-#: models.py:135
+#: models.py:96
 msgid "Date of birth"
 msgstr ""
 
-#: models.py:136
+#: models.py:97
 msgid "Sex"
 msgstr ""
 
-#: models.py:138
+#: models.py:99
 msgid "Photo"
 msgstr ""
 
-#: models.py:142
+#: models.py:104
 msgid "Guardians / Parents"
 msgstr ""
 
-#: models.py:147 models.py:310 models.py:327 models.py:406 models.py:574
+#: models.py:111
+msgid "Primary group"
+msgstr ""
+
+#: models.py:114 models.py:341 models.py:365 models.py:448 models.py:634
 msgid "Description"
 msgstr ""
 
-#: models.py:256
+#: models.py:229
+msgid "Title of field"
+msgstr ""
+
+#: models.py:231
+msgid "Type of field"
+msgstr ""
+
+#: models.py:235
+msgid "Addtitional field for groups"
+msgstr ""
+
+#: models.py:236
+msgid "Addtitional fields for groups"
+msgstr ""
+
+#: models.py:247
 msgid "Group"
 msgstr ""
 
-#: models.py:259
+#: models.py:249
 msgid "Can assign child groups to groups"
 msgstr ""
 
-#: models.py:264
-msgid "Long name of group"
+#: models.py:253
+msgid "Long name"
 msgstr ""
 
-#: models.py:265
-msgid "Short name of group"
+#: models.py:263 templates/core/group_full.html:37
+msgid "Members"
 msgstr ""
 
-#: models.py:274
+#: models.py:266 templates/core/group_full.html:34
+msgid "Owners"
+msgstr ""
+
+#: models.py:273
 msgid "Parent groups"
 msgstr ""
 
-#: models.py:278
+#: models.py:281
 msgid "Type of group"
 msgstr ""
 
-#: models.py:309 models.py:326 models.py:405
+#: models.py:285
+msgid "Additional fields"
+msgstr ""
+
+#: models.py:337
+msgid "User"
+msgstr ""
+
+#: models.py:340 models.py:364 models.py:447
 #: templates/core/announcement/list.html:18
 msgid "Title"
 msgstr ""
 
-#: models.py:312
+#: models.py:343
 msgid "Application"
 msgstr ""
 
-#: models.py:318
+#: models.py:349
 msgid "Activity"
 msgstr ""
 
-#: models.py:319
+#: models.py:350
 msgid "Activities"
 msgstr ""
 
-#: models.py:323
+#: models.py:356
 msgid "Sender"
 msgstr ""
 
-#: models.py:328 models.py:407 models.py:560
+#: models.py:361
+msgid "Recipient"
+msgstr ""
+
+#: models.py:366 models.py:614
 msgid "Link"
 msgstr ""
 
-#: models.py:330
+#: models.py:368
 msgid "Read"
 msgstr ""
 
-#: models.py:331
+#: models.py:369
 msgid "Sent"
 msgstr ""
 
-#: models.py:343
+#: models.py:382
 msgid "Notification"
 msgstr ""
 
-#: models.py:344
+#: models.py:383
 msgid "Notifications"
 msgstr ""
 
-#: models.py:410
+#: models.py:449
+msgid "Link to detailed view"
+msgstr ""
+
+#: models.py:452
 msgid "Date and time from when to show"
 msgstr ""
 
-#: models.py:413
+#: models.py:455
 msgid "Date and time until when to show"
 msgstr ""
 
-#: models.py:436
+#: models.py:478
 msgid "Announcement"
 msgstr ""
 
-#: models.py:464
+#: models.py:515
 msgid "Announcement recipient"
 msgstr ""
 
-#: models.py:465
+#: models.py:516
 msgid "Announcement recipients"
 msgstr ""
 
-#: models.py:515
+#: models.py:566
 msgid "Widget Title"
 msgstr ""
 
-#: models.py:516
+#: models.py:567
 msgid "Activate Widget"
 msgstr ""
 
-#: models.py:528
+#: models.py:584
 msgid "Dashboard Widget"
 msgstr ""
 
-#: models.py:529
+#: models.py:585
 msgid "Dashboard Widgets"
 msgstr ""
 
-#: models.py:533
+#: models.py:591
 msgid "Menu ID"
 msgstr ""
 
-#: models.py:534
-msgid "Menu name"
-msgstr ""
-
-#: models.py:551
+#: models.py:603
 msgid "Custom menu"
 msgstr ""
 
-#: models.py:552
+#: models.py:604
 msgid "Custom menus"
 msgstr ""
 
-#: models.py:557
+#: models.py:611
 msgid "Menu"
 msgstr ""
 
-#: models.py:562
+#: models.py:613
+msgid "Name"
+msgstr ""
+
+#: models.py:616
 msgid "Icon"
 msgstr ""
 
-#: models.py:569
+#: models.py:623
 msgid "Custom menu item"
 msgstr ""
 
-#: models.py:570
+#: models.py:624
 msgid "Custom menu items"
 msgstr ""
 
-#: models.py:573
+#: models.py:633
 msgid "Title of type"
 msgstr ""
 
-#: models.py:577
+#: models.py:637
 msgid "Group type"
 msgstr ""
 
-#: models.py:578
+#: models.py:638
 msgid "Group types"
 msgstr ""
 
-#: models.py:585
+#: models.py:647
 msgid "Can view system status"
 msgstr ""
 
-#: models.py:586
+#: models.py:648
 msgid "Can link persons to accounts"
 msgstr ""
 
-#: models.py:587
+#: models.py:649
 msgid "Can manage data"
 msgstr ""
 
-#: models.py:588
+#: models.py:650
 msgid "Can impersonate"
 msgstr ""
 
-#: models.py:589
+#: models.py:651
 msgid "Can use search"
 msgstr ""
 
-#: settings.py:262
-msgid "German"
+#: models.py:652
+msgid "Can change site preferences"
 msgstr ""
 
-#: settings.py:263
-msgid "English"
+#: models.py:653
+msgid "Can change person preferences"
 msgstr ""
 
-#: settings.py:264
-msgid "French"
+#: models.py:654
+msgid "Can change group preferences"
 msgstr ""
 
-#: settings.py:384
+#: preferences.py:26
 msgid "Site title"
 msgstr ""
 
-#: settings.py:385
+#: preferences.py:35
 msgid "Site description"
 msgstr ""
 
-#: settings.py:386
+#: preferences.py:44
 msgid "Primary colour"
 msgstr ""
 
-#: settings.py:387
+#: preferences.py:53
 msgid "Secondary colour"
 msgstr ""
 
-#: settings.py:388
+#: preferences.py:61
+msgid "Logo"
+msgstr ""
+
+#: preferences.py:69
+msgid "Favicon"
+msgstr ""
+
+#: preferences.py:77
+msgid "PWA-Icon"
+msgstr ""
+
+#: preferences.py:86
 msgid "Mail out name"
 msgstr ""
 
-#: settings.py:389
+#: preferences.py:95
 msgid "Mail out address"
 msgstr ""
 
-#: settings.py:390
+#: preferences.py:105
 msgid "Link to privacy policy"
 msgstr ""
 
-#: settings.py:391
+#: preferences.py:115
 msgid "Link to imprint"
 msgstr ""
 
-#: settings.py:392
-msgid "Name format of adresses"
+#: preferences.py:125
+msgid "Name format for addressing"
 msgstr ""
 
-#: settings.py:393
-msgid "Channels to allow for notifications"
+#: preferences.py:141
+msgid "Channels to use for notifications"
 msgstr ""
 
-#: settings.py:394
+#: preferences.py:151
 msgid "Regular expression to match primary group, e.g. '^Class .*'"
 msgstr ""
 
+#: preferences.py:160
+msgid "Display name of the school"
+msgstr ""
+
+#: preferences.py:169
+msgid "Official name of the school, e.g. as given by supervisory authority"
+msgstr ""
+
+#: settings.py:276
+msgid "English"
+msgstr ""
+
+#: settings.py:277
+msgid "German"
+msgstr ""
+
+#: settings.py:278
+msgid "French"
+msgstr ""
+
+#: templates/403.html:10 templates/404.html:10 templates/500.html:10
+msgid "Error"
+msgstr ""
+
 #: templates/403.html:10
-msgid "Error (403): You are not allowed to access the requested page or object."
+msgid ""
+"You are not allowed to access the requested page or\n"
+"          object."
 msgstr ""
 
-#: templates/403.html:12
+#: templates/403.html:13 templates/404.html:17
 msgid ""
 "\n"
-"      If you think this is an error in AlekSIS, please contact your site\n"
-"     administrators:\n"
-"     "
+"            If you think this is an error in AlekSIS, please contact your "
+"site\n"
+"            administrators:\n"
+"          "
 msgstr ""
 
 #: templates/404.html:10
-msgid "Error (404): The requested page or object was not found."
-msgstr ""
-
-#: templates/404.html:12
 msgid ""
-"\n"
-"      If you were redirected by a link on an external page,\n"
-"      it is possible that that link was outdated.\n"
-"     "
+"The requested page or object was not\n"
+"          found."
 msgstr ""
 
-#: templates/404.html:16
+#: templates/404.html:13
 msgid ""
 "\n"
-"      If you think this is an error in AlekSIS, please contact your site\n"
-"      administrators:\n"
-"     "
+"            If you were redirected by a link on an external page,\n"
+"            it is possible that that link was outdated.\n"
+"          "
 msgstr ""
 
 #: templates/500.html:10
-msgid "Error (500): An unexpected error has occured.."
+msgid ""
+"An unexpected error has\n"
+"          occured."
 msgstr ""
 
-#: templates/500.html:12
+#: templates/500.html:13
 msgid ""
 "\n"
-"      Your site administrators will automatically be notified about this\n"
-"     error.\n"
-"     "
+"            Your site administrators will automatically be notified about "
+"this\n"
+"            error. You can also contact them directly:\n"
+"          "
 msgstr ""
 
 #: templates/503.html:10
-msgid "The maintenance mode is currently enabled. Please try again later."
+msgid ""
+"The maintenance mode is currently enabled. Please try again\n"
+"          later."
 msgstr ""
 
-#: templates/503.html:12
+#: templates/503.html:13
 msgid ""
 "\n"
-"      This page is currently unavailable. If this error stays, contact your site administrators:\n"
-"     "
+"            This page is currently unavailable. If this error persists, "
+"contact your site administrators:\n"
+"          "
 msgstr ""
 
 #: templates/core/about.html:6 templates/core/about.html:15
@@ -618,9 +684,11 @@ msgstr ""
 #: templates/core/about.html:17
 msgid ""
 "\n"
-"              This platform is powered by AlekSIS, a web-based school information system (SIS) which can be used\n"
-"              to manage and/or publish organisational subjects of educational institutions. AlekSIS is free software and\n"
-"              can be used by everyone.\n"
+"              This platform is powered by AlekSIS, a web-based school "
+"information system (SIS) which can be used\n"
+"              to manage and/or publish organisational artifacts of "
+"educational institutions. AlekSIS is free software and\n"
+"              can be used by anyone.\n"
 "            "
 msgstr ""
 
@@ -639,8 +707,10 @@ msgstr ""
 #: templates/core/about.html:37
 msgid ""
 "\n"
-"              The core and the official apps of AlekSIS are licenced under the EUPL, version 1.2 or later. For licence\n"
-"              information from third-party apps, if installed, see directly at the respective components below. The\n"
+"              The core and the official apps of AlekSIS are licenced under "
+"the EUPL, version 1.2 or later. For licence\n"
+"              information from third-party apps, if installed, refer to the "
+"respective components below. The\n"
 "              licences are marked like this:\n"
 "            "
 msgstr ""
@@ -703,8 +773,8 @@ msgstr ""
 msgid "Actions"
 msgstr ""
 
-#: templates/core/announcement/list.html:36 templates/core/group_full.html:15
-#: templates/core/person_full.html:18
+#: templates/core/announcement/list.html:36 templates/core/group_full.html:22
+#: templates/core/person_full.html:21
 msgid "Edit"
 msgstr ""
 
@@ -740,28 +810,28 @@ msgid ""
 "            "
 msgstr ""
 
-#: templates/core/base.html:56
+#: templates/core/base.html:54
 msgid "Logged in as"
 msgstr ""
 
-#: templates/core/base.html:79 templates/search/search.html:7
+#: templates/core/base.html:76 templates/search/search.html:7
 #: templates/search/search.html:22
 msgid "Search"
 msgstr ""
 
-#: templates/core/base.html:151
+#: templates/core/base.html:148
 msgid "About AlekSIS — The Free School Information System"
 msgstr ""
 
-#: templates/core/base.html:159
+#: templates/core/base.html:156
 msgid "Impress"
 msgstr ""
 
-#: templates/core/base.html:167
+#: templates/core/base.html:164
 msgid "Privacy Policy"
 msgstr ""
 
-#: templates/core/base_print.html:60
+#: templates/core/base_print.html:62
 msgid "Powered by AlekSIS"
 msgstr ""
 
@@ -773,16 +843,8 @@ msgstr ""
 msgid "Edit person"
 msgstr ""
 
-#: templates/core/edit_school.html:8 templates/core/edit_school.html:9
-msgid "Edit school"
-msgstr ""
-
-#: templates/core/group_full.html:19
-msgid "Owners"
-msgstr ""
-
-#: templates/core/group_full.html:22
-msgid "Members"
+#: templates/core/group_full.html:28 templates/core/person_full.html:28
+msgid "Change preferences"
 msgstr ""
 
 #: templates/core/groups.html:14
@@ -792,8 +854,9 @@ msgstr ""
 #: templates/core/groups_child_groups.html:18
 msgid ""
 "\n"
-"          You can use this to assign child groups to groups. Please use the filters below to select groups you want to\n"
-"          change and click at \"Next\".\n"
+"          You can use this to assign child groups to groups. Please use the "
+"filters below to select groups you want to\n"
+"          change and click \"Next\".\n"
 "        "
 msgstr ""
 
@@ -825,11 +888,16 @@ msgid "Current group:"
 msgstr ""
 
 #: templates/core/groups_child_groups.html:78
+msgid "Please be careful!"
+msgstr ""
+
+#: templates/core/groups_child_groups.html:79
 msgid ""
 "\n"
-"            <strong>Please be careful!</strong><br/>\n"
-"            If you click on \"Back\" or \"Next\" the current group assignments are not saved.\n"
-"            If you click on save, you will overwrite all existing child group relations for this group with what you\n"
+"            If you click \"Back\" or \"Next\" the current group assignments "
+"are not saved.\n"
+"            If you click \"Save\", you will overwrite all existing child "
+"group relations for this group with what you\n"
 "            selected on this page.\n"
 "          "
 msgstr ""
@@ -862,51 +930,45 @@ msgstr ""
 msgid "Home"
 msgstr ""
 
-#: templates/core/index.html:11
-msgid "AlekSIS (School Information System)"
-msgstr ""
-
-#: templates/core/index.html:43
+#: templates/core/index.html:42
 msgid "Last activities"
 msgstr ""
 
-#: templates/core/index.html:61
+#: templates/core/index.html:60
 msgid "No activities available yet."
 msgstr ""
 
-#: templates/core/index.html:66
+#: templates/core/index.html:65
 msgid "Recent notifications"
 msgstr ""
 
-#: templates/core/index.html:82
+#: templates/core/index.html:81
 msgid "More information →"
 msgstr ""
 
-#: templates/core/index.html:89
+#: templates/core/index.html:88
 msgid "No notifications available yet."
 msgstr ""
 
-#: templates/core/no_person.html:11
+#: templates/core/no_person.html:12
 msgid ""
 "\n"
-"          Your user account is not linked to a person. This means you\n"
-"          cannot access any school-related information. Please contact\n"
-"          the managers of AlekSIS at your school.\n"
-"        "
-msgstr ""
-
-#: templates/core/offline.html:6
-msgid "No internet connection."
+"            Your administrator account is not linked to any person. "
+"Therefore,\n"
+"            a dummy person has been linked to your account.\n"
+"          "
 msgstr ""
 
-#: templates/core/offline.html:9
+#: templates/core/no_person.html:19
 msgid ""
 "\n"
-"        There was an error accessing this page. You probably don't have an internet connection. Check to see if your WiFi or mobile data is turned on and try again. If you think you are connected, please contact the system administrators:\n"
-"      "
+"            Your user account is not linked to a person. This means you\n"
+"            cannot access any school-related information. Please contact\n"
+"            the managers of AlekSIS at your school.\n"
+"          "
 msgstr ""
 
-#: templates/core/person_full.html:23
+#: templates/core/person_full.html:34
 msgid "Contact details"
 msgstr ""
 
@@ -919,7 +981,8 @@ msgstr ""
 msgid ""
 "\n"
 "        You can use this form to assign user accounts to persons. Use the\n"
-"        dropdowns to select existing accounts; use the text fields to create new\n"
+"        dropdowns to select existing accounts; use the text fields to create "
+"new\n"
 "        accounts on-the-fly. The latter will create a new account with the\n"
 "        entered username and copy all other details from the person.\n"
 "      "
@@ -938,11 +1001,6 @@ msgstr ""
 msgid "New account"
 msgstr ""
 
-#: templates/core/school_management.html:6
-#: templates/core/school_management.html:7
-msgid "School management"
-msgstr ""
-
 #: templates/core/system_status.html:12
 msgid "System checks"
 msgstr ""
@@ -954,7 +1012,8 @@ msgstr ""
 #: templates/core/system_status.html:23
 msgid ""
 "\n"
-"                Only admin and visitors from internal IPs can access thesite.\n"
+"                Only admin and visitors from internal IPs can access "
+"thesite.\n"
 "              "
 msgstr ""
 
@@ -973,7 +1032,8 @@ msgstr ""
 #: templates/core/system_status.html:47
 msgid ""
 "\n"
-"                The web server throws back debug information on errors. Do not use in production!\n"
+"                The web server throws back debug information on errors. Do "
+"not use in production!\n"
 "              "
 msgstr ""
 
@@ -984,105 +1044,51 @@ msgstr ""
 #: templates/core/system_status.html:56
 msgid ""
 "\n"
-"                Debug mode is disabled. Default error pages are displayed on errors.\n"
+"                Debug mode is disabled. Default error pages are displayed on "
+"errors.\n"
 "              "
 msgstr ""
 
-#: templates/impersonate/list_users.html:8
-msgid "Impersonate user"
-msgstr ""
-
-#: templates/martor/editor.html:27
-msgid "Uploading... please wait..."
-msgstr ""
-
-#: templates/martor/editor.html:36
-msgid "Nothing to preview"
-msgstr ""
-
-#: templates/martor/emoji.html:4
-msgid "Select Emoji to Insert"
+#: templates/dynamic_preferences/form.html:9
+msgid "Site preferences"
 msgstr ""
 
-#: templates/martor/emoji.html:8
-msgid "Preparing emojis..."
+#: templates/dynamic_preferences/form.html:11
+msgid "My preferences"
 msgstr ""
 
-#: templates/martor/guide.html:8
-msgid "Markdown Guide"
-msgstr ""
-
-#: templates/martor/guide.html:9
+#: templates/dynamic_preferences/form.html:13
 #, python-format
-msgid ""
-"This site is powered by Markdown. For full\n"
-"            documentation,\n"
-"            <a href=\"%(doc_url)s\" target=\"_blank\">click here</a>"
-msgstr ""
-
-#: templates/martor/guide.html:15 templates/martor/toolbar.html:42
-msgid "Code"
-msgstr ""
-
-#: templates/martor/guide.html:16
-msgid "Or"
-msgstr ""
-
-#: templates/martor/guide.html:19
-msgid "... to Get"
-msgstr ""
-
-#: templates/martor/toolbar.html:3
-msgid "Bold"
+msgid "Preferences for %(instance)s"
 msgstr ""
 
-#: templates/martor/toolbar.html:6
-msgid "Italic"
+#: templates/dynamic_preferences/form.html:25
+msgid "Save preferences"
 msgstr ""
 
-#: templates/martor/toolbar.html:10
-msgid "Horizontal Line"
+#: templates/dynamic_preferences/sections.html:7
+msgid "All"
 msgstr ""
 
-#: templates/martor/toolbar.html:15
-msgid "Heading"
-msgstr ""
-
-#: templates/martor/toolbar.html:20 templates/martor/toolbar.html:23
-#: templates/martor/toolbar.html:26
-msgid "H"
-msgstr ""
-
-#: templates/martor/toolbar.html:31
-msgid "Pre or Code"
-msgstr ""
-
-#: templates/martor/toolbar.html:38
-msgid "Pre"
-msgstr ""
-
-#: templates/martor/toolbar.html:48
-msgid "Quote"
-msgstr ""
-
-#: templates/martor/toolbar.html:52
-msgid "Unordered List"
-msgstr ""
-
-#: templates/martor/toolbar.html:56
-msgid "Ordered List"
-msgstr ""
-
-#: templates/martor/toolbar.html:60
-msgid "URL/Link"
+#: templates/impersonate/list_users.html:8
+msgid "Impersonate user"
 msgstr ""
 
-#: templates/martor/toolbar.html:82
-msgid "Full Screen"
+#: templates/offline.html:6
+msgid ""
+"No internet\n"
+"    connection."
 msgstr ""
 
-#: templates/martor/toolbar.html:86
-msgid "Markdown Guide (Help)"
+#: templates/offline.html:10
+msgid ""
+"\n"
+"      There was an error accessing this page. 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"
+"    "
 msgstr ""
 
 #: templates/search/search.html:8
@@ -1105,6 +1111,32 @@ msgstr ""
 msgid "Please enter a search term above."
 msgstr ""
 
+#: templates/templated_email/notification.email:3
+msgid "New notification for"
+msgstr ""
+
+#: templates/templated_email/notification.email:7
+msgid "Dear"
+msgstr ""
+
+#: templates/templated_email/notification.email:8
+msgid "we got a new notification for you:"
+msgstr ""
+
+#: templates/templated_email/notification.email:12
+msgid "More information"
+msgstr ""
+
+#: templates/templated_email/notification.email:16
+#, python-format
+msgid ""
+"\n"
+"    <p>By %(trans_sender)s at %(trans_created_at)s</p>\n"
+"\n"
+"    <i>Your AlekSIS team</i>\n"
+"    "
+msgstr ""
+
 #: templates/two_factor/_base_focus.html:6
 #: templates/two_factor/core/otp_required.html:22
 #: templates/two_factor/core/setup.html:5
@@ -1127,8 +1159,10 @@ msgid ""
 "\n"
 "        Backup tokens can be used when your primary and backup\n"
 "        phone numbers aren't available. The backup tokens below can be used\n"
-"        for login verification. If you've used up all your backup tokens, you\n"
-"        can generate a new set of backup tokens. Only the backup tokens shown\n"
+"        for login verification. If you've used up all your backup tokens, "
+"you\n"
+"        can generate a new set of backup tokens. Only the backup tokens "
+"shown\n"
 "        below will be valid.\n"
 "      "
 msgstr ""
@@ -1153,7 +1187,8 @@ msgid "Generate Tokens"
 msgstr ""
 
 #: templates/two_factor/core/login.html:16
-msgid "You have no permission to view this page. Please login with an other account."
+msgid ""
+"You have no permission to view this page. Please login with an other account."
 msgstr ""
 
 #: templates/two_factor/core/login.html:25
@@ -1181,7 +1216,8 @@ msgstr ""
 #: templates/two_factor/core/login.html:38
 msgid ""
 "Use this form for entering backup tokens for logging in.\n"
-"            These tokens have been generated for you to print and keep safe. Please\n"
+"            These tokens have been generated for you to print and keep safe. "
+"Please\n"
 "            enter one of these backup tokens to login to your account."
 msgstr ""
 
@@ -1204,7 +1240,8 @@ msgstr ""
 #: templates/two_factor/core/otp_required.html:10
 msgid ""
 "The page you requested, enforces users to verify using\n"
-"          two-factor authentication for security reasons. You need to enable these\n"
+"          two-factor authentication for security reasons. You need to enable "
+"these\n"
 "          security features in order to access this page."
 msgstr ""
 
@@ -1281,7 +1318,8 @@ msgstr ""
 #: templates/two_factor/core/setup.html:50
 msgid ""
 "\n"
-"            We are calling your phone right now, please enter the digits you hear.\n"
+"            We are calling your phone right now, please enter the digits you "
+"hear.\n"
 "          "
 msgstr ""
 
@@ -1295,9 +1333,12 @@ msgstr ""
 #: templates/two_factor/core/setup.html:63
 msgid ""
 "\n"
-"          We've encountered an issue with the selected authentication method. Please\n"
-"          go back and verify that you entered your information correctly, try\n"
-"          again, or use a different authentication method instead. If the issue\n"
+"          We've encountered an issue with the selected authentication "
+"method. Please\n"
+"          go back and verify that you entered your information correctly, "
+"try\n"
+"          again, or use a different authentication method instead. If the "
+"issue\n"
 "          persists, contact the site administrator.\n"
 "        "
 msgstr ""
@@ -1319,7 +1360,8 @@ msgstr ""
 #: templates/two_factor/core/setup_complete.html:14
 msgid ""
 "\n"
-"        Congratulations, you've successfully enabled two-factor authentication.\n"
+"        Congratulations, you've successfully enabled two-factor "
+"authentication.\n"
 "      "
 msgstr ""
 
@@ -1337,7 +1379,8 @@ msgstr ""
 msgid ""
 "\n"
 "          However, it might happen that you don't have access to\n"
-"          your primary token device. To enable account recovery, generate backup codes\n"
+"          your primary token device. To enable account recovery, generate "
+"backup codes\n"
 "          or add a phone number.\n"
 "        "
 msgstr ""
@@ -1355,7 +1398,9 @@ msgid "Disable Two-Factor Authentication"
 msgstr ""
 
 #: templates/two_factor/profile/disable.html:12
-msgid "You are about to disable two-factor authentication. This weakens your account security, are you sure?"
+msgid ""
+"You are about to disable two-factor authentication. This weakens your "
+"account security, are you sure?"
 msgstr ""
 
 #: templates/two_factor/profile/disable.html:26
@@ -1434,42 +1479,34 @@ msgid ""
 "      "
 msgstr ""
 
-#: util/notifications.py:66
+#: util/notifications.py:65
 msgid "E-Mail"
 msgstr ""
 
-#: util/notifications.py:67
+#: util/notifications.py:66
 msgid "SMS"
 msgstr ""
 
-#: views.py:205
+#: views.py:212
 msgid "The child groups were successfully saved."
 msgstr ""
 
-#: views.py:235
+#: views.py:240
 msgid "The person has been saved."
 msgstr ""
 
-#: views.py:265
+#: views.py:276
 msgid "The group has been saved."
 msgstr ""
 
-#: views.py:306
-msgid "The school has been saved."
-msgstr ""
-
-#: views.py:325
-msgid "The term has been saved."
-msgstr ""
-
-#: views.py:342
-msgid "You are not allowed to mark notifications from other users as read!"
-msgstr ""
-
-#: views.py:383
+#: views.py:348
 msgid "The announcement has been saved."
 msgstr ""
 
-#: views.py:396
+#: views.py:364
 msgid "The announcement has been deleted."
 msgstr ""
+
+#: views.py:435
+msgid "The preferences have been saved successfully."
+msgstr ""
diff --git a/aleksis/core/locale/tr_TR/LC_MESSAGES/django.po b/aleksis/core/locale/tr_TR/LC_MESSAGES/django.po
index 5916059b505b17617956b0368023cbd423836719..dc3dca38a072d490b1588bae2ccf1c4a38bf344c 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: 2020-04-28 13:31+0000\n"
+"POT-Creation-Date: 2020-05-03 15:05+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,94 +17,86 @@ msgstr ""
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: forms.py:38 forms.py:113
+#: forms.py:46
 msgid "You cannot set a new username when also selecting an existing user."
 msgstr ""
 
-#: forms.py:41 forms.py:116
+#: forms.py:50
 msgid "This username is already in use."
 msgstr ""
 
-#: forms.py:61
+#: forms.py:74
 msgid "Base data"
 msgstr ""
 
-#: forms.py:67
+#: forms.py:80
 msgid "Address"
 msgstr ""
 
-#: forms.py:68
+#: forms.py:81
 msgid "Contact data"
 msgstr ""
 
-#: forms.py:70
+#: forms.py:83
 msgid "Advanced personal data"
 msgstr ""
 
-#: forms.py:103
+#: forms.py:116
 msgid "New user"
 msgstr ""
 
-#: forms.py:103
+#: forms.py:116
 msgid "Create a new account"
 msgstr ""
 
-#: forms.py:130
+#: forms.py:128
 msgid "Common data"
 msgstr ""
 
-#: forms.py:131 forms.py:188 menus.py:126 models.py:97
+#: forms.py:129 forms.py:169 menus.py:141 models.py:53
 #: templates/core/persons.html:8 templates/core/persons.html:9
 msgid "Persons"
 msgstr ""
 
-#: forms.py:160
-msgid "School name"
-msgstr ""
-
-#: forms.py:161 models.py:40
-msgid "School logo"
-msgstr ""
-
-#: forms.py:181 forms.py:184
+#: forms.py:162 forms.py:165 models.py:31
 msgid "Date"
 msgstr ""
 
-#: forms.py:182 forms.py:185
+#: forms.py:163 forms.py:166 models.py:39
 msgid "Time"
 msgstr ""
 
-#: forms.py:190 menus.py:134 models.py:257 templates/core/groups.html:8
-#: templates/core/groups.html:9 templates/core/person_full.html:95
+#: forms.py:171 menus.py:149 models.py:248 templates/core/groups.html:8
+#: templates/core/groups.html:9 templates/core/person_full.html:106
 msgid "Groups"
 msgstr ""
 
-#: forms.py:194
+#: forms.py:175
 msgid "From when until when should the announcement be displayed?"
 msgstr ""
 
-#: forms.py:197
+#: forms.py:178
 msgid "Who should see the announcement?"
 msgstr ""
 
-#: forms.py:198
+#: forms.py:179
 msgid "Write your announcement:"
 msgstr ""
 
-#: forms.py:237
-msgid "You are not allowed to create announcements which are only valid in the past."
+#: forms.py:216
+msgid ""
+"You are not allowed to create announcements which are only valid in the past."
 msgstr ""
 
-#: forms.py:241
+#: forms.py:220
 msgid "The from date and time must be earlier then the until date and time."
 msgstr ""
 
-#: forms.py:249
+#: forms.py:229
 msgid "You need at least one recipient."
 msgstr ""
 
-#: menus.py:7 templates/registration/login.html:21
-#: templates/two_factor/core/login.html:6
+#: menus.py:7 templates/two_factor/core/login.html:6
 #: templates/two_factor/core/login.html:10
 #: templates/two_factor/core/login.html:73
 msgid "Login"
@@ -122,489 +114,563 @@ msgstr ""
 msgid "Stop impersonation"
 msgstr ""
 
-#: menus.py:35 templates/core/base.html:58
+#: menus.py:35 templates/core/base.html:56
 msgid "Logout"
 msgstr ""
 
 #: menus.py:41
-msgid "Two factor auth"
+msgid "2FA"
 msgstr ""
 
-#: menus.py:50
+#: menus.py:47
 msgid "Me"
 msgstr ""
 
-#: menus.py:61
+#: menus.py:56 templates/dynamic_preferences/form.html:5
+msgid "Preferences"
+msgstr ""
+
+#: menus.py:67
 msgid "Admin"
 msgstr ""
 
-#: menus.py:69 models.py:437 templates/core/announcement/list.html:7
+#: menus.py:75 models.py:479 templates/core/announcement/list.html:7
 #: templates/core/announcement/list.html:8
 msgid "Announcements"
 msgstr ""
 
-#: menus.py:77 templates/core/data_management.html:6
+#: menus.py:86 templates/core/data_management.html:6
 #: templates/core/data_management.html:7
 msgid "Data management"
 msgstr ""
 
-#: menus.py:85 templates/core/system_status.html:5
+#: menus.py:94 templates/core/system_status.html:5
 #: templates/core/system_status.html:7
 msgid "System status"
 msgstr ""
 
-#: menus.py:93
+#: menus.py:105
 msgid "Impersonation"
 msgstr ""
 
-#: menus.py:101
-msgid "Manage school"
+#: menus.py:113
+msgid "Configuration"
 msgstr ""
 
-#: menus.py:109
+#: menus.py:124
 msgid "Backend Admin"
 msgstr ""
 
-#: menus.py:119
+#: menus.py:132
 msgid "People"
 msgstr ""
 
-#: menus.py:142
+#: menus.py:157
 msgid "Persons and accounts"
 msgstr ""
 
-#: menus.py:151
+#: menus.py:168
 msgid "Groups and child groups"
 msgstr ""
 
-#: menus.py:163 templates/core/groups_child_groups.html:7
+#: menus.py:183 templates/core/groups_child_groups.html:7
 #: templates/core/groups_child_groups.html:9
 msgid "Assign child groups to groups"
 msgstr ""
 
-#: menus.py:171
-msgid "Edit school information"
+#: models.py:29
+msgid "Boolean (Yes/No)"
 msgstr ""
 
-#: menus.py:172 templates/core/edit_schoolterm.html:8
-#: templates/core/edit_schoolterm.html:9
-msgid "Edit school term"
+#: models.py:30
+msgid "Text (one line)"
 msgstr ""
 
-#: models.py:33 models.py:559
-msgid "Name"
+#: models.py:32
+msgid "Date and time"
 msgstr ""
 
-#: models.py:35
-msgid "Official name"
+#: models.py:33
+msgid "Decimal number"
 msgstr ""
 
-#: models.py:37
-msgid "Official name of the school, e.g. as given by supervisory authority"
-msgstr ""
-
-#: models.py:53
-msgid "School"
-msgstr ""
-
-#: models.py:54
-msgid "Schools"
+#: models.py:34 models.py:94
+msgid "E-mail address"
 msgstr ""
 
-#: models.py:62
-msgid "Visible caption of the term"
+#: models.py:35
+msgid "Integer"
 msgstr ""
 
-#: models.py:64
-msgid "Effective start date of term"
+#: models.py:36
+msgid "IP address"
 msgstr ""
 
-#: models.py:65
-msgid "Effective end date of term"
+#: models.py:37
+msgid "Boolean or empty (Yes/No/Neither)"
 msgstr ""
 
-#: models.py:85
-msgid "School term"
+#: models.py:38
+msgid "Text (multi-line)"
 msgstr ""
 
-#: models.py:86
-msgid "School terms"
+#: models.py:40
+msgid "URL / Link"
 msgstr ""
 
-#: models.py:96 templates/core/persons_accounts.html:36
+#: models.py:52 templates/core/persons_accounts.html:36
 msgid "Person"
 msgstr ""
 
-#: models.py:99
+#: models.py:55
 msgid "Can view address"
 msgstr ""
 
-#: models.py:100
+#: models.py:56
 msgid "Can view contact details"
 msgstr ""
 
-#: models.py:101
+#: models.py:57
 msgid "Can view photo"
 msgstr ""
 
-#: models.py:102
+#: models.py:58
 msgid "Can view persons groups"
 msgstr ""
 
-#: models.py:103
+#: models.py:59
 msgid "Can view personal details"
 msgstr ""
 
-#: models.py:108
+#: models.py:64
 msgid "female"
 msgstr ""
 
-#: models.py:108
+#: models.py:64
 msgid "male"
 msgstr ""
 
-#: models.py:113
+#: models.py:72
+msgid "Linked user"
+msgstr ""
+
+#: models.py:74
 msgid "Is person active?"
 msgstr ""
 
-#: models.py:115
+#: models.py:76
 msgid "First name"
 msgstr ""
 
-#: models.py:116
+#: models.py:77
 msgid "Last name"
 msgstr ""
 
-#: models.py:118
+#: models.py:79
 msgid "Additional name(s)"
 msgstr ""
 
-#: models.py:122
+#: models.py:83 models.py:255
 msgid "Short name"
 msgstr ""
 
-#: models.py:125
+#: models.py:86
 msgid "Street"
 msgstr ""
 
-#: models.py:126
+#: models.py:87
 msgid "Street number"
 msgstr ""
 
-#: models.py:127
+#: models.py:88
 msgid "Postal code"
 msgstr ""
 
-#: models.py:128
+#: models.py:89
 msgid "Place"
 msgstr ""
 
-#: models.py:130
+#: models.py:91
 msgid "Home phone"
 msgstr ""
 
-#: models.py:131
+#: models.py:92
 msgid "Mobile phone"
 msgstr ""
 
-#: models.py:133
-msgid "E-mail address"
-msgstr ""
-
-#: models.py:135
+#: models.py:96
 msgid "Date of birth"
 msgstr ""
 
-#: models.py:136
+#: models.py:97
 msgid "Sex"
 msgstr ""
 
-#: models.py:138
+#: models.py:99
 msgid "Photo"
 msgstr ""
 
-#: models.py:142
+#: models.py:104
 msgid "Guardians / Parents"
 msgstr ""
 
-#: models.py:147 models.py:310 models.py:327 models.py:406 models.py:574
+#: models.py:111
+msgid "Primary group"
+msgstr ""
+
+#: models.py:114 models.py:341 models.py:365 models.py:448 models.py:634
 msgid "Description"
 msgstr ""
 
-#: models.py:256
+#: models.py:229
+msgid "Title of field"
+msgstr ""
+
+#: models.py:231
+msgid "Type of field"
+msgstr ""
+
+#: models.py:235
+msgid "Addtitional field for groups"
+msgstr ""
+
+#: models.py:236
+msgid "Addtitional fields for groups"
+msgstr ""
+
+#: models.py:247
 msgid "Group"
 msgstr ""
 
-#: models.py:259
+#: models.py:249
 msgid "Can assign child groups to groups"
 msgstr ""
 
-#: models.py:264
-msgid "Long name of group"
+#: models.py:253
+msgid "Long name"
 msgstr ""
 
-#: models.py:265
-msgid "Short name of group"
+#: models.py:263 templates/core/group_full.html:37
+msgid "Members"
 msgstr ""
 
-#: models.py:274
+#: models.py:266 templates/core/group_full.html:34
+msgid "Owners"
+msgstr ""
+
+#: models.py:273
 msgid "Parent groups"
 msgstr ""
 
-#: models.py:278
+#: models.py:281
 msgid "Type of group"
 msgstr ""
 
-#: models.py:309 models.py:326 models.py:405
+#: models.py:285
+msgid "Additional fields"
+msgstr ""
+
+#: models.py:337
+msgid "User"
+msgstr ""
+
+#: models.py:340 models.py:364 models.py:447
 #: templates/core/announcement/list.html:18
 msgid "Title"
 msgstr ""
 
-#: models.py:312
+#: models.py:343
 msgid "Application"
 msgstr ""
 
-#: models.py:318
+#: models.py:349
 msgid "Activity"
 msgstr ""
 
-#: models.py:319
+#: models.py:350
 msgid "Activities"
 msgstr ""
 
-#: models.py:323
+#: models.py:356
 msgid "Sender"
 msgstr ""
 
-#: models.py:328 models.py:407 models.py:560
+#: models.py:361
+msgid "Recipient"
+msgstr ""
+
+#: models.py:366 models.py:614
 msgid "Link"
 msgstr ""
 
-#: models.py:330
+#: models.py:368
 msgid "Read"
 msgstr ""
 
-#: models.py:331
+#: models.py:369
 msgid "Sent"
 msgstr ""
 
-#: models.py:343
+#: models.py:382
 msgid "Notification"
 msgstr ""
 
-#: models.py:344
+#: models.py:383
 msgid "Notifications"
 msgstr ""
 
-#: models.py:410
+#: models.py:449
+msgid "Link to detailed view"
+msgstr ""
+
+#: models.py:452
 msgid "Date and time from when to show"
 msgstr ""
 
-#: models.py:413
+#: models.py:455
 msgid "Date and time until when to show"
 msgstr ""
 
-#: models.py:436
+#: models.py:478
 msgid "Announcement"
 msgstr ""
 
-#: models.py:464
+#: models.py:515
 msgid "Announcement recipient"
 msgstr ""
 
-#: models.py:465
+#: models.py:516
 msgid "Announcement recipients"
 msgstr ""
 
-#: models.py:515
+#: models.py:566
 msgid "Widget Title"
 msgstr ""
 
-#: models.py:516
+#: models.py:567
 msgid "Activate Widget"
 msgstr ""
 
-#: models.py:528
+#: models.py:584
 msgid "Dashboard Widget"
 msgstr ""
 
-#: models.py:529
+#: models.py:585
 msgid "Dashboard Widgets"
 msgstr ""
 
-#: models.py:533
+#: models.py:591
 msgid "Menu ID"
 msgstr ""
 
-#: models.py:534
-msgid "Menu name"
-msgstr ""
-
-#: models.py:551
+#: models.py:603
 msgid "Custom menu"
 msgstr ""
 
-#: models.py:552
+#: models.py:604
 msgid "Custom menus"
 msgstr ""
 
-#: models.py:557
+#: models.py:611
 msgid "Menu"
 msgstr ""
 
-#: models.py:562
+#: models.py:613
+msgid "Name"
+msgstr ""
+
+#: models.py:616
 msgid "Icon"
 msgstr ""
 
-#: models.py:569
+#: models.py:623
 msgid "Custom menu item"
 msgstr ""
 
-#: models.py:570
+#: models.py:624
 msgid "Custom menu items"
 msgstr ""
 
-#: models.py:573
+#: models.py:633
 msgid "Title of type"
 msgstr ""
 
-#: models.py:577
+#: models.py:637
 msgid "Group type"
 msgstr ""
 
-#: models.py:578
+#: models.py:638
 msgid "Group types"
 msgstr ""
 
-#: models.py:585
+#: models.py:647
 msgid "Can view system status"
 msgstr ""
 
-#: models.py:586
+#: models.py:648
 msgid "Can link persons to accounts"
 msgstr ""
 
-#: models.py:587
+#: models.py:649
 msgid "Can manage data"
 msgstr ""
 
-#: models.py:588
+#: models.py:650
 msgid "Can impersonate"
 msgstr ""
 
-#: models.py:589
+#: models.py:651
 msgid "Can use search"
 msgstr ""
 
-#: settings.py:262
-msgid "German"
+#: models.py:652
+msgid "Can change site preferences"
 msgstr ""
 
-#: settings.py:263
-msgid "English"
+#: models.py:653
+msgid "Can change person preferences"
 msgstr ""
 
-#: settings.py:264
-msgid "French"
+#: models.py:654
+msgid "Can change group preferences"
 msgstr ""
 
-#: settings.py:384
+#: preferences.py:26
 msgid "Site title"
 msgstr ""
 
-#: settings.py:385
+#: preferences.py:35
 msgid "Site description"
 msgstr ""
 
-#: settings.py:386
+#: preferences.py:44
 msgid "Primary colour"
 msgstr ""
 
-#: settings.py:387
+#: preferences.py:53
 msgid "Secondary colour"
 msgstr ""
 
-#: settings.py:388
+#: preferences.py:61
+msgid "Logo"
+msgstr ""
+
+#: preferences.py:69
+msgid "Favicon"
+msgstr ""
+
+#: preferences.py:77
+msgid "PWA-Icon"
+msgstr ""
+
+#: preferences.py:86
 msgid "Mail out name"
 msgstr ""
 
-#: settings.py:389
+#: preferences.py:95
 msgid "Mail out address"
 msgstr ""
 
-#: settings.py:390
+#: preferences.py:105
 msgid "Link to privacy policy"
 msgstr ""
 
-#: settings.py:391
+#: preferences.py:115
 msgid "Link to imprint"
 msgstr ""
 
-#: settings.py:392
-msgid "Name format of adresses"
+#: preferences.py:125
+msgid "Name format for addressing"
 msgstr ""
 
-#: settings.py:393
-msgid "Channels to allow for notifications"
+#: preferences.py:141
+msgid "Channels to use for notifications"
 msgstr ""
 
-#: settings.py:394
+#: preferences.py:151
 msgid "Regular expression to match primary group, e.g. '^Class .*'"
 msgstr ""
 
+#: preferences.py:160
+msgid "Display name of the school"
+msgstr ""
+
+#: preferences.py:169
+msgid "Official name of the school, e.g. as given by supervisory authority"
+msgstr ""
+
+#: settings.py:276
+msgid "English"
+msgstr ""
+
+#: settings.py:277
+msgid "German"
+msgstr ""
+
+#: settings.py:278
+msgid "French"
+msgstr ""
+
+#: templates/403.html:10 templates/404.html:10 templates/500.html:10
+msgid "Error"
+msgstr ""
+
 #: templates/403.html:10
-msgid "Error (403): You are not allowed to access the requested page or object."
+msgid ""
+"You are not allowed to access the requested page or\n"
+"          object."
 msgstr ""
 
-#: templates/403.html:12
+#: templates/403.html:13 templates/404.html:17
 msgid ""
 "\n"
-"      If you think this is an error in AlekSIS, please contact your site\n"
-"     administrators:\n"
-"     "
+"            If you think this is an error in AlekSIS, please contact your "
+"site\n"
+"            administrators:\n"
+"          "
 msgstr ""
 
 #: templates/404.html:10
-msgid "Error (404): The requested page or object was not found."
-msgstr ""
-
-#: templates/404.html:12
 msgid ""
-"\n"
-"      If you were redirected by a link on an external page,\n"
-"      it is possible that that link was outdated.\n"
-"     "
+"The requested page or object was not\n"
+"          found."
 msgstr ""
 
-#: templates/404.html:16
+#: templates/404.html:13
 msgid ""
 "\n"
-"      If you think this is an error in AlekSIS, please contact your site\n"
-"      administrators:\n"
-"     "
+"            If you were redirected by a link on an external page,\n"
+"            it is possible that that link was outdated.\n"
+"          "
 msgstr ""
 
 #: templates/500.html:10
-msgid "Error (500): An unexpected error has occured.."
+msgid ""
+"An unexpected error has\n"
+"          occured."
 msgstr ""
 
-#: templates/500.html:12
+#: templates/500.html:13
 msgid ""
 "\n"
-"      Your site administrators will automatically be notified about this\n"
-"     error.\n"
-"     "
+"            Your site administrators will automatically be notified about "
+"this\n"
+"            error. You can also contact them directly:\n"
+"          "
 msgstr ""
 
 #: templates/503.html:10
-msgid "The maintenance mode is currently enabled. Please try again later."
+msgid ""
+"The maintenance mode is currently enabled. Please try again\n"
+"          later."
 msgstr ""
 
-#: templates/503.html:12
+#: templates/503.html:13
 msgid ""
 "\n"
-"      This page is currently unavailable. If this error stays, contact your site administrators:\n"
-"     "
+"            This page is currently unavailable. If this error persists, "
+"contact your site administrators:\n"
+"          "
 msgstr ""
 
 #: templates/core/about.html:6 templates/core/about.html:15
@@ -618,9 +684,11 @@ msgstr ""
 #: templates/core/about.html:17
 msgid ""
 "\n"
-"              This platform is powered by AlekSIS, a web-based school information system (SIS) which can be used\n"
-"              to manage and/or publish organisational subjects of educational institutions. AlekSIS is free software and\n"
-"              can be used by everyone.\n"
+"              This platform is powered by AlekSIS, a web-based school "
+"information system (SIS) which can be used\n"
+"              to manage and/or publish organisational artifacts of "
+"educational institutions. AlekSIS is free software and\n"
+"              can be used by anyone.\n"
 "            "
 msgstr ""
 
@@ -639,8 +707,10 @@ msgstr ""
 #: templates/core/about.html:37
 msgid ""
 "\n"
-"              The core and the official apps of AlekSIS are licenced under the EUPL, version 1.2 or later. For licence\n"
-"              information from third-party apps, if installed, see directly at the respective components below. The\n"
+"              The core and the official apps of AlekSIS are licenced under "
+"the EUPL, version 1.2 or later. For licence\n"
+"              information from third-party apps, if installed, refer to the "
+"respective components below. The\n"
 "              licences are marked like this:\n"
 "            "
 msgstr ""
@@ -703,8 +773,8 @@ msgstr ""
 msgid "Actions"
 msgstr ""
 
-#: templates/core/announcement/list.html:36 templates/core/group_full.html:15
-#: templates/core/person_full.html:18
+#: templates/core/announcement/list.html:36 templates/core/group_full.html:22
+#: templates/core/person_full.html:21
 msgid "Edit"
 msgstr ""
 
@@ -740,28 +810,28 @@ msgid ""
 "            "
 msgstr ""
 
-#: templates/core/base.html:56
+#: templates/core/base.html:54
 msgid "Logged in as"
 msgstr ""
 
-#: templates/core/base.html:79 templates/search/search.html:7
+#: templates/core/base.html:76 templates/search/search.html:7
 #: templates/search/search.html:22
 msgid "Search"
 msgstr ""
 
-#: templates/core/base.html:151
+#: templates/core/base.html:148
 msgid "About AlekSIS — The Free School Information System"
 msgstr ""
 
-#: templates/core/base.html:159
+#: templates/core/base.html:156
 msgid "Impress"
 msgstr ""
 
-#: templates/core/base.html:167
+#: templates/core/base.html:164
 msgid "Privacy Policy"
 msgstr ""
 
-#: templates/core/base_print.html:60
+#: templates/core/base_print.html:62
 msgid "Powered by AlekSIS"
 msgstr ""
 
@@ -773,16 +843,8 @@ msgstr ""
 msgid "Edit person"
 msgstr ""
 
-#: templates/core/edit_school.html:8 templates/core/edit_school.html:9
-msgid "Edit school"
-msgstr ""
-
-#: templates/core/group_full.html:19
-msgid "Owners"
-msgstr ""
-
-#: templates/core/group_full.html:22
-msgid "Members"
+#: templates/core/group_full.html:28 templates/core/person_full.html:28
+msgid "Change preferences"
 msgstr ""
 
 #: templates/core/groups.html:14
@@ -792,8 +854,9 @@ msgstr ""
 #: templates/core/groups_child_groups.html:18
 msgid ""
 "\n"
-"          You can use this to assign child groups to groups. Please use the filters below to select groups you want to\n"
-"          change and click at \"Next\".\n"
+"          You can use this to assign child groups to groups. Please use the "
+"filters below to select groups you want to\n"
+"          change and click \"Next\".\n"
 "        "
 msgstr ""
 
@@ -825,11 +888,16 @@ msgid "Current group:"
 msgstr ""
 
 #: templates/core/groups_child_groups.html:78
+msgid "Please be careful!"
+msgstr ""
+
+#: templates/core/groups_child_groups.html:79
 msgid ""
 "\n"
-"            <strong>Please be careful!</strong><br/>\n"
-"            If you click on \"Back\" or \"Next\" the current group assignments are not saved.\n"
-"            If you click on save, you will overwrite all existing child group relations for this group with what you\n"
+"            If you click \"Back\" or \"Next\" the current group assignments "
+"are not saved.\n"
+"            If you click \"Save\", you will overwrite all existing child "
+"group relations for this group with what you\n"
 "            selected on this page.\n"
 "          "
 msgstr ""
@@ -862,51 +930,45 @@ msgstr ""
 msgid "Home"
 msgstr ""
 
-#: templates/core/index.html:11
-msgid "AlekSIS (School Information System)"
-msgstr ""
-
-#: templates/core/index.html:43
+#: templates/core/index.html:42
 msgid "Last activities"
 msgstr ""
 
-#: templates/core/index.html:61
+#: templates/core/index.html:60
 msgid "No activities available yet."
 msgstr ""
 
-#: templates/core/index.html:66
+#: templates/core/index.html:65
 msgid "Recent notifications"
 msgstr ""
 
-#: templates/core/index.html:82
+#: templates/core/index.html:81
 msgid "More information →"
 msgstr ""
 
-#: templates/core/index.html:89
+#: templates/core/index.html:88
 msgid "No notifications available yet."
 msgstr ""
 
-#: templates/core/no_person.html:11
+#: templates/core/no_person.html:12
 msgid ""
 "\n"
-"          Your user account is not linked to a person. This means you\n"
-"          cannot access any school-related information. Please contact\n"
-"          the managers of AlekSIS at your school.\n"
-"        "
-msgstr ""
-
-#: templates/core/offline.html:6
-msgid "No internet connection."
+"            Your administrator account is not linked to any person. "
+"Therefore,\n"
+"            a dummy person has been linked to your account.\n"
+"          "
 msgstr ""
 
-#: templates/core/offline.html:9
+#: templates/core/no_person.html:19
 msgid ""
 "\n"
-"        There was an error accessing this page. You probably don't have an internet connection. Check to see if your WiFi or mobile data is turned on and try again. If you think you are connected, please contact the system administrators:\n"
-"      "
+"            Your user account is not linked to a person. This means you\n"
+"            cannot access any school-related information. Please contact\n"
+"            the managers of AlekSIS at your school.\n"
+"          "
 msgstr ""
 
-#: templates/core/person_full.html:23
+#: templates/core/person_full.html:34
 msgid "Contact details"
 msgstr ""
 
@@ -919,7 +981,8 @@ msgstr ""
 msgid ""
 "\n"
 "        You can use this form to assign user accounts to persons. Use the\n"
-"        dropdowns to select existing accounts; use the text fields to create new\n"
+"        dropdowns to select existing accounts; use the text fields to create "
+"new\n"
 "        accounts on-the-fly. The latter will create a new account with the\n"
 "        entered username and copy all other details from the person.\n"
 "      "
@@ -938,11 +1001,6 @@ msgstr ""
 msgid "New account"
 msgstr ""
 
-#: templates/core/school_management.html:6
-#: templates/core/school_management.html:7
-msgid "School management"
-msgstr ""
-
 #: templates/core/system_status.html:12
 msgid "System checks"
 msgstr ""
@@ -954,7 +1012,8 @@ msgstr ""
 #: templates/core/system_status.html:23
 msgid ""
 "\n"
-"                Only admin and visitors from internal IPs can access thesite.\n"
+"                Only admin and visitors from internal IPs can access "
+"thesite.\n"
 "              "
 msgstr ""
 
@@ -973,7 +1032,8 @@ msgstr ""
 #: templates/core/system_status.html:47
 msgid ""
 "\n"
-"                The web server throws back debug information on errors. Do not use in production!\n"
+"                The web server throws back debug information on errors. Do "
+"not use in production!\n"
 "              "
 msgstr ""
 
@@ -984,105 +1044,51 @@ msgstr ""
 #: templates/core/system_status.html:56
 msgid ""
 "\n"
-"                Debug mode is disabled. Default error pages are displayed on errors.\n"
+"                Debug mode is disabled. Default error pages are displayed on "
+"errors.\n"
 "              "
 msgstr ""
 
-#: templates/impersonate/list_users.html:8
-msgid "Impersonate user"
-msgstr ""
-
-#: templates/martor/editor.html:27
-msgid "Uploading... please wait..."
-msgstr ""
-
-#: templates/martor/editor.html:36
-msgid "Nothing to preview"
-msgstr ""
-
-#: templates/martor/emoji.html:4
-msgid "Select Emoji to Insert"
+#: templates/dynamic_preferences/form.html:9
+msgid "Site preferences"
 msgstr ""
 
-#: templates/martor/emoji.html:8
-msgid "Preparing emojis..."
+#: templates/dynamic_preferences/form.html:11
+msgid "My preferences"
 msgstr ""
 
-#: templates/martor/guide.html:8
-msgid "Markdown Guide"
-msgstr ""
-
-#: templates/martor/guide.html:9
+#: templates/dynamic_preferences/form.html:13
 #, python-format
-msgid ""
-"This site is powered by Markdown. For full\n"
-"            documentation,\n"
-"            <a href=\"%(doc_url)s\" target=\"_blank\">click here</a>"
-msgstr ""
-
-#: templates/martor/guide.html:15 templates/martor/toolbar.html:42
-msgid "Code"
-msgstr ""
-
-#: templates/martor/guide.html:16
-msgid "Or"
-msgstr ""
-
-#: templates/martor/guide.html:19
-msgid "... to Get"
-msgstr ""
-
-#: templates/martor/toolbar.html:3
-msgid "Bold"
+msgid "Preferences for %(instance)s"
 msgstr ""
 
-#: templates/martor/toolbar.html:6
-msgid "Italic"
+#: templates/dynamic_preferences/form.html:25
+msgid "Save preferences"
 msgstr ""
 
-#: templates/martor/toolbar.html:10
-msgid "Horizontal Line"
+#: templates/dynamic_preferences/sections.html:7
+msgid "All"
 msgstr ""
 
-#: templates/martor/toolbar.html:15
-msgid "Heading"
-msgstr ""
-
-#: templates/martor/toolbar.html:20 templates/martor/toolbar.html:23
-#: templates/martor/toolbar.html:26
-msgid "H"
-msgstr ""
-
-#: templates/martor/toolbar.html:31
-msgid "Pre or Code"
-msgstr ""
-
-#: templates/martor/toolbar.html:38
-msgid "Pre"
-msgstr ""
-
-#: templates/martor/toolbar.html:48
-msgid "Quote"
-msgstr ""
-
-#: templates/martor/toolbar.html:52
-msgid "Unordered List"
-msgstr ""
-
-#: templates/martor/toolbar.html:56
-msgid "Ordered List"
-msgstr ""
-
-#: templates/martor/toolbar.html:60
-msgid "URL/Link"
+#: templates/impersonate/list_users.html:8
+msgid "Impersonate user"
 msgstr ""
 
-#: templates/martor/toolbar.html:82
-msgid "Full Screen"
+#: templates/offline.html:6
+msgid ""
+"No internet\n"
+"    connection."
 msgstr ""
 
-#: templates/martor/toolbar.html:86
-msgid "Markdown Guide (Help)"
+#: templates/offline.html:10
+msgid ""
+"\n"
+"      There was an error accessing this page. 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"
+"    "
 msgstr ""
 
 #: templates/search/search.html:8
@@ -1105,6 +1111,32 @@ msgstr ""
 msgid "Please enter a search term above."
 msgstr ""
 
+#: templates/templated_email/notification.email:3
+msgid "New notification for"
+msgstr ""
+
+#: templates/templated_email/notification.email:7
+msgid "Dear"
+msgstr ""
+
+#: templates/templated_email/notification.email:8
+msgid "we got a new notification for you:"
+msgstr ""
+
+#: templates/templated_email/notification.email:12
+msgid "More information"
+msgstr ""
+
+#: templates/templated_email/notification.email:16
+#, python-format
+msgid ""
+"\n"
+"    <p>By %(trans_sender)s at %(trans_created_at)s</p>\n"
+"\n"
+"    <i>Your AlekSIS team</i>\n"
+"    "
+msgstr ""
+
 #: templates/two_factor/_base_focus.html:6
 #: templates/two_factor/core/otp_required.html:22
 #: templates/two_factor/core/setup.html:5
@@ -1127,8 +1159,10 @@ msgid ""
 "\n"
 "        Backup tokens can be used when your primary and backup\n"
 "        phone numbers aren't available. The backup tokens below can be used\n"
-"        for login verification. If you've used up all your backup tokens, you\n"
-"        can generate a new set of backup tokens. Only the backup tokens shown\n"
+"        for login verification. If you've used up all your backup tokens, "
+"you\n"
+"        can generate a new set of backup tokens. Only the backup tokens "
+"shown\n"
 "        below will be valid.\n"
 "      "
 msgstr ""
@@ -1153,7 +1187,8 @@ msgid "Generate Tokens"
 msgstr ""
 
 #: templates/two_factor/core/login.html:16
-msgid "You have no permission to view this page. Please login with an other account."
+msgid ""
+"You have no permission to view this page. Please login with an other account."
 msgstr ""
 
 #: templates/two_factor/core/login.html:25
@@ -1181,7 +1216,8 @@ msgstr ""
 #: templates/two_factor/core/login.html:38
 msgid ""
 "Use this form for entering backup tokens for logging in.\n"
-"            These tokens have been generated for you to print and keep safe. Please\n"
+"            These tokens have been generated for you to print and keep safe. "
+"Please\n"
 "            enter one of these backup tokens to login to your account."
 msgstr ""
 
@@ -1204,7 +1240,8 @@ msgstr ""
 #: templates/two_factor/core/otp_required.html:10
 msgid ""
 "The page you requested, enforces users to verify using\n"
-"          two-factor authentication for security reasons. You need to enable these\n"
+"          two-factor authentication for security reasons. You need to enable "
+"these\n"
 "          security features in order to access this page."
 msgstr ""
 
@@ -1281,7 +1318,8 @@ msgstr ""
 #: templates/two_factor/core/setup.html:50
 msgid ""
 "\n"
-"            We are calling your phone right now, please enter the digits you hear.\n"
+"            We are calling your phone right now, please enter the digits you "
+"hear.\n"
 "          "
 msgstr ""
 
@@ -1295,9 +1333,12 @@ msgstr ""
 #: templates/two_factor/core/setup.html:63
 msgid ""
 "\n"
-"          We've encountered an issue with the selected authentication method. Please\n"
-"          go back and verify that you entered your information correctly, try\n"
-"          again, or use a different authentication method instead. If the issue\n"
+"          We've encountered an issue with the selected authentication "
+"method. Please\n"
+"          go back and verify that you entered your information correctly, "
+"try\n"
+"          again, or use a different authentication method instead. If the "
+"issue\n"
 "          persists, contact the site administrator.\n"
 "        "
 msgstr ""
@@ -1319,7 +1360,8 @@ msgstr ""
 #: templates/two_factor/core/setup_complete.html:14
 msgid ""
 "\n"
-"        Congratulations, you've successfully enabled two-factor authentication.\n"
+"        Congratulations, you've successfully enabled two-factor "
+"authentication.\n"
 "      "
 msgstr ""
 
@@ -1337,7 +1379,8 @@ msgstr ""
 msgid ""
 "\n"
 "          However, it might happen that you don't have access to\n"
-"          your primary token device. To enable account recovery, generate backup codes\n"
+"          your primary token device. To enable account recovery, generate "
+"backup codes\n"
 "          or add a phone number.\n"
 "        "
 msgstr ""
@@ -1355,7 +1398,9 @@ msgid "Disable Two-Factor Authentication"
 msgstr ""
 
 #: templates/two_factor/profile/disable.html:12
-msgid "You are about to disable two-factor authentication. This weakens your account security, are you sure?"
+msgid ""
+"You are about to disable two-factor authentication. This weakens your "
+"account security, are you sure?"
 msgstr ""
 
 #: templates/two_factor/profile/disable.html:26
@@ -1434,42 +1479,34 @@ msgid ""
 "      "
 msgstr ""
 
-#: util/notifications.py:66
+#: util/notifications.py:65
 msgid "E-Mail"
 msgstr ""
 
-#: util/notifications.py:67
+#: util/notifications.py:66
 msgid "SMS"
 msgstr ""
 
-#: views.py:205
+#: views.py:212
 msgid "The child groups were successfully saved."
 msgstr ""
 
-#: views.py:235
+#: views.py:240
 msgid "The person has been saved."
 msgstr ""
 
-#: views.py:265
+#: views.py:276
 msgid "The group has been saved."
 msgstr ""
 
-#: views.py:306
-msgid "The school has been saved."
-msgstr ""
-
-#: views.py:325
-msgid "The term has been saved."
-msgstr ""
-
-#: views.py:342
-msgid "You are not allowed to mark notifications from other users as read!"
-msgstr ""
-
-#: views.py:383
+#: views.py:348
 msgid "The announcement has been saved."
 msgstr ""
 
-#: views.py:396
+#: views.py:364
 msgid "The announcement has been deleted."
 msgstr ""
+
+#: views.py:435
+msgid "The preferences have been saved successfully."
+msgstr ""