/*
	Easy plugin to get element index position
	Author: Peerapong Pulpipatnan
	http://themeforest.net/user/peerapong
*/

$.fn.getIndex = function(){
	var $p=$(this).parent().children();
    return $p.index(this);
}

var slideWidth = 0;
var offset = 0;
var totalWidth = 0;

jQuery(function () {

		var formatter = false;
		var build = false;
		if (jQuery('.slideshow li').length>1) {
			formatter = function(index,panel) { return '<img src="'+jQuery(panel).find('img').attr('rel')+'" />'; };
			build=true;
		}

    	jQuery('.slideshow').anythingSlider({
    	        easing: "easeInOutExpo",
    	        autoPlay: false,
    	        startStopped: false,
    	        animationTime: 600,
    	        hashTags: true,
    	        buildNavigation: build,
    	        buildArrows: false,
    			pauseOnHover: true,
    			startText: "Go",
    	        stopText: "Stop",
				navigationFormatter: formatter
    	    });
			
		//on product pages we inject another div around the thumbNav so we can setup horizontal scrolling
		jQuery('.single #thumbNav >*').wrapAll('<div id="thumbScrollContainer">');
		var newWidth = jQuery('#thumbScrollContainer a').width()+2+6+5;
		newWidth = newWidth * jQuery('#thumbScrollContainer a').length;
		jQuery('#thumbScrollContainer').width(newWidth);
		
		/*$('#roundabout').roundabout({
			childSelector: 'div.card_container',
			btnNext: '#btnprev',
			btnPrev: '#btnnext',
			minScale: 0.5
		});*/
		
		/*
		$('#products-inner').roundabout({
    	    childSelector: 'div.a-product',
			btnNext: '#btnprev',
			btnPrev: '#btnnext',
			minScale: 0.5
		});
		*/
		if ($('body').hasClass('home')) {
			var swidth = $('.card_container').width()+5+20;
			var snum = $('.card_container').length;
			var newWidth = (swidth * snum);
			
			slideWidth = swidth;
			totalWidth = newWidth;
			
			
			
			$('#roundabout-inner').width(newWidth);
			$('#btnprev').click( function() { 
				if (offset<0) { 
					offset += slideWidth;
					$('#roundabout-inner').animate({left: offset}, 1000);
				} 
				checkEdges();
				return false;
			});
			
			$('#btnnext').click( function() {
				if (offset>(-1*(totalWidth-(slideWidth*3)))) {
					offset -= slideWidth;
					$('#roundabout-inner').animate({left: offset}, 1000);
				}
				checkEdges();
				return false;
			});
			
			checkEdges();
		} else {
			var swidth = $('.a-product').width()+5+20;
			var snum = $('.a-product').length;
			var newWidth = (swidth * snum);
			
			if (snum<3) { $('#btnprev, #btnnext').css('visibility', 'hidden'); }
			slideWidth = swidth;
			totalWidth = newWidth;
			
			$('#products-clip').width(newWidth);
			$('#btnprev').click( function() { 
				if (offset<0) { 
					offset += slideWidth;
					$('#products-clip').animate({left: offset}, 1000);
				} 
				checkEdges();
				return false;
			});
			
			$('#btnnext').click( function() {
				if (offset>(-1*(totalWidth-(slideWidth*3)))) {
					offset -= slideWidth;
					$('#products-clip').animate({left: offset}, 1000);
				}
				checkEdges();
				return false;
			});
			
			checkEdges();
		}
    });

function checkEdges()
{
	if (offset>=0) {
		//disable left
		$('#btnprev').css({'cursor': 'default'}).addClass('disable');
	} else {
		$('#btnprev').css({'cursor': 'pointer'}).removeClass('disable');
	}
	
	if (offset <= (-1*(totalWidth-(slideWidth*3)))) {
		$('#btnnext').css({'cursor': 'default'}).addClass('disable');
	} else {
		$('#btnnext').css({'cursor': 'pointer'}).removeClass('disable');
	}
}

$(document).ready(function(){ 

	$('.pp_gallery a').fancybox({ 
		padding: 0,
		overlayColor: '#000', 
		transitionIn: 'elastic',
		transitionOut: 'elastic',
		overlayOpacity: .8
	});
	
	$('.img_frame').fancybox({ 
		padding: 0,
		overlayColor: '#000', 
		overlayOpacity: .8
	});
	
	$.validator.setDefaults({
		submitHandler: function() { 
		    var actionUrl = $('#contact_form').attr('action');
		    
		    $.ajax({
  		    	type: 'POST',
  		    	url: actionUrl,
  		    	data: $('#contact_form').serialize(),
  		    	success: function(msg){
  		    		$('#contact_form').hide();
  		    		$('#reponse_msg').html(msg);
  		    	}
		    });
		    
		    return false;
		}
	});
		    
		
	$('#contact_form').validate({
		rules: {
		    your_name: "required",
		    email: {
		    	required: true,
		    	email: true
		    },
		    message: "required"
		},
		messages: {
		    your_name: "Please enter your name",
		    email: "Please enter a valid email address",
		    agree: "Please enter some message"
		}
	});	
	
	var photoItems = $('#content_wrapper .inner .card').length;
	var photoWidth = parseInt($('#gallery_width').val())+60;
	var scrollArea = photoWidth * photoItems;
	var scrollWidth = $('#wrapper').width() -140;
	
	//$('#content_wrapper').css({width: scrollWidth-100+'px'});



	var content_slider_width = $('#wrapper').width() - 136-24;
	$('#content_slider').css({width: content_slider_width+'px'});
	
	
	/* Group Slider */
	var groupItems = $('.a-product').length;
	var groupWidth = $('.a-product').width() + parseInt($('.a-product').css('margin-right')) + parseInt($('.a-product').css('margin-left'))+10;
	var groupArea = groupWidth * groupItems;
	//$('.page-template-products-php #products-inner').width(groupArea+200);
	//$('.page-template-products-php #products-container').css('width',window.innerWidth-250+'px').css('overflow', 'hidden');
$('.page-template-products-php #products-container').css('width','100%').css('overflow', 'hidden');

	
	//$("#content_wrapper .inner").css('width', scrollArea);
	//$("#content_wrapper").attr({scrollLeft: 0});					   
	
	//$("#content_wrapper").css({"overflow":"hidden"});
	
	
	var auto_scroll = $('#pp_gallery_auto_scroll').val();
	
	if(auto_scroll != 0)
	{
		$("#move_next").mouseenter( 
    		function() {
    	    	timerId = setInterval(function() { 
    	    	
    	    		var speed = parseInt($('#slider_speed').val());
					var slider = $('#content_slider');
					var sliderCurrent = slider.slider("option", "value");
					sliderCurrent += speed; // += and -= directions of scroling with MouseWheel
					
					if (sliderCurrent > slider.slider("option", "max")) sliderCurrent = slider.slider("option", "max");
					else if (sliderCurrent < slider.slider("option", "min")) sliderCurrent = slider.slider("option", "min");
					
					slider.slider("value", sliderCurrent);
    	    	
    	    	}, 100);
    	    	
    	    	//$(this).find('img').animate({ opacity: 1 }, 300);
    		}
    	);
    	$("#move_next").mouseleave( 
    		function() { 
    			clearInterval(timerId); 
    		}
		);
		
		$("#move_prev").mouseenter(
    		function() {
    	    	timerId = setInterval(function() { 
    	    	
    	    		var speed = parseInt($('#slider_speed').val());
					var slider = $('#content_slider');
					var sliderCurrent = slider.slider("option", "value");
					sliderCurrent -= speed; // += and -= directions of scroling with MouseWheel
					
					if (sliderCurrent > slider.slider("option", "max")) sliderCurrent = slider.slider("option", "max");
					else if (sliderCurrent < slider.slider("option", "min")) sliderCurrent = slider.slider("option", "min");
					
					slider.slider("value", sliderCurrent);
    	    	
    	    	}, 100);
    	    	
    	    	//$(this).find('img').animate({ opacity: 1 }, 300);
    		}
    	);
    	$("#move_prev").mouseleave(
    		function() { 
    			clearInterval(timerId); 
    		}
		);
	}
	
	$('#content_slider').slider({
		animate: 'slow',
		change: changeSlide,
		slide: doSlide
	});
	
	function changeSlide(e, ui)
	{
		var maxScroll = $("#content_wrapper").attr("scrollWidth") - $("#content_wrapper").width();
		var currentScroll = (ui.value * (maxScroll / 100))-100;
		$("#content_wrapper").stop().animate({scrollLeft: currentScroll}, 1200);
		
		maxScroll = $("#products-container").attr("scrollWidth") - $("#products-container").width();
		currentScroll = (ui.value * (maxScroll / 100))-0;
		$("#products-container").stop().animate({scrollLeft: currentScroll}, 1200);
	}

	function doSlide(e, ui)
	{
		var maxScroll = $("#content_wrapper").attr("scrollWidth") - $("#content_wrapper").width();
		var currentScroll = (ui.value * (maxScroll / 100))-100;
		$("#content_wrapper").stop().attr({scrollLeft: currentScroll});
		
		maxScroll = $("#products-container").attr("scrollWidth") - $("#products-container").width();
		currentScroll = (ui.value * (maxScroll / 100))-0;
		$("#products-container").stop().animate({scrollLeft: currentScroll}, 1200);
	}
	
	$('#main_menu li:not(.current_page_item) a').not( 'ul li ul li a' ).each(function()
	{	
		//alert($(this).parent().attr('id'));
		if ($(this).parent().attr('id')!="menu-item-25") {
			$(this).hover(function()
			{	
				$(this).addClass('hover');
				$(this).animate({left: 15}, 200);
			},
			function()
			{	
				$(this).removeClass('hover');
				$(this).animate({left: 10}, 200);
			});	
		}
		
	});
	
	$('#main_menu li ul li:not(.current-menu-item)').each(function()
	{	
		
		$(this).hover(function()
		{	
			$(this).find('a:first').addClass('hover');
			$(this).find('a:first').animate({left: 15}, 200);
		},
		function()
		{	
			$(this).find('a:first').removeClass('hover');
			$(this).find('a:first').animate({left: 10}, 200);
		});
		
	});
	
	$( 'ul#main_menu > li:has( ul li.current-menu-item )' ).each(function()
	{	
     	$(this).find('ul.sub-menu').css({overflow:'visible', height:'auto', display: 'block'});
	});
	
	/*
	$('ul#main_menu > li:has( ul.sub-menu )').click(function()
	{
		var $sublist = jQuery(this).find('ul:first');
		$sublist.slideToggle('fast');
		
		return false;
	})
	;
	*/
	$('ul#main_menu > li:has( ul.sub-menu )').hover(function()
	{
		$(this).find('ul.sub-menu').slideDown();
	},
	function()
	{
		$(this).find('ul.sub-menu').slideUp();
	}
	);
	
	
	$('ul#main_menu > li > ul.sub-menu li ').click(function()
	{
		var subURL = $(this).find('a:first').attr('href');
		location.href=subURL;
		return true;
	});

});
