Widget:DzScript2: mudanças entre as edições

sem sumário de edição
Sem resumo de edição
Etiqueta: Reversão manual
Sem resumo de edição
Linha 1: Linha 1:
<script>
<script>
document.addEventListener('DOMContentLoaded', function () {  
document.addEventListener('DOMContentLoaded', function () {
   function getWeekNumber(date) {
  // Função para calcular o número da semana com base na data de início específica
     let d = new Date(Date.UTC(date.getFullYear(), date.getMonth(), date.getDate()));
   function getWeekNumberFromStart(date, startDate) {
     let dayNum = d.getUTCDay() || 7; // Ensures Sunday (0) is the last day of the week
     let diffTime = date.getTime() - startDate.getTime();
    let yearStart = new Date(Date.UTC(d.getUTCFullYear(), 0, 1));
     let diffDays = Math.floor(diffTime / (1000 * 60 * 60 * 24));
     return Math.ceil((((d - yearStart) / 86400000) + dayNum) / 7); // Calculate the week number
     return Math.ceil(diffDays / 7);
   }
   }


   const url = window.location.origin;
   const url = window.location.origin;
   const dzCard = document.getElementById('dz-card');  
   const dzCard = document.getElementById('dz-card');
  const today = new Date();


   fetch('https://worldtimeapi.org/api/timezone/America/Sao_Paulo')
   // Data de início para a contagem das semanas
    .then(response => response.json())
  const startDate = new Date('2024-10-20'); // Data de início da contagem
    .then(data => {
  let actualWeekNumber = getWeekNumberFromStart(today, startDate);
      const currentDate = new Date(data.datetime);
      let actualWeekNumber = getWeekNumber(currentDate);


      // Check if it's Friday and after 7 AM in local time
  // Verificar se é sexta-feira (dia 5) e se passou das 7 da manhã
      const isFridayAfter7AM = currentDate.getDay() === 5 && currentDate.getHours() >= 7;
  const isFridayAfter7AM = today.getDay() === 5 && today.getHours() >= 7;


      // Increment the week number only if it's Friday after 7 AM
  // Incrementa o número da semana apenas se for sexta-feira após as 7h
      if (isFridayAfter7AM) {
  if (isFridayAfter7AM) {
        actualWeekNumber++;
    actualWeekNumber++;
      }
  }


      // Define the weeks starting with "Sexta semana"
  // Define as semanas começando pela "Sexta semana"
      const dzWeeks = [
  const dzWeeks = [
        { name: 'Sexta semana', image: '/images/2/23/Card_DZ_Sexta-Semana.png' },
    { name: 'Sexta semana', image: '/images/2/23/Card_DZ_Sexta-Semana.png' },
        { name: 'Sétima semana', image: '/images/f/f2/Card_DZ_S%C3%A9tima-Semana.png' },
    { name: 'Sétima semana', image: '/images/f/f2/Card_DZ_S%C3%A9tima-Semana.png' },
        { name: 'Oitava semana', image: '/images/9/97/Card_DZ_Oitava-Semana.png' },
    { name: 'Oitava semana', image: '/images/9/97/Card_DZ_Oitava-Semana.png' },
        { name: 'Nona semana', image: '/images/b/b3/Card_DZ_Nona-Semana.png' },
    { name: 'Nona semana', image: '/images/b/b3/Card_DZ_Nona-Semana.png' },
        { name: 'Décima semana', image: '/images/3/30/Card_DZ_D%C3%A9cima-Semana.png' },
    { name: 'Décima semana', image: '/images/3/30/Card_DZ_D%C3%A9cima-Semana.png' },
        { name: 'Décima primeira semana', image: '/images/4/49/Card_DZ_D%C3%A9cima-Primeira-Semana.png' },
    { name: 'Décima primeira semana', image: '/images/4/49/Card_DZ_D%C3%A9cima-Primeira-Semana.png' },
        { name: 'Décima segunda semana', image: '/images/1/11/Card_DZ_D%C3%A9cima-Segunda-Semana.png' },
    { name: 'Décima segunda semana', image: '/images/1/11/Card_DZ_D%C3%A9cima-Segunda-Semana.png' },
        { name: 'Primeira semana', image: '/images/b/b2/Card_DZ_Primeira-Semana.png' },
    { name: 'Primeira semana', image: '/images/b/b2/Card_DZ_Primeira-Semana.png' },
        { name: 'Segunda semana', image: '/images/9/97/Card_DZ_Segunda-Semana.png' },
    { name: 'Segunda semana', image: '/images/9/97/Card_DZ_Segunda-Semana.png' },
        { name: 'Terceira semana', image: '/images/f/fd/Card_DZ_Terceira-Semana.png' },
    { name: 'Terceira semana', image: '/images/f/fd/Card_DZ_Terceira-Semana.png' },
        { name: 'Quarta semana', image: '/images/1/17/Card_DZ_Quarta-Semana.png' },
    { name: 'Quarta semana', image: '/images/1/17/Card_DZ_Quarta-Semana.png' },
        { name: 'Quinta semana', image: '/images/4/40/Card_DZ_Quinta-Semana.png' },
    { name: 'Quinta semana', image: '/images/4/40/Card_DZ_Quinta-Semana.png' },
      ];
  ];


      // Offset to start at "Sexta semana"
  // Ajuste para garantir que o índice da semana esteja correto
      let offset = 5;
  let weekIndex = (actualWeekNumber - 1) % dzWeeks.length;
      let weekIndex = ((actualWeekNumber - 1) + offset) % dzWeeks.length;


      // Update the image only if dzCard is found
  // Atualiza a imagem correspondente à semana imediatamente
      if (dzCard) {
  if (dzCard) {
        dzCard.src = url + dzWeeks[weekIndex].image;
    dzCard.src = url + dzWeeks[weekIndex].image;
        dzCard.alt = dzWeeks[weekIndex].name;
    dzCard.alt = dzWeeks[weekIndex].name;
      }
  }
    })
    .catch(error => {
      console.error('Error fetching date and time:', error);
    });
});
});
</script>
</script>
5 667

edições