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

Ir para navegação Ir para pesquisar
sem sumário de edição
Sem resumo de edição
Etiqueta: Revertido
Sem resumo de edição
Etiqueta: Reversão manual
Linha 1: Linha 1:
<script>
<script>
document.addEventListener('DOMContentLoaded', function () {
document.addEventListener('DOMContentLoaded', function () {  
  function getWeekNumber(date) {
    let d = new Date(Date.UTC(date.getFullYear(), date.getMonth(), date.getDate()));
    let dayNum = d.getUTCDay() || 7; // Ensures Sunday (0) is the last day of the week
    let yearStart = new Date(Date.UTC(d.getUTCFullYear(), 0, 1));
    return Math.ceil((((d - yearStart) / 86400000) + dayNum) / 7); // Calculate the week number
  }
 
   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();
  const startDate = new Date('2024-10-20'); // Data de início - ajustável conforme necessário
  const weeksInCycle = 12; // Total de semanas definidas


   // Cálculo da diferença em milissegundos entre hoje e a data de início
   fetch('https://worldtimeapi.org/api/timezone/America/Sao_Paulo')
  const timeDifference = today - startDate;
    .then(response => response.json())
    .then(data => {
      const currentDate = new Date(data.datetime);
      let actualWeekNumber = getWeekNumber(currentDate);


  // Cálculo do número total de dias entre hoje e a data de início
      // Check if it's Friday and after 7 AM in local time
  const totalDays = Math.floor(timeDifference / (1000 * 60 * 60 * 24));
      const isFridayAfter7AM = currentDate.getDay() === 5 && currentDate.getHours() >= 7;
 
  // Cálculo do número da semana com base nos dias desde a data de início
  let actualWeekNumber = Math.floor(totalDays / 7);


  // Verifica se é sexta-feira (dia 5) e se passou das 7 da manhã
      // Increment the week number only if it's Friday after 7 AM
  const isFridayAfter7AM = today.getDay() === 5 && today.getHours() >= 7;
      if (isFridayAfter7AM) {
        actualWeekNumber++;
      }


  // Incrementa o número da semana apenas se for sexta-feira após as 7h
      // Define the weeks starting with "Sexta semana"
  if (isFridayAfter7AM) {
      const dzWeeks = [
    actualWeekNumber++;
        { 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: 'Oitava semana', image: '/images/9/97/Card_DZ_Oitava-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 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: 'Primeira semana', image: '/images/b/b2/Card_DZ_Primeira-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: 'Quarta semana', image: '/images/1/17/Card_DZ_Quarta-Semana.png' },
        { name: 'Quinta semana', image: '/images/4/40/Card_DZ_Quinta-Semana.png' },
      ];


  // Define as semanas começando pela "Sexta semana"
      // Offset to start at "Sexta semana"
  const dzWeeks = [
      let offset = 5;
    { name: 'Sexta semana', image: '/images/2/23/Card_DZ_Sexta-Semana.png' },
      let weekIndex = ((actualWeekNumber - 1) + offset) % dzWeeks.length;
    { 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: '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 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: 'Primeira semana', image: '/images/b/b2/Card_DZ_Primeira-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: 'Quarta semana', image: '/images/1/17/Card_DZ_Quarta-Semana.png' },
    { name: 'Quinta semana', image: '/images/4/40/Card_DZ_Quinta-Semana.png' },
  ];


  // Ajuste para garantir que o índice da semana esteja correto
      // Update the image only if dzCard is found
  let weekIndex = (actualWeekNumber % weeksInCycle + weeksInCycle) % weeksInCycle;
      if (dzCard) {
 
        dzCard.src = url + dzWeeks[weekIndex].image;
  // Atualiza a imagem correspondente à semana imediatamente
        dzCard.alt = dzWeeks[weekIndex].name;
  if (dzCard) {
      }
    dzCard.src = url + dzWeeks[weekIndex].image;
    })
    dzCard.alt = dzWeeks[weekIndex].name;
    .catch(error => {
  }
      console.error('Error fetching date and time:', error);
    });
});
});
</script>
</script>
5 667

edições

Menu de navegação