
var textlist=[];
	var choicelist=[];
	var feedbacklist=[];
	var correctlist=[];
	var correctlist2=[];
	var textlist2=[];

	var choicelist2=[];
	var feedbacklist2=[];
	var correctlist2=[];
		var imagelist=[];
		var imagelist2=[];
	var audiolist=[];
	var audiolist2=[];
	var instructions="";
	var scriptlist=[];
	var scriptlist2=[];
	var score=0;
	var questionnumber=0;
	
	var questionanswered1=0;
	var questionanswered2=0;
	var answered=0;
	var correct=0;
	var numberofchoices=7;
	var extractno=1;

	function restart(){
		 choicelist=[];
	feedbacklist=[];
	 correctlist=[];
 correctlist2=[];
	 textlist2=[];

	 choicelist2=[];
	 feedbacklist2=[];
	 correctlist2=[];
		 imagelist=[];
		 imagelist2=[];
	 audiolist=[];
	 audiolist2=[];
	 instructions="";
 scriptlist=[];
	 scriptlist2=[];
	 score=0;
 questionnumber=0;
 extractno=1;
	
	 questionanswered=0;
	 answered=0;
	 correct=0;
	 testSetUp();
	}
	
	function reset(){
	
		for (i=0;i<gaplist.length;i++)
		{
		var z="q"+i;
		
		document.getElementById(z).value ='';
		}
		clearScores();
	}
	function testSetUp(){
	var txt="";
	 answers = [];

 useranswers = [];
		
	
	
	
	
	if (window.XMLHttpRequest)
	  {
	  xhttp=new XMLHttpRequest();
	  }
	else
	  {
	  xhttp=new ActiveXObject("Microsoft.XMLHTTP");
	  }
	
	xhttp.open("GET",testfile,false);
	xhttp.send("");
	xmlDoc=xhttp.responseXML;
	

var rand=xmlDoc.getElementsByTagName("random")[0].childNodes[0].nodeValue;
	instructions=xmlDoc.getElementsByTagName("instructions")[0].childNodes[0].nodeValue;

	
	document.getElementById("extract").innerHTML=xmlDoc.getElementsByTagName("extract1")[0].childNodes[0].nodeValue;
	
	var x=xmlDoc.getElementsByTagName("item");
	
	var qnum=0;

 for (i=0;i<x.length;i++)
 {
 textlist.push(x[i].getElementsByTagName("text")[0].childNodes[0].nodeValue)  ;	
  imagelist.push(x[i].getElementsByTagName("image")[0].childNodes[0].nodeValue)  ;	

 	
    for (j=0;j<numberofchoices;j++)
	{
   
  choicelist.push(x[i].getElementsByTagName("choice")[j].childNodes[0].nodeValue)  ;

  var feedback=x[i].getElementsByTagName("choice")[j].getAttribute("feedback");
				
feedbacklist.push(feedback);

 }
  
  
  
 txt=txt+feedbacklist[i];

 showQuestion();

 }
		
	


 

}

function loadQuestion(){
	questionnumber++
	//questionnumber++
	//extractno++
	 showQuestion();
	
}
function showQuestion(){
	ex="extract"+extractno;
document.getElementById("extract").innerHTML=xmlDoc.getElementsByTagName(ex)[0].childNodes[0].nodeValue;	 
	
document.getElementById("instructions").innerHTML= instructions  ;	


	
	document.getElementById("nextbutton").innerHTML ="";
questionanswered1=0;
questionanswered2=0;	
txt=""

txt=txt +'<p class="question">Question ' + (questionnumber+1) + '&nbsp;&nbsp; <span id="result1_' + questionnumber + '"><img src="blank.gif" style="border:0" alt="" /></span><span id="feedback1"></span></p>';
	txt=txt + "<img src='"+ imagelist[questionnumber]+ "' align='right' width='210' height='140' />" + textlist[questionnumber]+"<p></p><form id='form1' nme='form1'><div id='choices'>";
	

	
	 for(j=0;j<numberofchoices;) {
     
		
		txt=txt+ '<input type="radio" name="choices1" value="'+j+'" onClick="submitAnswer('+questionnumber+','+j+',1)"><label id="label_' + questionnumber + '_' + j + '" for="answer_' + questionnumber + '_' + j + '">&nbsp;<a   class="achoice" onClick="submitAnswer('+questionnumber+','+j+',1)" id="'+questionnumber + '_' + j + '">'  + choicelist[(numberofchoices*questionnumber)+j] + '</a></label> <br>';
		
		j++;

				 }
				
				 txt=txt+'</form>';
				 

	 
document.getElementById("score").innerHTML='<span id="score">&nbsp;&nbsp;&nbsp;Score: '+score+ '/'+questionnumber +'</span>';
	
	document.getElementById("text").innerHTML=txt;
	
	
	
	
	
}
function setCheckedValue(radioObj, newValue) {
	
	if(!radioObj)
		return;
	var radioLength = radioObj.length;
	if(radioLength == undefined) {
		radioObj.checked = (radioObj.value == newValue.toString());
		return;
	}
	for(var i = 0; i < radioLength; i++) {
		radioObj[i].checked = false;
		if(radioObj[i].value == newValue.toString()) {
			radioObj[i].checked = true;
		}
	}
}

function submitAnswer(id,labelId,q) {
var choice='choices'+q;
var result='result'+q;
var feed='feedback'+q;

setCheckedValue(document.forms['form1'].elements[choice], labelId);


		useranswers[id] = choicelist[(numberofchoices*(id)+(1*labelId))];	
	var x =answers[id] ;
	var y = useranswers[id];
	var last_char=labelId;
	
	var feedback3=feedbacklist[(id*numberofchoices)+1*last_char];
			
	
	
	
	if (feedback3=="Correct"){
		
	feedback3="  " +"<span id='green'>"+feedback3+"</span>";
		
	document.getElementById(result+'_' + id).innerHTML = '<img src="correct.gif" style="border:0" alt="Correct!" />';

	
	 if (q==1){
		if (questionanswered1==0){
		score++;
		answered++;
	}
		 }
		 if (q==2){
		if (questionanswered2==0){
		
		answered++;
		score++;
	}
		 }
		
		
	
	
	}
	else
	{
		 if (q==1){
		if (questionanswered1==0){
		
		answered++;
	}
		 }
		 if (q==2){
		if (questionanswered2==0){
		
		answered++;
	}
		 }
		 document.getElementById(result+'_' + id).innerHTML = '<img src="incorrect.gif" style="border:0" alt="Incorrect!" />';
		feedback3="  " +"<span id='red'>"+feedback3+"</span>";
		
		
	}
 
 
	
  document.getElementById("score").innerHTML = ' &nbsp;&nbsp;&nbsp;Score: ' + score + '/' + (answered) ; 
   document.getElementById(feed).innerHTML = feedback3;
   if (q==1){
	   
	questionanswered1=1;
   }
    if (q==2){
	   
	questionanswered2=1;
   }
   if (questionanswered1=='1')
   if (questionnumber<numberofquestions-1){
		
		document.getElementById("nextbutton").innerHTML ='<input type="submit" onClick="javascript:loadQuestion()" name="next" id="next" value="Next" />';
	
		//questionnumber++;
		
		}else{
			document.getElementById("nextbutton").innerHTML ='<input type="submit" onClick="javascript:showResults()" name="next" id="next" value="Finish" />';
			
		}
   {
   }
  
}
function showResults(){
document.getElementById("instructions").innerHTML="";

txt="";
	txt=txt + "<div id='results'>";
	
if ((score/numberofquestions)>0.5){
	resultsmessage="<p>Congratulations! You have completed the test.</p><p> Do you wish to start again?</p>";
}else{
	resultsmessage="<p>You have completed the test.</p><p> Do you wish to start again?</p>";
}
	

     
		txt=txt+ '<label id="results"><p>'  + resultsmessage + '</label><p><span id="score">Score: '+score+ '/'+(1*(questionnumber)+2) +'</span></p>';
		
				 
	

		//document.getElementById("extract").innerHTML="";
	
	document.getElementById("text").innerHTML=txt;
	document.getElementById("nextbutton").innerHTML ='<input type="submit" onClick="javascript:restart()" name="restart" id="restart" value="Restart" />';
}


