jQuery(document).ready(function($){ 

	$('body').removeClass('no_js').addClass('yes_js');
        
    $('#testimonial-slider ul').cycle({
        fx: "scrollHorz",
        easing: "easeOutCubic",
        speed: 600,
        timeout: 5000,
        prev: '.arrow-left',
        next: '.arrow-right'
    });        
    
//     removeFilter = function (el) {
//     	if (!$.support.opacity && el.style.filter) {
//     		try { el.style.removeAttribute('filter'); }
//     		catch(smother) {} // handle old opera versions
//     	}
//     };            
    
    $('#nav li > ul.sub-menu li').each(function(){
        n = $('ul.sub-menu', this).length;
        
        if(n) $(this).addClass('sub');
    });
    
    $('#nav ul > li').hover(
        function()
        {
            $('ul.sub-menu:not(ul.sub-menu li > ul.sub-menu)', this).fadeIn(300);    
        },
    
        function()
        {
            $('ul.sub-menu:not(ul.sub-menu li > ul.sub-menu)', this).hide();    
        }
    );               
    
    $('#nav ul.sub-menu li').hover(
        function()
        {
            var options;       
            
            winWidth = $(document).width();
            
            subMenuWidth = $(this).parent().outerWidth();
            space = $(this).offset().left + subMenuWidth * 2;
            
            if(space < winWidth) options = {left:subMenuWidth-12};
            else options = {left:subMenuWidth*-1};            
            
            $('ul.sub-menu', this).hide().css(options).fadeIn(300);
        },
    
        function()
        {
            $('ul.sub-menu', this).hide();
        }
    ); 

	function yiw_lightbox()
	{   
	    $('a.thumb').hover(
	                            
	        function()
	        {
	            $('<a class="zoom">zoom</a>').appendTo(this).css({
					dispay:'block', 
					opacity:0, 
					height:$(this).children('img').height(), 
					width:$(this).children('img').width(),
					'top':$(this).css('padding-top'),
					'left':$(this).css('padding-left'),
					padding:0}).animate({opacity:0.4}, 500);
	        },
	        
	        function()
	        {           
	            $('.zoom').fadeOut(500, function(){$(this).remove()});
	        }
	    );
	    
		jQuery("a[rel^='prettyPhoto']").prettyPhoto({
	        slideshow:5000, 
	        autoplay_slideshow:false,
	        show_title:false
	    });
	}
	
	yiw_lightbox();

    $('a.socials, a.socials-small').tipsy({fade:true, gravity:'s'});
    
    $('.toggle-content:not(.opened), .content-tab:not(.opened)').hide();
    $('.tab-index a').click(function(){           
        $(this).parent().next().slideToggle(300, 'easeOutExpo');
        $(this).toggleClass('opened');
        $(this).attr('title', ($(this).attr('title') == 'Close') ? 'Open' : 'Close');
        return false;
    });     
    
    function cufon_tabs() {
		Cufon.replace( '#content ul.tabs h4', { hover:true } );
	}
    
    $('.tabs-container').yiw_tabs({
        tabNav  : 'ul.tabs',
        tabDivs : '.border-box'
    });
    
    // quick-contact     
    var height_nav = $('.quick-contact-box .nav-box').height() - $('.quick-contact-box .box-info').innerHeight() + $('.quick-contact-box .box-info').height();
    $('.quick-contact-box .box-info').css('min-height', height_nav );      
	
	$('.quick-contact-box .box-info div.panel').hide();
	$('.quick-contact-box .box-info div.panel:eq(0)').show();
		
	if( $('.quick-contact-box .active').length == 0 )
		$('.quick-contact-box .nav-box li:first-child').addClass('active');	
		
    $('.quick-contact-box .nav-box a').click(function(){
		var hash = $(this).attr('href');                        
    	$('.quick-contact-box .active').removeClass('active');
		
		$('.quick-contact-box .box-info div.panel').hide();
		$(hash).fadeIn('slow');
		$(this).parent().addClass('active');	
		//alert(hash);
		
		return false;
	});
    
    // jquery effect items footer                     
    $('#footer ul.menu li:not(.no-jquery-effect li), .wpsc_categories li, .sidebar li:not(#quick-contact li, .sidebar .recent-posts li)').hover(
		function()
		{                                               
			$(this).children('a').animate({marginLeft: 5}, 300);
		},
		function()
		{
			$(this).children('a').animate({marginLeft: 0}, 300);
		}
	);
    
    // jquery effect items footer                     
    $('.widget_price_range a').hover(
		function()
		{                                               
			$(this).animate({marginLeft: 5}, 300);
		},
		function()
		{
			$(this).animate({marginLeft: 0}, 300);
		}
	);
	
	// cart
	$('#topbar li.fast-info').hover(
		function()
		{
			$(this).find('.access-info-box').slideDown(300);
		},
		
		function()
		{
			$(this).find('.access-info-box').hide();
		}
	);
	$('#topbar li.fast-info > a').click( function(){ return false; } );
	
	// checkout
	if( window.location.hash == '' )
		hash = '#order-step';
	else
		hash = window.location.hash;
		
	$('#shipping_cart .step:not('+hash+')').css({'position':'absolute', left:0, top:0}).css({'display':'none', opacity:0});
	$('#shipping_cart').css('height', $('#shipping_cart '+hash).height());
	
	$('#checkout-next-step').click(function(){
		var this_panel = $(this).parents('.step');
		var next_panel = $(this).parents('.step').next();
		
		this_panel.animate({opacity:0}, 300, function(){ $(this).hide() });
		next_panel.show().animate({opacity:1}, 300, function(){
			$('#shipping_cart').css('height', next_panel.height());
		});
		return false;	
	});
	
	$('#checkout-back-step').click(function(){
		var this_panel = $(this).parents('.step');
		var prev_panel = $(this).parents('.step').prev();
		
		this_panel.animate({opacity:0}, 300, function(){ $(this).hide() });
		prev_panel.show().animate({opacity:1}, 300, function(){
			$('#shipping_cart').css('height', prev_panel.height());
		});
		return false;	
	});                
	              
	// accordion slider
	$('ul.accordion-slider').hrzAccordion({
		//openOnLoad : 2,
		handlePosition : "left"
	});                     
	
	// autoclean labels
	$elements = $('#footer .quick-contact-widget input[type="text"], #footer .quick-contact-widget textarea, input.email-newsletter');
    
	$elements.each(function(){
        if( $(this).val() != '' )	
			$(this).prev().css('display', 'none');
    }); 
    $elements.focus(function(){
        if( $(this).val() == '' )	
			$(this).prev().css('display', 'none');
    }); 
    $elements.blur(function(){ 
        if( $(this).val() == '' )	
        	$(this).prev().css('display', 'block');
    });       
					
	$('.twitter-container').tweetable({
		id: 'tweets',
		username: 'YIW', 
		time: true, 
		limit: 2, 
		replies: true
	});
	
	//$(".accordion-slider li:not(.accordion-closed)").addClass('accordion-closed');
	//$(".accordion-slider").msAccordion();
});             

// tabs plugin
(function($) {
    $.fn.yiw_tabs = function(options) {
        // valori di default
        var config = {
            'tabNav': 'ul.tabs',
            'tabDivs': '.containers',
            'currentClass': 'current'
        };      
 
        if (options) $.extend(config, options);
    	
    	this.each(function() {   
        	var tabNav = $(config.tabNav, this);
        	var tabDivs = $(config.tabDivs, this);
        	var activeTab;
        	
            tabDivs.children('div').hide();
    	
    	    if ( $('li.'+config.currentClass+' a', tabNav).length > 0 )
               activeTab = $('li.'+config.currentClass+' a', tabNav).attr('href'); 
        	else
        	   activeTab = $('li:first-child a', tabNav).attr('href');
                        
        	$(activeTab).show().addClass('showing');
            $('a[href="'+activeTab+'"]', tabNav).parents('li').addClass(config.currentClass);
        	
        	$('a', tabNav).click(function(){
        		var id = $(this).attr('href');
        		var thisLink = $(this);
        		
        		$('li.'+config.currentClass, tabNav).removeClass(config.currentClass);
        		$(this).parents('li').addClass(config.currentClass);
        		
        		$('.showing', tabDivs).fadeOut(200, function(){
        			$(this).removeClass('showing');
        			$(id).fadeIn(200).addClass('showing');
        		});
        		
        		return false;
        	});   
        });
    }
})(jQuery);
