next_draw = -1;

function updateClock()
{
  now = new Date();
  if(next_draw < now.getTime())
  {
    new Ajax.Request('/play/next_draw', {
      method: 'get',
      asynchronous: true
    });
  }
  else
  {
    millisecs = next_draw - now.getTime();
    days = Math.floor(millisecs / (1000 * 60 * 60 * 24));
    millisecs %= (1000 * 60 * 60 * 24);
    hours = Math.floor(millisecs /  (1000 * 60 * 60));
    millisecs %= (1000 * 60 * 60);
    minutes = Math.floor(millisecs / (1000 * 60));
    millisecs %= (1000 * 60);
    secs = Math.floor(millisecs / 1000);
    days = new String(days);
    hours = ((hours < 10) ? '0' : '') + hours
    minutes = ((minutes < 10) ? '0' : '') + minutes
    secs = ((secs < 10) ? '0' : '') + secs
    $('day0').src = $('day0').src.replace(/\d(\.gif)/, days + '$1')
    $('hour0').src = $('hour0').src.replace(/\d(\.gif)/, hours.substr(0, 1) + '$1')
    $('hour1').src = $('hour1').src.replace(/\d(\.gif)/, hours.substr(1, 1) + '$1')
    $('min0').src = $('min0').src.replace(/\d(\.gif)/, minutes.substr(0, 1) + '$1')
    $('min1').src = $('min1').src.replace(/\d(\.gif)/, minutes.substr(1, 1) + '$1')
    $('sec0').src = $('sec0').src.replace(/\d(\.gif)/, secs.substr(0, 1) + '$1')
    $('sec1').src = $('sec1').src.replace(/\d(\.gif)/, secs.substr(1, 1) + '$1')

    setTimeout(updateClock, 1000 - (new Date().getMilliseconds()));
  }
}

Event.observe(window, 'load', updateClock);
