var issueCounter = 0;
var maxDays = 7;
var alphabet = new Array('A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z',"Etc"); 

function validate_email(field){
	var emailPattern = new RegExp("^[0-9a-zA-Z\.\-_]+@[0-9a-zA-Z\.\-_]+\.[0-9a-zA-Z]+$");
	var fieldname = field.name + "Label";
	with(field){
		if (emailPattern.test(value)){
			document.getElementById(fieldname).style.fontWeight="normal";
			document.getElementById(fieldname).style.color="#000000";
			return true;
		}else{
			document.getElementById(fieldname).style.fontWeight="bold";
			document.getElementById(fieldname).style.color="#ff0000";
			return false;
		}
	}
}
function validate_phone(field){
	var fieldname = field.name + "Label";
	with(field){
		if (value.length < 10){
			document.getElementById(fieldname).style.fontWeight="bold";
			document.getElementById(fieldname).style.color="#ff0000";
			return false; 
		}else{
			document.getElementById(fieldname).style.fontWeight="normal";
			document.getElementById(fieldname).style.color="#000000";
			return true;
		}
	}
}
function validate_text(field,minLength,maxLength){
	var fieldname = field.name + "Label";
	if (minLength === undefined)
		minLength = 2;
	if (maxLength === undefined)
		maxLength = 5000;
	with(field){
		if (value.length < minLength || value.length > maxLength){
			document.getElementById(fieldname).style.fontWeight="bold";
			document.getElementById(fieldname).style.color="#ff0000";
			return false;
		}else{
			document.getElementById(fieldname).style.fontWeight="normal";
			document.getElementById(fieldname).style.color="#000000";
			return true;
		}
	}
}
function validate_timesheet(thisform){
 	var returnval = true;
	with (thisform){
		if (validate_text(thisform.elements[0]) == false)
			returnval = false;
		if (validate_text(thisform.elements[1]) == false)
			returnval = false;
	}
	if (returnval == false){
		document.getElementById("formerror").style.display="block";
		document.getElementById("formsuccess").style.display="none";
		alert("Required fields were omitted or contained invalid data. Please correct the fields labeled in red.");
		return false;
	} else {
		cleanTimeForm();
		return true;
	}
}
function validate_form(thisform){
	var emailPattern = /f6+/i;/*/email+/i;*/
	var phonePattern = /f2+/i; /*/phone+/i;*/
	var submitPattern = /submit+/i;
	var commentPattern = /f7+/i;/*/comment+/i;*/
	var optionalPattern = /optional+/i;
	var callnumPattern = /calltrak+/i;
	var bottrickPattern = /firstname+/i;
	var returnval = true;
	with (thisform){
		for (var i=0;i<thisform.length;i++){
			if (thisform.elements[i].name.match(bottrickPattern) || thisform.elements[i].name.match(commentPattern) || thisform.elements[i].name.match(submitPattern) || thisform.elements[i].name.match(optionalPattern)){
				continue;
 			} else if (thisform.elements[i].name.match(emailPattern)) {
				if (validate_email(thisform.elements[i]) == false)
					returnval = false;
 			} else if (thisform.elements[i].name.match(phonePattern)) {
				if (validate_phone(thisform.elements[i]) == false)
					returnval = false;
 			} else if (thisform.elements[i].name.match(callnumPattern)) {
				if (validate_text(thisform.elements[i],6,6) == false)
					returnval = false;
 			} else {
				if (validate_text(thisform.elements[i]) == false)
					returnval = false;
			}
		}
	}
	if (returnval == false){
		document.getElementById("formerror").style.display="block";
		document.getElementById("formsuccess").style.display="none";
		alert("Required fields were omitted or contained invalid data. Please correct the fields labeled in red.");
		return false;
	} else {
		cleanForm();
		return true;
	}
}
function addIssue(){
		if (issueCounter >= alphabet.length-1){
			return;
		}
		if (issueCounter >= alphabet.length-2){
			document.getElementById("optionaladdissue").disabled = true;
		}
		issueCounter++;
		var elementId = "optionalIssue" + alphabet[issueCounter];
		document.getElementById(elementId + "LI").style.display="block";
		document.getElementById("optionalremoveissue").disabled = false;
	}
function removeIssue(){
		if (issueCounter <= 0){
			return;
		}
		if (issueCounter <= 1){
			document.getElementById("optionalremoveissue").disabled = true;
		}
		var elementId = "optionalIssue" + alphabet[issueCounter];
		issueCounter--;
		document.getElementById(elementId + "LI").style.display="none";
		document.getElementById("optionaladdissue").disabled = false;
}
function loadForm(){
	for(var i = 1; i < alphabet.length; i++){
		id1 = "optionalIssue" + alphabet[i];
		document.getElementById(id1 + "LI").style.display="none";
	}
}
function cleanForm(){
	for(var i = 1; i < alphabet.length; i++){
		id1 = "optionalIssue" + alphabet[i];
 		 if (document.getElementById(id1 + "LI").style.display == "none"){
			document.getElementById(id1).value = ""; 
		} else {
			if (document.getElementById(id1).value.length == 0) {
				document.getElementById(id1).value = " ";
			}
		} 
	}
}
function cleanTimeForm(){
	for(var i = 0; i < maxDays; i++){	
		var flXdatedy	= "fl" + i + "datedy";	/*Date Day*/
 		var wdXdatedy	= "wd" + i + "datedy";	/*Date Day*/
		if (document.getElementById("flgt" + i).style.display == "none"){
			document.getElementById(flXdatedy).value = "00"; 
		}
		if (document.getElementById("wkdy" + i).style.display == "none"){
			document.getElementById(wdXdatedy).value = "00"; 
		}
	}
}