/* global window */
// Mock domain data for BH Academy.
// Real humanitarian-themed Unsplash images (with gradient fallback in CSS).

const PHOTOS = {
  rights:    "https://images.unsplash.com/photo-1532375810709-75b1da00537c?w=1200&q=70&auto=format",  // pencils, diversity
  mediation: "https://images.unsplash.com/photo-1573497019940-1c28c88b4f3e?w=1200&q=70&auto=format",  // meeting
  unhq:      "https://images.unsplash.com/photo-1607799279861-4dd421887fb3?w=1200&q=70&auto=format",  // UN HQ
  refugee:   "https://images.unsplash.com/photo-1582213782179-e0d53f98f2ca?w=1200&q=70&auto=format",  // refugee camp
  hands:     "https://images.unsplash.com/photo-1469571486292-0ba58a3f068b?w=1200&q=70&auto=format",  // hands diversity
  flags:     "https://images.unsplash.com/photo-1521295121783-8a321d551ad2?w=1200&q=70&auto=format",  // flags
  aid:       "https://images.unsplash.com/photo-1593113598332-cd288d649433?w=1200&q=70&auto=format",  // aid worker
  community: "https://images.unsplash.com/photo-1517486430290-35657bdcef51?w=1200&q=70&auto=format",  // protest crowd
  classroom: "https://images.unsplash.com/photo-1577896851231-70ef18881754?w=1200&q=70&auto=format",  // classroom
  field:     "https://images.unsplash.com/photo-1488521787991-ed7bbaae773c?w=1200&q=70&auto=format",  // hands together
  speak:     "https://images.unsplash.com/photo-1494891848038-7bd202a2afeb?w=1200&q=70&auto=format",  // architectural
  doc:       "https://images.unsplash.com/photo-1450101499163-c8848c66ca85?w=1200&q=70&auto=format",  // documents
};

const FACULTY = [
  { name: "Dra. Amina Khoury", role: "Mediación y diplomacia preventiva", color: "#0080B5" },
  { name: "Dr. Tomás Riveros", role: "Derecho internacional humanitario", color: "#7C3AED" },
  { name: "Prof. Sara Lindqvist", role: "Protección de civiles", color: "#0E7C66" },
  { name: "Dr. Idris Mwangi", role: "Construcción de paz", color: "#B45309" },
  { name: "Dra. Carla Bianchi", role: "Justicia transicional", color: "#BE185D" },
  { name: "Prof. Hyun-soo Park", role: "Seguridad humana", color: "#1E3A8A" },
];

const COURSES = [
  {
    id: "ddhh-101",
    title: "Fundamentos de los Derechos Humanos",
    subtitle: "Marco normativo internacional, sistema interamericano y mecanismos de protección.",
    photo: PHOTOS.rights,
    track: "Derechos Humanos",
    level: "Introductorio",
    duration: "12 h",
    modules: 6,
    lessons: 28,
    students: 4128,
    rating: 4.8,
    language: "Español · Inglés",
    cert: true,
    instructor: FACULTY[0],
    progress: 62,
    enrolled: true,
    new: false,
    description: "Recorrido por la Declaración Universal, los pactos internacionales, y los sistemas regionales. Casos prácticos del sistema interamericano y europeo, con énfasis en el rol de la sociedad civil.",
    syllabus: [
      { title: "Módulo 1 · Orígenes y marco normativo", done: true, lessons: [
        { type: "video", title: "De la Declaración de 1948 al sistema actual", dur: "14 min", done: true },
        { type: "reading", title: "Lectura: Carta de las Naciones Unidas (extractos)", dur: "20 min", done: true },
        { type: "video", title: "Pactos de 1966 y obligaciones de los Estados", dur: "18 min", done: true },
        { type: "quiz", title: "Quiz · Marco normativo internacional", dur: "10 min", done: true },
      ]},
      { title: "Módulo 2 · Sistema universal de la ONU", done: true, lessons: [
        { type: "video", title: "Consejo de Derechos Humanos: estructura y mandato", dur: "16 min", done: true },
        { type: "video", title: "Procedimientos especiales y EPU", dur: "22 min", done: true },
        { type: "reading", title: "Caso: relatorías temáticas en acción", dur: "15 min", done: true },
        { type: "quiz", title: "Quiz · Sistema ONU", dur: "8 min", done: true },
      ]},
      { title: "Módulo 3 · Sistemas regionales", done: false, current: true, lessons: [
        { type: "video", title: "Sistema interamericano: CIDH y Corte IDH", dur: "24 min", done: true },
        { type: "video", title: "Sistema europeo: TEDH", dur: "19 min", done: true, current: false },
        { type: "video", title: "Sistema africano: Comisión y Corte ADHP", dur: "21 min", current: true },
        { type: "reading", title: "Lectura comparada: 3 sistemas regionales", dur: "30 min" },
        { type: "quiz", title: "Quiz · Sistemas regionales", dur: "10 min" },
      ]},
      { title: "Módulo 4 · Derechos económicos, sociales y culturales", done: false, lessons: [
        { type: "video", title: "DESC: características y exigibilidad", dur: "18 min" },
        { type: "video", title: "Indicadores y obligaciones progresivas", dur: "15 min" },
        { type: "reading", title: "Observación General 3 del Comité DESC", dur: "25 min" },
      ]},
      { title: "Módulo 5 · Defensores y sociedad civil", done: false, lessons: [
        { type: "video", title: "Declaración sobre defensores (1998)", dur: "12 min" },
        { type: "video", title: "Mecanismos de protección de defensores", dur: "20 min" },
      ]},
      { title: "Módulo 6 · Evaluación final y certificación", done: false, lessons: [
        { type: "quiz", title: "Evaluación final", dur: "45 min" },
        { type: "doc",  title: "Trabajo: análisis de un caso real", dur: "—" },
      ]},
    ],
  },
  {
    id: "mediacion-201",
    title: "Mediación y Resolución Pacífica de Conflictos",
    subtitle: "Técnicas de mediación, negociación basada en intereses y diplomacia track-II.",
    photo: PHOTOS.mediation,
    track: "Paz y Diplomacia",
    level: "Intermedio",
    duration: "16 h",
    modules: 8,
    lessons: 36,
    students: 2671,
    rating: 4.9,
    language: "Español",
    cert: true,
    instructor: FACULTY[0],
    progress: 18,
    enrolled: true,
  },
  {
    id: "dih-301",
    title: "Derecho Internacional Humanitario",
    subtitle: "Los Convenios de Ginebra, Protocolos Adicionales y conducción de hostilidades.",
    photo: PHOTOS.flags,
    track: "Derecho Internacional",
    level: "Avanzado",
    duration: "20 h",
    modules: 9,
    lessons: 42,
    students: 1980,
    rating: 4.7,
    language: "Español · Inglés · Francés",
    cert: true,
    instructor: FACULTY[1],
    progress: 0,
    enrolled: false,
    new: true,
  },
  {
    id: "seg-humana-101",
    title: "Seguridad Humana en Zonas de Crisis",
    subtitle: "Del concepto de seguridad humana a la protección integral de poblaciones vulnerables.",
    photo: PHOTOS.refugee,
    track: "Seguridad Humana",
    level: "Intermedio",
    duration: "14 h",
    modules: 7,
    lessons: 30,
    students: 3104,
    rating: 4.8,
    language: "Español",
    cert: true,
    instructor: FACULTY[5],
    progress: 100,
    enrolled: true,
    completed: true,
  },
  {
    id: "civ-201",
    title: "Protección de Civiles en Conflictos Armados",
    subtitle: "Marco normativo, operaciones de paz y coordinación humanitaria sobre el terreno.",
    photo: PHOTOS.aid,
    track: "Derecho Internacional",
    level: "Intermedio",
    duration: "10 h",
    modules: 5,
    lessons: 22,
    students: 1542,
    rating: 4.6,
    language: "Español · Inglés",
    cert: true,
    instructor: FACULTY[2],
    progress: 0,
    enrolled: false,
  },
  {
    id: "diplo-101",
    title: "Diplomacia Preventiva y Alerta Temprana",
    subtitle: "Indicadores de riesgo, escenarios de prevención y arquitectura institucional.",
    photo: PHOTOS.unhq,
    track: "Paz y Diplomacia",
    level: "Introductorio",
    duration: "8 h",
    modules: 4,
    lessons: 16,
    students: 988,
    rating: 4.5,
    language: "Español",
    cert: true,
    instructor: FACULTY[0],
    progress: 0,
    enrolled: false,
    new: true,
  },
  {
    id: "just-301",
    title: "Justicia Transicional y Reparación",
    subtitle: "Verdad, justicia, reparación y garantías de no repetición en sociedades post-conflicto.",
    photo: PHOTOS.community,
    track: "Derechos Humanos",
    level: "Avanzado",
    duration: "18 h",
    modules: 8,
    lessons: 38,
    students: 1340,
    rating: 4.9,
    language: "Español · Inglés",
    cert: true,
    instructor: FACULTY[4],
    progress: 0,
    enrolled: false,
  },
  {
    id: "paz-201",
    title: "Construcción de Paz Sostenible",
    subtitle: "Procesos de paz, reconciliación comunitaria y enfoque sensible al conflicto.",
    photo: PHOTOS.hands,
    track: "Paz y Diplomacia",
    level: "Intermedio",
    duration: "15 h",
    modules: 7,
    lessons: 32,
    students: 2210,
    rating: 4.7,
    language: "Español",
    cert: true,
    instructor: FACULTY[3],
    progress: 0,
    enrolled: false,
  },
  {
    id: "gen-101",
    title: "Enfoque de Género en Acción Humanitaria",
    subtitle: "Análisis de género, violencias basadas en género y respuesta humanitaria.",
    photo: PHOTOS.classroom,
    track: "Derechos Humanos",
    level: "Introductorio",
    duration: "9 h",
    modules: 5,
    lessons: 20,
    students: 1820,
    rating: 4.8,
    language: "Español",
    cert: true,
    instructor: FACULTY[4],
    progress: 0,
    enrolled: false,
  },
];

/* Illustrative catalog entries. They have no backend yet, so they are shown as
   "Próximamente": nobody can enrol, and no student progress, ratings or reviews
   are attributed to them. Real courses (with `units`) are added by course-*.jsx. */
COURSES.forEach(c => {
  Object.assign(c, { comingSoon: true, enrolled: false, completed: false, saved: false, progress: 0, rating: null, students: null });
  (c.syllabus || []).forEach(m => {
    m.done = false; m.current = false;
    (m.lessons || []).forEach(l => { l.done = false; l.current = false; });
  });
});

const TRACKS = [
  { id: "ddhh",    label: "Derechos Humanos",     count: 12 },
  { id: "paz",     label: "Paz y Diplomacia",     count: 9  },
  { id: "dih",     label: "Derecho Internacional", count: 7  },
  { id: "seg",     label: "Seguridad Humana",     count: 5  },
  { id: "gen",     label: "Género e Inclusión",   count: 4  },
];

window.DATA = { PHOTOS, FACULTY, COURSES, TRACKS };
