Wapaca Posted October 22, 2014 Share Posted October 22, 2014 (edited) Bonjour, Je cherche à bloquer l'ajout du panier quand la personne a déjà ajouté un produit d'une certaine catégorie dedans puis qu'il veut ajouter un produit d'une autre catégorie mais je ne trouve pas quelle méthode modifier pour arriver à mes fins. Pour faire simple comment bloquer l'ajout au panier de tout les produits ? (Je me débrouillerai moi même pour faire tout les check possible avant de bloquer l'ajout) J'ai vu que quand on appuie sur le bouton "Ajouter au panier" ça fait une requête ajax avec comme source une adresse de ce type : "controller=cart&add=1&ajax=true&qty=1&id_product=11&token=e39bde704b7c44c87800107727292f68" mais même en modifiant la méthode add de la classe cart (Simple return false) ça ne bloque pas l'ajout au panier. En espèrant que vous pourrez m'aider. Edited October 22, 2014 by Wapaca (see edit history) Link to comment Share on other sites More sharing options...
Eolia Posted October 23, 2014 Share Posted October 23, 2014 Regardez du coté de la classe CartController au niveau de la fonction processChangeProductInCart(); Soit vous faites un override de cette classe en mettant vos propres critères, soit vous la modifiez en dur (déconseillé) 1 Link to comment Share on other sites More sharing options...
Wapaca Posted October 23, 2014 Author Share Posted October 23, 2014 Ok merci Eolia c'est nickel en mettant un simple return false au début de cette fonction ça me bloque bien l'ajout des produits au panier (et aussi la modification d'après le code). Me reste donc plus qu'à faire mes check, puis valider ou non et de gérer les nouveaux messages d'erreurs dû aux critères que je vais rajouter. Sinon oui toujours de l'override pour pouvoir faire les mises à jours sans rien casser (Puis plus propre de séparer le code d'origine qui fonctionne de celui modifié). Link to comment Share on other sites More sharing options...
Eolia Posted October 23, 2014 Share Posted October 23, 2014 Content pour vous Perso je me ferais un petit module avec un hook sur le header qui récupère le controleur courant et l'id produit/catégorie. Suivant les critères que vous souhaitez le bouton ajouter au panier est visible ou pas. En utilisant un hook, vous avez également la possibilité d'affiner vos critères suivant les valeurs contenues dans $params (sur le cart, le customer, les produits, etc...) Tout ça sans override Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now