function validateEmail(eAddr) {
     var emailReg = "^[\\w-_\.]*[\\w-_\.]\@[\\w]\.+[\\w]+[\\w]$";
     var regex = new RegExp(emailReg);
     return regex.test(eAddr);
  }

function formChecker()
{
	if (document.getElementById('ucCruiseSearch1_ddlDepartureDate').value == "") {
		alert("Please select a departure date")
		return false;
	}
	//check cruiseLines
	if (document.getElementById('ucCruiseSearch1_lbCruiseLine').value == "0") {
		alert("Please select at least one cruise line")
		return false;
	}
	document.getElementById("ucCruiseSearch1_tblCruiseSearch").style.visibility = "hidden"
	document.getElementById("ucCruiseSearch1_tblCruiseSearch").style.position = "absolute"
	document.getElementById("pleaseWait").style.visibility = "visible"
	document.getElementById("pleaseWait").style.position = "relative"
	document.getElementById('ucCruiseSearch1_hdnNewSearch').value='true';
	return true
}
function pleaseWait()
{
	//the tentative function to make the button on the book confirm page 
	document.getElementById("iimgBookMyCruise").style.visibility = "hidden"
	document.getElementById("iimgBookMyCruise").style.position = "absolute"
	document.getElementById("flaTest2").style.visibility = "visible"
	document.getElementById("flaTest2").style.position = "relative"
}
function indexAfterCheck(checker)
{
	if (checker)
	{
		document.getElementById('ucCruiseSearch1_hdnNewSearch').value='true';
		alert("true")
		submit();
	}
	else
	{
		//alert("false")
	}
}
function checkGuestInfo()
{
	if(document.getElementById("ucGuestInfo1_txtFName").value == "")
	{
		alert("Please enter the first name of guest 1.")
		return false;
	}
	if(document.getElementById("ucGuestInfo1_txtLName").value == "")
	{
		alert("Please enter the last name of guest 1.")
		return false;
	}
	if(document.getElementById("ucGuestInfo2_txtFName").value == "")
	{
		alert("Please enter the first name of guest 2.")
		return false;
	}
	if(document.getElementById("ucGuestInfo2_txtLName").value == "")
	{
		alert("Please enter the last name of guest 2.")
		return false;
	}
}

//the following code is for the cabin hold timer, this came from CXP

var oInterval="";
var setint = 0
var setint2 = 0
var secs = 0

function setTimer2(){
	setint = setint + 1
	var dstart = new Date()
	
	if (setint == 1){ //first iteration
		dend = new Date(document.getElementById("ucLeftNav1_timeend").value)
		dwarning =  new Date(document.getElementById("ucLeftNav1_timewarning").value)
		dwarningend =  new Date(document.getElementById("ucLeftNav1_timewarningend").value)
	}
	//alert("1:" + dend + "2:" + dwarning + "3:" + dwarningend)

	var diff = new Date();
	diff.setTime(Math.abs(dstart.getTime() - dend.getTime()));
	var diffMin = diff.getMinutes();
	var diffSec = diff.getSeconds();
	diffSec >= 10 ? diffSec : diffSec = '0' + diffSec;
	
	currenttime = '<b style="font-size:10px;">Current time: <font style="font-size:11px;">'	+ dstart.toLocaleTimeString() + '</font><br/>';
	expiretime = '<font style="font-size:10px;color: yellow;">Hold Expires:&#160;</font><font style="font-size:11px; color: yellow;">' + dend.toLocaleTimeString() + '</font><br/>';
	lefttime = '<font style="font-size:10px;color: #10FF26;">TIME LEFT:&#160;&#160;&#160;&#160;&#160;</font><font style="font-size:14px; font-weight: bold;color: #10FF26;">' + diffMin + ':' + diffSec + '</font></b>';

	timetext = currenttime + expiretime + lefttime;
	
	document.getElementById("popTimer").style.visibility = "visible";
	document.getElementById("popTimer").style.display = "inline";
	document.getElementById("popTimer").style.left = (document.documentElement.offsetWidth / 2) + 20
	document.getElementById("popTimer").style.top = document.body.scrollTop //1
	document.getElementById("popTimerTxt").innerHTML = '<font color="white">' + timetext + '</font>'
	
	if (dstart >= dwarning && dstart <= dwarningend){//if the warning time is up
		setint2 = setint2 + 1
		if (setint2 == 1){
			document.getElementById("popTimerReminder").style.visibility = "visible";
			document.getElementById("popTimerReminder").style.display = "inline";
			document.getElementById("popTimerReminder").style.left = (document.documentElement.offsetWidth / 2) + 50
			
			window.setTimeout("hidePop('popTimerReminder')", 117000);
		}
		document.getElementById("popTimerReminder").style.top = document.body.scrollTop + 65
	}
	
	if (dstart >= dend){ //if the time is up
		fnStopInterval()
		document.getElementById("popTimerTxt").innerHTML = "<b style='color:#F6F313;font-size:13px;text-transform:uppercase;'>Your Cabin Hold Has Expired<br/>Please re-select.</b>"
		window.setTimeout("hidePop('popTimer')", 5000);
		document.getElementById("ucLeftNav1_intimer").value = "no"
		//document.formbook.inCabinHold.value = "false"
		//document.formbook.inCabinAvail.value = "false"
		alert("Your 15 minutes have expired.\nYour Cabin has been released.\nPlease re-select a cabin.")
		//need to send them somewhere...
		//document.formbook.action = "book.web?action=CabinTimedOut"
		document.formbook.submit()
	}
	

}
function setCabinHoldTimer(){
	document.getElementById("ucLeftNav1_intimer").value = "yes"

	var dstart2, dwarning, dwarninginterval, dwarningend, dend, minutes, minutes2, seconds, seconds2, timetext
	
	dstart2 = new Date()
	document.getElementById("ucLeftNav1_timestart").value = dstart2
	dend = new Date(dstart2)
	dwarning = new Date(dstart2)
	dwarningend = new Date(dstart2)
	dwarninginterval = 2

	minutes = dend.getMinutes()
	minutes2 = minutes + 15
	dend.setMinutes(minutes2)
	dwarning.setMinutes(minutes2-dwarninginterval)
	seconds = dwarning.getSeconds()
	seconds2 = seconds + 117
	dwarningend.setMinutes(minutes2-dwarninginterval)
	dwarningend.setSeconds(seconds2)
	
	//FOR TESTING
	//seconds = dend.getSeconds()
	//seconds2 = seconds + 25
	//dend.setSeconds(seconds2)
	//dwarning.setSeconds(seconds2-dwarninginterval)
	//dwarningend.setSeconds(seconds2-dwarninginterval+4)
	
	//alert(dstart2 + "\n" + dwarning + "\n" + dwarningend + "\n" + dend)
	
	document.getElementById("ucLeftNav1_timeend").value = dend
	document.getElementById("ucLeftNav1_timewarning").value = dwarning
	document.getElementById("ucLeftNav1_timewarningend").value = dwarningend
}

function fnStartInterval(){
	//alert("here")
	if (document.getElementById("ucLeftNav1_inCabinHold").value == "true"){
		
	
		var dstart = new Date() //document.getElementById("timestart").value
		var dend = ""
		if (! (document.getElementById("ucLeftNav1_timeend").value == "")){
			dend = new Date(document.getElementById("ucLeftNav1_timeend").value)
		}
		var intimer = document.getElementById("ucLeftNav1_intimer").value
		
		//alert(dstart + "|" + dend)
		//alert( (dstart >= dend))
		//alert(intimer)		

		if ( (intimer == "yes" || intimer == "") && ( !(dstart >= dend) || (dend==""))){
			if(oInterval==""){
				//oTimer.innerHTML="Interval Started";
				oInterval=window.setInterval("setTimer2()",1000);
			}
			else{
				fnStopInterval();
			}
		} else {
			alert("not in timer")
		}
	}
}
function fnStopInterval(){
	if(oInterval!=""){
		window.clearInterval(oInterval);
		oInterval="";
		secs = 0
	}
}
function hidePop(ele){
	document.getElementById(ele).style.visibility = "hidden";
	document.getElementById(ele).style.display = "none";
}
