Jump to content

[Resolu] Assigner un nouveau client a un groupe lors de son inscription


Recommended Posts

Bonjour,

 

voici mon problème.

Lorsque un client sur le front office renseigne les champs siret et ape quand il s'inscrit il faudrait que le groupe "professionnel" lui soit automatiquement attribué en plus du groupe "client"

 

En surchargeant la classe CustomerCore dans le fichier "override/classes/Customers.php" j'arrive à savoir quand un client renseigne ses deux champs.

 

Je lui attribut les deux groupes (pro et client).

 

Mais une fois que l'enregistrement se fait les groupes sont "cleané" par prestashop et c'est le groupe client qui est rattaché seulement.

 

Je le vois car je fais un sleep(10)

avant le "return $success; de la fonction "add()" de la classe "Customer"

 

Dans la table "ps_customer_group" le nouveau client se fait rattacher au deux groupes et apres les dix secondes il n'est plus rattaché qu'au groupe "Client".

 

J'ai l'impression qu'il y a une fonction qui repasse derrière et qui me reset l’attribution du groupe pour le compte fraichement créé.

 

Merci pour votre lecture.

 

Si quelqu'un a une idée je suis preneur je commence à péter un boulon ^^ :blink: !

Edited by Tacos (see edit history)
Link to comment
Share on other sites

Salut tout le monde,

 

j'ai trouvé un solution à mon problème je vous la partage.

 

A force de fouiller dans les classes et controller de prestashop j'ai trouvé la ligne ou il venait "cleanner" dans mon dos les groupes associé à un nouveau compte fraichement créé sur le front office.

 

C'est dans le fichier "controllers/front/AuthController.php" ligne 533 environ.

 

La fonction $customer->cleanGroups();

Supprime tous les groupes attachés au client (donc le groupe pro qui je lui avait rataché lors de l'enregistrement)

 

La fonction $customer->addGroups(array((int)Configuration::get('PS_CUSTOMER_GROUP')));

Ajoute uniquement le groupe par défaut au client.

 

Merci pour vos lectures,

j’espère que ma trouvaille va aider ceux qui ont en problème similaire.

  • Like 1
Link to comment
Share on other sites

  • 6 months later...

Salut Tacos, au cas ou tu recevrais encore les notifications du forum, je suis très intéressé pour savoir comment tu as réussi ajouter les nouveau inscrit à un groupe.

 

J'avais repéré la ligne

$customer->addGroups(array((int)Configuration::get('PS_CUSTOMER_GROUP')));

mais je ne comprend pas comment elle fonctionne. je comptais simplement changé a ce niveau l'id du groupe par défault associé au client.

si tu as un peu de temps pourrais tu me dire les modifications que tu as apporté de ton coté ?

 

Merci d'avance

Cordialement

 

Romain

Link to comment
Share on other sites

  • 5 months later...
  • 2 weeks later...

Bonjour, avez vous trouver une solution parce que cela m'intéresse.

J'ai besoin d'attribuer un client a un groupe automatiquement suivant sont pays enregistrer dans sont adresse.

Avec la version 1.4.x cela fonctionné.

Daen

Link to comment
Share on other sites

  • 4 months later...

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...