1. $(".productPriceWrapRight a img").click(function(e) {
  2. if(busy){
  3. e.preventDefault();
  4. return;
  5. }
  6. busy = true;
  7.  
  8. var productIDValSplitter = (this.id).split("_");
  9.  
  10. var productIDVal = productIDValSplitter[1];
  11.  
  12.  
  13. var productX = $("#productImageWrapID_" + productIDVal).offset().left;
  14.  
  15. var productY = $("#productImageWrapID_" + productIDVal).offset().top;
  16.  
  17.  
  18.  
  19. if( $("#productID_" + productIDVal).length > 0){
  20.  
  21. var basketX = $("#productID_" + productIDVal).offset().left;
  22.  
  23. var basketY = $("#productID_" + productIDVal).offset().top;
  24.  
  25. } else {
  26.  
  27. var basketX = $("#basketTitleWrap").offset().left;
  28.  
  29. var basketY = $("#basketTitleWrap").offset().top;
  30.  
  31. }
  32.  
  33.  
  34.  
  35. var gotoX = basketX - productX;
  36.  
  37. var gotoY = basketY - productY;
  38.  
  39.  
  40.  
  41. var newImageWidth = $("#productImageWrapID_" + productIDVal).width() / 3;
  42.  
  43. var newImageHeight = $("#productImageWrapID_" + productIDVal).height() / 3;
  44.  
  45.  
  46.  
  47. $("#productImageWrapID_" + productIDVal + " img")
  48.  
  49. .clone()
  50.  
  51. .prependTo("#productImageWrapID_" + productIDVal)
  52.  
  53. .css({'position' : 'absolute'})
  54.  
  55. .animate({opacity: 0.4}, 100 )
  56.  
  57. .animate({opacity: 0.1, marginLeft: gotoX, marginTop: gotoY, width: newImageWidth, height: newImageHeight}, 1200, function() {
  58.  
  59. $(this).remove();
  60.  
  61.  
  62.  
  63. $("#notificationsLoader").html('<img src="images/loader.gif">');
  64.  
  65.  
  66.  
  67. $.ajax({
  68.  
  69. type: "POST",
  70.  
  71. url: "lib/php/functions.php",
  72.  
  73. data: { productID: productIDVal, action: "addToBasket"},
  74.  
  75. success: function(theResponse) {
  76.  
  77.  
  78.  
  79. if( $("#productID_" + productIDVal).length > 0){
  80.  
  81. $("#productID_" + productIDVal).animate({ opacity: 0 }, 500);
  82.  
  83. $("#productID_" + productIDVal).before(theResponse).remove();
  84.  
  85. $("#productID_" + productIDVal).animate({ opacity: 0 }, 500);
  86.  
  87. $("#productID_" + productIDVal).animate({ opacity: 1 }, 500);
  88.  
  89. $("#notificationsLoader").empty();
  90.  
  91.  
  92.  
  93. } else {
  94.  
  95. $("#basketItemsWrap li:first").before(theResponse);
  96.  
  97. $("#basketItemsWrap li:first").hide();
  98.  
  99. $("#basketItemsWrap li:first").show("slow");
  100.  
  101. $("#notificationsLoader").empty();
  102.  
  103. }
  104.  
  105.  
  106.  
  107. }
  108.  
  109. });
  110. });
  111. busy = false;
  112.  
  113. });