Widget:Teste

De Wiki Gla
Revisão de 03h21min de 23 de maio de 2025 por Gurren1 (discussão | contribs)
Ir para navegação Ir para pesquisar

<script> (function () {

   const raw = document.getElementById('infoboxboss-data');
   if (!raw) return;
   const habilidades = [];
   for (let i = 1; i <= 15; i++) {
       const nome = raw.dataset[`hab${i}`];
       const descricao = raw.dataset[`de${i}`];
       const videoFile = raw.dataset[`vid${i}`];
       if (!nome || !videoFile) continue;
       habilidades.push({
           nome,
           descricao,
           videoUrl: `https://wiki.gla.com.br/index.php/Special:FilePath/${videoFile}`,
           id: `video${i}`
       });
   }
   const tabsContainer = document.getElementById('skill-tabs');
   const videoContainer = document.getElementById('skill-videos');
   const descText = document.getElementById('desc-text');
   habilidades.forEach((hab, idx) => {
       const btn = document.createElement('button');
       btn.className = 'infobox-skill-tab' + (idx === 0 ? ' active' : );
       btn.dataset.video = hab.id;
       btn.textContent = hab.nome;
       tabsContainer.appendChild(btn);
       const videoWrapper = document.createElement('div');
       videoWrapper.id = hab.id;
       videoWrapper.className = 'skill-video';
       videoWrapper.style.display = idx === 0 ? 'block' : 'none';
       const video = document.createElement('video');
       video.className = 'infobox-skill-video';
       video.controls = true;
       video.preload = 'metadata';
       const source = document.createElement('source');
       source.src = hab.videoUrl;
       source.type = 'video/mp4';
       video.appendChild(source);
       videoWrapper.appendChild(video);
       videoContainer.appendChild(videoWrapper);
   });
   if (habilidades.length) {
       descText.innerHTML = habilidades[0].descricao.replace(/(.*?)/g, '$1');
   }
   const tabs = document.querySelectorAll('.infobox-skill-tab');
   const videos = document.querySelectorAll('.skill-video');
   tabs.forEach((tab, idx) => {
       tab.addEventListener('click', () => {
           tabs.forEach(t => t.classList.remove('active'));
           tab.classList.add('active');
           const formatted = habilidades[idx].descricao.replace(/(.*?)/g, '$1');
           descText.innerHTML = formatted;
           videos.forEach(v => {
               const videoTag = v.querySelector('video');
               if (v.id === habilidades[idx].id) {
                   v.style.display = 'block';
                   videoTag.load();
                   videoTag.play();
               } else {
                   v.style.display = 'none';
                   videoTag.pause();
               }
           });
       });
   });
   raw.remove();

})(); </script>