diff --git a/migrations/0049_app_store_kategorie_aufloesen.sql b/migrations/0049_app_store_kategorie_aufloesen.sql new file mode 100644 index 0000000..7a4a057 --- /dev/null +++ b/migrations/0049_app_store_kategorie_aufloesen.sql @@ -0,0 +1,36 @@ +BEGIN; + +-- Kategorie "App-Store" auflösen (Nutzer-Entscheidung 07.10.2026): sie war +-- ein Überbleibsel aus der Anfangszeit und fachlich keine Kategorie. Die +-- Merkmale wandern in passende Kategorien, Webapps mit dieser Kategorie +-- ebenso. Außerdem bekommt die Webapp-Vorlage "Bayern Cloud Schule" eine +-- Kategorie (Katalog, Workspace-Creator neu Schritt A). +UPDATE merkmale SET kategorie_id = (SELECT id FROM kategorien WHERE key = 'internet-kommunikation') +WHERE key = 'browser-brave'; + +UPDATE merkmale SET kategorie_id = (SELECT id FROM kategorien WHERE key = 'unterrichtswerkzeuge') +WHERE key = 'google-earth'; + +UPDATE merkmale SET kategorie_id = (SELECT id FROM kategorien WHERE key = 'buero-produktivitaet') +WHERE key IN ('office-libreoffice', 'office-onlyoffice'); + +UPDATE workspace_webapps SET kategorie_id = (SELECT id FROM kategorien WHERE key = 'internet-kommunikation') +WHERE kategorie_id = (SELECT id FROM kategorien WHERE key = 'app-store'); + +UPDATE webapp_templates SET kategorie_id = (SELECT id FROM kategorien WHERE key = 'internet-kommunikation') +WHERE kategorie_id = (SELECT id FROM kategorien WHERE key = 'app-store'); + +-- Sicherheitsnetz: bricht ab, falls noch ein Merkmal an "App-Store" hängt. +DO $$ +BEGIN + IF EXISTS (SELECT 1 FROM merkmale m JOIN kategorien k ON k.id = m.kategorie_id WHERE k.key = 'app-store') THEN + RAISE EXCEPTION 'Kategorie app-store hat noch Merkmale'; + END IF; +END $$; + +DELETE FROM kategorien WHERE key = 'app-store'; + +UPDATE webapp_templates SET kategorie_id = (SELECT id FROM kategorien WHERE key = 'unterrichtswerkzeuge') +WHERE name = 'Bayern Cloud Schule' AND kategorie_id IS NULL; + +COMMIT;