function countdown(secondsLeft, valueTargetId) {
  if (secondsLeft < 0)
    return;

  document.secondsLeft   = secondsLeft;
  document.valueTargetId = valueTargetId;

  var dateDiff = secondsLeft * 1000;

  var diffDay  = Math.floor(   dateDiff / (60*60*24*1000));
  var diffHour = Math.floor(  (dateDiff % (60*60*24*1000)) / (60*60*1000));
  var diffMin  = Math.floor( ((dateDiff % (60*60*24*1000)) % (60*60*1000)) / (60*1000));
  var diffSec  = Math.floor((((dateDiff % (60*60*24*1000)) % (60*60*1000)) % (60*1000)) / 1000);

  if (diffDay <= 0 && diffHour <= 0 && diffMin <= 0 && diffSec <= 0) {
    document.getElementById(valueTargetId).innerHTML = 'Refresh now to see the latest update!';
    window.location.reload(false);
    return;
  } else {
    document.getElementById(valueTargetId).innerHTML = "Next update in "+diffMin+" minute"+(diffMin != 1 ? "s" : "")+(diffSec > 0 ? ", "+diffSec+" second"+(diffSec != 1 ? "s" : "") : "");
    setTimeout("countdown(document.secondsLeft - 1, document.valueTargetId);", 1000);
  }
}
