
<!--
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];}
}
//-->
// JavaScript Document

startList=function()
	{
	if(document.all&&document.getElementById)
		{
		navRoot=document.getElementById("categoryContent");
		for(i=0;i<navRoot.childNodes.length;i++)
			{
			node=navRoot.childNodes[i];
			if(node.nodeName=="LI")
				{
				node.onmouseover=function()
					{
					this.className+=" over";
					}
				node.onmouseout=function() 
					{
					this.className=this.className.replace(" over", "");
					}
				}
			}
		}
	}
//window.onload=startList;


var clicked="yes";

function checkCheckBox()
	{
	if(clicked=='yes')
		{
		var agree=document.getElementById('agree');
		if(agree.checked==false)
			{
			alert ('You must agree to the Terms and Conditions to continue');
			return false;
			}
		else
			{
			return true;
			}
		}
	else
		{
		return true;
		}
	}

function togglePayment(id,el,val)
	{
	var el=document.getElementById(el).value;
	var me=document.getElementById(id);
	if (el==val)
		{
		me.style.display="block";
		}
	else 
		{
		me.style.display="none";
		}
	}
function toggleSurcharge(destEl,el,amountValue,surValue)
	{
	var el=document.getElementById(el).value;
	var destEl=document.getElementById(destEl);
	if(el=="American Express"||el=="Diners Club")
		{
		destEl.value=surValue;
		}
	else
		{
		destEl.value=amountValue;
		}
	}

function checkAgreement(id1)
{
var el=new Array(id1);
var i;
var count=0;
for(i=0;i<el.length;i++)
	{
	check=document.getElementById(el[i]);
	if(check.checked)
		{
		count++;
		}
	}
if(count==1)
	{
	return true;
	}
else
	{
	alert("Please confirm your details to continue.");
	return false;
	}
}

var booking="no";
function checkAvailability()
{
if(booking=="yes")
	{
	var adults=new Array(0,0,0);
	var children=new Array(0,0,0);
	var family=0;
	var concession=new Array(0,0,0);
	var group=new Array(0,0,0);
	
	//set all variables
	if(document.getElementById('adults'))
		{
		adults=document.getElementById('adults').value.split("-");
		}
	if(document.getElementById('children'))
		{
		children=document.getElementById('children').value.split("-");
		}
	//family is 4 spots
	if(document.getElementById('family'))
		{
		family=document.getElementById('family').value.split("-");
		family=family[2]*4;
		}
	if(document.getElementById('concession'))
		{
		concession=document.getElementById('concession').value.split("-");
		}
	if(document.getElementById('group'))
		{
		group=document.getElementById('group').value.split("-");
		}
	//comparison value to see available spots
	var available=document.getElementById('available').value;
	//user loop to check the value of each of the variables and compare the total to the amount available, if amount is greater than amount available, alert them to buy voucher or select new date
	//add up variables and see if it is larger than amount available
	//alert(adults[2]);
	//alert(children[2]);
	//alert(family);
	//alert(concession[2]);
	//alert(group[2]);
	var total=Math.abs(adults[2])+Math.abs(children[2])+Math.abs(family)+Math.abs(concession[2])+Math.abs(group[2]);
	//alert(total);
	if(total>available)
		{
		alert("You have selected more spots than what are currently listed in the system. If you need to book an activity that exceeds the supplier's quoted maximum numbers, click on the 'Make Enquiry' button and we will let you know exactly what is available. Otherwise, you can click the 'Buy Voucher' button after selecting the number of people you wish to buy for and book your own date and time.");
		return false;
		}
	else
		{
		return true;
		}
	}
else
	{
	return true;
	}

}










var isOver = false;
var theDiv=null;
 
function createDiv(e, title, description, image)
{
    isOver=true;
    theDiv.style.position = "absolute";
    theDiv.style.display = "none";
    theDiv.style.background = "#DDDDDD";
    theDiv.style.border = "solid 1px #AAAAAA";
    var content = title+"<br>";
    content += description+"<br />";
    content += image;  
    theDiv.innerHTML = content;
    document.body.appendChild(theDiv);
}
 
function showPopUp(e) 
{
 	if (theDiv==null)
		theDiv = document.createElement("div");
 	var x = 0;
	var y = 0;
	if(e.pageX)
	{
		x = e.pageX;
		y = e.pageY;
	}
	else if(e.clientX)
	{
		x = e.clientX + document.body.scrollLeft;
		y = e.clientY + document.body.scrollTop;
	}
	
	theDiv.style.left = (x + 5) +"px";
	theDiv.style.top = (y + 5) +"px";
	theDiv.style.display = "block";
	document.body.appendChild(theDiv);
}
 
function hidePopUp()
{
	document.body.removeChild(theDiv);
	isOver=false;	
}
var HotelImagesPopUp;
var windowOptions = 'width=590,height=530,toolbar=no,resizable=no,' +
                    'scrollbars=auto,statusbar=no,screenX=100,screenY=100,left=100,top=100';

function imageViewerPopup(href)
{
    HotelImagesPopUp = window.open(createScrollUrl(href), 'HotelImagesPopUp', windowOptions);
    HotelImagesPopUp.focus();
    
    return false;
}


function createScrollUrl(currentHref)
{
  var scrollPositionPosition = currentHref.indexOf("scrollPosition");
  
  if (scrollPositionPosition == -1) {
    return appendScroll(currentHref);
  }
  else {
    return appendScroll(currentHref.substr(0, scrollPositionPosition - 1));
  }
}

function appendScroll(url)
{
    var scrollPosition = getScrollPosition();

    if (scrollPosition != null)
    {
        return url + '&scrollPosition=' + getScrollPosition();
    }
    else
    {
        return url;
    }
}

function getScrollPosition()
{
    var scrollDiv = document.getElementById('scrolldiv');
    
    if (scrollDiv != null) {
        return scrollDiv.scrollLeft;
    }
    else
    {
        return null;
    }
}
var scrollRepeat;
var elementId = 'scrolldiv';

var cssWidth = 162;
var scrollAmount = (cssWidth / 12) + 1;
var timerAmount = 60;

function getScrollDiv() {
  return document.getElementById(elementId);
}

function scroller(direction)
{
    if (direction == 'left')
    {
        scroll(-scrollAmount);
        scrollRepeat = setInterval("scroll(-scrollAmount)", timerAmount);
    }
    else
    {
        scroll(scrollAmount);
        scrollRepeat = setInterval("scroll(scrollAmount)", timerAmount);
    }
}

function scroll(amount)
{
    var theDiv = getScrollDiv();

    if (theDiv)
    {
        theDiv.scrollLeft += amount;
    }
    else
    {
        alert("'" + elementId + "' does not exist.")
    }

    updateControllers();
}

function updateControllers()
{
    var theDiv = getScrollDiv();
    var backcontroller = document.getElementById("backcontroller");
    var nextcontroller = document.getElementById("nextcontroller");
    if (theDiv.scrollLeft == 0)
    {
        backcontroller.className = "controller backdisabled";
    }
    else
    {
        backcontroller.className = "controller back";
    }

    // dont know why but scrollWidth returns an amount that appears to
    // be the actual width plus the width set for theDiv in css.
    //Decresed the width of scrolldiv by 1 pixel and added a pixel to
    //stop the scroller from moving the images on getting to the last image.
    if (theDiv.scrollLeft == (theDiv.scrollWidth + 1) - cssWidth)
    {
        nextcontroller.className = "controller nextdisabled";
    }
    else
    {
        nextcontroller.className = "controller next";
    }
}

function stopScrolling()
{
    var theDiv = getScrollDiv();
    clearInterval(scrollRepeat);
}