var lastDiv = "propdata";
var hideDivList = "accom amenities";
var propDivs = new Object;
var winbigpic = null;
var bigImgWidth = 400;
var bigImgHeight = 300;
var picDivWidth = (document.all)?79:77;
var galleryRows = 2;
var galleryVPcols = 5;
var currentScrollCol = 0;
var rateRows = 1;

//addEvent(window,"load",loadingFinished);

propDivs.propdata_nav = "propdata";
propDivs.accom_nav = "accom";
propDivs.amenities_nav = "amenities";
propDivs.gallery_nav = "";
var bigPicImgs = new Array;
function loadPics(pictype,picid,picurl,picalt,pictitle) {
	eval("bigPicImgs." + pictype + " = new Image()");
	eval("bigPicImgs." + pictype + ".picid = " + picid);
	eval("bigPicImgs." + pictype + ".src = \"" + picurl + "\"");
	eval("bigPicImgs." + pictype + ".alt = \"" + picalt + "\"");
	eval("bigPicImgs." + pictype + ".title = \"" + pictitle + "\"");
}

function bigpic_rawpopup(url, target, features) {
  if (isUndefined(features)) {
    features = _POPUP_FEATURES;
  }
  if (isUndefined(target)) {
    target = '_blank';
  }
  winbigpic = window.open(url, target, features);
  winbigpic.focus();
  return winbigpic;
}
function callAvol(AOcode){
	return function(e){
		avolPopup(AOcode);
	}
}
function callAvolRes(AOcode){
	return function(e){
		avolResPopup(AOcode);
	}
}
function stopLink(e) {
	var rf = true;
	if (!loaded) {
		if (document.all) {
			if (event.button == 1) {
				rf = false;
			}
		}
		else if (e.button == 1) {
			e.preventDefault();
			e.stopPropagation();
			rf =  false;
		}
		else if (e.which == 1) {
			e.preventDefault();
			e.stopPropagation();
			rf =  false;
		}
	}
	return rf;
}
function load_pano() {
	frames['panoFrame'].location.href = imageGalleryURL;
}
/*
var pixAnchors = getElementsByClass("showbig");
var tmpImg;
for (var i =  0; i<pixAnchors.length;i++) {
	tmpImglink = getAll("img",pixAnchors[i]);
	addEvent(tmpImglink,"click",stopLink);
}
addEvent(document,"mousedown",stopLink);
*/

function bigpic_popup(e) {
	var href = e.currentTarget.getAttribute('href');
	var varsarray = e.currentTarget.getAttribute('href').split('?')[1].split('&'); //array of query parms
	for (var i=0; i<varsarray.length; i++) {
		eval("var " + varsarray[i].split('=')[0] + " = '" + unescape(varsarray[i].split('=')[1].replace(/\+/g," "))+ "'");
	}
	picy = Number(picy) + 16;
	picx = Number(picx);
	if (winbigpic && !winbigpic.closed) {
		winbigpic.close();
	}
	var winprop = "resizable=no,width=" + picx + ",height=" + picy;
	bigpic_rawpopup(href,'bigpic',winprop);
}
function bigpic_test(obj) {
	var href = obj.getAttribute('href');
	var varsarray = href.split('?')[1].split('&'); //array of query parms
	for (var i=0; i<varsarray.length; i++) {
		eval("var " + varsarray[i].split('=')[0] + " = '" + unescape(varsarray[i].split('=')[1].replace(/\+/g," "))+ "'");
	}
	picy = Number(picy) + 16;
	picx = Number(picx);
	if (winbigpic && !winbigpic.closed) {
		winbigpic.close();
	}
	var winprop = "resizable=no,width=" + picx + ",height=" + picy;
	bigpic_rawpopup(href,'bigpic',winprop);
}
function hideit(objname){
	document.getElementById(objname).style.display="none";
//	alert(objname +" is " + document.getElementById(objname).style.display);
}	
function showit(objname){
	document.getElementById(objname).style.display="";
//	alert(objname +" is now " + document.getElementById(objname).style.display);
}	
function showGalleryScroll() {
	var pics = getElementsByClass("picture","div",document.getElementById("gallery"));
	var picCols = parseInt((pics.length/galleryRows) + (1-(1/galleryRows))); //no of cols in pics
	if (galleryVPcols >= picCols) {
		document.getElementById("scrolldiv").style.visibility = "hidden";
	}
	else {
		document.getElementById("scrolldiv").style.visibility = "visible";
		// check for left scroll available
		document.getElementById("leftscroll").style.visibility =  (currentScrollCol > 0) ? "visible":"hidden";
		// check for right scroll available
		document.getElementById("rightscroll").style.visibility =  ((currentScrollCol + galleryVPcols) < picCols) ? "visible":"hidden";
	}
}
function genGallery() {
	var pics = getElementsByClass("picture","div",document.getElementById("gallery"));
	var picCols = parseInt((pics.length/galleryRows) + (1-(1/galleryRows)));
	var newGalleryWidth = picCols * picDivWidth;
	// set new gallery width
	document.getElementById("gallery").style.width = newGalleryWidth + "px";
	showGalleryScroll(0);
}
function setCurrentNavTab(e) {
	var newTab = e.currentTarget;
	var oldTab = document.getElementById(currentNavTabID);
	remClass(oldTab,"currentTab");
	addClass(newTab,"currentTab",false);
	currentNavTabID = newTab.id;	
}
function setBigImg(newImgObj) {
	var src = newImgObj.getAttribute('src');
	// get true image size
	var testImg = new Image();
	testImg.src = src;
	var t_height = testImg.height;
	var t_width = testImg.width;
	// compute and apply scaling factors
	var factx = bigImgWidth / t_width;
	var facty = bigImgHeight / t_height;
	var fact = (factx < facty) ? factx : facty;
	var width = (fact > 1) ? t_width : fact * t_width;
	var height = (fact > 1) ? t_height : fact * t_height;
	//alert("old dimensions: " + t_width + " x " + t_height + "\nnew dimensions: " + width + " x " + height);
	// apply new attributes to big image
	var bigImage = document.getElementById("bigimgtag");
	bigImage.style.visibility = "hidden";
	bigImage.setAttribute('src',src);
	bigImage.setAttribute('width',width);
	bigImage.setAttribute('height',height);
	bigImage.setAttribute('alt',newImgObj.getAttribute('alt'));
	var newText = "";
	if (newImgObj.title) {
		newText = newImgObj.title;
	} 
	else {
		newText = newImgObj.getAttribute('alt');
	}
	if (document.all) {
		if (document.getElementById("bigimgcaption").hasChildNodes()) {
			document.getElementById("bigimgcaption").childNodes[0].nodeValue = newText;
		}
		else {
			var objNewText; 
			objNewText = document.createTextNode(newImgObj.getAttribute('alt'));
			document.getElementById("bigimgcaption").appendChild(objNewText);
		}
	}
	else {
		document.getElementById("bigimgcaption").childNodes[0] = newText;
	}
	bigImage.style.visibility = "visible";
}
function showbig(e) {
	if (loaded) {
		var thisImg = e.currentTarget;
		setBigImg(thisImg);
	}
	e.preventDefault();
	return false;
}
function showTabPic(e) {
	hide3cim();
	setCurrentNavTab(e);
	var thisTab = e.currentTarget;
	//get this tabs id
	var thisTabid = thisTab.id;
	//get picid for this tab
	var tabPicId;
	eval("tabPicId = " + thisTabid + "_pic;");
	if (tabPicId != 0) {
		//invoke this pic's onclick event handler which swaps pic
		var newTabImg = document.getElementById("pic_" + tabPicId);
		setBigImg(newTabImg);
	}
	//invoke showDiv to swap info display divs
	showDiv(eval("propDivs."+thisTabid));
	e.stopPropagation();
	e.preventDefault();
	return false;
}
function show3cim(e) {
	setCurrentNavTab(e);
	if (document.getElementById('panoFrame').src == "") {
		document.getElementById('panoFrame').src = imageGalleryURL;
	}
	var thisTab = e.currentTarget;
	//get this tabs id
	var thisTabid = thisTab.id;
	//hide info divs
	addClass(document.getElementById("info"),"hidediv",false);
	addClass(document.getElementById("proppics"),"hidediv",false);
	addClass(document.getElementById("prophead"),"hidediv",false);
//	addClass(document.getElementById("loadingmsg"),"hidediv",false);
	//show 3cim div
	remClass(document.getElementById("prophdr"),"hidediv");
	remClass(document.getElementById("nav"),"hidediv");
	remClass(document.getElementById("panodiv"),"hidediv");
	e.stopPropagation();
	e.preventDefault();
	return false;
}
function hide3cim() {
	//hide info divs
	addClass(document.getElementById("panodiv"),"hidediv",false);
	//show 3cim div
	remClass(document.getElementById("info"),"hidediv");
	remClass(document.getElementById("proppics"),"hidediv");
	remClass(document.getElementById("prophead"),"hidediv");
//	remClass(document.getElementById("loadingmsg"),"hidediv");
	
}
	
function primePage() {
	loaded = false;
	var myAnchors = document.getElementsByTagName("a");
	for (var i=0;i< myAnchors.length;i++) {
		addEvent(myAnchors[i],"click",stopLink);
	}
	addClass(document.getElementById("propdata_nav"),"currentTab",false);
	var hideDivs = hideDivList.split(" ");
	for (var i=0;i<hideDivs.length;i++){
		addClass(document.getElementById(hideDivs[i]),"hidediv");
	}
	addEvent("propdata_nav", "click", showTabPic);
	addEvent("accom_nav", "click", showTabPic);
	addEvent("amenities_nav", "click", showTabPic);
	addEvent("gallery_nav", "click", show3cim);
	addEvent("moreimgs", "click", show3cim);
	addEvent("quote_nav", "click", event_popup_features(airquoteParms));
	if (document.getElementById('avail_nav')) {
		addEvent("avail_nav", "click", event_popup_features(avolResPopupParms));
	}
	if (document.getElementById('avail_nav_default')) {
		addEvent("avail_nav_default", "click", event_popup_features(avolResDefaultParms));
	}
	addEvent("quote_nav_ftr", "click", event_popup_features(airquoteParms));
//	addEvent("scrollleft","click",scrollGallery);
//	addEvent("scrollright","click",scrollGallery);
//	genGallery();
//	showGalleryScroll();
//	addEvent(document,"mousedown",protect);
	var pixAnchors = getElementsByClass("showbig");
	var tmpImg;
	for (var i =  0; i<pixAnchors.length;i++) {
		tmpImglink = getAll("img",pixAnchors[i]);
		addEvent(tmpImglink,"click",showbig);
		void 0;
	}
	if (!isNaN(rateRows)) {
		divHeightAdjust();
	}
	loaded=true;
}

addLoadEvent(primePage);
