
// Browser detect *********************************************************************************

var browserN4 = false;
var browserIE = false;
var browserN6 = false;

if(document.layers){
	browserN4 = true;
} else if(document.all) {
	browserIE = true;
} else if(document.getElementById) {
	browserN6 = true;
}

// Style sheet selected based on browser **********************************************************

function writeStyleLink(){
	if(browserN4){myStyle="style_n4.css";}else{myStyle="style.css";}
	var browserStyle = "<link rel='STYLESHEET' type='text/css' href='jscss/" + myStyle + "'>";
	var printStyle = "<link rel='STYLESHEET' type='text/css' href='jscss/print.css'>";
	document.write(browserStyle);
}

// Form validation *************************************************************************

function fillform() {
	for ( var i = 1; i <= 5; i++) {
		eval("document.form.q" + i + "[0].checked=true"); 
	}
	document.form.q6[1].checked=true; 
}



function validate(myform) {
	msg = ""; dq = 0;
	for ( var i = 1; i <= 6; i++) {if (!eval("myform.q" + i + "[0].checked") && !eval("myform.q" + i + "[1].checked")){msg += "* Question " + i + "\n";}}
	if (msg == "") {
		if((myform.q1[1].checked)||(myform.q2[1].checked)||(myform.q3[1].checked))dq = 1;
		if(myform.q6[0].checked)dq = 2;
		myform.dq.value=dq
		myform.val.value=1;
		return true;
	} else {
		alert("The following questions were not completed:\n\n" + msg);
		return false;
	}
}
	
var errColor = "#ffdddd";
var focusColor = "#b4e4ff";
var blurColor = "#edf3fd";

function validate_addDiscipline(form) {

	var msg = "";
	
	if(form.discipline_name.value==""){bgChange(form.discipline_name,errColor);msg += "* Please enter a discipline\n";} 
	if (msg != "") {
		alert(msg);
		return false;
	} else {
		form.val.value = "1";
		return true;
	}
}

function validate_EditDiscipline(form) {

	var msg = "";
	
	if(form.discipline_name.value==""){bgChange(form.discipline_name,errColor);msg += "* Please enter a discipline\n";} 
	if (msg != "") {
		alert(msg);
		return false;
	} else {
		return true;
	}
}


function validate_invite(form) {

	var msg = "";
	
	if(form.discipline.selectedIndex==0){bgChange(form.discipline,errColor);msg += "* Discipline\n";} 
	if(form.location.selectedIndex==0){bgChange(form.location,errColor);msg += "* Location\n";}
	if (msg != "") {
		alert("The following fields were not completed correctly: \n\n" + msg);
		return false;
	} else {
		//form.val.value = "1";
		return true;
	}
}

function validate_invite_reset(form) {
	bgChange(form.discipline,blurColor);
	bgChange(form.location,blurColor);
}


function validate_reg(form) {

	var msg = "";
	
	if(!validName(form.firstName.value)){bgChange(form.firstName,errColor);msg += "* First Name\n";} 
	if(!validName(form.lastName.value)){bgChange(form.lastName,errColor);msg += "* Last Name\n";}
	if(!validEmail(form.email.value)){bgChange(form.email,errColor);msg += "* Email\n";}
	if(!validPhone(form.phone.value)){bgChange(form.phone,errColor);msg += "* Phone\n";}
	if(form.myResume.value==""){bgChange(form.myResume,errColor);msg += "* Upload Resume\n";}
	if(form.myResume.value!=""){
		if((form.myResume.value.indexOf('.doc') < 0)&&(form.myResume.value.indexOf('.txt') < 0)&&(form.myResume.value.indexOf('.html') < 0)){
				bgChange(form.myResume,errColor);msg += "* Resume must be in MS Word Format\n";
			}
	}	
	//if((!form.status[0].checked)&&(!form.status[1].checked)&&(!form.status[2].checked)){msg += "* Work time interest\n";}
	if (msg != "") {
		alert("The following fields were not completed correctly: \n\n" + msg);
		return false;
	} else {
		form.val.value = "1";
		return true;
	}
}

// regexp for international users (not restrictive/us-centric)
function validName(myString) {regExp = /^[A-Z]./i; return(regExp.exec(myString));}
function validEmail(myString) {regExp = /[\w\.\-]{2,}\@[\w\-]{2,}\.[a-z]{2,3}/i; return(regExp.exec(myString));}
function validPhone(myString) {regExp = /^[0-9\(\+][0-9\.\s\-\+\(\)]+$/; return(regExp.exec(myString));}
function validZip(myString) {regExp = /(^\d{5}$)|(^\d{5}-\d{4}$)/; return(regExp.exec(myString));}
function validMonth(myString) {regExp = /(^\d{1,2}$)/; return(regExp.exec(myString));}
function validDay(myString) {regExp = /(^\d{1,2}$)/; return(regExp.exec(myString));}
//function validYear(myString) {regExp = /(^\d{4}$)/; return(regExp.exec(myString));}
function validYear(myString) {regExp = /(^2{1}0{1}[0-9]{2}$)/; return(regExp.exec(myString));}
function bgChange(myField,myColor) {if (!document.layers){myField.style.background = myColor;}}

function checkDate(myDate){
	var date = new Date(myDate);
	var now = new Date();
	var diff = date.getTime() - now.getTime();
	var days = (Math.floor(diff / (1000 * 60 * 60 * 24))+1);
	var mssg = "Reminder can not be set for this date";
	if (document.form.remindDays.options[document.form.remindDays.selectedIndex].value == "-1"){
		if (days <= 1){
			alert(mssg);
			document.form.remindDays.selectedIndex = 0;
			return false;
		}
	}
	if (document.form.remindDays.options[document.form.remindDays.selectedIndex].value == "-3"){
		if (days < 3){
			alert(mssg);
			document.form.remindDays.selectedIndex = 0;
			return false;
		}
	}
	if (document.form.remindDays.options[document.form.remindDays.selectedIndex].value == "-7"){
		if (days < 7){
			alert(mssg);
			document.form.remindDays.selectedIndex = 0;
			return false;
		}
	}
}


function validate_login(form) {

	var msg = "";
	if(form.strUsername.value==""){bgChange(form.strUsername,errColor);msg += "* Username\n";}
	if(form.strPassword.value==""){bgChange(form.strPassword,errColor);msg += "* Password\n";}
	if (msg != "") {
		alert("The following field(s) were not completed correctly: \n\n" + msg);
		return false;
	} else {
		return true;
	}
}


function isValidDate(strDay,strMonth,strYear){
	strDate = strMonth + "/" + strDay + "/" + strYear;
	var now = new Date();
	var dateDate = new Date(strDate);
	return(now<dateDate);
}

function validate_edit(form) {
	var msg = "";
	
	if(form.description.value==""){bgChange(form.description,errColor);msg += "* Description\n";}
	if(form.location_name.value==""){bgChange(form.location_name,errColor);msg += "* Location Name\n";}
	if(form.location_addr.value==""){bgChange(form.location_addr,errColor);msg += "* Location Address\n";}
	if(form.city.value==""){bgChange(form.city,errColor);msg += "* City\n";}
	if(form.state.options[form.state.selectedIndex].value == ""){bgChange(form.state,errColor);msg += "* State\n";}
	if(!validZip(form.zip.value)){bgChange(form.zip,errColor);msg += "* Postal Code\n";}	
	if(!validMonth(form.strMonth.value)||(form.strMonth.value > 12)||(form.strMonth.value < 1)){bgChange(form.strMonth,errColor);msg += "* Month\n";}	
	if(!validDay(form.strDay.value)||(form.strDay.value > 31)||(form.strDay.value < 1)){bgChange(form.strDay,errColor);msg += "* Day\n";}
	if(!validYear(form.strYear.value)){bgChange(form.strYear,errColor);msg += "* Year\n";}
	
	if ((form.strDay.value!="")&&(form.strDay.value!="")&&(form.strDay.value!="")){	
		if(!isValidDate(form.strDay.value,form.strMonth.value,form.strYear.value)){
			bgChange(form.strYear,errColor);
			bgChange(form.strMonth,errColor);
			bgChange(form.strDay,errColor);
			msg += "* Date\n";
		}
	}

	if(form.eTimeStart.value==""){bgChange(form.eTimeStart,errColor);msg += "* Start Time\n";}
	if(form.eTimeEnd.value==""){bgChange(form.eTimeEnd,errColor);msg += "* End Time\n";}
	if(isNaN(form.regLimit.value)|| form.regLimit.value=="" || form.regLimit.value==0){bgChange(form.regLimit,errColor);msg += "* Registration Number Limit\n";}


	if (msg != "") {
		alert("The following field(s) were not completed correctly: \n\n" + msg);
		return false;
	} else {
		form.eDate.value = form.strMonth.value + "/" + form.strDay.value + "/" + form.strYear.value;
		return true;
	}
}

function confirmClose(myForm) {
	var message= "Click OK to confirm this event will be closed";
	if (myForm.checked) {
		if (confirm(message)){
			myForm.checked = true;
		}else{
			myForm.checked = false;
		}
	}
}


// Image preload and rollovers ********************************************************************


if (document.images) {

	img1on = new Image();
	img1on.src ="images/0b_start_o.gif";
	img1off = new Image();
	img1off.src ="images/0b_start.gif";

}
		
function imgOn(imgName) {
	if (document.images) {
		document[imgName].src = eval(imgName + "on.src");
		
	}
}

function imgOff(imgName) {
	if (document.images) {
		document[imgName].src = eval(imgName + "off.src");

	}
}

function getY(obj) {
	if(document.layers){
  		return eval(obj).y;     
		//return eval(obj).pageY;  //************* y for image pos, pageY for layer pos
	} else {
  		return( obj.offsetParent==null ? obj.offsetTop : obj.offsetTop+getY(obj.offsetParent) );
	}
}

function writeBackTop(){
	//alert(getY(document.images['posImgBot']));
	currBot = getY(document.images['posImgBot']);
	if (currBot > 490) {
		if(document.layers){
			// document.divtop.display = 'inline'; //does not work
		} else if(document.all) {
			document.all.divtop.style.display = 'inline';
		} else if(document.getElementById) {
			document.getElementById("divtop").style.display = 'inline';
		}
	}
}