/************************************************************************************************************ (C) www.dhtmlgoodies.com, March 2006 This is a script from www.dhtmlgoodies.com. You will find this and a lot of other scripts at our website. Terms of use: You are free to use this script as long as the copyright message is kept intact. However, you may not redistribute, sell or repost it without our permission. Version: 1.0 Released March. 3rd 2006 Thank you! www.dhtmlgoodies.com Alf Magne Kalleland ************************************************************************************************************/ var flyingSpeed = 25; var url_addProductToBasket = site_url+'/index.php?module=catalog&add_to_cart'; var url_removeProductFromBasket = site_url+'/index.php?module=catalog&remove_from_cart'; var txt_totalPrice = 'Всего: '; var shopping_cart_div = false; var flyingDiv = false; var currentProductDiv = false; var shopping_cart_x = false; var shopping_cart_y = false; var slide_xFactor = false; var slide_yFactor = false; var diffX = false; var diffY = false; var currentXPos = false; var currentYPos = false; var ajaxObjects = new Array(); var count_of_orders=0; function shoppingCart_getTopPos(inputObj) { var returnValue = inputObj.offsetTop; while((inputObj = inputObj.offsetParent) != null){ if(inputObj.tagName!='HTML')returnValue += inputObj.offsetTop; } return returnValue; } function shoppingCart_getLeftPos(inputObj) { var returnValue = inputObj.offsetLeft; while((inputObj = inputObj.offsetParent) != null){ if(inputObj.tagName!='HTML')returnValue += inputObj.offsetLeft; } return returnValue; } var count_set = 0; function addToBasket(productId, count) { if(!count) { count=count_set; } if(!count && document.getElementById('product_count')!==null) { count=parseFloat(document.getElementById('product_count').value); } if(count>=1) { count_set = count; if(!shopping_cart_div)shopping_cart_div = document.getElementById('shopping_cart'); if(!flyingDiv){ flyingDiv = document.createElement('DIV'); flyingDiv.style.position = 'absolute'; document.body.appendChild(flyingDiv); } shopping_cart_x = shoppingCart_getLeftPos(shopping_cart_div); shopping_cart_y = shoppingCart_getTopPos(shopping_cart_div); currentProductDiv = document.getElementById('slidingProduct' + productId); currentXPos = shoppingCart_getLeftPos(currentProductDiv); currentYPos = shoppingCart_getTopPos(currentProductDiv); diffX = shopping_cart_x - currentXPos; diffY = shopping_cart_y - currentYPos; var shoppingContentCopy = currentProductDiv.cloneNode(true); shoppingContentCopy.id=''; flyingDiv.innerHTML = ''; flyingDiv.style.left = currentXPos + 'px'; flyingDiv.style.top = currentYPos + 'px'; flyingDiv.appendChild(shoppingContentCopy); flyingDiv.style.display='block'; flyingDiv.style.width = currentProductDiv.offsetWidth + 'px'; flyToBasket(productId); } else { alert('Количество товара необходимо указывать целым числом.'); } } function flyToBasket(productId) { var maxDiff = Math.max(Math.abs(diffX),Math.abs(diffY)); var moveX = (diffX / maxDiff) * flyingSpeed;; var moveY = (diffY / maxDiff) * flyingSpeed; currentXPos = currentXPos + moveX; currentYPos = currentYPos + moveY; flyingDiv.style.left = Math.round(currentXPos) + 'px'; flyingDiv.style.top = Math.round(currentYPos) + 'px'; if(moveX>0 && currentXPos > shopping_cart_x){ flyingDiv.style.display='none'; } if(moveX
"; ins_body += ""+productItems[1]+"
"; ins_body += "
Общая цена: "+productItems[3]+"
"; ins_body += "
Количество: "+productItems[2]+"
"; ins_body += "
"; ins_body += "Удалить"; ins_body += " "; ins_body += "Заказать
"; td.innerHTML = ins_body; if(count_of_orders>0) { if($('no_articles')) { $('no_articles').style.display = 'none'; } } else { if($('no_articles')) { $('no_articles').style.display = 'block'; } } if(count_of_orders>1) { document.getElementById("order_all_btn").style.display = 'block'; } else { document.getElementById("order_all_btn").style.display = 'none'; } } ajaxObjects[ajaxIndex] = false; } function removeProductFromBasket(productId) { var productRow = document.getElementById('shopping_cart_items_product' + productId); count_of_orders--; if(count_of_orders>1) { $('no_articles').style.display = 'none'; } else { if(count_of_orders= 1) { var ajaxIndex = ajaxObjects.length; ajaxObjects[ajaxIndex] = new sack(); ajaxObjects[ajaxIndex].requestFile = url_addProductToBasket; // Saving product in this file ajaxObjects[ajaxIndex].setVar('productId', productId); ajaxObjects[ajaxIndex].setVar('count', count_set); ajaxObjects[ajaxIndex].onCompletion = function(){showAjaxBasketContent(ajaxIndex);}; // Specify function that will be executed after file has been found ajaxObjects[ajaxIndex].runAJAX(); // Execute AJAX function } else { alert('Количество товара необходимо указывать положительным, целым числом.'); } }