﻿function verifyQuestion1()
{
    form = document.forms["realAgeQuestions"];
    message = "";

    if (form.age.value == "")
        message += "Please select your age.\n";

    return message;
}

function verifyQuestion2()
{
    form = document.forms["realAgeQuestions"];
    message = "";

    q2Unanswered = true;
    for (x = 0; x < form.gender.length; x++)
        if (form.gender[x].checked) q2Unanswered = false;

    if (q2Unanswered)
        message += "Please choose your gender.\n";

    return message;
}

function verifyRadioQuestion(formElement, questionNumber)
{
    var retVal = "Please answer question " + questionNumber + ".\n";;

    for (x = 0; x < formElement.length; x++)
        if (formElement[x].checked) retVal = "";

    return retVal;
}

function getFormValue(formElement)
{
    var retVal = 0;
    for (x = 0; x < formElement.length; x++)
        if (formElement[x].checked) retVal = formElement[x].value;
        
    return retVal;
}

function verifyPage1() 
{
    form = document.forms["realAgeQuestions"];

    message = "";

    message += verifyQuestion1();
    message += verifyQuestion2();
    message += verifyRadioQuestion(form.q3, "3");
    message += verifyRadioQuestion(form.q4, "4");

    if (message != "")
        alert(message)
    else 
    {
        form.total.value = parseInt(getFormValue(form.q3)) + 
                           parseInt(getFormValue(form.q4));
        form.submit();
    }

}
    
function verifyPage2() {

    qs = new Querystring();

    form = document.forms["realAgeQuestions"];
	
    message = "";
	
    message += verifyRadioQuestion(form.q5, "5");
    message += verifyRadioQuestion(form.q6, "6");
    message += verifyRadioQuestion(form.q7, "7");
    message += verifyRadioQuestion(form.q8, "8");
		
    if (message != "")
	    alert(message)
    else {
	    form.age.value = qs.get("age");
	    form.gender.value = qs.get("gender");
	    form.total.value = parseInt(qs.get("total")) + 
	                       parseInt(getFormValue(form.q5)) + 
	                       parseInt(getFormValue(form.q6)) + 
	                       parseInt(getFormValue(form.q7)) + 
	                       parseInt(getFormValue(form.q8)); 
	    form.submit();
    }
	
}

function verifyPage3() {

    qs = new Querystring();

    form = document.forms["realAgeQuestions"];
	
    message = "";
	
    message += verifyRadioQuestion(form.q9, "9");
    message += verifyRadioQuestion(form.q10, "10");
    message += verifyRadioQuestion(form.q11, "11");
		
    if (message != "")
	    alert(message)
    else {
	    form.age.value = qs.get("age");
	    form.gender.value = qs.get("gender");
	    form.total.value = parseInt(qs.get("total")) +
	                       parseInt(getFormValue(form.q9)) + 
	                       parseInt(getFormValue(form.q10)) + 
	                       parseInt(getFormValue(form.q11));
	    form.submit();
    }
	
}
    
function verifyPage4() {

    qs = new Querystring();

    form = document.forms["realAgeQuestions"];
	
    message = "";
    
    message += verifyRadioQuestion(form.q12, "12");
    message += verifyRadioQuestion(form.q13, "13");
    message += verifyRadioQuestion(form.q14, "14");
		
    if (message != "")
	    alert(message)
    else {
	    form.age.value = qs.get("age");
	    form.gender.value = qs.get("gender");
	    form.total.value = parseInt(qs.get("total")) +
	                       parseInt(getFormValue(form.q12)) + 
	                       parseInt(getFormValue(form.q13)) + 
	                       parseInt(getFormValue(form.q14));
	    form.submit();
    }
	
}

function Querystring(qs) { // optionally pass a querystring to parse
    this.params = new Object()
    this.get=Querystring_get
	
    if (qs == null)
	    qs=location.search.substring(1,location.search.length)

    if (qs.length == 0) return

// Turn <plus> back to <space>
// See: http://www.w3.org/TR/REC-html40/interact/forms.html#h-17.13.4.1
    qs = qs.replace(/\+/g, ' ')
    var args = qs.split('&') // parse out name/value pairs separated via &
	
// split out each name=value pair
    for (var i=0;i<args.length;i++) {
	    var value;
	    var pair = args[i].split('=')
	    var name = unescape(pair[0])

	    if (pair.length == 2)
		    value = unescape(pair[1])
	    else
		    value = name
		
	    this.params[name] = value
    }
}

function Querystring_get(key, default_) {
    // This line changes UNDEFINED to NULL
    if (default_ == null) default_ = null;
	
    var value=this.params[key]
    if (value==null) value=default_;
	
    return value
}


