function str_repeat (str, times) {
  return new Array (times + 1).join (str);
}

function digit_fix (number, digits) {
  output = number.toString ();

  if (output.length < digits)
    output = str_repeat ("0", digits - output.length) + output;

  return output;
}

function turn_countdown (element_id, turn_interval, current_time) {
  var current_time_hours     = current_time % 3600;
  var countdown_time         = turn_interval - (current_time_hours % turn_interval);
  var countdown_time_seconds = countdown_time % 60;
  var countdown_time_minutes = (countdown_time - countdown_time_seconds) / 60;

  document.getElementById(element_id).innerHTML = digit_fix (countdown_time_minutes, 2) 
                                                  + ":" + digit_fix (countdown_time_seconds, 2);
  var new_time = current_time + 1;

  setTimeout ("turn_countdown (\"" + element_id + "\"," + turn_interval + ","
                               + new_time + ")",
              1000);
}
