

function displayRegion( txt, idnum ) {
	var formId = "imagequiz_form"+idnum;
	var displayId = "imagequiz_displaytxt"+idnum;
	var form = document.getElementById( formId );
	if( form.takingQuiz == undefined || form.takingQuiz == false ) {
		var myTextField = document.getElementById(displayId);
		
		myTextField.innerHTML = txt;
	}
}

function randOrder(){
	return (Math.round(Math.random())-0.5); 
} 

function startQuiz( idnum ) {
	var formId = "imagequiz_form"+idnum;
	var startBtnId = "imagequiz_startbtn"+idnum;
	var displayId = "imagequiz_displaytxt"+idnum;

	var form = document.getElementById( formId );
	var areas = form.getElementsByTagName('area');

	var answers = new Array();
	form.takingQuiz = true;
	form.quiz = new Array();
	for( var i = 0; i < areas.length; i++ ) {
		var ans = areas[i].getAttribute('answer');
		if( answers[ans] != undefined ) continue;

		answers[ans] = 1;
		//alert( ans );
		var question = new Object();
		question.text = ans;
		question.remain = 1;

		form.quiz.push( question );
	}
	form.quiz.sort(randOrder);
	form.attemptNum = 0;

	var txt = 'Please click on the <b>';
	txt += form.quiz[form.quiz.length-1].text;
	txt += '</b>.';

	var myTextField = document.getElementById(displayId);
	//myTextField.innerHTML = txt + remainingAttempts( form );
	myTextField.innerHTML = txt;

	var startBtn = document.getElementById(startBtnId);
	startBtn.style.visibility = "hidden";
}

function answer( usrAns, idnum ) {
	var formId = "imagequiz_form"+idnum;
	var startBtnId = "imagequiz_startbtn"+idnum;
	var displayId = "imagequiz_displaytxt"+idnum;

	var form = document.getElementById( formId );

	if( form.takingQuiz == undefined || form.takingQuiz == false )
	{
		return;
	}
	var myTextField = document.getElementById(displayId);
	var txt = '';

	if( form.quiz[form.quiz.length-1].text == usrAns ) {
		txt += 'Correct! ';
		elem = form.quiz.pop();

		if( form.attemptNum == 0 ) {
			elem.remain--;
			// don't repeat some element over and over again
			if( form.quiz.length == 0 ) {
				elem.remain = 0;
			}
		}
		form.attemptNum = 0;

		if( elem.remain > 0 ) {
			form.quiz = Array.concat( elem, form.quiz );
			form.quiz.sort(randOrder);
		}
		if( form.quiz.length > 0 ) {
			txt += 'Now click on the <b>';
			txt += form.quiz[form.quiz.length-1].text;
			txt += '</b>.';
		}
		else {
			txt += 'Congratulations!  You have finished the quiz.';
			form.takingQuiz = false;
			var startBtn = document.getElementById(startBtnId);
			startBtn.style.visibility = "visible";
		}
	}
	else {
		if( usrAns.length > 0 ) {
			txt += 'You clicked on the ' + usrAns + '.  ';
		} else {
			txt += 'Sorry, you clicked on an unlabelled region. ';
		}
		txt += 'Please click on the <b>';
		txt	+= form.quiz[form.quiz.length-1].text;
		txt += '</b>.';
		if( form.attemptNum == 0 ) {
			form.quiz[form.quiz.length-1].remain++;
		}
		form.attemptNum++;
	}
	var myTextField = document.getElementById(displayId);
	//myTextField.innerHTML = txt + remainingAttempts( form );
	myTextField.innerHTML = txt;
}

function remainingAttempts( form ) {
	var ret = '<ul>';
	for( var i = 0; i < form.quiz.length; i++ ) {
		ret += '<li>';
		ret += form.quiz[i].text;
		ret += ': ';
		ret += form.quiz[i].remain;
		ret += '</li>';
	}
	ret += '</ul>';
	return ret;
}
