


/*** LIFE CHECK **/

function nodePosition(iNode) {
  for (var i=0; i<aLifeCheck.length; i++) {
    if (iNode.toString() == aLifeCheck[i][0]) {
      return i;
    }
  }
}



function initLifecheckStatement(iNode) {

  var iStatement;
  if (!iNode) {
    iStatement = 0;
    iNode = aLifeCheck[0][0];
  }
  else {
    iStatement = nodePosition(iNode);
  }
  
  var oLifecheck = document.getElementById('lifecheck');
  var oForm = document.forms['lifecheck'];
  var oStatement = document.getElementById('lifecheckStatement');
  var oResponse = document.getElementById('lifecheckResponse');

  oStatement.innerHTML = document.getElementById('statementText' + iNode).innerHTML;

  oResponse.innerHTML = '';

  var oOption = aLifeCheck[iStatement][3];


  for (var i=0; i<oOption.length; i++) {

    oResponse.innerHTML += '<label>';
    oResponse.innerHTML += '<input type="radio" class="radio" name="response" value="' + i + '"/> '
    oResponse.innerHTML += oOption[i][0];
    oResponse.innerHTML += '</label><br/>';

  }


  var oPrevious = document.createElement('input');
      oPrevious.type = 'button';
      oPrevious.value = 'Previous Statement';
      oPrevious.name = 'previousStatement';
      oPrevious.className = 'button';
      oPrevious.setAttribute('iNode', iNode);
      if (oPrevious.attachEvent) {
        oPrevious.attachEvent('onclick', previousStatement);
      }
      else {
        oPrevious.addEventListener('click', previousStatement, false);
      }

      if (iStatement == 0) {
        oPrevious.disabled = true;
      }
  
  oResponse.appendChild(oPrevious);


  var oNext = document.createElement('input');
      oNext.type = 'button';
      oNext.value = 'Next Statement';
      oNext.name = 'nextStatement';
      oNext.className = 'button';
      oNext.setAttribute('iNode', iNode);
      if (oNext.attachEvent) {
        oNext.attachEvent('onclick', testStatement);
      }
      else {
        oNext.addEventListener('click', testStatement, false);
      }

  oResponse.appendChild(oNext);

  var oBreak = document.createElement('br');
      oBreak.className = 'clear';

  oResponse.appendChild(oBreak);

}


function previousStatement(evt) {
  var oBtn = evt.target || evt.srcElement;  
  var iNode = oBtn.getAttribute('iNode');
  var iPos = nodePosition(iNode);

  initLifecheckStatement(aLifeCheck[iPos-1][0]);
}

function testStatement(evt) {
  var oBtn = evt.target || evt.srcElement;
  var oForm = document.forms['lifecheck'];
  var oResponseFields = oForm.elements['response'];

  var iResponse;
  for (var i=0; i<oResponseFields.length; i++) {
    if (oResponseFields[i].checked) {
      iResponse = oResponseFields[i].value;
    }
  }

  if (!iResponse) {
    alert('Please select a response');
    return false;
  }

  var iNode = oBtn.getAttribute('iNode');
  var iStatement = nodePosition(iNode)
  
  if (oForm.elements['statement' + iNode]) {
    oForm.removeChild(oForm.elements['statement' + iNode]);
  }
  if (oForm.elements['pathway' + iNode]) {
    oForm.removeChild(oForm.elements['pathway' + iNode]);
  }


  if (parseInt(aLifeCheck[iStatement][2]) == 1) {  
    oForm.innerHTML += '<input type="hidden" name="statement' + iNode + '" value="' + iResponse + '"/>' ;
  }
  else {
    oForm.innerHTML += '<input type="hidden" name="pathway' + iNode + '" value="' + iResponse + '"/>' ;
  }

  var sRedirect = aLifeCheck[iStatement][3][parseInt(iResponse)][1];
  if (sRedirect !== '') {
    sRedirect = sRedirect.replace(/\D*/igm, '');
    iNode = sRedirect;
    iStatement = nodePosition(iNode);
  }
  else {
    iStatement += 1;
  }

    
  if (aLifeCheck.length > iStatement) {
    iNode = aLifeCheck[iStatement][0];
    initLifecheckStatement(iNode);
  }
  else {
    initLifecheckEnd();
  }
}



function initLifecheckEnd() {
  var oResponse = document.getElementById('lifecheckResponse');
  var oStatement = document.getElementById('lifecheckStatement');

  oResponse.innerHTML = '';
  oStatement.innerHTML = '<h2>Complete</h2>';
  oStatement.innerHTML += '<p>Please press the button below to see how you have done.</p>';


  var oNext = document.createElement('input');
      oNext.type = 'submit';
      oNext.value = 'Show Results';
      oNext.name = 'complete';
      oNext.className = 'button';

  oResponse.appendChild(oNext);

}




/* END LIFE CHECK */
