//SELF QUIZ CALCULATOR SCRIPT

//Populate rating fields with values from menu
function setValueA() {
	var form = document.quizForm;
	var rateA = form.rateA.value;

	if (rateA == 0) { form.valueA.value = ""; }
	if (rateA == 1) { form.valueA.value = 1; }
	if (rateA == 2) { form.valueA.value = 2; }
	if (rateA == 3) { form.valueA.value = 3; }
	if (rateA == 4) { form.valueA.value = 4; }
	if (rateA == 5) { form.valueA.value = 5; }
}

function setValueB() {
	var form = document.quizForm;
	var rateB = form.rateB.value;

	if (rateB == 0) { form.valueB.value = ""; }
	if (rateB == 1) { form.valueB.value = 1; }
	if (rateB == 2) { form.valueB.value = 2; }
	if (rateB == 3) { form.valueB.value = 3; }
	if (rateB == 4) { form.valueB.value = 4; }
	if (rateB == 5) { form.valueB.value = 5; }
}

function setValueC() {
	var form = document.quizForm;
	var rateC = form.rateC.value;

	if (rateC == 0) { form.valueC.value = ""; }
	if (rateC == 1) { form.valueC.value = 1; }
	if (rateC == 2) { form.valueC.value = 2; }
	if (rateC == 3) { form.valueC.value = 3; }
	if (rateC == 4) { form.valueC.value = 4; }
	if (rateC == 5) { form.valueC.value = 5; }
}

function setValueD() {
	var form = document.quizForm;
	var rateD = form.rateD.value;

	if (rateD == 0) { form.valueD.value = ""; }
	if (rateD == 1) { form.valueD.value = 1; }
	if (rateD == 2) { form.valueD.value = 2; }
	if (rateD == 3) { form.valueD.value = 3; }
	if (rateD == 4) { form.valueD.value = 4; }
	if (rateD == 5) { form.valueD.value = 5; }
}

function setValueE() {
	var form = document.quizForm;
	var rateE = form.rateE.value;

	if (rateE == 0) { form.valueE.value = ""; }
	if (rateE == 1) { form.valueE.value = 1; }
	if (rateE == 2) { form.valueE.value = 2; }
	if (rateE == 3) { form.valueE.value = 3; }
	if (rateE == 4) { form.valueE.value = 4; }
	if (rateE == 5) { form.valueE.value = 5; }
}

function setValueF() {
	var form = document.quizForm;
	var rateF = form.rateF.value;

	if (rateF == 0) { form.valueF.value = ""; }
	if (rateF == 1) { form.valueF.value = 1; }
	if (rateF == 2) { form.valueF.value = 2; }
	if (rateF == 3) { form.valueF.value = 3; }
	if (rateF == 4) { form.valueF.value = 4; }
	if (rateF == 5) { form.valueF.value = 5; }
}

function setValueG() {
	var form = document.quizForm;
	var rateG = form.rateG.value;

	if (rateG == 0) { form.valueG.value = ""; }
	if (rateG == 1) { form.valueG.value = 1; }
	if (rateG == 2) { form.valueG.value = 2; }
	if (rateG == 3) { form.valueG.value = 3; }
	if (rateG == 4) { form.valueG.value = 4; }
	if (rateG == 5) { form.valueG.value = 5; }
}

function setValueH() {
	var form = document.quizForm;
	var rateH = form.rateH.value;

	if (rateH == 0) { form.valueH.value = ""; }
	if (rateH == 1) { form.valueH.value = 1; }
	if (rateH == 2) { form.valueH.value = 2; }
	if (rateH == 3) { form.valueH.value = 3; }
	if (rateH == 4) { form.valueH.value = 4; }
	if (rateH == 5) { form.valueH.value = 5; }
}

function setValueI() {
	var form = document.quizForm;
	var rateI = form.rateI.value;

	if (rateI == 0) { form.valueI.value = ""; }
	if (rateI == 1) { form.valueI.value = 1; }
	if (rateI == 2) { form.valueI.value = 2; }
	if (rateI == 3) { form.valueI.value = 3; }
	if (rateI == 4) { form.valueI.value = 4; }
	if (rateI == 5) { form.valueI.value = 5; }
}

function setValueJ() {
	var form = document.quizForm;
	var rateJ = form.rateJ.value;

	if (rateJ == 0) { form.valueJ.value = ""; }
	if (rateJ == 1) { form.valueJ.value = 1; }
	if (rateJ == 2) { form.valueJ.value = 2; }
	if (rateJ == 3) { form.valueJ.value = 3; }
	if (rateJ == 4) { form.valueJ.value = 4; }
	if (rateJ == 5) { form.valueJ.value = 5; }
}


//Validate fields, return error alerts
function validateForm() {
	var form = document.quizForm;

	if (document.quizForm.valueA.value == "")
		{
		alert("Select a rating for Item A.");
		document.quizForm.valueA.focus();
		return (false);
		}

	if (document.quizForm.valueB.value == "")
		{
		alert("Select a rating for Item B.");
		document.quizForm.valueB.focus();
		return (false);
		}

	if (document.quizForm.valueC.value == "")
		{
		alert("Select a rating for Item C.");
		document.quizForm.valueC.focus();
		return (false);
		}

	if (document.quizForm.valueD.value == "")
		{
		alert("Select a rating for Item D.");
		document.quizForm.valueD.focus();
		return (false);
		}

	if (document.quizForm.valueE.value == "")
		{
		alert("Select a rating for Item E.");
		document.quizForm.valueE.focus();
		return (false);
		}

	if (document.quizForm.valueF.value == "")
		{
		alert("Select a rating for Item F.");
		document.quizForm.valueF.focus();
		return (false);
		}

	if (document.quizForm.valueG.value == "")
		{
		alert("Select a rating for Item G.");
		document.quizForm.valueG.focus();
		return (false);
		}

	if (document.quizForm.valueH.value == "")
		{
		alert("Select a rating for Item H.");
		document.quizForm.valueH.focus();
		return (false);
		}

	if (document.quizForm.valueI.value == "")
		{
		alert("Select a rating for Item I.");
		document.quizForm.valueI.focus();
		return (false);
		}

	if (document.quizForm.valueJ.value == "")
		{
		alert("Select a rating for Item J.");
		document.quizForm.valueJ.focus();
		return (false);
		}

	CalculateScore(form.valueA.value,form.valueB.value,form.valueC.value,form.valueD.value,form.valueE.value,form.valueF.value,form.valueG.value,form.valueH.value,form.valueI.value,form.valueJ.value);

	return true;
}


//Do calculations
function CalculateScore(valueA,valueB,valueC,valueD,valueE,valueF,valueG,valueH,valueI,valueJ) {

	var valueA = quizForm.valueA.value;
	var valueB = quizForm.valueB.value;
	var valueC = quizForm.valueC.value;
	var valueD = quizForm.valueD.value;
	var valueE = quizForm.valueE.value;
	var valueF = quizForm.valueF.value;
	var valueG = quizForm.valueG.value;
	var valueH = quizForm.valueH.value;
	var valueI = quizForm.valueI.value;
	var valueJ = quizForm.valueJ.value;

	var ys = ((valueA*2) + (valueB*2) + (valueC*2) + (valueD*2) + (valueE*2) + (valueF*2) + (valueG*2) + (valueH*2) + (valueI*2) + (valueJ*2)) / 2;
	document.quizForm.Answer.value = formatNumber(ys,0);
}

//Format the answer
function formatNumber(val,places) {
	var power = 1;
	if (places> 0) {
		power = Math.pow(10,places);
	}
	// Round the val to X decimal places.
	var roundedNum = (Math.round(val * power)/power) + "";

	// check the result for decimals
	var decpos = roundedNum.indexOf(".");

	if (decpos>= 0) {
		var decDiff = places-(roundedNum.length-(decpos+1));
	} else {
		var decDiff = places;
		if (places> 0) {
			roundedNum += ".";
		}
	}

	// add missing zeros to satisify the decimal request.
	for (var x = 0; x < decDiff; x++) {
		roundedNum += "0";
	}
    return roundedNum;
}


