diff --git a/aleksis/core/locale/de_DE/LC_MESSAGES/django.po b/aleksis/core/locale/de_DE/LC_MESSAGES/django.po
index c6e6d005f14dd10fe817e1e4fe05b9b1a08f4fd0..476ab3696c1a9115706c0b5fa537e93249d68e2c 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-04-28 13:31+0000\n"
+"POT-Creation-Date: 2020-05-01 13:06+0000\n"
 "PO-Revision-Date: 2020-04-27 13:03+0000\n"
 "Last-Translator: Anonymous <noreply@weblate.org>\n"
 "Language-Team: German <https://translate.edugit.org/projects/aleksis/aleksis/de/>\n"
@@ -18,572 +18,593 @@ msgstr ""
 "Plural-Forms: nplurals=2; plural=n != 1;\n"
 "X-Generator: Weblate 4.0.1\n"
 
-#: forms.py:38 forms.py:113
+#: aleksis/core/forms.py:40 aleksis/core/forms.py:115
 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."
 
-#: forms.py:41 forms.py:116
+#: aleksis/core/forms.py:43 aleksis/core/forms.py:118
 msgid "This username is already in use."
 msgstr "Dieser Benutzername wird bereits genutzt."
 
-#: forms.py:61
+#: aleksis/core/forms.py:63
 msgid "Base data"
 msgstr ""
 
-#: forms.py:67
+#: aleksis/core/forms.py:69
 msgid "Address"
 msgstr ""
 
-#: forms.py:68
+#: aleksis/core/forms.py:70
 #, fuzzy
 #| msgid "Contact details"
 msgid "Contact data"
 msgstr "Kontaktdetails"
 
-#: forms.py:70
+#: aleksis/core/forms.py:72
 msgid "Advanced personal data"
 msgstr ""
 
-#: forms.py:103
+#: aleksis/core/forms.py:105
 msgid "New user"
 msgstr "Neuer Benutzer"
 
-#: forms.py:103
+#: aleksis/core/forms.py:105
 msgid "Create a new account"
 msgstr "Neues Benutzerkonto erstellen"
 
-#: forms.py:130
+#: aleksis/core/forms.py:132
 msgid "Common data"
 msgstr ""
 
-#: forms.py:131 forms.py:188 menus.py:126 models.py:97
-#: templates/core/persons.html:8 templates/core/persons.html:9
+#: aleksis/core/forms.py:133 aleksis/core/forms.py:171
+#: aleksis/core/menus.py:143 aleksis/core/models.py:54
+#: aleksis/core/templates/core/persons.html:8
+#: aleksis/core/templates/core/persons.html:9
 msgid "Persons"
 msgstr "Personen"
 
-#: forms.py:160
-#, fuzzy
-#| msgid "School management"
-msgid "School name"
-msgstr "Schulverwaltung"
-
-#: forms.py:161 models.py:40
-msgid "School logo"
-msgstr "Schullogo"
-
-#: forms.py:181 forms.py:184
+#: aleksis/core/forms.py:164 aleksis/core/forms.py:167
 msgid "Date"
 msgstr "Datum"
 
-#: forms.py:182 forms.py:185
+#: aleksis/core/forms.py:165 aleksis/core/forms.py:168
 msgid "Time"
 msgstr "Zeit"
 
-#: 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
+#: aleksis/core/forms.py:173 aleksis/core/menus.py:151
+#: aleksis/core/models.py:239 aleksis/core/templates/core/groups.html:8
+#: aleksis/core/templates/core/groups.html:9
+#: aleksis/core/templates/core/person_full.html:106
 msgid "Groups"
 msgstr "Gruppen"
 
-#: forms.py:194
+#: aleksis/core/forms.py:177
 msgid "From when until when should the announcement be displayed?"
 msgstr "Von wann bis wann soll die Ankündigung angezeigt werden?"
 
-#: forms.py:197
+#: aleksis/core/forms.py:180
 msgid "Who should see the announcement?"
 msgstr "Wer soll die Ankündigung sehen?"
 
-#: forms.py:198
+#: aleksis/core/forms.py:181
 msgid "Write your announcement:"
 msgstr "Schreiben Sie ihre Ankündigung:"
 
-#: forms.py:237
+#: aleksis/core/forms.py:220
 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."
 
-#: forms.py:241
+#: aleksis/core/forms.py:224
 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."
 
-#: forms.py:249
+#: aleksis/core/forms.py:232
 msgid "You need at least one recipient."
 msgstr "Sie benötigen mindestens einen Empfänger."
 
-#: menus.py:7 templates/registration/login.html:21
-#: templates/two_factor/core/login.html:6
-#: templates/two_factor/core/login.html:10
-#: templates/two_factor/core/login.html:73
+#: aleksis/core/menus.py:7 aleksis/core/templates/registration/login.html:21
+#: 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
 msgid "Login"
 msgstr "Anmelden"
 
-#: menus.py:13
+#: aleksis/core/menus.py:13
 msgid "Dashboard"
 msgstr "Dashboard"
 
-#: menus.py:19
+#: aleksis/core/menus.py:19
 msgid "Account"
 msgstr "Konto"
 
-#: menus.py:26
+#: aleksis/core/menus.py:26
 msgid "Stop impersonation"
 msgstr "Verkleidung beenden"
 
-#: menus.py:35 templates/core/base.html:58
+#: aleksis/core/menus.py:35 aleksis/core/templates/core/base.html:58
 msgid "Logout"
 msgstr "Abmelden"
 
-#: menus.py:41
+#: aleksis/core/menus.py:41
 msgid "Two factor auth"
 msgstr "Zwei-Faktor-Authentifizierung"
 
-#: menus.py:50
+#: aleksis/core/menus.py:50
 #, fuzzy
 #| msgid "Menu"
 msgid "Me"
 msgstr "Menü"
 
-#: menus.py:61
+#: aleksis/core/menus.py:59
+#: aleksis/core/templates/dynamic_preferences/form.html:5
+msgid "Preferences"
+msgstr ""
+
+#: aleksis/core/menus.py:70
 msgid "Admin"
 msgstr "Admin"
 
-#: menus.py:69 models.py:437 templates/core/announcement/list.html:7
-#: templates/core/announcement/list.html:8
+#: aleksis/core/menus.py:78 aleksis/core/models.py:434
+#: aleksis/core/templates/core/announcement/list.html:7
+#: aleksis/core/templates/core/announcement/list.html:8
 msgid "Announcements"
 msgstr "Ankündigungen"
 
-#: menus.py:77 templates/core/data_management.html:6
-#: templates/core/data_management.html:7
+#: aleksis/core/menus.py:86 aleksis/core/templates/core/data_management.html:6
+#: aleksis/core/templates/core/data_management.html:7
 msgid "Data management"
 msgstr "Datenverwaltung"
 
-#: menus.py:85 templates/core/system_status.html:5
-#: templates/core/system_status.html:7
+#: aleksis/core/menus.py:94 aleksis/core/templates/core/system_status.html:5
+#: aleksis/core/templates/core/system_status.html:7
 msgid "System status"
 msgstr "System-Status"
 
-#: menus.py:93
+#: aleksis/core/menus.py:102
 msgid "Impersonation"
 msgstr "Verkleidung"
 
-#: menus.py:101
+#: aleksis/core/menus.py:110
 msgid "Manage school"
 msgstr "Schulverwaltung"
 
-#: menus.py:109
+#: aleksis/core/menus.py:118
+#, fuzzy
+#| msgid "Notification"
+msgid "Configuration"
+msgstr "Benachrichtigung"
+
+#: aleksis/core/menus.py:126
 msgid "Backend Admin"
 msgstr "Backend-Administration"
 
-#: menus.py:119
+#: aleksis/core/menus.py:136
 msgid "People"
 msgstr "Leute"
 
-#: menus.py:142
+#: aleksis/core/menus.py:159
 msgid "Persons and accounts"
 msgstr "Personen und Konten"
 
-#: menus.py:151
+#: aleksis/core/menus.py:168
 msgid "Groups and child groups"
 msgstr ""
 
-#: menus.py:163 templates/core/groups_child_groups.html:7
-#: templates/core/groups_child_groups.html:9
+#: aleksis/core/menus.py:180
+#: aleksis/core/templates/core/groups_child_groups.html:7
+#: aleksis/core/templates/core/groups_child_groups.html:9
 msgid "Assign child groups to groups"
 msgstr ""
 
-#: menus.py:171
+#: aleksis/core/menus.py:188
 msgid "Edit school information"
 msgstr "Schulinformationen bearbeiten"
 
-#: menus.py:172 templates/core/edit_schoolterm.html:8
-#: templates/core/edit_schoolterm.html:9
+#: aleksis/core/menus.py:189
 msgid "Edit school term"
 msgstr "Schuljahr bearbeiten"
 
-#: models.py:33 models.py:559
-msgid "Name"
-msgstr "Name"
-
-#: models.py:35
-msgid "Official name"
-msgstr "Offizieller Name"
-
-#: models.py:37
-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"
-
-#: models.py:53
-msgid "School"
-msgstr "Schule"
-
-#: models.py:54
-msgid "Schools"
-msgstr "Schulen"
-
-#: models.py:62
-msgid "Visible caption of the term"
-msgstr "Sichtbare Beschriftung des Schuljahres"
-
-#: models.py:64
-msgid "Effective start date of term"
-msgstr "Startdatum des Schuljahres"
-
-#: models.py:65
-msgid "Effective end date of term"
-msgstr "Enddatum des Schuljahres"
-
-#: models.py:85
-msgid "School term"
-msgstr "Schuljahr"
-
-#: models.py:86
-msgid "School terms"
-msgstr "Schuljahre"
-
-#: models.py:96 templates/core/persons_accounts.html:36
+#: aleksis/core/models.py:53
+#: aleksis/core/templates/core/persons_accounts.html:36
 msgid "Person"
 msgstr "Person"
 
-#: models.py:99
+#: aleksis/core/models.py:56
 #, fuzzy
 #| msgid "E-mail address"
 msgid "Can view address"
 msgstr "E-Mail-Adresse"
 
-#: models.py:100
+#: aleksis/core/models.py:57
 #, fuzzy
 #| msgid "Contact details"
 msgid "Can view contact details"
 msgstr "Kontaktdetails"
 
-#: models.py:101
+#: aleksis/core/models.py:58
 msgid "Can view photo"
 msgstr ""
 
-#: models.py:102
+#: aleksis/core/models.py:59
 msgid "Can view persons groups"
 msgstr ""
 
-#: models.py:103
+#: aleksis/core/models.py:60
 #, fuzzy
 #| msgid "Contact details"
 msgid "Can view personal details"
 msgstr "Kontaktdetails"
 
-#: models.py:108
+#: aleksis/core/models.py:65
 msgid "female"
 msgstr "weiblich"
 
-#: models.py:108
+#: aleksis/core/models.py:65
 msgid "male"
 msgstr "männlich"
 
-#: models.py:113
+#: aleksis/core/models.py:70
 msgid "Is person active?"
 msgstr "Ist die Person aktiv?"
 
-#: models.py:115
+#: aleksis/core/models.py:72
 msgid "First name"
 msgstr "Vorname"
 
-#: models.py:116
+#: aleksis/core/models.py:73
 msgid "Last name"
 msgstr "Nachname"
 
-#: models.py:118
+#: aleksis/core/models.py:75
 msgid "Additional name(s)"
 msgstr "Zusätzliche Namen"
 
-#: models.py:122
+#: aleksis/core/models.py:79
 msgid "Short name"
 msgstr "Kurzname"
 
-#: models.py:125
+#: aleksis/core/models.py:82
 msgid "Street"
 msgstr "Straße"
 
-#: models.py:126
+#: aleksis/core/models.py:83
 msgid "Street number"
 msgstr "Hausnummer"
 
-#: models.py:127
+#: aleksis/core/models.py:84
 msgid "Postal code"
 msgstr "Postleitzahl"
 
-#: models.py:128
+#: aleksis/core/models.py:85
 msgid "Place"
 msgstr "Ort"
 
-#: models.py:130
+#: aleksis/core/models.py:87
 msgid "Home phone"
 msgstr "Festnetz"
 
-#: models.py:131
+#: aleksis/core/models.py:88
 msgid "Mobile phone"
 msgstr "Handy"
 
-#: models.py:133
+#: aleksis/core/models.py:90
 msgid "E-mail address"
 msgstr "E-Mail-Adresse"
 
-#: models.py:135
+#: aleksis/core/models.py:92
 msgid "Date of birth"
 msgstr "Geburtsdatum"
 
-#: models.py:136
+#: aleksis/core/models.py:93
 msgid "Sex"
 msgstr "Geschlecht"
 
-#: models.py:138
+#: aleksis/core/models.py:95
 msgid "Photo"
 msgstr "Foto"
 
-#: models.py:142
+#: aleksis/core/models.py:99
 msgid "Guardians / Parents"
 msgstr "Erziehungsberechtigte / Eltern"
 
-#: models.py:147 models.py:310 models.py:327 models.py:406 models.py:574
+#: aleksis/core/models.py:104 aleksis/core/models.py:306
+#: aleksis/core/models.py:323 aleksis/core/models.py:403
+#: aleksis/core/models.py:566
 msgid "Description"
 msgstr "Beschreibung"
 
-#: models.py:256
+#: aleksis/core/models.py:223
+msgid "Title of field"
+msgstr ""
+
+#: aleksis/core/models.py:224
+#, fuzzy
+#| msgid "Long name of group"
+msgid "Type of field"
+msgstr "Langer Name der Gruppe"
+
+#: aleksis/core/models.py:227
+#, fuzzy
+#| msgid "Additional name(s)"
+msgid "Addtitional field"
+msgstr "Zusätzliche Namen"
+
+#: aleksis/core/models.py:228
+#, fuzzy
+#| msgid "Additional name(s)"
+msgid "Addtitional fields"
+msgstr "Zusätzliche Namen"
+
+#: aleksis/core/models.py:238
 msgid "Group"
 msgstr "Gruppe"
 
-#: models.py:259
+#: aleksis/core/models.py:241
 msgid "Can assign child groups to groups"
 msgstr ""
 
-#: models.py:264
+#: aleksis/core/models.py:246
 msgid "Long name of group"
 msgstr "Langer Name der Gruppe"
 
-#: models.py:265
+#: aleksis/core/models.py:247
 msgid "Short name of group"
 msgstr "Kurzer Name der Gruppe"
 
-#: models.py:274
+#: aleksis/core/models.py:256
 msgid "Parent groups"
 msgstr "Übergeordnete Gruppen"
 
-#: models.py:278
+#: aleksis/core/models.py:260
 #, fuzzy
 #| msgid "Long name of group"
 msgid "Type of group"
 msgstr "Langer Name der Gruppe"
 
-#: models.py:309 models.py:326 models.py:405
-#: templates/core/announcement/list.html:18
+#: aleksis/core/models.py:305 aleksis/core/models.py:322
+#: aleksis/core/models.py:402
+#: aleksis/core/templates/core/announcement/list.html:18
 msgid "Title"
 msgstr "Titel"
 
-#: models.py:312
+#: aleksis/core/models.py:308
 msgid "Application"
 msgstr "Anwendung"
 
-#: models.py:318
+#: aleksis/core/models.py:314
 msgid "Activity"
 msgstr "Aktivität"
 
-#: models.py:319
+#: aleksis/core/models.py:315
 msgid "Activities"
 msgstr "Aktivitäten"
 
-#: models.py:323
+#: aleksis/core/models.py:319
 msgid "Sender"
 msgstr "Absender"
 
-#: models.py:328 models.py:407 models.py:560
+#: aleksis/core/models.py:324 aleksis/core/models.py:404
+#: aleksis/core/models.py:551
 msgid "Link"
 msgstr "Link"
 
-#: models.py:330
+#: aleksis/core/models.py:326
 msgid "Read"
 msgstr "Gelesen"
 
-#: models.py:331
+#: aleksis/core/models.py:327
 msgid "Sent"
 msgstr "Versandt"
 
-#: models.py:343
+#: aleksis/core/models.py:340
 msgid "Notification"
 msgstr "Benachrichtigung"
 
-#: models.py:344
+#: aleksis/core/models.py:341
 msgid "Notifications"
 msgstr "Benachrichtigungen"
 
-#: models.py:410
+#: aleksis/core/models.py:407
 msgid "Date and time from when to show"
 msgstr "Datum und Uhrzeit des Anzeigestarts"
 
-#: models.py:413
+#: aleksis/core/models.py:410
 msgid "Date and time until when to show"
 msgstr "Anzeigezeitraum"
 
-#: models.py:436
+#: aleksis/core/models.py:433
 msgid "Announcement"
 msgstr "Ankündigung"
 
-#: models.py:464
+#: aleksis/core/models.py:461
 msgid "Announcement recipient"
 msgstr "Empfänger der Ankündigung"
 
-#: models.py:465
+#: aleksis/core/models.py:462
 msgid "Announcement recipients"
 msgstr "Empfänger der Ankündigung"
 
-#: models.py:515
+#: aleksis/core/models.py:512
 msgid "Widget Title"
 msgstr "Widget-Titel"
 
-#: models.py:516
+#: aleksis/core/models.py:513
 msgid "Activate Widget"
 msgstr "Widget aktivieren"
 
-#: models.py:528
+#: aleksis/core/models.py:525
 msgid "Dashboard Widget"
 msgstr "Dashboard-Widget"
 
-#: models.py:529
+#: aleksis/core/models.py:526
 msgid "Dashboard Widgets"
 msgstr "Dashboard-Widgets"
 
-#: models.py:533
+#: aleksis/core/models.py:530
 msgid "Menu ID"
 msgstr "Menü-ID"
 
-#: models.py:534
+#: aleksis/core/models.py:531
 msgid "Menu name"
 msgstr "Menü-Name"
 
-#: models.py:551
+#: aleksis/core/models.py:542
 msgid "Custom menu"
 msgstr "Benutzerdefiniertes Menü"
 
-#: models.py:552
+#: aleksis/core/models.py:543
 msgid "Custom menus"
 msgstr "Benutzerdefinierte Menüs"
 
-#: models.py:557
+#: aleksis/core/models.py:548
 msgid "Menu"
 msgstr "Menü"
 
-#: models.py:562
+#: aleksis/core/models.py:550
+msgid "Name"
+msgstr "Name"
+
+#: aleksis/core/models.py:553
 msgid "Icon"
 msgstr "Symbol"
 
-#: models.py:569
+#: aleksis/core/models.py:560
 msgid "Custom menu item"
 msgstr "Benutzerdefiniertes Menüelement"
 
-#: models.py:570
+#: aleksis/core/models.py:561
 msgid "Custom menu items"
 msgstr "Benutzerdefinierte Menüelemente"
 
-#: models.py:573
+#: aleksis/core/models.py:565
 msgid "Title of type"
 msgstr ""
 
-#: models.py:577
+#: aleksis/core/models.py:569
 #, fuzzy
 #| msgid "Group"
 msgid "Group type"
 msgstr "Gruppe"
 
-#: models.py:578
+#: aleksis/core/models.py:570
 #, fuzzy
 #| msgid "Groups"
 msgid "Group types"
 msgstr "Gruppen"
 
-#: models.py:585
+#: aleksis/core/models.py:577
 #, fuzzy
 #| msgid "System status"
 msgid "Can view system status"
 msgstr "System-Status"
 
-#: models.py:586
+#: aleksis/core/models.py:578
 #, fuzzy
 #| msgid "Link persons to accounts"
 msgid "Can link persons to accounts"
 msgstr "Personen mit Benutzerkonten verknüpfen"
 
-#: models.py:587
+#: aleksis/core/models.py:579
 #, fuzzy
 #| msgid "Data management"
 msgid "Can manage data"
 msgstr "Datenverwaltung"
 
-#: models.py:588
+#: aleksis/core/models.py:580
 #, fuzzy
 #| msgid "Stop impersonation"
 msgid "Can impersonate"
 msgstr "Verkleidung beenden"
 
-#: models.py:589
+#: aleksis/core/models.py:581
 msgid "Can use search"
 msgstr ""
 
-#: settings.py:262
-msgid "German"
-msgstr "Deutsch"
+#: aleksis/core/models.py:582
+msgid "Can change site preferences"
+msgstr ""
 
-#: settings.py:263
-msgid "English"
-msgstr "Englisch"
+#: aleksis/core/models.py:583
+msgid "Can change person preferences"
+msgstr ""
 
-#: settings.py:264
-msgid "French"
+#: aleksis/core/models.py:584
+msgid "Can change group preferences"
 msgstr ""
 
-#: settings.py:384
+#: aleksis/core/preferences.py:29
 msgid "Site title"
 msgstr "Seitentitel"
 
-#: settings.py:385
+#: aleksis/core/preferences.py:38
 msgid "Site description"
 msgstr "Seitenbeschreibung"
 
-#: settings.py:386
+#: aleksis/core/preferences.py:47
 msgid "Primary colour"
 msgstr "Primärfarbe"
 
-#: settings.py:387
+#: aleksis/core/preferences.py:56
 msgid "Secondary colour"
 msgstr "Akzentfarbe"
 
-#: settings.py:388
+#: aleksis/core/preferences.py:65
 msgid "Mail out name"
 msgstr "Ausgangsmailname"
 
-#: settings.py:389
+#: aleksis/core/preferences.py:74
 msgid "Mail out address"
 msgstr "E-Mail-Ausgangsadresse"
 
-#: settings.py:390
+#: aleksis/core/preferences.py:84
 msgid "Link to privacy policy"
 msgstr "Link zur Datenschutzerklärung"
 
-#: settings.py:391
+#: aleksis/core/preferences.py:94
 msgid "Link to imprint"
 msgstr "Link zum Impressum"
 
-#: settings.py:392
-msgid "Name format of adresses"
+#: aleksis/core/preferences.py:104
+#, fuzzy
+#| msgid "Name format of adresses"
+msgid "Name format for addressing"
 msgstr "Namensformat von Anreden"
 
-#: settings.py:393
-msgid "Channels to allow for notifications"
+#: aleksis/core/preferences.py:120
+#, fuzzy
+#| msgid "Channels to allow for notifications"
+msgid "Channels to use for notifications"
 msgstr "Kanäle, welche für Benachrichtigungen erlaubt sind"
 
-#: settings.py:394
+#: aleksis/core/preferences.py:130
 msgid "Regular expression to match primary group, e.g. '^Class .*'"
 msgstr "Regulärer Ausdruck um Primärgruppen zu finden, z. B.  '^Class .*'"
 
-#: templates/403.html:10
+#: aleksis/core/preferences.py:139
+msgid "Display name of the school"
+msgstr ""
+
+#: aleksis/core/preferences.py:148
+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:263
+msgid "German"
+msgstr "Deutsch"
+
+#: aleksis/core/settings.py:264
+msgid "English"
+msgstr "Englisch"
+
+#: aleksis/core/settings.py:265
+msgid "French"
+msgstr ""
+
+#: aleksis/core/templates/403.html:10
 msgid "Error (403): You are not allowed to access the requested page or object."
 msgstr "Fehler(403): Es ist Ihnen nicht erlaubt, auf die angefragte Seite oder das angefragte Objekt zuzugreifen."
 
-#: templates/403.html:12
+#: aleksis/core/templates/403.html:12
 msgid ""
 "\n"
 "      If you think this is an error in AlekSIS, please contact your site\n"
@@ -595,11 +616,11 @@ msgstr ""
 "     Systemadministratoren:\n"
 "     "
 
-#: templates/404.html:10
+#: aleksis/core/templates/404.html:10
 msgid "Error (404): The requested page or object was not found."
 msgstr "Fehler (404): Die angefragte Seite oder das angefragte Objekt wurde nicht gefunden."
 
-#: templates/404.html:12
+#: aleksis/core/templates/404.html:12
 msgid ""
 "\n"
 "      If you were redirected by a link on an external page,\n"
@@ -611,7 +632,7 @@ msgstr ""
 "      ist es möglich, dass dieser veraltet war.\n"
 "     "
 
-#: templates/404.html:16
+#: aleksis/core/templates/404.html:16
 msgid ""
 "\n"
 "      If you think this is an error in AlekSIS, please contact your site\n"
@@ -623,11 +644,11 @@ msgstr ""
 "     Systemadministratoren:\n"
 "     "
 
-#: templates/500.html:10
+#: aleksis/core/templates/500.html:10
 msgid "Error (500): An unexpected error has occured.."
 msgstr "Error (500): Ein unerwarteter Fehler ist aufgetreten.."
 
-#: templates/500.html:12
+#: aleksis/core/templates/500.html:12
 msgid ""
 "\n"
 "      Your site administrators will automatically be notified about this\n"
@@ -638,11 +659,11 @@ msgstr ""
 "      Ihre Administratoren werden automatisch über diesen Fehler informiert.\n"
 "     "
 
-#: templates/503.html:10
+#: aleksis/core/templates/503.html:10
 msgid "The maintenance mode is currently enabled. Please try again later."
 msgstr "Der Wartungsmodus ist aktuell aktiviert. Bitte versuchen Sie es später erneut."
 
-#: templates/503.html:12
+#: aleksis/core/templates/503.html:12
 msgid ""
 "\n"
 "      This page is currently unavailable. If this error stays, contact your site administrators:\n"
@@ -653,17 +674,18 @@ msgstr ""
 "     Systemadministratoren:\n"
 "     "
 
-#: templates/core/about.html:6 templates/core/about.html:15
+#: aleksis/core/templates/core/about.html:6
+#: aleksis/core/templates/core/about.html:15
 msgid "About AlekSIS"
 msgstr ""
 
-#: templates/core/about.html:7
+#: aleksis/core/templates/core/about.html:7
 #, fuzzy
 #| msgid "AlekSIS (School Information System)"
 msgid "AlekSIS – The Free School Information System"
 msgstr "AlekSIS (Schulinformationssystem)"
 
-#: templates/core/about.html:17
+#: aleksis/core/templates/core/about.html:17
 #, fuzzy
 #| msgid ""
 #| "\n"
@@ -681,23 +703,23 @@ msgstr ""
 "        AlekSIS ist ein webbasiertes Schul-Informations-System (SIS), das verwendet werden kann, um organisatorische Daten von Bildungseinrichten zu verwalten oder zu publizieren.\n"
 "      "
 
-#: templates/core/about.html:25
+#: aleksis/core/templates/core/about.html:25
 #, fuzzy
 #| msgid "Powered by AlekSIS"
 msgid "Website of AlekSIS"
 msgstr "Betrieben mit AlekSIS"
 
-#: templates/core/about.html:26
+#: aleksis/core/templates/core/about.html:26
 msgid "Source code"
 msgstr ""
 
-#: templates/core/about.html:35
+#: aleksis/core/templates/core/about.html:35
 #, fuzzy
 #| msgid "More information →"
 msgid "Licence information"
 msgstr "Mehr Informationen →"
 
-#: templates/core/about.html:37
+#: aleksis/core/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"
@@ -706,25 +728,25 @@ msgid ""
 "            "
 msgstr ""
 
-#: templates/core/about.html:45
+#: aleksis/core/templates/core/about.html:45
 msgid "Free/Open Source Licence"
 msgstr ""
 
-#: templates/core/about.html:46
+#: aleksis/core/templates/core/about.html:46
 msgid "Other Licence"
 msgstr ""
 
-#: templates/core/about.html:50
+#: aleksis/core/templates/core/about.html:50
 msgid "Full licence text"
 msgstr ""
 
-#: templates/core/about.html:51
+#: aleksis/core/templates/core/about.html:51
 #, fuzzy
 #| msgid "More information →"
 msgid "More information about the EUPL"
 msgstr "Mehr Informationen →"
 
-#: templates/core/about.html:90
+#: aleksis/core/templates/core/about.html:90
 #, fuzzy, python-format
 #| msgid ""
 #| "\n"
@@ -739,54 +761,56 @@ msgstr ""
 "              Gültig für %(from)s\n"
 "            "
 
-#: templates/core/announcement/form.html:10
-#: templates/core/announcement/form.html:17
+#: aleksis/core/templates/core/announcement/form.html:10
+#: aleksis/core/templates/core/announcement/form.html:17
 msgid "Edit announcement"
 msgstr "Ankündigung bearbeiten"
 
-#: templates/core/announcement/form.html:12
+#: aleksis/core/templates/core/announcement/form.html:12
 msgid "Publish announcement"
 msgstr "Ankündigung veröffentlichen"
 
-#: templates/core/announcement/form.html:19
-#: templates/core/announcement/list.html:13
+#: aleksis/core/templates/core/announcement/form.html:19
+#: aleksis/core/templates/core/announcement/list.html:13
 msgid "Publish new announcement"
 msgstr "Neue Ankündigung veröffentlichen"
 
-#: templates/core/announcement/form.html:30
+#: aleksis/core/templates/core/announcement/form.html:30
 msgid "Save und publish announcement"
 msgstr "Ankündigung speichern und veröffentlichen"
 
-#: templates/core/announcement/list.html:19
+#: aleksis/core/templates/core/announcement/list.html:19
 msgid "Valid from"
 msgstr "Gültig von"
 
-#: templates/core/announcement/list.html:20
+#: aleksis/core/templates/core/announcement/list.html:20
 msgid "Valid until"
 msgstr "Gültig bis"
 
-#: templates/core/announcement/list.html:21
+#: aleksis/core/templates/core/announcement/list.html:21
 msgid "Recipients"
 msgstr "Empfänger"
 
-#: templates/core/announcement/list.html:22
+#: aleksis/core/templates/core/announcement/list.html:22
 msgid "Actions"
 msgstr "Aktionen"
 
-#: templates/core/announcement/list.html:36 templates/core/group_full.html:15
-#: templates/core/person_full.html:18
+#: aleksis/core/templates/core/announcement/list.html:36
+#: aleksis/core/templates/core/group_full.html:22
+#: aleksis/core/templates/core/person_full.html:21
 msgid "Edit"
 msgstr "Bearbeiten"
 
-#: templates/core/announcement/list.html:42
+#: aleksis/core/templates/core/announcement/list.html:42
 msgid "Delete"
 msgstr "Löschen"
 
-#: templates/core/announcement/list.html:50
+#: aleksis/core/templates/core/announcement/list.html:50
 msgid "There are no announcements."
 msgstr "Es gibt aktuell keine Ankündigungen."
 
-#: templates/core/announcements.html:9 templates/core/announcements.html:36
+#: aleksis/core/templates/core/announcements.html:9
+#: aleksis/core/templates/core/announcements.html:36
 #, python-format
 msgid ""
 "\n"
@@ -797,7 +821,7 @@ msgstr ""
 "              Gültig für %(from)s\n"
 "            "
 
-#: templates/core/announcements.html:13
+#: aleksis/core/templates/core/announcements.html:13
 #, python-format
 msgid ""
 "\n"
@@ -808,7 +832,7 @@ msgstr ""
 "              Gültig von %(from)s bis %(until)s\n"
 "            "
 
-#: templates/core/announcements.html:40
+#: aleksis/core/templates/core/announcements.html:40
 #, python-format
 msgid ""
 "\n"
@@ -819,58 +843,62 @@ msgstr ""
 "              Gültig von %(from)s – %(until)s\n"
 "            "
 
-#: templates/core/base.html:56
+#: aleksis/core/templates/core/base.html:56
 msgid "Logged in as"
 msgstr "Angemeldet als"
 
-#: templates/core/base.html:79 templates/search/search.html:7
-#: templates/search/search.html:22
+#: aleksis/core/templates/core/base.html:79
+#: aleksis/core/templates/search/search.html:7
+#: aleksis/core/templates/search/search.html:22
 msgid "Search"
 msgstr ""
 
-#: templates/core/base.html:151
+#: aleksis/core/templates/core/base.html:151
 #, fuzzy
 #| msgid "AlekSIS (School Information System)"
 msgid "About AlekSIS — The Free School Information System"
 msgstr "AlekSIS (Schulinformationssystem)"
 
-#: templates/core/base.html:159
+#: aleksis/core/templates/core/base.html:159
 msgid "Impress"
 msgstr "Impressum"
 
-#: templates/core/base.html:167
+#: aleksis/core/templates/core/base.html:167
 msgid "Privacy Policy"
 msgstr "Datenschutzerklärung"
 
-#: templates/core/base_print.html:60
+#: aleksis/core/templates/core/base_print.html:60
 msgid "Powered by AlekSIS"
 msgstr "Betrieben mit AlekSIS"
 
-#: templates/core/edit_group.html:6 templates/core/edit_group.html:7
+#: aleksis/core/templates/core/edit_group.html:6
+#: aleksis/core/templates/core/edit_group.html:7
 msgid "Edit group"
 msgstr "Gruppe editieren"
 
-#: templates/core/edit_person.html:8 templates/core/edit_person.html:9
+#: aleksis/core/templates/core/edit_person.html:8
+#: aleksis/core/templates/core/edit_person.html:9
 msgid "Edit person"
 msgstr "Person editieren"
 
-#: templates/core/edit_school.html:8 templates/core/edit_school.html:9
-msgid "Edit school"
-msgstr "Schule bearbeiten"
+#: aleksis/core/templates/core/group_full.html:28
+#: aleksis/core/templates/core/person_full.html:28
+msgid "Change preferences"
+msgstr ""
 
-#: templates/core/group_full.html:19
+#: aleksis/core/templates/core/group_full.html:34
 msgid "Owners"
 msgstr "Leiter/-innen"
 
-#: templates/core/group_full.html:22
+#: aleksis/core/templates/core/group_full.html:37
 msgid "Members"
 msgstr "Mitglieder"
 
-#: templates/core/groups.html:14
+#: aleksis/core/templates/core/groups.html:14
 msgid "Create group"
 msgstr "Gruppe erstellen"
 
-#: templates/core/groups_child_groups.html:18
+#: aleksis/core/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"
@@ -878,23 +906,23 @@ msgid ""
 "        "
 msgstr ""
 
-#: templates/core/groups_child_groups.html:31
+#: aleksis/core/templates/core/groups_child_groups.html:31
 msgid "Update selection"
 msgstr ""
 
-#: templates/core/groups_child_groups.html:35
+#: aleksis/core/templates/core/groups_child_groups.html:35
 msgid "Clear all filters"
 msgstr ""
 
-#: templates/core/groups_child_groups.html:39
+#: aleksis/core/templates/core/groups_child_groups.html:39
 msgid "Currently selected groups"
 msgstr ""
 
-#: templates/core/groups_child_groups.html:52
+#: aleksis/core/templates/core/groups_child_groups.html:52
 msgid "Start assigning child groups for this groups"
 msgstr ""
 
-#: templates/core/groups_child_groups.html:61
+#: aleksis/core/templates/core/groups_child_groups.html:61
 #, fuzzy
 #| msgid ""
 #| "\n"
@@ -909,13 +937,13 @@ msgstr ""
 "          Es existiert keine Gruppe mit dieser ID.\n"
 "        "
 
-#: templates/core/groups_child_groups.html:72
+#: aleksis/core/templates/core/groups_child_groups.html:72
 #, fuzzy
 #| msgid "Create group"
 msgid "Current group:"
 msgstr "Gruppe erstellen"
 
-#: templates/core/groups_child_groups.html:78
+#: aleksis/core/templates/core/groups_child_groups.html:78
 msgid ""
 "\n"
 "            <strong>Please be careful!</strong><br/>\n"
@@ -925,65 +953,92 @@ msgid ""
 "          "
 msgstr ""
 
-#: 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
+#: 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
 msgid "Back"
 msgstr "Zurück"
 
-#: templates/core/groups_child_groups.html:99
-#: templates/core/groups_child_groups.html:134
-#: templates/two_factor/_wizard_actions.html:26
+#: 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
 msgid "Next"
 msgstr "Weiter"
 
-#: templates/core/groups_child_groups.html:106
-#: templates/core/groups_child_groups.html:141
-#: templates/core/save_button.html:3
+#: 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
 msgid "Save"
 msgstr "Speichern"
 
-#: templates/core/groups_child_groups.html:112
-#: templates/core/groups_child_groups.html:147
+#: aleksis/core/templates/core/groups_child_groups.html:112
+#: aleksis/core/templates/core/groups_child_groups.html:147
 msgid "Save and next"
 msgstr ""
 
-#: templates/core/index.html:4
+#: aleksis/core/templates/core/index.html:4
 msgid "Home"
 msgstr "Startseite"
 
-#: templates/core/index.html:11
+#: aleksis/core/templates/core/index.html:11
 msgid "AlekSIS (School Information System)"
 msgstr "AlekSIS (Schulinformationssystem)"
 
-#: templates/core/index.html:43
+#: aleksis/core/templates/core/index.html:43
 msgid "Last activities"
 msgstr "Letzte Aktivitäten"
 
-#: templates/core/index.html:61
+#: aleksis/core/templates/core/index.html:61
 msgid "No activities available yet."
 msgstr "Aktuell keine Aktivitäten verfügbar."
 
-#: templates/core/index.html:66
+#: aleksis/core/templates/core/index.html:66
 msgid "Recent notifications"
 msgstr "Letzte Benachrichtigungen"
 
-#: templates/core/index.html:82
+#: aleksis/core/templates/core/index.html:82
 msgid "More information →"
 msgstr "Mehr Informationen →"
 
-#: templates/core/index.html:89
+#: aleksis/core/templates/core/index.html:89
 msgid "No notifications available yet."
 msgstr "Aktuell keine Benachrichtigungen verfügbar."
 
-#: templates/core/no_person.html:11
+#: aleksis/core/templates/core/no_person.html:12
+#, fuzzy
+#| 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"
+#| "        "
 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"
+"            Your administrator account is not linked to any person. Therefore,\n"
+"            a dummy person has been linked to your account.\n"
+"          "
+msgstr ""
+"\n"
+"          Ihr Benutzerkonto ist nicht mit einer Person verknüpft. Das bedeutet, dass Sie\n"
+"        keine schulbezogenen Informationen aufrufen können. Bitte wenden Sie sich an\n"
+"        die Verwaltenden von AlekSIS an Ihrer Schule.\n"
 "        "
+
+#: aleksis/core/templates/core/no_person.html:19
+#, fuzzy
+#| 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"
+#| "        "
+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 ""
 "\n"
 "          Ihr Benutzerkonto ist nicht mit einer Person verknüpft. Das bedeutet, dass Sie\n"
@@ -991,11 +1046,11 @@ msgstr ""
 "        die Verwaltenden von AlekSIS an Ihrer Schule.\n"
 "        "
 
-#: templates/core/offline.html:6
+#: aleksis/core/templates/core/offline.html:6
 msgid "No internet connection."
 msgstr "Keine Internetverbindung."
 
-#: templates/core/offline.html:9
+#: aleksis/core/templates/core/offline.html:9
 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"
@@ -1005,16 +1060,16 @@ msgstr ""
 "        Es ist ein Fehler beim Aufrufen der Seite aufgetreten. Eventuell haben Sie keine Internetverbindung. Bitte prüfen Sie, ob WLAN oder mobile Daten aktiv sind, und probieren Sie es erneut. Wenn Sie der Meinung sind, dass Sie mit dem Internet verbunden sind, kontaktieren Sie bitte einen Ihrer Systemadministratoren:\n"
 "      "
 
-#: templates/core/person_full.html:23
+#: aleksis/core/templates/core/person_full.html:34
 msgid "Contact details"
 msgstr "Kontaktdetails"
 
-#: templates/core/persons_accounts.html:7
-#: templates/core/persons_accounts.html:9
+#: aleksis/core/templates/core/persons_accounts.html:7
+#: aleksis/core/templates/core/persons_accounts.html:9
 msgid "Link persons to accounts"
 msgstr "Personen mit Benutzerkonten verknüpfen"
 
-#: templates/core/persons_accounts.html:16
+#: aleksis/core/templates/core/persons_accounts.html:16
 msgid ""
 "\n"
 "        You can use this form to assign user accounts to persons. Use the\n"
@@ -1030,33 +1085,28 @@ msgstr ""
 "    eingegebenen Benutzernamen und kopiert alle anderen Daten der Person.\n"
 "      "
 
-#: templates/core/persons_accounts.html:31
-#: templates/core/persons_accounts.html:55
+#: aleksis/core/templates/core/persons_accounts.html:31
+#: aleksis/core/templates/core/persons_accounts.html:55
 msgid "Update"
 msgstr "Aktualisieren"
 
-#: templates/core/persons_accounts.html:37
+#: aleksis/core/templates/core/persons_accounts.html:37
 msgid "Existing account"
 msgstr "Existierendes Konto"
 
-#: templates/core/persons_accounts.html:38
+#: aleksis/core/templates/core/persons_accounts.html:38
 msgid "New account"
 msgstr "Neues Konto"
 
-#: templates/core/school_management.html:6
-#: templates/core/school_management.html:7
-msgid "School management"
-msgstr "Schulverwaltung"
-
-#: templates/core/system_status.html:12
+#: aleksis/core/templates/core/system_status.html:12
 msgid "System checks"
 msgstr "Systemprüfungen"
 
-#: templates/core/system_status.html:21
+#: aleksis/core/templates/core/system_status.html:21
 msgid "Maintenance mode enabled"
 msgstr "Wartungsmodus aktiviert"
 
-#: templates/core/system_status.html:23
+#: aleksis/core/templates/core/system_status.html:23
 msgid ""
 "\n"
 "                Only admin and visitors from internal IPs can access thesite.\n"
@@ -1066,19 +1116,19 @@ msgstr ""
 "                Nur Administratoren und Besucher von internen IP-Adressen können die Seite aufrufen.\n"
 "              "
 
-#: templates/core/system_status.html:34
+#: aleksis/core/templates/core/system_status.html:34
 msgid "Maintenance mode disabled"
 msgstr "Wartungsmodus deaktiviert"
 
-#: templates/core/system_status.html:35
+#: aleksis/core/templates/core/system_status.html:35
 msgid "Everyone can access the site."
 msgstr "Jeder kann die Seite aufrufen."
 
-#: templates/core/system_status.html:45
+#: aleksis/core/templates/core/system_status.html:45
 msgid "Debug mode enabled"
 msgstr "Debug-Modus aktiviert"
 
-#: templates/core/system_status.html:47
+#: aleksis/core/templates/core/system_status.html:47
 msgid ""
 "\n"
 "                The web server throws back debug information on errors. Do not use in production!\n"
@@ -1088,11 +1138,11 @@ msgstr ""
 "                Der Server gibt Debug-Informationen bei Fehlern zurück. Nicht im Produktivbetrieb nutzen!\n"
 "              "
 
-#: templates/core/system_status.html:54
+#: aleksis/core/templates/core/system_status.html:54
 msgid "Debug mode disabled"
 msgstr "Debug-Modus deaktivert"
 
-#: templates/core/system_status.html:56
+#: aleksis/core/templates/core/system_status.html:56
 msgid ""
 "\n"
 "                Debug mode is disabled. Default error pages are displayed on errors.\n"
@@ -1102,31 +1152,52 @@ msgstr ""
 "                Debug-Modus ist deaktiviert. Standard-Fehlerseiten werden bei Fehlern angezeigt.\n"
 "              "
 
-#: templates/impersonate/list_users.html:8
+#: aleksis/core/templates/dynamic_preferences/form.html:9
+msgid "Site preferences"
+msgstr ""
+
+#: aleksis/core/templates/dynamic_preferences/form.html:11
+msgid "My preferences"
+msgstr ""
+
+#: aleksis/core/templates/dynamic_preferences/form.html:13
+#, python-format
+msgid "Preferences for %(instance)s"
+msgstr ""
+
+#: aleksis/core/templates/dynamic_preferences/form.html:25
+msgid "Save preferences"
+msgstr ""
+
+#: aleksis/core/templates/dynamic_preferences/sections.html:7
+msgid "All"
+msgstr ""
+
+#: aleksis/core/templates/impersonate/list_users.html:8
 msgid "Impersonate user"
 msgstr "Als Benutzer verkleiden"
 
-#: templates/martor/editor.html:27
+#: aleksis/core/templates/martor/editor.html:27
 msgid "Uploading... please wait..."
 msgstr "Lädt hoch… bitte warten…"
 
-#: templates/martor/editor.html:36
+#: aleksis/core/templates/martor/editor.html:36
 msgid "Nothing to preview"
 msgstr "Keine Vorschau"
 
-#: templates/martor/emoji.html:4
+#: aleksis/core/templates/martor/emoji.html:4
 msgid "Select Emoji to Insert"
 msgstr "Wählen Sie ein Emoji zum Einfügen aus"
 
-#: templates/martor/emoji.html:8
+#: aleksis/core/templates/martor/emoji.html:8
 msgid "Preparing emojis..."
 msgstr "Bereite Emoji vor…"
 
-#: templates/martor/guide.html:8
+#: aleksis/core/templates/martor/guide.html:8
 msgid "Markdown Guide"
 msgstr "Markdown-Anleitung"
 
-#: templates/martor/guide.html:9
+#: aleksis/core/templates/martor/guide.html:9
 #, python-format
 msgid ""
 "This site is powered by Markdown. For full\n"
@@ -1137,109 +1208,111 @@ msgstr ""
 "            Dokumentation,\n"
 "            <a href=\"%(doc_url)s\" target=\"_blank\">hier klicken</a>"
 
-#: templates/martor/guide.html:15 templates/martor/toolbar.html:42
+#: aleksis/core/templates/martor/guide.html:15
+#: aleksis/core/templates/martor/toolbar.html:42
 msgid "Code"
 msgstr "Code"
 
-#: templates/martor/guide.html:16
+#: aleksis/core/templates/martor/guide.html:16
 msgid "Or"
 msgstr "oder"
 
-#: templates/martor/guide.html:19
+#: aleksis/core/templates/martor/guide.html:19
 msgid "... to Get"
 msgstr ""
 
-#: templates/martor/toolbar.html:3
+#: aleksis/core/templates/martor/toolbar.html:3
 msgid "Bold"
 msgstr "Fett"
 
-#: templates/martor/toolbar.html:6
+#: aleksis/core/templates/martor/toolbar.html:6
 msgid "Italic"
 msgstr "kursiv"
 
-#: templates/martor/toolbar.html:10
+#: aleksis/core/templates/martor/toolbar.html:10
 msgid "Horizontal Line"
 msgstr "horizontale Linie"
 
-#: templates/martor/toolbar.html:15
+#: aleksis/core/templates/martor/toolbar.html:15
 msgid "Heading"
 msgstr "Überschrift"
 
-#: templates/martor/toolbar.html:20 templates/martor/toolbar.html:23
-#: templates/martor/toolbar.html:26
+#: aleksis/core/templates/martor/toolbar.html:20
+#: aleksis/core/templates/martor/toolbar.html:23
+#: aleksis/core/templates/martor/toolbar.html:26
 msgid "H"
 msgstr "H"
 
-#: templates/martor/toolbar.html:31
+#: aleksis/core/templates/martor/toolbar.html:31
 msgid "Pre or Code"
 msgstr "Pre oder Code"
 
-#: templates/martor/toolbar.html:38
+#: aleksis/core/templates/martor/toolbar.html:38
 msgid "Pre"
 msgstr "Pre"
 
-#: templates/martor/toolbar.html:48
+#: aleksis/core/templates/martor/toolbar.html:48
 msgid "Quote"
 msgstr "Zitat"
 
-#: templates/martor/toolbar.html:52
+#: aleksis/core/templates/martor/toolbar.html:52
 msgid "Unordered List"
 msgstr "Unsortierte Liste"
 
-#: templates/martor/toolbar.html:56
+#: aleksis/core/templates/martor/toolbar.html:56
 msgid "Ordered List"
 msgstr "Sortierte Liste"
 
-#: templates/martor/toolbar.html:60
+#: aleksis/core/templates/martor/toolbar.html:60
 msgid "URL/Link"
 msgstr "URL/Link"
 
-#: templates/martor/toolbar.html:82
+#: aleksis/core/templates/martor/toolbar.html:82
 msgid "Full Screen"
 msgstr "Vollbild"
 
-#: templates/martor/toolbar.html:86
+#: aleksis/core/templates/martor/toolbar.html:86
 msgid "Markdown Guide (Help)"
 msgstr "Markdown-Anleitung (Hilfe)"
 
-#: templates/search/search.html:8
+#: aleksis/core/templates/search/search.html:8
 msgid "Global Search"
 msgstr ""
 
-#: templates/search/search.html:15
+#: aleksis/core/templates/search/search.html:15
 msgid "Search Term"
 msgstr ""
 
-#: templates/search/search.html:26
+#: aleksis/core/templates/search/search.html:26
 msgid "Results"
 msgstr ""
 
-#: templates/search/search.html:38
+#: aleksis/core/templates/search/search.html:38
 msgid "No search results could be found to your search."
 msgstr ""
 
-#: templates/search/search.html:87
+#: aleksis/core/templates/search/search.html:87
 msgid "Please enter a search term above."
 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
+#: 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
 msgid "Enable Two-Factor Authentication"
 msgstr "Zwei-Faktor-Authentifizierung aktivieren"
 
-#: templates/two_factor/_wizard_actions.html:6
+#: aleksis/core/templates/two_factor/_wizard_actions.html:6
 msgid "Cancel"
 msgstr "Abbrechen"
 
-#: templates/two_factor/core/backup_tokens.html:5
-#: templates/two_factor/core/backup_tokens.html:9
-#: templates/two_factor/profile/profile.html:46
+#: 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
 msgid "Backup Tokens"
 msgstr "Backup-Token"
 
-#: templates/two_factor/core/backup_tokens.html:14
+#: aleksis/core/templates/two_factor/core/backup_tokens.html:14
 msgid ""
 "\n"
 "        Backup tokens can be used when your primary and backup\n"
@@ -1256,7 +1329,7 @@ msgstr ""
 "        müssen Sie neue generieren. Nur gültige Backup-Tokens werden angezeigt.\n"
 "      "
 
-#: templates/two_factor/core/backup_tokens.html:33
+#: aleksis/core/templates/two_factor/core/backup_tokens.html:33
 msgid ""
 "\n"
 "          Print these tokens and keep them somewhere safe.\n"
@@ -1266,27 +1339,27 @@ msgstr ""
 "          Drucken Sie diese Tokens aus und bewahren Sie sie gut auf.\n"
 "        "
 
-#: templates/two_factor/core/backup_tokens.html:39
+#: aleksis/core/templates/two_factor/core/backup_tokens.html:39
 msgid "You don't have any backup codes yet."
 msgstr "Sie haben aktuell keine Backup-Codes."
 
-#: templates/two_factor/core/backup_tokens.html:45
+#: aleksis/core/templates/two_factor/core/backup_tokens.html:45
 msgid "Back to Account Security"
 msgstr "Zurück zur Kontosicherheit"
 
-#: templates/two_factor/core/backup_tokens.html:49
+#: aleksis/core/templates/two_factor/core/backup_tokens.html:49
 msgid "Generate Tokens"
 msgstr "Tokens generieren"
 
-#: templates/two_factor/core/login.html:16
+#: aleksis/core/templates/two_factor/core/login.html:16
 msgid "You have no permission to view this page. Please login with an other account."
 msgstr ""
 
-#: templates/two_factor/core/login.html:25
+#: aleksis/core/templates/two_factor/core/login.html:25
 msgid "Please login to see this page."
 msgstr ""
 
-#: templates/two_factor/core/login.html:28
+#: aleksis/core/templates/two_factor/core/login.html:28
 #, fuzzy
 #| msgid ""
 #| "We are calling your phone right now, please enter the\n"
@@ -1298,7 +1371,7 @@ msgstr ""
 "Wir rufen Ihr Telefon jetzt an, bitte geben Sie die\n"
 "              Zahlen ein, die Sie hören."
 
-#: templates/two_factor/core/login.html:31
+#: aleksis/core/templates/two_factor/core/login.html:31
 #, fuzzy
 #| msgid ""
 #| "We sent you a text message, please enter the tokens we\n"
@@ -1310,7 +1383,7 @@ msgstr ""
 "Wir haben Ihnen eine Textnachricht geschickt. Bitte geben Sie die Tokens ein,\n"
 "            die wir Ihnen geschickt haben."
 
-#: templates/two_factor/core/login.html:34
+#: aleksis/core/templates/two_factor/core/login.html:34
 #, fuzzy
 #| msgid ""
 #| "Please enter the tokens generated by your token\n"
@@ -1322,30 +1395,30 @@ msgstr ""
 "Bitte geben Sie den von Ihrem Token-Generator\n"
 "            generierten Token ein."
 
-#: templates/two_factor/core/login.html:38
+#: aleksis/core/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"
 "            enter one of these backup tokens to login to your account."
 msgstr ""
 
-#: templates/two_factor/core/login.html:56
+#: aleksis/core/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:"
 
-#: templates/two_factor/core/login.html:66
+#: aleksis/core/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:"
 
-#: templates/two_factor/core/login.html:69
+#: aleksis/core/templates/two_factor/core/login.html:69
 msgid "Use Backup Token"
 msgstr "Backup-Token nutzen"
 
-#: templates/two_factor/core/otp_required.html:9
+#: aleksis/core/templates/two_factor/core/otp_required.html:9
 msgid "Permission Denied"
 msgstr "Zugriff verwehrt"
 
-#: templates/two_factor/core/otp_required.html:10
+#: aleksis/core/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"
@@ -1355,7 +1428,7 @@ msgstr ""
 "          eine Verifizierung durch Zwei-Faktor-Authentifizierung. Sie müssen diese\n"
 "          Sicherheitsfunktion aktivieren, um diese Seite aufzurufen."
 
-#: templates/two_factor/core/otp_required.html:14
+#: aleksis/core/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"
@@ -1365,29 +1438,29 @@ msgstr ""
 "          Aktivieren Sie Zwei-Faktor-Authentifizierung für eine verbesserte\n"
 "          Accountsicherheit."
 
-#: templates/two_factor/core/otp_required.html:19
+#: aleksis/core/templates/two_factor/core/otp_required.html:19
 msgid "Go back"
 msgstr "Zurück"
 
-#: templates/two_factor/core/phone_register.html:5
-#: templates/two_factor/core/phone_register.html:9
+#: aleksis/core/templates/two_factor/core/phone_register.html:5
+#: aleksis/core/templates/two_factor/core/phone_register.html:9
 msgid "Add Backup Phone"
 msgstr "Backup-Telefon hinzufügen"
 
-#: templates/two_factor/core/phone_register.html:12
+#: aleksis/core/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 ""
 
-#: templates/two_factor/core/phone_register.html:16
+#: aleksis/core/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 ""
 
-#: templates/two_factor/core/setup.html:9
+#: aleksis/core/templates/two_factor/core/setup.html:9
 msgid ""
 "\n"
 "        You are about to take your account security to the\n"
@@ -1396,14 +1469,14 @@ msgid ""
 "      "
 msgstr ""
 
-#: templates/two_factor/core/setup.html:17
+#: aleksis/core/templates/two_factor/core/setup.html:17
 msgid ""
 "\n"
 "        Please select which authentication method you would like to use:\n"
 "      "
 msgstr ""
 
-#: templates/two_factor/core/setup.html:23
+#: aleksis/core/templates/two_factor/core/setup.html:23
 msgid ""
 "\n"
 "        To start using a token generator, please use your\n"
@@ -1412,7 +1485,7 @@ msgid ""
 "      "
 msgstr ""
 
-#: templates/two_factor/core/setup.html:34
+#: aleksis/core/templates/two_factor/core/setup.html:34
 msgid ""
 "\n"
 "        Please enter the phone number you wish to receive the\n"
@@ -1420,7 +1493,7 @@ msgid ""
 "      "
 msgstr ""
 
-#: templates/two_factor/core/setup.html:41
+#: aleksis/core/templates/two_factor/core/setup.html:41
 msgid ""
 "\n"
 "        Please enter the phone number you wish to be called on.\n"
@@ -1428,14 +1501,14 @@ msgid ""
 "      "
 msgstr ""
 
-#: templates/two_factor/core/setup.html:50
+#: aleksis/core/templates/two_factor/core/setup.html:50
 msgid ""
 "\n"
 "            We are calling your phone right now, please enter the digits you hear.\n"
 "          "
 msgstr ""
 
-#: templates/two_factor/core/setup.html:56
+#: aleksis/core/templates/two_factor/core/setup.html:56
 msgid ""
 "\n"
 "            We sent you a text message, please enter the tokens we sent.\n"
@@ -1445,7 +1518,7 @@ msgstr ""
 "            Wir haben Ihnen per SMS einen Token geschickt, bitte geben Sie diesen ein.\n"
 "          "
 
-#: templates/two_factor/core/setup.html:63
+#: aleksis/core/templates/two_factor/core/setup.html:63
 msgid ""
 "\n"
 "          We've encountered an issue with the selected authentication method. Please\n"
@@ -1455,7 +1528,7 @@ msgid ""
 "        "
 msgstr ""
 
-#: templates/two_factor/core/setup.html:73
+#: aleksis/core/templates/two_factor/core/setup.html:73
 msgid ""
 "\n"
 "        To identify and verify your YubiKey, please insert a\n"
@@ -1464,12 +1537,12 @@ msgid ""
 "      "
 msgstr ""
 
-#: templates/two_factor/core/setup_complete.html:5
-#: templates/two_factor/core/setup_complete.html:9
+#: aleksis/core/templates/two_factor/core/setup_complete.html:5
+#: aleksis/core/templates/two_factor/core/setup_complete.html:9
 msgid "Two-Factor Authentication successfully enabled"
 msgstr "Zwei-Faktor-Authentifizierung erfolgreich aktiviert"
 
-#: templates/two_factor/core/setup_complete.html:14
+#: aleksis/core/templates/two_factor/core/setup_complete.html:14
 msgid ""
 "\n"
 "        Congratulations, you've successfully enabled two-factor authentication.\n"
@@ -1479,17 +1552,17 @@ msgstr ""
 "        Gratulation, Sie haben die Zwei-Faktor-Authentifizierung erfolgreich aktiviert.\n"
 "      "
 
-#: templates/two_factor/core/setup_complete.html:24
-#: templates/two_factor/core/setup_complete.html:44
+#: aleksis/core/templates/two_factor/core/setup_complete.html:24
+#: aleksis/core/templates/two_factor/core/setup_complete.html:44
 msgid "Back to Profile"
 msgstr "Zurück zum Profil"
 
-#: templates/two_factor/core/setup_complete.html:28
-#: templates/two_factor/core/setup_complete.html:48
+#: aleksis/core/templates/two_factor/core/setup_complete.html:28
+#: aleksis/core/templates/two_factor/core/setup_complete.html:48
 msgid "Generate backup codes"
 msgstr "Backup-Codes generieren"
 
-#: templates/two_factor/core/setup_complete.html:34
+#: aleksis/core/templates/two_factor/core/setup_complete.html:34
 msgid ""
 "\n"
 "          However, it might happen that you don't have access to\n"
@@ -1498,65 +1571,65 @@ msgid ""
 "        "
 msgstr ""
 
-#: templates/two_factor/core/setup_complete.html:52
-#: templates/two_factor/profile/profile.html:41
+#: aleksis/core/templates/two_factor/core/setup_complete.html:52
+#: aleksis/core/templates/two_factor/profile/profile.html:41
 msgid "Add Phone Number"
 msgstr "Telefonnummer hinzufügen"
 
-#: 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
+#: 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
 msgid "Disable Two-Factor Authentication"
 msgstr "Zwei-Faktor-Authentifizierung deaktiveren"
 
-#: templates/two_factor/profile/disable.html:12
+#: aleksis/core/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 "Sie sind dabei, Zwei-Faktor-Authentifizierung zu deaktivieren. Das verschlechtert Ihre Kontosicherheit. Sind Sie sicher?"
 
-#: templates/two_factor/profile/disable.html:26
+#: aleksis/core/templates/two_factor/profile/disable.html:26
 msgid "Disable"
 msgstr "Deaktivieren"
 
-#: templates/two_factor/profile/profile.html:5
-#: templates/two_factor/profile/profile.html:10
+#: aleksis/core/templates/two_factor/profile/profile.html:5
+#: aleksis/core/templates/two_factor/profile/profile.html:10
 msgid "Account Security"
 msgstr "Kontosicherheit"
 
-#: templates/two_factor/profile/profile.html:15
+#: aleksis/core/templates/two_factor/profile/profile.html:15
 msgid "Tokens will be generated by your token generator."
 msgstr "Tokens werden von Ihrem Token-Generator generiert."
 
-#: templates/two_factor/profile/profile.html:17
+#: aleksis/core/templates/two_factor/profile/profile.html:17
 #, python-format
 msgid "Primary method: %(primary)s"
 msgstr "Primäre Methode: %(primary)s"
 
-#: templates/two_factor/profile/profile.html:19
+#: aleksis/core/templates/two_factor/profile/profile.html:19
 msgid "Tokens will be generated by your YubiKey."
 msgstr "Tokens werden von Ihrem YubiKey generiert."
 
-#: templates/two_factor/profile/profile.html:23
+#: aleksis/core/templates/two_factor/profile/profile.html:23
 msgid "Backup Phone Numbers"
 msgstr "Backup-Telefonnummern"
 
-#: templates/two_factor/profile/profile.html:24
+#: aleksis/core/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 ""
 
-#: templates/two_factor/profile/profile.html:33
+#: aleksis/core/templates/two_factor/profile/profile.html:33
 msgid "Unregister"
 msgstr "Abmelden"
 
-#: templates/two_factor/profile/profile.html:48
+#: aleksis/core/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 ""
 
-#: templates/two_factor/profile/profile.html:50
+#: aleksis/core/templates/two_factor/profile/profile.html:50
 #, python-format
 msgid ""
 "\n"
@@ -1575,11 +1648,11 @@ msgstr[1] ""
 "        Sie haben %(counter)s Backup-Tokens übrig.\n"
 "      "
 
-#: templates/two_factor/profile/profile.html:59
+#: aleksis/core/templates/two_factor/profile/profile.html:59
 msgid "Show Codes"
 msgstr "Codes anzeigen"
 
-#: templates/two_factor/profile/profile.html:65
+#: aleksis/core/templates/two_factor/profile/profile.html:65
 msgid ""
 "\n"
 "        However we strongly discourage you to do so, you can\n"
@@ -1587,7 +1660,7 @@ msgid ""
 "      "
 msgstr ""
 
-#: templates/two_factor/profile/profile.html:78
+#: aleksis/core/templates/two_factor/profile/profile.html:78
 msgid ""
 "\n"
 "        Two-factor authentication is not enabled for your\n"
@@ -1596,48 +1669,90 @@ msgid ""
 "      "
 msgstr ""
 
-#: util/notifications.py:66
+#: aleksis/core/util/notifications.py:66
 msgid "E-Mail"
 msgstr "E-Mail"
 
-#: util/notifications.py:67
+#: aleksis/core/util/notifications.py:67
 msgid "SMS"
 msgstr "SMS"
 
-#: views.py:205
+#: aleksis/core/views.py:208
 #, fuzzy
 #| msgid "The group has been saved."
 msgid "The child groups were successfully saved."
 msgstr "Die Gruppe wurde gespeichert."
 
-#: views.py:235
+#: aleksis/core/views.py:238
 msgid "The person has been saved."
 msgstr "Die Person wurde gespeichert."
 
-#: views.py:265
+#: aleksis/core/views.py:268
 msgid "The group has been saved."
 msgstr "Die Gruppe wurde gespeichert."
 
-#: views.py:306
-msgid "The school has been saved."
-msgstr "Die Schule wurde gespeichert."
-
-#: views.py:325
-msgid "The term has been saved."
-msgstr "Das Schuljahr wurde gespeichert."
-
-#: views.py:342
+#: aleksis/core/views.py:299
 msgid "You are not allowed to mark notifications from other users as read!"
 msgstr "Es ist Ihnen nicht erlaubt, Benachrichtigungen von anderen Benutzern als gelesen zu markieren!"
 
-#: views.py:383
+#: aleksis/core/views.py:340
 msgid "The announcement has been saved."
 msgstr "Die Ankündigung wurde gespeichert."
 
-#: views.py:396
+#: aleksis/core/views.py:353
 msgid "The announcement has been deleted."
 msgstr "Ankündigung wurde gelöscht."
 
+#: aleksis/core/views.py:417
+#, fuzzy
+#| msgid "The person has been saved."
+msgid "The preferences has been saved successfully."
+msgstr "Die Person wurde gespeichert."
+
+#, fuzzy
+#~| msgid "School management"
+#~ msgid "School name"
+#~ msgstr "Schulverwaltung"
+
+#~ msgid "School logo"
+#~ msgstr "Schullogo"
+
+#~ msgid "Official name"
+#~ msgstr "Offizieller Name"
+
+#~ msgid "School"
+#~ msgstr "Schule"
+
+#~ msgid "Schools"
+#~ msgstr "Schulen"
+
+#~ msgid "Visible caption of the term"
+#~ msgstr "Sichtbare Beschriftung des Schuljahres"
+
+#~ msgid "Effective start date of term"
+#~ msgstr "Startdatum des Schuljahres"
+
+#~ msgid "Effective end date of term"
+#~ msgstr "Enddatum des Schuljahres"
+
+#~ msgid "School term"
+#~ msgstr "Schuljahr"
+
+#~ msgid "School terms"
+#~ msgstr "Schuljahre"
+
+#~ msgid "Edit school"
+#~ msgstr "Schule bearbeiten"
+
+#~ msgid "School management"
+#~ msgstr "Schulverwaltung"
+
+#~ msgid "The school has been saved."
+#~ msgstr "Die Schule wurde gespeichert."
+
+#~ msgid "The term has been saved."
+#~ msgstr "Das Schuljahr wurde gespeichert."
+
 #~ msgid "Reference ID of import source"
 #~ msgstr "Referenz-ID der Import-Quelle"
 
diff --git a/aleksis/core/locale/fr/LC_MESSAGES/django.po b/aleksis/core/locale/fr/LC_MESSAGES/django.po
index b5b45f9b9aa1c4fa0655095cbeb0a9b1b8578874..5490a85bca257faeae459bd3d62fae72154019c0 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-04-28 13:31+0000\n"
+"POT-Creation-Date: 2020-05-01 13:06+0000\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/fr/>\n"
@@ -18,556 +18,567 @@ msgstr ""
 "Plural-Forms: nplurals=2; plural=n > 1;\n"
 "X-Generator: Weblate 4.0.1\n"
 
-#: forms.py:38 forms.py:113
+#: aleksis/core/forms.py:40 aleksis/core/forms.py:115
 msgid "You cannot set a new username when also selecting an existing user."
 msgstr ""
 
-#: forms.py:41 forms.py:116
+#: aleksis/core/forms.py:43 aleksis/core/forms.py:118
 msgid "This username is already in use."
 msgstr ""
 
-#: forms.py:61
+#: aleksis/core/forms.py:63
 msgid "Base data"
 msgstr ""
 
-#: forms.py:67
+#: aleksis/core/forms.py:69
 msgid "Address"
 msgstr ""
 
-#: forms.py:68
+#: aleksis/core/forms.py:70
 #, fuzzy
 #| msgid "Contact details"
 msgid "Contact data"
 msgstr "Détails de contact"
 
-#: forms.py:70
+#: aleksis/core/forms.py:72
 msgid "Advanced personal data"
 msgstr ""
 
-#: forms.py:103
+#: aleksis/core/forms.py:105
 msgid "New user"
 msgstr ""
 
-#: forms.py:103
+#: aleksis/core/forms.py:105
 msgid "Create a new account"
 msgstr ""
 
-#: forms.py:130
+#: aleksis/core/forms.py:132
 msgid "Common data"
 msgstr ""
 
-#: forms.py:131 forms.py:188 menus.py:126 models.py:97
-#: templates/core/persons.html:8 templates/core/persons.html:9
+#: aleksis/core/forms.py:133 aleksis/core/forms.py:171
+#: aleksis/core/menus.py:143 aleksis/core/models.py:54
+#: aleksis/core/templates/core/persons.html:8
+#: aleksis/core/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
+#: aleksis/core/forms.py:164 aleksis/core/forms.py:167
 msgid "Date"
 msgstr "Date"
 
-#: forms.py:182 forms.py:185
+#: aleksis/core/forms.py:165 aleksis/core/forms.py:168
 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
+#: aleksis/core/forms.py:173 aleksis/core/menus.py:151
+#: aleksis/core/models.py:239 aleksis/core/templates/core/groups.html:8
+#: aleksis/core/templates/core/groups.html:9
+#: aleksis/core/templates/core/person_full.html:106
 msgid "Groups"
 msgstr ""
 
-#: forms.py:194
+#: aleksis/core/forms.py:177
 msgid "From when until when should the announcement be displayed?"
 msgstr ""
 
-#: forms.py:197
+#: aleksis/core/forms.py:180
 msgid "Who should see the announcement?"
 msgstr ""
 
-#: forms.py:198
+#: aleksis/core/forms.py:181
 msgid "Write your announcement:"
 msgstr ""
 
-#: forms.py:237
+#: aleksis/core/forms.py:220
 msgid "You are not allowed to create announcements which are only valid in the past."
 msgstr ""
 
-#: forms.py:241
+#: aleksis/core/forms.py:224
 msgid "The from date and time must be earlier then the until date and time."
 msgstr ""
 
-#: forms.py:249
+#: aleksis/core/forms.py:232
 msgid "You need at least one recipient."
 msgstr ""
 
-#: menus.py:7 templates/registration/login.html:21
-#: templates/two_factor/core/login.html:6
-#: templates/two_factor/core/login.html:10
-#: templates/two_factor/core/login.html:73
+#: aleksis/core/menus.py:7 aleksis/core/templates/registration/login.html:21
+#: 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
 msgid "Login"
 msgstr ""
 
-#: menus.py:13
+#: aleksis/core/menus.py:13
 msgid "Dashboard"
 msgstr ""
 
-#: menus.py:19
+#: aleksis/core/menus.py:19
 msgid "Account"
 msgstr ""
 
-#: menus.py:26
+#: aleksis/core/menus.py:26
 msgid "Stop impersonation"
 msgstr ""
 
-#: menus.py:35 templates/core/base.html:58
+#: aleksis/core/menus.py:35 aleksis/core/templates/core/base.html:58
 msgid "Logout"
 msgstr ""
 
-#: menus.py:41
+#: aleksis/core/menus.py:41
 msgid "Two factor auth"
 msgstr ""
 
-#: menus.py:50
+#: aleksis/core/menus.py:50
 msgid "Me"
 msgstr ""
 
-#: menus.py:61
+#: aleksis/core/menus.py:59
+#: aleksis/core/templates/dynamic_preferences/form.html:5
+msgid "Preferences"
+msgstr ""
+
+#: aleksis/core/menus.py:70
 msgid "Admin"
 msgstr ""
 
-#: menus.py:69 models.py:437 templates/core/announcement/list.html:7
-#: templates/core/announcement/list.html:8
+#: aleksis/core/menus.py:78 aleksis/core/models.py:434
+#: aleksis/core/templates/core/announcement/list.html:7
+#: aleksis/core/templates/core/announcement/list.html:8
 msgid "Announcements"
 msgstr ""
 
-#: menus.py:77 templates/core/data_management.html:6
-#: templates/core/data_management.html:7
+#: aleksis/core/menus.py:86 aleksis/core/templates/core/data_management.html:6
+#: aleksis/core/templates/core/data_management.html:7
 msgid "Data management"
 msgstr ""
 
-#: menus.py:85 templates/core/system_status.html:5
-#: templates/core/system_status.html:7
+#: aleksis/core/menus.py:94 aleksis/core/templates/core/system_status.html:5
+#: aleksis/core/templates/core/system_status.html:7
 msgid "System status"
 msgstr ""
 
-#: menus.py:93
+#: aleksis/core/menus.py:102
 msgid "Impersonation"
 msgstr ""
 
-#: menus.py:101
+#: aleksis/core/menus.py:110
 msgid "Manage school"
 msgstr ""
 
-#: menus.py:109
+#: aleksis/core/menus.py:118
+msgid "Configuration"
+msgstr ""
+
+#: aleksis/core/menus.py:126
 msgid "Backend Admin"
 msgstr ""
 
-#: menus.py:119
+#: aleksis/core/menus.py:136
 msgid "People"
 msgstr ""
 
-#: menus.py:142
+#: aleksis/core/menus.py:159
 msgid "Persons and accounts"
 msgstr ""
 
-#: menus.py:151
+#: aleksis/core/menus.py:168
 msgid "Groups and child groups"
 msgstr ""
 
-#: menus.py:163 templates/core/groups_child_groups.html:7
-#: templates/core/groups_child_groups.html:9
+#: aleksis/core/menus.py:180
+#: aleksis/core/templates/core/groups_child_groups.html:7
+#: aleksis/core/templates/core/groups_child_groups.html:9
 msgid "Assign child groups to groups"
 msgstr ""
 
-#: menus.py:171
+#: aleksis/core/menus.py:188
 msgid "Edit school information"
 msgstr ""
 
-#: menus.py:172 templates/core/edit_schoolterm.html:8
-#: templates/core/edit_schoolterm.html:9
+#: aleksis/core/menus.py:189
 msgid "Edit school term"
 msgstr ""
 
-#: models.py:33 models.py:559
-msgid "Name"
-msgstr ""
-
-#: models.py:35
-msgid "Official name"
-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"
-msgstr ""
-
-#: models.py:62
-msgid "Visible caption of the term"
-msgstr ""
-
-#: models.py:64
-msgid "Effective start date of term"
-msgstr ""
-
-#: models.py:65
-msgid "Effective end date of term"
-msgstr ""
-
-#: models.py:85
-msgid "School term"
-msgstr ""
-
-#: models.py:86
-msgid "School terms"
-msgstr ""
-
-#: models.py:96 templates/core/persons_accounts.html:36
+#: aleksis/core/models.py:53
+#: aleksis/core/templates/core/persons_accounts.html:36
 msgid "Person"
 msgstr "Personne"
 
-#: models.py:99
+#: aleksis/core/models.py:56
 msgid "Can view address"
 msgstr ""
 
-#: models.py:100
+#: aleksis/core/models.py:57
 #, fuzzy
 #| msgid "Contact details"
 msgid "Can view contact details"
 msgstr "Détails de contact"
 
-#: models.py:101
+#: aleksis/core/models.py:58
 msgid "Can view photo"
 msgstr ""
 
-#: models.py:102
+#: aleksis/core/models.py:59
 msgid "Can view persons groups"
 msgstr ""
 
-#: models.py:103
+#: aleksis/core/models.py:60
 #, fuzzy
 #| msgid "Contact details"
 msgid "Can view personal details"
 msgstr "Détails de contact"
 
-#: models.py:108
+#: aleksis/core/models.py:65
 msgid "female"
 msgstr ""
 
-#: models.py:108
+#: aleksis/core/models.py:65
 msgid "male"
 msgstr ""
 
-#: models.py:113
+#: aleksis/core/models.py:70
 msgid "Is person active?"
 msgstr ""
 
-#: models.py:115
+#: aleksis/core/models.py:72
 msgid "First name"
 msgstr "Prénom"
 
-#: models.py:116
+#: aleksis/core/models.py:73
 msgid "Last name"
 msgstr "Nom de famille"
 
-#: models.py:118
+#: aleksis/core/models.py:75
 msgid "Additional name(s)"
 msgstr ""
 
-#: models.py:122
+#: aleksis/core/models.py:79
 msgid "Short name"
 msgstr ""
 
-#: models.py:125
+#: aleksis/core/models.py:82
 msgid "Street"
 msgstr ""
 
-#: models.py:126
+#: aleksis/core/models.py:83
 msgid "Street number"
 msgstr ""
 
-#: models.py:127
+#: aleksis/core/models.py:84
 msgid "Postal code"
 msgstr ""
 
-#: models.py:128
+#: aleksis/core/models.py:85
 msgid "Place"
 msgstr ""
 
-#: models.py:130
+#: aleksis/core/models.py:87
 msgid "Home phone"
 msgstr ""
 
-#: models.py:131
+#: aleksis/core/models.py:88
 msgid "Mobile phone"
 msgstr ""
 
-#: models.py:133
+#: aleksis/core/models.py:90
 msgid "E-mail address"
 msgstr ""
 
-#: models.py:135
+#: aleksis/core/models.py:92
 msgid "Date of birth"
 msgstr "Date d'anniversaire"
 
-#: models.py:136
+#: aleksis/core/models.py:93
 msgid "Sex"
 msgstr "Sexe"
 
-#: models.py:138
+#: aleksis/core/models.py:95
 msgid "Photo"
 msgstr ""
 
-#: models.py:142
+#: aleksis/core/models.py:99
 msgid "Guardians / Parents"
 msgstr ""
 
-#: models.py:147 models.py:310 models.py:327 models.py:406 models.py:574
+#: aleksis/core/models.py:104 aleksis/core/models.py:306
+#: aleksis/core/models.py:323 aleksis/core/models.py:403
+#: aleksis/core/models.py:566
 msgid "Description"
 msgstr "Description"
 
-#: models.py:256
+#: aleksis/core/models.py:223
+msgid "Title of field"
+msgstr ""
+
+#: aleksis/core/models.py:224
+msgid "Type of field"
+msgstr ""
+
+#: aleksis/core/models.py:227
+msgid "Addtitional field"
+msgstr ""
+
+#: aleksis/core/models.py:228
+msgid "Addtitional fields"
+msgstr ""
+
+#: aleksis/core/models.py:238
 msgid "Group"
 msgstr "Groupe"
 
-#: models.py:259
+#: aleksis/core/models.py:241
 msgid "Can assign child groups to groups"
 msgstr ""
 
-#: models.py:264
+#: aleksis/core/models.py:246
 msgid "Long name of group"
 msgstr ""
 
-#: models.py:265
+#: aleksis/core/models.py:247
 msgid "Short name of group"
 msgstr ""
 
-#: models.py:274
+#: aleksis/core/models.py:256
 msgid "Parent groups"
 msgstr ""
 
-#: models.py:278
+#: aleksis/core/models.py:260
 msgid "Type of group"
 msgstr ""
 
-#: models.py:309 models.py:326 models.py:405
-#: templates/core/announcement/list.html:18
+#: aleksis/core/models.py:305 aleksis/core/models.py:322
+#: aleksis/core/models.py:402
+#: aleksis/core/templates/core/announcement/list.html:18
 msgid "Title"
 msgstr ""
 
-#: models.py:312
+#: aleksis/core/models.py:308
 msgid "Application"
 msgstr ""
 
-#: models.py:318
+#: aleksis/core/models.py:314
 msgid "Activity"
 msgstr ""
 
-#: models.py:319
+#: aleksis/core/models.py:315
 msgid "Activities"
 msgstr ""
 
-#: models.py:323
+#: aleksis/core/models.py:319
 msgid "Sender"
 msgstr ""
 
-#: models.py:328 models.py:407 models.py:560
+#: aleksis/core/models.py:324 aleksis/core/models.py:404
+#: aleksis/core/models.py:551
 msgid "Link"
 msgstr ""
 
-#: models.py:330
+#: aleksis/core/models.py:326
 msgid "Read"
 msgstr ""
 
-#: models.py:331
+#: aleksis/core/models.py:327
 msgid "Sent"
 msgstr ""
 
-#: models.py:343
+#: aleksis/core/models.py:340
 msgid "Notification"
 msgstr ""
 
-#: models.py:344
+#: aleksis/core/models.py:341
 msgid "Notifications"
 msgstr ""
 
-#: models.py:410
+#: aleksis/core/models.py:407
 msgid "Date and time from when to show"
 msgstr ""
 
-#: models.py:413
+#: aleksis/core/models.py:410
 msgid "Date and time until when to show"
 msgstr ""
 
-#: models.py:436
+#: aleksis/core/models.py:433
 msgid "Announcement"
 msgstr ""
 
-#: models.py:464
+#: aleksis/core/models.py:461
 msgid "Announcement recipient"
 msgstr ""
 
-#: models.py:465
+#: aleksis/core/models.py:462
 msgid "Announcement recipients"
 msgstr ""
 
-#: models.py:515
+#: aleksis/core/models.py:512
 msgid "Widget Title"
 msgstr ""
 
-#: models.py:516
+#: aleksis/core/models.py:513
 msgid "Activate Widget"
 msgstr ""
 
-#: models.py:528
+#: aleksis/core/models.py:525
 msgid "Dashboard Widget"
 msgstr ""
 
-#: models.py:529
+#: aleksis/core/models.py:526
 msgid "Dashboard Widgets"
 msgstr ""
 
-#: models.py:533
+#: aleksis/core/models.py:530
 msgid "Menu ID"
 msgstr ""
 
-#: models.py:534
+#: aleksis/core/models.py:531
 msgid "Menu name"
 msgstr ""
 
-#: models.py:551
+#: aleksis/core/models.py:542
 msgid "Custom menu"
 msgstr ""
 
-#: models.py:552
+#: aleksis/core/models.py:543
 msgid "Custom menus"
 msgstr ""
 
-#: models.py:557
+#: aleksis/core/models.py:548
 msgid "Menu"
 msgstr ""
 
-#: models.py:562
+#: aleksis/core/models.py:550
+msgid "Name"
+msgstr ""
+
+#: aleksis/core/models.py:553
 msgid "Icon"
 msgstr ""
 
-#: models.py:569
+#: aleksis/core/models.py:560
 msgid "Custom menu item"
 msgstr ""
 
-#: models.py:570
+#: aleksis/core/models.py:561
 msgid "Custom menu items"
 msgstr ""
 
-#: models.py:573
+#: aleksis/core/models.py:565
 msgid "Title of type"
 msgstr ""
 
-#: models.py:577
+#: aleksis/core/models.py:569
 #, fuzzy
 #| msgid "Group"
 msgid "Group type"
 msgstr "Groupe"
 
-#: models.py:578
+#: aleksis/core/models.py:570
 #, fuzzy
 #| msgid "Group"
 msgid "Group types"
 msgstr "Groupe"
 
-#: models.py:585
+#: aleksis/core/models.py:577
 msgid "Can view system status"
 msgstr ""
 
-#: models.py:586
+#: aleksis/core/models.py:578
 msgid "Can link persons to accounts"
 msgstr ""
 
-#: models.py:587
+#: aleksis/core/models.py:579
 msgid "Can manage data"
 msgstr ""
 
-#: models.py:588
+#: aleksis/core/models.py:580
 msgid "Can impersonate"
 msgstr ""
 
-#: models.py:589
+#: aleksis/core/models.py:581
 msgid "Can use search"
 msgstr ""
 
-#: settings.py:262
-msgid "German"
+#: aleksis/core/models.py:582
+msgid "Can change site preferences"
 msgstr ""
 
-#: settings.py:263
-msgid "English"
+#: aleksis/core/models.py:583
+msgid "Can change person preferences"
 msgstr ""
 
-#: settings.py:264
-msgid "French"
+#: aleksis/core/models.py:584
+msgid "Can change group preferences"
 msgstr ""
 
-#: settings.py:384
+#: aleksis/core/preferences.py:29
 msgid "Site title"
 msgstr ""
 
-#: settings.py:385
+#: aleksis/core/preferences.py:38
 msgid "Site description"
 msgstr ""
 
-#: settings.py:386
+#: aleksis/core/preferences.py:47
 msgid "Primary colour"
 msgstr ""
 
-#: settings.py:387
+#: aleksis/core/preferences.py:56
 msgid "Secondary colour"
 msgstr ""
 
-#: settings.py:388
+#: aleksis/core/preferences.py:65
 msgid "Mail out name"
 msgstr ""
 
-#: settings.py:389
+#: aleksis/core/preferences.py:74
 msgid "Mail out address"
 msgstr ""
 
-#: settings.py:390
+#: aleksis/core/preferences.py:84
 msgid "Link to privacy policy"
 msgstr ""
 
-#: settings.py:391
+#: aleksis/core/preferences.py:94
 msgid "Link to imprint"
 msgstr ""
 
-#: settings.py:392
-msgid "Name format of adresses"
+#: aleksis/core/preferences.py:104
+msgid "Name format for addressing"
 msgstr ""
 
-#: settings.py:393
-msgid "Channels to allow for notifications"
+#: aleksis/core/preferences.py:120
+msgid "Channels to use for notifications"
 msgstr ""
 
-#: settings.py:394
+#: aleksis/core/preferences.py:130
 msgid "Regular expression to match primary group, e.g. '^Class .*'"
 msgstr ""
 
-#: templates/403.html:10
+#: aleksis/core/preferences.py:139
+msgid "Display name of the school"
+msgstr ""
+
+#: aleksis/core/preferences.py:148
+msgid "Official name of the school, e.g. as given by supervisory authority"
+msgstr ""
+
+#: aleksis/core/settings.py:263
+msgid "German"
+msgstr ""
+
+#: aleksis/core/settings.py:264
+msgid "English"
+msgstr ""
+
+#: aleksis/core/settings.py:265
+msgid "French"
+msgstr ""
+
+#: aleksis/core/templates/403.html:10
 msgid "Error (403): You are not allowed to access the requested page or object."
 msgstr ""
 
-#: templates/403.html:12
+#: aleksis/core/templates/403.html:12
 msgid ""
 "\n"
 "      If you think this is an error in AlekSIS, please contact your site\n"
@@ -575,11 +586,11 @@ msgid ""
 "     "
 msgstr ""
 
-#: templates/404.html:10
+#: aleksis/core/templates/404.html:10
 msgid "Error (404): The requested page or object was not found."
 msgstr ""
 
-#: templates/404.html:12
+#: aleksis/core/templates/404.html:12
 msgid ""
 "\n"
 "      If you were redirected by a link on an external page,\n"
@@ -587,7 +598,7 @@ msgid ""
 "     "
 msgstr ""
 
-#: templates/404.html:16
+#: aleksis/core/templates/404.html:16
 msgid ""
 "\n"
 "      If you think this is an error in AlekSIS, please contact your site\n"
@@ -595,11 +606,11 @@ msgid ""
 "     "
 msgstr ""
 
-#: templates/500.html:10
+#: aleksis/core/templates/500.html:10
 msgid "Error (500): An unexpected error has occured.."
 msgstr ""
 
-#: templates/500.html:12
+#: aleksis/core/templates/500.html:12
 msgid ""
 "\n"
 "      Your site administrators will automatically be notified about this\n"
@@ -607,26 +618,27 @@ msgid ""
 "     "
 msgstr ""
 
-#: templates/503.html:10
+#: aleksis/core/templates/503.html:10
 msgid "The maintenance mode is currently enabled. Please try again later."
 msgstr ""
 
-#: templates/503.html:12
+#: aleksis/core/templates/503.html:12
 msgid ""
 "\n"
 "      This page is currently unavailable. If this error stays, contact your site administrators:\n"
 "     "
 msgstr ""
 
-#: templates/core/about.html:6 templates/core/about.html:15
+#: aleksis/core/templates/core/about.html:6
+#: aleksis/core/templates/core/about.html:15
 msgid "About AlekSIS"
 msgstr ""
 
-#: templates/core/about.html:7
+#: aleksis/core/templates/core/about.html:7
 msgid "AlekSIS – The Free School Information System"
 msgstr ""
 
-#: templates/core/about.html:17
+#: aleksis/core/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"
@@ -635,19 +647,19 @@ msgid ""
 "            "
 msgstr ""
 
-#: templates/core/about.html:25
+#: aleksis/core/templates/core/about.html:25
 msgid "Website of AlekSIS"
 msgstr ""
 
-#: templates/core/about.html:26
+#: aleksis/core/templates/core/about.html:26
 msgid "Source code"
 msgstr ""
 
-#: templates/core/about.html:35
+#: aleksis/core/templates/core/about.html:35
 msgid "Licence information"
 msgstr ""
 
-#: templates/core/about.html:37
+#: aleksis/core/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"
@@ -656,23 +668,23 @@ msgid ""
 "            "
 msgstr ""
 
-#: templates/core/about.html:45
+#: aleksis/core/templates/core/about.html:45
 msgid "Free/Open Source Licence"
 msgstr ""
 
-#: templates/core/about.html:46
+#: aleksis/core/templates/core/about.html:46
 msgid "Other Licence"
 msgstr ""
 
-#: templates/core/about.html:50
+#: aleksis/core/templates/core/about.html:50
 msgid "Full licence text"
 msgstr ""
 
-#: templates/core/about.html:51
+#: aleksis/core/templates/core/about.html:51
 msgid "More information about the EUPL"
 msgstr ""
 
-#: templates/core/about.html:90
+#: aleksis/core/templates/core/about.html:90
 #, python-format
 msgid ""
 "\n"
@@ -680,54 +692,56 @@ msgid ""
 "                  "
 msgstr ""
 
-#: templates/core/announcement/form.html:10
-#: templates/core/announcement/form.html:17
+#: aleksis/core/templates/core/announcement/form.html:10
+#: aleksis/core/templates/core/announcement/form.html:17
 msgid "Edit announcement"
 msgstr ""
 
-#: templates/core/announcement/form.html:12
+#: aleksis/core/templates/core/announcement/form.html:12
 msgid "Publish announcement"
 msgstr ""
 
-#: templates/core/announcement/form.html:19
-#: templates/core/announcement/list.html:13
+#: aleksis/core/templates/core/announcement/form.html:19
+#: aleksis/core/templates/core/announcement/list.html:13
 msgid "Publish new announcement"
 msgstr ""
 
-#: templates/core/announcement/form.html:30
+#: aleksis/core/templates/core/announcement/form.html:30
 msgid "Save und publish announcement"
 msgstr ""
 
-#: templates/core/announcement/list.html:19
+#: aleksis/core/templates/core/announcement/list.html:19
 msgid "Valid from"
 msgstr ""
 
-#: templates/core/announcement/list.html:20
+#: aleksis/core/templates/core/announcement/list.html:20
 msgid "Valid until"
 msgstr ""
 
-#: templates/core/announcement/list.html:21
+#: aleksis/core/templates/core/announcement/list.html:21
 msgid "Recipients"
 msgstr ""
 
-#: templates/core/announcement/list.html:22
+#: aleksis/core/templates/core/announcement/list.html:22
 msgid "Actions"
 msgstr ""
 
-#: templates/core/announcement/list.html:36 templates/core/group_full.html:15
-#: templates/core/person_full.html:18
+#: aleksis/core/templates/core/announcement/list.html:36
+#: aleksis/core/templates/core/group_full.html:22
+#: aleksis/core/templates/core/person_full.html:21
 msgid "Edit"
 msgstr ""
 
-#: templates/core/announcement/list.html:42
+#: aleksis/core/templates/core/announcement/list.html:42
 msgid "Delete"
 msgstr ""
 
-#: templates/core/announcement/list.html:50
+#: aleksis/core/templates/core/announcement/list.html:50
 msgid "There are no announcements."
 msgstr ""
 
-#: templates/core/announcements.html:9 templates/core/announcements.html:36
+#: aleksis/core/templates/core/announcements.html:9
+#: aleksis/core/templates/core/announcements.html:36
 #, python-format
 msgid ""
 "\n"
@@ -735,7 +749,7 @@ msgid ""
 "            "
 msgstr ""
 
-#: templates/core/announcements.html:13
+#: aleksis/core/templates/core/announcements.html:13
 #, python-format
 msgid ""
 "\n"
@@ -743,7 +757,7 @@ msgid ""
 "            "
 msgstr ""
 
-#: templates/core/announcements.html:40
+#: aleksis/core/templates/core/announcements.html:40
 #, python-format
 msgid ""
 "\n"
@@ -751,56 +765,60 @@ msgid ""
 "            "
 msgstr ""
 
-#: templates/core/base.html:56
+#: aleksis/core/templates/core/base.html:56
 msgid "Logged in as"
 msgstr ""
 
-#: templates/core/base.html:79 templates/search/search.html:7
-#: templates/search/search.html:22
+#: aleksis/core/templates/core/base.html:79
+#: aleksis/core/templates/search/search.html:7
+#: aleksis/core/templates/search/search.html:22
 msgid "Search"
 msgstr ""
 
-#: templates/core/base.html:151
+#: aleksis/core/templates/core/base.html:151
 msgid "About AlekSIS — The Free School Information System"
 msgstr ""
 
-#: templates/core/base.html:159
+#: aleksis/core/templates/core/base.html:159
 msgid "Impress"
 msgstr ""
 
-#: templates/core/base.html:167
+#: aleksis/core/templates/core/base.html:167
 msgid "Privacy Policy"
 msgstr ""
 
-#: templates/core/base_print.html:60
+#: aleksis/core/templates/core/base_print.html:60
 msgid "Powered by AlekSIS"
 msgstr ""
 
-#: templates/core/edit_group.html:6 templates/core/edit_group.html:7
+#: aleksis/core/templates/core/edit_group.html:6
+#: aleksis/core/templates/core/edit_group.html:7
 msgid "Edit group"
 msgstr ""
 
-#: templates/core/edit_person.html:8 templates/core/edit_person.html:9
+#: aleksis/core/templates/core/edit_person.html:8
+#: aleksis/core/templates/core/edit_person.html:9
 msgid "Edit person"
 msgstr ""
 
-#: templates/core/edit_school.html:8 templates/core/edit_school.html:9
-msgid "Edit school"
+#: aleksis/core/templates/core/group_full.html:28
+#: aleksis/core/templates/core/person_full.html:28
+msgid "Change preferences"
 msgstr ""
 
-#: templates/core/group_full.html:19
+#: aleksis/core/templates/core/group_full.html:34
 msgid "Owners"
 msgstr "Propriétaires"
 
-#: templates/core/group_full.html:22
+#: aleksis/core/templates/core/group_full.html:37
 msgid "Members"
 msgstr ""
 
-#: templates/core/groups.html:14
+#: aleksis/core/templates/core/groups.html:14
 msgid "Create group"
 msgstr ""
 
-#: templates/core/groups_child_groups.html:18
+#: aleksis/core/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"
@@ -808,34 +826,34 @@ msgid ""
 "        "
 msgstr ""
 
-#: templates/core/groups_child_groups.html:31
+#: aleksis/core/templates/core/groups_child_groups.html:31
 msgid "Update selection"
 msgstr ""
 
-#: templates/core/groups_child_groups.html:35
+#: aleksis/core/templates/core/groups_child_groups.html:35
 msgid "Clear all filters"
 msgstr ""
 
-#: templates/core/groups_child_groups.html:39
+#: aleksis/core/templates/core/groups_child_groups.html:39
 msgid "Currently selected groups"
 msgstr ""
 
-#: templates/core/groups_child_groups.html:52
+#: aleksis/core/templates/core/groups_child_groups.html:52
 msgid "Start assigning child groups for this groups"
 msgstr ""
 
-#: templates/core/groups_child_groups.html:61
+#: aleksis/core/templates/core/groups_child_groups.html:61
 msgid ""
 "\n"
 "            Please select some groups in order to go on with assigning.\n"
 "          "
 msgstr ""
 
-#: templates/core/groups_child_groups.html:72
+#: aleksis/core/templates/core/groups_child_groups.html:72
 msgid "Current group:"
 msgstr ""
 
-#: templates/core/groups_child_groups.html:78
+#: aleksis/core/templates/core/groups_child_groups.html:78
 msgid ""
 "\n"
 "            <strong>Please be careful!</strong><br/>\n"
@@ -845,88 +863,96 @@ msgid ""
 "          "
 msgstr ""
 
-#: 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
+#: 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
 msgid "Back"
 msgstr ""
 
-#: templates/core/groups_child_groups.html:99
-#: templates/core/groups_child_groups.html:134
-#: templates/two_factor/_wizard_actions.html:26
+#: 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
 msgid "Next"
 msgstr ""
 
-#: templates/core/groups_child_groups.html:106
-#: templates/core/groups_child_groups.html:141
-#: templates/core/save_button.html:3
+#: 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
 msgid "Save"
 msgstr ""
 
-#: templates/core/groups_child_groups.html:112
-#: templates/core/groups_child_groups.html:147
+#: aleksis/core/templates/core/groups_child_groups.html:112
+#: aleksis/core/templates/core/groups_child_groups.html:147
 msgid "Save and next"
 msgstr ""
 
-#: templates/core/index.html:4
+#: aleksis/core/templates/core/index.html:4
 msgid "Home"
 msgstr ""
 
-#: templates/core/index.html:11
+#: aleksis/core/templates/core/index.html:11
 msgid "AlekSIS (School Information System)"
 msgstr ""
 
-#: templates/core/index.html:43
+#: aleksis/core/templates/core/index.html:43
 msgid "Last activities"
 msgstr ""
 
-#: templates/core/index.html:61
+#: aleksis/core/templates/core/index.html:61
 msgid "No activities available yet."
 msgstr ""
 
-#: templates/core/index.html:66
+#: aleksis/core/templates/core/index.html:66
 msgid "Recent notifications"
 msgstr ""
 
-#: templates/core/index.html:82
+#: aleksis/core/templates/core/index.html:82
 msgid "More information →"
 msgstr ""
 
-#: templates/core/index.html:89
+#: aleksis/core/templates/core/index.html:89
 msgid "No notifications available yet."
 msgstr ""
 
-#: templates/core/no_person.html:11
+#: aleksis/core/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"
-"        "
+"            Your administrator account is not linked to any person. Therefore,\n"
+"            a dummy person has been linked to your account.\n"
+"          "
+msgstr ""
+
+#: aleksis/core/templates/core/no_person.html:19
+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
+#: aleksis/core/templates/core/offline.html:6
 msgid "No internet connection."
 msgstr ""
 
-#: templates/core/offline.html:9
+#: aleksis/core/templates/core/offline.html:9
 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"
 "      "
 msgstr ""
 
-#: templates/core/person_full.html:23
+#: aleksis/core/templates/core/person_full.html:34
 msgid "Contact details"
 msgstr "Détails de contact"
 
-#: templates/core/persons_accounts.html:7
-#: templates/core/persons_accounts.html:9
+#: aleksis/core/templates/core/persons_accounts.html:7
+#: aleksis/core/templates/core/persons_accounts.html:9
 msgid "Link persons to accounts"
 msgstr ""
 
-#: templates/core/persons_accounts.html:16
+#: aleksis/core/templates/core/persons_accounts.html:16
 msgid ""
 "\n"
 "        You can use this form to assign user accounts to persons. Use the\n"
@@ -936,94 +962,110 @@ msgid ""
 "      "
 msgstr ""
 
-#: templates/core/persons_accounts.html:31
-#: templates/core/persons_accounts.html:55
+#: aleksis/core/templates/core/persons_accounts.html:31
+#: aleksis/core/templates/core/persons_accounts.html:55
 msgid "Update"
 msgstr ""
 
-#: templates/core/persons_accounts.html:37
+#: aleksis/core/templates/core/persons_accounts.html:37
 msgid "Existing account"
 msgstr ""
 
-#: templates/core/persons_accounts.html:38
+#: aleksis/core/templates/core/persons_accounts.html:38
 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
+#: aleksis/core/templates/core/system_status.html:12
 msgid "System checks"
 msgstr ""
 
-#: templates/core/system_status.html:21
+#: aleksis/core/templates/core/system_status.html:21
 msgid "Maintenance mode enabled"
 msgstr ""
 
-#: templates/core/system_status.html:23
+#: aleksis/core/templates/core/system_status.html:23
 msgid ""
 "\n"
 "                Only admin and visitors from internal IPs can access thesite.\n"
 "              "
 msgstr ""
 
-#: templates/core/system_status.html:34
+#: aleksis/core/templates/core/system_status.html:34
 msgid "Maintenance mode disabled"
 msgstr ""
 
-#: templates/core/system_status.html:35
+#: aleksis/core/templates/core/system_status.html:35
 msgid "Everyone can access the site."
 msgstr ""
 
-#: templates/core/system_status.html:45
+#: aleksis/core/templates/core/system_status.html:45
 msgid "Debug mode enabled"
 msgstr ""
 
-#: templates/core/system_status.html:47
+#: aleksis/core/templates/core/system_status.html:47
 msgid ""
 "\n"
 "                The web server throws back debug information on errors. Do not use in production!\n"
 "              "
 msgstr ""
 
-#: templates/core/system_status.html:54
+#: aleksis/core/templates/core/system_status.html:54
 msgid "Debug mode disabled"
 msgstr ""
 
-#: templates/core/system_status.html:56
+#: aleksis/core/templates/core/system_status.html:56
 msgid ""
 "\n"
 "                Debug mode is disabled. Default error pages are displayed on errors.\n"
 "              "
 msgstr ""
 
-#: templates/impersonate/list_users.html:8
+#: aleksis/core/templates/dynamic_preferences/form.html:9
+msgid "Site preferences"
+msgstr ""
+
+#: aleksis/core/templates/dynamic_preferences/form.html:11
+msgid "My preferences"
+msgstr ""
+
+#: aleksis/core/templates/dynamic_preferences/form.html:13
+#, python-format
+msgid "Preferences for %(instance)s"
+msgstr ""
+
+#: aleksis/core/templates/dynamic_preferences/form.html:25
+msgid "Save preferences"
+msgstr ""
+
+#: aleksis/core/templates/dynamic_preferences/sections.html:7
+msgid "All"
+msgstr ""
+
+#: aleksis/core/templates/impersonate/list_users.html:8
 msgid "Impersonate user"
 msgstr ""
 
-#: templates/martor/editor.html:27
+#: aleksis/core/templates/martor/editor.html:27
 msgid "Uploading... please wait..."
 msgstr ""
 
-#: templates/martor/editor.html:36
+#: aleksis/core/templates/martor/editor.html:36
 msgid "Nothing to preview"
 msgstr ""
 
-#: templates/martor/emoji.html:4
+#: aleksis/core/templates/martor/emoji.html:4
 msgid "Select Emoji to Insert"
 msgstr ""
 
-#: templates/martor/emoji.html:8
+#: aleksis/core/templates/martor/emoji.html:8
 msgid "Preparing emojis..."
 msgstr ""
 
-#: templates/martor/guide.html:8
+#: aleksis/core/templates/martor/guide.html:8
 msgid "Markdown Guide"
 msgstr ""
 
-#: templates/martor/guide.html:9
+#: aleksis/core/templates/martor/guide.html:9
 #, python-format
 msgid ""
 "This site is powered by Markdown. For full\n"
@@ -1031,109 +1073,111 @@ msgid ""
 "            <a href=\"%(doc_url)s\" target=\"_blank\">click here</a>"
 msgstr ""
 
-#: templates/martor/guide.html:15 templates/martor/toolbar.html:42
+#: aleksis/core/templates/martor/guide.html:15
+#: aleksis/core/templates/martor/toolbar.html:42
 msgid "Code"
 msgstr ""
 
-#: templates/martor/guide.html:16
+#: aleksis/core/templates/martor/guide.html:16
 msgid "Or"
 msgstr ""
 
-#: templates/martor/guide.html:19
+#: aleksis/core/templates/martor/guide.html:19
 msgid "... to Get"
 msgstr ""
 
-#: templates/martor/toolbar.html:3
+#: aleksis/core/templates/martor/toolbar.html:3
 msgid "Bold"
 msgstr ""
 
-#: templates/martor/toolbar.html:6
+#: aleksis/core/templates/martor/toolbar.html:6
 msgid "Italic"
 msgstr ""
 
-#: templates/martor/toolbar.html:10
+#: aleksis/core/templates/martor/toolbar.html:10
 msgid "Horizontal Line"
 msgstr ""
 
-#: templates/martor/toolbar.html:15
+#: aleksis/core/templates/martor/toolbar.html:15
 msgid "Heading"
 msgstr ""
 
-#: templates/martor/toolbar.html:20 templates/martor/toolbar.html:23
-#: templates/martor/toolbar.html:26
+#: aleksis/core/templates/martor/toolbar.html:20
+#: aleksis/core/templates/martor/toolbar.html:23
+#: aleksis/core/templates/martor/toolbar.html:26
 msgid "H"
 msgstr ""
 
-#: templates/martor/toolbar.html:31
+#: aleksis/core/templates/martor/toolbar.html:31
 msgid "Pre or Code"
 msgstr ""
 
-#: templates/martor/toolbar.html:38
+#: aleksis/core/templates/martor/toolbar.html:38
 msgid "Pre"
 msgstr ""
 
-#: templates/martor/toolbar.html:48
+#: aleksis/core/templates/martor/toolbar.html:48
 msgid "Quote"
 msgstr ""
 
-#: templates/martor/toolbar.html:52
+#: aleksis/core/templates/martor/toolbar.html:52
 msgid "Unordered List"
 msgstr ""
 
-#: templates/martor/toolbar.html:56
+#: aleksis/core/templates/martor/toolbar.html:56
 msgid "Ordered List"
 msgstr ""
 
-#: templates/martor/toolbar.html:60
+#: aleksis/core/templates/martor/toolbar.html:60
 msgid "URL/Link"
 msgstr ""
 
-#: templates/martor/toolbar.html:82
+#: aleksis/core/templates/martor/toolbar.html:82
 msgid "Full Screen"
 msgstr ""
 
-#: templates/martor/toolbar.html:86
+#: aleksis/core/templates/martor/toolbar.html:86
 msgid "Markdown Guide (Help)"
 msgstr ""
 
-#: templates/search/search.html:8
+#: aleksis/core/templates/search/search.html:8
 msgid "Global Search"
 msgstr ""
 
-#: templates/search/search.html:15
+#: aleksis/core/templates/search/search.html:15
 msgid "Search Term"
 msgstr ""
 
-#: templates/search/search.html:26
+#: aleksis/core/templates/search/search.html:26
 msgid "Results"
 msgstr ""
 
-#: templates/search/search.html:38
+#: aleksis/core/templates/search/search.html:38
 msgid "No search results could be found to your search."
 msgstr ""
 
-#: templates/search/search.html:87
+#: aleksis/core/templates/search/search.html:87
 msgid "Please enter a search term above."
 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
+#: 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
 msgid "Enable Two-Factor Authentication"
 msgstr ""
 
-#: templates/two_factor/_wizard_actions.html:6
+#: aleksis/core/templates/two_factor/_wizard_actions.html:6
 msgid "Cancel"
 msgstr ""
 
-#: templates/two_factor/core/backup_tokens.html:5
-#: templates/two_factor/core/backup_tokens.html:9
-#: templates/two_factor/profile/profile.html:46
+#: 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
 msgid "Backup Tokens"
 msgstr ""
 
-#: templates/two_factor/core/backup_tokens.html:14
+#: aleksis/core/templates/two_factor/core/backup_tokens.html:14
 msgid ""
 "\n"
 "        Backup tokens can be used when your primary and backup\n"
@@ -1144,111 +1188,111 @@ msgid ""
 "      "
 msgstr ""
 
-#: templates/two_factor/core/backup_tokens.html:33
+#: aleksis/core/templates/two_factor/core/backup_tokens.html:33
 msgid ""
 "\n"
 "          Print these tokens and keep them somewhere safe.\n"
 "        "
 msgstr ""
 
-#: templates/two_factor/core/backup_tokens.html:39
+#: aleksis/core/templates/two_factor/core/backup_tokens.html:39
 msgid "You don't have any backup codes yet."
 msgstr ""
 
-#: templates/two_factor/core/backup_tokens.html:45
+#: aleksis/core/templates/two_factor/core/backup_tokens.html:45
 msgid "Back to Account Security"
 msgstr ""
 
-#: templates/two_factor/core/backup_tokens.html:49
+#: aleksis/core/templates/two_factor/core/backup_tokens.html:49
 msgid "Generate Tokens"
 msgstr ""
 
-#: templates/two_factor/core/login.html:16
+#: aleksis/core/templates/two_factor/core/login.html:16
 msgid "You have no permission to view this page. Please login with an other account."
 msgstr ""
 
-#: templates/two_factor/core/login.html:25
+#: aleksis/core/templates/two_factor/core/login.html:25
 msgid "Please login to see this page."
 msgstr ""
 
-#: templates/two_factor/core/login.html:28
+#: aleksis/core/templates/two_factor/core/login.html:28
 msgid ""
 "We are calling your phone right now, please enter the\n"
 "              digits you hear."
 msgstr ""
 
-#: templates/two_factor/core/login.html:31
+#: aleksis/core/templates/two_factor/core/login.html:31
 msgid ""
 "We sent you a text message, please enter the tokens we\n"
 "              sent."
 msgstr ""
 
-#: templates/two_factor/core/login.html:34
+#: aleksis/core/templates/two_factor/core/login.html:34
 msgid ""
 "Please enter the tokens generated by your token\n"
 "              generator."
 msgstr ""
 
-#: templates/two_factor/core/login.html:38
+#: aleksis/core/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"
 "            enter one of these backup tokens to login to your account."
 msgstr ""
 
-#: templates/two_factor/core/login.html:56
+#: aleksis/core/templates/two_factor/core/login.html:56
 msgid "Or, alternatively, use one of your backup phones:"
 msgstr ""
 
-#: templates/two_factor/core/login.html:66
+#: aleksis/core/templates/two_factor/core/login.html:66
 msgid "As a last resort, you can use a backup token:"
 msgstr ""
 
-#: templates/two_factor/core/login.html:69
+#: aleksis/core/templates/two_factor/core/login.html:69
 msgid "Use Backup Token"
 msgstr ""
 
-#: templates/two_factor/core/otp_required.html:9
+#: aleksis/core/templates/two_factor/core/otp_required.html:9
 msgid "Permission Denied"
 msgstr ""
 
-#: templates/two_factor/core/otp_required.html:10
+#: aleksis/core/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"
 "          security features in order to access this page."
 msgstr ""
 
-#: templates/two_factor/core/otp_required.html:14
+#: aleksis/core/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 ""
 
-#: templates/two_factor/core/otp_required.html:19
+#: aleksis/core/templates/two_factor/core/otp_required.html:19
 msgid "Go back"
 msgstr ""
 
-#: templates/two_factor/core/phone_register.html:5
-#: templates/two_factor/core/phone_register.html:9
+#: aleksis/core/templates/two_factor/core/phone_register.html:5
+#: aleksis/core/templates/two_factor/core/phone_register.html:9
 msgid "Add Backup Phone"
 msgstr ""
 
-#: templates/two_factor/core/phone_register.html:12
+#: aleksis/core/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 ""
 
-#: templates/two_factor/core/phone_register.html:16
+#: aleksis/core/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 ""
 
-#: templates/two_factor/core/setup.html:9
+#: aleksis/core/templates/two_factor/core/setup.html:9
 msgid ""
 "\n"
 "        You are about to take your account security to the\n"
@@ -1257,14 +1301,14 @@ msgid ""
 "      "
 msgstr ""
 
-#: templates/two_factor/core/setup.html:17
+#: aleksis/core/templates/two_factor/core/setup.html:17
 msgid ""
 "\n"
 "        Please select which authentication method you would like to use:\n"
 "      "
 msgstr ""
 
-#: templates/two_factor/core/setup.html:23
+#: aleksis/core/templates/two_factor/core/setup.html:23
 msgid ""
 "\n"
 "        To start using a token generator, please use your\n"
@@ -1273,7 +1317,7 @@ msgid ""
 "      "
 msgstr ""
 
-#: templates/two_factor/core/setup.html:34
+#: aleksis/core/templates/two_factor/core/setup.html:34
 msgid ""
 "\n"
 "        Please enter the phone number you wish to receive the\n"
@@ -1281,7 +1325,7 @@ msgid ""
 "      "
 msgstr ""
 
-#: templates/two_factor/core/setup.html:41
+#: aleksis/core/templates/two_factor/core/setup.html:41
 msgid ""
 "\n"
 "        Please enter the phone number you wish to be called on.\n"
@@ -1289,21 +1333,21 @@ msgid ""
 "      "
 msgstr ""
 
-#: templates/two_factor/core/setup.html:50
+#: aleksis/core/templates/two_factor/core/setup.html:50
 msgid ""
 "\n"
 "            We are calling your phone right now, please enter the digits you hear.\n"
 "          "
 msgstr ""
 
-#: templates/two_factor/core/setup.html:56
+#: aleksis/core/templates/two_factor/core/setup.html:56
 msgid ""
 "\n"
 "            We sent you a text message, please enter the tokens we sent.\n"
 "          "
 msgstr ""
 
-#: templates/two_factor/core/setup.html:63
+#: aleksis/core/templates/two_factor/core/setup.html:63
 msgid ""
 "\n"
 "          We've encountered an issue with the selected authentication method. Please\n"
@@ -1313,7 +1357,7 @@ msgid ""
 "        "
 msgstr ""
 
-#: templates/two_factor/core/setup.html:73
+#: aleksis/core/templates/two_factor/core/setup.html:73
 msgid ""
 "\n"
 "        To identify and verify your YubiKey, please insert a\n"
@@ -1322,29 +1366,29 @@ msgid ""
 "      "
 msgstr ""
 
-#: templates/two_factor/core/setup_complete.html:5
-#: templates/two_factor/core/setup_complete.html:9
+#: aleksis/core/templates/two_factor/core/setup_complete.html:5
+#: aleksis/core/templates/two_factor/core/setup_complete.html:9
 msgid "Two-Factor Authentication successfully enabled"
 msgstr ""
 
-#: templates/two_factor/core/setup_complete.html:14
+#: aleksis/core/templates/two_factor/core/setup_complete.html:14
 msgid ""
 "\n"
 "        Congratulations, you've successfully enabled two-factor authentication.\n"
 "      "
 msgstr ""
 
-#: templates/two_factor/core/setup_complete.html:24
-#: templates/two_factor/core/setup_complete.html:44
+#: aleksis/core/templates/two_factor/core/setup_complete.html:24
+#: aleksis/core/templates/two_factor/core/setup_complete.html:44
 msgid "Back to Profile"
 msgstr ""
 
-#: templates/two_factor/core/setup_complete.html:28
-#: templates/two_factor/core/setup_complete.html:48
+#: aleksis/core/templates/two_factor/core/setup_complete.html:28
+#: aleksis/core/templates/two_factor/core/setup_complete.html:48
 msgid "Generate backup codes"
 msgstr ""
 
-#: templates/two_factor/core/setup_complete.html:34
+#: aleksis/core/templates/two_factor/core/setup_complete.html:34
 msgid ""
 "\n"
 "          However, it might happen that you don't have access to\n"
@@ -1353,65 +1397,65 @@ msgid ""
 "        "
 msgstr ""
 
-#: templates/two_factor/core/setup_complete.html:52
-#: templates/two_factor/profile/profile.html:41
+#: aleksis/core/templates/two_factor/core/setup_complete.html:52
+#: aleksis/core/templates/two_factor/profile/profile.html:41
 msgid "Add Phone Number"
 msgstr ""
 
-#: 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
+#: 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
 msgid "Disable Two-Factor Authentication"
 msgstr ""
 
-#: templates/two_factor/profile/disable.html:12
+#: aleksis/core/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 ""
 
-#: templates/two_factor/profile/disable.html:26
+#: aleksis/core/templates/two_factor/profile/disable.html:26
 msgid "Disable"
 msgstr ""
 
-#: templates/two_factor/profile/profile.html:5
-#: templates/two_factor/profile/profile.html:10
+#: aleksis/core/templates/two_factor/profile/profile.html:5
+#: aleksis/core/templates/two_factor/profile/profile.html:10
 msgid "Account Security"
 msgstr ""
 
-#: templates/two_factor/profile/profile.html:15
+#: aleksis/core/templates/two_factor/profile/profile.html:15
 msgid "Tokens will be generated by your token generator."
 msgstr ""
 
-#: templates/two_factor/profile/profile.html:17
+#: aleksis/core/templates/two_factor/profile/profile.html:17
 #, python-format
 msgid "Primary method: %(primary)s"
 msgstr ""
 
-#: templates/two_factor/profile/profile.html:19
+#: aleksis/core/templates/two_factor/profile/profile.html:19
 msgid "Tokens will be generated by your YubiKey."
 msgstr ""
 
-#: templates/two_factor/profile/profile.html:23
+#: aleksis/core/templates/two_factor/profile/profile.html:23
 msgid "Backup Phone Numbers"
 msgstr ""
 
-#: templates/two_factor/profile/profile.html:24
+#: aleksis/core/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 ""
 
-#: templates/two_factor/profile/profile.html:33
+#: aleksis/core/templates/two_factor/profile/profile.html:33
 msgid "Unregister"
 msgstr ""
 
-#: templates/two_factor/profile/profile.html:48
+#: aleksis/core/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 ""
 
-#: templates/two_factor/profile/profile.html:50
+#: aleksis/core/templates/two_factor/profile/profile.html:50
 #, python-format
 msgid ""
 "\n"
@@ -1424,11 +1468,11 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: templates/two_factor/profile/profile.html:59
+#: aleksis/core/templates/two_factor/profile/profile.html:59
 msgid "Show Codes"
 msgstr ""
 
-#: templates/two_factor/profile/profile.html:65
+#: aleksis/core/templates/two_factor/profile/profile.html:65
 msgid ""
 "\n"
 "        However we strongly discourage you to do so, you can\n"
@@ -1436,7 +1480,7 @@ msgid ""
 "      "
 msgstr ""
 
-#: templates/two_factor/profile/profile.html:78
+#: aleksis/core/templates/two_factor/profile/profile.html:78
 msgid ""
 "\n"
 "        Two-factor authentication is not enabled for your\n"
@@ -1445,42 +1489,38 @@ msgid ""
 "      "
 msgstr ""
 
-#: util/notifications.py:66
+#: aleksis/core/util/notifications.py:66
 msgid "E-Mail"
 msgstr ""
 
-#: util/notifications.py:67
+#: aleksis/core/util/notifications.py:67
 msgid "SMS"
 msgstr ""
 
-#: views.py:205
+#: aleksis/core/views.py:208
 msgid "The child groups were successfully saved."
 msgstr ""
 
-#: views.py:235
+#: aleksis/core/views.py:238
 msgid "The person has been saved."
 msgstr ""
 
-#: views.py:265
+#: aleksis/core/views.py:268
 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
+#: aleksis/core/views.py:299
 msgid "You are not allowed to mark notifications from other users as read!"
 msgstr ""
 
-#: views.py:383
+#: aleksis/core/views.py:340
 msgid "The announcement has been saved."
 msgstr ""
 
-#: views.py:396
+#: aleksis/core/views.py:353
 msgid "The announcement has been deleted."
 msgstr ""
+
+#: aleksis/core/views.py:417
+msgid "The preferences has been saved successfully."
+msgstr ""