// Grammar Monster © | Copyright Registration Number: 226604 | All rights reserved  

selec = new Array (3)
selec[1] = "He would give you his last #penny, but do not take his #loyalty for granted."
selec[2] = "You ought to feel highly embarrassed, yet you seem to be full of #joy. My #heart is filled with #sadness."
selec[3] = "Fifteen brave #men rowed from the #shore, leaving the #remainder to live with their #cowardice."

var len = 0; var mid = ""; var ques=0

// choose a random sentence

len = Math.ceil(3*Math.random()); ques = len
mid = selec[ques]
var i = 0
var sw = 0
var ew = 0
var shw = ""
var wc = 0
var rep = ""
var ges = 0
var score = 0; var wrong=0; var missed = 0; var total = 0; var tc=0
words = new Array (50)
check = new Array (10)
ans = new Array (50)
for (k = 0; k < 50; k++){check[k]=0}
for (k = 0; k < 50; k++){ans[k]=0}
len=mid.length

// check the text

function text(){
wc=0;tc=0
for (i = 0; i < len; i++){
if (mid.substr(i,1)==" " || mid.substr(i,1)=="." || mid.substr(i,1)==","){
	ew=i+1; rep=mid.substr(i,1)
	if (mid.substr(sw,1)=="#"){ans[wc]=1; sw++;tc++}
	words[wc]="<span class=curs onclick=sel('" + wc + "')>" + mid.substr(sw, (ew-sw)) + "</span>"
	if (check[wc]==1){words[wc]="<span class=curs onclick=sel('" + wc + "') style='background-color: #FFFF00'>" + mid.substr(sw, ((ew-sw)-1)) + "</span>" + rep}
	sw=ew
	wc++}
}
display()
}


function display(){
shw=""
for (k = 0; k < wc; k++){
shw = shw + words[k]}
document.getElementById('topmsg').innerHTML=shw;
sw=0
}

function sel(a){
chosen = ""; ges = 0
if (check[a]==1){check[a]=0}
else {check[a]=1}

for (k = 0; k < wc ; k++){
if (check[k]==1){	ges++}
}
document.getElementById('btmmsg').innerHTML="Number of selections: " + ges;

text()
}

function cler(){
for (k = 0; k < wc; k++){check[k]=0}
check[2]=1;sel(2)
text()
}


// check the text

function look(){
wc=0; score = 0; wrong=0; missed = 0
for (i = 0; i < len; i++){
if (mid.substr(i,1)==" " || mid.substr(i,1)=="." || mid.substr(i,1)==","){
	ew=i+1; rep=mid.substr(i,1)
	if (mid.substr(sw,1)=="#"){ans[wc]=1; sw++}
	words[wc]="<span>" + mid.substr(sw, (ew-sw)) + "</span>"
	if (check[wc]==1 && ans[wc]==0){words[wc]="<span style='background-color: #FFFF00'>" + mid.substr(sw, ((ew-sw)-1)) + "</span>" + rep + "<img border=0 src=../images/bulx.gif width=11 height=11> "; wrong++}
	if (check[wc]==1 && ans[wc]==1){words[wc]="<span style='background-color: #CCFFCC'>" + mid.substr(sw, ((ew-sw)-1)) + "</span>" + rep + "<img border=0 src=../images/bultick.gif width=11 height=11> "; score++}
	if (check[wc]==0 && ans[wc]==1){words[wc]="<span style='background-color: #FFCCCC'>" + mid.substr(sw, ((ew-sw)-1)) + "</span>" + rep + "<img border=0 src=../images/bulx.gif width=11 height=11> "; missed++}
	
	sw=ew
	wc++}
}
display()
total = score -(wrong + missed)
document.getElementById('btmmsg').innerHTML="<table border=0><tr><td><b>Total Selections:</b></td><td width=50 align=center>" + ges + "</td><td></td></tr><tr><td BGCOLOR=#CCFFCC>Correct selections:</td><td align=center>" + score + "</td><td><font color=#999999>(score: "+ score + ")</font></td></tr><tr><td BGCOLOR=#FFFF00>Wrong selections:</td><td align=center>" + wrong + "</td><td><font color=#999999>(score: "+ wrong*-1 + ")</font></td></tr><tr><td BGCOLOR=#FFCCCC>Missed answers:</td><td align=center>" + missed + "</td><td><font color=#999999>(score: "+ missed*-1 + ")</font></td></tr><tr><td><b>Total Score:<b></td><td align=center>" + total + "</td><td><font color=#999999>(highest possible score: " + tc + ")</font></td></tr></table>"

document.getElementById('buttons').innerHTML="<input type='button' value='Next Test' style='background-color: #222299; color: #ffffff;' onClick='nexttest()'>"

}

function nexttest(){
mar=0
if (ques==1 && mar ==0){ques=2;mid=selec[2]; mar=1}
if (ques==2 && mar==0){ques=3;mid=selec[3]; mar=1}
if (ques==3 && mar ==0){ques=1;mid=selec[1]; mar=1}
for (k = 0; k < 150; k++){check[k]=0; ans[k]=0; words[k]=""}
var sw = 0
var ew = 0
len=mid.length
document.getElementById('btmmsg').innerHTML="<span id='btmmsg' class='mid'>&nbsp;</span>";
document.getElementById('buttons').innerHTML="<input type='button' value='Next test' style='background-color: #222299; color: #ffffff;' onClick='nexttest()'><input type='button' value='Clear my answers' style='background-color:#222299; color: #ffffff;' onclick='cler()'><input type='button' value='Check my answers' style='background-color:GREEN; color: #ffffff;' onclick='look()'>";
text()
}



















































