var z=0;
var t=15;
var move;
var sparr = new Array("res1", "res2", "res3");
var resstr = new Array();
var textarr = new Array("text1", "text2", "text3");

function getRundom(val){
var x = Math.floor(val*Math.random());
return x;
}

var xmlHttp;
function createXMLHttpRequest(){                       
    if (window.ActiveXObject) {
        xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
    } 
    else if (window.XMLHttpRequest) {                   
        xmlHttp = new XMLHttpRequest();
    }
}
	
function startRequest()
{
 createXMLHttpRequest();           
    xmlHttp.onreadystatechange = handleStateChange; 
    xmlHttp.open("GET", "xml/questiontimeintro.xml", true);  
    xmlHttp.send(null); 
}

function handleStateChange() {
    if(xmlHttp.readyState == 4) {                  
        if(xmlHttp.status == 200) {               
       parseResults();
        }
    }
}
function parseResults(){
for(i=0; i<3; i++){
document.getElementById(textarr[i]).innerHTML="";
}
var results = xmlHttp.responseXML;
var catA = results.getElementsByTagName("levelA");
var catB = results.getElementsByTagName("levelB");
var catC= results.getElementsByTagName("levelC");
var numA = getRundom(catA.length);
var numB = getRundom(catB.length);
var numC = getRundom(catC.length);

var qA = catA[numA].getElementsByTagName("instr")[0].firstChild.nodeValue;
var ansaA = catA[numA].getElementsByTagName("ansa")[0].firstChild.nodeValue;
var ansavalA = catA[numA].getElementsByTagName("ansapos")[0].firstChild.nodeValue;
var ansbA = catA[numA].getElementsByTagName("ansb")[0].firstChild.nodeValue;
var ansbvalA = catA[numA].getElementsByTagName("ansbpos")[0].firstChild.nodeValue;
var anscA = catA[numA].getElementsByTagName("ansc")[0].firstChild.nodeValue;
var anscvalA = catA[numA].getElementsByTagName("anscpos")[0].firstChild.nodeValue;
createDiv(qA,ansaA, ansavalA, ansbA, ansbvalA, anscA, anscvalA, "text1");

var qB = catB[numB].getElementsByTagName("instr")[0].firstChild.nodeValue;
var ansaB = catB[numB].getElementsByTagName("ansa")[0].firstChild.nodeValue;
var ansavalB = catB[numB].getElementsByTagName("ansapos")[0].firstChild.nodeValue;
var ansbB = catB[numB].getElementsByTagName("ansb")[0].firstChild.nodeValue;
var ansbvalB = catB[numB].getElementsByTagName("ansbpos")[0].firstChild.nodeValue;
var anscB = catB[numB].getElementsByTagName("ansc")[0].firstChild.nodeValue;
var anscvalB = catB[numB].getElementsByTagName("anscpos")[0].firstChild.nodeValue;
createDiv(qB,ansaB, ansavalB, ansbB, ansbvalB, anscB, anscvalB, "text2");

var qC = catC[numC].getElementsByTagName("instr")[0].firstChild.nodeValue;
var ansaC = catC[numC].getElementsByTagName("ansa")[0].firstChild.nodeValue;
var ansavalC = catC[numC].getElementsByTagName("ansapos")[0].firstChild.nodeValue;
var ansbC = catC[numC].getElementsByTagName("ansb")[0].firstChild.nodeValue;
var ansbvalC = catC[numC].getElementsByTagName("ansbpos")[0].firstChild.nodeValue;
var anscC = catC[numC].getElementsByTagName("ansc")[0].firstChild.nodeValue;
var anscvalC = catC[numC].getElementsByTagName("anscpos")[0].firstChild.nodeValue;
createDiv(qC,ansaC, ansavalC, ansbC, ansbvalC, anscC, anscvalC, "text3");
}
function createDiv(data1, data2, data3, data4, data5, data6, data7, data8){
var p = document.createElement("p");
var txtnode = document.createTextNode(data1);
p.appendChild(txtnode);
var div1 = document.createElement("div");
var str1= "<span style='color: blue; font-weight:bold' onClick=Scoreit('";
str1 = str1.concat(data2);
str1=str1.concat("','");
str1 =str1.concat(data3);
str1=str1.concat("')>");
str1=str1.concat(data2);
str1=str1.concat("<\/span><br><span style='color: blue; font-weight:bold' onClick=Scoreit('");
str1 = str1.concat(data4);
str1=str1.concat("','");
str1 =str1.concat(data5);
str1=str1.concat("')>");
str1=str1.concat(data4);
str1=str1.concat("<\/span><br><span style='color: blue; font-weight:bold' onClick=Scoreit('");
str1 = str1.concat(data6);
str1=str1.concat("','");
str1 =str1.concat(data7);
str1=str1.concat("')>");
str1=str1.concat(data6);
str1=str1.concat("<\/span>");
div1.innerHTML = str1;
document.getElementById(data8).appendChild(p);
document.getElementById(data8).appendChild(div1);
}
var resA = "";
var resB = "";
var resC = "";
var j=0;
var str;

function Scoreit(data, data1){
document.getElementById(sparr[j]).innerHTML = data;
resstr.push(data1);
if(data1 == 1) resA = data;
if(data1 == 2) resB = data;
if(data1 == 3) resC = data;
if(j<3) j++;
if(j==3){
window.clearInterval(move);
str = resstr[0].concat(resstr[1]).concat(resstr[2]);
if(str=="123"){
document.getElementById("score").innerHTML = "Correct";
document.getElementById("score").style.color = "green";
window.setTimeout("showDiv()", 2000);
}else{
document.getElementById("score").innerHTML = "Wrong";
document.getElementById("score").style.color = "red";
var corStr = "Correct answer is: ";
corStr = corStr.concat(resA).concat(" ");
corStr = corStr.concat(resB).concat(" ");
corStr = corStr.concat(resC);
document.getElementById("corscore").innerHTML = corStr;
window.setTimeout("Restart()", 2000);
}}
}


function clock(){
move=window.setInterval("moveclock()",1000);
}
function moveclock(){
if(t>0){
t=t-1;
document.getElementById("score").innerHTML = t;
}
if(t==0){
window.clearInterval(move);
document.getElementById("score").innerHTML = "Sorry you are out of time!";
Restart();
}}


function showDiv(){
document.getElementById("infodiv").style.display="none";
if(resstr.length >0)resstr.splice(0,resstr.length);
for(i=0; i<3; i++){
document.getElementById(textarr[i]).style.display="none";
document.getElementById(sparr[i]).innerHTML="";
}
document.getElementById("corscore").innerHTML="";
document.getElementById("score").innerHTML="";
if(z==3){
window.clearInterval(move);
document.getElementById("table1").style.display = "none";
document.getElementById("table2").style.display = "";
showStars();
}
if(z<3){
document.getElementById(textarr[z]).style.display="";
z++;
j=0;
t=15;
str="";
clock();
}

}
var stararr = new Array("graphics/bluesmall.png","graphics/redmed.png","graphics/yellowlarge.png","graphics/redlarge.png","graphics/bluemed.png","graphics/yellowsmall.png", "graphics/bluemed.png", "graphics/redlarge.png");
var calarr = new Array("red","white", "blue", "white", "red", "blue", "red", "white");
var fontarr = new Array("10pt","14pt", "18pt", "14pt", "10pt", "10pt", "14pt", "18pt");
var move1;
var s=0;
function showStars(){
move1 = window.setInterval("stars()", 500);
}
function stars(){
s++;
var str = "url(";
str=str.concat(stararr[s]);
str=str.concat(")");
if(s<stararr.length){
document.getElementById("table2").style.background=str;
document.getElementById("lk").style.color=calarr[s];
document.getElementById("lk").style.fontSize=fontarr[s];
}
if(s==stararr.length){
window.clearInterval(move1);
document.getElementById("table2").style.background='url(graphics/redlarge.png)';
document.getElementById("lk").style.color=calarr[calarr.length-1];
document.getElementById("lk").style.fontSize=fontarr[fontarr.length-1];
}
}

function Restart(){
resstr.splice(0,resstr.length);
for(i=0; i<3; i++){
document.getElementById(textarr[i]).style.display="none";
document.getElementById(sparr[i]).innerHTML="";
}
document.getElementById("info1").style.display="none"
document.getElementById("info").style.display="";
document.getElementById("corscore").innerHTML="";
document.getElementById("score").innerHTML="";
z=0;
j=0;
str="";
startRequest();
document.getElementById("infodiv").style.display="";
}

function showInfo(){
document.getElementById("info").style.display="none"
document.getElementById("info1").style.display="";
}

