/***********************************************
* Switch Content script- © Dynamic Drive (www.dynamicdrive.com)
* This notice must stay intact for legal use. Last updated April 2nd, 2005.
* Visit http://www.dynamicdrive.com/ for full source code
***********************************************/

var enablepersist="on" //Enable saving state of content structure using session cookies? (on/off)
var collapseprevious="no" //Collapse previously open content when opening present? (yes/no)

var contractsymbol='- ' //HTML for contract symbol. For image, use: <img src="whatever.gif">
var expandsymbol='+ ' //HTML for expand symbol.


if (document.getElementById){
document.write('<style type="text/css">')
document.write('.switchcontent{display:none;}')
document.write('</style>')
}

function getElementbyClass(rootobj, classname){
var temparray=new Array()
var inc=0
var rootlength=rootobj.length
for (i=0; i<rootlength; i++){
if (rootobj[i].className==classname)
temparray[inc++]=rootobj[i]
}
return temparray
}

function sweeptoggle(ec){
var thestate=(ec=="expand")? "block" : "none"
var inc=0
while (ccollect[inc]){
ccollect[inc].style.display=thestate
inc++
}
revivestatus()
}


function contractcontent(omit){
var inc=0
while (ccollect[inc]){
if (ccollect[inc].id!=omit)
ccollect[inc].style.display="none"
inc++
}
}

function expandcontent(curobj, cid){
var spantags=curobj.getElementsByTagName("SPAN")
var showstateobj=getElementbyClass(spantags, "showstate")
if (ccollect.length>0){
if (collapseprevious=="yes")
contractcontent(cid)
document.getElementById(cid).style.display=(document.getElementById(cid).style.display!="block")? "block" : "none"
if (showstateobj.length>0){ //if "showstate" span exists in header
if (collapseprevious=="no")
showstateobj[0].innerHTML=(document.getElementById(cid).style.display=="block")? contractsymbol : expandsymbol
else
revivestatus()
}
}
}

function revivecontent(){
contractcontent("omitnothing")
selectedItem=getselectedItem()
selectedComponents=selectedItem.split("|")
for (i=0; i<selectedComponents.length-1; i++)
document.getElementById(selectedComponents[i]).style.display="block"
}

function revivestatus(){
var inc=0
while (statecollect[inc]){
if (ccollect[inc].style.display=="block")
statecollect[inc].innerHTML=contractsymbol
else
statecollect[inc].innerHTML=expandsymbol
inc++
}
}

function get_cookie(Name) { 
var search = Name + "="
var returnvalue = "";
if (document.cookie.length > 0) {
offset = document.cookie.indexOf(search)
if (offset != -1) { 
offset += search.length
end = document.cookie.indexOf(";", offset);
if (end == -1) end = document.cookie.length;
returnvalue=unescape(document.cookie.substring(offset, end))
}
}
return returnvalue;
}

function getselectedItem(){
if (get_cookie(window.location.pathname) != ""){
selectedItem=get_cookie(window.location.pathname)
return selectedItem
}
else
return ""
}

function saveswitchstate(){
var inc=0, selectedItem=""
while (ccollect[inc]){
if (ccollect[inc].style.display=="block")
selectedItem+=ccollect[inc].id+"|"
inc++
}

document.cookie=window.location.pathname+"="+selectedItem
}

function do_onload(){
uniqueidn=window.location.pathname+"firsttimeload"
var alltags=document.all? document.all : document.getElementsByTagName("*")
ccollect=getElementbyClass(alltags, "switchcontent")
statecollect=getElementbyClass(alltags, "showstate")
if (enablepersist=="on" && ccollect.length>0){
document.cookie=(get_cookie(uniqueidn)=="")? uniqueidn+"=1" : uniqueidn+"=0" 
firsttimeload=(get_cookie(uniqueidn)==1)? 1 : 0 //check if this is 1st page load
if (!firsttimeload)
revivecontent()
}
if (ccollect.length>0 && statecollect.length>0)
revivestatus()
}

if (window.addEventListener)
window.addEventListener("load", do_onload, false)
else if (window.attachEvent)
window.attachEvent("onload", do_onload)
else if (document.getElementById)
window.onload=do_onload

if (enablepersist=="on" && document.getElementById)
window.onunload=saveswitchstate

function preloader(x,description){
	document.getElementById("bigPhotoContainer").src= x;
    if(description != "")
    {
    document.getElementById("caption").innerHTML = description;	
    }
    else{
    document.getElementById("caption").innerHTML = "";     	
    }
}
// flash detection
if(typeof deconcept=="undefined")					{var deconcept=new Object();}
if(typeof deconcept.util=="undefined")				{deconcept.util=new Object();}
if(typeof deconcept.swfObjectUtil=="undefined")		{deconcept.swfObjectUtil=new Object();}
deconcept.swfObject=function(_1,id,w,h,_5,_7,_8,_9,_a,_b)	{if(!document.getElementById){return;}this.DETECT_KEY=_b?_b:"detectflash";this.skipDetect=deconcept.util.getRequestParameter(this.DETECT_KEY);this.params=new Object();this.variables=new Object();this.attributes=new Array();if(_1){this.setAttribute("swf",_1);}if(id){this.setAttribute("id",id);}if(w){this.setAttribute("width",w);}if(h){this.setAttribute("height",h);}if(_5){this.setAttribute("version",new deconcept.PlayerVersion(_5.toString().split(".")));}this.installedVer=deconcept.swfObjectUtil.getPlayerVersion();var q=_8?_8:"high";this.addParam("quality",q);this.setAttribute("useExpressInstall",_7);this.setAttribute("doExpressInstall",false);var _d=(_9)?_9:window.location;this.setAttribute("xiRedirectUrl",_d);this.setAttribute("redirectUrl","");if(_a){this.setAttribute("redirectUrl",_a);}};
deconcept.swfObject.prototype=
{
	setAttribute:function(_e,_f)		{this.attributes[_e]=_f;},
	getAttribute:function(_10)		{return this.attributes[_10];},
	addParam:function(_11,_12)		{this.params[_11]=_12;},
	getParams:function()			{return this.params;},
	addVariable:function(_13,_14)	{this.variables[_13]=_14;},
	getVariable:function(_15)		{return this.variables[_15];},
	getVariables:function()			{return this.variables;},
	getVariablePairs:function()		{var _16=new Array();var key;var _18=this.getVariables();for(key in _18){_16.push(key+"="+_18[key]);}return _16;},
	getSWFHTML:function()
	{
		var _19="";
		if(navigator.plugins&&navigator.mimeTypes&&navigator.mimeTypes.length)
		{
			if(this.getAttribute("doExpressInstall")){this.addVariable("MMplayerType","PlugIn");}
			_19="<embed type=\"application/x-shockwave-flash\" src=\""+this.getAttribute("swf")+"\" width=\""+this.getAttribute("width")+"\" height=\""+this.getAttribute("height")+"\"";
			_19+=" id=\""+this.getAttribute("id")+"\" name=\""+this.getAttribute("id")+"\" ";
			var _1a=this.getParams();
			for(var key in _1a){_19+=[key]+"=\""+_1a[key]+"\" ";}
			var _1c=this.getVariablePairs().join("&");
			if(_1c.length>0){_19+="flashvars=\""+_1c+"\"";}_19+="/>";
		}
		else
		{
			if(this.getAttribute("doExpressInstall")){this.addVariable("MMplayerType","ActiveX");}
			_19="<object id=\""+this.getAttribute("id")+"\" classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\" width=\""+this.getAttribute("width")+"\" height=\""+this.getAttribute("height")+"\">";
			_19+="<param name=\"movie\" value=\""+this.getAttribute("swf")+"\" />";
			var _1d=this.getParams();
			for(var key in _1d){_19+="<param name=\""+key+"\" value=\""+_1d[key]+"\" />";}
			var _1f=this.getVariablePairs().join("&");
			if(_1f.length>0){_19+="<param name=\"flashvars\" value=\""+_1f+"\" />";}_19+="</object>";
		}
		return _19;
	},
	write:function(_20)
	{
		if(this.getAttribute("useExpressInstall"))
		{
			var _21=new deconcept.PlayerVersion([6,0,65]);
			if(this.installedVer.versionIsValid(_21)&&!this.installedVer.versionIsValid(this.getAttribute("version")))
			{
				this.setAttribute("doExpressInstall",true);
				this.addVariable("MMredirectURL",escape(this.getAttribute("xiRedirectUrl")));
				document.title=document.title.slice(0,47)+" - Flash Player Installation";
				this.addVariable("MMdoctitle",document.title);
			}
		}
		if(this.skipDetect||this.getAttribute("doExpressInstall")||this.installedVer.versionIsValid(this.getAttribute("version")))	{var n=(typeof _20=="string")?document.getElementById(_20):_20;n.innerHTML=this.getSWFHTML();return true;}
		else											{if(this.getAttribute("redirectUrl")!=""){document.location.replace(this.getAttribute("redirectUrl"));}}
		return false;
	}
};
deconcept.swfObjectUtil.getPlayerVersion=function()					{var _23=new deconcept.PlayerVersion([0,0,0]);if(navigator.plugins&&navigator.mimeTypes.length){var x=navigator.plugins["Shockwave Flash"];if(x&&x.description){_23=new deconcept.PlayerVersion(x.description.replace(/([a-zA-Z]|\s)+/,"").replace(/(\s+r|\s+b[0-9]+)/,".").split("."));}}else{try{var axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");}catch(e){try{var axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");_23=new deconcept.PlayerVersion([6,0,21]);axo.AllowScriptAccess="always";}catch(e){if(_23.major==6){return _23;}}try{axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash");}catch(e){}}if(axo!=null){_23=new deconcept.PlayerVersion(axo.GetVariable("$version").split(" ")[1].split(","));}}return _23;};
deconcept.PlayerVersion=function(_27)							{this.major=_27[0]!=null?parseInt(_27[0]):0;this.minor=_27[1]!=null?parseInt(_27[1]):0;this.rev=_27[2]!=null?parseInt(_27[2]):0;};
deconcept.PlayerVersion.prototype.versionIsValid=function(fv){if(this.major<fv.major)	{return false;}if(this.major>fv.major){return true;}if(this.minor<fv.minor){return false;}if(this.minor>fv.minor){return true;}if(this.rev<fv.rev){return false;}return true;};
deconcept.util={getRequestParameter:function(_29)					{var q=document.location.search||document.location.hash;if(q){var _2b=q.substring(1).split("&");for(var i=0;i<_2b.length;i++){if(_2b[i].substring(0,_2b[i].indexOf("="))==_29){return _2b[i].substring((_2b[i].indexOf("=")+1));}}}return "";}};
deconcept.swfObjectUtil.cleanupSWFs=function()					{if(window.opera||!document.all){return;}var _2d=document.getElementsByTagName("OBJECT");for(var i=0;i<_2d.length;i++){_2d[i].style.display="none";for(var x in _2d[i]){if(typeof _2d[i][x]=="function"){_2d[i][x]=function(){};}}}};
deconcept.swfObjectUtil.prepUnload=function()						{__flash_unloadHandler=function(){};__flash_savedUnloadHandler=function(){};if(typeof window.onunload=="function"){var _30=window.onunload;window.onunload=function(){deconcept.swfObjectUtil.cleanupSWFs();_30();};}else{window.onunload=deconcept.swfObjectUtil.cleanupSWFs;}};
if(typeof window.onbeforeunload=="function")					{var oldBeforeUnload=window.onbeforeunload;window.onbeforeunload=function(){deconcept.swfObjectUtil.prepUnload();oldBeforeUnload();};}
else													{window.onbeforeunload=deconcept.swfObjectUtil.prepUnload;}
if(Array.prototype.push==null)								{Array.prototype.push=function(_31){this[this.length]=_31;return this.length;};}
var getQueryParamValue=deconcept.util.getRequestParameter;			// swfObject 1.4.4 http://blog.deconcept.com/swfObject/	
var FlashObject=deconcept.swfObject;
var swfObject=deconcept.swfObject;
// end flash detection	
/* ---------------------------- */
/* XMLHTTPRequest Enable 		*/
/* ---------------------------- */
function createObject() {
	var request_type;
	var browser = navigator.appName;
	if(browser == "Microsoft Internet Explorer"){
	request_type = new ActiveXObject("Microsoft.XMLHTTP");
	}else{
		request_type = new XMLHttpRequest();
	}
		return request_type;
}

var http = createObject();

/* -------------------------- */
/* SEARCH					 */
/* -------------------------- */
function autosuggest_city() {
q = document.getElementById('search-city').value;
// Set te random number to add to URL request
nocache = Math.random();
http.open('get', '/accommodations_and_venues/suggest.php?q='+q+'&nocache = '+nocache);
http.onreadystatechange = autosuggestReply;
http.send(null);
}
function autosuggestReply() {
if(http.readyState == 4){
	var response = http.responseText;
	e = document.getElementById('city_results');
	if(response!=""){
		e.innerHTML=response;
		e.style.display="block";
	} else {
		e.style.display="none";
	}
}
}

/* -------------------------- */
/* SEARCH					 */
/* -------------------------- */
function autosuggest_hotel() {
q2 = document.getElementById('search-hotel').value;
// Set te random number to add to URL request
nocache = Math.random();
http.open('get', '/accommodations_and_venues/suggest.php?q2='+q2+'&nocache = '+nocache);
http.onreadystatechange = autosuggestReply2;
http.send(null);
}
function autosuggestReply2() {
if(http.readyState == 4){
	var response = http.responseText;
	f = document.getElementById('hotel_results');
	if(response!=""){
		f.innerHTML=response;
		f.style.display="block";
	} else {
		f.style.display="none";
	}
}
}

function findPosY(obj,ele)
{
	var curtop = 0;
	if (obj.offsetParent)
	{
		while (obj.offsetParent)
		{
			curtop += obj.offsetTop
			obj = obj.offsetParent;
		}
	}
	else if (obj.y){
		curtop += obj.y;
	}
	
	var browser=window.navigator.appName;
	
	if(browser == "Microsoft Internet Explorer"){
		document.getElementById(ele).style.top=curtop+20;
	}
	else{
		var top=curtop+20;
		document.getElementById(ele).style.top=top+'px';
	}
	
	return curtop;
}
/* -------------------------- */
/* HOME PAGE SLIDESHOW SWAPS  */
/* -------------------------- */
function homepage_swaps(spotid)
{

    //Associate selected adv. represented by spotid 
	//with the media type the adv. is using on meetings.visitnh.gov
	media_type_adv_1 = 'video'; //Mill Falls
	media_type_adv_2 = 'video'; // Balsams
	media_type_adv_3 = 'video'; // love it
	media_type_adv_4 = 'video'; // Mountain View Grand	
	current_media_type = eval('media_type_adv_'+spotid);

	document.getElementById('hmbg1').style.backgroundImage = 'url(/images/shell/home_selected_slide_empty.gif)';
	document.getElementById('hmbg2').style.backgroundImage = 'url(/images/shell/home_selected_slide_empty.gif)';
	document.getElementById('hmbg3').style.backgroundImage = 'url(/images/shell/home_selected_slide_empty.gif)';
	document.getElementById('hmbg4').style.backgroundImage = 'url(/images/shell/home_selected_slide_empty.gif)';
	document.getElementById('hmbg'+spotid).style.backgroundImage = 'url(/images/shell/home_selected_slide.gif)';
	document.getElementById('propertylarge').src = '/images/photo_gallery/advertiser/adv'+spotid+'.jpg';
	document.getElementById('propertyname1').style.display = 'none';
	document.getElementById('propertyname2').style.display = 'none';
	document.getElementById('propertyname3').style.display = 'none';
	document.getElementById('propertyname4').style.display = 'none';
	document.getElementById('propertyname'+spotid).style.display = 'inline';
	document.getElementById('propertylink1').style.display = 'none';
	document.getElementById('propertylink2').style.display = 'none';
	document.getElementById('propertylink3').style.display = 'none';
	document.getElementById('propertylink4').style.display = 'none';
	document.getElementById('propertylink'+spotid).style.display = 'inline';
	//document.getElementById('propertylink').innerHTML = '<a href="#videoslide" onclick="popwindow(\'/slideshow.php?id='+spotid+'\');" class="home_tab_more">Learn more</a>';
	
	if(current_media_type=='video'){
		$watch_it_image = '<img src="/images/shell/home_watchvideo.gif" border="0" alt="Watch Video" />';
	}
	if(current_media_type=='slides'){
		$watch_it_image = '<img src="/images/shell/home_watchslideshow.gif" border="0" alt="Watch Slides" />';
	}
	document.getElementById('watchlink').innerHTML = '<a href="#videoslide" onclick="popwindow(\'/slideshow.php?id='+spotid+'\');">'+$watch_it_image+'</a>';	
}

function openWin(theURL,winName,features) {
	nWin = window.open(theURL,winName,features);
}

function openPropertyVideo(width,height,file)
{
	//Note: the extra width and height that is addded here in the js line below and makes the property profile video window bigger as the client requested on Feb 02, 2010 
	openWin("/images/property_video.php?width="+width+"&height="+height+"&file="+file+"","ViewVideo","resizable=yes,scrollbars=no,width="+(width+320)+",height="+(height+310)+"");
}

function cmsZoom(pageSource, pageName, theHeight, theWidth)
{
	showScrollbars = '';
	leWindow = window.open(pageSource, pageName, 'width='+theWidth+',height='+theHeight+','+showScrollbars+'resizable'); 
	leWindow.resizeTo(theWidth,theHeight);
	leWindow.focus();
}