jQuery(document).ready(function() 
{      
    // For the single product 
	var jforms = jQuery("#add_to_cart form").bind('submit', onSubmit);
  
    		
    function onSubmit(e)
    {
    	e.preventDefault();
    	
    	var form = jQuery(this);    	
    	//var num_img = jQuery.('img.img-drop').size(); 
    	var img = jQuery('div#productImage img.img-drop')

        var options = {
        	url : form.attr('action'),	
            type : form.attr('method'),
        	dataType : 'text',
            data : form.serialize(),
            success : function(data){onAddSuccess(data, img);},
            failure : onAddFailure
        };
 
        jQuery.ajax(options);
    }
    
    var jdivs = jQuery("div.add_to_cart");   
    
    jdivs.each(function(i)
    {
	    var div = jQuery(this);
	    var link = jQuery("#" + div.attr('id') + " a.button");

	    link.bind('click', onAddClick);
    });
    		
    function onAddClick(e)
    {
    	e.preventDefault();

        var img = jQuery(this).parent('dd').siblings('dd.img').find('img.img-drop');  
        var url = jQuery(this).attr('href');        

        var options = {
        	url : url,	
        	dataType : 'text',
            success : function(data){onAddSuccess(data, img);},
            failure : onAddFailure
        };

        jQuery.ajax(options);
    }   
      
    

    function onAddSuccess (data, image)
    {
      	var imageOffset = image.offset(); 
      	var position = image.position();
		var cart  = jQuery('#miniBasket').offset();
		var miniBasket = jQuery('#miniBasket');

		//image.before('<img src="' + image.attr('src') + '" id="temp" style="position: absolute; top: ' + position.top + 'px; left: ' + position.left + 'px; z-index: 1001" />');
		jQuery('#wrapper').after('<img src="' + image.attr('src') + '" id="temp" style="position: absolute; top: ' + imageOffset.top + 'px; left: ' + imageOffset.left + 'px; z-index: 1001" />');
		
		params = {
			top : cart.top + 'px',
			left : cart.left + 'px',
			opacity : 0.3,
			width : jQuery('#miniBasket').width(),  
			height : Math.min(250, jQuery('#miniBasket').height())		
		};		
	
		jQuery('#temp').animate(params, 'slow', false, function () {
			jQuery('#temp').remove();
		});
	
		miniBasket.replaceWith(data.toString());
		
    }


    function onAddFailure (transport)
    {
    	alert('Error adding product to cart');
    }
    
 });



