diff --git a/aleksis/apps/alsijil/assets/messages.json b/aleksis/apps/alsijil/assets/messages.json
index 4b89240f8ebf510ecb7cc31fbc5efb7cc44d670e..ecf5f79e4ece66dbe7b7a35f21af2a773f944a44 100644
--- a/aleksis/apps/alsijil/assets/messages.json
+++ b/aleksis/apps/alsijil/assets/messages.json
@@ -50,4 +50,4 @@
       "title": "Kursbuch"
     }
   }
-}
\ No newline at end of file
+}
diff --git a/aleksis/apps/alsijil/frontend/index.js b/aleksis/apps/alsijil/frontend/index.js
index 38293a43aeee9f3b9dc25a725f2531ebae71388c..2fa2825ea187bdb000a0751f9c6f1588244d26aa 100644
--- a/aleksis/apps/alsijil/frontend/index.js
+++ b/aleksis/apps/alsijil/frontend/index.js
@@ -158,9 +158,36 @@ export default {
         inMenu: true,
         titleKey: "alsijil.instruction.menu_title",
         icon: "mdi-folder-check-outline",
-        permission: "alsijil.view_instructions_rule"
-      }
-  },
+        permission: "alsijil.view_instructions_rule",
+      },
+      props: {
+        byTheGreatnessOfTheAlmightyAleksolotlISwearIAmWorthyOfUsingTheLegacyBaseTemplate: true,
+      },
+    },
+    {
+      path: "instructions/create/",
+      component: () => import("aleksis.core/components/LegacyBaseTemplate.vue"),
+      name: "alsijil.createInstruction",
+      props: {
+        byTheGreatnessOfTheAlmightyAleksolotlISwearIAmWorthyOfUsingTheLegacyBaseTemplate: true,
+      },
+    },
+    {
+      path: "instructions/:pk/edit",
+      component: () => import("aleksis.core/components/LegacyBaseTemplate.vue"),
+      name: "alsijil.editInstruction",
+      props: {
+        byTheGreatnessOfTheAlmightyAleksolotlISwearIAmWorthyOfUsingTheLegacyBaseTemplate: true,
+      },
+    },
+    {
+      path: "instructions/:pk/delete",
+      component: () => import("aleksis.core/components/LegacyBaseTemplate.vue"),
+      name: "alsijil.deleteInstruction",
+      props: {
+        byTheGreatnessOfTheAlmightyAleksolotlISwearIAmWorthyOfUsingTheLegacyBaseTemplate: true,
+      },
+    },
     {
       path: "persons/:id_(\\d+)/",
       component: () => import("aleksis.core/components/LegacyBaseTemplate.vue"),
diff --git a/aleksis/apps/alsijil/frontend/messages/de.json b/aleksis/apps/alsijil/frontend/messages/de.json
index 09456c74481a13e390b1e08e2389d027d8c6974d..67c9af5bf5853c3097c638e037617d8591f5eded 100644
--- a/aleksis/apps/alsijil/frontend/messages/de.json
+++ b/aleksis/apps/alsijil/frontend/messages/de.json
@@ -31,6 +31,9 @@
     },
     "all_lessons": {
       "menu_title": "Alle Stunden"
+    },
+    "instruction": {
+      "menu_title": "Belehrungen"
     }
   }
 }
diff --git a/aleksis/apps/alsijil/frontend/messages/en.json b/aleksis/apps/alsijil/frontend/messages/en.json
index cd9798229b0d867611da8dc6b89dfe02eae91f85..18c75c8bb58e3996192a87004ee54169be1ec3c5 100644
--- a/aleksis/apps/alsijil/frontend/messages/en.json
+++ b/aleksis/apps/alsijil/frontend/messages/en.json
@@ -31,6 +31,9 @@
     "all_lessons": {
       "menu_title": "All lessons"
     },
-    "menu_title": "Class register"
+    "menu_title": "Class register",
+    "instruction": {
+      "menu_title": "Instructions"
+    }
   }
 }
diff --git a/aleksis/apps/alsijil/migrations/0017_instruction.py b/aleksis/apps/alsijil/migrations/0018_instruction.py
similarity index 99%
rename from aleksis/apps/alsijil/migrations/0017_instruction.py
rename to aleksis/apps/alsijil/migrations/0018_instruction.py
index 11e200873c02ce578fda5364804bad0efc363dba..101a97fa38b7ea41769d32f6d75fc985c2053228 100644
--- a/aleksis/apps/alsijil/migrations/0017_instruction.py
+++ b/aleksis/apps/alsijil/migrations/0018_instruction.py
@@ -10,7 +10,7 @@ class Migration(migrations.Migration):
     dependencies = [
         ('core', '0019_fix_uniqueness_per_site'),
         ('sites', '0002_alter_domain_unique'),
-        ('alsijil', '0016_add_not_counted_excuse_types'),
+        ('alsijil', '0017_rename_late_to_tardiness'),
     ]
 
     operations = [
diff --git a/aleksis/apps/alsijil/migrations/0018_done_instructions.py b/aleksis/apps/alsijil/migrations/0019_done_instructions.py
similarity index 92%
rename from aleksis/apps/alsijil/migrations/0018_done_instructions.py
rename to aleksis/apps/alsijil/migrations/0019_done_instructions.py
index 968d8491a8aff2e522972dd3de78086eee43715e..8868399313d7612f6f37363cd67c4ef03b08b7ee 100644
--- a/aleksis/apps/alsijil/migrations/0018_done_instructions.py
+++ b/aleksis/apps/alsijil/migrations/0019_done_instructions.py
@@ -7,7 +7,7 @@ class Migration(migrations.Migration):
 
     dependencies = [
         ('core', '0019_fix_uniqueness_per_site'),
-        ('alsijil', '0017_instruction'),
+        ('alsijil', '0018_instruction'),
     ]
 
     operations = [
diff --git a/aleksis/apps/alsijil/views.py b/aleksis/apps/alsijil/views.py
index 0208255e5b05f2c56cb1cd7e17cda5e4921545aa..4bfc9d85a0a5466c5b7ea4edf5ef6ad0dd4d9ba1 100644
--- a/aleksis/apps/alsijil/views.py
+++ b/aleksis/apps/alsijil/views.py
@@ -1417,7 +1417,7 @@ class InstructionsListView(PermissionRequiredMixin, FilterView):
         for doc in docs:
             groups = doc.register_object.get_groups().all()
             for group in groups:
-                parent_groups = group.parent_groups_recursive
+                parent_groups = group.parent_groups.all()  # FIXME Recursive again
                 group_members = set(group.members.all())
                 selected_groups = list(parent_groups) + [group]