-- Migration: 083_allow_null_profile_status
-- Allow mitglieder_profile.status to be NULL (for FDISK data purge).
-- Rollback:
--   ALTER TABLE mitglieder_profile DROP CONSTRAINT IF EXISTS mitglieder_profile_status_check;
--   ALTER TABLE mitglieder_profile ALTER COLUMN status SET NOT NULL;
--   ALTER TABLE mitglieder_profile ALTER COLUMN status SET DEFAULT 'aktiv';
--   ALTER TABLE mitglieder_profile ADD CONSTRAINT mitglieder_profile_status_check
--     CHECK (status IN ('aktiv','passiv','ehrenmitglied','jugendfeuerwehr','anwärter','ausgetreten'));

-- 1. Drop existing CHECK constraint
ALTER TABLE mitglieder_profile DROP CONSTRAINT IF EXISTS mitglieder_profile_status_check;

-- 2. Allow NULLs
ALTER TABLE mitglieder_profile ALTER COLUMN status DROP NOT NULL;

-- 3. Remove default
ALTER TABLE mitglieder_profile ALTER COLUMN status DROP DEFAULT;

-- 4. Re-add CHECK allowing NULL
ALTER TABLE mitglieder_profile ADD CONSTRAINT mitglieder_profile_status_check
    CHECK (status IS NULL OR status IN (
        'aktiv',
        'passiv',
        'ehrenmitglied',
        'jugendfeuerwehr',
        'anwärter',
        'ausgetreten'
    ));
