      var isHighLightsOpen  = true;
      var initState = true;
      var takeATourInitHTML = "";
      var animCarouselFlag = false;
      var urlPathNameParks = window.location.pathname;
      var urlHostName=window.location.host;

      
      $(document).ready(function() {

     loadTour();
      
      
    
      /*** Low graphics version ************/
      if((querySt("LowGraphics") != null) && (strTrim(querySt("LowGraphics")) == "Y"))
      {
      	SetCookie("LowGraphics","Y",1,"/")
      }
      
      if((querySt("LowGraphics") != null) && (strTrim(querySt("LowGraphics")) == "N"))
      {
      	deleteCookie("LowGraphics", "/")
      	
      }      
      
      
      if(strTrim(getCookie("LowGraphics")) == "Y")
      {
      //Low grpahics option
      $("#headingContainer").css("margin-top", "0px");
      $("#imageContainerHolder").css("display", "none");
      $("#imageContainer").css("display", "none");
      $("#banner-parks").css("display", "none");
      
      };
      
      /*************************************/
      
/****************Setting initial positon of the news letter divs ************/
          $('#newsLetterHome3').hide();
          $('#newsLetterHome1').hide();
/***************Setting initial positon of the news letter divs**************/

          

/***************partially opening take a tour *******************************/
    $('div.takeAtourArea').css('left' , '532px');
    var imgHighLightLink1 = document.getElementById('imgHighlightsLink');
    if (imgHighLightLink1 != null)
     {
      imgHighLightLink1.src = "/Images/Navigation/highlights_v.gif";
     }
/****************************************************************************/
     
/***************Load Our Park Map in Our Park Page*****************************************/
       
               $('div.regionMapOurParks').load("/ParksMap/InsideParksMap.html", mapLoaded);
               $('div.regionMapOurParksPHC').load("/ParksMap/InsidePHCParksMap.html", mapLoaded);
               $('div.regionMapOurParksMulti').load("/ParksMap/InsideParksMapMulti.html", mapLoadedMulti);

/***************Load Our Park Map*****************************************/



/***************Overriding the variour href default behavoiur ***************/
            

             bindNewsLetter();  
		
            //Binding Holiday Finder Checkboxes
	                 $(".holidayFinderActivityDiv :checkbox").bind("click", activitySelectionChanged);
	                
	                //chenging map selection for page refresh
	                activitySelectionChanged();
	                
	                
	                //Holiday Finder results
	                 var parksToShow = querySt("ShowParks");
	                 if (parksToShow != null)
	                  { 
	                    
	                    $(".textContainerHolidayAreas").addClass("hiddenDiv"); 
	                    showSelectedParks(parksToShow);
              }
             
              
	   var tempHTML = $("#footerbottomlinks ul").html();
	  
	   if(strTrim(getCookie("LowGraphics")) == "Y")
	    {
	      //Normal graphics Link
	      $("#footerbottomlinks ul").html("<li><a href=\"?LowGraphics=N\" rel=\"nofollow\">Graphics Version</a>" + tempHTML);
	    }
	   else
	   {
	     $("#footerbottomlinks ul").html("<li><a href=\"?LowGraphics=Y\" rel=\"nofollow\">Low Graphics Version</a>" + tempHTML);	
	   }  

	  
	    
	  
	   //selecting current park
	   var pcode = strTrim($("#CurrentParkCode").html());
	   
	   $(".homepageSelectBoxPark").val(pcode);
	   
	   //selecting current region
	   var rcode = strTrim($("#CurrentRegionCode").html());
	   $(".homepageSelectBoxWide").val(rcode);	   
	   
         });
  
/**************************************************************************/
//Pushing map image to background ***************************************/
function mapLoaded()
{
  var defaultMapimage = $("#ukmapInside").attr("src");
  
  if ((defaultMapimage != null) && (defaultMapimage != ""))
  {
    $('#map_insideParks').css("background-image", "url('" + defaultMapimage + "')");
    $('#map_insideParks').css("background-repeat", "no-repeat");
  } 
  
}

function mapLoadedMulti()
{
  var defaultMapimage = $("#ukmapInside").attr("src");
  
  if ((defaultMapimage != null) && (defaultMapimage != ""))
  {
    $('#map_insideParks').css("background-image", "url('" + defaultMapimage + "')");
    $('#map_insideParks').css("background-repeat", "no-repeat");
  } 
  
  displaySelectedParks();
}
/***************Overriding the variour href default behavoiur ***************/
      
    
    

    function activateHighlight()
    {
       
            /*  - Change button should still be clickable to open the take a tour*/
      var imgHighLightLink = document.getElementById('imgHighlightsLink');
      var imgTakeATourLink = document.getElementById('imgTakeAtourLink');
      if ((typeof(imgHighLightLink) !='undefined') && (typeof(imgHighLightLink) !='imgTakeATourLink') )
       {
        imgHighLightLink.src = "/Images/Navigation/highlights_v.gif";
        
       }
       
       stopHighlightsAmin();
    }

      
/*****************  Cross Fade --  Highlights - Start    *********************/
$(document).ready(function() {
  // Start Animation
  //Loading background image
  
  var defaultimage = $(".defaultMainImage").attr("src");
  var defaultimageTitle = $(".defaultMainImage").attr("title");
  
  if ((defaultimage != null) && (defaultimage != ""))
  {
    $('div.highlightsMainImage').css("background-image", "url('" + defaultimage + "')");
    $('div.highlightsMainImage').attr("title",defaultimageTitle);

    
        $('#banner-life').css("background-image", "url('" + defaultimage + "')");
    $('#banner-life').attr("title",defaultimageTitle);
  } 
  
  OurParksTabHovering();
  
  OnHoverFadingEffect();
  
  animCarouselFlag = true;
        
  if(strTrim(getCookie("LowGraphics")) != "Y")
  {
    if((querySt("show") != null) && (strTrim(querySt("show")) == "tour"))
          {
        	  stopHighlightsAmin();
        	  loadTour();
        	  //hideOtherTabsForTakeATour();
      }
      
      else if((querySt("show") != null) && (strTrim(querySt("show")) == "PlacesToVisit"))
      {
      stopHighlightsAmin(); 
     
      
        loadOffThePark();
  	hideOtherTabsforPlacesToVisit();
      }
      else
      {
        
                /*check the highlight state set in AvailANdBook User control level*/
                if (typeof highlightsState != 'undefined')
                {
                if(highlightsState == '1')
                {
                	loadHighights();
                }
                }
      }
  } 
  specialOffersPeelOpenClose();
  $("DIV#rhs_PlacesToVisit A").attr("href", "#");
    $("DIV#rhs_PlacesToVisit A").click(function(ev)
    {
   
    //ev.preventDefault();
    stopHighlightsAmin();  
  loadOffThePark();
  hideOtherTabsforPlacesToVisit();
    
  });
  primaryMenuTabTracking();
  var n = $("#findOutMoreBox").length;
  
  if(n <= 0)
  {
  $("A#findMoreBoxOpen").remove();
  }
  
  
  //alert($("DIV.bannerNav UL LI.menuouter").length);
  
  /* added by offshore on 10/11/2010 for the infopane issue starts here */
  if ($("DIV.bannerNav UL LI.menuouter").length == 0)
  {
  $("DIV.bannerNav UL LI#menutop").remove();
  $("DIV.bannerNav UL LI#menubottom").remove();
  $("DIV.bannerNav UL").remove();
  }
  /* added by offshore on 10/11/2010 for the infopane issue ends here */
  
});

function hideOtherTabsforPlacesToVisit()
{
$("DIV.interactiveBanner DIV").hide();
  $("#banner-offThePark").show();
  $("DIV.OffTheParkBottomContent").show();
  var releaseImg1 = $("IMG.active-png").attr("src");          
  releaseImg1 = releaseImg1.replace("_on.png","_off.png");          
  $("IMG.active-png").attr("src", releaseImg1);
  //$(".bannerNav UL").find("IMG.active-png").attr("src").replace("_on.png","_off.png");
  $(".bannerNav UL LI A IMG").removeClass("active-png");
  $(".bannerNav UL LI A IMG").addClass("rollover-png");  
  var changeImageNew = $("A#offThePark > IMG").attr("src");   
  changeImageNew = changeImageNew.replace("_off.png","_on.png");    
$("A#offThePark > IMG").attr("src", changeImageNew);
$("A#offThePark > IMG").removeClass("rollover-png");
$("A#offThePark > IMG").addClass("active-png");
}

var animationTime = 3000;
var stayTime = 1000;
var counter = 1;
var maxCount = 0;
var highlightsCarliArray;

function hideOtherTabsForTakeATour()
{
$("DIV.interactiveBanner DIV").hide();
  $("#banner-tour").show();  
  var releaseImg1 = $("IMG.active-png").attr("src");  				
  releaseImg1 = releaseImg1.replace("_on.png","_off.png");  				
  $("IMG.active-png").attr("src", releaseImg1);
  
  $(".bannerNav UL LI A IMG").removeClass("active-png");
  $(".bannerNav UL LI A IMG").addClass("rollover-png");  
  var changeImageNew = $("A#tour > IMG").attr("src");		
  changeImageNew = changeImageNew.replace("_off.png","_on.png");		
$("A#tour > IMG").attr("src", changeImageNew);
$("A#tour > IMG").removeClass("rollover-png");
$("A#tour > IMG").addClass("active-png");
}

function startCarousel()
{
  stopHighlightsAmin(); 
   maxCount = 0;
   counter = 1;
   animCarouselFlag = true;
   $("#carouselTempImg").remove();
   
   if(highlightsState == '1')
   	loadHighights();
   
}


var parkFolderName = "DevonCiffs";


function loadHighights()
{

  
  if (maxCount == 0)
  {
  
    $(".highlightsMainImageFrameTemp").html('');  
            
    var carouselHtml = $("#HighlightsCarousel #Carouselhtml").html();
	


    if (carouselHtml != null)
    {
      carouselHtml = strTrim(carouselHtml);
      //replacing temp classes to real required classes
      carouselHtml = carouselHtml.replace(/highlightsMainImageFrameTemp/gi, "highlightsMainImageFrame");
      $('div.highlightsMainImage').html(carouselHtml);

      highlightsCarliArray = $("#HighlightsCarousel").find("li a");
      maxCount = highlightsCarliArray.length;
      if($("#carouselTempImg").html() == null)
      {
        var temphtml = $("#HighlightsCarousel #Carouselhtml").html();
        $("#HighlightsCarousel #Carouselhtml").html(temphtml + "<div id=\"carouselTempImg\">test</div>");
      }
      $('div.highlightsMainImageFrameTemp').css('opacity', 0);
      
    }
     
  }
  
  counter = counter + 1;
  if ((counter > maxCount) && (maxCount > 0))
   { 
   
     counter = 1;
   }

   if((animCarouselFlag == true) && maxCount > 0)
   {
      
    var fileName= highlightsCarliArray[counter-1].href;   //getting the carousel image path 
    var titleValue = highlightsCarliArray[counter-1].title;   //getting the carousel title
    $('div.highlightsMainImageFrame').css('opacity', 0);
    $('div.highlightsMainImage .highlightsMainImageFrame').attr("title", titleValue);
    $('div.highlightsMainImage .highlightsMainImageFrame').css("background-image", "url('" + fileName + "')");
    $("#carouselTempImg").html("<img src=\"" + fileName + "\"  onload=\"carouselImgLoaded();\">");
   

  }
    
}

function carouselImgLoaded()
{ 
    $('div.highlightsMainImage .highlightsMainImageFrame').css("display", "block");;
    highlightsLoaded();
}

function highlightsLoaded()
{
  
  
        $('div.highlightsMainImageFrame').animate({
    opacity : 1.0
  }, animationTime, "linear", highlightsframeLoaded);
  
  
}

function highlightsframeLoaded()
{
  //Putting the framebg image to outer div
  
  var framebgImage = $('div.highlightsMainImageFrame').css('background-image');
  var frameTitle = $('div.highlightsMainImageFrame').attr("title");
  $('div.highlightsMainImage').css('background-image',framebgImage);
  $('div.highlightsMainImage').attr('title',frameTitle);
 
        $('div.highlightsMainImageFrame').animate({
      opacity : 0.0
  }, stayTime, "linear", loadHighights);
}

function stopHighlightsAmin()
{
  $('div.highlightsMainImageFrame').stop();
  $('div.highlightsMainImage').stop();
  animCarouselFlag = false;
}
/*****************  Cross Fade --  Highlights - End    *********************/



      




/********* Start Map load *************************/

        function loadLocationMap() 
        {
         
         var locationMapPath = $("#locationMapPath").html();
	 locationMapPath = strTrim(locationMapPath);
	 
	  if ((locationMapPath != null) && (locationMapPath != ""))
  	{
      $('div#banner-map').html("<iframe src=\""+locationMapPath+"\" width=\"718\" height=\"330\" scrollbar=\"no\" marginwidth=\"0\" marginheight=\"0\" hspace=\"0\" align=\"middle\" frameborder=\"0\"></iframe>"); 
      
       }
        }
/********* End Map ***************************/
/*************** Special Offers Peel Off On starts here ********************/

function specialOffersPeelOpenClose()
{

$("a[name^='clickToOpen_']").each(function()
{
$(this).click(function() 
{
$("#" + this.name).animate({"left": "+=361px", "top": "-=340px"}, "slow");
return false;
});
});
$("a[id^='closePeel_']").each(function()
{
$(this).click(function() 
{
$("." + this.id).animate({"left": "-=361px", "top": "+=340px"}, "slow");
return false;
});
});
}

/*************** Special Offers Peel Off On ends here ********************/

/********************* Start Video *************************************/
        function loadTakeATourVideo() 
        {
        
      
       var videoPath =strTrim($('#videoFileName').html());
       
      $('#banner-video').load(videoPath, function() {setTimeout('homepageVideo();', 50);});
      //$("#havenVideoNew").load(homeVideoPagePath, function() {setTimeout('homepageVideo();', 50);});
        }
/********************* End Video  **************************************/



/******************* News Letter Signup Boxes Start ******************************/
function openNewsLetterMoreInfo()
{
   
   $("#newsLetterHome3").slideDown("slow");
   $("#newsLetterHome2 a.blueLinkInfo").css("display", "none");
   $("#newsLetterHome1 a.lnkMoreInfo").css("display", "none");
} 
function closeNewsLetterMoreInfo()
{
   
   $("#newsLetterHome3").slideUp("slow"); 
   $("#newsLetterHome2 a.blueLinkInfo").css("display", "block");
   $("#newsLetterHome1 a.lnkMoreInfo").css("display", "block");
} 
function openNewsLetterSignUpBox()
{
   $("#newsLetterHome1").slideDown("slow"); 
   $("#newsLetterHome2").slideUp("slow"); 
}
/******************* News Letter Signup Boxes End   *******************************/

/********* Start Tour load *************************/
 function loadTour()
 {

 var virtualTourPath = $("#virtualTourPath").html();
 
 
 virtualTourPath = strTrim(virtualTourPath);

  if ((virtualTourPath != null) && (virtualTourPath != ""))
{
$("#banner-accom .interactiveBanner").css({ "height" : "535px" });
$("#banner-accom").css({ "height" : "535px" });
$("#banner-video").css({ "display" : "none" });
$("#banner-gallery").css({ "display" : "none" });
$("#pageContentRightContainerNew").css({ "margin-top" : "-220px" }); 
$("div#banner-tour #show-tour").load(virtualTourPath);
}

}
/********* End Tour *****************************/

  

/**************** partially hiding At a glance *********************/
   var maxGlanceItems = 5;
   function partiallyHideAtAGlance()
   {
    glanceCounter = 0;
    var atAGlanceList = $("#atAGlance .glanceTextDiv li, #atAGlancePopUp #glanceTextPopUp li, #atAGlanceNew .glanceTextDivNew li").each(function() {
      glanceCounter = glanceCounter + 1;
      if (glanceCounter > maxGlanceItems)
      {
        $(this).addClass("hiddenDiv");
      }  
    });
    if (glanceCounter > maxGlanceItems)
    {
        if ($("#atAGlance #glanceMore, #atAGlancePopUp #glanceMore, #atAGlanceNew #glanceMore") == null || $("#atAGlance #glanceMore, #atAGlancePopUp #glanceMore, #atAGlanceNew #glanceMore").length == 0)
        {
          $("#atAGlance .glanceBoxDiv, #atAGlancePopUp #glanceBoxPopUp, #atAGlanceNew .glanceBoxDivNew").html($("#atAGlance .glanceBoxDiv, #atAGlancePopUp #glanceBoxPopUp, #atAGlanceNew .glanceBoxDivNew").html() +  "<div id=\"glanceMore\"><a href=\"Javascript:showAtAGlance();\" onmouseover=\"Javascript:showAtAGlance();\">Show All&gt;</a></div>");

        }
        else
        {
          $("#atAGlance  #glanceMore, #atAGlancePopUp  #glanceMore, #atAGlanceNew  #glanceMore").html("<a href=\"Javascript:showAtAGlance();\" onmouseover=\"Javascript:showAtAGlance();\">Show All&gt;</a>");
        }
    }
   }
   
   function showAtAGlance()
   {
    $("#atAGlance .glanceTextDiv li, #atAGlancePopUp #glanceTextPopUp li").removeClass("hiddenDiv");
    $("#atAGlanceNew .glanceBoxDivNew .glanceTextDivNew li").removeClass("hiddenDiv");
    $("#atAGlance #glanceMore, #atAGlancePopUp #glanceMore, #atAGlanceNew #glanceMore").html("<a href=\"Javascript:partiallyHideAtAGlance();\">Hide&gt;</a>");
    //$(".glanceBoxDiv #glanceMore, #glanceBoxPopUp #glanceMore").addClass("hiddenDiv");
   }
   
   
/*******************************************************************/


/********************** Holiday Finder ***********************************************************/
  var finderCondition = "OR";   //"OR"
  var selectParkCodeList;
  
  
  function updateParkSelection()
  {
  }
  
  function updateParkSelectionForFeature (featureCode) 
  {
    var thisFeatureList = $("div.Feature_" + featureCode).html();
    
    thisFeatureList = strTrim(thisFeatureList);
    var colonRE = /[;]$/; 
    if (thisFeatureList != null && thisFeatureList != "")
    {
      if (thisFeatureList.match(colonRE))
      {
      }
      else
      {
        thisFeatureList = thisFeatureList + ";"   
      }
    }
    if (selectParkCodeList == null || selectParkCodeList == "")
    {
      selectParkCodeList = thisFeatureList;
    }
    else if (finderCondition == "AND")
    {
      addParkList(thisFeatureList); 
    }
    else if(finderCondition == "OR")
    {
      removeParkList(thisFeatureList);
    }
    
  }
  
  function addParkList(newList)
  {
    newListArray = newList.split(";");
    newListCount = newListArray.length;
    var i=0;
    var parkCode ="";
    for (i=0; i<newListCount ;i++)
    {
        parkCode = strTrim(newListArray[i]);
        if (parkCode != "")
        {
          if(selectParkCodeList.indexOf(parkCode + ";") < 0)
          {
            selectParkCodeList = selectParkCodeList + parkCode + ";";
          }
        }
      
    }
    
    
  }
  
  function removeParkList(newList)
  {
    oldListArray = selectParkCodeList.split(";");
    oldListCount = oldListArray.length;
    var i=0;
    var parkCode ="";
    for (i=0; i<oldListCount ;i++)
    {
        parkCode = strTrim(oldListArray[i]);
        if (parkCode != "")
        {
          if(newList.indexOf(parkCode + ";") < 0)
          {
            var colonRE = re = new RegExp(parkCode + "[\s]{0,};" ); 
            selectParkCodeList = selectParkCodeList.replace(colonRE , "");
          }
        }
      
    }   
    
  }
  
  
  function highlightParks() 
  { 
    
    if(selectParkCodeList != null && selectParkCodeList != "")
    {
      finalListArray = selectParkCodeList.split(";");
      finalListCount = finalListArray.length;
      var i=0;
      var parkCode ="";
      for (i=0; i<finalListCount ;i++)
      { 
          parkCode = strTrim(finalListArray[i]);
                           
          if (parkCode != "")
          {
        highLightPark(parkCode);
          }

      } 
    }
  }
  
  
  function activitySelectionChanged()
  {
    selectParkCodeList = "";
    revertAllHighlight();
    $(".holidayFinderActivityDiv :checked").each(function()
      {
        
        updateParkSelectionForFeature($(this).attr("name"));
      });
      
        
      highlightParks();
      var resultLink = $(".havenHolidayLink a").attr("href");
      if (resultLink != null && resultLink != "")
      {
        var selParksRE = new RegExp("ShowParks=(.*?)$" ); 
        if (selectParkCodeList == null || selectParkCodeList == "")
        {     
             resultLink = resultLink.replace(selParksRE , "ShowParks=NONE");
        }
        else
        {
        resultLink = resultLink.replace(selParksRE , "ShowParks=" + selectParkCodeList);
        }
        $(".havenHolidayLink a").attr("href", resultLink);
      }
  }
  
        function highLightPark(parkCode)
  {
       $("#PARK" + parkCode).css("display","block");
  }

  function revertAllHighlight()
  {
             $("#map_insideParks > div").css("display","none");
  } 
  
  function showSelectedParks(parksToShow)
  {
       showListArray = parksToShow.split(";");
       showListCount = showListArray.length;
       var i=0;
       var parkCode ="";
       for (i=0; i<showListCount ;i++)
       {  
     parkCode = strTrim(showListArray[i]);
            
                 if (parkCode != "")
           {
         $(".IntroPark" + parkCode).removeClass("hiddenDiv");
         var parkPageLnk = $("a.PARK" + parkCode).attr("href");
         if (parkPageLnk != null && parkPageLnk != "")
         {
            $("a.LinkPark" + parkCode).attr("href" , parkPageLnk);
         }
           }
  
     }
  }
  


  
  /*** News Letter ****/
  function bindNewsLetter()
  {
            //For Experience, Accommodation,Region Page Click for News Letter Sign Up Box     
             $("#newsLetterHome2 a.blueLink, #newsLetterHome2 .loginImageBox a").bind("click", 
                function(ev) { 
                        ev.preventDefault();
                            openNewsLetterSignUpBox();
                }    
             );

            //For Experience, Accommodation,Region Page Click for News Letter More Information
             $("#newsLetterHome2 a.blueLinkInfo").bind("click", 
                function(ev) { 
                        ev.preventDefault();
                            openNewsLetterMoreInfo();
                }    
             );
             
            //For Experience, Accommodation,Region Page Click for More Information link     
             $("#newsLetterHome1 a.lnkMoreInfo").bind("click", 
                function(ev) { 
                        ev.preventDefault();
                            openNewsLetterMoreInfo();
                }    
             );
             
             $("#newsLetterHome3 a.blueLink").bind("click", 
                function(ev) { 
                        ev.preventDefault();
                            closeNewsLetterMoreInfo();
                }    
             );
                          
             
              //For Experience, Accommodation,Region Page Click for More Information link     
             $("#newsLetter1Exp a.lnkMoreInfo").bind("click", 
                function(ev) { 
                        ev.preventDefault();
                            openNewsLetterMoreInfo();
                }    
             );  
  }
  
/*************************************************************************************************/

/******************Script functions being used for Image Gallery , added 14/10/2010 starts here****************/

                var jsLoaded = 0;
                var cssLoaded = 0;
                var htmlLoaded = 0;
                var defaultCat = '';
                var infoPaneTimerId;
                var galleryLoaded = 0;
                var startGalNew = "start";
                function galJSLoaded() {
                

                    jsLoaded = 1;
                    if (jsLoaded == 1 && cssLoaded == 1 && htmlLoaded == 1 && galleryLoaded == 0) {
                    //alert('inside galJSLoaded');
                        galleryLoaded = 1;
                       // alert(startGalNew);
                       trackPrevNextClick();
                       trackSliderMovement();
                       //trackInitilizeGallery(defaultCat);
                        initializegallery(defaultCat);
                        hideInfoPaneLoader();
                    }
                }

                function galCSSLoaded() {
                

                    cssLoaded = 1;
                    if (jsLoaded == 1 && cssLoaded == 1 && htmlLoaded == 1 && galleryLoaded == 0) {
                   // alert('inside galCSSLoaded');
                        galleryLoaded = 1;
                        initializegallery(defaultCat);
                        hideInfoPaneLoader();
                    }
                }

                function galHTMLLoaded() {
               
                htmlLoaded = 1;
               
               // var category=$('#hdnImageGalleryText').val();
                  //  LoadGallery(category);
                    //$(".galleryOuter .navSection .sliderBase .imgSlider").slider();
                
                   
                    
                  if (jsLoaded == 1 && cssLoaded == 1 && htmlLoaded == 1 && galleryLoaded == 0) 
                  {
                 // alert('inside galHTMLLoaded');
			
			            galleryLoaded = 1;
                        initializegallery(defaultCat);
                        hideInfoPaneLoader();
                    }           
                }                

                function LoadGallery() {
                    jsLoaded = 0;
		            cssLoaded = 0; 
		            htmlLoaded = 0;
                    
                    galleryLoaded = 0;
                    var ImageGalPath=strTrim($("#imageGalleryPath").html());
		  
 
		            var category=$('#hdnImageGalleryText').val();
                    $("#banner-gallery").load(ImageGalPath, galHTMLLoaded);
                    //$("#infoPaneLoader").css("display", "block");
                    defaultCat = category;
                   
                    if (typeof initializegallery == 'function') {
                    
                   // alert('inside function');
                        
                        jsLoaded = 1;
                        cssLoaded = 1;
                        if (jsLoaded == 1 && cssLoaded == 1 && htmlLoaded == 1 && galleryLoaded == 0) 
                        {   
                        // alert('inside LoadGallery');
                          galleryLoaded = 1;
                          trackPrevNextClick();
                          trackSliderMovement();
                         // trackInitilizeGallery(defaultCat);
                          initializegallery(defaultCat);
                          hideInfoPaneLoader();
                        }

                    }
                    else {
                    //alert('loading files');
                    
                        // loading js
                        /*
                        var script_ig_js = document.createElement("script");
                        script_ig_js.src = "/js/imageGallery.js";
                        script_ig_js.type = "text/javascript";
                        
                        script_ig_js.onreadystatechange = function() {
                            
                            if (this.readyState == 'complete') 
                                 galJSLoaded();
                        }
                        script_ig_js.onload = galJSLoaded;
                        document.getElementsByTagName("head")[0].appendChild(script_ig_js);
                        */
                        //$.getScript("/js/jquery-ui.min.js");
                        $.getScript("/js/imageGallery.js" , galJSLoaded);
                        
                        // loading css
                        var fileref_css = document.createElement("link");
                        fileref_css.setAttribute("rel", "stylesheet")
                        fileref_css.setAttribute("type", "text/css")
                        fileref_css.setAttribute("href", "/css/ImageGallery.css")
			            //jsLoaded = 1;
                        fileref_css.onreadystatechange = function() {
                        
                        if (this.readyState == 'complete') galCSSLoaded();
                        }
                        fileref_css.onload = galCSSLoaded;
                        document.getElementsByTagName("head")[0].appendChild(fileref_css);
                        galCSSLoaded();  // firefox does not fires the event for CSS
                        
                    }                
                }
                
                function displayInfoPaneLoader()
                {
                    
                    $("#infoPaneLoader").css("display", "block");
                    
                }
                
                function hideInfoPaneLoader()
                {
                    clearTimeout(infoPaneTimerId);
                    $("#infoPaneLoader").css("display", "none");
                    
                }

/******************Script functions being used for Image Gallery , added 14/10/2010 ends here****************/


/******************Script functions being used for Dynamic js & css loading , added 15/11/2010 starts here****************/
function loadjscssfile(filename, filetype){
 if (filetype=="js"){ //if filename is a external JavaScript file
  var fileref=document.createElement('script')
  fileref.setAttribute("type","text/javascript")
  fileref.setAttribute("src", filename)
 }
 else if (filetype=="css"){ //if filename is an external CSS file
  var fileref=document.createElement("link")
  fileref.setAttribute("rel", "stylesheet")
  fileref.setAttribute("type", "text/css")
  fileref.setAttribute("href", filename)
 }
 if (typeof fileref!="undefined")
  document.getElementsByTagName("head")[0].appendChild(fileref)
}

var filesadded=""; //list of files already added

function checkloadJScssfile(filename, filetype){
 if (filesadded.indexOf("["+filename+"]")==-1){
  loadjscssfile(filename, filetype)
  filesadded+="["+filename+"]" //List of files added in the form "[filename1],[filename2],etc"
 }
}


/******************Script functions being used for Dynamic js & css loading , added 15/11/2010 ends here****************/



/********************** Animation added for Haven 2010 ***********************/

//animated banners for NON-lightbox pages
function pageBanners() { 
$("#banner-highlights").show();

var aDayInLifePath = $("#ADayInLifePath").html();
var aDayInLifePathHeight = $("#ADayInLifePathHeight").html();
var aDayInLifePathWidth = $("#ADayInLifePathWidth").html();
var galleryPath = $("#imageGalleryPath").html();
var panoFileName = $("#360FileName").html();

var videoFileName = $('#videoFileName').html();
var parkfinderPath = $('#ParkFinderPath').html();
var parkTourPath = $('#virtualTourPath').html();

if(aDayInLifePath != null || aDayInLifePath != "")
{

$("#life").attr("href", aDayInLifePath+"?KeepThis=true&amp;TB_iframe=true&amp;height="+aDayInLifePathHeight+"&amp;width="+aDayInLifePathWidth);
}
if(aDayInLifePath == null || aDayInLifePath == "")
{
$("#life").parent('li').remove();

}
if(galleryPath == null || galleryPath == "")
{
$("#gallery").parent('li').remove();

}
if(panoFileName == null || panoFileName == "")
{
$("#360view").parent('li').remove();

}
if(videoFileName == null || videoFileName == "")
{
$("#video").parent('li').remove();

}
if(parkfinderPath == null || parkfinderPath == "")
{
$("#finder").parent('li').remove();

}
if(parkTourPath == null || parkTourPath == "")
{
$("#tour").parent('li').remove();

}

	$(".bannerNav UL LI A").click(function(ev){
	ev.preventDefault();
		//hide all banners
		
		var thisId = this.id;
		
		thisId = thisId.replace("_over", "");
		//$(".bannerNav UL LI.menuouter").css("display", "block");
		//$(".bannerNav UL LI.PVStep2Class").css("display", "none");
		
		$(".interactiveBanner").css({ "height" : "330px" });
		$("#pageContentRightContainerNew").css({ "margin-top" : "-15px" });  /** to be tested**/
	        $(".bannerRight").css({ "margin" : "0px 0px 6px 0px" });
	        $(".bannerNav UL LI A > IMG").css("margin-left", "0px");
		$("#banner-highlights").hide();
		$("#banner-gallery").hide();
		$("#banner-video").hide();
		$("#banner-finder").hide();
		$("#banner-tour").hide();
		$("#banner-life").hide();
		$("#banner-360view").hide();
		$("#banner-map").hide();
		$("#banner-offThePark").hide();
		$("#pageContentRightContainer").css({ "margin-top" : "0px" });
		
		$("#banner-accom").css({ "background" : "none" });
		
		$("body#parks #pageContentRightContainer").css({ "margin-top" : "0px" });
		
		//hide banner elements
		
		$("#banner-video-movie").hide();
		$("#banner-video-options").hide();
		//hide link buttons
		$(".banner-slide-up").hide();
		//show selected banner
		
		$("#divParkLogo").hide();
		
		if (this.id !== "offThePark" || thisId == "offThePark")
		{		
		$("#regionStep1").html("");
		$("#banner-parks").css("height", "330px");
		}
		if((this.id == "highlights") || (thisId == "highlights"))
		{
		  
		  //counter = 1;
		  var detectDiv = $("DIV#pageContentLeftContainer DIV.bannerNavParks").length;
		  
		  if (detectDiv != 1)
		  {
		  startCarousel();
		  $("#divParkLogo").show();
		  }
		  //HighlightsPanel_takeatour_Highlights();
		  WEBABACUS.logclientdata('0',urlPathNameParks+'|?desc=Infopane&action=HomeButton');		  
		  
		  
		}
		
		if((this.id == "gallery") || (thisId == "gallery"))
		{
           //infoPaneTimerId = setTimeout('displayInfoPaneLoader();', 1500);  
		  
		   stopHighlightsAmin();
		$(".interactiveBanner").css({ "height" : "465px" });
		$("#banner-parks").css({ "height" : "475px" });
		$("#banner-accom").css({ "height" : "475px" });
		$("#pageContentRightContainerNew").css({ "margin-top" : "-160px" });
		$("#pageContentRightContainer").css({ "margin-top" : "-135px" });
				
		
		$("body#parks #pageContentRightContainer").css({ "margin-top" : "-135px" });
		
	        $(".bannerRight").css({ "margin" : "0px 0px 141px 0px" });
		  
		  setTimeout('LoadGallery();', 1);		  
		  
		  WEBABACUS.logclientdata('0',urlPathNameParks+'|?desc=Infopane&action=ViewPhotos');   	         
		   
		}
		
		if(this.id == "life" || thisId == "life")
		{
		stopHighlightsAmin();
		   HighlightsPanel_takeatour_DayinLife();
		}		
		
		if((this.id == "video") || (thisId == "video"))
		{
		   
		   if($("#"+this.id).closest("div").parent("div").attr("id")=="banner-accom")
		        $("#"+this.id).closest("div").parent("div").css("height","330px");
		   var videoTest=$("#video_gal").attr("src");
		
		   stopHighlightsAmin();
		   
		   loadTakeATourVideo();	
		   
		   
		                           //var script_video_js = document.createElement("script");
		                           //script_video_js.src = "/js/Home_Video_Page_2011.js";
		                           //script_video_js.type = "text/javascript";
		                           
		                           //script_video_js.onreadystatechange = function() {
		                           //if (this.readyState == 'complete') galJSLoaded();
		                           //}
		                           //script_video_js.onload = galJSLoaded;
                        		   //document.getElementsByTagName("head")[0].appendChild(script_video_js);
                        		   checkloadJScssfile("/js/Home_Video_Page_2011.js", "js") //dynamically load and add this .js file
                        		   checkloadJScssfile("/css/Home_Video_Page_2010.css", "css") ////dynamically load and add this .css file

                        
                      WEBABACUS.logclientdata('0',urlPathNameParks+'|?desc=Infopane&action=ViewVideo');  
		   
		 
		}
		if(this.id == "finder" || thisId == "finder")
		{
//		     stopHighlightsAmin();		     
//		     window.open($('#ParkFinderPath').html());
		     WEBABACUS.logclientdata('0',urlPathNameParks+'|?desc=Infopane&action=HolidayFinder'); 
		}
		if(this.id == "tour" || thisId == "tour")
		{
		     stopHighlightsAmin();
		     HighlightsPanel_takeatour_parkTour();
		    
		     $("#banner-accom").css({ "background" : "transparent url(/Images/NonTridion/acc_bg_leftedge.png) top left no-repeat" });
		     loadTour();
		}

		if(this.id == "map" || thisId == "map")
		{
		    stopHighlightsAmin();
		    //HighlightsPanel_takeatour_Map() /* commented by offshore on 08/04/2010 as new tracking is implemented below*/
		   
		    loadLocationMap();
		   WEBABACUS.logclientdata('0',urlPathNameParks+'|?desc=Infopane&action=LocationMap'); 
		}
		if (this.id == "360view")
		{
		    stopHighlightsAmin();
		    HighlightsPanel_takeatour_360();
		    loadTakeATour360();
		}
		if (this.id == "offThePark" || thisId == "offThePark")
		{
		WEBABACUS.logclientdata('0',urlPathNameParks+'|?desc=Infopane&action=PlacesToVisit'); // WEBABACUS Tracking for offThePark
		 stopHighlightsAmin();
		 loadOffTheParkJSCSS();
		 loadOffThePark();	 
		
		}
		
		var marginTop = $(".menuitemactive").css('margin-top');
        $(".menuitemactive").css('margin-top',parseInt(marginTop) + parseInt(5));
        
        $("LI.menuitemactive").find("IMG.divider").attr("src","/Images/NonTridion/imagenav/divider.gif");
		$("LI.menuitemactive").find("IMG.divider").attr("style","margin-left:0px");
		$("LI.menuitemactive").find("A.menuitem_over_active").addClass("menuitem_over");
		$("LI.menuitemactive").find("A.menuitem_over_active").removeClass("menuitem_over_active");
		if (thisId == "highlights")
		{
		var detectDiv = $("DIV#pageContentLeftContainer DIV.bannerNavParks").length;
		if (detectDiv != 1)
		{
		$("DIV#banner-" + thisId).show();
		}
		if (detectDiv == 1)
		{
		$("#banner-parks").hide("slow");
		$("#pageContentLeftContainer .tlcornerImg").css("display" ,"block");                                       
                $("#pageContentLeftContainer .bannerNavParks").css("display" ,"block");
                $("#pageContentLeftContainer").css("margin-top","0px");
		}
		}
		else
		{
		$("DIV#banner-" + thisId).show();
		}
		
				//debugger;
				//var releaseImg = $("A.menuitem > IMG").attr("src");
				$('A.menuitem > IMG').each(function(index) 
				{
				var releaseImg = $(this).attr("src");
				releaseImg = releaseImg.replace("_ON.gif","_OFF.gif");
								
				$(this).attr("src", releaseImg);
				
				});
				
				//releaseImg = releaseImg.replace("_on.gif","_off.gif");
				
				//$("A.menuitem > IMG").attr("src", releaseImg);
				
				
				$("IMG.divider").css("display", "block");
				
				$("A.menuitem").parent("LI").removeClass("menuitemactive");
				$("A.menuitem_over").removeClass("menuitem_over_active");
		
				
				
		
		var changeImage = $("A#" + thisId + " > IMG").attr("src");
		
		
		changeImage = changeImage.replace("_OFF.gif","_ON.gif");
		changeImage = changeImage.replace("_OVER.gif","_ON.gif");
		
		$("A#" + thisId + " > IMG").attr("src", changeImage);
	
		$("A#" + thisId).parent("LI").addClass("menuitemactive");
		$("A#" + thisId+"_over").addClass("menuitem_over_active");
		$("A#" + thisId+"_over").removeClass("menuitem_over");

	
		
		
		var marginTop = $(".menuitemactive").css('margin-top');
		$(".menuitemactive").css('margin-top',parseInt(marginTop) - parseInt(5));
		
		$("LI.menuitemactive").find("IMG.divider").attr("src","/Images/NonTridion/imagenav/halfdivider.gif");
		$("LI.menuitemactive").find("IMG.divider").attr("style","margin-left:12px");
        var menulength = $('.bannerNav ul > li').length - 2;
        $("#menu"+menulength+ " .divider").css('display','none');
                
	});	
}

/********************** Animation end Here for Haven 2010 *********************/

function loadOffTheParkJSCSS()
{

 checkloadJScssfile("/js/PlacesToVisit-pager.jquery.js", "js") //dynamically load and add this .js file
// checkloadJScssfile("/js/jquery.history.js", "js") //dynamically load and add this .js file
 checkloadJScssfile("/js/OffTheParks-funcs_history.js", "js") //dynamically load and add this .js file

                        // loading css
                        var offThePark_css = document.createElement("link");
                        offThePark_css.setAttribute("rel", "stylesheet");
                        offThePark_css.setAttribute("type", "text/css");
                        offThePark_css.setAttribute("href", "/css/havenOffThePark.css");			            
                        document.getElementsByTagName("head")[0].appendChild(offThePark_css);
}

function loadOffThePark()
{
$.history.load('PlacesToVisitStep1');
var offTheParkPath = $("#OffTheParkPath").html();

 offTheParkPath = strTrim(offTheParkPath);
  if ((offTheParkPath != null) && (offTheParkPath != ""))

{
     loaderShowStep1();
     $("#regionStep2").html("");
     var currentRegionCode = $("#CurrentRegionCode").html();
     currentRegionCode = strTrim(currentRegionCode);

currentRegionCode = escape(currentRegionCode);
      $("#regionStep1").load(offTheParkPath+"?RegionCode="+currentRegionCode,loaderHideStep1);    
 $('div.interactiveBanner').css("height", "100%");
 $('div#banner-parks').css("height", "100%");
 //$('div#banner-parks').css("background", "#F8C66A url(/Images/_PW_bg-banner-parks.gif) repeat-x scroll left top");
 
 $("div#headingContents").hide();
}
}

function loaderHideStep1()
{

$("#dvloader").hide();
$("#regionStep1").show();

}
function loaderShowStep1()
{

$("#dvloader").show();
$("#regionStep1").hide();

}

function strTrim(strToTrim)
{
    if (strToTrim != null && strToTrim != "")
    {
     strToTrim = strToTrim.replace(/^\s*/, "").replace(/\s*$/, "");  
    }
    return strToTrim;
}

//Handling Query String
    
function querySt(ji) {
hu = window.location.search.substring(1);
gy = hu.split("&");
for (i=0;i<gy.length;i++) {
ft = gy[i].split("=");
if (ft[0] == ji) {
return ft[1];
}
}
} 

//Handling Cookies
function getCookie( name ) {
	var start = document.cookie.indexOf( name + "=" );
	var len = start + name.length + 1;
	if ( ( !start ) && ( name != document.cookie.substring( 0, name.length ) ) ) {
		return null;
	}
	if ( start == -1 ) return null;
	var end = document.cookie.indexOf( ';', len );
	if ( end == -1 ) end = document.cookie.length;
	return unescape( document.cookie.substring( len, end ) );
}

function setCookie( name, value, expires, path, domain, secure ) {
	var today = new Date();
	today.setTime( today.getTime() );
	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() : '' ) + //expires.toGMTString()
		( ( path ) ? ';path=' + path : '' ) +
		( ( domain ) ? ';domain=' + domain : '' ) +
		( ( secure ) ? ';secure' : '' );
}

function deleteCookie( name, path, domain ) {
	if ( getCookie( name ) ) document.cookie = name + '=' +
			( ( path ) ? ';path=' + path : '') +
			( ( domain ) ? ';domain=' + domain : '' ) +
			';expires=Thu, 01-Jan-1970 00:00:01 GMT';
}

/** 360 code ************************************************************/
/*! SWFObject v2.1 <http://code.google.com/p/swfobject/>
  Copyright (c) 2007-2008 Geoff Stearns, Michael Williams, and Bobby van der Sluis
  This software is released under the MIT License <http://www.opensource.org/licenses/mit-license.php>
*/

var swfobject = function() {
  
  var UNDEF = "undefined",
    OBJECT = "object",
    SHOCKWAVE_FLASH = "Shockwave Flash",
    SHOCKWAVE_FLASH_AX = "ShockwaveFlash.ShockwaveFlash",
    FLASH_MIME_TYPE = "application/x-shockwave-flash",
    EXPRESS_INSTALL_ID = "SWFObjectExprInst",
    
    win = window,
    doc = document,
    nav = navigator,
    
    domLoadFnArr = [],
    regObjArr = [],
    objIdArr = [],
    listenersArr = [],
    script,
    timer = null,
    storedAltContent = null,
    storedAltContentId = null,
    isDomLoaded = false,
    isExpressInstallActive = false;
  
  /* Centralized function for browser feature detection
    - Proprietary feature detection (conditional compiling) is used to detect Internet Explorer's features
    - User agent string detection is only used when no alternative is possible
    - Is executed directly for optimal performance
  */  
  var ua = function() {
    var w3cdom = typeof doc.getElementById != UNDEF && typeof doc.getElementsByTagName != UNDEF && typeof doc.createElement != UNDEF,
      playerVersion = [0,0,0],
      d = null;
    if (typeof nav.plugins != UNDEF && typeof nav.plugins[SHOCKWAVE_FLASH] == OBJECT) {
      d = nav.plugins[SHOCKWAVE_FLASH].description;
      if (d && !(typeof nav.mimeTypes != UNDEF && nav.mimeTypes[FLASH_MIME_TYPE] && !nav.mimeTypes[FLASH_MIME_TYPE].enabledPlugin)) { // navigator.mimeTypes["application/x-shockwave-flash"].enabledPlugin indicates whether plug-ins are enabled or disabled in Safari 3+
        d = d.replace(/^.*\s+(\S+\s+\S+$)/, "$1");
        playerVersion[0] = parseInt(d.replace(/^(.*)\..*$/, "$1"), 10);
        playerVersion[1] = parseInt(d.replace(/^.*\.(.*)\s.*$/, "$1"), 10);
        playerVersion[2] = /r/.test(d) ? parseInt(d.replace(/^.*r(.*)$/, "$1"), 10) : 0;
      }
    }
    else if (typeof win.ActiveXObject != UNDEF) {
      var a = null, fp6Crash = false;
      try {
        a = new ActiveXObject(SHOCKWAVE_FLASH_AX + ".7");
      }
      catch(e) {
        try { 
          a = new ActiveXObject(SHOCKWAVE_FLASH_AX + ".6");
          playerVersion = [6,0,21];
          a.AllowScriptAccess = "always";  // Introduced in fp6.0.47
        }
        catch(e) {
          if (playerVersion[0] == 6) {
            fp6Crash = true;
          }
        }
        if (!fp6Crash) {
          try {
            a = new ActiveXObject(SHOCKWAVE_FLASH_AX);
          }
          catch(e) {}
        }
      }
      if (!fp6Crash && a) { // a will return null when ActiveX is disabled
        try {
          d = a.GetVariable("$version");  // Will crash fp6.0.21/23/29
          if (d) {
            d = d.split(" ")[1].split(",");
            playerVersion = [parseInt(d[0], 10), parseInt(d[1], 10), parseInt(d[2], 10)];
          }
        }
        catch(e) {}
      }
    }
    var u = nav.userAgent.toLowerCase(),
      p = nav.platform.toLowerCase(),
      webkit = /webkit/.test(u) ? parseFloat(u.replace(/^.*webkit\/(\d+(\.\d+)?).*$/, "$1")) : false, // returns either the webkit version or false if not webkit
      ie = false,
      windows = p ? /win/.test(p) : /win/.test(u),
      mac = p ? /mac/.test(p) : /mac/.test(u);
    /*@cc_on
      ie = true;
      @if (@_win32)
        windows = true;
      @elif (@_mac)
        mac = true;
      @end
    @*/
    return { w3cdom:w3cdom, pv:playerVersion, webkit:webkit, ie:ie, win:windows, mac:mac };
  }();

  /* Cross-browser onDomLoad
    - Based on Dean Edwards' solution: http://dean.edwards.name/weblog/2006/06/again/
    - Will fire an event as soon as the DOM of a page is loaded (supported by Gecko based browsers - like Firefox -, IE, Opera9+, Safari)
  */ 
  var onDomLoad = function() {
    if (!ua.w3cdom) {
      return;
    }
    addDomLoadEvent(main);
    if (ua.ie && ua.win) {
      try {  // Avoid a possible Operation Aborted error
        doc.write("<scr" + "ipt id=__ie_ondomload defer=true src=//:></scr" + "ipt>"); // String is split into pieces to avoid Norton AV to add code that can cause errors 
        script = getElementById("__ie_ondomload");
        if (script) {
          addListener(script, "onreadystatechange", checkReadyState);
        }
      }
      catch(e) {}
    }
    if (ua.webkit && typeof doc.readyState != UNDEF) {
      timer = setInterval(function() { if (/loaded|complete/.test(doc.readyState)) { callDomLoadFunctions(); }}, 10);
    }
    if (typeof doc.addEventListener != UNDEF) {
      doc.addEventListener("DOMContentLoaded", callDomLoadFunctions, null);
    }
    addLoadEvent(callDomLoadFunctions);
  }();
  
  function checkReadyState() {
    if (script.readyState == "complete") {
      script.parentNode.removeChild(script);
      callDomLoadFunctions();
    }
  }
  
  function callDomLoadFunctions() {
    if (isDomLoaded) {
      return;
    }
    if (ua.ie && ua.win) { // Test if we can really add elements to the DOM; we don't want to fire it too early
      var s = createElement("span");
      try { // Avoid a possible Operation Aborted error
        var t = doc.getElementsByTagName("body")[0].appendChild(s);
        t.parentNode.removeChild(t);
      }
      catch (e) {
        return;
      }
    }
    isDomLoaded = true;
    if (timer) {
      clearInterval(timer);
      timer = null;
    }
    var dl = domLoadFnArr.length;
    for (var i = 0; i < dl; i++) {
      domLoadFnArr[i]();
    }
  }
  
  function addDomLoadEvent(fn) {
    if (isDomLoaded) {
      fn();
    }
    else { 
      domLoadFnArr[domLoadFnArr.length] = fn; // Array.push() is only available in IE5.5+
    }
  }
  
  /* Cross-browser onload
    - Based on James Edwards' solution: http://brothercake.com/site/resources/scripts/onload/
    - Will fire an event as soon as a web page including all of its assets are loaded 
   */
  function addLoadEvent(fn) {
    if (typeof win.addEventListener != UNDEF) {
      win.addEventListener("load", fn, false);
    }
    else if (typeof doc.addEventListener != UNDEF) {
      doc.addEventListener("load", fn, false);
    }
    else if (typeof win.attachEvent != UNDEF) {
      addListener(win, "onload", fn);
    }
    else if (typeof win.onload == "function") {
      var fnOld = win.onload;
      win.onload = function() {
        fnOld();
        fn();
      };
    }
    else {
      win.onload = fn;
    }
  }
  
  /* Main function
    - Will preferably execute onDomLoad, otherwise onload (as a fallback)
  */
  function main() { // Static publishing only
    var rl = regObjArr.length;
    for (var i = 0; i < rl; i++) { // For each registered object element
      var id = regObjArr[i].id;
      if (ua.pv[0] > 0) {
        var obj = getElementById(id);
        if (obj) {
          regObjArr[i].width = obj.getAttribute("width") ? obj.getAttribute("width") : "0";
          regObjArr[i].height = obj.getAttribute("height") ? obj.getAttribute("height") : "0";
          if (hasPlayerVersion(regObjArr[i].swfVersion)) { // Flash plug-in version >= Flash content version: Houston, we have a match!
            if (ua.webkit && ua.webkit < 312) { // Older webkit engines ignore the object element's nested param elements
              fixParams(obj);
            }
            setVisibility(id, true);
          }
          else if (regObjArr[i].expressInstall && !isExpressInstallActive && hasPlayerVersion("6.0.65") && (ua.win || ua.mac)) { // Show the Adobe Express Install dialog if set by the web page author and if supported (fp6.0.65+ on Win/Mac OS only)
            showExpressInstall(regObjArr[i]);
          }
          else { // Flash plug-in and Flash content version mismatch: display alternative content instead of Flash content
            displayAltContent(obj);
          }
        }
      }
      else {  // If no fp is installed, we let the object element do its job (show alternative content)
        setVisibility(id, true);
      }
    }
  }
  
  /* Fix nested param elements, which are ignored by older webkit engines
    - This includes Safari up to and including version 1.2.2 on Mac OS 10.3
    - Fall back to the proprietary embed element
  */
  function fixParams(obj) {
    var nestedObj = obj.getElementsByTagName(OBJECT)[0];
    if (nestedObj) {
      var e = createElement("embed"), a = nestedObj.attributes;
      if (a) {
        var al = a.length;
        for (var i = 0; i < al; i++) {
          if (a[i].nodeName == "DATA") {
            e.setAttribute("src", a[i].nodeValue);
          }
          else {
            e.setAttribute(a[i].nodeName, a[i].nodeValue);
          }
        }
      }
      var c = nestedObj.childNodes;
      if (c) {
        var cl = c.length;
        for (var j = 0; j < cl; j++) {
          if (c[j].nodeType == 1 && c[j].nodeName == "PARAM") {
            e.setAttribute(c[j].getAttribute("name"), c[j].getAttribute("value"));
          }
        }
      }
      obj.parentNode.replaceChild(e, obj);
    }
  }
  
  /* Show the Adobe Express Install dialog
    - Reference: http://www.adobe.com/cfusion/knowledgebase/index.cfm?id=6a253b75
  */
  function showExpressInstall(regObj) {
    isExpressInstallActive = true;
    var obj = getElementById(regObj.id);
    if (obj) {
      if (regObj.altContentId) {
        var ac = getElementById(regObj.altContentId);
        if (ac) {
          storedAltContent = ac;
          storedAltContentId = regObj.altContentId;
        }
      }
      else {
        storedAltContent = abstractAltContent(obj);
      }
      if (!(/%$/.test(regObj.width)) && parseInt(regObj.width, 10) < 310) {
        regObj.width = "310";
      }
      if (!(/%$/.test(regObj.height)) && parseInt(regObj.height, 10) < 137) {
        regObj.height = "137";
      }
      doc.title = doc.title.slice(0, 47) + " - Flash Player Installation";
      var pt = ua.ie && ua.win ? "ActiveX" : "PlugIn",
        dt = doc.title,
        fv = "MMredirectURL=" + win.location + "&MMplayerType=" + pt + "&MMdoctitle=" + dt,
        replaceId = regObj.id;
      // For IE when a SWF is loading (AND: not available in cache) wait for the onload event to fire to remove the original object element
      // In IE you cannot properly cancel a loading SWF file without breaking browser load references, also obj.onreadystatechange doesn't work
      if (ua.ie && ua.win && obj.readyState != 4) {
        var newObj = createElement("div");
        replaceId += "SWFObjectNew";
        newObj.setAttribute("id", replaceId);
        obj.parentNode.insertBefore(newObj, obj); // Insert placeholder div that will be replaced by the object element that loads expressinstall.swf
        obj.style.display = "none";
        var fn = function() {
          obj.parentNode.removeChild(obj);
        };
        addListener(win, "onload", fn);
      }
      createSWF({ data:regObj.expressInstall, id:EXPRESS_INSTALL_ID, width:regObj.width, height:regObj.height }, { flashvars:fv }, replaceId);
    }
  }
  
  /* Functions to abstract and display alternative content
  */
  function displayAltContent(obj) {
    if (ua.ie && ua.win && obj.readyState != 4) {
      // For IE when a SWF is loading (AND: not available in cache) wait for the onload event to fire to remove the original object element
      // In IE you cannot properly cancel a loading SWF file without breaking browser load references, also obj.onreadystatechange doesn't work
      var el = createElement("div");
      obj.parentNode.insertBefore(el, obj); // Insert placeholder div that will be replaced by the alternative content
      el.parentNode.replaceChild(abstractAltContent(obj), el);
      obj.style.display = "none";
      var fn = function() {
        obj.parentNode.removeChild(obj);
      };
      addListener(win, "onload", fn);
    }
    else {
      obj.parentNode.replaceChild(abstractAltContent(obj), obj);
    }
  } 

  function abstractAltContent(obj) {
    var ac = createElement("div");
    if (ua.win && ua.ie) {
      ac.innerHTML = obj.innerHTML;
    }
    else {
      var nestedObj = obj.getElementsByTagName(OBJECT)[0];
      if (nestedObj) {
        var c = nestedObj.childNodes;
        if (c) {
          var cl = c.length;
          for (var i = 0; i < cl; i++) {
            if (!(c[i].nodeType == 1 && c[i].nodeName == "PARAM") && !(c[i].nodeType == 8)) {
              ac.appendChild(c[i].cloneNode(true));
            }
          }
        }
      }
    }
    return ac;
  }
  
  /* Cross-browser dynamic SWF creation
  */
  function createSWF(attObj, parObj, id) {
    var r, el = getElementById(id);
    if (el) {
      if (typeof attObj.id == UNDEF) { // if no 'id' is defined for the object element, it will inherit the 'id' from the alternative content
        attObj.id = id;
      }
      if (ua.ie && ua.win) { // IE, the object element and W3C DOM methods do not combine: fall back to outerHTML
        var att = "";
        for (var i in attObj) {
          if (attObj[i] != Object.prototype[i]) { // Filter out prototype additions from other potential libraries, like Object.prototype.toJSONString = function() {}
            if (i.toLowerCase() == "data") {
              parObj.movie = attObj[i];
            }
            else if (i.toLowerCase() == "styleclass") { // 'class' is an ECMA4 reserved keyword
              att += ' class="' + attObj[i] + '"';
            }
            else if (i.toLowerCase() != "classid") {
              att += ' ' + i + '="' + attObj[i] + '"';
            }
          }
        }
        var par = "";
        for (var j in parObj) {
          if (parObj[j] != Object.prototype[j]) { // Filter out prototype additions from other potential libraries
            par += '<param name="' + j + '" value="' + parObj[j] + '" />';
          }
        }
        el.outerHTML = '<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"' + att + '>' + par + '</object>';
        objIdArr[objIdArr.length] = attObj.id; // Stored to fix object 'leaks' on unload (dynamic publishing only)
        r = getElementById(attObj.id);  
      }
      else if (ua.webkit && ua.webkit < 312) { // Older webkit engines ignore the object element's nested param elements: fall back to the proprietary embed element
        var e = createElement("embed");
        e.setAttribute("type", FLASH_MIME_TYPE);
        for (var k in attObj) {
          if (attObj[k] != Object.prototype[k]) { // Filter out prototype additions from other potential libraries
            if (k.toLowerCase() == "data") {
              e.setAttribute("src", attObj[k]);
            }
            else if (k.toLowerCase() == "styleclass") { // 'class' is an ECMA4 reserved keyword
              e.setAttribute("class", attObj[k]);
            }
            else if (k.toLowerCase() != "classid") { // Filter out IE specific attribute
              e.setAttribute(k, attObj[k]);
            }
          }
        }
        for (var l in parObj) {
          if (parObj[l] != Object.prototype[l]) { // Filter out prototype additions from other potential libraries
            if (l.toLowerCase() != "movie") { // Filter out IE specific param element
              e.setAttribute(l, parObj[l]);
            }
          }
        }
        el.parentNode.replaceChild(e, el);
        r = e;
      }
      else { // Well-behaving browsers
        var o = createElement(OBJECT);
        o.setAttribute("type", FLASH_MIME_TYPE);
        for (var m in attObj) {
          if (attObj[m] != Object.prototype[m]) { // Filter out prototype additions from other potential libraries
            if (m.toLowerCase() == "styleclass") { // 'class' is an ECMA4 reserved keyword
              o.setAttribute("class", attObj[m]);
            }
            else if (m.toLowerCase() != "classid") { // Filter out IE specific attribute
              o.setAttribute(m, attObj[m]);
            }
          }
        }
        for (var n in parObj) {
          if (parObj[n] != Object.prototype[n] && n.toLowerCase() != "movie") { // Filter out prototype additions from other potential libraries and IE specific param element
            createObjParam(o, n, parObj[n]);
          }
        }
        el.parentNode.replaceChild(o, el);
        r = o;
      }
    }
    return r;
  }
  
  function createObjParam(el, pName, pValue) {
    var p = createElement("param");
    p.setAttribute("name", pName);  
    p.setAttribute("value", pValue);
    el.appendChild(p);
  }
  
  /* Cross-browser SWF removal
    - Especially needed to safely and completely remove a SWF in Internet Explorer
  */
  function removeSWF(id) {
    var obj = getElementById(id);
    if (obj && (obj.nodeName == "OBJECT" || obj.nodeName == "EMBED")) {
      if (ua.ie && ua.win) {
        if (obj.readyState == 4) {
          removeObjectInIE(id);
        }
        else {
          win.attachEvent("onload", function() {
            removeObjectInIE(id);
          });
        }
      }
      else {
        obj.parentNode.removeChild(obj);
      }
    }
  }
  
  function removeObjectInIE(id) {
    var obj = getElementById(id);
    if (obj) {
      for (var i in obj) {
        if (typeof obj[i] == "function") {
          obj[i] = null;
        }
      }
      obj.parentNode.removeChild(obj);
    }
  }
  
  /* Functions to optimize JavaScript compression
  */
  function getElementById(id) {
    var el = null;
    try {
      el = doc.getElementById(id);
    }
    catch (e) {}
    return el;
  }
  
  function createElement(el) {
    return doc.createElement(el);
  }
  
  /* Updated attachEvent function for Internet Explorer
    - Stores attachEvent information in an Array, so on unload the detachEvent functions can be called to avoid memory leaks
  */  
  function addListener(target, eventType, fn) {
    target.attachEvent(eventType, fn);
    listenersArr[listenersArr.length] = [target, eventType, fn];
  }
  
  /* Flash Player and SWF content version matching
  */
  function hasPlayerVersion(rv) {
    var pv = ua.pv, v = rv.split(".");
    v[0] = parseInt(v[0], 10);
    v[1] = parseInt(v[1], 10) || 0; // supports short notation, e.g. "9" instead of "9.0.0"
    v[2] = parseInt(v[2], 10) || 0;
    return (pv[0] > v[0] || (pv[0] == v[0] && pv[1] > v[1]) || (pv[0] == v[0] && pv[1] == v[1] && pv[2] >= v[2])) ? true : false;
  }
  
  /* Cross-browser dynamic CSS creation
    - Based on Bobby van der Sluis' solution: http://www.bobbyvandersluis.com/articles/dynamicCSS.php
  */  
  function createCSS(sel, decl) {
    if (ua.ie && ua.mac) {
      return;
    }
    var h = doc.getElementsByTagName("head")[0], s = createElement("style");
    s.setAttribute("type", "text/css");
    s.setAttribute("media", "screen");
    if (!(ua.ie && ua.win) && typeof doc.createTextNode != UNDEF) {
      s.appendChild(doc.createTextNode(sel + " {" + decl + "}"));
    }
    h.appendChild(s);
    if (ua.ie && ua.win && typeof doc.styleSheets != UNDEF && doc.styleSheets.length > 0) {
      var ls = doc.styleSheets[doc.styleSheets.length - 1];
      if (typeof ls.addRule == OBJECT) {
        ls.addRule(sel, decl);
      }
    }
  }
  
  function setVisibility(id, isVisible) {
    var v = isVisible ? "visible" : "hidden";
    if (isDomLoaded && getElementById(id)) {
      getElementById(id).style.visibility = v;
    }
    else {
      createCSS("#" + id, "visibility:" + v);
    }
  }

  /* Filter to avoid XSS attacks 
  */
  function urlEncodeIfNecessary(s) {
    var regex = /[\\\"<>\.;]/;
    var hasBadChars = regex.exec(s) != null;
    return hasBadChars ? encodeURIComponent(s) : s;
  }
  
  /* Release memory to avoid memory leaks caused by closures, fix hanging audio/video threads and force open sockets/NetConnections to disconnect (Internet Explorer only)
  */
  var cleanup = function() {
    if (ua.ie && ua.win) {
      window.attachEvent("onunload", function() {
        // remove listeners to avoid memory leaks
        var ll = listenersArr.length;
        for (var i = 0; i < ll; i++) {
          listenersArr[i][0].detachEvent(listenersArr[i][1], listenersArr[i][2]);
        }
        // cleanup dynamically embedded objects to fix audio/video threads and force open sockets and NetConnections to disconnect
        var il = objIdArr.length;
        for (var j = 0; j < il; j++) {
          removeSWF(objIdArr[j]);
        }
        // cleanup library's main closures to avoid memory leaks
        for (var k in ua) {
          ua[k] = null;
        }
        ua = null;
        for (var l in swfobject) {
          swfobject[l] = null;
        }
        swfobject = null;
      });
    }
  }();
  
  
  return {
    /* Public API
      - Reference: http://code.google.com/p/swfobject/wiki/SWFObject_2_0_documentation
    */ 
    registerObject: function(objectIdStr, swfVersionStr, xiSwfUrlStr) {
      if (!ua.w3cdom || !objectIdStr || !swfVersionStr) {
        return;
      }
      var regObj = {};
      regObj.id = objectIdStr;
      regObj.swfVersion = swfVersionStr;
      regObj.expressInstall = xiSwfUrlStr ? xiSwfUrlStr : false;
      regObjArr[regObjArr.length] = regObj;
      setVisibility(objectIdStr, false);
    },
    
    getObjectById: function(objectIdStr) {
      var r = null;
      if (ua.w3cdom) {
        var o = getElementById(objectIdStr);
        if (o) {
          var n = o.getElementsByTagName(OBJECT)[0];
          if (!n || (n && typeof o.SetVariable != UNDEF)) {
              r = o;
          }
          else if (typeof n.SetVariable != UNDEF) {
            r = n;
          }
        }
      }
      return r;
    },
    
    embedSWF: function(swfUrlStr, replaceElemIdStr, widthStr, heightStr, swfVersionStr, xiSwfUrlStr, flashvarsObj, parObj, attObj) {
      if (!ua.w3cdom || !swfUrlStr || !replaceElemIdStr || !widthStr || !heightStr || !swfVersionStr) {
        return;
      }
      widthStr += ""; // Auto-convert to string
      heightStr += "";
      if (hasPlayerVersion(swfVersionStr)) {
        setVisibility(replaceElemIdStr, false);
        var att = {};
        if (attObj && typeof attObj === OBJECT) {
          for (var i in attObj) {
            if (attObj[i] != Object.prototype[i]) { // Filter out prototype additions from other potential libraries
              att[i] = attObj[i];
            }
          }
        }
        att.data = swfUrlStr;
        att.width = widthStr;
        att.height = heightStr;
        var par = {}; 
        if (parObj && typeof parObj === OBJECT) {
          for (var j in parObj) {
            if (parObj[j] != Object.prototype[j]) { // Filter out prototype additions from other potential libraries
              par[j] = parObj[j];
            }
          }
        }
        if (flashvarsObj && typeof flashvarsObj === OBJECT) {
          for (var k in flashvarsObj) {
            if (flashvarsObj[k] != Object.prototype[k]) { // Filter out prototype additions from other potential libraries
              if (typeof par.flashvars != UNDEF) {
                par.flashvars += "&" + k + "=" + flashvarsObj[k];
              }
              else {
                par.flashvars = k + "=" + flashvarsObj[k];
              }
            }
          }
        }
        addDomLoadEvent(function() {
          createSWF(att, par, replaceElemIdStr);
          if (att.id == replaceElemIdStr) {
            setVisibility(replaceElemIdStr, true);
          }
        });
      }
      else if (xiSwfUrlStr && !isExpressInstallActive && hasPlayerVersion("6.0.65") && (ua.win || ua.mac)) {
        isExpressInstallActive = true; // deferred execution
        setVisibility(replaceElemIdStr, false);
        addDomLoadEvent(function() {
          var regObj = {};
          regObj.id = regObj.altContentId = replaceElemIdStr;
          regObj.width = widthStr;
          regObj.height = heightStr;
          regObj.expressInstall = xiSwfUrlStr;
          showExpressInstall(regObj);
        });
      }
    },
    
    getFlashPlayerVersion: function() {
      return { major:ua.pv[0], minor:ua.pv[1], release:ua.pv[2] };
    },
    
    hasFlashPlayerVersion: hasPlayerVersion,
    
    createSWF: function(attObj, parObj, replaceElemIdStr) {
      if (ua.w3cdom) {
        return createSWF(attObj, parObj, replaceElemIdStr);
      }
      else {
        return undefined;
      }
    },
    
    removeSWF: function(objElemIdStr) {
      if (ua.w3cdom) {
        removeSWF(objElemIdStr);
      }
    },
    
    createCSS: function(sel, decl) {
      if (ua.w3cdom) {
        createCSS(sel, decl);
      }
    },
    
    addDomLoadEvent: addDomLoadEvent,
    
    addLoadEvent: addLoadEvent,
    
    getQueryParamValue: function(param) {
      var q = doc.location.search || doc.location.hash;
      if (param == null) {
        return urlEncodeIfNecessary(q);
      }
      if (q) {
        var pairs = q.substring(1).split("&");
        for (var i = 0; i < pairs.length; i++) {
          if (pairs[i].substring(0, pairs[i].indexOf("=")) == param) {
            return urlEncodeIfNecessary(pairs[i].substring((pairs[i].indexOf("=") + 1)));
          }
        }
      }
      return "";
    },
    
    // For internal usage only
    expressInstallCallback: function() {
      if (isExpressInstallActive && storedAltContent) {
        var obj = getElementById(EXPRESS_INSTALL_ID);
        if (obj) {
          obj.parentNode.replaceChild(storedAltContent, obj);
          if (storedAltContentId) {
            setVisibility(storedAltContentId, true);
            if (ua.ie && ua.win) {
              storedAltContent.style.display = "block";
            }
          }
          storedAltContent = null;
          storedAltContentId = null;
          isExpressInstallActive = false;
        }
      } 
    }
  };
}();

window.onload=function(){

} 



//added by offshore on 05-10-2010 for highlighting tabs on Haven2011 pages starts

function rolloverTabs() {

$(".tabImage, .active-tab").hover(
function() {

this.src = this.src.replace("_off.gif","_on.gif");
},
function() {


// Only fade out if the user hasn't clicked the thumb
if(!$(this).hasClass("active-tab")) {
this.src = this.src.replace("_on.gif","_off.gif");
}
}
);		
      
}
	
//added by offshore on 05-10-2010 for highlighting tabs on Haven2011 pages ends




//added by offshore on 11-10-2010 for highlighting tabs on Haven2011 pages starts

function rolloverInfoPaneTabs() 
{
addIdsAndHidingDivider();
$("A.menuitem_over, A.menuitem_over_active").hide();
$("A.menuitem").hover(function()
{
$("A.menuitem_over, A.menuitem_over_active").hide();
$('#'+this.id+'_over').show(0);

if(parseInt($("LI.menuitemactive").attr('id').replace('menu',''))==parseInt($('#'+this.id).parent('li').attr('id').replace('menu',''))-parseInt(1) 
|| parseInt($("LI.menuitemactive").attr('id').replace('menu','')) == parseInt($('.bannerNav ul > li').length-2))
    $("LI.menuitemactive").find("IMG.divider").hide();
else
    $("LI.menuitemactive").find("IMG.divider").show();
});
$("A.menuitem_over, A.menuitem_over_active").mouseleave(function()
{
$("A.menuitem_over, A.menuitem_over_active").hide();
var hoverId = this.id;
hoverId = hoverId.replace("_over", "");
$('#'+hoverId).show(0);$('#'+hoverId+'_over').hide(0);
if(parseInt($("LI.menuitemactive").attr('id').replace('menu',''))==parseInt($('#'+this.id).parent('li').attr('id').replace('menu',''))-parseInt(1))$("LI.menuitemactive").find("IMG.divider").show();
});
        
}
	
//added by offshore on 11-10-2010 for highlighting tabs on Haven2011 pages ends	

function addIdsAndHidingDivider()
{

$('.bannerNav ul > li').each(function(index) {
    if(index==0){this.id = "menutop";}
    else if(index==($('.bannerNav ul > li').length-1)){this.id = "menubottom";}
    else
        this.id = "menu" + index;
     
   
    });
    
  
    var menuOutLen = ($("LI.menuouter").length)*58 - 10;
    $("LI#menubottom").css("margin-top", menuOutLen+"px");
    
        var marginTop = $(".menuitemactive").css('margin-top');
        $(".menuitemactive").css('margin-top',parseInt(marginTop) - parseInt(5));
        
        $("LI.menuitemactive").find("IMG.divider").attr("src","/Images/NonTridion/imagenav/halfdivider.gif");
	$("LI.menuitemactive").find("IMG.divider").attr("style","margin-left:12px");
        var menulength = $('.bannerNav ul > li').length - 2;
        $("#menu"+menulength+ " .divider").css('display','none');
        //PlacesToVisitResultTabs();
        
}

function PlacesToVisitResultTabs()
{
//alert('hi');
/* added on 19/11/2010 by offshore for adding places to visit step2 info pane tab starts here*/
	  if ($("LI.PVStep2Class").length >=1)
	  {
	  var marginTop = $("LI#menubottom").css("margin-top");
	  //alert(marginTop);
	  marginTop = parseInt(marginTop)-58;
	  //alert(marginTop);
	  
	  $("LI#menubottom").css("margin-top", marginTop+"px");
	  
	  }
	  
  /* added on 19/11/2010 by offshore for adding places to visit step2 info pane tab ends here*/

}

function AccommTabsHovering()
{

            $("#divNavArea2 #accommImages li").hover(
                 function() {
                    $(this).find(".accommText").fadeIn(500);
                 },
                function() {
                    $(this).find(".accommText").fadeOut(300);
            });
}

function OurParksTabHovering(){

  // Javascript for the meganav Parks - start
            $("#megaNavMap area").hover(
                 function() {
                 
                    var areaId = $(this).attr("ID");
                    
                    var areaClass = $(this).attr("class");
                    var areaTitle = $(this).attr("title");
                    var overlayPos =  areaClass.split("_");
                    var lPos = overlayPos[0].replace("L", "") + "px";
                    var tPos = overlayPos[1].replace("T", "") + "px";
                    var imageSource = "/Images/NonTridion/MegaNavMap/" + areaId + "_hover.gif";
                    var link = $("#divNavArea1 #ParkLinks #" + areaId.replace("PARK", "LINK")).html();
                    //var link = $(".hiddenDiv a." + areaId).attr("href");
                    
                    $(this).attr("href" , link);
                    
                    $("#divNavArea1").parent().addClass("sfMapHover");
                    $("#topnav_1").parent().addClass("sfMapHover");
                    $("#divNavArea1 #ParkOverlay img").attr("src" , imageSource);
                    $("#divNavArea1 #ParkOverlay").css("left", lPos);
                    $("#divNavArea1 #ParkOverlay").css("top", tPos);
                    $("#divNavArea1 #ParkOverlay").attr("title", areaTitle);
                    $("#divNavArea1 #ParkOverlay").attr("alt", areaTitle);
                    $("#divNavArea1 #ParkOverlay").css("display", "block");
                 },
                function() {
                    $("#divNavArea1").parent().removeClass("sfMapHover");
                    $("#topnav_1").parent().removeClass("sfMapHover");
                    $("#divNavArea1 #ParkOverlay img").attr("src" , "/Images/NonTridion/MegaNavMap/blank.png");
                    $("#divNavArea1 #ParkOverlay").css("left", "0px");
                    $("#divNavArea1 #ParkOverlay").css("top", "0px");  
                    $("#divNavArea1 #ParkOverlay").attr("title", "Overlay Title");
                    $("#divNavArea1 #ParkOverlay").attr("alt", "Overlay Title");              
                    $("#divNavArea1 #ParkOverlay").css("display", "none");

            });
            
   // Javascript for the meganav Parks - end
            
}


function ThickboxBoxInit() {

	$('A.thickbox').each(function(){ 
	
	        var dWidth  = 600;   
	        var dHeight     =  800;   
	$(this).fancybox({   
	    'width':600,   
	    'height':800,   
	    'autoScale'         : false,   
	    'transitionIn'      : 'elastic',   
	    'transitionOut'     : 'elastic',   
	    'type'          : 'iframe'  
	});   
   }); 
}


function SpecialOffersPrevNextTracking()
{
var lenSpPrev = $("#specialoffershome  DIV.jcarousel-skin-offers DIV.jcarousel-container DIV.jcarousel-prev").length;
var lenSpNext = $("#specialoffershome  DIV.jcarousel-skin-offers DIV.jcarousel-container DIV.jcarousel-next").length;

if (lenSpPrev != 0)
{
$("#specialoffershome  DIV.jcarousel-skin-offers DIV.jcarousel-container DIV.jcarousel-prev").bind("click", function()
{
WEBABACUS.logclientdata('0', urlPathNameParks+"|?desc=SpecialOffers&action=LeftArrow");
});
}
if (lenSpNext != 0)
{
$("#specialoffershome  DIV.jcarousel-skin-offers DIV.jcarousel-container DIV.jcarousel-next").bind("click", function(){
WEBABACUS.logclientdata('0', urlPathNameParks+"|?desc=SpecialOffers&action=RightArrow");
});
}

}

function NewsPrevNextTracking()
{
var lenNwPrev = $("#homelatestnews  DIV.jcarousel-skin-news DIV.jcarousel-container DIV.jcarousel-prev").length;
var lenNwNext = $("#homelatestnews  DIV.jcarousel-skin-news DIV.jcarousel-container DIV.jcarousel-next").length;

if (lenNwPrev != 0)
{
$("#homelatestnews  DIV.jcarousel-skin-news DIV.jcarousel-container DIV.jcarousel-prev").bind("click", function()
{
WEBABACUS.logclientdata('0', urlPathNameParks+"|?desc=News&action=LeftArrow");
});
}
if (lenNwNext != 0)
{
$("#homelatestnews  DIV.jcarousel-skin-news DIV.jcarousel-container DIV.jcarousel-next").bind("click", function(){
WEBABACUS.logclientdata('0', urlPathNameParks+"|?desc=News&action=RightArrow");
});
}
}

function primaryMenuTabTracking()
{
primaryMenuLen = $("DIV#topnav").length;
if (primaryMenuLen != 0)
{
$("DIV#topnav>UL>LI>A").each(function(){
$(this).hover(function(){

var insideHTML = $(this).html();
insideHTML = insideHTML.replace(/\s+/g, "");
WEBABACUS.logclientdata('0', urlPathNameParks+"|?desc=TopNav&action="+insideHTML+"Tab");
},
function(){});
});
}
}

function ParksTabOnclickTracking()
{
var tabLen = $("DIV.divTabElement").length;
if (tabLen != 0)
{
$("DIV.divTabElement>A").each(function(){
$(this).click(function(){
var tabTitle = $(this).attr("title");
tabTitle = tabTitle.replace(/\s+/g,"");

WEBABACUS.logclientdata('0', urlPathNameParks+"|?desc=ParkTabs&action="+tabTitle);
});
});
}
}


function DayInTheLife()
{

$("DIV.divRHSOfferDetails>A>IMG").each(function()
{

$(this).bind("click", function(){
var titleTextDay = $(this).attr("title");

titleTextDay = titleTextDay.toLowerCase();
titleTextDay = titleTextDay.replace(/\s+/g, "");

if(titleTextDay=="dayinthelife")
{
var url=window.location.pathname + "|?desc=ParkPages&action=DayintheLife";

WEBABACUS.logclientdata("0",url);
}
});


});
}

function trackMapClickOnHomePage()
{
$("A#HolidayParksTrack").click(function(){
WEBABACUS.logclientdata('0', urlPathNameParks+"|?desc=Map&action=LaunchMapOverlay");
});
}

function fillParksDropDown()
{
var pastOptions;

$("DIV#parksLinkTest A").each(function(){
var idValue = this.id;
if (idValue == null || idValue == '')
{

var value = $(this).attr("href");

var text = $(this).html();

text = text.replace("&amp;", "&");

 //$("SELECT#myselect").append( new Option(text,value) ); 
 $("SELECT#myselect").html("<option value='"+value+"'>"+text+"</option>"+pastOptions); 
 pastOptions = $("SELECT#myselect").html();
 }
 
});
sortDropDownListByText();

var testHtml  = $("#myselect").html();

$("#myselect").html("<option value='#' selected='true'>View Park</option>"+testHtml);
document.getElementById("myselect").value = "#";

}


function sortDropDownListByText() {    
// Loop for each select element on the page.
$("#myselect").each(function() {
// Keep track of the selected option.
var selectedValue = $(this).val();
// Sort all the options by text. I could easily sort these by val. 
$(this).html($("option", $(this)).sort(function(a, b) {
return a.text == b.text ? 0 : a.text < b.text ? -1 : 1
})); 

// Select one option. 
$(this).val(selectedValue);

});
}

function viewParkDropDownChange()
{
var hrefSelected = $("SELECT#myselect").val();

document.location.href = hrefSelected;
}




//Webabacus tracking for rhs-offer

function RHSOfferLinkExtUrlTracking()
{
 $(".rhs-offer a#rhs-offer-HolidayOwnership").bind("click", function (){

var rhsOfferLinkHref = $(".rhs-offer a#rhs-offer-HolidayOwnership").attr("href");



var LinkHrefHostName=rhsOfferLinkHref.indexOf('http://');

if (LinkHrefHostName==-1)
 { 
  rhsOfferLinkHref="http:" + "//" + urlHostName + rhsOfferLinkHref;
 }


if (rhsOfferLinkHref != null && rhsOfferLinkHref != "")
      {
      
      if (rhsOfferLinkHref.match(urlHostName))
      {
      
      }
      
      else
      {
      
              WEBABACUS.logclientdata('0', urlPathNameParks+"/CustomEvent=extURL&URL="+rhsOfferLinkHref+"ClickType=Left&desc=homepage");
              
      }
      
      }

 } );
  }
  
  
  function OnHoverFadingEffect()
  {
                 $("#topnav #topnav_1, #topnav #topnav_2, #topnav #topnav_3").hover(
  
                  function() {
                       	  var divHeight = 800;
                       	  if($("#outer").height() != null)
                       	  {
                       	  	divHeight =  $("#outer").height() - 83;
                       	  }
                       	  else if($("#mainPageWrapperInner").height() != null)
                       	  {
                       	  	divHeight =  $("#mainPageWrapperInner").height() - 83;
                       	  }
                       	  
                          var height = divHeight - 83;  
                          $("#topNavCover").css("height", height + "px");  
                          $("#topNavCover").css("min-height", height + "px");  
                          $("#topNavCover").css("display", "block");                        
                            
                   },
  
                  function() {                     
                       $("#topNavCover").css("display", "none");   
                  }); 
                  
                  //force hiding the top cover
                  $("#topNavCover").hover(
                        function(){
                            $("#topNavCover").css("display", "none");
                        },
                        
                        function(){
                        }
                  );
                  

  }
  
  
