var timerID = 0;
var timing = false;
var counterValue = 0;
var disableControlFormName;

function initTimer(formName) {
  disableControlFormName = formName;
  if (typeof(document.forms['timer']) != "undefined") {
    if (typeof(document.forms[disableControlFormName]) != "undefined")
      if (typeof(document.forms[disableControlFormName].elements['/timeLeft']) != "undefined")        
        counterValue = document.forms[disableControlFormName].elements['/timeLeft'].value;
    if (counterValue != 0) 
      timing = true;    
    else
      disableControls();
    updateTimer();
  }
}

function updateTimer() {
  if (timerID)
    clearTimeout(timerID);
  if (timing) {
    counterValue -= 1000;
    if (counterValue <= 0) {    
      counterValue = 0;
      timing = false;    
      disableControls();
    }  else
      timerID = setTimeout("updateTimer()", 1000);        

    var newValue;
    var tmpCounterValue = Math.floor(counterValue / 1000);
    var posValue = Math.floor(tmpCounterValue / (60*60));  
          
    newValue = (posValue<10?"0":"")+posValue;
    tmpCounterValue = tmpCounterValue % (60*60);
    posValue = Math.floor(tmpCounterValue / 60);      
    newValue += ":"+(posValue<10?"0":"")+posValue;
    tmpCounterValue = tmpCounterValue % 60;
    newValue += ":"+(tmpCounterValue<10?"0":"")+tmpCounterValue;    
    
    document.forms['timer'].counter.value = newValue+" ";
  }  
}

function disableControls() {
  if (typeof(document.forms[disableControlFormName]) != "undefined") {
    if (typeof(document.forms[disableControlFormName].elements['cocoon-action-prev']) != "undefined")
      document.forms[disableControlFormName].elements['cocoon-action-prev'].disabled = true;
    if (typeof(document.forms[disableControlFormName].elements['/currentQuestionAnswerContent']) != "undefined") {
      document.forms[disableControlFormName].elements['/currentQuestionAnswerContent'].disabled = true;                              
      if (typeof(document.forms[disableControlFormName].elements['cocoon-action-next']) != "undefined")
        document.forms[disableControlFormName].elements['cocoon-action-next'].disabled = true;      
    }
  }      
}