

// Navigation Menu Rollover
<!--
function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
//-->

//validate form no action

function checkrequired(which) {
var pass=true;
if (document.images) {
	for (i=0;i<which.length;i++) {
		var tempobj=which.elements[i];
		if (tempobj.name.substring(0,8)=="required") {
			if (((tempobj.type=="text"||tempobj.type=="textarea")&&
				tempobj.value=='')||(tempobj.type.toString().charAt(0)=="s"&&
				tempobj.selectedIndex==0)) {
				pass=false;
				break;
			}
		}
	}
}
shortFieldName=tempobj.name.substring(8,30).toUpperCase();
if (!pass) {
alert("Please make sure the "+shortFieldName+" field was properly completed.");
tempobj.focus();
return (false);
}
else
return true;
}

function trimString(strg) {
  var str = strg.value;
  while (str.charAt(0) == ' ')
    str = str.substring(1);
  while (str.charAt(str.length - 1) == ' ')
    str = str.substring(0, str.length - 1);
  strg.value = str;
}

//validate form submit

function checkrequired2(which) {
var pass=true;
if (document.images) {
for (i=0;i<which.length;i++) {
var tempobj=which.elements[i];
if (tempobj.name.substring(0,8)=="required") {
if (((tempobj.type=="text"||tempobj.type=="textarea")&&
tempobj.value=='')||(tempobj.type.toString().charAt(0)=="s"&&
tempobj.selectedIndex==0)) {
pass=false;
break;
         }
      }
   }
}
if (!pass) {
shortFieldName=tempobj.name.substring(8,30).toUpperCase();
alert("Please make sure the "+shortFieldName+" field was properly completed.");
tempobj.focus();
return (false);
}
else
return (which.submit());
}

function validate_it(which) {

	if (which.requiredFirst_Name.value == ""){
		alert('Please complete the First Name field. Thank You\!');
		which.requiredFirst_Name.focus();
		return false;
	} else {
		var fname = trimString(which.requiredFirst_Name)
		if (fname == ""){
			alert('Please complete the First Name field. Thank You\!');
			which.requiredFirst_Name.focus();
			return false;
		}
	}	
	if (which.requiredLast_Name.value == ""){
		alert('Please complete the Last Name field. Thank You\!');
		which.requiredLast_Name.focus();
		return false;
	} else {
		var lname = trimString(which.requiredLast_Name)
		if (lname == ""){
			alert('Please complete the Last Name field. Thank You\!');
			which.requiredLast_Name.focus();
			return false;
		}
	}
	if (which.requiredemail.value == ""){
		alert('Please complete the email field. Thank You\!');
		which.requiredemail.focus();
		return false;
	} else {
		if (!isEmail(which.requiredemail.value)){
			which.requiredemail.focus();
			return false;
		}
	}

	if (which.requiredaddress.value == ""){
		alert('Please complete the Address field. Thank You\!');
		which.requiredaddress.focus();
		return false;
	}
	if (which.requiredcity.value == ""){
		alert('Please complete the City field. Thank You\!');
		which.requiredcity.focus();
		return false;
	}
	if (which.requiredstate.value == ""){
		alert('Please complete the State field. Thank You\!');
		which.requiredstate.focus();
		return false;
	}
	if (which.requiredzip_code.value == ""){
		alert('Please complete the Zip Code field. Thank You\!');
		which.requiredzip_code.focus();
		return false;
	}
	if (which.requiredcountry.value == ""){
		alert('Please complete the Country field. Thank You\!');
		which.requiredcountry.focus();
		return false;
	}
	if ((which.work_phone.value != "") && (isNaN(which.work_phone.value))){
		alert('Please complete the Work Phone field with numbers only. Thank You\!');
		which.work_phone.focus();
		return false;
	}
	if (which.home_phone.value != "" && (isNaN(which.home_phone.value))){
		alert('Please complete the Home Phone field with numbers only. Thank You\!');
		which.home_phone.focus();
		return false;
	}
	if (which.requireddates.value == ""){
		alert('Please complete the Date field. Thank You\!');
		which.requireddates.focus();
		return false;
	} else {
		if (!CheckDate2(which.requireddates)){
			return false;
		}			
	}
	if (which.nights.value != "" && (isNaN(which.nights.value))){
		alert('Please complete the Nights field with numbers only. Thank You\!');
		which.nights.focus();
		return false;
	}
	if (which.requiredproperty_city.value == "1791" || which.requiredproperty_city.value == ""){
		alert('Please complete the Location field. Thank You\!');
		which.requiredproperty_city.focus();
		return false;
//	} else {
//		if (which.property_city.value == "880" || which.property_city.value == ""){
//			alert('Please complete the Location field. Thank You\!');
//			which.property_city.focus();
//			return false;
//		}
	} 
	
	if (which.comments.value == ""){
		alert('Please complete the Comment field. Thank You\!');
		which.comments.focus();
		return false;
	} else {
		var fcomments = trimString(which.comments)
		if (fcomments == ""){
			alert('Please complete the Comment field. Thank You\!');
			which.comments.focus();
			return false;
		}
	}	

 	if (which.requiredcomm.value == ""){
		alert('Please complete the Comment field. Thank You\!');
		which.requiredcomm.focus();
		return false;
	} else {
		return true;
	}
}

//Date Validation - formatting
function FormatDate(i, delKey,direction) {
  if (i.value.length < 10) {
  	if (delKey!=9) { //tab
	  	if(delKey!=8 && delKey!=46 && delKey!=16 &&  !(delKey>36 && delKey<41)){ //if the delete, backspace, shift, are not the keys that caused the keyup event.
  			var fieldLen = i.value.length
   			if ((delKey >= 48 && delKey <= 57) || (delKey >= 96 && delKey <=105)) {
   				if (fieldLen == 2 || fieldLen == 5) {
      				i.value = i.value + "/";
		     	}
   			} else {
   				if (direction == "up") {
     				if (i.value.length == 0) {
      					i.value = ""
	     			} else {
		      			i.value = i.value.substring(0,i.value.length-1)
	   				}
    			}
	 		}
  			i.focus()
	  	}
 	} else {
 		if (direction == "down") {
	 		CheckDate2(i)
  		}
  	}
 }
}

function CheckDate2(THISDATE) {
	var err=0
	a=THISDATE.value
	if (a.length != 10) err=1
	b = a.substring(0, 2)// month
	c = a.substring(2, 3)// '/'
	d = a.substring(3, 5)// day
	e = a.substring(5, 6)// '/'
	f = a.substring(6, 10)// year
	if (b<1 || b>12) err = 1
	if (d<1 || d>31) err = 1
	if (f<1900) err = 1
	if (b==4 || b==6 || b==9 || b==11){
		if (d==31) err=1
	}
	if (b==2){
		var g=parseInt(f/4)
		if (isNaN(g)) {
			err=1
		}
		if (d>29) err=1
		if (d==29 && ((f/4)!=parseInt(f/4))) err=1
	}
	if (err==1) {
		alert(THISDATE.value + ' is not a valid date. Please re-enter.');
		THISDATE.value = "";
		THISDATE.focus();
		return false;
	} else {
	  return true;
	}
}
				
function ValidateSearch(thisdoc) {
	var pass = true;
	var searchCity = thisdoc.City;
	var searchstate = thisdoc.state;
	var searchLocation = thisdoc.num
	
	if (searchCity.value == "" && searchstate.value == "" && searchLocation.value == ""){
		alert("Please enter a city, state or location #.");
		searchCity.focus;
		pass = false;
		return (false);
	}

	if (isNaN(searchLocation.value)) {
		alert("Location # must be a number");
		searchLocation.focus;
		pass = false;
		return (false);
	}

	if (pass) {
	ValidateDateSearch(thisdoc);
	return (false);
	}

}

function isEmail(argvalue) {

  if (argvalue.indexOf(" ") != -1){
    alert("Please format your email like yourname@yourisp.com or yourscreenname@aol.com");
    return false;
  }
  else if (argvalue.indexOf("@") == -1){
    alert("Please format your email like yourname@yourisp.com or yourscreenname@aol.com");
    return false;
  }
  else if (argvalue.indexOf("@") == 0){
    alert("Please format your email like yourname@yourisp.com or yourscreenname@aol.com");
    return false;
  }
  else if (argvalue.indexOf("@") == (argvalue.length-1)){
    alert("Please format your email like yourname@yourisp.com or yourscreenname@aol.com");
    return false;
  }

  arrayString = argvalue.split("@");
// var retSize = customSplit(argvalue, "@", "arrayString");

  if (arrayString[1].indexOf(".") == -1){
    alert("Please format your email like yourname@yourisp.com or yourscreenname@aol.com");
    return false;
  }
  else if (arrayString[1].indexOf(".") == 0){
    alert("Please format your email like yourname@yourisp.com or yourscreenname@aol.com");
    return false;
  }
  else if (arrayString[1].charAt(arrayString[1].length-1) == "."){
    alert("Please format your email like yourname@yourisp.com or yourscreenname@aol.com");
    return false;
  }

  return true;

}


function getQueryStringValue(key, default_) {
	if (default_ == null) default_ = "";
	key = key.replace(/[\[]/, "\\\[").replace(/[\]]/, "\\\]");
	var regex = new RegExp("[\\?&]" + key + "=([^&#]*)");
	var qs = regex.exec(window.location.href);
	if (qs == null)
		return default_;
	else
		return qs[1];
} 

function SetDropDownSelected(dropdownobj, value, text) {
	try {
		if (dropdownobj) {
			var index = -1;
			for (i = 0; i < dropdownobj.options.length; i++) {
				if (dropdownobj.options[i].value == value) {
					index = i;
					break;
				}
			}
			if (index > -1)
				dropdownobj.selectedIndex = index;
			else {
				//add item to dropdownlist and select it
				dropdownobj.selectedIndex = index;
			}
		}
	} catch (e) {

	}
}
function GetControlByName(tagname, name) {
	var controlList = document.getElementsByTagName(tagname);
	var control;

	for (i = 0; i < controlList.length; i++) {
		control = controlList[i];
		if (control.name.indexOf(name) == (control.name.length - name.length)) {
			return control;
		}
	}
	return null;
}

function GetDotNetElementByServerId(formName,elementId){
  var elem;
  var mainForm=document.forms[formName];
  if(mainForm!=undefined){
    for(i=0;i<mainForm.elements.length;i++){
      id=mainForm.elements[i].id;
      //id of the ser
      if(id.indexOf(elementId)==(id.length-elementId.length)){
        elem=document.getElementById(id);
        break;
      }
    }
  }
  return elem;
}

function getCookie(name) {
  var tC = unescape(document.cookie).split("; ");
  for (var i = tC.length - 1; i >= 0; i--) {
  var x = tC[i].split("=");
  if (name == x[0]) return unescape(x[1]);}
  return "";
}

function Set_Cookie( name, value, expires, path, domain, secure ) {
  // set time, it's in milliseconds
  var today = new Date();
  today.setTime( today.getTime() );

  /*
  if the expires variable is set, make the correct 
  expires time, the current script below will set 
  it for x number of days, to make it for hours, 
  delete * 24, for minutes, delete * 60 * 24
  */
  if ( expires )  {
    expires = expires * 1000 * 60 * 60 * 24;
  }
  var expires_date = new Date( today.getTime() + (expires) );

  document.cookie = name + "=" +escape( value ) +
  ( ( expires ) ? ";expires=" + expires_date.toGMTString() : "" ) + 
  ( ( path ) ? ";path=" + path : "" ) +
  ((secure) ? ";secure" : "");
  //( ( domain ) ? ";domain=" + domain : "" ) +
 }

 function getCookieSubvalue(cookieName, subcookieName) {
 	var tC = unescape(document.cookie).split("; ");
 	for (var i = tC.length - 1; i >= 0; i--) {
 		var cookieVal = tC[i];
 		var index = cookieVal.indexOf("=");
 		if (index > 0) {
 			var name = cookieVal.substr(0, index);
 			var val = cookieVal.substr(index + 1, cookieVal.length - index - 1);
 			if (name == cookieName) {
 				var subCookList = val.split("&");
 				for (var i = subCookList.length - 1; i >= 0; i--) {
 					var sc = subCookList[i].split("=");
 					if (subcookieName.toLowerCase() == sc[0].toLowerCase()) return unescape(sc[1]);
 				}
 			}
 		}
 	}
 	return "";
 }

//------------------------------------------------------------------------
//PREVIOUSLY VIEWED PROPERTIES DISPLAY
var MAX_NUMBER_OF_MOTS = "5";
var COOKIE_NAME = "M6PreviouslyViewed";
var SEPARATOR = "|:|";
var MOTS_SEPARATOR = "|;|";

//motNumber and motName are set in global file
function DisplayPreviouslyViewedMotels() {
	cookieValue = getCookie(COOKIE_NAME);
	if (cookieValue != "" && cookieValue != undefined) {
		var motsList = cookieValue.split(MOTS_SEPARATOR);
		if (motsList.length > 0) {
			document.write("<tr>");
			document.write("<td valign=\"top\">&nbsp;</td>");
			document.write("<td valign=\"top\" class=\"panelSidebarSub prevLoc\">");
			document.write("<div class=\"prevTitle\">Recently Viewed Locations</div>");
			for (i = 0; i < motsList.length; i++) {
				motInfo = motsList[i].split(SEPARATOR);
				if (motInfo.length > 1) {
					document.write("<div class=\"prv\"><a href=\"/reservations/motel_detail.aspx?num=" + motInfo[1] + "\">" + motInfo[0] + "</a></div>");
				}
			}
			document.write("</div>");
			document.write("</td>");
			document.write("</tr>");
		}
	}
}

function SaveMotel(motNumber, motName) {
	var cookieString = "";
	var motCount = 1;
	var existingCookieVal = getCookie(COOKIE_NAME);
	if (motNumber != "" && motName != "") {
		cookieString = motName + SEPARATOR + motNumber;
	}
	if (existingCookieVal != "") {
		motsList = existingCookieVal.split(MOTS_SEPARATOR);
		for (i = 0; i < motsList.length; i++) {
			mot = motsList[i];
			motInfo = mot.split(SEPARATOR);
			if (motInfo.length == 2) {
				if (motInfo[1] != motNumber && motCount < MAX_NUMBER_OF_MOTS) {
					cookieString = cookieString + MOTS_SEPARATOR + mot;
					motCount = motCount + 1;
				}
			}
		}
	}
	Set_Cookie(COOKIE_NAME, cookieString, 0, "/", "", false);
	return cookieString;
}
//AUTOCOMPLETE
function SetDirtyFlag(which) {
	var flag = document.getElementById(which);
	if (which) which.value = "1";
}
function CitySelected_ASP(source, eventArgs) {
	try {
		var cityTB = document.getElementById("city");
		var stateDDL = document.getElementById("state");
		var text = eventArgs.get_text();
		var value = eventArgs.get_value();
		var valueArray = value.split(":")
		if (stateDDL != undefined) SetDropDownSelected(stateDDL, valueArray[1], valueArray[5]);
		if (cityTB != undefined) cityTB.value = valueArray[0];
	} catch (e) {
	}
}
function CitySelected_UseName(source, eventArgs) {
	try {
		var cityTB = GetControlByName("input", "$City"); //document.getElementById("City");
		var stateDDL = GetControlByName("select", "$states$state"); //document.getElementById("statedropdown_state");
		var coDDL = GetControlByName("select", "$searchCtrl$Co");
		UpdateCityFromAutoComplete(cityTB, stateDDL, coDDL,eventArgs)
	} catch (e) {
		
	}
}
function ClearAutoCompleteHiddenField() {
	var lon2 = document.getElementById("acLngFrom");
	var lat2 = document.getElementById("acLatFrom");
	var display2 = document.getElementById("acNameFrom");
	var dirty2 = document.getElementById("acDirtyFrom");
	var lon = document.getElementById("acLng");
	var lat = document.getElementById("acLat");
	var display = document.getElementById("acName");
	var dirty = document.getElementById("acDirty");
	var cityHidden = document.getElementById("acCityHidden");
	var stateHidden = document.getElementById("acStateHidden");
	var countryHidden = document.getElementById("acCountryHidden");
	if (lon) lon.value = "";
	if (lat) lat.value = "";
	if (display) display.value = "";
	if (display2) display2.value = "";
	if (lon2) lon2.value = "";
	if (lat2) lat2.value = "";
	if (dirty) dirty.value = "";
	if (dirty2) dirty2.value = "";
	if (stateHidden) stateHidden.value = "";
	if (countryHidden) countryHidden.value = "";
	if (cityHidden) cityHidden.value = "";
}
function CitySelected_TPDestine(source, eventArgs) {
	try {
		var cityTB = GetControlByName("input", "$bodyPH$destineCity");
		var stateDDL = GetControlByName("select", "$destineState$state");
		var coDDL = GetControlByName("select", "$destineCo$country");
		UpdateCityFromAutoComplete(cityTB, stateDDL, coDDL,eventArgs);
	} catch (e) {
	}
}
function CitySelected_TPFrom(source, eventArgs) {
	try {
		
		var cityTB = GetControlByName("input", "$fromCity");
		var stateDDL = GetControlByName("select", "$fromStates$state");
		var coDDL = GetControlByName("select", "$fromCo$country");
		UpdateCityFromAutoComplete(cityTB, stateDDL, coDDL,eventArgs)
	} catch (e) {
	}
}
function CitySelected(source, eventArgs) {
	try {
		var cityTB = GetControlByName("input", "$City");
		var stateDDL = GetControlByName("select","$states$state");
		var coDDL = GetControlByName("select", "$searchCtrl$Co");
		UpdateCityFromAutoComplete(cityTB, stateDDL, coDDL,eventArgs)
	} catch (e) {
	}
}
function UpdateCityFromAutoComplete(city, state, coDDL, eventArgs) {
	try {
		var text = eventArgs.get_text();
		var value = eventArgs.get_value();
		var lon = document.getElementById("acLng");
		var lat = document.getElementById("acLat");
		var display = document.getElementById("acName");
		var valueArray = value.split(":")
		var cityHidden = document.getElementById("acCityHidden");
		var stateHidden = document.getElementById("acStateHidden");
		var countryHidden = document.getElementById("acCountryHidden");
		var countryCode = 244;
		if (valueArray[2] == "CA") countryCode = 39;
		if (state != undefined) SetDropDownSelected(state, valueArray[1], valueArray[5]);
		if (coDDL != undefined) SetDropDownSelected(coDDL, countryCode, valueArray[2]);
		if (lon != undefined) lon.value = valueArray[3];
		if (lat != undefined) lat.value = valueArray[4];
		if (display != undefined) display.value = text;
		if (city != undefined) city.value = valueArray[0];
		if (stateHidden != undefined) stateHidden.value = valueArray[1];
		if (countryHidden != undefined) countryHidden.value = countryCode;
		if (cityHidden != undefined) cityHidden.value = valueArray[0];
	} catch (e) {
	//alert(e.message);
	}
}

function updateAttractionContextKey() {
	var attDL = GetControlByName("select", "$searchCtrl$atttype");
	if (attDL) {
		var attAutoComplete = $find('ATTAutoCompleteEx');
		attAutoComplete.set_contextKey(attDL[attDL.selectedIndex].value);
	}
}
function DisplayAttraction(source, eventArgs) {
	try {
		var text = eventArgs.get_text();
		var value = eventArgs.get_value();
		var attractionTB = GetControlByName("input", "$addy");
		var attDDL = GetControlByName("select", "$searchCtrl$atttype");
		var stateDDL = GetControlByName("select", "$states$state");
		var coDDL = GetControlByName("select", "$searchCtrl$Co");
		var lon = document.getElementById("acLng");
		var lat = document.getElementById("acLat");
		var display = document.getElementById("acName");
		var attID = document.getElementById("acID");
		var dirty = document.getElementById("acDirty");
		var stateHidden = document.getElementById("acStateHidden");
		var countryHidden = document.getElementById("acCountryHidden");
		var valueArray = value.split(":");
		var countryCode = 244; 
		if (valueArray[2] == "CA") countryCode = 39;
		
		if (lon!=undefined) lon.value = valueArray[3];
		if (lat != undefined) lat.value = valueArray[4];
		if (display != undefined) display.value = text;
		if (attractionTB) attractionTB.value = valueArray[0];
		if (stateDDL && valueArray[1]!="") SetDropDownSelected(stateDDL, valueArray[1],valueArray[6]);
		if (attDDL) SetDropDownSelected(attDDL, valueArray[5].replace(" ", ""));
		if (coDDL) SetDropDownSelected(coDDL, countryCode,valueArray[2]);
		if (dirty) dirty.value = "";
		if (attID) attID.value = valueArray[7];
		if (stateHidden) stateHidden.value = valueArray[1];
		if (countryHidden) countryHidden.value = countryCode;		
	} catch (e) {
	//alert(e.message);
	}
}

function getQueryStringValue(key, default_) {
	if (default_ == null) default_ = "";
	key = key.replace(/[\[]/, "\\\[").replace(/[\]]/, "\\\]");
	var regex = new RegExp("[\\?&]" + key + "=([^&#]*)");
	var qs = regex.exec(window.location.href);
	if (qs == null)
		return default_;
	else
		return qs[1];
} 
function SetTACookie(URL,IMG,TA){
		if (document.images) {
			if(URL!="" && TA!=""){
				IMG.src = URL + TA; 
			}
		}
}

//GOING6
var m6img= new Image(1, 1);
var s6img= new Image(1, 1);
function setGoin6Cookie() {
	var qsVal = getQueryStringValue("TA", ""); //TA001028
	var msURL="http://www.motel6.com/ms/enter-m6.do?Goin6=";
	var ssURL="http://www.staystudio6.com/ss/login-m6.do?Goin6=";
	SetTACookie(msURL,m6img,qsVal);
	SetTACookie(ssURL,s6img,qsVal);
}

//BROWSER DETECTION...will add a more complete set of functions later
function GetIEVersion() {
	return GetBrowserVersionHelper(/MSIE (\d+\.\d+);/);
}
function GetFirefoxVersion() {
	return GetBrowserVersionHelper(/Firefox[\/\s](\d+\.\d+)/);
}
function GetOperaVersion() {
	return GetBrowserVersionHelper(/Opera[\/\s](\d+\.\d+)/);
}
function GetBrowserVersionHelper(regex) {
	if (regex.test(navigator.userAgent)) 
		return new Number(RegExp.$1) // capture x.x portion and store as a number
	else
		return -1;
}