var urlPathNameParks = window.location; 
//<![CDATA[
function rollovers() {
	$(".rollover").hover(
		function() {
			this.src = this.src.replace("_off","_on");
		},
		function() {
			this.src = this.src.replace("_on","_off");
		}
	);		
}

function fancyBoxInit() {

	$('A.fancy').each(function(){ 
	
	       if($(this).attr('href').match(/width=[0-9]+/i) != null)
	        	var dWidth  = parseInt($(this).attr('href').match(/width=[0-9]+/i)[0].replace('width=','')); 
	        if($(this).attr('href').match(/height=[0-9]+/i) != null)
	        	var dHeight     =  parseInt($(this).attr('href').match(/height=[0-9]+/i)[0].replace('height=',''));   
	$(this).fancybox({   
	    'width':dWidth,   
	    'height':dHeight,   
	    'autoScale'         : false,   
	    'transitionIn'      : 'elastic',   
	    'transitionOut'     : 'elastic',   
	    'type'          : 'iframe'  
	});   
   }); 
}



function ThickboxBoxInit() {

	$('A.thickbox').each(function(){ 
	
	        var dWidth  = parseInt($(this).attr('href').match(/width=[0-9]+/i)[0].replace('width=',''));   
	        var dHeight     =  parseInt($(this).attr('href').match(/height=[0-9]+/i)[0].replace('height=',''));   
	$(this).fancybox({   
	    'width':dWidth,   
	    'height':dHeight,   
	    'autoScale'         : false,   
	    'transitionIn'      : 'elastic',   
	    'transitionOut'     : 'elastic',   
	    'type'          : 'iframe'  
	});   
   }); 
}


function rhsOfferPanel() {
	$("DIV.rhsOfferScrollPanel").cycle({ 
		fx: "scrollUp", 
		speed: 1000, 
		timeout: 5000 
	});
}

function Enquiry(type,PageType)
{
if(PageType=="groups")
		{
				PageType="GroupsSpecialOffers";
		}
		else if(PageType=="events")
		{
				PageType="EventsSpecialOffers";
		}
		//var webabvar='desc='+PageType+'&action=TopContentModule_GroupSavings_TermsAndConditions';
		//alert(webabvar);
	if (type=="TopOffers")
	{	
		WEBABACUS.logclientdata('0',urlPathNameParks+'|?desc='+PageType+'&action=TopContentModule_GroupSavings_TermsAndConditions'); // WEBABACUS Tracking for offThePark
	}
	
}

function mediaplexTrackingOnRefer(PageType,Page)
{
	//alert("hi");
	if(Page=="Enquiry")
	{
	var hu = queryString("Confirmation");
	if(hu=="1")
	{
	//alert("yes");
	$("DIV#mediaplexTrackingOnEnquiryConfirmation").html("<iframe src=\"https://web.haven.com/0/13793/universal.html?page_name=havengroups_"+PageType+"_enquiry_conf&havengroups_"+PageType+"_conf=1&mpuid=\" HEIGHT=\"1\" WIDTH=\"1\" FRAMEBORDER=\"0\"></iframe>");
	}
	var hu = queryString("Ref_Confirmation");
	if(hu=="1")
		{
		//alert("no");
		
		$("DIV#mediaplexTrackingOnEnquiryConfirmation").html("<iframe src=\"https://web.haven.com/0/13793/universal.html?page_name=havengroups_"+PageType+"_refevent_conf&havengroups_"+PageType+"_refevent_conf=1&mpuid=\" HEIGHT=\"1\" WIDTH=\"1\" FRAMEBORDER=\"0\"></iframe>");
	}
	}
	if(Page=="Refer")
	{		
	$("DIV#mediaplexTrackingOnRefer").html("<iframe src=\"https://web.haven.com/0/13793/universal.html?page_name=havengroups_"+PageType+"_refevent_star&havengroups_"+PageType+"_refevent_star=1&mpuid=\" HEIGHT=\"1\" WIDTH=\"1\" FRAMEBORDER=\"0\"></iframe>");
	}
	
}

//Handling Query String
    
function queryString(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];
}
}
} 



function TrackingSisterWebsite(PageType)
{
if(PageType=="groups")
		{
				PageType="GroupsEnquiryPage";
		}
		else if(PageType=="events")
		{
				PageType="EventsEnquiryPage";
		}
		var webab='/CustomEvent=extURL&URL=www.haven.com&ClickType=Left&desc='+PageType;
		WEBABACUS.logclientdata('0',urlPathNameParks+webab); // WEBABACUS Tracking for offThePark
		
		//WEBABACUS.logclientdata('0',urlPathNameParks+'/CustomEvent=extURL&URL=www.haven.com&ClickType=Left&desc='+PageType); // WEBABACUS Tracking for offThePark
	
	
}

function EnquiryOfferDetails(position,offertype,offer,PageType)
{
	if(position=="Left")
	{
		position="LHS";
	}
	if(position=="Right")
	{
		position="RHS";
	}		
	offertype=offertype.replace(/\s/g,'');	
		
	if(PageType=="groups")
		{
				PageType="GroupsSpecialOffers";
		}
		else if(PageType=="events")
		{
				PageType="EventsSpecialOffers";
		}
		//var text=$("A#"+offer).html();
	//text=text.replace(/\s/g,'');
	
		//var webabvar='desc='+PageType+'&action='+position+'_'+offertype+'_OfferDetails';
		//alert(webabvar);
	WEBABACUS.logclientdata('0',urlPathNameParks+'|?desc='+PageType+'&action='+position+'_'+offertype+'_OfferDetails'); // WEBABACUS Tracking for offThePark
}

function TrackingSitemap()
{
	
	WEBABACUS.logclientdata('0',urlPathNameParks+'/CustomEvent=extURL&URL=clicktools.com/dashboard/survey/response.jsp&ClickType=Left&desc=footer');
	
}
function EnquiryPeelOff(position,offertype,offer,PageType)
{
	//alert(offer);
	if(position=="Left")
	{
		position="LHS";
	}
	if(position=="Right")
	{
		position="RHS";
	}		
	offertype=offertype.replace(/\s/g,'');	
	var id=offer;
	var alt=$("A#"+offer).children("IMG").attr("alt");
	alt=alt.replace(/\s/g,'');
	//alert(alt);
	if(PageType=="groups")
	{
			PageType="GroupsSpecialOffers";
	}
	else if(PageType=="events")
	{
			PageType="EventsSpecialOffers";
	}
	//var webabvar='desc='+PageType+'&action='+position+'_'+offertype+'_'+alt;
	//alert(webabvar);
	WEBABACUS.logclientdata('0',urlPathNameParks+'|?desc='+PageType+'&action='+position+'_'+offertype+'_'+alt); // WEBABACUS Tracking for offThePark
}

function EnquiryPeelOffClose(position,offertype,offer,PageType)
{
	//alert(offer);
	if(position=="Left")
	{
		position="LHS";
	}
	if(position=="Right")
	{
		position="RHS";
	}		
	offertype=offertype.replace(/\s/g,'');	
	var id=offer;
	var alt=$("A#"+offer).children("IMG").attr("alt");
	alt=alt.replace(/\s/g,'');
	//alert(alt);
	if(PageType=="groups")
	{
		PageType="GroupsSpecialOffers";
	}
	else if(PageType=="events")
	{
		PageType="EventsSpecialOffers";
	}
	//var webabvar='desc='+PageType+'&action='+position+'_'+offertype+'_'+alt;
	//alert(webabvar);
	WEBABACUS.logclientdata('0',urlPathNameParks+'|?desc='+PageType+'&action='+position+'_'+offertype+'_'+alt); // WEBABACUS Tracking for offThePark
}


		
function applyCorners() {
	bannerCorner();
	$(".rhsQuote").corner("round 14px #FFFFFF");
	$("#contentF #contentL #rhsBanner #rhsBannerCallback").corner("top round 16px #FFFFFF");
	$("#contentF #contentL #rhsBanner #rhsBannerEmailEnquiry").corner("bottom round 16px #FFFFFF");
	//$("#contentL #rhsBannerOuter").corner("round 14px #FFFFFF");
	//$("#rhsBannerCallback").corner("round top 1px #FFFFFF");
	$("#rhsBannerNew").corner("round br 14px #FFFFFF");
	
	
}

function bannerCorner() {
	var bannerH = $("#banner").height();
	var bannerW = $("#banner").width();
	if (bannerH >= 346) {
		var cornerDiv = $("<div id=\"bannerBtmRgt\">&nbsp;</div>");
		$("#banner").append(cornerDiv);
		$("#banner").corner("bl round 21px #FFFFFF");
		$("#bannerBtmRgt").corner("br round 16px #FFFFFF");
	} 
	else if (bannerW == 963) {
		//do nothing to wide banner corners!
	}
	else
	{
	
		$("#banner").corner("round bl 14px #FFFFFF");
	}
	
}

function trackFooterLinks()
{
$("#footer UL LI A").click(function(ev)
{

var linkHref = $(this).attr("href");

linkHref = linkHref.replace("http://","");
var linkText = $(this).html();
linkText = linkText.toLowerCase();

if (linkText != "site feedback")
{
WEBABACUS.logclientdata('0',urlPathNameParks+'|?CustomEvent=extURL&URL='+linkHref+'&ClickType=Left&desc=footer'); 
}

});
}

function trackingForVideoLink()
{
$("A#TrackingForVideo").click(function(ev)
{
WEBABACUS.logclientdata('0',urlPathNameParks+'|?desc=Homepage&action=Video'); 

});
}


function AccomTourTracking()
{
WEBABACUS.logclientdata('0',urlPathNameParks+'|?desc=Discover_Haven&action=Accommodation_Tour'); 
}

//load default functions
$(document).ready(function() {
	//default
	
	$(document).pngFix(); 
	
	rollovers();
	fancyBoxInit();
	//rhsOfferPanel();
	applyCorners();
	loadCarouselandOffersTemp();
	animExperienceFlag = true;
	loadHeavenExperiences();
	specialOffersPeelOpenClose();
	trackFooterLinks();
	trackingForVideoLink();
});


/**************************************************************************/
//Pushing map image to background ***************************************/
var defaultMapimage;
function loadParkMap() {
	defaultMapimage = $("#ukmapInside").attr("src");
	if ((defaultMapimage != null) && (defaultMapimage != "")) {
		$('#map_insideParks').css("background-image", "url(" + defaultMapimage + ")");
		$('#map_insideParks').css("background-repeat", "no-repeat");
	} 
	parkMap();
}

function parkMap() {
	$("A.map_link").hover(
	function() {
		var parkNameImg = $(this).parent("DIV").children("DIV.mapHiddenImg").children("A").attr("href");
		$("#ukmapInside").attr({
			"src" : parkNameImg
		});
	},
	function() {
		$("#ukmapInside").attr({
			"src" : defaultMapimage
		});
	});
}


function showFormOptions() {
	$("#frm-optional").hide();
	$("a#frm-optional-view").toggle(function() {
		$("#frm-optional").fadeIn();
		//$("a#frm-optional-view").html("Hide options &gt;");/*updatde by offshore on 20.04.10 as per the new JS received from onsite*/
	}, function() {
		$("#frm-optional").fadeOut();
		//$("a#frm-optional-view").html("View more options &gt;");/*updatde by offshore on 20.04.10 as per the new JS received from onsite*/
	});
}

function bannerCarousel() {
	//$("DIV.homePageImageCarousel").cycle({ 
	//	fx: "fade", 
	//	speed: 1000, 
	//	timeout: 5000 
	//});
}


/**************** Offers Animation Start *************************/

var offerslideTime = 1150;
var offerstayTime = 5000;
var offerLinks;
var offerImageLinks;
var offerEndDateLinks;
var offerCount = 0;
var offerCounter = 1;
var currentlyDisplayed = 1;
var offerToChange;
var daysLeftImage;
function startOffersAnim()
{

        offerLinks = $("#HomeOffersHidden").find("li a.OfferClickLink");
        offerImageLinks = $("#HomeOffersHidden").find("li a.OfferImageLink");
        
        offerEndDateLinks=$("#HomeOffersHidden").find("li a.OfferEndDateLink");
daysLeftImage=$(".daysLeftBackground").attr("href");
        offerCount = offerImageLinks.length;
       
        if ((offerCount > 1) && (offerCount == offerLinks.length))
        {
           changeOffers();		
        }
	
}
/*****************************************************************/
function changeOffers()
{
	if (currentlyDisplayed == 1)
	{
		offerToChange = 2;
	}
	else
	{
		offerToChange = 1;
	}
	offerCounter = offerCounter + 1;
	if (offerCounter > offerCount)
	{
		offerCounter = 1;
	}
	var offerImgTitle = offerImageLinks[offerCounter-1].innerHTML;
	//var Q=offerEndDateLinks[offerCounter-1].innerHTML;
	var offerHtml = "<a href=\"" + offerLinks[offerCounter-1].href + "\"><img src=\""+ offerImageLinks[offerCounter-1].href + "\"  alt=\"" + offerImgTitle + "\"  title=\"" + offerImgTitle + "\" /></a>";
	$("div.HomeOffers" + offerToChange).html(offerHtml);
	$("#offerTempImg").html("<img src=\"" + offerImageLinks[offerCounter-1].href + "\"  onload=\"animateOffers();\">");
	//animateOffers();
}

function animateOffers()
{

	$('div.HomeOffers1').animate({
		top : "-=164px"
	}, offerslideTime, "linear");
	$('div.HomeOffers2').animate({
		top : "-=164px"
	}, offerslideTime, "linear", offersAnimated);
}

function offersAnimated()
{
	var tempOffer = offerToChange;
	offerToChange = currentlyDisplayed;
	currentlyDisplayed = tempOffer;
	
	$("div.HomeOffers" + offerToChange).css("top","164px");
	//$("div#test"+offerToChange).css("top", "75px");
	$("div.HomeOffers" + offerToChange).animate({
		top : "164px"
	}, offerstayTime, "linear", changeOffers);
	
	
}


function loadCarouselandOffersTemp()
{
var tempHtml = $("#ExperienceCarousel").html();
$("#ExperienceCarousel").html(tempHtml + "<div id=\"expTempImg\">test</div><div id=\"offerTempImg\">test</div><div id=\"accommTempImg\">test</div>") 
}

/*****************  Cross Fade --  Haven Groups - Start   *********************/

var animationTime = 10;
var stayTime = 4000;
var counter = 0;
var counterForLinear = 0;
var maxCount = 0;
var expCarliArrayBg;
var expCarliArrayLink;
var expbgFileName;
var carouselType;
var animExperienceFlag = false;
function loadHeavenExperiences()
{

	if (maxCount == 0)
	{
		var carouselHtml = $("#ExperienceCarousel #ExperienceCarouselhtml").html();  //basic HTML to replace
		carouselHtml = strTrim(carouselHtml);
		//alert(carouselHtml);
		if (carouselHtml != null)
		{
		//replacing temp classes to real required classes
		carouselHtml = carouselHtml.replace(/havenExperienceFrameTemp/gi, "havenExperienceFrame");
		carouselHtml = carouselHtml.replace(/heavenExperienceMsgTemp/gi, "heavenExperienceMsg");
		$('div.havenExperienceImage').html(carouselHtml);		
		expCarliArrayBg = $("#ExperienceCarousel").find("li a.CarouselImageLink");
		expCarliArrayLink = $("#ExperienceCarousel").find("li a.CarouselMoreClickLink");
		if (expCarliArrayLink.length ==  expCarliArrayBg.length)
		{
		  maxCount = expCarliArrayBg.length;
		} 
		}
	}
	//alert(maxCount);
	//For checking Carousel Type linear or circular
	//counterForLinear = counterForLinear + 1;
	//debugger;
		carouselType = $("#carouselType").val();
		//carouselType = $("#carouselType")[0].value;
		//alert(carouselType);
		//alert(counterForLinear);
		if(carouselType == "linear" && counterForLinear >= maxCount)
		{
		animExperienceFlag = false;
		}
		counterForLinear = counterForLinear + 1;
	if ((animExperienceFlag == true) && (maxCount > 0))
	{
	
		counter = counter + 1;
		if (counter > maxCount)
		 { 
		   counter = 1;
		 }
		 var bgfileName= expCarliArrayBg[counter-1].href;  //carousel background image
		 expbgFileName = bgfileName;
		 var clickLink= expCarliArrayLink[counter-1].href; //carousel click link
		 $('div.havenExperienceFrame').css('opacity', 0);
		 $('div.havenExperienceImage .havenExperienceFrame').css("background-image", "url('" + bgfileName + "')");
		 $('div.havenExperienceImage .havenExperienceFrame a').attr("href", clickLink);
		 $('div.havenExperienceImage .havenExperienceFrame').css("display", "block");	
		 $("#expTempImg").html("<img src=\"" + bgfileName + "\"  onload=\"experiencesLoaded();\">");
		 //$('div.havenExperienceImage').load(expbgFileName);
		 //experiencesLoaded();
	}
}



function experiencesLoaded()
{

	$('div.havenExperienceFrame').css('opacity', 0);
	//$('.heavenExperienceMsg').css('display','none');
	
        $('div.havenExperienceFrame').animate({
 		opacity : 1.0
	}, animationTime, "linear", frameLoaded);
	
}


function frameLoaded()
{
	//Putting the framebg image to outer div
	
	$('.heavenExperienceMsg').css('display','block');
	var framebgImage = $('div.havenExperienceFrame').css('background-image');
	$('div.havenExperienceImage').css('background-image',framebgImage);
 
        $('div.havenExperienceFrame').animate({
  		opacity : 0.0
	}, stayTime, "linear", loadHeavenExperiences);

}

function stopHavenExperienceAmin()
{
     animExperienceFlag = false;
		
}

function showReferTerms() {
	$("#termsLinkContainer").hide();

	$("A#termsLink").toggle(function() {
		
		    //alert("new")
		          
		     WEBABACUS.logclientdata('0',urlPathNameParks+'|?desc=TermsAndConditions&action=ReferGroup'); // WEBABACUS Tracking for offThePark
   
		$("#termsLinkContainer").fadeIn();
		return false;
	}, function() {
		$("#termsLinkContainer").fadeOut();
		return false;
	});
}




/*************** 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 ********************/

/*****************  Cross Fade --  Haven Groups - End    *********************/
function strTrim(strToTrim)
{

    if (strToTrim != null && strToTrim != "")
    {
     strToTrim = strToTrim.replace(/^\s*/, "").replace(/\s*$/, "");  
    }
    return strToTrim;
}

//]]>

