-- 052_course_access_bridge.sql
-- Фаза 1c: видимость курсов по классам через content_access (тип 'course' уже
-- разрешён CHECK-ом из миграции 051). Мост: открываем все ОПУБЛИКОВАННЫЕ курсы
-- всем существующим классам — чтобы переход на allowlist не отнял доступ к тому,
-- что ученики видят сейчас. content_ref = courses.id (как TEXT).
--
-- После этой миграции новый опубликованный курс по умолчанию закрыт — открыть
-- классам через админ-панель «Доступ». Видимость управляется в content_access;
-- таблица class_courses остаётся для назначений с дедлайном (это сверх видимости).

INSERT OR IGNORE INTO content_access (content_type, content_ref, scope, target_id, allow)
SELECT 'course', CAST(c.id AS TEXT), 'class', cl.id, 1
  FROM courses c CROSS JOIN classes cl
 WHERE c.is_published = 1;
