var start;
var digits = [];

// Just to preload images
for (var i = 0; i < 10; i++)
{
  digits[i] = new Image;
  digits[i].src = 'imgs/' + i + '.png';
}

function displayTime()
{
  var d = new Date();
  var localTime = d.getTime();
  var localOffset = d.getTimezoneOffset() * 60000;
  var utc = localTime + localOffset;

  var diff = (new Date("October 3, 2008 17:25:00") - utc);
  var time = [];
  
  var days = Math.floor(diff / 86400000);
  days = (days < 10 ? '0' : '') + days;
  time[0] = days.charAt(0);
  time[1] = days.charAt(1);
  diff -= days * 86400000;
  
  var hours = Math.floor(diff / 3600000);
  hours = (hours < 10 ? '0' : '') + hours;
  time[2] = hours.charAt(0);
  time[3] = hours.charAt(1);
  diff -= hours * 3600000;

  var mins = Math.floor(diff / 60000);
  mins = (mins < 10 ? '0' : '') + mins;
  time[4] = mins.charAt(0);
  time[5] = mins.charAt(1);
  diff -= mins * 60000;

  var secs = Math.floor(diff / 1000);
  secs = (secs < 10 ? '0' : '') + secs;
  time[6] = secs.charAt(0);
  time[7] = secs.charAt(1);
  diff -= secs * 1000;

  for (var i = 0; i < time.length; i++)
  {
    var digit = document.getElementById('d' + i);
    digit.src = digits[time[i]].src;
    digit.alt = time[i];
  }
}

addLoadListener(function()
{
  start = new Date();

  displayTime();
  setInterval('displayTime()', 50);
});

function addLoadListener(fn)
{
  if (typeof window.addEventListener != 'undefined')
  {
    window.addEventListener('load', fn, false);
  }
  else if (typeof document.addEventListener != 'undefined')
  {
    document.addEventListener('load', fn, false);
  }
  else if (typeof window.attachEvent != 'undefined')
  {
    window.attachEvent('onload', fn);
  }
  else
  {
    var oldfn = window.onload;
    if (typeof window.onload != 'function')
    {
      window.onload = fn;
    }
    else
    {
      window.onload = function()
      {
        oldfn();
        fn();
      };
    }
  }
}
