var valid_email = false;

function bademail(frm)
{
	var theEmail = frm.user_email.value;
	
	if (theEmail != null && theEmail != "") {
		a = theEmail.lastIndexOf("@");
		b = theEmail.lastIndexOf(".");
		c = theEmail.indexOf(":");
		d = theEmail.indexOf("/");
		e = theEmail.substring(0,a);
		f = e.indexOf("@");
		g = theEmail.substring(a+1,theEmail.length);
		h = g.indexOf("[");
		i = g.indexOf("]");
		j = g.indexOf("<");
		k = g.indexOf(">");
		l = theEmail.substring(a+1,b);
		m = theEmail.substring(b+1,theEmail.length);
		n = theEmail.substring(0,a);
		o = 0;
		if (a > b) {o++};
		if (c != -1) {o++};
		if (d != -1) {o++};
		if (f != -1) {o++};
		if (h != -1) {o++};
		if (i != -1) {o++};
		if (j != -1) {o++};
		if (k != -1) {o++};
		if (l.length < 3) {o++};
		if (m.length < 2) {o++};
		if (n.length < 1) {o++};
		if (o == 0) {
			valid_email = true;
			return false;
			
		}
		else {
			valid_email = false;
			return true;
			
		}
	}
}


function validateform(frm)
{
	
	var retval = true;
	var missing_field = false;
	var showMsg = false;
	var mystring = "You must enter a value for the following fields : \n\n"
	
	if (frm.user_name.value == "") {
		mystring = mystring + "Your name\n"
		showMsg = true;
		retval= false;
		missing_field = true;
	}
	if (frm.user_email.value == "") {
		mystring = mystring + "Your Email address\n";
		showMsg = true;
		retval =  false;
		missing_field = true;
	}
	else {
		if (bademail(frm)) {
			if (missing_field == false) {
				mystring = "You must enter a valid address in the 'Your Email address' field"
				showMsg = true;
				retval = false;
			}
			else {
				mystring = mystring + "\n\nYou must enter a valid address in the Your ";
				mystring = mystring + "Email address field";
				showMsg = true;
				retval = false;
			}
		}
	}
	if (showMsg == true) {
		alert (mystring)
	}
	return retval;
}

function compareDate(dayf, monthf, yearf, dayt, montht, yeart, equal) {
	if (parseInt(yeart) < parseInt(yearf)) {  return 0; }
	if (parseInt(yeart) > parseInt(yearf)) {  return 1; }
	if (parseInt(montht) < parseInt(monthf)) {  return 0; }
	if (parseInt(montht) > parseInt(monthf)) { return 1; }
	if (equal)   {
		if (parseInt(dayt) < parseInt(dayf))   {  return 0; }
		} else {
		if (parseInt(dayt) <= parseInt(dayf))   {  return 0; }
	}
	return 1;
}

function checkStartDate(frm) {
	var day = parseInt(frm.Departure_Date_Day.options[frm.Departure_Date_Day.selectedIndex].value);
	var mon = frm.Departure_Date_Month.options[frm.Departure_Date_Month.selectedIndex].value;
	var yea = parseInt(frm.Departure_Date_Year.options[frm.Departure_Date_Year.selectedIndex].value);
	today = new Date();
	var daynow = today.getDate();
	var monthnow = today.getMonth();
	var yearnow = today.getYear();
	if (!compareDate(daynow, monthnow, yearnow, day, mon, yea, 1)) {
		frm.Departure_Date_Day.focus();
		alert("Check In Date cannot be earlier than today");
		return false;
	}
	return true;
}

function doCheckFormscout(frm) {
	
	if(!validateform(frm)) {return false; }
	
	if (frm.Group_Description_Other_Dates[frm.Group_Description_Other_Dates.selectedIndex].value != "No_Group") {
		
		if(!checkStartDate(frm)) { return false; }
	}
	
	return true;
}

