var maxBackgroundWidth = 4000;					// The maximum width of the background graphic
var pageTransitionSpeed = 1500;					// The desired transition speed between pages

var pageContent;
var currentBackgroundPos = 0;
var currentForegroundPos = 0;

var preloadImages = ['images/illustration.png', 'images/illustration_1.png', 'images/illustration_2.png', 'images/illustration_4.png','images/illustration_5.png', 'images/illustration_6.png', 'images/illustration_7.png', 'images/bbc_button_selected.png','images/contact_button_selected.png','images/education_button_selected.png', 'images/extras_button_selected.png', 'images/gallery_button_selected.png', 'images/home_button_selected.png', 'images/info_button_selected.png', 'images/kids_button_selected.png','images/parkmap_button_selected.png', 'images/supportus_button_selected.png'];
//var baseurl = 'http://www.ethoscreative.co.uk/manorhouse/';
//var baseurl = 'http://localhost/manorhouse/';
//var baseurl = 'http://www.manorhousewildlifepark.co.uk/';
var currentColour = '#AEA1A5;';
var baseSubNav = 0;
var numberOfSubNavLinks = 0;
var previouslyLoaded = Array();
var loadingBarPointer;
var animalMoverLeft = 0;
var currentAnimalPos = 0;
var bottomLinkMoverLeft = 0;

function slowLinks()
{
	if ($(this).attr('rel')!='')
		$(this).attr('href', $(this).attr('href')+'/noscroll');
}

$(function() {


	if (($.browser.msie && $.browser.version<8) || location.href.indexOf('noscroll')!=-1) 
	{
		$('a').each(slowLinks);
		
		$('#move_next_animal').click(function() {  $('.animal_mover').animate({'left':animalMoverLeft - 800+'px'}); animalMoverLeft-=800; currentAnimalPos++;  });
		$('#move_prev_animal').click(function() {  $('.animal_mover').animate({'left':animalMoverLeft + 800+'px'}); animalMoverLeft+=800; currentAnimalPos--; });
		
		$('#gallery_list a').lightBox({imageLoading: baseurl+'images/lightbox-ico-loading.gif',
		imageBtnClose: baseurl+'images/lightbox-btn-close.png',
		imageBtnPrev: baseurl+'images/lightbox-btn-prev.png',
		imageBtnNext: baseurl+'images/lightbox-btn-next.png'}); 
		
		$('body').supersleight();
		
		$('.video').click(openVideo);
		
		fadeInComplete();
 	}
	else
	{
		
		if ($(document).width() < 1400)
		{
			$('#illustration').css('width', '4200px');
			$('#illustration').prepend('<div class="illustration" id="ill_1"></div>');
			$('#illustration').append('<div class="illustration" id="ill_3"></div>');
			//alert('lessthan');
			$('.illustration').css('width', '1400px');
			$('#illustration').css('left', -1400-((1400 - $(document).width()) / 2));
			//$('#illustration').css('left', -$(document).width());
		}
		else
		{
			$('#illustration').css('width', ($(document).width() * 3)+'px');
			$('#illustration').prepend('<div class="illustration" id="ill_1"></div>');
			$('#illustration').append('<div class="illustration" id="ill_3"></div>');
			$('.illustration').css('width', $(document).width()+'px');
			$('#illustration').css('left', -$(document).width());
		}
		
		
		//$('a').each(replaceLinks)
		initialiseNav();
		
		$('#subnav_prev_link img').fadeTo('fast', 0.2);
		$('#subnav_prev_link').click(movePreviousSubNav);
		$('#subnav_next_link').click(moveNextSubNav);
		
		if (!isNaN(parseInt($('#subnav').css('left'))))
			baseSubNav = parseInt($('#subnav').css('left'));
		bottomLinkMoverLeft = baseSubNav;
		
		$('#subnav li').each(function() { numberOfSubNavLinks++; });
	
	
		$('#loading').css({'position':'absolute', 'left':'0', 'top':'0', 'backgroundColor':'#FFFFFF', 'backgroundImage':'url(images/loader.gif)', 'backgroundPosition':'center', 'backgroundRepeat':'no-repeat', 'zIndex':'50'});
		$('#loading').hide();
		
		$.preLoadImages(preloadImages);
	
		resize();
		$(window).resize(resize);
		
		fadeInComplete();
	}
});

function replaceLinks()
{
	if ($(this).attr('rel')!='')
	{
		$(this).attr('href', 'javascript:void(0);');
		$(this).click(function() { changePage(parseInt($(this).attr('rel'))); });
	}
}

function moveNextSubNav()
{
	//var currentLeft = 0;
	
	//if (!isNaN(parseInt($('#subnav').css('left'))))
	//	currentLeft = parseInt($('#subnav').css('left'));
	
	if ((bottomLinkMoverLeft-249) <= -((numberOfSubNavLinks-3) * 249))
		$('#subnav_next_link img').fadeTo('fast', 0.2);	
	if (bottomLinkMoverLeft > -((numberOfSubNavLinks-3) * 249))
	{
		bottomLinkMoverLeft-=249;
		$('#subnav').animate({'left': (bottomLinkMoverLeft)+'px'});	
	}
	$('#subnav_prev_link img').fadeTo('fast', 1);
}

function movePreviousSubNav()
{
	//var currentLeft = 0;
	
	//if (!isNaN(parseInt($('#subnav').css('left'))))
	//	currentLeft = parseInt($('#subnav').css('left'));
	
	if ((bottomLinkMoverLeft+249) >= baseSubNav)
		$('#subnav_prev_link img').fadeTo('fast', 0.2);	   	
	if (bottomLinkMoverLeft < baseSubNav)
	{
		bottomLinkMoverLeft+=249;
		$('#subnav').animate({'left': (bottomLinkMoverLeft)+'px'});
	}
	$('#subnav_next_link img').fadeTo('fast', 1);
	
}

function initialiseNav() {
	
	$('a').each(removeNavLinks);
	
	$('a').each(replaceLinks);
	
	// Videos can be shown in a popup video window
	$('.video').click(openVideo);
	
	$('.question').click(showAnswer);

	$('#move_next_animal').click(function() {  if (currentAnimalPos<=5) { $('.animal_mover').animate({'left':animalMoverLeft - 800+'px'}); animalMoverLeft-=800; currentAnimalPos++;}  });
	$('#move_prev_animal').click(function() {  if (currentAnimalPos>=1) {$('.animal_mover').animate({'left':animalMoverLeft + 800+'px'}); animalMoverLeft+=800; currentAnimalPos--; } });
	
	$('#gallery_list a').lightBox({imageLoading: baseurl+'images/lightbox-ico-loading.gif',
		imageBtnClose: baseurl+'images/lightbox-btn-close.png',
		imageBtnPrev: baseurl+'images/lightbox-btn-prev.png',
		imageBtnNext: baseurl+'images/lightbox-btn-next.png'}); 
	
	$('#subnav_prev_link').click(movePreviousSubNav);
	$('#subnav_next_link').click(moveNextSubNav);
	
	$('body').supersleight();

}

function showAnswer()
{
	$(this).fadeOut(function() { $(this).next().fadeIn(); });	
}

function openVideo()
{
	var flashvars = {};
	var params = {
		wmode: "transparent"
	};
	var attributes = {};
	
	$('<div id="video_overlay"></div><div id="video_holder"><div id="video"></div></div>').insertAfter('#siteholder');
	
	$('#video_overlay').hide();
	$('#video_overlay').addClass('video_overlay');
	$('#video_overlay').css('height', $(document).height()+'px');
	$('#video_overlay').fadeIn();
	
	swfobject.embedSWF($(this).attr('href'), "video", "675", "550", "9.0.0","expressInstall.swf", flashvars, params, attributes);
	
	return false;	
}

function closeVideo()
{
	$('#video_overlay').remove();
	$('#video_holder').remove();
}

function sendContact()
{
	$.ajax({
		url: base_url+"index.php/pageserver/postquery",
      	type: "POST",
      	data: '?name='+$('#name').val()+'&email='+$('#email').val()+'&query='+escape($('#query').val()), 
      	dataType: "html"
	});
	changePage(92);
	return false;
}

function setNavLinks()
{
	$(this).attr('href','javascript:void(0);')
	$(this).click(function() { changePage(parseInt($(this).attr('rel'))); });
}
function removeNavLinks()
{
	$(this).unbind();
}

function changePage(id)
{
	pageTracker._trackPageview("index.php/pageserver/ajaxpage/"+id );
	
	if (!pageContent)
		pageContent = getNewPage(id);
	else if (pageContent.id!=id)
		pageContent = getNewPage(id);
}

function getNewPage(id)
{
	var foundPage = false;
	for (var a=0; a<previouslyLoaded.length; a++)
	{
		if (previouslyLoaded[a]==id)
			foundPage = true;
	}
	
	//$.getJSON(baseurl+'index.php/pageserver/ajaxpage/'+id, gotNewPage);
	var d=new Date();
	$.ajax({
	  url: baseurl+'index.php/pageserver/ajaxpage/'+id+'/'+d.getTime(),
	  dataType: 'json',
	  success: gotNewPage
	});

}

function gotNewPage(json)
{	
	if (json)
		pageContent = json;
	$('.scrollable').css({'overflow':'hidden'});
	$('#content').fadeOut(contentFaded);
}

function contentFaded()
{
	var newMenuIndex = 0;
	var imageArray = Array();
	
	$('#nav li a, #pagenav li a, .back a, #animal_nav a').each(removeNavLinks);
	$('#content').html(pageContent.content);
	initialiseNav();
	
	$('img').each(function() { imageArray.push($(this).attr('src')); });

	pageLoaded();

}

function pageLoaded()
{

	if (currentPageType!=pageContent.pageType)
	{
		if (currentPagePosition==0)
		{
			refreshIllustration();
		}
		else
		{
			if (pageContent.order>currentPagePosition)
				movePageRight();
			else
				movePageLeft();
		}
	}
	else
	{
		$('#content').fadeIn(fadeInComplete);	
	}
	currentPagePosition = pageContent.order;
	currentPageType=pageContent.pageType;
	
	$('.menu_bar').removeClass('selected');
	$('#menu_'+pageContent.parent).addClass('selected');
}

function fadeInComplete() { 
	//alert('faded');
	$('.scrollable').jScrollPane({scrollbarWidth:12, reinitialiseOnImageLoad:1});//, color:currentColour}); 
	sIFR.replace(agency, {
		selector: 'h2.white_header',
	  css: '.sIFR-root { color: #FFFFFF; font-size: 20px; background-color:none;  }',
	  wmode: 'transparent'		
	});
	sIFR.replace(agency, {
	  selector: 'h2',
	  css: '.sIFR-root { color: #000000; font-size: 20px; background-color:none;  }',
	  wmode: 'transparent'
	});
	sIFR.replace(agency, {
	  selector: 'h3',
	  css: '.sIFR-root { color: #000000; font-size: 18px; background-color:none; margin-bottom: 5px; }',
	  wmode: 'transparent'
	});
	sIFR.replace(agency, {
	  selector: 'h6',
	  css: '.sIFR-root { color: #FFFFFF; font-size: 28px; background-color:none; margin-bottom: 5px; }',
	  wmode: 'transparent'
	});

}

function movePageRight()
{
	currentBackgroundPos-=$(document).width() / 3; //400;
	currentForegroundPos-=$(document).width() * 2; //2500;
	//$('#ill_3').css('backgroundImage','url('+getPageIllustration()+')');
	$('#ill_3').removeAttr('class');
	$('#ill_3').addClass('illustration');
	$('#ill_3').addClass('illustration_'+pageContent.pageType);
	//('backgroundImage','url('+getPageIllustration()+')');
	$('#background').animate({backgroundPosition: '(-'+currentBackgroundPos+'px 0px)'}, pageTransitionSpeed);
	if ($(document).width() < 1400)
		$('#illustration').animate({'left': -($('#ill_3').width() * 2)-((1400 - $(document).width()) / 2)}, pageTransitionSpeed, refreshIllustration);
	else
		$('#illustration').animate({'left': -($('#ill_3').width() * 2)}, pageTransitionSpeed, refreshIllustration);
	$('#foreground').animate({backgroundPosition: '(-'+currentForegroundPos+'px 0px)'}, pageTransitionSpeed);
}

function movePageLeft()
{
	currentBackgroundPos+=$(document).width() / 3; //400;
	currentForegroundPos+=$(document).width() * 2;//2500;
	//$('#ill_1').css('backgroundImage','url('+getPageIllustration()+')');
	$('#ill_1').removeAttr('class');
	$('#ill_1').addClass('illustration');
	$('#ill_1').addClass('illustration_'+pageContent.pageType);
	$('#background').animate({backgroundPosition: '(-'+currentBackgroundPos+'px 0px)'}, pageTransitionSpeed);
	if ($(document).width() < 1400)
		$('#illustration').animate({'left': -((1400 - $(document).width()) / 2)}, pageTransitionSpeed, refreshIllustration);
	else
		$('#illustration').animate({'left': 0}, pageTransitionSpeed, refreshIllustration);
	$('#foreground').animate({backgroundPosition: '(-'+currentForegroundPos+'px 0px)'}, pageTransitionSpeed);
}

function refreshIllustration()
{
	//$('#ill_1').css('backgroundImage','none');
	$('#ill_1').removeAttr('class');
	$('#ill_1').addClass('illustration');
	$('#ill_2').removeAttr('class');
	$('#ill_2').addClass('illustration');
	$('#ill_2').addClass('illustration_'+pageContent.pageType);
	$('#ill_3').removeAttr('class');
	$('#ill_3').addClass('illustration');
	//$('#ill_3').css('backgroundImage','none');
	//$('#illustration').css('left', -$(document).width());
	
	if ($(document).width() < 1400)
		$('#illustration').css('left', -1400-((1400 - $(document).width()) / 2));
	else
		$('#illustration').css('left', -$(document).width());
	
	$('#content').fadeIn(fadeInComplete);
}

function resize()
{
	// Resize function
	// -- Resizes the elements of the screen either on page intialisation, or when the user resizes their browser.
	
	if ($(document).width() < 1400)
	{
		$('#illustration').css('width', '4200px');
		$('.illustration').css('width', '1400px');
		$('#illustration').css('left', -1400-((1400 - $(document).width()) / 2));
	}
	else
	{
		$('#illustration').css('width', ($(document).width() * 3)+'px');
		$('.illustration').css('width', $(document).width()+'px');
		$('#illustration').css('left', -$(document).width());
	}
	
	//$('#illustration').css('width', $(document).width() * 3);
	//$('#illustration').css('left', -$(document).width());
	//$('.illustration').css('width', $(document).width());
	//$('#loading').css('width', $(document).width());
	//$('#loading').css('height', $(document).height());
	
}

//function submitPayment()
//{
//	var paymentConfirmation = '';
//	var itemCounter = 1;
//	var $total = 0;
//	
//	//alert($('#adult').val());
//	
//	if ($('#adult').val()!='0')
//	{
//		paymentConfirmation += '<input type="hidden" value="All inclusive ADULT ticket" name="item_name_'+itemCounter+'"><input type="hidden" value="8.95" name="amount_'+itemCounter+'"><input type="hidden" name="quantity_'+itemCounter+'" value="'+$('#adult').val()+'">';
//		itemCounter++;
//		$total += ($('#adult').val() * 8.95);
//	}
//	if ($('#child').val()!='0')
//	{
//		paymentConfirmation += '<input type="hidden" value="All inclusive CHILD ticket" name="item_name_'+itemCounter+'"><input type="hidden" value="6.95" name="amount_'+itemCounter+'"><input type="hidden" name="quantity_'+itemCounter+'" value="'+$('#child').val()+'">';
//		itemCounter++;
//		$total += ($('#child').val() * 6.95);
//	}
//	if ($('#concession').val()!='0')
//	{
//		paymentConfirmation += '<input type="hidden" value="All inclusive CONCESSION ticket" name="item_name_'+itemCounter+'"><input type="hidden" value="6.95" name="amount_'+itemCounter+'"><input type="hidden" name="quantity_'+itemCounter+'" value="'+$('#concession').val()+'">';
//		itemCounter++;
//		$total += ($('#concession').val() * 6.95);
//	}
//	
//	if ($('#groupadult').val()!='0')
//	{
//		paymentConfirmation += '<input type="hidden" value="Group ADULT ticket" name="item_name_'+itemCounter+'"><input type="hidden" value="7.95" name="amount_'+itemCounter+'"><input type="hidden" name="quantity_'+itemCounter+'" value="'+$('#groupadult').val()+'">';
//		itemCounter++;
//		$total += ($('#groupadult').val() * 7.95);
//	}
//	if ($('#groupteacher').val()!='0')
//	{
//		paymentConfirmation += '<input type="hidden" value="Group TEACHER ticket" name="item_name_'+itemCounter+'"><input type="hidden" value="7.95" name="amount_'+itemCounter+'"><input type="hidden" name="quantity_'+itemCounter+'" value="'+$('#groupteacher').val()+'">';
//		itemCounter++;
//		$total += ($('#groupteacher').val() * 7.95);
//	}
//	if ($('#groupchild').val()!='0')
//	{
//		paymentConfirmation += '<input type="hidden" value="Group CHILD ticket" name="item_name_'+itemCounter+'"><input type="hidden" value="5.95" name="amount_'+itemCounter+'"><input type="hidden" name="quantity_'+itemCounter+'" value="'+$('#groupchild').val()+'">';
//		itemCounter++;
//		$total += ($('#groupchild').val() * 5.95);
//	}
//	if ($('#hire').val()!='0')
//	{
//		paymentConfirmation += '<input type="hidden" value="Hire of a keeper for 2 hours" name="item_name_'+itemCounter+'"><input type="hidden" value="50.00" name="amount_'+itemCounter+'"><input type="hidden" name="quantity_'+itemCounter+'" value="'+$('#hire').val()+'">';
//		itemCounter++;
//		$total += ($('#hire').val() * 50.00);
//	}
//	
//	if ($('#dbadult').val()!='0')
//	{
//		paymentConfirmation += '<input type="hidden" value="Season Ticket ADULT" name="item_name_'+itemCounter+'"><input type="hidden" value="17.90" name="amount_'+itemCounter+'"><input type="hidden" name="quantity_'+itemCounter+'" value="'+$('#dbadult').val()+'">';
//		itemCounter++;
//		$total += ($('#dbadult').val() * 17.90);
//	}
//	if ($('#dbchild').val()!='0')
//	{
//		paymentConfirmation += '<input type="hidden" value="Season Ticket CHILD" name="item_name_'+itemCounter+'"><input type="hidden" value="13.90" name="amount_'+itemCounter+'"><input type="hidden" name="quantity_'+itemCounter+'" value="'+$('#dbchild').val()+'">';
//		itemCounter++;
//		$total += ($('#dbchild').val() * 13.90);
//	}
//	
//	paymentConfirmation = '<div class="information_block_content scrollable"><p><b>Please remember to print a copy of your PayPal receipt and bring it with you when you visit.<br>All receipts must be shown on entry to the park.</b></p><p>Click the button below to complete your order. The total price you will be charged is &pound;'+$total.toFixed(2)+'</p><form action="https://www.paypal.com/cgi-bin/webscr" method="post" id="payment_form"><input type="hidden" value="_cart" name="cmd"><input type="hidden" value="1" name="upload"><input type="hidden" value="manor_park@btconnect.com" name="business"><input type="hidden" value="GBP" name="currency_code">' + paymentConfirmation + '<input type="submit" value="Go to PayPal to pay"></form></div>';
//	
//	//alert(paymentConfirmation);
//	$('#text_block').html(paymentConfirmation);
//	
//	return false;
//}