Diferencia entre revisiones de «Página principal»

De WCAG Wiki
Línea 44: Línea 44:
|placeholder=Introduce el nombre de la nueva página (por ejemplo: 2025_26_UdL_1.1.1-A)
|placeholder=Introduce el nombre de la nueva página (por ejemplo: 2025_26_UdL_1.1.1-A)
}}
}}
== form3 ==
<html>
<b>Selecciona la universidad:</b><br/>
<select id="universidad" style="margin:0.5em 0; padding:0.3em;" onchange="actualizarNombre()">
  <option value="" disabled selected>-- Elige universidad --</option>
  <option value="UdL">UdL</option>
  <option value="UPSA">UPSA</option>
  <option value="UFV">UFV</option>
  <option value="UCV">UCV</option>
</select>
<br/>
<b>Selecciona el subcriterio WCAG:</b><br/>
<select id="subcriterio" style="margin:0.5em 0; padding:0.3em;" onchange="actualizarNombre()">
  <option value="" disabled selected>-- Elige subcriterio --</option>
  <option value="1.1.1-A">1.1.1-A. Contenido no textual</option>
  <option value="1.3.1-A">1.3.1-A. Información y relaciones</option>
  <option value="1.3.4-A">1.3.4-A. Orientación</option>
  <option value="1.4.3-A">1.4.3-A. Contraste (mínimo)</option>
  <option value="2.4.3-A">2.4.3-A. Orden del foco</option>
  <option value="3.3.1-A">3.3.1-A. Identificación de errores</option>
  <option value="4.1.3-A">4.1.3-A. Mensajes de estado</option>
</select>
<br/><br/>
<!-- Aquí va el parser function normal -->
</html>
{{#forminput:form=ActividadWCAG
|button text=🧩 Crear ejemplo
|default value=2025_26_
|input type=text
|id=nombrePagina
}}
<html>
<!-- Script para rellenar automáticamente el campo -->
<script>
async function actualizarNombre() {
  const uni = document.getElementById('universidad').value;
  const sub = document.getElementById('subcriterio').value;
  const input = document.querySelector('input#nombrePagina');
  if (!uni || !sub || !input) return;
  const baseName = `2025_26_${uni}_${sub}`;
  let pageName = baseName;
  let contador = 1;
  // Comprueba si la página ya existe
  while (await paginaExiste(pageName)) {
    const num = String(contador).padStart(3, '0');
    pageName = `${baseName}_${num}`;
    contador++;
  }
  input.value = pageName; // Autocompleta el campo del #forminput
}
async function paginaExiste(titulo) {
  const response = await fetch(`/api.php?action=query&titles=${encodeURIComponent(titulo)}&format=json`);
  const data = await response.json();
  const pages = data.query.pages;
  const key = Object.keys(pages)[0];
  return key !== "-1"; // true si existe
}
</script>
</html>

Revisión del 08:03 2 nov 2025