function validate_email(field,errorFieldID,alertText)
{
	var extraText = "Oops. You forgot to complete all the required sections.<br />";
	extraText = extraText + "Please complete the missing sections and click 'Submit' again.<br />";
	var errorField = document.getElementById(errorFieldID);
	with (field)
	{
		apos=value.indexOf("@");
		dotpos=value.lastIndexOf(".");
		if (apos<1||dotpos-apos<2) 
  		{
			errorField.innerHTML = extraText + alertText;
  			return false;
		}
		else 
		{
			return true;
		}
	}
}

function validate_text(field,errorFieldID,alertText)
{
	var extraText = "Oops. You forgot to complete all the required sections.<br />";
	extraText = extraText + "Please complete the missing sections and click 'Submit' again.<br />";
	var errorField = document.getElementById(errorFieldID);
	with (field)
	{
		if (value.length == 0)
		{	
			errorField.innerHTML = extraText + alertText;
  			return false;
		}
		else 
		{
			return true;
		}
	}
}

function validate_select(field,errorFieldID,alertText)
{
	var extraText = "Oops. You forgot to complete all the required sections.<br />";
	extraText = extraText + "Please complete the missing sections and click 'Submit' again.<br />";
	var errorField = document.getElementById(errorFieldID);
	with (field)
	{
		if (value.length == 0)
		{	
			errorField.innerHTML = extraText + alertText;
  			return false;
		}
		else 
		{
			return true;
		}
	}
}

function validate_check(field,errorFieldID,alertText)
{
	var extraText = "Oops. You forgot to complete all the required sections.<br />";
	extraText = extraText + "Please complete the missing sections and click 'Submit' again.<br />";
	var errorField = document.getElementById(errorFieldID);
	with (field)
	{
		if (field.checked)
		{	
			return true;
		}
		else 
		{
			errorField.innerHTML = extraText + alertText;
  			return false;
		}
	}
}

function validate_new_member_form(thisform)
{
	var errorFieldID = "newMemberError";
	with (thisform)
	{
		if (validate_text(firstName,errorFieldID,"Please enter your first name")==false)
		{
			firstName.focus();
			return false;
		}
		if (validate_text(lastName,errorFieldID,"Please enter your last name")==false)
		{
			lastName.focus();
			return false;
		}
		if (validate_select(role,errorFieldID,"Please select your role")==false)
		{
			role.focus();
			return false;
		}
		if (validate_select(centre,errorFieldID,"Please select your centre")==false)
		{
			centre.focus();
			return false;
		}
		if (validate_email(email,errorFieldID,"Please enter a valid email address. This could be your manager's email address")==false)
		{
			email.focus();
			return false;
		}
		if (validate_text(phone,errorFieldID,"Please enter your phone number")==false)
		{
			phone.focus();
			return false;
		}
		if (validate_select(dobDay,errorFieldID,"Please enter your Date of Birth")==false)
		{
			dobDay.focus();
			return false;
		}
		if (validate_select(dobMonth,errorFieldID,"Please enter your Date of Birth")==false)
		{
			dobMonth.focus();
			return false;
		}
		if (validate_select(dobYear,errorFieldID,"Please enter your Date of Birth")==false)
		{
			dobYear.focus();
			return false;
		}
	}
}

function validate_terms_form(thisform)
{
	var errorFieldID = "termsError";
	with (thisform)
	{
		if (validate_check(readTerms,"Please confirm that you have read the terms and conditions")==false)
		{
			readTerms.focus();
			return false;
		}
	}
}


function validate_new_gallery(thisform)
{
	var errorFieldID = "newGalleryError";
	with (thisform)
	{
		if (validate_text(albumName,"Please enter an Album Name")==false)
		{
			albumName.focus();
			return false;
		}
		if (validate_select(promotion,"Please select a promotion")==false)
		{
			promotion.focus();
			return false;
		}
		if (validate_text(filename,"Please enter a file")==false)
		{
			filename.focus();
			return false;
		}
	}
}


function switchMenu(div) 
{

	var subMenuOption=['subMenu1','subMenu2','subMenu3','subMenu4','subMenu5','subMenu6','subMenu7'];
	var menuOption=['menu1','menu2','menu3','menu4','menu5','menu6','menu7'];
	var iFrameOption=['iFrame1','iFrame2','iFrame3','iFrame4','iFrame5','iFrame6','iFrame7'];
	var subMenuDiv = 'subMenu' + div;
	var menuDiv = 'menu' + div;
	var subNavObj=document.getElementById('subNav');
	if (div)
	{
		subNavObj.style.zIndex = -1;
	}
	for(var i=0; i<menuOption.length; i++) 
	{
		if (document.getElementById(menuOption[i])) 
		{
			obj=document.getElementById(menuOption[i]);
			obj.style.background=(menuOption[i]==menuDiv)? "#e9e9e9" : "#f4f3f8";
		}
	}
	for(var i=0; i<subMenuOption.length; i++) 
	{
		if (document.getElementById(subMenuOption[i])) 
		{
			var IfrRef = document.getElementById(iFrameOption[i]);
			var obj=document.getElementById(subMenuOption[i]);
			obj.style.zindex=100;
			
			
			if (subMenuOption[i]==subMenuDiv)
			{
				obj.style.display = "block";
				IfrRef.style.display = "block";
				IfrRef.style.width = obj.offsetWidth + "px";
				IfrRef.style.height = obj.offsetHeight + "px"
				IfrRef.style.top = obj.offsetTop + "px";
				IfrRef.style.left = obj.offsetLeft + "px";
				IfrRef.style.zindex = obj.style.zindex - 1;
			}
			else
			{
				obj.style.display = "none";
				IfrRef.style.display = "none";
			}
			/*obj.style.display=(subMenuOption[i]==subMenuDiv)? "block" : "none";*/			
		}
	}

	if (!div)
	{
		subNavObj.style.zIndex = 0;	
	}
	
}


function isNumeric(x) 
{
//	var RegExp = /^(-)?(\d*)(\.?)(\d*)$/; // Note: this WILL allow a number that ends in a decimal: -452.
	var RegExp = /^(\d*)$/; 

	x = '' + x;

	var result = x.match(RegExp);
	if (result==null) result=false;
	return result;
}

function calculate_percentages(element)
{
	var refName = element.name;
	var refDate = refName.substring(2,12);
	var targetObj = document.getElementById('t_' + refDate);
	var valueObj = document.getElementById('v_' + refDate);
	var percentObj = document.getElementById('p_' + refDate);
	var targetVal = parseInt(targetObj.value);
	var valueVal = parseInt(valueObj.value);
	
	if (isNumeric(valueVal) && isNumeric(targetVal) && targetVal > 0)
	{
		percentVal = parseInt((valueVal / targetVal) * 100);
		percentObj.innerHTML = "" + percentVal + "%";		
	}	
	else
	{
		percentObj.innerHTML = "&nbsp;";		
	}	
	
}


function calculate_sum()
{
	var selectFinalUsersObj = document.getElementById('selectFinalUsers');
	var valueObj = document.getElementById('prizeValue');
	var allocatedObj = document.getElementById('prizeAllocatedSum');
	var saveTaxButtonObj = document.getElementById('saveTaxButton');
	var usersValuesObj = document.getElementById('usersValues');

	
	var value = parseFloat(valueObj.value);
	var allocatedValue = parseFloat(allocatedObj.childNodes[0].nodeValue);
	
	var inputBoxes = selectFinalUsersObj.getElementsByTagName('input');
	
	var sum = 0;
	var inputBoxesArray = new Array();
	for( var x = 0; x < inputBoxes.length; x++ ) 
	{
		var inputBox = inputBoxes[x];
		inputBoxesArray[x]=inputBox.value;
		var inputValue = parseFloat(inputBox.value);
		sum += inputValue;
	}
	var valuesString = inputBoxesArray.join(", ");
	
	allocatedObj.childNodes[0].nodeValue = sum.toFixed(2);

	var allocatedValue = parseFloat(allocatedObj.childNodes[0].nodeValue).toFixed(2);


	if (Math.abs(value-allocatedValue)< 0.01)
	{
		saveTaxButtonObj.disabled=false;
		usersValuesObj.value=valuesString;
	}
	else
	{
		saveTaxButtonObj.disabled=true;
	}

}



function check_ex_employees()
{
	var checkingObj = document.getElementById('checking');
	var allocateTaxButtonObj = document.getElementById('allocateTaxButton');
	
	var ex1Obj = document.getElementById('final_ex_employee_name1');
	var ex2Obj = document.getElementById('final_ex_employee_name2');
	var ex3Obj = document.getElementById('final_ex_employee_name3');
	var ex4Obj = document.getElementById('final_ex_employee_name4');
	var ex5Obj = document.getElementById('final_ex_employee_name5');
	
	var message = "";
	var disableButton = false;
	var selectObj = document.getElementById('final_user_id');
	for (var i=0; i <selectObj.options.length; i++) 
	{
 		if (selectObj.options[i].selected) 
 		{
 			var value = selectObj.options[i].value;
 			if (
 				(value == "ex1" && !ex1Obj.value) || 
 				(value == "ex2" && !ex2Obj.value) ||
 				(value == "ex3" && !ex3Obj.value) ||
 				(value == "ex4" && !ex4Obj.value) ||
 				(value == "ex5" && !ex5Obj.value) 
 			   )
 			{
 				disableButton = true;
 			}
		}
	}
	
	if (disableButton)
	{
		allocateTaxButtonObj.disabled = true;
		message = "Please check that you have entered the ex-employee(s)' name(s) correctly.<br />" ;
	}
	else
	{
		allocateTaxButtonObj.disabled = false;
	}
	
	checkingObj.innerHTML = message ;
		
	

	
	/*
	var allocateFinalUsersObj = document.getElementById('allocateFinalUsers');
	var valueObj = document.getElementById('prizeValue');
	var allocatedObj = document.getElementById('prizeAllocatedSum');
	var saveTaxButtonObj = document.getElementById('saveTaxButton');
	var usersValuesObj = document.getElementById('usersValues');

	
	var value = parseFloat(valueObj.value);
	var allocatedValue = parseFloat(allocatedObj.childNodes[0].nodeValue);
	
	var inputBoxes = allocateFinalUsersObj.getElementsByTagName('input');
	
	var sum = 0;
	var inputBoxesArray = new Array();
	for( var x = 0; x < inputBoxes.length; x++ ) 
	{
		var inputBox = inputBoxes[x];
		inputBoxesArray[x]=inputBox.value;
		var inputValue = parseFloat(inputBox.value);
		sum += inputValue;
	}
	var valuesString = inputBoxesArray.join(", ");

	allocatedObj.childNodes[0].nodeValue = sum.toFixed(2);

	var allocatedValue = parseFloat(allocatedObj.childNodes[0].nodeValue).toFixed(2);


	if (Math.abs(value-allocatedValue)< 0.01)
	{
		saveTaxButtonObj.disabled=false;
		usersValuesObj.value=valuesString;
	}
	else
	{
		saveTaxButtonObj.disabled=true;
	}

//	alert(value);
//	alert(allocatedValue);
*/
}
