var j = jQuery.noConflict();

j(document).ready(function(){
													 						
	// Removes SEO text in navItems
	j(".clearText").html("");
	j(".clearText").removeClass("clearText");
	

	// WHAT WE DO Slider ------------------------------------------
	var doIsSliding;
	var itemNumber;
	var itemHeight = 190;
	var holderLength = j("#whatWeDoSlider .mainContentItem");
	var holderHeight = 200 * holderLength;
	var animSpeed = 600;
	var currentWhatWeDo, currentWhatWeDoLink;

	// init
	j("#whatWeDoSlider .mainContent").css("height",itemHeight+"px");
	j("#whatWeDoSlider .mainContentItem").css({"display":"none","position":"absolute"});
	j("#whatWeDoSlider .mainContentItem:first").css("display","block").addClass("active");
	j("#whatWeDoSlider .mainMenu ul a:first").addClass("active");
	
	j("#whatWeDoSlider .mainMenu ul a").bind("click", function() {
		if (doIsSliding != true) {
			itemNumber = j(this).attr("rel");
			currentWhatWeDo = j("#whatWeDoSlider #contentItem"+itemNumber);
			// if not current item
			if (!currentWhatWeDo.hasClass("active")) {
				doIsSliding = true;
				// clear prev
				j("#whatWeDoSlider .mainMenu ul a").removeClass("active");
				// slide down current
				currentWhatWeDoLink = j(this);
				currentWhatWeDoLink.addClass("active");
				currentWhatWeDo.css({"opacity":"0","top":itemHeight+"px","display":"block"})
					.animate({
						top: '0',
						opacity: 1
					},animSpeed,function(){
						currentWhatWeDo.addClass("active");
						j("#whatWeDoSlider .mainContentItem").css("display","none");
						j("#whatWeDoSlider .mainContent .active").css("display","block");
						doIsSliding = false;
				});
				j("#whatWeDoSlider .mainContent .active").css({"opacity":"1","top":"0px","display":"block"}).addClass("last-active")
					.animate({
						top: '-'+itemHeight,
						opacity: 0
					},animSpeed,function(){
						j("#whatWeDoSlider .mainContent .last-active.active").css("display","none").removeClass("last-active").removeClass("active");
						doIsSliding = false;
				});
			}
		}
	});
	
	
	// TEAM Slider ------------------------------------------
	var currentPerson, lastPerson;
	var currentHeight;
	var teamIsSliding;
	
	// init
	j(".teamList li p").css({'display':'none',overflow:'hidden'});
	
	// function
	j(".teamList li a").bind("click", function() {
		currentPerson = j(this).parent().next("p");
		lastPerson = j(".teamList li.active");
			
		if (!currentPerson.parent().hasClass("active") && teamIsSliding!=true) {
			teamIsSliding = true;
			currentHeight = currentPerson.outerHeight();
			currentPerson.parent().addClass("active");
			lastPerson.removeClass("active");
			j(".teamList li p").slideUp("slow");
			currentPerson.css({height:0,opacity:0}).animate({
					height: (currentHeight)+'px',
					opacity: 1
				},600,function(){
					teamIsSliding = false;
			});
		} else {
			j(".teamList li.active p").slideUp("slow",function(){
				j(".teamList li.active").removeClass("active");
				teamIsSliding = false;
			});
		};
		
	});
	
	
	
	
	
	// HOME PAGE BANNER Slider ------------------------------------------
	var bannerPause = 4000;
	var bannerTimer;
	
	var bannerIsSliding;
	var bannerNumber;
	var bannerWidth = 1600;
	var bannerHolderLength = j(".bannerSlider .banner");
	var bannerHolderHeight = 200 * bannerHolderLength;
	var animationSpeed = 300;
	var currentBanner, currentBannerLink;

	// init
	j(".bannerSlider .banner").css({"display":"none", "position":"absolute", "width":"100%", "opacity":"0"});
	j(".bannerSlider .banner:first").css({"display":"block", "opacity":"1"}).addClass("active");
	j(".bannerNum ul a:first").addClass("active");
	j(".bannerNum ul a:last").addClass("last");

	// initialise
	if (j(".bannerSlider .banner").length > 0) { 
			bannerTimer = setTimeout(function() {
				autoBannerSlide();
			},bannerPause);
	}

	// auto select the next button
	function autoBannerSlide() {
		var button;
		if (j(".bannerSlider .banner:animated").length == 0) {
			if ( j(".bannerNum ul a.active").hasClass("last") ) {
				button = j(".bannerNum ul a:first");
			} else {
				button = j(".bannerNum ul a.active").parent().next().find("a");
			}
			
			doBannerSlide(button);
		}
	}

	// do on click
	j(".bannerNum ul a").bind("click", function() {
		var button;
		if (j(".bannerSlider .banner:animated").length == 0) {
			if ( j(".bannerNum ul a.active").hasClass("last") ) {
				button = j(".bannerNum ul a:first");
			} else {
				button = j(".bannerNum ul a.active").parent().next().find("a");
			}
		doBannerSlide(j(this));	
		}
	});
	
	// main function - slides and reset slider
	function doBannerSlide(clickedButton) {
			clearTimeout(bannerTimer);
			
			var previousBanner = j(".bannerSlider #bannerContainer .active");
			bannerNumber = clickedButton.attr("rel");
			currentBanner = j(".bannerSlider #banner"+bannerNumber);
			currentBannerLink = clickedButton;
			// if it's not current item
			if ( !currentBanner.hasClass("active") && j(".bannerSlider .banner:animated").length==0) {
				// clear all buttons
				j(".bannerNum ul a").removeClass("active");
				
				// fade previous slide out
				previousBanner.css({"display":"block"})
					.animate({
						opacity: 0
					},animationSpeed,'easeInExpo',function(){
						previousBanner.css("display","none").removeClass("active");
						
						// fade current slide in
						currentBannerLink.addClass("active");
						currentBanner.css({"display":"block"})
							.animate({
								opacity: 1
							},animationSpeed,'easeOutExpo', function(){
								currentBanner.addClass("active");

								// reset timer
								bannerTimer = setTimeout(function() {
									autoBannerSlide();
								},bannerPause);
						});
						
				});
					
			}
	}



	// CAREERS Slider ------------------------------------------
	var jobIsSliding;
	var jobNumber;
	var jobWidth = 780;
	var jobHolderLength = j(".careerDetails .career");
	var jobHolderHeight = 200 * jobHolderLength;
	var jobAnimationSpeed = 600;
	var currentJob, currentJobLink;

	// init
	j(".careerDetails .career").css({"display":"none", "position":"absolute", "background":"#fff"});
	j(".careerDetails .career:first").css("display","block").addClass("active");
	j("ul.careerListing a:first").addClass("active");
	
	j("ul.careerListing a").bind("click", function() {
		if (jobIsSliding != true) {
			jobNumber = j(this).attr("rel");
			currentJob = j(".careerDetails #career"+jobNumber);
			// if not current item
			if (!currentJob.hasClass("active")) {
				jobIsSliding = true;
				// clear prev
				j("ul.careerListing a").removeClass("active");
				// slide left current
				currentJobLink = j(this);
				currentJobLink.addClass("active");
				currentJob.css({"left":jobWidth+"px", "top":"0px", "display":"block"})
					.animate({
						left: '0',
						opacity: 1
					},jobAnimationSpeed,function(){
						currentJob.addClass("active");
						j(".careerDetails .career").css("display","none");
						j(".careerDetails #careerContainer .active").css("display","block");
						jobIsSliding = false;
				});
				j(".careerDetails #careerContainer .active").css({"left":"0px", "top":"0px","display":"block"}).addClass("last-active")
					.animate({
						left: '-'+jobWidth,
						opacity: 0
					},jobAnimationSpeed,function(){
						j(".careerDetails #careerContainer .last-active.active").css("display","none").removeClass("last-active").removeClass("active");
						jobIsSliding = false;
				});/**/
			}
		}
	});
	
	
});


