// JavaScript Document


var com_form_required = new Array();

function highlight_com_form_row(fieldID)
{
	$('com_form_row_'+fieldID).addClass('com_form_line_error');
}

function reset_com_form_row(fieldID)
{
	$('com_form_row_'+fieldID).removeClass('com_form_line_error');
}

function check_com_form(formID){
	
	var fieldID = 0;
	var x = 0;
	var error = 0;
	var fieldFocus = "";
	
	var fields = com_form_required[formID];

	var count = 0;
	
	for(x in fields){
		//0 = fieldID
		//1 = field label
		//2 = field type
		//3 = field values
		fieldID = fields[x][0];
		
		switch(fields[x][2]){
			case "input" : 
				if($('fieldField'+fieldID).value == ''){
					error ++;
					if(fieldFocus == ""){
						fieldFocus = 'fieldField'+fieldID;
					}
					highlight_com_form_row(fieldID);
				}else{
					reset_com_form_row(fieldID);
				}
				break;
			case "largeInput" : 
				if($('fieldField'+fieldID).value == ''){
					error ++;
					if(fieldFocus == ""){
						fieldFocus = 'fieldField'+fieldID;
					}
					highlight_com_form_row(fieldID);
				}else{
					reset_com_form_row(fieldID);
				}
				break;
			case "checkbox" : 
				var checked = 0;
				var values = new Array();
				var y = 0;
				var temp = "";
				values = fields[x][3].split(",");
				for(y in values){
					if(!isNaN(y)){
						temp = values[y].replace(/ /g,"_");
						if($('fieldField'+fieldID+'_'+temp)){
							if($('fieldField'+fieldID+'_'+temp).checked == true){
								checked ++;
							}
						}
					}
				}
				if(checked == 0){
					highlight_com_form_row(fieldID);
					error ++;
				}else{
					reset_com_form_row(fieldID);
				}
				break;
			case "radio" : 
				var checked = 0;
				var values = new Array();
				var y = 0;
				var temp = "";
				values = fields[x][3].split(",");
				for(y in values){
					if(!isNaN(y)){
						temp = values[y].replace(/ /g,"_");
						if($('fieldField'+fieldID+'_'+temp)){
							if($('fieldField'+fieldID+'_'+temp).checked == true){
								checked ++;
							}
						}
					}
				}
				if(checked == 0){
					highlight_com_form_row(fieldID);
					error ++;
				}else{
					reset_com_form_row(fieldID);
				}
				break;
			case "captcha" : 
				var captcha = $('captcha'+fieldID).value.split(",");
				switch (captcha[2]){
					case "1":
						captcha = parseInt(captcha[0]) + parseInt(captcha[1]);
						captcha = captcha == $('fieldField'+fieldID).value ? true : false;
						break;
					case "2":
						captcha = parseInt(captcha[0]) - parseInt(captcha[1]);
						captcha = captcha == $('fieldField'+fieldID).value ? true : false;
						break;
					case "3":
						captcha = parseInt(captcha[0]) * parseInt(captcha[1]);
						captcha = captcha == $('fieldField'+fieldID).value ? true : false;
						break;
				}
				if(captcha && $('fieldField'+fieldID).value != ''){
					reset_com_form_row(fieldID);
				}else{
					error ++;
					if(fieldFocus == ""){
						fieldFocus = 'fieldField'+fieldID;
					}
					highlight_com_form_row(fieldID);
				}
				break;
			case "fileUpload" :
				if($('fieldField'+fieldID).value == ''){
					error ++;
					if(fieldFocus == ""){
						fieldFocus = 'fieldField'+fieldID;
					}
					highlight_com_form_row(fieldID);
				}else{
					reset_com_form_row(fieldID);
				}
				break;
			default :
				break;
		}//end of switch
		count ++;
	}//enf of for loop
	
	if($(fieldFocus))
	{
		$(fieldFocus).focus();
	}
	
	return error > 0 ? false : true;
}


function displayCaptcha(num1, num2, operator){
	var ret = "";
	switch (operator){
		case '1':
			ret = num1+" + "+num2+" = ";
			break;
		case '2':
			ret = num1+" - "+num2+" = ";
			break;
		case '3':
			ret = num1+" * "+num2+" = ";
			break;
	}
	document.write(ret);	
}
