-- ============================================================
-- WS6: Создание курсов-носителей «Второй мозг для бизнеса»
-- ============================================================
-- ВАЖНО: Выполнять НА ПРОДЕ только после проверки на staging.
--        Запускать через SSH: psql <db_url> -f create_biz_brain_courses.sql
--        Идемпотентно: INSERT IGNORE по slug (уникальный ключ).
--
-- Курсы-носители (5 штук):
--   biz-brain-base    — основной курс (ZIP хранилища + видео-онбординг)
--   biz-brain-premium — премиум-раздел (консультации, инструкции по расширениям)
--   module-caldav     — расширение CalDAV-календарь
--   module-ai-pdf     — расширение AI-разбор PDF
--   module-legacy     — расширение Legacy-миграция
-- ============================================================

BEGIN;

-- Функция для генерации cuid-подобного ID (через gen_random_uuid как fallback)
-- В реальности Prisma генерирует cuid автоматически — используем это свойство.
-- Если у вас Postgres 14+: gen_random_uuid() дает UUID, но Prisma ожидает cuid.
-- Безопаснее создать через Prisma API или LMS-Admin.

-- Проверяем что slug ещё не существует перед вставкой
DO $$
BEGIN
    -- biz-brain-base
    IF NOT EXISTS (SELECT 1 FROM "Course" WHERE slug = 'biz-brain-base') THEN
        INSERT INTO "Course" (id, slug, title, description, published, "allowAudio", "order", "createdAt", "updatedAt")
        VALUES (
            'clbizbrainbase0000001',
            'biz-brain-base',
            'Второй мозг для бизнеса — Базовый',
            'Готовое хранилище Obsidian для собственника: CRM-воронка, финансовый кокпит, журнал решений, витрина команды. Разовый платёж, бессрочный доступ.',
            false,  -- опубликовать вручную после наполнения контентом
            false,
            100,
            NOW(),
            NOW()
        );
        RAISE NOTICE 'Создан курс biz-brain-base';
    ELSE
        RAISE NOTICE 'Курс biz-brain-base уже существует — пропуск';
    END IF;

    -- biz-brain-premium
    IF NOT EXISTS (SELECT 1 FROM "Course" WHERE slug = 'biz-brain-premium') THEN
        INSERT INTO "Course" (id, slug, title, description, published, "allowAudio", "order", "createdAt", "updatedAt")
        VALUES (
            'clbizbrainprem0000002',
            'biz-brain-premium',
            'Второй мозг для бизнеса — Премиум (инструкции и консультации)',
            'Раздел для премиум-покупателей: инструкции по установке расширений, запись на 2 персональные консультации, ответы на частые вопросы.',
            false,
            false,
            101,
            NOW(),
            NOW()
        );
        RAISE NOTICE 'Создан курс biz-brain-premium';
    ELSE
        RAISE NOTICE 'Курс biz-brain-premium уже существует — пропуск';
    END IF;

    -- module-caldav
    IF NOT EXISTS (SELECT 1 FROM "Course" WHERE slug = 'module-caldav') THEN
        INSERT INTO "Course" (id, slug, title, description, published, "allowAudio", "order", "createdAt", "updatedAt")
        VALUES (
            'clmodulecaldav00000003',
            'module-caldav',
            'Расширение: CalDAV-календарь',
            'Двусторонняя синхронизация задач и событий Obsidian с Google Calendar / Apple Calendar через CalDAV. Плагин Full Calendar Remastered v0.13.2.',
            false,
            false,
            200,
            NOW(),
            NOW()
        );
        RAISE NOTICE 'Создан курс module-caldav';
    ELSE
        RAISE NOTICE 'Курс module-caldav уже существует — пропуск';
    END IF;

    -- module-ai-pdf
    IF NOT EXISTS (SELECT 1 FROM "Course" WHERE slug = 'module-ai-pdf') THEN
        INSERT INTO "Course" (id, slug, title, description, published, "allowAudio", "order", "createdAt", "updatedAt")
        VALUES (
            'clmoduleaipdf000000004',
            'module-ai-pdf',
            'Расширение: AI-разбор PDF и исследований',
            'Промпты А1/А2/А3 для структурированного разбора PDF-документов, статей и исследований с помощью AI. Включает эталонный прогон и демо-PDF.',
            false,
            false,
            201,
            NOW(),
            NOW()
        );
        RAISE NOTICE 'Создан курс module-ai-pdf';
    ELSE
        RAISE NOTICE 'Курс module-ai-pdf уже существует — пропуск';
    END IF;

    -- module-legacy
    IF NOT EXISTS (SELECT 1 FROM "Course" WHERE slug = 'module-legacy') THEN
        INSERT INTO "Course" (id, slug, title, description, published, "allowAudio", "order", "createdAt", "updatedAt")
        VALUES (
            'clmodulelegacy00000005',
            'module-legacy',
            'Расширение: Legacy-миграция из Evernote / Notion',
            'Пошаговые инструкции и чеклист пост-обработки для переноса данных из Evernote и Notion в хранилище «Второй мозг для бизнеса».',
            false,
            false,
            202,
            NOW(),
            NOW()
        );
        RAISE NOTICE 'Создан курс module-legacy';
    ELSE
        RAISE NOTICE 'Курс module-legacy уже существует — пропуск';
    END IF;
END
$$;

COMMIT;

-- Проверка результата
SELECT slug, title, published, "order" FROM "Course"
WHERE slug IN ('biz-brain-base', 'biz-brain-premium', 'module-caldav', 'module-ai-pdf', 'module-legacy')
ORDER BY "order";
