(function($) {

  window.application = {

    init: function() {
      application.activateColorBox();
      application.activateHints();
      application.activatePngFix();
      application.activateColourways();
      application.activateFilters();
      application.activateSorting();
    },

    activateColorBox: function() {
      
      if($("#quote").length) {
        $("a[rel='example']").colorbox({close:false});
        $(document).bind('cbox_complete', function(e) {
          $('#cboxClose').appendTo('#cboxWrapper');
          $('#cboxPrevious').appendTo('#cboxWrapper');
          $('#cboxNext').appendTo('#cboxWrapper');
          $('#cboxTitle').appendTo('#cboxWrapper');
          $('#cboxCurrent').appendTo('#cboxWrapper');
          $('#cboxTitle').css('width', $('#cboxLoadedContent').css('width'));
          $('#cboxPrevious').css('display', 'none');
          $('#cboxNext').css('display', 'none');

        });
      }
      
      if( $('ul#gallery').length < 1 ) return;

      $("a[rel='gallery']").colorbox({close:false});

      $(document).bind('cbox_complete', function(e) {
        $('#cboxClose').appendTo('#cboxWrapper');
        $('#cboxPrevious').appendTo('#cboxWrapper');
        $('#cboxNext').appendTo('#cboxWrapper');
        $('#cboxTitle').appendTo('#cboxWrapper');
        $('#cboxCurrent').appendTo('#cboxWrapper');
        $('#cboxTitle').css('width', $('#cboxLoadedContent').css('width'));
      });
    },

    activateHints: function() { $('input[title!=""]').hint(); },
    
    activatePngFix: function() { $(document).pngFix(); },

    activateColourways: function() { 
      if($('#colourways').length){
        $('#show-colourways').show();
        $('#colourways li.not-first').hide();
        $('#show-colourways, #hide-colourways').click(function(){
          $('#colourways li.not-first').toggle();
          $('#show-colourways').toggle();
          $('#hide-colourways').toggle();
          return false;
        });
      }
    },

    activateFilters: function(){
      if($('#product_filters').length){
        $('#product_filters .submit').hide();
        $('#product_filters select').change(function(){
          $("#product_filters").submit();
        });
      }
    },
    activateSorting: function(){
      if($('#product_sorting').length){
        $('#product_sorting .submit').hide();
        $('#product_sorting select').change(function(){
          $("#product_sorting").submit();
        });
      }
    }

  };

  $(application.init); // ready

})(jQuery);


$(document).ready(function() {

      // carousel widget
      if($(".carousel")) {
  		  $(".carousel").jCarouselLite({
  	      	  btnNext: ".carousel-arrows .right-arrow",
  	      	  btnPrev: ".carousel-arrows .left-arrow"
  	 	      });
  	 	  var carousel_items = $(".carousel-wide .image-list").children().length;

        if(carousel_items < 5) {

         	  $(".carousel-arrows-wide").hide();
        	}    
  	 	      
	 	  }
  	 		
  	 	// carousel wide widget
        
  	 	if($(".carousel-wide")) {
  	 	
    	 	
    	 	
    	 	var carousel_items = $(".carousel-wide .image-list").children().length;
    	 	
    	 	//checks for carousel items and changes offset of images and hides arrows
    	 	if(carousel_items < 5) {
    	 	  	$(".carousel-wide").jCarouselLite({
        	      	btnNext: ".carousel-arrows-wide .right-arrow",
        	      	btnPrev: ".carousel-arrows-wide .left-arrow",
        	      	visible: carousel_items,
        	      	start: 0
        	 	});
    	 	  
    	 	    $(".carousel-arrows-wide").hide();
    	 	    
    	 	    $(".footer-carousel").css("top", "0px");
    	 	    $(".footer-carousel").css("margin-bottom", "20px");
    	 	    
    	 	} else {
    	 	    $(".carousel-wide").jCarouselLite({
          	    	btnNext: ".carousel-arrows-wide .right-arrow",
          	    	btnPrev: ".carousel-arrows-wide .left-arrow",
          	    	visible: 5,
          	    	start: 0
          	});
    	 	  
    	 	}
  	 	}
    	 	/*if(carousel_items < 5) {
    	 	  	$(".carousel-wide").jCarouselLite({
        	      	btnNext: ".carousel-arrows-wide .right-arrow",
        	      	btnPrev: ".carousel-arrows-wide .left-arrow",
        	      	visible: 5,
        	      	start: 0
        	 	});
    	 	  
    	 	    $(".carousel-arrows-wide").hide();
    	 	    
  	 	    }
        }*/ 
      
      // carousel feature widget
      
      if($(".carousel-feature")) {
  	 	
        $(".carousel-feature").jCarouselLite({
    	      	btnNext: ".carousel-arrows-feature .right-arrow",
    	      	btnPrev: ".carousel-arrows-feature .left-arrow",
    	      	visible: 1
    	 	});
    	 	
  	 	}

      // slide show action
  
    if($(".slide-show")) {
  
    $('.slide-show').cycle({
        fx: 'fade',
    		next: '.fade-right',
    		prev: '.fade-left',
    		timeout: 5000
    	})
    	
      		var carousel_items = $(".slide-show").children().length;

      	 	if(carousel_items < 2) {
      	 	  
      	 	  $(".slide-show").css("margin-bottom", "20px");
      	 	  
      	 	  $(".slide-arrows").hide();
      	 	  
      	 	}
    	    //hide the caption bg in IE if it contains no children
    	    if($('.slide-show .caption').children().size() < 1) {
    	      
    	      $(".slide-show .caption").css("background", "none");
    	    }
  	}

});

