////
// Behaviours
$(document).ready(function() {
						   
	// PNG Fix (IE 5.5 + 6);
	//$(document).pngFix(); 
						   
	// Hide status message boxes on click
	$('p.message').live('click',function(){
		$(this).slideUp();							  
	});

  ////
  // Automatically hide all togglable elements on load
  $('.togglable').hide();

  ////
  // Toggle a .togglable div inside the clicked parent .toggle div
  $('a.toggler').click(function() {
    var togglable = $(this).parents('.toggle').children('.togglable')
    togglable.toggle();
	if( $(this).parents('.toggle').is('.toggleopen') ) {
		$(this).parents('.toggle').removeClass('toggleopen');
	}
	else {
		$(this).parents('.toggle').addClass('toggleopen');
	}

    if(togglable.is(':visible')) {
      togglable.find('input:visible:enabled:first').focus();
    };
    return false;
  });

	
	// Select Chain for product select categories
	$('#categorySelectOne').selectChain({
		target: $('#categorySelectTwo'),
		url: JSHome + 'products/select-options/'
	});
	
	
	if($('#productsColor').length > 0)
	{
	
	// Select Chain cart add form sizes
	$('#productsColor').selectChain({
		target: $('#productsSize'),
		url: JSHome + 'products/size-options/',
		data: { ajax: true, id: productID }  
	});
	
	}
	
	// Progressive Enhancement override for product select form
	$('#selectorSearchSubmit').click(function(){
		//var page = gup('page');
		var category = $("#categorySelectOne").val();
		var subcategory = $("#categorySelectTwo").val();
		var brand = $("#brandSelect").val();
		
		url = JSHome + 'products/browse/?category=' + category;
		
		if(subcategory.length > 0) {
			url = url + '&subcategory=' + subcategory;	
		}
		
		if(brand.length > 0) {
			url = url + '&brand=' + brand;	
		}

		window.document.location = url;
		
		return false;
	});
	
	// Facebox setup
	jQuery(document).ready(function($) {
  	$('a[rel*=facebox]').facebox()
	}) 
											 


// Cart 

	$(".viewCart").click(function(){
		jQuery.facebox(function() {
	  		jQuery.get(JSHome+'products/cart/', function(data) {
				jQuery.facebox(data)
	  		})
		}) 
										  
		// Disable normal link function								  
		return false;						  
	});
						   
	$("#addProductSubmit").click(function(){
										  
		// Build URL
		var qty = $("#productsQty").val();
		var id = $("#productsSize").val();
		
		url = JSHome + 'products/cart/?action=add&id=' + id + '&qty=' + qty;
										 
		jQuery.facebox(function() {
	  		jQuery.get(url, function(data) {
				jQuery.facebox(data)
	  		})
		}) 
										  
		// Disable normal submit function								  
		return false;									  
	});
	
	$("#cartActionClear").live("click", function(){
      	url = JSHome + 'products/cart/?action=clear';								 
		$("#cart").load(url);		
		return false;
    });
	
	$(".cartDeleteItem").live("click", function(){
		var id = $(this).attr('rel');
      	url = JSHome + 'products/cart/?action=delete&id=' + id;								 
		$("#cart").load(url);		
		return false;
    });

	$("#cartQtySubmit").click(function(){
		var cartQtyFormData = $("#cartQty").serialize();					  
		$.ajax({
   			type: "POST",
   			url: "/cart/update/",
   			data: cartQtyFormData,
   			success: function(msg){
				$("#cartQtySubtotal").html(msg);
				$("#cartQtySubtotalRow td").highlightFade();
   			}
 		});	
		return false;
	});
	
	$("input.cartQty").blur(function(){
		var cartQtyFormData = $("#cartQty").serialize();					  
		$.ajax({
   			type: "POST",
   			url: "/cart/update/",
   			data: cartQtyFormData,
   			success: function(msg){
				$("#cartQtySubtotal").html(msg);
				$("#cartQtySubtotalRow td").highlightFade();
   			}
 		});	
		return false;
	});
	
	$("input.checkoutQty").blur(function(){
		var cartQtyFormData = $("#cartCheckoutQty").serialize();
		cartQtyFormData = cartQtyFormData + "&checkout=yes";
		$.ajax({
   			type: "POST",
   			url: "/cart/update/",
   			data: cartQtyFormData,
			dataType: 'json',
   			success: function(data){
				$("#cartQtySubtotal").html(data.subtotal);
				$("#cartOrderGST").html(data.gst);
				$("#cartOrderShipping").html(data.shipping);
				$("#cartOrderTotal").html(data.total);
				$("#cartQtySubtotalRow td").highlightFade();
   			}
 		});	
		return false;
	});
	
	
	
	$("#banner").cycle({
		speed:    3500, 
    	timeout:  5000,
		random:  1
	});
	
	$("#promotions").cycle({
		speed: 3000,
		timeout: 6000
	});
	
	$("#productsVariation").change(function () {
          //var str = "";
          //$("#productsVariation option:selected").each(function () {
          //      str += $(this).text() + " ";
          //    });
		  var str = $("#productsVariation option:selected").val();
          $("#productPrice").load('/products/price/'+str+'/');
    })
    .change();
	
	$("p.message").prepend('<div class="messageClose"></div>').highlightFade();


});

function gup( name )
{
  name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
  var regexS = "[\\?&]"+name+"=([^&#]*)";
  var regex = new RegExp( regexS );
  var results = regex.exec( window.location.href );
  if( results == null )
    return "";
  else
    return results[1];
}