// USERTRUST SURVEY VALIDATION SCRIPTS
// ====================================
//  David Carey
//  Sept. 30 2008
// ====================================




// ====================================
//   COMPONENT VALIDATION SCRIPTS
// ====================================


// ------------------------------------
// validate windspeed (MPH) input
// ------------------------------------
function validMPH(s) {
    if(!IsNumeric(s) || trim(s) == '') {
		return false;
    	}
    else {
		return true;
	}
}

// ------------------------------------
// validate Farenheit temperature input
// ------------------------------------
function validF(T) {
    if(!IsNumeric(T) || trim(T) == '') {
		return false;
    	}
    else {
		return true;
	}
}


// ------------------------------------
// validate YES/NO combo box
// ------------------------------------
function validYN(input) {
    if(trim(cq3.value) == 'NA') {
		return false;
    	}
    else {
		return true;
	}
}


// ------------------------------------
// validate slider input
// ------------------------------------
function validSlider(handle) {
	if (handle.hasBeenSet == 0) {
		return false;
    	}
    else {
		return true;
	}
}


// validate n in 100
// ------------------------------------
//function valid100(valueArray) {
//	for (key in valueArray) {
//		if (!IsNumeric(key)) {
//			return false;
//			break;
//		}
 //   	}
//    else {
//		return true
//	}
//}


// ------------------------------------
// validate textField
// ------------------------------------
function validTextField(input) {
	if(trim(input) == '') {
		return false
    	}
    else {
		return true
	}
}


// ------------------------------------
// validate comboBox
// ------------------------------------
function validCombo(input) {
	if(trim(input) == 'NA') {
		return false
    	}
    else {
		return true
	}
}

// ------------------------------------
//  validate form button
// ------------------------------------
function valbutton(form,button) {
   tmp = -1;
   for (i=form.button.length-1; i > -1; i--) {
      if (form.button[i].checked) {
         tmp = i; i = -1;
      }
   }
   if (tmp == -1) {
      return false;
   }
   else {
      return true;
   }
}


// ------------------------------------
//  trim leading/trailing spaces
// ------------------------------------
function trim(str) {
//	return str.replace(/^\s+|\s+$/g,'');
	return str;
}

// ------------------------------------
//  trim quotes from text
// -----------------------------------
function stripquotes(str){
	str = str.value.replace(/['"]/g,'');
        return str;
}


// ------------------------------------
//  test for numeric content
// ------------------------------------
function isNumeric(sText) {

   var ValidChars = "0123456789.";
   var isNumber=true;
   var Char;
   
   for (i = 0; i < sText.length && isNumber == true; i++) { 
      Char = sText.charAt(i); 
      if (ValidChars.indexOf(Char) == -1) {
         isNumber = false;
      }
   }
   return isNumber;   

}

// ------------------------------------
//  test for integer content
// ------------------------------------
function isNumeric(sText) {

   var ValidChars = "0123456789.";
   var isNumber=true;
   var Char;
   
   for (i = 0; i < sText.length && isNumber == true; i++) { 
      Char = sText.charAt(i); 
      if (ValidChars.indexOf(Char) == -1) {
         isNumber = false;
      }
   }
   return isNumber;   

}



// ====================================
//    P A G E  V A L I D A T I O N 
// ====================================




// ------------------------------------
// for usertrust survey 1, page 1
// ------------------------------------
function checkForm1() {
    

   var cq1, cq2, cq3, cq4;
   
	alert("Checking form 1");
        return true;


	with(window.document.form1)
	{
		cq1    = q1;
		cq2    = q2;
		cq3    = q3;
		cq4    = q4;
	}
	
	if(trim(cq1.value) == 'NA') {
		alert('Please provide a YES or NO answer for question number 1.');
		cq1.focus();
		return false;
	}
   	else if(!IsNumeric(cq2.value) || trim(cq2.value) == '') {
		alert('Please provide an answer for question number 2 (numerical input only).');
		cq2.focus();
		return false;
	}
   	else if(trim(cq3.value) == 'NA') {
		alert('Please provide a YES or NO answer for question number 3.');
		cq3.focus();
		return false;
	}
   	else if(!IsNumeric(cq4.value) || trim(cq4.value) == '') {
		alert('Please provide an answer for question number 4 (numerical input only).');
		cq4.focus();
		return false;
	}

	else {
		cq1.value  = trim(cq1.value);
		cq2.value  = trim(cq2.value);
		cq3.value  = trim(cq3.value);
		cq4.value  = trim(cq4.value);
		return true;     
	}
}


// for usertrust survey, page 2
//-----------------------------------------------------------------------------
function checkForm2() {

    var cq5, cq6, cq7, cq8, cq9, cq10;

	alert("Checking form 2");
        return true;

	//alert("Checking form 2");

	return true;

	with(window.document.form2)
	{
		cq5   = q5;
		cq6   = sliderQ6;
		cq7   = sliderQ7;
		cq8   = sliderQ8;
		cq9   = sliderQ9;
		cq10  = sliderQ10;
	}
   	if(!IsNumeric(cq5.value) || trim(cq5.value) == '') {
		alert('Please provide an answer for question number 5 (numerical input only).');
		cq5.focus();
		return false;
	}	
	else if (sliderQ6.hasBeenSet == 0) {
		alert('Please provide an answer for question number 6.');
		//slider_q6.focus();
		return false;
	}
	else if (sliderQ7.hasBeenSet == 0) {
		alert('Please provide an answer for question number 7.');
		//slider_q7.focus();
		return false;
	}
	else if (sliderQ8.hasBeenSet == 0) {
		alert('Please provide an answer for question number 8.');
		//slider_q8.focus();
		return false;
	}
	else if (sliderQ9.hasBeenSet == 0) {
		alert('Please provide an answer for question number 9.');
		//slider_q9.focus();
		return false;
	}
	else if (sliderQ10.hasBeenSet == 0) {
		alert('Please provide an answer for question number 10.');
		//slider_q10.focus();
		return false;
	}	
	else {
		return true;
	}
}


// for usertrust survey, page 3
//------------------------

function checkForm3() {

   var cq11, cq12, cq13, cq14;

	alert("Checking form 3");
        return true;
	//alert("Checking form 3");

	return true;
   
	with(window.document.form3)
	{
		cq11    = q11;
		cq12    = q12;
		cq13    = q13;
	}
	
	
	if(trim(cq11.value) == 'NA') {
		alert('Please provide an answer for question number 11.');
		cq11.focus();
		return false;
	}
	if(trim(cq12.value) == 'NA') {
		alert('Please provide an answer for question number 12.');
		cq12.focus();
		return false;
	}
	if(trim(cq13.value) == 'NA') {
		alert('Please provide an answer for question number 13.');
		cq13.focus();
		return false;
	}
	else {
		cq11.value  = trim(cq11.value);
		cq12.value  = trim(cq12.value);
		cq13.value  = trim(cq13.value);
		return true;     
	}
}


// for usertrust survey, page 4
//-----------------------------------------------------------------------------
function checkForm4() {

	alert("Checking form 4");
        return true;
	var cq14, cq15, cq16, cq17, cq18, cq19;

	return true;

	//alert("Checking form 4");

	with(window.document.form4)
	{
		cq14   = q14;
		cq15   = sliderQ15;
		cq16   = sliderQ16;
		cq17   = sliderQ17;
		cq18   = sliderQ18;
		cq19   = sliderQ19;
	}
	


   	if(!IsNumeric(cq14.value) || trim(cq14.value) == '') {
		alert('Please provide an answer for question number 14 (numerical input only).');
		cq14.focus();
		return false;
	}

	else if (cq15.hasBeenSet == 0) {
		alert('Please provide an answer for question number 15.');
		//cq15.focus();
		return false;
	}
	else if (cq16.hasBeenSet == 0) {
		alert('Please provide an answer for question number 16.');
		//document.getElementById(cq16).focus();
		return false;
	}
	else if (cq17.hasBeenSet == 0) {
		alert('Please provide an answer for question number 17.');
		//document.getElementById(cq17).focus();
		return false;
	}
	else if (cq18.hasBeenSet == 0) {
		alert('Please provide an answer for question number 18.');
		//document.getElementById(cq18).focus();
		return false;
	}
	else if (cq19.hasBeenSet == 0) {
		alert('Please provide an answer for question number 19.');
		//document.getElementById(cq19).focus();
		return false;
	}	
	else {
		return true;
	}
    
}

// for usertrust survey, page 5
//------------------------

function checkForm5() {

	alert("Checking form 5");
        return true;
	return true;
	// alert("Checking form 5");

        var cq20, cq21, cq22;
   
	with(window.document.form5)
	{
		cq20    = q20;
		cq21    = q21;
		cq22    = q22;
	}
	
	if(trim(cq20.value) == 'NA') {
		alert('Please provide an answer for question number 20.');
		cq20.focus();
		return false;
	}
	if(trim(cq21.value) == 'NA') {
		alert('Please provide an answer for question number 21.');
		cq21.focus();
		return false;
	}
	if(trim(cq22.value) == 'NA') {
		alert('Please provide an answer for question number 22.');
		cq22.focus();
		return false;
	}
	else {
		cq20.value  = trim(cq20.value);
		cq21.value  = trim(cq21.value);
		cq22.value  = trim(cq22.value);
		return true;     
	}
}





// for usertrust survey, page 6
//------------------------

function checkForm6() {
	alert("Checking form 6");
        return true;
        var cq23, cq24, cq25;
	return true;   
        // alert("Checking form 6");

	with(window.document.form6)
	{
		cq23    = q23;
		cq24    = q24;
		cq25    = q25;
	}
	
	if(trim(cq23.value) == 'NA') {
		alert('Please provide an answer for question number 23.');
		cq23.focus();
		return false;
	}
	if(trim(cq24.value) == 'NA') {
		alert('Please provide an answer for question number 24.');
		cq24.focus();
		return false;
	}
	if(trim(cq25.value) == 'NA') {
		alert('Please provide an answer for question number 25.');
		cq25.focus();
		return false;
	}
	else {
		cq23.value  = trim(cq23.value);
		cq24.value  = trim(cq24.value);
		cq25.value  = trim(cq25.value);  
		return true;     
	}
}

// for usertrust survey, page 7
//------------------------

function checkForm10() {

	alert("Checking demographics page");
	return true;

        var atm, edu, gen, age, zip;
  
	with(window.document.form7)
	{
		atm    = atm;
		edu    = edu;
		gen    = gen;
		age    = age;
		zip    = zip;
	}
	
	if(trim(atm.value) == 'NA') {
		alert('Please indicate your background in Atmospheric Science.');
		atm.focus();
		return false;
	}

	if(trim(edu.value) == 'NA') {
		alert('Please indicate your education level.');
		edu.focus();
		return false;
	}

	if(trim(gen.value) == 'NA') {
		alert('Please indicate your gender.');
		gen.focus();
		return false;
	}

	if(trim(age.value) == 'NA') {
		alert('Please indicate your age.');
		age.focus();
		return false;
	}

	if(!IsNumeric(zip.value)) {
		alert('Please indicate your age.');
		age.focus();
		return false;
	}
	else {
		atm.value  = trim(atm.value);
		edu.value  = trim(edu.value);
		gen.value  = trim(gen.value);  
		age.value  = trim(age.value);
		zip.value  = trim(zip.value);
		return true;     
	}
}





