fixed add to wishlist/compare buttons and added product review

This commit is contained in:
TMMeilleur
2013-11-18 15:52:39 +02:00
parent 89c65536d7
commit 95b9710eda
18 changed files with 639 additions and 293 deletions
@@ -17,230 +17,257 @@
* versions in the future. If you wish to customize PrestaShop for your
* needs please refer to http://www.prestashop.com for more information.
*
* @author PrestaShop SA <contact@prestashop.com>
* @copyright 2007-2013 PrestaShop SA
* @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
* International Registered Trademark & Property of PrestaShop SA
* @author PrestaShop SA <contact@prestashop.com>
* @copyright 2007-2013 PrestaShop SA
* @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
* International Registered Trademark & Property of PrestaShop SA
*/
/**
* Update WishList Cart by adding, deleting, updating objects
*
* @return void
*/
* Update WishList Cart by adding, deleting, updating objects
*
* @return void
*/
function WishlistCart(id, action, id_product, id_product_attribute, quantity)
{
$.ajax({
type: 'GET',
url: baseDir + 'modules/blockwishlist/cart.php',
async: true,
cache: false,
data: 'action=' + action + '&id_product=' + id_product + '&quantity=' + quantity + '&token=' + static_token + '&id_product_attribute=' + id_product_attribute,
success: function(data)
{
if (action == 'add')
{
if (isLoggedWishlist == true) {
alert ('Adedd to wishlist')
}
else {
alert ('You must be logged in to manage your wishlist.')
}
}
if($('#' + id).length != 0)
{
$('#' + id).slideUp('normal');
document.getElementById(id).innerHTML = data;
$('#' + id).slideDown('normal');
}
}
});
$.ajax({
type: 'GET',
url: baseDir + 'modules/blockwishlist/cart.php',
async: true,
cache: false,
data: 'action=' + action + '&id_product=' + id_product + '&quantity=' + quantity + '&token=' + static_token + '&id_product_attribute=' + id_product_attribute,
success: function(data)
{
if (action == 'add')
{
if (isLoggedWishlist == true) {
wishlistProductsIdsAdd(id_product),
wishlistRefreshStatus(),
alert ('Adedd to wishlist')
}
else {
alert ('You must be logged in to manage your wishlist.')
}
}
if (action == 'delete') {
wishlistProductsIdsRemove(id_product),
wishlistRefreshStatus();
}
if($('#' + id).length != 0)
{
$('#' + id).slideUp('normal');
document.getElementById(id).innerHTML = data;
$('#' + id).slideDown('normal');
}
}
});
}
/**
* Change customer default wishlist
*
* @return void
*/
* Change customer default wishlist
*
* @return void
*/
function WishlistChangeDefault(id, id_wishlist)
{
$.ajax({
type: 'GET',
url: baseDir + 'modules/blockwishlist/cart.php',
async: true,
data: 'id_wishlist=' + id_wishlist + '&token=' + static_token,
cache: false,
success: function(data)
{
$('#' + id).slideUp('normal');
document.getElementById(id).innerHTML = data;
$('#' + id).slideDown('normal');
}
});
$.ajax({
type: 'GET',
url: baseDir + 'modules/blockwishlist/cart.php',
async: true,
data: 'id_wishlist=' + id_wishlist + '&token=' + static_token,
cache: false,
success: function(data)
{
$('#' + id).slideUp('normal');
document.getElementById(id).innerHTML = data;
$('#' + id).slideDown('normal');
}
});
}
/**
* Buy Product
*
* @return void
*/
* Buy Product
*
* @return void
*/
function WishlistBuyProduct(token, id_product, id_product_attribute, id_quantity, button, ajax)
{
if(ajax)
ajaxCart.add(id_product, id_product_attribute, false, button, 1, [token, id_quantity]);
else
{
$('#' + id_quantity).val(0);
WishlistAddProductCart(token, id_product, id_product_attribute, id_quantity)
document.forms['addtocart' + '_' + id_product + '_' + id_product_attribute].method='POST';
document.forms['addtocart' + '_' + id_product + '_' + id_product_attribute].action=baseUri + '?controller=cart';
document.forms['addtocart' + '_' + id_product + '_' + id_product_attribute].elements['token'].value = static_token;
document.forms['addtocart' + '_' + id_product + '_' + id_product_attribute].submit();
}
return (true);
if(ajax)
ajaxCart.add(id_product, id_product_attribute, false, button, 1, [token, id_quantity]);
else
{
$('#' + id_quantity).val(0);
WishlistAddProductCart(token, id_product, id_product_attribute, id_quantity)
document.forms['addtocart' + '_' + id_product + '_' + id_product_attribute].method='POST';
document.forms['addtocart' + '_' + id_product + '_' + id_product_attribute].action=baseUri + '?controller=cart';
document.forms['addtocart' + '_' + id_product + '_' + id_product_attribute].elements['token'].value = static_token;
document.forms['addtocart' + '_' + id_product + '_' + id_product_attribute].submit();
}
return (true);
}
function WishlistAddProductCart(token, id_product, id_product_attribute, id_quantity)
{
if ($('#' + id_quantity).val() <= 0)
return (false);
$.ajax({
type: 'GET',
url: baseDir + 'modules/blockwishlist/buywishlistproduct.php',
data: 'token=' + token + '&static_token=' + static_token + '&id_product=' + id_product + '&id_product_attribute=' + id_product_attribute,
async: true,
cache: false,
success: function(data)
{
if (data)
alert(data);
else
{
$('#' + id_quantity).val($('#' + id_quantity).val() - 1);
}
}
});
return (true);
if ($('#' + id_quantity).val() <= 0)
return (false);
$.ajax({
type: 'GET',
url: baseDir + 'modules/blockwishlist/buywishlistproduct.php',
data: 'token=' + token + '&static_token=' + static_token + '&id_product=' + id_product + '&id_product_attribute=' + id_product_attribute,
async: true,
cache: false,
success: function(data)
{
if (data)
alert(data);
else
{
$('#' + id_quantity).val($('#' + id_quantity).val() - 1);
}
}
});
return (true);
}
/**
* Show wishlist managment page
*
* @return void
*/
* Show wishlist managment page
*
* @return void
*/
function WishlistManage(id, id_wishlist)
{
$.ajax({
type: 'GET',
async: true,
url: baseDir + 'modules/blockwishlist/managewishlist.php',
data: 'id_wishlist=' + id_wishlist + '&refresh=' + false,
cache: false,
success: function(data)
{
$('#' + id).hide();
document.getElementById(id).innerHTML = data;
$('#' + id).fadeIn('slow');
}
});
$.ajax({
type: 'GET',
async: true,
url: baseDir + 'modules/blockwishlist/managewishlist.php',
data: 'id_wishlist=' + id_wishlist + '&refresh=' + false,
cache: false,
success: function(data)
{
$('#' + id).hide();
document.getElementById(id).innerHTML = data;
$('#' + id).fadeIn('slow');
}
});
}
/**
* Show wishlist product managment page
*
* @return void
*/
* Show wishlist product managment page
*
* @return void
*/
function WishlistProductManage(id, action, id_wishlist, id_product, id_product_attribute, quantity, priority)
{
$.ajax({
type: 'GET',
async: true,
url: baseDir + 'modules/blockwishlist/managewishlist.php',
data: 'action=' + action + '&id_wishlist=' + id_wishlist + '&id_product=' + id_product + '&id_product_attribute=' + id_product_attribute + '&quantity=' + quantity + '&priority=' + priority + '&refresh=' + true,
cache: false,
success: function(data)
{
if (action == 'delete')
$('#wlp_' + id_product + '_' + id_product_attribute).fadeOut('fast');
else if (action == 'update')
{
$('#wlp_' + id_product + '_' + id_product_attribute).fadeOut('fast');
$('#wlp_' + id_product + '_' + id_product_attribute).fadeIn('fast');
}
}
});
$.ajax({
type: 'GET',
async: true,
url: baseDir + 'modules/blockwishlist/managewishlist.php',
data: 'action=' + action + '&id_wishlist=' + id_wishlist + '&id_product=' + id_product + '&id_product_attribute=' + id_product_attribute + '&quantity=' + quantity + '&priority=' + priority + '&refresh=' + true,
cache: false,
success: function(data)
{
if (action == 'delete')
$('#wlp_' + id_product + '_' + id_product_attribute).fadeOut('fast');
else if (action == 'update')
{
$('#wlp_' + id_product + '_' + id_product_attribute).fadeOut('fast');
$('#wlp_' + id_product + '_' + id_product_attribute).fadeIn('fast');
}
}
});
}
/**
* Delete wishlist
*
* @return boolean succeed
*/
* Delete wishlist
*
* @return boolean succeed
*/
function WishlistDelete(id, id_wishlist, msg)
{
var res = confirm(msg);
if (res == false)
return (false);
$.ajax({
type: 'GET',
async: true,
url: baseDir + 'modules/blockwishlist/mywishlist.php',
cache: false,
data: 'deleted&id_wishlist=' + id_wishlist,
success: function(data)
{
$('#' + id).fadeOut('slow');
}
});
var res = confirm(msg);
if (res == false)
return (false);
$.ajax({
type: 'GET',
async: true,
url: baseDir + 'modules/blockwishlist/mywishlist.php',
cache: false,
data: 'deleted&id_wishlist=' + id_wishlist,
success: function(data)
{
$('#' + id).fadeOut('slow');
}
});
}
/**
* Hide/Show bought product
*
* @return void
*/
* Hide/Show bought product
*
* @return void
*/
function WishlistVisibility(bought_class, id_button)
{
if ($('#hide' + id_button).css('display') == 'none')
{
$('.' + bought_class).slideDown('fast');
$('#show' + id_button).hide();
$('#hide' + id_button).css('display', 'block');
}
else
{
$('.' + bought_class).slideUp('fast');
$('#hide' + id_button).hide();
$('#show' + id_button).css('display', 'block');
}
if ($('#hide' + id_button).css('display') == 'none')
{
$('.' + bought_class).slideDown('fast');
$('#show' + id_button).hide();
$('#hide' + id_button).css('display', 'block');
}
else
{
$('.' + bought_class).slideUp('fast');
$('#hide' + id_button).hide();
$('#show' + id_button).css('display', 'block');
}
}
/**
* Send wishlist by email
*
* @return void
*/
* Send wishlist by email
*
* @return void
*/
function WishlistSend(id, id_wishlist, id_email)
{
$.post(baseDir + 'modules/blockwishlist/sendwishlist.php',
{ token: static_token,
id_wishlist: id_wishlist,
email1: $('#' + id_email + '1').val(),
email2: $('#' + id_email + '2').val(),
email3: $('#' + id_email + '3').val(),
email4: $('#' + id_email + '4').val(),
email5: $('#' + id_email + '5').val(),
email6: $('#' + id_email + '6').val(),
email7: $('#' + id_email + '7').val(),
email8: $('#' + id_email + '8').val(),
email9: $('#' + id_email + '9').val(),
email10: $('#' + id_email + '10').val() },
function(data)
{
if (data)
alert(data);
else
WishlistVisibility(id, 'hideSendWishlist');
});
$.post(baseDir + 'modules/blockwishlist/sendwishlist.php',
{ token: static_token,
id_wishlist: id_wishlist,
email1: $('#' + id_email + '1').val(),
email2: $('#' + id_email + '2').val(),
email3: $('#' + id_email + '3').val(),
email4: $('#' + id_email + '4').val(),
email5: $('#' + id_email + '5').val(),
email6: $('#' + id_email + '6').val(),
email7: $('#' + id_email + '7').val(),
email8: $('#' + id_email + '8').val(),
email9: $('#' + id_email + '9').val(),
email10: $('#' + id_email + '10').val() },
function(data)
{
if (data)
alert(data);
else
WishlistVisibility(id, 'hideSendWishlist');
});
}
function wishlistProductsIdsAdd(id){
if ($.inArray(parseInt(id),wishlistProductsIds) == -1)
wishlistProductsIds.push(parseInt(id))
}
function wishlistProductsIdsRemove(id){
wishlistProductsIds.splice($.inArray(parseInt(id),wishlistProductsIds), 1)
}
function wishlistRefreshStatus(){
$('.addToWishlist').each(function() {
if ($.inArray(parseInt($(this).prop('rel')),wishlistProductsIds)!= -1){
$(this).addClass('ckecked');
}
else
$(this).removeClass('ckecked');
});
}
$(document).ready(function() {
if (typeof wishlistProductsIds == 'undefined') {
wishlistProductsIds = [];
}
wishlistRefreshStatus();
});