-- OPENBUREAU — OPTIONALER Demo-Inhalt fürs Forum (Dialog).
-- ─────────────────────────────────────────────────────────────────────────
-- NICHT Teil der Migration: bewusst getrennt von schema.sql, damit die
-- Produktion sauber bleibt. Nur bei Bedarf manuell einspielen, z.B.:
--
--   docker compose exec -T db \
--     psql -U supabase_admin -d postgres < db/seed-demo.sql
--
-- Idempotent: feste UUIDs + ON CONFLICT DO NOTHING → mehrfaches Einspielen
-- erzeugt keine Duplikate. Demo-Wortmeldungen haben user_id = NULL (keine
-- echten Konten); author_name/author_role sind nur Anzeigetext.
--
-- Wieder entfernen: siehe DELETE-Block ganz unten (auskommentiert).
-- ─────────────────────────────────────────────────────────────────────────

-- ── Threads ───────────────────────────────────────────────────────────────
insert into public.threads (id, forum_id, key, title, url, kind, author_name, created_at) values
  ('a1111111-1111-1111-1111-111111111101',
   (select id from public.forums where slug = 'allgemein'),
   't/a1111111-1111-1111-1111-111111111101',
   'Willkommen im OPENBUREAU-Dialog',
   '/dialog/?thread=t%2Fa1111111-1111-1111-1111-111111111101',
   'forum', 'Karim', now() - interval '9 days'),

  ('a2222222-2222-2222-2222-222222222202',
   (select id from public.forums where slug = 'projekte'),
   't/a2222222-2222-2222-2222-222222222202',
   'Altbausanierung Zürich — Materialwahl Innendämmung',
   '/dialog/?thread=t%2Fa2222222-2222-2222-2222-222222222202',
   'forum', 'Karim', now() - interval '6 days'),

  ('a3333333-3333-3333-3333-333333333303',
   (select id from public.forums where slug = 'technik'),
   't/a3333333-3333-3333-3333-333333333303',
   'Hugo-Build-Zeiten bei großen Bildmengen',
   '/dialog/?thread=t%2Fa3333333-3333-3333-3333-333333333303',
   'forum', 'Mara', now() - interval '3 days'),

  ('a4444444-4444-4444-4444-444444444404',
   (select id from public.forums where slug = 'off-topic'),
   't/a4444444-4444-4444-4444-444444444404',
   'Welches Architekturbuch hat euch geprägt?',
   '/dialog/?thread=t%2Fa4444444-4444-4444-4444-444444444404',
   'forum', 'Jonas', now() - interval '2 days')
on conflict (key) do nothing;

-- ── Wortmeldungen ─────────────────────────────────────────────────────────
-- parent_id verweist auf eine andere Wortmeldung (Antwort-Bezug).
insert into public.comments (id, thread, parent_id, author_name, author_role, body, created_at) values
  -- Thread 1: Willkommen
  ('c1111111-0000-0000-0000-000000000001',
   't/a1111111-1111-1111-1111-111111111101', null, 'Karim', 'Gründer',
   'Hallo zusammen — dieser Bereich ist für den offenen Austausch rund ums Büro: Projekte, Methoden, Werkzeuge. Lest euch ein, schreibt mit.',
   now() - interval '9 days'),
  ('c1111111-0000-0000-0000-000000000002',
   't/a1111111-1111-1111-1111-111111111101',
   'c1111111-0000-0000-0000-000000000001', 'Mara', 'Projektarchitektin',
   'Schön, dass es losgeht. Gibt es eine Empfehlung, wie wir Projektdiskussionen von allgemeinem Plausch trennen?',
   now() - interval '8 days'),
  ('c1111111-0000-0000-0000-000000000003',
   't/a1111111-1111-1111-1111-111111111101',
   'c1111111-0000-0000-0000-000000000002', 'Karim', 'Gründer',
   'Genau dafür gibt es die Kategorie „Projekte". „Off-Topic" ist für alles andere.',
   now() - interval '8 days'),

  -- Thread 2: Innendämmung
  ('c2222222-0000-0000-0000-000000000001',
   't/a2222222-2222-2222-2222-222222222202', null, 'Karim', 'Gründer',
   'Beim Altbau an der Seestrasse steht die Innendämmung an. Kalziumsilikat oder mineralischer Dämmputz? Erfahrungen mit Feuchteverhalten?',
   now() - interval '6 days'),
  ('c2222222-0000-0000-0000-000000000002',
   't/a2222222-2222-2222-2222-222222222202',
   'c2222222-0000-0000-0000-000000000001', 'Mara', 'Projektarchitektin',
   'Kalziumsilikat ist diffusionsoffen und kapillaraktiv — bei den Bestandswänden dort würde ich das vorziehen. Wichtig ist die Detailausbildung an den Holzbalkenköpfen.',
   now() - interval '5 days'),
  ('c2222222-0000-0000-0000-000000000003',
   't/a2222222-2222-2222-2222-222222222202',
   'c2222222-0000-0000-0000-000000000002', 'Jonas', 'Bauleiter',
   'Plus eins für Kalziumsilikat. Ich hänge nächste Woche die hygrothermische Simulation an, dann sehen wir die Tauwasserbilanz.',
   now() - interval '4 days'),

  -- Thread 3: Hugo-Builds
  ('c3333333-0000-0000-0000-000000000001',
   't/a3333333-3333-3333-3333-333333333303', null, 'Mara', 'Projektarchitektin',
   'Seit die Projektgalerien dazugekommen sind, dauert der Build spürbar länger. Hat jemand die Bildverarbeitung schon optimiert?',
   now() - interval '3 days'),
  ('c3333333-0000-0000-0000-000000000002',
   't/a3333333-3333-3333-3333-333333333303',
   'c3333333-0000-0000-0000-000000000001', 'Karim', 'Gründer',
   'Hugo cached die Image-Resizes unter resources/. Solange der Ordner erhalten bleibt, werden nur neue Bilder neu gerechnet — das war bei uns der größte Hebel.',
   now() - interval '2 days'),

  -- Thread 4: Architekturbuch
  ('c4444444-0000-0000-0000-000000000001',
   't/a4444444-4444-4444-4444-444444444404', null, 'Jonas', 'Bauleiter',
   'Bei mir war es „Atmosphären" von Peter Zumthor — schmal, aber prägend. Was hat euch geformt?',
   now() - interval '2 days'),
  ('c4444444-0000-0000-0000-000000000002',
   't/a4444444-4444-4444-4444-444444444404',
   'c4444444-0000-0000-0000-000000000001', 'Mara', 'Projektarchitektin',
   '„Complexity and Contradiction" von Venturi — hat mein Verständnis von Fassaden komplett verschoben.',
   now() - interval '1 day')
on conflict (id) do nothing;

-- ── Wortmeldungen auf den Musterbeiträgen (Dialog am Artikel) ─────────────
-- thread = Beitrags-URL (Library-Beiträge werden als Threads gespiegelt).
insert into public.comments (id, thread, parent_id, author_name, author_role, body, created_at) values
  ('d1111111-0000-0000-0000-000000000001',
   '/library/theorie/muster-typologie-fussnoten/', null, 'Mara', 'Projektarchitektin',
   'Schöne Verdichtung. Würdest du Léon Krier hier dazustellen, oder ist das eine andere Debatte?',
   now() - interval '4 days'),
  ('d1111111-0000-0000-0000-000000000002',
   '/library/theorie/muster-typologie-fussnoten/',
   'd1111111-0000-0000-0000-000000000001', 'Karim', 'Gründer',
   'Eigene Debatte — Krier zielt auf die Wiederherstellung der Stadt. Hier ging es mir nur um Typus vs. Modell.',
   now() - interval '3 days'),

  ('d2222222-0000-0000-0000-000000000001',
   '/library/buerofuehrung/muster-offen-arbeiten/', null, 'Jonas', 'Bauleiter',
   'Die Lizenzfrage unterschätzen viele. Gut, das einmal klar getrennt zu sehen.',
   now() - interval '2 days'),

  ('d3333333-0000-0000-0000-000000000001',
   '/library/software/muster-werkzeugkette/', null, 'Mara', 'Projektarchitektin',
   'Ein Befehl ist Gold wert. Läuft der Build bei euch auch im CMS-Container?',
   now() - interval '1 day'),
  ('d3333333-0000-0000-0000-000000000002',
   '/library/software/muster-werkzeugkette/',
   'd3333333-0000-0000-0000-000000000001', 'Karim', 'Gründer',
   'Genau — der Container hat das Hugo-Binary, Publish baut public/ direkt.',
   now() - interval '12 hours')
on conflict (id) do nothing;

-- ── Demo-Inhalt wieder entfernen (bei Bedarf auskommentieren) ──────────────
-- delete from public.comments where id::text like 'c_______-0000-0000-0000-%';
-- delete from public.comments where id::text like 'd_______-0000-0000-0000-%';
-- delete from public.threads  where key in (
--   't/a1111111-1111-1111-1111-111111111101',
--   't/a2222222-2222-2222-2222-222222222202',
--   't/a3333333-3333-3333-3333-333333333303',
--   't/a4444444-4444-4444-4444-444444444404');
-- (Musterbeitrag-Threads verschwinden mit den .md-Dateien automatisch.)
