Selkie Posted July 13, 2011 Share Posted July 13, 2011 Bonjour, j'essaie de rajouter une action dans après la création d'un compte client,mais malheureusement je n'ai pas l'impression que mon code soit exécute..J'ai peut-être loupé quelque chose public function hookcreateAccount($params) { if((int)(Configuration::get('MARKET_PLACE_USE'))==1 AND $params['_POST']->seller ==1) { //DO SOMETHING } return true; } Je sais que Configuration::get('MARKET_PLACE_USE' renvoie bien 1 (je l'utilise dans un autre Hook qui marche)et il y a bien un nouveau champ "seller" dans le formulaire de création de compte client (via hookcreateAccountForm )que je coche à chaque fois que je fais mon test.J'utilise mal le $params ? J'ai utilisé mon autre Hook pour normalement bien l'utiliser public function hookaddproduct($params) { global $cookie; // On verifie que l'identifiant produit est bien present if (!isset($params['product']->id)) return false; // Et on verifie que celui-ci est bien valide $id_product = $params['product']->id; if ((int)$id_product < 1) return false; //DO SOMETHING return true; } J'avoue que la je cale un peu.. pouvez-vous m'aider ? Link to comment Share on other sites More sharing options...
Selkie Posted July 15, 2011 Author Share Posted July 15, 2011 Je m'auto up, parce que je n'ai toujours pas résolu ce problème Link to comment Share on other sites More sharing options...
Broceliande Posted July 15, 2011 Share Posted July 15, 2011 Salut, au lieu de $params['_POST']->seller ==1 , qui d'ailleurs n'est pas un objet et donc ne doit pas etre adressé avec un -> essaye simplement d'utiliser : Tools::getValue('seller',0); Link to comment Share on other sites More sharing options...
Broceliande Posted July 15, 2011 Share Posted July 15, 2011 Une précision :de la même manière : if (!isset($params['product']->id)) fonctionne, en revanche , dans la mesure ou un objet de la classe Product est envoyé dans params .Idéalement il est préférable de bien vérifier ce que params contient comme variables , afin de bien les utiliser.Il peut y avoir des variables simples , des tableaux , des objets ...Un petit die(var_dump($params)); par exemple en début de fonction ... et tu as tout Cela m'étonne que les données post soient transmises , mais si elles le sont alors c'est un tableau : $params['post']['mavaleur'] Link to comment Share on other sites More sharing options...
Selkie Posted July 16, 2011 Author Share Posted July 16, 2011 Hello, En effet je me suis rendu compte de ma bourde hier fin d'après midi, par contre je suis tombé sur un soucis plutôt étrange, à la fin d'une inscription mon firefox n'est pas redirigé vers la fiche du client, mais vers authentication vierge. Si je clique sur l'accueil, je vois que je suis authentifié correctement (cadre client à gauche)Je suis sous Mac, firefox 5.0.1J'ai testé sous Safari et prestashop se comporte normalement..(Et oui ce hook obtient en paramètres le $_POST du client sur la page d'inscription + l'objet client venant d'être crée) 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