Jump to content

Set un maximum de déclinaison de produit par panier


Recommended Posts

Bonjour,

Je vais essayer d’être le plus clair possible sur mon problème.

Nous avons environs 350 produits qui ont chacun la même déclinaisons. La déclinaison à donc le même ID sur tous les produits.

Pour éviter les abus, j'aimerai que cette déclinaison soit maximum achetable 4 fois par panier et par client.

Est-ce quelque chose de possible ou impossible ? Si quelqu'un à déjà fait quelque chose similaire cela serai cool de me donner des tips. 

Merci beaucoup!

Link to comment
Share on other sites

il y a 9 minutes, webmatersweetch a dit :

Nous avons environs 350 produits qui ont chacun la même déclinaisons. La déclinaison à donc le même ID sur tous les produits.

vous pouvez donner l'url de 2 produits différents avec la même déclinaison ?

Link to comment
Share on other sites

Oui je viens de me rendre compte que id_product_attribute est différent sur tous les produits, même si coté front office la déclinaison est pareil.

Donc c'est impossible de prendre l'id d'une déclinaison est la rendre limitée en global?

J'ai déjà un module limite la quantité par panier PAR produit mais non en globale.

Link to comment
Share on other sites

ce ne sont pas les mêmes déclinaisons, par exemple pour le premier produit  id_product_attribute =3911, pour le second id_product_attribute = 4333, donc ce sont des déclinaisons différentes et si n change les attributs ces valeurs changent

Link to comment
Share on other sites

Voici ce que j'essaye qui ne fonctionne pas dans cartController..

$id_attribute = 'SELECT id_attribute FROM sw_product_attribute_combination WHERE id_product_attribute = '.$this->id_product_attribute.'';

$total_cart_products_count = 0;

 $max_qty = 4;

        if ($id_attribute == 87) {
            if(Tools::getValue('op','up') == 'up' && $mode == 'add') {
                if(count($cart_products) == $max_qty ||  $total_cart_products_count + $this->qty > $max_qty) 
                    $this->errors[] = sprintf(Tools::displayError('error'));
                
            }
        }

Des idées pour m'aider ? Merci

Link to comment
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...