-- Domain-Approval Enhancement — Profile-Relation + 24h-Deadline-Sort-Index
--
-- Hintergrund: `getPendingSubmissions` muss user.nickname + user.plan joinen
-- damit Admins (Domain-Approval-Page) Legend-Requests prioritisiert sehen
-- und die 24h-Deadline pro Submission anzeigen können.
--
-- Bisher gab es zwischen `domain_submissions.user_id` und `profiles.id` KEINEN
-- expliziten Foreign-Key (siehe 0_init Migration — nur `custom_domain_id`-FK).
-- Diese Migration fügt den FK additiv hinzu, plus Composite-Index für die neue
-- Sort-Order (status + createdAt ASC für „älteste zuerst" innerhalb Plan-Bucket).
--
-- Drift-Hinweis: deploy via `pnpm prisma migrate deploy`. Lokal NICHT laufen.
-- Falls Drift erkannt wird:
--   pnpm prisma migrate resolve --applied 20260509_domain_submission_user_relation

-- 1. FK auf profiles(id) — idempotent (DO-Block weil Postgres kein
--    `ADD CONSTRAINT IF NOT EXISTS` unterstützt).
DO $$
BEGIN
    IF NOT EXISTS (
        SELECT 1
        FROM   pg_constraint
        WHERE  conname  = 'domain_submissions_user_id_fkey'
        AND    connamespace = 'rebreak'::regnamespace
    ) THEN
        ALTER TABLE "rebreak"."domain_submissions"
            ADD CONSTRAINT "domain_submissions_user_id_fkey"
            FOREIGN KEY ("user_id")
            REFERENCES "rebreak"."profiles"("id")
            ON DELETE NO ACTION
            ON UPDATE CASCADE;
    END IF;
END $$;

-- 2. Composite-Index für neue Sort-Order (status, created_at)
CREATE INDEX IF NOT EXISTS "domain_submissions_status_created_at_idx"
    ON "rebreak"."domain_submissions" ("status", "created_at");
