diff --git a/AKModel/forms.py b/AKModel/forms.py
index e52112f63d74e7aa6e77821c1f033ee76b8a9f7e..aaa621646eac8d9981086e67bd9bd7d996e269d9 100644
--- a/AKModel/forms.py
+++ b/AKModel/forms.py
@@ -69,6 +69,17 @@ class NewEventWizardImportForm(forms.Form):
         self.fields["import_requirements"].queryset = self.fields["import_requirements"].queryset.filter(
             event=self.initial["import_event"])
 
+        from django.apps import apps
+        if apps.is_installed("AKDashboard"):
+            from AKDashboard.models import DashboardButton
+
+            self.fields["import_buttons"] = forms.ModelMultipleChoiceField(
+                queryset=DashboardButton.objects.filter(event=self.initial["import_event"]),
+                widget=forms.CheckboxSelectMultiple,
+                label=_("Copy dashboard buttons"),
+                required=False,
+            )
+
 
 class NewEventWizardActivateForm(forms.ModelForm):
     class Meta:
diff --git a/AKModel/locale/de_DE/LC_MESSAGES/django.po b/AKModel/locale/de_DE/LC_MESSAGES/django.po
index f3949e44ece8ec1243c560b38f5e5d53f094c7d5..5fe675170113375eabeb013d31462973a3976336 100644
--- a/AKModel/locale/de_DE/LC_MESSAGES/django.po
+++ b/AKModel/locale/de_DE/LC_MESSAGES/django.po
@@ -2,7 +2,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2022-12-28 01:03+0100\n"
+"POT-Creation-Date: 2023-01-01 19:22+0100\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -25,11 +25,11 @@ msgstr "Status"
 msgid "Toggle plan visibility"
 msgstr "Plansichtbarkeit ändern"
 
-#: AKModel/admin.py:73 AKModel/admin.py:84 AKModel/views.py:491
+#: AKModel/admin.py:73 AKModel/admin.py:84 AKModel/views.py:496
 msgid "Publish plan"
 msgstr "Plan veröffentlichen"
 
-#: AKModel/admin.py:76 AKModel/admin.py:89 AKModel/views.py:501
+#: AKModel/admin.py:76 AKModel/admin.py:89 AKModel/views.py:506
 msgid "Unpublish plan"
 msgstr "Plan verbergen"
 
@@ -53,11 +53,11 @@ msgstr "In Wiki-Syntax exportieren"
 msgid "Cannot export AKs from more than one event at the same time."
 msgstr "Kann nicht AKs von mehreren Events zur selben Zeit exportieren."
 
-#: AKModel/admin.py:236 AKModel/views.py:471
+#: AKModel/admin.py:236 AKModel/views.py:476
 msgid "Reset interest in AKs"
 msgstr "Interesse an AKs zurücksetzen"
 
-#: AKModel/admin.py:241 AKModel/views.py:481
+#: AKModel/admin.py:241 AKModel/views.py:486
 msgid "Reset AKs' interest counters"
 msgstr "Interessenszähler der AKs zurücksetzen"
 
@@ -65,15 +65,15 @@ msgstr "Interessenszähler der AKs zurücksetzen"
 msgid "AK Details"
 msgstr "AK-Details"
 
-#: AKModel/admin.py:384 AKModel/views.py:441
+#: AKModel/admin.py:384 AKModel/views.py:446
 msgid "Mark Constraint Violations as manually resolved"
 msgstr "Markiere Constraintverletzungen als manuell behoben"
 
-#: AKModel/admin.py:389 AKModel/views.py:451
+#: AKModel/admin.py:389 AKModel/views.py:456
 msgid "Set Constraint Violations to level \"violation\""
 msgstr "Constraintverletzungen auf Level \"Violation\" setzen"
 
-#: AKModel/admin.py:394 AKModel/views.py:461
+#: AKModel/admin.py:394 AKModel/views.py:466
 msgid "Set Constraint Violations to level \"warning\""
 msgstr "Constraintverletzungen auf Level \"Warning\" setzen"
 
@@ -155,52 +155,56 @@ msgstr "AK-Kategorie, deren Verfügbarkeit hier abgebildet wird"
 msgid "Availabilities"
 msgstr "Verfügbarkeiten"
 
-#: AKModel/forms.py:42
+#: AKModel/forms.py:43
 msgid "Copy ak requirements and ak categories of existing event"
 msgstr "AK-Anforderungen und AK-Kategorien eines existierenden Events kopieren"
 
-#: AKModel/forms.py:43
+#: AKModel/forms.py:44
 msgid "You can choose what to copy in the next step"
 msgstr ""
 "Im nächsten Schritt kann ausgewählt werden, was genau kopiert werden soll"
 
-#: AKModel/forms.py:51
+#: AKModel/forms.py:52
 msgid "Copy ak categories"
 msgstr "AK-Kategorien kopieren"
 
-#: AKModel/forms.py:58
+#: AKModel/forms.py:59
 msgid "Copy ak requirements"
 msgstr "AK-Anforderungen kopieren"
 
-#: AKModel/forms.py:92
+#: AKModel/forms.py:78
+msgid "Copy dashboard buttons"
+msgstr "Dashboard-Buttons kopieren"
+
+#: AKModel/forms.py:102
 msgid "# next AKs"
 msgstr "# nächste AKs"
 
-#: AKModel/forms.py:93
+#: AKModel/forms.py:103
 msgid "How many next AKs should be shown on a slide?"
 msgstr "Wie viele nächste AKs sollen auf einer Folie angezeigt werden?"
 
-#: AKModel/forms.py:96
+#: AKModel/forms.py:106
 msgid "Presentation only?"
 msgstr "Nur Vorstellung?"
 
-#: AKModel/forms.py:98 AKModel/forms.py:105
+#: AKModel/forms.py:108 AKModel/forms.py:115
 msgid "Yes"
 msgstr "Ja"
 
-#: AKModel/forms.py:98 AKModel/forms.py:105
+#: AKModel/forms.py:108 AKModel/forms.py:115
 msgid "No"
 msgstr "Nein"
 
-#: AKModel/forms.py:100
+#: AKModel/forms.py:110
 msgid "Restrict AKs to those that asked for chance to be presented?"
 msgstr "AKs auf solche, die um eine Vorstellung gebeten haben, einschränken?"
 
-#: AKModel/forms.py:103
+#: AKModel/forms.py:113
 msgid "Space for notes in wishes?"
 msgstr "Platz für Notizen bei den Wünschen?"
 
-#: AKModel/forms.py:107
+#: AKModel/forms.py:117
 msgid ""
 "Create symbols indicating space to note down owners and timeslots for "
 "wishes, e.g., to be filled out on a touch screen while presenting?"
@@ -209,11 +213,11 @@ msgstr ""
 "fürWünsche markieren, z.B. um während der Präsentation auf einem Touchscreen "
 "ausgefüllt zu werden?"
 
-#: AKModel/forms.py:113 AKModel/models.py:661
+#: AKModel/forms.py:123 AKModel/models.py:661
 msgid "Default Slots"
 msgstr "Standardslots"
 
-#: AKModel/forms.py:115
+#: AKModel/forms.py:125
 msgid ""
 "Click and drag to add default slots, double-click to delete. Or use the "
 "start and end inputs to add entries to the calendar view."
@@ -222,11 +226,11 @@ msgstr ""
 "Einträge zu löschen. Oder Start- und End-Eingabe verwenden, um der "
 "Kalenderansicht neue Einträge hinzuzufügen."
 
-#: AKModel/forms.py:125
+#: AKModel/forms.py:135
 msgid "New rooms"
 msgstr "Neue Räume"
 
-#: AKModel/forms.py:126
+#: AKModel/forms.py:136
 msgid ""
 "Enter room details in CSV format. Required colum is \"name\", optional "
 "colums are \"location\", \"capacity\", and \"url\" for online/hybrid rooms. "
@@ -236,7 +240,7 @@ msgstr ""
 "Spalten sind \"location\", \"capacity\", und \"url\" for Online-/"
 "HybridräumeTrennzeichen: Semikolon"
 
-#: AKModel/forms.py:137
+#: AKModel/forms.py:147
 msgid "CSV must contain a name column"
 msgstr "CSV muss eine name-Spalte enthalten"
 
@@ -276,7 +280,7 @@ msgstr "Zeitzone"
 msgid "Time Zone where this event takes place in"
 msgstr "Zeitzone in der das Event stattfindet"
 
-#: AKModel/models.py:27 AKModel/views.py:251
+#: AKModel/models.py:27 AKModel/views.py:252
 msgid "Start"
 msgstr "Start"
 
@@ -637,7 +641,7 @@ msgstr "AK bei Wiki-Export berücksichtigen?"
 
 #: AKModel/models.py:298 AKModel/models.py:505
 #: AKModel/templates/admin/AKModel/status.html:57
-#: AKModel/templates/admin/AKModel/status.html:64 AKModel/views.py:369
+#: AKModel/templates/admin/AKModel/status.html:64 AKModel/views.py:374
 msgid "AKs"
 msgstr "AKs"
 
@@ -942,7 +946,7 @@ msgid "Successfully imported.<br><br>Do you want to activate your event now?"
 msgstr "Erfolgreich importiert.<br><br>Soll das Event jetzt aktiviert werden?"
 
 #: AKModel/templates/admin/AKModel/event_wizard/activate.html:27
-#: AKModel/views.py:256
+#: AKModel/views.py:257
 msgid "Finish"
 msgstr "Abschluss"
 
@@ -1035,7 +1039,7 @@ msgstr "Bisher keine Räume"
 msgid "Add Room"
 msgstr "Raum hinzufügen"
 
-#: AKModel/templates/admin/AKModel/status.html:55 AKModel/views.py:588
+#: AKModel/templates/admin/AKModel/status.html:55 AKModel/views.py:593
 msgid "Import Rooms from CSV"
 msgstr "Räume aus CSV importieren"
 
@@ -1064,7 +1068,7 @@ msgstr "AKs, die besondere Aufmerksamkeit benötigen"
 msgid "Enter Interest"
 msgstr "Interesse erfassen"
 
-#: AKModel/templates/admin/AKModel/status.html:94 AKModel/views.py:513
+#: AKModel/templates/admin/AKModel/status.html:94 AKModel/views.py:518
 msgid "Edit Default Slots"
 msgstr "Standardslots bearbeiten"
 
@@ -1080,7 +1084,7 @@ msgstr "AKs als CSV exportieren"
 msgid "Export AKs for Wiki"
 msgstr "AKs im Wiki-Format exportieren"
 
-#: AKModel/templates/admin/AKModel/status.html:102 AKModel/views.py:339
+#: AKModel/templates/admin/AKModel/status.html:102 AKModel/views.py:344
 msgid "Export AK Slides"
 msgstr "AK-Folien exportieren"
 
@@ -1133,162 +1137,162 @@ msgstr "Login"
 msgid "Register"
 msgstr "Registrieren"
 
-#: AKModel/views.py:154
+#: AKModel/views.py:155
 msgid "Event Status"
 msgstr "Eventstatus"
 
-#: AKModel/views.py:167
+#: AKModel/views.py:168
 msgid "Requirements for Event"
 msgstr "Anforderungen für das Event"
 
-#: AKModel/views.py:181
+#: AKModel/views.py:182
 msgid "AK CSV Export"
 msgstr "AK-CSV-Export"
 
-#: AKModel/views.py:195
+#: AKModel/views.py:196
 msgid "AK Wiki Export"
 msgstr "AK-Wiki-Export"
 
-#: AKModel/views.py:206 AKModel/views.py:355
+#: AKModel/views.py:207 AKModel/views.py:360
 msgid "Wishes"
 msgstr "Wünsche"
 
-#: AKModel/views.py:227
+#: AKModel/views.py:228
 msgid "Delete AK Orga Messages"
 msgstr "AK-Organachrichten löschen"
 
-#: AKModel/views.py:242
+#: AKModel/views.py:243
 msgid "AK Orga Messages successfully deleted"
 msgstr "AK-Organachrichten erfolgreich gelöscht"
 
-#: AKModel/views.py:252
+#: AKModel/views.py:253
 msgid "Settings"
 msgstr "Einstellungen"
 
-#: AKModel/views.py:253
+#: AKModel/views.py:254
 msgid "Event created, Prepare Import"
 msgstr "Event angelegt, Import vorbereiten"
 
-#: AKModel/views.py:254
+#: AKModel/views.py:255
 msgid "Import categories & requirements"
 msgstr "Kategorien & Anforderungen kopieren"
 
-#: AKModel/views.py:255
+#: AKModel/views.py:256
 msgid "Activate?"
 msgstr "Aktivieren?"
 
-#: AKModel/views.py:314
+#: AKModel/views.py:319
 #, python-format
 msgid "Copied '%(obj)s'"
 msgstr "'%(obj)s' kopiert"
 
-#: AKModel/views.py:317
+#: AKModel/views.py:322
 #, python-format
 msgid "Could not copy '%(obj)s' (%(error)s)"
 msgstr "'%(obj)s' konnte nicht kopiert werden (%(error)s)"
 
-#: AKModel/views.py:350
+#: AKModel/views.py:355
 msgid "Symbols"
 msgstr "Symbole"
 
-#: AKModel/views.py:351
+#: AKModel/views.py:356
 msgid "Who?"
 msgstr "Wer?"
 
-#: AKModel/views.py:352
+#: AKModel/views.py:357
 msgid "Duration(s)"
 msgstr "Dauer(n)"
 
-#: AKModel/views.py:353
+#: AKModel/views.py:358
 msgid "Reso intention?"
 msgstr "Resolutionsabsicht?"
 
-#: AKModel/views.py:354
+#: AKModel/views.py:359
 msgid "Category (for Wishes)"
 msgstr "Kategorie (für Wünsche)"
 
-#: AKModel/views.py:443
+#: AKModel/views.py:448
 msgid "The following Constraint Violations will be marked as manually resolved"
 msgstr ""
 "Die folgenden Constraintverletzungen werden als manuell behoben markiert."
 
-#: AKModel/views.py:444
+#: AKModel/views.py:449
 msgid "Constraint Violations marked as resolved"
 msgstr "Constraintverletzungen als manuell behoben markiert"
 
-#: AKModel/views.py:453
+#: AKModel/views.py:458
 msgid "The following Constraint Violations will be set to level 'violation'"
 msgstr ""
 "Die folgenden Constraintverletzungen werden auf das Level \"Violation\" "
 "gesetzt."
 
-#: AKModel/views.py:454
+#: AKModel/views.py:459
 msgid "Constraint Violations set to level 'violation'"
 msgstr "Constraintverletzungen auf Level \"Violation\" gesetzt"
 
-#: AKModel/views.py:463
+#: AKModel/views.py:468
 msgid "The following Constraint Violations will be set to level 'warning'"
 msgstr ""
 "Die folgenden Constraintverletzungen werden auf das Level 'warning' gesetzt."
 
-#: AKModel/views.py:464
+#: AKModel/views.py:469
 msgid "Constraint Violations set to level 'warning'"
 msgstr "Constraintverletzungen auf Level \"Warning\" gesetzt"
 
-#: AKModel/views.py:473
+#: AKModel/views.py:478
 msgid "Interest of the following AKs will be set to not filled (-1):"
 msgstr "Interesse an den folgenden AKs wird auf nicht ausgefüllt (-1) gesetzt:"
 
-#: AKModel/views.py:474
+#: AKModel/views.py:479
 msgid "Reset of interest in AKs successful."
 msgstr "Interesse an AKs erfolgreich zurückgesetzt."
 
-#: AKModel/views.py:483
+#: AKModel/views.py:488
 msgid "Interest counter of the following AKs will be set to 0:"
 msgstr "Interessensbekundungszähler der folgenden AKs wird auf 0 gesetzt:"
 
-#: AKModel/views.py:484
+#: AKModel/views.py:489
 msgid "AKs' interest counters set back to 0."
 msgstr "Interessenszähler der AKs zurückgesetzt"
 
-#: AKModel/views.py:493
+#: AKModel/views.py:498
 msgid "Publish the plan(s) of:"
 msgstr "Den Plan/die Pläne veröffentlichen von:"
 
-#: AKModel/views.py:494
+#: AKModel/views.py:499
 msgid "Plan published"
 msgstr "Plan veröffentlicht"
 
-#: AKModel/views.py:503
+#: AKModel/views.py:508
 msgid "Unpublish the plan(s) of:"
 msgstr "Den Plan/die Pläne verbergen von:"
 
-#: AKModel/views.py:504
+#: AKModel/views.py:509
 msgid "Plan unpublished"
 msgstr "Plan verborgen"
 
-#: AKModel/views.py:550
+#: AKModel/views.py:555
 #, python-brace-format
 msgid "Could not update slot {id} since it does not belong to {event}"
 msgstr ""
 "Konnte  Slot {id} nicht bearbeiten, da er nicht zum Event {event} gehört"
 
-#: AKModel/views.py:580
+#: AKModel/views.py:585
 #, python-brace-format
 msgid "Updated {u} slot(s). created {c} new slot(s) and deleted {d} slot(s)"
 msgstr ""
 "{u} Slot(s) aktualisiert, {c} Slot(s) hinzugefügt und {d} Slot(s) gelöscht"
 
-#: AKModel/views.py:624
+#: AKModel/views.py:628
 #, python-brace-format
 msgid "Could not import room {name}: {e}"
 msgstr "Konnte Raum {name} nicht importieren: {e}"
 
-#: AKModel/views.py:628
+#: AKModel/views.py:632
 #, python-brace-format
 msgid "Imported {count} room(s)"
 msgstr "{count} Raum/Räume importiert"
 
-#: AKModel/views.py:630
+#: AKModel/views.py:634
 msgid "No rooms imported"
 msgstr "Keine Räume importiert"
diff --git a/AKModel/views.py b/AKModel/views.py
index 0458aa4d1c4114cd4242e47e908e9cd30dca5aa0..db61f2fc629c56c6e2842c609bef43098f3ab6a1 100644
--- a/AKModel/views.py
+++ b/AKModel/views.py
@@ -7,6 +7,7 @@ from abc import ABC, abstractmethod
 from itertools import zip_longest
 
 import django.db
+from django.apps import apps
 from django.contrib import admin, messages
 from django.db.models.functions import Now
 from django.shortcuts import get_object_or_404, redirect
@@ -304,7 +305,11 @@ class NewEventWizardImportView(EventSlugMixin, WizardViewMixin, FormView):
         return initial
 
     def form_valid(self, form):
-        for import_type in ["import_categories", "import_requirements"]:
+        import_types = ["import_categories", "import_requirements"]
+        if apps.is_installed("AKDashboard"):
+            import_types.append("import_buttons")
+
+        for import_type in import_types:
             for import_obj in form.cleaned_data.get(import_type):
                 # clone existing entry
                 try:
@@ -591,7 +596,6 @@ class RoomBatchCreationView(EventSlugMixin, IntermediateAdminView):
         return reverse_lazy('admin:event_status', kwargs={'slug': self.event.slug})
 
     def form_valid(self, form):
-        from django.apps import apps
         virtual_rooms_support = False
         created_count = 0