Widget:Teste

De Wiki Gla
Revisão de 23h10min de 16 de março de 2026 por Gurren1 (discussão | contribs)
(dif) ← Edição anterior | Revisão atual (dif) | Versão posterior → (dif)
Ir para navegação Ir para pesquisar

<script> (function() {

 var slides = [];
 var raw = [
   { img: "", label: "" },
   { img: "", label: "" },
   { img: "", label: "" },
   { img: "", label: "" },
   { img: "", label: "" },
   { img: "", label: "" },
   { img: "", label: "" },
   { img: "", label: "" }
 ];
 for (var i = 0; i < raw.length; i++) {
   if (raw[i].img && raw[i].img.length > 0) {
     slides.push(raw[i]);
   }
 }
 if (slides.length === 0) return;
 var current = 0;
 var interval = 3000;
 var timer = null;
 var paused = false;
 var carousel = document.getElementById('fc-carousel');
 var track = document.getElementById('fc-track');
 var label = document.getElementById('fc-label');
 var prevBtn = document.getElementById('fc-prev');
 var nextBtn = document.getElementById('fc-next');
 function getFileUrl(filename) {
   var base = mw && mw.config ? mw.config.get('wgScript') : '/index.php';
   return base + '?title=Especial:FilePath/' + encodeURIComponent(filename);
 }
 for (var i = 0; i < slides.length; i++) {
   var div = document.createElement('div');
   div.style.cssText = 'flex:0 0 100%; text-align:center; padding:4px; box-sizing:border-box;';
   var img = document.createElement('img');
   img.src = getFileUrl(slides[i].img);
   img.style.cssText = 'max-width:100%; height:auto; display:block; margin:0 auto; border-radius:4px;';
   img.alt = slides[i].label || ;
   div.appendChild(img);
   track.appendChild(div);
 }
 function goTo(index) {
   if (index < 0) index = slides.length - 1;
   if (index >= slides.length) index = 0;
   current = index;
   track.style.transform = 'translateX(-' + (current * 100) + '%)';
   label.textContent = slides[current].label || ;
 }
 function startTimer() {
   stopTimer();
   timer = setInterval(function() {
     if (!paused) goTo(current + 1);
   }, interval);
 }
 function stopTimer() {
   if (timer) { clearInterval(timer); timer = null; }
 }
 prevBtn.addEventListener('click', function() { goTo(current - 1); startTimer(); });
 nextBtn.addEventListener('click', function() { goTo(current + 1); startTimer(); });
 carousel.addEventListener('mouseenter', function() { paused = true; });
 carousel.addEventListener('mouseleave', function() { paused = false; });
 goTo(0);
 startTimer();

})(); </script>