As mentioned in old version of virtuemart you can see here http://forum.virtuemart.net/index.php?topic=46142.0 but I am not finding solution for new version so give me the solution.
It is easy. I get free module mod_vm2_cart, there you can see this button. After install you can look to the code in modules\mod_vm2_cart\tmpl\default.php :
<a class="vmicon vmicon vm2-remove_from_cart" onclick="remove_product_cart(this);">
<span class="product_cart_id" style="display:none;"><?php echo $product["product_cart_id"]; ?></span></a>
This code add button (bin) on module, but it use function remove_product_cart(), this also in this file in tag <Script>
<script type="text/javascript">
function remove_product_cart(elm) {
var cart_id=elm.getChildren('span').get('text');
new Request.HTML({
'url':'index.php?option=com_virtuemart&view=cart&task=delete',
'method':'post',
'data':'cart_virtuemart_product_id='+cart_id,
'onSuccess':function(tree,elms,html,js) {
//jQuery(".vmCartModule").productUpdate();
mod=jQuery(".vmCartModule");
jQuery.getJSON(vmSiteurl+"index.php?option=com_virtuemart&nosef=1&view=cart&task=viewJS&format=json"+vmLang,
function(datas, textStatus) {
if (datas.totalProduct >0) {
mod.find(".vm_cart_products").html("");
jQuery.each(datas.products, function(key, val) {
jQuery("#hiddencontainer .container").clone().appendTo(".vmCartModule .vm_cart_products");
jQuery.each(val, function(key, val) {
if (jQuery("#hiddencontainer .container ."+key)) mod.find(".vm_cart_products ."+key+":last").html(val) ;
});
});
mod.find(".total").html(datas.billTotal);
mod.find(".show_cart").html(datas.cart_show);
} else {
mod.find(".vm_cart_products").html("");
mod.find(".total").html(datas.billTotal);
}
mod.find(".total_products").html(datas.totalProductTxt);
}
);
}
}).send();
}
</script>
All that's left is to add this code to the appropriate places in the file modules/mod_virtuemart_cart/tmpl/default.php
PS. I don't remember, but if it does not work you need to install plagin _plg_system_vm2_cart. mod_vm2_cart use this plagin for get product's image, perhaps any else.
But IE8+ error(((((button delete dont work.
Hello Guys,
use this Script, the other have a little Problem with Mootools.
function remove_product_cart(elm) {
var cart_id=elm.getChildren('span').get('text');
jQuery.ajax({
type: 'POST',
url:'index.php?option=com_virtuemart&view=cart&task=delete',
data:'cart_virtuemart_product_id='+cart_id,
success: function(){
mod=jQuery(".vmCartModule");
jQuery.getJSON(window.vmSiteurl+"index.php?option=com_virtuemart&nosef=1&view=cart&task=viewJS&format=json"+window.vmLang,
function(datas, textStatus) {
if (datas.totalProduct >0) {
mod.find(".vm_cart_products").html("");
jQuery.each(datas.products, function(key, val) {
jQuery("#hiddencontainer .container").clone().appendTo(".vmCartModule .vm_cart_products");
jQuery.each(val, function(key, val) {
if (jQuery("#hiddencontainer .container ."+key)) mod.find(".vm_cart_products ."+key+":last").html(val) ;
});
});
mod.find(".total").html(datas.billTotal);
mod.find(".show_cart").html(datas.cart_show);
} else {
mod.find(".vm_cart_products").html("");
mod.find(".total").html(datas.billTotal);
}
mod.find(".total_products").html(datas.totalProductTxt);
}
);
}
});
}
Where did you get this free mod_vm2_cart module? Is there anyway to add delete button without installing third party modules?
Hell,
so its better for IE8
function remove_product_cart(elm) {
jQuery(document).ready(function(){
var cart_id = jQuery(elm).children("span.product_cart_id").text();
jQuery.ajax({
type: "POST",
url:"index.php?option=com_virtuemart&view=cart&task=delete",
data:"cart_virtuemart_product_id="+cart_id,
success: function(){
mod=jQuery(".vmCartModule");
jQuery.getJSON(window.vmSiteurl+"index.php?option=com_virtuemart&nosef=1&view=cart&task=viewJS&format=json"+window.vmLang,
function(datas, textStatus) {
if (datas.totalProduct >0) {
mod.find(".vm_cart_products").html("");
jQuery.each(datas.products, function(key, val) {
jQuery("#hiddencontainer .container").clone().appendTo(".vmCartModule .vm_cart_products");
jQuery.each(val, function(key, val) {
if (jQuery("#hiddencontainer .container ."+key)) mod.find(".vm_cart_products ."+key+":last").html(val) ;
});
});
mod.find(".total").html(datas.billTotal);
mod.find(".show_cart").html(datas.cart_show);
} else {
mod.find(".vm_cart_products").html("");
mod.find(".total").html(datas.billTotal);
}
mod.find(".total_products").html(datas.totalProductTxt);
}
);
jQuery("#success").fadeIn(500).delay(3000).fadeOut(500);
}
});
});
}
Trying to do, as you say, but after activating "plg_system_vm2_cart_j25" stops working "add to cart" button,
and got
"http://xxxxxxxxxx.ru/index.php?option=com_virtuemart&nosef=1&view=cart&task=viewJS&format=json&_=1356442163804 500 (Internal Server Error)"
in java console.
Module and plug in was downloaded from here:
http://www.linelab.org/download?start=6
http://www.linelab.org/download?download=37:virtuemart-2-slide-cart-module-beta&start=6
Joomla! 2.5.8,
VirtueMart 2.0.16
Hello!
Can someone tell me pleae excatly where in modules/mod_virtuemart_cart/tmpl/default.php i have to paste this code (above mentioned) to, to have delete button..?
<script type="text/javascript">
function remove_product_cart(elm) {
var cart_id=elm.getChildren('span').get('text');
new Request.HTML({
'url':'index.php?option=com_virtuemart&view=cart&task=delete',
'method':'post',
'data':'cart_virtuemart_product_id='+cart_id,
'onSuccess':function(tree,elms,html,js) {
//jQuery(".vmCartModule").productUpdate();
mod=jQuery(".vmCartModule");
jQuery.getJSON(vmSiteurl+"index.php?option=com_virtuemart&nosef=1&view=cart&task=viewJS&format=json"+vmLang,
function(datas, textStatus) {
if (datas.totalProduct >0) {
mod.find(".vm_cart_products").html("");
jQuery.each(datas.products, function(key, val) {
jQuery("#hiddencontainer .container").clone().appendTo(".vmCartModule .vm_cart_products");
jQuery.each(val, function(key, val) {
if (jQuery("#hiddencontainer .container ."+key)) mod.find(".vm_cart_products ."+key+":last").html(val) ;
});
});
mod.find(".total").html(datas.billTotal);
mod.find(".show_cart").html(datas.cart_show);
} else {
mod.find(".vm_cart_products").html("");
mod.find(".total").html(datas.billTotal);
}
mod.find(".total_products").html(datas.totalProductTxt);
}
);
}
}).send();
}
</script>