taiage/js/temas.js

290 lines
13 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/**
* js/temas.js
* Mapa completo del temario TAI AGE.
* Cada bloque incluye todos los temas del README.md exactamente.
*/
const TEMARIO = [
{
id: 1,
titulo: "Organización del Estado y Administración electrónica",
color: "#007acc",
temas: [
{
num: 1,
titulo: "La Constitución Española de 1978. Derechos y deberes fundamentales. Su garantía y suspensión. La Corona: funciones constitucionales del Rey.",
archivo: "bloque1/tema1.md",
leyes: [
{ label: "LO 4/1981 Estados de alarma, excepción y sitio", ley: "BOE-A-1981-12774" }
],
audios: [
{ label: "Audio del tema", src: "audios/bloque1/tema1_audio.mp3" },
{ label: "Artículos CE", src: "audios/bloque1/tema1_articulos_ce.mp3" }
]
},
{
num: 2,
titulo: "Las Cortes Generales: atribuciones del Congreso de los Diputados y del Senado. El Tribunal Constitucional: composición y atribuciones. El Defensor del Pueblo.",
archivo: "bloque1/tema2.md",
leyes: [
{ label: "LO 3/1981 El Defensor del Pueblo", ley: "BOE-A-1981-10325" }
],
audios: [
{ label: "Audio del tema", src: "audios/bloque1/tema2_audio.mp3" },
{ label: "Artículos CE", src: "audios/bloque1/tema2_articulos_ce.mp3" }
]
},
{
num: 3,
titulo: "El Gobierno: composición, nombramiento y cese. Las funciones del Gobierno. Relaciones entre el Gobierno y las Cortes Generales.",
archivo: "bloque1/tema3.md",
leyes: [
{ label: "Ley 50/1997 Del Gobierno", ley: "BOE-A-1997-25336" }
],
audios: [{ label: "Audio del tema", src: "audios/bloque1/tema3_audio.mp3" }]
},
{
num: 4,
titulo: "Estatuto Básico del Empleado Público: derechos y deberes, provisión de puestos, promoción interna, carrera profesional, situaciones administrativas, incompatibilidades y régimen sancionador. Ley 19/2013 de transparencia. Agenda 2030 y ODS.",
archivo: "bloque1/tema4.md",
leyes: [
{ label: "Retribuciones funcionario 2023", ley: "Retribuciones" }
],
audios: [{ label: "Audio del tema", src: "audios/bloque1/tema4_audio.mp3" }]
},
{
num: 5,
titulo: "Políticas de igualdad y contra la violencia de género. Igualdad LGTBI. Discapacidad y dependencia.",
archivo: "bloque1/tema5.md",
leyes: [
{ label: "LO 3/2007 Igualdad efectiva", ley: "BOE-A-2007-6115" },
{ label: "LO 1/2004 Violencia de género", ley: "BOE-A-2004-21760" },
{ label: "Ley 39/2006 Dependencia", ley: "BOE-A-2006-21990" }
],
audios: [{ label: "Audio del tema", src: "audios/bloque1/tema5_audio.mp3" }]
},
{
num: 6,
titulo: "Sociedad de la información. Identidad y firma electrónica. DNIe. Agenda Digital para España.",
archivo: "bloque1/tema6.md",
leyes: [
{ label: "Ley 34/2002 LSSI", ley: "BOE-A-2002-13758" },
{ label: "Ley 59/2003 Firma Electrónica", ley: "BOE-A-2003-23399" }
],
audios: [{ label: "Audio del tema", src: "audios/bloque1/tema6_audio.mp3" }]
},
{
num: 7,
titulo: "Protección de datos personales: principios, derechos y obligaciones. Derechos digitales.",
archivo: "bloque1/tema7.md",
leyes: [
{ label: "LO 3/2018 LOPDGDD", ley: "BOE-A-2018-16673" }
],
audios: [{ label: "Audio del tema", src: "audios/bloque1/tema7_audio.mp3" }]
},
{
num: 8,
titulo: "Acceso electrónico a los servicios públicos. Registros, notificaciones, medios electrónicos. ENS y ENI. NTI.",
archivo: "bloque1/tema8.md",
audios: [{ label: "Audio del tema", src: "audios/bloque1/tema8_audio.mp3" }]
},
{
num: 9,
titulo: "Instrumentos de acceso electrónico: sedes electrónicas, canales, identificación y autenticación. Infraestructuras y servicios comunes.",
archivo: "bloque1/tema9.md",
audios: [{ label: "Audio del tema", src: "audios/bloque1/tema9_audio.mp3" }]
}
]
},
{
id: 2,
titulo: "Tecnología básica",
color: "#c586c0",
temas: [
{
num: 1,
titulo: "Informática básica. Representación y comunicación de la información: elementos constitutivos de un sistema de información. Características y funciones. Arquitectura de ordenadores. Componentes internos de los equipos microinformáticos.",
archivo: "bloque2/tema1.md",
audios: [{ label: "Audio del tema", src: "audios/bloque2/tema1.mp3" }]
},
{
num: 2,
titulo: "Periféricos: conectividad y administración. Elementos de impresión. Elementos de almacenamiento. Elementos de visualización y digitalización.",
archivo: "bloque2/tema2.md",
audios: [{ label: "Audio del tema", src: "audios/bloque2/tema2.mp3" }]
},
{
num: 3,
titulo: "Tipos abstractos y Estructuras de datos. Organizaciones de ficheros. Algoritmos. Formatos de información y ficheros.",
archivo: "bloque2/tema3.md",
audios: [{ label: "Audio del tema", src: "audios/bloque2/tema3.mp3" }]
},
{
num: 4,
titulo: "Sistemas operativos. Características y elementos constitutivos. Sistemas Windows. Sistemas Unix y Linux. Sistemas operativos para dispositivos móviles.",
archivo: "bloque2/tema4.md",
audios: [{ label: "Audio del tema", src: "audios/bloque2/tema4.mp3" }]
},
{
num: 5,
titulo: "Sistemas de gestión de bases de datos relacionales, orientados a objetos y NoSQL: características y componentes.",
archivo: "bloque2/tema5.md",
audios: [{ label: "Audio del tema", src: "audios/bloque2/tema5.mp3" }]
}
]
},
{
id: 3,
titulo: "Desarrollo de sistemas",
color: "#d7ba7d",
temas: [
{
num: 1,
titulo: "Modelado de datos, metodologías y reglas. Entidades, atributos y relaciones. Diseño de bases de datos. Diseño lógico y físico. El modelo lógico relacional. Normalización.",
archivo: "bloque3/tema1.md",
audios: [{ label: "Audio del tema", src: "audios/bloque3/tema1_audio.mp3" }]
},
{
num: 2,
titulo: "Lenguajes de programación. Representación de tipos de datos. Operadores. Instrucciones condicionales. Bucles y recursividad. Procedimientos, funciones y parámetros. Vectores y registros. Estructura de un programa.",
archivo: "bloque3/tema2.md",
audios: [{ label: "Audio del tema", src: "audios/bloque3/tema2_audio.mp3" }]
},
{
num: 3,
titulo: "Lenguajes de interrogación de bases de datos. Estándar ANSI SQL. Procedimientos almacenados. Eventos y disparadores.",
archivo: "bloque3/tema3.md",
audios: [{ label: "Audio del tema", src: "audios/bloque3/tema3_audio.mp3" }]
},
{
num: 4,
titulo: "Diseño y programación orientada a objetos. Elementos y componentes software: objetos, clases, herencia, métodos, sobrecarga. Ventajas e inconvenientes. Patrones de diseño y lenguaje de modelado unificado (UML).",
archivo: "bloque3/tema4.md",
audios: [{ label: "Audio del tema", src: "audios/bloque3/tema4_audio.mp3" }]
},
{
num: 5,
titulo: "Arquitectura Java EE/Jakarta EE y plataforma .NET: componentes, persistencia y seguridad. Características, elementos, lenguajes y funciones en ambos entornos. Desarrollo de interfaces.",
archivo: "bloque3/tema5.md",
audios: [{ label: "Audio del tema", src: "audios/bloque3/tema5_audio.mp3" }]
},
{
num: 6,
titulo: "Arquitectura de sistemas cliente/servidor y multicapas: componentes y operación. Arquitecturas de servicios web y protocolos asociados.",
archivo: "bloque3/tema6.md",
audios: [{ label: "Audio del tema", src: "audios/bloque3/tema6_audio.mp3" }]
},
{
num: 7,
titulo: "Aplicaciones web. Desarrollo web front-end y en servidor, multiplataforma y multidispositivo. Lenguajes: HTML, XML y sus derivaciones. Navegadores y lenguajes de programación web. Lenguajes de script.",
archivo: "bloque3/tema7.md",
audios: [{ label: "Audio del tema", src: "audios/bloque3/tema7_audio.mp3" }]
},
{
num: 8,
titulo: "Accesibilidad, diseño universal y usabilidad. Acceso y usabilidad de las tecnologías, productos y servicios relacionados con la sociedad de la información. Confidencialidad y disponibilidad de la información en puestos de usuario final. Conceptos de seguridad en el desarrollo de los sistemas.",
archivo: "bloque3/tema8.md",
audios: [{ label: "Audio del tema", src: "audios/bloque3/tema8_audio.mp3" }]
},
{
num: 9,
titulo: "Repositorios: estructura y actualización. Generación de código y documentación. Metodologías de desarrollo. Pruebas. Programas para control de versiones. Plataformas de desarrollo colaborativo de software.",
archivo: "bloque3/tema9.md",
audios: [{ label: "Audio del tema", src: "audios/bloque3/tema9_audio.mp3" }]
}
]
},
{
id: 4,
titulo: "Sistemas y comunicaciones",
color: "#4ec9b0",
temas: [
{
num: 1,
titulo: "Administración del Sistema operativo y software de base. Actualización, mantenimiento y reparación del sistema operativo.",
archivo: "bloque4/tema1.md",
audios: [{ label: "Audio del tema", src: "audios/bloque4/tema1_audio.mp3" }]
},
{
num: 2,
titulo: "Administración de bases de datos. Sistemas de almacenamiento y su virtualización. Políticas, sistemas y procedimientos de backup y su recuperación. Backup de sistemas físicos y virtuales. Virtualización de sistemas y virtualización de puestos de usuario.",
archivo: "bloque4/tema2.md",
audios: [{ label: "Audio del tema", src: "audios/bloque4/tema2_audio.mp3" }]
},
{
num: 3,
titulo: "Administración de servidores de correo electrónico y sus protocolos. Administración de contenedores y microservicios.",
archivo: "bloque4/tema3.md",
audios: [{ label: "Audio del tema", src: "audios/bloque4/tema3_audio.mp3" }]
},
{
num: 4,
titulo: "Administración de redes de área local. Gestión de usuarios. Gestión de dispositivos. Monitorización y control de tráfico.",
archivo: "bloque4/tema4.md",
audios: [{ label: "Audio del tema", src: "audios/bloque4/tema4_audio.mp3" }]
},
{
num: 5,
titulo: "Conceptos de seguridad de los sistemas de información. Seguridad física. Seguridad lógica. Amenazas y vulnerabilidades. Técnicas criptográficas y protocolos seguros. Mecanismos de firma digital. Infraestructura física de un CPD: acondicionamiento y equipamiento. Sistemas de gestión de incidencias. Control remoto de puestos de usuario.",
archivo: "bloque4/tema5.md",
audios: [{ label: "Audio del tema", src: "audios/bloque4/tema5_audio.mp3" }]
},
{
num: 6,
titulo: "Comunicaciones. Medios de transmisión. Modos de comunicación. Equipos terminales y equipos de interconexión y conmutación. Redes de comunicaciones. Redes de conmutación y redes de difusión. Comunicaciones móviles e inalámbricas.",
archivo: "bloque4/tema6.md",
audios: [{ label: "Audio del tema", src: "audios/bloque4/tema6_audio.mp3" }]
},
{
num: 7,
titulo: "El modelo TCP/IP y el modelo de referencia de interconexión de sistemas abiertos (OSI) de ISO. Protocolos TCP/IP.",
archivo: "bloque4/tema7.md",
audios: [{ label: "Audio del tema", src: "audios/bloque4/tema7_audio.mp3" }]
},
{
num: 8,
titulo: "Internet: arquitectura de red. Origen, evolución y estado actual. Principales servicios. Protocolos HTTP, HTTPS y SSL/TLS.",
archivo: "bloque4/tema8.md",
audios: [{ label: "Audio del tema", src: "audios/bloque4/tema8_audio.mp3" }]
},
{
num: 9,
titulo: "Seguridad y protección en redes de comunicaciones. Seguridad perimetral. Acceso remoto seguro a redes. Redes privadas virtuales (VPN). Seguridad en el puesto del usuario.",
archivo: "bloque4/tema9.md",
audios: [{ label: "Audio del tema", src: "audios/bloque4/tema9_audio.mp3" }]
},
{
num: 10,
titulo: "Redes locales. Tipología. Técnicas de transmisión. Métodos de acceso. Dispositivos de interconexión.",
archivo: "bloque4/tema10.md",
audios: [{ label: "Audio del tema", src: "audios/bloque4/tema10_audio.mp3" }]
}
]
}
];
/**
* Total de temas en el temario.
*/
const TOTAL_TEMAS = TEMARIO.reduce((acc, b) => acc + b.temas.length, 0);
/**
* Dado un bloque (1-based) y un num de tema (1-based) devuelve
* el tema anterior y el siguiente en orden lineal, o null.
*/
function getNavigation(bloqueId, temaNum) {
const flat = [];
for (const bloque of TEMARIO) {
for (const tema of bloque.temas) {
flat.push({ bloqueId: bloque.id, temaNum: tema.num });
}
}
const idx = flat.findIndex(x => x.bloqueId === bloqueId && x.temaNum === temaNum);
return {
prev: idx > 0 ? flat[idx - 1] : null,
next: idx < flat.length - 1 ? flat[idx + 1] : null,
pos: idx + 1,
total: flat.length
};
}