/**
*
*	Global Variables
*
*/

	var expSliderLoop;
	var referNum = 1;


$(document).ready(function(){

	//Start Looping Main Slider
	loopFpSlider();
	
	//Start Looping Experience Slider
	initExperienceSlider();
	
	//columnize
	$('.columnise').columnize({columns: 2});
	
	//hide filter button on BASH
	$('#bash-filter').css('display','none');
	
	//refer a friend hidden
	$('#refer-more-friends').css('overflow','hidden').css('height','0px');
	
	//show more friends to refer
	$('a.refer-more').click(function(){
		if(referNum < 3){
			$('#refer-more-friends').animate({height: '+=289'},300);
			referNum++;
			if(referNum == 3){
				$('.refer-more').animate({opacity: 0},400,function(){
					$('.refer-more').css('display','none');
				});
				
			}
		}
		return false;
	});
	
	/**
	
		DATE PICKER FOR CART
		
	**/
	
	$('.basket input').change(function(){
		$('#basket-message').html('* Update your basket to save your changes').removeClass('hidden');
	});
	
	$('.basket .request-date input').datepicker({
		minDate: new Date(),
		showOn: 'both',
		buttonText: '** Request a date for your photoshoot',
		onSelect: function(dateText, inst){
			$(this).siblings('button').text('** You have requested: '+dateText+'*');
			$('#basket-message').html('* Update your basket to save your changes').removeClass('hidden');
		},
		dateFormat: 'DD, dd MM yy'
	});
	
	$('.basket .request-date input').each(function(){
		if($(this).attr('value') != ''){
			$(this).siblings('button').text('You have requested: '+$(this).attr('value'));
		}
	});
	
	
	//$('.basket .request-date a').click(function(){alert('hello');});
	
	$('.book-a-shoot .shoot img, .gift-packages .shoot img').mouseover(function(){
		$(this).parent().siblings('.gallery').animate({top: -5},100,'easeOutBounce');
	});
	
	$('.book-a-shoot .shoot img, .gift-packages .shoot img').mouseleave(function(){
		$(this).parent().siblings('.gallery').animate({top: 0},100,'easeOutBounce');
	});
	
	
	
	/**
	*	Secondary Menus Drop Down Effect
	*/
	
	//If clicked..
	$("#main-menu li.drop a").click(function(){
		var activeLink = $(this).parent();
		
		$(this).removeClass('active-hover');
			
		//Check  if a Primary link has been clicked.
		if($(this).parent().attr('class') == "drop"){
			
			//If the clicked menu is already visible, hide it.
			if($("DIV.secondary",activeLink).hasClass('visible')){
				
				//Hide this secondary menu
				$("DIV.secondary",activeLink).css({'height':0}).removeClass('visible');
				$('#top-shadow').css({'top':0});
				$('a',activeLink).removeClass('active');
				
			}else{
			
				//Check to see if there is already another menu visible.
				if($('#main-menu li.drop .visible').size() > 0){
					
					//Hide the currently visible menu
					$('#main-menu li.drop a.active').removeClass('active');
					$('#main-menu li.drop .visible').css({'height':0}).removeClass('visible');
					$('#top-shadow').css({'top':0});
						//Drop down clicked menu
						$("DIV.secondary",activeLink).stop().animate({'height':35},300).addClass('visible');
						$('#top-shadow').stop().animate({'top':35},300);
						$('a',activeLink).addClass('active');
				}else{
				
					//drop down clicked menu
					$("DIV.secondary",activeLink).stop().animate({'height':35},300).addClass('visible');
					$('#top-shadow').stop().animate({'top':35},300);
					$('a',activeLink).addClass('active');
				}
			}
		}
	});
	
	
	/*
	*	Hover over main menu with SubLinks.
	*/
	
	$("#main-menu li.drop").hover(function(){
		var activeLink = $(this);
		if(!$('a',this).hasClass('active')){
			if($('#main-menu li.drop .visible').size() > 0){
				$('#main-menu li.drop a.active').removeClass('active');
				$('#main-menu li.drop .visible').stop().css({'height':0}).removeClass('visible');
				$('a',activeLink).addClass('active-hover');
				$('#top-shadow').stop().css({'top':0});
				$('#top-shadow').stop().animate({'top':35},300);
				$('DIV.secondary',activeLink).animate({'height':35},300);
			}else{
				$('a',activeLink).addClass('active-hover');
				$("DIV.secondary",activeLink).animate({'height':35},300);//addClass('visible-hover');
				$('#top-shadow').stop().animate({'top':35},300);
			}
		}
	}, function(){
		var activeLink = $(this).parent();
		if(!$('a',this).hasClass('active')){
			$('a',activeLink).removeClass('active-hover');
			$("DIV.secondary",activeLink).stop().css({'height':0})//.removeClass('visible-hover');
			$('#top-shadow').stop().css({'top':0});
		}
	});
	
	$('#main-menu').mouseleave(function(){
			if($('#main-menu DIV.secondary').hasClass('active-trail') && $('#main-menu DIV.secondary.active-trail').height() != '35px'){
				$('#main-menu DIV.secondary.active-trail').stop().css({'height':35}).addClass('visible');
				$('#top-shadow').stop().css({'top':35});
				$('#main-menu DIV.secondary.active-trail a').addClass('active');
			}
	});
	
	if($('#main-menu DIV.secondary').hasClass('active-trail')){
		$('#top-shadow').stop().css({'top':35});
	}
	
	
	/*
	*
	*	Gallery..
	*
	*/
	
	var thumbWidth = 92;
	
	//load the image into canvas when thumbnail is clicked.
	$('#gallery-thumbs a').click(function(){
		var thisImage = $(this);
		$("#gallery-canvas").html('<img class="gallery-canvas-image" src="'+$(this).attr("href")+'" alt="'+$('img', thisImage).attr('alt')+'"/>');
		$("#gallery-canvas .gallery-image-large").css("opacity",0);
		$("#gallery-canvas").addClass("loading");
		$("#gallery-canvas .gallery-canvas-image").load(function(){
			$("#gallery-canvas .gallery-canvas-image").animate({opacity:1}, 500);
			$("#gallery-canvas").removeClass("loading");
		});
		//indicator
		var position = thumbWidth * $(thisImage).parent().index() - thumbWidth;
		$('#gallery-thumbs #indicator').stop().animate({left: position},500);
		return false;
	});
	
	//Thumbs Functionality
	
	//Calculate width of ul#images
	var thumbNum = $('#gallery-thumbs a').size();
	var ulNum = 10;
	var thumbsTWidth = thumbWidth * thumbNum;
	var nextLimit = (ulNum * thumbWidth) - thumbsTWidth;
	var offset = 10;
	var gtotal = $('#gallery-thumbs ul#images li').length;
		
	$('#gallery-thumbs ul#images').css('width',thumbsTWidth);
	
	//previous move a whole row
	$('#gallery-thumbs .previous').click(function(){
		if(parseInt($('#gallery-thumbs ul').css('left'),10) > nextLimit && $('#gallery-thumbs ul#images').is(':animated') == false){
			if(offset < gtotal-10){
				$("#gallery-thumbs ul#images").animate({left: '-='+thumbWidth * ulNum});
				offset = offset + 10;
			}else{
				$("#gallery-thumbs ul#images").animate({left: '-='+thumbWidth * (gtotal-offset)});
				offset = offset + (gtotal-offset);
			}
		}
	});
	
		$('#gallery-thumbs .next').click(function(){
		if(parseInt($('#gallery-thumbs ul').css('left'),10) < 0 && $('#gallery-thumbs ul#images').is(':animated') == false){
			if(offset-10 >= 10){
				$("#gallery-thumbs ul#images").animate({left: '+='+thumbWidth * ulNum});
				offset = offset - 10;
			}else{
				offset = offset - 10;
				$("#gallery-thumbs ul#images").animate({left: '+='+thumbWidth * (offset)});
				offset = 10;
			}
		}
	});
	
	//stop image theft
	$('.gallery img').live('mousedown',function(event) {
    switch (event.which) {
        case 1:
            return false;
            break;
        case 2:
            return false;
            break;
        case 3:
            return false;
            break;
        default:
            return false;
     }
	});

	
	//load first image.
	if($("#gallery-canvas")){
		$("#gallery-canvas").html('<img class="gallery-canvas-image" src="'+$("#gallery-thumbs a:first").attr("href")+'" alt="'+$("#gallery-thumbs a:first img").attr("alt")+'" />');
		$("#gallery-canvas .gallery-canvas-image").css("opacity",0);
		$("#gallery-canvas").addClass("loading");
		$("#gallery-canvas .gallery-canvas-image").load(function(){
			$("#gallery-canvas .gallery-canvas-image").animate({opacity:1}, 500);
			$("#gallery-canvas").removeClass("loading");
		});
	}
	
	
	//Experience Nav-click{
	$('#experience-nav .nav-item').click(function(){
		navIndex = $(this).index();
		//console.log(navIndex);
		clearInterval(expSliderLoop);
		$('#experience-slider .slide:eq('+navIndex+')').addClass('click-active');
		$('#experience-nav .nav-item.active').removeClass('active');
		$('#experience-nav .nav-item:eq('+navIndex+')').addClass('active');
		$('#experience-slider .slide.click-active').animate({'opacity':1},500,function(){
			$('#experience-slider .slide.active').removeClass('active');
			$('#experience-slider .slide:eq('+navIndex+')').removeClass('click-active').addClass('active').removeAttr('style');
			
			//loopExperienceSlider();
		});
	});
	
	
	//Finishing Touches Image Stacks...
	//$('.finishing-touches .images').each(function(){
	//	var gNavNum = $(this).index();
	//	
	//	$(this).append('<div class="images-nav '+$(this).index()+'"></div>');
	//	$(this).find('img').each(function(){
	//		$('.images-nav.'+gNavNum).append("<a class='nav-item' href='#'></div>");
	//	});
	//});
	//
	//set first image
	//$('.finishing-touches .images img:first').addClass('active');
	
	//set nav item
	//$('.finishing-touches .images img').each(function(){
	//	 var num = $(this).index();
	//	 $(".finishing-touches .images:eq("+num+") .nav-item:first").addClass('active');
	//});
	
	
		//on click
		//$('.finishing-touches .nav-item').click(function(){
		//gNavNum = $(this).index();
		//	gNum = $(this).parent().attr('class').split(' ')[1];
		//	console.log(gNum);
		//	
		//	$('.finishing-touches .images:eq('+gNum+') img:eq('+gNavNum+')').addClass('click-active');
		//	$('.finishing-touches .images:eq('+gNum+') .active').removeClass('active');
		//	$('.finishing-touches .images:eq('+gNum+') .nav-item:eq('+gNavNum+')').addClass('active');
		//	
		//	$('.finishing-touches .images:eq('+gNum+') img.click-active').animate({'opacity':1},500,function(){
		//		
		//		$('.finishing-touches .images:eq('+gNum+') img.active').removeClass('active');
		//		$('.finishing-touches .images:eq('+gNum+') img:eq('+gNavNum+')').removeClass('click-active').addClass('active').removeAttr('style');
		//	
		//	});
		//	return false;
		//});
	
	
	/*
	*	Filter Function for Book a Shoot (BASH) page
	*/
	
	$('.bash-filters INPUT').click(function(){
		var ID = $(this).attr('id');
		var groupID = '.group-'+ID;
		//alert(groupID);
		if(ID == 'all'){
			$('.shoot').removeClass('hidden');
		}else{
			$('.shoot').addClass('hidden');
			$(groupID).removeClass('hidden');
		}
		
	});
	
		/*
	*	Filter Function for Gift Packages page
	*/
	$('.packages-filters INPUT').click(function(){
		var filter = $(this).data('filter');
		//console.log(filter);
		if(filter == 'all'){
			$('.shoot').removeClass('hidden');
		}else{
			$('.shoot').addClass('hidden');
			$('.shoot').each(function(){
				filterString = $(this).data('filter');
				if(filterString.search(filter) != -1){
					$(this).removeClass('hidden');
				}
			});
		}
	});


});
	

	/**
	*	FRONT PAGE SLIDER FUNCTION
	*/



function startFpSlider(){

	var activeImg;
	var nextImg;
	
	//Find active image, if not set active image as first..
	if($('#fp-slider #images img').hasClass('active')){
		activeImg = $('#fp-slider #images img.active');
	}else{
		activeImg = $('#fp-slider #images img:first');
		$(activeImg).addClass('active');
	}
	
	//find next image if not then first image..
	if($(activeImg).index() == $("#fp-slider #images img").siblings().length-1){
		nextImg = $('#fp-slider #images img:first');
	}else{
		nextImg = $(activeImg).next();
	}
	
	//set next image
	$(nextImg).addClass('next');
	
	$(nextImg).animate({'opacity': 1}, 1000, function(){
	
		$(activeImg).removeClass('active');
		$(nextImg).removeClass('next').addClass('active').removeAttr('style');
	
	});

}

function loopFpSlider(){
	
	//set first image
	$('#fp-slider #images img:first').addClass('active');
	//start loop
	setInterval('startFpSlider()',3000);
	
}


	/**
	*
	*	EXPERIENCE SLIDESHOW
	*
	*/

function startExperienceSlider(){

	var activeSlide;
	var nextSlide;
	var navIndex;
	
	//Find active image, if not set active image as first..
	if($('#experience-slider .slide').hasClass('active')){
		activeSlide = $('#experience-slider .slide.active');
	}else{
		activeSlide = $('#experience-slider .slide:first');
		$(activeSlide).addClass('active');
	}
	
	//find next image if not then first image..
	if($(activeSlide).index() == $("#experience-slider .slide").siblings().length-1){
		nextSlide = $('#experience-slider .slide:first');
	}else{
		nextSlide = $(activeSlide).next();
	}
	
	
	
	//set nav	
	navIndex = activeSlide.index();
	$("#experience-nav .nav-item:eq("+navIndex+")").removeClass('active');
	navIndex = nextSlide.index();
	$("#experience-nav .nav-item:eq("+navIndex+")").addClass('active');
	
	
	//set next image
	$(nextSlide).addClass('next');
	
	$(nextSlide).animate({'opacity': 1}, 1000, function(){
	
		$(activeSlide).removeClass('active');
		$(nextSlide).removeClass('next').addClass('active').removeAttr('style');
	
	});

}

function loopExperienceSlider(){
	
	//start loop
	expSliderLoop = setInterval('startExperienceSlider()',5000);
	
}

function initExperienceSlider(){
	var navIndex;
	
	//set first image
	$('#experience-slider .slide:first').addClass('active');
	$('#experience-slider .slide').each(function(){
		$('#experience-nav').append("<a class='nav-item' href='#'></div>");
	});
	
	//set nav item
	navIndex = $('#experience-slider .slide.active').index();
	//console.log(NavIndex);
	$("#experience-nav .nav-item:eq("+navIndex+")").addClass('active');
	
	loopExperienceSlider();
	

}
