Diferencia entre revisiones de «MediaWiki:Common.js»

De WCAG Wiki
Sin resumen de edición
Sin resumen de edición
Línea 33: Línea 33:


// boton de expandir el abrol
// boton de expandir el abrol
mw.loader.using('jquery.makeCollapsible', function () {


document.addEventListener("DOMContentLoaded", function () {
  // Evento delegado: funciona aunque el botón esté en una página concreta
   document.getElementById("expandAll").onclick = function () {
   $(document).on('click', '#expandAll', function () {
     document.querySelectorAll(".mw-collapsible").forEach(el => {
 
      if (el.classList.contains("mw-collapsed")) {
     // Asegura que MediaWiki ha creado los toggles
        el.querySelector(".mw-collapsible-toggle").click();
    $('.mw-collapsible').makeCollapsible();
      }
 
    // Expande todo (solo lo que esté colapsado)
    $('.mw-collapsible.mw-collapsed').each(function () {
      $(this).find('> .mw-collapsible-toggle a').trigger('click');
     });
     });
  };


  document.getElementById("collapseAll").onclick = function () {
    // Por si hay niveles anidados que solo se activan al abrir padres:
     document.querySelectorAll(".mw-collapsible").forEach(el => {
    // repetimos una vez más.
       if (!el.classList.contains("mw-collapsed")) {
     $('.mw-collapsible.mw-collapsed').each(function () {
        el.querySelector(".mw-collapsible-toggle").click();
       $(this).find('> .mw-collapsible-toggle a').trigger('click');
      }
     });
     });
   };
 
   });
 
});
});

Revisión del 17:42 6 feb 2026

/* Cualquier código JavaScript escrito aquí se cargará para todos los usuarios en cada carga de página */

// Cargar el script de Google Analytics de forma asíncrona
var gtagScript = document.createElement('script');
gtagScript.src = 'https://www.googletagmanager.com/gtag/js?id=G-R234MM1CMB';
gtagScript.async = true;
document.head.appendChild(gtagScript);

// Configurar Google Analytics
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'G-R234MM1CMB');

// Integrar MsUpload en campos de tipo 'upload' de PageForms
// Integrar MsUpload con campos de subida en PageForms
mw.loader.using('ext.MsUpload').done(function() {
  $(document).ready(function() {
    $('input[type="file"].pfUploadInput, .pfUploadField input[type="file"]').each(function() {
      if (!$(this).hasClass('msupload-applied')) {
        $(this).addClass('msupload-applied');
        const container = $('<div class="msupload-container" aria-label="Subida de archivo"></div>').insertAfter($(this));
        if (typeof $.fn.msUpload === 'function') {
          $(container).msUpload({
            targetInput: this,
            autoInsert: true
          });
        }
      }
    });
  });
});

// boton de expandir el abrol
mw.loader.using('jquery.makeCollapsible', function () {

  // Evento delegado: funciona aunque el botón esté en una página concreta
  $(document).on('click', '#expandAll', function () {

    // Asegura que MediaWiki ha creado los toggles
    $('.mw-collapsible').makeCollapsible();

    // Expande todo (solo lo que esté colapsado)
    $('.mw-collapsible.mw-collapsed').each(function () {
      $(this).find('> .mw-collapsible-toggle a').trigger('click');
    });

    // Por si hay niveles anidados que solo se activan al abrir padres:
    // repetimos una vez más.
    $('.mw-collapsible.mw-collapsed').each(function () {
      $(this).find('> .mw-collapsible-toggle a').trigger('click');
    });

  });

});