Template:IxTime: Difference between revisions

From IxWiki
Jump to navigation Jump to search
mNo edit summary
Tag: 2017 source edit
m v2
Tag: 2017 source edit
Line 2: Line 2:
<span id="ix-time-display">Loading Ix Time...</span>
<span id="ix-time-display">Loading Ix Time...</span>
<script>
<script>
   function calculateIxTime() {
   (function() {
    var epoch = new Date(2020, 9, 4).getTime() / 1000; // JavaScript uses milliseconds, so divide by 1000
    function calculateIxTime() {
    var currentTime = Math.floor(new Date().getTime() / 1000);
      var epoch = new Date(2020, 9, 4).getTime() / 1000;
    var secondsSinceEpoch = currentTime - epoch;
      var currentTime = Math.floor(new Date().getTime() / 1000);
    var ixTime = Math.floor(secondsSinceEpoch * 4.0 + epoch);
      var secondsSinceEpoch = currentTime - epoch;
      var ixTime = Math.floor(secondsSinceEpoch * 4.0 + epoch);
      var ixDate = new Date(ixTime * 1000);
      var options = {
        weekday: "long",
        year: "numeric",
        month: "long",
        day: "numeric",
        hour: "2-digit",
        minute: "2-digit",
        second: "2-digit",
        timeZoneName: "short",
      };
      return ixDate.toLocaleString("en-US", options);
    }


     // Format the Ix Time
     function updateIxTime() {
    var ixDate = new Date(ixTime * 1000);
      var displayElement = document.getElementById("ix-time-display");
    var options = {
       if (displayElement) {
      weekday: "long",
        displayElement.textContent = calculateIxTime();
      year: "numeric",
      }
      month: "long",
    }
      day: "numeric",
      hour: "2-digit",
      minute: "2-digit",
       timeZoneName: "short",
    };
    return ixDate.toLocaleString("en-US", options);
  }


  document.getElementById("ix-time-display").innerText = calculateIxTime();
    // Update immediately
    updateIxTime();
 
    // Update every second
    setInterval(updateIxTime, 1000);
 
    // Reattach to DOM if element is removed
    var observer = new MutationObserver(function(mutations) {
      mutations.forEach(function(mutation) {
        if (mutation.type === 'childList') {
          var displayElement = document.getElementById("ix-time-display");
          if (!displayElement) {
            var newElement = document.createElement('span');
            newElement.id = 'ix-time-display';
            document.body.appendChild(newElement);
            updateIxTime();
          }
        }
      });
    });
 
    observer.observe(document.body, { childList: true, subtree: true });
  })();
</script>
</script>
</html>
</html>

Revision as of 20:18, 3 August 2024

Loading Ix Time...