// JavaScript Document

sfHover = function() {
	var sfEls = document.getElementById("nav").getElementsByTagName("LI");
	
	for (var i=0; i<sfEls.length; i++) {
		sfEls[i].onmouseover=function() {
			this.className+=" sfhover";
		
		}
		sfEls[i].onmouseout=function() {
			this.className=this.className.replace(new RegExp(" sfhover\\b"), "");
		}
	}
}
if (window.attachEvent) window.attachEvent("onload", sfHover);

function setLeftNav(obj,inc){
	var nodeset = dojo.query(".floorplanNav");
	nodeset.removeClass("activeNav");
	var node = obj.parentNode;
	if(node){
		dojo.addClass(node,"activeNav");
		includePage(inc,"contentRight");
	}
}
function navOn(obj){
	var node = obj.parentNode;
	if(!dojo.hasClass(node,"activeNav")){
		dojo.addClass(obj,"navOver");
	}
}
function navOff(obj){
	var node = obj.parentNode;
	if(!dojo.hasClass(node,"activeNav")){
		dojo.removeClass(obj,"navOver");
	}
}
function animate_nav(select,height,obj) {
		var box = dojo.byId(select);
		var titles = dojo.query(".titleNav");
		var nodeset = dojo.query(".navGroup");
		if(box.style.display != "block"){
			//close all blocks
			titles.removeClass("openNav");
			nodeset.forEach(function(x){
				if(x.id != select && x.style.display == "block"){
					
					dojo.animateProperty({
							node : x,
							duration : 500,
							rate : 10,
							onEnd : function(){x.style.display = "none";},
							properties : {
							height : {start : x.style.height, end : '0'}
						}
					}).play();
				}
		
			});
			//open this block
			dojo.animateProperty({
				node : box,
				duration : 500,
				rate : 10,
				onBegin : function(){
						box.style.display = "block";
					},
				onEnd : function(){
						dojo.addClass(obj,"openNav");
						var linkObj = dojo.query("td.floorplanNav > a.first",box)[0]; 
						linkObj.onclick();
					},
				properties : {
					height : {start : '0', end : height}
				}
			}).play();
		}
	}
//grab loc and drop into cookie
function getLoc(){
	dojo.require("dojo.cookie"); 
	dojo.registerModulePath("com.mvci.client.util","../../com/mvci/client/util");
	dojo.require("com.mvci.client.util.FormsUtils");		
	//com.mvci.client.util.FormsUtils.enforceSSL();
	var queryStringList = com.mvci.client.util.FormsUtils.getParamsArray();
	var loc = queryStringList["LOC"];
	if (loc && loc != 'undefined')
	{			
		dojo.cookie("loc", loc, { expires: 1 });	
	}
}
function leaveSSL()
{	
	var fullURL = parent.document.URL;
	if((fullURL.indexOf("information.shtml") == -1)&&(fullURL.indexOf("ppc") == -1))
	{
		if(fullURL.substr(0,6)=="https:"){
			document.location="http:"+fullURL.substr(6,fullURL.length);
		}
	}
}
leaveSSL();

//360 tours
var VIEWER = null;
function AddPlayer(panoramaId,phi,theta,newMode)
{
	if (VIEWER && VIEWER != 'undefined'){
		VIEWER.destroy();
	}
	var map =
	{
		dimensions:
		{
		  mapWidth: 200,
		  mapHeight:300,
		  mapX:505,
		  mapY:0,
		  panoramaWidth:505,
		  panoramaHeight:300,
		  panoramaX:0,
		  panoramaY:0
		}
	};

	var view = 
	{
		panorama:
		{
		  id: panoramaId
		}, 
		lookDirection:
		{
		  phi: phi, 
		  theta: theta
		}
	};
	if(newMode){
		view.lookDirection = { yaw: phi, pitch: theta };
	}
	var customUI = new EveryScape.Viewer.CustomUI();
	customUI.hideActiveElementType(EveryScape.Viewer.ActiveElementType.POI);
	customUI.customizeIcon(EveryScape.Viewer.Icon.Panorama.Slink.Up, "http://www.marriottvacationclub.com/common/cms/mvc/everyscape/images/slinkup.png",{x:45,y:30});
	customUI.customizeIcon(EveryScape.Viewer.Icon.Panorama.Slink.Over, "http://www.marriottvacationclub.com/common/cms/mvc/everyscape/images/slinkover.png",{x:45,y:30});
	customUI.customizeIcon(EveryScape.Viewer.Icon.Panorama.Slink.Down, "http://www.marriottvacationclub.com/common/cms/mvc/everyscape/images/slinkdown.png",{x:45,y:30});  
	VIEWER = EveryScape.installViewer({container:"PlayerContainer", type: "FULL", map: map, ui: customUI}, view, {});
	VIEWER.hideMap();
}

//AJAX page include 
function getXmlHttpObject()
{
    if (typeof XMLHttpRequest != 'undefined') {
        return new XMLHttpRequest();
    }
    try {
        return new ActiveXObject("Msxml2.XMLHTTP");
    } catch (e) {
        try {
            return new ActiveXObject("Microsoft.XMLHTTP");
        } catch (e) {}
    }
    return false;
}
function addInclude()
{
		var wrapper=document.getElementById(include[2]);
		if(wrapper)
		{
			if(include[0] && !include[4])
			{
				if (include[0].readyState==4)
				{
					if(include[0].status==include[3])
					{
						document.getElementById(include[2]).innerHTML=include[0].responseText;
						include[0]=null;
						include[4]=true;
						var tour = dojo.byId("PlayerContainer");
						if(tour && tour != "undefined"){
							var script = dojo.attr(tour,"ref");
							eval(script);
						}
					}
				}
			}
		}
		else
		{
			include[0]=null;
			include[4]=true;
		}
}
var include = null;
/*	include array == [object / xmlHTTPrequest, string / URL of include, string / id of wrapper tag, int / response status code for success,boolean / has include been processed]  */
function includePage(inc_url,wrapper){
	include = new Array(getXmlHttpObject(),inc_url,wrapper,200,false);
	if(include[0]){
		include[0].onreadystatechange=addInclude;
		include[0].open("GET",include[1],true);
		include[0].send(null);
	}
}

