THELIA Forum

Welcome to the THELIA support and discusssion forum

Announcement

Rejoignez la communauté sur le Discord Thelia : https://discord.gg/YgwpYEE3y3

Offline


Bonjour,

Je souhaiterais savoir si il est possible d'ajouter plusieurs articles en même temps dans le panier via un bouton qui effectuera l'action ?

Par exemple, sur la page catégorie du site, j'ai affiché plusieurs produits de différents marques et l'utilisateur sélection un produit par marque et à la fin lorsqu'il clique sur le bouton ça doit ajouter les produits sélectionnés.

Merci,

Offline


2 solutions :

1) Tu écris un module qui ajoute plusieurs produits au panier (la solution la plus sûre)
2) Tu effectues plusieurs requêtes ajax d'ajout au panier.


OpenStudio Toulouse

Offline


Tu pourrais peut être t'inspirer du module Whishlist.


C'est en faisant qu'on apprends.

Offline


Merci beaucoup pour les informations.

Je vais m'inspirer du module en question énoncé

Offline

Offline


Alors j'aimerais tester le module WishList sur mon site eshop en local mais je ne vois pas apparaître côté Front ? Bizarre

Offline


J'ai trouvé comment fonctionner le module et j'avais oublié d'ajouter les bouts de codes dans mes templates smile

Offline


J'obtiens cette erreur lorsque j'ajoute le code dans mon template custom :

Syntax error in template "/var/www/html/eshop/templates/frontOffice/ac37_MBE/category.html" on line 167 "{if {in_wishlist product_id="$ID"}}" unknown tag "in_wishlist"

Offline


unknown tag "in_wishlist"

C'est assez clair, non ?

Vidage du cache ?


OpenStudio Toulouse

Offline


Pardon merci

Offline


Bonjour,

J'ai essayé de m'adapter au module WishList, et je m'y perds un peu donc mon raisonnement.
Je vais essayer de repartir de 0 en effectuant un module Thelia et j'aimerais savoir quelles sont étapes nécessaire pour effectuer cette action d'ajout multiples de produits dans le panier.

Merci,

Offline


Si je pars du module à partir de 0,
Qu'est que je dois renseigner au niveau du schema.xml pour générer la table ensuite en fonction de cela, je dois indiquer à mon formulaire custom d'envoyer les infos sélectionnés au listener etc....
Donc voilà, je ne sais pas trop par où commencer car c'est un peu brouillon dans ma tête.

Offline


Voici le chemin que j'ai emprunté pour commencer en ajax.

$("#pse-category-button").click(function(event){

			var values =  new Array();
			$("input[type=checkbox]:checked").each(function(){
				var form = $(this).parents("form");
				var infos = {
					'product_id': $(this).val() , 
					'thelia_cart_add[_token]' : form.find('input[name="thelia_cart_add[_token]"]').val() , 
					'view' : form.find('input[name="view"]').val() , 
					'thelia_cart_add[append]' : form.find('input[name="thelia_cart_add[append]"]').val(),
					'thelia_cart_add[product_sale_elements_id]': form.find('input[name="thelia_cart_add[product_sale_elements_id]"]').val(),
					'thelia_cart_add[product]' : form.find('input[name="thelia_cart_add[product]"]').val(),
					'thelia_cart_add[quantity]' : form.find('input[name="thelia_cart_add[quantity]"]').val(),
				};
				values.push(infos);
				});
			
				ajouterItem(0, values);
		});

function ajouterItem(i , values){
	//var url = $(location).attr('href');
	postAction("http://localhost/eshop/web/index_dev.php/cart/add" , values[i], function(data){
		i++;
		if(i == values.length){
			window.location.reload();
		} else {
			ajouterItem(i, values);
		}
	});
}

function postAction(service, params, callback){
	$.post( service, params)
		.done(function( data ) {
		callback(data);
	});
 }

Offline


J'aimerais effectuer vider le panier en ajax, comment est il possible de le faire ?